@steedos-widgets/sortable 6.10.1-beta.42 → 6.10.1-beta.44

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -7,10 +7,10 @@
7
7
  * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>
8
8
  * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
9
9
  */
10
- !function(e,t){(function(){var n,r="Expected a function",o="__lodash_hash_undefined__",a="__lodash_placeholder__",i=16,s=32,l=64,c=128,u=256,d=1/0,f=9007199254740991,p=NaN,_=4294967295,m=[["ary",c],["bind",1],["bindKey",2],["curry",8],["curryRight",i],["flip",512],["partial",s],["partialRight",l],["rearg",u]],g="[object Arguments]",h="[object Array]",v="[object Boolean]",y="[object Date]",b="[object Error]",w="[object Function]",S="[object GeneratorFunction]",$="[object Map]",x="[object Number]",F="[object Object]",k="[object Promise]",O="[object RegExp]",C="[object Set]",R="[object String]",j="[object Symbol]",N="[object WeakMap]",I="[object ArrayBuffer]",D="[object DataView]",E="[object Float32Array]",A="[object Float64Array]",T="[object Int8Array]",L="[object Int16Array]",P="[object Int32Array]",V="[object Uint8Array]",M="[object Uint8ClampedArray]",B="[object Uint16Array]",U="[object Uint32Array]",z=/\b__p \+= '';/g,q=/\b(__p \+=) '' \+/g,K=/(__e\(.*?\)|\b__t\)) \+\n'';/g,W=/&(?:amp|lt|gt|quot|#39);/g,H=/[&<>"']/g,J=RegExp(W.source),Y=RegExp(H.source),G=/<%-([\s\S]+?)%>/g,X=/<%([\s\S]+?)%>/g,Q=/<%=([\s\S]+?)%>/g,Z=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,ee=/^\w*$/,te=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,ne=/[\\^$.*+?()[\]{}|]/g,re=RegExp(ne.source),oe=/^\s+/,ae=/\s/,ie=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,se=/\{\n\/\* \[wrapped with (.+)\] \*/,le=/,? & /,ce=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,ue=/[()=,{}\[\]\/\s]/,de=/\\(\\)?/g,fe=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,pe=/\w*$/,_e=/^[-+]0x[0-9a-f]+$/i,me=/^0b[01]+$/i,ge=/^\[object .+?Constructor\]$/,he=/^0o[0-7]+$/i,ve=/^(?:0|[1-9]\d*)$/,ye=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,be=/($^)/,we=/['\n\r\u2028\u2029\\]/g,Se="\\ud800-\\udfff",$e="\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff",xe="\\u2700-\\u27bf",Fe="a-z\\xdf-\\xf6\\xf8-\\xff",ke="A-Z\\xc0-\\xd6\\xd8-\\xde",Oe="\\ufe0e\\ufe0f",Ce="\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\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",Re="['’]",je="["+Se+"]",Ne="["+Ce+"]",Ie="["+$e+"]",De="\\d+",Ee="["+xe+"]",Ae="["+Fe+"]",Te="[^"+Se+Ce+De+xe+Fe+ke+"]",Le="\\ud83c[\\udffb-\\udfff]",Pe="[^"+Se+"]",Ve="(?:\\ud83c[\\udde6-\\uddff]){2}",Me="[\\ud800-\\udbff][\\udc00-\\udfff]",Be="["+ke+"]",Ue="\\u200d",ze="(?:"+Ae+"|"+Te+")",qe="(?:"+Be+"|"+Te+")",Ke="(?:['’](?:d|ll|m|re|s|t|ve))?",We="(?:['’](?:D|LL|M|RE|S|T|VE))?",He="(?:"+Ie+"|"+Le+")"+"?",Je="["+Oe+"]?",Ye=Je+He+("(?:"+Ue+"(?:"+[Pe,Ve,Me].join("|")+")"+Je+He+")*"),Ge="(?:"+[Ee,Ve,Me].join("|")+")"+Ye,Xe="(?:"+[Pe+Ie+"?",Ie,Ve,Me,je].join("|")+")",Qe=RegExp(Re,"g"),Ze=RegExp(Ie,"g"),et=RegExp(Le+"(?="+Le+")|"+Xe+Ye,"g"),tt=RegExp([Be+"?"+Ae+"+"+Ke+"(?="+[Ne,Be,"$"].join("|")+")",qe+"+"+We+"(?="+[Ne,Be+ze,"$"].join("|")+")",Be+"?"+ze+"+"+Ke,Be+"+"+We,"\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])","\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",De,Ge].join("|"),"g"),nt=RegExp("["+Ue+Se+$e+Oe+"]"),rt=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,ot=["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"],at=-1,it={};it[E]=it[A]=it[T]=it[L]=it[P]=it[V]=it[M]=it[B]=it[U]=!0,it[g]=it[h]=it[I]=it[v]=it[D]=it[y]=it[b]=it[w]=it[$]=it[x]=it[F]=it[O]=it[C]=it[R]=it[N]=!1;var st={};st[g]=st[h]=st[I]=st[D]=st[v]=st[y]=st[E]=st[A]=st[T]=st[L]=st[P]=st[$]=st[x]=st[F]=st[O]=st[C]=st[R]=st[j]=st[V]=st[M]=st[B]=st[U]=!0,st[b]=st[w]=st[N]=!1;var lt={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},ct=parseFloat,ut=parseInt,dt="object"==typeof commonjsGlobal&&commonjsGlobal&&commonjsGlobal.Object===Object&&commonjsGlobal,ft="object"==typeof self&&self&&self.Object===Object&&self,pt=dt||ft||Function("return this")(),_t=t&&!t.nodeType&&t,mt=_t&&e&&!e.nodeType&&e,gt=mt&&mt.exports===_t,ht=gt&&dt.process,vt=function(){try{var e=mt&&mt.require&&mt.require("util").types;return e||ht&&ht.binding&&ht.binding("util")}catch(e){}}(),yt=vt&&vt.isArrayBuffer,bt=vt&&vt.isDate,wt=vt&&vt.isMap,St=vt&&vt.isRegExp,$t=vt&&vt.isSet,xt=vt&&vt.isTypedArray;function Ft(e,t,n){switch(n.length){case 0:return e.call(t);case 1:return e.call(t,n[0]);case 2:return e.call(t,n[0],n[1]);case 3:return e.call(t,n[0],n[1],n[2])}return e.apply(t,n)}function kt(e,t,n,r){for(var o=-1,a=null==e?0:e.length;++o<a;){var i=e[o];t(r,i,n(i),e)}return r}function Ot(e,t){for(var n=-1,r=null==e?0:e.length;++n<r&&!1!==t(e[n],n,e););return e}function Ct(e,t){for(var n=null==e?0:e.length;n--&&!1!==t(e[n],n,e););return e}function Rt(e,t){for(var n=-1,r=null==e?0:e.length;++n<r;)if(!t(e[n],n,e))return!1;return!0}function jt(e,t){for(var n=-1,r=null==e?0:e.length,o=0,a=[];++n<r;){var i=e[n];t(i,n,e)&&(a[o++]=i)}return a}function Nt(e,t){return!!(null==e?0:e.length)&&Bt(e,t,0)>-1}function It(e,t,n){for(var r=-1,o=null==e?0:e.length;++r<o;)if(n(t,e[r]))return!0;return!1}function Dt(e,t){for(var n=-1,r=null==e?0:e.length,o=Array(r);++n<r;)o[n]=t(e[n],n,e);return o}function Et(e,t){for(var n=-1,r=t.length,o=e.length;++n<r;)e[o+n]=t[n];return e}function At(e,t,n,r){var o=-1,a=null==e?0:e.length;for(r&&a&&(n=e[++o]);++o<a;)n=t(n,e[o],o,e);return n}function Tt(e,t,n,r){var o=null==e?0:e.length;for(r&&o&&(n=e[--o]);o--;)n=t(n,e[o],o,e);return n}function Lt(e,t){for(var n=-1,r=null==e?0:e.length;++n<r;)if(t(e[n],n,e))return!0;return!1}var Pt=Kt("length");function Vt(e,t,n){var r;return n(e,(function(e,n,o){if(t(e,n,o))return r=n,!1})),r}function Mt(e,t,n,r){for(var o=e.length,a=n+(r?1:-1);r?a--:++a<o;)if(t(e[a],a,e))return a;return-1}function Bt(e,t,n){return t==t?function(e,t,n){var r=n-1,o=e.length;for(;++r<o;)if(e[r]===t)return r;return-1}(e,t,n):Mt(e,zt,n)}function Ut(e,t,n,r){for(var o=n-1,a=e.length;++o<a;)if(r(e[o],t))return o;return-1}function zt(e){return e!=e}function qt(e,t){var n=null==e?0:e.length;return n?Jt(e,t)/n:p}function Kt(e){return function(t){return null==t?n:t[e]}}function Wt(e){return function(t){return null==e?n:e[t]}}function Ht(e,t,n,r,o){return o(e,(function(e,o,a){n=r?(r=!1,e):t(n,e,o,a)})),n}function Jt(e,t){for(var r,o=-1,a=e.length;++o<a;){var i=t(e[o]);i!==n&&(r=r===n?i:r+i)}return r}function Yt(e,t){for(var n=-1,r=Array(e);++n<e;)r[n]=t(n);return r}function Gt(e){return e?e.slice(0,_n(e)+1).replace(oe,""):e}function Xt(e){return function(t){return e(t)}}function Qt(e,t){return Dt(t,(function(t){return e[t]}))}function Zt(e,t){return e.has(t)}function en(e,t){for(var n=-1,r=e.length;++n<r&&Bt(t,e[n],0)>-1;);return n}function tn(e,t){for(var n=e.length;n--&&Bt(t,e[n],0)>-1;);return n}var nn=Wt({"À":"A","Á":"A","Â":"A","Ã":"A","Ä":"A","Å":"A","à":"a","á":"a","â":"a","ã":"a","ä":"a","å":"a","Ç":"C","ç":"c","Ð":"D","ð":"d","È":"E","É":"E","Ê":"E","Ë":"E","è":"e","é":"e","ê":"e","ë":"e","Ì":"I","Í":"I","Î":"I","Ï":"I","ì":"i","í":"i","î":"i","ï":"i","Ñ":"N","ñ":"n","Ò":"O","Ó":"O","Ô":"O","Õ":"O","Ö":"O","Ø":"O","ò":"o","ó":"o","ô":"o","õ":"o","ö":"o","ø":"o","Ù":"U","Ú":"U","Û":"U","Ü":"U","ù":"u","ú":"u","û":"u","ü":"u","Ý":"Y","ý":"y","ÿ":"y","Æ":"Ae","æ":"ae","Þ":"Th","þ":"th","ß":"ss","Ā":"A","Ă":"A","Ą":"A","ā":"a","ă":"a","ą":"a","Ć":"C","Ĉ":"C","Ċ":"C","Č":"C","ć":"c","ĉ":"c","ċ":"c","č":"c","Ď":"D","Đ":"D","ď":"d","đ":"d","Ē":"E","Ĕ":"E","Ė":"E","Ę":"E","Ě":"E","ē":"e","ĕ":"e","ė":"e","ę":"e","ě":"e","Ĝ":"G","Ğ":"G","Ġ":"G","Ģ":"G","ĝ":"g","ğ":"g","ġ":"g","ģ":"g","Ĥ":"H","Ħ":"H","ĥ":"h","ħ":"h","Ĩ":"I","Ī":"I","Ĭ":"I","Į":"I","İ":"I","ĩ":"i","ī":"i","ĭ":"i","į":"i","ı":"i","Ĵ":"J","ĵ":"j","Ķ":"K","ķ":"k","ĸ":"k","Ĺ":"L","Ļ":"L","Ľ":"L","Ŀ":"L","Ł":"L","ĺ":"l","ļ":"l","ľ":"l","ŀ":"l","ł":"l","Ń":"N","Ņ":"N","Ň":"N","Ŋ":"N","ń":"n","ņ":"n","ň":"n","ŋ":"n","Ō":"O","Ŏ":"O","Ő":"O","ō":"o","ŏ":"o","ő":"o","Ŕ":"R","Ŗ":"R","Ř":"R","ŕ":"r","ŗ":"r","ř":"r","Ś":"S","Ŝ":"S","Ş":"S","Š":"S","ś":"s","ŝ":"s","ş":"s","š":"s","Ţ":"T","Ť":"T","Ŧ":"T","ţ":"t","ť":"t","ŧ":"t","Ũ":"U","Ū":"U","Ŭ":"U","Ů":"U","Ű":"U","Ų":"U","ũ":"u","ū":"u","ŭ":"u","ů":"u","ű":"u","ų":"u","Ŵ":"W","ŵ":"w","Ŷ":"Y","ŷ":"y","Ÿ":"Y","Ź":"Z","Ż":"Z","Ž":"Z","ź":"z","ż":"z","ž":"z","IJ":"IJ","ij":"ij","Œ":"Oe","œ":"oe","ʼn":"'n","ſ":"s"}),rn=Wt({"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"});function on(e){return"\\"+lt[e]}function an(e){return nt.test(e)}function sn(e){var t=-1,n=Array(e.size);return e.forEach((function(e,r){n[++t]=[r,e]})),n}function ln(e,t){return function(n){return e(t(n))}}function cn(e,t){for(var n=-1,r=e.length,o=0,i=[];++n<r;){var s=e[n];s!==t&&s!==a||(e[n]=a,i[o++]=n)}return i}function un(e){var t=-1,n=Array(e.size);return e.forEach((function(e){n[++t]=e})),n}function dn(e){var t=-1,n=Array(e.size);return e.forEach((function(e){n[++t]=[e,e]})),n}function fn(e){return an(e)?function(e){var t=et.lastIndex=0;for(;et.test(e);)++t;return t}(e):Pt(e)}function pn(e){return an(e)?function(e){return e.match(et)||[]}(e):function(e){return e.split("")}(e)}function _n(e){for(var t=e.length;t--&&ae.test(e.charAt(t)););return t}var mn=Wt({"&amp;":"&","&lt;":"<","&gt;":">","&quot;":'"',"&#39;":"'"});var gn=function e(t){var ae,Se=(t=null==t?pt:gn.defaults(pt.Object(),t,gn.pick(pt,ot))).Array,$e=t.Date,xe=t.Error,Fe=t.Function,ke=t.Math,Oe=t.Object,Ce=t.RegExp,Re=t.String,je=t.TypeError,Ne=Se.prototype,Ie=Fe.prototype,De=Oe.prototype,Ee=t["__core-js_shared__"],Ae=Ie.toString,Te=De.hasOwnProperty,Le=0,Pe=(ae=/[^.]+$/.exec(Ee&&Ee.keys&&Ee.keys.IE_PROTO||""))?"Symbol(src)_1."+ae:"",Ve=De.toString,Me=Ae.call(Oe),Be=pt._,Ue=Ce("^"+Ae.call(Te).replace(ne,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),ze=gt?t.Buffer:n,qe=t.Symbol,Ke=t.Uint8Array,We=ze?ze.allocUnsafe:n,He=ln(Oe.getPrototypeOf,Oe),Je=Oe.create,Ye=De.propertyIsEnumerable,Ge=Ne.splice,Xe=qe?qe.isConcatSpreadable:n,et=qe?qe.iterator:n,nt=qe?qe.toStringTag:n,lt=function(){try{var e=pa(Oe,"defineProperty");return e({},"",{}),e}catch(e){}}(),dt=t.clearTimeout!==pt.clearTimeout&&t.clearTimeout,ft=$e&&$e.now!==pt.Date.now&&$e.now,_t=t.setTimeout!==pt.setTimeout&&t.setTimeout,mt=ke.ceil,ht=ke.floor,vt=Oe.getOwnPropertySymbols,Pt=ze?ze.isBuffer:n,Wt=t.isFinite,hn=Ne.join,vn=ln(Oe.keys,Oe),yn=ke.max,bn=ke.min,wn=$e.now,Sn=t.parseInt,$n=ke.random,xn=Ne.reverse,Fn=pa(t,"DataView"),kn=pa(t,"Map"),On=pa(t,"Promise"),Cn=pa(t,"Set"),Rn=pa(t,"WeakMap"),jn=pa(Oe,"create"),Nn=Rn&&new Rn,In={},Dn=Va(Fn),En=Va(kn),An=Va(On),Tn=Va(Cn),Ln=Va(Rn),Pn=qe?qe.prototype:n,Vn=Pn?Pn.valueOf:n,Mn=Pn?Pn.toString:n;function Bn(e){if(ns(e)&&!Ki(e)&&!(e instanceof Kn)){if(e instanceof qn)return e;if(Te.call(e,"__wrapped__"))return Ma(e)}return new qn(e)}var Un=function(){function e(){}return function(t){if(!ts(t))return{};if(Je)return Je(t);e.prototype=t;var r=new e;return e.prototype=n,r}}();function zn(){}function qn(e,t){this.__wrapped__=e,this.__actions__=[],this.__chain__=!!t,this.__index__=0,this.__values__=n}function Kn(e){this.__wrapped__=e,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=_,this.__views__=[]}function Wn(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}function Hn(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}function Jn(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}function Yn(e){var t=-1,n=null==e?0:e.length;for(this.__data__=new Jn;++t<n;)this.add(e[t])}function Gn(e){var t=this.__data__=new Hn(e);this.size=t.size}function Xn(e,t){var n=Ki(e),r=!n&&qi(e),o=!n&&!r&&Yi(e),a=!n&&!r&&!o&&us(e),i=n||r||o||a,s=i?Yt(e.length,Re):[],l=s.length;for(var c in e)!t&&!Te.call(e,c)||i&&("length"==c||o&&("offset"==c||"parent"==c)||a&&("buffer"==c||"byteLength"==c||"byteOffset"==c)||ba(c,l))||s.push(c);return s}function Qn(e){var t=e.length;return t?e[Yr(0,t-1)]:n}function Zn(e,t){return Ta(No(e),lr(t,0,e.length))}function er(e){return Ta(No(e))}function tr(e,t,r){(r!==n&&!Bi(e[t],r)||r===n&&!(t in e))&&ir(e,t,r)}function nr(e,t,r){var o=e[t];Te.call(e,t)&&Bi(o,r)&&(r!==n||t in e)||ir(e,t,r)}function rr(e,t){for(var n=e.length;n--;)if(Bi(e[n][0],t))return n;return-1}function or(e,t,n,r){return pr(e,(function(e,o,a){t(r,e,n(e),a)})),r}function ar(e,t){return e&&Io(t,Is(t),e)}function ir(e,t,n){"__proto__"==t&&lt?lt(e,t,{configurable:!0,enumerable:!0,value:n,writable:!0}):e[t]=n}function sr(e,t){for(var r=-1,o=t.length,a=Se(o),i=null==e;++r<o;)a[r]=i?n:Os(e,t[r]);return a}function lr(e,t,r){return e==e&&(r!==n&&(e=e<=r?e:r),t!==n&&(e=e>=t?e:t)),e}function cr(e,t,r,o,a,i){var s,l=1&t,c=2&t,u=4&t;if(r&&(s=a?r(e,o,a,i):r(e)),s!==n)return s;if(!ts(e))return e;var d=Ki(e);if(d){if(s=function(e){var t=e.length,n=new e.constructor(t);t&&"string"==typeof e[0]&&Te.call(e,"index")&&(n.index=e.index,n.input=e.input);return n}(e),!l)return No(e,s)}else{var f=ga(e),p=f==w||f==S;if(Yi(e))return Fo(e,l);if(f==F||f==g||p&&!a){if(s=c||p?{}:va(e),!l)return c?function(e,t){return Io(e,ma(e),t)}(e,function(e,t){return e&&Io(t,Ds(t),e)}(s,e)):function(e,t){return Io(e,_a(e),t)}(e,ar(s,e))}else{if(!st[f])return a?e:{};s=function(e,t,n){var r=e.constructor;switch(t){case I:return ko(e);case v:case y:return new r(+e);case D:return function(e,t){var n=t?ko(e.buffer):e.buffer;return new e.constructor(n,e.byteOffset,e.byteLength)}(e,n);case E:case A:case T:case L:case P:case V:case M:case B:case U:return Oo(e,n);case $:return new r;case x:case R:return new r(e);case O:return function(e){var t=new e.constructor(e.source,pe.exec(e));return t.lastIndex=e.lastIndex,t}(e);case C:return new r;case j:return o=e,Vn?Oe(Vn.call(o)):{}}var o}(e,f,l)}}i||(i=new Gn);var _=i.get(e);if(_)return _;i.set(e,s),ss(e)?e.forEach((function(n){s.add(cr(n,t,r,n,e,i))})):rs(e)&&e.forEach((function(n,o){s.set(o,cr(n,t,r,o,e,i))}));var m=d?n:(u?c?ia:aa:c?Ds:Is)(e);return Ot(m||e,(function(n,o){m&&(n=e[o=n]),nr(s,o,cr(n,t,r,o,e,i))})),s}function ur(e,t,r){var o=r.length;if(null==e)return!o;for(e=Oe(e);o--;){var a=r[o],i=t[a],s=e[a];if(s===n&&!(a in e)||!i(s))return!1}return!0}function dr(e,t,o){if("function"!=typeof e)throw new je(r);return Ia((function(){e.apply(n,o)}),t)}function fr(e,t,n,r){var o=-1,a=Nt,i=!0,s=e.length,l=[],c=t.length;if(!s)return l;n&&(t=Dt(t,Xt(n))),r?(a=It,i=!1):t.length>=200&&(a=Zt,i=!1,t=new Yn(t));e:for(;++o<s;){var u=e[o],d=null==n?u:n(u);if(u=r||0!==u?u:0,i&&d==d){for(var f=c;f--;)if(t[f]===d)continue e;l.push(u)}else a(t,d,r)||l.push(u)}return l}Bn.templateSettings={escape:G,evaluate:X,interpolate:Q,variable:"",imports:{_:Bn}},Bn.prototype=zn.prototype,Bn.prototype.constructor=Bn,qn.prototype=Un(zn.prototype),qn.prototype.constructor=qn,Kn.prototype=Un(zn.prototype),Kn.prototype.constructor=Kn,Wn.prototype.clear=function(){this.__data__=jn?jn(null):{},this.size=0},Wn.prototype.delete=function(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t},Wn.prototype.get=function(e){var t=this.__data__;if(jn){var r=t[e];return r===o?n:r}return Te.call(t,e)?t[e]:n},Wn.prototype.has=function(e){var t=this.__data__;return jn?t[e]!==n:Te.call(t,e)},Wn.prototype.set=function(e,t){var r=this.__data__;return this.size+=this.has(e)?0:1,r[e]=jn&&t===n?o:t,this},Hn.prototype.clear=function(){this.__data__=[],this.size=0},Hn.prototype.delete=function(e){var t=this.__data__,n=rr(t,e);return!(n<0)&&(n==t.length-1?t.pop():Ge.call(t,n,1),--this.size,!0)},Hn.prototype.get=function(e){var t=this.__data__,r=rr(t,e);return r<0?n:t[r][1]},Hn.prototype.has=function(e){return rr(this.__data__,e)>-1},Hn.prototype.set=function(e,t){var n=this.__data__,r=rr(n,e);return r<0?(++this.size,n.push([e,t])):n[r][1]=t,this},Jn.prototype.clear=function(){this.size=0,this.__data__={hash:new Wn,map:new(kn||Hn),string:new Wn}},Jn.prototype.delete=function(e){var t=da(this,e).delete(e);return this.size-=t?1:0,t},Jn.prototype.get=function(e){return da(this,e).get(e)},Jn.prototype.has=function(e){return da(this,e).has(e)},Jn.prototype.set=function(e,t){var n=da(this,e),r=n.size;return n.set(e,t),this.size+=n.size==r?0:1,this},Yn.prototype.add=Yn.prototype.push=function(e){return this.__data__.set(e,o),this},Yn.prototype.has=function(e){return this.__data__.has(e)},Gn.prototype.clear=function(){this.__data__=new Hn,this.size=0},Gn.prototype.delete=function(e){var t=this.__data__,n=t.delete(e);return this.size=t.size,n},Gn.prototype.get=function(e){return this.__data__.get(e)},Gn.prototype.has=function(e){return this.__data__.has(e)},Gn.prototype.set=function(e,t){var n=this.__data__;if(n instanceof Hn){var r=n.__data__;if(!kn||r.length<199)return r.push([e,t]),this.size=++n.size,this;n=this.__data__=new Jn(r)}return n.set(e,t),this.size=n.size,this};var pr=Ao(wr),_r=Ao(Sr,!0);function mr(e,t){var n=!0;return pr(e,(function(e,r,o){return n=!!t(e,r,o)})),n}function gr(e,t,r){for(var o=-1,a=e.length;++o<a;){var i=e[o],s=t(i);if(null!=s&&(l===n?s==s&&!cs(s):r(s,l)))var l=s,c=i}return c}function hr(e,t){var n=[];return pr(e,(function(e,r,o){t(e,r,o)&&n.push(e)})),n}function vr(e,t,n,r,o){var a=-1,i=e.length;for(n||(n=ya),o||(o=[]);++a<i;){var s=e[a];t>0&&n(s)?t>1?vr(s,t-1,n,r,o):Et(o,s):r||(o[o.length]=s)}return o}var yr=To(),br=To(!0);function wr(e,t){return e&&yr(e,t,Is)}function Sr(e,t){return e&&br(e,t,Is)}function $r(e,t){return jt(t,(function(t){return Qi(e[t])}))}function xr(e,t){for(var r=0,o=(t=wo(t,e)).length;null!=e&&r<o;)e=e[Pa(t[r++])];return r&&r==o?e:n}function Fr(e,t,n){var r=t(e);return Ki(e)?r:Et(r,n(e))}function kr(e){return null==e?e===n?"[object Undefined]":"[object Null]":nt&&nt in Oe(e)?function(e){var t=Te.call(e,nt),r=e[nt];try{e[nt]=n;var o=!0}catch(e){}var a=Ve.call(e);o&&(t?e[nt]=r:delete e[nt]);return a}(e):function(e){return Ve.call(e)}(e)}function Or(e,t){return e>t}function Cr(e,t){return null!=e&&Te.call(e,t)}function Rr(e,t){return null!=e&&t in Oe(e)}function jr(e,t,r){for(var o=r?It:Nt,a=e[0].length,i=e.length,s=i,l=Se(i),c=1/0,u=[];s--;){var d=e[s];s&&t&&(d=Dt(d,Xt(t))),c=bn(d.length,c),l[s]=!r&&(t||a>=120&&d.length>=120)?new Yn(s&&d):n}d=e[0];var f=-1,p=l[0];e:for(;++f<a&&u.length<c;){var _=d[f],m=t?t(_):_;if(_=r||0!==_?_:0,!(p?Zt(p,m):o(u,m,r))){for(s=i;--s;){var g=l[s];if(!(g?Zt(g,m):o(e[s],m,r)))continue e}p&&p.push(m),u.push(_)}}return u}function Nr(e,t,r){var o=null==(e=Ra(e,t=wo(t,e)))?e:e[Pa(Xa(t))];return null==o?n:Ft(o,e,r)}function Ir(e){return ns(e)&&kr(e)==g}function Dr(e,t,r,o,a){return e===t||(null==e||null==t||!ns(e)&&!ns(t)?e!=e&&t!=t:function(e,t,r,o,a,i){var s=Ki(e),l=Ki(t),c=s?h:ga(e),u=l?h:ga(t),d=(c=c==g?F:c)==F,f=(u=u==g?F:u)==F,p=c==u;if(p&&Yi(e)){if(!Yi(t))return!1;s=!0,d=!1}if(p&&!d)return i||(i=new Gn),s||us(e)?ra(e,t,r,o,a,i):function(e,t,n,r,o,a,i){switch(n){case D:if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case I:return!(e.byteLength!=t.byteLength||!a(new Ke(e),new Ke(t)));case v:case y:case x:return Bi(+e,+t);case b:return e.name==t.name&&e.message==t.message;case O:case R:return e==t+"";case $:var s=sn;case C:var l=1&r;if(s||(s=un),e.size!=t.size&&!l)return!1;var c=i.get(e);if(c)return c==t;r|=2,i.set(e,t);var u=ra(s(e),s(t),r,o,a,i);return i.delete(e),u;case j:if(Vn)return Vn.call(e)==Vn.call(t)}return!1}(e,t,c,r,o,a,i);if(!(1&r)){var _=d&&Te.call(e,"__wrapped__"),m=f&&Te.call(t,"__wrapped__");if(_||m){var w=_?e.value():e,S=m?t.value():t;return i||(i=new Gn),a(w,S,r,o,i)}}if(!p)return!1;return i||(i=new Gn),function(e,t,r,o,a,i){var s=1&r,l=aa(e),c=l.length,u=aa(t),d=u.length;if(c!=d&&!s)return!1;var f=c;for(;f--;){var p=l[f];if(!(s?p in t:Te.call(t,p)))return!1}var _=i.get(e),m=i.get(t);if(_&&m)return _==t&&m==e;var g=!0;i.set(e,t),i.set(t,e);var h=s;for(;++f<c;){var v=e[p=l[f]],y=t[p];if(o)var b=s?o(y,v,p,t,e,i):o(v,y,p,e,t,i);if(!(b===n?v===y||a(v,y,r,o,i):b)){g=!1;break}h||(h="constructor"==p)}if(g&&!h){var w=e.constructor,S=t.constructor;w==S||!("constructor"in e)||!("constructor"in t)||"function"==typeof w&&w instanceof w&&"function"==typeof S&&S instanceof S||(g=!1)}return i.delete(e),i.delete(t),g}(e,t,r,o,a,i)}(e,t,r,o,Dr,a))}function Er(e,t,r,o){var a=r.length,i=a,s=!o;if(null==e)return!i;for(e=Oe(e);a--;){var l=r[a];if(s&&l[2]?l[1]!==e[l[0]]:!(l[0]in e))return!1}for(;++a<i;){var c=(l=r[a])[0],u=e[c],d=l[1];if(s&&l[2]){if(u===n&&!(c in e))return!1}else{var f=new Gn;if(o)var p=o(u,d,c,e,t,f);if(!(p===n?Dr(d,u,3,o,f):p))return!1}}return!0}function Ar(e){return!(!ts(e)||(t=e,Pe&&Pe in t))&&(Qi(e)?Ue:ge).test(Va(e));var t}function Tr(e){return"function"==typeof e?e:null==e?ol:"object"==typeof e?Ki(e)?Ur(e[0],e[1]):Br(e):pl(e)}function Lr(e){if(!Fa(e))return vn(e);var t=[];for(var n in Oe(e))Te.call(e,n)&&"constructor"!=n&&t.push(n);return t}function Pr(e){if(!ts(e))return function(e){var t=[];if(null!=e)for(var n in Oe(e))t.push(n);return t}(e);var t=Fa(e),n=[];for(var r in e)("constructor"!=r||!t&&Te.call(e,r))&&n.push(r);return n}function Vr(e,t){return e<t}function Mr(e,t){var n=-1,r=Hi(e)?Se(e.length):[];return pr(e,(function(e,o,a){r[++n]=t(e,o,a)})),r}function Br(e){var t=fa(e);return 1==t.length&&t[0][2]?Oa(t[0][0],t[0][1]):function(n){return n===e||Er(n,e,t)}}function Ur(e,t){return Sa(e)&&ka(t)?Oa(Pa(e),t):function(r){var o=Os(r,e);return o===n&&o===t?Cs(r,e):Dr(t,o,3)}}function zr(e,t,r,o,a){e!==t&&yr(t,(function(i,s){if(a||(a=new Gn),ts(i))!function(e,t,r,o,a,i,s){var l=ja(e,r),c=ja(t,r),u=s.get(c);if(u)return void tr(e,r,u);var d=i?i(l,c,r+"",e,t,s):n,f=d===n;if(f){var p=Ki(c),_=!p&&Yi(c),m=!p&&!_&&us(c);d=c,p||_||m?Ki(l)?d=l:Ji(l)?d=No(l):_?(f=!1,d=Fo(c,!0)):m?(f=!1,d=Oo(c,!0)):d=[]:as(c)||qi(c)?(d=l,qi(l)?d=vs(l):ts(l)&&!Qi(l)||(d=va(c))):f=!1}f&&(s.set(c,d),a(d,c,o,i,s),s.delete(c));tr(e,r,d)}(e,t,s,r,zr,o,a);else{var l=o?o(ja(e,s),i,s+"",e,t,a):n;l===n&&(l=i),tr(e,s,l)}}),Ds)}function qr(e,t){var r=e.length;if(r)return ba(t+=t<0?r:0,r)?e[t]:n}function Kr(e,t,n){t=t.length?Dt(t,(function(e){return Ki(e)?function(t){return xr(t,1===e.length?e[0]:e)}:e})):[ol];var r=-1;t=Dt(t,Xt(ua()));var o=Mr(e,(function(e,n,o){var a=Dt(t,(function(t){return t(e)}));return{criteria:a,index:++r,value:e}}));return function(e,t){var n=e.length;for(e.sort(t);n--;)e[n]=e[n].value;return e}(o,(function(e,t){return function(e,t,n){var r=-1,o=e.criteria,a=t.criteria,i=o.length,s=n.length;for(;++r<i;){var l=Co(o[r],a[r]);if(l)return r>=s?l:l*("desc"==n[r]?-1:1)}return e.index-t.index}(e,t,n)}))}function Wr(e,t,n){for(var r=-1,o=t.length,a={};++r<o;){var i=t[r],s=xr(e,i);n(s,i)&&eo(a,wo(i,e),s)}return a}function Hr(e,t,n,r){var o=r?Ut:Bt,a=-1,i=t.length,s=e;for(e===t&&(t=No(t)),n&&(s=Dt(e,Xt(n)));++a<i;)for(var l=0,c=t[a],u=n?n(c):c;(l=o(s,u,l,r))>-1;)s!==e&&Ge.call(s,l,1),Ge.call(e,l,1);return e}function Jr(e,t){for(var n=e?t.length:0,r=n-1;n--;){var o=t[n];if(n==r||o!==a){var a=o;ba(o)?Ge.call(e,o,1):po(e,o)}}return e}function Yr(e,t){return e+ht($n()*(t-e+1))}function Gr(e,t){var n="";if(!e||t<1||t>f)return n;do{t%2&&(n+=e),(t=ht(t/2))&&(e+=e)}while(t);return n}function Xr(e,t){return Da(Ca(e,t,ol),e+"")}function Qr(e){return Qn(Bs(e))}function Zr(e,t){var n=Bs(e);return Ta(n,lr(t,0,n.length))}function eo(e,t,r,o){if(!ts(e))return e;for(var a=-1,i=(t=wo(t,e)).length,s=i-1,l=e;null!=l&&++a<i;){var c=Pa(t[a]),u=r;if("__proto__"===c||"constructor"===c||"prototype"===c)return e;if(a!=s){var d=l[c];(u=o?o(d,c,l):n)===n&&(u=ts(d)?d:ba(t[a+1])?[]:{})}nr(l,c,u),l=l[c]}return e}var to=Nn?function(e,t){return Nn.set(e,t),e}:ol,no=lt?function(e,t){return lt(e,"toString",{configurable:!0,enumerable:!1,value:tl(t),writable:!0})}:ol;function ro(e){return Ta(Bs(e))}function oo(e,t,n){var r=-1,o=e.length;t<0&&(t=-t>o?0:o+t),(n=n>o?o:n)<0&&(n+=o),o=t>n?0:n-t>>>0,t>>>=0;for(var a=Se(o);++r<o;)a[r]=e[r+t];return a}function ao(e,t){var n;return pr(e,(function(e,r,o){return!(n=t(e,r,o))})),!!n}function io(e,t,n){var r=0,o=null==e?r:e.length;if("number"==typeof t&&t==t&&o<=2147483647){for(;r<o;){var a=r+o>>>1,i=e[a];null!==i&&!cs(i)&&(n?i<=t:i<t)?r=a+1:o=a}return o}return so(e,t,ol,n)}function so(e,t,r,o){var a=0,i=null==e?0:e.length;if(0===i)return 0;for(var s=(t=r(t))!=t,l=null===t,c=cs(t),u=t===n;a<i;){var d=ht((a+i)/2),f=r(e[d]),p=f!==n,_=null===f,m=f==f,g=cs(f);if(s)var h=o||m;else h=u?m&&(o||p):l?m&&p&&(o||!_):c?m&&p&&!_&&(o||!g):!_&&!g&&(o?f<=t:f<t);h?a=d+1:i=d}return bn(i,4294967294)}function lo(e,t){for(var n=-1,r=e.length,o=0,a=[];++n<r;){var i=e[n],s=t?t(i):i;if(!n||!Bi(s,l)){var l=s;a[o++]=0===i?0:i}}return a}function co(e){return"number"==typeof e?e:cs(e)?p:+e}function uo(e){if("string"==typeof e)return e;if(Ki(e))return Dt(e,uo)+"";if(cs(e))return Mn?Mn.call(e):"";var t=e+"";return"0"==t&&1/e==-1/0?"-0":t}function fo(e,t,n){var r=-1,o=Nt,a=e.length,i=!0,s=[],l=s;if(n)i=!1,o=It;else if(a>=200){var c=t?null:Xo(e);if(c)return un(c);i=!1,o=Zt,l=new Yn}else l=t?[]:s;e:for(;++r<a;){var u=e[r],d=t?t(u):u;if(u=n||0!==u?u:0,i&&d==d){for(var f=l.length;f--;)if(l[f]===d)continue e;t&&l.push(d),s.push(u)}else o(l,d,n)||(l!==s&&l.push(d),s.push(u))}return s}function po(e,t){return null==(e=Ra(e,t=wo(t,e)))||delete e[Pa(Xa(t))]}function _o(e,t,n,r){return eo(e,t,n(xr(e,t)),r)}function mo(e,t,n,r){for(var o=e.length,a=r?o:-1;(r?a--:++a<o)&&t(e[a],a,e););return n?oo(e,r?0:a,r?a+1:o):oo(e,r?a+1:0,r?o:a)}function go(e,t){var n=e;return n instanceof Kn&&(n=n.value()),At(t,(function(e,t){return t.func.apply(t.thisArg,Et([e],t.args))}),n)}function ho(e,t,n){var r=e.length;if(r<2)return r?fo(e[0]):[];for(var o=-1,a=Se(r);++o<r;)for(var i=e[o],s=-1;++s<r;)s!=o&&(a[o]=fr(a[o]||i,e[s],t,n));return fo(vr(a,1),t,n)}function vo(e,t,r){for(var o=-1,a=e.length,i=t.length,s={};++o<a;){var l=o<i?t[o]:n;r(s,e[o],l)}return s}function yo(e){return Ji(e)?e:[]}function bo(e){return"function"==typeof e?e:ol}function wo(e,t){return Ki(e)?e:Sa(e,t)?[e]:La(ys(e))}var So=Xr;function $o(e,t,r){var o=e.length;return r=r===n?o:r,!t&&r>=o?e:oo(e,t,r)}var xo=dt||function(e){return pt.clearTimeout(e)};function Fo(e,t){if(t)return e.slice();var n=e.length,r=We?We(n):new e.constructor(n);return e.copy(r),r}function ko(e){var t=new e.constructor(e.byteLength);return new Ke(t).set(new Ke(e)),t}function Oo(e,t){var n=t?ko(e.buffer):e.buffer;return new e.constructor(n,e.byteOffset,e.length)}function Co(e,t){if(e!==t){var r=e!==n,o=null===e,a=e==e,i=cs(e),s=t!==n,l=null===t,c=t==t,u=cs(t);if(!l&&!u&&!i&&e>t||i&&s&&c&&!l&&!u||o&&s&&c||!r&&c||!a)return 1;if(!o&&!i&&!u&&e<t||u&&r&&a&&!o&&!i||l&&r&&a||!s&&a||!c)return-1}return 0}function Ro(e,t,n,r){for(var o=-1,a=e.length,i=n.length,s=-1,l=t.length,c=yn(a-i,0),u=Se(l+c),d=!r;++s<l;)u[s]=t[s];for(;++o<i;)(d||o<a)&&(u[n[o]]=e[o]);for(;c--;)u[s++]=e[o++];return u}function jo(e,t,n,r){for(var o=-1,a=e.length,i=-1,s=n.length,l=-1,c=t.length,u=yn(a-s,0),d=Se(u+c),f=!r;++o<u;)d[o]=e[o];for(var p=o;++l<c;)d[p+l]=t[l];for(;++i<s;)(f||o<a)&&(d[p+n[i]]=e[o++]);return d}function No(e,t){var n=-1,r=e.length;for(t||(t=Se(r));++n<r;)t[n]=e[n];return t}function Io(e,t,r,o){var a=!r;r||(r={});for(var i=-1,s=t.length;++i<s;){var l=t[i],c=o?o(r[l],e[l],l,r,e):n;c===n&&(c=e[l]),a?ir(r,l,c):nr(r,l,c)}return r}function Do(e,t){return function(n,r){var o=Ki(n)?kt:or,a=t?t():{};return o(n,e,ua(r,2),a)}}function Eo(e){return Xr((function(t,r){var o=-1,a=r.length,i=a>1?r[a-1]:n,s=a>2?r[2]:n;for(i=e.length>3&&"function"==typeof i?(a--,i):n,s&&wa(r[0],r[1],s)&&(i=a<3?n:i,a=1),t=Oe(t);++o<a;){var l=r[o];l&&e(t,l,o,i)}return t}))}function Ao(e,t){return function(n,r){if(null==n)return n;if(!Hi(n))return e(n,r);for(var o=n.length,a=t?o:-1,i=Oe(n);(t?a--:++a<o)&&!1!==r(i[a],a,i););return n}}function To(e){return function(t,n,r){for(var o=-1,a=Oe(t),i=r(t),s=i.length;s--;){var l=i[e?s:++o];if(!1===n(a[l],l,a))break}return t}}function Lo(e){return function(t){var r=an(t=ys(t))?pn(t):n,o=r?r[0]:t.charAt(0),a=r?$o(r,1).join(""):t.slice(1);return o[e]()+a}}function Po(e){return function(t){return At(Qs(qs(t).replace(Qe,"")),e,"")}}function Vo(e){return function(){var t=arguments;switch(t.length){case 0:return new e;case 1:return new e(t[0]);case 2:return new e(t[0],t[1]);case 3:return new e(t[0],t[1],t[2]);case 4:return new e(t[0],t[1],t[2],t[3]);case 5:return new e(t[0],t[1],t[2],t[3],t[4]);case 6:return new e(t[0],t[1],t[2],t[3],t[4],t[5]);case 7:return new e(t[0],t[1],t[2],t[3],t[4],t[5],t[6])}var n=Un(e.prototype),r=e.apply(n,t);return ts(r)?r:n}}function Mo(e){return function(t,r,o){var a=Oe(t);if(!Hi(t)){var i=ua(r,3);t=Is(t),r=function(e){return i(a[e],e,a)}}var s=e(t,r,o);return s>-1?a[i?t[s]:s]:n}}function Bo(e){return oa((function(t){var o=t.length,a=o,i=qn.prototype.thru;for(e&&t.reverse();a--;){var s=t[a];if("function"!=typeof s)throw new je(r);if(i&&!l&&"wrapper"==la(s))var l=new qn([],!0)}for(a=l?a:o;++a<o;){var c=la(s=t[a]),u="wrapper"==c?sa(s):n;l=u&&$a(u[0])&&424==u[1]&&!u[4].length&&1==u[9]?l[la(u[0])].apply(l,u[3]):1==s.length&&$a(s)?l[c]():l.thru(s)}return function(){var e=arguments,n=e[0];if(l&&1==e.length&&Ki(n))return l.plant(n).value();for(var r=0,a=o?t[r].apply(this,e):n;++r<o;)a=t[r].call(this,a);return a}}))}function Uo(e,t,r,o,a,i,s,l,u,d){var f=t&c,p=1&t,_=2&t,m=24&t,g=512&t,h=_?n:Vo(e);return function c(){for(var v=arguments.length,y=Se(v),b=v;b--;)y[b]=arguments[b];if(m)var w=ca(c),S=function(e,t){for(var n=e.length,r=0;n--;)e[n]===t&&++r;return r}(y,w);if(o&&(y=Ro(y,o,a,m)),i&&(y=jo(y,i,s,m)),v-=S,m&&v<d){var $=cn(y,w);return Yo(e,t,Uo,c.placeholder,r,y,$,l,u,d-v)}var x=p?r:this,F=_?x[e]:e;return v=y.length,l?y=function(e,t){var r=e.length,o=bn(t.length,r),a=No(e);for(;o--;){var i=t[o];e[o]=ba(i,r)?a[i]:n}return e}(y,l):g&&v>1&&y.reverse(),f&&u<v&&(y.length=u),this&&this!==pt&&this instanceof c&&(F=h||Vo(F)),F.apply(x,y)}}function zo(e,t){return function(n,r){return function(e,t,n,r){return wr(e,(function(e,o,a){t(r,n(e),o,a)})),r}(n,e,t(r),{})}}function qo(e,t){return function(r,o){var a;if(r===n&&o===n)return t;if(r!==n&&(a=r),o!==n){if(a===n)return o;"string"==typeof r||"string"==typeof o?(r=uo(r),o=uo(o)):(r=co(r),o=co(o)),a=e(r,o)}return a}}function Ko(e){return oa((function(t){return t=Dt(t,Xt(ua())),Xr((function(n){var r=this;return e(t,(function(e){return Ft(e,r,n)}))}))}))}function Wo(e,t){var r=(t=t===n?" ":uo(t)).length;if(r<2)return r?Gr(t,e):t;var o=Gr(t,mt(e/fn(t)));return an(t)?$o(pn(o),0,e).join(""):o.slice(0,e)}function Ho(e){return function(t,r,o){return o&&"number"!=typeof o&&wa(t,r,o)&&(r=o=n),t=_s(t),r===n?(r=t,t=0):r=_s(r),function(e,t,n,r){for(var o=-1,a=yn(mt((t-e)/(n||1)),0),i=Se(a);a--;)i[r?a:++o]=e,e+=n;return i}(t,r,o=o===n?t<r?1:-1:_s(o),e)}}function Jo(e){return function(t,n){return"string"==typeof t&&"string"==typeof n||(t=hs(t),n=hs(n)),e(t,n)}}function Yo(e,t,r,o,a,i,c,u,d,f){var p=8&t;t|=p?s:l,4&(t&=~(p?l:s))||(t&=-4);var _=[e,t,a,p?i:n,p?c:n,p?n:i,p?n:c,u,d,f],m=r.apply(n,_);return $a(e)&&Na(m,_),m.placeholder=o,Ea(m,e,t)}function Go(e){var t=ke[e];return function(e,n){if(e=hs(e),(n=null==n?0:bn(ms(n),292))&&Wt(e)){var r=(ys(e)+"e").split("e");return+((r=(ys(t(r[0]+"e"+(+r[1]+n)))+"e").split("e"))[0]+"e"+(+r[1]-n))}return t(e)}}var Xo=Cn&&1/un(new Cn([,-0]))[1]==d?function(e){return new Cn(e)}:cl;function Qo(e){return function(t){var n=ga(t);return n==$?sn(t):n==C?dn(t):function(e,t){return Dt(t,(function(t){return[t,e[t]]}))}(t,e(t))}}function Zo(e,t,o,d,f,p,_,m){var g=2&t;if(!g&&"function"!=typeof e)throw new je(r);var h=d?d.length:0;if(h||(t&=-97,d=f=n),_=_===n?_:yn(ms(_),0),m=m===n?m:ms(m),h-=f?f.length:0,t&l){var v=d,y=f;d=f=n}var b=g?n:sa(e),w=[e,t,o,d,f,v,y,p,_,m];if(b&&function(e,t){var n=e[1],r=t[1],o=n|r,i=o<131,s=r==c&&8==n||r==c&&n==u&&e[7].length<=t[8]||384==r&&t[7].length<=t[8]&&8==n;if(!i&&!s)return e;1&r&&(e[2]=t[2],o|=1&n?0:4);var l=t[3];if(l){var d=e[3];e[3]=d?Ro(d,l,t[4]):l,e[4]=d?cn(e[3],a):t[4]}(l=t[5])&&(d=e[5],e[5]=d?jo(d,l,t[6]):l,e[6]=d?cn(e[5],a):t[6]);(l=t[7])&&(e[7]=l);r&c&&(e[8]=null==e[8]?t[8]:bn(e[8],t[8]));null==e[9]&&(e[9]=t[9]);e[0]=t[0],e[1]=o}(w,b),e=w[0],t=w[1],o=w[2],d=w[3],f=w[4],!(m=w[9]=w[9]===n?g?0:e.length:yn(w[9]-h,0))&&24&t&&(t&=-25),t&&1!=t)S=8==t||t==i?function(e,t,r){var o=Vo(e);return function a(){for(var i=arguments.length,s=Se(i),l=i,c=ca(a);l--;)s[l]=arguments[l];var u=i<3&&s[0]!==c&&s[i-1]!==c?[]:cn(s,c);return(i-=u.length)<r?Yo(e,t,Uo,a.placeholder,n,s,u,n,n,r-i):Ft(this&&this!==pt&&this instanceof a?o:e,this,s)}}(e,t,m):t!=s&&33!=t||f.length?Uo.apply(n,w):function(e,t,n,r){var o=1&t,a=Vo(e);return function t(){for(var i=-1,s=arguments.length,l=-1,c=r.length,u=Se(c+s),d=this&&this!==pt&&this instanceof t?a:e;++l<c;)u[l]=r[l];for(;s--;)u[l++]=arguments[++i];return Ft(d,o?n:this,u)}}(e,t,o,d);else var S=function(e,t,n){var r=1&t,o=Vo(e);return function t(){return(this&&this!==pt&&this instanceof t?o:e).apply(r?n:this,arguments)}}(e,t,o);return Ea((b?to:Na)(S,w),e,t)}function ea(e,t,r,o){return e===n||Bi(e,De[r])&&!Te.call(o,r)?t:e}function ta(e,t,r,o,a,i){return ts(e)&&ts(t)&&(i.set(t,e),zr(e,t,n,ta,i),i.delete(t)),e}function na(e){return as(e)?n:e}function ra(e,t,r,o,a,i){var s=1&r,l=e.length,c=t.length;if(l!=c&&!(s&&c>l))return!1;var u=i.get(e),d=i.get(t);if(u&&d)return u==t&&d==e;var f=-1,p=!0,_=2&r?new Yn:n;for(i.set(e,t),i.set(t,e);++f<l;){var m=e[f],g=t[f];if(o)var h=s?o(g,m,f,t,e,i):o(m,g,f,e,t,i);if(h!==n){if(h)continue;p=!1;break}if(_){if(!Lt(t,(function(e,t){if(!Zt(_,t)&&(m===e||a(m,e,r,o,i)))return _.push(t)}))){p=!1;break}}else if(m!==g&&!a(m,g,r,o,i)){p=!1;break}}return i.delete(e),i.delete(t),p}function oa(e){return Da(Ca(e,n,Wa),e+"")}function aa(e){return Fr(e,Is,_a)}function ia(e){return Fr(e,Ds,ma)}var sa=Nn?function(e){return Nn.get(e)}:cl;function la(e){for(var t=e.name+"",n=In[t],r=Te.call(In,t)?n.length:0;r--;){var o=n[r],a=o.func;if(null==a||a==e)return o.name}return t}function ca(e){return(Te.call(Bn,"placeholder")?Bn:e).placeholder}function ua(){var e=Bn.iteratee||al;return e=e===al?Tr:e,arguments.length?e(arguments[0],arguments[1]):e}function da(e,t){var n,r,o=e.__data__;return("string"==(r=typeof(n=t))||"number"==r||"symbol"==r||"boolean"==r?"__proto__"!==n:null===n)?o["string"==typeof t?"string":"hash"]:o.map}function fa(e){for(var t=Is(e),n=t.length;n--;){var r=t[n],o=e[r];t[n]=[r,o,ka(o)]}return t}function pa(e,t){var r=function(e,t){return null==e?n:e[t]}(e,t);return Ar(r)?r:n}var _a=vt?function(e){return null==e?[]:(e=Oe(e),jt(vt(e),(function(t){return Ye.call(e,t)})))}:gl,ma=vt?function(e){for(var t=[];e;)Et(t,_a(e)),e=He(e);return t}:gl,ga=kr;function ha(e,t,n){for(var r=-1,o=(t=wo(t,e)).length,a=!1;++r<o;){var i=Pa(t[r]);if(!(a=null!=e&&n(e,i)))break;e=e[i]}return a||++r!=o?a:!!(o=null==e?0:e.length)&&es(o)&&ba(i,o)&&(Ki(e)||qi(e))}function va(e){return"function"!=typeof e.constructor||Fa(e)?{}:Un(He(e))}function ya(e){return Ki(e)||qi(e)||!!(Xe&&e&&e[Xe])}function ba(e,t){var n=typeof e;return!!(t=null==t?f:t)&&("number"==n||"symbol"!=n&&ve.test(e))&&e>-1&&e%1==0&&e<t}function wa(e,t,n){if(!ts(n))return!1;var r=typeof t;return!!("number"==r?Hi(n)&&ba(t,n.length):"string"==r&&t in n)&&Bi(n[t],e)}function Sa(e,t){if(Ki(e))return!1;var n=typeof e;return!("number"!=n&&"symbol"!=n&&"boolean"!=n&&null!=e&&!cs(e))||(ee.test(e)||!Z.test(e)||null!=t&&e in Oe(t))}function $a(e){var t=la(e),n=Bn[t];if("function"!=typeof n||!(t in Kn.prototype))return!1;if(e===n)return!0;var r=sa(n);return!!r&&e===r[0]}(Fn&&ga(new Fn(new ArrayBuffer(1)))!=D||kn&&ga(new kn)!=$||On&&ga(On.resolve())!=k||Cn&&ga(new Cn)!=C||Rn&&ga(new Rn)!=N)&&(ga=function(e){var t=kr(e),r=t==F?e.constructor:n,o=r?Va(r):"";if(o)switch(o){case Dn:return D;case En:return $;case An:return k;case Tn:return C;case Ln:return N}return t});var xa=Ee?Qi:hl;function Fa(e){var t=e&&e.constructor;return e===("function"==typeof t&&t.prototype||De)}function ka(e){return e==e&&!ts(e)}function Oa(e,t){return function(r){return null!=r&&(r[e]===t&&(t!==n||e in Oe(r)))}}function Ca(e,t,r){return t=yn(t===n?e.length-1:t,0),function(){for(var n=arguments,o=-1,a=yn(n.length-t,0),i=Se(a);++o<a;)i[o]=n[t+o];o=-1;for(var s=Se(t+1);++o<t;)s[o]=n[o];return s[t]=r(i),Ft(e,this,s)}}function Ra(e,t){return t.length<2?e:xr(e,oo(t,0,-1))}function ja(e,t){if(("constructor"!==t||"function"!=typeof e[t])&&"__proto__"!=t)return e[t]}var Na=Aa(to),Ia=_t||function(e,t){return pt.setTimeout(e,t)},Da=Aa(no);function Ea(e,t,n){var r=t+"";return Da(e,function(e,t){var n=t.length;if(!n)return e;var r=n-1;return t[r]=(n>1?"& ":"")+t[r],t=t.join(n>2?", ":" "),e.replace(ie,"{\n/* [wrapped with "+t+"] */\n")}(r,function(e,t){return Ot(m,(function(n){var r="_."+n[0];t&n[1]&&!Nt(e,r)&&e.push(r)})),e.sort()}(function(e){var t=e.match(se);return t?t[1].split(le):[]}(r),n)))}function Aa(e){var t=0,r=0;return function(){var o=wn(),a=16-(o-r);if(r=o,a>0){if(++t>=800)return arguments[0]}else t=0;return e.apply(n,arguments)}}function Ta(e,t){var r=-1,o=e.length,a=o-1;for(t=t===n?o:t;++r<t;){var i=Yr(r,a),s=e[i];e[i]=e[r],e[r]=s}return e.length=t,e}var La=function(e){var t=Ai(e,(function(e){return 500===n.size&&n.clear(),e})),n=t.cache;return t}((function(e){var t=[];return 46===e.charCodeAt(0)&&t.push(""),e.replace(te,(function(e,n,r,o){t.push(r?o.replace(de,"$1"):n||e)})),t}));function Pa(e){if("string"==typeof e||cs(e))return e;var t=e+"";return"0"==t&&1/e==-1/0?"-0":t}function Va(e){if(null!=e){try{return Ae.call(e)}catch(e){}try{return e+""}catch(e){}}return""}function Ma(e){if(e instanceof Kn)return e.clone();var t=new qn(e.__wrapped__,e.__chain__);return t.__actions__=No(e.__actions__),t.__index__=e.__index__,t.__values__=e.__values__,t}var Ba=Xr((function(e,t){return Ji(e)?fr(e,vr(t,1,Ji,!0)):[]})),Ua=Xr((function(e,t){var r=Xa(t);return Ji(r)&&(r=n),Ji(e)?fr(e,vr(t,1,Ji,!0),ua(r,2)):[]})),za=Xr((function(e,t){var r=Xa(t);return Ji(r)&&(r=n),Ji(e)?fr(e,vr(t,1,Ji,!0),n,r):[]}));function qa(e,t,n){var r=null==e?0:e.length;if(!r)return-1;var o=null==n?0:ms(n);return o<0&&(o=yn(r+o,0)),Mt(e,ua(t,3),o)}function Ka(e,t,r){var o=null==e?0:e.length;if(!o)return-1;var a=o-1;return r!==n&&(a=ms(r),a=r<0?yn(o+a,0):bn(a,o-1)),Mt(e,ua(t,3),a,!0)}function Wa(e){return(null==e?0:e.length)?vr(e,1):[]}function Ha(e){return e&&e.length?e[0]:n}var Ja=Xr((function(e){var t=Dt(e,yo);return t.length&&t[0]===e[0]?jr(t):[]})),Ya=Xr((function(e){var t=Xa(e),r=Dt(e,yo);return t===Xa(r)?t=n:r.pop(),r.length&&r[0]===e[0]?jr(r,ua(t,2)):[]})),Ga=Xr((function(e){var t=Xa(e),r=Dt(e,yo);return(t="function"==typeof t?t:n)&&r.pop(),r.length&&r[0]===e[0]?jr(r,n,t):[]}));function Xa(e){var t=null==e?0:e.length;return t?e[t-1]:n}var Qa=Xr(Za);function Za(e,t){return e&&e.length&&t&&t.length?Hr(e,t):e}var ei=oa((function(e,t){var n=null==e?0:e.length,r=sr(e,t);return Jr(e,Dt(t,(function(e){return ba(e,n)?+e:e})).sort(Co)),r}));function ti(e){return null==e?e:xn.call(e)}var ni=Xr((function(e){return fo(vr(e,1,Ji,!0))})),ri=Xr((function(e){var t=Xa(e);return Ji(t)&&(t=n),fo(vr(e,1,Ji,!0),ua(t,2))})),oi=Xr((function(e){var t=Xa(e);return t="function"==typeof t?t:n,fo(vr(e,1,Ji,!0),n,t)}));function ai(e){if(!e||!e.length)return[];var t=0;return e=jt(e,(function(e){if(Ji(e))return t=yn(e.length,t),!0})),Yt(t,(function(t){return Dt(e,Kt(t))}))}function ii(e,t){if(!e||!e.length)return[];var r=ai(e);return null==t?r:Dt(r,(function(e){return Ft(t,n,e)}))}var si=Xr((function(e,t){return Ji(e)?fr(e,t):[]})),li=Xr((function(e){return ho(jt(e,Ji))})),ci=Xr((function(e){var t=Xa(e);return Ji(t)&&(t=n),ho(jt(e,Ji),ua(t,2))})),ui=Xr((function(e){var t=Xa(e);return t="function"==typeof t?t:n,ho(jt(e,Ji),n,t)})),di=Xr(ai);var fi=Xr((function(e){var t=e.length,r=t>1?e[t-1]:n;return r="function"==typeof r?(e.pop(),r):n,ii(e,r)}));function pi(e){var t=Bn(e);return t.__chain__=!0,t}function _i(e,t){return t(e)}var mi=oa((function(e){var t=e.length,r=t?e[0]:0,o=this.__wrapped__,a=function(t){return sr(t,e)};return!(t>1||this.__actions__.length)&&o instanceof Kn&&ba(r)?((o=o.slice(r,+r+(t?1:0))).__actions__.push({func:_i,args:[a],thisArg:n}),new qn(o,this.__chain__).thru((function(e){return t&&!e.length&&e.push(n),e}))):this.thru(a)}));var gi=Do((function(e,t,n){Te.call(e,n)?++e[n]:ir(e,n,1)}));var hi=Mo(qa),vi=Mo(Ka);function yi(e,t){return(Ki(e)?Ot:pr)(e,ua(t,3))}function bi(e,t){return(Ki(e)?Ct:_r)(e,ua(t,3))}var wi=Do((function(e,t,n){Te.call(e,n)?e[n].push(t):ir(e,n,[t])}));var Si=Xr((function(e,t,n){var r=-1,o="function"==typeof t,a=Hi(e)?Se(e.length):[];return pr(e,(function(e){a[++r]=o?Ft(t,e,n):Nr(e,t,n)})),a})),$i=Do((function(e,t,n){ir(e,n,t)}));function xi(e,t){return(Ki(e)?Dt:Mr)(e,ua(t,3))}var Fi=Do((function(e,t,n){e[n?0:1].push(t)}),(function(){return[[],[]]}));var ki=Xr((function(e,t){if(null==e)return[];var n=t.length;return n>1&&wa(e,t[0],t[1])?t=[]:n>2&&wa(t[0],t[1],t[2])&&(t=[t[0]]),Kr(e,vr(t,1),[])})),Oi=ft||function(){return pt.Date.now()};function Ci(e,t,r){return t=r?n:t,t=e&&null==t?e.length:t,Zo(e,c,n,n,n,n,t)}function Ri(e,t){var o;if("function"!=typeof t)throw new je(r);return e=ms(e),function(){return--e>0&&(o=t.apply(this,arguments)),e<=1&&(t=n),o}}var ji=Xr((function(e,t,n){var r=1;if(n.length){var o=cn(n,ca(ji));r|=s}return Zo(e,r,t,n,o)})),Ni=Xr((function(e,t,n){var r=3;if(n.length){var o=cn(n,ca(Ni));r|=s}return Zo(t,r,e,n,o)}));function Ii(e,t,o){var a,i,s,l,c,u,d=0,f=!1,p=!1,_=!0;if("function"!=typeof e)throw new je(r);function m(t){var r=a,o=i;return a=i=n,d=t,l=e.apply(o,r)}function g(e){var r=e-u;return u===n||r>=t||r<0||p&&e-d>=s}function h(){var e=Oi();if(g(e))return v(e);c=Ia(h,function(e){var n=t-(e-u);return p?bn(n,s-(e-d)):n}(e))}function v(e){return c=n,_&&a?m(e):(a=i=n,l)}function y(){var e=Oi(),r=g(e);if(a=arguments,i=this,u=e,r){if(c===n)return function(e){return d=e,c=Ia(h,t),f?m(e):l}(u);if(p)return xo(c),c=Ia(h,t),m(u)}return c===n&&(c=Ia(h,t)),l}return t=hs(t)||0,ts(o)&&(f=!!o.leading,s=(p="maxWait"in o)?yn(hs(o.maxWait)||0,t):s,_="trailing"in o?!!o.trailing:_),y.cancel=function(){c!==n&&xo(c),d=0,a=u=i=c=n},y.flush=function(){return c===n?l:v(Oi())},y}var Di=Xr((function(e,t){return dr(e,1,t)})),Ei=Xr((function(e,t,n){return dr(e,hs(t)||0,n)}));function Ai(e,t){if("function"!=typeof e||null!=t&&"function"!=typeof t)throw new je(r);var n=function(){var r=arguments,o=t?t.apply(this,r):r[0],a=n.cache;if(a.has(o))return a.get(o);var i=e.apply(this,r);return n.cache=a.set(o,i)||a,i};return n.cache=new(Ai.Cache||Jn),n}function Ti(e){if("function"!=typeof e)throw new je(r);return function(){var t=arguments;switch(t.length){case 0:return!e.call(this);case 1:return!e.call(this,t[0]);case 2:return!e.call(this,t[0],t[1]);case 3:return!e.call(this,t[0],t[1],t[2])}return!e.apply(this,t)}}Ai.Cache=Jn;var Li=So((function(e,t){var n=(t=1==t.length&&Ki(t[0])?Dt(t[0],Xt(ua())):Dt(vr(t,1),Xt(ua()))).length;return Xr((function(r){for(var o=-1,a=bn(r.length,n);++o<a;)r[o]=t[o].call(this,r[o]);return Ft(e,this,r)}))})),Pi=Xr((function(e,t){var r=cn(t,ca(Pi));return Zo(e,s,n,t,r)})),Vi=Xr((function(e,t){var r=cn(t,ca(Vi));return Zo(e,l,n,t,r)})),Mi=oa((function(e,t){return Zo(e,u,n,n,n,t)}));function Bi(e,t){return e===t||e!=e&&t!=t}var Ui=Jo(Or),zi=Jo((function(e,t){return e>=t})),qi=Ir(function(){return arguments}())?Ir:function(e){return ns(e)&&Te.call(e,"callee")&&!Ye.call(e,"callee")},Ki=Se.isArray,Wi=yt?Xt(yt):function(e){return ns(e)&&kr(e)==I};function Hi(e){return null!=e&&es(e.length)&&!Qi(e)}function Ji(e){return ns(e)&&Hi(e)}var Yi=Pt||hl,Gi=bt?Xt(bt):function(e){return ns(e)&&kr(e)==y};function Xi(e){if(!ns(e))return!1;var t=kr(e);return t==b||"[object DOMException]"==t||"string"==typeof e.message&&"string"==typeof e.name&&!as(e)}function Qi(e){if(!ts(e))return!1;var t=kr(e);return t==w||t==S||"[object AsyncFunction]"==t||"[object Proxy]"==t}function Zi(e){return"number"==typeof e&&e==ms(e)}function es(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=f}function ts(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}function ns(e){return null!=e&&"object"==typeof e}var rs=wt?Xt(wt):function(e){return ns(e)&&ga(e)==$};function os(e){return"number"==typeof e||ns(e)&&kr(e)==x}function as(e){if(!ns(e)||kr(e)!=F)return!1;var t=He(e);if(null===t)return!0;var n=Te.call(t,"constructor")&&t.constructor;return"function"==typeof n&&n instanceof n&&Ae.call(n)==Me}var is=St?Xt(St):function(e){return ns(e)&&kr(e)==O};var ss=$t?Xt($t):function(e){return ns(e)&&ga(e)==C};function ls(e){return"string"==typeof e||!Ki(e)&&ns(e)&&kr(e)==R}function cs(e){return"symbol"==typeof e||ns(e)&&kr(e)==j}var us=xt?Xt(xt):function(e){return ns(e)&&es(e.length)&&!!it[kr(e)]};var ds=Jo(Vr),fs=Jo((function(e,t){return e<=t}));function ps(e){if(!e)return[];if(Hi(e))return ls(e)?pn(e):No(e);if(et&&e[et])return function(e){for(var t,n=[];!(t=e.next()).done;)n.push(t.value);return n}(e[et]());var t=ga(e);return(t==$?sn:t==C?un:Bs)(e)}function _s(e){return e?(e=hs(e))===d||e===-1/0?17976931348623157e292*(e<0?-1:1):e==e?e:0:0===e?e:0}function ms(e){var t=_s(e),n=t%1;return t==t?n?t-n:t:0}function gs(e){return e?lr(ms(e),0,_):0}function hs(e){if("number"==typeof e)return e;if(cs(e))return p;if(ts(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=ts(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=Gt(e);var n=me.test(e);return n||he.test(e)?ut(e.slice(2),n?2:8):_e.test(e)?p:+e}function vs(e){return Io(e,Ds(e))}function ys(e){return null==e?"":uo(e)}var bs=Eo((function(e,t){if(Fa(t)||Hi(t))Io(t,Is(t),e);else for(var n in t)Te.call(t,n)&&nr(e,n,t[n])})),ws=Eo((function(e,t){Io(t,Ds(t),e)})),Ss=Eo((function(e,t,n,r){Io(t,Ds(t),e,r)})),$s=Eo((function(e,t,n,r){Io(t,Is(t),e,r)})),xs=oa(sr);var Fs=Xr((function(e,t){e=Oe(e);var r=-1,o=t.length,a=o>2?t[2]:n;for(a&&wa(t[0],t[1],a)&&(o=1);++r<o;)for(var i=t[r],s=Ds(i),l=-1,c=s.length;++l<c;){var u=s[l],d=e[u];(d===n||Bi(d,De[u])&&!Te.call(e,u))&&(e[u]=i[u])}return e})),ks=Xr((function(e){return e.push(n,ta),Ft(As,n,e)}));function Os(e,t,r){var o=null==e?n:xr(e,t);return o===n?r:o}function Cs(e,t){return null!=e&&ha(e,t,Rr)}var Rs=zo((function(e,t,n){null!=t&&"function"!=typeof t.toString&&(t=Ve.call(t)),e[t]=n}),tl(ol)),js=zo((function(e,t,n){null!=t&&"function"!=typeof t.toString&&(t=Ve.call(t)),Te.call(e,t)?e[t].push(n):e[t]=[n]}),ua),Ns=Xr(Nr);function Is(e){return Hi(e)?Xn(e):Lr(e)}function Ds(e){return Hi(e)?Xn(e,!0):Pr(e)}var Es=Eo((function(e,t,n){zr(e,t,n)})),As=Eo((function(e,t,n,r){zr(e,t,n,r)})),Ts=oa((function(e,t){var n={};if(null==e)return n;var r=!1;t=Dt(t,(function(t){return t=wo(t,e),r||(r=t.length>1),t})),Io(e,ia(e),n),r&&(n=cr(n,7,na));for(var o=t.length;o--;)po(n,t[o]);return n}));var Ls=oa((function(e,t){return null==e?{}:function(e,t){return Wr(e,t,(function(t,n){return Cs(e,n)}))}(e,t)}));function Ps(e,t){if(null==e)return{};var n=Dt(ia(e),(function(e){return[e]}));return t=ua(t),Wr(e,n,(function(e,n){return t(e,n[0])}))}var Vs=Qo(Is),Ms=Qo(Ds);function Bs(e){return null==e?[]:Qt(e,Is(e))}var Us=Po((function(e,t,n){return t=t.toLowerCase(),e+(n?zs(t):t)}));function zs(e){return Xs(ys(e).toLowerCase())}function qs(e){return(e=ys(e))&&e.replace(ye,nn).replace(Ze,"")}var Ks=Po((function(e,t,n){return e+(n?"-":"")+t.toLowerCase()})),Ws=Po((function(e,t,n){return e+(n?" ":"")+t.toLowerCase()})),Hs=Lo("toLowerCase");var Js=Po((function(e,t,n){return e+(n?"_":"")+t.toLowerCase()}));var Ys=Po((function(e,t,n){return e+(n?" ":"")+Xs(t)}));var Gs=Po((function(e,t,n){return e+(n?" ":"")+t.toUpperCase()})),Xs=Lo("toUpperCase");function Qs(e,t,r){return e=ys(e),(t=r?n:t)===n?function(e){return rt.test(e)}(e)?function(e){return e.match(tt)||[]}(e):function(e){return e.match(ce)||[]}(e):e.match(t)||[]}var Zs=Xr((function(e,t){try{return Ft(e,n,t)}catch(e){return Xi(e)?e:new xe(e)}})),el=oa((function(e,t){return Ot(t,(function(t){t=Pa(t),ir(e,t,ji(e[t],e))})),e}));function tl(e){return function(){return e}}var nl=Bo(),rl=Bo(!0);function ol(e){return e}function al(e){return Tr("function"==typeof e?e:cr(e,1))}var il=Xr((function(e,t){return function(n){return Nr(n,e,t)}})),sl=Xr((function(e,t){return function(n){return Nr(e,n,t)}}));function ll(e,t,n){var r=Is(t),o=$r(t,r);null!=n||ts(t)&&(o.length||!r.length)||(n=t,t=e,e=this,o=$r(t,Is(t)));var a=!(ts(n)&&"chain"in n&&!n.chain),i=Qi(e);return Ot(o,(function(n){var r=t[n];e[n]=r,i&&(e.prototype[n]=function(){var t=this.__chain__;if(a||t){var n=e(this.__wrapped__);return(n.__actions__=No(this.__actions__)).push({func:r,args:arguments,thisArg:e}),n.__chain__=t,n}return r.apply(e,Et([this.value()],arguments))})})),e}function cl(){}var ul=Ko(Dt),dl=Ko(Rt),fl=Ko(Lt);function pl(e){return Sa(e)?Kt(Pa(e)):function(e){return function(t){return xr(t,e)}}(e)}var _l=Ho(),ml=Ho(!0);function gl(){return[]}function hl(){return!1}var vl=qo((function(e,t){return e+t}),0),yl=Go("ceil"),bl=qo((function(e,t){return e/t}),1),wl=Go("floor");var Sl,$l=qo((function(e,t){return e*t}),1),xl=Go("round"),Fl=qo((function(e,t){return e-t}),0);return Bn.after=function(e,t){if("function"!=typeof t)throw new je(r);return e=ms(e),function(){if(--e<1)return t.apply(this,arguments)}},Bn.ary=Ci,Bn.assign=bs,Bn.assignIn=ws,Bn.assignInWith=Ss,Bn.assignWith=$s,Bn.at=xs,Bn.before=Ri,Bn.bind=ji,Bn.bindAll=el,Bn.bindKey=Ni,Bn.castArray=function(){if(!arguments.length)return[];var e=arguments[0];return Ki(e)?e:[e]},Bn.chain=pi,Bn.chunk=function(e,t,r){t=(r?wa(e,t,r):t===n)?1:yn(ms(t),0);var o=null==e?0:e.length;if(!o||t<1)return[];for(var a=0,i=0,s=Se(mt(o/t));a<o;)s[i++]=oo(e,a,a+=t);return s},Bn.compact=function(e){for(var t=-1,n=null==e?0:e.length,r=0,o=[];++t<n;){var a=e[t];a&&(o[r++]=a)}return o},Bn.concat=function(){var e=arguments.length;if(!e)return[];for(var t=Se(e-1),n=arguments[0],r=e;r--;)t[r-1]=arguments[r];return Et(Ki(n)?No(n):[n],vr(t,1))},Bn.cond=function(e){var t=null==e?0:e.length,n=ua();return e=t?Dt(e,(function(e){if("function"!=typeof e[1])throw new je(r);return[n(e[0]),e[1]]})):[],Xr((function(n){for(var r=-1;++r<t;){var o=e[r];if(Ft(o[0],this,n))return Ft(o[1],this,n)}}))},Bn.conforms=function(e){return function(e){var t=Is(e);return function(n){return ur(n,e,t)}}(cr(e,1))},Bn.constant=tl,Bn.countBy=gi,Bn.create=function(e,t){var n=Un(e);return null==t?n:ar(n,t)},Bn.curry=function e(t,r,o){var a=Zo(t,8,n,n,n,n,n,r=o?n:r);return a.placeholder=e.placeholder,a},Bn.curryRight=function e(t,r,o){var a=Zo(t,i,n,n,n,n,n,r=o?n:r);return a.placeholder=e.placeholder,a},Bn.debounce=Ii,Bn.defaults=Fs,Bn.defaultsDeep=ks,Bn.defer=Di,Bn.delay=Ei,Bn.difference=Ba,Bn.differenceBy=Ua,Bn.differenceWith=za,Bn.drop=function(e,t,r){var o=null==e?0:e.length;return o?oo(e,(t=r||t===n?1:ms(t))<0?0:t,o):[]},Bn.dropRight=function(e,t,r){var o=null==e?0:e.length;return o?oo(e,0,(t=o-(t=r||t===n?1:ms(t)))<0?0:t):[]},Bn.dropRightWhile=function(e,t){return e&&e.length?mo(e,ua(t,3),!0,!0):[]},Bn.dropWhile=function(e,t){return e&&e.length?mo(e,ua(t,3),!0):[]},Bn.fill=function(e,t,r,o){var a=null==e?0:e.length;return a?(r&&"number"!=typeof r&&wa(e,t,r)&&(r=0,o=a),function(e,t,r,o){var a=e.length;for((r=ms(r))<0&&(r=-r>a?0:a+r),(o=o===n||o>a?a:ms(o))<0&&(o+=a),o=r>o?0:gs(o);r<o;)e[r++]=t;return e}(e,t,r,o)):[]},Bn.filter=function(e,t){return(Ki(e)?jt:hr)(e,ua(t,3))},Bn.flatMap=function(e,t){return vr(xi(e,t),1)},Bn.flatMapDeep=function(e,t){return vr(xi(e,t),d)},Bn.flatMapDepth=function(e,t,r){return r=r===n?1:ms(r),vr(xi(e,t),r)},Bn.flatten=Wa,Bn.flattenDeep=function(e){return(null==e?0:e.length)?vr(e,d):[]},Bn.flattenDepth=function(e,t){return(null==e?0:e.length)?vr(e,t=t===n?1:ms(t)):[]},Bn.flip=function(e){return Zo(e,512)},Bn.flow=nl,Bn.flowRight=rl,Bn.fromPairs=function(e){for(var t=-1,n=null==e?0:e.length,r={};++t<n;){var o=e[t];r[o[0]]=o[1]}return r},Bn.functions=function(e){return null==e?[]:$r(e,Is(e))},Bn.functionsIn=function(e){return null==e?[]:$r(e,Ds(e))},Bn.groupBy=wi,Bn.initial=function(e){return(null==e?0:e.length)?oo(e,0,-1):[]},Bn.intersection=Ja,Bn.intersectionBy=Ya,Bn.intersectionWith=Ga,Bn.invert=Rs,Bn.invertBy=js,Bn.invokeMap=Si,Bn.iteratee=al,Bn.keyBy=$i,Bn.keys=Is,Bn.keysIn=Ds,Bn.map=xi,Bn.mapKeys=function(e,t){var n={};return t=ua(t,3),wr(e,(function(e,r,o){ir(n,t(e,r,o),e)})),n},Bn.mapValues=function(e,t){var n={};return t=ua(t,3),wr(e,(function(e,r,o){ir(n,r,t(e,r,o))})),n},Bn.matches=function(e){return Br(cr(e,1))},Bn.matchesProperty=function(e,t){return Ur(e,cr(t,1))},Bn.memoize=Ai,Bn.merge=Es,Bn.mergeWith=As,Bn.method=il,Bn.methodOf=sl,Bn.mixin=ll,Bn.negate=Ti,Bn.nthArg=function(e){return e=ms(e),Xr((function(t){return qr(t,e)}))},Bn.omit=Ts,Bn.omitBy=function(e,t){return Ps(e,Ti(ua(t)))},Bn.once=function(e){return Ri(2,e)},Bn.orderBy=function(e,t,r,o){return null==e?[]:(Ki(t)||(t=null==t?[]:[t]),Ki(r=o?n:r)||(r=null==r?[]:[r]),Kr(e,t,r))},Bn.over=ul,Bn.overArgs=Li,Bn.overEvery=dl,Bn.overSome=fl,Bn.partial=Pi,Bn.partialRight=Vi,Bn.partition=Fi,Bn.pick=Ls,Bn.pickBy=Ps,Bn.property=pl,Bn.propertyOf=function(e){return function(t){return null==e?n:xr(e,t)}},Bn.pull=Qa,Bn.pullAll=Za,Bn.pullAllBy=function(e,t,n){return e&&e.length&&t&&t.length?Hr(e,t,ua(n,2)):e},Bn.pullAllWith=function(e,t,r){return e&&e.length&&t&&t.length?Hr(e,t,n,r):e},Bn.pullAt=ei,Bn.range=_l,Bn.rangeRight=ml,Bn.rearg=Mi,Bn.reject=function(e,t){return(Ki(e)?jt:hr)(e,Ti(ua(t,3)))},Bn.remove=function(e,t){var n=[];if(!e||!e.length)return n;var r=-1,o=[],a=e.length;for(t=ua(t,3);++r<a;){var i=e[r];t(i,r,e)&&(n.push(i),o.push(r))}return Jr(e,o),n},Bn.rest=function(e,t){if("function"!=typeof e)throw new je(r);return Xr(e,t=t===n?t:ms(t))},Bn.reverse=ti,Bn.sampleSize=function(e,t,r){return t=(r?wa(e,t,r):t===n)?1:ms(t),(Ki(e)?Zn:Zr)(e,t)},Bn.set=function(e,t,n){return null==e?e:eo(e,t,n)},Bn.setWith=function(e,t,r,o){return o="function"==typeof o?o:n,null==e?e:eo(e,t,r,o)},Bn.shuffle=function(e){return(Ki(e)?er:ro)(e)},Bn.slice=function(e,t,r){var o=null==e?0:e.length;return o?(r&&"number"!=typeof r&&wa(e,t,r)?(t=0,r=o):(t=null==t?0:ms(t),r=r===n?o:ms(r)),oo(e,t,r)):[]},Bn.sortBy=ki,Bn.sortedUniq=function(e){return e&&e.length?lo(e):[]},Bn.sortedUniqBy=function(e,t){return e&&e.length?lo(e,ua(t,2)):[]},Bn.split=function(e,t,r){return r&&"number"!=typeof r&&wa(e,t,r)&&(t=r=n),(r=r===n?_:r>>>0)?(e=ys(e))&&("string"==typeof t||null!=t&&!is(t))&&!(t=uo(t))&&an(e)?$o(pn(e),0,r):e.split(t,r):[]},Bn.spread=function(e,t){if("function"!=typeof e)throw new je(r);return t=null==t?0:yn(ms(t),0),Xr((function(n){var r=n[t],o=$o(n,0,t);return r&&Et(o,r),Ft(e,this,o)}))},Bn.tail=function(e){var t=null==e?0:e.length;return t?oo(e,1,t):[]},Bn.take=function(e,t,r){return e&&e.length?oo(e,0,(t=r||t===n?1:ms(t))<0?0:t):[]},Bn.takeRight=function(e,t,r){var o=null==e?0:e.length;return o?oo(e,(t=o-(t=r||t===n?1:ms(t)))<0?0:t,o):[]},Bn.takeRightWhile=function(e,t){return e&&e.length?mo(e,ua(t,3),!1,!0):[]},Bn.takeWhile=function(e,t){return e&&e.length?mo(e,ua(t,3)):[]},Bn.tap=function(e,t){return t(e),e},Bn.throttle=function(e,t,n){var o=!0,a=!0;if("function"!=typeof e)throw new je(r);return ts(n)&&(o="leading"in n?!!n.leading:o,a="trailing"in n?!!n.trailing:a),Ii(e,t,{leading:o,maxWait:t,trailing:a})},Bn.thru=_i,Bn.toArray=ps,Bn.toPairs=Vs,Bn.toPairsIn=Ms,Bn.toPath=function(e){return Ki(e)?Dt(e,Pa):cs(e)?[e]:No(La(ys(e)))},Bn.toPlainObject=vs,Bn.transform=function(e,t,n){var r=Ki(e),o=r||Yi(e)||us(e);if(t=ua(t,4),null==n){var a=e&&e.constructor;n=o?r?new a:[]:ts(e)&&Qi(a)?Un(He(e)):{}}return(o?Ot:wr)(e,(function(e,r,o){return t(n,e,r,o)})),n},Bn.unary=function(e){return Ci(e,1)},Bn.union=ni,Bn.unionBy=ri,Bn.unionWith=oi,Bn.uniq=function(e){return e&&e.length?fo(e):[]},Bn.uniqBy=function(e,t){return e&&e.length?fo(e,ua(t,2)):[]},Bn.uniqWith=function(e,t){return t="function"==typeof t?t:n,e&&e.length?fo(e,n,t):[]},Bn.unset=function(e,t){return null==e||po(e,t)},Bn.unzip=ai,Bn.unzipWith=ii,Bn.update=function(e,t,n){return null==e?e:_o(e,t,bo(n))},Bn.updateWith=function(e,t,r,o){return o="function"==typeof o?o:n,null==e?e:_o(e,t,bo(r),o)},Bn.values=Bs,Bn.valuesIn=function(e){return null==e?[]:Qt(e,Ds(e))},Bn.without=si,Bn.words=Qs,Bn.wrap=function(e,t){return Pi(bo(t),e)},Bn.xor=li,Bn.xorBy=ci,Bn.xorWith=ui,Bn.zip=di,Bn.zipObject=function(e,t){return vo(e||[],t||[],nr)},Bn.zipObjectDeep=function(e,t){return vo(e||[],t||[],eo)},Bn.zipWith=fi,Bn.entries=Vs,Bn.entriesIn=Ms,Bn.extend=ws,Bn.extendWith=Ss,ll(Bn,Bn),Bn.add=vl,Bn.attempt=Zs,Bn.camelCase=Us,Bn.capitalize=zs,Bn.ceil=yl,Bn.clamp=function(e,t,r){return r===n&&(r=t,t=n),r!==n&&(r=(r=hs(r))==r?r:0),t!==n&&(t=(t=hs(t))==t?t:0),lr(hs(e),t,r)},Bn.clone=function(e){return cr(e,4)},Bn.cloneDeep=function(e){return cr(e,5)},Bn.cloneDeepWith=function(e,t){return cr(e,5,t="function"==typeof t?t:n)},Bn.cloneWith=function(e,t){return cr(e,4,t="function"==typeof t?t:n)},Bn.conformsTo=function(e,t){return null==t||ur(e,t,Is(t))},Bn.deburr=qs,Bn.defaultTo=function(e,t){return null==e||e!=e?t:e},Bn.divide=bl,Bn.endsWith=function(e,t,r){e=ys(e),t=uo(t);var o=e.length,a=r=r===n?o:lr(ms(r),0,o);return(r-=t.length)>=0&&e.slice(r,a)==t},Bn.eq=Bi,Bn.escape=function(e){return(e=ys(e))&&Y.test(e)?e.replace(H,rn):e},Bn.escapeRegExp=function(e){return(e=ys(e))&&re.test(e)?e.replace(ne,"\\$&"):e},Bn.every=function(e,t,r){var o=Ki(e)?Rt:mr;return r&&wa(e,t,r)&&(t=n),o(e,ua(t,3))},Bn.find=hi,Bn.findIndex=qa,Bn.findKey=function(e,t){return Vt(e,ua(t,3),wr)},Bn.findLast=vi,Bn.findLastIndex=Ka,Bn.findLastKey=function(e,t){return Vt(e,ua(t,3),Sr)},Bn.floor=wl,Bn.forEach=yi,Bn.forEachRight=bi,Bn.forIn=function(e,t){return null==e?e:yr(e,ua(t,3),Ds)},Bn.forInRight=function(e,t){return null==e?e:br(e,ua(t,3),Ds)},Bn.forOwn=function(e,t){return e&&wr(e,ua(t,3))},Bn.forOwnRight=function(e,t){return e&&Sr(e,ua(t,3))},Bn.get=Os,Bn.gt=Ui,Bn.gte=zi,Bn.has=function(e,t){return null!=e&&ha(e,t,Cr)},Bn.hasIn=Cs,Bn.head=Ha,Bn.identity=ol,Bn.includes=function(e,t,n,r){e=Hi(e)?e:Bs(e),n=n&&!r?ms(n):0;var o=e.length;return n<0&&(n=yn(o+n,0)),ls(e)?n<=o&&e.indexOf(t,n)>-1:!!o&&Bt(e,t,n)>-1},Bn.indexOf=function(e,t,n){var r=null==e?0:e.length;if(!r)return-1;var o=null==n?0:ms(n);return o<0&&(o=yn(r+o,0)),Bt(e,t,o)},Bn.inRange=function(e,t,r){return t=_s(t),r===n?(r=t,t=0):r=_s(r),function(e,t,n){return e>=bn(t,n)&&e<yn(t,n)}(e=hs(e),t,r)},Bn.invoke=Ns,Bn.isArguments=qi,Bn.isArray=Ki,Bn.isArrayBuffer=Wi,Bn.isArrayLike=Hi,Bn.isArrayLikeObject=Ji,Bn.isBoolean=function(e){return!0===e||!1===e||ns(e)&&kr(e)==v},Bn.isBuffer=Yi,Bn.isDate=Gi,Bn.isElement=function(e){return ns(e)&&1===e.nodeType&&!as(e)},Bn.isEmpty=function(e){if(null==e)return!0;if(Hi(e)&&(Ki(e)||"string"==typeof e||"function"==typeof e.splice||Yi(e)||us(e)||qi(e)))return!e.length;var t=ga(e);if(t==$||t==C)return!e.size;if(Fa(e))return!Lr(e).length;for(var n in e)if(Te.call(e,n))return!1;return!0},Bn.isEqual=function(e,t){return Dr(e,t)},Bn.isEqualWith=function(e,t,r){var o=(r="function"==typeof r?r:n)?r(e,t):n;return o===n?Dr(e,t,n,r):!!o},Bn.isError=Xi,Bn.isFinite=function(e){return"number"==typeof e&&Wt(e)},Bn.isFunction=Qi,Bn.isInteger=Zi,Bn.isLength=es,Bn.isMap=rs,Bn.isMatch=function(e,t){return e===t||Er(e,t,fa(t))},Bn.isMatchWith=function(e,t,r){return r="function"==typeof r?r:n,Er(e,t,fa(t),r)},Bn.isNaN=function(e){return os(e)&&e!=+e},Bn.isNative=function(e){if(xa(e))throw new xe("Unsupported core-js use. Try https://npms.io/search?q=ponyfill.");return Ar(e)},Bn.isNil=function(e){return null==e},Bn.isNull=function(e){return null===e},Bn.isNumber=os,Bn.isObject=ts,Bn.isObjectLike=ns,Bn.isPlainObject=as,Bn.isRegExp=is,Bn.isSafeInteger=function(e){return Zi(e)&&e>=-9007199254740991&&e<=f},Bn.isSet=ss,Bn.isString=ls,Bn.isSymbol=cs,Bn.isTypedArray=us,Bn.isUndefined=function(e){return e===n},Bn.isWeakMap=function(e){return ns(e)&&ga(e)==N},Bn.isWeakSet=function(e){return ns(e)&&"[object WeakSet]"==kr(e)},Bn.join=function(e,t){return null==e?"":hn.call(e,t)},Bn.kebabCase=Ks,Bn.last=Xa,Bn.lastIndexOf=function(e,t,r){var o=null==e?0:e.length;if(!o)return-1;var a=o;return r!==n&&(a=(a=ms(r))<0?yn(o+a,0):bn(a,o-1)),t==t?function(e,t,n){for(var r=n+1;r--;)if(e[r]===t)return r;return r}(e,t,a):Mt(e,zt,a,!0)},Bn.lowerCase=Ws,Bn.lowerFirst=Hs,Bn.lt=ds,Bn.lte=fs,Bn.max=function(e){return e&&e.length?gr(e,ol,Or):n},Bn.maxBy=function(e,t){return e&&e.length?gr(e,ua(t,2),Or):n},Bn.mean=function(e){return qt(e,ol)},Bn.meanBy=function(e,t){return qt(e,ua(t,2))},Bn.min=function(e){return e&&e.length?gr(e,ol,Vr):n},Bn.minBy=function(e,t){return e&&e.length?gr(e,ua(t,2),Vr):n},Bn.stubArray=gl,Bn.stubFalse=hl,Bn.stubObject=function(){return{}},Bn.stubString=function(){return""},Bn.stubTrue=function(){return!0},Bn.multiply=$l,Bn.nth=function(e,t){return e&&e.length?qr(e,ms(t)):n},Bn.noConflict=function(){return pt._===this&&(pt._=Be),this},Bn.noop=cl,Bn.now=Oi,Bn.pad=function(e,t,n){e=ys(e);var r=(t=ms(t))?fn(e):0;if(!t||r>=t)return e;var o=(t-r)/2;return Wo(ht(o),n)+e+Wo(mt(o),n)},Bn.padEnd=function(e,t,n){e=ys(e);var r=(t=ms(t))?fn(e):0;return t&&r<t?e+Wo(t-r,n):e},Bn.padStart=function(e,t,n){e=ys(e);var r=(t=ms(t))?fn(e):0;return t&&r<t?Wo(t-r,n)+e:e},Bn.parseInt=function(e,t,n){return n||null==t?t=0:t&&(t=+t),Sn(ys(e).replace(oe,""),t||0)},Bn.random=function(e,t,r){if(r&&"boolean"!=typeof r&&wa(e,t,r)&&(t=r=n),r===n&&("boolean"==typeof t?(r=t,t=n):"boolean"==typeof e&&(r=e,e=n)),e===n&&t===n?(e=0,t=1):(e=_s(e),t===n?(t=e,e=0):t=_s(t)),e>t){var o=e;e=t,t=o}if(r||e%1||t%1){var a=$n();return bn(e+a*(t-e+ct("1e-"+((a+"").length-1))),t)}return Yr(e,t)},Bn.reduce=function(e,t,n){var r=Ki(e)?At:Ht,o=arguments.length<3;return r(e,ua(t,4),n,o,pr)},Bn.reduceRight=function(e,t,n){var r=Ki(e)?Tt:Ht,o=arguments.length<3;return r(e,ua(t,4),n,o,_r)},Bn.repeat=function(e,t,r){return t=(r?wa(e,t,r):t===n)?1:ms(t),Gr(ys(e),t)},Bn.replace=function(){var e=arguments,t=ys(e[0]);return e.length<3?t:t.replace(e[1],e[2])},Bn.result=function(e,t,r){var o=-1,a=(t=wo(t,e)).length;for(a||(a=1,e=n);++o<a;){var i=null==e?n:e[Pa(t[o])];i===n&&(o=a,i=r),e=Qi(i)?i.call(e):i}return e},Bn.round=xl,Bn.runInContext=e,Bn.sample=function(e){return(Ki(e)?Qn:Qr)(e)},Bn.size=function(e){if(null==e)return 0;if(Hi(e))return ls(e)?fn(e):e.length;var t=ga(e);return t==$||t==C?e.size:Lr(e).length},Bn.snakeCase=Js,Bn.some=function(e,t,r){var o=Ki(e)?Lt:ao;return r&&wa(e,t,r)&&(t=n),o(e,ua(t,3))},Bn.sortedIndex=function(e,t){return io(e,t)},Bn.sortedIndexBy=function(e,t,n){return so(e,t,ua(n,2))},Bn.sortedIndexOf=function(e,t){var n=null==e?0:e.length;if(n){var r=io(e,t);if(r<n&&Bi(e[r],t))return r}return-1},Bn.sortedLastIndex=function(e,t){return io(e,t,!0)},Bn.sortedLastIndexBy=function(e,t,n){return so(e,t,ua(n,2),!0)},Bn.sortedLastIndexOf=function(e,t){if(null==e?0:e.length){var n=io(e,t,!0)-1;if(Bi(e[n],t))return n}return-1},Bn.startCase=Ys,Bn.startsWith=function(e,t,n){return e=ys(e),n=null==n?0:lr(ms(n),0,e.length),t=uo(t),e.slice(n,n+t.length)==t},Bn.subtract=Fl,Bn.sum=function(e){return e&&e.length?Jt(e,ol):0},Bn.sumBy=function(e,t){return e&&e.length?Jt(e,ua(t,2)):0},Bn.template=function(e,t,r){var o=Bn.templateSettings;r&&wa(e,t,r)&&(t=n),e=ys(e),t=Ss({},t,o,ea);var a,i,s=Ss({},t.imports,o.imports,ea),l=Is(s),c=Qt(s,l),u=0,d=t.interpolate||be,f="__p += '",p=Ce((t.escape||be).source+"|"+d.source+"|"+(d===Q?fe:be).source+"|"+(t.evaluate||be).source+"|$","g"),_="//# sourceURL="+(Te.call(t,"sourceURL")?(t.sourceURL+"").replace(/\s/g," "):"lodash.templateSources["+ ++at+"]")+"\n";e.replace(p,(function(t,n,r,o,s,l){return r||(r=o),f+=e.slice(u,l).replace(we,on),n&&(a=!0,f+="' +\n__e("+n+") +\n'"),s&&(i=!0,f+="';\n"+s+";\n__p += '"),r&&(f+="' +\n((__t = ("+r+")) == null ? '' : __t) +\n'"),u=l+t.length,t})),f+="';\n";var m=Te.call(t,"variable")&&t.variable;if(m){if(ue.test(m))throw new xe("Invalid `variable` option passed into `_.template`")}else f="with (obj) {\n"+f+"\n}\n";f=(i?f.replace(z,""):f).replace(q,"$1").replace(K,"$1;"),f="function("+(m||"obj")+") {\n"+(m?"":"obj || (obj = {});\n")+"var __t, __p = ''"+(a?", __e = _.escape":"")+(i?", __j = Array.prototype.join;\nfunction print() { __p += __j.call(arguments, '') }\n":";\n")+f+"return __p\n}";var g=Zs((function(){return Fe(l,_+"return "+f).apply(n,c)}));if(g.source=f,Xi(g))throw g;return g},Bn.times=function(e,t){if((e=ms(e))<1||e>f)return[];var n=_,r=bn(e,_);t=ua(t),e-=_;for(var o=Yt(r,t);++n<e;)t(n);return o},Bn.toFinite=_s,Bn.toInteger=ms,Bn.toLength=gs,Bn.toLower=function(e){return ys(e).toLowerCase()},Bn.toNumber=hs,Bn.toSafeInteger=function(e){return e?lr(ms(e),-9007199254740991,f):0===e?e:0},Bn.toString=ys,Bn.toUpper=function(e){return ys(e).toUpperCase()},Bn.trim=function(e,t,r){if((e=ys(e))&&(r||t===n))return Gt(e);if(!e||!(t=uo(t)))return e;var o=pn(e),a=pn(t);return $o(o,en(o,a),tn(o,a)+1).join("")},Bn.trimEnd=function(e,t,r){if((e=ys(e))&&(r||t===n))return e.slice(0,_n(e)+1);if(!e||!(t=uo(t)))return e;var o=pn(e);return $o(o,0,tn(o,pn(t))+1).join("")},Bn.trimStart=function(e,t,r){if((e=ys(e))&&(r||t===n))return e.replace(oe,"");if(!e||!(t=uo(t)))return e;var o=pn(e);return $o(o,en(o,pn(t))).join("")},Bn.truncate=function(e,t){var r=30,o="...";if(ts(t)){var a="separator"in t?t.separator:a;r="length"in t?ms(t.length):r,o="omission"in t?uo(t.omission):o}var i=(e=ys(e)).length;if(an(e)){var s=pn(e);i=s.length}if(r>=i)return e;var l=r-fn(o);if(l<1)return o;var c=s?$o(s,0,l).join(""):e.slice(0,l);if(a===n)return c+o;if(s&&(l+=c.length-l),is(a)){if(e.slice(l).search(a)){var u,d=c;for(a.global||(a=Ce(a.source,ys(pe.exec(a))+"g")),a.lastIndex=0;u=a.exec(d);)var f=u.index;c=c.slice(0,f===n?l:f)}}else if(e.indexOf(uo(a),l)!=l){var p=c.lastIndexOf(a);p>-1&&(c=c.slice(0,p))}return c+o},Bn.unescape=function(e){return(e=ys(e))&&J.test(e)?e.replace(W,mn):e},Bn.uniqueId=function(e){var t=++Le;return ys(e)+t},Bn.upperCase=Gs,Bn.upperFirst=Xs,Bn.each=yi,Bn.eachRight=bi,Bn.first=Ha,ll(Bn,(Sl={},wr(Bn,(function(e,t){Te.call(Bn.prototype,t)||(Sl[t]=e)})),Sl),{chain:!1}),Bn.VERSION="4.17.21",Ot(["bind","bindKey","curry","curryRight","partial","partialRight"],(function(e){Bn[e].placeholder=Bn})),Ot(["drop","take"],(function(e,t){Kn.prototype[e]=function(r){r=r===n?1:yn(ms(r),0);var o=this.__filtered__&&!t?new Kn(this):this.clone();return o.__filtered__?o.__takeCount__=bn(r,o.__takeCount__):o.__views__.push({size:bn(r,_),type:e+(o.__dir__<0?"Right":"")}),o},Kn.prototype[e+"Right"]=function(t){return this.reverse()[e](t).reverse()}})),Ot(["filter","map","takeWhile"],(function(e,t){var n=t+1,r=1==n||3==n;Kn.prototype[e]=function(e){var t=this.clone();return t.__iteratees__.push({iteratee:ua(e,3),type:n}),t.__filtered__=t.__filtered__||r,t}})),Ot(["head","last"],(function(e,t){var n="take"+(t?"Right":"");Kn.prototype[e]=function(){return this[n](1).value()[0]}})),Ot(["initial","tail"],(function(e,t){var n="drop"+(t?"":"Right");Kn.prototype[e]=function(){return this.__filtered__?new Kn(this):this[n](1)}})),Kn.prototype.compact=function(){return this.filter(ol)},Kn.prototype.find=function(e){return this.filter(e).head()},Kn.prototype.findLast=function(e){return this.reverse().find(e)},Kn.prototype.invokeMap=Xr((function(e,t){return"function"==typeof e?new Kn(this):this.map((function(n){return Nr(n,e,t)}))})),Kn.prototype.reject=function(e){return this.filter(Ti(ua(e)))},Kn.prototype.slice=function(e,t){e=ms(e);var r=this;return r.__filtered__&&(e>0||t<0)?new Kn(r):(e<0?r=r.takeRight(-e):e&&(r=r.drop(e)),t!==n&&(r=(t=ms(t))<0?r.dropRight(-t):r.take(t-e)),r)},Kn.prototype.takeRightWhile=function(e){return this.reverse().takeWhile(e).reverse()},Kn.prototype.toArray=function(){return this.take(_)},wr(Kn.prototype,(function(e,t){var r=/^(?:filter|find|map|reject)|While$/.test(t),o=/^(?:head|last)$/.test(t),a=Bn[o?"take"+("last"==t?"Right":""):t],i=o||/^find/.test(t);a&&(Bn.prototype[t]=function(){var t=this.__wrapped__,s=o?[1]:arguments,l=t instanceof Kn,c=s[0],u=l||Ki(t),d=function(e){var t=a.apply(Bn,Et([e],s));return o&&f?t[0]:t};u&&r&&"function"==typeof c&&1!=c.length&&(l=u=!1);var f=this.__chain__,p=!!this.__actions__.length,_=i&&!f,m=l&&!p;if(!i&&u){t=m?t:new Kn(this);var g=e.apply(t,s);return g.__actions__.push({func:_i,args:[d],thisArg:n}),new qn(g,f)}return _&&m?e.apply(this,s):(g=this.thru(d),_?o?g.value()[0]:g.value():g)})})),Ot(["pop","push","shift","sort","splice","unshift"],(function(e){var t=Ne[e],n=/^(?:push|sort|unshift)$/.test(e)?"tap":"thru",r=/^(?:pop|shift)$/.test(e);Bn.prototype[e]=function(){var e=arguments;if(r&&!this.__chain__){var o=this.value();return t.apply(Ki(o)?o:[],e)}return this[n]((function(n){return t.apply(Ki(n)?n:[],e)}))}})),wr(Kn.prototype,(function(e,t){var n=Bn[t];if(n){var r=n.name+"";Te.call(In,r)||(In[r]=[]),In[r].push({name:t,func:n})}})),In[Uo(n,2).name]=[{name:"wrapper",func:n}],Kn.prototype.clone=function(){var e=new Kn(this.__wrapped__);return e.__actions__=No(this.__actions__),e.__dir__=this.__dir__,e.__filtered__=this.__filtered__,e.__iteratees__=No(this.__iteratees__),e.__takeCount__=this.__takeCount__,e.__views__=No(this.__views__),e},Kn.prototype.reverse=function(){if(this.__filtered__){var e=new Kn(this);e.__dir__=-1,e.__filtered__=!0}else(e=this.clone()).__dir__*=-1;return e},Kn.prototype.value=function(){var e=this.__wrapped__.value(),t=this.__dir__,n=Ki(e),r=t<0,o=n?e.length:0,a=function(e,t,n){var r=-1,o=n.length;for(;++r<o;){var a=n[r],i=a.size;switch(a.type){case"drop":e+=i;break;case"dropRight":t-=i;break;case"take":t=bn(t,e+i);break;case"takeRight":e=yn(e,t-i)}}return{start:e,end:t}}(0,o,this.__views__),i=a.start,s=a.end,l=s-i,c=r?s:i-1,u=this.__iteratees__,d=u.length,f=0,p=bn(l,this.__takeCount__);if(!n||!r&&o==l&&p==l)return go(e,this.__actions__);var _=[];e:for(;l--&&f<p;){for(var m=-1,g=e[c+=t];++m<d;){var h=u[m],v=h.iteratee,y=h.type,b=v(g);if(2==y)g=b;else if(!b){if(1==y)continue e;break e}}_[f++]=g}return _},Bn.prototype.at=mi,Bn.prototype.chain=function(){return pi(this)},Bn.prototype.commit=function(){return new qn(this.value(),this.__chain__)},Bn.prototype.next=function(){this.__values__===n&&(this.__values__=ps(this.value()));var e=this.__index__>=this.__values__.length;return{done:e,value:e?n:this.__values__[this.__index__++]}},Bn.prototype.plant=function(e){for(var t,r=this;r instanceof zn;){var o=Ma(r);o.__index__=0,o.__values__=n,t?a.__wrapped__=o:t=o;var a=o;r=r.__wrapped__}return a.__wrapped__=e,t},Bn.prototype.reverse=function(){var e=this.__wrapped__;if(e instanceof Kn){var t=e;return this.__actions__.length&&(t=new Kn(this)),(t=t.reverse()).__actions__.push({func:_i,args:[ti],thisArg:n}),new qn(t,this.__chain__)}return this.thru(ti)},Bn.prototype.toJSON=Bn.prototype.valueOf=Bn.prototype.value=function(){return go(this.__wrapped__,this.__actions__)},Bn.prototype.first=Bn.prototype.head,et&&(Bn.prototype[et]=function(){return this}),Bn}();mt?((mt.exports=gn)._=gn,_t._=gn):pt._=gn}).call(commonjsGlobal)}(lodash,lodash.exports);var ___default=lodash.exports;function _typeof$1(e){return _typeof$1="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},_typeof$1(e)}function _classCallCheck$1(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function _toPrimitive$1(e,t){if("object"!==_typeof$1(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,t||"default");if("object"!==_typeof$1(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}function _toPropertyKey$1(e){var t=_toPrimitive$1(e,"string");return"symbol"===_typeof$1(t)?t:String(t)}function _defineProperties$1(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,_toPropertyKey$1(r.key),r)}}function _createClass$1(e,t,n){return t&&_defineProperties$1(e.prototype,t),n&&_defineProperties$1(e,n),Object.defineProperty(e,"prototype",{writable:!1}),e}function _assertThisInitialized(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function _setPrototypeOf(e,t){return _setPrototypeOf=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},_setPrototypeOf(e,t)}function _inherits(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&_setPrototypeOf(e,t)}function _possibleConstructorReturn(e,t){if(t&&("object"===_typeof$1(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return _assertThisInitialized(e)}function _getPrototypeOf(e){return _getPrototypeOf=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},_getPrototypeOf(e)}function _defineProperty$1(e,t,n){return(t=_toPropertyKey$1(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function _arrayWithHoles(e){if(Array.isArray(e))return e}function _iterableToArray(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}function _arrayLikeToArray(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function _unsupportedIterableToArray(e,t){if(e){if("string"==typeof e)return _arrayLikeToArray(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?_arrayLikeToArray(e,t):void 0}}function _nonIterableRest(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _toArray(e){return _arrayWithHoles(e)||_iterableToArray(e)||_unsupportedIterableToArray(e)||_nonIterableRest()}function ownKeys$6(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function _objectSpread$6(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?ownKeys$6(Object(n),!0).forEach((function(t){_defineProperty$1(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):ownKeys$6(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}var consoleLogger={type:"logger",log:function(e){this.output("log",e)},warn:function(e){this.output("warn",e)},error:function(e){this.output("error",e)},output:function(e,t){console&&console[e]&&console[e].apply(console,t)}},Logger=function(){function e(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};_classCallCheck$1(this,e),this.init(t,n)}return _createClass$1(e,[{key:"init",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.prefix=t.prefix||"i18next:",this.logger=e||consoleLogger,this.options=t,this.debug=t.debug}},{key:"setDebug",value:function(e){this.debug=e}},{key:"log",value:function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return this.forward(t,"log","",!0)}},{key:"warn",value:function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return this.forward(t,"warn","",!0)}},{key:"error",value:function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return this.forward(t,"error","")}},{key:"deprecate",value:function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return this.forward(t,"warn","WARNING DEPRECATED: ",!0)}},{key:"forward",value:function(e,t,n,r){return r&&!this.debug?null:("string"==typeof e[0]&&(e[0]="".concat(n).concat(this.prefix," ").concat(e[0])),this.logger[t](e))}},{key:"create",value:function(t){return new e(this.logger,_objectSpread$6(_objectSpread$6({},{prefix:"".concat(this.prefix,":").concat(t,":")}),this.options))}},{key:"clone",value:function(t){return(t=t||this.options).prefix=t.prefix||this.prefix,new e(this.logger,t)}}]),e}(),baseLogger=new Logger,EventEmitter=function(){function e(){_classCallCheck$1(this,e),this.observers={}}return _createClass$1(e,[{key:"on",value:function(e,t){var n=this;return e.split(" ").forEach((function(e){n.observers[e]=n.observers[e]||[],n.observers[e].push(t)})),this}},{key:"off",value:function(e,t){this.observers[e]&&(t?this.observers[e]=this.observers[e].filter((function(e){return e!==t})):delete this.observers[e])}},{key:"emit",value:function(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];this.observers[e]&&[].concat(this.observers[e]).forEach((function(e){e.apply(void 0,n)}));this.observers["*"]&&[].concat(this.observers["*"]).forEach((function(t){t.apply(t,[e].concat(n))}))}}]),e}();function defer(){var e,t,n=new Promise((function(n,r){e=n,t=r}));return n.resolve=e,n.reject=t,n}function makeString(e){return null==e?"":""+e}function copy(e,t,n){e.forEach((function(e){t[e]&&(n[e]=t[e])}))}function getLastOfPath(e,t,n){function r(e){return e&&e.indexOf("###")>-1?e.replace(/###/g,"."):e}function o(){return!e||"string"==typeof e}for(var a="string"!=typeof t?[].concat(t):t.split(".");a.length>1;){if(o())return{};var i=r(a.shift());!e[i]&&n&&(e[i]=new n),e=Object.prototype.hasOwnProperty.call(e,i)?e[i]:{}}return o()?{}:{obj:e,k:r(a.shift())}}function setPath(e,t,n){var r=getLastOfPath(e,t,Object);r.obj[r.k]=n}function pushPath(e,t,n,r){var o=getLastOfPath(e,t,Object),a=o.obj,i=o.k;a[i]=a[i]||[],r&&(a[i]=a[i].concat(n)),r||a[i].push(n)}function getPath(e,t){var n=getLastOfPath(e,t),r=n.obj,o=n.k;if(r)return r[o]}function getPathWithDefaults(e,t,n){var r=getPath(e,n);return void 0!==r?r:getPath(t,n)}function deepExtend(e,t,n){for(var r in t)"__proto__"!==r&&"constructor"!==r&&(r in e?"string"==typeof e[r]||e[r]instanceof String||"string"==typeof t[r]||t[r]instanceof String?n&&(e[r]=t[r]):deepExtend(e[r],t[r],n):e[r]=t[r]);return e}function regexEscape(e){return e.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&")}var _entityMap={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;","/":"&#x2F;"};function escape(e){return"string"==typeof e?e.replace(/[&<>"'\/]/g,(function(e){return _entityMap[e]})):e}var isIE10="undefined"!=typeof window&&window.navigator&&void 0===window.navigator.userAgentData&&window.navigator.userAgent&&window.navigator.userAgent.indexOf("MSIE")>-1,chars=[" ",",","?","!",";"];function looksLikeObjectPath(e,t,n){t=t||"",n=n||"";var r=chars.filter((function(e){return t.indexOf(e)<0&&n.indexOf(e)<0}));if(0===r.length)return!0;var o=new RegExp("(".concat(r.map((function(e){return"?"===e?"\\?":e})).join("|"),")")),a=!o.test(e);if(!a){var i=e.indexOf(n);i>0&&!o.test(e.substring(0,i))&&(a=!0)}return a}function deepFind(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:".";if(e){if(e[t])return e[t];for(var r=t.split(n),o=e,a=0;a<r.length;++a){if(!o)return;if("string"==typeof o[r[a]]&&a+1<r.length)return;if(void 0===o[r[a]]){for(var i=2,s=r.slice(a,a+i).join(n),l=o[s];void 0===l&&r.length>a+i;)i++,l=o[s=r.slice(a,a+i).join(n)];if(void 0===l)return;if(null===l)return null;if(t.endsWith(s)){if("string"==typeof l)return l;if(s&&"string"==typeof l[s])return l[s]}var c=r.slice(a+i).join(n);return c?deepFind(l,c,n):void 0}o=o[r[a]]}return o}}function ownKeys$5(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function _objectSpread$5(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?ownKeys$5(Object(n),!0).forEach((function(t){_defineProperty$1(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):ownKeys$5(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function _createSuper$3(e){var t=_isNativeReflectConstruct$3();return function(){var n,r=_getPrototypeOf(e);if(t){var o=_getPrototypeOf(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return _possibleConstructorReturn(this,n)}}function _isNativeReflectConstruct$3(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}var ResourceStore=function(e){_inherits(n,e);var t=_createSuper$3(n);function n(e){var r,o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{ns:["translation"],defaultNS:"translation"};return _classCallCheck$1(this,n),r=t.call(this),isIE10&&EventEmitter.call(_assertThisInitialized(r)),r.data=e||{},r.options=o,void 0===r.options.keySeparator&&(r.options.keySeparator="."),void 0===r.options.ignoreJSONStructure&&(r.options.ignoreJSONStructure=!0),r}return _createClass$1(n,[{key:"addNamespaces",value:function(e){this.options.ns.indexOf(e)<0&&this.options.ns.push(e)}},{key:"removeNamespaces",value:function(e){var t=this.options.ns.indexOf(e);t>-1&&this.options.ns.splice(t,1)}},{key:"getResource",value:function(e,t,n){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{},o=void 0!==r.keySeparator?r.keySeparator:this.options.keySeparator,a=void 0!==r.ignoreJSONStructure?r.ignoreJSONStructure:this.options.ignoreJSONStructure,i=[e,t];n&&"string"!=typeof n&&(i=i.concat(n)),n&&"string"==typeof n&&(i=i.concat(o?n.split(o):n)),e.indexOf(".")>-1&&(i=e.split("."));var s=getPath(this.data,i);return s||!a||"string"!=typeof n?s:deepFind(this.data&&this.data[e]&&this.data[e][t],n,o)}},{key:"addResource",value:function(e,t,n,r){var o=arguments.length>4&&void 0!==arguments[4]?arguments[4]:{silent:!1},a=void 0!==o.keySeparator?o.keySeparator:this.options.keySeparator,i=[e,t];n&&(i=i.concat(a?n.split(a):n)),e.indexOf(".")>-1&&(r=t,t=(i=e.split("."))[1]),this.addNamespaces(t),setPath(this.data,i,r),o.silent||this.emit("added",e,t,n,r)}},{key:"addResources",value:function(e,t,n){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{silent:!1};for(var o in n)"string"!=typeof n[o]&&"[object Array]"!==Object.prototype.toString.apply(n[o])||this.addResource(e,t,o,n[o],{silent:!0});r.silent||this.emit("added",e,t,n)}},{key:"addResourceBundle",value:function(e,t,n,r,o){var a=arguments.length>5&&void 0!==arguments[5]?arguments[5]:{silent:!1},i=[e,t];e.indexOf(".")>-1&&(r=n,n=t,t=(i=e.split("."))[1]),this.addNamespaces(t);var s=getPath(this.data,i)||{};r?deepExtend(s,n,o):s=_objectSpread$5(_objectSpread$5({},s),n),setPath(this.data,i,s),a.silent||this.emit("added",e,t,n)}},{key:"removeResourceBundle",value:function(e,t){this.hasResourceBundle(e,t)&&delete this.data[e][t],this.removeNamespaces(t),this.emit("removed",e,t)}},{key:"hasResourceBundle",value:function(e,t){return void 0!==this.getResource(e,t)}},{key:"getResourceBundle",value:function(e,t){return t||(t=this.options.defaultNS),"v1"===this.options.compatibilityAPI?_objectSpread$5(_objectSpread$5({},{}),this.getResource(e,t)):this.getResource(e,t)}},{key:"getDataByLanguage",value:function(e){return this.data[e]}},{key:"hasLanguageSomeTranslations",value:function(e){var t=this.getDataByLanguage(e);return!!(t&&Object.keys(t)||[]).find((function(e){return t[e]&&Object.keys(t[e]).length>0}))}},{key:"toJSON",value:function(){return this.data}}]),n}(EventEmitter),postProcessor={processors:{},addPostProcessor:function(e){this.processors[e.name]=e},handle:function(e,t,n,r,o){var a=this;return e.forEach((function(e){a.processors[e]&&(t=a.processors[e].process(t,n,r,o))})),t}};function ownKeys$4(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function _objectSpread$4(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?ownKeys$4(Object(n),!0).forEach((function(t){_defineProperty$1(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):ownKeys$4(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function _createSuper$2(e){var t=_isNativeReflectConstruct$2();return function(){var n,r=_getPrototypeOf(e);if(t){var o=_getPrototypeOf(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return _possibleConstructorReturn(this,n)}}function _isNativeReflectConstruct$2(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}var checkedLoadedFor={},Translator=function(e){_inherits(n,e);var t=_createSuper$2(n);function n(e){var r,o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return _classCallCheck$1(this,n),r=t.call(this),isIE10&&EventEmitter.call(_assertThisInitialized(r)),copy(["resourceStore","languageUtils","pluralResolver","interpolator","backendConnector","i18nFormat","utils"],e,_assertThisInitialized(r)),r.options=o,void 0===r.options.keySeparator&&(r.options.keySeparator="."),r.logger=baseLogger.create("translator"),r}return _createClass$1(n,[{key:"changeLanguage",value:function(e){e&&(this.language=e)}},{key:"exists",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{interpolation:{}};if(null==e)return!1;var n=this.resolve(e,t);return n&&void 0!==n.res}},{key:"extractFromKey",value:function(e,t){var n=void 0!==t.nsSeparator?t.nsSeparator:this.options.nsSeparator;void 0===n&&(n=":");var r=void 0!==t.keySeparator?t.keySeparator:this.options.keySeparator,o=t.ns||this.options.defaultNS||[],a=n&&e.indexOf(n)>-1,i=!(this.options.userDefinedKeySeparator||t.keySeparator||this.options.userDefinedNsSeparator||t.nsSeparator||looksLikeObjectPath(e,n,r));if(a&&!i){var s=e.match(this.interpolator.nestingRegexp);if(s&&s.length>0)return{key:e,namespaces:o};var l=e.split(n);(n!==r||n===r&&this.options.ns.indexOf(l[0])>-1)&&(o=l.shift()),e=l.join(r)}return"string"==typeof o&&(o=[o]),{key:e,namespaces:o}}},{key:"translate",value:function(e,t,r){var o=this;if("object"!==_typeof$1(t)&&this.options.overloadTranslationOptionHandler&&(t=this.options.overloadTranslationOptionHandler(arguments)),"object"===_typeof$1(t)&&(t=_objectSpread$4({},t)),t||(t={}),null==e)return"";Array.isArray(e)||(e=[String(e)]);var a=void 0!==t.returnDetails?t.returnDetails:this.options.returnDetails,i=void 0!==t.keySeparator?t.keySeparator:this.options.keySeparator,s=this.extractFromKey(e[e.length-1],t),l=s.key,c=s.namespaces,u=c[c.length-1],d=t.lng||this.language,f=t.appendNamespaceToCIMode||this.options.appendNamespaceToCIMode;if(d&&"cimode"===d.toLowerCase()){if(f){var p=t.nsSeparator||this.options.nsSeparator;return a?{res:"".concat(u).concat(p).concat(l),usedKey:l,exactUsedKey:l,usedLng:d,usedNS:u}:"".concat(u).concat(p).concat(l)}return a?{res:l,usedKey:l,exactUsedKey:l,usedLng:d,usedNS:u}:l}var _=this.resolve(e,t),m=_&&_.res,g=_&&_.usedKey||l,h=_&&_.exactUsedKey||l,v=Object.prototype.toString.apply(m),y=void 0!==t.joinArrays?t.joinArrays:this.options.joinArrays,b=!this.i18nFormat||this.i18nFormat.handleAsObject;if(b&&m&&("string"!=typeof m&&"boolean"!=typeof m&&"number"!=typeof m)&&["[object Number]","[object Function]","[object RegExp]"].indexOf(v)<0&&("string"!=typeof y||"[object Array]"!==v)){if(!t.returnObjects&&!this.options.returnObjects){this.options.returnedObjectHandler||this.logger.warn("accessing an object - but returnObjects options is not enabled!");var w=this.options.returnedObjectHandler?this.options.returnedObjectHandler(g,m,_objectSpread$4(_objectSpread$4({},t),{},{ns:c})):"key '".concat(l," (").concat(this.language,")' returned an object instead of string.");return a?(_.res=w,_):w}if(i){var S="[object Array]"===v,$=S?[]:{},x=S?h:g;for(var F in m)if(Object.prototype.hasOwnProperty.call(m,F)){var k="".concat(x).concat(i).concat(F);$[F]=this.translate(k,_objectSpread$4(_objectSpread$4({},t),{joinArrays:!1,ns:c})),$[F]===k&&($[F]=m[F])}m=$}}else if(b&&"string"==typeof y&&"[object Array]"===v)(m=m.join(y))&&(m=this.extendTranslation(m,e,t,r));else{var O=!1,C=!1,R=void 0!==t.count&&"string"!=typeof t.count,j=n.hasDefaultValue(t),N=R?this.pluralResolver.getSuffix(d,t.count,t):"",I=t["defaultValue".concat(N)]||t.defaultValue;!this.isValidLookup(m)&&j&&(O=!0,m=I),this.isValidLookup(m)||(C=!0,m=l);var D=(t.missingKeyNoValueFallbackToKey||this.options.missingKeyNoValueFallbackToKey)&&C?void 0:m,E=j&&I!==m&&this.options.updateMissing;if(C||O||E){if(this.logger.log(E?"updateKey":"missingKey",d,u,l,E?I:m),i){var A=this.resolve(l,_objectSpread$4(_objectSpread$4({},t),{},{keySeparator:!1}));A&&A.res&&this.logger.warn("Seems the loaded translations were in flat JSON format instead of nested. Either set keySeparator: false on init or make sure your translations are published in nested format.")}var T=[],L=this.languageUtils.getFallbackCodes(this.options.fallbackLng,t.lng||this.language);if("fallback"===this.options.saveMissingTo&&L&&L[0])for(var P=0;P<L.length;P++)T.push(L[P]);else"all"===this.options.saveMissingTo?T=this.languageUtils.toResolveHierarchy(t.lng||this.language):T.push(t.lng||this.language);var V=function(e,n,r){var a=j&&r!==m?r:D;o.options.missingKeyHandler?o.options.missingKeyHandler(e,u,n,a,E,t):o.backendConnector&&o.backendConnector.saveMissing&&o.backendConnector.saveMissing(e,u,n,a,E,t),o.emit("missingKey",e,u,n,m)};this.options.saveMissing&&(this.options.saveMissingPlurals&&R?T.forEach((function(e){o.pluralResolver.getSuffixes(e,t).forEach((function(n){V([e],l+n,t["defaultValue".concat(n)]||I)}))})):V(T,l,I))}m=this.extendTranslation(m,e,t,_,r),C&&m===l&&this.options.appendNamespaceToMissingKey&&(m="".concat(u,":").concat(l)),(C||O)&&this.options.parseMissingKeyHandler&&(m="v1"!==this.options.compatibilityAPI?this.options.parseMissingKeyHandler(this.options.appendNamespaceToMissingKey?"".concat(u,":").concat(l):l,O?m:void 0):this.options.parseMissingKeyHandler(m))}return a?(_.res=m,_):m}},{key:"extendTranslation",value:function(e,t,n,r,o){var a=this;if(this.i18nFormat&&this.i18nFormat.parse)e=this.i18nFormat.parse(e,_objectSpread$4(_objectSpread$4({},this.options.interpolation.defaultVariables),n),r.usedLng,r.usedNS,r.usedKey,{resolved:r});else if(!n.skipInterpolation){n.interpolation&&this.interpolator.init(_objectSpread$4(_objectSpread$4({},n),{interpolation:_objectSpread$4(_objectSpread$4({},this.options.interpolation),n.interpolation)}));var i,s="string"==typeof e&&(n&&n.interpolation&&void 0!==n.interpolation.skipOnVariables?n.interpolation.skipOnVariables:this.options.interpolation.skipOnVariables);if(s){var l=e.match(this.interpolator.nestingRegexp);i=l&&l.length}var c=n.replace&&"string"!=typeof n.replace?n.replace:n;if(this.options.interpolation.defaultVariables&&(c=_objectSpread$4(_objectSpread$4({},this.options.interpolation.defaultVariables),c)),e=this.interpolator.interpolate(e,c,n.lng||this.language,n),s){var u=e.match(this.interpolator.nestingRegexp);i<(u&&u.length)&&(n.nest=!1)}!n.lng&&"v1"!==this.options.compatibilityAPI&&r&&r.res&&(n.lng=r.usedLng),!1!==n.nest&&(e=this.interpolator.nest(e,(function(){for(var e=arguments.length,r=new Array(e),i=0;i<e;i++)r[i]=arguments[i];return o&&o[0]===r[0]&&!n.context?(a.logger.warn("It seems you are nesting recursively key: ".concat(r[0]," in key: ").concat(t[0])),null):a.translate.apply(a,r.concat([t]))}),n)),n.interpolation&&this.interpolator.reset()}var d=n.postProcess||this.options.postProcess,f="string"==typeof d?[d]:d;return null!=e&&f&&f.length&&!1!==n.applyPostProcessor&&(e=postProcessor.handle(f,e,t,this.options&&this.options.postProcessPassResolved?_objectSpread$4({i18nResolved:r},n):n,this)),e}},{key:"resolve",value:function(e){var t,n,r,o,a,i=this,s=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return"string"==typeof e&&(e=[e]),e.forEach((function(e){if(!i.isValidLookup(t)){var l=i.extractFromKey(e,s),c=l.key;n=c;var u=l.namespaces;i.options.fallbackNS&&(u=u.concat(i.options.fallbackNS));var d=void 0!==s.count&&"string"!=typeof s.count,f=d&&!s.ordinal&&0===s.count&&i.pluralResolver.shouldUseIntlApi(),p=void 0!==s.context&&("string"==typeof s.context||"number"==typeof s.context)&&""!==s.context,_=s.lngs?s.lngs:i.languageUtils.toResolveHierarchy(s.lng||i.language,s.fallbackLng);u.forEach((function(e){i.isValidLookup(t)||(a=e,!checkedLoadedFor["".concat(_[0],"-").concat(e)]&&i.utils&&i.utils.hasLoadedNamespace&&!i.utils.hasLoadedNamespace(a)&&(checkedLoadedFor["".concat(_[0],"-").concat(e)]=!0,i.logger.warn('key "'.concat(n,'" for languages "').concat(_.join(", "),'" won\'t get resolved as namespace "').concat(a,'" was not yet loaded'),"This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!")),_.forEach((function(n){if(!i.isValidLookup(t)){o=n;var a,l=[c];if(i.i18nFormat&&i.i18nFormat.addLookupKeys)i.i18nFormat.addLookupKeys(l,c,n,e,s);else{var u;d&&(u=i.pluralResolver.getSuffix(n,s.count,s));var _="".concat(i.options.pluralSeparator,"zero");if(d&&(l.push(c+u),f&&l.push(c+_)),p){var m="".concat(c).concat(i.options.contextSeparator).concat(s.context);l.push(m),d&&(l.push(m+u),f&&l.push(m+_))}}for(;a=l.pop();)i.isValidLookup(t)||(r=a,t=i.getResource(n,e,a,s))}})))}))}})),{res:t,usedKey:n,exactUsedKey:r,usedLng:o,usedNS:a}}},{key:"isValidLookup",value:function(e){return!(void 0===e||!this.options.returnNull&&null===e||!this.options.returnEmptyString&&""===e)}},{key:"getResource",value:function(e,t,n){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return this.i18nFormat&&this.i18nFormat.getResource?this.i18nFormat.getResource(e,t,n,r):this.resourceStore.getResource(e,t,n,r)}}],[{key:"hasDefaultValue",value:function(e){var t="defaultValue";for(var n in e)if(Object.prototype.hasOwnProperty.call(e,n)&&t===n.substring(0,12)&&void 0!==e[n])return!0;return!1}}]),n}(EventEmitter);function capitalize(e){return e.charAt(0).toUpperCase()+e.slice(1)}var LanguageUtil=function(){function e(t){_classCallCheck$1(this,e),this.options=t,this.supportedLngs=this.options.supportedLngs||!1,this.logger=baseLogger.create("languageUtils")}return _createClass$1(e,[{key:"getScriptPartFromCode",value:function(e){if(!e||e.indexOf("-")<0)return null;var t=e.split("-");return 2===t.length?null:(t.pop(),"x"===t[t.length-1].toLowerCase()?null:this.formatLanguageCode(t.join("-")))}},{key:"getLanguagePartFromCode",value:function(e){if(!e||e.indexOf("-")<0)return e;var t=e.split("-");return this.formatLanguageCode(t[0])}},{key:"formatLanguageCode",value:function(e){if("string"==typeof e&&e.indexOf("-")>-1){var t=["hans","hant","latn","cyrl","cans","mong","arab"],n=e.split("-");return this.options.lowerCaseLng?n=n.map((function(e){return e.toLowerCase()})):2===n.length?(n[0]=n[0].toLowerCase(),n[1]=n[1].toUpperCase(),t.indexOf(n[1].toLowerCase())>-1&&(n[1]=capitalize(n[1].toLowerCase()))):3===n.length&&(n[0]=n[0].toLowerCase(),2===n[1].length&&(n[1]=n[1].toUpperCase()),"sgn"!==n[0]&&2===n[2].length&&(n[2]=n[2].toUpperCase()),t.indexOf(n[1].toLowerCase())>-1&&(n[1]=capitalize(n[1].toLowerCase())),t.indexOf(n[2].toLowerCase())>-1&&(n[2]=capitalize(n[2].toLowerCase()))),n.join("-")}return this.options.cleanCode||this.options.lowerCaseLng?e.toLowerCase():e}},{key:"isSupportedCode",value:function(e){return("languageOnly"===this.options.load||this.options.nonExplicitSupportedLngs)&&(e=this.getLanguagePartFromCode(e)),!this.supportedLngs||!this.supportedLngs.length||this.supportedLngs.indexOf(e)>-1}},{key:"getBestMatchFromCodes",value:function(e){var t,n=this;return e?(e.forEach((function(e){if(!t){var r=n.formatLanguageCode(e);n.options.supportedLngs&&!n.isSupportedCode(r)||(t=r)}})),!t&&this.options.supportedLngs&&e.forEach((function(e){if(!t){var r=n.getLanguagePartFromCode(e);if(n.isSupportedCode(r))return t=r;t=n.options.supportedLngs.find((function(e){return e===r?e:e.indexOf("-")<0&&r.indexOf("-")<0?void 0:0===e.indexOf(r)?e:void 0}))}})),t||(t=this.getFallbackCodes(this.options.fallbackLng)[0]),t):null}},{key:"getFallbackCodes",value:function(e,t){if(!e)return[];if("function"==typeof e&&(e=e(t)),"string"==typeof e&&(e=[e]),"[object Array]"===Object.prototype.toString.apply(e))return e;if(!t)return e.default||[];var n=e[t];return n||(n=e[this.getScriptPartFromCode(t)]),n||(n=e[this.formatLanguageCode(t)]),n||(n=e[this.getLanguagePartFromCode(t)]),n||(n=e.default),n||[]}},{key:"toResolveHierarchy",value:function(e,t){var n=this,r=this.getFallbackCodes(t||this.options.fallbackLng||[],e),o=[],a=function(e){e&&(n.isSupportedCode(e)?o.push(e):n.logger.warn("rejecting language code not found in supportedLngs: ".concat(e)))};return"string"==typeof e&&e.indexOf("-")>-1?("languageOnly"!==this.options.load&&a(this.formatLanguageCode(e)),"languageOnly"!==this.options.load&&"currentOnly"!==this.options.load&&a(this.getScriptPartFromCode(e)),"currentOnly"!==this.options.load&&a(this.getLanguagePartFromCode(e))):"string"==typeof e&&a(this.formatLanguageCode(e)),r.forEach((function(e){o.indexOf(e)<0&&a(n.formatLanguageCode(e))})),o}}]),e}(),sets=[{lngs:["ach","ak","am","arn","br","fil","gun","ln","mfe","mg","mi","oc","pt","pt-BR","tg","tl","ti","tr","uz","wa"],nr:[1,2],fc:1},{lngs:["af","an","ast","az","bg","bn","ca","da","de","dev","el","en","eo","es","et","eu","fi","fo","fur","fy","gl","gu","ha","hi","hu","hy","ia","it","kk","kn","ku","lb","mai","ml","mn","mr","nah","nap","nb","ne","nl","nn","no","nso","pa","pap","pms","ps","pt-PT","rm","sco","se","si","so","son","sq","sv","sw","ta","te","tk","ur","yo"],nr:[1,2],fc:2},{lngs:["ay","bo","cgg","fa","ht","id","ja","jbo","ka","km","ko","ky","lo","ms","sah","su","th","tt","ug","vi","wo","zh"],nr:[1],fc:3},{lngs:["be","bs","cnr","dz","hr","ru","sr","uk"],nr:[1,2,5],fc:4},{lngs:["ar"],nr:[0,1,2,3,11,100],fc:5},{lngs:["cs","sk"],nr:[1,2,5],fc:6},{lngs:["csb","pl"],nr:[1,2,5],fc:7},{lngs:["cy"],nr:[1,2,3,8],fc:8},{lngs:["fr"],nr:[1,2],fc:9},{lngs:["ga"],nr:[1,2,3,7,11],fc:10},{lngs:["gd"],nr:[1,2,3,20],fc:11},{lngs:["is"],nr:[1,2],fc:12},{lngs:["jv"],nr:[0,1],fc:13},{lngs:["kw"],nr:[1,2,3,4],fc:14},{lngs:["lt"],nr:[1,2,10],fc:15},{lngs:["lv"],nr:[1,2,0],fc:16},{lngs:["mk"],nr:[1,2],fc:17},{lngs:["mnk"],nr:[0,1,2],fc:18},{lngs:["mt"],nr:[1,2,11,20],fc:19},{lngs:["or"],nr:[2,1],fc:2},{lngs:["ro"],nr:[1,2,20],fc:20},{lngs:["sl"],nr:[5,1,2,3],fc:21},{lngs:["he","iw"],nr:[1,2,20,21],fc:22}],_rulesPluralsTypes={1:function(e){return Number(e>1)},2:function(e){return Number(1!=e)},3:function(e){return 0},4:function(e){return Number(e%10==1&&e%100!=11?0:e%10>=2&&e%10<=4&&(e%100<10||e%100>=20)?1:2)},5:function(e){return Number(0==e?0:1==e?1:2==e?2:e%100>=3&&e%100<=10?3:e%100>=11?4:5)},6:function(e){return Number(1==e?0:e>=2&&e<=4?1:2)},7:function(e){return Number(1==e?0:e%10>=2&&e%10<=4&&(e%100<10||e%100>=20)?1:2)},8:function(e){return Number(1==e?0:2==e?1:8!=e&&11!=e?2:3)},9:function(e){return Number(e>=2)},10:function(e){return Number(1==e?0:2==e?1:e<7?2:e<11?3:4)},11:function(e){return Number(1==e||11==e?0:2==e||12==e?1:e>2&&e<20?2:3)},12:function(e){return Number(e%10!=1||e%100==11)},13:function(e){return Number(0!==e)},14:function(e){return Number(1==e?0:2==e?1:3==e?2:3)},15:function(e){return Number(e%10==1&&e%100!=11?0:e%10>=2&&(e%100<10||e%100>=20)?1:2)},16:function(e){return Number(e%10==1&&e%100!=11?0:0!==e?1:2)},17:function(e){return Number(1==e||e%10==1&&e%100!=11?0:1)},18:function(e){return Number(0==e?0:1==e?1:2)},19:function(e){return Number(1==e?0:0==e||e%100>1&&e%100<11?1:e%100>10&&e%100<20?2:3)},20:function(e){return Number(1==e?0:0==e||e%100>0&&e%100<20?1:2)},21:function(e){return Number(e%100==1?1:e%100==2?2:e%100==3||e%100==4?3:0)},22:function(e){return Number(1==e?0:2==e?1:(e<0||e>10)&&e%10==0?2:3)}},deprecatedJsonVersions=["v1","v2","v3"],suffixesOrder={zero:0,one:1,two:2,few:3,many:4,other:5};function createRules(){var e={};return sets.forEach((function(t){t.lngs.forEach((function(n){e[n]={numbers:t.nr,plurals:_rulesPluralsTypes[t.fc]}}))})),e}var PluralResolver=function(){function e(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};_classCallCheck$1(this,e),this.languageUtils=t,this.options=n,this.logger=baseLogger.create("pluralResolver"),this.options.compatibilityJSON&&"v4"!==this.options.compatibilityJSON||"undefined"!=typeof Intl&&Intl.PluralRules||(this.options.compatibilityJSON="v3",this.logger.error("Your environment seems not to be Intl API compatible, use an Intl.PluralRules polyfill. Will fallback to the compatibilityJSON v3 format handling.")),this.rules=createRules()}return _createClass$1(e,[{key:"addRule",value:function(e,t){this.rules[e]=t}},{key:"getRule",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(this.shouldUseIntlApi())try{return new Intl.PluralRules(e,{type:t.ordinal?"ordinal":"cardinal"})}catch(e){return}return this.rules[e]||this.rules[this.languageUtils.getLanguagePartFromCode(e)]}},{key:"needsPlural",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=this.getRule(e,t);return this.shouldUseIntlApi()?n&&n.resolvedOptions().pluralCategories.length>1:n&&n.numbers.length>1}},{key:"getPluralFormsOfKey",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return this.getSuffixes(e,n).map((function(e){return"".concat(t).concat(e)}))}},{key:"getSuffixes",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=this.getRule(e,n);return r?this.shouldUseIntlApi()?r.resolvedOptions().pluralCategories.sort((function(e,t){return suffixesOrder[e]-suffixesOrder[t]})).map((function(e){return"".concat(t.options.prepend).concat(e)})):r.numbers.map((function(r){return t.getSuffix(e,r,n)})):[]}},{key:"getSuffix",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},r=this.getRule(e,n);return r?this.shouldUseIntlApi()?"".concat(this.options.prepend).concat(r.select(t)):this.getSuffixRetroCompatible(r,t):(this.logger.warn("no plural rule found for: ".concat(e)),"")}},{key:"getSuffixRetroCompatible",value:function(e,t){var n=this,r=e.noAbs?e.plurals(t):e.plurals(Math.abs(t)),o=e.numbers[r];this.options.simplifyPluralSuffix&&2===e.numbers.length&&1===e.numbers[0]&&(2===o?o="plural":1===o&&(o=""));var a=function(){return n.options.prepend&&o.toString()?n.options.prepend+o.toString():o.toString()};return"v1"===this.options.compatibilityJSON?1===o?"":"number"==typeof o?"_plural_".concat(o.toString()):a():"v2"===this.options.compatibilityJSON||this.options.simplifyPluralSuffix&&2===e.numbers.length&&1===e.numbers[0]?a():this.options.prepend&&r.toString()?this.options.prepend+r.toString():r.toString()}},{key:"shouldUseIntlApi",value:function(){return!deprecatedJsonVersions.includes(this.options.compatibilityJSON)}}]),e}();function ownKeys$3(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function _objectSpread$3(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?ownKeys$3(Object(n),!0).forEach((function(t){_defineProperty$1(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):ownKeys$3(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function deepFindWithDefaults(e,t,n){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:".",o=!(arguments.length>4&&void 0!==arguments[4])||arguments[4],a=getPathWithDefaults(e,t,n);return!a&&o&&"string"==typeof n&&void 0===(a=deepFind(e,n,r))&&(a=deepFind(t,n,r)),a}var Interpolator=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};_classCallCheck$1(this,e),this.logger=baseLogger.create("interpolator"),this.options=t,this.format=t.interpolation&&t.interpolation.format||function(e){return e},this.init(t)}return _createClass$1(e,[{key:"init",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};e.interpolation||(e.interpolation={escapeValue:!0});var t=e.interpolation;this.escape=void 0!==t.escape?t.escape:escape,this.escapeValue=void 0===t.escapeValue||t.escapeValue,this.useRawValueToEscape=void 0!==t.useRawValueToEscape&&t.useRawValueToEscape,this.prefix=t.prefix?regexEscape(t.prefix):t.prefixEscaped||"{{",this.suffix=t.suffix?regexEscape(t.suffix):t.suffixEscaped||"}}",this.formatSeparator=t.formatSeparator?t.formatSeparator:t.formatSeparator||",",this.unescapePrefix=t.unescapeSuffix?"":t.unescapePrefix||"-",this.unescapeSuffix=this.unescapePrefix?"":t.unescapeSuffix||"",this.nestingPrefix=t.nestingPrefix?regexEscape(t.nestingPrefix):t.nestingPrefixEscaped||regexEscape("$t("),this.nestingSuffix=t.nestingSuffix?regexEscape(t.nestingSuffix):t.nestingSuffixEscaped||regexEscape(")"),this.nestingOptionsSeparator=t.nestingOptionsSeparator?t.nestingOptionsSeparator:t.nestingOptionsSeparator||",",this.maxReplaces=t.maxReplaces?t.maxReplaces:1e3,this.alwaysFormat=void 0!==t.alwaysFormat&&t.alwaysFormat,this.resetRegExp()}},{key:"reset",value:function(){this.options&&this.init(this.options)}},{key:"resetRegExp",value:function(){var e="".concat(this.prefix,"(.+?)").concat(this.suffix);this.regexp=new RegExp(e,"g");var t="".concat(this.prefix).concat(this.unescapePrefix,"(.+?)").concat(this.unescapeSuffix).concat(this.suffix);this.regexpUnescape=new RegExp(t,"g");var n="".concat(this.nestingPrefix,"(.+?)").concat(this.nestingSuffix);this.nestingRegexp=new RegExp(n,"g")}},{key:"interpolate",value:function(e,t,n,r){var o,a,i,s=this,l=this.options&&this.options.interpolation&&this.options.interpolation.defaultVariables||{};function c(e){return e.replace(/\$/g,"$$$$")}var u=function(e){if(e.indexOf(s.formatSeparator)<0){var o=deepFindWithDefaults(t,l,e,s.options.keySeparator,s.options.ignoreJSONStructure);return s.alwaysFormat?s.format(o,void 0,n,_objectSpread$3(_objectSpread$3(_objectSpread$3({},r),t),{},{interpolationkey:e})):o}var a=e.split(s.formatSeparator),i=a.shift().trim(),c=a.join(s.formatSeparator).trim();return s.format(deepFindWithDefaults(t,l,i,s.options.keySeparator,s.options.ignoreJSONStructure),c,n,_objectSpread$3(_objectSpread$3(_objectSpread$3({},r),t),{},{interpolationkey:i}))};this.resetRegExp();var d=r&&r.missingInterpolationHandler||this.options.missingInterpolationHandler,f=r&&r.interpolation&&void 0!==r.interpolation.skipOnVariables?r.interpolation.skipOnVariables:this.options.interpolation.skipOnVariables;return[{regex:this.regexpUnescape,safeValue:function(e){return c(e)}},{regex:this.regexp,safeValue:function(e){return s.escapeValue?c(s.escape(e)):c(e)}}].forEach((function(t){for(i=0;o=t.regex.exec(e);){var n=o[1].trim();if(void 0===(a=u(n)))if("function"==typeof d){var l=d(e,o,r);a="string"==typeof l?l:""}else if(r&&Object.prototype.hasOwnProperty.call(r,n))a="";else{if(f){a=o[0];continue}s.logger.warn("missed to pass in variable ".concat(n," for interpolating ").concat(e)),a=""}else"string"==typeof a||s.useRawValueToEscape||(a=makeString(a));var c=t.safeValue(a);if(e=e.replace(o[0],c),f?(t.regex.lastIndex+=a.length,t.regex.lastIndex-=o[0].length):t.regex.lastIndex=0,++i>=s.maxReplaces)break}})),e}},{key:"nest",value:function(e,t){var n,r,o,a=this,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};function s(e,t){var n=this.nestingOptionsSeparator;if(e.indexOf(n)<0)return e;var r=e.split(new RegExp("".concat(n,"[ ]*{"))),a="{".concat(r[1]);e=r[0];var i=(a=this.interpolate(a,o)).match(/'/g),s=a.match(/"/g);(i&&i.length%2==0&&!s||s.length%2!=0)&&(a=a.replace(/'/g,'"'));try{o=JSON.parse(a),t&&(o=_objectSpread$3(_objectSpread$3({},t),o))}catch(t){return this.logger.warn("failed parsing options string in nesting for key ".concat(e),t),"".concat(e).concat(n).concat(a)}return delete o.defaultValue,e}for(;n=this.nestingRegexp.exec(e);){var l=[];(o=(o=_objectSpread$3({},i)).replace&&"string"!=typeof o.replace?o.replace:o).applyPostProcessor=!1,delete o.defaultValue;var c=!1;if(-1!==n[0].indexOf(this.formatSeparator)&&!/{.*}/.test(n[1])){var u=n[1].split(this.formatSeparator).map((function(e){return e.trim()}));n[1]=u.shift(),l=u,c=!0}if((r=t(s.call(this,n[1].trim(),o),o))&&n[0]===e&&"string"!=typeof r)return r;"string"!=typeof r&&(r=makeString(r)),r||(this.logger.warn("missed to resolve ".concat(n[1]," for nesting ").concat(e)),r=""),c&&(r=l.reduce((function(e,t){return a.format(e,t,i.lng,_objectSpread$3(_objectSpread$3({},i),{},{interpolationkey:n[1].trim()}))}),r.trim())),e=e.replace(n[0],r),this.regexp.lastIndex=0}return e}}]),e}();function ownKeys$2(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function _objectSpread$2(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?ownKeys$2(Object(n),!0).forEach((function(t){_defineProperty$1(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):ownKeys$2(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function parseFormatStr(e){var t=e.toLowerCase().trim(),n={};if(e.indexOf("(")>-1){var r=e.split("(");t=r[0].toLowerCase().trim();var o=r[1].substring(0,r[1].length-1);if("currency"===t&&o.indexOf(":")<0)n.currency||(n.currency=o.trim());else if("relativetime"===t&&o.indexOf(":")<0)n.range||(n.range=o.trim());else{o.split(";").forEach((function(e){if(e){var t=_toArray(e.split(":")),r=t[0],o=t.slice(1).join(":").trim().replace(/^'+|'+$/g,"");n[r.trim()]||(n[r.trim()]=o),"false"===o&&(n[r.trim()]=!1),"true"===o&&(n[r.trim()]=!0),isNaN(o)||(n[r.trim()]=parseInt(o,10))}}))}}return{formatName:t,formatOptions:n}}function createCachedFormatter(e){var t={};return function(n,r,o){var a=r+JSON.stringify(o),i=t[a];return i||(i=e(r,o),t[a]=i),i(n)}}var Formatter=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};_classCallCheck$1(this,e),this.logger=baseLogger.create("formatter"),this.options=t,this.formats={number:createCachedFormatter((function(e,t){var n=new Intl.NumberFormat(e,_objectSpread$2({},t));return function(e){return n.format(e)}})),currency:createCachedFormatter((function(e,t){var n=new Intl.NumberFormat(e,_objectSpread$2(_objectSpread$2({},t),{},{style:"currency"}));return function(e){return n.format(e)}})),datetime:createCachedFormatter((function(e,t){var n=new Intl.DateTimeFormat(e,_objectSpread$2({},t));return function(e){return n.format(e)}})),relativetime:createCachedFormatter((function(e,t){var n=new Intl.RelativeTimeFormat(e,_objectSpread$2({},t));return function(e){return n.format(e,t.range||"day")}})),list:createCachedFormatter((function(e,t){var n=new Intl.ListFormat(e,_objectSpread$2({},t));return function(e){return n.format(e)}}))},this.init(t)}return _createClass$1(e,[{key:"init",value:function(e){var t=(arguments.length>1&&void 0!==arguments[1]?arguments[1]:{interpolation:{}}).interpolation;this.formatSeparator=t.formatSeparator?t.formatSeparator:t.formatSeparator||","}},{key:"add",value:function(e,t){this.formats[e.toLowerCase().trim()]=t}},{key:"addCached",value:function(e,t){this.formats[e.toLowerCase().trim()]=createCachedFormatter(t)}},{key:"format",value:function(e,t,n){var r=this,o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return t.split(this.formatSeparator).reduce((function(e,t){var a=parseFormatStr(t),i=a.formatName,s=a.formatOptions;if(r.formats[i]){var l=e;try{var c=o&&o.formatParams&&o.formatParams[o.interpolationkey]||{},u=c.locale||c.lng||o.locale||o.lng||n;l=r.formats[i](e,u,_objectSpread$2(_objectSpread$2(_objectSpread$2({},s),o),c))}catch(e){r.logger.warn(e)}return l}return r.logger.warn("there was no format function for ".concat(i)),e}),e)}}]),e}();function ownKeys$1(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function _objectSpread$1(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?ownKeys$1(Object(n),!0).forEach((function(t){_defineProperty$1(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):ownKeys$1(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function _createSuper$1(e){var t=_isNativeReflectConstruct$1();return function(){var n,r=_getPrototypeOf(e);if(t){var o=_getPrototypeOf(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return _possibleConstructorReturn(this,n)}}function _isNativeReflectConstruct$1(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}function removePending(e,t){void 0!==e.pending[t]&&(delete e.pending[t],e.pendingCount--)}var Connector=function(e){_inherits(n,e);var t=_createSuper$1(n);function n(e,r,o){var a,i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return _classCallCheck$1(this,n),a=t.call(this),isIE10&&EventEmitter.call(_assertThisInitialized(a)),a.backend=e,a.store=r,a.services=o,a.languageUtils=o.languageUtils,a.options=i,a.logger=baseLogger.create("backendConnector"),a.waitingReads=[],a.maxParallelReads=i.maxParallelReads||10,a.readingCalls=0,a.maxRetries=i.maxRetries>=0?i.maxRetries:5,a.retryTimeout=i.retryTimeout>=1?i.retryTimeout:350,a.state={},a.queue=[],a.backend&&a.backend.init&&a.backend.init(o,i.backend,i),a}return _createClass$1(n,[{key:"queueLoad",value:function(e,t,n,r){var o=this,a={},i={},s={},l={};return e.forEach((function(e){var r=!0;t.forEach((function(t){var s="".concat(e,"|").concat(t);!n.reload&&o.store.hasResourceBundle(e,t)?o.state[s]=2:o.state[s]<0||(1===o.state[s]?void 0===i[s]&&(i[s]=!0):(o.state[s]=1,r=!1,void 0===i[s]&&(i[s]=!0),void 0===a[s]&&(a[s]=!0),void 0===l[t]&&(l[t]=!0)))})),r||(s[e]=!0)})),(Object.keys(a).length||Object.keys(i).length)&&this.queue.push({pending:i,pendingCount:Object.keys(i).length,loaded:{},errors:[],callback:r}),{toLoad:Object.keys(a),pending:Object.keys(i),toLoadLanguages:Object.keys(s),toLoadNamespaces:Object.keys(l)}}},{key:"loaded",value:function(e,t,n){var r=e.split("|"),o=r[0],a=r[1];t&&this.emit("failedLoading",o,a,t),n&&this.store.addResourceBundle(o,a,n),this.state[e]=t?-1:2;var i={};this.queue.forEach((function(n){pushPath(n.loaded,[o],a),removePending(n,e),t&&n.errors.push(t),0!==n.pendingCount||n.done||(Object.keys(n.loaded).forEach((function(e){i[e]||(i[e]={});var t=n.loaded[e];t.length&&t.forEach((function(t){void 0===i[e][t]&&(i[e][t]=!0)}))})),n.done=!0,n.errors.length?n.callback(n.errors):n.callback())})),this.emit("loaded",i),this.queue=this.queue.filter((function(e){return!e.done}))}},{key:"read",value:function(e,t,n){var r=this,o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:0,a=arguments.length>4&&void 0!==arguments[4]?arguments[4]:this.retryTimeout,i=arguments.length>5?arguments[5]:void 0;if(!e.length)return i(null,{});if(this.readingCalls>=this.maxParallelReads)this.waitingReads.push({lng:e,ns:t,fcName:n,tried:o,wait:a,callback:i});else{this.readingCalls++;var s=function(s,l){if(r.readingCalls--,r.waitingReads.length>0){var c=r.waitingReads.shift();r.read(c.lng,c.ns,c.fcName,c.tried,c.wait,c.callback)}s&&l&&o<r.maxRetries?setTimeout((function(){r.read.call(r,e,t,n,o+1,2*a,i)}),a):i(s,l)},l=this.backend[n].bind(this.backend);if(2!==l.length)return l(e,t,s);try{var c=l(e,t);c&&"function"==typeof c.then?c.then((function(e){return s(null,e)})).catch(s):s(null,c)}catch(e){s(e)}}}},{key:"prepareLoading",value:function(e,t){var n=this,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},o=arguments.length>3?arguments[3]:void 0;if(!this.backend)return this.logger.warn("No backend was added via i18next.use. Will not load resources."),o&&o();"string"==typeof e&&(e=this.languageUtils.toResolveHierarchy(e)),"string"==typeof t&&(t=[t]);var a=this.queueLoad(e,t,r,o);if(!a.toLoad.length)return a.pending.length||o(),null;a.toLoad.forEach((function(e){n.loadOne(e)}))}},{key:"load",value:function(e,t,n){this.prepareLoading(e,t,{},n)}},{key:"reload",value:function(e,t,n){this.prepareLoading(e,t,{reload:!0},n)}},{key:"loadOne",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",r=e.split("|"),o=r[0],a=r[1];this.read(o,a,"read",void 0,void 0,(function(r,i){r&&t.logger.warn("".concat(n,"loading namespace ").concat(a," for language ").concat(o," failed"),r),!r&&i&&t.logger.log("".concat(n,"loaded namespace ").concat(a," for language ").concat(o),i),t.loaded(e,r,i)}))}},{key:"saveMissing",value:function(e,t,n,r,o){var a=arguments.length>5&&void 0!==arguments[5]?arguments[5]:{},i=arguments.length>6&&void 0!==arguments[6]?arguments[6]:function(){};if(this.services.utils&&this.services.utils.hasLoadedNamespace&&!this.services.utils.hasLoadedNamespace(t))this.logger.warn('did not save key "'.concat(n,'" as the namespace "').concat(t,'" was not yet loaded'),"This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!");else if(null!=n&&""!==n){if(this.backend&&this.backend.create){var s=_objectSpread$1(_objectSpread$1({},a),{},{isUpdate:o}),l=this.backend.create.bind(this.backend);if(l.length<6)try{var c;(c=5===l.length?l(e,t,n,r,s):l(e,t,n,r))&&"function"==typeof c.then?c.then((function(e){return i(null,e)})).catch(i):i(null,c)}catch(e){i(e)}else l(e,t,n,r,i,s)}e&&e[0]&&this.store.addResource(e[0],t,n,r)}}}]),n}(EventEmitter);function get(){return{debug:!1,initImmediate:!0,ns:["translation"],defaultNS:["translation"],fallbackLng:["dev"],fallbackNS:!1,supportedLngs:!1,nonExplicitSupportedLngs:!1,load:"all",preload:!1,simplifyPluralSuffix:!0,keySeparator:".",nsSeparator:":",pluralSeparator:"_",contextSeparator:"_",partialBundledLanguages:!1,saveMissing:!1,updateMissing:!1,saveMissingTo:"fallback",saveMissingPlurals:!0,missingKeyHandler:!1,missingInterpolationHandler:!1,postProcess:!1,postProcessPassResolved:!1,returnNull:!0,returnEmptyString:!0,returnObjects:!1,joinArrays:!1,returnedObjectHandler:!1,parseMissingKeyHandler:!1,appendNamespaceToMissingKey:!1,appendNamespaceToCIMode:!1,overloadTranslationOptionHandler:function(e){var t={};if("object"===_typeof$1(e[1])&&(t=e[1]),"string"==typeof e[1]&&(t.defaultValue=e[1]),"string"==typeof e[2]&&(t.tDescription=e[2]),"object"===_typeof$1(e[2])||"object"===_typeof$1(e[3])){var n=e[3]||e[2];Object.keys(n).forEach((function(e){t[e]=n[e]}))}return t},interpolation:{escapeValue:!0,format:function(e,t,n,r){return e},prefix:"{{",suffix:"}}",formatSeparator:",",unescapePrefix:"-",nestingPrefix:"$t(",nestingSuffix:")",nestingOptionsSeparator:",",maxReplaces:1e3,skipOnVariables:!0}}}function transformOptions(e){return"string"==typeof e.ns&&(e.ns=[e.ns]),"string"==typeof e.fallbackLng&&(e.fallbackLng=[e.fallbackLng]),"string"==typeof e.fallbackNS&&(e.fallbackNS=[e.fallbackNS]),e.supportedLngs&&e.supportedLngs.indexOf("cimode")<0&&(e.supportedLngs=e.supportedLngs.concat(["cimode"])),e}function ownKeys$7(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function _objectSpread$7(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?ownKeys$7(Object(n),!0).forEach((function(t){_defineProperty$1(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):ownKeys$7(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function _createSuper(e){var t=_isNativeReflectConstruct();return function(){var n,r=_getPrototypeOf(e);if(t){var o=_getPrototypeOf(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return _possibleConstructorReturn(this,n)}}function _isNativeReflectConstruct(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}function noop$1(){}function bindMemberFunctions(e){Object.getOwnPropertyNames(Object.getPrototypeOf(e)).forEach((function(t){"function"==typeof e[t]&&(e[t]=e[t].bind(e))}))}var I18n=function(e){_inherits(n,e);var t=_createSuper(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},o=arguments.length>1?arguments[1]:void 0;if(_classCallCheck$1(this,n),e=t.call(this),isIE10&&EventEmitter.call(_assertThisInitialized(e)),e.options=transformOptions(r),e.services={},e.logger=baseLogger,e.modules={external:[]},bindMemberFunctions(_assertThisInitialized(e)),o&&!e.isInitialized&&!r.isClone){if(!e.options.initImmediate)return e.init(r,o),_possibleConstructorReturn(e,_assertThisInitialized(e));setTimeout((function(){e.init(r,o)}),0)}return e}return _createClass$1(n,[{key:"init",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=arguments.length>1?arguments[1]:void 0;"function"==typeof t&&(n=t,t={}),!t.defaultNS&&!1!==t.defaultNS&&t.ns&&("string"==typeof t.ns?t.defaultNS=t.ns:t.ns.indexOf("translation")<0&&(t.defaultNS=t.ns[0]));var r=get();function o(e){return e?"function"==typeof e?new e:e:null}if(this.options=_objectSpread$7(_objectSpread$7(_objectSpread$7({},r),this.options),transformOptions(t)),"v1"!==this.options.compatibilityAPI&&(this.options.interpolation=_objectSpread$7(_objectSpread$7({},r.interpolation),this.options.interpolation)),void 0!==t.keySeparator&&(this.options.userDefinedKeySeparator=t.keySeparator),void 0!==t.nsSeparator&&(this.options.userDefinedNsSeparator=t.nsSeparator),!this.options.isClone){var a;this.modules.logger?baseLogger.init(o(this.modules.logger),this.options):baseLogger.init(null,this.options),this.modules.formatter?a=this.modules.formatter:"undefined"!=typeof Intl&&(a=Formatter);var i=new LanguageUtil(this.options);this.store=new ResourceStore(this.options.resources,this.options);var s=this.services;s.logger=baseLogger,s.resourceStore=this.store,s.languageUtils=i,s.pluralResolver=new PluralResolver(i,{prepend:this.options.pluralSeparator,compatibilityJSON:this.options.compatibilityJSON,simplifyPluralSuffix:this.options.simplifyPluralSuffix}),!a||this.options.interpolation.format&&this.options.interpolation.format!==r.interpolation.format||(s.formatter=o(a),s.formatter.init(s,this.options),this.options.interpolation.format=s.formatter.format.bind(s.formatter)),s.interpolator=new Interpolator(this.options),s.utils={hasLoadedNamespace:this.hasLoadedNamespace.bind(this)},s.backendConnector=new Connector(o(this.modules.backend),s.resourceStore,s,this.options),s.backendConnector.on("*",(function(t){for(var n=arguments.length,r=new Array(n>1?n-1:0),o=1;o<n;o++)r[o-1]=arguments[o];e.emit.apply(e,[t].concat(r))})),this.modules.languageDetector&&(s.languageDetector=o(this.modules.languageDetector),s.languageDetector.init&&s.languageDetector.init(s,this.options.detection,this.options)),this.modules.i18nFormat&&(s.i18nFormat=o(this.modules.i18nFormat),s.i18nFormat.init&&s.i18nFormat.init(this)),this.translator=new Translator(this.services,this.options),this.translator.on("*",(function(t){for(var n=arguments.length,r=new Array(n>1?n-1:0),o=1;o<n;o++)r[o-1]=arguments[o];e.emit.apply(e,[t].concat(r))})),this.modules.external.forEach((function(t){t.init&&t.init(e)}))}if(this.format=this.options.interpolation.format,n||(n=noop$1),this.options.fallbackLng&&!this.services.languageDetector&&!this.options.lng){var l=this.services.languageUtils.getFallbackCodes(this.options.fallbackLng);l.length>0&&"dev"!==l[0]&&(this.options.lng=l[0])}this.services.languageDetector||this.options.lng||this.logger.warn("init: no languageDetector is used and no lng is defined");["getResource","hasResourceBundle","getResourceBundle","getDataByLanguage"].forEach((function(t){e[t]=function(){var n;return(n=e.store)[t].apply(n,arguments)}}));["addResource","addResources","addResourceBundle","removeResourceBundle"].forEach((function(t){e[t]=function(){var n;return(n=e.store)[t].apply(n,arguments),e}}));var c=defer(),u=function(){var t=function(t,r){e.isInitialized&&!e.initializedStoreOnce&&e.logger.warn("init: i18next is already initialized. You should call init just once!"),e.isInitialized=!0,e.options.isClone||e.logger.log("initialized",e.options),e.emit("initialized",e.options),c.resolve(r),n(t,r)};if(e.languages&&"v1"!==e.options.compatibilityAPI&&!e.isInitialized)return t(null,e.t.bind(e));e.changeLanguage(e.options.lng,t)};return this.options.resources||!this.options.initImmediate?u():setTimeout(u,0),c}},{key:"loadResources",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:noop$1,r="string"==typeof e?e:this.language;if("function"==typeof e&&(n=e),!this.options.resources||this.options.partialBundledLanguages){if(r&&"cimode"===r.toLowerCase())return n();var o=[],a=function(e){e&&t.services.languageUtils.toResolveHierarchy(e).forEach((function(e){o.indexOf(e)<0&&o.push(e)}))};if(r)a(r);else this.services.languageUtils.getFallbackCodes(this.options.fallbackLng).forEach((function(e){return a(e)}));this.options.preload&&this.options.preload.forEach((function(e){return a(e)})),this.services.backendConnector.load(o,this.options.ns,(function(e){e||t.resolvedLanguage||!t.language||t.setResolvedLanguage(t.language),n(e)}))}else n(null)}},{key:"reloadResources",value:function(e,t,n){var r=defer();return e||(e=this.languages),t||(t=this.options.ns),n||(n=noop$1),this.services.backendConnector.reload(e,t,(function(e){r.resolve(),n(e)})),r}},{key:"use",value:function(e){if(!e)throw new Error("You are passing an undefined module! Please check the object you are passing to i18next.use()");if(!e.type)throw new Error("You are passing a wrong module! Please check the object you are passing to i18next.use()");return"backend"===e.type&&(this.modules.backend=e),("logger"===e.type||e.log&&e.warn&&e.error)&&(this.modules.logger=e),"languageDetector"===e.type&&(this.modules.languageDetector=e),"i18nFormat"===e.type&&(this.modules.i18nFormat=e),"postProcessor"===e.type&&postProcessor.addPostProcessor(e),"formatter"===e.type&&(this.modules.formatter=e),"3rdParty"===e.type&&this.modules.external.push(e),this}},{key:"setResolvedLanguage",value:function(e){if(e&&this.languages&&!(["cimode","dev"].indexOf(e)>-1))for(var t=0;t<this.languages.length;t++){var n=this.languages[t];if(!(["cimode","dev"].indexOf(n)>-1)&&this.store.hasLanguageSomeTranslations(n)){this.resolvedLanguage=n;break}}}},{key:"changeLanguage",value:function(e,t){var n=this;this.isLanguageChangingTo=e;var r=defer();this.emit("languageChanging",e);var o=function(e){n.language=e,n.languages=n.services.languageUtils.toResolveHierarchy(e),n.resolvedLanguage=void 0,n.setResolvedLanguage(e)},a=function(a){e||a||!n.services.languageDetector||(a=[]);var i="string"==typeof a?a:n.services.languageUtils.getBestMatchFromCodes(a);i&&(n.language||o(i),n.translator.language||n.translator.changeLanguage(i),n.services.languageDetector&&n.services.languageDetector.cacheUserLanguage&&n.services.languageDetector.cacheUserLanguage(i)),n.loadResources(i,(function(e){!function(e,a){a?(o(a),n.translator.changeLanguage(a),n.isLanguageChangingTo=void 0,n.emit("languageChanged",a),n.logger.log("languageChanged",a)):n.isLanguageChangingTo=void 0,r.resolve((function(){return n.t.apply(n,arguments)})),t&&t(e,(function(){return n.t.apply(n,arguments)}))}(e,i)}))};return e||!this.services.languageDetector||this.services.languageDetector.async?!e&&this.services.languageDetector&&this.services.languageDetector.async?0===this.services.languageDetector.detect.length?this.services.languageDetector.detect().then(a):this.services.languageDetector.detect(a):a(e):a(this.services.languageDetector.detect()),r}},{key:"getFixedT",value:function(e,t,n){var r=this,o=function e(t,o){var a;if("object"!==_typeof$1(o)){for(var i=arguments.length,s=new Array(i>2?i-2:0),l=2;l<i;l++)s[l-2]=arguments[l];a=r.options.overloadTranslationOptionHandler([t,o].concat(s))}else a=_objectSpread$7({},o);a.lng=a.lng||e.lng,a.lngs=a.lngs||e.lngs,a.ns=a.ns||e.ns,a.keyPrefix=a.keyPrefix||n||e.keyPrefix;var c,u=r.options.keySeparator||".";return c=a.keyPrefix&&Array.isArray(t)?t.map((function(e){return"".concat(a.keyPrefix).concat(u).concat(e)})):a.keyPrefix?"".concat(a.keyPrefix).concat(u).concat(t):t,r.t(c,a)};return"string"==typeof e?o.lng=e:o.lngs=e,o.ns=t,o.keyPrefix=n,o}},{key:"t",value:function(){var e;return this.translator&&(e=this.translator).translate.apply(e,arguments)}},{key:"exists",value:function(){var e;return this.translator&&(e=this.translator).exists.apply(e,arguments)}},{key:"setDefaultNamespace",value:function(e){this.options.defaultNS=e}},{key:"hasLoadedNamespace",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(!this.isInitialized)return this.logger.warn("hasLoadedNamespace: i18next was not initialized",this.languages),!1;if(!this.languages||!this.languages.length)return this.logger.warn("hasLoadedNamespace: i18n.languages were undefined or empty",this.languages),!1;var r=n.lng||this.resolvedLanguage||this.languages[0],o=!!this.options&&this.options.fallbackLng,a=this.languages[this.languages.length-1];if("cimode"===r.toLowerCase())return!0;var i=function(e,n){var r=t.services.backendConnector.state["".concat(e,"|").concat(n)];return-1===r||2===r};if(n.precheck){var s=n.precheck(this,i);if(void 0!==s)return s}return!!this.hasResourceBundle(r,e)||(!(this.services.backendConnector.backend&&(!this.options.resources||this.options.partialBundledLanguages))||!(!i(r,e)||o&&!i(a,e)))}},{key:"loadNamespaces",value:function(e,t){var n=this,r=defer();return this.options.ns?("string"==typeof e&&(e=[e]),e.forEach((function(e){n.options.ns.indexOf(e)<0&&n.options.ns.push(e)})),this.loadResources((function(e){r.resolve(),t&&t(e)})),r):(t&&t(),Promise.resolve())}},{key:"loadLanguages",value:function(e,t){var n=defer();"string"==typeof e&&(e=[e]);var r=this.options.preload||[],o=e.filter((function(e){return r.indexOf(e)<0}));return o.length?(this.options.preload=r.concat(o),this.loadResources((function(e){n.resolve(),t&&t(e)})),n):(t&&t(),Promise.resolve())}},{key:"dir",value:function(e){if(e||(e=this.resolvedLanguage||(this.languages&&this.languages.length>0?this.languages[0]:this.language)),!e)return"rtl";var t=this.services&&this.services.languageUtils||new LanguageUtil(get());return["ar","shu","sqr","ssh","xaa","yhd","yud","aao","abh","abv","acm","acq","acw","acx","acy","adf","ads","aeb","aec","afb","ajp","apc","apd","arb","arq","ars","ary","arz","auz","avl","ayh","ayl","ayn","ayp","bbz","pga","he","iw","ps","pbt","pbu","pst","prp","prd","ug","ur","ydd","yds","yih","ji","yi","hbo","men","xmn","fa","jpr","peo","pes","prs","dv","sam","ckb"].indexOf(t.getLanguagePartFromCode(e))>-1||e.toLowerCase().indexOf("-arab")>1?"rtl":"ltr"}},{key:"cloneInstance",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:noop$1,o=_objectSpread$7(_objectSpread$7(_objectSpread$7({},this.options),t),{isClone:!0}),a=new n(o);void 0===t.debug&&void 0===t.prefix||(a.logger=a.logger.clone(t));return["store","services","language"].forEach((function(t){a[t]=e[t]})),a.services=_objectSpread$7({},this.services),a.services.utils={hasLoadedNamespace:a.hasLoadedNamespace.bind(a)},a.translator=new Translator(a.services,a.options),a.translator.on("*",(function(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];a.emit.apply(a,[e].concat(n))})),a.init(o,r),a.translator.options=a.options,a.translator.backendConnector.services.utils={hasLoadedNamespace:a.hasLoadedNamespace.bind(a)},a}},{key:"toJSON",value:function(){return{options:this.options,store:this.store,language:this.language,languages:this.languages,resolvedLanguage:this.resolvedLanguage}}}]),n}(EventEmitter);_defineProperty$1(I18n,"createInstance",(function(){return new I18n(arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},arguments.length>1?arguments[1]:void 0)}));var instance=I18n.createInstance();function _typeof(e){return _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},_typeof(e)}function _toPrimitive(e,t){if("object"!==_typeof(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,t||"default");if("object"!==_typeof(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}function _toPropertyKey(e){var t=_toPrimitive(e,"string");return"symbol"===_typeof(t)?t:String(t)}function _defineProperty(e,t,n){return(t=_toPropertyKey(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}instance.createInstance=I18n.createInstance,instance.createInstance,instance.dir,instance.init,instance.loadResources,instance.reloadResources,instance.use,instance.changeLanguage,instance.getFixedT,instance.t,instance.exists,instance.setDefaultNamespace,instance.hasLoadedNamespace,instance.loadNamespaces,instance.loadLanguages;var matchHtmlEntity=/&(?:amp|#38|lt|#60|gt|#62|apos|#39|quot|#34|nbsp|#160|copy|#169|reg|#174|hellip|#8230|#x2F|#47);/g,htmlEntities={"&amp;":"&","&#38;":"&","&lt;":"<","&#60;":"<","&gt;":">","&#62;":">","&apos;":"'","&#39;":"'","&quot;":'"',"&#34;":'"',"&nbsp;":" ","&#160;":" ","&copy;":"©","&#169;":"©","&reg;":"®","&#174;":"®","&hellip;":"…","&#8230;":"…","&#x2F;":"/","&#47;":"/"},unescapeHtmlEntity=function(e){return htmlEntities[e]},unescape=function(e){return e.replace(matchHtmlEntity,unescapeHtmlEntity)};function ownKeys(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function _objectSpread(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?ownKeys(Object(n),!0).forEach((function(t){_defineProperty(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):ownKeys(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}var defaultOptions$1={bindI18n:"languageChanged",bindI18nStore:"",transEmptyNodeValue:"",transSupportBasicHtmlNodes:!0,transWrapTextNodes:"",transKeepBasicHtmlNodesFor:["br","strong","i","p"],useSuspense:!0,unescape:unescape};function setDefaults(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};defaultOptions$1=_objectSpread(_objectSpread({},defaultOptions$1),e)}function _classCallCheck(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function _defineProperties(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,_toPropertyKey(r.key),r)}}function _createClass(e,t,n){return t&&_defineProperties(e.prototype,t),n&&_defineProperties(e,n),Object.defineProperty(e,"prototype",{writable:!1}),e}var initReactI18next={type:"3rdParty",init:function(e){setDefaults(e.options.react)}};React.createContext(),function(){function e(){_classCallCheck(this,e),this.usedNamespaces={}}_createClass(e,[{key:"addUsedNamespaces",value:function(e){var t=this;e.forEach((function(e){t.usedNamespaces[e]||(t.usedNamespaces[e]=!0)}))}},{key:"getUsedNamespaces",value:function(){return Object.keys(this.usedNamespaces)}}])}();var freeGlobal$1="object"==typeof commonjsGlobal&&commonjsGlobal&&commonjsGlobal.Object===Object&&commonjsGlobal,_freeGlobal=freeGlobal$1,freeGlobal=_freeGlobal,freeSelf="object"==typeof self&&self&&self.Object===Object&&self,root$1=freeGlobal||freeSelf||Function("return this")(),_root=root$1,root=_root,Symbol$3=root.Symbol,_Symbol=Symbol$3,Symbol$2=_Symbol;Symbol$2&&Symbol$2.toStringTag;var Symbol$1=_Symbol;Symbol$1&&Symbol$1.toStringTag;var funcProto=Function.prototype,funcToString=funcProto.toString;funcToString.call(Object);const getBuilderContext=()=>"undefined"==typeof window?{}:Builder.settings.context?Builder.settings.context:Builder.settings;async function fetchAPI(e,t={credentials:"include"}){const n={"Content-Type":"application/json"},r=getAuthorization();r&&(n.Authorization=r),t.headers=Object.assign({},n,t.headers),t.credentials="include";const o=await fetch(`${getRootUrl()}${e}`,t);if(401===o.status)throw new Error(401);const a=await o.json();if(a.errors)throw console.error(a.errors),new Error("Failed to fetch API");return a}function getAuthorization(){try{const e=getBuilderContext();let t=e.tenantId,n=e.authToken;return t&&n?`Bearer ${t},${n}`:null}catch(e){console.error(e)}}function getUserId(){try{let e=getBuilderContext().userId;return e||null}catch(e){console.error(e)}}function getRootUrl(e){const t=getBuilderContext();if(t.rootUrl)return t.rootUrl;const n="undefined"!=typeof window?window.localStorage.getItem("steedos:rootUrl"):"";return n||(e||"")}const Router={getTabDisplayAs(e,t){var n=new URLSearchParams(document.location.search);if(n.has("display"))return n.get("display");const r=`tab_${e}_display`,o=sessionStorage.getItem(r);let a="grid";return!0===t&&(a="split"),window.innerWidth<=768?"grid":o||a},setTabDisplayAs(e,t){const n=`tab_${e}_display`;sessionStorage.setItem(n,t)},getAppPath:({formFactor:e,appId:t})=>`/app/${t}`,getPagePath(){},getObjectListViewPath:({formFactor:e,appId:t,objectName:n,listViewName:r})=>`/app/${t}/${n}/grid/${r}`,getObjectDetailPath(e){const{formFactor:t,appId:n,objectName:r,recordId:o,listViewName:a,_templateType:i}=e;return"JavaScript"===i?`/app/${n}/${r}/view/${o}?side_object=<%=item.objectName%>&side_listview_id=<%=item.listName%>`:`/app/${n}/${r}/view/${o}?side_object=\${objectName}&side_listview_id=\${listName}`},getObjectRelatedViewPath:({formFactor:e,appId:t,masterObjectName:n,masterRecordId:r,objectName:o,foreignKey:a})=>`/app/${t}/${n}/${r}/${o}/grid?related_field_name=${a}`};function getImageFieldUrl(e,t){if(window.Meteor){if(1!=window.Meteor.isCordova){const t=e.indexOf("//"),n=e.indexOf("/",t+2);return e.substring(n)}if(t||e.startsWith("http"))return`${e}?token=${window.btoa(JSON.stringify({authToken:Builder.settings.context.authToken}))}`}return e}function toGrayscale(e,t,n){return.2126*e+.7152*t+.0722*n}function isLight(e,t,n){return toGrayscale(e,t,n)>200}function getContrastColor(e){var t="#"===e.charAt(0)?e.substring(1,7):e;return isLight(parseInt(t.substr(0,2),16),parseInt(t.substr(2,2),16),parseInt(t.substr(4,2),16))?"#000000":"#ffffff"}function getLookupListView(e){if(!e)return null;let t,n;return _.each(e.list_views,((e,r)=>{"all"===r?(t=e,t.name||(t.name=r)):"lookup"===r&&(n=e,n.name||(n.name=r))})),n||t}function getComparableAmisVersion(){let e=window.amisRequire&&window.amisRequire("amis")||window.Amis,t=e&&e.version;if(t){let e=t.split(".");return parseFloat(e[0].toString()+"."+e[1].toString())}}function getBowserType(){const e=navigator.userAgent;return-1!==e.indexOf("Chrome")&&-1!==e.indexOf("Safari")&&-1===e.indexOf("Edg")?"Chrome":-1!==e.indexOf("Firefox")?"Firefox":-1!==e.indexOf("Safari")&&-1===e.indexOf("Chrome")&&-1===e.indexOf("Edge")?"Safari":-1!==e.indexOf("Edg")?"Edge":"Unknown browser"}function getNumberTpl(e){return`<span>\${_display.${e.name}}</span>`}function getTimeTpl(e){return`<span>\${_display.${e.name}}</span>`}function getDateTpl(e){return`<span>\${_display.${e.name}}</span>`}function getDateTimeTpl(e){return`<span>\${_display.${e.name}}</span>`}function getUiFieldTpl(e){return`<span>\${_display.${e.name}}</span>`}function getUiFileSizeTpl(e){return`<span>\${_display.${e.name}}</span>`}async function getRefObjectNameFieldName(e){return(await getUISchema(e.reference_to)).NAME_FIELD_KEY||"name"}function getSelectTpl(e){return`<span>\${_display.${e.name}}</span>`}function getSelectMap(e){let t={};return lodash.exports.forEach(e,(e=>{const n=e.value+"",r=e.color+"";if(r&&"undefined"!=r){const o="#"===r.charAt(0)?r:"#"+r,a="background:"+o+";color:"+getContrastColor(o)+";line-height:1.5rem;font-size:14px";t[n]=`<span class="rounded-xl px-2 py-1" style='${a}'>${e.label}</span>`}else t[n]=e.label})),t}function getNameTplUrl(e,t){return Router.getObjectDetailPath({...t,formFactor:t.formFactor,appId:"${appId}",objectName:t.objectName||"${objectName}",recordId:`\${${t.idFieldName}}`})}function getNameTpl(e,t){const n=getNameTplUrl(e,t);let r="";t&&t.isLookup&&(r="target='_blank'");let o=e.name;return"lookup"==e.type||"master_detail"==e.type?!e.reference_to&&(e.optionsFunction||e._optionsFunction||e.options)?e.isTableField||(o=`\${${e.name}__label}`):o=`\${_display.${e.name}.label}`:o=`\${_display.${e.name} || ${e.name}}`,t.isRelated&&window.innerWidth>=768?`<a href="${n}" ${r} onclick="return false;">\${${o} | raw}</a>`:`<a href="${n}" ${r}>\${${o} | raw}</a>`}function getRelatedFieldTpl(e,t){let n="";if(!e.reference_to&&(e.optionsFunction||e._optionsFunction||e.options))return e.isTableField?`\${${e.name}}`:`\${${e.name}__label}`;let r="";t&&t.isLookup&&(r="target='_blank'");const o=t.onlyDisplayLookLabel;let a=`data._display.${e.name}`;if(e.isTableField&&(a=`data.${e.name}`),_.isString(e.reference_to)||!e.reference_to)if(e.multiple){let e="<%=item.label%>";if(t.isRelated&&(r="target='_blank'"),!o){e=`<a href="${Router.getObjectDetailPath({formFactor:t.formFactor,appId:"<%=data.appId%>",objectName:"<%=item.objectName%>",recordId:"<%=item.value%>",_templateType:"JavaScript"})}" ${r}><%=item.label%></a>`}n=`\n <% if (${a} && ${a}.length) { %><% ${a}.forEach(function(item,index) { %> <% if(index>0 && index<${a}.length){ %> , <% } %> ${e} <% }); %><% } %>\n `}else{let a=`\${_display.${e.name}.label}`,i=`\${_display.${e.name}.objectName}`,s=`\${_display.${e.name}.value}`;if(e.isTableField&&(a=`\${${e.name}.label}`,i=`\${${e.name}.objectName}`,s=`\${${e.name}.value}`),!o){const e=Router.getObjectDetailPath({formFactor:t.formFactor,appId:"${appId}",objectName:`${i}`,recordId:`${s}`});a=window.innerWidth>=768?`<a href="${e}" ${r} onclick="return false;">${a}</a>`:`<a href="${e}" ${r}>${a}</a>`}n=a}else{let e="<%=item.label%>";if(!o){e=`<a href="${Router.getObjectDetailPath({formFactor:t.formFactor,appId:"<%=data.appId%>",objectName:"<%=item.objectName%>",recordId:"<%=item.value%>",_templateType:"JavaScript"})}" ${r}><%=item.label%></a>`}n=`\n <% if (${a} && ${a}.length) { %><% ${a}.forEach(function(item) { %> ${e} <% }); %><% } %>\n `}return n}async function getLookupTpl(e,t){if(!e.reference_to)return getSelectTpl(e);const n=await getRefObjectNameFieldName(e);if(e.multiple){const r=Router.getObjectDetailPath({formFactor:t.formFactor,appId:t.appId,objectName:e.reference_to,recordId:"<%=item._id%>",_templateType:"JavaScript"});return`\n <% if (data.${e.name} && data.${e.name}.length) { %><% data.${e.name}.forEach(function(item) { %> <a href="${r}"><%=item.${n}%></a> <% }); %><% } %>\n `}return`<a href="${Router.getObjectDetailPath({formFactor:t.formFactor,appId:t.appId,objectName:e.reference_to,recordId:`\${${e.name}._id}`})}">\${${e.name}.${n}}</a>`}function getSwitchTpl(e){let t=`data._display.${e.name}`;return e.isTableField&&(t=`data.${e.name}`),`<% if (data.${e.name}) { %>\n <span class="slds-icon_container slds-icon-utility-check slds-current-color" title="<%=${t}%>">\n <span ><%= ${t} === "√" ? "<svg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke-width='1.5' stroke='currentColor' class='w-4 h-4'><path stroke-linecap='round' stroke-linejoin='round' d='M4.5 12.75l6 6 9-13.5' /></svg>" : ${t} %></span>\n </span>\n <% } %>`}function getPasswordTpl(e){return`<% if (data.${e.name}) { %>\n <span>******</span>\n <% } %>`}function getLocationTpl(e){return`\${${e.name} ? ${e.name}.address : ''}`}async function getFieldTpl(e,t){if((e.is_name||e.name===t.labelFieldName)&&!t.onlyDisplayLookLabel&&!0!==e.multiple)return getNameTpl(e,t);switch(e.type){case"password":return getPasswordTpl(e);case"boolean":case"toggle":return getSwitchTpl(e);case"select":return getSelectTpl(e);case"time":return getTimeTpl(e);case"date":return getDateTpl(e);case"datetime":return getDateTimeTpl(e);case"lookup":case"master_detail":return await getRelatedFieldTpl(e,t);case"location":return await getLocationTpl(e);case"number":case"currency":return await getNumberTpl(e);case"percent":case"formula":case"summary":return getUiFieldTpl(e);case"filesize":return getUiFileSizeTpl(e)}}async function getFieldsTemplate(e,t,n){let r=[];0!=n&&(n=!0);let o=["_id"];e.datasource&&"default"!==e.datasource&&"meteor"!==e.datasource||o.push("space");let a=[],i=[];i=lodash.exports.isArray(t)?t:lodash.exports.values(t);for(const e of i)e.name&&(e.expand?r.push(e):e.name.indexOf(".")<0?(!n||"lookup"!=e.type&&"master_detail"!=e.type?o.push(e.alias?`${e.alias}:${e.name}`:e.name):(o.push(`${e.name}`),a.push(`${e.name}`)),lodash.exports.includes(["time","date","datetime","boolean","number","currency"],e.type)&&o.push(`${e.name}`),lodash.exports.includes(["percent","time","filesize","date","datetime","boolean","number","currency","select","file","image","avatar","formula","summary","object","grid"],e.type)&&a.push(`${e.name}`)):(objectFieldName=e.name.split(".")[0],o.push(objectFieldName),a.push(objectFieldName)));a=lodash.exports.uniq(a),o=lodash.exports.uniq(o);let s="";return r.length>0&&lodash.exports.each(r,(function(e){s+=`${e.expandInfo.fieldName}__expand{${e.expandInfo.displayName}}`})),a.length>0?`${o.join(",")},${s},_display:_ui{${a.join(",")}}`:lodash.exports.trimEnd(`${o.join(" ")},${s}`,",")}async function getFindQuery(e,t,n,r){let o=r.limit||10,a=`(top: ${o})`;t&&(a=`(filters:["_id", "=", "${t}"], top: ${o})`);let i="data";r&&(r.alias&&(i=r.alias),r.filters&&(a=`(filters:${r.filters})`),r.queryOptions&&(a=`(${r.queryOptions})`));var s="";e.enable_tree&&lodash.exports.includes(lodash.exports.keys(e.fields),"parent")&&lodash.exports.includes(lodash.exports.keys(e.fields),"children")&&(s=",parent,children");var l="";"cms_files"===e.name&&(l=",versions");const c=!1===r.count?"":`,count:${e.name}__count(filters:{__filters})`,u=`${await getFieldsTemplate(e,n,r.expand)}${s}${l}`;return{orderBy:"${orderBy}",orderDir:"${orderDir}",pageNo:"${page}",pageSize:"${perPage}",queryFields:u,query:`{${i}:${e.name}${a}{${u}}${c}}`}}function getApi$2(e){if(!e)return"${context.rootUrl}/graphql?reload=${additionalFilters|join}&listName=${listName}"}"undefined"!=typeof window&&(window.getImageFieldUrl=getImageFieldUrl);var config={listView:{newRecordMode:"modal",editRecordMode:"modal",perPage:20}};const AmisFormInputs=["text","date","file","avatar","image","datetime","time","number","currency","percent","password","url","color","email"];function getAmisStaticFieldType(e,t,n){return t?lodash.exports.includes(["text","image","color"],e)?"text"===e&&n&&n.amis&&n.amis.tpl?"static":"image"===e&&n&&n.multiple?"static-images":`static-${e}`:"url"===e?"input-url":"static":lodash.exports.includes(AmisFormInputs,e)?`input-${e}`:"location"===e?"location-picker":e}let pageCache={};async function getPage({type:e,pageId:t="",appId:n,objectName:r="",recordId:o="",formFactor:a="LARGE"}){const i=`/api/pageSchema/${e}?app=${n}&objectApiName=${r}&recordId=${o}&pageId=${t}&formFactor=${a}`;if(lodash.exports.has(pageCache,i))return pageCache[i];const s=await fetchAPI(i);if(s&&s.schema)return s.schema=JSON.parse(s.schema),s.schema.data&&(delete s.schema.data.recordId,delete s.schema.data.objectName,delete s.schema.data.context,delete s.schema.data.global),pageCache[i]=s,JSON.parse(JSON.stringify(s));pageCache[i]=null}const getFileTableName=e=>{switch(e.type){case"avatar":return"avatars";case"image":return"images";case"file":return"files"}},getAmisFieldType$1=(e,t)=>getAmisStaticFieldType("avatar"===e.type?"image":e.type,t,{multiple:e.multiple});async function getLookupLinkOnClick(e,t){const n=await getPage({type:"record",appId:t.appId,objectName:t.objectName,formFactor:t.formFactor}),r=n?Object.assign({},n.schema,{recordId:"file"==e.type?"${value}":`\${${e.name}}`,data:{...n.schema.data,_inDrawer:!0,recordLoaded:!1,objectName:t.objectName}}):{type:"steedos-record-detail",objectApiName:t.objectName,recordId:"file"==e.type?"${value}":`\${${e.name}}`,showBackButton:!1,showButtons:!0,data:{_inDrawer:!0,recordLoaded:!1}};return{click:{actions:[{actionType:"drawer",drawer:{type:"drawer",title:"&nbsp;",headerClassName:"hidden",size:"lg",width:window.drawerWidth||"70%",bodyClassName:"p-0 m-0 bg-gray-100",closeOnEsc:!0,closeOnOutside:!0,resizable:!0,actions:[],body:[r],className:"steedos-record-detail-drawer app-popover"},preventDefault:!0}]}}}const getAmisFileReadonlySchema=async(e,t={})=>{const n=e.type,{appId:r,formFactor:o}=t.amisData||{},a=getAmisFieldType$1(e,!0);let i='onclick="return false;"';return window.innerWidth<768&&(i=""),_.includes(["avatar","image"],n)?{type:a,defaultImage:"",enlargeAble:!0,showToolbar:!0}:"file"===n?window.Meteor?.isCordova?{type:"control",body:e.multiple?{type:"each",name:"_display."+e.name,items:{type:"tpl",tpl:"${name}",className:"antd-Button--link inline-block mr-2",onEvent:{click:{actions:[{script:"\n Steedos.cordovaDownload(encodeURI(event.data.url), event.data.name);\n ",actionType:"custom"}],weight:0}}}}:{type:"tpl",tpl:"${_display."+e.name+".name}",className:"antd-Button--link inline-block",onEvent:{click:{actions:[{script:`\n const data = event.data._display.${e.name};\n Steedos.cordovaDownload(encodeURI(data.url), data.name);\n `,actionType:"custom"}],weight:0}}}}:{type:"control",name:"",body:{type:"each",placeholder:"",className:e.multiple?"flex flex-col":"",source:`\${_display.${e.name}|asArray}`,items:{type:"static",labelClassName:"hidden",label:!1,className:"m-0",tpl:`<a href="/app/-/cfs_files_filerecord/view/\${value}" ${i}>\${name}</a>`,onEvent:window.innerWidth<768?null:await getLookupLinkOnClick(e,{appId:r,objectName:"cfs_files_filerecord",formFactor:o})}}}:void 0},getAmisFileEditSchema=e=>{const t=getFileTableName(e);let n={type:getAmisFieldType$1(e,!1),useChunk:!1,receiver:{method:"post",dataType:"form-data",url:`\${context.rootUrl}/api/v6/files/cfs.${t}.filerecord`,requestAdaptor:"\n const superData = (typeof context != 'undefined') ? context : api.body; \n const { _master, global } = superData;\n // const { recordId, objectName } = _master;\n const { spaceId, userId, user } = global;\n /*\n record_id: recordId,\n parent: recordId,\n object_name: objectName,\n owner_name: user.name,\n space: spaceId,\n owner: userId\n */\n // 参考platform 2.2版本,附件字段保存时cfs.files.filerecord、cfs.images.filerecord表中的metadata下只保存space、owner两个属性值。\n api.data.append('space', spaceId);\n api.data.append('owner', userId);\n\n return api;\n ",adaptor:`\n const superData = (typeof context != 'undefined') ? context : api.body; \n const { context:pageContext } = superData; \n var rootUrl = pageContext.rootUrl + "/api/v6/files/download/cfs.${t}.filerecord/";\n payload = {\n status: response.status == 200 ? 0 : response.status,\n msg: response.statusText,\n data: {\n value: payload._id,\n name: payload.original.name,\n url: rootUrl + payload._id + "/" + payload.original.name,\n }\n }\n return payload;\n `,headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}}};return e.multiple&&(n.multiple=!0,n.joinValues=!1,n.extractValue=!0,"image"===e.type&&Steedos.isCordova()&&Steedos.isCordova()&&(n.accept="")),n},getAmisFileSchema=async(e,t,n)=>t?await getAmisFileReadonlySchema(e,n):getAmisFileEditSchema(e);var frontend_field_group_generalization$1="General",frontend_download$1="Download",frontend_form_save$1="Save",frontend_form_save_and_new$1="Save and New",frontend_form_cancel$1="Cancel",frontend_form_reset$1="Reset",frontend_form_new$1="New",frontend_form_edit$1="Edit",frontend_form_preview$1="Preview",frontend_form_select$1="Select",frontend_form_please_select$1="Please select",frontend_form_confirm$1="Confirm",frontend_form_delete$1="Delete",frontend_form_view$1="view",frontend_form_details$1="details",frontend_form_validation_failed_url$1="The URL format is incorrect",frontend_delete_confirm_text$1="Are you sure you want to delete this item?",frontend_delete_many_selected_required$1="Please select the item to be deleted",frontend_delete_many_confirm_text$1="Are you sure you want to delete?",frontend_display_type_is_table$1="Table",frontend_display_type_is_split$1="Split View",frontend_display_as$1="Displayed as",frontend_record_sum$1="items",frontend_button_reload_tooltip$1="Refresh",frontend_button_search_tooltip$1="Filter",frontend_fields_filter_button_search$1="Search",frontend_fields_filter_button_settings$1="Set search options",frontend_button_listview_control_tooltip$1="List View Controls",frontend_button_listview_control_label$1="LIST VIEW CONTROLS",frontend_listview_control_columns$1="Show List",frontend_listview_control_columns_mobile_group$1="Mobile side",frontend_listview_control_clone_label$1="Clone",frontend_listview_control_clone_title$1="Clone List View",frontend_listview_control_clone_defaultData_label_start$1="Copy of",frontend_listview_control_clone_defaultData_label_end$1="",frontend_listview_control_delete_label$1="Delete",frontend_listview_control_delete_confirm_text$1="If you delete this list view it will be permanently removed for all users with access. Are you sure you want to delete?",frontend_listview_control_delete_message_success$1="Deletion successful",frontend_listview_control_filters$1="Filter settings",frontend_listview_control_filters_fields_extend$1="Conditional component 1",frontend_listview_control_new_label$1="New",frontend_listview_control_new_title$1="New List View",frontend_listview_control_new_message_success$1="Success",frontend_listview_control_new_message_failed$1="Failure",frontend_listview_control_rename_label$1="Rename",frontend_listview_control_rename_title$1="Rename List View",frontend_listview_control_share$1="Sharing Settings",frontend_listview_control_sort$1="Default sorting rule",frontend_export_excel$1="Export Excel",frontend_export_excel_toast$1="Exporting, please wait",frontend_operation$1="Operation",frontend_import_data$1="Import data",frontend_import_data_object_name$1="Import object",frontend_import_data_queue_import$1="Data import",frontend_import_data_queue_import_description$1="Import description",frontend_import_data_queue_import_encoding$1="Character code",frontend_import_data_queue_import_template_url$1="Import template",frontend_import_data_file$1="Excel file",frontend_import_data_message_success$1="Importing has started...",frontend_import_data_message_failed$1="Import failed",frontend_record_detail_tab_detailed$1="Details",frontend_record_detail_tab_related$1="Related",frontend_all_apps$1="All apps",frontend_all_projects$1="All projects",frontend_open_app_launcher$1="Open App Launcher",frontend_application_launcher$1="Application launcher",frontend_menu$1="Menu",frontend_help$1="Help",frontend_setup$1="Setup",frontend_notifications$1="Notifications",frontend_notifications_allread$1="Mark all as read",frontend_notifications_allread_message$1="All marked as read",frontend_notifications_close_dialog$1="Close",frontend_profile$1="Profile",switch_space$1="Switch Space",frontend_about$1="About",frontend_log_out$1="Log out",frontend_listview_warning_start$1="The current ",frontend_listview_warning_end$1=" view does not exist!",frontend_record_detail_related_list_warning$1="Missing parent object, parent record, or related list object property!",frontend_record_detail_related_lists_warning$1="Missing parent object, or parent record property!",frontend_record_detail_related_lists_info$1="No related child tables found",frontend_calendar_listWeek$1="List",frontend_message_no_permission_to_edit$1="You don't have permission to edit this record!",frontend_message_modification_successful$1="Modification successful!",frontend_message_modification_failed$1="Modification failed!",frontend_objects_related_alert_start$1="No related table fields associated with the related list object",frontend_objects_related_alert_end$1="were found.",frontend_no_records_found$1="No records found.",frontend_records_no_allowedit$1="You do not have edit permission for this record",frontend_app_menu_save_order_group_nesting_error$1="Group nesting is not supported",en_us={frontend_field_group_generalization:frontend_field_group_generalization$1,frontend_download:frontend_download$1,frontend_form_save:frontend_form_save$1,frontend_form_save_and_new:frontend_form_save_and_new$1,frontend_form_cancel:frontend_form_cancel$1,frontend_form_reset:frontend_form_reset$1,frontend_form_new:frontend_form_new$1,frontend_form_edit:frontend_form_edit$1,frontend_form_preview:frontend_form_preview$1,frontend_form_select:frontend_form_select$1,frontend_form_please_select:frontend_form_please_select$1,frontend_form_confirm:frontend_form_confirm$1,frontend_form_delete:frontend_form_delete$1,frontend_form_view:frontend_form_view$1,frontend_form_details:frontend_form_details$1,frontend_form_validation_failed_url:frontend_form_validation_failed_url$1,frontend_delete_confirm_text:frontend_delete_confirm_text$1,frontend_delete_many_selected_required:frontend_delete_many_selected_required$1,frontend_delete_many_confirm_text:frontend_delete_many_confirm_text$1,frontend_display_type_is_table:frontend_display_type_is_table$1,frontend_display_type_is_split:frontend_display_type_is_split$1,frontend_display_as:frontend_display_as$1,frontend_record_sum:frontend_record_sum$1,frontend_button_reload_tooltip:frontend_button_reload_tooltip$1,frontend_button_search_tooltip:frontend_button_search_tooltip$1,frontend_fields_filter_button_search:frontend_fields_filter_button_search$1,frontend_fields_filter_button_settings:frontend_fields_filter_button_settings$1,frontend_button_listview_control_tooltip:frontend_button_listview_control_tooltip$1,frontend_button_listview_control_label:frontend_button_listview_control_label$1,frontend_listview_control_columns:frontend_listview_control_columns$1,frontend_listview_control_columns_mobile_group:frontend_listview_control_columns_mobile_group$1,frontend_listview_control_clone_label:frontend_listview_control_clone_label$1,frontend_listview_control_clone_title:frontend_listview_control_clone_title$1,frontend_listview_control_clone_defaultData_label_start:frontend_listview_control_clone_defaultData_label_start$1,frontend_listview_control_clone_defaultData_label_end:frontend_listview_control_clone_defaultData_label_end$1,frontend_listview_control_delete_label:frontend_listview_control_delete_label$1,frontend_listview_control_delete_confirm_text:frontend_listview_control_delete_confirm_text$1,frontend_listview_control_delete_message_success:frontend_listview_control_delete_message_success$1,frontend_listview_control_filters:frontend_listview_control_filters$1,frontend_listview_control_filters_fields_extend:frontend_listview_control_filters_fields_extend$1,frontend_listview_control_new_label:frontend_listview_control_new_label$1,frontend_listview_control_new_title:frontend_listview_control_new_title$1,frontend_listview_control_new_message_success:frontend_listview_control_new_message_success$1,frontend_listview_control_new_message_failed:frontend_listview_control_new_message_failed$1,frontend_listview_control_rename_label:frontend_listview_control_rename_label$1,frontend_listview_control_rename_title:frontend_listview_control_rename_title$1,frontend_listview_control_share:frontend_listview_control_share$1,frontend_listview_control_sort:frontend_listview_control_sort$1,frontend_export_excel:frontend_export_excel$1,frontend_export_excel_toast:frontend_export_excel_toast$1,frontend_operation:frontend_operation$1,frontend_import_data:frontend_import_data$1,frontend_import_data_object_name:frontend_import_data_object_name$1,frontend_import_data_queue_import:frontend_import_data_queue_import$1,frontend_import_data_queue_import_description:frontend_import_data_queue_import_description$1,frontend_import_data_queue_import_encoding:frontend_import_data_queue_import_encoding$1,frontend_import_data_queue_import_template_url:frontend_import_data_queue_import_template_url$1,frontend_import_data_file:frontend_import_data_file$1,frontend_import_data_message_success:frontend_import_data_message_success$1,frontend_import_data_message_failed:frontend_import_data_message_failed$1,frontend_record_detail_tab_detailed:frontend_record_detail_tab_detailed$1,frontend_record_detail_tab_related:frontend_record_detail_tab_related$1,frontend_all_apps:frontend_all_apps$1,frontend_all_projects:frontend_all_projects$1,frontend_open_app_launcher:frontend_open_app_launcher$1,frontend_application_launcher:frontend_application_launcher$1,frontend_menu:frontend_menu$1,frontend_help:frontend_help$1,frontend_setup:frontend_setup$1,frontend_notifications:frontend_notifications$1,frontend_notifications_allread:frontend_notifications_allread$1,frontend_notifications_allread_message:frontend_notifications_allread_message$1,frontend_notifications_close_dialog:frontend_notifications_close_dialog$1,frontend_profile:frontend_profile$1,switch_space:switch_space$1,frontend_about:frontend_about$1,frontend_log_out:frontend_log_out$1,frontend_listview_warning_start:frontend_listview_warning_start$1,frontend_listview_warning_end:frontend_listview_warning_end$1,frontend_record_detail_related_list_warning:frontend_record_detail_related_list_warning$1,frontend_record_detail_related_lists_warning:frontend_record_detail_related_lists_warning$1,frontend_record_detail_related_lists_info:frontend_record_detail_related_lists_info$1,frontend_calendar_listWeek:frontend_calendar_listWeek$1,frontend_message_no_permission_to_edit:frontend_message_no_permission_to_edit$1,frontend_message_modification_successful:frontend_message_modification_successful$1,frontend_message_modification_failed:frontend_message_modification_failed$1,frontend_objects_related_alert_start:frontend_objects_related_alert_start$1,frontend_objects_related_alert_end:frontend_objects_related_alert_end$1,frontend_no_records_found:frontend_no_records_found$1,frontend_records_no_allowedit:frontend_records_no_allowedit$1,frontend_app_menu_save_order_group_nesting_error:frontend_app_menu_save_order_group_nesting_error$1},frontend_field_group_generalization="通用",frontend_download="下载",frontend_form_save="保存",frontend_form_save_and_new="保存并新建",frontend_form_cancel="取消",frontend_form_reset="重置",frontend_form_new="新建",frontend_form_edit="编辑",frontend_form_preview="预览",frontend_form_select="选择",frontend_form_please_select="请选择",frontend_form_confirm="确认",frontend_form_delete="删除",frontend_form_view="查看",frontend_form_details="详情",frontend_form_validation_failed_url="URL 格式不正确",frontend_delete_confirm_text="确定要删除此项目?",frontend_delete_many_selected_required="请选择要删除的项",frontend_delete_many_confirm_text="确定要删除吗?",frontend_display_type_is_table="表格",frontend_display_type_is_split="分栏视图",frontend_display_as="显示为",frontend_record_sum="个项目",frontend_button_reload_tooltip="刷新",frontend_button_search_tooltip="筛选",frontend_fields_filter_button_search="搜索",frontend_fields_filter_button_settings="选择搜索项",frontend_button_listview_control_tooltip="列表视图控制",frontend_button_listview_control_label="列表视图控制",frontend_listview_control_columns="显示的列",frontend_listview_control_columns_mobile_group="手机端",frontend_listview_control_clone="复制",frontend_listview_control_clone_label="复制",frontend_listview_control_clone_title="复制 列表视图",frontend_listview_control_clone_defaultData_label_start="",frontend_listview_control_clone_defaultData_label_end="的副本",frontend_listview_control_delete_label="删除",frontend_listview_control_delete_confirm_text="如果您删除此列表视图,该视图将为所有具备访问权限的用户永久删除。是否确定要删除?",frontend_listview_control_delete_message_success="删除成功",frontend_listview_control_filters="过滤设置",frontend_listview_control_filters_fields_extend="条件组件",frontend_listview_control_new_label="新建",frontend_listview_control_new_title="新建 列表视图",frontend_listview_control_new_message_success="成功",frontend_listview_control_new_message_failed="失败",frontend_listview_control_rename_label="重命名",frontend_listview_control_rename_title="重命名 列表视图",frontend_listview_control_share="共享设置",frontend_listview_control_sort="默认排序规则",frontend_export_excel="导出",frontend_export_excel_toast="正在导出,请稍后...",frontend_operation="操作",frontend_import_data="导入数据",frontend_import_data_object_name="导入对象",frontend_import_data_queue_import="数据导入",frontend_import_data_queue_import_description="导入描述",frontend_import_data_queue_import_encoding="字符代码",frontend_import_data_queue_import_template_url="导入模板",frontend_import_data_file="Excel文件",frontend_import_data_message_success="已开始导入...",frontend_import_data_message_failed="导入失败",frontend_record_detail_tab_detailed="详细",frontend_record_detail_tab_related="相关",frontend_all_apps="所有应用",frontend_all_projects="所有项目",frontend_open_app_launcher="打开应用程序启动器",frontend_application_launcher="应用程序启动器",frontend_menu="菜单",frontend_help="帮助",frontend_setup="设置",frontend_notifications="通知",frontend_notifications_allread="全部标记为已读",frontend_notifications_allread_message="已全部标记为已读",frontend_notifications_close_dialog="关闭",frontend_profile="个人资料",switch_space="切换工作区",frontend_about="关于",frontend_log_out="注销",frontend_listview_warning_start="当前",frontend_listview_warning_end="视图不存在!",frontend_record_detail_related_list_warning="缺少父级对象、父级记录或相关列表对象属性!",frontend_record_detail_related_lists_warning="缺少父级对象或父级记录属性!",frontend_record_detail_related_lists_info="没有相关子表",frontend_calendar_listWeek="列表",frontend_message_no_permission_to_edit="您没有编辑该记录的权限!",frontend_message_modification_successful="修改成功!",frontend_message_modification_failed="修改失败!",frontend_objects_related_alert_start="未找到与相关列表对象",frontend_objects_related_alert_end="关联的相关表字段",frontend_no_records_found="无法找到记录",frontend_records_no_allowedit="您对这条记录没有编辑权限",frontend_app_menu_save_order_group_nesting_error="不支持分组嵌套",zh_cn={frontend_field_group_generalization:frontend_field_group_generalization,frontend_download:frontend_download,frontend_form_save:frontend_form_save,frontend_form_save_and_new:frontend_form_save_and_new,frontend_form_cancel:frontend_form_cancel,frontend_form_reset:frontend_form_reset,frontend_form_new:frontend_form_new,frontend_form_edit:frontend_form_edit,frontend_form_preview:frontend_form_preview,frontend_form_select:frontend_form_select,frontend_form_please_select:frontend_form_please_select,frontend_form_confirm:frontend_form_confirm,frontend_form_delete:frontend_form_delete,frontend_form_view:frontend_form_view,frontend_form_details:frontend_form_details,frontend_form_validation_failed_url:frontend_form_validation_failed_url,frontend_delete_confirm_text:frontend_delete_confirm_text,frontend_delete_many_selected_required:frontend_delete_many_selected_required,frontend_delete_many_confirm_text:frontend_delete_many_confirm_text,frontend_display_type_is_table:frontend_display_type_is_table,frontend_display_type_is_split:frontend_display_type_is_split,frontend_display_as:frontend_display_as,frontend_record_sum:frontend_record_sum,frontend_button_reload_tooltip:frontend_button_reload_tooltip,frontend_button_search_tooltip:frontend_button_search_tooltip,frontend_fields_filter_button_search:frontend_fields_filter_button_search,frontend_fields_filter_button_settings:frontend_fields_filter_button_settings,frontend_button_listview_control_tooltip:frontend_button_listview_control_tooltip,frontend_button_listview_control_label:frontend_button_listview_control_label,frontend_listview_control_columns:frontend_listview_control_columns,frontend_listview_control_columns_mobile_group:frontend_listview_control_columns_mobile_group,frontend_listview_control_clone:frontend_listview_control_clone,frontend_listview_control_clone_label:frontend_listview_control_clone_label,frontend_listview_control_clone_title:frontend_listview_control_clone_title,frontend_listview_control_clone_defaultData_label_start:frontend_listview_control_clone_defaultData_label_start,frontend_listview_control_clone_defaultData_label_end:frontend_listview_control_clone_defaultData_label_end,frontend_listview_control_delete_label:frontend_listview_control_delete_label,frontend_listview_control_delete_confirm_text:frontend_listview_control_delete_confirm_text,frontend_listview_control_delete_message_success:frontend_listview_control_delete_message_success,frontend_listview_control_filters:frontend_listview_control_filters,frontend_listview_control_filters_fields_extend:frontend_listview_control_filters_fields_extend,frontend_listview_control_new_label:frontend_listview_control_new_label,frontend_listview_control_new_title:frontend_listview_control_new_title,frontend_listview_control_new_message_success:frontend_listview_control_new_message_success,frontend_listview_control_new_message_failed:frontend_listview_control_new_message_failed,frontend_listview_control_rename_label:frontend_listview_control_rename_label,frontend_listview_control_rename_title:frontend_listview_control_rename_title,frontend_listview_control_share:frontend_listview_control_share,frontend_listview_control_sort:frontend_listview_control_sort,frontend_export_excel:frontend_export_excel,frontend_export_excel_toast:frontend_export_excel_toast,frontend_operation:frontend_operation,frontend_import_data:frontend_import_data,frontend_import_data_object_name:frontend_import_data_object_name,frontend_import_data_queue_import:frontend_import_data_queue_import,frontend_import_data_queue_import_description:frontend_import_data_queue_import_description,frontend_import_data_queue_import_encoding:frontend_import_data_queue_import_encoding,frontend_import_data_queue_import_template_url:frontend_import_data_queue_import_template_url,frontend_import_data_file:frontend_import_data_file,frontend_import_data_message_success:frontend_import_data_message_success,frontend_import_data_message_failed:frontend_import_data_message_failed,frontend_record_detail_tab_detailed:frontend_record_detail_tab_detailed,frontend_record_detail_tab_related:frontend_record_detail_tab_related,frontend_all_apps:frontend_all_apps,frontend_all_projects:frontend_all_projects,frontend_open_app_launcher:frontend_open_app_launcher,frontend_application_launcher:frontend_application_launcher,frontend_menu:frontend_menu,frontend_help:frontend_help,frontend_setup:frontend_setup,frontend_notifications:frontend_notifications,frontend_notifications_allread:frontend_notifications_allread,frontend_notifications_allread_message:frontend_notifications_allread_message,frontend_notifications_close_dialog:frontend_notifications_close_dialog,frontend_profile:frontend_profile,switch_space:switch_space,frontend_about:frontend_about,frontend_log_out:frontend_log_out,frontend_listview_warning_start:frontend_listview_warning_start,frontend_listview_warning_end:frontend_listview_warning_end,frontend_record_detail_related_list_warning:frontend_record_detail_related_list_warning,frontend_record_detail_related_lists_warning:frontend_record_detail_related_lists_warning,frontend_record_detail_related_lists_info:frontend_record_detail_related_lists_info,frontend_calendar_listWeek:frontend_calendar_listWeek,frontend_message_no_permission_to_edit:frontend_message_no_permission_to_edit,frontend_message_modification_successful:frontend_message_modification_successful,frontend_message_modification_failed:frontend_message_modification_failed,frontend_objects_related_alert_start:frontend_objects_related_alert_start,frontend_objects_related_alert_end:frontend_objects_related_alert_end,frontend_no_records_found:frontend_no_records_found,frontend_records_no_allowedit:frontend_records_no_allowedit,frontend_app_menu_save_order_group_nesting_error:frontend_app_menu_save_order_group_nesting_error};const resources={"en-US":{translation:en_us},"zh-CN":{translation:zh_cn}};var locale="zh-CN";async function getQuickEditSchema(e,t,n){let r=e.fields[t.name],o=!1;window.amisRequire&&window.amisRequire("amis")?o=window.amisRequire("amis").version[0]>=3&&window.amisRequire("amis").version[2]>=2:window.Amis&&(o=window.Amis.version[0]>=3&&window.Amis.version[2]>=2);const a=n.objectName+"_"+r.name+"_quickEdit";var i={body:[],id:a,className:"steedos-table-quickEdit"};if("avatar"!=r.type&&"image"!=r.type&&"file"!=r.type&&o){const e={submit:{actions:[{actionType:"validate",componentId:a,outputVar:"form_validate_result"},{actionType:"custom",script:`\n let items = _.cloneDeep(event.data.items);\n let selectedItems = _.cloneDeep(event.data.selectedItems);\n if(event.data.isBatchEdit){\n selectedItems.forEach(function(selectedItem){\n selectedItem._display.${r.name} = event.data._display.${r.name};\n doAction({actionType: 'setValue', "args": {"value": selectedItem._display},componentId: "${n.objectName}" + "_display_" + selectedItem._index});\n doAction({actionType: 'setValue', "args": {"value": event.data.${r.name}},componentId: "${n.objectName+"_"+r.name+"_"}" + selectedItem._index});\n })\n }else{\n doAction({actionType: 'setValue', "args": {"value": event.data._display},componentId: "${n.objectName}" + "_display_" + event.data._index});\n doAction({actionType: 'setValue', "args": {"value": event.data.${r.name}},componentId: "${n.objectName+"_"+r.name+"_"}" + event.data._index});\n }\n `,expression:"${!form_validate_result.error}"},{actionType:"closeDialog",expression:"${!form_validate_result.error}"}]}};i.onEvent=e}if(r.disabled)i=!1;else{var s=Object.assign({},lodash.exports.omit(n,"buttons"),{defaults:Object.assign({},n.defaults,{formSchema:i})}),l=await convertSFieldToAmisField(r,!1,s);if(l){i.body.push(l);var c="";i.body[0].onEvent={};const e=function(e){return{actions:[{actionType:"custom",script:`\n var _display = _.cloneDeep(event.data._display);\n ${e}\n doAction({actionType: 'setValue', "args": {"value": {_display}},componentId: "${a}"});\n `}]}};switch(r.type){case"lookup":case"master_detail":let t=i.body[0].labelField||"label",n=i.body[0].valueField||"value";c=r.multiple?`\n const preData = _.cloneDeep(event.data.__super.${r.name});\n if(preData && event.data.${r.name}.length < preData.length){\n let deletedIndex;\n preData.forEach(function(item,index){\n if(_.indexOf(event.data.${r.name}, item) == -1) _display["${r.name}"].splice(index, 1);\n })\n }else{\n _display["${r.name}"] = [];\n event.data.value.forEach(function(val,index){\n const item = _.find(event.data.selectedItems, { ${n}: val });\n _display["${r.name}"].push(\n {\n "label": item.${t},\n "value": item[event.data.uiSchema.idFieldName],\n "objectName": "${r.reference_to}"\n }\n )\n })\n }\n \n `:`\n if(event.data.value){\n _display["${r.name}"] = {\n "label": event.data.selectedItems.${t},\n "value": event.data.selectedItems[event.data.uiSchema.idFieldName],\n "objectName": "${r.reference_to}"\n }\n }else{\n _display["${r.name}"] = {}\n }\n `,i.body[0].onEvent.change=e(c);break;case"select":c=`\n _display["${r.name}"] = event.data.selectedItems.label;\n `,i.body[0].onEvent.change=e(c);break;case"percent":c=`\n if(event.data.value){\n _display["${r.name}"] = event.data.value.toFixed(${r.scale}) + '%';\n } else {\n _display["${r.name}"] = event.data.value;\n }\n \n `,i.body[0].onEvent.change=e(c);break;case"time":c=`\n _display["${r.name}"] = moment(event.data.value).utc().format('HH:mm');\n `,i.body[0].onEvent.change=e(c);break;case"date":c=`\n _display["${r.name}"] = moment(event.data.value).utc().format('YYYY-MM-DD');\n `,i.body[0].onEvent.change=e(c);break;case"datetime":c=`\n _display["${r.name}"] = moment(event.data.value).format('YYYY-MM-DD HH:mm');\n `,i.body[0].onEvent.change=e(c);break;case"boolean":c=`\n _display["${r.name}"] = event.data.value?"√":"";\n `,i.body[0].onEvent.change=e(c);break;case"number":case"currency":c=`\n _display["${r.name}"] = event.data.value && event.data.value.toFixed(${r.scale});\n `,i.body[0].onEvent.change=e(c);break;case"file":var u="";r.multiple?(c=`\n _display["${r.name}"].push({\n "name": event.data.result.name,\n "url": event.data.result.url,\n "value": event.data.result.value,\n "_id": event.data.result.value,\n "type": event.data.item.type,\n "size": event.data.item.size\n });\n `,u=`\n _.remove(_display["${r.name}"], function(file){return file.url == event.data.item.url});\n `):(c=` \n _display["${r.name}"] = {\n "name": event.data.result.name,\n "url": event.data.result.url,\n "value": event.data.result.value,\n "_id": event.data.result.value,\n "type": event.data.item.type,\n "size": event.data.item.size\n };\n `,u=`\n if(_display["${r.name}"].url == event.data.item.url){\n _display["${r.name}"] = {};\n }\n `),i.body[0].onEvent.success=e(c),i.body[0].onEvent.remove=e(u);break;case"avatar":case"image":i.body[0].receiver.adaptor=`\n const superData = (typeof context != 'undefined') ? context : api.body; \n const { context:pageContext } = superData; \n var rootUrl = pageContext.rootUrl + "/api/files/${r.type}s/";\n payload = {\n status: response.status == 200 ? 0 : response.status,\n msg: response.statusText,\n data: {\n value: rootUrl + payload._id,//为了实现图片crud的回显,需要将value从id改为url,当保存数据数据时,再在发送适配器内重新将id提取出来\n name: payload.original.name,\n url: rootUrl + payload._id,\n }\n }\n return payload;\n `}i.body[0].visibleOn="${quickedit_record_permissions.allowEdit && quickedit_record_permissions_loading == false}",i.body.push({type:"service",body:[{type:"tpl",tpl:instance.t("frontend_records_no_allowedit"),visibleOn:"${!quickedit_record_permissions.allowEdit && quickedit_record_permissions_loading == false}"},{type:"spinner",showOn:"${quickedit_record_permissions_loading}"}],onEvent:{init:{actions:[{actionType:"custom",script:`\n crudScoped = event.context.scoped.getComponentById('${n.crudId}');\n const selectedItems = crudScoped && crudScoped.control.getSelected();\n doAction({\n "componentId": "${a}",\n "actionType": "setValue",\n "args": {\n "value": {\n selectedItems\n }\n }\n });\n `},{actionType:"setValue",componentId:a,args:{value:{quickedit_record_permissions_loading:!0}}},{actionType:"ajax",args:{api:{url:"${context.rootUrl}/service/api/@${objectName}/recordPermissions/${_id}",method:"get",headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"},cache:3e4,messages:{failed:"失败了呢。。"}}},expression:"${!recordPermissions.modifyAllRecords}"},{actionType:"setValue",componentId:a,args:{value:{quickedit_record_permissions_loading:!1}}},{actionType:"setValue",componentId:a,args:{value:{quickedit_record_permissions:"${recordPermissions.modifyAllRecords ? {'allowEdit': true} : event.data}"}}}]}}}),"avatar"!=r.type&&"image"!=r.type&&"file"!=r.type&&o&&i.body.push({name:"isBatchEdit",type:"checkbox",option:[{type:"tpl",tpl:"更新${COUNT(selectedItems)}个选定记录"},{type:"spinner",showOn:"${batchPermissionLoading}",size:"sm",className:"mr-4"}],visibleOn:"${ARRAYSOME(selectedItems, item => item._id === _id) && COUNT(selectedItems)>1 && quickedit_record_permissions.allowEdit && quickedit_record_permissions_loading == false}",disabledOn:"${batchPermissionLoading}",onEvent:{change:{actions:[{actionType:"setValue",componentId:a,args:{value:{batchPermissionLoading:!0}},expression:"${event.data.value}"},{actionType:"ajax",args:{api:{url:"${context.rootUrl}/graphql",method:"post",headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"},data:{query:'{rows:${objectName}(filters:["_id","in",${selectedItems | pick:_id | split | json}]){_id,_permissions{allowEdit}}}'},adaptor:"\n const noPermission = [];\n payload.data.rows.forEach(function (row) {\n if(!row._permissions.allowEdit){\n noPermission.push(row._id);\n }\n })\n payload.data.noPermission = noPermission;\n return payload;\n "}},expression:"${event.data.value && !recordPermissions.modifyAllRecords}"},{actionType:"setValue",componentId:a,args:{value:{batchPermissionLoading:!1}},expression:"${event.data.value}"},{actionType:"dialog",dialog:{title:"记录权限",showCloseButton:!1,body:[{type:"tpl",tpl:"当前选中记录中,有${COUNT(noPermission)}条记录无编辑权限,是否需要批量编辑其他记录?"}],onEvent:{confirm:{actions:[{actionType:"custom",script:`\n const noPermission = event.data.noPermission;\n const crudComponent = event.context.scoped.getComponentById("${n.crudId}");\n let selectedItems = crudComponent && crudComponent.props.store.selectedItems.concat();\n noPermission.forEach(function (item) {\n crudComponent && crudComponent.unSelectItem(_.find(selectedItems,{_id:item}));\n _.remove(selectedItems, (selected) => selected._id === item);\n })\n doAction({\n "componentId": "${a}",\n "actionType": "setValue",\n "args": {\n "value": {\n selectedItems\n }\n }\n });\n `},{actionType:"setValue",componentId:a,args:{value:{isBatchEdit:!0}}}]},cancel:{actions:[{actionType:"setValue",componentId:a,args:{value:{isBatchEdit:!1}}}]}}},expression:"${COUNT(event.data.noPermission)>0}"}]}}})}else i=!1;"lookup"!=r.type||o||(i=!1),"file"==r.type&&r.multiple&&(i=!1),"location"==r.type&&(i=!1),"color"==r.type&&(i={type:"input-color"})}return i}function getFieldWidth(e){const t=null;return"string"==typeof e?isNaN(e)?e||t:Number(e)||t:"number"==typeof e?e:t}async function getColumnItemOnClick(e,t){let n=t.objectName;e.is_name||e.name===t.labelFieldName||(n=e.reference_to);const r=await getPage({type:"record",appId:t.appId,objectName:n,formFactor:t.formFactor}),o=r?Object.assign({},r.schema,{recordId:`\${${t.idFieldName}}`,data:{...r.schema.data,_inDrawer:!0,recordLoaded:!1,recordId:`\${${t.idFieldName}}`,_lookupObjectName:t.objectName}}):{type:"steedos-record-detail",objectApiName:"${objectName}",recordId:`\${${t.idFieldName}}`,showBackButton:!1,showButtons:!0,data:{_inDrawer:!0,recordLoaded:!1,_lookupObjectName:t.objectName}};return e.is_name||e.name===t.labelFieldName||(o.objectApiName=e.reference_to,o.recordId=`\${_display.${e.name}.value}`),{click:{actions:[{actionType:"drawer",drawer:{type:"drawer",title:"&nbsp;",headerClassName:"hidden",size:"lg",width:window.drawerWidth||"70%",bodyClassName:"p-0 m-0 bg-gray-100",closeOnEsc:!0,closeOnOutside:!0,resizable:!0,actions:[],body:[o],className:"steedos-record-detail-drawer app-popover",id:"u:fc5f055afa8c"},preventDefault:!0}]}}}async function getTableColumns(e,t,n){const r=[];n.isLookup||n.isInputTable||n.enable_tree||r.push({name:"_index",type:"text",width:32,placeholder:""});const o=n.permissions?.allowEdit&&!n.isLookup&&0!=n.enable_inline_edit;for(const a of t){if(a.hidden||a.extra)continue;const t=o?await getQuickEditSchema(e,a,n):o;let i=`steedos-table-${a.type}-field`;"Safari"===getBowserType()||1!=a.wrap?i+=" whitespace-nowrap ":i+=" break-words ","object"==typeof a.amis?.className?i={[i]:"true",...a.amis.className}:"string"==typeof a.amis?.className&&(i=`${i} ${a.amis.className} `);let s,l=lodash.exports.clone(a.amis);delete l?.className;let c=!!(window&&window.nw&&window.nw.require);if((a.is_name||a.name===n.labelFieldName)&&"cms_files"===n.objectName&&c){const e=`\n var data = event.data;\n var file_name = data.versions ? data.name : "${a.label}";\n var file_id = data.versions && data.versions[0] && data.versions[0]._id;\n window.previewFile && window.previewFile({file_name, file_id});\n `;s=Object.assign({},{type:"button",label:`<%=data.versions ? data.name : "${a.label}"%>`,className:i,level:"link",onEvent:{click:{actions:[{args:{},actionType:"custom",script:e,expression:"!!(window && window.nw && window.nw.require)"}]}}},l)}else if("toggle"===a.type)s=Object.assign({},{type:"switch",name:a.name,label:a.label,width:getFieldWidth(a.width),toggled:a.toggled,static:!0,className:i},l,{name:a.name});else if("avatar"===a.type||"image"===a.type||"file"===a.type)s=Object.assign({},{type:"switch",name:a.name,label:a.label,width:getFieldWidth(a.width),toggled:a.toggled,static:!0,className:i,...await getAmisFileReadonlySchema(a)},l);else if("select"===a.type){const e=getSelectMap(a.options);s=Object.assign({},{type:"static-mapping",name:a.name,label:a.label,map:e,sortable:a.sortable,width:getFieldWidth(a.width),toggled:a.toggled,className:i,inputClassName:"inline",static:!0},l,{name:a.name})}else if("lookup"===a.type||"master_detail"===a.type)s=Object.assign({},{type:"static-wrapper",name:a.name,label:a.label,sortable:a.sortable,width:getFieldWidth(a.width),toggled:a.toggled,className:i,size:"none",inputClassName:"inline",body:{type:"steedos-field",static:!0,isLookupInTable:!0,config:{type:"lookup",reference_to:a.reference_to,name:a.name,is_name:a.is_name,label:null,multiple:a.multiple,amis:Object.assign({},l,{label:null})}}},l,{name:a.name});else{const e=await getFieldTpl(a,n);let t="static-text";if(e?t="static":"html"===a.type?t="static-markdown":"url"===a.type&&(t=a.show_as_qr?"static-qr-code":"input-url"),"textarea"===a.type&&(i+="min-w-56"),!a.hidden&&!a.extra){s=Object.assign({},{name:a.name,label:a.label,sortable:a.sortable,width:getFieldWidth(a.width),type:t,tpl:e,toggled:a.toggled,className:i,inputClassName:"inline",static:!0,options:"html"===a.type?{html:!0}:null},l,{name:a.name}),"color"===a.type&&(s.type="color",s.defaultColor=null);let r=!1;r=n.isRelated&&(a.is_name||a.name===n.labelFieldName),window.innerWidth>=768&&r&&(s.onEvent=await getColumnItemOnClick(a,n))}}s&&(t&&(s.quickEdit=t,s.quickEditEnabledOn="${is_system !== true}"),s.id=`${n.objectName}_${a.name}_\${_index}`,r.push(s))}if(!n.isLookup&&!n.isInputTable&&!lodash.exports.some(r,{name:n.labelFieldName})){const e=Router.getObjectDetailPath({...n,formFactor:n.formFactor,appId:"${appId}",objectName:n.objectName||"${objectName}",recordId:`\${${n.idFieldName}}`});r[0].type="tpl",r[0].tpl=`<a href="${e}">\${${r[0].name}}</a>`}return r}function getMobileLines(e){let t=[],n=[],r=!1,o=!0,a="",i="flex items-center justify-between mb-1";return e.forEach((function(e){var s;r&&t.length<3&&(t.push({type:"wrapper",body:n,size:"none",className:i}),n=[]),o?(a="steedos-listview-item-left truncate",e.field.is_wide&&(a="steedos-listview-item-wide"),0===t.length&&(a+=" font-bold text-gray-800")):a="steedos-listview-item-right truncate ml-2 flex flex-shrink-0",s="object"==typeof e.field.amis?.className?{[a]:"true",...e.field.amis.className}:"string"==typeof e.field.amis?.className?`${a} ${e.field.amis.className} `:a,n.push({type:"tpl",tpl:e.tpl,className:s}),e.field.is_wide?(o=!0,r=!0):(o=!o,r=o)})),n.length&&t.length<3&&t.push({type:"wrapper",body:n,size:"none",className:i}),t}async function getMobileTableColumns(e,t){const n=[];let r={},o=[];for(const n of e){let e="";n.is_name||n.name===t.labelFieldName?(r=n,t=Object.assign({},t,{onlyDisplayLookLabel:!0}),e=await getFieldTpl(n,t)):"avatar"===n.type||"image"===n.type||"file"===n.type?e=`\${_display.${n.name}.name}`:("lookup"!==n.type&&"master_detail"!==n.type||(t=Object.assign({},t,{onlyDisplayLookLabel:!0})),e=await getFieldTpl(n,t)),e||(e=`\${${n.name}}`),n.hidden||n.extra||o.push({field:n,tpl:e})}const a=getNameTplUrl(r,t),i=getMobileLines(o);let s={name:r.name,label:"split"==t.displayAs?"":r.label,sortable:r.sortable,type:"button",level:"link",actionType:"link",link:a,innerClassName:{"steedos-listview-item block text-gray-500":"true","max-w-[360px]":"${display == 'split'}"},body:{type:"wrapper",body:i,size:"none",className:"p-1"}};return"cms_files"===t.objectName&&(s=window.Meteor?.isCordova?{...s,actionType:"",link:"",onEvent:{click:{actions:[{script:'\n let cms_url = \'\';\n let value = event.data.versions[0];\n if(value){\n if(value.url){\n cms_url = value.url;\n }else{\n cms_url = Steedos.absoluteUrl("/api/files/files/"+value+"?download=true");\n }\n }\n Steedos.cordovaDownload(encodeURI(cms_url), event.data.name);\n ',actionType:"custom"}],weight:0}}}:{...s,actionType:"",link:"",onEvent:{click:{actions:[{actionType:"link",args:{link:a}}],weight:0}}}),n.push(s),n}function getDefaultParams$1(e){return{perPage:e.top||e.perPage||config.listView.perPage}}function getButtonVisibleOn$1(e){let t=e.visible;if(e._visible&&(t=e._visible),lodash.exports.isBoolean(t)&&(t=t.toString()),t){if(t.trim().startsWith("function")){t=t.replace("function","function __visible");return`(function _visible(){try{return (${t})(objectName, typeof _id === 'undefined' ? null: _id, typeof record === 'undefined' ? (typeof recordPermissions === 'undefined' ? {} : recordPermissions) : record.recordPermissions, data)}catch(e){console.error(e)}})()`}return t}if("amis_button"===e.type){const t=e.amis_schema;if(t&&t.body&&t.body.length>0){return t.body[0].visibleOn}}}async function getTableOperation(e){const t=e.buttons,n=[];if(lodash.exports.each(t,(e=>{lodash.exports.isBoolean(e.visible)&&(e.visible=e.visible.toString()),n.push({type:"steedos-object-button",name:e.name,objectName:e.objectName,visibleOnAlias:getButtonVisibleOn$1(e),className:"antd-Button--default"})})),!(n.length<1))return{type:"operation",label:"&nbsp;",fixed:"right",labelClassName:"text-center",className:"text-center steedos-listview-operation w-10 is-sticky is-sticky-right is-sticky-first-right",buttons:[{type:"steedos-dropdown-button",label:"xxx",buttons:n,placement:"bottomRight",overlayClassName:"border rounded !min-w-[160px]",trigger:["click"],id:"u:c2140a365019",onOpenApi:{url:"${context.rootUrl}/service/api/@${objectName}/recordPermissions/${_id}",method:"get",requestAdaptor:"api.data={}; return api;",headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"},adaptor:"\n payload = {\n record: {\n recordPermissions: payload\n }\n };\n return payload;\n "}}]}}async function getDefaultCrudCard(e,t){let n,r=t?.labelFieldName||"name",o=[];e.forEach((function(e){delete e.quickEdit,delete e.width,e.name===r?n=e:"_index"!==e.name&&o.push(e)}));let a={header:{title:n.tpl},body:o,toolbar:[]};if(!("SMALL"===t.formFactor||["split"].indexOf(t.displayAs)>-1)){let e=await getTableOperation(t);e&&(e.className+=" inline-block w-auto"),a.toolbar.push(e)}return a}async function getTableSchema$1(e,t,n){n||(n={});let{isLookup:r,hiddenColumnOperation:o}=n;const a=n.defaults,i=a&&a.listSchema||{};let s=[],l="SMALL"===n.formFactor||["split"].indexOf(n.displayAs)>-1;if(r&&(l=!1),i.mode&&"table"!==i.mode&&(l=!1),l)s=await getMobileTableColumns(t,n);else{if(s=await getTableColumns(e,t,n),"cards"===i.mode){let e=i.card;return e||(e=await getDefaultCrudCard(s,n)),{mode:"cards",perPageAvailable:[20,50,100,500],name:"thelist",headerToolbarClassName:"py-2 px-2 border-gray-300 border-solid border-b",className:"",draggable:!1,card:e,syncLocation:!1,keepItemSelectionOnPageChange:!0,checkOnItemClick:!!r,labelTpl:`\${${n.labelFieldName}}`,autoFillHeight:!1,columnsTogglable:!1,...getDefaultParams$1(n)}}if(!r&&!o){const e=await getTableOperation(n);s.push(e)}}const c={};return n.enable_tree&&(c.expandConfig={expand:"first"}),{mode:"table",perPageAvailable:[20,50,100,500],name:"thelist",headerToolbarClassName:"py-2 px-2 border-gray-300 border-solid border-b",className:"",draggable:!1,columns:s,syncLocation:!1,keepItemSelectionOnPageChange:!0,checkOnItemClick:!!r,labelTpl:`\${${n.labelFieldName}}`,autoFillHeight:!1,columnsTogglable:!1,...c,...getDefaultParams$1(n)}}function getScriptForAddUrlPrefixForImgFields(e,t){let n=[],r={};return e.forEach((e=>{lodash.exports.includes(["image","avatar"],e.type)&&(n.push(e.name),r[e.name]={name:e.name,type:e.type,multiple:e.multiple})})),n.length?`\n // image字段值添加URL前缀\n let imgFieldsKeys = ${JSON.stringify(n)};\n let imgFields = ${JSON.stringify(r)};\n imgFieldsKeys.forEach((item)=>{\n let imgFieldValue = data[item];\n let imgFieldDisplayValue = data._display && data._display[item];\n if(imgFieldValue && imgFieldValue.length){\n let fieldProps = imgFields[item];\n if(fieldProps.multiple){\n if(imgFieldDisplayValue instanceof Array){\n data[item] = imgFieldDisplayValue.map((i)=>{ \n const url = window.getImageFieldUrl(i.url, ${t});\n return url;\n });\n }\n }else{\n const url = imgFieldDisplayValue && window.getImageFieldUrl(imgFieldDisplayValue.url, ${t});\n data[item] = url;\n }\n }\n })\n `:""}"undefined"!=typeof window&&("en-us"==window.Builder?.settings.locale?locale="en-US":"zh-cn"==window.Builder?.settings.locale&&(locale="zh-CN")),instance.use(initReactI18next).init({resources:resources,lng:locale,interpolation:{escapeValue:!1}});var __assign=function(){return __assign=Object.assign||function(e){for(var t,n=1,r=arguments.length;n<r;n++)for(var o in t=arguments[n])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e},__assign.apply(this,arguments)};function createObject(e,t,n){e&&Object.isFrozen(e)&&(e=cloneObject(e));var r=e?Object.create(e,__assign(__assign({},n),{__super:{value:e,writable:!1,enumerable:!1}})):Object.create(Object.prototype,n);return t&&isObject(t)&&Object.keys(t).forEach((function(e){return r[e]=t[e]})),r}function cloneObject(e,t){void 0===t&&(t=!0);var n=e&&e.__super?Object.create(e.__super,{__super:{value:e.__super,writable:!1,enumerable:!1}}):Object.create(Object.prototype);return t&&e&&Object.keys(e).forEach((function(t){return n[t]=e[t]})),n}function isObject(e){var t=typeof e;return e&&"string"!==t&&"number"!==t&&"boolean"!==t&&"function"!==t&&!Array.isArray(e)}async function getListBody(e,t){const n=[];for(const r of e){const e=await getFieldTpl(r,t);let o="text";e&&(o="tpl"),r.hidden||r.extra||n.push({name:r.name,label:r.label,sortable:r.sortable,width:r.width,type:o,tpl:e,toggled:r.toggled})}return{type:"hbox",columns:n}}function getDefaultParams(e){return{perPage:e.top||e.perPage||20}}async function getListSchema$1(e,t){return{mode:"list",name:"thelist",draggable:!1,headerToolbar:["reload"],syncLocation:!1,keepItemSelectionOnPageChange:!0,checkOnItemClick:!1,labelTpl:"${name}",listItem:{body:[...(await getListBody(e,t)).columns],actions:!1===t.actions?null:[{icon:"fa fa-eye",label:instance.t("frontend_form_view"),type:"button",actionType:"link",link:Router.getObjectDetailPath({formFactor:t.formFactor,appId:t.appId,objectName:t.tabId,listView:t.listView,recordId:"${_id}"})}]},...getDefaultParams(t)}}"function"==typeof SuppressedError&&SuppressedError;const getSchema$5=async(e,t)=>{const n=`\n let formSchema = {\n "type": "steedos-object-form",\n "label": "对象表单",\n "objectApiName": "\${objectName}",\n "recordId": "",\n "mode": "edit",\n };\n\n if (payload && payload.schema) {\n formSchema = _.isString(payload.schema) ? JSON.parse(payload.schema) : payload.schema;\n }\n\n const fields = ${JSON.stringify(e.fields)};\n const selectedRowResponseResult = api.body.selectedRowResponseResult;\n let defaultData = {}; \n\n if(!_.isEmpty(selectedRowResponseResult)){\n const fieldsKeys = _.keys(fields);\n // 如果新建记录时复制的数据中有omit或其他不相关字段数据时不应该一起保存到数据库,\n // 原规则见:https://github.com/steedos/steedos-frontend/issues/297\n _.forEach(selectedRowResponseResult, (val, key) => {\n if (fieldsKeys.indexOf(key) > -1 && fields[key].omit !== true && key != 'owner') {\n defaultData[key] = val;\n }\n })\n }\n\n const _master = api.body._master;\n if(_master && _master._isRelated){\n const relatedKey = _master.relatedKey;\n const masterObjectName = _master.objectName;\n const recordId = _master.recordId || _master.record._id;\n let relatedKeySaveValue = recordId;\n const relatedField = fields[relatedKey];\n if(relatedField && relatedField.reference_to_field && relatedField.reference_to_field !== '_id'){\n relatedKeySaveValue = _master.record[relatedField.reference_to_field];\n }\n let relatedKeyValue; \n if(relatedField && !_.isString(relatedField.reference_to)){\n relatedKeyValue = { o: masterObjectName, ids: [relatedKeySaveValue] };\n }else if (relatedField && relatedField.multiple) {\n relatedKeyValue = [relatedKeySaveValue];\n } else {\n relatedKeyValue = relatedKeySaveValue;\n }\n defaultData[relatedKey]=relatedKeyValue;\n }\n\n if(!_.isEmpty(defaultData)){\n if(payload.schema){\n // 表单微页面第一层要求是page\n formSchema.data.defaultData = defaultData;\n }else{\n formSchema.defaultData = defaultData;\n }\n }\n return {\n data: formSchema\n };\n `;return{type:"service",body:[{type:"button",level:"primary",label:instance.t("frontend_form_new"),id:"u:standard_new",onEvent:{click:{weight:0,actions:[{actionType:"custom",script:"\n const isLookup = event.data.isLookup;\n if(isLookup){\n // lookup弹出窗口的新建功能不需要支持复制新建\n return;\n }\n const uiSchema = event.data.uiSchema;\n const objectName = event.data.objectName;\n const crudId = event.data.crudId || \"listview_\" + objectName;\n const listViewRef = event.context.scoped.getComponentById(crudId);\n const selectedItems = listViewRef && listViewRef.props.store.toJSON().selectedItems || [];\n event.data.selectedIds = _.map(selectedItems, uiSchema.idFieldName || '_id');\n "},{actionType:"ajax",outputVar:"selectedRowResponseResult",args:{api:{url:"${context.rootUrl}/api/v1/${uiSchema.name}/${selectedIds|first}",method:"get"}},expression:"${selectedIds.length > 0}"},{actionType:"dialog",dialog:{type:"dialog",data:{$master:"$$",_master:"${_master}","_master._isRelated":"${_isRelated}","_master.relatedKey":"${relatedKey}",appId:"${appId}",objectName:"${objectName}",context:"${context}",global:"${global}",listViewId:"${listViewId}",displayAs:"${displayAs}",uiSchema:"${uiSchema}",isLookup:"${isLookup}",listName:"${listName}",selectedRowResponseResult:"${selectedRowResponseResult}",_lookupObjectName:"${_lookupObjectName}"},title:instance.t("frontend_form_new")+" ${uiSchema.label | raw}",body:[{type:"service",id:"u:1678e148c4d2",messages:{},schemaApi:{data:{isLookup:"${isLookup}",_master:"${_master}",url:"${context.rootUrl}/api/pageSchema/form?app=${appId}&objectApiName=${objectName}&formFactor=${formFactor}",selectedRowResponseResult:"${selectedRowResponseResult}"},url:"${context.rootUrl}/api/pageSchema/form?app=${appId}&objectApiName=${objectName}&formFactor=${formFactor}",method:"get",messages:{},headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"},requestAdaptor:"return { ...api, url: api.body.url }",adaptor:n}}],showCloseButton:!0,id:"u:e11347411d2d",closeOnEsc:!1,closeOnOutside:!1,size:"lg",actions:[{type:"button",actionType:"cancel",label:instance.t("frontend_form_cancel"),className:"form-btn-cancel"},{type:"button",label:instance.t("frontend_form_save_and_new"),actionType:"confirm",close:!1,id:"confirmAndNew",className:"form-btn-save_and_new"},{type:"button",actionType:"confirm",label:instance.t("frontend_form_save"),primary:!0,className:"form-btn-save"}]}}]}}}],regions:["body"],className:"p-0 border-0",id:"u:aef99d937b10"}};async function getObjectFieldsFilterFormSchema(e){e||(e={});return{type:"service",visibleOn:"this.filterFormSearchableFields && this.filterFormSearchableFields.length",className:"SMALL"===e.formFactor?"slds-filters__body p-0 mb-2 overflow-y-auto overflow-x-hidden":"slds-filters__body p-0 sm:grid sm:gap-4 sm:grid-cols-2 lg:grid-cols-3 xl:grid-cols-4 p-1",style:{"max-height":"SMALL"===e.formFactor?"30vh":"unset"},schemaApi:{method:"post",data:{$self:"$$",query:""},url:"/api/amis/health_check?reload=${filterFormSearchableFields|join}",adaptor:`\n if(payload.errors){\n payload.status = 2;\n payload.msg = window.t ? window.t(payload.errors[0].message) : payload.errors[0].message;\n }\n const selfData = api.body.$self;\n const uiSchema = selfData.uiSchema;\n const fields = uiSchema.fields;\n const filterFormSearchableFields = (selfData.filterFormSearchableFields || []).filter(function(item){\n return !!fields[item]\n });\n const resolveAll = function(values){\n payload.data = {\n "body": values\n };\n return payload;\n }\n\n const rejectAll = function(){\n console.warn("run function getFieldSearchable failed.");\n }\n\n return Promise.all(filterFormSearchableFields.map(function (item) {\n const field = _.clone(fields[item]);\n if (\n field && window.isFieldTypeSearchable(field.type)\n ) {\n var ctx = ${JSON.stringify(e)};\n const amisField = window.getFieldSearchable(field, fields, ctx);\n return amisField;\n }\n })).then(resolveAll, rejectAll);\n `,headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}}}}async function getObjectFieldsFilterBarSchema(e,t){t||(t={});const n=t.searchable_fields,r=!!t.auto_open_filter,o="btn_filter_form_search_"+(new Date).getTime(),a=await getObjectFieldsFilterFormSchema(t),i=t.keywordsSearchBoxName||"__keywords",s=`\n let isLookup = event.data.isLookup;\n let __lookupField = event.data.__lookupField;\n const scope = event.context.scoped;\n let crud = SteedosUI.getClosestAmisComponentByType(scope, "crud");\n var filterForm = scope.parent.parent.getComponents().find(function(n){\n return n.props.type === "form";\n });\n // 使用filterForm.getValues()的话,并不能拿到本地存储中的过滤条件,所以需要从event.data中取,因为本地存储中的过滤条件自动填充到表单上时filterForm.getValues()拿不到。\n let filterFormValues = event.data;\n filterFormValues = JSON.parse(JSON.stringify(filterFormValues)); //只取当层数据域中数据,去除__super层数据\n const changedFilterFormValues = _.pickBy(filterFormValues, function(n,k){return /^__searchable__/.test(k);});\n // 同步__changedFilterFormValues中的值\n // crud && crud.setData({__changedFilterFormValues: {}});\n let __changedFilterFormValuesKey = "__changedFilterFormValues";\n if(isLookup && __lookupField){\n let lookupTag = "__lookup__" + __lookupField.name + "__" + __lookupField.reference_to;\n if(__lookupField.reference_to_field){\n lookupTag += "__" + __lookupField.reference_to_field;\n }\n __changedFilterFormValuesKey += lookupTag;\n }\n if(crud){\n let crudData = crud.getData();\n crudData[__changedFilterFormValuesKey] = changedFilterFormValues;\n crud.setData(crudData);\n }\n filterForm.handleFormSubmit(event);\n // var filterFormValues = filterForm.getValues();\n // var listView = scope.parent.parent.parent.getComponents().find(function(n){\n // return n.props.type === "crud";\n // });\n // const removedValues = {};\n // // 设置搜索项中移除搜索项后,filterFormValues未把其字段的空值保存为own property,即hasOwnProperty属性中\n // // 这会造成handleFilterSubmit时把移除掉的搜索项字段之前的值加到过滤条件中\n // for(var k in filterFormValues){\n // if(filterFormValues[k] === "" && !filterFormValues.hasOwnProperty(k)){\n // removedValues[k] = null;\n // }\n // }\n // listView.handleFilterSubmit(Object.assign({}, removedValues, filterFormValues));\n // 点击搜索的时候自动收起搜索栏\n //触发amis crud 高度重算\n doAction({\n "actionType": "broadcast",\n "args": {\n "eventName": "@height.changed.${e.name}"\n },\n "data": {\n "timeOut": 500\n }\n });\n const filterService = filterForm.context.getComponents().find(function(n){\n return n.props.type === "service";\n });\n let showFieldsFilter = true;\n // const isMobile = window.innerWidth < 768;\n // if(event.data.__from_fields_filter_settings_confirm){\n // // 如果是从设置搜索项点击确认按钮触发的搜索事件不应该自动关闭搜索栏\n // showFieldsFilter = true;\n // }\n // else if(isMobile){\n // // 如果是手机端,点击搜索后自动关闭搜索栏\n // showFieldsFilter = false;\n // }\n // else if(event.data.displayAs === "split") {\n // // PC上分栏模式下的列表,始终按手机上效果处理,即自动关闭搜索栏\n // showFieldsFilter = false;\n // }\n // else if(window.innerHeight >= 1200){\n // // 高分辨率屏幕(2k+),列表高度比较高,没必要自动关闭搜索栏\n // showFieldsFilter = true;\n // }\n filterService.setData({showFieldsFilter});\n // resizeWindow();//已迁移到搜索栏表单提交事件中执行,因为表单项change后也会触发表单提交了\n let isFieldsFilterEmpty = SteedosUI.isFilterFormValuesEmpty(filterFormValues);\n let crudService = crud && SteedosUI.getClosestAmisComponentByType(crud.context, "service", {name: "service_object_table_crud"});\n crudService && crudService.setData({isFieldsFilterEmpty, showFieldsFilter});\n `,l=`\n // console.log("===onCancelScript=form==");\n let isLookup = event.data.isLookup;\n let __lookupField = event.data.__lookupField;\n const scope = event.context.scoped;\n var filterForm = scope.parent.parent.getComponents().find(function(n){\n return n.props.type === "form";\n });\n var filterFormValues = filterForm.getValues();\n let crud = SteedosUI.getClosestAmisComponentByType(scope, "crud");\n const removedValues = {};\n for(var k in filterFormValues){\n if(/^__searchable__/.test(k)){\n removedValues[k] = null;\n }\n }\n if(!event.data.isLookup){\n // 刷新浏览器后,filterFormValues值是空的,只能从本地存储中取出并重置为空值\n const listName = event.data.listName;\n const listViewPropsStoreKey = location.pathname + "/crud";\n let localListViewProps = sessionStorage.getItem(listViewPropsStoreKey);\n if(localListViewProps){\n localListViewProps = JSON.parse(localListViewProps);\n for(var k in localListViewProps){\n if(/^__searchable__/.test(k)){\n removedValues[k] = null;\n }\n }\n }\n }\n else{\n const keywordsSearchBoxName = "${i}";\n //lookup字段保留快速搜索条件\n removedValues[keywordsSearchBoxName] = filterFormValues[keywordsSearchBoxName];\n }\n filterForm.setValues(removedValues);//会把表单提交到toolbar的快速搜索区域,造成在快速搜索框中触发搜索时再次把搜索表单中的字段值清除掉的bug,已单独在快速搜索框那边添加搜索事件代码处理过了\n // 以下方法都无法实现清除表单值\n // filterForm.setValues({}, true)\n // filterForm.reset();\n // filterForm.handleAction({},{\n // "actionType": "setValue",\n // "args": {\n // "value": removedValues\n // }\n // });\n // 下面触发clear动作可以清除表单值,且不会把表单提交到toolbar的快速搜索区域,但是会把金额等范围字段清空成非范围字段\n // filterForm.handleAction({},{\n // "actionType": "clear"\n // });\n\n // 清除__changedFilterFormValues中的值\n // crud && crud.setData({__changedFilterFormValues: {}});\n let __changedFilterFormValuesKey = "__changedFilterFormValues";\n if(isLookup && __lookupField){\n let lookupTag = "__lookup__" + __lookupField.name + "__" + __lookupField.reference_to;\n if(__lookupField.reference_to_field){\n lookupTag += "__" + __lookupField.reference_to_field;\n }\n __changedFilterFormValuesKey += lookupTag;\n }\n if(crud){\n let crudData = crud.getData();\n crudData[__changedFilterFormValuesKey] = {};\n crud.setData(crudData);\n }\n filterForm.handleFormSubmit(event);\n // crud.handleFilterSubmit(removedValues);\n\n let filterFormService = SteedosUI.getClosestAmisComponentByType(filterForm.context, "service");\n filterFormService.setData({showFieldsFilter: !!!filterFormService.props.data.showFieldsFilter});\n //触发amis crud 高度重算\n doAction({\n "actionType": "broadcast",\n "args": {\n "eventName": "@height.changed.${e.name}"\n },\n "data": {\n "timeOut": 100\n }\n });\n \n // 移除搜索按钮上的红点\n // let crudService = scope.getComponentById("service_listview_" + event.data.objectName);\n let crudService = crud && SteedosUI.getClosestAmisComponentByType(crud.context, "service", {name: "service_object_table_crud"});\n crudService && crudService.setData({isFieldsFilterEmpty: true, showFieldsFilter: false});\n `,c=t.filter_form_data,u=`\n const searchableFields = ${JSON.stringify(n)};\n const autoOpenFilter = ${r};\n const objectName = data.objectName;\n const isLookup = data.isLookup;\n const listName = data.listName;\n let searchableFieldsStoreKey = location.pathname + "/searchable_fields";\n if(isLookup){\n searchableFieldsStoreKey += "/lookup/" + objectName;\n }\n searchableFieldsStoreKey = searchableFieldsStoreKey + "/" + (data.context && data.context.userId);\n let defaultSearchableFields = localStorage.getItem(searchableFieldsStoreKey);\n if(defaultSearchableFields){\n defaultSearchableFields = defaultSearchableFields.split(",");\n }\n if(_.isEmpty(defaultSearchableFields) && searchableFields){\n if(searchableFields.length){\n defaultSearchableFields = _.map(searchableFields, 'field');\n }\n }\n if(_.isEmpty(defaultSearchableFields) && data.uiSchema){\n let listView = data.uiSchema.list_views[data.listName];\n const sFields = listView && listView.searchable_fields;\n if(sFields && sFields.length){\n defaultSearchableFields = _.map(sFields, 'field');\n }\n }\n if(_.isEmpty(defaultSearchableFields) && data.uiSchema){\n defaultSearchableFields = _.map(\n _.sortBy(_.filter(_.values(data.uiSchema.fields), (field) => {\n return field.filterable;\n }), "sort_no"),\n "name"\n );\n }\n setData({ filterFormSearchableFields: defaultSearchableFields });\n if(isLookup){\n let filterFormValues = ${_.isObject(c)?JSON.stringify(c):'"'+c+'"'} || {};\n const isAmisFormula = typeof filterFormValues === "string" && filterFormValues.indexOf("\${") > -1;\n if (isAmisFormula){\n filterFormValues = AmisCore.evaluate(filterFormValues, data) || {};\n }\n if (_.isObject(filterFormValues) || !_.isEmpty(filterFormValues)){\n let fields = data.uiSchema && data.uiSchema.fields;\n filterFormValues = SteedosUI.getSearchFilterFormValues(filterFormValues, fields);\n setData({ ...filterFormValues });\n }\n // looup字段过滤器不在本地缓存记住过滤条件,所以初始始终隐藏过滤器\n setData({ showFieldsFilter: autoOpenFilter });\n }\n else{\n const listViewPropsStoreKey = location.pathname + "/crud";\n let localListViewProps = sessionStorage.getItem(listViewPropsStoreKey);\n if(localListViewProps){\n localListViewProps = JSON.parse(localListViewProps);\n let filterFormValues = _.pickBy(localListViewProps, function(n,k){\n return /^__searchable__/g.test(k);\n });\n if(!_.isEmpty(filterFormValues)){\n setData({ ...filterFormValues });\n const omitedEmptyFormValue = _.omitBy(filterFormValues, function(n){\n return _.isNil(n) \n || (_.isObject(n) && _.isEmpty(n)) \n || (_.isArray(n) && _.isEmpty(n.filter(function(item){return !_.isNil(item)})))\n || (_.isString(n) && n.length === 0);\n });\n // 有过滤条件时只显示搜索按钮上的红点,不自动展开搜索栏\n if(!_.isEmpty(omitedEmptyFormValue)){\n let scopeRef = SteedosUI.getRef(data.$scopeId);\n let crudService = scopeRef && scopeRef.parent.getComponentById("service_listview_" + data.objectName)\n crudService && crudService.setData({isFieldsFilterEmpty: false});\n // setData({ showFieldsFilter: true });//自动展开搜索栏\n }\n }\n }\n }\n `,d=`\n const data = context.props.data;\n const listName = data.listName;\n const objectName = data.objectName;\n const isLookup = data.isLookup;\n const value = data.fields;\n const scope = event.context.scoped;\n // 这里的filterForm不是name为"listview-filter-form"的内部form,而是crud自带的filter form\n const filterForm = scope.parent.parent.getComponents().find(function(n){\n return n.props.type === "form";\n });\n const filterService = filterForm.context.getComponents().find(function(n){\n return n.props.type === "service";\n });\n filterService.setData({ filterFormSearchableFields: value });\n let searchableFieldsStoreKey = location.pathname + "/searchable_fields";\n if(isLookup){\n searchableFieldsStoreKey += "/lookup/" + objectName;\n }\n searchableFieldsStoreKey = searchableFieldsStoreKey + "/" + (data.context && data.context.userId);\n localStorage.setItem(searchableFieldsStoreKey, value);\n\n // ===START===:当变更可搜索字段时,如果被移除的可搜索字段在本地存储中已经存入过滤条件中则应该清除本地存储中相关字段的过滤条件。\n const searchableFields = data.fields;\n let preSearchableFields = data.__super.fields;\n if(typeof preSearchableFields === "string"){\n preSearchableFields = preSearchableFields.split(",");\n }\n const removedFields = _.difference(preSearchableFields, searchableFields);\n\n // const getClosestAmisComponentByType = function (scope, type, name) {\n // // 递归children找到listview-filter-form\n // let re = scope.getComponents().find(function (n) {\n // return n.props.type === type && n.props.name === name;\n // });\n // if (re) {\n // return re;\n // }\n // else {\n // if (scope.children && scope.children.length) {\n // for (let i = 0; i < scope.children.length; i++) {\n // re = getClosestAmisComponentByType(scope.children[i], type, name);\n // if (re) {\n // break;\n // }\n // }\n // return re;\n // }\n \n // }\n // }\n // // 这里第二层form才是真正要提交到crud过滤条件的form\n // filterInnerForm = getClosestAmisComponentByType(filterForm.context, "form", "listview-filter-form");\n\n const filterFormValues = filterForm.getValues();\n let removedKeys = [];\n _.each(filterFormValues, function(n,k){\n // __searchable__开头的不在searchableFields范围则清除其值\n let isRemoved = !!removedFields.find(function(fieldName){\n return new RegExp("__searchable__.*" + fieldName + "$").test(k);\n });\n if(isRemoved){\n removedKeys.push(k);\n }\n });\n const removedValues = {};\n removedKeys.forEach(function(key){\n removedValues[key] = null;\n });\n filterForm.setValues(removedValues);//这里使用filterInnerForm也可以\n\n if(isLookup){\n return;\n }\n \n // 列表视图crud支持本地缓存,所以需要进一步清除浏览器本地缓存里面用户在可搜索项中移除的字段值\n const listViewPropsStoreKey = location.pathname + "/crud";\n let localListViewProps = sessionStorage.getItem(listViewPropsStoreKey);\n if(localListViewProps){\n localListViewProps = JSON.parse(localListViewProps);\n _.each(localListViewProps, function(n,k){\n // __searchable__开头的不在searchableFields范围则清除其值\n let isRemoved = !!removedFields.find(function(fieldName){\n return new RegExp("__searchable__.*" + fieldName + "$").test(k);\n });\n if(isRemoved){\n delete localListViewProps[k];\n }\n });\n sessionStorage.setItem(listViewPropsStoreKey, JSON.stringify(localListViewProps));\n }\n //触发amis crud 高度重算\n doAction({\n "actionType": "broadcast",\n "args": {\n "eventName": "@height.changed.${e.name}"\n },\n "data": {\n "timeOut": 100\n }\n });\n // ===END===\n `;return{type:"service",name:"service_listview_filter_form",data:{},dataProvider:{inited:u},body:{type:"wrapper",body:{type:"wrapper",body:[a,{type:"wrapper",body:{type:"wrapper",body:[{type:"button",level:"primary",id:o,label:instance.t("frontend_fields_filter_button_search"),icon:"fa fa-search",onEvent:{click:{actions:[{actionType:"custom",script:s}]}}},{type:"button",label:instance.t("frontend_form_reset"),name:"btn_filter_form_cancel",onEvent:{click:{actions:[{actionType:"custom",script:l}]}}},{type:"button",label:instance.t("frontend_fields_filter_button_settings"),onEvent:{click:{actions:[{actionType:"dialog",dialog:{type:"dialog",size:"md",title:instance.t("frontend_fields_filter_button_settings"),body:[{type:"form",title:"",body:[{label:"",type:"transfer",name:"fields",id:"u:92c0b3cccca0",source:{method:"get",url:"${context.rootUrl}/service/api/amis-metadata-objects/objects/${objectName}/fields/options",dataType:"json",headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"},data:{$self:"$$"},requestAdaptor:"",adaptor:"\n if(payload.errors){\n payload.status = 2;\n payload.msg = window.t ? window.t(payload.errors[0].message) : payload.errors[0].message;\n }\n const selfData = api.body.$self;\n const uiSchema = selfData.uiSchema;\n const fields = uiSchema.fields;\n const options = ((payload.data && payload.data.options) || []).filter(function(item){\n let field = fields[item.value];\n // TODO: 暂时禁用location类型字段的列表搜索\n return !!field && window.isFieldTypeSearchable(field.type) && field.type !== 'location'\n });\n payload.data = {\n \"options\": options\n };\n return payload;\n "},options:[],required:!0,placeholder:"-",className:"col-span-2 m-0",checkAll:!1,searchable:!0,sortable:!0,joinValues:!1,extractValue:!0,multiple:!0}],id:"u:e5ac506d5683",mode:"normal",persistData:!1,promptPageLeave:!0,name:"form",debug:!1,actions:[],panelClassName:"m-0",bodyClassName:"p-4",className:"steedos-amis-form"}],actions:[{type:"button",label:instance.t("frontend_form_cancel"),onEvent:{click:{actions:[{componentId:"",args:{},actionType:"closeDialog"}]}},id:"u:4e447b5ca72a"},{type:"button",label:instance.t("frontend_form_confirm"),onEvent:{click:{actions:[{actionType:"custom",script:d},{componentId:"",args:{},actionType:"closeDrawer"}]}},id:"u:14e7388fecd3",level:"primary"}],closeOnEsc:!1,closeOnOutside:!1,showCloseButton:!0,data:{"&":"$$",objectName:"${objectName}",listName:"${listName}",listViewId:"${listViewId}",uiSchema:"${uiSchema}",isLookup:"${isLookup}",context:"${context}",fields:"${filterFormSearchableFields}"}}}]}},level:"link"}],size:"xs",className:"space-x-2"},size:"xs",className:"slds-filters__footer slds-grid slds-shrink-none flex justify-between p-0"}],size:"xs",className:"slds-filters px-0"},size:"xs",className:"p-0",visibleOn:"this.showFieldsFilter"},className:"bg-white"}}const getNewListviewButtonSchema=()=>({type:"button",label:instance.t("frontend_listview_control_new_label"),className:"steedos-listview-new-button",onEvent:{click:{weight:0,actions:[{dialog:{type:"dialog",title:instance.t("frontend_listview_control_new_title"),data:{all:"${uiSchema.list_views.all}",list_view:"${uiSchema.list_views[listName]}",appId:"${appId}",global:"${global}",targetObjectName:"${objectName}",context:"${context}"},body:[{type:"steedos-object-form",label:"对象表单",objectApiName:"object_listviews",recordId:"",mode:"edit",layout:"normal",defaultData:{"&":"${list_view}",name:"",label:"",filters:"",shared:!1,object_name:"${targetObjectName}",_id:"",shared_to:null,shared_to_organizations:null,locked:!1,owner:null,company_id:null,company_ids:null,is_system:!1},fieldsExtend:fieldsExtend$5(),fields:fields$1(),onEvent:{submitSucc:{weight:0,actions:[{args:{url:"${context.rootUrl}/app/${appId}/${targetObjectName}/grid/listview_${result.data.recordId|lowerCase}",blank:!1},actionType:"url"},{actionType:"custom",script:"window.location.reload();"}]}},messages:{success:instance.t("frontend_listview_control_new_message_success"),failed:instance.t("frontend_listview_control_new_message_failed")}}],showCloseButton:!0,showErrorMsg:!0,showLoading:!0,closeOnEsc:!1,dataMapSwitch:!1,size:"lg"},actionType:"dialog"}]}}});function fields$1(){return["label","name","object_name","filter_scope","show_count","columns","sort","filters","mobile_columns","searchable_fields","is_system","shared","shared_to","shared_to_organizations"]}function fieldsExtend$5(){return{group:"",label:{group:"",is_wide:!0},name:{group:"",amis:{hidden:!0,required:!1}},object_name:{group:"",amis:{hidden:!0}},filter_scope:{group:"",amis:{hidden:!0,required:!1}},columns:{group:"",amis:{hidden:!0,required:!1}},mobile_columns:{group:"",amis:{hidden:!0,required:!1}},searchable_fields:{group:"",amis:{hidden:!0,required:!1}},filter_fields:{group:"",amis:{hidden:!0,required:!1}},scrolling_mode:{group:"",amis:{hidden:!0,required:!1}},sort:{group:"",amis:{hidden:!0,required:!1}},show_count:{group:"",amis:{hidden:!0,required:!1}},type:{group:"",amis:{hidden:!0,required:!1}},shared:{group:"",amis:{visibleOn:"${false}"}},shared_to:{group:"",amis:{type:"radios",inline:!1}},shared_to_organizations:{group:""},filters:{group:"",amis:{hidden:!0}}}}async function getObjectListHeaderFieldsFilterBar(e,t,n){return await getObjectFieldsFilterBarSchema(e,n)}const getCopyListviewButtonSchema=()=>({type:"button",label:instance.t("frontend_listview_control_clone_label"),onEvent:{click:{weight:0,actions:[{dialog:{type:"dialog",title:instance.t("frontend_listview_control_clone_title"),data:{listName:"${listName}",targetObjectName:"${objectName}",list_view:"${uiSchema.list_views[listName]}",appId:"${appId}",global:"${global}",context:"${context}"},body:[{type:"steedos-object-form",label:"对象表单",objectApiName:"object_listviews",recordId:"",mode:"edit",layout:"normal",defaultData:{"&":"${list_view}",name:"",label:instance.t("frontend_listview_control_clone_defaultData_label_start")+" ${list_view.label} "+instance.t("frontend_listview_control_clone_defaultData_label_end"),shared:!1,object_name:"${targetObjectName}",_id:"",shared_to:null,shared_to_organizations:null,locked:!1,owner:null,company_id:null,company_ids:null,is_system:!1},fieldsExtend:fieldsExtend$4(),fields:fields(),onEvent:{submitSucc:{weight:0,actions:[{args:{url:"${context.rootUrl}/app/${appId}/${targetObjectName}/grid/listview_${result.data.recordId|lowerCase}",blank:!1},actionType:"url"},{actionType:"custom",script:"window.location.reload();"}]}}}],showCloseButton:!0,showErrorMsg:!0,showLoading:!0,closeOnEsc:!1,dataMapSwitch:!1,size:"lg"},actionType:"dialog"}]}}});function fields(){return["label","name","object_name","filter_scope","show_count","columns.$.field","columns.$.width","sort.$.field_name","sort.$.order","filters","mobile_columns.$.field","searchable_fields.$.field","is_system","shared","shared_to","shared_to_organizations"]}function fieldsExtend$4(){return{label:{group:"",is_wide:!0},name:{is_wide:!0,amis:{hidden:!0}},object_name:{amis:{hidden:!0}},filter_scope:{amis:{hidden:!0}},columns:{amis:{hidden:!0}},filter_fields:{amis:{hidden:!0}},scrolling_mode:{amis:{hidden:!0}},sort:{amis:{hidden:!0}},show_count:{amis:{hidden:!0}},type:{amis:{hidden:!0}},shared:{group:"",amis:{visibleOn:"${false}"}},shared_to:{group:"",amis:{type:"radios",inline:!1}},shared_to_organizations:{group:""},filters:{group:"",amis:{hidden:!0}}}}const getRenameListviewButtonSchema=()=>({type:"button",label:instance.t("frontend_listview_control_rename_label"),disabledOn:"!((global.user.is_space_admin || global.userId == uiSchema.list_views[listName].owner) && !!uiSchema.list_views[listName].owner)",onEvent:{click:{weight:0,actions:[{dialog:{type:"dialog",title:instance.t("frontend_listview_control_rename_title"),data:{targetObjectName:"${objectName}",recordId:"${uiSchema.list_views[listName]._id}",appId:"${appId}",context:"${context}"},body:[{type:"steedos-object-form",label:"对象表单",objectApiName:"object_listviews",recordId:"${recordId}",layout:"normal",mode:"edit",fields:["label"],fieldsExtend:'{\n "label":{\n "is_wide": true\n }\n}',onEvent:{submitSucc:{weight:0,actions:[{args:{url:"${context.rootUrl}/app/${appId}/${targetObjectName}/grid/${name}",blank:!1},actionType:"url"},{actionType:"custom",script:"window.location.reload();"}]}}}],showCloseButton:!0,showErrorMsg:!0,showLoading:!0,size:"lg"},actionType:"dialog"}]}}}),getSetListviewShareButtonSchema=()=>({type:"button",label:instance.t("frontend_listview_control_share"),disabledOn:"!(global.user.is_space_admin && !!uiSchema.list_views[listName].owner)",onEvent:{click:{weight:0,actions:[{dialog:{type:"dialog",title:instance.t("frontend_listview_control_share"),data:{recordId:"${uiSchema.list_views[listName]._id}",appId:"${appId}",global:"${global}",context:"${context}"},body:[{type:"steedos-object-form",label:"对象表单",objectApiName:"object_listviews",recordId:"${recordId}",mode:"edit",layout:"normal",fields:["shared_to","shared_to_organizations"],fieldsExtend:fieldsExtend$3()}],showCloseButton:!0,showErrorMsg:!0,showLoading:!0,closeOnEsc:!1,dataMapSwitch:!1,size:"md"},actionType:"dialog"}]}}});function fieldsExtend$3(){return{shared_to:{group:"",amis:{type:"radios",inline:!1}},shared_to_organizations:{group:""}}}const getSetListviewFiltersButtonSchema=()=>({type:"button",label:instance.t("frontend_listview_control_filters"),disabledOn:"!((global.user.is_space_admin || global.userId == uiSchema.list_views[listName].owner) && !!uiSchema.list_views[listName].owner)",onEvent:{click:{weight:0,actions:[{dialog:{type:"dialog",title:instance.t("frontend_listview_control_filters"),data:{targetObjectName:"${objectName}",recordId:"${uiSchema.list_views[listName]._id}",listName:"${listName}",appId:"${appId}",context:"${context}"},body:[{type:"steedos-object-form",label:"对象表单",objectApiName:"object_listviews",recordId:"${recordId}",mode:"edit",fields:["filters"],initApiAdaptor:initApiAdaptor$2(),apiRequestAdaptor:apiRequestAdaptor$2(),fieldsExtend:fieldsExtend$2(),onEvent:{submitSucc:{weight:0,actions:[{actionType:"custom",script:"window.location.reload(); //doAction({'actionType': 'rebuild', 'componentId': `service_listview_${event.data.targetObjectName}`})"}]}}}],showCloseButton:!0,showErrorMsg:!0,showLoading:!0,closeOnEsc:!1,dataMapSwitch:!1,size:"lg"},actionType:"dialog"}]}}});function initApiAdaptor$2(){return"\n const recordId_tmp = api.body.recordId;\n let data_tmp;\n if (recordId_tmp) {\n data_tmp = payload.data;\n // 数据格式转换\n if (data_tmp) {\n if (data_tmp.filters && lodash.isString(data_tmp.filters)) {\n try {\n data_tmp.filters = JSON.parse(data_tmp.filters);\n } catch (e) { }\n }\n \n if (data_tmp.filters && lodash.isString(data_tmp.filters)) {\n data_tmp._filters_type_controller = 'function';\n } else {\n data_tmp._filters_type_controller = 'conditions'\n }\n \n if (data_tmp._filters_type_controller === 'conditions') {\n data_tmp._filters_conditions = window.amisConvert.filtersToConditions(data_tmp.filters || []);\n data_tmp.filters = data_tmp._filters_conditions;\n } else {\n data_tmp._filters_function = data_tmp.filters;\n }\n }\n }\n for (key in data_tmp) {\n if (data_tmp[key] === null) {\n delete data_tmp[key];\n }\n }\n payload.data = Object.assign(payload.data, data_tmp);\n delete payload.extensions;\n return payload;\n "}function apiRequestAdaptor$2(){return"\n const recordId = api.body.recordId;\n if (formData._filters_type_controller === 'conditions' && formData._filters_conditions) {\n formData.filters = window.amisConvert.conditionsToFilters(formData.filters);\n } else {\n formData.filters = formData._filters_function || null;\n }\n \n delete formData._filters_type_controller;\n delete formData._filters_conditions;\n delete formData._filters_function;\n \n query = 'mutation{record: ' + objectName + '__insert(doc: {__saveData}){_id}}';\n if (api.body.recordId) {\n query = 'mutation{record: ' + objectName + '__update(id: \"' + recordId + '\", doc: {__saveData}){_id}}';\n };\n __saveData = JSON.stringify(JSON.stringify(formData));\n api.data = { query: query.replace('{__saveData}', __saveData) };\n return api;\n "}function fieldsExtend$2(){return{filters:{label:"",group:"",visible_on:"true",amis:{type:"condition-builder",source:{method:"get",url:"${context.rootUrl}/service/api/amis-metadata-listviews/getFilterFields?objectName=${targetObjectName}",dataType:"json",headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}}}}}}const getSetListviewColumnsButtonSchema=()=>({type:"button",label:instance.t("frontend_listview_control_columns"),disabledOn:"!((global.user.is_space_admin || global.userId == uiSchema.list_views[listName].owner) && !!uiSchema.list_views[listName].owner)",onEvent:{click:{weight:0,actions:[{args:{},dialog:{type:"dialog",title:instance.t("frontend_listview_control_columns"),data:{targetObjectName:"${objectName}",recordId:"${uiSchema.list_views[listName]._id}",listName:"${listName}",appId:"${appId}",context:"${context}"},body:[{type:"steedos-object-form",label:"对象表单",objectApiName:"object_listviews",recordId:"${recordId}",mode:"edit",layout:"normal",fieldsExtend:fieldsExtend$1(),initApiAdaptor:initApiAdaptor$1(),apiRequestAdaptor:apiRequestAdaptor$1(),fields:["columns","mobile_columns"],onEvent:{submitSucc:{weight:0,actions:[{actionType:"custom",script:"window.location.reload(); //doAction({'actionType': 'rebuild', 'componentId': `service_listview_${event.data.targetObjectName}`})"}]}}}],searchable:!0,showCloseButton:!0,showErrorMsg:!0,showLoading:!0,size:"lg"},actionType:"dialog"}]}}});function fieldsExtend$1(){return{columns:{amis:{type:"transfer",sortable:!0,searchable:!0,source:{method:"get",url:"${context.rootUrl}/service/api/amis-metadata-objects/objects/${targetObjectName}/fields/options",headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}}}},mobile_columns:{amis:{type:"transfer",sortable:!0,searchable:!0,source:{method:"get",url:"${context.rootUrl}/service/api/amis-metadata-objects/objects/${targetObjectName}/fields/options",headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}}}}}}function initApiAdaptor$1(){return"\n const recordId_tmp = api.body.recordId;\n let columns_tmp = {}, mobile_columns_tmp = {};\n if (recordId_tmp) {\n columns_tmp = payload.data.columns;\n mobile_columns_tmp = payload.data.mobile_columns;\n if (columns_tmp) {\n columns_tmp = lodash.map(columns_tmp, 'field');\n }\n if (mobile_columns_tmp) {\n mobile_columns_tmp = lodash.map(mobile_columns_tmp, 'field');\n }\n }\n payload.data.columns = columns_tmp;\n payload.data.mobile_columns = mobile_columns_tmp;\n \n delete payload.extensions;\n return payload;\n "}function apiRequestAdaptor$1(){return"\n const formData_tmp = api.body.$;\n const objectName_tmp = api.body.objectName;\n const recordId_tmp = api.body.recordId;\n \n if (typeof formData_tmp.columns == 'string') {\n formData_tmp.columns = formData_tmp.columns && formData_tmp.columns.split(',');\n }\n if (typeof formData_tmp.mobile_columns == 'string') {\n formData_tmp.mobile_columns = formData_tmp.mobile_columns && formData_tmp.mobile_columns.split(',');\n }\n \n // 数据格式转换\n formData_tmp.columns = lodash.map(formData_tmp.columns, (item) => {\n return { field: item };\n });\n formData.mobile_columns = lodash.map(formData.mobile_columns, (item) => {\n return { field: item };\n });\n \n let query_tmp = 'mutation{record: ' + objectName_tmp + '__insert(doc: {__saveData}){_id}}';\n if (api.body.recordId) {\n query_tmp = 'mutation{record: ' + objectName_tmp + '__update(id: \"' + recordId_tmp +'\", doc: {__saveData}){_id}}';\n };\n delete formData_tmp._id;\n let __saveData_tmp = JSON.stringify(JSON.stringify(formData_tmp));\n api.data = { query: query_tmp.replace('{__saveData}', __saveData_tmp) };\n \n return api;\n "}const getSetListviewSortButtonSchema=()=>({type:"button",label:instance.t("frontend_listview_control_sort"),disabledOn:"!((global.user.is_space_admin || global.userId == uiSchema.list_views[listName].owner) && !!uiSchema.list_views[listName].owner)",onEvent:{click:{weight:0,actions:[{dialog:{type:"dialog",title:instance.t("frontend_listview_control_sort"),data:{targetObjectName:"${objectName}",recordId:"${uiSchema.list_views[listName]._id}",listName:"${listName}",appId:"${appId}",context:"${context}"},body:[{type:"steedos-object-form",label:"对象表单",objectApiName:"object_listviews",recordId:"${recordId}",className:"",id:"u:061f158b4c5a",mode:"edit",fields:["sort","sort.$.field_name","sort.$.order"],onEvent:{submitSucc:{weight:0,actions:[{actionType:"custom",script:"window.location.reload(); //doAction({'actionType': 'rebuild', 'componentId': `service_listview_${event.data.targetObjectName}`})"}]}},fieldsExtend:fieldsExtend(),initApiAdaptor:initApiAdaptor(),apiRequestAdaptor:apiRequestAdaptor()}],showCloseButton:!0,showErrorMsg:!0,showLoading:!0,id:"u:d3f6947b6acf",size:"lg"},actionType:"dialog"}]}}});function fieldsExtend(){return{sort:{label:"",group:"",amis:{type:"tabs-transfer",sortable:!0,searchable:!0,source:{method:"get",url:"${context.rootUrl}/service/api/amis-metadata-objects/objects/${targetObjectName}/sortFields/options",headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}}}}}}function initApiAdaptor(){return"\n let sort;\n if (recordId) {\n sort = payload.data.sort;\n //数据格式转换\n if (sort instanceof Array) {\n sort = lodash.map(sort, (item) => {\n return item.field_name + ':' + (item.order || 'asc')\n });\n }\n }\n payload.data.sort = sort;\n delete payload.extensions;\n return payload;\n "}function apiRequestAdaptor(){return"\n const recordId = api.body.recordId;\n //数据格式转换\n if (typeof formData.sort == 'string') {\n formData.sort = formData.sort && formData.sort.split(',');\n }\n formData.sort = lodash.map(formData.sort, (item) => {\n const arr = item.split(':');\n return { field_name: arr[0], order: arr[1] };\n });\n if (recordId) {\n query = 'mutation{record: ' + objectName + '__update(id: \"' + recordId + '\", doc: {__saveData}){_id}}';\n }\n __saveData = JSON.stringify(JSON.stringify(formData));\n api.data = { query: query.replace('{__saveData}', __saveData) };\n return api;\n "}const getDeleteListviewButtonSchema=()=>({type:"button",label:instance.t("frontend_listview_control_delete_label"),disabledOn:"!((global.user.is_space_admin || global.userId == uiSchema.list_views[listName].owner) && !!uiSchema.list_views[listName].owner)",confirmText:instance.t("frontend_listview_control_delete_confirm_text"),onEvent:{click:{actions:[{actionType:"ajax",args:{api:{url:"${context.rootUrl}/graphql",method:"post",headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"},data:{"&":"$$",uiSchema:"${uiSchema}",recordId:"${uiSchema.list_views[listName]._id}"},messages:{success:instance.t("frontend_listview_control_delete_message_success")},requestAdaptor:requestAdaptor(),adaptor:adaptor()}}},{actionType:"url",args:{url:"${context.rootUrl}/app/${appId}/${objectName}/grid/all",blank:!1},expression:"data.delete == 1"},{actionType:"custom",script:"window.location.reload();"}]}}});function requestAdaptor(){return"\n const { recordId } = api.body;\n var deleteArray = [];\n if (recordId) { deleteArray.push(`delete:object_listviews__delete(id: \"${recordId}\")`); }\n api.data = { query: `mutation{${deleteArray.join(',')}}` };\n return api;\n "}function adaptor(){return"\n if (payload.errors) {\n payload.status = 2;\n payload.msg = payload.errors[0].message;\n }\n return payload;\n "}const getSettingListviewToolbarButtonSchema=()=>({type:"dropdown-button",trigger:"click",icon:"fa fa-cog",btnClassName:"antd-Button--iconOnly bg-white !p-2 rounded text-gray-500",align:"right",visibleOn:"${!isLookup && !!isObjectListview}",buttons:[{label:instance.t("frontend_button_listview_control_label"),children:[getNewListviewButtonSchema(),getCopyListviewButtonSchema(),getRenameListviewButtonSchema(),getSetListviewShareButtonSchema(),getSetListviewFiltersButtonSchema(),getSetListviewColumnsButtonSchema(),getSetListviewSortButtonSchema(),getDeleteListviewButtonSchema()]}]}),getDisplayAsButton=function(e,t){let n=Router.getTabDisplayAs(e,t),r=[{type:"button",label:instance.t("frontend_display_type_is_table"),onClick:"const key = 'tab_"+e+'_display\';sessionStorage.setItem(key, \'grid\');let url = document.location.pathname; var urlSearch = new URLSearchParams(document.location.search); if(urlSearch.get("side_object") && urlSearch.get("side_listview_id")){url=`/app/${props.data.appId}/${urlSearch.get("side_object")}/grid/${urlSearch.get("side_listview_id")}`;}; props.env.jumpTo(url + \'?display=grid\');',rightIcon:"split"!=n?"fa fa-check":null,rightIconClassName:"m-l-sm"},{type:"button",label:instance.t("frontend_display_type_is_split"),onClick:"const key = 'tab_"+e+"_display';sessionStorage.setItem(key, 'split');const url = document.location.pathname + '?display=split'; props.env.jumpTo(url);",rightIcon:"split"===n?"fa fa-check":null,rightIconClassName:"m-l-sm"}];return"split"===n?instance.t("frontend_display_type_is_split"):instance.t("frontend_display_type_is_table"),{type:"dropdown-button",icon:"fa fa-table-columns",btnClassName:"antd-Button--iconOnly bg-white !p-2 rounded text-gray-500",align:"right",visibleOn:"${window:innerWidth > 768 && !!!isLookup && !!isObjectListview}",buttons:[{label:instance.t("frontend_display_as"),children:r}]}},onFieldsFilterToggleScript='\nconst scope = event.context.scoped;\nconst filterForm = scope.getComponents().find(function(n){\n return n.props.type === "form";\n});\nconst filterService = filterForm.context.getComponents().find(function(n){\n return n.props.type === "service";\n});\nlet toShowFieldsFilter = !!!filterService.props.data.showFieldsFilter;\nfilterService.setData({showFieldsFilter: toShowFieldsFilter});\n//触发amis crud 高度重算\ndoAction({\n "actionType": "broadcast",\n "args": {\n "eventName": "@height.changed." + event.data.objectName\n },\n "data": {\n "timeOut": 1000\n }\n});\n// 手机端在显示搜索栏时隐藏crud上的刷新按钮,因为点击后crud高度显示有问题\nlet crudService = scope.getComponentById("service_listview_" + event.data.objectName);\ncrudService && crudService.setData({showFieldsFilter: toShowFieldsFilter});\n// if(filterService.props.data.showFieldsFilter){\n// if(isMobile){\n// // 手机上只能通过取消按钮来关闭搜索栏\n// return;\n// }\n// let buttonCancel = SteedosUI.getClosestAmisComponentByType(filterForm.context, "button", { \n// direction: "down", \n// name: "btn_filter_form_cancel" \n// });\n// buttonCancel.props.dispatchEvent(\'click\', {}).then(function(){\n// resizeWindow();\n// });\n// }\n// else{\n// if(isMobile){\n// // 手机端在显示搜索栏时隐藏crud上的刷新按钮,因为点击后crud高度显示有问题\n// let crudService = scope.getComponentById("service_listview_" + event.data.objectName);\n// crudService && crudService.setData({showFieldsFilter: true});\n// }\n// }\n';function getObjectHeaderQuickSearchBox(e,t,n,{isLookup:r=!1,keywordsSearchBoxName:o="__keywords"}={}){const a=[];_.each(e.fields,(function(t){isFieldQuickSearchable(t,e.NAME_FIELD_KEY)&&a.push(t.label)}));const i=location.pathname+"/crud";let s=sessionStorage.getItem(i),l="";s&&!r&&(s=JSON.parse(s),l=s&&s.__keywords||"");const c=`\n const scope = event.context.scoped;\n let crud = SteedosUI.getClosestAmisComponentByType(scope, "crud");\n // let crudService = crud && SteedosUI.getClosestAmisComponentByType(crud.context, "service", {name: "service_object_table_crud"});\n let __changedSearchBoxValues = {};\n __changedSearchBoxValues["${o}"] = event.data["${o}"];\n // crudService && crudService.setData({__changedSearchBoxValues: __changedSearchBoxValues});\n // 这里不用crudService而用crud是因为lookup字段弹出的列表中的crudService中的变量无法传入crud的发送适配器中\n // crud && crud.setData({__changedSearchBoxValues: __changedSearchBoxValues});\n if(crud){\n let crudData = crud.getData();\n crudData.__changedSearchBoxValues = __changedSearchBoxValues;\n crud.setData(crudData);\n }\n `,u=`\n ${c}\n\n // 下面的脚本只为解决点击搜索表单取消按钮,再重新在其中输入过滤条件但是不点击搜索按钮或回车按键触发搜索,此时在快速搜索框输入过滤条件按回车按键会把搜索表单中的过滤条件清空的问题\n // const scope = event.context.scoped;\n // 如果点击过顶部搜索栏表单的取消按钮,会把此处event.data.__super.__super.__super中的搜索表单项的所有字段设置为null\n // 点击取消按钮后继续在表单项中输入过滤条件且最后没有点击回车按键或点击表单项搜索按钮的话,在快速搜索中点击回车按钮提交搜索会所顶部搜索表单中的字段值清空\n let filterForm = SteedosUI.getClosestAmisComponentByType(scope, "form");\n if(!filterForm){\n return;\n }\n let isLookup = event.data.isLookup;\n let __lookupField = event.data.__lookupField;\n let __changedFilterFormValuesKey = "__changedFilterFormValues";\n if(isLookup && __lookupField){\n let lookupTag = "__lookup__" + __lookupField.name + "__" + __lookupField.reference_to;\n if(__lookupField.reference_to_field){\n lookupTag += "__" + __lookupField.reference_to_field;\n }\n __changedFilterFormValuesKey += lookupTag;\n }\n setTimeout(function(){\n filterForm && filterForm.setValues(event.data[__changedFilterFormValuesKey]);\n }, 500);\n `;return{type:"tooltip-wrapper",id:"steedos_crud_toolbar_quick_search",align:"right",title:"",content:"可搜索字段:"+a.join(","),placement:"bottom",tooltipTheme:"dark",trigger:"click",className:"SMALL"!==n?"mr-1":"",visible:!!a.length,body:[{type:"search-box",name:o,placeholder:"快捷搜索",value:l,mini:!0,clearable:!0,clearAndSubmit:!0,searchImediately:!1,onEvent:{search:{actions:[{actionType:"custom",script:u}]},change:{actions:[{actionType:"custom",script:c}]}}}]}}function getObjectHeaderToolbar(e,t,n,{showDisplayAs:r=!1,hiddenCount:o=!1,headerToolbarItems:a,filterVisible:i=!0,isLookup:s=!1,keywordsSearchBoxName:l}={}){let c,u;window.innerWidth,o||(c={type:"tpl",align:"left",className:"text-gray-500 mr-2",tpl:"${count} "+instance.t("frontend_record_sum")});let d;u={type:"button",align:"right",tooltipPlacement:"top",className:"bg-white p-2 rounded text-gray-500 list-view-btn-reload",label:"",icon:"fa fa-sync",onEvent:{click:{actions:[{actionType:"custom",script:'\n // 触发搜索,而不是reload,因为使用search-box可以在amissdk是3.6.3-patch.8+实现在非第一页的情况下,快速搜索输入框中过滤条件变更时再点刷新可以自动跳转翻页到第一页\n const scope = event.context.scoped;\n const sb = SteedosUI.getClosestAmisComponentByType(scope, "search-box");\n if (sb) {\n const sbValue = sb.state.value;\n sb.handleSearch(sbValue);\n }else{\n var listView = scope.parent.getComponents().find(function(n){\n return n.props.type === "crud";\n });\n listView.handleChangePage(1);\n }\n \n '}]}}},i&&(d={label:instance.t("frontend_button_search_tooltip"),icon:"fa fa-filter",type:"button",badge:{offset:[-5,1],size:8,animation:!0,visibleOn:"${isFieldsFilterEmpty == false && isLookup != true}"},align:"right",className:"bg-white p-2 rounded text-gray-500",onEvent:{click:{actions:[{actionType:"custom",script:onFieldsFilterToggleScript}]}},id:"steedos_crud_toolbar_filter"});let f=getDisplayAsButton(e?.name,e?.enable_split),p=getObjectHeaderQuickSearchBox(e,t,n,{isLookup:s,keywordsSearchBoxName:l}),_=[];return"SMALL"===n?(_.push(p),d&&_.push(d),_.push(f),[...a||[],..._]):(_.push(p),_.push(u),_.push(f),e?.permissions?.allowCreateListViews&&_.push(getSettingListviewToolbarButtonSchema()),d&&_.push(d),c&&_.push(c),[...a||[],"bulkActions",..._])}function getObjectFooterToolbar(e,t,n){if("SMALL"===t)return"split"===n.displayAs?[{type:"switch-per-page",visibleOn:"${count >= 20}"},{type:"pagination",maxButtons:5,showPageInput:!1}]:[{type:"pagination",maxButtons:5,showPageInput:!0,layout:"total,pager,go"}];if(n&&n.isRelated)return[{type:"pagination",maxButtons:10,showPageInput:!1}];{const t=e.paging&&!1===e.paging.enabled,r=n.isLookup,o=[{type:"pagination",maxButtons:10,showPageInput:!1}];return t&&r?o:[{type:"switch-per-page",visibleOn:"${count >= 20}"},...o]}}async function getObjectFilter(e,t,n){return{title:"",submitText:"",className:"",debug:!1,mode:"normal",wrapWithPanel:!1,body:[await getObjectListHeaderFieldsFilterBar(e,null,n)],onEvent:{submitSucc:{actions:[{actionType:"custom",script:`\n let isLookup = event.data.isLookup;\n if(isLookup){\n return;\n }\n // 列表搜索栏字段值变更后立刻触发提交表单执行crud搜索,所以这里需要额外重算crud高度及筛选按钮红色星号图标显示隐藏\n //触发amis crud 高度重算\n doAction({\n "actionType": "broadcast",\n "args": {\n "eventName": "@height.changed.${e.name}"\n },\n "data": {\n "timeOut": 1000\n }\n });\n const scope = event.context.scoped;\n // let filterFormValues = event.data;\n let filterForm = SteedosUI.getClosestAmisComponentByType(scope, "form");\n let filterFormService = SteedosUI.getClosestAmisComponentByType(filterForm.context, "service");\n // 使用event.data的话,并不能拿到本地存储中的过滤条件,所以需要从filterFormService中取。\n let filterFormValues = filterFormService.getData();\n filterFormValues = JSON.parse(JSON.stringify(filterFormValues)); //只取当层数据域中数据,去除__super层数据\n let isFieldsFilterEmpty = SteedosUI.isFilterFormValuesEmpty(filterFormValues);\n let crud = SteedosUI.getClosestAmisComponentByType(scope, "crud");\n const changedFilterFormValues = _.pickBy(filterFormValues, function(n,k){return /^__searchable__/.test(k);});\n // 这里不用crudService而用crud是因为lookup字段弹出的列表中的crudService中的变量无法传入crud的发送适配器中\n // crud && crud.setData({__changedFilterFormValues: changedFilterFormValues});\n let __changedFilterFormValuesKey = "__changedFilterFormValues";\n if(isLookup && __lookupField){\n let lookupTag = "__lookup__" + __lookupField.name + "__" + __lookupField.reference_to;\n if(__lookupField.reference_to_field){\n lookupTag += "__" + __lookupField.reference_to_field;\n }\n __changedFilterFormValuesKey += lookupTag;\n }\n if(crud){\n let crudData = crud.getData();\n crudData[__changedFilterFormValuesKey] = changedFilterFormValues;\n crud.setData(crudData);\n }\n\n let crudService = crud && SteedosUI.getClosestAmisComponentByType(crud.context, "service", {name: "service_object_table_crud"});\n crudService && crudService.setData({isFieldsFilterEmpty});\n `}]},change:{actions:[{actionType:"custom",script:'\n let isLookup = event.data.isLookup;\n let __lookupField = event.data.__lookupField;\n const scope = event.context.scoped;\n // let filterFormValues = event.data;\n let filterForm = SteedosUI.getClosestAmisComponentByType(scope, "form");\n let filterFormService = SteedosUI.getClosestAmisComponentByType(filterForm.context, "service");\n // 使用event.data的话,并不能拿到本地存储中的过滤条件,所以需要从filterFormService中取。\n let filterFormValues = filterFormService.getData();\n filterFormValues = JSON.parse(JSON.stringify(filterFormValues)); //只取当层数据域中数据,去除__super层数据\n let crud = SteedosUI.getClosestAmisComponentByType(scope, "crud");\n const changedFilterFormValues = _.pickBy(filterFormValues, function(n,k){return /^__searchable__/.test(k);});;\n // let crudService = crud && SteedosUI.getClosestAmisComponentByType(crud.context, "service", {name: "service_object_table_crud"});\n // crudService && crudService.setData({__changedFilterFormValues: changedFilterFormValues});\n // 这里不用crudService而用crud是因为lookup字段弹出的列表中的crudService中的变量无法传入crud的发送适配器中\n // crud && crud.setData({__changedFilterFormValues: changedFilterFormValues});\n let __changedFilterFormValuesKey = "__changedFilterFormValues";\n if(isLookup && __lookupField){\n let lookupTag = "__lookup__" + __lookupField.name + "__" + __lookupField.reference_to;\n if(__lookupField.reference_to_field){\n lookupTag += "__" + __lookupField.reference_to_field;\n }\n __changedFilterFormValuesKey += lookupTag;\n }\n if(crud){\n let crudData = crud.getData();\n crudData[__changedFilterFormValuesKey] = changedFilterFormValues;\n crud.setData(crudData);\n }\n '}]}}}}let UI_SCHEMA_CACHE={},UISchemaFunction;"undefined"!=typeof window&&(window.UI_SCHEMA_CACHE||(window.UI_SCHEMA_CACHE=UI_SCHEMA_CACHE),UI_SCHEMA_CACHE=window.UI_SCHEMA_CACHE);const setUISchemaCache=(e,t)=>{UI_SCHEMA_CACHE[e]=t},getUISchemaCache=e=>lodash.exports.cloneDeep(UI_SCHEMA_CACHE[e]),hasUISchemaCache=e=>lodash.exports.has(UI_SCHEMA_CACHE,e);function getListViewColumns(e,t){let n=[];return n="SMALL"===t?lodash.exports.isEmpty(e.mobile_columns)?lodash.exports.slice(e.columns,0,4):e.mobile_columns:e.columns,n}function getListViewSort(e){let t="";return e&&e.sort&&e.sort.length&&lodash.exports.each(e.sort,(function(e,n){if(lodash.exports.isArray(e)){let r=e[0]+" "+(e[1]||"");r=n>0?","+r:r,t+=r}else{let r=e.field_name+" "+e.order;r=n>0?","+r:r,t+=r}})),t}function getListViewFilter(e){if(e)try{const t=getUserId();let n=e.filters;if("mine"===e.filter_scope)if(___default.isEmpty(n))n=[["owner","=",t]];else{if(___default.isString(n)&&___default.startsWith(___default.trim(n),"function")&&(n=new Function(`return ${n}`),n=n()),!___default.isArray(n))throw console.debug("listView filters is not array",e),new Error("filters is not array");n.push(["owner","=",t])}return n}catch(e){console.error(e)}}function formatUISchemaCache(objectName,uiSchema){setUISchemaCache(objectName,uiSchema),lodash.exports.each(uiSchema.fields,(field=>{try{"lookup"===field.type&&field._reference_to&&___default.isString(field._reference_to)&&(field.reference_to=eval(`(${field._reference_to})`)())}catch(e){field.reference_to=void 0,console.error(e)}})),lodash.exports.each(uiSchema.list_views,((e,t)=>{e.name=t,lodash.exports.has(e,"columns")||(e.columns=uiSchema.list_views.all.columns)}))}async function getUISchema(e,t,n=!0){if(!e)return;if(hasUISchemaCache(e)&&!t)return getUISchemaCache(e);let r=null;try{if(UISchemaFunction);else{const t=`/service/api/@${e.replace(/\./g,"_")}/uiSchema`;r=await fetchAPI(t,{method:"get"})}if(!r&&n)return await new Promise((e=>setTimeout(e,3e3))),getUISchema(e,t,!1);if(!r&&0==n)return;formatUISchemaCache(e,r)}catch(t){console.error("getUISchema",e,t),setUISchemaCache(e,null)}return getUISchemaCache(e)}function wait(e){const t=(new Date).getTime();let n=t;for(;n-t<e;)n=(new Date).getTime()}function getUISchemaSync$1(e,t,n=!0){if(!e)return;if(hasUISchemaCache(e)&&!t)return getUISchemaCache(e);let r=null;try{const o=`/service/api/@${e.replace(/\./g,"_")}/uiSchema`;if(r=Steedos.authRequest(o,{type:"GET",async:!1}),!r&&n)return wait(2e3),getUISchemaSync$1(e,t,!1);if(!r&&0==n)return;formatUISchemaCache(e,r)}catch(t){console.error("getUISchema",e,t),setUISchemaCache(e,null)}return getUISchemaCache(e)}async function getListSchema(e,t,n,r={}){const o=await getUISchema(t);if(!o)return{};const a=lodash.exports.find(o.list_views,((e,t)=>(n||(n=t),t===n||e._id===n)));if(!a)return{uiSchema:o};if(a.enable_amis_schema&&a.amis_schema){return{uiSchema:o,isCustomAmisSchema:!0,amisSchema:lodash.exports.isString(a.amis_schema)?JSON.parse(a.amis_schema):a.amis_schema}}let i=getListViewColumns(a,r.formFactor),s=getListViewSort(a),l=getListViewFilter(a),c=a&&a._filters;if("calendar"===a.type){return{uiSchema:o,isCalendar:!0,amisSchema:{type:"steedos-object-calendar",objectApiName:t,filters:l,filtersFunction:c,sort:s,...a.options}}}const u=r.defaults||{};u.headerSchema=null;try{const e=location.pathname+"/crud";let t=sessionStorage.getItem(e);if(t){t=JSON.parse(t);let e={};t.orderBy&&(e.orderBy=t.orderBy),t.orderDir&&(e.orderDir=t.orderDir),t.perPage&&(e.perPage=t.perPage),u.listSchema=lodash.exports.defaultsDeep({},e,u.listSchema||{})}}catch(e){console.error("本地存储中crud参数解析异常:",e)}window.innerWidth>768&&(u.listSchema=lodash.exports.defaultsDeep({},u.listSchema||{},{autoFillHeight:!0})),r.defaults=u,"recent"==n&&(c='\n function(filters, data) {\n var result = Steedos.authRequest(\'/graphql\', {\n type: \'POST\',\n async: false,\n data: JSON.stringify({\n query: \'{object_recent_viewed(filters: [["record.o","=","\' + data.objectName + \'"],["space","=","\' + data.context.tenantId + \'"],["owner","=","\' + data.context.userId + \'"]],sort:"modified desc",top:50){ _id,record} }\'\n }),\n });\n var _ids = []\n result.data.object_recent_viewed.forEach(function (item) {\n _ids = _ids.concat(item.record.ids)\n })\n return ["_id", "=", _ids];\n }\n ');return{uiSchema:o,amisSchema:{type:"steedos-object-table",objectApiName:t,columns:i,extraColumns:a.extra_columns,filters:l,filtersFunction:c,sort:s,ctx:r,requestAdaptor:r.requestAdaptor||a.requestAdaptor,adaptor:r.adaptor||a.adaptor,headerToolbarItems:r.headerToolbarItems,filterVisible:r.filterVisible,rowClassNameExpr:r.rowClassNameExpr,crud:r.crud||a.crud,crudDataFilter:r.crudDataFilter||a.crudDataFilter,onCrudDataFilter:r.onCrudDataFilter}}}async function getSource(e,t){const n=t.objectName;let r=[{name:t.valueField,alias:"value"},{name:t.labelField,alias:"label"},{name:"children"}],o=r.filter((function(e){return"children"!==e.name})),a=!e.multiple&&e.auto_fill_mapping;a&&a.length&&a.forEach((function(e){"children"!==e.from&&r.push({name:e.from}),o.push({name:e.from})}));const i=await getFindQuery({name:n},null,r,{expand:!1,alias:"options",filters:"{__filters}"});i.query=i.query.replace(/,count\:.+/,"}");const s=await getFindQuery({name:n},null,o,{expand:!1,alias:"defaultValueOptions",filters:"{__options_filters}"});s.query=s.query.replace(/,count\:.+/,"}"),i.query=i.query.replace(/}$/,","+s.query.replace(/{(.+)}/,"$1}"));let l=`${e.name}`;e._prefix&&(l=`${e._prefix}${e.name}`),t.fieldNamePrefix&&(l=`${t.fieldNamePrefix}${l}`),i.$value=`$${l}`,i.$="$$";const c=`\n var filters = [['parent', '=', null]];\n const filtersFunction = ${e.filtersFunction||e._filtersFunction};\n if(filtersFunction){\n const _filters = filtersFunction(filters, api.data.$);\n if(_filters && _filters.length > 0){\n filters.push(_filters);\n }\n }\n api.data.query = api.data.query.replace(/{__filters}/g, JSON.stringify(filters));\n var defaultValue = api.data.$value;\n var optionsFiltersOp = "${e.multiple?"in":"="}";\n var optionsFilters = [["${t.valueField}", optionsFiltersOp, []]];\n if (defaultValue) { \n optionsFilters = [["${t.valueField}", optionsFiltersOp, defaultValue]];\n }\n api.data.query = api.data.query.replace(/{__options_filters}/g, JSON.stringify(optionsFilters));\n return api;\n `;return{method:"post",url:getApi$2(),requestAdaptor:c,adaptor:'\n const data = payload.data;\n data.options = data.options.map(function (optionItem) {\n optionItem.defer = !!(optionItem.children && optionItem.children.length);\n delete optionItem.children;\n return optionItem;\n });\n var defaultValueOptions = data.defaultValueOptions;\n // 字段值下拉选项合并到options中\n data.options = _.unionWith(data.options, defaultValueOptions, function(a,b){\n return a["value"]=== b["value"];\n });\n delete data.defaultValueOptions;\n payload.data = data;\n return payload;\n ',data:i,headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}}}async function getDeferApi(e,t){const n=t.objectName;let r=[{name:t.valueField,alias:"value"},{name:t.labelField,alias:"label"},{name:"children"}],o=!e.multiple&&e.auto_fill_mapping;o&&o.length&&o.forEach((function(e){"children"!==e.from&&r.push({name:e.from})}));const a=await getFindQuery({name:"{__object_name}"},null,r,{expand:!1,alias:"options",queryOptions:'filters: {__filters}, sort: "{__sort}"'});let i=e.filters;"string"==typeof i&&(i=new Function(`return ${i}`),i=i()),"function"==typeof i&&(i=i(e)),a.query=a.query.replace(/,count\:.+/,"}");const s=`\n var dep = api.query.dep;\n var term = api.query.term;\n var filters;\n var objectName;\n var fields;\n var sort = "";\n if (dep) {\n objectName = "${n}";\n filters = [['parent', '=', dep]];\n sort = "${t.sort}";\n }\n api.data.query = api.data.query.replace(/{__object_name}/g, objectName).replace(/{__filters}/g, JSON.stringify(filters)).replace('{__sort}', sort.trim());\n return api;\n `;return{method:"post",url:getApi$2()+"&dep=${value}",requestAdaptor:s,adaptor:"\n if (api.query.dep) {\n // 展开组织时才需要根据children值设置defer属性\n const data = payload.data;\n data.options = data.options.map(function (option) {\n option.defer = !!(option.children && option.children.length);\n delete option.children;\n return option;\n });\n payload.data = data;\n }\n return payload;\n ",data:a,headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}}}function getRefListViewSort(e){let t=getLookupListView(e),n="";return t&&(n=getListViewSort(t)),n}async function lookupToAmisTreeSelect(e,t,n){if(!e)return{};n||(n={});const r={type:getAmisStaticFieldType("tree-select",t)};if(t)r.tpl=await getLookupTpl(e,n);else{const t=await getUISchema(n.objectName);n.sort=getRefListViewSort(t),Object.assign(r,{multiple:e.multiple,searchable:e.searchable,extractValue:!0,hideNodePathLabel:!0,clearable:!0,source:await getSource(e,n),deferApi:await getDeferApi(e,n)}),e.multiple&&Object.assign(r,{joinValues:!1}),"boolean"!=typeof r.searchable&&(r.searchable=!0);const o=e.onEvent;o&&(r.onEvent=o)}return r}"undefined"!=typeof window&&(window.getUISchema=getUISchema,window.getUISchemaSync=getUISchemaSync$1,window.getListSchema=getListSchema);const getReferenceToFieldSchema=(e,t)=>{let n=e.reference_to;if(!n)return;if(!t)return null;let r=null,o=e.reference_to_field;return o||(o=t.idFieldName||"_id"),r="_id"===o?{name:"_id",label:"ID",type:"text",toggled:!1}:t.fields[o]||{name:o},{objectName:n,valueField:r,labelField:t.fields[t.NAME_FIELD_KEY||"name"],NAME_FIELD_KEY:t.NAME_FIELD_KEY||"name"}},getReferenceTo=async e=>{"users"===e.reference_to&&(e.reference_to="space_users",e.reference_to_field="user");const t=await getUISchema(e.reference_to);return getReferenceToFieldSchema(e,t)};function getReferenceToSync(e){"users"===e.reference_to&&(e.reference_to="space_users",e.reference_to_field="user");const t=getUISchemaSync(e.reference_to);return getReferenceToFieldSchema(e,t)}function getLookupSapceUserTreeSchema(e){const t={type:"input-tree",className:"steedos-select-user-tree",inputClassName:"p-0",source:{method:"post",url:"${context.rootUrl}/graphql",headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"},adaptor:'\n const records = payload.data.options;\n const treeRecords = [];\n const getChildren = (currentRecord, records, childrenIds) => {\n if (currentRecord.children && typeof currentRecord.children[0] === "object") {\n // 考虑api配置了cache缓存的话,不会请求接口但是会重新进这个接收适配器脚本且payload.data.options返回的会是上一次计算结果,这里直接返回计算过的children\n return currentRecord.children;\n }\n if (!childrenIds) {\n return;\n }\n const children = _.filter(records, (record) => {\n return _.includes(childrenIds, record.value)\n });\n _.each(children, (item) => {\n if (item.children) {\n item.children = getChildren(item, records, item.children)\n }else{\n item.children = [];\n }\n })\n return children;\n }\n \n const getRoot = (records) => {\n for (var i = 0; i < records.length; i++) {\n records[i].noParent = 0;\n if (!!records[i].parent) {\n biaozhi = 1\n for (var j = 0; j < records.length; j++) {\n if (records[i].parent == records[j].value)\n biaozhi = 0;\n }\n if (biaozhi == 1) records[i].noParent = 1;\n } else records[i].noParent = 1;\n }\n }\n getRoot(records);\n console.log(records)\n \n _.each(records, (record) => {\n if (record.noParent == 1) {\n treeRecords.push(Object.assign({}, record, { children: getChildren(record, records, record.children) }));\n }\n });\n console.log(treeRecords)\n \n payload.data.options = treeRecords;\n return payload;\n ',data:{query:'{options:organizations(filters:["hidden", "!=", true],sort:"sort_no desc"){value:_id label:name,parent,children}}'},messages:{},cache:3e5},onEvent:{change:{actions:[{actionType:"custom",script:'\n console.log("lookup-tree-event.data:",event.data);\n console.log("lookup-tree-event.data.value.label:",event.data.value.label);\n console.log("lookup-tree-event.data.value.value:",event.data.value.value);\n const scope = event.context.scoped;\n var treeFilterFormValues={\n "__searchable__organizations_parents":event.data.value.value\n }\n // var listView = scope.parent.getComponents().find(function(n){\n // return n.props.type === "crud";\n // });\n // listView.handleFilterSubmit(Object.assign({}, filterFormValues));\n let __lookupField = event.data.__lookupField;\n let crud = SteedosUI.getClosestAmisComponentByType(scope, "crud");\n var filterForm = scope.getComponents().find(function(n){\n return n.props.type === "form";\n });\n let filterFormValues = filterForm.getData();\n filterFormValues = JSON.parse(JSON.stringify(filterFormValues)); //只取当层数据域中数据,去除__super层数据\n const changedFilterFormValues = _.pickBy(filterFormValues, function(n,k){return /^__searchable__/.test(k);});\n Object.assign(changedFilterFormValues, treeFilterFormValues);\n // 同步__changedFilterFormValues中的值\n let __changedFilterFormValuesKey = "__changedFilterFormValues";\n if(__lookupField){\n let lookupTag = "__lookup__" + __lookupField.name + "__" + __lookupField.reference_to;\n if(__lookupField.reference_to_field){\n lookupTag += "__" + __lookupField.reference_to_field;\n }\n __changedFilterFormValuesKey += lookupTag;\n }\n if(crud){\n let crudData = crud.getData();\n crudData[__changedFilterFormValuesKey] = changedFilterFormValues;\n crud.setData(crudData);\n }\n filterForm.setData(treeFilterFormValues);\n filterForm.handleFormSubmit(event);\n '},{actionType:"custom",script:" if(window.innerWidth < 768){ document.querySelector('.steedos-select-user-sidebar').classList.remove('steedos-select-user-sidebar-open'); }"}]}},label:"",mode:"normal",name:"organizations",multiple:!1,joinValues:!1,clearValueOnHidden:!1,fieldName:"organizations",hideRoot:!0,initiallyOpen:!1,extractValue:!0,onlyChildren:!0,treeContainerClassName:"no-border",showIcon:!1,enableNodePath:!1,autoCheckChildren:!1,searchable:!0,searchConfig:{sticky:!0,placeholder:"查找部门"},unfoldedLevel:2,originPosition:"left-top"},n=[];return e?(n.push({type:"action",body:[{type:"action",body:[t],className:"h-full w-[240px]"}],className:"absolute inset-0 steedos-select-user-sidebar",onEvent:{click:{actions:[{actionType:"custom",script:"document.querySelector('.steedos-select-user-sidebar').classList.remove('steedos-select-user-sidebar-open')"}]}},id:"steedos_crud_toolbar_select_user_tree"}),n.push({type:"button",label:"组织",icon:"fa fa-sitemap",className:"bg-white p-2 rounded border-gray-300 text-gray-500",align:"left",onEvent:{click:{actions:[{actionType:"custom",script:"document.querySelector('.steedos-select-user-sidebar').classList.toggle('steedos-select-user-sidebar-open')"}]}},id:"steedos_crud_toolbar_organization_button"})):n.push(t),n}async function lookupToAmisPicker(e,t,n){let r=await getReferenceTo(e);if(!r)return;const o=await getUISchema(r.objectName);n.idFieldName=o.idFieldName,n.objectName=o.name;const a=!1!==e.show_left_filter;let i=[];const s=[];let l=[];const c=window.innerWidth<768;let u=getLookupListView(o),d=u&&u.name;u&&u.columns?(lodash.exports.each(u.columns,(function(e){lodash.exports.isString(e)&&o.fields[e]?l.push(o.fields[e]):lodash.exports.isObject(e)&&o.fields[e.field]&&l.push(Object.assign({},o.fields[e.field],{width:e.width,wrap:e.wrap,amis:e.amis}))})),lodash.exports.each(u.extra_columns||[],(function(e){lodash.exports.isString(e)?l.push({extra:!0,name:e}):lodash.exports.isObject(e)&&l.push({extra:!0,name:e.field})}))):(lodash.exports.each(o.fields,((e,t)=>{"_id"==t||e.hidden||(lodash.exports.has(e,"name")||(e.name=t),l.push(e))})),l=lodash.exports.sortBy(l,"sort_no").slice(0,5)),lodash.exports.each(l,(function(e){lodash.exports.find(i,(function(t){return t.name===e.name}))||i.push(e)}));let f=e.auto_fill_mapping;f&&f.length&&f.forEach((function(e){lodash.exports.find(i,(function(t){return t.name===e.from}))||i.push(o.fields[e.from])})),lodash.exports.each(o.fields,(function(e){isFieldQuickSearchable(e,o.NAME_FIELD_KEY)&&s.push(e.name)}));const p={[r.labelField.name]:r.labelField,[r.valueField.name]:r.valueField};lodash.exports.each(i,(e=>{e.hidden||(p[e.name]=e)}));let _=getListViewFilter(u),m=u&&u._filters,g="";u&&(g=getListViewSort(u));const h=await getApi(o,null,p,{expand:!0,alias:"rows",queryOptions:'filters: {__filters}, top: {__top}, skip: {__skip}, sort: "{__sort}"'});if(h.url&&!n.inFilterForm){const t=[],n=[];lodash.exports.each(e.depend_on,(e=>{t.push(`depend_on_${e}=\${${e}}`),n.push(`this.${e}`)})),t.length>0&&(h.url=`${h.url}?${t.join("&")}`,h.sendOn=`${n.join(" && ")}`)}h.trackExpression=`\${${e.name}}`,h.data.$term="$term",h.data.$self="$$";let v=`__keywords_lookup__${e.name.replace(/\./g,"_")}__to__${o.name}`;const y=e.filter_form_data;h.requestAdaptor=`\n let __changedFilterFormValuesKey = "__changedFilterFormValues";\n let __lookupField = api.data.$self.__lookupField;\n if(__lookupField){\n let lookupTag = "__lookup__" + __lookupField.name + "__" + __lookupField.reference_to;\n if(__lookupField.reference_to_field){\n lookupTag += "__" + __lookupField.reference_to_field;\n }\n __changedFilterFormValuesKey += lookupTag;\n }\n let __changedFilterFormValues = api.data.$self[__changedFilterFormValuesKey] || {};\n let __changedSearchBoxValues = api.data.$self.__changedSearchBoxValues || {};\n // 把表单搜索和快速搜索中的change事件中记录的过滤条件也拼到$self中,是为解决触发搜索请求时,两边输入的过滤条件都带上,即:\n // 有时在搜索表单中输入过滤条件事,忘记点击回车键或搜索按钮,而是进一步修改快速搜索框中的关键字点击其中回车键触发搜索\n // 这种情况下,触发的搜索请求中没有带上搜索表单中输入的过滤条件。\n // 反过来先在快速搜索框中输入过滤条件却不点击其中回车键触发搜索,而是到搜索表单中触发搜索请求也是一样的。\n if(api.data.$self.op !== 'loadOptions'){\n Object.assign(api.data.$self, __changedSearchBoxValues, __changedFilterFormValues);\n }\n const selfData = JSON.parse(JSON.stringify(api.data.$self));\n ${_&&!n.inFilterForm?`var filters = ${JSON.stringify(_)};`:"var filters = [];"}\n var pageSize = api.data.pageSize || 10;\n var pageNo = api.data.pageNo || 1;\n var skip = (pageNo - 1) * pageSize;\n var orderBy = api.data.orderBy || '';\n var orderDir = api.data.orderDir || '';\n var sort = orderBy + ' ' + orderDir;\n sort = orderBy ? sort : "${g}";\n var allowSearchFields = ${JSON.stringify(s)};\n let fieldValue;\n if(api.data.$term){\n filters = [["name", "contains", "'+ api.data.$term +'"]];\n }else if(selfData.op === 'loadOptions' && selfData.value){\n if(selfData.value && selfData.value.indexOf(',') > 0){\n fieldValue = selfData.value.split(',');\n filters = [["${r.valueField.name}", "=", fieldValue]];\n }else{\n fieldValue = selfData.value;\n filters = [["${r.valueField.name}", "=", fieldValue]];\n }\n }\n\n let filterFormValues = {};\n if (selfData.op !== 'loadOptions'){\n filterFormValues = ${lodash.exports.isObject(y)?JSON.stringify(y):'"'+y+'"'} || {};\n const isAmisFormula = typeof filterFormValues === "string" && filterFormValues.indexOf("\${") > -1;\n if (isAmisFormula){\n filterFormValues = AmisCore.evaluate(filterFormValues, context) || {};\n }\n if (_.isObject(filterFormValues) || !_.isEmpty(filterFormValues)){\n let fields = api.data.$self.uiSchema && api.data.$self.uiSchema.fields;\n filterFormValues = SteedosUI.getSearchFilterFormValues(filterFormValues, fields);\n }\n }\n\n var searchableFilter = SteedosUI.getSearchFilter(Object.assign({}, { ...filterFormValues }, selfData)) || [];\n\n if(searchableFilter.length > 0){\n if(filters.length > 0 ){\n filters = [filters, 'and', searchableFilter];\n }else{\n filters = searchableFilter;\n }\n }\n\n if(${"space_users"===r?.objectName} && ${"user"===e.reference_to_field}){\n if(filters.length > 0){\n filters = [ ["user_accepted", "=", true], "and", filters ]\n }else{\n filters = [["user_accepted", "=", true]];\n }\n }\n\n if(allowSearchFields){\n allowSearchFields.forEach(function(key){\n const keyValue = selfData[key];\n if(_.isString(keyValue)){\n filters.push([key, "contains", keyValue]);\n }else if(_.isArray(keyValue) || _.isBoolean(keyValue) || keyValue){\n filters.push([key, "=", keyValue]);\n }\n })\n }\n\n var keywordsFilters = SteedosUI.getKeywordsSearchFilter(selfData.${v}, allowSearchFields);\n if(keywordsFilters && keywordsFilters.length > 0){\n filters.push(keywordsFilters);\n }\n\n var fieldFilters = ${JSON.stringify(e.filters)};\n var currentAmis = (window.amisRequire && window.amisRequire('amis')) || Amis;\n //递归fieldFilters数组,检查每一个元素,判断若是公式,就仅把它解析\n function traverseNestedArray(arr) {\n for (let i = 0; i < arr.length; i++) {\n if (Array.isArray(arr[i])) {\n // 如果当前元素是数组,则递归调用自身继续遍历\n traverseNestedArray(arr[i]);\n } else {\n // 如果当前元素不是数组,则处理该元素\n // 下面正则用于匹配amis公式\${}\n if(/\\$\\{([^}]*)\\}/.test(arr[i])) {\n try{\n arr[i] = currentAmis.evaluate(arr[i], api.context);\n }catch(ex){\n console.error("运行lookup过滤公式时出现错误:",ex);\n }\n }\n }\n }\n }\n if(fieldFilters && fieldFilters.length){\n traverseNestedArray(fieldFilters);\n filters.push(fieldFilters);\n }\n \n const inFilterForm = ${n.inFilterForm};\n\n const listviewFiltersFunction = ${m};\n\n if(listviewFiltersFunction && !inFilterForm){\n const _filters0 = listviewFiltersFunction(filters, api.data.$self.__super);\n if(_filters0 && _filters0.length){\n filters.push(_filters0);\n }\n }\n \n const filtersFunction = ${e.filtersFunction||e._filtersFunction};\n\n if(filtersFunction && !inFilterForm){\n const _filters = filtersFunction(filters, api.data.$self.__super);\n if(_filters && _filters.length > 0){\n filters.push(_filters);\n }\n }\n\n const enable_tree = ${o.enable_tree};\n if(enable_tree){\n pageSize = 10000;\n }\n if(fieldValue && _.isArray(fieldValue) && fieldValue.length > pageSize){\n pageSize = fieldValue.length;\n }\n api.data.query = api.data.query.replace(/{__filters}/g, JSON.stringify(filters)).replace('{__top}', pageSize).replace('{__skip}', skip).replace('{__sort}', sort.trim());\n return api;\n `,h.adaptor=`\n const enable_tree = ${o.enable_tree};\n const op = api.data.$self.op;\n if(!_.isEmpty(op)){\n // op不为空,表示处于字段初始编辑状态,不是点击后出现弹窗状态。\n // 这里不可以用_.pick函数让payload只返回labelField和valueField,因为字段上配置的amis autoFill功能可能依赖了其他字段\n /*\n const rows = _.map(payload.data.rows, (item)=>{\n return _.pick(item, ["${r.labelField.name}", "${r.valueField.name}"]);\n })\n payload.data.rows = rows;\n */\n if(enable_tree){\n const rows = _.map(payload.data.rows, (item)=>{\n if (!item.children) {\n return { ...item, children: [] };\n } else {\n return item;\n }\n })\n payload.data.rows = rows;\n }\n return payload;\n }\n if(!payload.data.rows){\n payload.data.rows = [];\n }\n if(enable_tree){\n const records = payload.data.rows;\n const treeRecords = [];\n\n const getParentIds = (records)=>{\n const ids = _.map(records, (item)=>{\n return item._id;\n });\n const parents = _.filter(records,(record)=>{\n return !record.parent || !_.includes(ids,record.parent);\n })\n const parentsIds = _.map(parents,(item)=>{\n return item._id;\n })\n return parentsIds;\n }\n const getChildren = (records, childrenIds)=>{\n if(!childrenIds){\n return;\n }\n const children = _.filter(records, (record)=>{\n return _.includes(childrenIds, record._id)\n });\n _.each(children, (item)=>{\n if(item.children){\n item.children = getChildren(records, item.children)\n }else{\n item.children = [];\n }\n })\n return children;\n }\n\n const parentIds = getParentIds(records);\n _.each(records, (record)=>{\n if(!record.parent || _.includes(parentIds, record._id)){\n treeRecords.push(Object.assign({}, record, {children: getChildren(records, record.children)}));\n }\n });\n payload.data.rows = treeRecords;\n }\n const result = payload.data.rows;\n if(result && result.length){\n const updatedResult = _.map(result, (element) => {\n const data = { ...element };\n // image字段值添加URL前缀\n ${getScriptForAddUrlPrefixForImgFields(lodash.exports.values(o.fields))}\n return data;\n });\n payload.data.rows = updatedResult;\n }\n let __changedFilterFormValuesKey = "__changedFilterFormValues";\n let __lookupField = api.data.$self.__lookupField;\n if(__lookupField){\n let lookupTag = "__lookup__" + __lookupField.name + "__" + __lookupField.reference_to;\n if(__lookupField.reference_to_field){\n lookupTag += "__" + __lookupField.reference_to_field;\n }\n __changedFilterFormValuesKey += lookupTag;\n }\n let __changedFilterFormValues = api.context[__changedFilterFormValuesKey] || {};\n let __changedSearchBoxValues = api.context.__changedSearchBoxValues || {};\n // 列表搜索和快速搜索,有时在某些操作情况下还是会造成crud接口请求使用的过滤条件是上次的,这里强制把正确的过滤条件返回到crud,详细规则见:https://github.com/steedos/steedos-platform/issues/7112\n payload.data[__changedFilterFormValuesKey] = __changedFilterFormValues;\n payload.data.__changedSearchBoxValues = __changedSearchBoxValues;\n return payload;\n `,(e.optionsFunction||e._optionsFunction)&&(h.adaptor=`\n payload.data.rows = eval(${e.optionsFunction||e._optionsFunction})(api.data.$self);\n return payload;\n `);let b=500;o.paging&&!1===o.paging.enabled&&(b=1e3);let w=null;{let t=o.NAME_FIELD_KEY||"name";"organizations"===o.name&&(t="name"),w=await getTableSchema$1(o,i,{labelFieldName:t,top:b,isLookup:!0,enable_tree:o.enable_tree,...n}),w.affixHeader=!1,w.headerToolbar=getObjectHeaderToolbar(o,l,n.formFactor,{isLookup:!0,keywordsSearchBoxName:v}),"space_users"===r.objectName&&"user"===e.reference_to_field&&a&&(w.headerToolbar.push(getLookupSapceUserTreeSchema(c)),w.className=w.className||" steedos-select-user");const s=o.permissions.allowCreate,u=!lodash.exports.isBoolean(e.create)||e.create;let f=!lodash.exports.isEmpty(e.filters)||!!e.filtersFunction||!!e._filtersFunction;if(s&&u&&!f){const e=await getSchema$5(o,{appId:n.appId,objectName:o.name,formFactor:n.formFactor});e.align="right",w.headerToolbar.splice(w.headerToolbar.length-1,0,e)}w.footerToolbar=o.enable_tree?[]:getObjectFooterToolbar(o,n.formFactor,{isLookup:!0}),!1!==n.filterVisible&&(w.filter=await getObjectFilter(o,p,{...n,isLookup:!0,keywordsSearchBoxName:v,searchable_fields:e.searchable_fields,auto_open_filter:e.auto_open_filter,show_left_filter:e.show_left_filter,filter_form_data:e.filter_form_data})),w.data=Object.assign({},w.data,{"&":"$$",objectName:o.name,uiSchema:o,listName:d,isLookup:!0,__lookupField:{name:e.name,reference_to:o.name,reference_to_field:e.reference_to_field,filters:e.filters,filtersFunction:e.filtersFunction,_filtersFunction:e._filtersFunction,inFilterForm:n.inFilterForm,listviewFilter:_,listviewFiltersFunction:m}}),w.onEvent||(w.onEvent={}),w.onEvent[`@data.changed.${o.name}`]={actions:[{actionType:"reload"},{actionType:"custom",script:`\n // lookup字段弹出列表,点击新建按钮,新建记录成功后,触发@data.changed.xxx,\n // 此时context.props.data值是lookup字段所在表单数据,经测试多层lookup弹出列表新建记录成功后context.props.data始终取的是最近一层的lookup字段所在表单数据,符合预期\n const masterRecord = context.props.data;//event.data._master && event.data._master.record;\n const fieldConfig = ${JSON.stringify(e)};\n let reference_to = fieldConfig.reference_to;\n let saveValue;\n const newRecord = {\n _id: event.data.result.data.recordId,\n ...event.data.__super.__super\n }\n const saveField = fieldConfig.reference_to_field || '_id';\n const saveFieldValue = newRecord[saveField];\n if( fieldConfig._reference_to && (_.isArray(fieldConfig._reference_to) || _.isFunction(fieldConfig._reference_to) || fieldConfig._reference_to.startsWith('function') ) ){\n \n const fieldValue = masterRecord ? masterRecord[fieldConfig.name] : {o: reference_to, ids: []};\n const baseSaveValue = {\n o: reference_to,\n ids: [saveFieldValue]\n };\n if(fieldValue && fieldValue.o){\n if(fieldValue.o === reference_to){\n saveValue = fieldConfig.multiple ? { o: reference_to, ids: fieldValue.ids.concat(saveFieldValue)} : baseSaveValue;\n }else{\n saveValue = baseSaveValue;\n }\n }else{\n saveValue = baseSaveValue;\n }\n\n }else{\n if(fieldConfig.multiple){\n // const fieldValue = (masterRecord && masterRecord[fieldConfig.name]) || [];\n // 连续新建多个记录时,因为masterRecord获取的主记录不是实时的,所以只会勾选最后一个新建的记录\n // 而下面context.context.component指向的是lookup picker组件,可以直接取到用户实时勾选的记录。\n const fieldValue = context.context.component.props.store.toJSON().selectedItems\n saveValue = fieldValue.concat(saveFieldValue);\n }else{\n saveValue = saveFieldValue;\n }\n }\n \n const ctx = ${JSON.stringify(n)};\n const componentId = ctx.defaults && ctx.defaults.formSchema && ctx.defaults.formSchema.id;\n doAction({\n actionType: 'setValue',\n componentId: componentId, \n args: {\n value: { [fieldConfig.name]: saveValue }\n }\n });\n `}]}}e.pickerSchema&&(w=Object.assign({},w,e.pickerSchema)),"space_users"===r.objectName&&"user"===e.reference_to_field&&c&&(w.headerToolbar=w.headerToolbar&&w.headerToolbar.filter((function(e){return["steedos_crud_toolbar_quick_search","steedos_crud_toolbar_filter","steedos_crud_toolbar_select_user_tree","steedos_crud_toolbar_organization_button"].indexOf(e.id)>-1})),w.footerToolbar=["pagination"]),e.inlineHelpText&&(w.toolbarClassName="hasHelpText",w.headerToolbar=[{type:"tpl",tpl:e.inlineHelpText,className:"text-secondary"},...w.headerToolbar]),w.className=(w.className||"")+" steedos-lookup-crud";const S={type:getAmisStaticFieldType("picker",t),className:n.className||"",modalTitle:instance.t("frontend_form_please_select")+" "+o.label,labelField:r.labelField.name,valueField:r.valueField.name,disabledOn:`${t} || ( (this._master && (this._master.relatedKey ==='${e.name}')) || ((this.relatedKey ==='${e.name}') && (${e.multiple} != true)) )`,modalMode:"dialog",source:h,size:"lg",pickerSchema:w,joinValues:!1,extractValue:!0};return e.multiple&&(S.multiple=!0,S.extractValue=!0),t&&(S.tpl=await getLookupTpl(e,n)),S}async function lookupToAmisSelect(e,t,n){let r=await getReferenceTo(e);const o=window.innerWidth<=768,a=r&&r.valueField?.name||"_id";let i,s;const l=r&&await getUISchema(r.objectName);if(r){let t=[Object.assign({},r.labelField,{alias:"label"}),Object.assign({},r.valueField,{alias:"value"})],n=e.auto_fill_mapping;n&&n.length&&n.forEach((function(e){t.push(l.fields[e.from])})),s=await getFindQuery({name:r.objectName},null,t,{expand:!1,alias:"defaultValueOptions",filters:"{__options_filters}",count:!1}),i=await getApi({name:r.objectName},null,t,{expand:!1,alias:"options",queryOptions:'filters: {__filters}, top: {__top}, sort: "{__sort}"'}),i.adaptor='\n const data = payload.data;\n var defaultValueOptions = data.defaultValueOptions;\n // 字段值下拉选项合并到options中\n data.options = _.unionWith(defaultValueOptions, data.options, function(a,b){\n return a["value"]=== b["value"];\n });\n delete data.defaultValueOptions;\n payload.data.options = data.options;\n return payload;\n '}else i={method:"post",data:{$:"$$",query:""},url:"/api/amis/health_check?reload=${additionalFilters|join}&listName=${listName}"};let c=getLookupListView(l),u=getListViewFilter(c),d=c&&c._filters,f="";if(c&&(f=getListViewSort(c)),i.url&&!n.inFilterForm){const t=[],n=[];lodash.exports.each(e.depend_on,(e=>{t.push(`depend_on_${e}=\${${e}}`),n.push(`this.${e}`)})),t.length>0&&(i.url=`${i.url}&${t.join("&")}`,i.sendOn=`${n.join(" && ")}`)}i.data.$term="$term",i.data.$value=n.isRefToMutiple?`$${e.name}.ids`:`$${e.name}`,lodash.exports.each(e.depend_on,(function(e){i.data[e]=`$${e}`})),i.data.$="$$",i.data.rfield="${object_name}",i.requestAdaptor=`\n ${u&&!n.inFilterForm?`var filters = ${JSON.stringify(u)};`:"var filters = [];"}\n var top = 200;\n if(api.data.$term){\n filters = [["${r?.NAME_FIELD_KEY||"name"}", "contains", api.data.$term]];\n }\n // else if(api.data.$value){\n // filters = [["_id", "=", api.data.$value]];\n // }\n\n var fieldFilters = ${JSON.stringify(e.filters)};\n var currentAmis = (window.amisRequire && window.amisRequire('amis')) || Amis;\n //递归fieldFilters数组,检查每一个元素,判断若是公式,就仅把它解析\n function traverseNestedArray(arr) {\n for (let i = 0; i < arr.length; i++) {\n if (Array.isArray(arr[i])) {\n // 如果当前元素是数组,则递归调用自身继续遍历\n traverseNestedArray(arr[i]);\n } else {\n // 如果当前元素不是数组,则处理该元素\n // 下面正则用于匹配amis公式\${}\n if(/\\$\\{([^}]*)\\}/.test(arr[i])) {\n try{\n arr[i] = currentAmis.evaluate(arr[i], api.context);\n }catch(ex){\n console.error("运行lookup过滤公式时出现错误:",ex);\n }\n }\n }\n }\n }\n if(fieldFilters && fieldFilters.length){\n traverseNestedArray(fieldFilters);\n filters.push(fieldFilters);\n }\n\n if(${"space_users"===r?.objectName} && ${"user"===e.reference_to_field}){\n if(filters.length > 0){\n filters = [ ["user_accepted", "=", true], "and", filters ]\n }else{\n filters = [["user_accepted", "=", true]];\n }\n }\n\n const inFilterForm = ${n.inFilterForm};\n\n const listviewFiltersFunction = ${d};\n\n if(listviewFiltersFunction && !inFilterForm){\n const _filters0 = listviewFiltersFunction(filters, api.data.$);\n if(_filters0 && _filters0.length){\n filters.push(_filters0);\n }\n }\n \n const filtersFunction = ${e.filtersFunction||e._filtersFunction};\n\n if(filtersFunction && !inFilterForm){\n const _filters = filtersFunction(filters, api.data.$);\n if(_filters && _filters.length > 0){\n filters.push(_filters);\n }\n }\n var sort = "${f}";\n api.data.query = api.data.query.replace(/{__filters}/g, JSON.stringify(filters)).replace('{__top}', top).replace('{__sort}', sort.trim());\n\n var defaultValue = api.data.$value;\n var optionsFiltersOp = "${e.multiple?"in":"="}";\n var optionsFilters = [["${a}", optionsFiltersOp, []]];\n if (defaultValue && !api.data.$term) { \n const defaultValueOptionsQueryData = ${JSON.stringify(s)};\n const defaultValueOptionsQuery = defaultValueOptionsQueryData && defaultValueOptionsQueryData.query && defaultValueOptionsQueryData.query.replace(/^{/,"").replace(/}$/,"");\n // 字段值单独请求,没值的时候在请求中返回空\n optionsFilters = [["${a}", optionsFiltersOp, defaultValue]];\n if(filters.length > 0){\n optionsFilters = [filters, optionsFilters];\n }\n if(defaultValueOptionsQuery){\n api.data.query = "{"+api.data.query.replace(/^{/,"").replace(/}$/,"")+","+defaultValueOptionsQuery+"}";\n } \n }\n api.data.query = api.data.query.replace(/{__options_filters}/g, JSON.stringify(optionsFilters));\n return api;\n `,r&&r.labelField.name,r&&r.valueField.name,e.optionsFunction||e._optionsFunction?i.adaptor=`\n var options = eval(${e.optionsFunction||e._optionsFunction})(api.data.$);\n if(api.data.$term){\n options = _.filter(options, function(o) {\n var label = o.label;\n return label.toLowerCase().indexOf(api.data.$term.toLowerCase()) > -1;\n });\n }\n payload.data.options = options;\n return payload;\n `:e.options&&(i.adaptor=`\n var options = ${JSON.stringify(e.options)}\n if(api.data.$term){\n options = _.filter(options, function(o) {\n var label = o.label;\n return label.toLowerCase().indexOf(api.data.$term.toLowerCase()) > -1;\n });\n }\n payload.data.options = options;\n return payload;\n `);const p={type:getAmisStaticFieldType("select",t),joinValues:!1,extractValue:!0,clearable:!0,disabledOn:`${t} || ( (this._master && (this._master.relatedKey ==='${e.name}')) || ((this.relatedKey ==='${e.name}') && (${e.multiple} != true)) )`,autoComplete:i,searchable:!0};getComparableAmisVersion()>=3.6&&(p.source=i,delete p.autoComplete);return o&&e.multiple||(p.menuTpl="${icon ? `<span class='flex items-center mt-0.5'>\n <span role='img' aria-label='smile' class='anticon anticon-smile'>\n <span class='slds-icon_container slds-icon-standard-${REPLACE(icon,'_','-')}'>\n <svg class='slds-icon slds-icon_x-small' aria-hidden='true'>\n <use xlink:href='/assets/icons/standard-sprite/svg/symbols.svg#${icon}'></use>\n </svg>\n </span> \n </span>\n <span class='pl-1.5'>${label}</span>\n </span>` : label}"),e.multiple&&(p.multiple=!0,p.extractValue=!0),t&&(p.tpl=await getLookupTpl(e,n)),p}async function getApi(e,t,n,r){const o=await getFindQuery(e,t,n,r);return{method:"post",url:getApi$2(),data:o,headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}}}async function getAutoFill(e,t){let n=e.auto_fill_mapping;if(n&&n.length){let r={};return e.multiple?n.forEach((function(e){lodash.exports.includes(["lookup","master_detail","select"],t.fields[e.from].type)?r[e.to]=`\${items | pick:${e.from}}`:r[e.to]=`\${items | pick:${e.from} | join}`})):n.forEach((function(e){r[e.to]=`\${${e.from}}`})),r}}async function lookupToAmis(e,t,n){if(n||(n={}),t)return e.reference_to&&!e.isTableField?{type:"steedos-field",config:e,static:!0}:{type:getAmisStaticFieldType("picker",t),tpl:getRelatedFieldTpl(e,n)};if(e.reference_to&&!lodash.exports.isString(e.reference_to)&&!t)return{type:"steedos-field-lookup",field:e,readonly:t,ctx:n};let r=await getReferenceTo(e);if(!r)return await lookupToAmisSelect(e,t,n);if("space_users"===r.objectName&&"user"===e.reference_to_field&&(n=Object.assign({},n,{onlyDisplayLookLabel:!0})).idsDependOn)return await lookupToAmisIdsPicker(e,t,n);const o=await getUISchema(r.objectName);let a,i=lodash.exports.isBoolean(e.enable_enhanced_lookup)?e.enable_enhanced_lookup:o.enable_enhanced_lookup;getComparableAmisVersion()>=3.6&&!i&&o.enable_tree&&e.multiple&&(i=!0),1==i&&e.amis&&e.amis.type&&"picker"!==e.amis.type&&(i=!1),a=1==i?await lookupToAmisPicker(e,t,n):o.enable_tree?await lookupToAmisTreeSelect(e,t,Object.assign({},n,{labelField:r.labelField?.name||"name",valueField:r.valueField?.name||"_id",objectName:r.objectName})):await lookupToAmisSelect(e,t,n);let s=o.pages&&o.pages.lookup;if(s&&s.is_enable){let e=s.amis_schema;"string"==typeof e&&(e=JSON.parse(e)),a=lodash.exports.defaultsDeep({},e,a)}const l=await getAutoFill(e,o);return l&&(a.autoFill=l),a}async function lookupToAmisIdsPicker(e,t,n){return getIdsPickerSchema(e,t,n)}async function getIdsPickerSchema(e,t,n){n||(n={});let r=await getReferenceTo(e);if(!r)return;const o=await getUISchema(r.objectName),{idsDependOn:a}=n,i={[r.labelField.name]:r.labelField,[r.valueField.name]:r.valueField},s=[r.labelField],l=await getApi(o,null,i,{expand:!0,alias:"rows",queryOptions:'filters: {__filters}, top: {__top}, skip: {__skip}, sort: "{__sort}"'});l.data.$term="$term",l.data.$self="$$",a&&l.url&&!n.inFilterForm&&(l.sendOn=`\${${a} && ${a}.length}`,l.url=`${l.url}&depend_on_${a}=\${${a}|join}`);let c=getLookupListView(o),u="";c&&(u=getListViewSort(c)),l.requestAdaptor=`\n const selfData = JSON.parse(JSON.stringify(api.data.$self));\n var filters = [];\n var pageSize = api.data.pageSize || 1000;\n var pageNo = api.data.pageNo || 1;\n var skip = (pageNo - 1) * pageSize;\n var orderBy = api.data.orderBy || '';\n var orderDir = api.data.orderDir || '';\n var sort = orderBy + ' ' + orderDir;\n sort = orderBy ? sort : "${u}";\n if(selfData.op === 'loadOptions' && selfData.value){\n if(selfData.value && selfData.value.indexOf(',') > 0){\n filters = [["${r.valueField.name}", "=", selfData.value.split(',')]];\n }else{\n filters = [["${r.valueField.name}", "=", selfData.value]];\n }\n }\n\n var ids;\n var idsDependOn = "${a}";\n if(idsDependOn){\n ids = api.data.$self[idsDependOn];\n }\n if(ids && ids.length){\n filters.push(["${r.valueField.name}", "=", ids]);\n }\n\n api.data.query = api.data.query.replace(/{__filters}/g, JSON.stringify(filters)).replace('{__top}', pageSize).replace('{__skip}', skip).replace('{__sort}', sort.trim());\n return api;\n `;let d=null;"SMALL"===n.formFactor?d=await getListSchema$1(s,{top:1e3,...n,actions:!1}):(d=await getTableSchema$1(o,s,{labelFieldName:o.NAME_FIELD_KEY,top:1e3,isLookup:!0,...n}),d.affixHeader=!1);const f={type:getAmisStaticFieldType("picker",t),labelField:r.labelField.name,valueField:r.valueField.name,modalMode:"dialog",source:l,disabledOn:`${t} || ( (this._master && (this._master.relatedKey ==='${e.name}')) || ((this.relatedKey ==='${e.name}') && (${e.multiple} != true)) )`,size:"lg",pickerSchema:d,joinValues:!1,extractValue:!0};return e.multiple&&(f.multiple=!0,f.extractValue=!0),n.value&&(f.value=n.value),null!=n.selectFirst&&(f.selectFirst=n.selectFirst),t&&(f.tpl=await getLookupTpl(e,n)),f}"undefined"!=typeof window&&(window.getReferenceTo=getReferenceTo,window.getReferenceToSync=getReferenceToSync);const getMarkdownFieldSchema=(e,t,n)=>t?{type:"control",label:e.label,body:{type:"markdown",name:e.name,options:{linkify:!0,html:!0,breaks:!0}}}:{type:"control",label:e.label,body:[{type:"tabs",tabsMode:"strong",className:"steedos-markdown",tabs:[{title:instance.t("frontend_form_edit"),tab:[{type:"editor",name:e.name,labelClassName:"none",language:"markdown",options:e.amis?e.amis.editorOptions:null}]},{title:instance.t("frontend_form_preview"),tab:[{type:"markdown",name:e.name,options:{linkify:!0,html:!0,breaks:!0}}]}]}]},getHtmlFieldSchema=(e,t,n)=>t?{type:"input-rich-text",receiver:"${context.rootUrl}/s3/images",name:e.name,options:{plugins:["autoresize"],statusbar:!1,readonly:!0,toolbar:!1,menubar:!1}}:{type:"input-rich-text",receiver:"${context.rootUrl}/s3/images",options:{statusbar:!1,menubar:!1},name:e.name},QUICK_SEARCHABLE_FIELD_TYPES=["text","textarea","autonumber","url","email"],OMIT_FIELDS=["created","created_by","modified","modified_by"];function getObjectFieldSubFields(e,t){const n=Object.assign({subFields:[]},e),r=lodash.exports.filter(t,(function(t){let n=t.name.startsWith(`${e.name}.`)&&lodash.exports.split(t.name,".").length<3;return n&&(t._prefix=`${e.name}.`),n}));return n.subFields=r,n}function getGridFieldSubFields(e,t){const n=Object.assign({subFields:[]},e),r=lodash.exports.filter(t,(function(t){let n=t.name.startsWith(`${e.name}.`);return n&&(t._prefix=`${e.name}.`),n}));return n.subFields=r,n}function getTabledFieldSubFields(e,t){const n=Object.assign({subFields:[]},e),r=lodash.exports.filter(t,(function(t){let n=t.name.startsWith(`${e.name}.`);return n&&(t._prefix=`${e.name}.`),n}));return n.subFields=r,n}function getSelectFieldOptions(e){const t=e.data_type||"text",n=[];return lodash.exports.each(e.options,(e=>{switch(t){case"number":n.push({label:e.label,value:Number(e.value),icon:e.icon});break;case"text":n.push({label:e.label,value:String(e.value),icon:e.icon});break;case"boolean":n.push({label:e.label,value:"false"!==e.value,icon:e.icon})}})),n}async function convertSFieldToAmisField(e,t,n){const r=window.innerWidth<=768;if(lodash.exports.includes(OMIT_FIELDS,e.name)&&1!=n.showSystemFields)return;const o={name:n.fieldNamePrefix?`${n.fieldNamePrefix}${e.name}`:e.name,label:e.label,labelRemark:e.inlineHelpText,description:e.description,required:lodash.exports.has(n,"required")?n.required:e.required};let a={};switch(e.type){case"text":a.type=getAmisStaticFieldType("text",t,e);break;case"textarea":a.type=getAmisStaticFieldType("textarea",t),a.tpl=`<%=(data.${e.name} || "").split("\\n").join('<br>')%>`;break;case"html":a=getHtmlFieldSchema(e,t);break;case"markdown":a=getMarkdownFieldSchema(e,t);break;case"select":if(t){const t=getSelectMap(e.options);a={type:"static-mapping",name:e.name,label:e.label,options:e.options,map:t}}else{a={type:getAmisStaticFieldType("select",t),joinValues:!1,options:getSelectFieldOptions(e),extractValue:!0,clearable:!0,labelField:"label",valueField:"value"};const n="${icon ? `"+"<span class='flex items-center mt-0.5'>\n <span role='img' aria-label='smile' class='anticon anticon-smile'>\n <span class='slds-icon_container slds-icon-standard-${REPLACE(icon,'_','-')}'>\n <svg class='slds-icon slds-icon_x-small' aria-hidden='true'>\n <use xlink:href='/assets/icons/standard-sprite/svg/symbols.svg#${icon}'></use>\n </svg>\n </span> \n </span>\n <span class='pl-1.5'>${label}</span>\n </span>"+"` : label}";r&&e.multiple||(a.menuTpl=n),e.multiple&&(a.multiple=!0,a.extractValue=!0)}break;case"color":a={type:getAmisStaticFieldType("color",t),name:e.name,label:e.label},t?a.defaultColor=null:a.pipeIn=(e,t)=>e&&e.indexOf("#")<0?"#"+e:e;break;case"boolean":a={type:getAmisStaticFieldType("checkbox",t),tpl:t?getSwitchTpl(e):null};break;case"input-date-range":a={type:"input-date-range",inputFormat:"YYYY-MM-DD",format:"YYYY-MM-DDT00:00:00.000[Z]",tpl:t?getDateTpl(e):null,joinValues:!1,shortcuts:["thismonth","2monthsago","3monthslater","prevquarter","thisquarter","thisyear","lastYear"]};break;case"date":a={type:getAmisStaticFieldType("date",t),inputFormat:"YYYY-MM-DD",format:"YYYY-MM-DDT00:00:00.000[Z]",tpl:t?getDateTpl(e):null};break;case"input-datetime-range":a={type:"input-datetime-range",inputFormat:"YYYY-MM-DD HH:mm",format:"YYYY-MM-DDTHH:mm:ss.SSSZ",tpl:t?getDateTimeTpl(e):null,utc:!0,joinValues:!1,shortcuts:["thismonth","2monthsago","3monthslater","prevquarter","thisquarter","thisyear","lastYear"]};break;case"datetime":a={type:getAmisStaticFieldType("datetime",t),inputFormat:"YYYY-MM-DD HH:mm",format:"YYYY-MM-DDTHH:mm:00.000Z",tpl:t?getDateTimeTpl(e):null,utc:!0};break;case"input-time-range":a={type:"input-time-range",inputFormat:"HH:mm",timeFormat:"HH:mm",format:"1970-01-01THH:mm:00.000[Z]",tpl:t?getDateTimeTpl(e):null,joinValues:!1};break;case"time":a={type:getAmisStaticFieldType("time",t),inputFormat:"HH:mm",timeFormat:"HH:mm",format:"1970-01-01THH:mm:00.000[Z]",tpl:t?getDateTimeTpl(e):null};break;case"currency":case"number":a=t?{type:"static-tpl",tpl:getNumberTpl(e)}:{type:getAmisStaticFieldType("number",t),min:e.min,max:e.max,precision:e.scale};break;case"input-array":a=Object.assign({},e,o);break;case"input-range":a={type:"input-range",min:e.min,max:e.max,value:[0,0],multiple:!0,showInput:!0};break;case"percent":a=t?{type:"static-progress",name:"progress",pipeIn:(t,n)=>{if(t){return Number((100*t).toFixed(e.scale))}return t}}:{type:getAmisStaticFieldType("number",t),min:e.min,max:e.max,precision:e.scale,suffix:"%",pipeIn:(t,n)=>{if(t){return Number((100*t).toFixed(e.scale))}return t},pipeOut:(t,n,r)=>{if(t){return Number((t/100).toFixed(e.scale+2))}return t}};break;case"password":a={type:getAmisStaticFieldType("password",t),tpl:t?getPasswordTpl(e):null};break;case"lookup":case"master_detail":a=await lookupToAmis(e,t,n);break;case"autonumber":t?a={type:"static-text"}:e.autonumber_enable_modify&&(a={type:"input-group",body:[{type:"input-text",name:e.name},{type:"button",label:"自动获取",actionType:"ajax",api:{url:`\${context.rootUrl}/api/autonumber/generator/\${objectName}/${e.name}`,method:"post",headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"},adaptor:`\n var tempValue = payload.data && payload.data.autonumber;\n delete payload.data.autonumber;\n payload.data["${e.name}"] = tempValue;\n return payload;\n `},messages:{success:"获取成功"}}]});break;case"url":if(a={type:getAmisStaticFieldType("url",t,e),static:!!t},!t){let t=e.amis?.validations;void 0===t&&Object.assign(a,{validations:{matchRegexp:"^((http:\\/\\/|https:\\/\\/|ftp:\\/\\/|sftp:\\/\\/)+([^\\s\\/\\.]+(\\.[^\\s\\/\\.]+)+))*(\\/[^\\s\\.\\/]+)*$"},validationErrors:{matchRegexp:instance.t("frontend_form_validation_failed_url")}})}t&&e.show_as_qr&&(a={type:"control",label:e.label,body:{type:"qr-code",codeSize:128,name:e.name}});break;case"email":a={type:getAmisStaticFieldType("email",t)};break;case"location":let i="LiZT5dVbGTsPI91tFGcOlSpe5FDehpf7",s="baidu";if(window.Meteor){const e=Meteor.settings?.public?.amis?.map_ak;e&&(i=e);const t=Meteor.settings?.public?.amis?.map_vendor;t&&(s=t)}const l=e.coordinatesType||"bd09";a={type:getAmisStaticFieldType("location",t),tpl:t?getLocationTpl(e):null,ak:i,vendor:s,clearable:!0,coordinatesType:l,label:e.label,pipeOut:(e,t,n)=>{if(e){const t=e.lng,n=e.lat;let r=[t,n];if(window.coordtransform)if("bd09"===l.toLowerCase()){const e=window.coordtransform.bd09togcj02(t,n);r=window.coordtransform.gcj02towgs84(e[0],e[1])}else"gcj02"===l.toLowerCase()&&(r=window.coordtransform.gcj02towgs84(t,n));return e.wgs84={type:"Point",coordinates:r},e}}};break;case"avatar":case"image":case"file":a=await getAmisFileSchema(e,t,n);break;case"formula":case"summary":t&&(a={type:"static-tpl",tpl:getUiFieldTpl(e)});break;case"code":a={type:"editor",disabled:!!t,language:e.language,editorDidMount:new Function("editor","monaco",e.editorDidMount)};break;case"toggle":a={type:"switch",name:e.name,label:e.label,width:e.width,toggled:e.toggled,disabled:t};break;case"grid":if(e.subFields){a={type:"input-table",showIndex:!0,columnsTogglable:!1,strictMode:!1,affixHeader:!1,needConfirm:!1,editable:!t,addable:!t,removable:!t,draggable:!t,columns:[]};for(const r of e.subFields){const o=r.name.replace(`${e._prefix||""}${e.name}.$.`,"").replace(`${e.name}.`,""),i=await convertSFieldToAmisField(Object.assign({},r,{name:o,isTableField:!0}),t,n);if(i){delete i.name,delete i.label;const e={name:o,label:r.label,quickEdit:!t&&i};["lookup","boolean","toggle"].indexOf(r.type)>-1&&(e.type=i.type,e.tpl=i.tpl),a.columns.push(Object.assign({},e,r.amis,{name:o}))}}}break;case"table":if(e.subFields){a={type:"steedos-input-table",editable:!t,addable:!t,removable:!t,fields:[],amis:{columnsTogglable:!1}};for(const t of e.subFields)if(!t.name.endsWith(".$")){const n=t.name.replace(`${e._prefix||""}${e.name}.$.`,"").replace(`${e.name}.`,"");a.fields.push(Object.assign({},t,{name:n}))}}break;case"object":if(e.subFields){a={type:"combo",items:[]};for(let r of e.subFields){let o=r.name.replace(`${e.name}.$.`,"").replace(`${e.name}.`,"");"grid"===r.type?r=await getGridFieldSubFields(r,n.__formFields):"table"===r.type?r=await getTabledFieldSubFields(r,n.__formFields):t&&(o=`${e.name}.${o}`);const i=await convertSFieldToAmisField(Object.assign({},r,{name:o}),t,n);i&&(delete i.name,delete i.label,i.className=i.className.replace("border-b",""),a.items.push(Object.assign({},i,{label:r.label},r.amis,{name:o})))}}}if(!lodash.exports.isEmpty(a)){const r=a.className;e.is_wide||"group"===a.type?a.className=r?"col-span-2 m-0 "+r:"col-span-2 m-0":a.className=r?"m-0 "+r:"m-0",t&&"edit"!==n.mode&&(a.className=`${a.className} border-b`),t&&(a.quickEdit=!1,a.static=!0);let i,s=" steedos-"+a.type+(t?"-readonly":"-edit");return a.className=a.className+s,e.visible_on&&!n.inFilterForm&&(e.visible_on.startsWith("{{")?a.visibleOn=`${e.visible_on.substring(2,e.visible_on.length-2).replace(/formData./g,"data.")}`:a.visibleOn=`${e.visible_on.replace(/formData./g,"data.")}`),n.amisData&&n.amisData._master&&n.amisData._master.relatedKey===e.name&&(a.className=`${a.className||""} hidden`),lodash.exports.isString(o.required)&&o.required.startsWith("{{")&&(o.requiredOn=`${o.required.substring(2,o.required.length-2).replace(/formData./g,"data.")}`,delete o.required),"group"===a.type?(a.body[0]=Object.assign({},o,a.body[0],{labelClassName:"text-left",clearValueOnHidden:!0,fieldName:e.name}),a):(i="steedos-field"==a.type?Object.assign({},o,a,{labelClassName:"text-left",clearValueOnHidden:!0,fieldName:e.name},{name:o.name}):Object.assign({},o,a,{labelClassName:"text-left",clearValueOnHidden:!0,fieldName:e.name},e.amis,{name:o.name}),t&&"file"==e.type&&(i.name=""),i)}}async function getFieldSearchable(e,t,n){n||(n={});let r=e;"grid"===r.type?r=await getGridFieldSubFields(e,t):"object"===e.type&&(r=await getObjectFieldSubFields(e,t));let o="__searchable__";if(r.name.indexOf(".")<0){let e=lodash.exports.cloneDeep(r);lodash.exports.includes(["textarea","html","code","autonumber"],r.type)&&(e.type="text"),lodash.exports.includes(["formula","summary"],r.type)&&(e.type=r.data_type,e.precision=r.precision,e.scale=r.scale),"number"!==e.type&&"currency"!==e.type||(e.type="input-array",e.inline=!0,e.addable=!1,e.removable=!1,e.value=[null,null],e.items={type:"input-number",clearValueOnEmpty:!0},e.is_wide=!0,o=`${o}between__`),"date"===e.type&&(e.type="input-date-range",e.is_wide=!0,o=`${o}between__`),"datetime"===e.type&&(e.type="input-datetime-range",e.is_wide=!0,o=`${o}between__`),"time"===e.type&&(e.type="input-time-range",e.is_wide=!0,o=`${o}between__`),"users"===e.reference_to&&(e.reference_to="space_users",e.reference_to_field="user"),e.readonly=!1,e.disabled=!1,e.multiple=!0,e.is_wide=!1,e.defaultValue=void 0,e.required=!1,e.hidden=!1,e.omit=!1,e.amis&&(delete e.amis.static,delete e.amis.staticOn,delete e.amis.disabled,delete e.amis.disabledOn,delete e.amis.required,delete e.amis.requiredOn,delete e.amis.visible,delete e.amis.visibleOn,delete e.amis.hidden,delete e.amis.hiddenOn,delete e.amis.autoFill,(e.type.indexOf("-range")>-1||"input-array"===e.type)&&delete e.amis.type);const t=await convertSFieldToAmisField(e,!1,Object.assign({},n,{fieldNamePrefix:o,required:!1,showSystemFields:!0,inFilterForm:!0}));if(t)return t}}function isFieldTypeSearchable(e){return!lodash.exports.includes(["grid","table","avatar","image","object","[object]","[Object]","[grid]","[text]","audio","file"],e)}function isFieldQuickSearchable(e,t){let n=e.searchable;return!1!==n&&e.name===t&&(n=!0),!!(n&&QUICK_SEARCHABLE_FIELD_TYPES.indexOf(e.type)>-1)}function useCombinedRefs(...e){return React.useMemo((()=>t=>{e.forEach((e=>e(t)))}),e)}"undefined"!=typeof window&&(window.getFieldSearchable=getFieldSearchable),"undefined"!=typeof window&&(window.isFieldTypeSearchable=isFieldTypeSearchable);const canUseDOM="undefined"!=typeof window&&void 0!==window.document&&void 0!==window.document.createElement;function isWindow(e){const t=Object.prototype.toString.call(e);return"[object Window]"===t||"[object global]"===t}function isNode(e){return"nodeType"in e}function getWindow(e){var t,n;return e?isWindow(e)?e:isNode(e)&&null!=(t=null==(n=e.ownerDocument)?void 0:n.defaultView)?t:window:window}function isDocument(e){const{Document:t}=getWindow(e);return e instanceof t}function isHTMLElement(e){return!isWindow(e)&&e instanceof getWindow(e).HTMLElement}function isSVGElement(e){return e instanceof getWindow(e).SVGElement}function getOwnerDocument(e){return e?isWindow(e)?e.document:isNode(e)?isDocument(e)?e:isHTMLElement(e)?e.ownerDocument:document:document:document}const useIsomorphicLayoutEffect=canUseDOM?React.useLayoutEffect:React.useEffect;function useEvent(e){const t=React.useRef(e);return useIsomorphicLayoutEffect((()=>{t.current=e})),React.useCallback((function(...e){return null==t.current?void 0:t.current(...e)}),[])}function useInterval(){const e=React.useRef(null);return[React.useCallback(((t,n)=>{e.current=setInterval(t,n)}),[]),React.useCallback((()=>{null!==e.current&&(clearInterval(e.current),e.current=null)}),[])]}function useLatestValue(e,t=[e]){const n=React.useRef(e);return useIsomorphicLayoutEffect((()=>{n.current!==e&&(n.current=e)}),t),n}function useLazyMemo(e,t){const n=React.useRef();return React.useMemo((()=>{const t=e(n.current);return n.current=t,t}),[...t])}function useNodeRef(e){const t=useEvent(e),n=React.useRef(null),r=React.useCallback((e=>{e!==n.current&&(null==t||t(e,n.current)),n.current=e}),[]);return[n,r]}function usePrevious(e){const t=React.useRef();return React.useEffect((()=>{t.current=e}),[e]),t.current}let ids={};function useUniqueId(e,t){return React.useMemo((()=>{if(t)return t;const n=null==ids[e]?0:ids[e]+1;return ids[e]=n,`${e}-${n}`}),[e,t])}function createAdjustmentFn(e){return(t,...n)=>n.reduce(((t,n)=>{const r=Object.entries(n);for(const[n,o]of r){const r=t[n];null!=r&&(t[n]=r+e*o)}return t}),{...t})}const add=createAdjustmentFn(1),subtract=createAdjustmentFn(-1);function hasViewportRelativeCoordinates(e){return"clientX"in e&&"clientY"in e}function isKeyboardEvent(e){if(!e)return!1;const{KeyboardEvent:t}=getWindow(e.target);return t&&e instanceof t}function isTouchEvent(e){if(!e)return!1;const{TouchEvent:t}=getWindow(e.target);return t&&e instanceof t}function getEventCoordinates(e){if(isTouchEvent(e)){if(e.touches&&e.touches.length){const{clientX:t,clientY:n}=e.touches[0];return{x:t,y:n}}if(e.changedTouches&&e.changedTouches.length){const{clientX:t,clientY:n}=e.changedTouches[0];return{x:t,y:n}}}return hasViewportRelativeCoordinates(e)?{x:e.clientX,y:e.clientY}:null}const CSS=Object.freeze({Translate:{toString(e){if(!e)return;const{x:t,y:n}=e;return`translate3d(${t?Math.round(t):0}px, ${n?Math.round(n):0}px, 0)`}},Scale:{toString(e){if(!e)return;const{scaleX:t,scaleY:n}=e;return`scaleX(${t}) scaleY(${n})`}},Transform:{toString(e){if(e)return[CSS.Translate.toString(e),CSS.Scale.toString(e)].join(" ")}},Transition:{toString:({property:e,duration:t,easing:n})=>`${e} ${t}ms ${n}`}}),SELECTOR="a,frame,iframe,input:not([type=hidden]):not(:disabled),select:not(:disabled),textarea:not(:disabled),button:not(:disabled),*[tabindex]";function findFirstFocusableNode(e){return e.matches(SELECTOR)?e:e.querySelector(SELECTOR)}const hiddenStyles={display:"none"};function HiddenText(e){let{id:t,value:n}=e;return React__default.default.createElement("div",{id:t,style:hiddenStyles},n)}const visuallyHidden={position:"fixed",width:1,height:1,margin:-1,border:0,padding:0,overflow:"hidden",clip:"rect(0 0 0 0)",clipPath:"inset(100%)",whiteSpace:"nowrap"};function LiveRegion(e){let{id:t,announcement:n}=e;return React__default.default.createElement("div",{id:t,style:visuallyHidden,role:"status","aria-live":"assertive","aria-atomic":!0},n)}function useAnnouncement(){const[e,t]=React.useState("");return{announce:React.useCallback((e=>{null!=e&&t(e)}),[]),announcement:e}}const DndMonitorContext=React.createContext(null);function useDndMonitor(e){const t=React.useContext(DndMonitorContext);React.useEffect((()=>{if(!t)throw new Error("useDndMonitor must be used within a children of <DndContext>");return t(e)}),[e,t])}function useDndMonitorProvider(){const[e]=React.useState((()=>new Set)),t=React.useCallback((t=>(e.add(t),()=>e.delete(t))),[e]);return[React.useCallback((t=>{let{type:n,event:r}=t;e.forEach((e=>{var t;return null==(t=e[n])?void 0:t.call(e,r)}))}),[e]),t]}const defaultScreenReaderInstructions={draggable:"\n To pick up a draggable item, press the space bar.\n While dragging, use the arrow keys to move the item.\n Press space again to drop the item in its new position, or press escape to cancel.\n "},defaultAnnouncements={onDragStart(e){let{active:t}=e;return"Picked up draggable item "+t.id+"."},onDragOver(e){let{active:t,over:n}=e;return n?"Draggable item "+t.id+" was moved over droppable area "+n.id+".":"Draggable item "+t.id+" is no longer over a droppable area."},onDragEnd(e){let{active:t,over:n}=e;return n?"Draggable item "+t.id+" was dropped over droppable area "+n.id:"Draggable item "+t.id+" was dropped."},onDragCancel(e){let{active:t}=e;return"Dragging was cancelled. Draggable item "+t.id+" was dropped."}};function Accessibility(e){let{announcements:t=defaultAnnouncements,container:n,hiddenTextDescribedById:r,screenReaderInstructions:o=defaultScreenReaderInstructions}=e;const{announce:a,announcement:i}=useAnnouncement(),s=useUniqueId("DndLiveRegion"),[l,c]=React.useState(!1);if(React.useEffect((()=>{c(!0)}),[]),useDndMonitor(React.useMemo((()=>({onDragStart(e){let{active:n}=e;a(t.onDragStart({active:n}))},onDragMove(e){let{active:n,over:r}=e;t.onDragMove&&a(t.onDragMove({active:n,over:r}))},onDragOver(e){let{active:n,over:r}=e;a(t.onDragOver({active:n,over:r}))},onDragEnd(e){let{active:n,over:r}=e;a(t.onDragEnd({active:n,over:r}))},onDragCancel(e){let{active:n,over:r}=e;a(t.onDragCancel({active:n,over:r}))}})),[a,t])),!l)return null;const u=React__default.default.createElement(React__default.default.Fragment,null,React__default.default.createElement(HiddenText,{id:r,value:o.draggable}),React__default.default.createElement(LiveRegion,{id:s,announcement:i}));return n?reactDom.createPortal(u,n):u}var Action$1;function noop(){}function useSensor(e,t){return React.useMemo((()=>({sensor:e,options:null!=t?t:{}})),[e,t])}function useSensors(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return React.useMemo((()=>[...t].filter((e=>null!=e))),[...t])}!function(e){e.DragStart="dragStart",e.DragMove="dragMove",e.DragEnd="dragEnd",e.DragCancel="dragCancel",e.DragOver="dragOver",e.RegisterDroppable="registerDroppable",e.SetDroppableDisabled="setDroppableDisabled",e.UnregisterDroppable="unregisterDroppable"}(Action$1||(Action$1={}));const defaultCoordinates=Object.freeze({x:0,y:0});function distanceBetween(e,t){return Math.sqrt(Math.pow(e.x-t.x,2)+Math.pow(e.y-t.y,2))}function getRelativeTransformOrigin(e,t){const n=getEventCoordinates(e);if(!n)return"0 0";return(n.x-t.left)/t.width*100+"% "+(n.y-t.top)/t.height*100+"%"}function sortCollisionsAsc(e,t){let{data:{value:n}}=e,{data:{value:r}}=t;return n-r}function sortCollisionsDesc(e,t){let{data:{value:n}}=e,{data:{value:r}}=t;return r-n}function cornersOfRectangle(e){let{left:t,top:n,height:r,width:o}=e;return[{x:t,y:n},{x:t+o,y:n},{x:t,y:n+r},{x:t+o,y:n+r}]}function getFirstCollision(e,t){if(!e||0===e.length)return null;const[n]=e;return t?n[t]:n}function centerOfRectangle(e,t,n){return void 0===t&&(t=e.left),void 0===n&&(n=e.top),{x:t+.5*e.width,y:n+.5*e.height}}const closestCenter=e=>{let{collisionRect:t,droppableRects:n,droppableContainers:r}=e;const o=centerOfRectangle(t,t.left,t.top),a=[];for(const e of r){const{id:t}=e,r=n.get(t);if(r){const n=distanceBetween(centerOfRectangle(r),o);a.push({id:t,data:{droppableContainer:e,value:n}})}}return a.sort(sortCollisionsAsc)},closestCorners=e=>{let{collisionRect:t,droppableRects:n,droppableContainers:r}=e;const o=cornersOfRectangle(t),a=[];for(const e of r){const{id:t}=e,r=n.get(t);if(r){const n=cornersOfRectangle(r),i=o.reduce(((e,t,r)=>e+distanceBetween(n[r],t)),0),s=Number((i/4).toFixed(4));a.push({id:t,data:{droppableContainer:e,value:s}})}}return a.sort(sortCollisionsAsc)};function getIntersectionRatio(e,t){const n=Math.max(t.top,e.top),r=Math.max(t.left,e.left),o=Math.min(t.left+t.width,e.left+e.width),a=Math.min(t.top+t.height,e.top+e.height),i=o-r,s=a-n;if(r<o&&n<a){const n=t.width*t.height,r=e.width*e.height,o=i*s;return Number((o/(n+r-o)).toFixed(4))}return 0}const rectIntersection=e=>{let{collisionRect:t,droppableRects:n,droppableContainers:r}=e;const o=[];for(const e of r){const{id:r}=e,a=n.get(r);if(a){const n=getIntersectionRatio(a,t);n>0&&o.push({id:r,data:{droppableContainer:e,value:n}})}}return o.sort(sortCollisionsDesc)};function isPointWithinRect(e,t){const{top:n,left:r,bottom:o,right:a}=t;return n<=e.y&&e.y<=o&&r<=e.x&&e.x<=a}const pointerWithin=e=>{let{droppableContainers:t,droppableRects:n,pointerCoordinates:r}=e;if(!r)return[];const o=[];for(const e of t){const{id:t}=e,a=n.get(t);if(a&&isPointWithinRect(r,a)){const n=cornersOfRectangle(a).reduce(((e,t)=>e+distanceBetween(r,t)),0),i=Number((n/4).toFixed(4));o.push({id:t,data:{droppableContainer:e,value:i}})}}return o.sort(sortCollisionsAsc)};function adjustScale(e,t,n){return{...e,scaleX:t&&n?t.width/n.width:1,scaleY:t&&n?t.height/n.height:1}}function getRectDelta(e,t){return e&&t?{x:e.left-t.left,y:e.top-t.top}:defaultCoordinates}function createRectAdjustmentFn(e){return function(t){for(var n=arguments.length,r=new Array(n>1?n-1:0),o=1;o<n;o++)r[o-1]=arguments[o];return r.reduce(((t,n)=>({...t,top:t.top+e*n.y,bottom:t.bottom+e*n.y,left:t.left+e*n.x,right:t.right+e*n.x})),{...t})}}const getAdjustedRect=createRectAdjustmentFn(1);function parseTransform(e){if(e.startsWith("matrix3d(")){const t=e.slice(9,-1).split(/, /);return{x:+t[12],y:+t[13],scaleX:+t[0],scaleY:+t[5]}}if(e.startsWith("matrix(")){const t=e.slice(7,-1).split(/, /);return{x:+t[4],y:+t[5],scaleX:+t[0],scaleY:+t[3]}}return null}function inverseTransform(e,t,n){const r=parseTransform(t);if(!r)return e;const{scaleX:o,scaleY:a,x:i,y:s}=r,l=e.left-i-(1-o)*parseFloat(n),c=e.top-s-(1-a)*parseFloat(n.slice(n.indexOf(" ")+1)),u=o?e.width/o:e.width,d=a?e.height/a:e.height;return{width:u,height:d,top:c,right:l+u,bottom:c+d,left:l}}const defaultOptions={ignoreTransform:!1};function getClientRect(e,t){void 0===t&&(t=defaultOptions);let n=e.getBoundingClientRect();if(t.ignoreTransform){const{getComputedStyle:t}=getWindow(e),{transform:r,transformOrigin:o}=t(e);r&&(n=inverseTransform(n,r,o))}const{top:r,left:o,width:a,height:i,bottom:s,right:l}=n;return{top:r,left:o,width:a,height:i,bottom:s,right:l}}function getTransformAgnosticClientRect(e){return getClientRect(e,{ignoreTransform:!0})}function getWindowClientRect(e){const t=e.innerWidth,n=e.innerHeight;return{top:0,left:0,right:t,bottom:n,width:t,height:n}}function isFixed(e,t){return void 0===t&&(t=getWindow(e).getComputedStyle(e)),"fixed"===t.position}function isScrollable(e,t){void 0===t&&(t=getWindow(e).getComputedStyle(e));const n=/(auto|scroll|overlay)/;return["overflow","overflowX","overflowY"].some((e=>{const r=t[e];return"string"==typeof r&&n.test(r)}))}function getScrollableAncestors(e,t){const n=[];return e?function r(o){if(null!=t&&n.length>=t)return n;if(!o)return n;if(isDocument(o)&&null!=o.scrollingElement&&!n.includes(o.scrollingElement))return n.push(o.scrollingElement),n;if(!isHTMLElement(o)||isSVGElement(o))return n;if(n.includes(o))return n;const{getComputedStyle:a}=getWindow(o),i=a(o);return o!==e&&isScrollable(o,i)&&n.push(o),isFixed(o,i)?n:r(o.parentNode)}(e):n}function getFirstScrollableAncestor(e){const[t]=getScrollableAncestors(e,1);return null!=t?t:null}function getScrollableElement(e){return canUseDOM&&e?isWindow(e)?e:isNode(e)?isDocument(e)||e===getOwnerDocument(e).scrollingElement?window:isHTMLElement(e)?e:null:null:null}function getScrollXCoordinate(e){return isWindow(e)?e.scrollX:e.scrollLeft}function getScrollYCoordinate(e){return isWindow(e)?e.scrollY:e.scrollTop}function getScrollCoordinates(e){return{x:getScrollXCoordinate(e),y:getScrollYCoordinate(e)}}var Direction;function isDocumentScrollingElement(e){return!(!canUseDOM||!e)&&e===document.scrollingElement}function getScrollPosition(e){const t={x:0,y:0},n=isDocumentScrollingElement(e)?{height:window.innerHeight,width:window.innerWidth}:{height:e.clientHeight,width:e.clientWidth},r={x:e.scrollWidth-n.width,y:e.scrollHeight-n.height};return{isTop:e.scrollTop<=t.y,isLeft:e.scrollLeft<=t.x,isBottom:e.scrollTop>=r.y,isRight:e.scrollLeft>=r.x,maxScroll:r,minScroll:t}}!function(e){e[e.Forward=1]="Forward",e[e.Backward=-1]="Backward"}(Direction||(Direction={}));const defaultThreshold={x:.2,y:.2};function getScrollDirectionAndSpeed(e,t,n,r,o){let{top:a,left:i,right:s,bottom:l}=n;void 0===r&&(r=10),void 0===o&&(o=defaultThreshold);const{isTop:c,isBottom:u,isLeft:d,isRight:f}=getScrollPosition(e),p={x:0,y:0},_={x:0,y:0},m=t.height*o.y,g=t.width*o.x;return!c&&a<=t.top+m?(p.y=Direction.Backward,_.y=r*Math.abs((t.top+m-a)/m)):!u&&l>=t.bottom-m&&(p.y=Direction.Forward,_.y=r*Math.abs((t.bottom-m-l)/m)),!f&&s>=t.right-g?(p.x=Direction.Forward,_.x=r*Math.abs((t.right-g-s)/g)):!d&&i<=t.left+g&&(p.x=Direction.Backward,_.x=r*Math.abs((t.left+g-i)/g)),{direction:p,speed:_}}function getScrollElementRect(e){if(e===document.scrollingElement){const{innerWidth:e,innerHeight:t}=window;return{top:0,left:0,right:e,bottom:t,width:e,height:t}}const{top:t,left:n,right:r,bottom:o}=e.getBoundingClientRect();return{top:t,left:n,right:r,bottom:o,width:e.clientWidth,height:e.clientHeight}}function getScrollOffsets(e){return e.reduce(((e,t)=>add(e,getScrollCoordinates(t))),defaultCoordinates)}function getScrollXOffset(e){return e.reduce(((e,t)=>e+getScrollXCoordinate(t)),0)}function getScrollYOffset(e){return e.reduce(((e,t)=>e+getScrollYCoordinate(t)),0)}function scrollIntoViewIfNeeded(e,t){if(void 0===t&&(t=getClientRect),!e)return;const{top:n,left:r,bottom:o,right:a}=t(e);getFirstScrollableAncestor(e)&&(o<=0||a<=0||n>=window.innerHeight||r>=window.innerWidth)&&e.scrollIntoView({block:"center",inline:"center"})}const properties=[["x",["left","right"],getScrollXOffset],["y",["top","bottom"],getScrollYOffset]];class Rect{constructor(e,t){this.rect=void 0,this.width=void 0,this.height=void 0,this.top=void 0,this.bottom=void 0,this.right=void 0,this.left=void 0;const n=getScrollableAncestors(t),r=getScrollOffsets(n);this.rect={...e},this.width=e.width,this.height=e.height;for(const[e,t,o]of properties)for(const a of t)Object.defineProperty(this,a,{get:()=>{const t=o(n),i=r[e]-t;return this.rect[a]+i},enumerable:!0});Object.defineProperty(this,"rect",{enumerable:!1})}}class Listeners{constructor(e){this.target=void 0,this.listeners=[],this.removeAll=()=>{this.listeners.forEach((e=>{var t;return null==(t=this.target)?void 0:t.removeEventListener(...e)}))},this.target=e}add(e,t,n){var r;null==(r=this.target)||r.addEventListener(e,t,n),this.listeners.push([e,t,n])}}function getEventListenerTarget(e){const{EventTarget:t}=getWindow(e);return e instanceof t?e:getOwnerDocument(e)}function hasExceededDistance(e,t){const n=Math.abs(e.x),r=Math.abs(e.y);return"number"==typeof t?Math.sqrt(n**2+r**2)>t:"x"in t&&"y"in t?n>t.x&&r>t.y:"x"in t?n>t.x:"y"in t&&r>t.y}var EventName,KeyboardCode;function preventDefault(e){e.preventDefault()}function stopPropagation(e){e.stopPropagation()}!function(e){e.Click="click",e.DragStart="dragstart",e.Keydown="keydown",e.ContextMenu="contextmenu",e.Resize="resize",e.SelectionChange="selectionchange",e.VisibilityChange="visibilitychange"}(EventName||(EventName={})),function(e){e.Space="Space",e.Down="ArrowDown",e.Right="ArrowRight",e.Left="ArrowLeft",e.Up="ArrowUp",e.Esc="Escape",e.Enter="Enter"}(KeyboardCode||(KeyboardCode={}));const defaultKeyboardCodes={start:[KeyboardCode.Space,KeyboardCode.Enter],cancel:[KeyboardCode.Esc],end:[KeyboardCode.Space,KeyboardCode.Enter]},defaultKeyboardCoordinateGetter=(e,t)=>{let{currentCoordinates:n}=t;switch(e.code){case KeyboardCode.Right:return{...n,x:n.x+25};case KeyboardCode.Left:return{...n,x:n.x-25};case KeyboardCode.Down:return{...n,y:n.y+25};case KeyboardCode.Up:return{...n,y:n.y-25}}};class KeyboardSensor{constructor(e){this.props=void 0,this.autoScrollEnabled=!1,this.referenceCoordinates=void 0,this.listeners=void 0,this.windowListeners=void 0,this.props=e;const{event:{target:t}}=e;this.props=e,this.listeners=new Listeners(getOwnerDocument(t)),this.windowListeners=new Listeners(getWindow(t)),this.handleKeyDown=this.handleKeyDown.bind(this),this.handleCancel=this.handleCancel.bind(this),this.attach()}attach(){this.handleStart(),this.windowListeners.add(EventName.Resize,this.handleCancel),this.windowListeners.add(EventName.VisibilityChange,this.handleCancel),setTimeout((()=>this.listeners.add(EventName.Keydown,this.handleKeyDown)))}handleStart(){const{activeNode:e,onStart:t}=this.props,n=e.node.current;n&&scrollIntoViewIfNeeded(n),t(defaultCoordinates)}handleKeyDown(e){if(isKeyboardEvent(e)){const{active:t,context:n,options:r}=this.props,{keyboardCodes:o=defaultKeyboardCodes,coordinateGetter:a=defaultKeyboardCoordinateGetter,scrollBehavior:i="smooth"}=r,{code:s}=e;if(o.end.includes(s))return void this.handleEnd(e);if(o.cancel.includes(s))return void this.handleCancel(e);const{collisionRect:l}=n.current,c=l?{x:l.left,y:l.top}:defaultCoordinates;this.referenceCoordinates||(this.referenceCoordinates=c);const u=a(e,{active:t,context:n.current,currentCoordinates:c});if(u){const t=subtract(u,c),r={x:0,y:0},{scrollableAncestors:o}=n.current;for(const n of o){const o=e.code,{isTop:a,isRight:s,isLeft:l,isBottom:c,maxScroll:d,minScroll:f}=getScrollPosition(n),p=getScrollElementRect(n),_={x:Math.min(o===KeyboardCode.Right?p.right-p.width/2:p.right,Math.max(o===KeyboardCode.Right?p.left:p.left+p.width/2,u.x)),y:Math.min(o===KeyboardCode.Down?p.bottom-p.height/2:p.bottom,Math.max(o===KeyboardCode.Down?p.top:p.top+p.height/2,u.y))},m=o===KeyboardCode.Right&&!s||o===KeyboardCode.Left&&!l,g=o===KeyboardCode.Down&&!c||o===KeyboardCode.Up&&!a;if(m&&_.x!==u.x){const e=n.scrollLeft+t.x,a=o===KeyboardCode.Right&&e<=d.x||o===KeyboardCode.Left&&e>=f.x;if(a&&!t.y)return void n.scrollTo({left:e,behavior:i});r.x=a?n.scrollLeft-e:o===KeyboardCode.Right?n.scrollLeft-d.x:n.scrollLeft-f.x,r.x&&n.scrollBy({left:-r.x,behavior:i});break}if(g&&_.y!==u.y){const e=n.scrollTop+t.y,a=o===KeyboardCode.Down&&e<=d.y||o===KeyboardCode.Up&&e>=f.y;if(a&&!t.x)return void n.scrollTo({top:e,behavior:i});r.y=a?n.scrollTop-e:o===KeyboardCode.Down?n.scrollTop-d.y:n.scrollTop-f.y,r.y&&n.scrollBy({top:-r.y,behavior:i});break}}this.handleMove(e,add(subtract(u,this.referenceCoordinates),r))}}}handleMove(e,t){const{onMove:n}=this.props;e.preventDefault(),n(t)}handleEnd(e){const{onEnd:t}=this.props;e.preventDefault(),this.detach(),t()}handleCancel(e){const{onCancel:t}=this.props;e.preventDefault(),this.detach(),t()}detach(){this.listeners.removeAll(),this.windowListeners.removeAll()}}function isDistanceConstraint(e){return Boolean(e&&"distance"in e)}function isDelayConstraint(e){return Boolean(e&&"delay"in e)}KeyboardSensor.activators=[{eventName:"onKeyDown",handler:(e,t,n)=>{let{keyboardCodes:r=defaultKeyboardCodes,onActivation:o}=t,{active:a}=n;const{code:i}=e.nativeEvent;if(r.start.includes(i)){const t=a.activatorNode.current;return(!t||e.target===t)&&(e.preventDefault(),null==o||o({event:e.nativeEvent}),!0)}return!1}}];class AbstractPointerSensor{constructor(e,t,n){var r;void 0===n&&(n=getEventListenerTarget(e.event.target)),this.props=void 0,this.events=void 0,this.autoScrollEnabled=!0,this.document=void 0,this.activated=!1,this.initialCoordinates=void 0,this.timeoutId=null,this.listeners=void 0,this.documentListeners=void 0,this.windowListeners=void 0,this.props=e,this.events=t;const{event:o}=e,{target:a}=o;this.props=e,this.events=t,this.document=getOwnerDocument(a),this.documentListeners=new Listeners(this.document),this.listeners=new Listeners(n),this.windowListeners=new Listeners(getWindow(a)),this.initialCoordinates=null!=(r=getEventCoordinates(o))?r:defaultCoordinates,this.handleStart=this.handleStart.bind(this),this.handleMove=this.handleMove.bind(this),this.handleEnd=this.handleEnd.bind(this),this.handleCancel=this.handleCancel.bind(this),this.handleKeydown=this.handleKeydown.bind(this),this.removeTextSelection=this.removeTextSelection.bind(this),this.attach()}attach(){const{events:e,props:{options:{activationConstraint:t}}}=this;if(this.listeners.add(e.move.name,this.handleMove,{passive:!1}),this.listeners.add(e.end.name,this.handleEnd),this.windowListeners.add(EventName.Resize,this.handleCancel),this.windowListeners.add(EventName.DragStart,preventDefault),this.windowListeners.add(EventName.VisibilityChange,this.handleCancel),this.windowListeners.add(EventName.ContextMenu,preventDefault),this.documentListeners.add(EventName.Keydown,this.handleKeydown),t){if(isDistanceConstraint(t))return;if(isDelayConstraint(t))return void(this.timeoutId=setTimeout(this.handleStart,t.delay))}this.handleStart()}detach(){this.listeners.removeAll(),this.windowListeners.removeAll(),setTimeout(this.documentListeners.removeAll,50),null!==this.timeoutId&&(clearTimeout(this.timeoutId),this.timeoutId=null)}handleStart(){const{initialCoordinates:e}=this,{onStart:t}=this.props;e&&(this.activated=!0,this.documentListeners.add(EventName.Click,stopPropagation,{capture:!0}),this.removeTextSelection(),this.documentListeners.add(EventName.SelectionChange,this.removeTextSelection),t(e))}handleMove(e){var t;const{activated:n,initialCoordinates:r,props:o}=this,{onMove:a,options:{activationConstraint:i}}=o;if(!r)return;const s=null!=(t=getEventCoordinates(e))?t:defaultCoordinates,l=subtract(r,s);if(!n&&i){if(isDelayConstraint(i))return hasExceededDistance(l,i.tolerance)?this.handleCancel():void 0;if(isDistanceConstraint(i))return null!=i.tolerance&&hasExceededDistance(l,i.tolerance)?this.handleCancel():hasExceededDistance(l,i.distance)?this.handleStart():void 0}e.cancelable&&e.preventDefault(),a(s)}handleEnd(){const{onEnd:e}=this.props;this.detach(),e()}handleCancel(){const{onCancel:e}=this.props;this.detach(),e()}handleKeydown(e){e.code===KeyboardCode.Esc&&this.handleCancel()}removeTextSelection(){var e;null==(e=this.document.getSelection())||e.removeAllRanges()}}const events={move:{name:"pointermove"},end:{name:"pointerup"}};class PointerSensor extends AbstractPointerSensor{constructor(e){const{event:t}=e,n=getOwnerDocument(t.target);super(e,events,n)}}PointerSensor.activators=[{eventName:"onPointerDown",handler:(e,t)=>{let{nativeEvent:n}=e,{onActivation:r}=t;return!(!n.isPrimary||0!==n.button)&&(null==r||r({event:n}),!0)}}];const events$1={move:{name:"mousemove"},end:{name:"mouseup"}};var MouseButton;!function(e){e[e.RightClick=2]="RightClick"}(MouseButton||(MouseButton={}));class MouseSensor extends AbstractPointerSensor{constructor(e){super(e,events$1,getOwnerDocument(e.event.target))}}MouseSensor.activators=[{eventName:"onMouseDown",handler:(e,t)=>{let{nativeEvent:n}=e,{onActivation:r}=t;return n.button!==MouseButton.RightClick&&(null==r||r({event:n}),!0)}}];const events$2={move:{name:"touchmove"},end:{name:"touchend"}};class TouchSensor extends AbstractPointerSensor{constructor(e){super(e,events$2)}static setup(){return window.addEventListener(events$2.move.name,e,{capture:!1,passive:!1}),function(){window.removeEventListener(events$2.move.name,e)};function e(){}}}var AutoScrollActivator,TraversalOrder;function useAutoScroller(e){let{acceleration:t,activator:n=AutoScrollActivator.Pointer,canScroll:r,draggingRect:o,enabled:a,interval:i=5,order:s=TraversalOrder.TreeOrder,pointerCoordinates:l,scrollableAncestors:c,scrollableAncestorRects:u,delta:d,threshold:f}=e;const p=useScrollIntent({delta:d,disabled:!a}),[_,m]=useInterval(),g=React.useRef({x:0,y:0}),h=React.useRef({x:0,y:0}),v=React.useMemo((()=>{switch(n){case AutoScrollActivator.Pointer:return l?{top:l.y,bottom:l.y,left:l.x,right:l.x}:null;case AutoScrollActivator.DraggableRect:return o}}),[n,o,l]),y=React.useRef(null),b=React.useCallback((()=>{const e=y.current;if(!e)return;const t=g.current.x*h.current.x,n=g.current.y*h.current.y;e.scrollBy(t,n)}),[]),w=React.useMemo((()=>s===TraversalOrder.TreeOrder?[...c].reverse():c),[s,c]);React.useEffect((()=>{if(a&&c.length&&v){for(const e of w){if(!1===(null==r?void 0:r(e)))continue;const n=c.indexOf(e),o=u[n];if(!o)continue;const{direction:a,speed:s}=getScrollDirectionAndSpeed(e,o,v,t,f);for(const e of["x","y"])p[e][a[e]]||(s[e]=0,a[e]=0);if(s.x>0||s.y>0)return m(),y.current=e,_(b,i),g.current=s,void(h.current=a)}g.current={x:0,y:0},h.current={x:0,y:0},m()}else m()}),[t,b,r,m,a,i,JSON.stringify(v),JSON.stringify(p),_,c,w,u,JSON.stringify(f)])}TouchSensor.activators=[{eventName:"onTouchStart",handler:(e,t)=>{let{nativeEvent:n}=e,{onActivation:r}=t;const{touches:o}=n;return!(o.length>1)&&(null==r||r({event:n}),!0)}}],function(e){e[e.Pointer=0]="Pointer",e[e.DraggableRect=1]="DraggableRect"}(AutoScrollActivator||(AutoScrollActivator={})),function(e){e[e.TreeOrder=0]="TreeOrder",e[e.ReversedTreeOrder=1]="ReversedTreeOrder"}(TraversalOrder||(TraversalOrder={}));const defaultScrollIntent={x:{[Direction.Backward]:!1,[Direction.Forward]:!1},y:{[Direction.Backward]:!1,[Direction.Forward]:!1}};function useScrollIntent(e){let{delta:t,disabled:n}=e;const r=usePrevious(t);return useLazyMemo((e=>{if(n||!r||!e)return defaultScrollIntent;const o=Math.sign(t.x-r.x),a=Math.sign(t.y-r.y);return{x:{[Direction.Backward]:e.x[Direction.Backward]||-1===o,[Direction.Forward]:e.x[Direction.Forward]||1===o},y:{[Direction.Backward]:e.y[Direction.Backward]||-1===a,[Direction.Forward]:e.y[Direction.Forward]||1===a}}}),[n,t,r])}function useCachedNode(e,t){const n=null!==t?e.get(t):void 0,r=n?n.node.current:null;return useLazyMemo((e=>{var n;return null===t?null:null!=(n=null!=r?r:e)?n:null}),[r,t])}function useCombineActivators(e,t){return React.useMemo((()=>e.reduce(((e,n)=>{const{sensor:r}=n;return[...e,...r.activators.map((e=>({eventName:e.eventName,handler:t(e.handler,n)})))]}),[])),[e,t])}var MeasuringStrategy,MeasuringFrequency;!function(e){e[e.Always=0]="Always",e[e.BeforeDragging=1]="BeforeDragging",e[e.WhileDragging=2]="WhileDragging"}(MeasuringStrategy||(MeasuringStrategy={})),function(e){e.Optimized="optimized"}(MeasuringFrequency||(MeasuringFrequency={}));const defaultValue=new Map;function useDroppableMeasuring(e,t){let{dragging:n,dependencies:r,config:o}=t;const[a,i]=React.useState(null),s=null!=a,{frequency:l,measure:c,strategy:u}=o,d=React.useRef(e),f=function(){switch(u){case MeasuringStrategy.Always:return!1;case MeasuringStrategy.BeforeDragging:return n;default:return!n}}(),p=useLatestValue(f),_=React.useCallback((function(e){void 0===e&&(e=[]),p.current||i((t=>t?t.concat(e):e))}),[p]),m=React.useRef(null),g=useLazyMemo((t=>{if(f&&!n)return defaultValue;const r=a;if(!t||t===defaultValue||d.current!==e||null!=r){const t=new Map;for(let n of e){if(!n)continue;if(r&&r.length>0&&!r.includes(n.id)&&n.rect.current){t.set(n.id,n.rect.current);continue}const e=n.node.current,o=e?new Rect(c(e),e):null;n.rect.current=o,o&&t.set(n.id,o)}return t}return t}),[e,a,n,f,c]);return React.useEffect((()=>{d.current=e}),[e]),React.useEffect((()=>{f||requestAnimationFrame((()=>_()))}),[n,f]),React.useEffect((()=>{s&&i(null)}),[s]),React.useEffect((()=>{f||"number"!=typeof l||null!==m.current||(m.current=setTimeout((()=>{_(),m.current=null}),l))}),[l,f,_,...r]),{droppableRects:g,measureDroppableContainers:_,measuringScheduled:s}}function useInitialValue(e,t){return useLazyMemo((n=>e?n||("function"==typeof t?t(e):e):null),[t,e])}function useInitialRect(e,t){return useInitialValue(e,t)}function useMutationObserver(e){let{callback:t,disabled:n}=e;const r=useEvent(t),o=React.useMemo((()=>{if(n||"undefined"==typeof window||void 0===window.MutationObserver)return;const{MutationObserver:e}=window;return new e(r)}),[r,n]);return React.useEffect((()=>()=>null==o?void 0:o.disconnect()),[o]),o}function useResizeObserver(e){let{callback:t,disabled:n}=e;const r=useEvent(t),o=React.useMemo((()=>{if(n||"undefined"==typeof window||void 0===window.ResizeObserver)return;const{ResizeObserver:e}=window;return new e(r)}),[n]);return React.useEffect((()=>()=>null==o?void 0:o.disconnect()),[o]),o}function defaultMeasure(e){return new Rect(getClientRect(e),e)}function useRect(e,t,n){void 0===t&&(t=defaultMeasure);const[r,o]=React.useReducer((function(r){if(!e)return null;var o;if(!1===e.isConnected)return null!=(o=null!=r?r:n)?o:null;const a=t(e);if(JSON.stringify(r)===JSON.stringify(a))return r;return a}),null),a=useMutationObserver({callback(t){if(e)for(const n of t){const{type:t,target:r}=n;if("childList"===t&&r instanceof HTMLElement&&r.contains(e)){o();break}}}}),i=useResizeObserver({callback:o});return useIsomorphicLayoutEffect((()=>{o(),e?(null==i||i.observe(e),null==a||a.observe(document.body,{childList:!0,subtree:!0})):(null==i||i.disconnect(),null==a||a.disconnect())}),[e]),r}function useRectDelta(e){return getRectDelta(e,useInitialValue(e))}const defaultValue$1=[];function useScrollableAncestors(e){const t=React.useRef(e),n=useLazyMemo((n=>e?n&&n!==defaultValue$1&&e&&t.current&&e.parentNode===t.current.parentNode?n:getScrollableAncestors(e):defaultValue$1),[e]);return React.useEffect((()=>{t.current=e}),[e]),n}function useScrollOffsets(e){const[t,n]=React.useState(null),r=React.useRef(e),o=React.useCallback((e=>{const t=getScrollableElement(e.target);t&&n((e=>e?(e.set(t,getScrollCoordinates(t)),new Map(e)):null))}),[]);return React.useEffect((()=>{const t=r.current;if(e!==t){a(t);const i=e.map((e=>{const t=getScrollableElement(e);return t?(t.addEventListener("scroll",o,{passive:!0}),[t,getScrollCoordinates(t)]):null})).filter((e=>null!=e));n(i.length?new Map(i):null),r.current=e}return()=>{a(e),a(t)};function a(e){e.forEach((e=>{const t=getScrollableElement(e);null==t||t.removeEventListener("scroll",o)}))}}),[o,e]),React.useMemo((()=>e.length?t?Array.from(t.values()).reduce(((e,t)=>add(e,t)),defaultCoordinates):getScrollOffsets(e):defaultCoordinates),[e,t])}function useScrollOffsetsDelta(e,t){void 0===t&&(t=[]);const n=React.useRef(null);return React.useEffect((()=>{n.current=null}),t),React.useEffect((()=>{const t=e!==defaultCoordinates;t&&!n.current&&(n.current=e),!t&&n.current&&(n.current=null)}),[e]),n.current?subtract(e,n.current):defaultCoordinates}function useSensorSetup(e){React.useEffect((()=>{if(!canUseDOM)return;const t=e.map((e=>{let{sensor:t}=e;return null==t.setup?void 0:t.setup()}));return()=>{for(const e of t)null==e||e()}}),e.map((e=>{let{sensor:t}=e;return t})))}function useSyntheticListeners(e,t){return React.useMemo((()=>e.reduce(((e,n)=>{let{eventName:r,handler:o}=n;return e[r]=e=>{o(e,t)},e}),{})),[e,t])}function useWindowRect(e){return React.useMemo((()=>e?getWindowClientRect(e):null),[e])}const defaultValue$2=[];function useRects(e,t){void 0===t&&(t=getClientRect);const[n]=e,r=useWindowRect(n?getWindow(n):null),[o,a]=React.useReducer((function(){if(!e.length)return defaultValue$2;return e.map((e=>isDocumentScrollingElement(e)?r:new Rect(t(e),e)))}),defaultValue$2),i=useResizeObserver({callback:a});return e.length>0&&o===defaultValue$2&&a(),useIsomorphicLayoutEffect((()=>{e.length?e.forEach((e=>null==i?void 0:i.observe(e))):(null==i||i.disconnect(),a())}),[e]),o}function getMeasurableNode(e){if(!e)return null;if(e.children.length>1)return e;const t=e.children[0];return isHTMLElement(t)?t:e}function useDragOverlayMeasuring(e){let{measure:t}=e;const[n,r]=React.useState(null),o=React.useCallback((e=>{for(const{target:n}of e)if(isHTMLElement(n)){r((e=>{const r=t(n);return e?{...e,width:r.width,height:r.height}:r}));break}}),[t]),a=useResizeObserver({callback:o}),i=React.useCallback((e=>{const n=getMeasurableNode(e);null==a||a.disconnect(),n&&(null==a||a.observe(n)),r(n?t(n):null)}),[t,a]),[s,l]=useNodeRef(i);return React.useMemo((()=>({nodeRef:s,rect:n,setRef:l})),[n,s,l])}const defaultSensors=[{sensor:PointerSensor,options:{}},{sensor:KeyboardSensor,options:{}}],defaultData={current:{}},defaultMeasuringConfiguration={draggable:{measure:getTransformAgnosticClientRect},droppable:{measure:getTransformAgnosticClientRect,strategy:MeasuringStrategy.WhileDragging,frequency:MeasuringFrequency.Optimized},dragOverlay:{measure:getClientRect}};class DroppableContainersMap extends Map{get(e){var t;return null!=e&&null!=(t=super.get(e))?t:void 0}toArray(){return Array.from(this.values())}getEnabled(){return this.toArray().filter((e=>{let{disabled:t}=e;return!t}))}getNodeFor(e){var t,n;return null!=(t=null==(n=this.get(e))?void 0:n.node.current)?t:void 0}}const defaultPublicContext={activatorEvent:null,active:null,activeNode:null,activeNodeRect:null,collisions:null,containerNodeRect:null,draggableNodes:new Map,droppableRects:new Map,droppableContainers:new DroppableContainersMap,over:null,dragOverlay:{nodeRef:{current:null},rect:null,setRef:noop},scrollableAncestors:[],scrollableAncestorRects:[],measuringConfiguration:defaultMeasuringConfiguration,measureDroppableContainers:noop,windowRect:null,measuringScheduled:!1},defaultInternalContext={activatorEvent:null,activators:[],active:null,activeNodeRect:null,ariaDescribedById:{draggable:""},dispatch:noop,draggableNodes:new Map,over:null,measureDroppableContainers:noop},InternalContext=React.createContext(defaultInternalContext),PublicContext=React.createContext(defaultPublicContext);function getInitialState(){return{draggable:{active:null,initialCoordinates:{x:0,y:0},nodes:new Map,translate:{x:0,y:0}},droppable:{containers:new DroppableContainersMap}}}function reducer(e,t){switch(t.type){case Action$1.DragStart:return{...e,draggable:{...e.draggable,initialCoordinates:t.initialCoordinates,active:t.active}};case Action$1.DragMove:return e.draggable.active?{...e,draggable:{...e.draggable,translate:{x:t.coordinates.x-e.draggable.initialCoordinates.x,y:t.coordinates.y-e.draggable.initialCoordinates.y}}}:e;case Action$1.DragEnd:case Action$1.DragCancel:return{...e,draggable:{...e.draggable,active:null,initialCoordinates:{x:0,y:0},translate:{x:0,y:0}}};case Action$1.RegisterDroppable:{const{element:n}=t,{id:r}=n,o=new DroppableContainersMap(e.droppable.containers);return o.set(r,n),{...e,droppable:{...e.droppable,containers:o}}}case Action$1.SetDroppableDisabled:{const{id:n,key:r,disabled:o}=t,a=e.droppable.containers.get(n);if(!a||r!==a.key)return e;const i=new DroppableContainersMap(e.droppable.containers);return i.set(n,{...a,disabled:o}),{...e,droppable:{...e.droppable,containers:i}}}case Action$1.UnregisterDroppable:{const{id:n,key:r}=t,o=e.droppable.containers.get(n);if(!o||r!==o.key)return e;const a=new DroppableContainersMap(e.droppable.containers);return a.delete(n),{...e,droppable:{...e.droppable,containers:a}}}default:return e}}function RestoreFocus(e){let{disabled:t}=e;const{active:n,activatorEvent:r,draggableNodes:o}=React.useContext(InternalContext),a=usePrevious(r),i=usePrevious(null==n?void 0:n.id);return React.useEffect((()=>{if(!t&&!r&&a&&null!=i){if(!isKeyboardEvent(a))return;if(document.activeElement===a.target)return;const e=o.get(i);if(!e)return;const{activatorNode:t,node:n}=e;if(!t.current&&!n.current)return;requestAnimationFrame((()=>{for(const e of[t.current,n.current]){if(!e)continue;const t=findFirstFocusableNode(e);if(t){t.focus();break}}}))}}),[r,t,o,i,a]),null}function applyModifiers(e,t){let{transform:n,...r}=t;return null!=e&&e.length?e.reduce(((e,t)=>t({transform:e,...r})),n):n}function useMeasuringConfiguration(e){return React.useMemo((()=>({draggable:{...defaultMeasuringConfiguration.draggable,...null==e?void 0:e.draggable},droppable:{...defaultMeasuringConfiguration.droppable,...null==e?void 0:e.droppable},dragOverlay:{...defaultMeasuringConfiguration.dragOverlay,...null==e?void 0:e.dragOverlay}})),[null==e?void 0:e.draggable,null==e?void 0:e.droppable,null==e?void 0:e.dragOverlay])}function useLayoutShiftScrollCompensation(e){let{activeNode:t,measure:n,initialRect:r,config:o=!0}=e;const a=React.useRef(!1),{x:i,y:s}="boolean"==typeof o?{x:o,y:o}:o;useIsomorphicLayoutEffect((()=>{if(!i&&!s||!t)return void(a.current=!1);if(a.current||!r)return;const e=null==t?void 0:t.node.current;if(!e||!1===e.isConnected)return;const o=getRectDelta(n(e),r);if(i||(o.x=0),s||(o.y=0),a.current=!0,Math.abs(o.x)>0||Math.abs(o.y)>0){const t=getFirstScrollableAncestor(e);t&&t.scrollBy({top:o.y,left:o.x})}}),[t,i,s,r,n])}const ActiveDraggableContext=React.createContext({...defaultCoordinates,scaleX:1,scaleY:1});var Status;!function(e){e[e.Uninitialized=0]="Uninitialized",e[e.Initializing=1]="Initializing",e[e.Initialized=2]="Initialized"}(Status||(Status={}));const DndContext=React.memo((function(e){var t,n,r,o;let{id:a,accessibility:i,autoScroll:s=!0,children:l,sensors:c=defaultSensors,collisionDetection:u=rectIntersection,measuring:d,modifiers:f,...p}=e;const _=React.useReducer(reducer,void 0,getInitialState),[m,g]=_,[h,v]=useDndMonitorProvider(),[y,b]=React.useState(Status.Uninitialized),w=y===Status.Initialized,{draggable:{active:S,nodes:$,translate:x},droppable:{containers:F}}=m,k=S?$.get(S):null,O=React.useRef({initial:null,translated:null}),C=React.useMemo((()=>{var e;return null!=S?{id:S,data:null!=(e=null==k?void 0:k.data)?e:defaultData,rect:O}:null}),[S,k]),R=React.useRef(null),[j,N]=React.useState(null),[I,D]=React.useState(null),E=useLatestValue(p,Object.values(p)),A=useUniqueId("DndDescribedBy",a),T=React.useMemo((()=>F.getEnabled()),[F]),L=useMeasuringConfiguration(d),{droppableRects:P,measureDroppableContainers:V,measuringScheduled:M}=useDroppableMeasuring(T,{dragging:w,dependencies:[x.x,x.y],config:L.droppable}),B=useCachedNode($,S),U=React.useMemo((()=>I?getEventCoordinates(I):null),[I]),z=function(){const e=!1===(null==j?void 0:j.autoScrollEnabled),t="object"==typeof s?!1===s.enabled:!1===s,n=w&&!e&&!t;if("object"==typeof s)return{...s,enabled:n};return{enabled:n}}(),q=useInitialRect(B,L.draggable.measure);useLayoutShiftScrollCompensation({activeNode:S?$.get(S):null,config:z.layoutShiftCompensation,initialRect:q,measure:L.draggable.measure});const K=useRect(B,L.draggable.measure,q),W=useRect(B?B.parentElement:null),H=React.useRef({activatorEvent:null,active:null,activeNode:B,collisionRect:null,collisions:null,droppableRects:P,draggableNodes:$,draggingNode:null,draggingNodeRect:null,droppableContainers:F,over:null,scrollableAncestors:[],scrollAdjustedTranslate:null}),J=F.getNodeFor(null==(t=H.current.over)?void 0:t.id),Y=useDragOverlayMeasuring({measure:L.dragOverlay.measure}),G=null!=(n=Y.nodeRef.current)?n:B,X=w?null!=(r=Y.rect)?r:K:null,Q=Boolean(Y.nodeRef.current&&Y.rect),Z=useRectDelta(Q?null:K),ee=useWindowRect(G?getWindow(G):null),te=useScrollableAncestors(w?null!=J?J:B:null),ne=useRects(te),re=applyModifiers(f,{transform:{x:x.x-Z.x,y:x.y-Z.y,scaleX:1,scaleY:1},activatorEvent:I,active:C,activeNodeRect:K,containerNodeRect:W,draggingNodeRect:X,over:H.current.over,overlayNodeRect:Y.rect,scrollableAncestors:te,scrollableAncestorRects:ne,windowRect:ee}),oe=U?add(U,x):null,ae=useScrollOffsets(te),ie=useScrollOffsetsDelta(ae),se=useScrollOffsetsDelta(ae,[K]),le=add(re,ie),ce=X?getAdjustedRect(X,re):null,ue=C&&ce?u({active:C,collisionRect:ce,droppableRects:P,droppableContainers:T,pointerCoordinates:oe}):null,de=getFirstCollision(ue,"id"),[fe,pe]=React.useState(null),_e=adjustScale(Q?re:add(re,se),null!=(o=null==fe?void 0:fe.rect)?o:null,K),me=React.useCallback(((e,t)=>{let{sensor:n,options:r}=t;if(null==R.current)return;const o=$.get(R.current);if(!o)return;const a=e.nativeEvent,i=new n({active:R.current,activeNode:o,event:a,options:r,context:H,onStart(e){const t=R.current;if(null==t)return;const n=$.get(t);if(!n)return;const{onDragStart:r}=E.current,o={active:{id:t,data:n.data,rect:O}};reactDom.unstable_batchedUpdates((()=>{null==r||r(o),b(Status.Initializing),g({type:Action$1.DragStart,initialCoordinates:e,active:t}),h({type:"onDragStart",event:o})}))},onMove(e){g({type:Action$1.DragMove,coordinates:e})},onEnd:s(Action$1.DragEnd),onCancel:s(Action$1.DragCancel)});function s(e){return async function(){const{active:t,collisions:n,over:r,scrollAdjustedTranslate:o}=H.current;let i=null;if(t&&o){const{cancelDrop:s}=E.current;if(i={activatorEvent:a,active:t,collisions:n,delta:o,over:r},e===Action$1.DragEnd&&"function"==typeof s){await Promise.resolve(s(i))&&(e=Action$1.DragCancel)}}R.current=null,reactDom.unstable_batchedUpdates((()=>{g({type:e}),b(Status.Uninitialized),pe(null),N(null),D(null);const t=e===Action$1.DragEnd?"onDragEnd":"onDragCancel";if(i){const e=E.current[t];null==e||e(i),h({type:t,event:i})}}))}}reactDom.unstable_batchedUpdates((()=>{N(i),D(e.nativeEvent)}))}),[$]),ge=React.useCallback(((e,t)=>(n,r)=>{const o=n.nativeEvent,a=$.get(r);if(null!==R.current||!a||o.dndKit||o.defaultPrevented)return;const i={active:a};!0===e(n,t.options,i)&&(o.dndKit={capturedBy:t.sensor},R.current=r,me(n,t))}),[$,me]),he=useCombineActivators(c,ge);useSensorSetup(c),useIsomorphicLayoutEffect((()=>{K&&y===Status.Initializing&&b(Status.Initialized)}),[K,y]),React.useEffect((()=>{const{onDragMove:e}=E.current,{active:t,activatorEvent:n,collisions:r,over:o}=H.current;if(!t||!n)return;const a={active:t,activatorEvent:n,collisions:r,delta:{x:le.x,y:le.y},over:o};reactDom.unstable_batchedUpdates((()=>{null==e||e(a),h({type:"onDragMove",event:a})}))}),[le.x,le.y]),React.useEffect((()=>{const{active:e,activatorEvent:t,collisions:n,droppableContainers:r,scrollAdjustedTranslate:o}=H.current;if(!e||null==R.current||!t||!o)return;const{onDragOver:a}=E.current,i=r.get(de),s=i&&i.rect.current?{id:i.id,rect:i.rect.current,data:i.data,disabled:i.disabled}:null,l={active:e,activatorEvent:t,collisions:n,delta:{x:o.x,y:o.y},over:s};reactDom.unstable_batchedUpdates((()=>{pe(s),null==a||a(l),h({type:"onDragOver",event:l})}))}),[de]),useIsomorphicLayoutEffect((()=>{H.current={activatorEvent:I,active:C,activeNode:B,collisionRect:ce,collisions:ue,droppableRects:P,draggableNodes:$,draggingNode:G,draggingNodeRect:X,droppableContainers:F,over:fe,scrollableAncestors:te,scrollAdjustedTranslate:le},O.current={initial:X,translated:ce}}),[C,B,ue,ce,$,G,X,P,F,fe,te,le]),useAutoScroller({...z,delta:x,draggingRect:ce,pointerCoordinates:oe,scrollableAncestors:te,scrollableAncestorRects:ne});const ve=React.useMemo((()=>({active:C,activeNode:B,activeNodeRect:K,activatorEvent:I,collisions:ue,containerNodeRect:W,dragOverlay:Y,draggableNodes:$,droppableContainers:F,droppableRects:P,over:fe,measureDroppableContainers:V,scrollableAncestors:te,scrollableAncestorRects:ne,measuringConfiguration:L,measuringScheduled:M,windowRect:ee})),[C,B,K,I,ue,W,Y,$,F,P,fe,V,te,ne,L,M,ee]),ye=React.useMemo((()=>({activatorEvent:I,activators:he,active:C,activeNodeRect:K,ariaDescribedById:{draggable:A},dispatch:g,draggableNodes:$,over:fe,measureDroppableContainers:V})),[I,he,C,K,g,A,$,fe,V]);return React__default.default.createElement(DndMonitorContext.Provider,{value:v},React__default.default.createElement(InternalContext.Provider,{value:ye},React__default.default.createElement(PublicContext.Provider,{value:ve},React__default.default.createElement(ActiveDraggableContext.Provider,{value:_e},l)),React__default.default.createElement(RestoreFocus,{disabled:!1===(null==i?void 0:i.restoreFocus)})),React__default.default.createElement(Accessibility,{...i,hiddenTextDescribedById:A}))})),NullContext=React.createContext(null),defaultRole="button",ID_PREFIX$1="Droppable";function useDraggable(e){let{id:t,data:n,disabled:r=!1,attributes:o}=e;const a=useUniqueId(ID_PREFIX$1),{activators:i,activatorEvent:s,active:l,activeNodeRect:c,ariaDescribedById:u,draggableNodes:d,over:f}=React.useContext(InternalContext),{role:p=defaultRole,roleDescription:_="draggable",tabIndex:m=0}=null!=o?o:{},g=(null==l?void 0:l.id)===t,h=React.useContext(g?ActiveDraggableContext:NullContext),[v,y]=useNodeRef(),[b,w]=useNodeRef(),S=useSyntheticListeners(i,t),$=useLatestValue(n);useIsomorphicLayoutEffect((()=>(d.set(t,{id:t,key:a,node:v,activatorNode:b,data:$}),()=>{const e=d.get(t);e&&e.key===a&&d.delete(t)})),[d,t]);return{active:l,activatorEvent:s,activeNodeRect:c,attributes:React.useMemo((()=>({role:p,tabIndex:m,"aria-disabled":r,"aria-pressed":!(!g||p!==defaultRole)||void 0,"aria-roledescription":_,"aria-describedby":u.draggable})),[r,p,m,g,_,u.draggable]),isDragging:g,listeners:r?void 0:S,node:v,over:f,setNodeRef:y,setActivatorNodeRef:w,transform:h}}function useDndContext(){return React.useContext(PublicContext)}const ID_PREFIX$1$1="Droppable",defaultResizeObserverConfig={timeout:25};function useDroppable(e){let{data:t,disabled:n=!1,id:r,resizeObserverConfig:o}=e;const a=useUniqueId(ID_PREFIX$1$1),{active:i,dispatch:s,over:l,measureDroppableContainers:c}=React.useContext(InternalContext),u=React.useRef({disabled:n}),d=React.useRef(!1),f=React.useRef(null),p=React.useRef(null),{disabled:_,updateMeasurementsFor:m,timeout:g}={...defaultResizeObserverConfig,...o},h=useLatestValue(null!=m?m:r),v=useResizeObserver({callback:React.useCallback((()=>{d.current?(null!=p.current&&clearTimeout(p.current),p.current=setTimeout((()=>{c(Array.isArray(h.current)?h.current:[h.current]),p.current=null}),g)):d.current=!0}),[g]),disabled:_||!i}),y=React.useCallback(((e,t)=>{v&&(t&&(v.unobserve(t),d.current=!1),e&&v.observe(e))}),[v]),[b,w]=useNodeRef(y),S=useLatestValue(t);return React.useEffect((()=>{v&&b.current&&(v.disconnect(),d.current=!1,v.observe(b.current))}),[b,v]),useIsomorphicLayoutEffect((()=>(s({type:Action$1.RegisterDroppable,element:{id:r,key:a,disabled:n,node:b,rect:f,data:S}}),()=>s({type:Action$1.UnregisterDroppable,key:a,id:r}))),[r]),React.useEffect((()=>{n!==u.current.disabled&&(s({type:Action$1.SetDroppableDisabled,id:r,key:a,disabled:n}),u.current.disabled=n)}),[r,a,n,s]),{active:i,rect:f,isOver:(null==l?void 0:l.id)===r,node:b,over:l,setNodeRef:w}}function AnimationManager(e){let{animation:t,children:n}=e;const[r,o]=React.useState(null),[a,i]=React.useState(null),s=usePrevious(n);return n||r||!s||o(s),useIsomorphicLayoutEffect((()=>{if(!a)return;const e=null==r?void 0:r.key,n=null==r?void 0:r.props.id;null!=e&&null!=n?Promise.resolve(t(n,a)).then((()=>{o(null)})):o(null)}),[t,r,a]),React__default.default.createElement(React__default.default.Fragment,null,n,r?React.cloneElement(r,{ref:i}):null)}const defaultTransform={x:0,y:0,scaleX:1,scaleY:1};function NullifiedContextProvider(e){let{children:t}=e;return React__default.default.createElement(InternalContext.Provider,{value:defaultInternalContext},React__default.default.createElement(ActiveDraggableContext.Provider,{value:defaultTransform},t))}const baseStyles={position:"fixed",touchAction:"none"},defaultTransition$1=e=>isKeyboardEvent(e)?"transform 250ms ease":void 0,PositionedOverlay=React.forwardRef(((e,t)=>{let{as:n,activatorEvent:r,adjustScale:o,children:a,className:i,rect:s,style:l,transform:c,transition:u=defaultTransition$1}=e;if(!s)return null;const d=o?c:{...c,scaleX:1,scaleY:1},f={...baseStyles,width:s.width,height:s.height,top:s.top,left:s.left,transform:CSS.Transform.toString(d),transformOrigin:o&&r?getRelativeTransformOrigin(r,s):void 0,transition:"function"==typeof u?u(r):u,...l};return React__default.default.createElement(n,{className:i,style:f,ref:t},a)})),defaultDropAnimationSideEffects=e=>t=>{let{active:n,dragOverlay:r}=t;const o={},{styles:a,className:i}=e;if(null!=a&&a.active)for(const[e,t]of Object.entries(a.active))void 0!==t&&(o[e]=n.node.style.getPropertyValue(e),n.node.style.setProperty(e,t));if(null!=a&&a.dragOverlay)for(const[e,t]of Object.entries(a.dragOverlay))void 0!==t&&r.node.style.setProperty(e,t);return null!=i&&i.active&&n.node.classList.add(i.active),null!=i&&i.dragOverlay&&r.node.classList.add(i.dragOverlay),function(){for(const[e,t]of Object.entries(o))n.node.style.setProperty(e,t);null!=i&&i.active&&n.node.classList.remove(i.active)}},defaultKeyframeResolver=e=>{let{transform:{initial:t,final:n}}=e;return[{transform:CSS.Transform.toString(t)},{transform:CSS.Transform.toString(n)}]},defaultDropAnimationConfiguration={duration:250,easing:"ease",keyframes:defaultKeyframeResolver,sideEffects:defaultDropAnimationSideEffects({styles:{active:{opacity:"0"}}})};function useDropAnimation(e){let{config:t,draggableNodes:n,droppableContainers:r,measuringConfiguration:o}=e;return useEvent(((e,a)=>{if(null===t)return;const i=n.get(e);if(!i)return;const s=i.node.current;if(!s)return;const l=getMeasurableNode(a);if(!l)return;const{transform:c}=getWindow(a).getComputedStyle(a),u=parseTransform(c);if(!u)return;const d="function"==typeof t?t:createDefaultDropAnimation(t);return scrollIntoViewIfNeeded(s,o.draggable.measure),d({active:{id:e,data:i.data,node:s,rect:o.draggable.measure(s)},draggableNodes:n,dragOverlay:{node:a,rect:o.dragOverlay.measure(l)},droppableContainers:r,measuringConfiguration:o,transform:u})}))}function createDefaultDropAnimation(e){const{duration:t,easing:n,sideEffects:r,keyframes:o}={...defaultDropAnimationConfiguration,...e};return e=>{let{active:a,dragOverlay:i,transform:s,...l}=e;if(!t)return;const c=i.rect.left-a.rect.left,u=i.rect.top-a.rect.top,d={scaleX:1!==s.scaleX?a.rect.width*s.scaleX/i.rect.width:1,scaleY:1!==s.scaleY?a.rect.height*s.scaleY/i.rect.height:1},f={x:s.x-c,y:s.y-u,...d},p=o({...l,active:a,dragOverlay:i,transform:{initial:s,final:f}}),[_]=p,m=p[p.length-1];if(JSON.stringify(_)===JSON.stringify(m))return;const g=null==r?void 0:r({active:a,dragOverlay:i,...l}),h=i.node.animate(p,{duration:t,easing:n,fill:"forwards"});return new Promise((e=>{h.onfinish=()=>{null==g||g(),e()}}))}}let key=0;function useKey(e){return React.useMemo((()=>{if(null!=e)return key++,key}),[e])}const DragOverlay=React__default.default.memo((e=>{let{adjustScale:t=!1,children:n,dropAnimation:r,style:o,transition:a,modifiers:i,wrapperElement:s="div",className:l,zIndex:c=999}=e;const{activatorEvent:u,active:d,activeNodeRect:f,containerNodeRect:p,draggableNodes:_,droppableContainers:m,dragOverlay:g,over:h,measuringConfiguration:v,scrollableAncestors:y,scrollableAncestorRects:b,windowRect:w}=useDndContext(),S=React.useContext(ActiveDraggableContext),$=useKey(null==d?void 0:d.id),x=applyModifiers(i,{activatorEvent:u,active:d,activeNodeRect:f,containerNodeRect:p,draggingNodeRect:g.rect,over:h,overlayNodeRect:g.rect,scrollableAncestors:y,scrollableAncestorRects:b,transform:S,windowRect:w}),F=useInitialValue(f),k=useDropAnimation({config:r,draggableNodes:_,droppableContainers:m,measuringConfiguration:v}),O=F?g.setRef:void 0;return React__default.default.createElement(NullifiedContextProvider,null,React__default.default.createElement(AnimationManager,{animation:k},d&&$?React__default.default.createElement(PositionedOverlay,{key:$,id:d.id,ref:O,as:s,activatorEvent:u,adjustScale:t,className:l,transition:a,rect:F,style:{zIndex:c,...o},transform:x},n):null))}));function arrayMove(e,t,n){const r=e.slice();return r.splice(n<0?r.length+n:n,0,r.splice(t,1)[0]),r}function getSortedRects(e,t){return e.reduce(((e,n,r)=>{const o=t.get(n);return o&&(e[r]=o),e}),Array(e.length))}function isValidIndex(e){return null!==e&&e>=0}function itemsEqual(e,t){if(e===t)return!0;if(e.length!==t.length)return!1;for(let n=0;n<e.length;n++)if(e[n]!==t[n])return!1;return!0}function normalizeDisabled(e){return"boolean"==typeof e?{draggable:e,droppable:e}:e}const defaultScale={scaleX:1,scaleY:1},horizontalListSortingStrategy=e=>{var t;let{rects:n,activeNodeRect:r,activeIndex:o,overIndex:a,index:i}=e;const s=null!=(t=n[o])?t:r;if(!s)return null;const l=getItemGap(n,i,o);if(i===o){const e=n[a];return e?{x:o<a?e.left+e.width-(s.left+s.width):e.left-s.left,y:0,...defaultScale}:null}return i>o&&i<=a?{x:-s.width-l,y:0,...defaultScale}:i<o&&i>=a?{x:s.width+l,y:0,...defaultScale}:{x:0,y:0,...defaultScale}};function getItemGap(e,t,n){const r=e[t],o=e[t-1],a=e[t+1];return r&&(o||a)?n<t?o?r.left-(o.left+o.width):a.left-(r.left+r.width):a?a.left-(r.left+r.width):r.left-(o.left+o.width):0}const rectSortingStrategy=e=>{let{rects:t,activeIndex:n,overIndex:r,index:o}=e;const a=arrayMove(t,r,n),i=t[o],s=a[o];return s&&i?{x:s.left-i.left,y:s.top-i.top,scaleX:s.width/i.width,scaleY:s.height/i.height}:null},defaultScale$1={scaleX:1,scaleY:1},verticalListSortingStrategy=e=>{var t;let{activeIndex:n,activeNodeRect:r,index:o,rects:a,overIndex:i}=e;const s=null!=(t=a[n])?t:r;if(!s)return null;if(o===n){const e=a[i];return e?{x:0,y:n<i?e.top+e.height-(s.top+s.height):e.top-s.top,...defaultScale$1}:null}const l=getItemGap$1(a,o,n);return o>n&&o<=i?{x:0,y:-s.height-l,...defaultScale$1}:o<n&&o>=i?{x:0,y:s.height+l,...defaultScale$1}:{x:0,y:0,...defaultScale$1}};function getItemGap$1(e,t,n){const r=e[t],o=e[t-1],a=e[t+1];return r?n<t?o?r.top-(o.top+o.height):a?a.top-(r.top+r.height):0:a?a.top-(r.top+r.height):o?r.top-(o.top+o.height):0:0}const ID_PREFIX="Sortable",Context=React__default.default.createContext({activeIndex:-1,containerId:ID_PREFIX,disableTransforms:!1,items:[],overIndex:-1,useDragOverlay:!1,sortedRects:[],strategy:rectSortingStrategy,disabled:{draggable:!1,droppable:!1}});function SortableContext(e){let{children:t,id:n,items:r,strategy:o=rectSortingStrategy,disabled:a=!1}=e;const{active:i,dragOverlay:s,droppableRects:l,over:c,measureDroppableContainers:u,measuringScheduled:d}=useDndContext(),f=useUniqueId(ID_PREFIX,n),p=Boolean(null!==s.rect),_=React.useMemo((()=>r.map((e=>"object"==typeof e&&"id"in e?e.id:e))),[r]),m=null!=i,g=i?_.indexOf(i.id):-1,h=c?_.indexOf(c.id):-1,v=React.useRef(_),y=!itemsEqual(_,v.current),b=-1!==h&&-1===g||y,w=normalizeDisabled(a);useIsomorphicLayoutEffect((()=>{y&&m&&!d&&u(_)}),[y,_,m,u,d]),React.useEffect((()=>{v.current=_}),[_]);const S=React.useMemo((()=>({activeIndex:g,containerId:f,disabled:w,disableTransforms:b,items:_,overIndex:h,useDragOverlay:p,sortedRects:getSortedRects(_,l),strategy:o})),[g,f,w.draggable,w.droppable,b,_,h,l,p,o]);return React__default.default.createElement(Context.Provider,{value:S},t)}const defaultNewIndexGetter=e=>{let{id:t,items:n,activeIndex:r,overIndex:o}=e;return arrayMove(n,r,o).indexOf(t)},defaultAnimateLayoutChanges=e=>{let{containerId:t,isSorting:n,wasDragging:r,index:o,items:a,newIndex:i,previousItems:s,previousContainerId:l,transition:c}=e;return!(!c||!r)&&((s===a||o!==i)&&(!!n||i!==o&&t===l))},defaultTransition={duration:200,easing:"ease"},transitionProperty="transform",disabledTransition=CSS.Transition.toString({property:transitionProperty,duration:0,easing:"linear"}),defaultAttributes={roleDescription:"sortable"};function useDerivedTransform(e){let{disabled:t,index:n,node:r,rect:o}=e;const[a,i]=React.useState(null),s=React.useRef(n);return useIsomorphicLayoutEffect((()=>{if(!t&&n!==s.current&&r.current){const e=o.current;if(e){const t=getClientRect(r.current,{ignoreTransform:!0}),n={x:e.left-t.left,y:e.top-t.top,scaleX:e.width/t.width,scaleY:e.height/t.height};(n.x||n.y)&&i(n)}}n!==s.current&&(s.current=n)}),[t,n,r,o]),React.useEffect((()=>{a&&requestAnimationFrame((()=>{i(null)}))}),[a]),a}function useSortable(e){let{animateLayoutChanges:t=defaultAnimateLayoutChanges,attributes:n,disabled:r,data:o,getNewIndex:a=defaultNewIndexGetter,id:i,strategy:s,resizeObserverConfig:l,transition:c=defaultTransition}=e;const{items:u,containerId:d,activeIndex:f,disabled:p,disableTransforms:_,sortedRects:m,overIndex:g,useDragOverlay:h,strategy:v}=React.useContext(Context),y=normalizeLocalDisabled(r,p),b=u.indexOf(i),w=React.useMemo((()=>({sortable:{containerId:d,index:b,items:u},...o})),[d,o,b,u]),S=React.useMemo((()=>u.slice(u.indexOf(i))),[u,i]),{rect:$,node:x,isOver:F,setNodeRef:k}=useDroppable({id:i,data:w,disabled:y.droppable,resizeObserverConfig:{updateMeasurementsFor:S,...l}}),{active:O,activatorEvent:C,activeNodeRect:R,attributes:j,setNodeRef:N,listeners:I,isDragging:D,over:E,setActivatorNodeRef:A,transform:T}=useDraggable({id:i,data:w,attributes:{...defaultAttributes,...n},disabled:y.draggable}),L=useCombinedRefs(k,N),P=Boolean(O),V=P&&!_&&isValidIndex(f)&&isValidIndex(g),M=!h&&D,B=M&&V?T:null,U=V?null!=B?B:(null!=s?s:v)({rects:m,activeNodeRect:R,activeIndex:f,overIndex:g,index:b}):null,z=isValidIndex(f)&&isValidIndex(g)?a({id:i,items:u,activeIndex:f,overIndex:g}):b,q=null==O?void 0:O.id,K=React.useRef({activeId:q,items:u,newIndex:z,containerId:d}),W=u!==K.current.items,H=t({active:O,containerId:d,isDragging:D,isSorting:P,id:i,index:b,items:u,newIndex:K.current.newIndex,previousItems:K.current.items,previousContainerId:K.current.containerId,transition:c,wasDragging:null!=K.current.activeId}),J=useDerivedTransform({disabled:!H,index:b,node:x,rect:$});return React.useEffect((()=>{P&&K.current.newIndex!==z&&(K.current.newIndex=z),d!==K.current.containerId&&(K.current.containerId=d),u!==K.current.items&&(K.current.items=u)}),[P,z,d,u]),React.useEffect((()=>{if(q===K.current.activeId)return;if(q&&!K.current.activeId)return void(K.current.activeId=q);const e=setTimeout((()=>{K.current.activeId=q}),50);return()=>clearTimeout(e)}),[q]),{active:O,activeIndex:f,attributes:j,data:w,rect:$,index:b,newIndex:z,items:u,isOver:F,isSorting:P,isDragging:D,listeners:I,node:x,overIndex:g,over:E,setNodeRef:L,setActivatorNodeRef:A,setDroppableNodeRef:k,setDraggableNodeRef:N,transform:null!=J?J:U,transition:function(){if(J||W&&K.current.newIndex===b)return disabledTransition;if(M&&!isKeyboardEvent(C)||!c)return;if(P||H)return CSS.Transition.toString({...c,property:transitionProperty});return}()}}function normalizeLocalDisabled(e,t){var n,r;return"boolean"==typeof e?{draggable:e,droppable:!1}:{draggable:null!=(n=null==e?void 0:e.draggable)?n:t.draggable,droppable:null!=(r=null==e?void 0:e.droppable)?r:t.droppable}}KeyboardCode.Down,KeyboardCode.Right,KeyboardCode.Up,KeyboardCode.Left;var directions=[KeyboardCode.Down,KeyboardCode.Right,KeyboardCode.Up,KeyboardCode.Left],coordinateGetter=function(e,t){var n,r=t.context,o=r.active,a=r.droppableRects,i=r.droppableContainers,s=r.collisionRect;if(directions.includes(e.code)){if(e.preventDefault(),!o||!s)return;var l=[];i.getEnabled().forEach((function(t){var n;if(t&&!(null==t?void 0:t.disabled)){var r=a.get(t.id);if(r){var i=t.data.current;if(i){var c=i.type,u=i.children;if("container"===c&&(null==u?void 0:u.length)>0&&"container"!==(null===(n=o.data.current)||void 0===n?void 0:n.type))return}switch(e.code){case KeyboardCode.Down:s.top<r.top&&l.push(t);break;case KeyboardCode.Up:s.top>r.top&&l.push(t);break;case KeyboardCode.Left:s.left>=r.left+r.width&&l.push(t);break;case KeyboardCode.Right:s.left+s.width<=r.left&&l.push(t)}}}}));var c=getFirstCollision(closestCorners({active:o,collisionRect:s,droppableRects:a,droppableContainers:l,pointerCoordinates:null}),"id");if(null!=c){var u=i.get(c),d=null==u?void 0:u.node.current,f=null==u?void 0:u.rect.current;if(d&&f)return"placeholder"===u.id?{x:f.left+(f.width-s.width)/2,y:f.top+(f.height-s.height)/2}:"container"===(null===(n=u.data.current)||void 0===n?void 0:n.type)?{x:f.left+20,y:f.top+74}:{x:f.left,y:f.top}}}},classnames={exports:{}};
10
+ !function(e,t){(function(){var n,r="Expected a function",o="__lodash_hash_undefined__",a="__lodash_placeholder__",i=16,s=32,l=64,c=128,u=256,d=1/0,f=9007199254740991,p=NaN,_=4294967295,m=[["ary",c],["bind",1],["bindKey",2],["curry",8],["curryRight",i],["flip",512],["partial",s],["partialRight",l],["rearg",u]],g="[object Arguments]",h="[object Array]",v="[object Boolean]",y="[object Date]",b="[object Error]",w="[object Function]",S="[object GeneratorFunction]",$="[object Map]",x="[object Number]",F="[object Object]",k="[object Promise]",O="[object RegExp]",C="[object Set]",R="[object String]",j="[object Symbol]",N="[object WeakMap]",I="[object ArrayBuffer]",D="[object DataView]",E="[object Float32Array]",A="[object Float64Array]",T="[object Int8Array]",L="[object Int16Array]",P="[object Int32Array]",V="[object Uint8Array]",M="[object Uint8ClampedArray]",B="[object Uint16Array]",U="[object Uint32Array]",q=/\b__p \+= '';/g,z=/\b(__p \+=) '' \+/g,K=/(__e\(.*?\)|\b__t\)) \+\n'';/g,W=/&(?:amp|lt|gt|quot|#39);/g,H=/[&<>"']/g,J=RegExp(W.source),Y=RegExp(H.source),G=/<%-([\s\S]+?)%>/g,X=/<%([\s\S]+?)%>/g,Q=/<%=([\s\S]+?)%>/g,Z=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,ee=/^\w*$/,te=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,ne=/[\\^$.*+?()[\]{}|]/g,re=RegExp(ne.source),oe=/^\s+/,ae=/\s/,ie=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,se=/\{\n\/\* \[wrapped with (.+)\] \*/,le=/,? & /,ce=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,ue=/[()=,{}\[\]\/\s]/,de=/\\(\\)?/g,fe=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,pe=/\w*$/,_e=/^[-+]0x[0-9a-f]+$/i,me=/^0b[01]+$/i,ge=/^\[object .+?Constructor\]$/,he=/^0o[0-7]+$/i,ve=/^(?:0|[1-9]\d*)$/,ye=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,be=/($^)/,we=/['\n\r\u2028\u2029\\]/g,Se="\\ud800-\\udfff",$e="\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff",xe="\\u2700-\\u27bf",Fe="a-z\\xdf-\\xf6\\xf8-\\xff",ke="A-Z\\xc0-\\xd6\\xd8-\\xde",Oe="\\ufe0e\\ufe0f",Ce="\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\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",Re="['’]",je="["+Se+"]",Ne="["+Ce+"]",Ie="["+$e+"]",De="\\d+",Ee="["+xe+"]",Ae="["+Fe+"]",Te="[^"+Se+Ce+De+xe+Fe+ke+"]",Le="\\ud83c[\\udffb-\\udfff]",Pe="[^"+Se+"]",Ve="(?:\\ud83c[\\udde6-\\uddff]){2}",Me="[\\ud800-\\udbff][\\udc00-\\udfff]",Be="["+ke+"]",Ue="\\u200d",qe="(?:"+Ae+"|"+Te+")",ze="(?:"+Be+"|"+Te+")",Ke="(?:['’](?:d|ll|m|re|s|t|ve))?",We="(?:['’](?:D|LL|M|RE|S|T|VE))?",He="(?:"+Ie+"|"+Le+")"+"?",Je="["+Oe+"]?",Ye=Je+He+("(?:"+Ue+"(?:"+[Pe,Ve,Me].join("|")+")"+Je+He+")*"),Ge="(?:"+[Ee,Ve,Me].join("|")+")"+Ye,Xe="(?:"+[Pe+Ie+"?",Ie,Ve,Me,je].join("|")+")",Qe=RegExp(Re,"g"),Ze=RegExp(Ie,"g"),et=RegExp(Le+"(?="+Le+")|"+Xe+Ye,"g"),tt=RegExp([Be+"?"+Ae+"+"+Ke+"(?="+[Ne,Be,"$"].join("|")+")",ze+"+"+We+"(?="+[Ne,Be+qe,"$"].join("|")+")",Be+"?"+qe+"+"+Ke,Be+"+"+We,"\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])","\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",De,Ge].join("|"),"g"),nt=RegExp("["+Ue+Se+$e+Oe+"]"),rt=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,ot=["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"],at=-1,it={};it[E]=it[A]=it[T]=it[L]=it[P]=it[V]=it[M]=it[B]=it[U]=!0,it[g]=it[h]=it[I]=it[v]=it[D]=it[y]=it[b]=it[w]=it[$]=it[x]=it[F]=it[O]=it[C]=it[R]=it[N]=!1;var st={};st[g]=st[h]=st[I]=st[D]=st[v]=st[y]=st[E]=st[A]=st[T]=st[L]=st[P]=st[$]=st[x]=st[F]=st[O]=st[C]=st[R]=st[j]=st[V]=st[M]=st[B]=st[U]=!0,st[b]=st[w]=st[N]=!1;var lt={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},ct=parseFloat,ut=parseInt,dt="object"==typeof commonjsGlobal&&commonjsGlobal&&commonjsGlobal.Object===Object&&commonjsGlobal,ft="object"==typeof self&&self&&self.Object===Object&&self,pt=dt||ft||Function("return this")(),_t=t&&!t.nodeType&&t,mt=_t&&e&&!e.nodeType&&e,gt=mt&&mt.exports===_t,ht=gt&&dt.process,vt=function(){try{var e=mt&&mt.require&&mt.require("util").types;return e||ht&&ht.binding&&ht.binding("util")}catch(e){}}(),yt=vt&&vt.isArrayBuffer,bt=vt&&vt.isDate,wt=vt&&vt.isMap,St=vt&&vt.isRegExp,$t=vt&&vt.isSet,xt=vt&&vt.isTypedArray;function Ft(e,t,n){switch(n.length){case 0:return e.call(t);case 1:return e.call(t,n[0]);case 2:return e.call(t,n[0],n[1]);case 3:return e.call(t,n[0],n[1],n[2])}return e.apply(t,n)}function kt(e,t,n,r){for(var o=-1,a=null==e?0:e.length;++o<a;){var i=e[o];t(r,i,n(i),e)}return r}function Ot(e,t){for(var n=-1,r=null==e?0:e.length;++n<r&&!1!==t(e[n],n,e););return e}function Ct(e,t){for(var n=null==e?0:e.length;n--&&!1!==t(e[n],n,e););return e}function Rt(e,t){for(var n=-1,r=null==e?0:e.length;++n<r;)if(!t(e[n],n,e))return!1;return!0}function jt(e,t){for(var n=-1,r=null==e?0:e.length,o=0,a=[];++n<r;){var i=e[n];t(i,n,e)&&(a[o++]=i)}return a}function Nt(e,t){return!!(null==e?0:e.length)&&Bt(e,t,0)>-1}function It(e,t,n){for(var r=-1,o=null==e?0:e.length;++r<o;)if(n(t,e[r]))return!0;return!1}function Dt(e,t){for(var n=-1,r=null==e?0:e.length,o=Array(r);++n<r;)o[n]=t(e[n],n,e);return o}function Et(e,t){for(var n=-1,r=t.length,o=e.length;++n<r;)e[o+n]=t[n];return e}function At(e,t,n,r){var o=-1,a=null==e?0:e.length;for(r&&a&&(n=e[++o]);++o<a;)n=t(n,e[o],o,e);return n}function Tt(e,t,n,r){var o=null==e?0:e.length;for(r&&o&&(n=e[--o]);o--;)n=t(n,e[o],o,e);return n}function Lt(e,t){for(var n=-1,r=null==e?0:e.length;++n<r;)if(t(e[n],n,e))return!0;return!1}var Pt=Kt("length");function Vt(e,t,n){var r;return n(e,(function(e,n,o){if(t(e,n,o))return r=n,!1})),r}function Mt(e,t,n,r){for(var o=e.length,a=n+(r?1:-1);r?a--:++a<o;)if(t(e[a],a,e))return a;return-1}function Bt(e,t,n){return t==t?function(e,t,n){var r=n-1,o=e.length;for(;++r<o;)if(e[r]===t)return r;return-1}(e,t,n):Mt(e,qt,n)}function Ut(e,t,n,r){for(var o=n-1,a=e.length;++o<a;)if(r(e[o],t))return o;return-1}function qt(e){return e!=e}function zt(e,t){var n=null==e?0:e.length;return n?Jt(e,t)/n:p}function Kt(e){return function(t){return null==t?n:t[e]}}function Wt(e){return function(t){return null==e?n:e[t]}}function Ht(e,t,n,r,o){return o(e,(function(e,o,a){n=r?(r=!1,e):t(n,e,o,a)})),n}function Jt(e,t){for(var r,o=-1,a=e.length;++o<a;){var i=t(e[o]);i!==n&&(r=r===n?i:r+i)}return r}function Yt(e,t){for(var n=-1,r=Array(e);++n<e;)r[n]=t(n);return r}function Gt(e){return e?e.slice(0,_n(e)+1).replace(oe,""):e}function Xt(e){return function(t){return e(t)}}function Qt(e,t){return Dt(t,(function(t){return e[t]}))}function Zt(e,t){return e.has(t)}function en(e,t){for(var n=-1,r=e.length;++n<r&&Bt(t,e[n],0)>-1;);return n}function tn(e,t){for(var n=e.length;n--&&Bt(t,e[n],0)>-1;);return n}var nn=Wt({"À":"A","Á":"A","Â":"A","Ã":"A","Ä":"A","Å":"A","à":"a","á":"a","â":"a","ã":"a","ä":"a","å":"a","Ç":"C","ç":"c","Ð":"D","ð":"d","È":"E","É":"E","Ê":"E","Ë":"E","è":"e","é":"e","ê":"e","ë":"e","Ì":"I","Í":"I","Î":"I","Ï":"I","ì":"i","í":"i","î":"i","ï":"i","Ñ":"N","ñ":"n","Ò":"O","Ó":"O","Ô":"O","Õ":"O","Ö":"O","Ø":"O","ò":"o","ó":"o","ô":"o","õ":"o","ö":"o","ø":"o","Ù":"U","Ú":"U","Û":"U","Ü":"U","ù":"u","ú":"u","û":"u","ü":"u","Ý":"Y","ý":"y","ÿ":"y","Æ":"Ae","æ":"ae","Þ":"Th","þ":"th","ß":"ss","Ā":"A","Ă":"A","Ą":"A","ā":"a","ă":"a","ą":"a","Ć":"C","Ĉ":"C","Ċ":"C","Č":"C","ć":"c","ĉ":"c","ċ":"c","č":"c","Ď":"D","Đ":"D","ď":"d","đ":"d","Ē":"E","Ĕ":"E","Ė":"E","Ę":"E","Ě":"E","ē":"e","ĕ":"e","ė":"e","ę":"e","ě":"e","Ĝ":"G","Ğ":"G","Ġ":"G","Ģ":"G","ĝ":"g","ğ":"g","ġ":"g","ģ":"g","Ĥ":"H","Ħ":"H","ĥ":"h","ħ":"h","Ĩ":"I","Ī":"I","Ĭ":"I","Į":"I","İ":"I","ĩ":"i","ī":"i","ĭ":"i","į":"i","ı":"i","Ĵ":"J","ĵ":"j","Ķ":"K","ķ":"k","ĸ":"k","Ĺ":"L","Ļ":"L","Ľ":"L","Ŀ":"L","Ł":"L","ĺ":"l","ļ":"l","ľ":"l","ŀ":"l","ł":"l","Ń":"N","Ņ":"N","Ň":"N","Ŋ":"N","ń":"n","ņ":"n","ň":"n","ŋ":"n","Ō":"O","Ŏ":"O","Ő":"O","ō":"o","ŏ":"o","ő":"o","Ŕ":"R","Ŗ":"R","Ř":"R","ŕ":"r","ŗ":"r","ř":"r","Ś":"S","Ŝ":"S","Ş":"S","Š":"S","ś":"s","ŝ":"s","ş":"s","š":"s","Ţ":"T","Ť":"T","Ŧ":"T","ţ":"t","ť":"t","ŧ":"t","Ũ":"U","Ū":"U","Ŭ":"U","Ů":"U","Ű":"U","Ų":"U","ũ":"u","ū":"u","ŭ":"u","ů":"u","ű":"u","ų":"u","Ŵ":"W","ŵ":"w","Ŷ":"Y","ŷ":"y","Ÿ":"Y","Ź":"Z","Ż":"Z","Ž":"Z","ź":"z","ż":"z","ž":"z","IJ":"IJ","ij":"ij","Œ":"Oe","œ":"oe","ʼn":"'n","ſ":"s"}),rn=Wt({"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"});function on(e){return"\\"+lt[e]}function an(e){return nt.test(e)}function sn(e){var t=-1,n=Array(e.size);return e.forEach((function(e,r){n[++t]=[r,e]})),n}function ln(e,t){return function(n){return e(t(n))}}function cn(e,t){for(var n=-1,r=e.length,o=0,i=[];++n<r;){var s=e[n];s!==t&&s!==a||(e[n]=a,i[o++]=n)}return i}function un(e){var t=-1,n=Array(e.size);return e.forEach((function(e){n[++t]=e})),n}function dn(e){var t=-1,n=Array(e.size);return e.forEach((function(e){n[++t]=[e,e]})),n}function fn(e){return an(e)?function(e){var t=et.lastIndex=0;for(;et.test(e);)++t;return t}(e):Pt(e)}function pn(e){return an(e)?function(e){return e.match(et)||[]}(e):function(e){return e.split("")}(e)}function _n(e){for(var t=e.length;t--&&ae.test(e.charAt(t)););return t}var mn=Wt({"&amp;":"&","&lt;":"<","&gt;":">","&quot;":'"',"&#39;":"'"});var gn=function e(t){var ae,Se=(t=null==t?pt:gn.defaults(pt.Object(),t,gn.pick(pt,ot))).Array,$e=t.Date,xe=t.Error,Fe=t.Function,ke=t.Math,Oe=t.Object,Ce=t.RegExp,Re=t.String,je=t.TypeError,Ne=Se.prototype,Ie=Fe.prototype,De=Oe.prototype,Ee=t["__core-js_shared__"],Ae=Ie.toString,Te=De.hasOwnProperty,Le=0,Pe=(ae=/[^.]+$/.exec(Ee&&Ee.keys&&Ee.keys.IE_PROTO||""))?"Symbol(src)_1."+ae:"",Ve=De.toString,Me=Ae.call(Oe),Be=pt._,Ue=Ce("^"+Ae.call(Te).replace(ne,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),qe=gt?t.Buffer:n,ze=t.Symbol,Ke=t.Uint8Array,We=qe?qe.allocUnsafe:n,He=ln(Oe.getPrototypeOf,Oe),Je=Oe.create,Ye=De.propertyIsEnumerable,Ge=Ne.splice,Xe=ze?ze.isConcatSpreadable:n,et=ze?ze.iterator:n,nt=ze?ze.toStringTag:n,lt=function(){try{var e=pa(Oe,"defineProperty");return e({},"",{}),e}catch(e){}}(),dt=t.clearTimeout!==pt.clearTimeout&&t.clearTimeout,ft=$e&&$e.now!==pt.Date.now&&$e.now,_t=t.setTimeout!==pt.setTimeout&&t.setTimeout,mt=ke.ceil,ht=ke.floor,vt=Oe.getOwnPropertySymbols,Pt=qe?qe.isBuffer:n,Wt=t.isFinite,hn=Ne.join,vn=ln(Oe.keys,Oe),yn=ke.max,bn=ke.min,wn=$e.now,Sn=t.parseInt,$n=ke.random,xn=Ne.reverse,Fn=pa(t,"DataView"),kn=pa(t,"Map"),On=pa(t,"Promise"),Cn=pa(t,"Set"),Rn=pa(t,"WeakMap"),jn=pa(Oe,"create"),Nn=Rn&&new Rn,In={},Dn=Va(Fn),En=Va(kn),An=Va(On),Tn=Va(Cn),Ln=Va(Rn),Pn=ze?ze.prototype:n,Vn=Pn?Pn.valueOf:n,Mn=Pn?Pn.toString:n;function Bn(e){if(ns(e)&&!Ki(e)&&!(e instanceof Kn)){if(e instanceof zn)return e;if(Te.call(e,"__wrapped__"))return Ma(e)}return new zn(e)}var Un=function(){function e(){}return function(t){if(!ts(t))return{};if(Je)return Je(t);e.prototype=t;var r=new e;return e.prototype=n,r}}();function qn(){}function zn(e,t){this.__wrapped__=e,this.__actions__=[],this.__chain__=!!t,this.__index__=0,this.__values__=n}function Kn(e){this.__wrapped__=e,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=_,this.__views__=[]}function Wn(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}function Hn(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}function Jn(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}function Yn(e){var t=-1,n=null==e?0:e.length;for(this.__data__=new Jn;++t<n;)this.add(e[t])}function Gn(e){var t=this.__data__=new Hn(e);this.size=t.size}function Xn(e,t){var n=Ki(e),r=!n&&zi(e),o=!n&&!r&&Yi(e),a=!n&&!r&&!o&&us(e),i=n||r||o||a,s=i?Yt(e.length,Re):[],l=s.length;for(var c in e)!t&&!Te.call(e,c)||i&&("length"==c||o&&("offset"==c||"parent"==c)||a&&("buffer"==c||"byteLength"==c||"byteOffset"==c)||ba(c,l))||s.push(c);return s}function Qn(e){var t=e.length;return t?e[Yr(0,t-1)]:n}function Zn(e,t){return Ta(No(e),lr(t,0,e.length))}function er(e){return Ta(No(e))}function tr(e,t,r){(r!==n&&!Bi(e[t],r)||r===n&&!(t in e))&&ir(e,t,r)}function nr(e,t,r){var o=e[t];Te.call(e,t)&&Bi(o,r)&&(r!==n||t in e)||ir(e,t,r)}function rr(e,t){for(var n=e.length;n--;)if(Bi(e[n][0],t))return n;return-1}function or(e,t,n,r){return pr(e,(function(e,o,a){t(r,e,n(e),a)})),r}function ar(e,t){return e&&Io(t,Is(t),e)}function ir(e,t,n){"__proto__"==t&&lt?lt(e,t,{configurable:!0,enumerable:!0,value:n,writable:!0}):e[t]=n}function sr(e,t){for(var r=-1,o=t.length,a=Se(o),i=null==e;++r<o;)a[r]=i?n:Os(e,t[r]);return a}function lr(e,t,r){return e==e&&(r!==n&&(e=e<=r?e:r),t!==n&&(e=e>=t?e:t)),e}function cr(e,t,r,o,a,i){var s,l=1&t,c=2&t,u=4&t;if(r&&(s=a?r(e,o,a,i):r(e)),s!==n)return s;if(!ts(e))return e;var d=Ki(e);if(d){if(s=function(e){var t=e.length,n=new e.constructor(t);t&&"string"==typeof e[0]&&Te.call(e,"index")&&(n.index=e.index,n.input=e.input);return n}(e),!l)return No(e,s)}else{var f=ga(e),p=f==w||f==S;if(Yi(e))return Fo(e,l);if(f==F||f==g||p&&!a){if(s=c||p?{}:va(e),!l)return c?function(e,t){return Io(e,ma(e),t)}(e,function(e,t){return e&&Io(t,Ds(t),e)}(s,e)):function(e,t){return Io(e,_a(e),t)}(e,ar(s,e))}else{if(!st[f])return a?e:{};s=function(e,t,n){var r=e.constructor;switch(t){case I:return ko(e);case v:case y:return new r(+e);case D:return function(e,t){var n=t?ko(e.buffer):e.buffer;return new e.constructor(n,e.byteOffset,e.byteLength)}(e,n);case E:case A:case T:case L:case P:case V:case M:case B:case U:return Oo(e,n);case $:return new r;case x:case R:return new r(e);case O:return function(e){var t=new e.constructor(e.source,pe.exec(e));return t.lastIndex=e.lastIndex,t}(e);case C:return new r;case j:return o=e,Vn?Oe(Vn.call(o)):{}}var o}(e,f,l)}}i||(i=new Gn);var _=i.get(e);if(_)return _;i.set(e,s),ss(e)?e.forEach((function(n){s.add(cr(n,t,r,n,e,i))})):rs(e)&&e.forEach((function(n,o){s.set(o,cr(n,t,r,o,e,i))}));var m=d?n:(u?c?ia:aa:c?Ds:Is)(e);return Ot(m||e,(function(n,o){m&&(n=e[o=n]),nr(s,o,cr(n,t,r,o,e,i))})),s}function ur(e,t,r){var o=r.length;if(null==e)return!o;for(e=Oe(e);o--;){var a=r[o],i=t[a],s=e[a];if(s===n&&!(a in e)||!i(s))return!1}return!0}function dr(e,t,o){if("function"!=typeof e)throw new je(r);return Ia((function(){e.apply(n,o)}),t)}function fr(e,t,n,r){var o=-1,a=Nt,i=!0,s=e.length,l=[],c=t.length;if(!s)return l;n&&(t=Dt(t,Xt(n))),r?(a=It,i=!1):t.length>=200&&(a=Zt,i=!1,t=new Yn(t));e:for(;++o<s;){var u=e[o],d=null==n?u:n(u);if(u=r||0!==u?u:0,i&&d==d){for(var f=c;f--;)if(t[f]===d)continue e;l.push(u)}else a(t,d,r)||l.push(u)}return l}Bn.templateSettings={escape:G,evaluate:X,interpolate:Q,variable:"",imports:{_:Bn}},Bn.prototype=qn.prototype,Bn.prototype.constructor=Bn,zn.prototype=Un(qn.prototype),zn.prototype.constructor=zn,Kn.prototype=Un(qn.prototype),Kn.prototype.constructor=Kn,Wn.prototype.clear=function(){this.__data__=jn?jn(null):{},this.size=0},Wn.prototype.delete=function(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t},Wn.prototype.get=function(e){var t=this.__data__;if(jn){var r=t[e];return r===o?n:r}return Te.call(t,e)?t[e]:n},Wn.prototype.has=function(e){var t=this.__data__;return jn?t[e]!==n:Te.call(t,e)},Wn.prototype.set=function(e,t){var r=this.__data__;return this.size+=this.has(e)?0:1,r[e]=jn&&t===n?o:t,this},Hn.prototype.clear=function(){this.__data__=[],this.size=0},Hn.prototype.delete=function(e){var t=this.__data__,n=rr(t,e);return!(n<0)&&(n==t.length-1?t.pop():Ge.call(t,n,1),--this.size,!0)},Hn.prototype.get=function(e){var t=this.__data__,r=rr(t,e);return r<0?n:t[r][1]},Hn.prototype.has=function(e){return rr(this.__data__,e)>-1},Hn.prototype.set=function(e,t){var n=this.__data__,r=rr(n,e);return r<0?(++this.size,n.push([e,t])):n[r][1]=t,this},Jn.prototype.clear=function(){this.size=0,this.__data__={hash:new Wn,map:new(kn||Hn),string:new Wn}},Jn.prototype.delete=function(e){var t=da(this,e).delete(e);return this.size-=t?1:0,t},Jn.prototype.get=function(e){return da(this,e).get(e)},Jn.prototype.has=function(e){return da(this,e).has(e)},Jn.prototype.set=function(e,t){var n=da(this,e),r=n.size;return n.set(e,t),this.size+=n.size==r?0:1,this},Yn.prototype.add=Yn.prototype.push=function(e){return this.__data__.set(e,o),this},Yn.prototype.has=function(e){return this.__data__.has(e)},Gn.prototype.clear=function(){this.__data__=new Hn,this.size=0},Gn.prototype.delete=function(e){var t=this.__data__,n=t.delete(e);return this.size=t.size,n},Gn.prototype.get=function(e){return this.__data__.get(e)},Gn.prototype.has=function(e){return this.__data__.has(e)},Gn.prototype.set=function(e,t){var n=this.__data__;if(n instanceof Hn){var r=n.__data__;if(!kn||r.length<199)return r.push([e,t]),this.size=++n.size,this;n=this.__data__=new Jn(r)}return n.set(e,t),this.size=n.size,this};var pr=Ao(wr),_r=Ao(Sr,!0);function mr(e,t){var n=!0;return pr(e,(function(e,r,o){return n=!!t(e,r,o)})),n}function gr(e,t,r){for(var o=-1,a=e.length;++o<a;){var i=e[o],s=t(i);if(null!=s&&(l===n?s==s&&!cs(s):r(s,l)))var l=s,c=i}return c}function hr(e,t){var n=[];return pr(e,(function(e,r,o){t(e,r,o)&&n.push(e)})),n}function vr(e,t,n,r,o){var a=-1,i=e.length;for(n||(n=ya),o||(o=[]);++a<i;){var s=e[a];t>0&&n(s)?t>1?vr(s,t-1,n,r,o):Et(o,s):r||(o[o.length]=s)}return o}var yr=To(),br=To(!0);function wr(e,t){return e&&yr(e,t,Is)}function Sr(e,t){return e&&br(e,t,Is)}function $r(e,t){return jt(t,(function(t){return Qi(e[t])}))}function xr(e,t){for(var r=0,o=(t=wo(t,e)).length;null!=e&&r<o;)e=e[Pa(t[r++])];return r&&r==o?e:n}function Fr(e,t,n){var r=t(e);return Ki(e)?r:Et(r,n(e))}function kr(e){return null==e?e===n?"[object Undefined]":"[object Null]":nt&&nt in Oe(e)?function(e){var t=Te.call(e,nt),r=e[nt];try{e[nt]=n;var o=!0}catch(e){}var a=Ve.call(e);o&&(t?e[nt]=r:delete e[nt]);return a}(e):function(e){return Ve.call(e)}(e)}function Or(e,t){return e>t}function Cr(e,t){return null!=e&&Te.call(e,t)}function Rr(e,t){return null!=e&&t in Oe(e)}function jr(e,t,r){for(var o=r?It:Nt,a=e[0].length,i=e.length,s=i,l=Se(i),c=1/0,u=[];s--;){var d=e[s];s&&t&&(d=Dt(d,Xt(t))),c=bn(d.length,c),l[s]=!r&&(t||a>=120&&d.length>=120)?new Yn(s&&d):n}d=e[0];var f=-1,p=l[0];e:for(;++f<a&&u.length<c;){var _=d[f],m=t?t(_):_;if(_=r||0!==_?_:0,!(p?Zt(p,m):o(u,m,r))){for(s=i;--s;){var g=l[s];if(!(g?Zt(g,m):o(e[s],m,r)))continue e}p&&p.push(m),u.push(_)}}return u}function Nr(e,t,r){var o=null==(e=Ra(e,t=wo(t,e)))?e:e[Pa(Xa(t))];return null==o?n:Ft(o,e,r)}function Ir(e){return ns(e)&&kr(e)==g}function Dr(e,t,r,o,a){return e===t||(null==e||null==t||!ns(e)&&!ns(t)?e!=e&&t!=t:function(e,t,r,o,a,i){var s=Ki(e),l=Ki(t),c=s?h:ga(e),u=l?h:ga(t),d=(c=c==g?F:c)==F,f=(u=u==g?F:u)==F,p=c==u;if(p&&Yi(e)){if(!Yi(t))return!1;s=!0,d=!1}if(p&&!d)return i||(i=new Gn),s||us(e)?ra(e,t,r,o,a,i):function(e,t,n,r,o,a,i){switch(n){case D:if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case I:return!(e.byteLength!=t.byteLength||!a(new Ke(e),new Ke(t)));case v:case y:case x:return Bi(+e,+t);case b:return e.name==t.name&&e.message==t.message;case O:case R:return e==t+"";case $:var s=sn;case C:var l=1&r;if(s||(s=un),e.size!=t.size&&!l)return!1;var c=i.get(e);if(c)return c==t;r|=2,i.set(e,t);var u=ra(s(e),s(t),r,o,a,i);return i.delete(e),u;case j:if(Vn)return Vn.call(e)==Vn.call(t)}return!1}(e,t,c,r,o,a,i);if(!(1&r)){var _=d&&Te.call(e,"__wrapped__"),m=f&&Te.call(t,"__wrapped__");if(_||m){var w=_?e.value():e,S=m?t.value():t;return i||(i=new Gn),a(w,S,r,o,i)}}if(!p)return!1;return i||(i=new Gn),function(e,t,r,o,a,i){var s=1&r,l=aa(e),c=l.length,u=aa(t),d=u.length;if(c!=d&&!s)return!1;var f=c;for(;f--;){var p=l[f];if(!(s?p in t:Te.call(t,p)))return!1}var _=i.get(e),m=i.get(t);if(_&&m)return _==t&&m==e;var g=!0;i.set(e,t),i.set(t,e);var h=s;for(;++f<c;){var v=e[p=l[f]],y=t[p];if(o)var b=s?o(y,v,p,t,e,i):o(v,y,p,e,t,i);if(!(b===n?v===y||a(v,y,r,o,i):b)){g=!1;break}h||(h="constructor"==p)}if(g&&!h){var w=e.constructor,S=t.constructor;w==S||!("constructor"in e)||!("constructor"in t)||"function"==typeof w&&w instanceof w&&"function"==typeof S&&S instanceof S||(g=!1)}return i.delete(e),i.delete(t),g}(e,t,r,o,a,i)}(e,t,r,o,Dr,a))}function Er(e,t,r,o){var a=r.length,i=a,s=!o;if(null==e)return!i;for(e=Oe(e);a--;){var l=r[a];if(s&&l[2]?l[1]!==e[l[0]]:!(l[0]in e))return!1}for(;++a<i;){var c=(l=r[a])[0],u=e[c],d=l[1];if(s&&l[2]){if(u===n&&!(c in e))return!1}else{var f=new Gn;if(o)var p=o(u,d,c,e,t,f);if(!(p===n?Dr(d,u,3,o,f):p))return!1}}return!0}function Ar(e){return!(!ts(e)||(t=e,Pe&&Pe in t))&&(Qi(e)?Ue:ge).test(Va(e));var t}function Tr(e){return"function"==typeof e?e:null==e?ol:"object"==typeof e?Ki(e)?Ur(e[0],e[1]):Br(e):pl(e)}function Lr(e){if(!Fa(e))return vn(e);var t=[];for(var n in Oe(e))Te.call(e,n)&&"constructor"!=n&&t.push(n);return t}function Pr(e){if(!ts(e))return function(e){var t=[];if(null!=e)for(var n in Oe(e))t.push(n);return t}(e);var t=Fa(e),n=[];for(var r in e)("constructor"!=r||!t&&Te.call(e,r))&&n.push(r);return n}function Vr(e,t){return e<t}function Mr(e,t){var n=-1,r=Hi(e)?Se(e.length):[];return pr(e,(function(e,o,a){r[++n]=t(e,o,a)})),r}function Br(e){var t=fa(e);return 1==t.length&&t[0][2]?Oa(t[0][0],t[0][1]):function(n){return n===e||Er(n,e,t)}}function Ur(e,t){return Sa(e)&&ka(t)?Oa(Pa(e),t):function(r){var o=Os(r,e);return o===n&&o===t?Cs(r,e):Dr(t,o,3)}}function qr(e,t,r,o,a){e!==t&&yr(t,(function(i,s){if(a||(a=new Gn),ts(i))!function(e,t,r,o,a,i,s){var l=ja(e,r),c=ja(t,r),u=s.get(c);if(u)return void tr(e,r,u);var d=i?i(l,c,r+"",e,t,s):n,f=d===n;if(f){var p=Ki(c),_=!p&&Yi(c),m=!p&&!_&&us(c);d=c,p||_||m?Ki(l)?d=l:Ji(l)?d=No(l):_?(f=!1,d=Fo(c,!0)):m?(f=!1,d=Oo(c,!0)):d=[]:as(c)||zi(c)?(d=l,zi(l)?d=vs(l):ts(l)&&!Qi(l)||(d=va(c))):f=!1}f&&(s.set(c,d),a(d,c,o,i,s),s.delete(c));tr(e,r,d)}(e,t,s,r,qr,o,a);else{var l=o?o(ja(e,s),i,s+"",e,t,a):n;l===n&&(l=i),tr(e,s,l)}}),Ds)}function zr(e,t){var r=e.length;if(r)return ba(t+=t<0?r:0,r)?e[t]:n}function Kr(e,t,n){t=t.length?Dt(t,(function(e){return Ki(e)?function(t){return xr(t,1===e.length?e[0]:e)}:e})):[ol];var r=-1;t=Dt(t,Xt(ua()));var o=Mr(e,(function(e,n,o){var a=Dt(t,(function(t){return t(e)}));return{criteria:a,index:++r,value:e}}));return function(e,t){var n=e.length;for(e.sort(t);n--;)e[n]=e[n].value;return e}(o,(function(e,t){return function(e,t,n){var r=-1,o=e.criteria,a=t.criteria,i=o.length,s=n.length;for(;++r<i;){var l=Co(o[r],a[r]);if(l)return r>=s?l:l*("desc"==n[r]?-1:1)}return e.index-t.index}(e,t,n)}))}function Wr(e,t,n){for(var r=-1,o=t.length,a={};++r<o;){var i=t[r],s=xr(e,i);n(s,i)&&eo(a,wo(i,e),s)}return a}function Hr(e,t,n,r){var o=r?Ut:Bt,a=-1,i=t.length,s=e;for(e===t&&(t=No(t)),n&&(s=Dt(e,Xt(n)));++a<i;)for(var l=0,c=t[a],u=n?n(c):c;(l=o(s,u,l,r))>-1;)s!==e&&Ge.call(s,l,1),Ge.call(e,l,1);return e}function Jr(e,t){for(var n=e?t.length:0,r=n-1;n--;){var o=t[n];if(n==r||o!==a){var a=o;ba(o)?Ge.call(e,o,1):po(e,o)}}return e}function Yr(e,t){return e+ht($n()*(t-e+1))}function Gr(e,t){var n="";if(!e||t<1||t>f)return n;do{t%2&&(n+=e),(t=ht(t/2))&&(e+=e)}while(t);return n}function Xr(e,t){return Da(Ca(e,t,ol),e+"")}function Qr(e){return Qn(Bs(e))}function Zr(e,t){var n=Bs(e);return Ta(n,lr(t,0,n.length))}function eo(e,t,r,o){if(!ts(e))return e;for(var a=-1,i=(t=wo(t,e)).length,s=i-1,l=e;null!=l&&++a<i;){var c=Pa(t[a]),u=r;if("__proto__"===c||"constructor"===c||"prototype"===c)return e;if(a!=s){var d=l[c];(u=o?o(d,c,l):n)===n&&(u=ts(d)?d:ba(t[a+1])?[]:{})}nr(l,c,u),l=l[c]}return e}var to=Nn?function(e,t){return Nn.set(e,t),e}:ol,no=lt?function(e,t){return lt(e,"toString",{configurable:!0,enumerable:!1,value:tl(t),writable:!0})}:ol;function ro(e){return Ta(Bs(e))}function oo(e,t,n){var r=-1,o=e.length;t<0&&(t=-t>o?0:o+t),(n=n>o?o:n)<0&&(n+=o),o=t>n?0:n-t>>>0,t>>>=0;for(var a=Se(o);++r<o;)a[r]=e[r+t];return a}function ao(e,t){var n;return pr(e,(function(e,r,o){return!(n=t(e,r,o))})),!!n}function io(e,t,n){var r=0,o=null==e?r:e.length;if("number"==typeof t&&t==t&&o<=2147483647){for(;r<o;){var a=r+o>>>1,i=e[a];null!==i&&!cs(i)&&(n?i<=t:i<t)?r=a+1:o=a}return o}return so(e,t,ol,n)}function so(e,t,r,o){var a=0,i=null==e?0:e.length;if(0===i)return 0;for(var s=(t=r(t))!=t,l=null===t,c=cs(t),u=t===n;a<i;){var d=ht((a+i)/2),f=r(e[d]),p=f!==n,_=null===f,m=f==f,g=cs(f);if(s)var h=o||m;else h=u?m&&(o||p):l?m&&p&&(o||!_):c?m&&p&&!_&&(o||!g):!_&&!g&&(o?f<=t:f<t);h?a=d+1:i=d}return bn(i,4294967294)}function lo(e,t){for(var n=-1,r=e.length,o=0,a=[];++n<r;){var i=e[n],s=t?t(i):i;if(!n||!Bi(s,l)){var l=s;a[o++]=0===i?0:i}}return a}function co(e){return"number"==typeof e?e:cs(e)?p:+e}function uo(e){if("string"==typeof e)return e;if(Ki(e))return Dt(e,uo)+"";if(cs(e))return Mn?Mn.call(e):"";var t=e+"";return"0"==t&&1/e==-1/0?"-0":t}function fo(e,t,n){var r=-1,o=Nt,a=e.length,i=!0,s=[],l=s;if(n)i=!1,o=It;else if(a>=200){var c=t?null:Xo(e);if(c)return un(c);i=!1,o=Zt,l=new Yn}else l=t?[]:s;e:for(;++r<a;){var u=e[r],d=t?t(u):u;if(u=n||0!==u?u:0,i&&d==d){for(var f=l.length;f--;)if(l[f]===d)continue e;t&&l.push(d),s.push(u)}else o(l,d,n)||(l!==s&&l.push(d),s.push(u))}return s}function po(e,t){return null==(e=Ra(e,t=wo(t,e)))||delete e[Pa(Xa(t))]}function _o(e,t,n,r){return eo(e,t,n(xr(e,t)),r)}function mo(e,t,n,r){for(var o=e.length,a=r?o:-1;(r?a--:++a<o)&&t(e[a],a,e););return n?oo(e,r?0:a,r?a+1:o):oo(e,r?a+1:0,r?o:a)}function go(e,t){var n=e;return n instanceof Kn&&(n=n.value()),At(t,(function(e,t){return t.func.apply(t.thisArg,Et([e],t.args))}),n)}function ho(e,t,n){var r=e.length;if(r<2)return r?fo(e[0]):[];for(var o=-1,a=Se(r);++o<r;)for(var i=e[o],s=-1;++s<r;)s!=o&&(a[o]=fr(a[o]||i,e[s],t,n));return fo(vr(a,1),t,n)}function vo(e,t,r){for(var o=-1,a=e.length,i=t.length,s={};++o<a;){var l=o<i?t[o]:n;r(s,e[o],l)}return s}function yo(e){return Ji(e)?e:[]}function bo(e){return"function"==typeof e?e:ol}function wo(e,t){return Ki(e)?e:Sa(e,t)?[e]:La(ys(e))}var So=Xr;function $o(e,t,r){var o=e.length;return r=r===n?o:r,!t&&r>=o?e:oo(e,t,r)}var xo=dt||function(e){return pt.clearTimeout(e)};function Fo(e,t){if(t)return e.slice();var n=e.length,r=We?We(n):new e.constructor(n);return e.copy(r),r}function ko(e){var t=new e.constructor(e.byteLength);return new Ke(t).set(new Ke(e)),t}function Oo(e,t){var n=t?ko(e.buffer):e.buffer;return new e.constructor(n,e.byteOffset,e.length)}function Co(e,t){if(e!==t){var r=e!==n,o=null===e,a=e==e,i=cs(e),s=t!==n,l=null===t,c=t==t,u=cs(t);if(!l&&!u&&!i&&e>t||i&&s&&c&&!l&&!u||o&&s&&c||!r&&c||!a)return 1;if(!o&&!i&&!u&&e<t||u&&r&&a&&!o&&!i||l&&r&&a||!s&&a||!c)return-1}return 0}function Ro(e,t,n,r){for(var o=-1,a=e.length,i=n.length,s=-1,l=t.length,c=yn(a-i,0),u=Se(l+c),d=!r;++s<l;)u[s]=t[s];for(;++o<i;)(d||o<a)&&(u[n[o]]=e[o]);for(;c--;)u[s++]=e[o++];return u}function jo(e,t,n,r){for(var o=-1,a=e.length,i=-1,s=n.length,l=-1,c=t.length,u=yn(a-s,0),d=Se(u+c),f=!r;++o<u;)d[o]=e[o];for(var p=o;++l<c;)d[p+l]=t[l];for(;++i<s;)(f||o<a)&&(d[p+n[i]]=e[o++]);return d}function No(e,t){var n=-1,r=e.length;for(t||(t=Se(r));++n<r;)t[n]=e[n];return t}function Io(e,t,r,o){var a=!r;r||(r={});for(var i=-1,s=t.length;++i<s;){var l=t[i],c=o?o(r[l],e[l],l,r,e):n;c===n&&(c=e[l]),a?ir(r,l,c):nr(r,l,c)}return r}function Do(e,t){return function(n,r){var o=Ki(n)?kt:or,a=t?t():{};return o(n,e,ua(r,2),a)}}function Eo(e){return Xr((function(t,r){var o=-1,a=r.length,i=a>1?r[a-1]:n,s=a>2?r[2]:n;for(i=e.length>3&&"function"==typeof i?(a--,i):n,s&&wa(r[0],r[1],s)&&(i=a<3?n:i,a=1),t=Oe(t);++o<a;){var l=r[o];l&&e(t,l,o,i)}return t}))}function Ao(e,t){return function(n,r){if(null==n)return n;if(!Hi(n))return e(n,r);for(var o=n.length,a=t?o:-1,i=Oe(n);(t?a--:++a<o)&&!1!==r(i[a],a,i););return n}}function To(e){return function(t,n,r){for(var o=-1,a=Oe(t),i=r(t),s=i.length;s--;){var l=i[e?s:++o];if(!1===n(a[l],l,a))break}return t}}function Lo(e){return function(t){var r=an(t=ys(t))?pn(t):n,o=r?r[0]:t.charAt(0),a=r?$o(r,1).join(""):t.slice(1);return o[e]()+a}}function Po(e){return function(t){return At(Qs(zs(t).replace(Qe,"")),e,"")}}function Vo(e){return function(){var t=arguments;switch(t.length){case 0:return new e;case 1:return new e(t[0]);case 2:return new e(t[0],t[1]);case 3:return new e(t[0],t[1],t[2]);case 4:return new e(t[0],t[1],t[2],t[3]);case 5:return new e(t[0],t[1],t[2],t[3],t[4]);case 6:return new e(t[0],t[1],t[2],t[3],t[4],t[5]);case 7:return new e(t[0],t[1],t[2],t[3],t[4],t[5],t[6])}var n=Un(e.prototype),r=e.apply(n,t);return ts(r)?r:n}}function Mo(e){return function(t,r,o){var a=Oe(t);if(!Hi(t)){var i=ua(r,3);t=Is(t),r=function(e){return i(a[e],e,a)}}var s=e(t,r,o);return s>-1?a[i?t[s]:s]:n}}function Bo(e){return oa((function(t){var o=t.length,a=o,i=zn.prototype.thru;for(e&&t.reverse();a--;){var s=t[a];if("function"!=typeof s)throw new je(r);if(i&&!l&&"wrapper"==la(s))var l=new zn([],!0)}for(a=l?a:o;++a<o;){var c=la(s=t[a]),u="wrapper"==c?sa(s):n;l=u&&$a(u[0])&&424==u[1]&&!u[4].length&&1==u[9]?l[la(u[0])].apply(l,u[3]):1==s.length&&$a(s)?l[c]():l.thru(s)}return function(){var e=arguments,n=e[0];if(l&&1==e.length&&Ki(n))return l.plant(n).value();for(var r=0,a=o?t[r].apply(this,e):n;++r<o;)a=t[r].call(this,a);return a}}))}function Uo(e,t,r,o,a,i,s,l,u,d){var f=t&c,p=1&t,_=2&t,m=24&t,g=512&t,h=_?n:Vo(e);return function c(){for(var v=arguments.length,y=Se(v),b=v;b--;)y[b]=arguments[b];if(m)var w=ca(c),S=function(e,t){for(var n=e.length,r=0;n--;)e[n]===t&&++r;return r}(y,w);if(o&&(y=Ro(y,o,a,m)),i&&(y=jo(y,i,s,m)),v-=S,m&&v<d){var $=cn(y,w);return Yo(e,t,Uo,c.placeholder,r,y,$,l,u,d-v)}var x=p?r:this,F=_?x[e]:e;return v=y.length,l?y=function(e,t){var r=e.length,o=bn(t.length,r),a=No(e);for(;o--;){var i=t[o];e[o]=ba(i,r)?a[i]:n}return e}(y,l):g&&v>1&&y.reverse(),f&&u<v&&(y.length=u),this&&this!==pt&&this instanceof c&&(F=h||Vo(F)),F.apply(x,y)}}function qo(e,t){return function(n,r){return function(e,t,n,r){return wr(e,(function(e,o,a){t(r,n(e),o,a)})),r}(n,e,t(r),{})}}function zo(e,t){return function(r,o){var a;if(r===n&&o===n)return t;if(r!==n&&(a=r),o!==n){if(a===n)return o;"string"==typeof r||"string"==typeof o?(r=uo(r),o=uo(o)):(r=co(r),o=co(o)),a=e(r,o)}return a}}function Ko(e){return oa((function(t){return t=Dt(t,Xt(ua())),Xr((function(n){var r=this;return e(t,(function(e){return Ft(e,r,n)}))}))}))}function Wo(e,t){var r=(t=t===n?" ":uo(t)).length;if(r<2)return r?Gr(t,e):t;var o=Gr(t,mt(e/fn(t)));return an(t)?$o(pn(o),0,e).join(""):o.slice(0,e)}function Ho(e){return function(t,r,o){return o&&"number"!=typeof o&&wa(t,r,o)&&(r=o=n),t=_s(t),r===n?(r=t,t=0):r=_s(r),function(e,t,n,r){for(var o=-1,a=yn(mt((t-e)/(n||1)),0),i=Se(a);a--;)i[r?a:++o]=e,e+=n;return i}(t,r,o=o===n?t<r?1:-1:_s(o),e)}}function Jo(e){return function(t,n){return"string"==typeof t&&"string"==typeof n||(t=hs(t),n=hs(n)),e(t,n)}}function Yo(e,t,r,o,a,i,c,u,d,f){var p=8&t;t|=p?s:l,4&(t&=~(p?l:s))||(t&=-4);var _=[e,t,a,p?i:n,p?c:n,p?n:i,p?n:c,u,d,f],m=r.apply(n,_);return $a(e)&&Na(m,_),m.placeholder=o,Ea(m,e,t)}function Go(e){var t=ke[e];return function(e,n){if(e=hs(e),(n=null==n?0:bn(ms(n),292))&&Wt(e)){var r=(ys(e)+"e").split("e");return+((r=(ys(t(r[0]+"e"+(+r[1]+n)))+"e").split("e"))[0]+"e"+(+r[1]-n))}return t(e)}}var Xo=Cn&&1/un(new Cn([,-0]))[1]==d?function(e){return new Cn(e)}:cl;function Qo(e){return function(t){var n=ga(t);return n==$?sn(t):n==C?dn(t):function(e,t){return Dt(t,(function(t){return[t,e[t]]}))}(t,e(t))}}function Zo(e,t,o,d,f,p,_,m){var g=2&t;if(!g&&"function"!=typeof e)throw new je(r);var h=d?d.length:0;if(h||(t&=-97,d=f=n),_=_===n?_:yn(ms(_),0),m=m===n?m:ms(m),h-=f?f.length:0,t&l){var v=d,y=f;d=f=n}var b=g?n:sa(e),w=[e,t,o,d,f,v,y,p,_,m];if(b&&function(e,t){var n=e[1],r=t[1],o=n|r,i=o<131,s=r==c&&8==n||r==c&&n==u&&e[7].length<=t[8]||384==r&&t[7].length<=t[8]&&8==n;if(!i&&!s)return e;1&r&&(e[2]=t[2],o|=1&n?0:4);var l=t[3];if(l){var d=e[3];e[3]=d?Ro(d,l,t[4]):l,e[4]=d?cn(e[3],a):t[4]}(l=t[5])&&(d=e[5],e[5]=d?jo(d,l,t[6]):l,e[6]=d?cn(e[5],a):t[6]);(l=t[7])&&(e[7]=l);r&c&&(e[8]=null==e[8]?t[8]:bn(e[8],t[8]));null==e[9]&&(e[9]=t[9]);e[0]=t[0],e[1]=o}(w,b),e=w[0],t=w[1],o=w[2],d=w[3],f=w[4],!(m=w[9]=w[9]===n?g?0:e.length:yn(w[9]-h,0))&&24&t&&(t&=-25),t&&1!=t)S=8==t||t==i?function(e,t,r){var o=Vo(e);return function a(){for(var i=arguments.length,s=Se(i),l=i,c=ca(a);l--;)s[l]=arguments[l];var u=i<3&&s[0]!==c&&s[i-1]!==c?[]:cn(s,c);return(i-=u.length)<r?Yo(e,t,Uo,a.placeholder,n,s,u,n,n,r-i):Ft(this&&this!==pt&&this instanceof a?o:e,this,s)}}(e,t,m):t!=s&&33!=t||f.length?Uo.apply(n,w):function(e,t,n,r){var o=1&t,a=Vo(e);return function t(){for(var i=-1,s=arguments.length,l=-1,c=r.length,u=Se(c+s),d=this&&this!==pt&&this instanceof t?a:e;++l<c;)u[l]=r[l];for(;s--;)u[l++]=arguments[++i];return Ft(d,o?n:this,u)}}(e,t,o,d);else var S=function(e,t,n){var r=1&t,o=Vo(e);return function t(){return(this&&this!==pt&&this instanceof t?o:e).apply(r?n:this,arguments)}}(e,t,o);return Ea((b?to:Na)(S,w),e,t)}function ea(e,t,r,o){return e===n||Bi(e,De[r])&&!Te.call(o,r)?t:e}function ta(e,t,r,o,a,i){return ts(e)&&ts(t)&&(i.set(t,e),qr(e,t,n,ta,i),i.delete(t)),e}function na(e){return as(e)?n:e}function ra(e,t,r,o,a,i){var s=1&r,l=e.length,c=t.length;if(l!=c&&!(s&&c>l))return!1;var u=i.get(e),d=i.get(t);if(u&&d)return u==t&&d==e;var f=-1,p=!0,_=2&r?new Yn:n;for(i.set(e,t),i.set(t,e);++f<l;){var m=e[f],g=t[f];if(o)var h=s?o(g,m,f,t,e,i):o(m,g,f,e,t,i);if(h!==n){if(h)continue;p=!1;break}if(_){if(!Lt(t,(function(e,t){if(!Zt(_,t)&&(m===e||a(m,e,r,o,i)))return _.push(t)}))){p=!1;break}}else if(m!==g&&!a(m,g,r,o,i)){p=!1;break}}return i.delete(e),i.delete(t),p}function oa(e){return Da(Ca(e,n,Wa),e+"")}function aa(e){return Fr(e,Is,_a)}function ia(e){return Fr(e,Ds,ma)}var sa=Nn?function(e){return Nn.get(e)}:cl;function la(e){for(var t=e.name+"",n=In[t],r=Te.call(In,t)?n.length:0;r--;){var o=n[r],a=o.func;if(null==a||a==e)return o.name}return t}function ca(e){return(Te.call(Bn,"placeholder")?Bn:e).placeholder}function ua(){var e=Bn.iteratee||al;return e=e===al?Tr:e,arguments.length?e(arguments[0],arguments[1]):e}function da(e,t){var n,r,o=e.__data__;return("string"==(r=typeof(n=t))||"number"==r||"symbol"==r||"boolean"==r?"__proto__"!==n:null===n)?o["string"==typeof t?"string":"hash"]:o.map}function fa(e){for(var t=Is(e),n=t.length;n--;){var r=t[n],o=e[r];t[n]=[r,o,ka(o)]}return t}function pa(e,t){var r=function(e,t){return null==e?n:e[t]}(e,t);return Ar(r)?r:n}var _a=vt?function(e){return null==e?[]:(e=Oe(e),jt(vt(e),(function(t){return Ye.call(e,t)})))}:gl,ma=vt?function(e){for(var t=[];e;)Et(t,_a(e)),e=He(e);return t}:gl,ga=kr;function ha(e,t,n){for(var r=-1,o=(t=wo(t,e)).length,a=!1;++r<o;){var i=Pa(t[r]);if(!(a=null!=e&&n(e,i)))break;e=e[i]}return a||++r!=o?a:!!(o=null==e?0:e.length)&&es(o)&&ba(i,o)&&(Ki(e)||zi(e))}function va(e){return"function"!=typeof e.constructor||Fa(e)?{}:Un(He(e))}function ya(e){return Ki(e)||zi(e)||!!(Xe&&e&&e[Xe])}function ba(e,t){var n=typeof e;return!!(t=null==t?f:t)&&("number"==n||"symbol"!=n&&ve.test(e))&&e>-1&&e%1==0&&e<t}function wa(e,t,n){if(!ts(n))return!1;var r=typeof t;return!!("number"==r?Hi(n)&&ba(t,n.length):"string"==r&&t in n)&&Bi(n[t],e)}function Sa(e,t){if(Ki(e))return!1;var n=typeof e;return!("number"!=n&&"symbol"!=n&&"boolean"!=n&&null!=e&&!cs(e))||(ee.test(e)||!Z.test(e)||null!=t&&e in Oe(t))}function $a(e){var t=la(e),n=Bn[t];if("function"!=typeof n||!(t in Kn.prototype))return!1;if(e===n)return!0;var r=sa(n);return!!r&&e===r[0]}(Fn&&ga(new Fn(new ArrayBuffer(1)))!=D||kn&&ga(new kn)!=$||On&&ga(On.resolve())!=k||Cn&&ga(new Cn)!=C||Rn&&ga(new Rn)!=N)&&(ga=function(e){var t=kr(e),r=t==F?e.constructor:n,o=r?Va(r):"";if(o)switch(o){case Dn:return D;case En:return $;case An:return k;case Tn:return C;case Ln:return N}return t});var xa=Ee?Qi:hl;function Fa(e){var t=e&&e.constructor;return e===("function"==typeof t&&t.prototype||De)}function ka(e){return e==e&&!ts(e)}function Oa(e,t){return function(r){return null!=r&&(r[e]===t&&(t!==n||e in Oe(r)))}}function Ca(e,t,r){return t=yn(t===n?e.length-1:t,0),function(){for(var n=arguments,o=-1,a=yn(n.length-t,0),i=Se(a);++o<a;)i[o]=n[t+o];o=-1;for(var s=Se(t+1);++o<t;)s[o]=n[o];return s[t]=r(i),Ft(e,this,s)}}function Ra(e,t){return t.length<2?e:xr(e,oo(t,0,-1))}function ja(e,t){if(("constructor"!==t||"function"!=typeof e[t])&&"__proto__"!=t)return e[t]}var Na=Aa(to),Ia=_t||function(e,t){return pt.setTimeout(e,t)},Da=Aa(no);function Ea(e,t,n){var r=t+"";return Da(e,function(e,t){var n=t.length;if(!n)return e;var r=n-1;return t[r]=(n>1?"& ":"")+t[r],t=t.join(n>2?", ":" "),e.replace(ie,"{\n/* [wrapped with "+t+"] */\n")}(r,function(e,t){return Ot(m,(function(n){var r="_."+n[0];t&n[1]&&!Nt(e,r)&&e.push(r)})),e.sort()}(function(e){var t=e.match(se);return t?t[1].split(le):[]}(r),n)))}function Aa(e){var t=0,r=0;return function(){var o=wn(),a=16-(o-r);if(r=o,a>0){if(++t>=800)return arguments[0]}else t=0;return e.apply(n,arguments)}}function Ta(e,t){var r=-1,o=e.length,a=o-1;for(t=t===n?o:t;++r<t;){var i=Yr(r,a),s=e[i];e[i]=e[r],e[r]=s}return e.length=t,e}var La=function(e){var t=Ai(e,(function(e){return 500===n.size&&n.clear(),e})),n=t.cache;return t}((function(e){var t=[];return 46===e.charCodeAt(0)&&t.push(""),e.replace(te,(function(e,n,r,o){t.push(r?o.replace(de,"$1"):n||e)})),t}));function Pa(e){if("string"==typeof e||cs(e))return e;var t=e+"";return"0"==t&&1/e==-1/0?"-0":t}function Va(e){if(null!=e){try{return Ae.call(e)}catch(e){}try{return e+""}catch(e){}}return""}function Ma(e){if(e instanceof Kn)return e.clone();var t=new zn(e.__wrapped__,e.__chain__);return t.__actions__=No(e.__actions__),t.__index__=e.__index__,t.__values__=e.__values__,t}var Ba=Xr((function(e,t){return Ji(e)?fr(e,vr(t,1,Ji,!0)):[]})),Ua=Xr((function(e,t){var r=Xa(t);return Ji(r)&&(r=n),Ji(e)?fr(e,vr(t,1,Ji,!0),ua(r,2)):[]})),qa=Xr((function(e,t){var r=Xa(t);return Ji(r)&&(r=n),Ji(e)?fr(e,vr(t,1,Ji,!0),n,r):[]}));function za(e,t,n){var r=null==e?0:e.length;if(!r)return-1;var o=null==n?0:ms(n);return o<0&&(o=yn(r+o,0)),Mt(e,ua(t,3),o)}function Ka(e,t,r){var o=null==e?0:e.length;if(!o)return-1;var a=o-1;return r!==n&&(a=ms(r),a=r<0?yn(o+a,0):bn(a,o-1)),Mt(e,ua(t,3),a,!0)}function Wa(e){return(null==e?0:e.length)?vr(e,1):[]}function Ha(e){return e&&e.length?e[0]:n}var Ja=Xr((function(e){var t=Dt(e,yo);return t.length&&t[0]===e[0]?jr(t):[]})),Ya=Xr((function(e){var t=Xa(e),r=Dt(e,yo);return t===Xa(r)?t=n:r.pop(),r.length&&r[0]===e[0]?jr(r,ua(t,2)):[]})),Ga=Xr((function(e){var t=Xa(e),r=Dt(e,yo);return(t="function"==typeof t?t:n)&&r.pop(),r.length&&r[0]===e[0]?jr(r,n,t):[]}));function Xa(e){var t=null==e?0:e.length;return t?e[t-1]:n}var Qa=Xr(Za);function Za(e,t){return e&&e.length&&t&&t.length?Hr(e,t):e}var ei=oa((function(e,t){var n=null==e?0:e.length,r=sr(e,t);return Jr(e,Dt(t,(function(e){return ba(e,n)?+e:e})).sort(Co)),r}));function ti(e){return null==e?e:xn.call(e)}var ni=Xr((function(e){return fo(vr(e,1,Ji,!0))})),ri=Xr((function(e){var t=Xa(e);return Ji(t)&&(t=n),fo(vr(e,1,Ji,!0),ua(t,2))})),oi=Xr((function(e){var t=Xa(e);return t="function"==typeof t?t:n,fo(vr(e,1,Ji,!0),n,t)}));function ai(e){if(!e||!e.length)return[];var t=0;return e=jt(e,(function(e){if(Ji(e))return t=yn(e.length,t),!0})),Yt(t,(function(t){return Dt(e,Kt(t))}))}function ii(e,t){if(!e||!e.length)return[];var r=ai(e);return null==t?r:Dt(r,(function(e){return Ft(t,n,e)}))}var si=Xr((function(e,t){return Ji(e)?fr(e,t):[]})),li=Xr((function(e){return ho(jt(e,Ji))})),ci=Xr((function(e){var t=Xa(e);return Ji(t)&&(t=n),ho(jt(e,Ji),ua(t,2))})),ui=Xr((function(e){var t=Xa(e);return t="function"==typeof t?t:n,ho(jt(e,Ji),n,t)})),di=Xr(ai);var fi=Xr((function(e){var t=e.length,r=t>1?e[t-1]:n;return r="function"==typeof r?(e.pop(),r):n,ii(e,r)}));function pi(e){var t=Bn(e);return t.__chain__=!0,t}function _i(e,t){return t(e)}var mi=oa((function(e){var t=e.length,r=t?e[0]:0,o=this.__wrapped__,a=function(t){return sr(t,e)};return!(t>1||this.__actions__.length)&&o instanceof Kn&&ba(r)?((o=o.slice(r,+r+(t?1:0))).__actions__.push({func:_i,args:[a],thisArg:n}),new zn(o,this.__chain__).thru((function(e){return t&&!e.length&&e.push(n),e}))):this.thru(a)}));var gi=Do((function(e,t,n){Te.call(e,n)?++e[n]:ir(e,n,1)}));var hi=Mo(za),vi=Mo(Ka);function yi(e,t){return(Ki(e)?Ot:pr)(e,ua(t,3))}function bi(e,t){return(Ki(e)?Ct:_r)(e,ua(t,3))}var wi=Do((function(e,t,n){Te.call(e,n)?e[n].push(t):ir(e,n,[t])}));var Si=Xr((function(e,t,n){var r=-1,o="function"==typeof t,a=Hi(e)?Se(e.length):[];return pr(e,(function(e){a[++r]=o?Ft(t,e,n):Nr(e,t,n)})),a})),$i=Do((function(e,t,n){ir(e,n,t)}));function xi(e,t){return(Ki(e)?Dt:Mr)(e,ua(t,3))}var Fi=Do((function(e,t,n){e[n?0:1].push(t)}),(function(){return[[],[]]}));var ki=Xr((function(e,t){if(null==e)return[];var n=t.length;return n>1&&wa(e,t[0],t[1])?t=[]:n>2&&wa(t[0],t[1],t[2])&&(t=[t[0]]),Kr(e,vr(t,1),[])})),Oi=ft||function(){return pt.Date.now()};function Ci(e,t,r){return t=r?n:t,t=e&&null==t?e.length:t,Zo(e,c,n,n,n,n,t)}function Ri(e,t){var o;if("function"!=typeof t)throw new je(r);return e=ms(e),function(){return--e>0&&(o=t.apply(this,arguments)),e<=1&&(t=n),o}}var ji=Xr((function(e,t,n){var r=1;if(n.length){var o=cn(n,ca(ji));r|=s}return Zo(e,r,t,n,o)})),Ni=Xr((function(e,t,n){var r=3;if(n.length){var o=cn(n,ca(Ni));r|=s}return Zo(t,r,e,n,o)}));function Ii(e,t,o){var a,i,s,l,c,u,d=0,f=!1,p=!1,_=!0;if("function"!=typeof e)throw new je(r);function m(t){var r=a,o=i;return a=i=n,d=t,l=e.apply(o,r)}function g(e){var r=e-u;return u===n||r>=t||r<0||p&&e-d>=s}function h(){var e=Oi();if(g(e))return v(e);c=Ia(h,function(e){var n=t-(e-u);return p?bn(n,s-(e-d)):n}(e))}function v(e){return c=n,_&&a?m(e):(a=i=n,l)}function y(){var e=Oi(),r=g(e);if(a=arguments,i=this,u=e,r){if(c===n)return function(e){return d=e,c=Ia(h,t),f?m(e):l}(u);if(p)return xo(c),c=Ia(h,t),m(u)}return c===n&&(c=Ia(h,t)),l}return t=hs(t)||0,ts(o)&&(f=!!o.leading,s=(p="maxWait"in o)?yn(hs(o.maxWait)||0,t):s,_="trailing"in o?!!o.trailing:_),y.cancel=function(){c!==n&&xo(c),d=0,a=u=i=c=n},y.flush=function(){return c===n?l:v(Oi())},y}var Di=Xr((function(e,t){return dr(e,1,t)})),Ei=Xr((function(e,t,n){return dr(e,hs(t)||0,n)}));function Ai(e,t){if("function"!=typeof e||null!=t&&"function"!=typeof t)throw new je(r);var n=function(){var r=arguments,o=t?t.apply(this,r):r[0],a=n.cache;if(a.has(o))return a.get(o);var i=e.apply(this,r);return n.cache=a.set(o,i)||a,i};return n.cache=new(Ai.Cache||Jn),n}function Ti(e){if("function"!=typeof e)throw new je(r);return function(){var t=arguments;switch(t.length){case 0:return!e.call(this);case 1:return!e.call(this,t[0]);case 2:return!e.call(this,t[0],t[1]);case 3:return!e.call(this,t[0],t[1],t[2])}return!e.apply(this,t)}}Ai.Cache=Jn;var Li=So((function(e,t){var n=(t=1==t.length&&Ki(t[0])?Dt(t[0],Xt(ua())):Dt(vr(t,1),Xt(ua()))).length;return Xr((function(r){for(var o=-1,a=bn(r.length,n);++o<a;)r[o]=t[o].call(this,r[o]);return Ft(e,this,r)}))})),Pi=Xr((function(e,t){var r=cn(t,ca(Pi));return Zo(e,s,n,t,r)})),Vi=Xr((function(e,t){var r=cn(t,ca(Vi));return Zo(e,l,n,t,r)})),Mi=oa((function(e,t){return Zo(e,u,n,n,n,t)}));function Bi(e,t){return e===t||e!=e&&t!=t}var Ui=Jo(Or),qi=Jo((function(e,t){return e>=t})),zi=Ir(function(){return arguments}())?Ir:function(e){return ns(e)&&Te.call(e,"callee")&&!Ye.call(e,"callee")},Ki=Se.isArray,Wi=yt?Xt(yt):function(e){return ns(e)&&kr(e)==I};function Hi(e){return null!=e&&es(e.length)&&!Qi(e)}function Ji(e){return ns(e)&&Hi(e)}var Yi=Pt||hl,Gi=bt?Xt(bt):function(e){return ns(e)&&kr(e)==y};function Xi(e){if(!ns(e))return!1;var t=kr(e);return t==b||"[object DOMException]"==t||"string"==typeof e.message&&"string"==typeof e.name&&!as(e)}function Qi(e){if(!ts(e))return!1;var t=kr(e);return t==w||t==S||"[object AsyncFunction]"==t||"[object Proxy]"==t}function Zi(e){return"number"==typeof e&&e==ms(e)}function es(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=f}function ts(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}function ns(e){return null!=e&&"object"==typeof e}var rs=wt?Xt(wt):function(e){return ns(e)&&ga(e)==$};function os(e){return"number"==typeof e||ns(e)&&kr(e)==x}function as(e){if(!ns(e)||kr(e)!=F)return!1;var t=He(e);if(null===t)return!0;var n=Te.call(t,"constructor")&&t.constructor;return"function"==typeof n&&n instanceof n&&Ae.call(n)==Me}var is=St?Xt(St):function(e){return ns(e)&&kr(e)==O};var ss=$t?Xt($t):function(e){return ns(e)&&ga(e)==C};function ls(e){return"string"==typeof e||!Ki(e)&&ns(e)&&kr(e)==R}function cs(e){return"symbol"==typeof e||ns(e)&&kr(e)==j}var us=xt?Xt(xt):function(e){return ns(e)&&es(e.length)&&!!it[kr(e)]};var ds=Jo(Vr),fs=Jo((function(e,t){return e<=t}));function ps(e){if(!e)return[];if(Hi(e))return ls(e)?pn(e):No(e);if(et&&e[et])return function(e){for(var t,n=[];!(t=e.next()).done;)n.push(t.value);return n}(e[et]());var t=ga(e);return(t==$?sn:t==C?un:Bs)(e)}function _s(e){return e?(e=hs(e))===d||e===-1/0?17976931348623157e292*(e<0?-1:1):e==e?e:0:0===e?e:0}function ms(e){var t=_s(e),n=t%1;return t==t?n?t-n:t:0}function gs(e){return e?lr(ms(e),0,_):0}function hs(e){if("number"==typeof e)return e;if(cs(e))return p;if(ts(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=ts(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=Gt(e);var n=me.test(e);return n||he.test(e)?ut(e.slice(2),n?2:8):_e.test(e)?p:+e}function vs(e){return Io(e,Ds(e))}function ys(e){return null==e?"":uo(e)}var bs=Eo((function(e,t){if(Fa(t)||Hi(t))Io(t,Is(t),e);else for(var n in t)Te.call(t,n)&&nr(e,n,t[n])})),ws=Eo((function(e,t){Io(t,Ds(t),e)})),Ss=Eo((function(e,t,n,r){Io(t,Ds(t),e,r)})),$s=Eo((function(e,t,n,r){Io(t,Is(t),e,r)})),xs=oa(sr);var Fs=Xr((function(e,t){e=Oe(e);var r=-1,o=t.length,a=o>2?t[2]:n;for(a&&wa(t[0],t[1],a)&&(o=1);++r<o;)for(var i=t[r],s=Ds(i),l=-1,c=s.length;++l<c;){var u=s[l],d=e[u];(d===n||Bi(d,De[u])&&!Te.call(e,u))&&(e[u]=i[u])}return e})),ks=Xr((function(e){return e.push(n,ta),Ft(As,n,e)}));function Os(e,t,r){var o=null==e?n:xr(e,t);return o===n?r:o}function Cs(e,t){return null!=e&&ha(e,t,Rr)}var Rs=qo((function(e,t,n){null!=t&&"function"!=typeof t.toString&&(t=Ve.call(t)),e[t]=n}),tl(ol)),js=qo((function(e,t,n){null!=t&&"function"!=typeof t.toString&&(t=Ve.call(t)),Te.call(e,t)?e[t].push(n):e[t]=[n]}),ua),Ns=Xr(Nr);function Is(e){return Hi(e)?Xn(e):Lr(e)}function Ds(e){return Hi(e)?Xn(e,!0):Pr(e)}var Es=Eo((function(e,t,n){qr(e,t,n)})),As=Eo((function(e,t,n,r){qr(e,t,n,r)})),Ts=oa((function(e,t){var n={};if(null==e)return n;var r=!1;t=Dt(t,(function(t){return t=wo(t,e),r||(r=t.length>1),t})),Io(e,ia(e),n),r&&(n=cr(n,7,na));for(var o=t.length;o--;)po(n,t[o]);return n}));var Ls=oa((function(e,t){return null==e?{}:function(e,t){return Wr(e,t,(function(t,n){return Cs(e,n)}))}(e,t)}));function Ps(e,t){if(null==e)return{};var n=Dt(ia(e),(function(e){return[e]}));return t=ua(t),Wr(e,n,(function(e,n){return t(e,n[0])}))}var Vs=Qo(Is),Ms=Qo(Ds);function Bs(e){return null==e?[]:Qt(e,Is(e))}var Us=Po((function(e,t,n){return t=t.toLowerCase(),e+(n?qs(t):t)}));function qs(e){return Xs(ys(e).toLowerCase())}function zs(e){return(e=ys(e))&&e.replace(ye,nn).replace(Ze,"")}var Ks=Po((function(e,t,n){return e+(n?"-":"")+t.toLowerCase()})),Ws=Po((function(e,t,n){return e+(n?" ":"")+t.toLowerCase()})),Hs=Lo("toLowerCase");var Js=Po((function(e,t,n){return e+(n?"_":"")+t.toLowerCase()}));var Ys=Po((function(e,t,n){return e+(n?" ":"")+Xs(t)}));var Gs=Po((function(e,t,n){return e+(n?" ":"")+t.toUpperCase()})),Xs=Lo("toUpperCase");function Qs(e,t,r){return e=ys(e),(t=r?n:t)===n?function(e){return rt.test(e)}(e)?function(e){return e.match(tt)||[]}(e):function(e){return e.match(ce)||[]}(e):e.match(t)||[]}var Zs=Xr((function(e,t){try{return Ft(e,n,t)}catch(e){return Xi(e)?e:new xe(e)}})),el=oa((function(e,t){return Ot(t,(function(t){t=Pa(t),ir(e,t,ji(e[t],e))})),e}));function tl(e){return function(){return e}}var nl=Bo(),rl=Bo(!0);function ol(e){return e}function al(e){return Tr("function"==typeof e?e:cr(e,1))}var il=Xr((function(e,t){return function(n){return Nr(n,e,t)}})),sl=Xr((function(e,t){return function(n){return Nr(e,n,t)}}));function ll(e,t,n){var r=Is(t),o=$r(t,r);null!=n||ts(t)&&(o.length||!r.length)||(n=t,t=e,e=this,o=$r(t,Is(t)));var a=!(ts(n)&&"chain"in n&&!n.chain),i=Qi(e);return Ot(o,(function(n){var r=t[n];e[n]=r,i&&(e.prototype[n]=function(){var t=this.__chain__;if(a||t){var n=e(this.__wrapped__);return(n.__actions__=No(this.__actions__)).push({func:r,args:arguments,thisArg:e}),n.__chain__=t,n}return r.apply(e,Et([this.value()],arguments))})})),e}function cl(){}var ul=Ko(Dt),dl=Ko(Rt),fl=Ko(Lt);function pl(e){return Sa(e)?Kt(Pa(e)):function(e){return function(t){return xr(t,e)}}(e)}var _l=Ho(),ml=Ho(!0);function gl(){return[]}function hl(){return!1}var vl=zo((function(e,t){return e+t}),0),yl=Go("ceil"),bl=zo((function(e,t){return e/t}),1),wl=Go("floor");var Sl,$l=zo((function(e,t){return e*t}),1),xl=Go("round"),Fl=zo((function(e,t){return e-t}),0);return Bn.after=function(e,t){if("function"!=typeof t)throw new je(r);return e=ms(e),function(){if(--e<1)return t.apply(this,arguments)}},Bn.ary=Ci,Bn.assign=bs,Bn.assignIn=ws,Bn.assignInWith=Ss,Bn.assignWith=$s,Bn.at=xs,Bn.before=Ri,Bn.bind=ji,Bn.bindAll=el,Bn.bindKey=Ni,Bn.castArray=function(){if(!arguments.length)return[];var e=arguments[0];return Ki(e)?e:[e]},Bn.chain=pi,Bn.chunk=function(e,t,r){t=(r?wa(e,t,r):t===n)?1:yn(ms(t),0);var o=null==e?0:e.length;if(!o||t<1)return[];for(var a=0,i=0,s=Se(mt(o/t));a<o;)s[i++]=oo(e,a,a+=t);return s},Bn.compact=function(e){for(var t=-1,n=null==e?0:e.length,r=0,o=[];++t<n;){var a=e[t];a&&(o[r++]=a)}return o},Bn.concat=function(){var e=arguments.length;if(!e)return[];for(var t=Se(e-1),n=arguments[0],r=e;r--;)t[r-1]=arguments[r];return Et(Ki(n)?No(n):[n],vr(t,1))},Bn.cond=function(e){var t=null==e?0:e.length,n=ua();return e=t?Dt(e,(function(e){if("function"!=typeof e[1])throw new je(r);return[n(e[0]),e[1]]})):[],Xr((function(n){for(var r=-1;++r<t;){var o=e[r];if(Ft(o[0],this,n))return Ft(o[1],this,n)}}))},Bn.conforms=function(e){return function(e){var t=Is(e);return function(n){return ur(n,e,t)}}(cr(e,1))},Bn.constant=tl,Bn.countBy=gi,Bn.create=function(e,t){var n=Un(e);return null==t?n:ar(n,t)},Bn.curry=function e(t,r,o){var a=Zo(t,8,n,n,n,n,n,r=o?n:r);return a.placeholder=e.placeholder,a},Bn.curryRight=function e(t,r,o){var a=Zo(t,i,n,n,n,n,n,r=o?n:r);return a.placeholder=e.placeholder,a},Bn.debounce=Ii,Bn.defaults=Fs,Bn.defaultsDeep=ks,Bn.defer=Di,Bn.delay=Ei,Bn.difference=Ba,Bn.differenceBy=Ua,Bn.differenceWith=qa,Bn.drop=function(e,t,r){var o=null==e?0:e.length;return o?oo(e,(t=r||t===n?1:ms(t))<0?0:t,o):[]},Bn.dropRight=function(e,t,r){var o=null==e?0:e.length;return o?oo(e,0,(t=o-(t=r||t===n?1:ms(t)))<0?0:t):[]},Bn.dropRightWhile=function(e,t){return e&&e.length?mo(e,ua(t,3),!0,!0):[]},Bn.dropWhile=function(e,t){return e&&e.length?mo(e,ua(t,3),!0):[]},Bn.fill=function(e,t,r,o){var a=null==e?0:e.length;return a?(r&&"number"!=typeof r&&wa(e,t,r)&&(r=0,o=a),function(e,t,r,o){var a=e.length;for((r=ms(r))<0&&(r=-r>a?0:a+r),(o=o===n||o>a?a:ms(o))<0&&(o+=a),o=r>o?0:gs(o);r<o;)e[r++]=t;return e}(e,t,r,o)):[]},Bn.filter=function(e,t){return(Ki(e)?jt:hr)(e,ua(t,3))},Bn.flatMap=function(e,t){return vr(xi(e,t),1)},Bn.flatMapDeep=function(e,t){return vr(xi(e,t),d)},Bn.flatMapDepth=function(e,t,r){return r=r===n?1:ms(r),vr(xi(e,t),r)},Bn.flatten=Wa,Bn.flattenDeep=function(e){return(null==e?0:e.length)?vr(e,d):[]},Bn.flattenDepth=function(e,t){return(null==e?0:e.length)?vr(e,t=t===n?1:ms(t)):[]},Bn.flip=function(e){return Zo(e,512)},Bn.flow=nl,Bn.flowRight=rl,Bn.fromPairs=function(e){for(var t=-1,n=null==e?0:e.length,r={};++t<n;){var o=e[t];r[o[0]]=o[1]}return r},Bn.functions=function(e){return null==e?[]:$r(e,Is(e))},Bn.functionsIn=function(e){return null==e?[]:$r(e,Ds(e))},Bn.groupBy=wi,Bn.initial=function(e){return(null==e?0:e.length)?oo(e,0,-1):[]},Bn.intersection=Ja,Bn.intersectionBy=Ya,Bn.intersectionWith=Ga,Bn.invert=Rs,Bn.invertBy=js,Bn.invokeMap=Si,Bn.iteratee=al,Bn.keyBy=$i,Bn.keys=Is,Bn.keysIn=Ds,Bn.map=xi,Bn.mapKeys=function(e,t){var n={};return t=ua(t,3),wr(e,(function(e,r,o){ir(n,t(e,r,o),e)})),n},Bn.mapValues=function(e,t){var n={};return t=ua(t,3),wr(e,(function(e,r,o){ir(n,r,t(e,r,o))})),n},Bn.matches=function(e){return Br(cr(e,1))},Bn.matchesProperty=function(e,t){return Ur(e,cr(t,1))},Bn.memoize=Ai,Bn.merge=Es,Bn.mergeWith=As,Bn.method=il,Bn.methodOf=sl,Bn.mixin=ll,Bn.negate=Ti,Bn.nthArg=function(e){return e=ms(e),Xr((function(t){return zr(t,e)}))},Bn.omit=Ts,Bn.omitBy=function(e,t){return Ps(e,Ti(ua(t)))},Bn.once=function(e){return Ri(2,e)},Bn.orderBy=function(e,t,r,o){return null==e?[]:(Ki(t)||(t=null==t?[]:[t]),Ki(r=o?n:r)||(r=null==r?[]:[r]),Kr(e,t,r))},Bn.over=ul,Bn.overArgs=Li,Bn.overEvery=dl,Bn.overSome=fl,Bn.partial=Pi,Bn.partialRight=Vi,Bn.partition=Fi,Bn.pick=Ls,Bn.pickBy=Ps,Bn.property=pl,Bn.propertyOf=function(e){return function(t){return null==e?n:xr(e,t)}},Bn.pull=Qa,Bn.pullAll=Za,Bn.pullAllBy=function(e,t,n){return e&&e.length&&t&&t.length?Hr(e,t,ua(n,2)):e},Bn.pullAllWith=function(e,t,r){return e&&e.length&&t&&t.length?Hr(e,t,n,r):e},Bn.pullAt=ei,Bn.range=_l,Bn.rangeRight=ml,Bn.rearg=Mi,Bn.reject=function(e,t){return(Ki(e)?jt:hr)(e,Ti(ua(t,3)))},Bn.remove=function(e,t){var n=[];if(!e||!e.length)return n;var r=-1,o=[],a=e.length;for(t=ua(t,3);++r<a;){var i=e[r];t(i,r,e)&&(n.push(i),o.push(r))}return Jr(e,o),n},Bn.rest=function(e,t){if("function"!=typeof e)throw new je(r);return Xr(e,t=t===n?t:ms(t))},Bn.reverse=ti,Bn.sampleSize=function(e,t,r){return t=(r?wa(e,t,r):t===n)?1:ms(t),(Ki(e)?Zn:Zr)(e,t)},Bn.set=function(e,t,n){return null==e?e:eo(e,t,n)},Bn.setWith=function(e,t,r,o){return o="function"==typeof o?o:n,null==e?e:eo(e,t,r,o)},Bn.shuffle=function(e){return(Ki(e)?er:ro)(e)},Bn.slice=function(e,t,r){var o=null==e?0:e.length;return o?(r&&"number"!=typeof r&&wa(e,t,r)?(t=0,r=o):(t=null==t?0:ms(t),r=r===n?o:ms(r)),oo(e,t,r)):[]},Bn.sortBy=ki,Bn.sortedUniq=function(e){return e&&e.length?lo(e):[]},Bn.sortedUniqBy=function(e,t){return e&&e.length?lo(e,ua(t,2)):[]},Bn.split=function(e,t,r){return r&&"number"!=typeof r&&wa(e,t,r)&&(t=r=n),(r=r===n?_:r>>>0)?(e=ys(e))&&("string"==typeof t||null!=t&&!is(t))&&!(t=uo(t))&&an(e)?$o(pn(e),0,r):e.split(t,r):[]},Bn.spread=function(e,t){if("function"!=typeof e)throw new je(r);return t=null==t?0:yn(ms(t),0),Xr((function(n){var r=n[t],o=$o(n,0,t);return r&&Et(o,r),Ft(e,this,o)}))},Bn.tail=function(e){var t=null==e?0:e.length;return t?oo(e,1,t):[]},Bn.take=function(e,t,r){return e&&e.length?oo(e,0,(t=r||t===n?1:ms(t))<0?0:t):[]},Bn.takeRight=function(e,t,r){var o=null==e?0:e.length;return o?oo(e,(t=o-(t=r||t===n?1:ms(t)))<0?0:t,o):[]},Bn.takeRightWhile=function(e,t){return e&&e.length?mo(e,ua(t,3),!1,!0):[]},Bn.takeWhile=function(e,t){return e&&e.length?mo(e,ua(t,3)):[]},Bn.tap=function(e,t){return t(e),e},Bn.throttle=function(e,t,n){var o=!0,a=!0;if("function"!=typeof e)throw new je(r);return ts(n)&&(o="leading"in n?!!n.leading:o,a="trailing"in n?!!n.trailing:a),Ii(e,t,{leading:o,maxWait:t,trailing:a})},Bn.thru=_i,Bn.toArray=ps,Bn.toPairs=Vs,Bn.toPairsIn=Ms,Bn.toPath=function(e){return Ki(e)?Dt(e,Pa):cs(e)?[e]:No(La(ys(e)))},Bn.toPlainObject=vs,Bn.transform=function(e,t,n){var r=Ki(e),o=r||Yi(e)||us(e);if(t=ua(t,4),null==n){var a=e&&e.constructor;n=o?r?new a:[]:ts(e)&&Qi(a)?Un(He(e)):{}}return(o?Ot:wr)(e,(function(e,r,o){return t(n,e,r,o)})),n},Bn.unary=function(e){return Ci(e,1)},Bn.union=ni,Bn.unionBy=ri,Bn.unionWith=oi,Bn.uniq=function(e){return e&&e.length?fo(e):[]},Bn.uniqBy=function(e,t){return e&&e.length?fo(e,ua(t,2)):[]},Bn.uniqWith=function(e,t){return t="function"==typeof t?t:n,e&&e.length?fo(e,n,t):[]},Bn.unset=function(e,t){return null==e||po(e,t)},Bn.unzip=ai,Bn.unzipWith=ii,Bn.update=function(e,t,n){return null==e?e:_o(e,t,bo(n))},Bn.updateWith=function(e,t,r,o){return o="function"==typeof o?o:n,null==e?e:_o(e,t,bo(r),o)},Bn.values=Bs,Bn.valuesIn=function(e){return null==e?[]:Qt(e,Ds(e))},Bn.without=si,Bn.words=Qs,Bn.wrap=function(e,t){return Pi(bo(t),e)},Bn.xor=li,Bn.xorBy=ci,Bn.xorWith=ui,Bn.zip=di,Bn.zipObject=function(e,t){return vo(e||[],t||[],nr)},Bn.zipObjectDeep=function(e,t){return vo(e||[],t||[],eo)},Bn.zipWith=fi,Bn.entries=Vs,Bn.entriesIn=Ms,Bn.extend=ws,Bn.extendWith=Ss,ll(Bn,Bn),Bn.add=vl,Bn.attempt=Zs,Bn.camelCase=Us,Bn.capitalize=qs,Bn.ceil=yl,Bn.clamp=function(e,t,r){return r===n&&(r=t,t=n),r!==n&&(r=(r=hs(r))==r?r:0),t!==n&&(t=(t=hs(t))==t?t:0),lr(hs(e),t,r)},Bn.clone=function(e){return cr(e,4)},Bn.cloneDeep=function(e){return cr(e,5)},Bn.cloneDeepWith=function(e,t){return cr(e,5,t="function"==typeof t?t:n)},Bn.cloneWith=function(e,t){return cr(e,4,t="function"==typeof t?t:n)},Bn.conformsTo=function(e,t){return null==t||ur(e,t,Is(t))},Bn.deburr=zs,Bn.defaultTo=function(e,t){return null==e||e!=e?t:e},Bn.divide=bl,Bn.endsWith=function(e,t,r){e=ys(e),t=uo(t);var o=e.length,a=r=r===n?o:lr(ms(r),0,o);return(r-=t.length)>=0&&e.slice(r,a)==t},Bn.eq=Bi,Bn.escape=function(e){return(e=ys(e))&&Y.test(e)?e.replace(H,rn):e},Bn.escapeRegExp=function(e){return(e=ys(e))&&re.test(e)?e.replace(ne,"\\$&"):e},Bn.every=function(e,t,r){var o=Ki(e)?Rt:mr;return r&&wa(e,t,r)&&(t=n),o(e,ua(t,3))},Bn.find=hi,Bn.findIndex=za,Bn.findKey=function(e,t){return Vt(e,ua(t,3),wr)},Bn.findLast=vi,Bn.findLastIndex=Ka,Bn.findLastKey=function(e,t){return Vt(e,ua(t,3),Sr)},Bn.floor=wl,Bn.forEach=yi,Bn.forEachRight=bi,Bn.forIn=function(e,t){return null==e?e:yr(e,ua(t,3),Ds)},Bn.forInRight=function(e,t){return null==e?e:br(e,ua(t,3),Ds)},Bn.forOwn=function(e,t){return e&&wr(e,ua(t,3))},Bn.forOwnRight=function(e,t){return e&&Sr(e,ua(t,3))},Bn.get=Os,Bn.gt=Ui,Bn.gte=qi,Bn.has=function(e,t){return null!=e&&ha(e,t,Cr)},Bn.hasIn=Cs,Bn.head=Ha,Bn.identity=ol,Bn.includes=function(e,t,n,r){e=Hi(e)?e:Bs(e),n=n&&!r?ms(n):0;var o=e.length;return n<0&&(n=yn(o+n,0)),ls(e)?n<=o&&e.indexOf(t,n)>-1:!!o&&Bt(e,t,n)>-1},Bn.indexOf=function(e,t,n){var r=null==e?0:e.length;if(!r)return-1;var o=null==n?0:ms(n);return o<0&&(o=yn(r+o,0)),Bt(e,t,o)},Bn.inRange=function(e,t,r){return t=_s(t),r===n?(r=t,t=0):r=_s(r),function(e,t,n){return e>=bn(t,n)&&e<yn(t,n)}(e=hs(e),t,r)},Bn.invoke=Ns,Bn.isArguments=zi,Bn.isArray=Ki,Bn.isArrayBuffer=Wi,Bn.isArrayLike=Hi,Bn.isArrayLikeObject=Ji,Bn.isBoolean=function(e){return!0===e||!1===e||ns(e)&&kr(e)==v},Bn.isBuffer=Yi,Bn.isDate=Gi,Bn.isElement=function(e){return ns(e)&&1===e.nodeType&&!as(e)},Bn.isEmpty=function(e){if(null==e)return!0;if(Hi(e)&&(Ki(e)||"string"==typeof e||"function"==typeof e.splice||Yi(e)||us(e)||zi(e)))return!e.length;var t=ga(e);if(t==$||t==C)return!e.size;if(Fa(e))return!Lr(e).length;for(var n in e)if(Te.call(e,n))return!1;return!0},Bn.isEqual=function(e,t){return Dr(e,t)},Bn.isEqualWith=function(e,t,r){var o=(r="function"==typeof r?r:n)?r(e,t):n;return o===n?Dr(e,t,n,r):!!o},Bn.isError=Xi,Bn.isFinite=function(e){return"number"==typeof e&&Wt(e)},Bn.isFunction=Qi,Bn.isInteger=Zi,Bn.isLength=es,Bn.isMap=rs,Bn.isMatch=function(e,t){return e===t||Er(e,t,fa(t))},Bn.isMatchWith=function(e,t,r){return r="function"==typeof r?r:n,Er(e,t,fa(t),r)},Bn.isNaN=function(e){return os(e)&&e!=+e},Bn.isNative=function(e){if(xa(e))throw new xe("Unsupported core-js use. Try https://npms.io/search?q=ponyfill.");return Ar(e)},Bn.isNil=function(e){return null==e},Bn.isNull=function(e){return null===e},Bn.isNumber=os,Bn.isObject=ts,Bn.isObjectLike=ns,Bn.isPlainObject=as,Bn.isRegExp=is,Bn.isSafeInteger=function(e){return Zi(e)&&e>=-9007199254740991&&e<=f},Bn.isSet=ss,Bn.isString=ls,Bn.isSymbol=cs,Bn.isTypedArray=us,Bn.isUndefined=function(e){return e===n},Bn.isWeakMap=function(e){return ns(e)&&ga(e)==N},Bn.isWeakSet=function(e){return ns(e)&&"[object WeakSet]"==kr(e)},Bn.join=function(e,t){return null==e?"":hn.call(e,t)},Bn.kebabCase=Ks,Bn.last=Xa,Bn.lastIndexOf=function(e,t,r){var o=null==e?0:e.length;if(!o)return-1;var a=o;return r!==n&&(a=(a=ms(r))<0?yn(o+a,0):bn(a,o-1)),t==t?function(e,t,n){for(var r=n+1;r--;)if(e[r]===t)return r;return r}(e,t,a):Mt(e,qt,a,!0)},Bn.lowerCase=Ws,Bn.lowerFirst=Hs,Bn.lt=ds,Bn.lte=fs,Bn.max=function(e){return e&&e.length?gr(e,ol,Or):n},Bn.maxBy=function(e,t){return e&&e.length?gr(e,ua(t,2),Or):n},Bn.mean=function(e){return zt(e,ol)},Bn.meanBy=function(e,t){return zt(e,ua(t,2))},Bn.min=function(e){return e&&e.length?gr(e,ol,Vr):n},Bn.minBy=function(e,t){return e&&e.length?gr(e,ua(t,2),Vr):n},Bn.stubArray=gl,Bn.stubFalse=hl,Bn.stubObject=function(){return{}},Bn.stubString=function(){return""},Bn.stubTrue=function(){return!0},Bn.multiply=$l,Bn.nth=function(e,t){return e&&e.length?zr(e,ms(t)):n},Bn.noConflict=function(){return pt._===this&&(pt._=Be),this},Bn.noop=cl,Bn.now=Oi,Bn.pad=function(e,t,n){e=ys(e);var r=(t=ms(t))?fn(e):0;if(!t||r>=t)return e;var o=(t-r)/2;return Wo(ht(o),n)+e+Wo(mt(o),n)},Bn.padEnd=function(e,t,n){e=ys(e);var r=(t=ms(t))?fn(e):0;return t&&r<t?e+Wo(t-r,n):e},Bn.padStart=function(e,t,n){e=ys(e);var r=(t=ms(t))?fn(e):0;return t&&r<t?Wo(t-r,n)+e:e},Bn.parseInt=function(e,t,n){return n||null==t?t=0:t&&(t=+t),Sn(ys(e).replace(oe,""),t||0)},Bn.random=function(e,t,r){if(r&&"boolean"!=typeof r&&wa(e,t,r)&&(t=r=n),r===n&&("boolean"==typeof t?(r=t,t=n):"boolean"==typeof e&&(r=e,e=n)),e===n&&t===n?(e=0,t=1):(e=_s(e),t===n?(t=e,e=0):t=_s(t)),e>t){var o=e;e=t,t=o}if(r||e%1||t%1){var a=$n();return bn(e+a*(t-e+ct("1e-"+((a+"").length-1))),t)}return Yr(e,t)},Bn.reduce=function(e,t,n){var r=Ki(e)?At:Ht,o=arguments.length<3;return r(e,ua(t,4),n,o,pr)},Bn.reduceRight=function(e,t,n){var r=Ki(e)?Tt:Ht,o=arguments.length<3;return r(e,ua(t,4),n,o,_r)},Bn.repeat=function(e,t,r){return t=(r?wa(e,t,r):t===n)?1:ms(t),Gr(ys(e),t)},Bn.replace=function(){var e=arguments,t=ys(e[0]);return e.length<3?t:t.replace(e[1],e[2])},Bn.result=function(e,t,r){var o=-1,a=(t=wo(t,e)).length;for(a||(a=1,e=n);++o<a;){var i=null==e?n:e[Pa(t[o])];i===n&&(o=a,i=r),e=Qi(i)?i.call(e):i}return e},Bn.round=xl,Bn.runInContext=e,Bn.sample=function(e){return(Ki(e)?Qn:Qr)(e)},Bn.size=function(e){if(null==e)return 0;if(Hi(e))return ls(e)?fn(e):e.length;var t=ga(e);return t==$||t==C?e.size:Lr(e).length},Bn.snakeCase=Js,Bn.some=function(e,t,r){var o=Ki(e)?Lt:ao;return r&&wa(e,t,r)&&(t=n),o(e,ua(t,3))},Bn.sortedIndex=function(e,t){return io(e,t)},Bn.sortedIndexBy=function(e,t,n){return so(e,t,ua(n,2))},Bn.sortedIndexOf=function(e,t){var n=null==e?0:e.length;if(n){var r=io(e,t);if(r<n&&Bi(e[r],t))return r}return-1},Bn.sortedLastIndex=function(e,t){return io(e,t,!0)},Bn.sortedLastIndexBy=function(e,t,n){return so(e,t,ua(n,2),!0)},Bn.sortedLastIndexOf=function(e,t){if(null==e?0:e.length){var n=io(e,t,!0)-1;if(Bi(e[n],t))return n}return-1},Bn.startCase=Ys,Bn.startsWith=function(e,t,n){return e=ys(e),n=null==n?0:lr(ms(n),0,e.length),t=uo(t),e.slice(n,n+t.length)==t},Bn.subtract=Fl,Bn.sum=function(e){return e&&e.length?Jt(e,ol):0},Bn.sumBy=function(e,t){return e&&e.length?Jt(e,ua(t,2)):0},Bn.template=function(e,t,r){var o=Bn.templateSettings;r&&wa(e,t,r)&&(t=n),e=ys(e),t=Ss({},t,o,ea);var a,i,s=Ss({},t.imports,o.imports,ea),l=Is(s),c=Qt(s,l),u=0,d=t.interpolate||be,f="__p += '",p=Ce((t.escape||be).source+"|"+d.source+"|"+(d===Q?fe:be).source+"|"+(t.evaluate||be).source+"|$","g"),_="//# sourceURL="+(Te.call(t,"sourceURL")?(t.sourceURL+"").replace(/\s/g," "):"lodash.templateSources["+ ++at+"]")+"\n";e.replace(p,(function(t,n,r,o,s,l){return r||(r=o),f+=e.slice(u,l).replace(we,on),n&&(a=!0,f+="' +\n__e("+n+") +\n'"),s&&(i=!0,f+="';\n"+s+";\n__p += '"),r&&(f+="' +\n((__t = ("+r+")) == null ? '' : __t) +\n'"),u=l+t.length,t})),f+="';\n";var m=Te.call(t,"variable")&&t.variable;if(m){if(ue.test(m))throw new xe("Invalid `variable` option passed into `_.template`")}else f="with (obj) {\n"+f+"\n}\n";f=(i?f.replace(q,""):f).replace(z,"$1").replace(K,"$1;"),f="function("+(m||"obj")+") {\n"+(m?"":"obj || (obj = {});\n")+"var __t, __p = ''"+(a?", __e = _.escape":"")+(i?", __j = Array.prototype.join;\nfunction print() { __p += __j.call(arguments, '') }\n":";\n")+f+"return __p\n}";var g=Zs((function(){return Fe(l,_+"return "+f).apply(n,c)}));if(g.source=f,Xi(g))throw g;return g},Bn.times=function(e,t){if((e=ms(e))<1||e>f)return[];var n=_,r=bn(e,_);t=ua(t),e-=_;for(var o=Yt(r,t);++n<e;)t(n);return o},Bn.toFinite=_s,Bn.toInteger=ms,Bn.toLength=gs,Bn.toLower=function(e){return ys(e).toLowerCase()},Bn.toNumber=hs,Bn.toSafeInteger=function(e){return e?lr(ms(e),-9007199254740991,f):0===e?e:0},Bn.toString=ys,Bn.toUpper=function(e){return ys(e).toUpperCase()},Bn.trim=function(e,t,r){if((e=ys(e))&&(r||t===n))return Gt(e);if(!e||!(t=uo(t)))return e;var o=pn(e),a=pn(t);return $o(o,en(o,a),tn(o,a)+1).join("")},Bn.trimEnd=function(e,t,r){if((e=ys(e))&&(r||t===n))return e.slice(0,_n(e)+1);if(!e||!(t=uo(t)))return e;var o=pn(e);return $o(o,0,tn(o,pn(t))+1).join("")},Bn.trimStart=function(e,t,r){if((e=ys(e))&&(r||t===n))return e.replace(oe,"");if(!e||!(t=uo(t)))return e;var o=pn(e);return $o(o,en(o,pn(t))).join("")},Bn.truncate=function(e,t){var r=30,o="...";if(ts(t)){var a="separator"in t?t.separator:a;r="length"in t?ms(t.length):r,o="omission"in t?uo(t.omission):o}var i=(e=ys(e)).length;if(an(e)){var s=pn(e);i=s.length}if(r>=i)return e;var l=r-fn(o);if(l<1)return o;var c=s?$o(s,0,l).join(""):e.slice(0,l);if(a===n)return c+o;if(s&&(l+=c.length-l),is(a)){if(e.slice(l).search(a)){var u,d=c;for(a.global||(a=Ce(a.source,ys(pe.exec(a))+"g")),a.lastIndex=0;u=a.exec(d);)var f=u.index;c=c.slice(0,f===n?l:f)}}else if(e.indexOf(uo(a),l)!=l){var p=c.lastIndexOf(a);p>-1&&(c=c.slice(0,p))}return c+o},Bn.unescape=function(e){return(e=ys(e))&&J.test(e)?e.replace(W,mn):e},Bn.uniqueId=function(e){var t=++Le;return ys(e)+t},Bn.upperCase=Gs,Bn.upperFirst=Xs,Bn.each=yi,Bn.eachRight=bi,Bn.first=Ha,ll(Bn,(Sl={},wr(Bn,(function(e,t){Te.call(Bn.prototype,t)||(Sl[t]=e)})),Sl),{chain:!1}),Bn.VERSION="4.17.21",Ot(["bind","bindKey","curry","curryRight","partial","partialRight"],(function(e){Bn[e].placeholder=Bn})),Ot(["drop","take"],(function(e,t){Kn.prototype[e]=function(r){r=r===n?1:yn(ms(r),0);var o=this.__filtered__&&!t?new Kn(this):this.clone();return o.__filtered__?o.__takeCount__=bn(r,o.__takeCount__):o.__views__.push({size:bn(r,_),type:e+(o.__dir__<0?"Right":"")}),o},Kn.prototype[e+"Right"]=function(t){return this.reverse()[e](t).reverse()}})),Ot(["filter","map","takeWhile"],(function(e,t){var n=t+1,r=1==n||3==n;Kn.prototype[e]=function(e){var t=this.clone();return t.__iteratees__.push({iteratee:ua(e,3),type:n}),t.__filtered__=t.__filtered__||r,t}})),Ot(["head","last"],(function(e,t){var n="take"+(t?"Right":"");Kn.prototype[e]=function(){return this[n](1).value()[0]}})),Ot(["initial","tail"],(function(e,t){var n="drop"+(t?"":"Right");Kn.prototype[e]=function(){return this.__filtered__?new Kn(this):this[n](1)}})),Kn.prototype.compact=function(){return this.filter(ol)},Kn.prototype.find=function(e){return this.filter(e).head()},Kn.prototype.findLast=function(e){return this.reverse().find(e)},Kn.prototype.invokeMap=Xr((function(e,t){return"function"==typeof e?new Kn(this):this.map((function(n){return Nr(n,e,t)}))})),Kn.prototype.reject=function(e){return this.filter(Ti(ua(e)))},Kn.prototype.slice=function(e,t){e=ms(e);var r=this;return r.__filtered__&&(e>0||t<0)?new Kn(r):(e<0?r=r.takeRight(-e):e&&(r=r.drop(e)),t!==n&&(r=(t=ms(t))<0?r.dropRight(-t):r.take(t-e)),r)},Kn.prototype.takeRightWhile=function(e){return this.reverse().takeWhile(e).reverse()},Kn.prototype.toArray=function(){return this.take(_)},wr(Kn.prototype,(function(e,t){var r=/^(?:filter|find|map|reject)|While$/.test(t),o=/^(?:head|last)$/.test(t),a=Bn[o?"take"+("last"==t?"Right":""):t],i=o||/^find/.test(t);a&&(Bn.prototype[t]=function(){var t=this.__wrapped__,s=o?[1]:arguments,l=t instanceof Kn,c=s[0],u=l||Ki(t),d=function(e){var t=a.apply(Bn,Et([e],s));return o&&f?t[0]:t};u&&r&&"function"==typeof c&&1!=c.length&&(l=u=!1);var f=this.__chain__,p=!!this.__actions__.length,_=i&&!f,m=l&&!p;if(!i&&u){t=m?t:new Kn(this);var g=e.apply(t,s);return g.__actions__.push({func:_i,args:[d],thisArg:n}),new zn(g,f)}return _&&m?e.apply(this,s):(g=this.thru(d),_?o?g.value()[0]:g.value():g)})})),Ot(["pop","push","shift","sort","splice","unshift"],(function(e){var t=Ne[e],n=/^(?:push|sort|unshift)$/.test(e)?"tap":"thru",r=/^(?:pop|shift)$/.test(e);Bn.prototype[e]=function(){var e=arguments;if(r&&!this.__chain__){var o=this.value();return t.apply(Ki(o)?o:[],e)}return this[n]((function(n){return t.apply(Ki(n)?n:[],e)}))}})),wr(Kn.prototype,(function(e,t){var n=Bn[t];if(n){var r=n.name+"";Te.call(In,r)||(In[r]=[]),In[r].push({name:t,func:n})}})),In[Uo(n,2).name]=[{name:"wrapper",func:n}],Kn.prototype.clone=function(){var e=new Kn(this.__wrapped__);return e.__actions__=No(this.__actions__),e.__dir__=this.__dir__,e.__filtered__=this.__filtered__,e.__iteratees__=No(this.__iteratees__),e.__takeCount__=this.__takeCount__,e.__views__=No(this.__views__),e},Kn.prototype.reverse=function(){if(this.__filtered__){var e=new Kn(this);e.__dir__=-1,e.__filtered__=!0}else(e=this.clone()).__dir__*=-1;return e},Kn.prototype.value=function(){var e=this.__wrapped__.value(),t=this.__dir__,n=Ki(e),r=t<0,o=n?e.length:0,a=function(e,t,n){var r=-1,o=n.length;for(;++r<o;){var a=n[r],i=a.size;switch(a.type){case"drop":e+=i;break;case"dropRight":t-=i;break;case"take":t=bn(t,e+i);break;case"takeRight":e=yn(e,t-i)}}return{start:e,end:t}}(0,o,this.__views__),i=a.start,s=a.end,l=s-i,c=r?s:i-1,u=this.__iteratees__,d=u.length,f=0,p=bn(l,this.__takeCount__);if(!n||!r&&o==l&&p==l)return go(e,this.__actions__);var _=[];e:for(;l--&&f<p;){for(var m=-1,g=e[c+=t];++m<d;){var h=u[m],v=h.iteratee,y=h.type,b=v(g);if(2==y)g=b;else if(!b){if(1==y)continue e;break e}}_[f++]=g}return _},Bn.prototype.at=mi,Bn.prototype.chain=function(){return pi(this)},Bn.prototype.commit=function(){return new zn(this.value(),this.__chain__)},Bn.prototype.next=function(){this.__values__===n&&(this.__values__=ps(this.value()));var e=this.__index__>=this.__values__.length;return{done:e,value:e?n:this.__values__[this.__index__++]}},Bn.prototype.plant=function(e){for(var t,r=this;r instanceof qn;){var o=Ma(r);o.__index__=0,o.__values__=n,t?a.__wrapped__=o:t=o;var a=o;r=r.__wrapped__}return a.__wrapped__=e,t},Bn.prototype.reverse=function(){var e=this.__wrapped__;if(e instanceof Kn){var t=e;return this.__actions__.length&&(t=new Kn(this)),(t=t.reverse()).__actions__.push({func:_i,args:[ti],thisArg:n}),new zn(t,this.__chain__)}return this.thru(ti)},Bn.prototype.toJSON=Bn.prototype.valueOf=Bn.prototype.value=function(){return go(this.__wrapped__,this.__actions__)},Bn.prototype.first=Bn.prototype.head,et&&(Bn.prototype[et]=function(){return this}),Bn}();mt?((mt.exports=gn)._=gn,_t._=gn):pt._=gn}).call(commonjsGlobal)}(lodash,lodash.exports);var ___default=lodash.exports;function _typeof$1(e){return _typeof$1="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},_typeof$1(e)}function _classCallCheck$1(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function _toPrimitive$1(e,t){if("object"!==_typeof$1(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,t||"default");if("object"!==_typeof$1(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}function _toPropertyKey$1(e){var t=_toPrimitive$1(e,"string");return"symbol"===_typeof$1(t)?t:String(t)}function _defineProperties$1(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,_toPropertyKey$1(r.key),r)}}function _createClass$1(e,t,n){return t&&_defineProperties$1(e.prototype,t),n&&_defineProperties$1(e,n),Object.defineProperty(e,"prototype",{writable:!1}),e}function _assertThisInitialized(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function _setPrototypeOf(e,t){return _setPrototypeOf=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},_setPrototypeOf(e,t)}function _inherits(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&_setPrototypeOf(e,t)}function _possibleConstructorReturn(e,t){if(t&&("object"===_typeof$1(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return _assertThisInitialized(e)}function _getPrototypeOf(e){return _getPrototypeOf=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},_getPrototypeOf(e)}function _defineProperty$1(e,t,n){return(t=_toPropertyKey$1(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function _arrayWithHoles(e){if(Array.isArray(e))return e}function _iterableToArray(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}function _arrayLikeToArray(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function _unsupportedIterableToArray(e,t){if(e){if("string"==typeof e)return _arrayLikeToArray(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?_arrayLikeToArray(e,t):void 0}}function _nonIterableRest(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _toArray(e){return _arrayWithHoles(e)||_iterableToArray(e)||_unsupportedIterableToArray(e)||_nonIterableRest()}function ownKeys$6(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function _objectSpread$6(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?ownKeys$6(Object(n),!0).forEach((function(t){_defineProperty$1(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):ownKeys$6(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}var consoleLogger={type:"logger",log:function(e){this.output("log",e)},warn:function(e){this.output("warn",e)},error:function(e){this.output("error",e)},output:function(e,t){console&&console[e]&&console[e].apply(console,t)}},Logger=function(){function e(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};_classCallCheck$1(this,e),this.init(t,n)}return _createClass$1(e,[{key:"init",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.prefix=t.prefix||"i18next:",this.logger=e||consoleLogger,this.options=t,this.debug=t.debug}},{key:"setDebug",value:function(e){this.debug=e}},{key:"log",value:function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return this.forward(t,"log","",!0)}},{key:"warn",value:function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return this.forward(t,"warn","",!0)}},{key:"error",value:function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return this.forward(t,"error","")}},{key:"deprecate",value:function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return this.forward(t,"warn","WARNING DEPRECATED: ",!0)}},{key:"forward",value:function(e,t,n,r){return r&&!this.debug?null:("string"==typeof e[0]&&(e[0]="".concat(n).concat(this.prefix," ").concat(e[0])),this.logger[t](e))}},{key:"create",value:function(t){return new e(this.logger,_objectSpread$6(_objectSpread$6({},{prefix:"".concat(this.prefix,":").concat(t,":")}),this.options))}},{key:"clone",value:function(t){return(t=t||this.options).prefix=t.prefix||this.prefix,new e(this.logger,t)}}]),e}(),baseLogger=new Logger,EventEmitter=function(){function e(){_classCallCheck$1(this,e),this.observers={}}return _createClass$1(e,[{key:"on",value:function(e,t){var n=this;return e.split(" ").forEach((function(e){n.observers[e]=n.observers[e]||[],n.observers[e].push(t)})),this}},{key:"off",value:function(e,t){this.observers[e]&&(t?this.observers[e]=this.observers[e].filter((function(e){return e!==t})):delete this.observers[e])}},{key:"emit",value:function(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];this.observers[e]&&[].concat(this.observers[e]).forEach((function(e){e.apply(void 0,n)}));this.observers["*"]&&[].concat(this.observers["*"]).forEach((function(t){t.apply(t,[e].concat(n))}))}}]),e}();function defer(){var e,t,n=new Promise((function(n,r){e=n,t=r}));return n.resolve=e,n.reject=t,n}function makeString(e){return null==e?"":""+e}function copy(e,t,n){e.forEach((function(e){t[e]&&(n[e]=t[e])}))}function getLastOfPath(e,t,n){function r(e){return e&&e.indexOf("###")>-1?e.replace(/###/g,"."):e}function o(){return!e||"string"==typeof e}for(var a="string"!=typeof t?[].concat(t):t.split(".");a.length>1;){if(o())return{};var i=r(a.shift());!e[i]&&n&&(e[i]=new n),e=Object.prototype.hasOwnProperty.call(e,i)?e[i]:{}}return o()?{}:{obj:e,k:r(a.shift())}}function setPath(e,t,n){var r=getLastOfPath(e,t,Object);r.obj[r.k]=n}function pushPath(e,t,n,r){var o=getLastOfPath(e,t,Object),a=o.obj,i=o.k;a[i]=a[i]||[],r&&(a[i]=a[i].concat(n)),r||a[i].push(n)}function getPath(e,t){var n=getLastOfPath(e,t),r=n.obj,o=n.k;if(r)return r[o]}function getPathWithDefaults(e,t,n){var r=getPath(e,n);return void 0!==r?r:getPath(t,n)}function deepExtend(e,t,n){for(var r in t)"__proto__"!==r&&"constructor"!==r&&(r in e?"string"==typeof e[r]||e[r]instanceof String||"string"==typeof t[r]||t[r]instanceof String?n&&(e[r]=t[r]):deepExtend(e[r],t[r],n):e[r]=t[r]);return e}function regexEscape(e){return e.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&")}var _entityMap={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;","/":"&#x2F;"};function escape(e){return"string"==typeof e?e.replace(/[&<>"'\/]/g,(function(e){return _entityMap[e]})):e}var isIE10="undefined"!=typeof window&&window.navigator&&void 0===window.navigator.userAgentData&&window.navigator.userAgent&&window.navigator.userAgent.indexOf("MSIE")>-1,chars=[" ",",","?","!",";"];function looksLikeObjectPath(e,t,n){t=t||"",n=n||"";var r=chars.filter((function(e){return t.indexOf(e)<0&&n.indexOf(e)<0}));if(0===r.length)return!0;var o=new RegExp("(".concat(r.map((function(e){return"?"===e?"\\?":e})).join("|"),")")),a=!o.test(e);if(!a){var i=e.indexOf(n);i>0&&!o.test(e.substring(0,i))&&(a=!0)}return a}function deepFind(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:".";if(e){if(e[t])return e[t];for(var r=t.split(n),o=e,a=0;a<r.length;++a){if(!o)return;if("string"==typeof o[r[a]]&&a+1<r.length)return;if(void 0===o[r[a]]){for(var i=2,s=r.slice(a,a+i).join(n),l=o[s];void 0===l&&r.length>a+i;)i++,l=o[s=r.slice(a,a+i).join(n)];if(void 0===l)return;if(null===l)return null;if(t.endsWith(s)){if("string"==typeof l)return l;if(s&&"string"==typeof l[s])return l[s]}var c=r.slice(a+i).join(n);return c?deepFind(l,c,n):void 0}o=o[r[a]]}return o}}function ownKeys$5(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function _objectSpread$5(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?ownKeys$5(Object(n),!0).forEach((function(t){_defineProperty$1(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):ownKeys$5(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function _createSuper$3(e){var t=_isNativeReflectConstruct$3();return function(){var n,r=_getPrototypeOf(e);if(t){var o=_getPrototypeOf(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return _possibleConstructorReturn(this,n)}}function _isNativeReflectConstruct$3(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}var ResourceStore=function(e){_inherits(n,e);var t=_createSuper$3(n);function n(e){var r,o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{ns:["translation"],defaultNS:"translation"};return _classCallCheck$1(this,n),r=t.call(this),isIE10&&EventEmitter.call(_assertThisInitialized(r)),r.data=e||{},r.options=o,void 0===r.options.keySeparator&&(r.options.keySeparator="."),void 0===r.options.ignoreJSONStructure&&(r.options.ignoreJSONStructure=!0),r}return _createClass$1(n,[{key:"addNamespaces",value:function(e){this.options.ns.indexOf(e)<0&&this.options.ns.push(e)}},{key:"removeNamespaces",value:function(e){var t=this.options.ns.indexOf(e);t>-1&&this.options.ns.splice(t,1)}},{key:"getResource",value:function(e,t,n){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{},o=void 0!==r.keySeparator?r.keySeparator:this.options.keySeparator,a=void 0!==r.ignoreJSONStructure?r.ignoreJSONStructure:this.options.ignoreJSONStructure,i=[e,t];n&&"string"!=typeof n&&(i=i.concat(n)),n&&"string"==typeof n&&(i=i.concat(o?n.split(o):n)),e.indexOf(".")>-1&&(i=e.split("."));var s=getPath(this.data,i);return s||!a||"string"!=typeof n?s:deepFind(this.data&&this.data[e]&&this.data[e][t],n,o)}},{key:"addResource",value:function(e,t,n,r){var o=arguments.length>4&&void 0!==arguments[4]?arguments[4]:{silent:!1},a=void 0!==o.keySeparator?o.keySeparator:this.options.keySeparator,i=[e,t];n&&(i=i.concat(a?n.split(a):n)),e.indexOf(".")>-1&&(r=t,t=(i=e.split("."))[1]),this.addNamespaces(t),setPath(this.data,i,r),o.silent||this.emit("added",e,t,n,r)}},{key:"addResources",value:function(e,t,n){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{silent:!1};for(var o in n)"string"!=typeof n[o]&&"[object Array]"!==Object.prototype.toString.apply(n[o])||this.addResource(e,t,o,n[o],{silent:!0});r.silent||this.emit("added",e,t,n)}},{key:"addResourceBundle",value:function(e,t,n,r,o){var a=arguments.length>5&&void 0!==arguments[5]?arguments[5]:{silent:!1},i=[e,t];e.indexOf(".")>-1&&(r=n,n=t,t=(i=e.split("."))[1]),this.addNamespaces(t);var s=getPath(this.data,i)||{};r?deepExtend(s,n,o):s=_objectSpread$5(_objectSpread$5({},s),n),setPath(this.data,i,s),a.silent||this.emit("added",e,t,n)}},{key:"removeResourceBundle",value:function(e,t){this.hasResourceBundle(e,t)&&delete this.data[e][t],this.removeNamespaces(t),this.emit("removed",e,t)}},{key:"hasResourceBundle",value:function(e,t){return void 0!==this.getResource(e,t)}},{key:"getResourceBundle",value:function(e,t){return t||(t=this.options.defaultNS),"v1"===this.options.compatibilityAPI?_objectSpread$5(_objectSpread$5({},{}),this.getResource(e,t)):this.getResource(e,t)}},{key:"getDataByLanguage",value:function(e){return this.data[e]}},{key:"hasLanguageSomeTranslations",value:function(e){var t=this.getDataByLanguage(e);return!!(t&&Object.keys(t)||[]).find((function(e){return t[e]&&Object.keys(t[e]).length>0}))}},{key:"toJSON",value:function(){return this.data}}]),n}(EventEmitter),postProcessor={processors:{},addPostProcessor:function(e){this.processors[e.name]=e},handle:function(e,t,n,r,o){var a=this;return e.forEach((function(e){a.processors[e]&&(t=a.processors[e].process(t,n,r,o))})),t}};function ownKeys$4(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function _objectSpread$4(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?ownKeys$4(Object(n),!0).forEach((function(t){_defineProperty$1(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):ownKeys$4(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function _createSuper$2(e){var t=_isNativeReflectConstruct$2();return function(){var n,r=_getPrototypeOf(e);if(t){var o=_getPrototypeOf(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return _possibleConstructorReturn(this,n)}}function _isNativeReflectConstruct$2(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}var checkedLoadedFor={},Translator=function(e){_inherits(n,e);var t=_createSuper$2(n);function n(e){var r,o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return _classCallCheck$1(this,n),r=t.call(this),isIE10&&EventEmitter.call(_assertThisInitialized(r)),copy(["resourceStore","languageUtils","pluralResolver","interpolator","backendConnector","i18nFormat","utils"],e,_assertThisInitialized(r)),r.options=o,void 0===r.options.keySeparator&&(r.options.keySeparator="."),r.logger=baseLogger.create("translator"),r}return _createClass$1(n,[{key:"changeLanguage",value:function(e){e&&(this.language=e)}},{key:"exists",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{interpolation:{}};if(null==e)return!1;var n=this.resolve(e,t);return n&&void 0!==n.res}},{key:"extractFromKey",value:function(e,t){var n=void 0!==t.nsSeparator?t.nsSeparator:this.options.nsSeparator;void 0===n&&(n=":");var r=void 0!==t.keySeparator?t.keySeparator:this.options.keySeparator,o=t.ns||this.options.defaultNS||[],a=n&&e.indexOf(n)>-1,i=!(this.options.userDefinedKeySeparator||t.keySeparator||this.options.userDefinedNsSeparator||t.nsSeparator||looksLikeObjectPath(e,n,r));if(a&&!i){var s=e.match(this.interpolator.nestingRegexp);if(s&&s.length>0)return{key:e,namespaces:o};var l=e.split(n);(n!==r||n===r&&this.options.ns.indexOf(l[0])>-1)&&(o=l.shift()),e=l.join(r)}return"string"==typeof o&&(o=[o]),{key:e,namespaces:o}}},{key:"translate",value:function(e,t,r){var o=this;if("object"!==_typeof$1(t)&&this.options.overloadTranslationOptionHandler&&(t=this.options.overloadTranslationOptionHandler(arguments)),"object"===_typeof$1(t)&&(t=_objectSpread$4({},t)),t||(t={}),null==e)return"";Array.isArray(e)||(e=[String(e)]);var a=void 0!==t.returnDetails?t.returnDetails:this.options.returnDetails,i=void 0!==t.keySeparator?t.keySeparator:this.options.keySeparator,s=this.extractFromKey(e[e.length-1],t),l=s.key,c=s.namespaces,u=c[c.length-1],d=t.lng||this.language,f=t.appendNamespaceToCIMode||this.options.appendNamespaceToCIMode;if(d&&"cimode"===d.toLowerCase()){if(f){var p=t.nsSeparator||this.options.nsSeparator;return a?{res:"".concat(u).concat(p).concat(l),usedKey:l,exactUsedKey:l,usedLng:d,usedNS:u}:"".concat(u).concat(p).concat(l)}return a?{res:l,usedKey:l,exactUsedKey:l,usedLng:d,usedNS:u}:l}var _=this.resolve(e,t),m=_&&_.res,g=_&&_.usedKey||l,h=_&&_.exactUsedKey||l,v=Object.prototype.toString.apply(m),y=void 0!==t.joinArrays?t.joinArrays:this.options.joinArrays,b=!this.i18nFormat||this.i18nFormat.handleAsObject;if(b&&m&&("string"!=typeof m&&"boolean"!=typeof m&&"number"!=typeof m)&&["[object Number]","[object Function]","[object RegExp]"].indexOf(v)<0&&("string"!=typeof y||"[object Array]"!==v)){if(!t.returnObjects&&!this.options.returnObjects){this.options.returnedObjectHandler||this.logger.warn("accessing an object - but returnObjects options is not enabled!");var w=this.options.returnedObjectHandler?this.options.returnedObjectHandler(g,m,_objectSpread$4(_objectSpread$4({},t),{},{ns:c})):"key '".concat(l," (").concat(this.language,")' returned an object instead of string.");return a?(_.res=w,_):w}if(i){var S="[object Array]"===v,$=S?[]:{},x=S?h:g;for(var F in m)if(Object.prototype.hasOwnProperty.call(m,F)){var k="".concat(x).concat(i).concat(F);$[F]=this.translate(k,_objectSpread$4(_objectSpread$4({},t),{joinArrays:!1,ns:c})),$[F]===k&&($[F]=m[F])}m=$}}else if(b&&"string"==typeof y&&"[object Array]"===v)(m=m.join(y))&&(m=this.extendTranslation(m,e,t,r));else{var O=!1,C=!1,R=void 0!==t.count&&"string"!=typeof t.count,j=n.hasDefaultValue(t),N=R?this.pluralResolver.getSuffix(d,t.count,t):"",I=t["defaultValue".concat(N)]||t.defaultValue;!this.isValidLookup(m)&&j&&(O=!0,m=I),this.isValidLookup(m)||(C=!0,m=l);var D=(t.missingKeyNoValueFallbackToKey||this.options.missingKeyNoValueFallbackToKey)&&C?void 0:m,E=j&&I!==m&&this.options.updateMissing;if(C||O||E){if(this.logger.log(E?"updateKey":"missingKey",d,u,l,E?I:m),i){var A=this.resolve(l,_objectSpread$4(_objectSpread$4({},t),{},{keySeparator:!1}));A&&A.res&&this.logger.warn("Seems the loaded translations were in flat JSON format instead of nested. Either set keySeparator: false on init or make sure your translations are published in nested format.")}var T=[],L=this.languageUtils.getFallbackCodes(this.options.fallbackLng,t.lng||this.language);if("fallback"===this.options.saveMissingTo&&L&&L[0])for(var P=0;P<L.length;P++)T.push(L[P]);else"all"===this.options.saveMissingTo?T=this.languageUtils.toResolveHierarchy(t.lng||this.language):T.push(t.lng||this.language);var V=function(e,n,r){var a=j&&r!==m?r:D;o.options.missingKeyHandler?o.options.missingKeyHandler(e,u,n,a,E,t):o.backendConnector&&o.backendConnector.saveMissing&&o.backendConnector.saveMissing(e,u,n,a,E,t),o.emit("missingKey",e,u,n,m)};this.options.saveMissing&&(this.options.saveMissingPlurals&&R?T.forEach((function(e){o.pluralResolver.getSuffixes(e,t).forEach((function(n){V([e],l+n,t["defaultValue".concat(n)]||I)}))})):V(T,l,I))}m=this.extendTranslation(m,e,t,_,r),C&&m===l&&this.options.appendNamespaceToMissingKey&&(m="".concat(u,":").concat(l)),(C||O)&&this.options.parseMissingKeyHandler&&(m="v1"!==this.options.compatibilityAPI?this.options.parseMissingKeyHandler(this.options.appendNamespaceToMissingKey?"".concat(u,":").concat(l):l,O?m:void 0):this.options.parseMissingKeyHandler(m))}return a?(_.res=m,_):m}},{key:"extendTranslation",value:function(e,t,n,r,o){var a=this;if(this.i18nFormat&&this.i18nFormat.parse)e=this.i18nFormat.parse(e,_objectSpread$4(_objectSpread$4({},this.options.interpolation.defaultVariables),n),r.usedLng,r.usedNS,r.usedKey,{resolved:r});else if(!n.skipInterpolation){n.interpolation&&this.interpolator.init(_objectSpread$4(_objectSpread$4({},n),{interpolation:_objectSpread$4(_objectSpread$4({},this.options.interpolation),n.interpolation)}));var i,s="string"==typeof e&&(n&&n.interpolation&&void 0!==n.interpolation.skipOnVariables?n.interpolation.skipOnVariables:this.options.interpolation.skipOnVariables);if(s){var l=e.match(this.interpolator.nestingRegexp);i=l&&l.length}var c=n.replace&&"string"!=typeof n.replace?n.replace:n;if(this.options.interpolation.defaultVariables&&(c=_objectSpread$4(_objectSpread$4({},this.options.interpolation.defaultVariables),c)),e=this.interpolator.interpolate(e,c,n.lng||this.language,n),s){var u=e.match(this.interpolator.nestingRegexp);i<(u&&u.length)&&(n.nest=!1)}!n.lng&&"v1"!==this.options.compatibilityAPI&&r&&r.res&&(n.lng=r.usedLng),!1!==n.nest&&(e=this.interpolator.nest(e,(function(){for(var e=arguments.length,r=new Array(e),i=0;i<e;i++)r[i]=arguments[i];return o&&o[0]===r[0]&&!n.context?(a.logger.warn("It seems you are nesting recursively key: ".concat(r[0]," in key: ").concat(t[0])),null):a.translate.apply(a,r.concat([t]))}),n)),n.interpolation&&this.interpolator.reset()}var d=n.postProcess||this.options.postProcess,f="string"==typeof d?[d]:d;return null!=e&&f&&f.length&&!1!==n.applyPostProcessor&&(e=postProcessor.handle(f,e,t,this.options&&this.options.postProcessPassResolved?_objectSpread$4({i18nResolved:r},n):n,this)),e}},{key:"resolve",value:function(e){var t,n,r,o,a,i=this,s=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return"string"==typeof e&&(e=[e]),e.forEach((function(e){if(!i.isValidLookup(t)){var l=i.extractFromKey(e,s),c=l.key;n=c;var u=l.namespaces;i.options.fallbackNS&&(u=u.concat(i.options.fallbackNS));var d=void 0!==s.count&&"string"!=typeof s.count,f=d&&!s.ordinal&&0===s.count&&i.pluralResolver.shouldUseIntlApi(),p=void 0!==s.context&&("string"==typeof s.context||"number"==typeof s.context)&&""!==s.context,_=s.lngs?s.lngs:i.languageUtils.toResolveHierarchy(s.lng||i.language,s.fallbackLng);u.forEach((function(e){i.isValidLookup(t)||(a=e,!checkedLoadedFor["".concat(_[0],"-").concat(e)]&&i.utils&&i.utils.hasLoadedNamespace&&!i.utils.hasLoadedNamespace(a)&&(checkedLoadedFor["".concat(_[0],"-").concat(e)]=!0,i.logger.warn('key "'.concat(n,'" for languages "').concat(_.join(", "),'" won\'t get resolved as namespace "').concat(a,'" was not yet loaded'),"This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!")),_.forEach((function(n){if(!i.isValidLookup(t)){o=n;var a,l=[c];if(i.i18nFormat&&i.i18nFormat.addLookupKeys)i.i18nFormat.addLookupKeys(l,c,n,e,s);else{var u;d&&(u=i.pluralResolver.getSuffix(n,s.count,s));var _="".concat(i.options.pluralSeparator,"zero");if(d&&(l.push(c+u),f&&l.push(c+_)),p){var m="".concat(c).concat(i.options.contextSeparator).concat(s.context);l.push(m),d&&(l.push(m+u),f&&l.push(m+_))}}for(;a=l.pop();)i.isValidLookup(t)||(r=a,t=i.getResource(n,e,a,s))}})))}))}})),{res:t,usedKey:n,exactUsedKey:r,usedLng:o,usedNS:a}}},{key:"isValidLookup",value:function(e){return!(void 0===e||!this.options.returnNull&&null===e||!this.options.returnEmptyString&&""===e)}},{key:"getResource",value:function(e,t,n){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return this.i18nFormat&&this.i18nFormat.getResource?this.i18nFormat.getResource(e,t,n,r):this.resourceStore.getResource(e,t,n,r)}}],[{key:"hasDefaultValue",value:function(e){var t="defaultValue";for(var n in e)if(Object.prototype.hasOwnProperty.call(e,n)&&t===n.substring(0,12)&&void 0!==e[n])return!0;return!1}}]),n}(EventEmitter);function capitalize(e){return e.charAt(0).toUpperCase()+e.slice(1)}var LanguageUtil=function(){function e(t){_classCallCheck$1(this,e),this.options=t,this.supportedLngs=this.options.supportedLngs||!1,this.logger=baseLogger.create("languageUtils")}return _createClass$1(e,[{key:"getScriptPartFromCode",value:function(e){if(!e||e.indexOf("-")<0)return null;var t=e.split("-");return 2===t.length?null:(t.pop(),"x"===t[t.length-1].toLowerCase()?null:this.formatLanguageCode(t.join("-")))}},{key:"getLanguagePartFromCode",value:function(e){if(!e||e.indexOf("-")<0)return e;var t=e.split("-");return this.formatLanguageCode(t[0])}},{key:"formatLanguageCode",value:function(e){if("string"==typeof e&&e.indexOf("-")>-1){var t=["hans","hant","latn","cyrl","cans","mong","arab"],n=e.split("-");return this.options.lowerCaseLng?n=n.map((function(e){return e.toLowerCase()})):2===n.length?(n[0]=n[0].toLowerCase(),n[1]=n[1].toUpperCase(),t.indexOf(n[1].toLowerCase())>-1&&(n[1]=capitalize(n[1].toLowerCase()))):3===n.length&&(n[0]=n[0].toLowerCase(),2===n[1].length&&(n[1]=n[1].toUpperCase()),"sgn"!==n[0]&&2===n[2].length&&(n[2]=n[2].toUpperCase()),t.indexOf(n[1].toLowerCase())>-1&&(n[1]=capitalize(n[1].toLowerCase())),t.indexOf(n[2].toLowerCase())>-1&&(n[2]=capitalize(n[2].toLowerCase()))),n.join("-")}return this.options.cleanCode||this.options.lowerCaseLng?e.toLowerCase():e}},{key:"isSupportedCode",value:function(e){return("languageOnly"===this.options.load||this.options.nonExplicitSupportedLngs)&&(e=this.getLanguagePartFromCode(e)),!this.supportedLngs||!this.supportedLngs.length||this.supportedLngs.indexOf(e)>-1}},{key:"getBestMatchFromCodes",value:function(e){var t,n=this;return e?(e.forEach((function(e){if(!t){var r=n.formatLanguageCode(e);n.options.supportedLngs&&!n.isSupportedCode(r)||(t=r)}})),!t&&this.options.supportedLngs&&e.forEach((function(e){if(!t){var r=n.getLanguagePartFromCode(e);if(n.isSupportedCode(r))return t=r;t=n.options.supportedLngs.find((function(e){return e===r?e:e.indexOf("-")<0&&r.indexOf("-")<0?void 0:0===e.indexOf(r)?e:void 0}))}})),t||(t=this.getFallbackCodes(this.options.fallbackLng)[0]),t):null}},{key:"getFallbackCodes",value:function(e,t){if(!e)return[];if("function"==typeof e&&(e=e(t)),"string"==typeof e&&(e=[e]),"[object Array]"===Object.prototype.toString.apply(e))return e;if(!t)return e.default||[];var n=e[t];return n||(n=e[this.getScriptPartFromCode(t)]),n||(n=e[this.formatLanguageCode(t)]),n||(n=e[this.getLanguagePartFromCode(t)]),n||(n=e.default),n||[]}},{key:"toResolveHierarchy",value:function(e,t){var n=this,r=this.getFallbackCodes(t||this.options.fallbackLng||[],e),o=[],a=function(e){e&&(n.isSupportedCode(e)?o.push(e):n.logger.warn("rejecting language code not found in supportedLngs: ".concat(e)))};return"string"==typeof e&&e.indexOf("-")>-1?("languageOnly"!==this.options.load&&a(this.formatLanguageCode(e)),"languageOnly"!==this.options.load&&"currentOnly"!==this.options.load&&a(this.getScriptPartFromCode(e)),"currentOnly"!==this.options.load&&a(this.getLanguagePartFromCode(e))):"string"==typeof e&&a(this.formatLanguageCode(e)),r.forEach((function(e){o.indexOf(e)<0&&a(n.formatLanguageCode(e))})),o}}]),e}(),sets=[{lngs:["ach","ak","am","arn","br","fil","gun","ln","mfe","mg","mi","oc","pt","pt-BR","tg","tl","ti","tr","uz","wa"],nr:[1,2],fc:1},{lngs:["af","an","ast","az","bg","bn","ca","da","de","dev","el","en","eo","es","et","eu","fi","fo","fur","fy","gl","gu","ha","hi","hu","hy","ia","it","kk","kn","ku","lb","mai","ml","mn","mr","nah","nap","nb","ne","nl","nn","no","nso","pa","pap","pms","ps","pt-PT","rm","sco","se","si","so","son","sq","sv","sw","ta","te","tk","ur","yo"],nr:[1,2],fc:2},{lngs:["ay","bo","cgg","fa","ht","id","ja","jbo","ka","km","ko","ky","lo","ms","sah","su","th","tt","ug","vi","wo","zh"],nr:[1],fc:3},{lngs:["be","bs","cnr","dz","hr","ru","sr","uk"],nr:[1,2,5],fc:4},{lngs:["ar"],nr:[0,1,2,3,11,100],fc:5},{lngs:["cs","sk"],nr:[1,2,5],fc:6},{lngs:["csb","pl"],nr:[1,2,5],fc:7},{lngs:["cy"],nr:[1,2,3,8],fc:8},{lngs:["fr"],nr:[1,2],fc:9},{lngs:["ga"],nr:[1,2,3,7,11],fc:10},{lngs:["gd"],nr:[1,2,3,20],fc:11},{lngs:["is"],nr:[1,2],fc:12},{lngs:["jv"],nr:[0,1],fc:13},{lngs:["kw"],nr:[1,2,3,4],fc:14},{lngs:["lt"],nr:[1,2,10],fc:15},{lngs:["lv"],nr:[1,2,0],fc:16},{lngs:["mk"],nr:[1,2],fc:17},{lngs:["mnk"],nr:[0,1,2],fc:18},{lngs:["mt"],nr:[1,2,11,20],fc:19},{lngs:["or"],nr:[2,1],fc:2},{lngs:["ro"],nr:[1,2,20],fc:20},{lngs:["sl"],nr:[5,1,2,3],fc:21},{lngs:["he","iw"],nr:[1,2,20,21],fc:22}],_rulesPluralsTypes={1:function(e){return Number(e>1)},2:function(e){return Number(1!=e)},3:function(e){return 0},4:function(e){return Number(e%10==1&&e%100!=11?0:e%10>=2&&e%10<=4&&(e%100<10||e%100>=20)?1:2)},5:function(e){return Number(0==e?0:1==e?1:2==e?2:e%100>=3&&e%100<=10?3:e%100>=11?4:5)},6:function(e){return Number(1==e?0:e>=2&&e<=4?1:2)},7:function(e){return Number(1==e?0:e%10>=2&&e%10<=4&&(e%100<10||e%100>=20)?1:2)},8:function(e){return Number(1==e?0:2==e?1:8!=e&&11!=e?2:3)},9:function(e){return Number(e>=2)},10:function(e){return Number(1==e?0:2==e?1:e<7?2:e<11?3:4)},11:function(e){return Number(1==e||11==e?0:2==e||12==e?1:e>2&&e<20?2:3)},12:function(e){return Number(e%10!=1||e%100==11)},13:function(e){return Number(0!==e)},14:function(e){return Number(1==e?0:2==e?1:3==e?2:3)},15:function(e){return Number(e%10==1&&e%100!=11?0:e%10>=2&&(e%100<10||e%100>=20)?1:2)},16:function(e){return Number(e%10==1&&e%100!=11?0:0!==e?1:2)},17:function(e){return Number(1==e||e%10==1&&e%100!=11?0:1)},18:function(e){return Number(0==e?0:1==e?1:2)},19:function(e){return Number(1==e?0:0==e||e%100>1&&e%100<11?1:e%100>10&&e%100<20?2:3)},20:function(e){return Number(1==e?0:0==e||e%100>0&&e%100<20?1:2)},21:function(e){return Number(e%100==1?1:e%100==2?2:e%100==3||e%100==4?3:0)},22:function(e){return Number(1==e?0:2==e?1:(e<0||e>10)&&e%10==0?2:3)}},deprecatedJsonVersions=["v1","v2","v3"],suffixesOrder={zero:0,one:1,two:2,few:3,many:4,other:5};function createRules(){var e={};return sets.forEach((function(t){t.lngs.forEach((function(n){e[n]={numbers:t.nr,plurals:_rulesPluralsTypes[t.fc]}}))})),e}var PluralResolver=function(){function e(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};_classCallCheck$1(this,e),this.languageUtils=t,this.options=n,this.logger=baseLogger.create("pluralResolver"),this.options.compatibilityJSON&&"v4"!==this.options.compatibilityJSON||"undefined"!=typeof Intl&&Intl.PluralRules||(this.options.compatibilityJSON="v3",this.logger.error("Your environment seems not to be Intl API compatible, use an Intl.PluralRules polyfill. Will fallback to the compatibilityJSON v3 format handling.")),this.rules=createRules()}return _createClass$1(e,[{key:"addRule",value:function(e,t){this.rules[e]=t}},{key:"getRule",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(this.shouldUseIntlApi())try{return new Intl.PluralRules(e,{type:t.ordinal?"ordinal":"cardinal"})}catch(e){return}return this.rules[e]||this.rules[this.languageUtils.getLanguagePartFromCode(e)]}},{key:"needsPlural",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=this.getRule(e,t);return this.shouldUseIntlApi()?n&&n.resolvedOptions().pluralCategories.length>1:n&&n.numbers.length>1}},{key:"getPluralFormsOfKey",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return this.getSuffixes(e,n).map((function(e){return"".concat(t).concat(e)}))}},{key:"getSuffixes",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=this.getRule(e,n);return r?this.shouldUseIntlApi()?r.resolvedOptions().pluralCategories.sort((function(e,t){return suffixesOrder[e]-suffixesOrder[t]})).map((function(e){return"".concat(t.options.prepend).concat(e)})):r.numbers.map((function(r){return t.getSuffix(e,r,n)})):[]}},{key:"getSuffix",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},r=this.getRule(e,n);return r?this.shouldUseIntlApi()?"".concat(this.options.prepend).concat(r.select(t)):this.getSuffixRetroCompatible(r,t):(this.logger.warn("no plural rule found for: ".concat(e)),"")}},{key:"getSuffixRetroCompatible",value:function(e,t){var n=this,r=e.noAbs?e.plurals(t):e.plurals(Math.abs(t)),o=e.numbers[r];this.options.simplifyPluralSuffix&&2===e.numbers.length&&1===e.numbers[0]&&(2===o?o="plural":1===o&&(o=""));var a=function(){return n.options.prepend&&o.toString()?n.options.prepend+o.toString():o.toString()};return"v1"===this.options.compatibilityJSON?1===o?"":"number"==typeof o?"_plural_".concat(o.toString()):a():"v2"===this.options.compatibilityJSON||this.options.simplifyPluralSuffix&&2===e.numbers.length&&1===e.numbers[0]?a():this.options.prepend&&r.toString()?this.options.prepend+r.toString():r.toString()}},{key:"shouldUseIntlApi",value:function(){return!deprecatedJsonVersions.includes(this.options.compatibilityJSON)}}]),e}();function ownKeys$3(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function _objectSpread$3(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?ownKeys$3(Object(n),!0).forEach((function(t){_defineProperty$1(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):ownKeys$3(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function deepFindWithDefaults(e,t,n){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:".",o=!(arguments.length>4&&void 0!==arguments[4])||arguments[4],a=getPathWithDefaults(e,t,n);return!a&&o&&"string"==typeof n&&void 0===(a=deepFind(e,n,r))&&(a=deepFind(t,n,r)),a}var Interpolator=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};_classCallCheck$1(this,e),this.logger=baseLogger.create("interpolator"),this.options=t,this.format=t.interpolation&&t.interpolation.format||function(e){return e},this.init(t)}return _createClass$1(e,[{key:"init",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};e.interpolation||(e.interpolation={escapeValue:!0});var t=e.interpolation;this.escape=void 0!==t.escape?t.escape:escape,this.escapeValue=void 0===t.escapeValue||t.escapeValue,this.useRawValueToEscape=void 0!==t.useRawValueToEscape&&t.useRawValueToEscape,this.prefix=t.prefix?regexEscape(t.prefix):t.prefixEscaped||"{{",this.suffix=t.suffix?regexEscape(t.suffix):t.suffixEscaped||"}}",this.formatSeparator=t.formatSeparator?t.formatSeparator:t.formatSeparator||",",this.unescapePrefix=t.unescapeSuffix?"":t.unescapePrefix||"-",this.unescapeSuffix=this.unescapePrefix?"":t.unescapeSuffix||"",this.nestingPrefix=t.nestingPrefix?regexEscape(t.nestingPrefix):t.nestingPrefixEscaped||regexEscape("$t("),this.nestingSuffix=t.nestingSuffix?regexEscape(t.nestingSuffix):t.nestingSuffixEscaped||regexEscape(")"),this.nestingOptionsSeparator=t.nestingOptionsSeparator?t.nestingOptionsSeparator:t.nestingOptionsSeparator||",",this.maxReplaces=t.maxReplaces?t.maxReplaces:1e3,this.alwaysFormat=void 0!==t.alwaysFormat&&t.alwaysFormat,this.resetRegExp()}},{key:"reset",value:function(){this.options&&this.init(this.options)}},{key:"resetRegExp",value:function(){var e="".concat(this.prefix,"(.+?)").concat(this.suffix);this.regexp=new RegExp(e,"g");var t="".concat(this.prefix).concat(this.unescapePrefix,"(.+?)").concat(this.unescapeSuffix).concat(this.suffix);this.regexpUnescape=new RegExp(t,"g");var n="".concat(this.nestingPrefix,"(.+?)").concat(this.nestingSuffix);this.nestingRegexp=new RegExp(n,"g")}},{key:"interpolate",value:function(e,t,n,r){var o,a,i,s=this,l=this.options&&this.options.interpolation&&this.options.interpolation.defaultVariables||{};function c(e){return e.replace(/\$/g,"$$$$")}var u=function(e){if(e.indexOf(s.formatSeparator)<0){var o=deepFindWithDefaults(t,l,e,s.options.keySeparator,s.options.ignoreJSONStructure);return s.alwaysFormat?s.format(o,void 0,n,_objectSpread$3(_objectSpread$3(_objectSpread$3({},r),t),{},{interpolationkey:e})):o}var a=e.split(s.formatSeparator),i=a.shift().trim(),c=a.join(s.formatSeparator).trim();return s.format(deepFindWithDefaults(t,l,i,s.options.keySeparator,s.options.ignoreJSONStructure),c,n,_objectSpread$3(_objectSpread$3(_objectSpread$3({},r),t),{},{interpolationkey:i}))};this.resetRegExp();var d=r&&r.missingInterpolationHandler||this.options.missingInterpolationHandler,f=r&&r.interpolation&&void 0!==r.interpolation.skipOnVariables?r.interpolation.skipOnVariables:this.options.interpolation.skipOnVariables;return[{regex:this.regexpUnescape,safeValue:function(e){return c(e)}},{regex:this.regexp,safeValue:function(e){return s.escapeValue?c(s.escape(e)):c(e)}}].forEach((function(t){for(i=0;o=t.regex.exec(e);){var n=o[1].trim();if(void 0===(a=u(n)))if("function"==typeof d){var l=d(e,o,r);a="string"==typeof l?l:""}else if(r&&Object.prototype.hasOwnProperty.call(r,n))a="";else{if(f){a=o[0];continue}s.logger.warn("missed to pass in variable ".concat(n," for interpolating ").concat(e)),a=""}else"string"==typeof a||s.useRawValueToEscape||(a=makeString(a));var c=t.safeValue(a);if(e=e.replace(o[0],c),f?(t.regex.lastIndex+=a.length,t.regex.lastIndex-=o[0].length):t.regex.lastIndex=0,++i>=s.maxReplaces)break}})),e}},{key:"nest",value:function(e,t){var n,r,o,a=this,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};function s(e,t){var n=this.nestingOptionsSeparator;if(e.indexOf(n)<0)return e;var r=e.split(new RegExp("".concat(n,"[ ]*{"))),a="{".concat(r[1]);e=r[0];var i=(a=this.interpolate(a,o)).match(/'/g),s=a.match(/"/g);(i&&i.length%2==0&&!s||s.length%2!=0)&&(a=a.replace(/'/g,'"'));try{o=JSON.parse(a),t&&(o=_objectSpread$3(_objectSpread$3({},t),o))}catch(t){return this.logger.warn("failed parsing options string in nesting for key ".concat(e),t),"".concat(e).concat(n).concat(a)}return delete o.defaultValue,e}for(;n=this.nestingRegexp.exec(e);){var l=[];(o=(o=_objectSpread$3({},i)).replace&&"string"!=typeof o.replace?o.replace:o).applyPostProcessor=!1,delete o.defaultValue;var c=!1;if(-1!==n[0].indexOf(this.formatSeparator)&&!/{.*}/.test(n[1])){var u=n[1].split(this.formatSeparator).map((function(e){return e.trim()}));n[1]=u.shift(),l=u,c=!0}if((r=t(s.call(this,n[1].trim(),o),o))&&n[0]===e&&"string"!=typeof r)return r;"string"!=typeof r&&(r=makeString(r)),r||(this.logger.warn("missed to resolve ".concat(n[1]," for nesting ").concat(e)),r=""),c&&(r=l.reduce((function(e,t){return a.format(e,t,i.lng,_objectSpread$3(_objectSpread$3({},i),{},{interpolationkey:n[1].trim()}))}),r.trim())),e=e.replace(n[0],r),this.regexp.lastIndex=0}return e}}]),e}();function ownKeys$2(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function _objectSpread$2(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?ownKeys$2(Object(n),!0).forEach((function(t){_defineProperty$1(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):ownKeys$2(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function parseFormatStr(e){var t=e.toLowerCase().trim(),n={};if(e.indexOf("(")>-1){var r=e.split("(");t=r[0].toLowerCase().trim();var o=r[1].substring(0,r[1].length-1);if("currency"===t&&o.indexOf(":")<0)n.currency||(n.currency=o.trim());else if("relativetime"===t&&o.indexOf(":")<0)n.range||(n.range=o.trim());else{o.split(";").forEach((function(e){if(e){var t=_toArray(e.split(":")),r=t[0],o=t.slice(1).join(":").trim().replace(/^'+|'+$/g,"");n[r.trim()]||(n[r.trim()]=o),"false"===o&&(n[r.trim()]=!1),"true"===o&&(n[r.trim()]=!0),isNaN(o)||(n[r.trim()]=parseInt(o,10))}}))}}return{formatName:t,formatOptions:n}}function createCachedFormatter(e){var t={};return function(n,r,o){var a=r+JSON.stringify(o),i=t[a];return i||(i=e(r,o),t[a]=i),i(n)}}var Formatter=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};_classCallCheck$1(this,e),this.logger=baseLogger.create("formatter"),this.options=t,this.formats={number:createCachedFormatter((function(e,t){var n=new Intl.NumberFormat(e,_objectSpread$2({},t));return function(e){return n.format(e)}})),currency:createCachedFormatter((function(e,t){var n=new Intl.NumberFormat(e,_objectSpread$2(_objectSpread$2({},t),{},{style:"currency"}));return function(e){return n.format(e)}})),datetime:createCachedFormatter((function(e,t){var n=new Intl.DateTimeFormat(e,_objectSpread$2({},t));return function(e){return n.format(e)}})),relativetime:createCachedFormatter((function(e,t){var n=new Intl.RelativeTimeFormat(e,_objectSpread$2({},t));return function(e){return n.format(e,t.range||"day")}})),list:createCachedFormatter((function(e,t){var n=new Intl.ListFormat(e,_objectSpread$2({},t));return function(e){return n.format(e)}}))},this.init(t)}return _createClass$1(e,[{key:"init",value:function(e){var t=(arguments.length>1&&void 0!==arguments[1]?arguments[1]:{interpolation:{}}).interpolation;this.formatSeparator=t.formatSeparator?t.formatSeparator:t.formatSeparator||","}},{key:"add",value:function(e,t){this.formats[e.toLowerCase().trim()]=t}},{key:"addCached",value:function(e,t){this.formats[e.toLowerCase().trim()]=createCachedFormatter(t)}},{key:"format",value:function(e,t,n){var r=this,o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return t.split(this.formatSeparator).reduce((function(e,t){var a=parseFormatStr(t),i=a.formatName,s=a.formatOptions;if(r.formats[i]){var l=e;try{var c=o&&o.formatParams&&o.formatParams[o.interpolationkey]||{},u=c.locale||c.lng||o.locale||o.lng||n;l=r.formats[i](e,u,_objectSpread$2(_objectSpread$2(_objectSpread$2({},s),o),c))}catch(e){r.logger.warn(e)}return l}return r.logger.warn("there was no format function for ".concat(i)),e}),e)}}]),e}();function ownKeys$1(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function _objectSpread$1(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?ownKeys$1(Object(n),!0).forEach((function(t){_defineProperty$1(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):ownKeys$1(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function _createSuper$1(e){var t=_isNativeReflectConstruct$1();return function(){var n,r=_getPrototypeOf(e);if(t){var o=_getPrototypeOf(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return _possibleConstructorReturn(this,n)}}function _isNativeReflectConstruct$1(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}function removePending(e,t){void 0!==e.pending[t]&&(delete e.pending[t],e.pendingCount--)}var Connector=function(e){_inherits(n,e);var t=_createSuper$1(n);function n(e,r,o){var a,i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return _classCallCheck$1(this,n),a=t.call(this),isIE10&&EventEmitter.call(_assertThisInitialized(a)),a.backend=e,a.store=r,a.services=o,a.languageUtils=o.languageUtils,a.options=i,a.logger=baseLogger.create("backendConnector"),a.waitingReads=[],a.maxParallelReads=i.maxParallelReads||10,a.readingCalls=0,a.maxRetries=i.maxRetries>=0?i.maxRetries:5,a.retryTimeout=i.retryTimeout>=1?i.retryTimeout:350,a.state={},a.queue=[],a.backend&&a.backend.init&&a.backend.init(o,i.backend,i),a}return _createClass$1(n,[{key:"queueLoad",value:function(e,t,n,r){var o=this,a={},i={},s={},l={};return e.forEach((function(e){var r=!0;t.forEach((function(t){var s="".concat(e,"|").concat(t);!n.reload&&o.store.hasResourceBundle(e,t)?o.state[s]=2:o.state[s]<0||(1===o.state[s]?void 0===i[s]&&(i[s]=!0):(o.state[s]=1,r=!1,void 0===i[s]&&(i[s]=!0),void 0===a[s]&&(a[s]=!0),void 0===l[t]&&(l[t]=!0)))})),r||(s[e]=!0)})),(Object.keys(a).length||Object.keys(i).length)&&this.queue.push({pending:i,pendingCount:Object.keys(i).length,loaded:{},errors:[],callback:r}),{toLoad:Object.keys(a),pending:Object.keys(i),toLoadLanguages:Object.keys(s),toLoadNamespaces:Object.keys(l)}}},{key:"loaded",value:function(e,t,n){var r=e.split("|"),o=r[0],a=r[1];t&&this.emit("failedLoading",o,a,t),n&&this.store.addResourceBundle(o,a,n),this.state[e]=t?-1:2;var i={};this.queue.forEach((function(n){pushPath(n.loaded,[o],a),removePending(n,e),t&&n.errors.push(t),0!==n.pendingCount||n.done||(Object.keys(n.loaded).forEach((function(e){i[e]||(i[e]={});var t=n.loaded[e];t.length&&t.forEach((function(t){void 0===i[e][t]&&(i[e][t]=!0)}))})),n.done=!0,n.errors.length?n.callback(n.errors):n.callback())})),this.emit("loaded",i),this.queue=this.queue.filter((function(e){return!e.done}))}},{key:"read",value:function(e,t,n){var r=this,o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:0,a=arguments.length>4&&void 0!==arguments[4]?arguments[4]:this.retryTimeout,i=arguments.length>5?arguments[5]:void 0;if(!e.length)return i(null,{});if(this.readingCalls>=this.maxParallelReads)this.waitingReads.push({lng:e,ns:t,fcName:n,tried:o,wait:a,callback:i});else{this.readingCalls++;var s=function(s,l){if(r.readingCalls--,r.waitingReads.length>0){var c=r.waitingReads.shift();r.read(c.lng,c.ns,c.fcName,c.tried,c.wait,c.callback)}s&&l&&o<r.maxRetries?setTimeout((function(){r.read.call(r,e,t,n,o+1,2*a,i)}),a):i(s,l)},l=this.backend[n].bind(this.backend);if(2!==l.length)return l(e,t,s);try{var c=l(e,t);c&&"function"==typeof c.then?c.then((function(e){return s(null,e)})).catch(s):s(null,c)}catch(e){s(e)}}}},{key:"prepareLoading",value:function(e,t){var n=this,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},o=arguments.length>3?arguments[3]:void 0;if(!this.backend)return this.logger.warn("No backend was added via i18next.use. Will not load resources."),o&&o();"string"==typeof e&&(e=this.languageUtils.toResolveHierarchy(e)),"string"==typeof t&&(t=[t]);var a=this.queueLoad(e,t,r,o);if(!a.toLoad.length)return a.pending.length||o(),null;a.toLoad.forEach((function(e){n.loadOne(e)}))}},{key:"load",value:function(e,t,n){this.prepareLoading(e,t,{},n)}},{key:"reload",value:function(e,t,n){this.prepareLoading(e,t,{reload:!0},n)}},{key:"loadOne",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",r=e.split("|"),o=r[0],a=r[1];this.read(o,a,"read",void 0,void 0,(function(r,i){r&&t.logger.warn("".concat(n,"loading namespace ").concat(a," for language ").concat(o," failed"),r),!r&&i&&t.logger.log("".concat(n,"loaded namespace ").concat(a," for language ").concat(o),i),t.loaded(e,r,i)}))}},{key:"saveMissing",value:function(e,t,n,r,o){var a=arguments.length>5&&void 0!==arguments[5]?arguments[5]:{},i=arguments.length>6&&void 0!==arguments[6]?arguments[6]:function(){};if(this.services.utils&&this.services.utils.hasLoadedNamespace&&!this.services.utils.hasLoadedNamespace(t))this.logger.warn('did not save key "'.concat(n,'" as the namespace "').concat(t,'" was not yet loaded'),"This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!");else if(null!=n&&""!==n){if(this.backend&&this.backend.create){var s=_objectSpread$1(_objectSpread$1({},a),{},{isUpdate:o}),l=this.backend.create.bind(this.backend);if(l.length<6)try{var c;(c=5===l.length?l(e,t,n,r,s):l(e,t,n,r))&&"function"==typeof c.then?c.then((function(e){return i(null,e)})).catch(i):i(null,c)}catch(e){i(e)}else l(e,t,n,r,i,s)}e&&e[0]&&this.store.addResource(e[0],t,n,r)}}}]),n}(EventEmitter);function get(){return{debug:!1,initImmediate:!0,ns:["translation"],defaultNS:["translation"],fallbackLng:["dev"],fallbackNS:!1,supportedLngs:!1,nonExplicitSupportedLngs:!1,load:"all",preload:!1,simplifyPluralSuffix:!0,keySeparator:".",nsSeparator:":",pluralSeparator:"_",contextSeparator:"_",partialBundledLanguages:!1,saveMissing:!1,updateMissing:!1,saveMissingTo:"fallback",saveMissingPlurals:!0,missingKeyHandler:!1,missingInterpolationHandler:!1,postProcess:!1,postProcessPassResolved:!1,returnNull:!0,returnEmptyString:!0,returnObjects:!1,joinArrays:!1,returnedObjectHandler:!1,parseMissingKeyHandler:!1,appendNamespaceToMissingKey:!1,appendNamespaceToCIMode:!1,overloadTranslationOptionHandler:function(e){var t={};if("object"===_typeof$1(e[1])&&(t=e[1]),"string"==typeof e[1]&&(t.defaultValue=e[1]),"string"==typeof e[2]&&(t.tDescription=e[2]),"object"===_typeof$1(e[2])||"object"===_typeof$1(e[3])){var n=e[3]||e[2];Object.keys(n).forEach((function(e){t[e]=n[e]}))}return t},interpolation:{escapeValue:!0,format:function(e,t,n,r){return e},prefix:"{{",suffix:"}}",formatSeparator:",",unescapePrefix:"-",nestingPrefix:"$t(",nestingSuffix:")",nestingOptionsSeparator:",",maxReplaces:1e3,skipOnVariables:!0}}}function transformOptions(e){return"string"==typeof e.ns&&(e.ns=[e.ns]),"string"==typeof e.fallbackLng&&(e.fallbackLng=[e.fallbackLng]),"string"==typeof e.fallbackNS&&(e.fallbackNS=[e.fallbackNS]),e.supportedLngs&&e.supportedLngs.indexOf("cimode")<0&&(e.supportedLngs=e.supportedLngs.concat(["cimode"])),e}function ownKeys$7(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function _objectSpread$7(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?ownKeys$7(Object(n),!0).forEach((function(t){_defineProperty$1(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):ownKeys$7(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function _createSuper(e){var t=_isNativeReflectConstruct();return function(){var n,r=_getPrototypeOf(e);if(t){var o=_getPrototypeOf(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return _possibleConstructorReturn(this,n)}}function _isNativeReflectConstruct(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}function noop$1(){}function bindMemberFunctions(e){Object.getOwnPropertyNames(Object.getPrototypeOf(e)).forEach((function(t){"function"==typeof e[t]&&(e[t]=e[t].bind(e))}))}var I18n=function(e){_inherits(n,e);var t=_createSuper(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},o=arguments.length>1?arguments[1]:void 0;if(_classCallCheck$1(this,n),e=t.call(this),isIE10&&EventEmitter.call(_assertThisInitialized(e)),e.options=transformOptions(r),e.services={},e.logger=baseLogger,e.modules={external:[]},bindMemberFunctions(_assertThisInitialized(e)),o&&!e.isInitialized&&!r.isClone){if(!e.options.initImmediate)return e.init(r,o),_possibleConstructorReturn(e,_assertThisInitialized(e));setTimeout((function(){e.init(r,o)}),0)}return e}return _createClass$1(n,[{key:"init",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=arguments.length>1?arguments[1]:void 0;"function"==typeof t&&(n=t,t={}),!t.defaultNS&&!1!==t.defaultNS&&t.ns&&("string"==typeof t.ns?t.defaultNS=t.ns:t.ns.indexOf("translation")<0&&(t.defaultNS=t.ns[0]));var r=get();function o(e){return e?"function"==typeof e?new e:e:null}if(this.options=_objectSpread$7(_objectSpread$7(_objectSpread$7({},r),this.options),transformOptions(t)),"v1"!==this.options.compatibilityAPI&&(this.options.interpolation=_objectSpread$7(_objectSpread$7({},r.interpolation),this.options.interpolation)),void 0!==t.keySeparator&&(this.options.userDefinedKeySeparator=t.keySeparator),void 0!==t.nsSeparator&&(this.options.userDefinedNsSeparator=t.nsSeparator),!this.options.isClone){var a;this.modules.logger?baseLogger.init(o(this.modules.logger),this.options):baseLogger.init(null,this.options),this.modules.formatter?a=this.modules.formatter:"undefined"!=typeof Intl&&(a=Formatter);var i=new LanguageUtil(this.options);this.store=new ResourceStore(this.options.resources,this.options);var s=this.services;s.logger=baseLogger,s.resourceStore=this.store,s.languageUtils=i,s.pluralResolver=new PluralResolver(i,{prepend:this.options.pluralSeparator,compatibilityJSON:this.options.compatibilityJSON,simplifyPluralSuffix:this.options.simplifyPluralSuffix}),!a||this.options.interpolation.format&&this.options.interpolation.format!==r.interpolation.format||(s.formatter=o(a),s.formatter.init(s,this.options),this.options.interpolation.format=s.formatter.format.bind(s.formatter)),s.interpolator=new Interpolator(this.options),s.utils={hasLoadedNamespace:this.hasLoadedNamespace.bind(this)},s.backendConnector=new Connector(o(this.modules.backend),s.resourceStore,s,this.options),s.backendConnector.on("*",(function(t){for(var n=arguments.length,r=new Array(n>1?n-1:0),o=1;o<n;o++)r[o-1]=arguments[o];e.emit.apply(e,[t].concat(r))})),this.modules.languageDetector&&(s.languageDetector=o(this.modules.languageDetector),s.languageDetector.init&&s.languageDetector.init(s,this.options.detection,this.options)),this.modules.i18nFormat&&(s.i18nFormat=o(this.modules.i18nFormat),s.i18nFormat.init&&s.i18nFormat.init(this)),this.translator=new Translator(this.services,this.options),this.translator.on("*",(function(t){for(var n=arguments.length,r=new Array(n>1?n-1:0),o=1;o<n;o++)r[o-1]=arguments[o];e.emit.apply(e,[t].concat(r))})),this.modules.external.forEach((function(t){t.init&&t.init(e)}))}if(this.format=this.options.interpolation.format,n||(n=noop$1),this.options.fallbackLng&&!this.services.languageDetector&&!this.options.lng){var l=this.services.languageUtils.getFallbackCodes(this.options.fallbackLng);l.length>0&&"dev"!==l[0]&&(this.options.lng=l[0])}this.services.languageDetector||this.options.lng||this.logger.warn("init: no languageDetector is used and no lng is defined");["getResource","hasResourceBundle","getResourceBundle","getDataByLanguage"].forEach((function(t){e[t]=function(){var n;return(n=e.store)[t].apply(n,arguments)}}));["addResource","addResources","addResourceBundle","removeResourceBundle"].forEach((function(t){e[t]=function(){var n;return(n=e.store)[t].apply(n,arguments),e}}));var c=defer(),u=function(){var t=function(t,r){e.isInitialized&&!e.initializedStoreOnce&&e.logger.warn("init: i18next is already initialized. You should call init just once!"),e.isInitialized=!0,e.options.isClone||e.logger.log("initialized",e.options),e.emit("initialized",e.options),c.resolve(r),n(t,r)};if(e.languages&&"v1"!==e.options.compatibilityAPI&&!e.isInitialized)return t(null,e.t.bind(e));e.changeLanguage(e.options.lng,t)};return this.options.resources||!this.options.initImmediate?u():setTimeout(u,0),c}},{key:"loadResources",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:noop$1,r="string"==typeof e?e:this.language;if("function"==typeof e&&(n=e),!this.options.resources||this.options.partialBundledLanguages){if(r&&"cimode"===r.toLowerCase())return n();var o=[],a=function(e){e&&t.services.languageUtils.toResolveHierarchy(e).forEach((function(e){o.indexOf(e)<0&&o.push(e)}))};if(r)a(r);else this.services.languageUtils.getFallbackCodes(this.options.fallbackLng).forEach((function(e){return a(e)}));this.options.preload&&this.options.preload.forEach((function(e){return a(e)})),this.services.backendConnector.load(o,this.options.ns,(function(e){e||t.resolvedLanguage||!t.language||t.setResolvedLanguage(t.language),n(e)}))}else n(null)}},{key:"reloadResources",value:function(e,t,n){var r=defer();return e||(e=this.languages),t||(t=this.options.ns),n||(n=noop$1),this.services.backendConnector.reload(e,t,(function(e){r.resolve(),n(e)})),r}},{key:"use",value:function(e){if(!e)throw new Error("You are passing an undefined module! Please check the object you are passing to i18next.use()");if(!e.type)throw new Error("You are passing a wrong module! Please check the object you are passing to i18next.use()");return"backend"===e.type&&(this.modules.backend=e),("logger"===e.type||e.log&&e.warn&&e.error)&&(this.modules.logger=e),"languageDetector"===e.type&&(this.modules.languageDetector=e),"i18nFormat"===e.type&&(this.modules.i18nFormat=e),"postProcessor"===e.type&&postProcessor.addPostProcessor(e),"formatter"===e.type&&(this.modules.formatter=e),"3rdParty"===e.type&&this.modules.external.push(e),this}},{key:"setResolvedLanguage",value:function(e){if(e&&this.languages&&!(["cimode","dev"].indexOf(e)>-1))for(var t=0;t<this.languages.length;t++){var n=this.languages[t];if(!(["cimode","dev"].indexOf(n)>-1)&&this.store.hasLanguageSomeTranslations(n)){this.resolvedLanguage=n;break}}}},{key:"changeLanguage",value:function(e,t){var n=this;this.isLanguageChangingTo=e;var r=defer();this.emit("languageChanging",e);var o=function(e){n.language=e,n.languages=n.services.languageUtils.toResolveHierarchy(e),n.resolvedLanguage=void 0,n.setResolvedLanguage(e)},a=function(a){e||a||!n.services.languageDetector||(a=[]);var i="string"==typeof a?a:n.services.languageUtils.getBestMatchFromCodes(a);i&&(n.language||o(i),n.translator.language||n.translator.changeLanguage(i),n.services.languageDetector&&n.services.languageDetector.cacheUserLanguage&&n.services.languageDetector.cacheUserLanguage(i)),n.loadResources(i,(function(e){!function(e,a){a?(o(a),n.translator.changeLanguage(a),n.isLanguageChangingTo=void 0,n.emit("languageChanged",a),n.logger.log("languageChanged",a)):n.isLanguageChangingTo=void 0,r.resolve((function(){return n.t.apply(n,arguments)})),t&&t(e,(function(){return n.t.apply(n,arguments)}))}(e,i)}))};return e||!this.services.languageDetector||this.services.languageDetector.async?!e&&this.services.languageDetector&&this.services.languageDetector.async?0===this.services.languageDetector.detect.length?this.services.languageDetector.detect().then(a):this.services.languageDetector.detect(a):a(e):a(this.services.languageDetector.detect()),r}},{key:"getFixedT",value:function(e,t,n){var r=this,o=function e(t,o){var a;if("object"!==_typeof$1(o)){for(var i=arguments.length,s=new Array(i>2?i-2:0),l=2;l<i;l++)s[l-2]=arguments[l];a=r.options.overloadTranslationOptionHandler([t,o].concat(s))}else a=_objectSpread$7({},o);a.lng=a.lng||e.lng,a.lngs=a.lngs||e.lngs,a.ns=a.ns||e.ns,a.keyPrefix=a.keyPrefix||n||e.keyPrefix;var c,u=r.options.keySeparator||".";return c=a.keyPrefix&&Array.isArray(t)?t.map((function(e){return"".concat(a.keyPrefix).concat(u).concat(e)})):a.keyPrefix?"".concat(a.keyPrefix).concat(u).concat(t):t,r.t(c,a)};return"string"==typeof e?o.lng=e:o.lngs=e,o.ns=t,o.keyPrefix=n,o}},{key:"t",value:function(){var e;return this.translator&&(e=this.translator).translate.apply(e,arguments)}},{key:"exists",value:function(){var e;return this.translator&&(e=this.translator).exists.apply(e,arguments)}},{key:"setDefaultNamespace",value:function(e){this.options.defaultNS=e}},{key:"hasLoadedNamespace",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(!this.isInitialized)return this.logger.warn("hasLoadedNamespace: i18next was not initialized",this.languages),!1;if(!this.languages||!this.languages.length)return this.logger.warn("hasLoadedNamespace: i18n.languages were undefined or empty",this.languages),!1;var r=n.lng||this.resolvedLanguage||this.languages[0],o=!!this.options&&this.options.fallbackLng,a=this.languages[this.languages.length-1];if("cimode"===r.toLowerCase())return!0;var i=function(e,n){var r=t.services.backendConnector.state["".concat(e,"|").concat(n)];return-1===r||2===r};if(n.precheck){var s=n.precheck(this,i);if(void 0!==s)return s}return!!this.hasResourceBundle(r,e)||(!(this.services.backendConnector.backend&&(!this.options.resources||this.options.partialBundledLanguages))||!(!i(r,e)||o&&!i(a,e)))}},{key:"loadNamespaces",value:function(e,t){var n=this,r=defer();return this.options.ns?("string"==typeof e&&(e=[e]),e.forEach((function(e){n.options.ns.indexOf(e)<0&&n.options.ns.push(e)})),this.loadResources((function(e){r.resolve(),t&&t(e)})),r):(t&&t(),Promise.resolve())}},{key:"loadLanguages",value:function(e,t){var n=defer();"string"==typeof e&&(e=[e]);var r=this.options.preload||[],o=e.filter((function(e){return r.indexOf(e)<0}));return o.length?(this.options.preload=r.concat(o),this.loadResources((function(e){n.resolve(),t&&t(e)})),n):(t&&t(),Promise.resolve())}},{key:"dir",value:function(e){if(e||(e=this.resolvedLanguage||(this.languages&&this.languages.length>0?this.languages[0]:this.language)),!e)return"rtl";var t=this.services&&this.services.languageUtils||new LanguageUtil(get());return["ar","shu","sqr","ssh","xaa","yhd","yud","aao","abh","abv","acm","acq","acw","acx","acy","adf","ads","aeb","aec","afb","ajp","apc","apd","arb","arq","ars","ary","arz","auz","avl","ayh","ayl","ayn","ayp","bbz","pga","he","iw","ps","pbt","pbu","pst","prp","prd","ug","ur","ydd","yds","yih","ji","yi","hbo","men","xmn","fa","jpr","peo","pes","prs","dv","sam","ckb"].indexOf(t.getLanguagePartFromCode(e))>-1||e.toLowerCase().indexOf("-arab")>1?"rtl":"ltr"}},{key:"cloneInstance",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:noop$1,o=_objectSpread$7(_objectSpread$7(_objectSpread$7({},this.options),t),{isClone:!0}),a=new n(o);void 0===t.debug&&void 0===t.prefix||(a.logger=a.logger.clone(t));return["store","services","language"].forEach((function(t){a[t]=e[t]})),a.services=_objectSpread$7({},this.services),a.services.utils={hasLoadedNamespace:a.hasLoadedNamespace.bind(a)},a.translator=new Translator(a.services,a.options),a.translator.on("*",(function(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];a.emit.apply(a,[e].concat(n))})),a.init(o,r),a.translator.options=a.options,a.translator.backendConnector.services.utils={hasLoadedNamespace:a.hasLoadedNamespace.bind(a)},a}},{key:"toJSON",value:function(){return{options:this.options,store:this.store,language:this.language,languages:this.languages,resolvedLanguage:this.resolvedLanguage}}}]),n}(EventEmitter);_defineProperty$1(I18n,"createInstance",(function(){return new I18n(arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},arguments.length>1?arguments[1]:void 0)}));var instance=I18n.createInstance();function _typeof(e){return _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},_typeof(e)}function _toPrimitive(e,t){if("object"!==_typeof(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,t||"default");if("object"!==_typeof(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}function _toPropertyKey(e){var t=_toPrimitive(e,"string");return"symbol"===_typeof(t)?t:String(t)}function _defineProperty(e,t,n){return(t=_toPropertyKey(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}instance.createInstance=I18n.createInstance,instance.createInstance,instance.dir,instance.init,instance.loadResources,instance.reloadResources,instance.use,instance.changeLanguage,instance.getFixedT,instance.t,instance.exists,instance.setDefaultNamespace,instance.hasLoadedNamespace,instance.loadNamespaces,instance.loadLanguages;var matchHtmlEntity=/&(?:amp|#38|lt|#60|gt|#62|apos|#39|quot|#34|nbsp|#160|copy|#169|reg|#174|hellip|#8230|#x2F|#47);/g,htmlEntities={"&amp;":"&","&#38;":"&","&lt;":"<","&#60;":"<","&gt;":">","&#62;":">","&apos;":"'","&#39;":"'","&quot;":'"',"&#34;":'"',"&nbsp;":" ","&#160;":" ","&copy;":"©","&#169;":"©","&reg;":"®","&#174;":"®","&hellip;":"…","&#8230;":"…","&#x2F;":"/","&#47;":"/"},unescapeHtmlEntity=function(e){return htmlEntities[e]},unescape=function(e){return e.replace(matchHtmlEntity,unescapeHtmlEntity)};function ownKeys(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function _objectSpread(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?ownKeys(Object(n),!0).forEach((function(t){_defineProperty(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):ownKeys(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}var defaultOptions$1={bindI18n:"languageChanged",bindI18nStore:"",transEmptyNodeValue:"",transSupportBasicHtmlNodes:!0,transWrapTextNodes:"",transKeepBasicHtmlNodesFor:["br","strong","i","p"],useSuspense:!0,unescape:unescape};function setDefaults(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};defaultOptions$1=_objectSpread(_objectSpread({},defaultOptions$1),e)}function _classCallCheck(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function _defineProperties(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,_toPropertyKey(r.key),r)}}function _createClass(e,t,n){return t&&_defineProperties(e.prototype,t),n&&_defineProperties(e,n),Object.defineProperty(e,"prototype",{writable:!1}),e}var initReactI18next={type:"3rdParty",init:function(e){setDefaults(e.options.react)}};React.createContext(),function(){function e(){_classCallCheck(this,e),this.usedNamespaces={}}_createClass(e,[{key:"addUsedNamespaces",value:function(e){var t=this;e.forEach((function(e){t.usedNamespaces[e]||(t.usedNamespaces[e]=!0)}))}},{key:"getUsedNamespaces",value:function(){return Object.keys(this.usedNamespaces)}}])}();var freeGlobal$1="object"==typeof commonjsGlobal&&commonjsGlobal&&commonjsGlobal.Object===Object&&commonjsGlobal,_freeGlobal=freeGlobal$1,freeGlobal=_freeGlobal,freeSelf="object"==typeof self&&self&&self.Object===Object&&self,root$1=freeGlobal||freeSelf||Function("return this")(),_root=root$1,root=_root,Symbol$3=root.Symbol,_Symbol=Symbol$3,Symbol$2=_Symbol;Symbol$2&&Symbol$2.toStringTag;var Symbol$1=_Symbol;Symbol$1&&Symbol$1.toStringTag;var funcProto=Function.prototype,funcToString=funcProto.toString;funcToString.call(Object);const getBuilderContext=()=>"undefined"==typeof window?{}:Builder.settings.context?Builder.settings.context:Builder.settings;async function fetchAPI(e,t={credentials:"include"}){const n={"Content-Type":"application/json"},r=getAuthorization();r&&(n.Authorization=r),t.headers=Object.assign({},n,t.headers),t.credentials="include";const o=await fetch(`${getRootUrl()}${e}`,t);if(401===o.status)throw new Error(401);const a=await o.json();if(a.errors)throw console.error(a.errors),new Error("Failed to fetch API");return a}function getAuthorization(){try{const e=getBuilderContext();let t=e.tenantId,n=e.authToken;return t&&n?`Bearer ${t},${n}`:null}catch(e){console.error(e)}}function getUserId(){try{let e=getBuilderContext().userId;return e||null}catch(e){console.error(e)}}function getRootUrl(e){const t=getBuilderContext();if(t.rootUrl)return t.rootUrl;const n="undefined"!=typeof window?window.localStorage.getItem("steedos:rootUrl"):"";return n||(e||"")}const Router={getTabDisplayAs(e,t){var n=new URLSearchParams(document.location.search);if(n.has("display"))return n.get("display");const r=`tab_${e}_display`,o=sessionStorage.getItem(r);let a="grid";return!0===t&&(a="split"),window.innerWidth<=768?"grid":o||a},setTabDisplayAs(e,t){const n=`tab_${e}_display`;sessionStorage.setItem(n,t)},getAppPath:({formFactor:e,appId:t})=>`/app/${t}`,getPagePath(){},getObjectListViewPath:({formFactor:e,appId:t,objectName:n,listViewName:r})=>`/app/${t}/${n}/grid/${r}`,getObjectDetailPath(e){const{formFactor:t,appId:n,objectName:r,recordId:o,listViewName:a,_templateType:i}=e;return"JavaScript"===i?`/app/${n}/${r}/view/${o}?side_object=<%=item.objectName%>&side_listview_id=<%=item.listName%>`:`/app/${n}/${r}/view/${o}?side_object=\${objectName}&side_listview_id=\${listName}`},getObjectRelatedViewPath:({formFactor:e,appId:t,masterObjectName:n,masterRecordId:r,objectName:o,foreignKey:a})=>`/app/${t}/${n}/${r}/${o}/grid?related_field_name=${a}`};function getImageFieldUrl(e,t){if(window.Meteor){if(1!=window.Meteor.isCordova){const t=e.indexOf("//"),n=e.indexOf("/",t+2);return e.substring(n)}if(t||e.startsWith("http"))return`${e}?token=${window.btoa(JSON.stringify({authToken:Builder.settings.context.authToken}))}`}return e}function toGrayscale(e,t,n){return.2126*e+.7152*t+.0722*n}function isLight(e,t,n){return toGrayscale(e,t,n)>200}function getContrastColor(e){var t="#"===e.charAt(0)?e.substring(1,7):e;return isLight(parseInt(t.substr(0,2),16),parseInt(t.substr(2,2),16),parseInt(t.substr(4,2),16))?"#000000":"#ffffff"}function getLookupListView(e){if(!e)return null;let t,n;return _.each(e.list_views,((e,r)=>{"all"===r?(t=e,t.name||(t.name=r)):"lookup"===r&&(n=e,n.name||(n.name=r))})),n||t}function getComparableAmisVersion(){let e=window.amisRequire&&window.amisRequire("amis")||window.Amis,t=e&&e.version;if(t){let e=t.split(".");return parseFloat(e[0].toString()+"."+e[1].toString())}}function getBowserType(){const e=navigator.userAgent;return-1!==e.indexOf("Chrome")&&-1!==e.indexOf("Safari")&&-1===e.indexOf("Edg")?"Chrome":-1!==e.indexOf("Firefox")?"Firefox":-1!==e.indexOf("Safari")&&-1===e.indexOf("Chrome")&&-1===e.indexOf("Edge")?"Safari":-1!==e.indexOf("Edg")?"Edge":"Unknown browser"}function getNumberTpl(e){return`<span>\${_display.${e.name}}</span>`}function getTimeTpl(e){return`<span>\${_display.${e.name}}</span>`}function getDateTpl(e){return`<span>\${_display.${e.name}}</span>`}function getDateTimeTpl(e){return`<span>\${_display.${e.name}}</span>`}function getUiFieldTpl(e){return`<span>\${_display.${e.name}}</span>`}function getUiFileSizeTpl(e){return`<span>\${_display.${e.name}}</span>`}async function getRefObjectNameFieldName(e){return(await getUISchema(e.reference_to)).NAME_FIELD_KEY||"name"}function getSelectTpl(e){return`<span>\${_display.${e.name}}</span>`}function getSelectMap(e){let t={};return lodash.exports.forEach(e,(e=>{const n=e.value+"",r=e.color+"";if(r&&"undefined"!=r){const o="#"===r.charAt(0)?r:"#"+r,a="background:"+o+";color:"+getContrastColor(o)+";line-height:1.5rem;font-size:14px";t[n]=`<span class="rounded-xl px-2 py-1" style='${a}'>${e.label}</span>`}else t[n]=e.label})),t}function getNameTplUrl(e,t){return Router.getObjectDetailPath({...t,formFactor:t.formFactor,appId:"${appId}",objectName:t.objectName||"${objectName}",recordId:`\${${t.idFieldName}}`})}function getNameTpl(e,t){const n=getNameTplUrl(e,t);let r="";t&&t.isLookup&&(r="target='_blank'");let o=e.name;return"lookup"==e.type||"master_detail"==e.type?!e.reference_to&&(e.optionsFunction||e._optionsFunction||e.options)?e.isTableField||(o=`\${${e.name}__label}`):o=`\${_display.${e.name}.label}`:o=`\${_display.${e.name} || ${e.name}}`,t.isRelated&&window.innerWidth>=768?`<a href="${n}" ${r} onclick="return false;">\${${o} | raw}</a>`:`<a href="${n}" ${r}>\${${o} | raw}</a>`}function getRelatedFieldTpl(e,t){let n="";if(!e.reference_to&&(e.optionsFunction||e._optionsFunction||e.options))return e.isTableField?`\${${e.name}}`:`\${${e.name}__label}`;let r="";t&&t.isLookup&&(r="target='_blank'");const o=t.onlyDisplayLookLabel;let a=`data._display.${e.name}`;if(e.isTableField&&(a=`data.${e.name}`),_.isString(e.reference_to)||!e.reference_to)if(e.multiple){let e="<%=item.label%>";if(t.isRelated&&(r="target='_blank'"),!o){e=`<a href="${Router.getObjectDetailPath({formFactor:t.formFactor,appId:"<%=data.appId%>",objectName:"<%=item.objectName%>",recordId:"<%=item.value%>",_templateType:"JavaScript"})}" ${r}><%=item.label%></a>`}n=`\n <% if (${a} && ${a}.length) { %><% ${a}.forEach(function(item,index) { %> <% if(index>0 && index<${a}.length){ %> , <% } %> ${e} <% }); %><% } %>\n `}else{let a=`\${_display.${e.name}.label}`,i=`\${_display.${e.name}.objectName}`,s=`\${_display.${e.name}.value}`;if(e.isTableField&&(a=`\${${e.name}.label}`,i=`\${${e.name}.objectName}`,s=`\${${e.name}.value}`),!o){const e=Router.getObjectDetailPath({formFactor:t.formFactor,appId:"${appId}",objectName:`${i}`,recordId:`${s}`});a=window.innerWidth>=768?`<a href="${e}" ${r} onclick="return false;">${a}</a>`:`<a href="${e}" ${r}>${a}</a>`}n=a}else{let e="<%=item.label%>";if(!o){e=`<a href="${Router.getObjectDetailPath({formFactor:t.formFactor,appId:"<%=data.appId%>",objectName:"<%=item.objectName%>",recordId:"<%=item.value%>",_templateType:"JavaScript"})}" ${r}><%=item.label%></a>`}n=`\n <% if (${a} && ${a}.length) { %><% ${a}.forEach(function(item) { %> ${e} <% }); %><% } %>\n `}return n}async function getLookupTpl(e,t){if(!e.reference_to)return getSelectTpl(e);const n=await getRefObjectNameFieldName(e);if(e.multiple){const r=Router.getObjectDetailPath({formFactor:t.formFactor,appId:t.appId,objectName:e.reference_to,recordId:"<%=item._id%>",_templateType:"JavaScript"});return`\n <% if (data.${e.name} && data.${e.name}.length) { %><% data.${e.name}.forEach(function(item) { %> <a href="${r}"><%=item.${n}%></a> <% }); %><% } %>\n `}return`<a href="${Router.getObjectDetailPath({formFactor:t.formFactor,appId:t.appId,objectName:e.reference_to,recordId:`\${${e.name}._id}`})}">\${${e.name}.${n}}</a>`}function getSwitchTpl(e){let t=`data._display.${e.name}`;return e.isTableField&&(t=`data.${e.name}`),`<% if (data.${e.name}) { %>\n <span class="slds-icon_container slds-icon-utility-check slds-current-color" title="<%=${t}%>">\n <span ><%= ${t} === "√" ? "<svg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke-width='1.5' stroke='currentColor' class='w-4 h-4'><path stroke-linecap='round' stroke-linejoin='round' d='M4.5 12.75l6 6 9-13.5' /></svg>" : ${t} %></span>\n </span>\n <% } %>`}function getPasswordTpl(e){return`<% if (data.${e.name}) { %>\n <span>******</span>\n <% } %>`}function getLocationTpl(e){return`\${${e.name} ? ${e.name}.address : ''}`}async function getFieldTpl(e,t){if((e.is_name||e.name===t.labelFieldName)&&!t.onlyDisplayLookLabel&&!0!==e.multiple)return getNameTpl(e,t);switch(e.type){case"password":return getPasswordTpl(e);case"boolean":case"toggle":return getSwitchTpl(e);case"select":return getSelectTpl(e);case"time":return getTimeTpl(e);case"date":return getDateTpl(e);case"datetime":return getDateTimeTpl(e);case"lookup":case"master_detail":return await getRelatedFieldTpl(e,t);case"location":return await getLocationTpl(e);case"number":case"currency":return await getNumberTpl(e);case"percent":case"formula":case"summary":return getUiFieldTpl(e);case"filesize":return getUiFileSizeTpl(e)}}async function getFieldsTemplate(e,t,n){let r=[];0!=n&&(n=!0);let o=["_id"];e.datasource&&"default"!==e.datasource&&"meteor"!==e.datasource||o.push("space");let a=[],i=[];i=lodash.exports.isArray(t)?t:lodash.exports.values(t);for(const e of i)e.name&&(e.expand?r.push(e):e.name.indexOf(".")<0?(!n||"lookup"!=e.type&&"master_detail"!=e.type?o.push(e.alias?`${e.alias}:${e.name}`:e.name):(o.push(`${e.name}`),a.push(`${e.name}`)),lodash.exports.includes(["time","date","datetime","boolean","number","currency"],e.type)&&o.push(`${e.name}`),lodash.exports.includes(["percent","time","filesize","date","datetime","boolean","number","currency","select","file","image","avatar","formula","summary","object","grid"],e.type)&&a.push(`${e.name}`)):(objectFieldName=e.name.split(".")[0],o.push(objectFieldName),a.push(objectFieldName)));a=lodash.exports.uniq(a),o=lodash.exports.uniq(o);let s="";return r.length>0&&lodash.exports.each(r,(function(e){s+=`${e.expandInfo.fieldName}__expand{${e.expandInfo.displayName}}`})),a.length>0?`${o.join(",")},${s},_display:_ui{${a.join(",")}}`:lodash.exports.trimEnd(`${o.join(" ")},${s}`,",")}async function getFindQuery(e,t,n,r){let o=r.limit||10,a=`(top: ${o})`;t&&(a=`(filters:["_id", "=", "${t}"], top: ${o})`);let i="data";r&&(r.alias&&(i=r.alias),r.filters&&(a=`(filters:${r.filters})`),r.queryOptions&&(a=`(${r.queryOptions})`));var s="";e.enable_tree&&lodash.exports.includes(lodash.exports.keys(e.fields),"parent")&&lodash.exports.includes(lodash.exports.keys(e.fields),"children")&&(s=",parent,children");var l="";"cms_files"===e.name&&(l=",versions");const c=!1===r.count?"":`,count:${e.name}__count(filters:{__filters})`,u=`${await getFieldsTemplate(e,n,r.expand)}${s}${l}`;return{orderBy:"${orderBy}",orderDir:"${orderDir}",pageNo:"${page}",pageSize:"${perPage}",queryFields:u,query:`{${i}:${e.name}${a}{${u}}${c}}`}}function getApi$2(e){if(!e)return"${context.rootUrl}/graphql?reload=${additionalFilters|join}&listName=${listName}"}"undefined"!=typeof window&&(window.getImageFieldUrl=getImageFieldUrl);var config={listView:{newRecordMode:"modal",editRecordMode:"modal",perPage:20}};const AmisFormInputs=["text","date","file","avatar","image","datetime","time","number","currency","percent","password","url","color","email"];function getAmisStaticFieldType(e,t,n){return t?lodash.exports.includes(["text","image","color"],e)?"text"===e&&n&&n.amis&&n.amis.tpl?"static":"image"===e&&n&&n.multiple?"static-images":`static-${e}`:"url"===e?"input-url":"static":lodash.exports.includes(AmisFormInputs,e)?`input-${e}`:"location"===e?"location-picker":e}let pageCache={};async function getPage({type:e,pageId:t="",appId:n,objectName:r="",recordId:o="",formFactor:a="LARGE"}){const i=`/api/pageSchema/${e}?app=${n}&objectApiName=${r}&recordId=${o}&pageId=${t}&formFactor=${a}`;if(lodash.exports.has(pageCache,i))return pageCache[i];const s=await fetchAPI(i);if(s&&s.schema)return s.schema=JSON.parse(s.schema),s.schema.data&&(delete s.schema.data.recordId,delete s.schema.data.objectName,delete s.schema.data.context,delete s.schema.data.global),pageCache[i]=s,JSON.parse(JSON.stringify(s));pageCache[i]=null}const getFileTableName=e=>{switch(e.type){case"avatar":return"avatars";case"image":return"images";case"file":return"files"}},getAmisFieldType$1=(e,t)=>getAmisStaticFieldType("avatar"===e.type?"image":e.type,t,{multiple:e.multiple});async function getLookupLinkOnClick(e,t){const n=await getPage({type:"record",appId:t.appId,objectName:t.objectName,formFactor:t.formFactor}),r=n?Object.assign({},n.schema,{recordId:"file"==e.type?"${value}":`\${${e.name}}`,data:{...n.schema.data,_inDrawer:!0,recordLoaded:!1,objectName:t.objectName}}):{type:"steedos-record-detail",objectApiName:t.objectName,recordId:"file"==e.type?"${value}":`\${${e.name}}`,showBackButton:!1,showButtons:!0,data:{_inDrawer:!0,recordLoaded:!1}};return{click:{actions:[{actionType:"drawer",drawer:{type:"drawer",title:"&nbsp;",headerClassName:"hidden",size:"lg",width:window.drawerWidth||"70%",bodyClassName:"p-0 m-0 bg-gray-100",closeOnEsc:!0,closeOnOutside:!0,resizable:!0,actions:[],body:[r],className:"steedos-record-detail-drawer app-popover"},preventDefault:!0}]}}}const getAmisFileReadonlySchema=async(e,t={})=>{const n=e.type,{appId:r,formFactor:o}=t.amisData||{},a=getAmisFieldType$1(e,!0);let i='onclick="return false;"';return window.innerWidth<768&&(i=""),_.includes(["avatar","image"],n)?{type:a,defaultImage:"",enlargeAble:!0,showToolbar:!0}:"file"===n?window.Meteor?.isCordova?{type:"control",body:e.multiple?{type:"each",name:"_display."+e.name,items:{type:"tpl",tpl:"${name}",className:"antd-Button--link inline-block mr-2",onEvent:{click:{actions:[{script:"\n Steedos.cordovaDownload(encodeURI(event.data.url), event.data.name);\n ",actionType:"custom"}],weight:0}}}}:{type:"tpl",tpl:"${_display."+e.name+".name}",className:"antd-Button--link inline-block",onEvent:{click:{actions:[{script:`\n const data = event.data._display.${e.name};\n Steedos.cordovaDownload(encodeURI(data.url), data.name);\n `,actionType:"custom"}],weight:0}}}}:{type:"control",name:"",body:{type:"each",placeholder:"",className:e.multiple?"flex flex-col":"",source:`\${_display.${e.name}|asArray}`,items:{type:"static",labelClassName:"hidden",label:!1,className:"m-0",tpl:`<a href="/app/-/cfs_files_filerecord/view/\${value}" ${i}>\${name}</a>`,onEvent:window.innerWidth<768?null:await getLookupLinkOnClick(e,{appId:r,objectName:"cfs_files_filerecord",formFactor:o})}}}:void 0},getAmisFileEditSchema=e=>{const t=getFileTableName(e);let n={type:getAmisFieldType$1(e,!1),useChunk:!1,receiver:{method:"post",dataType:"form-data",url:`\${context.rootUrl}/api/v6/files/cfs.${t}.filerecord`,requestAdaptor:"\n const superData = (typeof context != 'undefined') ? context : api.body; \n const { _master, global } = superData;\n // const { recordId, objectName } = _master;\n const { spaceId, userId, user } = global;\n /*\n record_id: recordId,\n parent: recordId,\n object_name: objectName,\n owner_name: user.name,\n space: spaceId,\n owner: userId\n */\n // 参考platform 2.2版本,附件字段保存时cfs.files.filerecord、cfs.images.filerecord表中的metadata下只保存space、owner两个属性值。\n api.data.append('space', spaceId);\n api.data.append('owner', userId);\n\n return api;\n ",adaptor:`\n const superData = (typeof context != 'undefined') ? context : api.body; \n const { context:pageContext } = superData; \n var rootUrl = pageContext.rootUrl + "/api/v6/files/download/cfs.${t}.filerecord/";\n payload = {\n status: response.status == 200 ? 0 : response.status,\n msg: response.statusText,\n data: {\n value: payload._id,\n name: payload.original.name,\n url: rootUrl + payload._id + "/" + payload.original.name,\n }\n }\n return payload;\n `,headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}}};return e.multiple&&(n.multiple=!0,n.joinValues=!1,n.extractValue=!0,"image"===e.type&&Steedos.isCordova()&&Steedos.isCordova()&&(n.accept="")),n},getAmisFileSchema=async(e,t,n)=>t?await getAmisFileReadonlySchema(e,n):getAmisFileEditSchema(e);var frontend_field_group_generalization$1="General",frontend_download$1="Download",frontend_form_save$1="Save",frontend_form_save_and_new$1="Save and New",frontend_form_cancel$1="Cancel",frontend_form_reset$1="Reset",frontend_form_new$1="New",frontend_form_edit$1="Edit",frontend_form_preview$1="Preview",frontend_form_select$1="Select",frontend_form_please_select$1="Please select",frontend_form_confirm$1="Confirm",frontend_form_delete$1="Delete",frontend_form_view$1="view",frontend_form_details$1="details",frontend_form_validation_failed_url$1="The URL format is incorrect",frontend_delete_confirm_text$1="Are you sure you want to delete this item?",frontend_delete_many_selected_required$1="Please select the item to be deleted",frontend_delete_many_confirm_text$1="Are you sure you want to delete?",frontend_display_type_is_table$1="Table",frontend_display_type_is_split$1="Split View",frontend_display_as$1="Displayed as",frontend_record_sum$1="items",frontend_button_reload_tooltip$1="Refresh",frontend_button_search_tooltip$1="Filter",frontend_fields_filter_button_search$1="Search",frontend_fields_filter_button_settings$1="Set search options",frontend_button_listview_control_tooltip$1="List View Controls",frontend_button_listview_control_label$1="LIST VIEW CONTROLS",frontend_listview_control_columns$1="Show List",frontend_listview_control_columns_mobile_group$1="Mobile side",frontend_listview_control_clone_label$1="Clone",frontend_listview_control_clone_title$1="Clone List View",frontend_listview_control_clone_defaultData_label_start$1="Copy of",frontend_listview_control_clone_defaultData_label_end$1="",frontend_listview_control_delete_label$1="Delete",frontend_listview_control_delete_confirm_text$1="If you delete this list view it will be permanently removed for all users with access. Are you sure you want to delete?",frontend_listview_control_delete_message_success$1="Deletion successful",frontend_listview_control_filters$1="Filter settings",frontend_listview_control_filters_fields_extend$1="Conditional component 1",frontend_listview_control_new_label$1="New",frontend_listview_control_new_title$1="New List View",frontend_listview_control_new_message_success$1="Success",frontend_listview_control_new_message_failed$1="Failure",frontend_listview_control_rename_label$1="Rename",frontend_listview_control_rename_title$1="Rename List View",frontend_listview_control_share$1="Sharing Settings",frontend_listview_control_sort$1="Default sorting rule",frontend_export_excel$1="Export Excel",frontend_export_excel_toast$1="Exporting, please wait",frontend_operation$1="Operation",frontend_import_data$1="Import data",frontend_import_data_object_name$1="Import object",frontend_import_data_queue_import$1="Data import",frontend_import_data_queue_import_description$1="Import description",frontend_import_data_queue_import_encoding$1="Character code",frontend_import_data_queue_import_template_url$1="Import template",frontend_import_data_file$1="Excel file",frontend_import_data_message_success$1="Importing has started...",frontend_import_data_message_failed$1="Import failed",frontend_record_detail_tab_detailed$1="Details",frontend_record_detail_tab_related$1="Related",frontend_all_apps$1="All apps",frontend_all_projects$1="All projects",frontend_open_app_launcher$1="Open App Launcher",frontend_application_launcher$1="Application launcher",frontend_menu$1="Menu",frontend_help$1="Help",frontend_setup$1="Setup",frontend_notifications$1="Notifications",frontend_notifications_allread$1="Mark all as read",frontend_notifications_allread_message$1="All marked as read",frontend_notifications_close_dialog$1="Close",frontend_profile$1="Profile",switch_space$1="Switch Space",frontend_about$1="About",frontend_log_out$1="Log out",frontend_listview_warning_start$1="The current ",frontend_listview_warning_end$1=" view does not exist!",frontend_record_detail_related_list_warning$1="Missing parent object, parent record, or related list object property!",frontend_record_detail_related_lists_warning$1="Missing parent object, or parent record property!",frontend_record_detail_related_lists_info$1="No related child tables found",frontend_calendar_listWeek$1="List",frontend_message_no_permission_to_edit$1="You don't have permission to edit this record!",frontend_message_modification_successful$1="Modification successful!",frontend_message_modification_failed$1="Modification failed!",frontend_objects_related_alert_start$1="No related table fields associated with the related list object",frontend_objects_related_alert_end$1="were found.",frontend_no_records_found$1="No records found.",frontend_records_no_allowedit$1="You do not have edit permission for this record",frontend_app_menu_save_order_group_nesting_error$1="Group nesting is not supported",en_us={frontend_field_group_generalization:frontend_field_group_generalization$1,frontend_download:frontend_download$1,frontend_form_save:frontend_form_save$1,frontend_form_save_and_new:frontend_form_save_and_new$1,frontend_form_cancel:frontend_form_cancel$1,frontend_form_reset:frontend_form_reset$1,frontend_form_new:frontend_form_new$1,frontend_form_edit:frontend_form_edit$1,frontend_form_preview:frontend_form_preview$1,frontend_form_select:frontend_form_select$1,frontend_form_please_select:frontend_form_please_select$1,frontend_form_confirm:frontend_form_confirm$1,frontend_form_delete:frontend_form_delete$1,frontend_form_view:frontend_form_view$1,frontend_form_details:frontend_form_details$1,frontend_form_validation_failed_url:frontend_form_validation_failed_url$1,frontend_delete_confirm_text:frontend_delete_confirm_text$1,frontend_delete_many_selected_required:frontend_delete_many_selected_required$1,frontend_delete_many_confirm_text:frontend_delete_many_confirm_text$1,frontend_display_type_is_table:frontend_display_type_is_table$1,frontend_display_type_is_split:frontend_display_type_is_split$1,frontend_display_as:frontend_display_as$1,frontend_record_sum:frontend_record_sum$1,frontend_button_reload_tooltip:frontend_button_reload_tooltip$1,frontend_button_search_tooltip:frontend_button_search_tooltip$1,frontend_fields_filter_button_search:frontend_fields_filter_button_search$1,frontend_fields_filter_button_settings:frontend_fields_filter_button_settings$1,frontend_button_listview_control_tooltip:frontend_button_listview_control_tooltip$1,frontend_button_listview_control_label:frontend_button_listview_control_label$1,frontend_listview_control_columns:frontend_listview_control_columns$1,frontend_listview_control_columns_mobile_group:frontend_listview_control_columns_mobile_group$1,frontend_listview_control_clone_label:frontend_listview_control_clone_label$1,frontend_listview_control_clone_title:frontend_listview_control_clone_title$1,frontend_listview_control_clone_defaultData_label_start:frontend_listview_control_clone_defaultData_label_start$1,frontend_listview_control_clone_defaultData_label_end:frontend_listview_control_clone_defaultData_label_end$1,frontend_listview_control_delete_label:frontend_listview_control_delete_label$1,frontend_listview_control_delete_confirm_text:frontend_listview_control_delete_confirm_text$1,frontend_listview_control_delete_message_success:frontend_listview_control_delete_message_success$1,frontend_listview_control_filters:frontend_listview_control_filters$1,frontend_listview_control_filters_fields_extend:frontend_listview_control_filters_fields_extend$1,frontend_listview_control_new_label:frontend_listview_control_new_label$1,frontend_listview_control_new_title:frontend_listview_control_new_title$1,frontend_listview_control_new_message_success:frontend_listview_control_new_message_success$1,frontend_listview_control_new_message_failed:frontend_listview_control_new_message_failed$1,frontend_listview_control_rename_label:frontend_listview_control_rename_label$1,frontend_listview_control_rename_title:frontend_listview_control_rename_title$1,frontend_listview_control_share:frontend_listview_control_share$1,frontend_listview_control_sort:frontend_listview_control_sort$1,frontend_export_excel:frontend_export_excel$1,frontend_export_excel_toast:frontend_export_excel_toast$1,frontend_operation:frontend_operation$1,frontend_import_data:frontend_import_data$1,frontend_import_data_object_name:frontend_import_data_object_name$1,frontend_import_data_queue_import:frontend_import_data_queue_import$1,frontend_import_data_queue_import_description:frontend_import_data_queue_import_description$1,frontend_import_data_queue_import_encoding:frontend_import_data_queue_import_encoding$1,frontend_import_data_queue_import_template_url:frontend_import_data_queue_import_template_url$1,frontend_import_data_file:frontend_import_data_file$1,frontend_import_data_message_success:frontend_import_data_message_success$1,frontend_import_data_message_failed:frontend_import_data_message_failed$1,frontend_record_detail_tab_detailed:frontend_record_detail_tab_detailed$1,frontend_record_detail_tab_related:frontend_record_detail_tab_related$1,frontend_all_apps:frontend_all_apps$1,frontend_all_projects:frontend_all_projects$1,frontend_open_app_launcher:frontend_open_app_launcher$1,frontend_application_launcher:frontend_application_launcher$1,frontend_menu:frontend_menu$1,frontend_help:frontend_help$1,frontend_setup:frontend_setup$1,frontend_notifications:frontend_notifications$1,frontend_notifications_allread:frontend_notifications_allread$1,frontend_notifications_allread_message:frontend_notifications_allread_message$1,frontend_notifications_close_dialog:frontend_notifications_close_dialog$1,frontend_profile:frontend_profile$1,switch_space:switch_space$1,frontend_about:frontend_about$1,frontend_log_out:frontend_log_out$1,frontend_listview_warning_start:frontend_listview_warning_start$1,frontend_listview_warning_end:frontend_listview_warning_end$1,frontend_record_detail_related_list_warning:frontend_record_detail_related_list_warning$1,frontend_record_detail_related_lists_warning:frontend_record_detail_related_lists_warning$1,frontend_record_detail_related_lists_info:frontend_record_detail_related_lists_info$1,frontend_calendar_listWeek:frontend_calendar_listWeek$1,frontend_message_no_permission_to_edit:frontend_message_no_permission_to_edit$1,frontend_message_modification_successful:frontend_message_modification_successful$1,frontend_message_modification_failed:frontend_message_modification_failed$1,frontend_objects_related_alert_start:frontend_objects_related_alert_start$1,frontend_objects_related_alert_end:frontend_objects_related_alert_end$1,frontend_no_records_found:frontend_no_records_found$1,frontend_records_no_allowedit:frontend_records_no_allowedit$1,frontend_app_menu_save_order_group_nesting_error:frontend_app_menu_save_order_group_nesting_error$1},frontend_field_group_generalization="通用",frontend_download="下载",frontend_form_save="保存",frontend_form_save_and_new="保存并新建",frontend_form_cancel="取消",frontend_form_reset="重置",frontend_form_new="新建",frontend_form_edit="编辑",frontend_form_preview="预览",frontend_form_select="选择",frontend_form_please_select="请选择",frontend_form_confirm="确认",frontend_form_delete="删除",frontend_form_view="查看",frontend_form_details="详情",frontend_form_validation_failed_url="URL 格式不正确",frontend_delete_confirm_text="确定要删除此项目?",frontend_delete_many_selected_required="请选择要删除的项",frontend_delete_many_confirm_text="确定要删除吗?",frontend_display_type_is_table="表格",frontend_display_type_is_split="分栏视图",frontend_display_as="显示为",frontend_record_sum="个项目",frontend_button_reload_tooltip="刷新",frontend_button_search_tooltip="筛选",frontend_fields_filter_button_search="搜索",frontend_fields_filter_button_settings="选择搜索项",frontend_button_listview_control_tooltip="列表视图控制",frontend_button_listview_control_label="列表视图控制",frontend_listview_control_columns="显示的列",frontend_listview_control_columns_mobile_group="手机端",frontend_listview_control_clone="复制",frontend_listview_control_clone_label="复制",frontend_listview_control_clone_title="复制 列表视图",frontend_listview_control_clone_defaultData_label_start="",frontend_listview_control_clone_defaultData_label_end="的副本",frontend_listview_control_delete_label="删除",frontend_listview_control_delete_confirm_text="如果您删除此列表视图,该视图将为所有具备访问权限的用户永久删除。是否确定要删除?",frontend_listview_control_delete_message_success="删除成功",frontend_listview_control_filters="过滤设置",frontend_listview_control_filters_fields_extend="条件组件",frontend_listview_control_new_label="新建",frontend_listview_control_new_title="新建 列表视图",frontend_listview_control_new_message_success="成功",frontend_listview_control_new_message_failed="失败",frontend_listview_control_rename_label="重命名",frontend_listview_control_rename_title="重命名 列表视图",frontend_listview_control_share="共享设置",frontend_listview_control_sort="默认排序规则",frontend_export_excel="导出",frontend_export_excel_toast="正在导出,请稍后...",frontend_operation="操作",frontend_import_data="导入数据",frontend_import_data_object_name="导入对象",frontend_import_data_queue_import="数据导入",frontend_import_data_queue_import_description="导入描述",frontend_import_data_queue_import_encoding="字符代码",frontend_import_data_queue_import_template_url="导入模板",frontend_import_data_file="Excel文件",frontend_import_data_message_success="已开始导入...",frontend_import_data_message_failed="导入失败",frontend_record_detail_tab_detailed="详细",frontend_record_detail_tab_related="相关",frontend_all_apps="所有应用",frontend_all_projects="所有项目",frontend_open_app_launcher="打开应用程序启动器",frontend_application_launcher="应用程序启动器",frontend_menu="菜单",frontend_help="帮助",frontend_setup="设置",frontend_notifications="通知",frontend_notifications_allread="全部标记为已读",frontend_notifications_allread_message="已全部标记为已读",frontend_notifications_close_dialog="关闭",frontend_profile="个人资料",switch_space="切换工作区",frontend_about="关于",frontend_log_out="注销",frontend_listview_warning_start="当前",frontend_listview_warning_end="视图不存在!",frontend_record_detail_related_list_warning="缺少父级对象、父级记录或相关列表对象属性!",frontend_record_detail_related_lists_warning="缺少父级对象或父级记录属性!",frontend_record_detail_related_lists_info="没有相关子表",frontend_calendar_listWeek="列表",frontend_message_no_permission_to_edit="您没有编辑该记录的权限!",frontend_message_modification_successful="修改成功!",frontend_message_modification_failed="修改失败!",frontend_objects_related_alert_start="未找到与相关列表对象",frontend_objects_related_alert_end="关联的相关表字段",frontend_no_records_found="无法找到记录",frontend_records_no_allowedit="您对这条记录没有编辑权限",frontend_app_menu_save_order_group_nesting_error="不支持分组嵌套",zh_cn={frontend_field_group_generalization:frontend_field_group_generalization,frontend_download:frontend_download,frontend_form_save:frontend_form_save,frontend_form_save_and_new:frontend_form_save_and_new,frontend_form_cancel:frontend_form_cancel,frontend_form_reset:frontend_form_reset,frontend_form_new:frontend_form_new,frontend_form_edit:frontend_form_edit,frontend_form_preview:frontend_form_preview,frontend_form_select:frontend_form_select,frontend_form_please_select:frontend_form_please_select,frontend_form_confirm:frontend_form_confirm,frontend_form_delete:frontend_form_delete,frontend_form_view:frontend_form_view,frontend_form_details:frontend_form_details,frontend_form_validation_failed_url:frontend_form_validation_failed_url,frontend_delete_confirm_text:frontend_delete_confirm_text,frontend_delete_many_selected_required:frontend_delete_many_selected_required,frontend_delete_many_confirm_text:frontend_delete_many_confirm_text,frontend_display_type_is_table:frontend_display_type_is_table,frontend_display_type_is_split:frontend_display_type_is_split,frontend_display_as:frontend_display_as,frontend_record_sum:frontend_record_sum,frontend_button_reload_tooltip:frontend_button_reload_tooltip,frontend_button_search_tooltip:frontend_button_search_tooltip,frontend_fields_filter_button_search:frontend_fields_filter_button_search,frontend_fields_filter_button_settings:frontend_fields_filter_button_settings,frontend_button_listview_control_tooltip:frontend_button_listview_control_tooltip,frontend_button_listview_control_label:frontend_button_listview_control_label,frontend_listview_control_columns:frontend_listview_control_columns,frontend_listview_control_columns_mobile_group:frontend_listview_control_columns_mobile_group,frontend_listview_control_clone:frontend_listview_control_clone,frontend_listview_control_clone_label:frontend_listview_control_clone_label,frontend_listview_control_clone_title:frontend_listview_control_clone_title,frontend_listview_control_clone_defaultData_label_start:frontend_listview_control_clone_defaultData_label_start,frontend_listview_control_clone_defaultData_label_end:frontend_listview_control_clone_defaultData_label_end,frontend_listview_control_delete_label:frontend_listview_control_delete_label,frontend_listview_control_delete_confirm_text:frontend_listview_control_delete_confirm_text,frontend_listview_control_delete_message_success:frontend_listview_control_delete_message_success,frontend_listview_control_filters:frontend_listview_control_filters,frontend_listview_control_filters_fields_extend:frontend_listview_control_filters_fields_extend,frontend_listview_control_new_label:frontend_listview_control_new_label,frontend_listview_control_new_title:frontend_listview_control_new_title,frontend_listview_control_new_message_success:frontend_listview_control_new_message_success,frontend_listview_control_new_message_failed:frontend_listview_control_new_message_failed,frontend_listview_control_rename_label:frontend_listview_control_rename_label,frontend_listview_control_rename_title:frontend_listview_control_rename_title,frontend_listview_control_share:frontend_listview_control_share,frontend_listview_control_sort:frontend_listview_control_sort,frontend_export_excel:frontend_export_excel,frontend_export_excel_toast:frontend_export_excel_toast,frontend_operation:frontend_operation,frontend_import_data:frontend_import_data,frontend_import_data_object_name:frontend_import_data_object_name,frontend_import_data_queue_import:frontend_import_data_queue_import,frontend_import_data_queue_import_description:frontend_import_data_queue_import_description,frontend_import_data_queue_import_encoding:frontend_import_data_queue_import_encoding,frontend_import_data_queue_import_template_url:frontend_import_data_queue_import_template_url,frontend_import_data_file:frontend_import_data_file,frontend_import_data_message_success:frontend_import_data_message_success,frontend_import_data_message_failed:frontend_import_data_message_failed,frontend_record_detail_tab_detailed:frontend_record_detail_tab_detailed,frontend_record_detail_tab_related:frontend_record_detail_tab_related,frontend_all_apps:frontend_all_apps,frontend_all_projects:frontend_all_projects,frontend_open_app_launcher:frontend_open_app_launcher,frontend_application_launcher:frontend_application_launcher,frontend_menu:frontend_menu,frontend_help:frontend_help,frontend_setup:frontend_setup,frontend_notifications:frontend_notifications,frontend_notifications_allread:frontend_notifications_allread,frontend_notifications_allread_message:frontend_notifications_allread_message,frontend_notifications_close_dialog:frontend_notifications_close_dialog,frontend_profile:frontend_profile,switch_space:switch_space,frontend_about:frontend_about,frontend_log_out:frontend_log_out,frontend_listview_warning_start:frontend_listview_warning_start,frontend_listview_warning_end:frontend_listview_warning_end,frontend_record_detail_related_list_warning:frontend_record_detail_related_list_warning,frontend_record_detail_related_lists_warning:frontend_record_detail_related_lists_warning,frontend_record_detail_related_lists_info:frontend_record_detail_related_lists_info,frontend_calendar_listWeek:frontend_calendar_listWeek,frontend_message_no_permission_to_edit:frontend_message_no_permission_to_edit,frontend_message_modification_successful:frontend_message_modification_successful,frontend_message_modification_failed:frontend_message_modification_failed,frontend_objects_related_alert_start:frontend_objects_related_alert_start,frontend_objects_related_alert_end:frontend_objects_related_alert_end,frontend_no_records_found:frontend_no_records_found,frontend_records_no_allowedit:frontend_records_no_allowedit,frontend_app_menu_save_order_group_nesting_error:frontend_app_menu_save_order_group_nesting_error};const resources={en:{translation:en_us},"zh-CN":{translation:zh_cn}};var locale=window.navigator.language;async function getQuickEditSchema(e,t,n){let r=e.fields[t.name],o=!1;window.amisRequire&&window.amisRequire("amis")?o=window.amisRequire("amis").version[0]>=3&&window.amisRequire("amis").version[2]>=2:window.Amis&&(o=window.Amis.version[0]>=3&&window.Amis.version[2]>=2);const a=n.objectName+"_"+r.name+"_quickEdit";var i={body:[],id:a,className:"steedos-table-quickEdit"};if("avatar"!=r.type&&"image"!=r.type&&"file"!=r.type&&o){const e={submit:{actions:[{actionType:"validate",componentId:a,outputVar:"form_validate_result"},{actionType:"custom",script:`\n let items = _.cloneDeep(event.data.items);\n let selectedItems = _.cloneDeep(event.data.selectedItems);\n if(event.data.isBatchEdit){\n selectedItems.forEach(function(selectedItem){\n selectedItem._display.${r.name} = event.data._display.${r.name};\n doAction({actionType: 'setValue', "args": {"value": selectedItem._display},componentId: "${n.objectName}" + "_display_" + selectedItem._index});\n doAction({actionType: 'setValue', "args": {"value": event.data.${r.name}},componentId: "${n.objectName+"_"+r.name+"_"}" + selectedItem._index});\n })\n }else{\n doAction({actionType: 'setValue', "args": {"value": event.data._display},componentId: "${n.objectName}" + "_display_" + event.data._index});\n doAction({actionType: 'setValue', "args": {"value": event.data.${r.name}},componentId: "${n.objectName+"_"+r.name+"_"}" + event.data._index});\n }\n `,expression:"${!form_validate_result.error}"},{actionType:"closeDialog",expression:"${!form_validate_result.error}"}]}};i.onEvent=e}if(r.disabled)i=!1;else{var s=Object.assign({},lodash.exports.omit(n,"buttons"),{defaults:Object.assign({},n.defaults,{formSchema:i})}),l=await convertSFieldToAmisField(r,!1,s);if(l){i.body.push(l);var c="";i.body[0].onEvent={};const e=function(e){return{actions:[{actionType:"custom",script:`\n var _display = _.cloneDeep(event.data._display);\n ${e}\n doAction({actionType: 'setValue', "args": {"value": {_display}},componentId: "${a}"});\n `}]}};switch(r.type){case"lookup":case"master_detail":let t=i.body[0].labelField||"label",n=i.body[0].valueField||"value";c=r.multiple?`\n const preData = _.cloneDeep(event.data.__super.${r.name});\n if(preData && event.data.${r.name}.length < preData.length){\n let deletedIndex;\n preData.forEach(function(item,index){\n if(_.indexOf(event.data.${r.name}, item) == -1) _display["${r.name}"].splice(index, 1);\n })\n }else{\n _display["${r.name}"] = [];\n event.data.value.forEach(function(val,index){\n const item = _.find(event.data.selectedItems, { ${n}: val });\n _display["${r.name}"].push(\n {\n "label": item.${t},\n "value": item[event.data.uiSchema.idFieldName],\n "objectName": "${r.reference_to}"\n }\n )\n })\n }\n \n `:`\n if(event.data.value){\n _display["${r.name}"] = {\n "label": event.data.selectedItems.${t},\n "value": event.data.selectedItems[event.data.uiSchema.idFieldName],\n "objectName": "${r.reference_to}"\n }\n }else{\n _display["${r.name}"] = {}\n }\n `,i.body[0].onEvent.change=e(c);break;case"select":c=`\n _display["${r.name}"] = event.data.selectedItems.label;\n `,i.body[0].onEvent.change=e(c);break;case"percent":c=`\n if(event.data.value){\n _display["${r.name}"] = event.data.value.toFixed(${r.scale}) + '%';\n } else {\n _display["${r.name}"] = event.data.value;\n }\n \n `,i.body[0].onEvent.change=e(c);break;case"time":c=`\n _display["${r.name}"] = moment(event.data.value).utc().format('HH:mm');\n `,i.body[0].onEvent.change=e(c);break;case"date":c=`\n _display["${r.name}"] = moment(event.data.value).utc().format('YYYY-MM-DD');\n `,i.body[0].onEvent.change=e(c);break;case"datetime":c=`\n _display["${r.name}"] = moment(event.data.value).format('YYYY-MM-DD HH:mm');\n `,i.body[0].onEvent.change=e(c);break;case"boolean":c=`\n _display["${r.name}"] = event.data.value?"√":"";\n `,i.body[0].onEvent.change=e(c);break;case"number":case"currency":c=`\n _display["${r.name}"] = event.data.value && event.data.value.toFixed(${r.scale});\n `,i.body[0].onEvent.change=e(c);break;case"file":var u="";r.multiple?(c=`\n _display["${r.name}"].push({\n "name": event.data.result.name,\n "url": event.data.result.url,\n "value": event.data.result.value,\n "_id": event.data.result.value,\n "type": event.data.item.type,\n "size": event.data.item.size\n });\n `,u=`\n _.remove(_display["${r.name}"], function(file){return file.url == event.data.item.url});\n `):(c=` \n _display["${r.name}"] = {\n "name": event.data.result.name,\n "url": event.data.result.url,\n "value": event.data.result.value,\n "_id": event.data.result.value,\n "type": event.data.item.type,\n "size": event.data.item.size\n };\n `,u=`\n if(_display["${r.name}"].url == event.data.item.url){\n _display["${r.name}"] = {};\n }\n `),i.body[0].onEvent.success=e(c),i.body[0].onEvent.remove=e(u);break;case"avatar":case"image":i.body[0].receiver.adaptor=`\n const superData = (typeof context != 'undefined') ? context : api.body; \n const { context:pageContext } = superData; \n var rootUrl = pageContext.rootUrl + "/api/files/${r.type}s/";\n payload = {\n status: response.status == 200 ? 0 : response.status,\n msg: response.statusText,\n data: {\n value: rootUrl + payload._id,//为了实现图片crud的回显,需要将value从id改为url,当保存数据数据时,再在发送适配器内重新将id提取出来\n name: payload.original.name,\n url: rootUrl + payload._id,\n }\n }\n return payload;\n `}i.body[0].visibleOn="${quickedit_record_permissions.allowEdit && quickedit_record_permissions_loading == false}",i.body.push({type:"service",body:[{type:"tpl",tpl:instance.t("frontend_records_no_allowedit"),visibleOn:"${!quickedit_record_permissions.allowEdit && quickedit_record_permissions_loading == false}"},{type:"spinner",showOn:"${quickedit_record_permissions_loading}"}],onEvent:{init:{actions:[{actionType:"custom",script:`\n crudScoped = event.context.scoped.getComponentById('${n.crudId}');\n const selectedItems = crudScoped && crudScoped.control.getSelected();\n doAction({\n "componentId": "${a}",\n "actionType": "setValue",\n "args": {\n "value": {\n selectedItems\n }\n }\n });\n `},{actionType:"setValue",componentId:a,args:{value:{quickedit_record_permissions_loading:!0}}},{actionType:"ajax",args:{api:{url:"${context.rootUrl}/service/api/@${objectName}/recordPermissions/${_id}",method:"get",headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"},cache:3e4,messages:{failed:"失败了呢。。"}}},expression:"${!recordPermissions.modifyAllRecords}"},{actionType:"setValue",componentId:a,args:{value:{quickedit_record_permissions_loading:!1}}},{actionType:"setValue",componentId:a,args:{value:{quickedit_record_permissions:"${recordPermissions.modifyAllRecords ? {'allowEdit': true} : event.data}"}}}]}}}),"avatar"!=r.type&&"image"!=r.type&&"file"!=r.type&&o&&i.body.push({name:"isBatchEdit",type:"checkbox",option:[{type:"tpl",tpl:"更新${COUNT(selectedItems)}个选定记录"},{type:"spinner",showOn:"${batchPermissionLoading}",size:"sm",className:"mr-4"}],visibleOn:"${ARRAYSOME(selectedItems, item => item._id === _id) && COUNT(selectedItems)>1 && quickedit_record_permissions.allowEdit && quickedit_record_permissions_loading == false}",disabledOn:"${batchPermissionLoading}",onEvent:{change:{actions:[{actionType:"setValue",componentId:a,args:{value:{batchPermissionLoading:!0}},expression:"${event.data.value}"},{actionType:"ajax",args:{api:{url:"${context.rootUrl}/graphql",method:"post",headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"},data:{query:'{rows:${objectName}(filters:["_id","in",${selectedItems | pick:_id | split | json}]){_id,_permissions{allowEdit}}}'},adaptor:"\n const noPermission = [];\n payload.data.rows.forEach(function (row) {\n if(!row._permissions.allowEdit){\n noPermission.push(row._id);\n }\n })\n payload.data.noPermission = noPermission;\n return payload;\n "}},expression:"${event.data.value && !recordPermissions.modifyAllRecords}"},{actionType:"setValue",componentId:a,args:{value:{batchPermissionLoading:!1}},expression:"${event.data.value}"},{actionType:"dialog",dialog:{title:"记录权限",showCloseButton:!1,body:[{type:"tpl",tpl:"当前选中记录中,有${COUNT(noPermission)}条记录无编辑权限,是否需要批量编辑其他记录?"}],onEvent:{confirm:{actions:[{actionType:"custom",script:`\n const noPermission = event.data.noPermission;\n const crudComponent = event.context.scoped.getComponentById("${n.crudId}");\n let selectedItems = crudComponent && crudComponent.props.store.selectedItems.concat();\n noPermission.forEach(function (item) {\n crudComponent && crudComponent.unSelectItem(_.find(selectedItems,{_id:item}));\n _.remove(selectedItems, (selected) => selected._id === item);\n })\n doAction({\n "componentId": "${a}",\n "actionType": "setValue",\n "args": {\n "value": {\n selectedItems\n }\n }\n });\n `},{actionType:"setValue",componentId:a,args:{value:{isBatchEdit:!0}}}]},cancel:{actions:[{actionType:"setValue",componentId:a,args:{value:{isBatchEdit:!1}}}]}}},expression:"${COUNT(event.data.noPermission)>0}"}]}}})}else i=!1;"lookup"!=r.type||o||(i=!1),"file"==r.type&&r.multiple&&(i=!1),"location"==r.type&&(i=!1),"color"==r.type&&(i={type:"input-color"})}return i}function getFieldWidth(e){const t=null;return"string"==typeof e?isNaN(e)?e||t:Number(e)||t:"number"==typeof e?e:t}async function getColumnItemOnClick(e,t){let n=t.objectName;e.is_name||e.name===t.labelFieldName||(n=e.reference_to);const r=await getPage({type:"record",appId:t.appId,objectName:n,formFactor:t.formFactor}),o=r?Object.assign({},r.schema,{recordId:`\${${t.idFieldName}}`,data:{...r.schema.data,_inDrawer:!0,recordLoaded:!1,recordId:`\${${t.idFieldName}}`,_lookupObjectName:t.objectName}}):{type:"steedos-record-detail",objectApiName:"${objectName}",recordId:`\${${t.idFieldName}}`,showBackButton:!1,showButtons:!0,data:{_inDrawer:!0,recordLoaded:!1,_lookupObjectName:t.objectName}};return e.is_name||e.name===t.labelFieldName||(o.objectApiName=e.reference_to,o.recordId=`\${_display.${e.name}.value}`),{click:{actions:[{actionType:"drawer",drawer:{type:"drawer",title:"&nbsp;",headerClassName:"hidden",size:"lg",width:window.drawerWidth||"70%",bodyClassName:"p-0 m-0 bg-gray-100",closeOnEsc:!0,closeOnOutside:!0,resizable:!0,actions:[],body:[o],className:"steedos-record-detail-drawer app-popover",id:"u:fc5f055afa8c"},preventDefault:!0}]}}}async function getTableColumns(e,t,n){const r=[];n.isLookup||n.isInputTable||n.enable_tree||r.push({name:"_index",type:"text",width:32,placeholder:""});const o=n.permissions?.allowEdit&&!n.isLookup&&0!=n.enable_inline_edit;for(const a of t){if(a.hidden||a.extra)continue;const t=o?await getQuickEditSchema(e,a,n):o;let i=`steedos-table-${a.type}-field`;"Safari"===getBowserType()||1!=a.wrap?i+=" whitespace-nowrap ":i+=" break-words ","object"==typeof a.amis?.className?i={[i]:"true",...a.amis.className}:"string"==typeof a.amis?.className&&(i=`${i} ${a.amis.className} `);let s,l=lodash.exports.clone(a.amis);delete l?.className;let c=!!(window&&window.nw&&window.nw.require);if((a.is_name||a.name===n.labelFieldName)&&"cms_files"===n.objectName&&c){const e=`\n var data = event.data;\n var file_name = data.versions ? data.name : "${a.label}";\n var file_id = data.versions && data.versions[0] && data.versions[0]._id;\n window.previewFile && window.previewFile({file_name, file_id});\n `;s=Object.assign({},{type:"button",label:`<%=data.versions ? data.name : "${a.label}"%>`,className:i,level:"link",onEvent:{click:{actions:[{args:{},actionType:"custom",script:e,expression:"!!(window && window.nw && window.nw.require)"}]}}},l)}else if("toggle"===a.type)s=Object.assign({},{type:"switch",name:a.name,label:a.label,width:getFieldWidth(a.width),toggled:a.toggled,static:!0,className:i},l,{name:a.name});else if("avatar"===a.type||"image"===a.type||"file"===a.type)s=Object.assign({},{type:"switch",name:a.name,label:a.label,width:getFieldWidth(a.width),toggled:a.toggled,static:!0,className:i,...await getAmisFileReadonlySchema(a)},l);else if("select"===a.type){const e=getSelectMap(a.options);s=Object.assign({},{type:"static-mapping",name:a.name,label:a.label,map:e,sortable:a.sortable,width:getFieldWidth(a.width),toggled:a.toggled,className:i,inputClassName:"inline",static:!0},l,{name:a.name})}else if("lookup"===a.type||"master_detail"===a.type)s=Object.assign({},{type:"static-wrapper",name:a.name,label:a.label,sortable:a.sortable,width:getFieldWidth(a.width),toggled:a.toggled,className:i,size:"none",inputClassName:"inline",body:{type:"steedos-field",static:!0,isLookupInTable:!0,config:{type:"lookup",reference_to:a.reference_to,name:a.name,is_name:a.is_name,label:null,multiple:a.multiple,amis:Object.assign({},l,{label:null})}}},l,{name:a.name});else{const e=await getFieldTpl(a,n);let t="static-text";if(e?t="static":"html"===a.type?t="static-markdown":"url"===a.type&&(t=a.show_as_qr?"static-qr-code":"input-url"),"textarea"===a.type&&(i+="min-w-56"),!a.hidden&&!a.extra){s=Object.assign({},{name:a.name,label:a.label,sortable:a.sortable,width:getFieldWidth(a.width),type:t,tpl:e,toggled:a.toggled,className:i,inputClassName:"inline",static:!0,options:"html"===a.type?{html:!0}:null},l,{name:a.name}),"color"===a.type&&(s.type="color",s.defaultColor=null);let r=!1;r=n.isRelated&&(a.is_name||a.name===n.labelFieldName),window.innerWidth>=768&&r&&(s.onEvent=await getColumnItemOnClick(a,n))}}s&&(t&&(s.quickEdit=t,s.quickEditEnabledOn="${is_system !== true}"),s.id=`${n.objectName}_${a.name}_\${_index}`,r.push(s))}if(!n.isLookup&&!n.isInputTable&&!lodash.exports.some(r,{name:n.labelFieldName})){const e=Router.getObjectDetailPath({...n,formFactor:n.formFactor,appId:"${appId}",objectName:n.objectName||"${objectName}",recordId:`\${${n.idFieldName}}`});r[0].type="tpl",r[0].tpl=`<a href="${e}">\${${r[0].name}}</a>`}return r}function getMobileLines(e){let t=[],n=[],r=!1,o=!0,a="",i="flex items-center justify-between mb-1";return e.forEach((function(e){var s;r&&t.length<3&&(t.push({type:"wrapper",body:n,size:"none",className:i}),n=[]),o?(a="steedos-listview-item-left truncate",e.field.is_wide&&(a="steedos-listview-item-wide"),0===t.length&&(a+=" font-bold text-gray-800")):a="steedos-listview-item-right truncate ml-2 flex flex-shrink-0",s="object"==typeof e.field.amis?.className?{[a]:"true",...e.field.amis.className}:"string"==typeof e.field.amis?.className?`${a} ${e.field.amis.className} `:a,n.push({type:"tpl",tpl:e.tpl,className:s}),e.field.is_wide?(o=!0,r=!0):(o=!o,r=o)})),n.length&&t.length<3&&t.push({type:"wrapper",body:n,size:"none",className:i}),t}async function getMobileTableColumns(e,t){const n=[];let r={},o=[];for(const n of e){let e="";n.is_name||n.name===t.labelFieldName?(r=n,t=Object.assign({},t,{onlyDisplayLookLabel:!0}),e=await getFieldTpl(n,t)):"avatar"===n.type||"image"===n.type||"file"===n.type?e=`\${_display.${n.name}.name}`:("lookup"!==n.type&&"master_detail"!==n.type||(t=Object.assign({},t,{onlyDisplayLookLabel:!0})),e=await getFieldTpl(n,t)),e||(e=`\${${n.name}}`),n.hidden||n.extra||o.push({field:n,tpl:e})}const a=getNameTplUrl(r,t),i=getMobileLines(o);let s={name:r.name,label:"split"==t.displayAs?"":r.label,sortable:r.sortable,type:"button",level:"link",actionType:"link",link:a,innerClassName:{"steedos-listview-item block text-gray-500":"true","max-w-[360px]":"${display == 'split'}"},body:{type:"wrapper",body:i,size:"none",className:"p-1"}};return"cms_files"===t.objectName&&(s=window.Meteor?.isCordova?{...s,actionType:"",link:"",onEvent:{click:{actions:[{script:'\n let cms_url = \'\';\n let value = event.data.versions[0];\n if(value){\n if(value.url){\n cms_url = value.url;\n }else{\n cms_url = Steedos.absoluteUrl("/api/files/files/"+value+"?download=true");\n }\n }\n Steedos.cordovaDownload(encodeURI(cms_url), event.data.name);\n ',actionType:"custom"}],weight:0}}}:{...s,actionType:"",link:"",onEvent:{click:{actions:[{actionType:"link",args:{link:a}}],weight:0}}}),n.push(s),n}function getDefaultParams$1(e){return{perPage:e.top||e.perPage||config.listView.perPage}}function getButtonVisibleOn$1(e){let t=e.visible;if(e._visible&&(t=e._visible),lodash.exports.isBoolean(t)&&(t=t.toString()),t){if(t.trim().startsWith("function")){t=t.replace("function","function __visible");return`(function _visible(){try{return (${t})(objectName, typeof _id === 'undefined' ? null: _id, typeof record === 'undefined' ? (typeof recordPermissions === 'undefined' ? {} : recordPermissions) : record.recordPermissions, data)}catch(e){console.error(e)}})()`}return t}if("amis_button"===e.type){const t=e.amis_schema;if(t&&t.body&&t.body.length>0){return t.body[0].visibleOn}}}async function getTableOperation(e){const t=e.buttons,n=[];if(lodash.exports.each(t,(e=>{lodash.exports.isBoolean(e.visible)&&(e.visible=e.visible.toString()),n.push({type:"steedos-object-button",name:e.name,objectName:e.objectName,visibleOnAlias:getButtonVisibleOn$1(e),className:"antd-Button--default"})})),!(n.length<1))return{type:"operation",label:"&nbsp;",fixed:"right",labelClassName:"text-center",className:"text-center steedos-listview-operation w-10 is-sticky is-sticky-right is-sticky-first-right",buttons:[{type:"steedos-dropdown-button",label:"xxx",buttons:n,placement:"bottomRight",overlayClassName:"border rounded !min-w-[160px]",trigger:["click"],id:"u:c2140a365019",onOpenApi:{url:"${context.rootUrl}/service/api/@${objectName}/recordPermissions/${_id}",method:"get",requestAdaptor:"api.data={}; return api;",headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"},adaptor:"\n payload = {\n record: {\n recordPermissions: payload\n }\n };\n return payload;\n "}}]}}async function getDefaultCrudCard(e,t){let n,r=t?.labelFieldName||"name",o=[];e.forEach((function(e){delete e.quickEdit,delete e.width,e.name===r?n=e:"_index"!==e.name&&o.push(e)}));let a={header:{title:n.tpl},body:o,toolbar:[]};if(!("SMALL"===t.formFactor||["split"].indexOf(t.displayAs)>-1)){let e=await getTableOperation(t);e&&(e.className+=" inline-block w-auto"),a.toolbar.push(e)}return a}async function getTableSchema$1(e,t,n){n||(n={});let{isLookup:r,hiddenColumnOperation:o}=n;const a=n.defaults,i=a&&a.listSchema||{};let s=[],l="SMALL"===n.formFactor||["split"].indexOf(n.displayAs)>-1;if(r&&(l=!1),i.mode&&"table"!==i.mode&&(l=!1),l)s=await getMobileTableColumns(t,n);else{if(s=await getTableColumns(e,t,n),"cards"===i.mode){let e=i.card;return e||(e=await getDefaultCrudCard(s,n)),{mode:"cards",perPageAvailable:[20,50,100,500],name:"thelist",headerToolbarClassName:"py-2 px-2 border-gray-300 border-solid border-b",className:"",draggable:!1,card:e,syncLocation:!1,keepItemSelectionOnPageChange:!0,checkOnItemClick:!!r,labelTpl:`\${${n.labelFieldName}}`,autoFillHeight:!1,columnsTogglable:!1,...getDefaultParams$1(n)}}if(!r&&!o){const e=await getTableOperation(n);s.push(e)}}const c={};return n.enable_tree&&(c.expandConfig={expand:"first"}),{mode:"table",perPageAvailable:[20,50,100,500],name:"thelist",headerToolbarClassName:"py-2 px-2 border-gray-300 border-solid border-b",className:"",draggable:!1,columns:s,syncLocation:!1,keepItemSelectionOnPageChange:!0,checkOnItemClick:!!r,labelTpl:`\${${n.labelFieldName}}`,autoFillHeight:!1,columnsTogglable:!1,...c,...getDefaultParams$1(n)}}function getScriptForAddUrlPrefixForImgFields(e,t){let n=[],r={};return e.forEach((e=>{lodash.exports.includes(["image","avatar"],e.type)&&(n.push(e.name),r[e.name]={name:e.name,type:e.type,multiple:e.multiple})})),n.length?`\n // image字段值添加URL前缀\n let imgFieldsKeys = ${JSON.stringify(n)};\n let imgFields = ${JSON.stringify(r)};\n imgFieldsKeys.forEach((item)=>{\n let imgFieldValue = data[item];\n let imgFieldDisplayValue = data._display && data._display[item];\n if(imgFieldValue && imgFieldValue.length){\n let fieldProps = imgFields[item];\n if(fieldProps.multiple){\n if(imgFieldDisplayValue instanceof Array){\n data[item] = imgFieldDisplayValue.map((i)=>{ \n const url = window.getImageFieldUrl(i.url, ${t});\n return url;\n });\n }\n }else{\n const url = imgFieldDisplayValue && window.getImageFieldUrl(imgFieldDisplayValue.url, ${t});\n data[item] = url;\n }\n }\n })\n `:""}instance.use(initReactI18next).init({resources:resources,lng:locale,interpolation:{escapeValue:!1}});var __assign=function(){return __assign=Object.assign||function(e){for(var t,n=1,r=arguments.length;n<r;n++)for(var o in t=arguments[n])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e},__assign.apply(this,arguments)};function createObject(e,t,n){e&&Object.isFrozen(e)&&(e=cloneObject(e));var r=e?Object.create(e,__assign(__assign({},n),{__super:{value:e,writable:!1,enumerable:!1}})):Object.create(Object.prototype,n);return t&&isObject(t)&&Object.keys(t).forEach((function(e){return r[e]=t[e]})),r}function cloneObject(e,t){void 0===t&&(t=!0);var n=e&&e.__super?Object.create(e.__super,{__super:{value:e.__super,writable:!1,enumerable:!1}}):Object.create(Object.prototype);return t&&e&&Object.keys(e).forEach((function(t){return n[t]=e[t]})),n}function isObject(e){var t=typeof e;return e&&"string"!==t&&"number"!==t&&"boolean"!==t&&"function"!==t&&!Array.isArray(e)}async function getListBody(e,t){const n=[];for(const r of e){const e=await getFieldTpl(r,t);let o="text";e&&(o="tpl"),r.hidden||r.extra||n.push({name:r.name,label:r.label,sortable:r.sortable,width:r.width,type:o,tpl:e,toggled:r.toggled})}return{type:"hbox",columns:n}}function getDefaultParams(e){return{perPage:e.top||e.perPage||20}}async function getListSchema$1(e,t){return{mode:"list",name:"thelist",draggable:!1,headerToolbar:["reload"],syncLocation:!1,keepItemSelectionOnPageChange:!0,checkOnItemClick:!1,labelTpl:"${name}",listItem:{body:[...(await getListBody(e,t)).columns],actions:!1===t.actions?null:[{icon:"fa fa-eye",label:instance.t("frontend_form_view"),type:"button",actionType:"link",link:Router.getObjectDetailPath({formFactor:t.formFactor,appId:t.appId,objectName:t.tabId,listView:t.listView,recordId:"${_id}"})}]},...getDefaultParams(t)}}"function"==typeof SuppressedError&&SuppressedError;const getSchema$5=async(e,t)=>{const n=`\n let formSchema = {\n "type": "steedos-object-form",\n "label": "对象表单",\n "objectApiName": "\${objectName}",\n "recordId": "",\n "mode": "edit",\n };\n\n if (payload && payload.schema) {\n formSchema = _.isString(payload.schema) ? JSON.parse(payload.schema) : payload.schema;\n }\n\n const fields = ${JSON.stringify(e.fields)};\n const selectedRowResponseResult = api.body.selectedRowResponseResult;\n let defaultData = {}; \n\n if(!_.isEmpty(selectedRowResponseResult)){\n const fieldsKeys = _.keys(fields);\n // 如果新建记录时复制的数据中有omit或其他不相关字段数据时不应该一起保存到数据库,\n // 原规则见:https://github.com/steedos/steedos-frontend/issues/297\n _.forEach(selectedRowResponseResult, (val, key) => {\n if (fieldsKeys.indexOf(key) > -1 && fields[key].omit !== true && key != 'owner') {\n defaultData[key] = val;\n }\n })\n }\n\n const _master = api.body._master;\n if(_master && _master._isRelated){\n const relatedKey = _master.relatedKey;\n const masterObjectName = _master.objectName;\n const recordId = _master.recordId || _master.record._id;\n let relatedKeySaveValue = recordId;\n const relatedField = fields[relatedKey];\n if(relatedField && relatedField.reference_to_field && relatedField.reference_to_field !== '_id'){\n relatedKeySaveValue = _master.record[relatedField.reference_to_field];\n }\n let relatedKeyValue; \n if(relatedField && !_.isString(relatedField.reference_to)){\n relatedKeyValue = { o: masterObjectName, ids: [relatedKeySaveValue] };\n }else if (relatedField && relatedField.multiple) {\n relatedKeyValue = [relatedKeySaveValue];\n } else {\n relatedKeyValue = relatedKeySaveValue;\n }\n defaultData[relatedKey]=relatedKeyValue;\n }\n\n if(!_.isEmpty(defaultData)){\n if(payload.schema){\n // 表单微页面第一层要求是page\n formSchema.data.defaultData = defaultData;\n }else{\n formSchema.defaultData = defaultData;\n }\n }\n return {\n data: formSchema\n };\n `;return{type:"service",body:[{type:"button",level:"primary",label:instance.t("frontend_form_new"),id:"u:standard_new",onEvent:{click:{weight:0,actions:[{actionType:"custom",script:"\n const isLookup = event.data.isLookup;\n if(isLookup){\n // lookup弹出窗口的新建功能不需要支持复制新建\n return;\n }\n const uiSchema = event.data.uiSchema;\n const objectName = event.data.objectName;\n const crudId = event.data.crudId || \"listview_\" + objectName;\n const listViewRef = event.context.scoped.getComponentById(crudId);\n const selectedItems = listViewRef && listViewRef.props.store.toJSON().selectedItems || [];\n event.data.selectedIds = _.map(selectedItems, uiSchema.idFieldName || '_id');\n "},{actionType:"ajax",outputVar:"selectedRowResponseResult",args:{api:{url:"${context.rootUrl}/api/v1/${uiSchema.name}/${selectedIds|first}",method:"get"}},expression:"${selectedIds.length > 0}"},{actionType:"dialog",dialog:{type:"dialog",data:{$master:"$$",_master:"${_master}","_master._isRelated":"${_isRelated}","_master.relatedKey":"${relatedKey}",appId:"${appId}",objectName:"${objectName}",context:"${context}",global:"${global}",listViewId:"${listViewId}",displayAs:"${displayAs}",uiSchema:"${uiSchema}",isLookup:"${isLookup}",listName:"${listName}",selectedRowResponseResult:"${selectedRowResponseResult}",_lookupObjectName:"${_lookupObjectName}"},title:instance.t("frontend_form_new")+" ${uiSchema.label | raw}",body:[{type:"service",id:"u:1678e148c4d2",messages:{},schemaApi:{data:{isLookup:"${isLookup}",_master:"${_master}",url:"${context.rootUrl}/api/pageSchema/form?app=${appId}&objectApiName=${objectName}&formFactor=${formFactor}",selectedRowResponseResult:"${selectedRowResponseResult}"},url:"${context.rootUrl}/api/pageSchema/form?app=${appId}&objectApiName=${objectName}&formFactor=${formFactor}",method:"get",messages:{},headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"},requestAdaptor:"return { ...api, url: api.body.url }",adaptor:n}}],showCloseButton:!0,id:"u:e11347411d2d",closeOnEsc:!1,closeOnOutside:!1,size:"lg",actions:[{type:"button",actionType:"cancel",label:instance.t("frontend_form_cancel"),className:"form-btn-cancel"},{type:"button",label:instance.t("frontend_form_save_and_new"),actionType:"confirm",close:!1,id:"confirmAndNew",className:"form-btn-save_and_new"},{type:"button",actionType:"confirm",label:instance.t("frontend_form_save"),primary:!0,className:"form-btn-save"}]}}]}}}],regions:["body"],className:"p-0 border-0",id:"u:aef99d937b10"}};async function getObjectFieldsFilterFormSchema(e){e||(e={});return{type:"service",visibleOn:"this.filterFormSearchableFields && this.filterFormSearchableFields.length",className:"SMALL"===e.formFactor?"slds-filters__body p-0 mb-2 overflow-y-auto overflow-x-hidden":"slds-filters__body p-0 sm:grid sm:gap-4 sm:grid-cols-2 lg:grid-cols-3 xl:grid-cols-4 p-1",style:{"max-height":"SMALL"===e.formFactor?"30vh":"unset"},schemaApi:{method:"post",data:{$self:"$$",query:""},url:"/api/amis/health_check?reload=${filterFormSearchableFields|join}",adaptor:`\n if(payload.errors){\n payload.status = 2;\n payload.msg = window.t ? window.t(payload.errors[0].message) : payload.errors[0].message;\n }\n const selfData = api.body.$self;\n const uiSchema = selfData.uiSchema;\n const fields = uiSchema.fields;\n const filterFormSearchableFields = (selfData.filterFormSearchableFields || []).filter(function(item){\n return !!fields[item]\n });\n const resolveAll = function(values){\n payload.data = {\n "body": values\n };\n return payload;\n }\n\n const rejectAll = function(){\n console.warn("run function getFieldSearchable failed.");\n }\n\n return Promise.all(filterFormSearchableFields.map(function (item) {\n const field = _.clone(fields[item]);\n if (\n field && window.isFieldTypeSearchable(field.type)\n ) {\n var ctx = ${JSON.stringify(e)};\n const amisField = window.getFieldSearchable(field, fields, ctx);\n return amisField;\n }\n })).then(resolveAll, rejectAll);\n `,headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}}}}async function getObjectFieldsFilterBarSchema(e,t){t||(t={});const n=t.searchable_fields,r=!!t.auto_open_filter,o="btn_filter_form_search_"+(new Date).getTime(),a=await getObjectFieldsFilterFormSchema(t),i=t.keywordsSearchBoxName||"__keywords",s=`\n let isLookup = event.data.isLookup;\n let __lookupField = event.data.__lookupField;\n const scope = event.context.scoped;\n let crud = SteedosUI.getClosestAmisComponentByType(scope, "crud");\n var filterForm = scope.parent.parent.getComponents().find(function(n){\n return n.props.type === "form";\n });\n // 使用filterForm.getValues()的话,并不能拿到本地存储中的过滤条件,所以需要从event.data中取,因为本地存储中的过滤条件自动填充到表单上时filterForm.getValues()拿不到。\n let filterFormValues = event.data;\n filterFormValues = JSON.parse(JSON.stringify(filterFormValues)); //只取当层数据域中数据,去除__super层数据\n const changedFilterFormValues = _.pickBy(filterFormValues, function(n,k){return /^__searchable__/.test(k);});\n // 同步__changedFilterFormValues中的值\n // crud && crud.setData({__changedFilterFormValues: {}});\n let __changedFilterFormValuesKey = "__changedFilterFormValues";\n if(isLookup && __lookupField){\n let lookupTag = "__lookup__" + __lookupField.name + "__" + __lookupField.reference_to;\n if(__lookupField.reference_to_field){\n lookupTag += "__" + __lookupField.reference_to_field;\n }\n __changedFilterFormValuesKey += lookupTag;\n }\n if(crud){\n let crudData = crud.getData();\n crudData[__changedFilterFormValuesKey] = changedFilterFormValues;\n crud.setData(crudData);\n }\n filterForm.handleFormSubmit(event);\n // var filterFormValues = filterForm.getValues();\n // var listView = scope.parent.parent.parent.getComponents().find(function(n){\n // return n.props.type === "crud";\n // });\n // const removedValues = {};\n // // 设置搜索项中移除搜索项后,filterFormValues未把其字段的空值保存为own property,即hasOwnProperty属性中\n // // 这会造成handleFilterSubmit时把移除掉的搜索项字段之前的值加到过滤条件中\n // for(var k in filterFormValues){\n // if(filterFormValues[k] === "" && !filterFormValues.hasOwnProperty(k)){\n // removedValues[k] = null;\n // }\n // }\n // listView.handleFilterSubmit(Object.assign({}, removedValues, filterFormValues));\n // 点击搜索的时候自动收起搜索栏\n //触发amis crud 高度重算\n doAction({\n "actionType": "broadcast",\n "args": {\n "eventName": "@height.changed.${e.name}"\n },\n "data": {\n "timeOut": 500\n }\n });\n const filterService = filterForm.context.getComponents().find(function(n){\n return n.props.type === "service";\n });\n let showFieldsFilter = true;\n // const isMobile = window.innerWidth < 768;\n // if(event.data.__from_fields_filter_settings_confirm){\n // // 如果是从设置搜索项点击确认按钮触发的搜索事件不应该自动关闭搜索栏\n // showFieldsFilter = true;\n // }\n // else if(isMobile){\n // // 如果是手机端,点击搜索后自动关闭搜索栏\n // showFieldsFilter = false;\n // }\n // else if(event.data.displayAs === "split") {\n // // PC上分栏模式下的列表,始终按手机上效果处理,即自动关闭搜索栏\n // showFieldsFilter = false;\n // }\n // else if(window.innerHeight >= 1200){\n // // 高分辨率屏幕(2k+),列表高度比较高,没必要自动关闭搜索栏\n // showFieldsFilter = true;\n // }\n filterService.setData({showFieldsFilter});\n // resizeWindow();//已迁移到搜索栏表单提交事件中执行,因为表单项change后也会触发表单提交了\n let isFieldsFilterEmpty = SteedosUI.isFilterFormValuesEmpty(filterFormValues);\n let crudService = crud && SteedosUI.getClosestAmisComponentByType(crud.context, "service", {name: "service_object_table_crud"});\n crudService && crudService.setData({isFieldsFilterEmpty, showFieldsFilter});\n `,l=`\n // console.log("===onCancelScript=form==");\n let isLookup = event.data.isLookup;\n let __lookupField = event.data.__lookupField;\n const scope = event.context.scoped;\n var filterForm = scope.parent.parent.getComponents().find(function(n){\n return n.props.type === "form";\n });\n var filterFormValues = filterForm.getValues();\n let crud = SteedosUI.getClosestAmisComponentByType(scope, "crud");\n const removedValues = {};\n for(var k in filterFormValues){\n if(/^__searchable__/.test(k)){\n removedValues[k] = null;\n }\n }\n if(!event.data.isLookup){\n // 刷新浏览器后,filterFormValues值是空的,只能从本地存储中取出并重置为空值\n const listName = event.data.listName;\n const listViewPropsStoreKey = location.pathname + "/crud";\n let localListViewProps = sessionStorage.getItem(listViewPropsStoreKey);\n if(localListViewProps){\n localListViewProps = JSON.parse(localListViewProps);\n for(var k in localListViewProps){\n if(/^__searchable__/.test(k)){\n removedValues[k] = null;\n }\n }\n }\n }\n else{\n const keywordsSearchBoxName = "${i}";\n //lookup字段保留快速搜索条件\n removedValues[keywordsSearchBoxName] = filterFormValues[keywordsSearchBoxName];\n }\n filterForm.setValues(removedValues);//会把表单提交到toolbar的快速搜索区域,造成在快速搜索框中触发搜索时再次把搜索表单中的字段值清除掉的bug,已单独在快速搜索框那边添加搜索事件代码处理过了\n // 以下方法都无法实现清除表单值\n // filterForm.setValues({}, true)\n // filterForm.reset();\n // filterForm.handleAction({},{\n // "actionType": "setValue",\n // "args": {\n // "value": removedValues\n // }\n // });\n // 下面触发clear动作可以清除表单值,且不会把表单提交到toolbar的快速搜索区域,但是会把金额等范围字段清空成非范围字段\n // filterForm.handleAction({},{\n // "actionType": "clear"\n // });\n\n // 清除__changedFilterFormValues中的值\n // crud && crud.setData({__changedFilterFormValues: {}});\n let __changedFilterFormValuesKey = "__changedFilterFormValues";\n if(isLookup && __lookupField){\n let lookupTag = "__lookup__" + __lookupField.name + "__" + __lookupField.reference_to;\n if(__lookupField.reference_to_field){\n lookupTag += "__" + __lookupField.reference_to_field;\n }\n __changedFilterFormValuesKey += lookupTag;\n }\n if(crud){\n let crudData = crud.getData();\n crudData[__changedFilterFormValuesKey] = {};\n crud.setData(crudData);\n }\n filterForm.handleFormSubmit(event);\n // crud.handleFilterSubmit(removedValues);\n\n let filterFormService = SteedosUI.getClosestAmisComponentByType(filterForm.context, "service");\n filterFormService.setData({showFieldsFilter: !!!filterFormService.props.data.showFieldsFilter});\n //触发amis crud 高度重算\n doAction({\n "actionType": "broadcast",\n "args": {\n "eventName": "@height.changed.${e.name}"\n },\n "data": {\n "timeOut": 100\n }\n });\n \n // 移除搜索按钮上的红点\n // let crudService = scope.getComponentById("service_listview_" + event.data.objectName);\n let crudService = crud && SteedosUI.getClosestAmisComponentByType(crud.context, "service", {name: "service_object_table_crud"});\n crudService && crudService.setData({isFieldsFilterEmpty: true, showFieldsFilter: false});\n `,c=t.filter_form_data,u=`\n const searchableFields = ${JSON.stringify(n)};\n const autoOpenFilter = ${r};\n const objectName = data.objectName;\n const isLookup = data.isLookup;\n const listName = data.listName;\n let searchableFieldsStoreKey = location.pathname + "/searchable_fields";\n if(isLookup){\n searchableFieldsStoreKey += "/lookup/" + objectName;\n }\n searchableFieldsStoreKey = searchableFieldsStoreKey + "/" + (data.context && data.context.userId);\n let defaultSearchableFields = localStorage.getItem(searchableFieldsStoreKey);\n if(defaultSearchableFields){\n defaultSearchableFields = defaultSearchableFields.split(",");\n }\n if(_.isEmpty(defaultSearchableFields) && searchableFields){\n if(searchableFields.length){\n defaultSearchableFields = _.map(searchableFields, 'field');\n }\n }\n if(_.isEmpty(defaultSearchableFields) && data.uiSchema){\n let listView = data.uiSchema.list_views[data.listName];\n const sFields = listView && listView.searchable_fields;\n if(sFields && sFields.length){\n defaultSearchableFields = _.map(sFields, 'field');\n }\n }\n if(_.isEmpty(defaultSearchableFields) && data.uiSchema){\n defaultSearchableFields = _.map(\n _.sortBy(_.filter(_.values(data.uiSchema.fields), (field) => {\n return field.filterable;\n }), "sort_no"),\n "name"\n );\n }\n setData({ filterFormSearchableFields: defaultSearchableFields });\n if(isLookup){\n let filterFormValues = ${_.isObject(c)?JSON.stringify(c):'"'+c+'"'} || {};\n const isAmisFormula = typeof filterFormValues === "string" && filterFormValues.indexOf("\${") > -1;\n if (isAmisFormula){\n filterFormValues = AmisCore.evaluate(filterFormValues, data) || {};\n }\n if (_.isObject(filterFormValues) || !_.isEmpty(filterFormValues)){\n let fields = data.uiSchema && data.uiSchema.fields;\n filterFormValues = SteedosUI.getSearchFilterFormValues(filterFormValues, fields);\n setData({ ...filterFormValues });\n }\n // looup字段过滤器不在本地缓存记住过滤条件,所以初始始终隐藏过滤器\n setData({ showFieldsFilter: autoOpenFilter });\n }\n else{\n const listViewPropsStoreKey = location.pathname + "/crud";\n let localListViewProps = sessionStorage.getItem(listViewPropsStoreKey);\n if(localListViewProps){\n localListViewProps = JSON.parse(localListViewProps);\n let filterFormValues = _.pickBy(localListViewProps, function(n,k){\n return /^__searchable__/g.test(k);\n });\n if(!_.isEmpty(filterFormValues)){\n setData({ ...filterFormValues });\n const omitedEmptyFormValue = _.omitBy(filterFormValues, function(n){\n return _.isNil(n) \n || (_.isObject(n) && _.isEmpty(n)) \n || (_.isArray(n) && _.isEmpty(n.filter(function(item){return !_.isNil(item)})))\n || (_.isString(n) && n.length === 0);\n });\n // 有过滤条件时只显示搜索按钮上的红点,不自动展开搜索栏\n if(!_.isEmpty(omitedEmptyFormValue)){\n let scopeRef = SteedosUI.getRef(data.$scopeId);\n let crudService = scopeRef && scopeRef.parent.getComponentById("service_listview_" + data.objectName)\n crudService && crudService.setData({isFieldsFilterEmpty: false});\n // setData({ showFieldsFilter: true });//自动展开搜索栏\n }\n }\n }\n }\n `,d=`\n const data = context.props.data;\n const listName = data.listName;\n const objectName = data.objectName;\n const isLookup = data.isLookup;\n const value = data.fields;\n const scope = event.context.scoped;\n // 这里的filterForm不是name为"listview-filter-form"的内部form,而是crud自带的filter form\n const filterForm = scope.parent.parent.getComponents().find(function(n){\n return n.props.type === "form";\n });\n const filterService = filterForm.context.getComponents().find(function(n){\n return n.props.type === "service";\n });\n filterService.setData({ filterFormSearchableFields: value });\n let searchableFieldsStoreKey = location.pathname + "/searchable_fields";\n if(isLookup){\n searchableFieldsStoreKey += "/lookup/" + objectName;\n }\n searchableFieldsStoreKey = searchableFieldsStoreKey + "/" + (data.context && data.context.userId);\n localStorage.setItem(searchableFieldsStoreKey, value);\n\n // ===START===:当变更可搜索字段时,如果被移除的可搜索字段在本地存储中已经存入过滤条件中则应该清除本地存储中相关字段的过滤条件。\n const searchableFields = data.fields;\n let preSearchableFields = data.__super.fields;\n if(typeof preSearchableFields === "string"){\n preSearchableFields = preSearchableFields.split(",");\n }\n const removedFields = _.difference(preSearchableFields, searchableFields);\n\n // const getClosestAmisComponentByType = function (scope, type, name) {\n // // 递归children找到listview-filter-form\n // let re = scope.getComponents().find(function (n) {\n // return n.props.type === type && n.props.name === name;\n // });\n // if (re) {\n // return re;\n // }\n // else {\n // if (scope.children && scope.children.length) {\n // for (let i = 0; i < scope.children.length; i++) {\n // re = getClosestAmisComponentByType(scope.children[i], type, name);\n // if (re) {\n // break;\n // }\n // }\n // return re;\n // }\n \n // }\n // }\n // // 这里第二层form才是真正要提交到crud过滤条件的form\n // filterInnerForm = getClosestAmisComponentByType(filterForm.context, "form", "listview-filter-form");\n\n const filterFormValues = filterForm.getValues();\n let removedKeys = [];\n _.each(filterFormValues, function(n,k){\n // __searchable__开头的不在searchableFields范围则清除其值\n let isRemoved = !!removedFields.find(function(fieldName){\n return new RegExp("__searchable__.*" + fieldName + "$").test(k);\n });\n if(isRemoved){\n removedKeys.push(k);\n }\n });\n const removedValues = {};\n removedKeys.forEach(function(key){\n removedValues[key] = null;\n });\n filterForm.setValues(removedValues);//这里使用filterInnerForm也可以\n\n if(isLookup){\n return;\n }\n \n // 列表视图crud支持本地缓存,所以需要进一步清除浏览器本地缓存里面用户在可搜索项中移除的字段值\n const listViewPropsStoreKey = location.pathname + "/crud";\n let localListViewProps = sessionStorage.getItem(listViewPropsStoreKey);\n if(localListViewProps){\n localListViewProps = JSON.parse(localListViewProps);\n _.each(localListViewProps, function(n,k){\n // __searchable__开头的不在searchableFields范围则清除其值\n let isRemoved = !!removedFields.find(function(fieldName){\n return new RegExp("__searchable__.*" + fieldName + "$").test(k);\n });\n if(isRemoved){\n delete localListViewProps[k];\n }\n });\n sessionStorage.setItem(listViewPropsStoreKey, JSON.stringify(localListViewProps));\n }\n //触发amis crud 高度重算\n doAction({\n "actionType": "broadcast",\n "args": {\n "eventName": "@height.changed.${e.name}"\n },\n "data": {\n "timeOut": 100\n }\n });\n // ===END===\n `;return{type:"service",name:"service_listview_filter_form",data:{},dataProvider:{inited:u},body:{type:"wrapper",body:{type:"wrapper",body:[a,{type:"wrapper",body:{type:"wrapper",body:[{type:"button",level:"primary",id:o,label:instance.t("frontend_fields_filter_button_search"),icon:"fa fa-search",onEvent:{click:{actions:[{actionType:"custom",script:s}]}}},{type:"button",label:instance.t("frontend_form_reset"),name:"btn_filter_form_cancel",onEvent:{click:{actions:[{actionType:"custom",script:l}]}}},{type:"button",label:instance.t("frontend_fields_filter_button_settings"),onEvent:{click:{actions:[{actionType:"dialog",dialog:{type:"dialog",size:"md",title:instance.t("frontend_fields_filter_button_settings"),body:[{type:"form",title:"",body:[{label:"",type:"transfer",name:"fields",id:"u:92c0b3cccca0",source:{method:"get",url:"${context.rootUrl}/service/api/amis-metadata-objects/objects/${objectName}/fields/options",dataType:"json",headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"},data:{$self:"$$"},requestAdaptor:"",adaptor:"\n if(payload.errors){\n payload.status = 2;\n payload.msg = window.t ? window.t(payload.errors[0].message) : payload.errors[0].message;\n }\n const selfData = api.body.$self;\n const uiSchema = selfData.uiSchema;\n const fields = uiSchema.fields;\n const options = ((payload.data && payload.data.options) || []).filter(function(item){\n let field = fields[item.value];\n // TODO: 暂时禁用location类型字段的列表搜索\n return !!field && window.isFieldTypeSearchable(field.type) && field.type !== 'location'\n });\n payload.data = {\n \"options\": options\n };\n return payload;\n "},options:[],required:!0,placeholder:"-",className:"col-span-2 m-0",checkAll:!1,searchable:!0,sortable:!0,joinValues:!1,extractValue:!0,multiple:!0}],id:"u:e5ac506d5683",mode:"normal",persistData:!1,promptPageLeave:!0,name:"form",debug:!1,actions:[],panelClassName:"m-0",bodyClassName:"p-4",className:"steedos-amis-form"}],actions:[{type:"button",label:instance.t("frontend_form_cancel"),onEvent:{click:{actions:[{componentId:"",args:{},actionType:"closeDialog"}]}},id:"u:4e447b5ca72a"},{type:"button",label:instance.t("frontend_form_confirm"),onEvent:{click:{actions:[{actionType:"custom",script:d},{componentId:"",args:{},actionType:"closeDrawer"}]}},id:"u:14e7388fecd3",level:"primary"}],closeOnEsc:!1,closeOnOutside:!1,showCloseButton:!0,data:{"&":"$$",objectName:"${objectName}",listName:"${listName}",listViewId:"${listViewId}",uiSchema:"${uiSchema}",isLookup:"${isLookup}",context:"${context}",fields:"${filterFormSearchableFields}"}}}]}},level:"link"}],size:"xs",className:"space-x-2"},size:"xs",className:"slds-filters__footer slds-grid slds-shrink-none flex justify-between p-0"}],size:"xs",className:"slds-filters px-0"},size:"xs",className:"p-0",visibleOn:"this.showFieldsFilter"},className:"bg-white"}}const getNewListviewButtonSchema=()=>({type:"button",label:instance.t("frontend_listview_control_new_label"),className:"steedos-listview-new-button",onEvent:{click:{weight:0,actions:[{dialog:{type:"dialog",title:instance.t("frontend_listview_control_new_title"),data:{all:"${uiSchema.list_views.all}",list_view:"${uiSchema.list_views[listName]}",appId:"${appId}",global:"${global}",targetObjectName:"${objectName}",context:"${context}"},body:[{type:"steedos-object-form",label:"对象表单",objectApiName:"object_listviews",recordId:"",mode:"edit",layout:"normal",defaultData:{"&":"${list_view}",name:"",label:"",filters:"",shared:!1,object_name:"${targetObjectName}",_id:"",shared_to:null,shared_to_organizations:null,locked:!1,owner:null,company_id:null,company_ids:null,is_system:!1},fieldsExtend:fieldsExtend$5(),fields:fields$1(),onEvent:{submitSucc:{weight:0,actions:[{args:{url:"${context.rootUrl}/app/${appId}/${targetObjectName}/grid/listview_${result.data.recordId|lowerCase}",blank:!1},actionType:"url"},{actionType:"custom",script:"window.location.reload();"}]}},messages:{success:instance.t("frontend_listview_control_new_message_success"),failed:instance.t("frontend_listview_control_new_message_failed")}}],showCloseButton:!0,showErrorMsg:!0,showLoading:!0,closeOnEsc:!1,dataMapSwitch:!1,size:"lg"},actionType:"dialog"}]}}});function fields$1(){return["label","name","object_name","filter_scope","show_count","columns","sort","filters","mobile_columns","searchable_fields","is_system","shared","shared_to","shared_to_organizations"]}function fieldsExtend$5(){return{group:"",label:{group:"",is_wide:!0},name:{group:"",amis:{hidden:!0,required:!1}},object_name:{group:"",amis:{hidden:!0}},filter_scope:{group:"",amis:{hidden:!0,required:!1}},columns:{group:"",amis:{hidden:!0,required:!1}},mobile_columns:{group:"",amis:{hidden:!0,required:!1}},searchable_fields:{group:"",amis:{hidden:!0,required:!1}},filter_fields:{group:"",amis:{hidden:!0,required:!1}},scrolling_mode:{group:"",amis:{hidden:!0,required:!1}},sort:{group:"",amis:{hidden:!0,required:!1}},show_count:{group:"",amis:{hidden:!0,required:!1}},type:{group:"",amis:{hidden:!0,required:!1}},shared:{group:"",amis:{visibleOn:"${false}"}},shared_to:{group:"",amis:{type:"radios",inline:!1}},shared_to_organizations:{group:""},filters:{group:"",amis:{hidden:!0}}}}async function getObjectListHeaderFieldsFilterBar(e,t,n){return await getObjectFieldsFilterBarSchema(e,n)}const getCopyListviewButtonSchema=()=>({type:"button",label:instance.t("frontend_listview_control_clone_label"),onEvent:{click:{weight:0,actions:[{dialog:{type:"dialog",title:instance.t("frontend_listview_control_clone_title"),data:{listName:"${listName}",targetObjectName:"${objectName}",list_view:"${uiSchema.list_views[listName]}",appId:"${appId}",global:"${global}",context:"${context}"},body:[{type:"steedos-object-form",label:"对象表单",objectApiName:"object_listviews",recordId:"",mode:"edit",layout:"normal",defaultData:{"&":"${list_view}",name:"",label:instance.t("frontend_listview_control_clone_defaultData_label_start")+" ${list_view.label} "+instance.t("frontend_listview_control_clone_defaultData_label_end"),shared:!1,object_name:"${targetObjectName}",_id:"",shared_to:null,shared_to_organizations:null,locked:!1,owner:null,company_id:null,company_ids:null,is_system:!1},fieldsExtend:fieldsExtend$4(),fields:fields(),onEvent:{submitSucc:{weight:0,actions:[{args:{url:"${context.rootUrl}/app/${appId}/${targetObjectName}/grid/listview_${result.data.recordId|lowerCase}",blank:!1},actionType:"url"},{actionType:"custom",script:"window.location.reload();"}]}}}],showCloseButton:!0,showErrorMsg:!0,showLoading:!0,closeOnEsc:!1,dataMapSwitch:!1,size:"lg"},actionType:"dialog"}]}}});function fields(){return["label","name","object_name","filter_scope","show_count","columns.$.field","columns.$.width","sort.$.field_name","sort.$.order","filters","mobile_columns.$.field","searchable_fields.$.field","is_system","shared","shared_to","shared_to_organizations"]}function fieldsExtend$4(){return{label:{group:"",is_wide:!0},name:{is_wide:!0,amis:{hidden:!0}},object_name:{amis:{hidden:!0}},filter_scope:{amis:{hidden:!0}},columns:{amis:{hidden:!0}},filter_fields:{amis:{hidden:!0}},scrolling_mode:{amis:{hidden:!0}},sort:{amis:{hidden:!0}},show_count:{amis:{hidden:!0}},type:{amis:{hidden:!0}},shared:{group:"",amis:{visibleOn:"${false}"}},shared_to:{group:"",amis:{type:"radios",inline:!1}},shared_to_organizations:{group:""},filters:{group:"",amis:{hidden:!0}}}}const getRenameListviewButtonSchema=()=>({type:"button",label:instance.t("frontend_listview_control_rename_label"),disabledOn:"!((global.user.is_space_admin || global.userId == uiSchema.list_views[listName].owner) && !!uiSchema.list_views[listName].owner)",onEvent:{click:{weight:0,actions:[{dialog:{type:"dialog",title:instance.t("frontend_listview_control_rename_title"),data:{targetObjectName:"${objectName}",recordId:"${uiSchema.list_views[listName]._id}",appId:"${appId}",context:"${context}"},body:[{type:"steedos-object-form",label:"对象表单",objectApiName:"object_listviews",recordId:"${recordId}",layout:"normal",mode:"edit",fields:["label"],fieldsExtend:'{\n "label":{\n "is_wide": true\n }\n}',onEvent:{submitSucc:{weight:0,actions:[{args:{url:"${context.rootUrl}/app/${appId}/${targetObjectName}/grid/${name}",blank:!1},actionType:"url"},{actionType:"custom",script:"window.location.reload();"}]}}}],showCloseButton:!0,showErrorMsg:!0,showLoading:!0,size:"lg"},actionType:"dialog"}]}}}),getSetListviewShareButtonSchema=()=>({type:"button",label:instance.t("frontend_listview_control_share"),disabledOn:"!(global.user.is_space_admin && !!uiSchema.list_views[listName].owner)",onEvent:{click:{weight:0,actions:[{dialog:{type:"dialog",title:instance.t("frontend_listview_control_share"),data:{recordId:"${uiSchema.list_views[listName]._id}",appId:"${appId}",global:"${global}",context:"${context}"},body:[{type:"steedos-object-form",label:"对象表单",objectApiName:"object_listviews",recordId:"${recordId}",mode:"edit",layout:"normal",fields:["shared_to","shared_to_organizations"],fieldsExtend:fieldsExtend$3()}],showCloseButton:!0,showErrorMsg:!0,showLoading:!0,closeOnEsc:!1,dataMapSwitch:!1,size:"md"},actionType:"dialog"}]}}});function fieldsExtend$3(){return{shared_to:{group:"",amis:{type:"radios",inline:!1}},shared_to_organizations:{group:""}}}const getSetListviewFiltersButtonSchema=()=>({type:"button",label:instance.t("frontend_listview_control_filters"),disabledOn:"!((global.user.is_space_admin || global.userId == uiSchema.list_views[listName].owner) && !!uiSchema.list_views[listName].owner)",onEvent:{click:{weight:0,actions:[{dialog:{type:"dialog",title:instance.t("frontend_listview_control_filters"),data:{targetObjectName:"${objectName}",recordId:"${uiSchema.list_views[listName]._id}",listName:"${listName}",appId:"${appId}",context:"${context}"},body:[{type:"steedos-object-form",label:"对象表单",objectApiName:"object_listviews",recordId:"${recordId}",mode:"edit",fields:["filters"],initApiAdaptor:initApiAdaptor$2(),apiRequestAdaptor:apiRequestAdaptor$2(),fieldsExtend:fieldsExtend$2(),onEvent:{submitSucc:{weight:0,actions:[{actionType:"custom",script:"window.location.reload(); //doAction({'actionType': 'rebuild', 'componentId': `service_listview_${event.data.targetObjectName}`})"}]}}}],showCloseButton:!0,showErrorMsg:!0,showLoading:!0,closeOnEsc:!1,dataMapSwitch:!1,size:"lg"},actionType:"dialog"}]}}});function initApiAdaptor$2(){return"\n const recordId_tmp = api.body.recordId;\n let data_tmp;\n if (recordId_tmp) {\n data_tmp = payload.data;\n // 数据格式转换\n if (data_tmp) {\n if (data_tmp.filters && lodash.isString(data_tmp.filters)) {\n try {\n data_tmp.filters = JSON.parse(data_tmp.filters);\n } catch (e) { }\n }\n \n if (data_tmp.filters && lodash.isString(data_tmp.filters)) {\n data_tmp._filters_type_controller = 'function';\n } else {\n data_tmp._filters_type_controller = 'conditions'\n }\n \n if (data_tmp._filters_type_controller === 'conditions') {\n data_tmp._filters_conditions = window.amisConvert.filtersToConditions(data_tmp.filters || []);\n data_tmp.filters = data_tmp._filters_conditions;\n } else {\n data_tmp._filters_function = data_tmp.filters;\n }\n }\n }\n for (key in data_tmp) {\n if (data_tmp[key] === null) {\n delete data_tmp[key];\n }\n }\n payload.data = Object.assign(payload.data, data_tmp);\n delete payload.extensions;\n return payload;\n "}function apiRequestAdaptor$2(){return"\n const recordId = api.body.recordId;\n if (formData._filters_type_controller === 'conditions' && formData._filters_conditions) {\n formData.filters = window.amisConvert.conditionsToFilters(formData.filters);\n } else {\n formData.filters = formData._filters_function || null;\n }\n \n delete formData._filters_type_controller;\n delete formData._filters_conditions;\n delete formData._filters_function;\n \n query = 'mutation{record: ' + objectName + '__insert(doc: {__saveData}){_id}}';\n if (api.body.recordId) {\n query = 'mutation{record: ' + objectName + '__update(id: \"' + recordId + '\", doc: {__saveData}){_id}}';\n };\n __saveData = JSON.stringify(JSON.stringify(formData));\n api.data = { query: query.replace('{__saveData}', __saveData) };\n return api;\n "}function fieldsExtend$2(){return{filters:{label:"",group:"",visible_on:"true",amis:{type:"condition-builder",source:{method:"get",url:"${context.rootUrl}/service/api/amis-metadata-listviews/getFilterFields?objectName=${targetObjectName}",dataType:"json",headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}}}}}}const getSetListviewColumnsButtonSchema=()=>({type:"button",label:instance.t("frontend_listview_control_columns"),disabledOn:"!((global.user.is_space_admin || global.userId == uiSchema.list_views[listName].owner) && !!uiSchema.list_views[listName].owner)",onEvent:{click:{weight:0,actions:[{args:{},dialog:{type:"dialog",title:instance.t("frontend_listview_control_columns"),data:{targetObjectName:"${objectName}",recordId:"${uiSchema.list_views[listName]._id}",listName:"${listName}",appId:"${appId}",context:"${context}"},body:[{type:"steedos-object-form",label:"对象表单",objectApiName:"object_listviews",recordId:"${recordId}",mode:"edit",layout:"normal",fieldsExtend:fieldsExtend$1(),initApiAdaptor:initApiAdaptor$1(),apiRequestAdaptor:apiRequestAdaptor$1(),fields:["columns","mobile_columns"],onEvent:{submitSucc:{weight:0,actions:[{actionType:"custom",script:"window.location.reload(); //doAction({'actionType': 'rebuild', 'componentId': `service_listview_${event.data.targetObjectName}`})"}]}}}],searchable:!0,showCloseButton:!0,showErrorMsg:!0,showLoading:!0,size:"lg"},actionType:"dialog"}]}}});function fieldsExtend$1(){return{columns:{amis:{type:"transfer",sortable:!0,searchable:!0,source:{method:"get",url:"${context.rootUrl}/service/api/amis-metadata-objects/objects/${targetObjectName}/fields/options",headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}}}},mobile_columns:{amis:{type:"transfer",sortable:!0,searchable:!0,source:{method:"get",url:"${context.rootUrl}/service/api/amis-metadata-objects/objects/${targetObjectName}/fields/options",headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}}}}}}function initApiAdaptor$1(){return"\n const recordId_tmp = api.body.recordId;\n let columns_tmp = {}, mobile_columns_tmp = {};\n if (recordId_tmp) {\n columns_tmp = payload.data.columns;\n mobile_columns_tmp = payload.data.mobile_columns;\n if (columns_tmp) {\n columns_tmp = lodash.map(columns_tmp, 'field');\n }\n if (mobile_columns_tmp) {\n mobile_columns_tmp = lodash.map(mobile_columns_tmp, 'field');\n }\n }\n payload.data.columns = columns_tmp;\n payload.data.mobile_columns = mobile_columns_tmp;\n \n delete payload.extensions;\n return payload;\n "}function apiRequestAdaptor$1(){return"\n const formData_tmp = api.body.$;\n const objectName_tmp = api.body.objectName;\n const recordId_tmp = api.body.recordId;\n \n if (typeof formData_tmp.columns == 'string') {\n formData_tmp.columns = formData_tmp.columns && formData_tmp.columns.split(',');\n }\n if (typeof formData_tmp.mobile_columns == 'string') {\n formData_tmp.mobile_columns = formData_tmp.mobile_columns && formData_tmp.mobile_columns.split(',');\n }\n \n // 数据格式转换\n formData_tmp.columns = lodash.map(formData_tmp.columns, (item) => {\n return { field: item };\n });\n formData.mobile_columns = lodash.map(formData.mobile_columns, (item) => {\n return { field: item };\n });\n \n let query_tmp = 'mutation{record: ' + objectName_tmp + '__insert(doc: {__saveData}){_id}}';\n if (api.body.recordId) {\n query_tmp = 'mutation{record: ' + objectName_tmp + '__update(id: \"' + recordId_tmp +'\", doc: {__saveData}){_id}}';\n };\n delete formData_tmp._id;\n let __saveData_tmp = JSON.stringify(JSON.stringify(formData_tmp));\n api.data = { query: query_tmp.replace('{__saveData}', __saveData_tmp) };\n \n return api;\n "}const getSetListviewSortButtonSchema=()=>({type:"button",label:instance.t("frontend_listview_control_sort"),disabledOn:"!((global.user.is_space_admin || global.userId == uiSchema.list_views[listName].owner) && !!uiSchema.list_views[listName].owner)",onEvent:{click:{weight:0,actions:[{dialog:{type:"dialog",title:instance.t("frontend_listview_control_sort"),data:{targetObjectName:"${objectName}",recordId:"${uiSchema.list_views[listName]._id}",listName:"${listName}",appId:"${appId}",context:"${context}"},body:[{type:"steedos-object-form",label:"对象表单",objectApiName:"object_listviews",recordId:"${recordId}",className:"",id:"u:061f158b4c5a",mode:"edit",fields:["sort","sort.$.field_name","sort.$.order"],onEvent:{submitSucc:{weight:0,actions:[{actionType:"custom",script:"window.location.reload(); //doAction({'actionType': 'rebuild', 'componentId': `service_listview_${event.data.targetObjectName}`})"}]}},fieldsExtend:fieldsExtend(),initApiAdaptor:initApiAdaptor(),apiRequestAdaptor:apiRequestAdaptor()}],showCloseButton:!0,showErrorMsg:!0,showLoading:!0,id:"u:d3f6947b6acf",size:"lg"},actionType:"dialog"}]}}});function fieldsExtend(){return{sort:{label:"",group:"",amis:{type:"tabs-transfer",sortable:!0,searchable:!0,source:{method:"get",url:"${context.rootUrl}/service/api/amis-metadata-objects/objects/${targetObjectName}/sortFields/options",headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}}}}}}function initApiAdaptor(){return"\n let sort;\n if (recordId) {\n sort = payload.data.sort;\n //数据格式转换\n if (sort instanceof Array) {\n sort = lodash.map(sort, (item) => {\n return item.field_name + ':' + (item.order || 'asc')\n });\n }\n }\n payload.data.sort = sort;\n delete payload.extensions;\n return payload;\n "}function apiRequestAdaptor(){return"\n const recordId = api.body.recordId;\n //数据格式转换\n if (typeof formData.sort == 'string') {\n formData.sort = formData.sort && formData.sort.split(',');\n }\n formData.sort = lodash.map(formData.sort, (item) => {\n const arr = item.split(':');\n return { field_name: arr[0], order: arr[1] };\n });\n if (recordId) {\n query = 'mutation{record: ' + objectName + '__update(id: \"' + recordId + '\", doc: {__saveData}){_id}}';\n }\n __saveData = JSON.stringify(JSON.stringify(formData));\n api.data = { query: query.replace('{__saveData}', __saveData) };\n return api;\n "}const getDeleteListviewButtonSchema=()=>({type:"button",label:instance.t("frontend_listview_control_delete_label"),disabledOn:"!((global.user.is_space_admin || global.userId == uiSchema.list_views[listName].owner) && !!uiSchema.list_views[listName].owner)",confirmText:instance.t("frontend_listview_control_delete_confirm_text"),onEvent:{click:{actions:[{actionType:"ajax",args:{api:{url:"${context.rootUrl}/graphql",method:"post",headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"},data:{"&":"$$",uiSchema:"${uiSchema}",recordId:"${uiSchema.list_views[listName]._id}"},messages:{success:instance.t("frontend_listview_control_delete_message_success")},requestAdaptor:requestAdaptor(),adaptor:adaptor()}}},{actionType:"url",args:{url:"${context.rootUrl}/app/${appId}/${objectName}/grid/all",blank:!1},expression:"data.delete == 1"},{actionType:"custom",script:"window.location.reload();"}]}}});function requestAdaptor(){return"\n const { recordId } = api.body;\n var deleteArray = [];\n if (recordId) { deleteArray.push(`delete:object_listviews__delete(id: \"${recordId}\")`); }\n api.data = { query: `mutation{${deleteArray.join(',')}}` };\n return api;\n "}function adaptor(){return"\n if (payload.errors) {\n payload.status = 2;\n payload.msg = payload.errors[0].message;\n }\n return payload;\n "}const getSettingListviewToolbarButtonSchema=()=>({type:"dropdown-button",trigger:"click",icon:"fa fa-cog",btnClassName:"antd-Button--iconOnly bg-white !p-2 rounded text-gray-500",align:"right",visibleOn:"${!isLookup && !!isObjectListview}",buttons:[{label:instance.t("frontend_button_listview_control_label"),children:[getNewListviewButtonSchema(),getCopyListviewButtonSchema(),getRenameListviewButtonSchema(),getSetListviewShareButtonSchema(),getSetListviewFiltersButtonSchema(),getSetListviewColumnsButtonSchema(),getSetListviewSortButtonSchema(),getDeleteListviewButtonSchema()]}]}),getDisplayAsButton=function(e,t){let n=Router.getTabDisplayAs(e,t),r=[{type:"button",label:instance.t("frontend_display_type_is_table"),onClick:"const key = 'tab_"+e+'_display\';sessionStorage.setItem(key, \'grid\');let url = document.location.pathname; var urlSearch = new URLSearchParams(document.location.search); if(urlSearch.get("side_object") && urlSearch.get("side_listview_id")){url=`/app/${props.data.appId}/${urlSearch.get("side_object")}/grid/${urlSearch.get("side_listview_id")}`;}; props.env.jumpTo(url + \'?display=grid\');',rightIcon:"split"!=n?"fa fa-check":null,rightIconClassName:"m-l-sm"},{type:"button",label:instance.t("frontend_display_type_is_split"),onClick:"const key = 'tab_"+e+"_display';sessionStorage.setItem(key, 'split');const url = document.location.pathname + '?display=split'; props.env.jumpTo(url);",rightIcon:"split"===n?"fa fa-check":null,rightIconClassName:"m-l-sm"}];return"split"===n?instance.t("frontend_display_type_is_split"):instance.t("frontend_display_type_is_table"),{type:"dropdown-button",icon:"fa fa-table-columns",btnClassName:"antd-Button--iconOnly bg-white !p-2 rounded text-gray-500",align:"right",visibleOn:"${window:innerWidth > 768 && !!!isLookup && !!isObjectListview}",buttons:[{label:instance.t("frontend_display_as"),children:r}]}},onFieldsFilterToggleScript='\nconst scope = event.context.scoped;\nconst filterForm = scope.getComponents().find(function(n){\n return n.props.type === "form";\n});\nconst filterService = filterForm.context.getComponents().find(function(n){\n return n.props.type === "service";\n});\nlet toShowFieldsFilter = !!!filterService.props.data.showFieldsFilter;\nfilterService.setData({showFieldsFilter: toShowFieldsFilter});\n//触发amis crud 高度重算\ndoAction({\n "actionType": "broadcast",\n "args": {\n "eventName": "@height.changed." + event.data.objectName\n },\n "data": {\n "timeOut": 1000\n }\n});\n// 手机端在显示搜索栏时隐藏crud上的刷新按钮,因为点击后crud高度显示有问题\nlet crudService = scope.getComponentById("service_listview_" + event.data.objectName);\ncrudService && crudService.setData({showFieldsFilter: toShowFieldsFilter});\n// if(filterService.props.data.showFieldsFilter){\n// if(isMobile){\n// // 手机上只能通过取消按钮来关闭搜索栏\n// return;\n// }\n// let buttonCancel = SteedosUI.getClosestAmisComponentByType(filterForm.context, "button", { \n// direction: "down", \n// name: "btn_filter_form_cancel" \n// });\n// buttonCancel.props.dispatchEvent(\'click\', {}).then(function(){\n// resizeWindow();\n// });\n// }\n// else{\n// if(isMobile){\n// // 手机端在显示搜索栏时隐藏crud上的刷新按钮,因为点击后crud高度显示有问题\n// let crudService = scope.getComponentById("service_listview_" + event.data.objectName);\n// crudService && crudService.setData({showFieldsFilter: true});\n// }\n// }\n';function getObjectHeaderQuickSearchBox(e,t,n,{isLookup:r=!1,keywordsSearchBoxName:o="__keywords"}={}){const a=[];_.each(e.fields,(function(t){isFieldQuickSearchable(t,e.NAME_FIELD_KEY)&&a.push(t.label)}));const i=location.pathname+"/crud";let s=sessionStorage.getItem(i),l="";s&&!r&&(s=JSON.parse(s),l=s&&s.__keywords||"");const c=`\n const scope = event.context.scoped;\n let crud = SteedosUI.getClosestAmisComponentByType(scope, "crud");\n // let crudService = crud && SteedosUI.getClosestAmisComponentByType(crud.context, "service", {name: "service_object_table_crud"});\n let __changedSearchBoxValues = {};\n __changedSearchBoxValues["${o}"] = event.data["${o}"];\n // crudService && crudService.setData({__changedSearchBoxValues: __changedSearchBoxValues});\n // 这里不用crudService而用crud是因为lookup字段弹出的列表中的crudService中的变量无法传入crud的发送适配器中\n // crud && crud.setData({__changedSearchBoxValues: __changedSearchBoxValues});\n if(crud){\n let crudData = crud.getData();\n crudData.__changedSearchBoxValues = __changedSearchBoxValues;\n crud.setData(crudData);\n }\n `,u=`\n ${c}\n\n // 下面的脚本只为解决点击搜索表单取消按钮,再重新在其中输入过滤条件但是不点击搜索按钮或回车按键触发搜索,此时在快速搜索框输入过滤条件按回车按键会把搜索表单中的过滤条件清空的问题\n // const scope = event.context.scoped;\n // 如果点击过顶部搜索栏表单的取消按钮,会把此处event.data.__super.__super.__super中的搜索表单项的所有字段设置为null\n // 点击取消按钮后继续在表单项中输入过滤条件且最后没有点击回车按键或点击表单项搜索按钮的话,在快速搜索中点击回车按钮提交搜索会所顶部搜索表单中的字段值清空\n let filterForm = SteedosUI.getClosestAmisComponentByType(scope, "form");\n if(!filterForm){\n return;\n }\n let isLookup = event.data.isLookup;\n let __lookupField = event.data.__lookupField;\n let __changedFilterFormValuesKey = "__changedFilterFormValues";\n if(isLookup && __lookupField){\n let lookupTag = "__lookup__" + __lookupField.name + "__" + __lookupField.reference_to;\n if(__lookupField.reference_to_field){\n lookupTag += "__" + __lookupField.reference_to_field;\n }\n __changedFilterFormValuesKey += lookupTag;\n }\n setTimeout(function(){\n filterForm && filterForm.setValues(event.data[__changedFilterFormValuesKey]);\n }, 500);\n `;return{type:"tooltip-wrapper",id:"steedos_crud_toolbar_quick_search",align:"right",title:"",content:"可搜索字段:"+a.join(","),placement:"bottom",tooltipTheme:"dark",trigger:"click",className:"SMALL"!==n?"mr-1":"",visible:!!a.length,body:[{type:"search-box",name:o,placeholder:"快捷搜索",value:l,mini:!0,clearable:!0,clearAndSubmit:!0,searchImediately:!1,onEvent:{search:{actions:[{actionType:"custom",script:u}]},change:{actions:[{actionType:"custom",script:c}]}}}]}}function getObjectHeaderToolbar(e,t,n,{showDisplayAs:r=!1,hiddenCount:o=!1,headerToolbarItems:a,filterVisible:i=!0,isLookup:s=!1,keywordsSearchBoxName:l}={}){let c,u;window.innerWidth,o||(c={type:"tpl",align:"left",className:"text-gray-500 mr-2",tpl:"${count} "+instance.t("frontend_record_sum")});let d;u={type:"button",align:"right",tooltipPlacement:"top",className:"bg-white p-2 rounded text-gray-500 list-view-btn-reload",label:"",icon:"fa fa-sync",onEvent:{click:{actions:[{actionType:"custom",script:'\n // 触发搜索,而不是reload,因为使用search-box可以在amissdk是3.6.3-patch.8+实现在非第一页的情况下,快速搜索输入框中过滤条件变更时再点刷新可以自动跳转翻页到第一页\n const scope = event.context.scoped;\n const sb = SteedosUI.getClosestAmisComponentByType(scope, "search-box");\n if (sb) {\n const sbValue = sb.state.value;\n sb.handleSearch(sbValue);\n }else{\n var listView = scope.parent.getComponents().find(function(n){\n return n.props.type === "crud";\n });\n listView.handleChangePage(1);\n }\n \n '}]}}},i&&(d={label:instance.t("frontend_button_search_tooltip"),icon:"fa fa-filter",type:"button",badge:{offset:[-5,1],size:8,animation:!0,visibleOn:"${isFieldsFilterEmpty == false && isLookup != true}"},align:"right",className:"bg-white p-2 rounded text-gray-500",onEvent:{click:{actions:[{actionType:"custom",script:onFieldsFilterToggleScript}]}},id:"steedos_crud_toolbar_filter"});let f=getDisplayAsButton(e?.name,e?.enable_split),p=getObjectHeaderQuickSearchBox(e,t,n,{isLookup:s,keywordsSearchBoxName:l}),_=[];return"SMALL"===n?(_.push(p),d&&_.push(d),_.push(f),[...a||[],..._]):(_.push(p),_.push(u),_.push(f),e?.permissions?.allowCreateListViews&&_.push(getSettingListviewToolbarButtonSchema()),d&&_.push(d),c&&_.push(c),[...a||[],"bulkActions",..._])}function getObjectFooterToolbar(e,t,n){if("SMALL"===t)return"split"===n.displayAs?[{type:"switch-per-page",visibleOn:"${count >= 20}"},{type:"pagination",maxButtons:5,showPageInput:!1}]:[{type:"pagination",maxButtons:5,showPageInput:!0,layout:"total,pager,go"}];if(n&&n.isRelated)return[{type:"pagination",maxButtons:10,showPageInput:!1}];{const t=e.paging&&!1===e.paging.enabled,r=n.isLookup,o=[{type:"pagination",maxButtons:10,showPageInput:!1}];return t&&r?o:[{type:"switch-per-page",visibleOn:"${count >= 20}"},...o]}}async function getObjectFilter(e,t,n){return{title:"",submitText:"",className:"",debug:!1,mode:"normal",wrapWithPanel:!1,body:[await getObjectListHeaderFieldsFilterBar(e,null,n)],onEvent:{submitSucc:{actions:[{actionType:"custom",script:`\n let isLookup = event.data.isLookup;\n if(isLookup){\n return;\n }\n // 列表搜索栏字段值变更后立刻触发提交表单执行crud搜索,所以这里需要额外重算crud高度及筛选按钮红色星号图标显示隐藏\n //触发amis crud 高度重算\n doAction({\n "actionType": "broadcast",\n "args": {\n "eventName": "@height.changed.${e.name}"\n },\n "data": {\n "timeOut": 1000\n }\n });\n const scope = event.context.scoped;\n // let filterFormValues = event.data;\n let filterForm = SteedosUI.getClosestAmisComponentByType(scope, "form");\n let filterFormService = SteedosUI.getClosestAmisComponentByType(filterForm.context, "service");\n // 使用event.data的话,并不能拿到本地存储中的过滤条件,所以需要从filterFormService中取。\n let filterFormValues = filterFormService.getData();\n filterFormValues = JSON.parse(JSON.stringify(filterFormValues)); //只取当层数据域中数据,去除__super层数据\n let isFieldsFilterEmpty = SteedosUI.isFilterFormValuesEmpty(filterFormValues);\n let crud = SteedosUI.getClosestAmisComponentByType(scope, "crud");\n const changedFilterFormValues = _.pickBy(filterFormValues, function(n,k){return /^__searchable__/.test(k);});\n // 这里不用crudService而用crud是因为lookup字段弹出的列表中的crudService中的变量无法传入crud的发送适配器中\n // crud && crud.setData({__changedFilterFormValues: changedFilterFormValues});\n let __changedFilterFormValuesKey = "__changedFilterFormValues";\n if(isLookup && __lookupField){\n let lookupTag = "__lookup__" + __lookupField.name + "__" + __lookupField.reference_to;\n if(__lookupField.reference_to_field){\n lookupTag += "__" + __lookupField.reference_to_field;\n }\n __changedFilterFormValuesKey += lookupTag;\n }\n if(crud){\n let crudData = crud.getData();\n crudData[__changedFilterFormValuesKey] = changedFilterFormValues;\n crud.setData(crudData);\n }\n\n let crudService = crud && SteedosUI.getClosestAmisComponentByType(crud.context, "service", {name: "service_object_table_crud"});\n crudService && crudService.setData({isFieldsFilterEmpty});\n `}]},change:{actions:[{actionType:"custom",script:'\n let isLookup = event.data.isLookup;\n let __lookupField = event.data.__lookupField;\n const scope = event.context.scoped;\n // let filterFormValues = event.data;\n let filterForm = SteedosUI.getClosestAmisComponentByType(scope, "form");\n let filterFormService = SteedosUI.getClosestAmisComponentByType(filterForm.context, "service");\n // 使用event.data的话,并不能拿到本地存储中的过滤条件,所以需要从filterFormService中取。\n let filterFormValues = filterFormService.getData();\n filterFormValues = JSON.parse(JSON.stringify(filterFormValues)); //只取当层数据域中数据,去除__super层数据\n let crud = SteedosUI.getClosestAmisComponentByType(scope, "crud");\n const changedFilterFormValues = _.pickBy(filterFormValues, function(n,k){return /^__searchable__/.test(k);});;\n // let crudService = crud && SteedosUI.getClosestAmisComponentByType(crud.context, "service", {name: "service_object_table_crud"});\n // crudService && crudService.setData({__changedFilterFormValues: changedFilterFormValues});\n // 这里不用crudService而用crud是因为lookup字段弹出的列表中的crudService中的变量无法传入crud的发送适配器中\n // crud && crud.setData({__changedFilterFormValues: changedFilterFormValues});\n let __changedFilterFormValuesKey = "__changedFilterFormValues";\n if(isLookup && __lookupField){\n let lookupTag = "__lookup__" + __lookupField.name + "__" + __lookupField.reference_to;\n if(__lookupField.reference_to_field){\n lookupTag += "__" + __lookupField.reference_to_field;\n }\n __changedFilterFormValuesKey += lookupTag;\n }\n if(crud){\n let crudData = crud.getData();\n crudData[__changedFilterFormValuesKey] = changedFilterFormValues;\n crud.setData(crudData);\n }\n '}]}}}}let UI_SCHEMA_CACHE={},UISchemaFunction;"undefined"!=typeof window&&(window.UI_SCHEMA_CACHE||(window.UI_SCHEMA_CACHE=UI_SCHEMA_CACHE),UI_SCHEMA_CACHE=window.UI_SCHEMA_CACHE);const setUISchemaCache=(e,t)=>{UI_SCHEMA_CACHE[e]=t},getUISchemaCache=e=>lodash.exports.cloneDeep(UI_SCHEMA_CACHE[e]),hasUISchemaCache=e=>lodash.exports.has(UI_SCHEMA_CACHE,e);function getListViewColumns(e,t){let n=[];return n="SMALL"===t?lodash.exports.isEmpty(e.mobile_columns)?lodash.exports.slice(e.columns,0,4):e.mobile_columns:e.columns,n}function getListViewSort(e){let t="";return e&&e.sort&&e.sort.length&&lodash.exports.each(e.sort,(function(e,n){if(lodash.exports.isArray(e)){let r=e[0]+" "+(e[1]||"");r=n>0?","+r:r,t+=r}else{let r=e.field_name+" "+e.order;r=n>0?","+r:r,t+=r}})),t}function getListViewFilter(e){if(e)try{const t=getUserId();let n=e.filters;if("mine"===e.filter_scope)if(___default.isEmpty(n))n=[["owner","=",t]];else{if(___default.isString(n)&&___default.startsWith(___default.trim(n),"function")&&(n=new Function(`return ${n}`),n=n()),!___default.isArray(n))throw console.debug("listView filters is not array",e),new Error("filters is not array");n.push(["owner","=",t])}return n}catch(e){console.error(e)}}function formatUISchemaCache(objectName,uiSchema){setUISchemaCache(objectName,uiSchema),lodash.exports.each(uiSchema.fields,(field=>{try{"lookup"===field.type&&field._reference_to&&___default.isString(field._reference_to)&&(field.reference_to=eval(`(${field._reference_to})`)())}catch(e){field.reference_to=void 0,console.error(e)}})),lodash.exports.each(uiSchema.list_views,((e,t)=>{e.name=t,lodash.exports.has(e,"columns")||(e.columns=uiSchema.list_views.all.columns)}))}async function getUISchema(e,t,n=!0){if(!e)return;if(hasUISchemaCache(e)&&!t)return getUISchemaCache(e);let r=null;try{if(UISchemaFunction);else{const t=`/service/api/@${e.replace(/\./g,"_")}/uiSchema`;r=await fetchAPI(t,{method:"get"})}if(!r&&n)return await new Promise((e=>setTimeout(e,3e3))),getUISchema(e,t,!1);if(!r&&0==n)return;formatUISchemaCache(e,r)}catch(t){console.error("getUISchema",e,t),setUISchemaCache(e,null)}return getUISchemaCache(e)}function wait(e){const t=(new Date).getTime();let n=t;for(;n-t<e;)n=(new Date).getTime()}function getUISchemaSync$1(e,t,n=!0){if(!e)return;if(hasUISchemaCache(e)&&!t)return getUISchemaCache(e);let r=null;try{const o=`/service/api/@${e.replace(/\./g,"_")}/uiSchema`;if(r=Steedos.authRequest(o,{type:"GET",async:!1}),!r&&n)return wait(2e3),getUISchemaSync$1(e,t,!1);if(!r&&0==n)return;formatUISchemaCache(e,r)}catch(t){console.error("getUISchema",e,t),setUISchemaCache(e,null)}return getUISchemaCache(e)}async function getListSchema(e,t,n,r={}){const o=await getUISchema(t);if(!o)return{};const a=lodash.exports.find(o.list_views,((e,t)=>(n||(n=t),t===n||e._id===n)));if(!a)return{uiSchema:o};if(a.enable_amis_schema&&a.amis_schema){return{uiSchema:o,isCustomAmisSchema:!0,amisSchema:lodash.exports.isString(a.amis_schema)?JSON.parse(a.amis_schema):a.amis_schema}}let i=getListViewColumns(a,r.formFactor),s=getListViewSort(a),l=getListViewFilter(a),c=a&&a._filters;if("calendar"===a.type){return{uiSchema:o,isCalendar:!0,amisSchema:{type:"steedos-object-calendar",objectApiName:t,filters:l,filtersFunction:c,sort:s,...a.options}}}const u=r.defaults||{};u.headerSchema=null;try{const e=location.pathname+"/crud";let t=sessionStorage.getItem(e);if(t){t=JSON.parse(t);let e={};t.orderBy&&(e.orderBy=t.orderBy),t.orderDir&&(e.orderDir=t.orderDir),t.perPage&&(e.perPage=t.perPage),u.listSchema=lodash.exports.defaultsDeep({},e,u.listSchema||{})}}catch(e){console.error("本地存储中crud参数解析异常:",e)}window.innerWidth>768&&(u.listSchema=lodash.exports.defaultsDeep({},u.listSchema||{},{autoFillHeight:!0})),r.defaults=u,"recent"==n&&(c='\n function(filters, data) {\n var result = Steedos.authRequest(\'/graphql\', {\n type: \'POST\',\n async: false,\n data: JSON.stringify({\n query: \'{object_recent_viewed(filters: [["record.o","=","\' + data.objectName + \'"],["space","=","\' + data.context.tenantId + \'"],["owner","=","\' + data.context.userId + \'"]],sort:"modified desc",top:50){ _id,record} }\'\n }),\n });\n var _ids = []\n result.data.object_recent_viewed.forEach(function (item) {\n _ids = _ids.concat(item.record.ids)\n })\n return ["_id", "=", _ids];\n }\n ');return{uiSchema:o,amisSchema:{type:"steedos-object-table",objectApiName:t,columns:i,extraColumns:a.extra_columns,filters:l,filtersFunction:c,sort:s,ctx:r,requestAdaptor:r.requestAdaptor||a.requestAdaptor,adaptor:r.adaptor||a.adaptor,headerToolbarItems:r.headerToolbarItems,filterVisible:r.filterVisible,rowClassNameExpr:r.rowClassNameExpr,crud:r.crud||a.crud,crudDataFilter:r.crudDataFilter||a.crudDataFilter,onCrudDataFilter:r.onCrudDataFilter}}}async function getSource(e,t){const n=t.objectName;let r=[{name:t.valueField,alias:"value"},{name:t.labelField,alias:"label"},{name:"children"}],o=r.filter((function(e){return"children"!==e.name})),a=!e.multiple&&e.auto_fill_mapping;a&&a.length&&a.forEach((function(e){"children"!==e.from&&r.push({name:e.from}),o.push({name:e.from})}));const i=await getFindQuery({name:n},null,r,{expand:!1,alias:"options",filters:"{__filters}"});i.query=i.query.replace(/,count\:.+/,"}");const s=await getFindQuery({name:n},null,o,{expand:!1,alias:"defaultValueOptions",filters:"{__options_filters}"});s.query=s.query.replace(/,count\:.+/,"}"),i.query=i.query.replace(/}$/,","+s.query.replace(/{(.+)}/,"$1}"));let l=`${e.name}`;e._prefix&&(l=`${e._prefix}${e.name}`),t.fieldNamePrefix&&(l=`${t.fieldNamePrefix}${l}`),i.$value=`$${l}`,i.$="$$";const c=`\n var filters = [['parent', '=', null]];\n const filtersFunction = ${e.filtersFunction||e._filtersFunction};\n if(filtersFunction){\n const _filters = filtersFunction(filters, api.data.$);\n if(_filters && _filters.length > 0){\n filters.push(_filters);\n }\n }\n api.data.query = api.data.query.replace(/{__filters}/g, JSON.stringify(filters));\n var defaultValue = api.data.$value;\n var optionsFiltersOp = "${e.multiple?"in":"="}";\n var optionsFilters = [["${t.valueField}", optionsFiltersOp, []]];\n if (defaultValue) { \n optionsFilters = [["${t.valueField}", optionsFiltersOp, defaultValue]];\n }\n api.data.query = api.data.query.replace(/{__options_filters}/g, JSON.stringify(optionsFilters));\n return api;\n `;return{method:"post",url:getApi$2(),requestAdaptor:c,adaptor:'\n const data = payload.data;\n data.options = data.options.map(function (optionItem) {\n optionItem.defer = !!(optionItem.children && optionItem.children.length);\n delete optionItem.children;\n return optionItem;\n });\n var defaultValueOptions = data.defaultValueOptions;\n // 字段值下拉选项合并到options中\n data.options = _.unionWith(data.options, defaultValueOptions, function(a,b){\n return a["value"]=== b["value"];\n });\n delete data.defaultValueOptions;\n payload.data = data;\n return payload;\n ',data:i,headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}}}async function getDeferApi(e,t){const n=t.objectName;let r=[{name:t.valueField,alias:"value"},{name:t.labelField,alias:"label"},{name:"children"}],o=!e.multiple&&e.auto_fill_mapping;o&&o.length&&o.forEach((function(e){"children"!==e.from&&r.push({name:e.from})}));const a=await getFindQuery({name:"{__object_name}"},null,r,{expand:!1,alias:"options",queryOptions:'filters: {__filters}, sort: "{__sort}"'});let i=e.filters;"string"==typeof i&&(i=new Function(`return ${i}`),i=i()),"function"==typeof i&&(i=i(e)),a.query=a.query.replace(/,count\:.+/,"}");const s=`\n var dep = api.query.dep;\n var term = api.query.term;\n var filters;\n var objectName;\n var fields;\n var sort = "";\n if (dep) {\n objectName = "${n}";\n filters = [['parent', '=', dep]];\n sort = "${t.sort}";\n }\n api.data.query = api.data.query.replace(/{__object_name}/g, objectName).replace(/{__filters}/g, JSON.stringify(filters)).replace('{__sort}', sort.trim());\n return api;\n `;return{method:"post",url:getApi$2()+"&dep=${value}",requestAdaptor:s,adaptor:"\n if (api.query.dep) {\n // 展开组织时才需要根据children值设置defer属性\n const data = payload.data;\n data.options = data.options.map(function (option) {\n option.defer = !!(option.children && option.children.length);\n delete option.children;\n return option;\n });\n payload.data = data;\n }\n return payload;\n ",data:a,headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}}}function getRefListViewSort(e){let t=getLookupListView(e),n="";return t&&(n=getListViewSort(t)),n}async function lookupToAmisTreeSelect(e,t,n){if(!e)return{};n||(n={});const r={type:getAmisStaticFieldType("tree-select",t)};if(t)r.tpl=await getLookupTpl(e,n);else{const t=await getUISchema(n.objectName);n.sort=getRefListViewSort(t),Object.assign(r,{multiple:e.multiple,searchable:e.searchable,extractValue:!0,hideNodePathLabel:!0,clearable:!0,source:await getSource(e,n),deferApi:await getDeferApi(e,n)}),e.multiple&&Object.assign(r,{joinValues:!1}),"boolean"!=typeof r.searchable&&(r.searchable=!0);const o=e.onEvent;o&&(r.onEvent=o)}return r}"undefined"!=typeof window&&(window.getUISchema=getUISchema,window.getUISchemaSync=getUISchemaSync$1,window.getListSchema=getListSchema);const getReferenceToFieldSchema=(e,t)=>{let n=e.reference_to;if(!n)return;if(!t)return null;let r=null,o=e.reference_to_field;return o||(o=t.idFieldName||"_id"),r="_id"===o?{name:"_id",label:"ID",type:"text",toggled:!1}:t.fields[o]||{name:o},{objectName:n,valueField:r,labelField:t.fields[t.NAME_FIELD_KEY||"name"],NAME_FIELD_KEY:t.NAME_FIELD_KEY||"name"}},getReferenceTo=async e=>{"users"===e.reference_to&&(e.reference_to="space_users",e.reference_to_field="user");const t=await getUISchema(e.reference_to);return getReferenceToFieldSchema(e,t)};function getReferenceToSync(e){"users"===e.reference_to&&(e.reference_to="space_users",e.reference_to_field="user");const t=getUISchemaSync(e.reference_to);return getReferenceToFieldSchema(e,t)}function getLookupSapceUserTreeSchema(e){const t={type:"input-tree",className:"steedos-select-user-tree",inputClassName:"p-0",source:{method:"post",url:"${context.rootUrl}/graphql",headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"},adaptor:'\n const records = payload.data.options;\n const treeRecords = [];\n const getChildren = (currentRecord, records, childrenIds) => {\n if (currentRecord.children && typeof currentRecord.children[0] === "object") {\n // 考虑api配置了cache缓存的话,不会请求接口但是会重新进这个接收适配器脚本且payload.data.options返回的会是上一次计算结果,这里直接返回计算过的children\n return currentRecord.children;\n }\n if (!childrenIds) {\n return;\n }\n const children = _.filter(records, (record) => {\n return _.includes(childrenIds, record.value)\n });\n _.each(children, (item) => {\n if (item.children) {\n item.children = getChildren(item, records, item.children)\n }else{\n item.children = [];\n }\n })\n return children;\n }\n \n const getRoot = (records) => {\n for (var i = 0; i < records.length; i++) {\n records[i].noParent = 0;\n if (!!records[i].parent) {\n biaozhi = 1\n for (var j = 0; j < records.length; j++) {\n if (records[i].parent == records[j].value)\n biaozhi = 0;\n }\n if (biaozhi == 1) records[i].noParent = 1;\n } else records[i].noParent = 1;\n }\n }\n getRoot(records);\n console.log(records)\n \n _.each(records, (record) => {\n if (record.noParent == 1) {\n treeRecords.push(Object.assign({}, record, { children: getChildren(record, records, record.children) }));\n }\n });\n console.log(treeRecords)\n \n payload.data.options = treeRecords;\n return payload;\n ',data:{query:'{options:organizations(filters:["hidden", "!=", true],sort:"sort_no desc"){value:_id label:name,parent,children}}'},messages:{},cache:3e5},onEvent:{change:{actions:[{actionType:"custom",script:'\n console.log("lookup-tree-event.data:",event.data);\n console.log("lookup-tree-event.data.value.label:",event.data.value.label);\n console.log("lookup-tree-event.data.value.value:",event.data.value.value);\n const scope = event.context.scoped;\n var treeFilterFormValues={\n "__searchable__organizations_parents":event.data.value.value\n }\n // var listView = scope.parent.getComponents().find(function(n){\n // return n.props.type === "crud";\n // });\n // listView.handleFilterSubmit(Object.assign({}, filterFormValues));\n let __lookupField = event.data.__lookupField;\n let crud = SteedosUI.getClosestAmisComponentByType(scope, "crud");\n var filterForm = scope.getComponents().find(function(n){\n return n.props.type === "form";\n });\n let filterFormValues = filterForm.getData();\n filterFormValues = JSON.parse(JSON.stringify(filterFormValues)); //只取当层数据域中数据,去除__super层数据\n const changedFilterFormValues = _.pickBy(filterFormValues, function(n,k){return /^__searchable__/.test(k);});\n Object.assign(changedFilterFormValues, treeFilterFormValues);\n // 同步__changedFilterFormValues中的值\n let __changedFilterFormValuesKey = "__changedFilterFormValues";\n if(__lookupField){\n let lookupTag = "__lookup__" + __lookupField.name + "__" + __lookupField.reference_to;\n if(__lookupField.reference_to_field){\n lookupTag += "__" + __lookupField.reference_to_field;\n }\n __changedFilterFormValuesKey += lookupTag;\n }\n if(crud){\n let crudData = crud.getData();\n crudData[__changedFilterFormValuesKey] = changedFilterFormValues;\n crud.setData(crudData);\n }\n filterForm.setData(treeFilterFormValues);\n filterForm.handleFormSubmit(event);\n '},{actionType:"custom",script:" if(window.innerWidth < 768){ document.querySelector('.steedos-select-user-sidebar').classList.remove('steedos-select-user-sidebar-open'); }"}]}},label:"",mode:"normal",name:"organizations",multiple:!1,joinValues:!1,clearValueOnHidden:!1,fieldName:"organizations",hideRoot:!0,initiallyOpen:!1,extractValue:!0,onlyChildren:!0,treeContainerClassName:"no-border",showIcon:!1,enableNodePath:!1,autoCheckChildren:!1,searchable:!0,searchConfig:{sticky:!0,placeholder:"查找部门"},unfoldedLevel:2,originPosition:"left-top"},n=[];return e?(n.push({type:"action",body:[{type:"action",body:[t],className:"h-full w-[240px]"}],className:"absolute inset-0 steedos-select-user-sidebar",onEvent:{click:{actions:[{actionType:"custom",script:"document.querySelector('.steedos-select-user-sidebar').classList.remove('steedos-select-user-sidebar-open')"}]}},id:"steedos_crud_toolbar_select_user_tree"}),n.push({type:"button",label:"组织",icon:"fa fa-sitemap",className:"bg-white p-2 rounded border-gray-300 text-gray-500",align:"left",onEvent:{click:{actions:[{actionType:"custom",script:"document.querySelector('.steedos-select-user-sidebar').classList.toggle('steedos-select-user-sidebar-open')"}]}},id:"steedos_crud_toolbar_organization_button"})):n.push(t),n}async function lookupToAmisPicker(e,t,n){let r=await getReferenceTo(e);if(!r)return;const o=await getUISchema(r.objectName);n.idFieldName=o.idFieldName,n.objectName=o.name;const a=!1!==e.show_left_filter;let i=[];const s=[];let l=[];const c=window.innerWidth<768;let u=getLookupListView(o),d=u&&u.name;u&&u.columns?(lodash.exports.each(u.columns,(function(e){lodash.exports.isString(e)&&o.fields[e]?l.push(o.fields[e]):lodash.exports.isObject(e)&&o.fields[e.field]&&l.push(Object.assign({},o.fields[e.field],{width:e.width,wrap:e.wrap,amis:e.amis}))})),lodash.exports.each(u.extra_columns||[],(function(e){lodash.exports.isString(e)?l.push({extra:!0,name:e}):lodash.exports.isObject(e)&&l.push({extra:!0,name:e.field})}))):(lodash.exports.each(o.fields,((e,t)=>{"_id"==t||e.hidden||(lodash.exports.has(e,"name")||(e.name=t),l.push(e))})),l=lodash.exports.sortBy(l,"sort_no").slice(0,5)),lodash.exports.each(l,(function(e){lodash.exports.find(i,(function(t){return t.name===e.name}))||i.push(e)}));let f=e.auto_fill_mapping;f&&f.length&&f.forEach((function(e){lodash.exports.find(i,(function(t){return t.name===e.from}))||i.push(o.fields[e.from])})),lodash.exports.each(o.fields,(function(e){isFieldQuickSearchable(e,o.NAME_FIELD_KEY)&&s.push(e.name)}));const p={[r.labelField.name]:r.labelField,[r.valueField.name]:r.valueField};lodash.exports.each(i,(e=>{e.hidden||(p[e.name]=e)}));let _=getListViewFilter(u),m=u&&u._filters,g="";u&&(g=getListViewSort(u));const h=await getApi(o,null,p,{expand:!0,alias:"rows",queryOptions:'filters: {__filters}, top: {__top}, skip: {__skip}, sort: "{__sort}"'});if(h.url&&!n.inFilterForm){const t=[],n=[];lodash.exports.each(e.depend_on,(e=>{t.push(`depend_on_${e}=\${${e}}`),n.push(`this.${e}`)})),t.length>0&&(h.url=`${h.url}?${t.join("&")}`,h.sendOn=`${n.join(" && ")}`)}h.trackExpression=`\${${e.name}}`,h.data.$term="$term",h.data.$self="$$";let v=`__keywords_lookup__${e.name.replace(/\./g,"_")}__to__${o.name}`;const y=e.filter_form_data;h.requestAdaptor=`\n let __changedFilterFormValuesKey = "__changedFilterFormValues";\n let __lookupField = api.data.$self.__lookupField;\n if(__lookupField){\n let lookupTag = "__lookup__" + __lookupField.name + "__" + __lookupField.reference_to;\n if(__lookupField.reference_to_field){\n lookupTag += "__" + __lookupField.reference_to_field;\n }\n __changedFilterFormValuesKey += lookupTag;\n }\n let __changedFilterFormValues = api.data.$self[__changedFilterFormValuesKey] || {};\n let __changedSearchBoxValues = api.data.$self.__changedSearchBoxValues || {};\n // 把表单搜索和快速搜索中的change事件中记录的过滤条件也拼到$self中,是为解决触发搜索请求时,两边输入的过滤条件都带上,即:\n // 有时在搜索表单中输入过滤条件事,忘记点击回车键或搜索按钮,而是进一步修改快速搜索框中的关键字点击其中回车键触发搜索\n // 这种情况下,触发的搜索请求中没有带上搜索表单中输入的过滤条件。\n // 反过来先在快速搜索框中输入过滤条件却不点击其中回车键触发搜索,而是到搜索表单中触发搜索请求也是一样的。\n if(api.data.$self.op !== 'loadOptions'){\n Object.assign(api.data.$self, __changedSearchBoxValues, __changedFilterFormValues);\n }\n const selfData = JSON.parse(JSON.stringify(api.data.$self));\n ${_&&!n.inFilterForm?`var filters = ${JSON.stringify(_)};`:"var filters = [];"}\n var pageSize = api.data.pageSize || 10;\n var pageNo = api.data.pageNo || 1;\n var skip = (pageNo - 1) * pageSize;\n var orderBy = api.data.orderBy || '';\n var orderDir = api.data.orderDir || '';\n var sort = orderBy + ' ' + orderDir;\n sort = orderBy ? sort : "${g}";\n var allowSearchFields = ${JSON.stringify(s)};\n let fieldValue;\n if(api.data.$term){\n filters = [["name", "contains", "'+ api.data.$term +'"]];\n }else if(selfData.op === 'loadOptions' && selfData.value){\n if(selfData.value && selfData.value.indexOf(',') > 0){\n fieldValue = selfData.value.split(',');\n filters = [["${r.valueField.name}", "=", fieldValue]];\n }else{\n fieldValue = selfData.value;\n filters = [["${r.valueField.name}", "=", fieldValue]];\n }\n }\n\n let filterFormValues = {};\n if (selfData.op !== 'loadOptions'){\n filterFormValues = ${lodash.exports.isObject(y)?JSON.stringify(y):'"'+y+'"'} || {};\n const isAmisFormula = typeof filterFormValues === "string" && filterFormValues.indexOf("\${") > -1;\n if (isAmisFormula){\n filterFormValues = AmisCore.evaluate(filterFormValues, context) || {};\n }\n if (_.isObject(filterFormValues) || !_.isEmpty(filterFormValues)){\n let fields = api.data.$self.uiSchema && api.data.$self.uiSchema.fields;\n filterFormValues = SteedosUI.getSearchFilterFormValues(filterFormValues, fields);\n }\n }\n\n var searchableFilter = SteedosUI.getSearchFilter(Object.assign({}, { ...filterFormValues }, selfData)) || [];\n\n if(searchableFilter.length > 0){\n if(filters.length > 0 ){\n filters = [filters, 'and', searchableFilter];\n }else{\n filters = searchableFilter;\n }\n }\n\n if(${"space_users"===r?.objectName} && ${"user"===e.reference_to_field}){\n if(filters.length > 0){\n filters = [ ["user_accepted", "=", true], "and", filters ]\n }else{\n filters = [["user_accepted", "=", true]];\n }\n }\n\n if(allowSearchFields){\n allowSearchFields.forEach(function(key){\n const keyValue = selfData[key];\n if(_.isString(keyValue)){\n filters.push([key, "contains", keyValue]);\n }else if(_.isArray(keyValue) || _.isBoolean(keyValue) || keyValue){\n filters.push([key, "=", keyValue]);\n }\n })\n }\n\n var keywordsFilters = SteedosUI.getKeywordsSearchFilter(selfData.${v}, allowSearchFields);\n if(keywordsFilters && keywordsFilters.length > 0){\n filters.push(keywordsFilters);\n }\n\n var fieldFilters = ${JSON.stringify(e.filters)};\n var currentAmis = (window.amisRequire && window.amisRequire('amis')) || Amis;\n //递归fieldFilters数组,检查每一个元素,判断若是公式,就仅把它解析\n function traverseNestedArray(arr) {\n for (let i = 0; i < arr.length; i++) {\n if (Array.isArray(arr[i])) {\n // 如果当前元素是数组,则递归调用自身继续遍历\n traverseNestedArray(arr[i]);\n } else {\n // 如果当前元素不是数组,则处理该元素\n // 下面正则用于匹配amis公式\${}\n if(/\\$\\{([^}]*)\\}/.test(arr[i])) {\n try{\n arr[i] = currentAmis.evaluate(arr[i], api.context);\n }catch(ex){\n console.error("运行lookup过滤公式时出现错误:",ex);\n }\n }\n }\n }\n }\n if(fieldFilters && fieldFilters.length){\n traverseNestedArray(fieldFilters);\n filters.push(fieldFilters);\n }\n \n const inFilterForm = ${n.inFilterForm};\n\n const listviewFiltersFunction = ${m};\n\n if(listviewFiltersFunction && !inFilterForm){\n const _filters0 = listviewFiltersFunction(filters, api.data.$self.__super);\n if(_filters0 && _filters0.length){\n filters.push(_filters0);\n }\n }\n \n const filtersFunction = ${e.filtersFunction||e._filtersFunction};\n\n if(filtersFunction && !inFilterForm){\n const _filters = filtersFunction(filters, api.data.$self.__super);\n if(_filters && _filters.length > 0){\n filters.push(_filters);\n }\n }\n\n const enable_tree = ${o.enable_tree};\n if(enable_tree){\n pageSize = 10000;\n }\n if(fieldValue && _.isArray(fieldValue) && fieldValue.length > pageSize){\n pageSize = fieldValue.length;\n }\n api.data.query = api.data.query.replace(/{__filters}/g, JSON.stringify(filters)).replace('{__top}', pageSize).replace('{__skip}', skip).replace('{__sort}', sort.trim());\n return api;\n `,h.adaptor=`\n const enable_tree = ${o.enable_tree};\n const op = api.data.$self.op;\n if(!_.isEmpty(op)){\n // op不为空,表示处于字段初始编辑状态,不是点击后出现弹窗状态。\n // 这里不可以用_.pick函数让payload只返回labelField和valueField,因为字段上配置的amis autoFill功能可能依赖了其他字段\n /*\n const rows = _.map(payload.data.rows, (item)=>{\n return _.pick(item, ["${r.labelField.name}", "${r.valueField.name}"]);\n })\n payload.data.rows = rows;\n */\n if(enable_tree){\n const rows = _.map(payload.data.rows, (item)=>{\n if (!item.children) {\n return { ...item, children: [] };\n } else {\n return item;\n }\n })\n payload.data.rows = rows;\n }\n return payload;\n }\n if(!payload.data.rows){\n payload.data.rows = [];\n }\n if(enable_tree){\n const records = payload.data.rows;\n const treeRecords = [];\n\n const getParentIds = (records)=>{\n const ids = _.map(records, (item)=>{\n return item._id;\n });\n const parents = _.filter(records,(record)=>{\n return !record.parent || !_.includes(ids,record.parent);\n })\n const parentsIds = _.map(parents,(item)=>{\n return item._id;\n })\n return parentsIds;\n }\n const getChildren = (records, childrenIds)=>{\n if(!childrenIds){\n return;\n }\n const children = _.filter(records, (record)=>{\n return _.includes(childrenIds, record._id)\n });\n _.each(children, (item)=>{\n if(item.children){\n item.children = getChildren(records, item.children)\n }else{\n item.children = [];\n }\n })\n return children;\n }\n\n const parentIds = getParentIds(records);\n _.each(records, (record)=>{\n if(!record.parent || _.includes(parentIds, record._id)){\n treeRecords.push(Object.assign({}, record, {children: getChildren(records, record.children)}));\n }\n });\n payload.data.rows = treeRecords;\n }\n const result = payload.data.rows;\n if(result && result.length){\n const updatedResult = _.map(result, (element) => {\n const data = { ...element };\n // image字段值添加URL前缀\n ${getScriptForAddUrlPrefixForImgFields(lodash.exports.values(o.fields))}\n return data;\n });\n payload.data.rows = updatedResult;\n }\n let __changedFilterFormValuesKey = "__changedFilterFormValues";\n let __lookupField = api.data.$self.__lookupField;\n if(__lookupField){\n let lookupTag = "__lookup__" + __lookupField.name + "__" + __lookupField.reference_to;\n if(__lookupField.reference_to_field){\n lookupTag += "__" + __lookupField.reference_to_field;\n }\n __changedFilterFormValuesKey += lookupTag;\n }\n let __changedFilterFormValues = api.context[__changedFilterFormValuesKey] || {};\n let __changedSearchBoxValues = api.context.__changedSearchBoxValues || {};\n // 列表搜索和快速搜索,有时在某些操作情况下还是会造成crud接口请求使用的过滤条件是上次的,这里强制把正确的过滤条件返回到crud,详细规则见:https://github.com/steedos/steedos-platform/issues/7112\n payload.data[__changedFilterFormValuesKey] = __changedFilterFormValues;\n payload.data.__changedSearchBoxValues = __changedSearchBoxValues;\n return payload;\n `,(e.optionsFunction||e._optionsFunction)&&(h.adaptor=`\n payload.data.rows = eval(${e.optionsFunction||e._optionsFunction})(api.data.$self);\n return payload;\n `);let b=500;o.paging&&!1===o.paging.enabled&&(b=1e3);let w=null;{let t=o.NAME_FIELD_KEY||"name";"organizations"===o.name&&(t="name"),w=await getTableSchema$1(o,i,{labelFieldName:t,top:b,isLookup:!0,enable_tree:o.enable_tree,...n}),w.affixHeader=!1,w.headerToolbar=getObjectHeaderToolbar(o,l,n.formFactor,{isLookup:!0,keywordsSearchBoxName:v}),"space_users"===r.objectName&&"user"===e.reference_to_field&&a&&(w.headerToolbar.push(getLookupSapceUserTreeSchema(c)),w.className=w.className||" steedos-select-user");const s=o.permissions.allowCreate,u=!lodash.exports.isBoolean(e.create)||e.create;let f=!lodash.exports.isEmpty(e.filters)||!!e.filtersFunction||!!e._filtersFunction;if(s&&u&&!f){const e=await getSchema$5(o,{appId:n.appId,objectName:o.name,formFactor:n.formFactor});e.align="right",w.headerToolbar.splice(w.headerToolbar.length-1,0,e)}w.footerToolbar=o.enable_tree?[]:getObjectFooterToolbar(o,n.formFactor,{isLookup:!0}),!1!==n.filterVisible&&(w.filter=await getObjectFilter(o,p,{...n,isLookup:!0,keywordsSearchBoxName:v,searchable_fields:e.searchable_fields,auto_open_filter:e.auto_open_filter,show_left_filter:e.show_left_filter,filter_form_data:e.filter_form_data})),w.data=Object.assign({},w.data,{"&":"$$",objectName:o.name,uiSchema:o,listName:d,isLookup:!0,__lookupField:{name:e.name,reference_to:o.name,reference_to_field:e.reference_to_field,filters:e.filters,filtersFunction:e.filtersFunction,_filtersFunction:e._filtersFunction,inFilterForm:n.inFilterForm,listviewFilter:_,listviewFiltersFunction:m}}),w.onEvent||(w.onEvent={}),w.onEvent[`@data.changed.${o.name}`]={actions:[{actionType:"reload"},{actionType:"custom",script:`\n // lookup字段弹出列表,点击新建按钮,新建记录成功后,触发@data.changed.xxx,\n // 此时context.props.data值是lookup字段所在表单数据,经测试多层lookup弹出列表新建记录成功后context.props.data始终取的是最近一层的lookup字段所在表单数据,符合预期\n const masterRecord = context.props.data;//event.data._master && event.data._master.record;\n const fieldConfig = ${JSON.stringify(e)};\n let reference_to = fieldConfig.reference_to;\n let saveValue;\n const newRecord = {\n _id: event.data.result.data.recordId,\n ...event.data.__super.__super\n }\n const saveField = fieldConfig.reference_to_field || '_id';\n const saveFieldValue = newRecord[saveField];\n if( fieldConfig._reference_to && (_.isArray(fieldConfig._reference_to) || _.isFunction(fieldConfig._reference_to) || fieldConfig._reference_to.startsWith('function') ) ){\n \n const fieldValue = masterRecord ? masterRecord[fieldConfig.name] : {o: reference_to, ids: []};\n const baseSaveValue = {\n o: reference_to,\n ids: [saveFieldValue]\n };\n if(fieldValue && fieldValue.o){\n if(fieldValue.o === reference_to){\n saveValue = fieldConfig.multiple ? { o: reference_to, ids: fieldValue.ids.concat(saveFieldValue)} : baseSaveValue;\n }else{\n saveValue = baseSaveValue;\n }\n }else{\n saveValue = baseSaveValue;\n }\n\n }else{\n if(fieldConfig.multiple){\n // const fieldValue = (masterRecord && masterRecord[fieldConfig.name]) || [];\n // 连续新建多个记录时,因为masterRecord获取的主记录不是实时的,所以只会勾选最后一个新建的记录\n // 而下面context.context.component指向的是lookup picker组件,可以直接取到用户实时勾选的记录。\n const fieldValue = context.context.component.props.store.toJSON().selectedItems\n saveValue = fieldValue.concat(saveFieldValue);\n }else{\n saveValue = saveFieldValue;\n }\n }\n \n const ctx = ${JSON.stringify(n)};\n const componentId = ctx.defaults && ctx.defaults.formSchema && ctx.defaults.formSchema.id;\n doAction({\n actionType: 'setValue',\n componentId: componentId, \n args: {\n value: { [fieldConfig.name]: saveValue }\n }\n });\n `}]}}e.pickerSchema&&(w=Object.assign({},w,e.pickerSchema)),"space_users"===r.objectName&&"user"===e.reference_to_field&&c&&(w.headerToolbar=w.headerToolbar&&w.headerToolbar.filter((function(e){return["steedos_crud_toolbar_quick_search","steedos_crud_toolbar_filter","steedos_crud_toolbar_select_user_tree","steedos_crud_toolbar_organization_button"].indexOf(e.id)>-1})),w.footerToolbar=["pagination"]),e.inlineHelpText&&(w.toolbarClassName="hasHelpText",w.headerToolbar=[{type:"tpl",tpl:e.inlineHelpText,className:"text-secondary"},...w.headerToolbar]),w.className=(w.className||"")+" steedos-lookup-crud";const S={type:getAmisStaticFieldType("picker",t),className:n.className||"",modalTitle:instance.t("frontend_form_please_select")+" "+o.label,labelField:r.labelField.name,valueField:r.valueField.name,disabledOn:`${t} || ( (this._master && (this._master.relatedKey ==='${e.name}')) || ((this.relatedKey ==='${e.name}') && (${e.multiple} != true)) )`,modalMode:"dialog",source:h,size:"lg",pickerSchema:w,joinValues:!1,extractValue:!0};return e.multiple&&(S.multiple=!0,S.extractValue=!0),t&&(S.tpl=await getLookupTpl(e,n)),S}async function lookupToAmisSelect(e,t,n){let r=await getReferenceTo(e);const o=window.innerWidth<=768,a=r&&r.valueField?.name||"_id";let i,s;const l=r&&await getUISchema(r.objectName);if(r){let t=[Object.assign({},r.labelField,{alias:"label"}),Object.assign({},r.valueField,{alias:"value"})],n=e.auto_fill_mapping;n&&n.length&&n.forEach((function(e){t.push(l.fields[e.from])})),s=await getFindQuery({name:r.objectName},null,t,{expand:!1,alias:"defaultValueOptions",filters:"{__options_filters}",count:!1}),i=await getApi({name:r.objectName},null,t,{expand:!1,alias:"options",queryOptions:'filters: {__filters}, top: {__top}, sort: "{__sort}"'}),i.adaptor='\n const data = payload.data;\n var defaultValueOptions = data.defaultValueOptions;\n // 字段值下拉选项合并到options中\n data.options = _.unionWith(defaultValueOptions, data.options, function(a,b){\n return a["value"]=== b["value"];\n });\n delete data.defaultValueOptions;\n payload.data.options = data.options;\n return payload;\n '}else i={method:"post",data:{$:"$$",query:""},url:"/api/amis/health_check?reload=${additionalFilters|join}&listName=${listName}"};let c=getLookupListView(l),u=getListViewFilter(c),d=c&&c._filters,f="";if(c&&(f=getListViewSort(c)),i.url&&!n.inFilterForm){const t=[],n=[];lodash.exports.each(e.depend_on,(e=>{t.push(`depend_on_${e}=\${${e}}`),n.push(`this.${e}`)})),t.length>0&&(i.url=`${i.url}&${t.join("&")}`,i.sendOn=`${n.join(" && ")}`)}i.data.$term="$term",i.data.$value=n.isRefToMutiple?`$${e.name}.ids`:`$${e.name}`,lodash.exports.each(e.depend_on,(function(e){i.data[e]=`$${e}`})),i.data.$="$$",i.data.rfield="${object_name}",i.requestAdaptor=`\n ${u&&!n.inFilterForm?`var filters = ${JSON.stringify(u)};`:"var filters = [];"}\n var top = 200;\n if(api.data.$term){\n filters = [["${r?.NAME_FIELD_KEY||"name"}", "contains", api.data.$term]];\n }\n // else if(api.data.$value){\n // filters = [["_id", "=", api.data.$value]];\n // }\n\n var fieldFilters = ${JSON.stringify(e.filters)};\n var currentAmis = (window.amisRequire && window.amisRequire('amis')) || Amis;\n //递归fieldFilters数组,检查每一个元素,判断若是公式,就仅把它解析\n function traverseNestedArray(arr) {\n for (let i = 0; i < arr.length; i++) {\n if (Array.isArray(arr[i])) {\n // 如果当前元素是数组,则递归调用自身继续遍历\n traverseNestedArray(arr[i]);\n } else {\n // 如果当前元素不是数组,则处理该元素\n // 下面正则用于匹配amis公式\${}\n if(/\\$\\{([^}]*)\\}/.test(arr[i])) {\n try{\n arr[i] = currentAmis.evaluate(arr[i], api.context);\n }catch(ex){\n console.error("运行lookup过滤公式时出现错误:",ex);\n }\n }\n }\n }\n }\n if(fieldFilters && fieldFilters.length){\n traverseNestedArray(fieldFilters);\n filters.push(fieldFilters);\n }\n\n if(${"space_users"===r?.objectName} && ${"user"===e.reference_to_field}){\n if(filters.length > 0){\n filters = [ ["user_accepted", "=", true], "and", filters ]\n }else{\n filters = [["user_accepted", "=", true]];\n }\n }\n\n const inFilterForm = ${n.inFilterForm};\n\n const listviewFiltersFunction = ${d};\n\n if(listviewFiltersFunction && !inFilterForm){\n const _filters0 = listviewFiltersFunction(filters, api.data.$);\n if(_filters0 && _filters0.length){\n filters.push(_filters0);\n }\n }\n \n const filtersFunction = ${e.filtersFunction||e._filtersFunction};\n\n if(filtersFunction && !inFilterForm){\n const _filters = filtersFunction(filters, api.data.$);\n if(_filters && _filters.length > 0){\n filters.push(_filters);\n }\n }\n var sort = "${f}";\n api.data.query = api.data.query.replace(/{__filters}/g, JSON.stringify(filters)).replace('{__top}', top).replace('{__sort}', sort.trim());\n\n var defaultValue = api.data.$value;\n var optionsFiltersOp = "${e.multiple?"in":"="}";\n var optionsFilters = [["${a}", optionsFiltersOp, []]];\n if (defaultValue && !api.data.$term) { \n const defaultValueOptionsQueryData = ${JSON.stringify(s)};\n const defaultValueOptionsQuery = defaultValueOptionsQueryData && defaultValueOptionsQueryData.query && defaultValueOptionsQueryData.query.replace(/^{/,"").replace(/}$/,"");\n // 字段值单独请求,没值的时候在请求中返回空\n optionsFilters = [["${a}", optionsFiltersOp, defaultValue]];\n if(filters.length > 0){\n optionsFilters = [filters, optionsFilters];\n }\n if(defaultValueOptionsQuery){\n api.data.query = "{"+api.data.query.replace(/^{/,"").replace(/}$/,"")+","+defaultValueOptionsQuery+"}";\n } \n }\n api.data.query = api.data.query.replace(/{__options_filters}/g, JSON.stringify(optionsFilters));\n return api;\n `,r&&r.labelField.name,r&&r.valueField.name,e.optionsFunction||e._optionsFunction?i.adaptor=`\n var options = eval(${e.optionsFunction||e._optionsFunction})(api.data.$);\n if(api.data.$term){\n options = _.filter(options, function(o) {\n var label = o.label;\n return label.toLowerCase().indexOf(api.data.$term.toLowerCase()) > -1;\n });\n }\n payload.data.options = options;\n return payload;\n `:e.options&&(i.adaptor=`\n var options = ${JSON.stringify(e.options)}\n if(api.data.$term){\n options = _.filter(options, function(o) {\n var label = o.label;\n return label.toLowerCase().indexOf(api.data.$term.toLowerCase()) > -1;\n });\n }\n payload.data.options = options;\n return payload;\n `);const p={type:getAmisStaticFieldType("select",t),joinValues:!1,extractValue:!0,clearable:!0,disabledOn:`${t} || ( (this._master && (this._master.relatedKey ==='${e.name}')) || ((this.relatedKey ==='${e.name}') && (${e.multiple} != true)) )`,autoComplete:i,searchable:!0};getComparableAmisVersion()>=3.6&&(p.source=i,delete p.autoComplete);return o&&e.multiple||(p.menuTpl="${icon ? `<span class='flex items-center mt-0.5'>\n <span role='img' aria-label='smile' class='anticon anticon-smile'>\n <span class='slds-icon_container slds-icon-standard-${REPLACE(icon,'_','-')}'>\n <svg class='slds-icon slds-icon_x-small' aria-hidden='true'>\n <use xlink:href='/assets/icons/standard-sprite/svg/symbols.svg#${icon}'></use>\n </svg>\n </span> \n </span>\n <span class='pl-1.5'>${label}</span>\n </span>` : label}"),e.multiple&&(p.multiple=!0,p.extractValue=!0),t&&(p.tpl=await getLookupTpl(e,n)),p}async function getApi(e,t,n,r){const o=await getFindQuery(e,t,n,r);return{method:"post",url:getApi$2(),data:o,headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}}}async function getAutoFill(e,t){let n=e.auto_fill_mapping;if(n&&n.length){let r={};return e.multiple?n.forEach((function(e){lodash.exports.includes(["lookup","master_detail","select"],t.fields[e.from].type)?r[e.to]=`\${items | pick:${e.from}}`:r[e.to]=`\${items | pick:${e.from} | join}`})):n.forEach((function(e){r[e.to]=`\${${e.from}}`})),r}}async function lookupToAmis(e,t,n){if(n||(n={}),t)return e.reference_to&&!e.isTableField?{type:"steedos-field",config:e,static:!0}:{type:getAmisStaticFieldType("picker",t),tpl:getRelatedFieldTpl(e,n)};if(e.reference_to&&!lodash.exports.isString(e.reference_to)&&!t)return{type:"steedos-field-lookup",field:e,readonly:t,ctx:n};let r=await getReferenceTo(e);if(!r)return await lookupToAmisSelect(e,t,n);if("space_users"===r.objectName&&"user"===e.reference_to_field&&(n=Object.assign({},n,{onlyDisplayLookLabel:!0})).idsDependOn)return await lookupToAmisIdsPicker(e,t,n);const o=await getUISchema(r.objectName);let a,i=lodash.exports.isBoolean(e.enable_enhanced_lookup)?e.enable_enhanced_lookup:o.enable_enhanced_lookup;getComparableAmisVersion()>=3.6&&!i&&o.enable_tree&&e.multiple&&(i=!0),1==i&&e.amis&&e.amis.type&&"picker"!==e.amis.type&&(i=!1),a=1==i?await lookupToAmisPicker(e,t,n):o.enable_tree?await lookupToAmisTreeSelect(e,t,Object.assign({},n,{labelField:r.labelField?.name||"name",valueField:r.valueField?.name||"_id",objectName:r.objectName})):await lookupToAmisSelect(e,t,n);let s=o.pages&&o.pages.lookup;if(s&&s.is_enable){let e=s.amis_schema;"string"==typeof e&&(e=JSON.parse(e)),a=lodash.exports.defaultsDeep({},e,a)}const l=await getAutoFill(e,o);return l&&(a.autoFill=l),a}async function lookupToAmisIdsPicker(e,t,n){return getIdsPickerSchema(e,t,n)}async function getIdsPickerSchema(e,t,n){n||(n={});let r=await getReferenceTo(e);if(!r)return;const o=await getUISchema(r.objectName),{idsDependOn:a}=n,i={[r.labelField.name]:r.labelField,[r.valueField.name]:r.valueField},s=[r.labelField],l=await getApi(o,null,i,{expand:!0,alias:"rows",queryOptions:'filters: {__filters}, top: {__top}, skip: {__skip}, sort: "{__sort}"'});l.data.$term="$term",l.data.$self="$$",a&&l.url&&!n.inFilterForm&&(l.sendOn=`\${${a} && ${a}.length}`,l.url=`${l.url}&depend_on_${a}=\${${a}|join}`);let c=getLookupListView(o),u="";c&&(u=getListViewSort(c)),l.requestAdaptor=`\n const selfData = JSON.parse(JSON.stringify(api.data.$self));\n var filters = [];\n var pageSize = api.data.pageSize || 1000;\n var pageNo = api.data.pageNo || 1;\n var skip = (pageNo - 1) * pageSize;\n var orderBy = api.data.orderBy || '';\n var orderDir = api.data.orderDir || '';\n var sort = orderBy + ' ' + orderDir;\n sort = orderBy ? sort : "${u}";\n if(selfData.op === 'loadOptions' && selfData.value){\n if(selfData.value && selfData.value.indexOf(',') > 0){\n filters = [["${r.valueField.name}", "=", selfData.value.split(',')]];\n }else{\n filters = [["${r.valueField.name}", "=", selfData.value]];\n }\n }\n\n var ids;\n var idsDependOn = "${a}";\n if(idsDependOn){\n ids = api.data.$self[idsDependOn];\n }\n if(ids && ids.length){\n filters.push(["${r.valueField.name}", "=", ids]);\n }\n\n api.data.query = api.data.query.replace(/{__filters}/g, JSON.stringify(filters)).replace('{__top}', pageSize).replace('{__skip}', skip).replace('{__sort}', sort.trim());\n return api;\n `;let d=null;"SMALL"===n.formFactor?d=await getListSchema$1(s,{top:1e3,...n,actions:!1}):(d=await getTableSchema$1(o,s,{labelFieldName:o.NAME_FIELD_KEY,top:1e3,isLookup:!0,...n}),d.affixHeader=!1);const f={type:getAmisStaticFieldType("picker",t),labelField:r.labelField.name,valueField:r.valueField.name,modalMode:"dialog",source:l,disabledOn:`${t} || ( (this._master && (this._master.relatedKey ==='${e.name}')) || ((this.relatedKey ==='${e.name}') && (${e.multiple} != true)) )`,size:"lg",pickerSchema:d,joinValues:!1,extractValue:!0};return e.multiple&&(f.multiple=!0,f.extractValue=!0),n.value&&(f.value=n.value),null!=n.selectFirst&&(f.selectFirst=n.selectFirst),t&&(f.tpl=await getLookupTpl(e,n)),f}"undefined"!=typeof window&&(window.getReferenceTo=getReferenceTo,window.getReferenceToSync=getReferenceToSync);const getMarkdownFieldSchema=(e,t,n)=>t?{type:"control",label:e.label,body:{type:"markdown",name:e.name,options:{linkify:!0,html:!0,breaks:!0}}}:{type:"control",label:e.label,body:[{type:"tabs",tabsMode:"strong",className:"steedos-markdown",tabs:[{title:instance.t("frontend_form_edit"),tab:[{type:"editor",name:e.name,labelClassName:"none",language:"markdown",options:e.amis?e.amis.editorOptions:null}]},{title:instance.t("frontend_form_preview"),tab:[{type:"markdown",name:e.name,options:{linkify:!0,html:!0,breaks:!0}}]}]}]},getHtmlFieldSchema=(e,t,n)=>t?{type:"input-rich-text",receiver:"${context.rootUrl}/s3/images",name:e.name,options:{plugins:["autoresize"],statusbar:!1,readonly:!0,toolbar:!1,menubar:!1}}:{type:"input-rich-text",receiver:"${context.rootUrl}/s3/images",options:{statusbar:!1,menubar:!1},name:e.name},QUICK_SEARCHABLE_FIELD_TYPES=["text","textarea","autonumber","url","email"],OMIT_FIELDS=["created","created_by","modified","modified_by"];function getObjectFieldSubFields(e,t){const n=Object.assign({subFields:[]},e),r=lodash.exports.filter(t,(function(t){let n=t.name.startsWith(`${e.name}.`)&&lodash.exports.split(t.name,".").length<3;return n&&(t._prefix=`${e.name}.`),n}));return n.subFields=r,n}function getGridFieldSubFields(e,t){const n=Object.assign({subFields:[]},e),r=lodash.exports.filter(t,(function(t){let n=t.name.startsWith(`${e.name}.`);return n&&(t._prefix=`${e.name}.`),n}));return n.subFields=r,n}function getTabledFieldSubFields(e,t){const n=Object.assign({subFields:[]},e),r=lodash.exports.filter(t,(function(t){let n=t.name.startsWith(`${e.name}.`);return n&&(t._prefix=`${e.name}.`),n}));return n.subFields=r,n}function getSelectFieldOptions(e){const t=e.data_type||"text",n=[];return lodash.exports.each(e.options,(e=>{switch(t){case"number":n.push({label:e.label,value:Number(e.value),icon:e.icon});break;case"text":n.push({label:e.label,value:String(e.value),icon:e.icon});break;case"boolean":n.push({label:e.label,value:"false"!==e.value,icon:e.icon})}})),n}async function convertSFieldToAmisField(e,t,n){const r=window.innerWidth<=768;if(lodash.exports.includes(OMIT_FIELDS,e.name)&&1!=n.showSystemFields)return;const o={name:n.fieldNamePrefix?`${n.fieldNamePrefix}${e.name}`:e.name,label:e.label,labelRemark:e.inlineHelpText,description:e.description,required:lodash.exports.has(n,"required")?n.required:e.required};let a={};switch(e.type){case"text":a.type=getAmisStaticFieldType("text",t,e);break;case"textarea":a.type=getAmisStaticFieldType("textarea",t),a.tpl=`<%=(data.${e.name} || "").split("\\n").join('<br>')%>`;break;case"html":a=getHtmlFieldSchema(e,t);break;case"markdown":a=getMarkdownFieldSchema(e,t);break;case"select":if(t){const t=getSelectMap(e.options);a={type:"static-mapping",name:e.name,label:e.label,options:e.options,map:t}}else{a={type:getAmisStaticFieldType("select",t),joinValues:!1,options:getSelectFieldOptions(e),extractValue:!0,clearable:!0,labelField:"label",valueField:"value"};const n="${icon ? `"+"<span class='flex items-center mt-0.5'>\n <span role='img' aria-label='smile' class='anticon anticon-smile'>\n <span class='slds-icon_container slds-icon-standard-${REPLACE(icon,'_','-')}'>\n <svg class='slds-icon slds-icon_x-small' aria-hidden='true'>\n <use xlink:href='/assets/icons/standard-sprite/svg/symbols.svg#${icon}'></use>\n </svg>\n </span> \n </span>\n <span class='pl-1.5'>${label}</span>\n </span>"+"` : label}";r&&e.multiple||(a.menuTpl=n),e.multiple&&(a.multiple=!0,a.extractValue=!0)}break;case"color":a={type:getAmisStaticFieldType("color",t),name:e.name,label:e.label},t?a.defaultColor=null:a.pipeIn=(e,t)=>e&&e.indexOf("#")<0?"#"+e:e;break;case"boolean":a={type:getAmisStaticFieldType("checkbox",t),tpl:t?getSwitchTpl(e):null};break;case"input-date-range":a={type:"input-date-range",inputFormat:"YYYY-MM-DD",format:"YYYY-MM-DDT00:00:00.000[Z]",tpl:t?getDateTpl(e):null,joinValues:!1,shortcuts:["thismonth","2monthsago","3monthslater","prevquarter","thisquarter","thisyear","lastYear"]};break;case"date":a={type:getAmisStaticFieldType("date",t),inputFormat:"YYYY-MM-DD",format:"YYYY-MM-DDT00:00:00.000[Z]",tpl:t?getDateTpl(e):null};break;case"input-datetime-range":a={type:"input-datetime-range",inputFormat:"YYYY-MM-DD HH:mm",format:"YYYY-MM-DDTHH:mm:ss.SSSZ",tpl:t?getDateTimeTpl(e):null,utc:!0,joinValues:!1,shortcuts:["thismonth","2monthsago","3monthslater","prevquarter","thisquarter","thisyear","lastYear"]};break;case"datetime":a={type:getAmisStaticFieldType("datetime",t),inputFormat:"YYYY-MM-DD HH:mm",format:"YYYY-MM-DDTHH:mm:00.000Z",tpl:t?getDateTimeTpl(e):null,utc:!0};break;case"input-time-range":a={type:"input-time-range",inputFormat:"HH:mm",timeFormat:"HH:mm",format:"1970-01-01THH:mm:00.000[Z]",tpl:t?getDateTimeTpl(e):null,joinValues:!1};break;case"time":a={type:getAmisStaticFieldType("time",t),inputFormat:"HH:mm",timeFormat:"HH:mm",format:"1970-01-01THH:mm:00.000[Z]",tpl:t?getDateTimeTpl(e):null};break;case"currency":case"number":a=t?{type:"static-tpl",tpl:getNumberTpl(e)}:{type:getAmisStaticFieldType("number",t),min:e.min,max:e.max,precision:e.scale};break;case"input-array":a=Object.assign({},e,o);break;case"input-range":a={type:"input-range",min:e.min,max:e.max,value:[0,0],multiple:!0,showInput:!0};break;case"percent":a=t?{type:"static-progress",name:"progress",pipeIn:(t,n)=>{if(t){return Number((100*t).toFixed(e.scale))}return t}}:{type:getAmisStaticFieldType("number",t),min:e.min,max:e.max,precision:e.scale,suffix:"%",pipeIn:(t,n)=>{if(t){return Number((100*t).toFixed(e.scale))}return t},pipeOut:(t,n,r)=>{if(t){return Number((t/100).toFixed(e.scale+2))}return t}};break;case"password":a={type:getAmisStaticFieldType("password",t),tpl:t?getPasswordTpl(e):null};break;case"lookup":case"master_detail":a=await lookupToAmis(e,t,n);break;case"autonumber":t?a={type:"static-text"}:e.autonumber_enable_modify&&(a={type:"input-group",body:[{type:"input-text",name:e.name},{type:"button",label:"自动获取",actionType:"ajax",api:{url:`\${context.rootUrl}/api/autonumber/generator/\${objectName}/${e.name}`,method:"post",headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"},adaptor:`\n var tempValue = payload.data && payload.data.autonumber;\n delete payload.data.autonumber;\n payload.data["${e.name}"] = tempValue;\n return payload;\n `},messages:{success:"获取成功"}}]});break;case"url":if(a={type:getAmisStaticFieldType("url",t,e),static:!!t},!t){let t=e.amis?.validations;void 0===t&&Object.assign(a,{validations:{matchRegexp:"^((http:\\/\\/|https:\\/\\/|ftp:\\/\\/|sftp:\\/\\/)+([^\\s\\/\\.]+(\\.[^\\s\\/\\.]+)+))*(\\/[^\\s\\.\\/]+)*$"},validationErrors:{matchRegexp:instance.t("frontend_form_validation_failed_url")}})}t&&e.show_as_qr&&(a={type:"control",label:e.label,body:{type:"qr-code",codeSize:128,name:e.name}});break;case"email":a={type:getAmisStaticFieldType("email",t)};break;case"location":let i="LiZT5dVbGTsPI91tFGcOlSpe5FDehpf7",s="baidu";if(window.Meteor){const e=Meteor.settings?.public?.amis?.map_ak;e&&(i=e);const t=Meteor.settings?.public?.amis?.map_vendor;t&&(s=t)}const l=e.coordinatesType||"bd09";a={type:getAmisStaticFieldType("location",t),tpl:t?getLocationTpl(e):null,ak:i,vendor:s,clearable:!0,coordinatesType:l,label:e.label,pipeOut:(e,t,n)=>{if(e){const t=e.lng,n=e.lat;let r=[t,n];if(window.coordtransform)if("bd09"===l.toLowerCase()){const e=window.coordtransform.bd09togcj02(t,n);r=window.coordtransform.gcj02towgs84(e[0],e[1])}else"gcj02"===l.toLowerCase()&&(r=window.coordtransform.gcj02towgs84(t,n));return e.wgs84={type:"Point",coordinates:r},e}}};break;case"avatar":case"image":case"file":a=await getAmisFileSchema(e,t,n);break;case"formula":case"summary":t&&(a={type:"static-tpl",tpl:getUiFieldTpl(e)});break;case"code":a={type:"editor",disabled:!!t,language:e.language,editorDidMount:new Function("editor","monaco",e.editorDidMount)};break;case"toggle":a={type:"switch",name:e.name,label:e.label,width:e.width,toggled:e.toggled,disabled:t};break;case"grid":if(e.subFields){a={type:"input-table",showIndex:!0,columnsTogglable:!1,strictMode:!1,affixHeader:!1,needConfirm:!1,editable:!t,addable:!t,removable:!t,draggable:!t,columns:[]};for(const r of e.subFields){const o=r.name.replace(`${e._prefix||""}${e.name}.$.`,"").replace(`${e.name}.`,""),i=await convertSFieldToAmisField(Object.assign({},r,{name:o,isTableField:!0}),t,n);if(i){delete i.name,delete i.label;const e={name:o,label:r.label,quickEdit:!t&&i};["lookup","boolean","toggle"].indexOf(r.type)>-1&&(e.type=i.type,e.tpl=i.tpl),a.columns.push(Object.assign({},e,r.amis,{name:o}))}}}break;case"table":if(e.subFields){a={type:"steedos-input-table",editable:!t,addable:!t,removable:!t,fields:[],amis:{columnsTogglable:!1}};for(const t of e.subFields)if(!t.name.endsWith(".$")){const n=t.name.replace(`${e._prefix||""}${e.name}.$.`,"").replace(`${e.name}.`,"");a.fields.push(Object.assign({},t,{name:n}))}}break;case"object":if(e.subFields){a={type:"combo",items:[]};for(let r of e.subFields){let o=r.name.replace(`${e.name}.$.`,"").replace(`${e.name}.`,"");"grid"===r.type?r=await getGridFieldSubFields(r,n.__formFields):"table"===r.type?r=await getTabledFieldSubFields(r,n.__formFields):t&&(o=`${e.name}.${o}`);const i=await convertSFieldToAmisField(Object.assign({},r,{name:o}),t,n);i&&(delete i.name,delete i.label,i.className=i.className.replace("border-b",""),a.items.push(Object.assign({},i,{label:r.label},r.amis,{name:o})))}}}if(!lodash.exports.isEmpty(a)){const r=a.className;e.is_wide||"group"===a.type?a.className=r?"col-span-2 m-0 "+r:"col-span-2 m-0":a.className=r?"m-0 "+r:"m-0",t&&"edit"!==n.mode&&(a.className=`${a.className} border-b`),t&&(a.quickEdit=!1,a.static=!0);let i,s=" steedos-"+a.type+(t?"-readonly":"-edit");return a.className=a.className+s,e.visible_on&&!n.inFilterForm&&(e.visible_on.startsWith("{{")?a.visibleOn=`${e.visible_on.substring(2,e.visible_on.length-2).replace(/formData./g,"data.")}`:a.visibleOn=`${e.visible_on.replace(/formData./g,"data.")}`),n.amisData&&n.amisData._master&&n.amisData._master.relatedKey===e.name&&(a.className=`${a.className||""} hidden`),lodash.exports.isString(o.required)&&o.required.startsWith("{{")&&(o.requiredOn=`${o.required.substring(2,o.required.length-2).replace(/formData./g,"data.")}`,delete o.required),"group"===a.type?(a.body[0]=Object.assign({},o,a.body[0],{labelClassName:"text-left",clearValueOnHidden:!0,fieldName:e.name}),a):(i="steedos-field"==a.type?Object.assign({},o,a,{labelClassName:"text-left",clearValueOnHidden:!0,fieldName:e.name},{name:o.name}):Object.assign({},o,a,{labelClassName:"text-left",clearValueOnHidden:!0,fieldName:e.name},e.amis,{name:o.name}),t&&"file"==e.type&&(i.name=""),i)}}async function getFieldSearchable(e,t,n){n||(n={});let r=e;"grid"===r.type?r=await getGridFieldSubFields(e,t):"object"===e.type&&(r=await getObjectFieldSubFields(e,t));let o="__searchable__";if(r.name.indexOf(".")<0){let e=lodash.exports.cloneDeep(r);lodash.exports.includes(["textarea","html","code","autonumber"],r.type)&&(e.type="text"),lodash.exports.includes(["formula","summary"],r.type)&&(e.type=r.data_type,e.precision=r.precision,e.scale=r.scale),"number"!==e.type&&"currency"!==e.type||(e.type="input-array",e.inline=!0,e.addable=!1,e.removable=!1,e.value=[null,null],e.items={type:"input-number",clearValueOnEmpty:!0},e.is_wide=!0,o=`${o}between__`),"date"===e.type&&(e.type="input-date-range",e.is_wide=!0,o=`${o}between__`),"datetime"===e.type&&(e.type="input-datetime-range",e.is_wide=!0,o=`${o}between__`),"time"===e.type&&(e.type="input-time-range",e.is_wide=!0,o=`${o}between__`),"users"===e.reference_to&&(e.reference_to="space_users",e.reference_to_field="user"),e.readonly=!1,e.disabled=!1,e.multiple=!0,e.is_wide=!1,e.defaultValue=void 0,e.required=!1,e.hidden=!1,e.omit=!1,e.amis&&(delete e.amis.static,delete e.amis.staticOn,delete e.amis.disabled,delete e.amis.disabledOn,delete e.amis.required,delete e.amis.requiredOn,delete e.amis.visible,delete e.amis.visibleOn,delete e.amis.hidden,delete e.amis.hiddenOn,delete e.amis.autoFill,(e.type.indexOf("-range")>-1||"input-array"===e.type)&&delete e.amis.type);const t=await convertSFieldToAmisField(e,!1,Object.assign({},n,{fieldNamePrefix:o,required:!1,showSystemFields:!0,inFilterForm:!0}));if(t)return t}}function isFieldTypeSearchable(e){return!lodash.exports.includes(["grid","table","avatar","image","object","[object]","[Object]","[grid]","[text]","audio","file"],e)}function isFieldQuickSearchable(e,t){let n=e.searchable;return!1!==n&&e.name===t&&(n=!0),!!(n&&QUICK_SEARCHABLE_FIELD_TYPES.indexOf(e.type)>-1)}function useCombinedRefs(...e){return React.useMemo((()=>t=>{e.forEach((e=>e(t)))}),e)}"undefined"!=typeof window&&(window.getFieldSearchable=getFieldSearchable),"undefined"!=typeof window&&(window.isFieldTypeSearchable=isFieldTypeSearchable);const canUseDOM="undefined"!=typeof window&&void 0!==window.document&&void 0!==window.document.createElement;function isWindow(e){const t=Object.prototype.toString.call(e);return"[object Window]"===t||"[object global]"===t}function isNode(e){return"nodeType"in e}function getWindow(e){var t,n;return e?isWindow(e)?e:isNode(e)&&null!=(t=null==(n=e.ownerDocument)?void 0:n.defaultView)?t:window:window}function isDocument(e){const{Document:t}=getWindow(e);return e instanceof t}function isHTMLElement(e){return!isWindow(e)&&e instanceof getWindow(e).HTMLElement}function isSVGElement(e){return e instanceof getWindow(e).SVGElement}function getOwnerDocument(e){return e?isWindow(e)?e.document:isNode(e)?isDocument(e)?e:isHTMLElement(e)?e.ownerDocument:document:document:document}const useIsomorphicLayoutEffect=canUseDOM?React.useLayoutEffect:React.useEffect;function useEvent(e){const t=React.useRef(e);return useIsomorphicLayoutEffect((()=>{t.current=e})),React.useCallback((function(...e){return null==t.current?void 0:t.current(...e)}),[])}function useInterval(){const e=React.useRef(null);return[React.useCallback(((t,n)=>{e.current=setInterval(t,n)}),[]),React.useCallback((()=>{null!==e.current&&(clearInterval(e.current),e.current=null)}),[])]}function useLatestValue(e,t=[e]){const n=React.useRef(e);return useIsomorphicLayoutEffect((()=>{n.current!==e&&(n.current=e)}),t),n}function useLazyMemo(e,t){const n=React.useRef();return React.useMemo((()=>{const t=e(n.current);return n.current=t,t}),[...t])}function useNodeRef(e){const t=useEvent(e),n=React.useRef(null),r=React.useCallback((e=>{e!==n.current&&(null==t||t(e,n.current)),n.current=e}),[]);return[n,r]}function usePrevious(e){const t=React.useRef();return React.useEffect((()=>{t.current=e}),[e]),t.current}let ids={};function useUniqueId(e,t){return React.useMemo((()=>{if(t)return t;const n=null==ids[e]?0:ids[e]+1;return ids[e]=n,`${e}-${n}`}),[e,t])}function createAdjustmentFn(e){return(t,...n)=>n.reduce(((t,n)=>{const r=Object.entries(n);for(const[n,o]of r){const r=t[n];null!=r&&(t[n]=r+e*o)}return t}),{...t})}const add=createAdjustmentFn(1),subtract=createAdjustmentFn(-1);function hasViewportRelativeCoordinates(e){return"clientX"in e&&"clientY"in e}function isKeyboardEvent(e){if(!e)return!1;const{KeyboardEvent:t}=getWindow(e.target);return t&&e instanceof t}function isTouchEvent(e){if(!e)return!1;const{TouchEvent:t}=getWindow(e.target);return t&&e instanceof t}function getEventCoordinates(e){if(isTouchEvent(e)){if(e.touches&&e.touches.length){const{clientX:t,clientY:n}=e.touches[0];return{x:t,y:n}}if(e.changedTouches&&e.changedTouches.length){const{clientX:t,clientY:n}=e.changedTouches[0];return{x:t,y:n}}}return hasViewportRelativeCoordinates(e)?{x:e.clientX,y:e.clientY}:null}const CSS=Object.freeze({Translate:{toString(e){if(!e)return;const{x:t,y:n}=e;return`translate3d(${t?Math.round(t):0}px, ${n?Math.round(n):0}px, 0)`}},Scale:{toString(e){if(!e)return;const{scaleX:t,scaleY:n}=e;return`scaleX(${t}) scaleY(${n})`}},Transform:{toString(e){if(e)return[CSS.Translate.toString(e),CSS.Scale.toString(e)].join(" ")}},Transition:{toString:({property:e,duration:t,easing:n})=>`${e} ${t}ms ${n}`}}),SELECTOR="a,frame,iframe,input:not([type=hidden]):not(:disabled),select:not(:disabled),textarea:not(:disabled),button:not(:disabled),*[tabindex]";function findFirstFocusableNode(e){return e.matches(SELECTOR)?e:e.querySelector(SELECTOR)}const hiddenStyles={display:"none"};function HiddenText(e){let{id:t,value:n}=e;return React__default.default.createElement("div",{id:t,style:hiddenStyles},n)}const visuallyHidden={position:"fixed",width:1,height:1,margin:-1,border:0,padding:0,overflow:"hidden",clip:"rect(0 0 0 0)",clipPath:"inset(100%)",whiteSpace:"nowrap"};function LiveRegion(e){let{id:t,announcement:n}=e;return React__default.default.createElement("div",{id:t,style:visuallyHidden,role:"status","aria-live":"assertive","aria-atomic":!0},n)}function useAnnouncement(){const[e,t]=React.useState("");return{announce:React.useCallback((e=>{null!=e&&t(e)}),[]),announcement:e}}const DndMonitorContext=React.createContext(null);function useDndMonitor(e){const t=React.useContext(DndMonitorContext);React.useEffect((()=>{if(!t)throw new Error("useDndMonitor must be used within a children of <DndContext>");return t(e)}),[e,t])}function useDndMonitorProvider(){const[e]=React.useState((()=>new Set)),t=React.useCallback((t=>(e.add(t),()=>e.delete(t))),[e]);return[React.useCallback((t=>{let{type:n,event:r}=t;e.forEach((e=>{var t;return null==(t=e[n])?void 0:t.call(e,r)}))}),[e]),t]}const defaultScreenReaderInstructions={draggable:"\n To pick up a draggable item, press the space bar.\n While dragging, use the arrow keys to move the item.\n Press space again to drop the item in its new position, or press escape to cancel.\n "},defaultAnnouncements={onDragStart(e){let{active:t}=e;return"Picked up draggable item "+t.id+"."},onDragOver(e){let{active:t,over:n}=e;return n?"Draggable item "+t.id+" was moved over droppable area "+n.id+".":"Draggable item "+t.id+" is no longer over a droppable area."},onDragEnd(e){let{active:t,over:n}=e;return n?"Draggable item "+t.id+" was dropped over droppable area "+n.id:"Draggable item "+t.id+" was dropped."},onDragCancel(e){let{active:t}=e;return"Dragging was cancelled. Draggable item "+t.id+" was dropped."}};function Accessibility(e){let{announcements:t=defaultAnnouncements,container:n,hiddenTextDescribedById:r,screenReaderInstructions:o=defaultScreenReaderInstructions}=e;const{announce:a,announcement:i}=useAnnouncement(),s=useUniqueId("DndLiveRegion"),[l,c]=React.useState(!1);if(React.useEffect((()=>{c(!0)}),[]),useDndMonitor(React.useMemo((()=>({onDragStart(e){let{active:n}=e;a(t.onDragStart({active:n}))},onDragMove(e){let{active:n,over:r}=e;t.onDragMove&&a(t.onDragMove({active:n,over:r}))},onDragOver(e){let{active:n,over:r}=e;a(t.onDragOver({active:n,over:r}))},onDragEnd(e){let{active:n,over:r}=e;a(t.onDragEnd({active:n,over:r}))},onDragCancel(e){let{active:n,over:r}=e;a(t.onDragCancel({active:n,over:r}))}})),[a,t])),!l)return null;const u=React__default.default.createElement(React__default.default.Fragment,null,React__default.default.createElement(HiddenText,{id:r,value:o.draggable}),React__default.default.createElement(LiveRegion,{id:s,announcement:i}));return n?reactDom.createPortal(u,n):u}var Action$1;function noop(){}function useSensor(e,t){return React.useMemo((()=>({sensor:e,options:null!=t?t:{}})),[e,t])}function useSensors(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return React.useMemo((()=>[...t].filter((e=>null!=e))),[...t])}!function(e){e.DragStart="dragStart",e.DragMove="dragMove",e.DragEnd="dragEnd",e.DragCancel="dragCancel",e.DragOver="dragOver",e.RegisterDroppable="registerDroppable",e.SetDroppableDisabled="setDroppableDisabled",e.UnregisterDroppable="unregisterDroppable"}(Action$1||(Action$1={}));const defaultCoordinates=Object.freeze({x:0,y:0});function distanceBetween(e,t){return Math.sqrt(Math.pow(e.x-t.x,2)+Math.pow(e.y-t.y,2))}function getRelativeTransformOrigin(e,t){const n=getEventCoordinates(e);if(!n)return"0 0";return(n.x-t.left)/t.width*100+"% "+(n.y-t.top)/t.height*100+"%"}function sortCollisionsAsc(e,t){let{data:{value:n}}=e,{data:{value:r}}=t;return n-r}function sortCollisionsDesc(e,t){let{data:{value:n}}=e,{data:{value:r}}=t;return r-n}function cornersOfRectangle(e){let{left:t,top:n,height:r,width:o}=e;return[{x:t,y:n},{x:t+o,y:n},{x:t,y:n+r},{x:t+o,y:n+r}]}function getFirstCollision(e,t){if(!e||0===e.length)return null;const[n]=e;return t?n[t]:n}function centerOfRectangle(e,t,n){return void 0===t&&(t=e.left),void 0===n&&(n=e.top),{x:t+.5*e.width,y:n+.5*e.height}}const closestCenter=e=>{let{collisionRect:t,droppableRects:n,droppableContainers:r}=e;const o=centerOfRectangle(t,t.left,t.top),a=[];for(const e of r){const{id:t}=e,r=n.get(t);if(r){const n=distanceBetween(centerOfRectangle(r),o);a.push({id:t,data:{droppableContainer:e,value:n}})}}return a.sort(sortCollisionsAsc)},closestCorners=e=>{let{collisionRect:t,droppableRects:n,droppableContainers:r}=e;const o=cornersOfRectangle(t),a=[];for(const e of r){const{id:t}=e,r=n.get(t);if(r){const n=cornersOfRectangle(r),i=o.reduce(((e,t,r)=>e+distanceBetween(n[r],t)),0),s=Number((i/4).toFixed(4));a.push({id:t,data:{droppableContainer:e,value:s}})}}return a.sort(sortCollisionsAsc)};function getIntersectionRatio(e,t){const n=Math.max(t.top,e.top),r=Math.max(t.left,e.left),o=Math.min(t.left+t.width,e.left+e.width),a=Math.min(t.top+t.height,e.top+e.height),i=o-r,s=a-n;if(r<o&&n<a){const n=t.width*t.height,r=e.width*e.height,o=i*s;return Number((o/(n+r-o)).toFixed(4))}return 0}const rectIntersection=e=>{let{collisionRect:t,droppableRects:n,droppableContainers:r}=e;const o=[];for(const e of r){const{id:r}=e,a=n.get(r);if(a){const n=getIntersectionRatio(a,t);n>0&&o.push({id:r,data:{droppableContainer:e,value:n}})}}return o.sort(sortCollisionsDesc)};function isPointWithinRect(e,t){const{top:n,left:r,bottom:o,right:a}=t;return n<=e.y&&e.y<=o&&r<=e.x&&e.x<=a}const pointerWithin=e=>{let{droppableContainers:t,droppableRects:n,pointerCoordinates:r}=e;if(!r)return[];const o=[];for(const e of t){const{id:t}=e,a=n.get(t);if(a&&isPointWithinRect(r,a)){const n=cornersOfRectangle(a).reduce(((e,t)=>e+distanceBetween(r,t)),0),i=Number((n/4).toFixed(4));o.push({id:t,data:{droppableContainer:e,value:i}})}}return o.sort(sortCollisionsAsc)};function adjustScale(e,t,n){return{...e,scaleX:t&&n?t.width/n.width:1,scaleY:t&&n?t.height/n.height:1}}function getRectDelta(e,t){return e&&t?{x:e.left-t.left,y:e.top-t.top}:defaultCoordinates}function createRectAdjustmentFn(e){return function(t){for(var n=arguments.length,r=new Array(n>1?n-1:0),o=1;o<n;o++)r[o-1]=arguments[o];return r.reduce(((t,n)=>({...t,top:t.top+e*n.y,bottom:t.bottom+e*n.y,left:t.left+e*n.x,right:t.right+e*n.x})),{...t})}}const getAdjustedRect=createRectAdjustmentFn(1);function parseTransform(e){if(e.startsWith("matrix3d(")){const t=e.slice(9,-1).split(/, /);return{x:+t[12],y:+t[13],scaleX:+t[0],scaleY:+t[5]}}if(e.startsWith("matrix(")){const t=e.slice(7,-1).split(/, /);return{x:+t[4],y:+t[5],scaleX:+t[0],scaleY:+t[3]}}return null}function inverseTransform(e,t,n){const r=parseTransform(t);if(!r)return e;const{scaleX:o,scaleY:a,x:i,y:s}=r,l=e.left-i-(1-o)*parseFloat(n),c=e.top-s-(1-a)*parseFloat(n.slice(n.indexOf(" ")+1)),u=o?e.width/o:e.width,d=a?e.height/a:e.height;return{width:u,height:d,top:c,right:l+u,bottom:c+d,left:l}}const defaultOptions={ignoreTransform:!1};function getClientRect(e,t){void 0===t&&(t=defaultOptions);let n=e.getBoundingClientRect();if(t.ignoreTransform){const{getComputedStyle:t}=getWindow(e),{transform:r,transformOrigin:o}=t(e);r&&(n=inverseTransform(n,r,o))}const{top:r,left:o,width:a,height:i,bottom:s,right:l}=n;return{top:r,left:o,width:a,height:i,bottom:s,right:l}}function getTransformAgnosticClientRect(e){return getClientRect(e,{ignoreTransform:!0})}function getWindowClientRect(e){const t=e.innerWidth,n=e.innerHeight;return{top:0,left:0,right:t,bottom:n,width:t,height:n}}function isFixed(e,t){return void 0===t&&(t=getWindow(e).getComputedStyle(e)),"fixed"===t.position}function isScrollable(e,t){void 0===t&&(t=getWindow(e).getComputedStyle(e));const n=/(auto|scroll|overlay)/;return["overflow","overflowX","overflowY"].some((e=>{const r=t[e];return"string"==typeof r&&n.test(r)}))}function getScrollableAncestors(e,t){const n=[];return e?function r(o){if(null!=t&&n.length>=t)return n;if(!o)return n;if(isDocument(o)&&null!=o.scrollingElement&&!n.includes(o.scrollingElement))return n.push(o.scrollingElement),n;if(!isHTMLElement(o)||isSVGElement(o))return n;if(n.includes(o))return n;const{getComputedStyle:a}=getWindow(o),i=a(o);return o!==e&&isScrollable(o,i)&&n.push(o),isFixed(o,i)?n:r(o.parentNode)}(e):n}function getFirstScrollableAncestor(e){const[t]=getScrollableAncestors(e,1);return null!=t?t:null}function getScrollableElement(e){return canUseDOM&&e?isWindow(e)?e:isNode(e)?isDocument(e)||e===getOwnerDocument(e).scrollingElement?window:isHTMLElement(e)?e:null:null:null}function getScrollXCoordinate(e){return isWindow(e)?e.scrollX:e.scrollLeft}function getScrollYCoordinate(e){return isWindow(e)?e.scrollY:e.scrollTop}function getScrollCoordinates(e){return{x:getScrollXCoordinate(e),y:getScrollYCoordinate(e)}}var Direction;function isDocumentScrollingElement(e){return!(!canUseDOM||!e)&&e===document.scrollingElement}function getScrollPosition(e){const t={x:0,y:0},n=isDocumentScrollingElement(e)?{height:window.innerHeight,width:window.innerWidth}:{height:e.clientHeight,width:e.clientWidth},r={x:e.scrollWidth-n.width,y:e.scrollHeight-n.height};return{isTop:e.scrollTop<=t.y,isLeft:e.scrollLeft<=t.x,isBottom:e.scrollTop>=r.y,isRight:e.scrollLeft>=r.x,maxScroll:r,minScroll:t}}!function(e){e[e.Forward=1]="Forward",e[e.Backward=-1]="Backward"}(Direction||(Direction={}));const defaultThreshold={x:.2,y:.2};function getScrollDirectionAndSpeed(e,t,n,r,o){let{top:a,left:i,right:s,bottom:l}=n;void 0===r&&(r=10),void 0===o&&(o=defaultThreshold);const{isTop:c,isBottom:u,isLeft:d,isRight:f}=getScrollPosition(e),p={x:0,y:0},_={x:0,y:0},m=t.height*o.y,g=t.width*o.x;return!c&&a<=t.top+m?(p.y=Direction.Backward,_.y=r*Math.abs((t.top+m-a)/m)):!u&&l>=t.bottom-m&&(p.y=Direction.Forward,_.y=r*Math.abs((t.bottom-m-l)/m)),!f&&s>=t.right-g?(p.x=Direction.Forward,_.x=r*Math.abs((t.right-g-s)/g)):!d&&i<=t.left+g&&(p.x=Direction.Backward,_.x=r*Math.abs((t.left+g-i)/g)),{direction:p,speed:_}}function getScrollElementRect(e){if(e===document.scrollingElement){const{innerWidth:e,innerHeight:t}=window;return{top:0,left:0,right:e,bottom:t,width:e,height:t}}const{top:t,left:n,right:r,bottom:o}=e.getBoundingClientRect();return{top:t,left:n,right:r,bottom:o,width:e.clientWidth,height:e.clientHeight}}function getScrollOffsets(e){return e.reduce(((e,t)=>add(e,getScrollCoordinates(t))),defaultCoordinates)}function getScrollXOffset(e){return e.reduce(((e,t)=>e+getScrollXCoordinate(t)),0)}function getScrollYOffset(e){return e.reduce(((e,t)=>e+getScrollYCoordinate(t)),0)}function scrollIntoViewIfNeeded(e,t){if(void 0===t&&(t=getClientRect),!e)return;const{top:n,left:r,bottom:o,right:a}=t(e);getFirstScrollableAncestor(e)&&(o<=0||a<=0||n>=window.innerHeight||r>=window.innerWidth)&&e.scrollIntoView({block:"center",inline:"center"})}const properties=[["x",["left","right"],getScrollXOffset],["y",["top","bottom"],getScrollYOffset]];class Rect{constructor(e,t){this.rect=void 0,this.width=void 0,this.height=void 0,this.top=void 0,this.bottom=void 0,this.right=void 0,this.left=void 0;const n=getScrollableAncestors(t),r=getScrollOffsets(n);this.rect={...e},this.width=e.width,this.height=e.height;for(const[e,t,o]of properties)for(const a of t)Object.defineProperty(this,a,{get:()=>{const t=o(n),i=r[e]-t;return this.rect[a]+i},enumerable:!0});Object.defineProperty(this,"rect",{enumerable:!1})}}class Listeners{constructor(e){this.target=void 0,this.listeners=[],this.removeAll=()=>{this.listeners.forEach((e=>{var t;return null==(t=this.target)?void 0:t.removeEventListener(...e)}))},this.target=e}add(e,t,n){var r;null==(r=this.target)||r.addEventListener(e,t,n),this.listeners.push([e,t,n])}}function getEventListenerTarget(e){const{EventTarget:t}=getWindow(e);return e instanceof t?e:getOwnerDocument(e)}function hasExceededDistance(e,t){const n=Math.abs(e.x),r=Math.abs(e.y);return"number"==typeof t?Math.sqrt(n**2+r**2)>t:"x"in t&&"y"in t?n>t.x&&r>t.y:"x"in t?n>t.x:"y"in t&&r>t.y}var EventName,KeyboardCode;function preventDefault(e){e.preventDefault()}function stopPropagation(e){e.stopPropagation()}!function(e){e.Click="click",e.DragStart="dragstart",e.Keydown="keydown",e.ContextMenu="contextmenu",e.Resize="resize",e.SelectionChange="selectionchange",e.VisibilityChange="visibilitychange"}(EventName||(EventName={})),function(e){e.Space="Space",e.Down="ArrowDown",e.Right="ArrowRight",e.Left="ArrowLeft",e.Up="ArrowUp",e.Esc="Escape",e.Enter="Enter"}(KeyboardCode||(KeyboardCode={}));const defaultKeyboardCodes={start:[KeyboardCode.Space,KeyboardCode.Enter],cancel:[KeyboardCode.Esc],end:[KeyboardCode.Space,KeyboardCode.Enter]},defaultKeyboardCoordinateGetter=(e,t)=>{let{currentCoordinates:n}=t;switch(e.code){case KeyboardCode.Right:return{...n,x:n.x+25};case KeyboardCode.Left:return{...n,x:n.x-25};case KeyboardCode.Down:return{...n,y:n.y+25};case KeyboardCode.Up:return{...n,y:n.y-25}}};class KeyboardSensor{constructor(e){this.props=void 0,this.autoScrollEnabled=!1,this.referenceCoordinates=void 0,this.listeners=void 0,this.windowListeners=void 0,this.props=e;const{event:{target:t}}=e;this.props=e,this.listeners=new Listeners(getOwnerDocument(t)),this.windowListeners=new Listeners(getWindow(t)),this.handleKeyDown=this.handleKeyDown.bind(this),this.handleCancel=this.handleCancel.bind(this),this.attach()}attach(){this.handleStart(),this.windowListeners.add(EventName.Resize,this.handleCancel),this.windowListeners.add(EventName.VisibilityChange,this.handleCancel),setTimeout((()=>this.listeners.add(EventName.Keydown,this.handleKeyDown)))}handleStart(){const{activeNode:e,onStart:t}=this.props,n=e.node.current;n&&scrollIntoViewIfNeeded(n),t(defaultCoordinates)}handleKeyDown(e){if(isKeyboardEvent(e)){const{active:t,context:n,options:r}=this.props,{keyboardCodes:o=defaultKeyboardCodes,coordinateGetter:a=defaultKeyboardCoordinateGetter,scrollBehavior:i="smooth"}=r,{code:s}=e;if(o.end.includes(s))return void this.handleEnd(e);if(o.cancel.includes(s))return void this.handleCancel(e);const{collisionRect:l}=n.current,c=l?{x:l.left,y:l.top}:defaultCoordinates;this.referenceCoordinates||(this.referenceCoordinates=c);const u=a(e,{active:t,context:n.current,currentCoordinates:c});if(u){const t=subtract(u,c),r={x:0,y:0},{scrollableAncestors:o}=n.current;for(const n of o){const o=e.code,{isTop:a,isRight:s,isLeft:l,isBottom:c,maxScroll:d,minScroll:f}=getScrollPosition(n),p=getScrollElementRect(n),_={x:Math.min(o===KeyboardCode.Right?p.right-p.width/2:p.right,Math.max(o===KeyboardCode.Right?p.left:p.left+p.width/2,u.x)),y:Math.min(o===KeyboardCode.Down?p.bottom-p.height/2:p.bottom,Math.max(o===KeyboardCode.Down?p.top:p.top+p.height/2,u.y))},m=o===KeyboardCode.Right&&!s||o===KeyboardCode.Left&&!l,g=o===KeyboardCode.Down&&!c||o===KeyboardCode.Up&&!a;if(m&&_.x!==u.x){const e=n.scrollLeft+t.x,a=o===KeyboardCode.Right&&e<=d.x||o===KeyboardCode.Left&&e>=f.x;if(a&&!t.y)return void n.scrollTo({left:e,behavior:i});r.x=a?n.scrollLeft-e:o===KeyboardCode.Right?n.scrollLeft-d.x:n.scrollLeft-f.x,r.x&&n.scrollBy({left:-r.x,behavior:i});break}if(g&&_.y!==u.y){const e=n.scrollTop+t.y,a=o===KeyboardCode.Down&&e<=d.y||o===KeyboardCode.Up&&e>=f.y;if(a&&!t.x)return void n.scrollTo({top:e,behavior:i});r.y=a?n.scrollTop-e:o===KeyboardCode.Down?n.scrollTop-d.y:n.scrollTop-f.y,r.y&&n.scrollBy({top:-r.y,behavior:i});break}}this.handleMove(e,add(subtract(u,this.referenceCoordinates),r))}}}handleMove(e,t){const{onMove:n}=this.props;e.preventDefault(),n(t)}handleEnd(e){const{onEnd:t}=this.props;e.preventDefault(),this.detach(),t()}handleCancel(e){const{onCancel:t}=this.props;e.preventDefault(),this.detach(),t()}detach(){this.listeners.removeAll(),this.windowListeners.removeAll()}}function isDistanceConstraint(e){return Boolean(e&&"distance"in e)}function isDelayConstraint(e){return Boolean(e&&"delay"in e)}KeyboardSensor.activators=[{eventName:"onKeyDown",handler:(e,t,n)=>{let{keyboardCodes:r=defaultKeyboardCodes,onActivation:o}=t,{active:a}=n;const{code:i}=e.nativeEvent;if(r.start.includes(i)){const t=a.activatorNode.current;return(!t||e.target===t)&&(e.preventDefault(),null==o||o({event:e.nativeEvent}),!0)}return!1}}];class AbstractPointerSensor{constructor(e,t,n){var r;void 0===n&&(n=getEventListenerTarget(e.event.target)),this.props=void 0,this.events=void 0,this.autoScrollEnabled=!0,this.document=void 0,this.activated=!1,this.initialCoordinates=void 0,this.timeoutId=null,this.listeners=void 0,this.documentListeners=void 0,this.windowListeners=void 0,this.props=e,this.events=t;const{event:o}=e,{target:a}=o;this.props=e,this.events=t,this.document=getOwnerDocument(a),this.documentListeners=new Listeners(this.document),this.listeners=new Listeners(n),this.windowListeners=new Listeners(getWindow(a)),this.initialCoordinates=null!=(r=getEventCoordinates(o))?r:defaultCoordinates,this.handleStart=this.handleStart.bind(this),this.handleMove=this.handleMove.bind(this),this.handleEnd=this.handleEnd.bind(this),this.handleCancel=this.handleCancel.bind(this),this.handleKeydown=this.handleKeydown.bind(this),this.removeTextSelection=this.removeTextSelection.bind(this),this.attach()}attach(){const{events:e,props:{options:{activationConstraint:t}}}=this;if(this.listeners.add(e.move.name,this.handleMove,{passive:!1}),this.listeners.add(e.end.name,this.handleEnd),this.windowListeners.add(EventName.Resize,this.handleCancel),this.windowListeners.add(EventName.DragStart,preventDefault),this.windowListeners.add(EventName.VisibilityChange,this.handleCancel),this.windowListeners.add(EventName.ContextMenu,preventDefault),this.documentListeners.add(EventName.Keydown,this.handleKeydown),t){if(isDistanceConstraint(t))return;if(isDelayConstraint(t))return void(this.timeoutId=setTimeout(this.handleStart,t.delay))}this.handleStart()}detach(){this.listeners.removeAll(),this.windowListeners.removeAll(),setTimeout(this.documentListeners.removeAll,50),null!==this.timeoutId&&(clearTimeout(this.timeoutId),this.timeoutId=null)}handleStart(){const{initialCoordinates:e}=this,{onStart:t}=this.props;e&&(this.activated=!0,this.documentListeners.add(EventName.Click,stopPropagation,{capture:!0}),this.removeTextSelection(),this.documentListeners.add(EventName.SelectionChange,this.removeTextSelection),t(e))}handleMove(e){var t;const{activated:n,initialCoordinates:r,props:o}=this,{onMove:a,options:{activationConstraint:i}}=o;if(!r)return;const s=null!=(t=getEventCoordinates(e))?t:defaultCoordinates,l=subtract(r,s);if(!n&&i){if(isDelayConstraint(i))return hasExceededDistance(l,i.tolerance)?this.handleCancel():void 0;if(isDistanceConstraint(i))return null!=i.tolerance&&hasExceededDistance(l,i.tolerance)?this.handleCancel():hasExceededDistance(l,i.distance)?this.handleStart():void 0}e.cancelable&&e.preventDefault(),a(s)}handleEnd(){const{onEnd:e}=this.props;this.detach(),e()}handleCancel(){const{onCancel:e}=this.props;this.detach(),e()}handleKeydown(e){e.code===KeyboardCode.Esc&&this.handleCancel()}removeTextSelection(){var e;null==(e=this.document.getSelection())||e.removeAllRanges()}}const events={move:{name:"pointermove"},end:{name:"pointerup"}};class PointerSensor extends AbstractPointerSensor{constructor(e){const{event:t}=e,n=getOwnerDocument(t.target);super(e,events,n)}}PointerSensor.activators=[{eventName:"onPointerDown",handler:(e,t)=>{let{nativeEvent:n}=e,{onActivation:r}=t;return!(!n.isPrimary||0!==n.button)&&(null==r||r({event:n}),!0)}}];const events$1={move:{name:"mousemove"},end:{name:"mouseup"}};var MouseButton;!function(e){e[e.RightClick=2]="RightClick"}(MouseButton||(MouseButton={}));class MouseSensor extends AbstractPointerSensor{constructor(e){super(e,events$1,getOwnerDocument(e.event.target))}}MouseSensor.activators=[{eventName:"onMouseDown",handler:(e,t)=>{let{nativeEvent:n}=e,{onActivation:r}=t;return n.button!==MouseButton.RightClick&&(null==r||r({event:n}),!0)}}];const events$2={move:{name:"touchmove"},end:{name:"touchend"}};class TouchSensor extends AbstractPointerSensor{constructor(e){super(e,events$2)}static setup(){return window.addEventListener(events$2.move.name,e,{capture:!1,passive:!1}),function(){window.removeEventListener(events$2.move.name,e)};function e(){}}}var AutoScrollActivator,TraversalOrder;function useAutoScroller(e){let{acceleration:t,activator:n=AutoScrollActivator.Pointer,canScroll:r,draggingRect:o,enabled:a,interval:i=5,order:s=TraversalOrder.TreeOrder,pointerCoordinates:l,scrollableAncestors:c,scrollableAncestorRects:u,delta:d,threshold:f}=e;const p=useScrollIntent({delta:d,disabled:!a}),[_,m]=useInterval(),g=React.useRef({x:0,y:0}),h=React.useRef({x:0,y:0}),v=React.useMemo((()=>{switch(n){case AutoScrollActivator.Pointer:return l?{top:l.y,bottom:l.y,left:l.x,right:l.x}:null;case AutoScrollActivator.DraggableRect:return o}}),[n,o,l]),y=React.useRef(null),b=React.useCallback((()=>{const e=y.current;if(!e)return;const t=g.current.x*h.current.x,n=g.current.y*h.current.y;e.scrollBy(t,n)}),[]),w=React.useMemo((()=>s===TraversalOrder.TreeOrder?[...c].reverse():c),[s,c]);React.useEffect((()=>{if(a&&c.length&&v){for(const e of w){if(!1===(null==r?void 0:r(e)))continue;const n=c.indexOf(e),o=u[n];if(!o)continue;const{direction:a,speed:s}=getScrollDirectionAndSpeed(e,o,v,t,f);for(const e of["x","y"])p[e][a[e]]||(s[e]=0,a[e]=0);if(s.x>0||s.y>0)return m(),y.current=e,_(b,i),g.current=s,void(h.current=a)}g.current={x:0,y:0},h.current={x:0,y:0},m()}else m()}),[t,b,r,m,a,i,JSON.stringify(v),JSON.stringify(p),_,c,w,u,JSON.stringify(f)])}TouchSensor.activators=[{eventName:"onTouchStart",handler:(e,t)=>{let{nativeEvent:n}=e,{onActivation:r}=t;const{touches:o}=n;return!(o.length>1)&&(null==r||r({event:n}),!0)}}],function(e){e[e.Pointer=0]="Pointer",e[e.DraggableRect=1]="DraggableRect"}(AutoScrollActivator||(AutoScrollActivator={})),function(e){e[e.TreeOrder=0]="TreeOrder",e[e.ReversedTreeOrder=1]="ReversedTreeOrder"}(TraversalOrder||(TraversalOrder={}));const defaultScrollIntent={x:{[Direction.Backward]:!1,[Direction.Forward]:!1},y:{[Direction.Backward]:!1,[Direction.Forward]:!1}};function useScrollIntent(e){let{delta:t,disabled:n}=e;const r=usePrevious(t);return useLazyMemo((e=>{if(n||!r||!e)return defaultScrollIntent;const o=Math.sign(t.x-r.x),a=Math.sign(t.y-r.y);return{x:{[Direction.Backward]:e.x[Direction.Backward]||-1===o,[Direction.Forward]:e.x[Direction.Forward]||1===o},y:{[Direction.Backward]:e.y[Direction.Backward]||-1===a,[Direction.Forward]:e.y[Direction.Forward]||1===a}}}),[n,t,r])}function useCachedNode(e,t){const n=null!==t?e.get(t):void 0,r=n?n.node.current:null;return useLazyMemo((e=>{var n;return null===t?null:null!=(n=null!=r?r:e)?n:null}),[r,t])}function useCombineActivators(e,t){return React.useMemo((()=>e.reduce(((e,n)=>{const{sensor:r}=n;return[...e,...r.activators.map((e=>({eventName:e.eventName,handler:t(e.handler,n)})))]}),[])),[e,t])}var MeasuringStrategy,MeasuringFrequency;!function(e){e[e.Always=0]="Always",e[e.BeforeDragging=1]="BeforeDragging",e[e.WhileDragging=2]="WhileDragging"}(MeasuringStrategy||(MeasuringStrategy={})),function(e){e.Optimized="optimized"}(MeasuringFrequency||(MeasuringFrequency={}));const defaultValue=new Map;function useDroppableMeasuring(e,t){let{dragging:n,dependencies:r,config:o}=t;const[a,i]=React.useState(null),s=null!=a,{frequency:l,measure:c,strategy:u}=o,d=React.useRef(e),f=function(){switch(u){case MeasuringStrategy.Always:return!1;case MeasuringStrategy.BeforeDragging:return n;default:return!n}}(),p=useLatestValue(f),_=React.useCallback((function(e){void 0===e&&(e=[]),p.current||i((t=>t?t.concat(e):e))}),[p]),m=React.useRef(null),g=useLazyMemo((t=>{if(f&&!n)return defaultValue;const r=a;if(!t||t===defaultValue||d.current!==e||null!=r){const t=new Map;for(let n of e){if(!n)continue;if(r&&r.length>0&&!r.includes(n.id)&&n.rect.current){t.set(n.id,n.rect.current);continue}const e=n.node.current,o=e?new Rect(c(e),e):null;n.rect.current=o,o&&t.set(n.id,o)}return t}return t}),[e,a,n,f,c]);return React.useEffect((()=>{d.current=e}),[e]),React.useEffect((()=>{f||requestAnimationFrame((()=>_()))}),[n,f]),React.useEffect((()=>{s&&i(null)}),[s]),React.useEffect((()=>{f||"number"!=typeof l||null!==m.current||(m.current=setTimeout((()=>{_(),m.current=null}),l))}),[l,f,_,...r]),{droppableRects:g,measureDroppableContainers:_,measuringScheduled:s}}function useInitialValue(e,t){return useLazyMemo((n=>e?n||("function"==typeof t?t(e):e):null),[t,e])}function useInitialRect(e,t){return useInitialValue(e,t)}function useMutationObserver(e){let{callback:t,disabled:n}=e;const r=useEvent(t),o=React.useMemo((()=>{if(n||"undefined"==typeof window||void 0===window.MutationObserver)return;const{MutationObserver:e}=window;return new e(r)}),[r,n]);return React.useEffect((()=>()=>null==o?void 0:o.disconnect()),[o]),o}function useResizeObserver(e){let{callback:t,disabled:n}=e;const r=useEvent(t),o=React.useMemo((()=>{if(n||"undefined"==typeof window||void 0===window.ResizeObserver)return;const{ResizeObserver:e}=window;return new e(r)}),[n]);return React.useEffect((()=>()=>null==o?void 0:o.disconnect()),[o]),o}function defaultMeasure(e){return new Rect(getClientRect(e),e)}function useRect(e,t,n){void 0===t&&(t=defaultMeasure);const[r,o]=React.useReducer((function(r){if(!e)return null;var o;if(!1===e.isConnected)return null!=(o=null!=r?r:n)?o:null;const a=t(e);if(JSON.stringify(r)===JSON.stringify(a))return r;return a}),null),a=useMutationObserver({callback(t){if(e)for(const n of t){const{type:t,target:r}=n;if("childList"===t&&r instanceof HTMLElement&&r.contains(e)){o();break}}}}),i=useResizeObserver({callback:o});return useIsomorphicLayoutEffect((()=>{o(),e?(null==i||i.observe(e),null==a||a.observe(document.body,{childList:!0,subtree:!0})):(null==i||i.disconnect(),null==a||a.disconnect())}),[e]),r}function useRectDelta(e){return getRectDelta(e,useInitialValue(e))}const defaultValue$1=[];function useScrollableAncestors(e){const t=React.useRef(e),n=useLazyMemo((n=>e?n&&n!==defaultValue$1&&e&&t.current&&e.parentNode===t.current.parentNode?n:getScrollableAncestors(e):defaultValue$1),[e]);return React.useEffect((()=>{t.current=e}),[e]),n}function useScrollOffsets(e){const[t,n]=React.useState(null),r=React.useRef(e),o=React.useCallback((e=>{const t=getScrollableElement(e.target);t&&n((e=>e?(e.set(t,getScrollCoordinates(t)),new Map(e)):null))}),[]);return React.useEffect((()=>{const t=r.current;if(e!==t){a(t);const i=e.map((e=>{const t=getScrollableElement(e);return t?(t.addEventListener("scroll",o,{passive:!0}),[t,getScrollCoordinates(t)]):null})).filter((e=>null!=e));n(i.length?new Map(i):null),r.current=e}return()=>{a(e),a(t)};function a(e){e.forEach((e=>{const t=getScrollableElement(e);null==t||t.removeEventListener("scroll",o)}))}}),[o,e]),React.useMemo((()=>e.length?t?Array.from(t.values()).reduce(((e,t)=>add(e,t)),defaultCoordinates):getScrollOffsets(e):defaultCoordinates),[e,t])}function useScrollOffsetsDelta(e,t){void 0===t&&(t=[]);const n=React.useRef(null);return React.useEffect((()=>{n.current=null}),t),React.useEffect((()=>{const t=e!==defaultCoordinates;t&&!n.current&&(n.current=e),!t&&n.current&&(n.current=null)}),[e]),n.current?subtract(e,n.current):defaultCoordinates}function useSensorSetup(e){React.useEffect((()=>{if(!canUseDOM)return;const t=e.map((e=>{let{sensor:t}=e;return null==t.setup?void 0:t.setup()}));return()=>{for(const e of t)null==e||e()}}),e.map((e=>{let{sensor:t}=e;return t})))}function useSyntheticListeners(e,t){return React.useMemo((()=>e.reduce(((e,n)=>{let{eventName:r,handler:o}=n;return e[r]=e=>{o(e,t)},e}),{})),[e,t])}function useWindowRect(e){return React.useMemo((()=>e?getWindowClientRect(e):null),[e])}const defaultValue$2=[];function useRects(e,t){void 0===t&&(t=getClientRect);const[n]=e,r=useWindowRect(n?getWindow(n):null),[o,a]=React.useReducer((function(){if(!e.length)return defaultValue$2;return e.map((e=>isDocumentScrollingElement(e)?r:new Rect(t(e),e)))}),defaultValue$2),i=useResizeObserver({callback:a});return e.length>0&&o===defaultValue$2&&a(),useIsomorphicLayoutEffect((()=>{e.length?e.forEach((e=>null==i?void 0:i.observe(e))):(null==i||i.disconnect(),a())}),[e]),o}function getMeasurableNode(e){if(!e)return null;if(e.children.length>1)return e;const t=e.children[0];return isHTMLElement(t)?t:e}function useDragOverlayMeasuring(e){let{measure:t}=e;const[n,r]=React.useState(null),o=React.useCallback((e=>{for(const{target:n}of e)if(isHTMLElement(n)){r((e=>{const r=t(n);return e?{...e,width:r.width,height:r.height}:r}));break}}),[t]),a=useResizeObserver({callback:o}),i=React.useCallback((e=>{const n=getMeasurableNode(e);null==a||a.disconnect(),n&&(null==a||a.observe(n)),r(n?t(n):null)}),[t,a]),[s,l]=useNodeRef(i);return React.useMemo((()=>({nodeRef:s,rect:n,setRef:l})),[n,s,l])}const defaultSensors=[{sensor:PointerSensor,options:{}},{sensor:KeyboardSensor,options:{}}],defaultData={current:{}},defaultMeasuringConfiguration={draggable:{measure:getTransformAgnosticClientRect},droppable:{measure:getTransformAgnosticClientRect,strategy:MeasuringStrategy.WhileDragging,frequency:MeasuringFrequency.Optimized},dragOverlay:{measure:getClientRect}};class DroppableContainersMap extends Map{get(e){var t;return null!=e&&null!=(t=super.get(e))?t:void 0}toArray(){return Array.from(this.values())}getEnabled(){return this.toArray().filter((e=>{let{disabled:t}=e;return!t}))}getNodeFor(e){var t,n;return null!=(t=null==(n=this.get(e))?void 0:n.node.current)?t:void 0}}const defaultPublicContext={activatorEvent:null,active:null,activeNode:null,activeNodeRect:null,collisions:null,containerNodeRect:null,draggableNodes:new Map,droppableRects:new Map,droppableContainers:new DroppableContainersMap,over:null,dragOverlay:{nodeRef:{current:null},rect:null,setRef:noop},scrollableAncestors:[],scrollableAncestorRects:[],measuringConfiguration:defaultMeasuringConfiguration,measureDroppableContainers:noop,windowRect:null,measuringScheduled:!1},defaultInternalContext={activatorEvent:null,activators:[],active:null,activeNodeRect:null,ariaDescribedById:{draggable:""},dispatch:noop,draggableNodes:new Map,over:null,measureDroppableContainers:noop},InternalContext=React.createContext(defaultInternalContext),PublicContext=React.createContext(defaultPublicContext);function getInitialState(){return{draggable:{active:null,initialCoordinates:{x:0,y:0},nodes:new Map,translate:{x:0,y:0}},droppable:{containers:new DroppableContainersMap}}}function reducer(e,t){switch(t.type){case Action$1.DragStart:return{...e,draggable:{...e.draggable,initialCoordinates:t.initialCoordinates,active:t.active}};case Action$1.DragMove:return e.draggable.active?{...e,draggable:{...e.draggable,translate:{x:t.coordinates.x-e.draggable.initialCoordinates.x,y:t.coordinates.y-e.draggable.initialCoordinates.y}}}:e;case Action$1.DragEnd:case Action$1.DragCancel:return{...e,draggable:{...e.draggable,active:null,initialCoordinates:{x:0,y:0},translate:{x:0,y:0}}};case Action$1.RegisterDroppable:{const{element:n}=t,{id:r}=n,o=new DroppableContainersMap(e.droppable.containers);return o.set(r,n),{...e,droppable:{...e.droppable,containers:o}}}case Action$1.SetDroppableDisabled:{const{id:n,key:r,disabled:o}=t,a=e.droppable.containers.get(n);if(!a||r!==a.key)return e;const i=new DroppableContainersMap(e.droppable.containers);return i.set(n,{...a,disabled:o}),{...e,droppable:{...e.droppable,containers:i}}}case Action$1.UnregisterDroppable:{const{id:n,key:r}=t,o=e.droppable.containers.get(n);if(!o||r!==o.key)return e;const a=new DroppableContainersMap(e.droppable.containers);return a.delete(n),{...e,droppable:{...e.droppable,containers:a}}}default:return e}}function RestoreFocus(e){let{disabled:t}=e;const{active:n,activatorEvent:r,draggableNodes:o}=React.useContext(InternalContext),a=usePrevious(r),i=usePrevious(null==n?void 0:n.id);return React.useEffect((()=>{if(!t&&!r&&a&&null!=i){if(!isKeyboardEvent(a))return;if(document.activeElement===a.target)return;const e=o.get(i);if(!e)return;const{activatorNode:t,node:n}=e;if(!t.current&&!n.current)return;requestAnimationFrame((()=>{for(const e of[t.current,n.current]){if(!e)continue;const t=findFirstFocusableNode(e);if(t){t.focus();break}}}))}}),[r,t,o,i,a]),null}function applyModifiers(e,t){let{transform:n,...r}=t;return null!=e&&e.length?e.reduce(((e,t)=>t({transform:e,...r})),n):n}function useMeasuringConfiguration(e){return React.useMemo((()=>({draggable:{...defaultMeasuringConfiguration.draggable,...null==e?void 0:e.draggable},droppable:{...defaultMeasuringConfiguration.droppable,...null==e?void 0:e.droppable},dragOverlay:{...defaultMeasuringConfiguration.dragOverlay,...null==e?void 0:e.dragOverlay}})),[null==e?void 0:e.draggable,null==e?void 0:e.droppable,null==e?void 0:e.dragOverlay])}function useLayoutShiftScrollCompensation(e){let{activeNode:t,measure:n,initialRect:r,config:o=!0}=e;const a=React.useRef(!1),{x:i,y:s}="boolean"==typeof o?{x:o,y:o}:o;useIsomorphicLayoutEffect((()=>{if(!i&&!s||!t)return void(a.current=!1);if(a.current||!r)return;const e=null==t?void 0:t.node.current;if(!e||!1===e.isConnected)return;const o=getRectDelta(n(e),r);if(i||(o.x=0),s||(o.y=0),a.current=!0,Math.abs(o.x)>0||Math.abs(o.y)>0){const t=getFirstScrollableAncestor(e);t&&t.scrollBy({top:o.y,left:o.x})}}),[t,i,s,r,n])}const ActiveDraggableContext=React.createContext({...defaultCoordinates,scaleX:1,scaleY:1});var Status;!function(e){e[e.Uninitialized=0]="Uninitialized",e[e.Initializing=1]="Initializing",e[e.Initialized=2]="Initialized"}(Status||(Status={}));const DndContext=React.memo((function(e){var t,n,r,o;let{id:a,accessibility:i,autoScroll:s=!0,children:l,sensors:c=defaultSensors,collisionDetection:u=rectIntersection,measuring:d,modifiers:f,...p}=e;const _=React.useReducer(reducer,void 0,getInitialState),[m,g]=_,[h,v]=useDndMonitorProvider(),[y,b]=React.useState(Status.Uninitialized),w=y===Status.Initialized,{draggable:{active:S,nodes:$,translate:x},droppable:{containers:F}}=m,k=S?$.get(S):null,O=React.useRef({initial:null,translated:null}),C=React.useMemo((()=>{var e;return null!=S?{id:S,data:null!=(e=null==k?void 0:k.data)?e:defaultData,rect:O}:null}),[S,k]),R=React.useRef(null),[j,N]=React.useState(null),[I,D]=React.useState(null),E=useLatestValue(p,Object.values(p)),A=useUniqueId("DndDescribedBy",a),T=React.useMemo((()=>F.getEnabled()),[F]),L=useMeasuringConfiguration(d),{droppableRects:P,measureDroppableContainers:V,measuringScheduled:M}=useDroppableMeasuring(T,{dragging:w,dependencies:[x.x,x.y],config:L.droppable}),B=useCachedNode($,S),U=React.useMemo((()=>I?getEventCoordinates(I):null),[I]),q=function(){const e=!1===(null==j?void 0:j.autoScrollEnabled),t="object"==typeof s?!1===s.enabled:!1===s,n=w&&!e&&!t;if("object"==typeof s)return{...s,enabled:n};return{enabled:n}}(),z=useInitialRect(B,L.draggable.measure);useLayoutShiftScrollCompensation({activeNode:S?$.get(S):null,config:q.layoutShiftCompensation,initialRect:z,measure:L.draggable.measure});const K=useRect(B,L.draggable.measure,z),W=useRect(B?B.parentElement:null),H=React.useRef({activatorEvent:null,active:null,activeNode:B,collisionRect:null,collisions:null,droppableRects:P,draggableNodes:$,draggingNode:null,draggingNodeRect:null,droppableContainers:F,over:null,scrollableAncestors:[],scrollAdjustedTranslate:null}),J=F.getNodeFor(null==(t=H.current.over)?void 0:t.id),Y=useDragOverlayMeasuring({measure:L.dragOverlay.measure}),G=null!=(n=Y.nodeRef.current)?n:B,X=w?null!=(r=Y.rect)?r:K:null,Q=Boolean(Y.nodeRef.current&&Y.rect),Z=useRectDelta(Q?null:K),ee=useWindowRect(G?getWindow(G):null),te=useScrollableAncestors(w?null!=J?J:B:null),ne=useRects(te),re=applyModifiers(f,{transform:{x:x.x-Z.x,y:x.y-Z.y,scaleX:1,scaleY:1},activatorEvent:I,active:C,activeNodeRect:K,containerNodeRect:W,draggingNodeRect:X,over:H.current.over,overlayNodeRect:Y.rect,scrollableAncestors:te,scrollableAncestorRects:ne,windowRect:ee}),oe=U?add(U,x):null,ae=useScrollOffsets(te),ie=useScrollOffsetsDelta(ae),se=useScrollOffsetsDelta(ae,[K]),le=add(re,ie),ce=X?getAdjustedRect(X,re):null,ue=C&&ce?u({active:C,collisionRect:ce,droppableRects:P,droppableContainers:T,pointerCoordinates:oe}):null,de=getFirstCollision(ue,"id"),[fe,pe]=React.useState(null),_e=adjustScale(Q?re:add(re,se),null!=(o=null==fe?void 0:fe.rect)?o:null,K),me=React.useCallback(((e,t)=>{let{sensor:n,options:r}=t;if(null==R.current)return;const o=$.get(R.current);if(!o)return;const a=e.nativeEvent,i=new n({active:R.current,activeNode:o,event:a,options:r,context:H,onStart(e){const t=R.current;if(null==t)return;const n=$.get(t);if(!n)return;const{onDragStart:r}=E.current,o={active:{id:t,data:n.data,rect:O}};reactDom.unstable_batchedUpdates((()=>{null==r||r(o),b(Status.Initializing),g({type:Action$1.DragStart,initialCoordinates:e,active:t}),h({type:"onDragStart",event:o})}))},onMove(e){g({type:Action$1.DragMove,coordinates:e})},onEnd:s(Action$1.DragEnd),onCancel:s(Action$1.DragCancel)});function s(e){return async function(){const{active:t,collisions:n,over:r,scrollAdjustedTranslate:o}=H.current;let i=null;if(t&&o){const{cancelDrop:s}=E.current;if(i={activatorEvent:a,active:t,collisions:n,delta:o,over:r},e===Action$1.DragEnd&&"function"==typeof s){await Promise.resolve(s(i))&&(e=Action$1.DragCancel)}}R.current=null,reactDom.unstable_batchedUpdates((()=>{g({type:e}),b(Status.Uninitialized),pe(null),N(null),D(null);const t=e===Action$1.DragEnd?"onDragEnd":"onDragCancel";if(i){const e=E.current[t];null==e||e(i),h({type:t,event:i})}}))}}reactDom.unstable_batchedUpdates((()=>{N(i),D(e.nativeEvent)}))}),[$]),ge=React.useCallback(((e,t)=>(n,r)=>{const o=n.nativeEvent,a=$.get(r);if(null!==R.current||!a||o.dndKit||o.defaultPrevented)return;const i={active:a};!0===e(n,t.options,i)&&(o.dndKit={capturedBy:t.sensor},R.current=r,me(n,t))}),[$,me]),he=useCombineActivators(c,ge);useSensorSetup(c),useIsomorphicLayoutEffect((()=>{K&&y===Status.Initializing&&b(Status.Initialized)}),[K,y]),React.useEffect((()=>{const{onDragMove:e}=E.current,{active:t,activatorEvent:n,collisions:r,over:o}=H.current;if(!t||!n)return;const a={active:t,activatorEvent:n,collisions:r,delta:{x:le.x,y:le.y},over:o};reactDom.unstable_batchedUpdates((()=>{null==e||e(a),h({type:"onDragMove",event:a})}))}),[le.x,le.y]),React.useEffect((()=>{const{active:e,activatorEvent:t,collisions:n,droppableContainers:r,scrollAdjustedTranslate:o}=H.current;if(!e||null==R.current||!t||!o)return;const{onDragOver:a}=E.current,i=r.get(de),s=i&&i.rect.current?{id:i.id,rect:i.rect.current,data:i.data,disabled:i.disabled}:null,l={active:e,activatorEvent:t,collisions:n,delta:{x:o.x,y:o.y},over:s};reactDom.unstable_batchedUpdates((()=>{pe(s),null==a||a(l),h({type:"onDragOver",event:l})}))}),[de]),useIsomorphicLayoutEffect((()=>{H.current={activatorEvent:I,active:C,activeNode:B,collisionRect:ce,collisions:ue,droppableRects:P,draggableNodes:$,draggingNode:G,draggingNodeRect:X,droppableContainers:F,over:fe,scrollableAncestors:te,scrollAdjustedTranslate:le},O.current={initial:X,translated:ce}}),[C,B,ue,ce,$,G,X,P,F,fe,te,le]),useAutoScroller({...q,delta:x,draggingRect:ce,pointerCoordinates:oe,scrollableAncestors:te,scrollableAncestorRects:ne});const ve=React.useMemo((()=>({active:C,activeNode:B,activeNodeRect:K,activatorEvent:I,collisions:ue,containerNodeRect:W,dragOverlay:Y,draggableNodes:$,droppableContainers:F,droppableRects:P,over:fe,measureDroppableContainers:V,scrollableAncestors:te,scrollableAncestorRects:ne,measuringConfiguration:L,measuringScheduled:M,windowRect:ee})),[C,B,K,I,ue,W,Y,$,F,P,fe,V,te,ne,L,M,ee]),ye=React.useMemo((()=>({activatorEvent:I,activators:he,active:C,activeNodeRect:K,ariaDescribedById:{draggable:A},dispatch:g,draggableNodes:$,over:fe,measureDroppableContainers:V})),[I,he,C,K,g,A,$,fe,V]);return React__default.default.createElement(DndMonitorContext.Provider,{value:v},React__default.default.createElement(InternalContext.Provider,{value:ye},React__default.default.createElement(PublicContext.Provider,{value:ve},React__default.default.createElement(ActiveDraggableContext.Provider,{value:_e},l)),React__default.default.createElement(RestoreFocus,{disabled:!1===(null==i?void 0:i.restoreFocus)})),React__default.default.createElement(Accessibility,{...i,hiddenTextDescribedById:A}))})),NullContext=React.createContext(null),defaultRole="button",ID_PREFIX$1="Droppable";function useDraggable(e){let{id:t,data:n,disabled:r=!1,attributes:o}=e;const a=useUniqueId(ID_PREFIX$1),{activators:i,activatorEvent:s,active:l,activeNodeRect:c,ariaDescribedById:u,draggableNodes:d,over:f}=React.useContext(InternalContext),{role:p=defaultRole,roleDescription:_="draggable",tabIndex:m=0}=null!=o?o:{},g=(null==l?void 0:l.id)===t,h=React.useContext(g?ActiveDraggableContext:NullContext),[v,y]=useNodeRef(),[b,w]=useNodeRef(),S=useSyntheticListeners(i,t),$=useLatestValue(n);useIsomorphicLayoutEffect((()=>(d.set(t,{id:t,key:a,node:v,activatorNode:b,data:$}),()=>{const e=d.get(t);e&&e.key===a&&d.delete(t)})),[d,t]);return{active:l,activatorEvent:s,activeNodeRect:c,attributes:React.useMemo((()=>({role:p,tabIndex:m,"aria-disabled":r,"aria-pressed":!(!g||p!==defaultRole)||void 0,"aria-roledescription":_,"aria-describedby":u.draggable})),[r,p,m,g,_,u.draggable]),isDragging:g,listeners:r?void 0:S,node:v,over:f,setNodeRef:y,setActivatorNodeRef:w,transform:h}}function useDndContext(){return React.useContext(PublicContext)}const ID_PREFIX$1$1="Droppable",defaultResizeObserverConfig={timeout:25};function useDroppable(e){let{data:t,disabled:n=!1,id:r,resizeObserverConfig:o}=e;const a=useUniqueId(ID_PREFIX$1$1),{active:i,dispatch:s,over:l,measureDroppableContainers:c}=React.useContext(InternalContext),u=React.useRef({disabled:n}),d=React.useRef(!1),f=React.useRef(null),p=React.useRef(null),{disabled:_,updateMeasurementsFor:m,timeout:g}={...defaultResizeObserverConfig,...o},h=useLatestValue(null!=m?m:r),v=useResizeObserver({callback:React.useCallback((()=>{d.current?(null!=p.current&&clearTimeout(p.current),p.current=setTimeout((()=>{c(Array.isArray(h.current)?h.current:[h.current]),p.current=null}),g)):d.current=!0}),[g]),disabled:_||!i}),y=React.useCallback(((e,t)=>{v&&(t&&(v.unobserve(t),d.current=!1),e&&v.observe(e))}),[v]),[b,w]=useNodeRef(y),S=useLatestValue(t);return React.useEffect((()=>{v&&b.current&&(v.disconnect(),d.current=!1,v.observe(b.current))}),[b,v]),useIsomorphicLayoutEffect((()=>(s({type:Action$1.RegisterDroppable,element:{id:r,key:a,disabled:n,node:b,rect:f,data:S}}),()=>s({type:Action$1.UnregisterDroppable,key:a,id:r}))),[r]),React.useEffect((()=>{n!==u.current.disabled&&(s({type:Action$1.SetDroppableDisabled,id:r,key:a,disabled:n}),u.current.disabled=n)}),[r,a,n,s]),{active:i,rect:f,isOver:(null==l?void 0:l.id)===r,node:b,over:l,setNodeRef:w}}function AnimationManager(e){let{animation:t,children:n}=e;const[r,o]=React.useState(null),[a,i]=React.useState(null),s=usePrevious(n);return n||r||!s||o(s),useIsomorphicLayoutEffect((()=>{if(!a)return;const e=null==r?void 0:r.key,n=null==r?void 0:r.props.id;null!=e&&null!=n?Promise.resolve(t(n,a)).then((()=>{o(null)})):o(null)}),[t,r,a]),React__default.default.createElement(React__default.default.Fragment,null,n,r?React.cloneElement(r,{ref:i}):null)}const defaultTransform={x:0,y:0,scaleX:1,scaleY:1};function NullifiedContextProvider(e){let{children:t}=e;return React__default.default.createElement(InternalContext.Provider,{value:defaultInternalContext},React__default.default.createElement(ActiveDraggableContext.Provider,{value:defaultTransform},t))}const baseStyles={position:"fixed",touchAction:"none"},defaultTransition$1=e=>isKeyboardEvent(e)?"transform 250ms ease":void 0,PositionedOverlay=React.forwardRef(((e,t)=>{let{as:n,activatorEvent:r,adjustScale:o,children:a,className:i,rect:s,style:l,transform:c,transition:u=defaultTransition$1}=e;if(!s)return null;const d=o?c:{...c,scaleX:1,scaleY:1},f={...baseStyles,width:s.width,height:s.height,top:s.top,left:s.left,transform:CSS.Transform.toString(d),transformOrigin:o&&r?getRelativeTransformOrigin(r,s):void 0,transition:"function"==typeof u?u(r):u,...l};return React__default.default.createElement(n,{className:i,style:f,ref:t},a)})),defaultDropAnimationSideEffects=e=>t=>{let{active:n,dragOverlay:r}=t;const o={},{styles:a,className:i}=e;if(null!=a&&a.active)for(const[e,t]of Object.entries(a.active))void 0!==t&&(o[e]=n.node.style.getPropertyValue(e),n.node.style.setProperty(e,t));if(null!=a&&a.dragOverlay)for(const[e,t]of Object.entries(a.dragOverlay))void 0!==t&&r.node.style.setProperty(e,t);return null!=i&&i.active&&n.node.classList.add(i.active),null!=i&&i.dragOverlay&&r.node.classList.add(i.dragOverlay),function(){for(const[e,t]of Object.entries(o))n.node.style.setProperty(e,t);null!=i&&i.active&&n.node.classList.remove(i.active)}},defaultKeyframeResolver=e=>{let{transform:{initial:t,final:n}}=e;return[{transform:CSS.Transform.toString(t)},{transform:CSS.Transform.toString(n)}]},defaultDropAnimationConfiguration={duration:250,easing:"ease",keyframes:defaultKeyframeResolver,sideEffects:defaultDropAnimationSideEffects({styles:{active:{opacity:"0"}}})};function useDropAnimation(e){let{config:t,draggableNodes:n,droppableContainers:r,measuringConfiguration:o}=e;return useEvent(((e,a)=>{if(null===t)return;const i=n.get(e);if(!i)return;const s=i.node.current;if(!s)return;const l=getMeasurableNode(a);if(!l)return;const{transform:c}=getWindow(a).getComputedStyle(a),u=parseTransform(c);if(!u)return;const d="function"==typeof t?t:createDefaultDropAnimation(t);return scrollIntoViewIfNeeded(s,o.draggable.measure),d({active:{id:e,data:i.data,node:s,rect:o.draggable.measure(s)},draggableNodes:n,dragOverlay:{node:a,rect:o.dragOverlay.measure(l)},droppableContainers:r,measuringConfiguration:o,transform:u})}))}function createDefaultDropAnimation(e){const{duration:t,easing:n,sideEffects:r,keyframes:o}={...defaultDropAnimationConfiguration,...e};return e=>{let{active:a,dragOverlay:i,transform:s,...l}=e;if(!t)return;const c=i.rect.left-a.rect.left,u=i.rect.top-a.rect.top,d={scaleX:1!==s.scaleX?a.rect.width*s.scaleX/i.rect.width:1,scaleY:1!==s.scaleY?a.rect.height*s.scaleY/i.rect.height:1},f={x:s.x-c,y:s.y-u,...d},p=o({...l,active:a,dragOverlay:i,transform:{initial:s,final:f}}),[_]=p,m=p[p.length-1];if(JSON.stringify(_)===JSON.stringify(m))return;const g=null==r?void 0:r({active:a,dragOverlay:i,...l}),h=i.node.animate(p,{duration:t,easing:n,fill:"forwards"});return new Promise((e=>{h.onfinish=()=>{null==g||g(),e()}}))}}let key=0;function useKey(e){return React.useMemo((()=>{if(null!=e)return key++,key}),[e])}const DragOverlay=React__default.default.memo((e=>{let{adjustScale:t=!1,children:n,dropAnimation:r,style:o,transition:a,modifiers:i,wrapperElement:s="div",className:l,zIndex:c=999}=e;const{activatorEvent:u,active:d,activeNodeRect:f,containerNodeRect:p,draggableNodes:_,droppableContainers:m,dragOverlay:g,over:h,measuringConfiguration:v,scrollableAncestors:y,scrollableAncestorRects:b,windowRect:w}=useDndContext(),S=React.useContext(ActiveDraggableContext),$=useKey(null==d?void 0:d.id),x=applyModifiers(i,{activatorEvent:u,active:d,activeNodeRect:f,containerNodeRect:p,draggingNodeRect:g.rect,over:h,overlayNodeRect:g.rect,scrollableAncestors:y,scrollableAncestorRects:b,transform:S,windowRect:w}),F=useInitialValue(f),k=useDropAnimation({config:r,draggableNodes:_,droppableContainers:m,measuringConfiguration:v}),O=F?g.setRef:void 0;return React__default.default.createElement(NullifiedContextProvider,null,React__default.default.createElement(AnimationManager,{animation:k},d&&$?React__default.default.createElement(PositionedOverlay,{key:$,id:d.id,ref:O,as:s,activatorEvent:u,adjustScale:t,className:l,transition:a,rect:F,style:{zIndex:c,...o},transform:x},n):null))}));function arrayMove(e,t,n){const r=e.slice();return r.splice(n<0?r.length+n:n,0,r.splice(t,1)[0]),r}function getSortedRects(e,t){return e.reduce(((e,n,r)=>{const o=t.get(n);return o&&(e[r]=o),e}),Array(e.length))}function isValidIndex(e){return null!==e&&e>=0}function itemsEqual(e,t){if(e===t)return!0;if(e.length!==t.length)return!1;for(let n=0;n<e.length;n++)if(e[n]!==t[n])return!1;return!0}function normalizeDisabled(e){return"boolean"==typeof e?{draggable:e,droppable:e}:e}const defaultScale={scaleX:1,scaleY:1},horizontalListSortingStrategy=e=>{var t;let{rects:n,activeNodeRect:r,activeIndex:o,overIndex:a,index:i}=e;const s=null!=(t=n[o])?t:r;if(!s)return null;const l=getItemGap(n,i,o);if(i===o){const e=n[a];return e?{x:o<a?e.left+e.width-(s.left+s.width):e.left-s.left,y:0,...defaultScale}:null}return i>o&&i<=a?{x:-s.width-l,y:0,...defaultScale}:i<o&&i>=a?{x:s.width+l,y:0,...defaultScale}:{x:0,y:0,...defaultScale}};function getItemGap(e,t,n){const r=e[t],o=e[t-1],a=e[t+1];return r&&(o||a)?n<t?o?r.left-(o.left+o.width):a.left-(r.left+r.width):a?a.left-(r.left+r.width):r.left-(o.left+o.width):0}const rectSortingStrategy=e=>{let{rects:t,activeIndex:n,overIndex:r,index:o}=e;const a=arrayMove(t,r,n),i=t[o],s=a[o];return s&&i?{x:s.left-i.left,y:s.top-i.top,scaleX:s.width/i.width,scaleY:s.height/i.height}:null},defaultScale$1={scaleX:1,scaleY:1},verticalListSortingStrategy=e=>{var t;let{activeIndex:n,activeNodeRect:r,index:o,rects:a,overIndex:i}=e;const s=null!=(t=a[n])?t:r;if(!s)return null;if(o===n){const e=a[i];return e?{x:0,y:n<i?e.top+e.height-(s.top+s.height):e.top-s.top,...defaultScale$1}:null}const l=getItemGap$1(a,o,n);return o>n&&o<=i?{x:0,y:-s.height-l,...defaultScale$1}:o<n&&o>=i?{x:0,y:s.height+l,...defaultScale$1}:{x:0,y:0,...defaultScale$1}};function getItemGap$1(e,t,n){const r=e[t],o=e[t-1],a=e[t+1];return r?n<t?o?r.top-(o.top+o.height):a?a.top-(r.top+r.height):0:a?a.top-(r.top+r.height):o?r.top-(o.top+o.height):0:0}const ID_PREFIX="Sortable",Context=React__default.default.createContext({activeIndex:-1,containerId:ID_PREFIX,disableTransforms:!1,items:[],overIndex:-1,useDragOverlay:!1,sortedRects:[],strategy:rectSortingStrategy,disabled:{draggable:!1,droppable:!1}});function SortableContext(e){let{children:t,id:n,items:r,strategy:o=rectSortingStrategy,disabled:a=!1}=e;const{active:i,dragOverlay:s,droppableRects:l,over:c,measureDroppableContainers:u,measuringScheduled:d}=useDndContext(),f=useUniqueId(ID_PREFIX,n),p=Boolean(null!==s.rect),_=React.useMemo((()=>r.map((e=>"object"==typeof e&&"id"in e?e.id:e))),[r]),m=null!=i,g=i?_.indexOf(i.id):-1,h=c?_.indexOf(c.id):-1,v=React.useRef(_),y=!itemsEqual(_,v.current),b=-1!==h&&-1===g||y,w=normalizeDisabled(a);useIsomorphicLayoutEffect((()=>{y&&m&&!d&&u(_)}),[y,_,m,u,d]),React.useEffect((()=>{v.current=_}),[_]);const S=React.useMemo((()=>({activeIndex:g,containerId:f,disabled:w,disableTransforms:b,items:_,overIndex:h,useDragOverlay:p,sortedRects:getSortedRects(_,l),strategy:o})),[g,f,w.draggable,w.droppable,b,_,h,l,p,o]);return React__default.default.createElement(Context.Provider,{value:S},t)}const defaultNewIndexGetter=e=>{let{id:t,items:n,activeIndex:r,overIndex:o}=e;return arrayMove(n,r,o).indexOf(t)},defaultAnimateLayoutChanges=e=>{let{containerId:t,isSorting:n,wasDragging:r,index:o,items:a,newIndex:i,previousItems:s,previousContainerId:l,transition:c}=e;return!(!c||!r)&&((s===a||o!==i)&&(!!n||i!==o&&t===l))},defaultTransition={duration:200,easing:"ease"},transitionProperty="transform",disabledTransition=CSS.Transition.toString({property:transitionProperty,duration:0,easing:"linear"}),defaultAttributes={roleDescription:"sortable"};function useDerivedTransform(e){let{disabled:t,index:n,node:r,rect:o}=e;const[a,i]=React.useState(null),s=React.useRef(n);return useIsomorphicLayoutEffect((()=>{if(!t&&n!==s.current&&r.current){const e=o.current;if(e){const t=getClientRect(r.current,{ignoreTransform:!0}),n={x:e.left-t.left,y:e.top-t.top,scaleX:e.width/t.width,scaleY:e.height/t.height};(n.x||n.y)&&i(n)}}n!==s.current&&(s.current=n)}),[t,n,r,o]),React.useEffect((()=>{a&&requestAnimationFrame((()=>{i(null)}))}),[a]),a}function useSortable(e){let{animateLayoutChanges:t=defaultAnimateLayoutChanges,attributes:n,disabled:r,data:o,getNewIndex:a=defaultNewIndexGetter,id:i,strategy:s,resizeObserverConfig:l,transition:c=defaultTransition}=e;const{items:u,containerId:d,activeIndex:f,disabled:p,disableTransforms:_,sortedRects:m,overIndex:g,useDragOverlay:h,strategy:v}=React.useContext(Context),y=normalizeLocalDisabled(r,p),b=u.indexOf(i),w=React.useMemo((()=>({sortable:{containerId:d,index:b,items:u},...o})),[d,o,b,u]),S=React.useMemo((()=>u.slice(u.indexOf(i))),[u,i]),{rect:$,node:x,isOver:F,setNodeRef:k}=useDroppable({id:i,data:w,disabled:y.droppable,resizeObserverConfig:{updateMeasurementsFor:S,...l}}),{active:O,activatorEvent:C,activeNodeRect:R,attributes:j,setNodeRef:N,listeners:I,isDragging:D,over:E,setActivatorNodeRef:A,transform:T}=useDraggable({id:i,data:w,attributes:{...defaultAttributes,...n},disabled:y.draggable}),L=useCombinedRefs(k,N),P=Boolean(O),V=P&&!_&&isValidIndex(f)&&isValidIndex(g),M=!h&&D,B=M&&V?T:null,U=V?null!=B?B:(null!=s?s:v)({rects:m,activeNodeRect:R,activeIndex:f,overIndex:g,index:b}):null,q=isValidIndex(f)&&isValidIndex(g)?a({id:i,items:u,activeIndex:f,overIndex:g}):b,z=null==O?void 0:O.id,K=React.useRef({activeId:z,items:u,newIndex:q,containerId:d}),W=u!==K.current.items,H=t({active:O,containerId:d,isDragging:D,isSorting:P,id:i,index:b,items:u,newIndex:K.current.newIndex,previousItems:K.current.items,previousContainerId:K.current.containerId,transition:c,wasDragging:null!=K.current.activeId}),J=useDerivedTransform({disabled:!H,index:b,node:x,rect:$});return React.useEffect((()=>{P&&K.current.newIndex!==q&&(K.current.newIndex=q),d!==K.current.containerId&&(K.current.containerId=d),u!==K.current.items&&(K.current.items=u)}),[P,q,d,u]),React.useEffect((()=>{if(z===K.current.activeId)return;if(z&&!K.current.activeId)return void(K.current.activeId=z);const e=setTimeout((()=>{K.current.activeId=z}),50);return()=>clearTimeout(e)}),[z]),{active:O,activeIndex:f,attributes:j,data:w,rect:$,index:b,newIndex:q,items:u,isOver:F,isSorting:P,isDragging:D,listeners:I,node:x,overIndex:g,over:E,setNodeRef:L,setActivatorNodeRef:A,setDroppableNodeRef:k,setDraggableNodeRef:N,transform:null!=J?J:U,transition:function(){if(J||W&&K.current.newIndex===b)return disabledTransition;if(M&&!isKeyboardEvent(C)||!c)return;if(P||H)return CSS.Transition.toString({...c,property:transitionProperty});return}()}}function normalizeLocalDisabled(e,t){var n,r;return"boolean"==typeof e?{draggable:e,droppable:!1}:{draggable:null!=(n=null==e?void 0:e.draggable)?n:t.draggable,droppable:null!=(r=null==e?void 0:e.droppable)?r:t.droppable}}KeyboardCode.Down,KeyboardCode.Right,KeyboardCode.Up,KeyboardCode.Left;var directions=[KeyboardCode.Down,KeyboardCode.Right,KeyboardCode.Up,KeyboardCode.Left],coordinateGetter=function(e,t){var n,r=t.context,o=r.active,a=r.droppableRects,i=r.droppableContainers,s=r.collisionRect;if(directions.includes(e.code)){if(e.preventDefault(),!o||!s)return;var l=[];i.getEnabled().forEach((function(t){var n;if(t&&!(null==t?void 0:t.disabled)){var r=a.get(t.id);if(r){var i=t.data.current;if(i){var c=i.type,u=i.children;if("container"===c&&(null==u?void 0:u.length)>0&&"container"!==(null===(n=o.data.current)||void 0===n?void 0:n.type))return}switch(e.code){case KeyboardCode.Down:s.top<r.top&&l.push(t);break;case KeyboardCode.Up:s.top>r.top&&l.push(t);break;case KeyboardCode.Left:s.left>=r.left+r.width&&l.push(t);break;case KeyboardCode.Right:s.left+s.width<=r.left&&l.push(t)}}}}));var c=getFirstCollision(closestCorners({active:o,collisionRect:s,droppableRects:a,droppableContainers:l,pointerCoordinates:null}),"id");if(null!=c){var u=i.get(c),d=null==u?void 0:u.node.current,f=null==u?void 0:u.rect.current;if(d&&f)return"placeholder"===u.id?{x:f.left+(f.width-s.width)/2,y:f.top+(f.height-s.height)/2}:"container"===(null===(n=u.data.current)||void 0===n?void 0:n.type)?{x:f.left+20,y:f.top+74}:{x:f.left,y:f.top}}}},classnames={exports:{}};
11
11
  /*!
12
12
  Copyright (c) 2018 Jed Watson.
13
13
  Licensed under the MIT License (MIT), see
14
14
  http://jedwatson.github.io/classnames
15
15
  */
16
- !function(e){!function(){var t={}.hasOwnProperty;function n(){for(var e="",t=0;t<arguments.length;t++){var n=arguments[t];n&&(e=o(e,r(n)))}return e}function r(e){if("string"==typeof e||"number"==typeof e)return e;if("object"!=typeof e)return"";if(Array.isArray(e))return n.apply(null,e);if(e.toString!==Object.prototype.toString&&!e.toString.toString().includes("[native code]"))return e.toString();var r="";for(var a in e)t.call(e,a)&&e[a]&&(r=o(r,a));return r}function o(e,t){return t?e?e+" "+t:e+t:e}e.exports?(n.default=n,e.exports=n):window.classNames=n}()}(classnames);var classNames=classnames.exports,styles$2={Action:"Action-module_Action__Vv6gh"},Action=React.forwardRef((function(e,t){var n=e.active,r=e.className,o=e.cursor,a=e.style,i=__rest(e,["active","className","cursor","style"]);return React__default.default.createElement("button",__assign$1({ref:t},i,{className:classNames(styles$2.Action,r),tabIndex:0,style:__assign$1(__assign$1({},a),{cursor:o,"--fill":null==n?void 0:n.fill,"--background":null==n?void 0:n.background})}))})),Handle=React.forwardRef((function(e,t){return React__default.default.createElement(Action,__assign$1({ref:t,cursor:"grab","data-cypress":"draggable-handle"},e),React__default.default.createElement("svg",{viewBox:"0 0 20 20",width:"12"},React__default.default.createElement("path",{d:"M7 2a2 2 0 1 0 .001 4.001A2 2 0 0 0 7 2zm0 6a2 2 0 1 0 .001 4.001A2 2 0 0 0 7 8zm0 6a2 2 0 1 0 .001 4.001A2 2 0 0 0 7 14zm6-8a2 2 0 1 0-.001-4.001A2 2 0 0 0 13 6zm0 2a2 2 0 1 0 .001 4.001A2 2 0 0 0 13 8zm0 6a2 2 0 1 0 .001 4.001A2 2 0 0 0 13 14z"})))}));function Remove(e){return React__default.default.createElement(Action,__assign$1({},e,{active:{fill:"rgba(255, 70, 70, 0.95)",background:"rgba(255, 70, 70, 0.1)"}}),React__default.default.createElement("svg",{width:"8",viewBox:"0 0 22 22",xmlns:"http://www.w3.org/2000/svg"},React__default.default.createElement("path",{d:"M2.99998 -0.000206962C2.7441 -0.000206962 2.48794 0.0972617 2.29294 0.292762L0.292945 2.29276C-0.0980552 2.68376 -0.0980552 3.31682 0.292945 3.70682L7.58591 10.9998L0.292945 18.2928C-0.0980552 18.6838 -0.0980552 19.3168 0.292945 19.7068L2.29294 21.7068C2.68394 22.0978 3.31701 22.0978 3.70701 21.7068L11 14.4139L18.2929 21.7068C18.6829 22.0978 19.317 22.0978 19.707 21.7068L21.707 19.7068C22.098 19.3158 22.098 18.6828 21.707 18.2928L14.414 10.9998L21.707 3.70682C22.098 3.31682 22.098 2.68276 21.707 2.29276L19.707 0.292762C19.316 -0.0982383 18.6829 -0.0982383 18.2929 0.292762L11 7.58573L3.70701 0.292762C3.51151 0.0972617 3.25585 -0.000206962 2.99998 -0.000206962Z"})))}var styles$1={Wrapper:"Item-module_Wrapper__5kf5R",fadeIn:"Item-module_fadeIn__AMWY6",dragOverlay:"Item-module_dragOverlay__VF1lT",Item:"Item-module_Item__QyyJd",withHandle:"Item-module_withHandle__wK7tT",dragging:"Item-module_dragging__AZaJo",disabled:"Item-module_disabled__Zkgqd",pop:"Item-module_pop__W5uSR",Remove:"Item-module_Remove__PoTm0",Actions:"Item-module_Actions__7--uM"},Item=React__default.default.memo(React__default.default.forwardRef((function(e,t){var n=e.color,r=e.dragOverlay,o=e.dragging,a=e.disabled,i=e.fadeIn,s=e.handle,l=e.handleProps;e.height;var c=e.columnSpan,u=void 0===c?1:c,d=e.index,f=e.listeners,p=e.onRemove,_=e.renderItem,m=e.sorting,g=e.style,h=e.transition,v=e.transform,y=e.value,b=e.wrapperStyle,w=e.className,S=__rest(e,["color","dragOverlay","dragging","disabled","fadeIn","handle","handleProps","height","columnSpan","index","listeners","onRemove","renderItem","sorting","style","transition","transform","value","wrapperStyle","className"]);return React.useEffect((function(){if(r)return document.body.style.cursor="grabbing",function(){document.body.style.cursor=""}}),[r]),_?_({dragOverlay:Boolean(r),dragging:Boolean(o),sorting:Boolean(m),index:d,fadeIn:Boolean(i),listeners:f,ref:t,style:g,transform:v,transition:h,value:y}):React__default.default.createElement("li",{className:classNames(styles$1.Wrapper,i&&styles$1.fadeIn,m&&styles$1.sorting,r&&styles$1.dragOverlay,w),style:__assign$1(__assign$1({},b),{gridColumn:"span ".concat(u," / span ").concat(u),transition:[h,null==b?void 0:b.transition].filter(Boolean).join(", "),"--translate-x":v?"".concat(Math.round(v.x),"px"):void 0,"--translate-y":v?"".concat(Math.round(v.y),"px"):void 0,"--scale-x":(null==v?void 0:v.scaleX)?"".concat(v.scaleX):void 0,"--scale-y":(null==v?void 0:v.scaleY)?"".concat(v.scaleY):void 0,"--index":d,"--color":n}),ref:t},React__default.default.createElement("div",__assign$1({className:classNames(styles$1.Item,o&&styles$1.dragging,s&&styles$1.withHandle,r&&styles$1.dragOverlay,a&&styles$1.disabled,n&&styles$1.color),style:g,"data-cypress":"draggable-item"},s?void 0:f,S,{tabIndex:s?void 0:0}),y,React__default.default.createElement("span",{className:styles$1.Actions},p?React__default.default.createElement(Remove,{className:styles$1.Remove,onClick:p}):null,s?React__default.default.createElement(Handle,__assign$1({},l,f)):null)))}))),styles={Container:"Container-module_Container__jf9i2",scrollable:"Container-module_scrollable__qSAWm",placeholder:"Container-module_placeholder__0BJ8I",hover:"Container-module_hover__-4EcB",unstyled:"Container-module_unstyled__aYi6X",horizontal:"Container-module_horizontal__gnBWZ",shadow:"Container-module_shadow__1UsB3",Header:"Container-module_Header__dzbqd",Actions:"Container-module_Actions__peIDq"},Container=React.forwardRef((function(e,t){var n=e.children,r=e.columns,o=void 0===r?1:r,a=e.handleProps,i=e.horizontal,s=e.hover,l=e.onClick,c=e.onRemove,u=e.label,d=e.footer,f=e.placeholder,p=e.style,_=e.scrollable,m=e.shadow,g=e.unstyled,h=e.className,v=__rest(e,["children","columns","handleProps","horizontal","hover","onClick","onRemove","label","footer","placeholder","style","scrollable","shadow","unstyled","className"]),y=l?"button":"div";return React__default.default.createElement(y,__assign$1({},v,{ref:t,style:__assign$1(__assign$1({},p),{"--columns":o}),className:classNames(styles.Container,g&&styles.unstyled,i&&styles.horizontal,s&&styles.hover,f&&styles.placeholder,_&&styles.scrollable,m&&styles.shadow,h),onClick:l,tabIndex:l?0:void 0}),u?React__default.default.createElement("div",{className:styles.Header},u,React__default.default.createElement("div",{className:styles.Actions},c?React__default.default.createElement(Remove,{onClick:c}):void 0,React__default.default.createElement(Handle,__assign$1({},a)))):null,f?n:React__default.default.createElement("ul",null,n),d||React__default.default.createElement(React__default.default.Fragment,null))})),animateLayoutChanges=function(e){return defaultAnimateLayoutChanges(__assign$1(__assign$1({},e),{wasDragging:!0}))};function DroppableContainer(e){var t,n=e.children,r=e.columns,o=void 0===r?1:r,a=e.disabled,i=e.id,s=e.items,l=e.style,c=e.className,u=__rest(e,["children","columns","disabled","id","items","style","className"]),d=useSortable({id:i,data:{type:"container",children:s},animateLayoutChanges:animateLayoutChanges}),f=d.active,p=d.attributes,_=d.isDragging,m=d.listeners,g=d.over,h=d.setNodeRef,v=d.transition,y=d.transform,b=!!g&&(i===g.id&&"container"!==(null===(t=null==f?void 0:f.data.current)||void 0===t?void 0:t.type)||s.includes(g.id));return React__default.default.createElement(Container,__assign$1({ref:a?void 0:h,style:__assign$1(__assign$1({},l),{transition:v,transform:CSS.Translate.toString(y),opacity:_?.5:void 0}),className:c,hover:b,handleProps:__assign$1(__assign$1({},p),m),columns:o},u),n)}var dropAnimation={sideEffects:defaultDropAnimationSideEffects({styles:{active:{opacity:"0.5"}}})},TRASH_ID="void",PLACEHOLDER_ID="placeholder",empty=[];function MultipleContainers(e){var t=this,n=e.adjustScale,r=void 0!==n&&n;e.itemCount;var o=e.cancelDrop,a=e.columns,i=void 0===a?1:a,s=e.handle,l=void 0===s||s,c=e.containerStyle,u=e.coordinateGetter,d=void 0===u?coordinateGetter:u,f=e.getItemStyles,p=void 0===f?function(){return{}}:f,_=e.wrapperStyle,m=void 0===_?function(){return{}}:_,g=e.minimal,h=void 0!==g&&g,v=e.modifiers,y=e.renderItem,b=e.strategy,w=void 0===b?rectSortingStrategy:b,S=e.addable,$=void 0!==S&&S,x=e.trashable,F=void 0!==x&&x,k=e.vertical,O=void 0!==k&&k,C=e.scrollable,R=e.boardSource,j=void 0===R?[]:R,N=e.cardSource,I=void 0===N?[]:N,D=e.value,E=e.onChange,A=e.data,T=e.dispatchEvent,L=e.render,P=e.cardSchema,V=void 0===P?[{type:"tpl",tpl:"${label}",inline:!1}]:P,M=e.boardHeader,B=void 0===M?[{type:"tpl",tpl:"${label}"}]:M,U=e.boardFooter,z=void 0===U?[]:U,q=e.wrapperClassName,K=void 0===q?"gap-2":q,W=e.boardClassName,H=void 0===W?"border rounded":W,J=e.cardClassName,Y=void 0===J?"":J;e.data||(e.data={});var G=React.useRef();D&&delete D.$$id;var X=__read(React.useState((function(){var e;return null!==(e=D)&&void 0!==e?e:{A:["A1","A2"],B:["B1","B2"],C:["C1","C2"]}})),2),Q=X[0],Z=X[1],ee=__read(React.useState(Object.keys(Q)),2),te=ee[0],ne=ee[1];React.useEffect((function(){Z(D),ne(Object.keys(D))}),[D]);var re=function(e){return __awaiter(t,void 0,void 0,(function(){var t,n;return __generator(this,(function(r){switch(r.label){case 0:return T&&E?[4,T("change",createObject(A,{value:t=e||Q}),G.current)]:[2];case 1:return(null==(n=r.sent())?void 0:n.prevented)||setTimeout((function(){return E(t)}),500),[2]}}))}))},oe=__read(React.useState(null),2),ae=oe[0],ie=oe[1],se=React.useRef(null),le=React.useRef(!1),ce=!!ae&&te.includes(ae),ue=React.useCallback((function(e){var t;if(ae&&ae in Q)return closestCenter(__assign$1(__assign$1({},e),{droppableContainers:e.droppableContainers.filter((function(e){return e.id in Q}))}));var n=pointerWithin(e),r=n.length>0?n:rectIntersection(e),o=getFirstCollision(r,"id");if(null!=o){if(o===TRASH_ID)return r;if(o in Q){var a=Q[o];a.length>0&&(o=null===(t=closestCenter(__assign$1(__assign$1({},e),{droppableContainers:e.droppableContainers.filter((function(e){return e.id!==o&&a.includes(e.id)}))}))[0])||void 0===t?void 0:t.id)}return se.current=o,[{id:o}]}return le.current&&(se.current=ae),se.current?[{id:se.current}]:[]}),[ae,Q]),de=__read(React.useState(null),2),fe=de[0],pe=de[1],_e=useSensors(useSensor(MouseSensor),useSensor(TouchSensor),useSensor(KeyboardSensor,{coordinateGetter:d})),me=function(e){return e in Q?e:Object.keys(Q).find((function(t){return Q[t].includes(e)}))},ge=function(e){var t=me(e);return t?Q[t].indexOf(e):-1};React.useEffect((function(){requestAnimationFrame((function(){le.current=!1}))}),[Q]);var he,ve,ye=React__default.default.createElement(DndContext,__assign$1({sensors:_e,collisionDetection:ue,measuring:{droppable:{strategy:MeasuringStrategy.Always}},onDragStart:function(e){var t=e.active;ie(t.id),pe(Q)},onDragOver:function(e){var t=e.active,n=e.over,r=null==n?void 0:n.id;if(null!=r&&r!==TRASH_ID&&!(t.id in Q)){var o=me(r),a=me(t.id);o&&a&&a!==o&&Z((function(e){var i,s,l=e[a],c=e[o],u=c.indexOf(r),d=l.indexOf(t.id);if(r in e)s=c.length+1;else{var f=n&&t.rect.current.translated&&t.rect.current.translated.top>n.rect.top+n.rect.height;s=u>=0?u+(f?1:0):c.length+1}return le.current=!0,__assign$1(__assign$1({},e),((i={})[a]=e[a].filter((function(e){return e!==t.id})),i[o]=__spreadArray(__spreadArray(__spreadArray([],__read(e[o].slice(0,s)),!1),[e[a][d]],!1),__read(e[o].slice(s,e[o].length)),!1),i))}))}},onDragEnd:function(e){var t=e.active,n=e.over;t.id in Q&&(null==n?void 0:n.id)&&ne((function(e){var r=e.indexOf(t.id),o=e.indexOf(n.id);return arrayMove(e,r,o)}));var r=me(t.id);if(r){var o=null==n?void 0:n.id;if(null!=o){if(o===TRASH_ID)return Z((function(e){var t;return __assign$1(__assign$1({},e),((t={})[r]=e[r].filter((function(e){return e!==ae})),t))})),void ie(null);if(o!==PLACEHOLDER_ID){var a=me(o),i=Q;if(a){if(r!==a)return void setTimeout((function(){var e=n.data.current.sortable.items;i={},e.forEach((function(e){i[e]=Q[e]})),delete i[TRASH_ID],delete i[PLACEHOLDER_ID],lodash.exports.keys(Q).join(",")!==lodash.exports.keys(i).join(",")&&(Z(i),re(i)),ie(null)}),500);var s=Q[r].indexOf(t.id),l=Q[a].indexOf(o);s!==l&&Z((function(e){var t;return i=__assign$1(__assign$1({},e),((t={})[a]=arrayMove(e[a],s,l),t))}))}ie(null),re(i)}else{var c=be();reactDom.unstable_batchedUpdates((function(){ne((function(e){return __spreadArray(__spreadArray([],__read(e),!1),[c],!1)})),Z((function(e){var n;return __assign$1(__assign$1({},e),((n={})[r]=e[r].filter((function(e){return e!==ae})),n[c]=[t.id],n))})),re(),ie(null)}))}}else ie(null)}else ie(null)},cancelDrop:o,onDragCancel:function(){fe&&Z(fe),ie(null),pe(null)},modifiers:v},e),React__default.default.createElement("div",{style:{display:"inline-grid",boxSizing:"border-box",gridAutoFlow:O?"row":"column",width:O?"100%":"auto"},className:K},React__default.default.createElement(SortableContext,{items:__spreadArray(__spreadArray([],__read(te),!1),[PLACEHOLDER_ID],!1),strategy:O?verticalListSortingStrategy:horizontalListSortingStrategy},te.map((function(e){var t=lodash.exports.cloneDeep(lodash.exports.keyBy(j,"id")[e])||{id:e,label:"Container "+e};return React__default.default.createElement(DroppableContainer,__assign$1({key:e,columns:i,items:Q[e],scrollable:C,style:c,className:H,unstyled:h},t,{label:L?L("body",B,{data:__assign$1({},t)}):React__default.default.createElement("span",null,t.label),footer:L?L("body",z,{data:__assign$1({},t)}):React__default.default.createElement(React__default.default.Fragment,null)}),React__default.default.createElement(SortableContext,{items:Q[e],strategy:w},Q[e].map((function(t,n){var r=lodash.exports.cloneDeep(lodash.exports.keyBy(I,"id")[t])||{id:t,label:""+t,columnSpan:1,body:V};return r.columnSpan&&r.columnSpan>i&&(r.columnSpan=i),r.body||(r.body=V),React__default.default.createElement(Se,__assign$1({disabled:ce,key:t,value:L?L("body",r.body,{data:__assign$1({},r)}):React__default.default.createElement("span",null,r.label),index:n,handle:l,style:p,wrapperStyle:m,renderItem:y,containerId:e,getIndex:ge,className:Y},r))}))))})),h||!$?void 0:React__default.default.createElement(DroppableContainer,{id:PLACEHOLDER_ID,disabled:ce,items:empty,onClick:function(){var e=be();reactDom.unstable_batchedUpdates((function(){ne((function(t){return __spreadArray(__spreadArray([],__read(t),!1),[e],!1)})),Z((function(t){var n;return __assign$1(__assign$1({},t),((n={})[e]=[],n))}))}))},placeholder:!0},"+ Add")),reactDom.createPortal(React__default.default.createElement(DragOverlay,{adjustScale:r,dropAnimation:dropAnimation},ae?te.includes(ae)?(he=ae,ve=lodash.exports.cloneDeep(lodash.exports.keyBy(j,"id")[he])||{id:he,label:"Container "+he},React__default.default.createElement(Container,{label:L?L("body",B,{data:__assign$1({},ve)}):React__default.default.createElement("span",null,ve.label),columns:i,style:{height:"100%"},className:H,unstyled:!1},Q[he].map((function(e,t){var n=lodash.exports.cloneDeep(lodash.exports.keyBy(I,"id")[e])||{id:e,label:""+e,columnSpan:1};return React__default.default.createElement(Item,{key:e,handle:l,style:p({containerId:he,overIndex:-1,index:ge(e),value:e,isDragging:!1,isSorting:!1,isDragOverlay:!1}),color:we(e),wrapperStyle:m({id:e}),renderItem:y,className:Y,value:L?L("body",V,{data:__assign$1({},n)}):React__default.default.createElement("span",null,n.label)})})))):function(e){var t=lodash.exports.cloneDeep(lodash.exports.keyBy(I,"id")[e])||{id:e,label:""+e,columnSpan:1};t.columnSpan&&t.columnSpan>i&&(t.columnSpan=i);return React__default.default.createElement(Item,{value:L?L("body",V,{data:__assign$1({},t)}):React__default.default.createElement("span",null,t.label),handle:l,style:p({containerId:me(e),overIndex:-1,index:ge(e),value:e,isSorting:!0,isDragging:!0,isDragOverlay:!0}),color:we(e),wrapperStyle:m({index:0}),renderItem:y,dragOverlay:!0})}(ae):null),document.body),F&&ae&&!te.includes(ae)?React__default.default.createElement(Trash,{id:TRASH_ID}):null));return G.current=ye,ye;function be(){var e=Object.keys(Q),t=e[e.length-1];return String.fromCharCode(t.charCodeAt(0)+1)}function we(e){var t=lodash.exports.cloneDeep(lodash.exports.keyBy(I,"id")[e]);return t&&t.color?t.color:void 0}function Se(e){var t=e.disabled,n=e.id;e.label;var r=e.index,o=e.handle,a=e.renderItem,i=e.style,s=e.containerId,l=e.getIndex,c=e.value,u=e.wrapperStyle,d=e.className,f=__rest(e,["disabled","id","label","index","handle","renderItem","style","containerId","getIndex","value","wrapperStyle","className"]),p=useSortable({id:n}),_=p.setNodeRef,m=p.setActivatorNodeRef,g=p.listeners,h=p.isDragging,v=p.isSorting,y=p.over,b=p.overIndex,w=p.transform,S=p.transition,$=useMountStatus(),x=h&&!$;return React__default.default.createElement(Item,__assign$1({ref:t?void 0:_,value:c,dragging:h,sorting:v,handle:o,handleProps:o?{ref:m}:void 0,index:r,wrapperStyle:u({index:r}),style:i({index:r,value:n,isDragging:h,isSorting:v,overIndex:y?l(y.id):b,containerId:s}),color:we(n),transition:S,transform:w,fadeIn:x,listeners:g,renderItem:a,className:d},f))}}function Trash(e){var t=useDroppable({id:e.id}),n=t.setNodeRef,r=t.isOver;return React__default.default.createElement("div",{ref:n,style:{display:"flex",alignItems:"center",justifyContent:"center",position:"fixed",left:"50%",marginLeft:-150,bottom:20,width:300,height:60,borderRadius:5,border:"1px solid",borderColor:r?"red":"#DDD"}},"Drop here to delete")}function useMountStatus(){var e=__read(React.useState(!1),2),t=e[0],n=e[1];return React.useEffect((function(){var e=setTimeout((function(){return n(!0)}),500);return function(){return clearTimeout(e)}}),[]),t}exports.MultipleContainers=MultipleContainers,Object.defineProperty(exports,"__esModule",{value:!0})}));
16
+ !function(e){!function(){var t={}.hasOwnProperty;function n(){for(var e="",t=0;t<arguments.length;t++){var n=arguments[t];n&&(e=o(e,r(n)))}return e}function r(e){if("string"==typeof e||"number"==typeof e)return e;if("object"!=typeof e)return"";if(Array.isArray(e))return n.apply(null,e);if(e.toString!==Object.prototype.toString&&!e.toString.toString().includes("[native code]"))return e.toString();var r="";for(var a in e)t.call(e,a)&&e[a]&&(r=o(r,a));return r}function o(e,t){return t?e?e+" "+t:e+t:e}e.exports?(n.default=n,e.exports=n):window.classNames=n}()}(classnames);var classNames=classnames.exports,styles$2={Action:"Action-module_Action__Vv6gh"},Action=React.forwardRef((function(e,t){var n=e.active,r=e.className,o=e.cursor,a=e.style,i=__rest(e,["active","className","cursor","style"]);return React__default.default.createElement("button",__assign$1({ref:t},i,{className:classNames(styles$2.Action,r),tabIndex:0,style:__assign$1(__assign$1({},a),{cursor:o,"--fill":null==n?void 0:n.fill,"--background":null==n?void 0:n.background})}))})),Handle=React.forwardRef((function(e,t){return React__default.default.createElement(Action,__assign$1({ref:t,cursor:"grab","data-cypress":"draggable-handle"},e),React__default.default.createElement("svg",{viewBox:"0 0 20 20",width:"12"},React__default.default.createElement("path",{d:"M7 2a2 2 0 1 0 .001 4.001A2 2 0 0 0 7 2zm0 6a2 2 0 1 0 .001 4.001A2 2 0 0 0 7 8zm0 6a2 2 0 1 0 .001 4.001A2 2 0 0 0 7 14zm6-8a2 2 0 1 0-.001-4.001A2 2 0 0 0 13 6zm0 2a2 2 0 1 0 .001 4.001A2 2 0 0 0 13 8zm0 6a2 2 0 1 0 .001 4.001A2 2 0 0 0 13 14z"})))}));function Remove(e){return React__default.default.createElement(Action,__assign$1({},e,{active:{fill:"rgba(255, 70, 70, 0.95)",background:"rgba(255, 70, 70, 0.1)"}}),React__default.default.createElement("svg",{width:"8",viewBox:"0 0 22 22",xmlns:"http://www.w3.org/2000/svg"},React__default.default.createElement("path",{d:"M2.99998 -0.000206962C2.7441 -0.000206962 2.48794 0.0972617 2.29294 0.292762L0.292945 2.29276C-0.0980552 2.68376 -0.0980552 3.31682 0.292945 3.70682L7.58591 10.9998L0.292945 18.2928C-0.0980552 18.6838 -0.0980552 19.3168 0.292945 19.7068L2.29294 21.7068C2.68394 22.0978 3.31701 22.0978 3.70701 21.7068L11 14.4139L18.2929 21.7068C18.6829 22.0978 19.317 22.0978 19.707 21.7068L21.707 19.7068C22.098 19.3158 22.098 18.6828 21.707 18.2928L14.414 10.9998L21.707 3.70682C22.098 3.31682 22.098 2.68276 21.707 2.29276L19.707 0.292762C19.316 -0.0982383 18.6829 -0.0982383 18.2929 0.292762L11 7.58573L3.70701 0.292762C3.51151 0.0972617 3.25585 -0.000206962 2.99998 -0.000206962Z"})))}var styles$1={Wrapper:"Item-module_Wrapper__5kf5R",fadeIn:"Item-module_fadeIn__AMWY6",dragOverlay:"Item-module_dragOverlay__VF1lT",Item:"Item-module_Item__QyyJd",withHandle:"Item-module_withHandle__wK7tT",dragging:"Item-module_dragging__AZaJo",disabled:"Item-module_disabled__Zkgqd",pop:"Item-module_pop__W5uSR",Remove:"Item-module_Remove__PoTm0",Actions:"Item-module_Actions__7--uM"},Item=React__default.default.memo(React__default.default.forwardRef((function(e,t){var n=e.color,r=e.dragOverlay,o=e.dragging,a=e.disabled,i=e.fadeIn,s=e.handle,l=e.handleProps;e.height;var c=e.columnSpan,u=void 0===c?1:c,d=e.index,f=e.listeners,p=e.onRemove,_=e.renderItem,m=e.sorting,g=e.style,h=e.transition,v=e.transform,y=e.value,b=e.wrapperStyle,w=e.className,S=__rest(e,["color","dragOverlay","dragging","disabled","fadeIn","handle","handleProps","height","columnSpan","index","listeners","onRemove","renderItem","sorting","style","transition","transform","value","wrapperStyle","className"]);return React.useEffect((function(){if(r)return document.body.style.cursor="grabbing",function(){document.body.style.cursor=""}}),[r]),_?_({dragOverlay:Boolean(r),dragging:Boolean(o),sorting:Boolean(m),index:d,fadeIn:Boolean(i),listeners:f,ref:t,style:g,transform:v,transition:h,value:y}):React__default.default.createElement("li",{className:classNames(styles$1.Wrapper,i&&styles$1.fadeIn,m&&styles$1.sorting,r&&styles$1.dragOverlay,w),style:__assign$1(__assign$1({},b),{gridColumn:"span ".concat(u," / span ").concat(u),transition:[h,null==b?void 0:b.transition].filter(Boolean).join(", "),"--translate-x":v?"".concat(Math.round(v.x),"px"):void 0,"--translate-y":v?"".concat(Math.round(v.y),"px"):void 0,"--scale-x":(null==v?void 0:v.scaleX)?"".concat(v.scaleX):void 0,"--scale-y":(null==v?void 0:v.scaleY)?"".concat(v.scaleY):void 0,"--index":d,"--color":n}),ref:t},React__default.default.createElement("div",__assign$1({className:classNames(styles$1.Item,o&&styles$1.dragging,s&&styles$1.withHandle,r&&styles$1.dragOverlay,a&&styles$1.disabled,n&&styles$1.color),style:g,"data-cypress":"draggable-item"},s?void 0:f,S,{tabIndex:s?void 0:0}),y,React__default.default.createElement("span",{className:styles$1.Actions},p?React__default.default.createElement(Remove,{className:styles$1.Remove,onClick:p}):null,s?React__default.default.createElement(Handle,__assign$1({},l,f)):null)))}))),styles={Container:"Container-module_Container__jf9i2",scrollable:"Container-module_scrollable__qSAWm",placeholder:"Container-module_placeholder__0BJ8I",hover:"Container-module_hover__-4EcB",unstyled:"Container-module_unstyled__aYi6X",horizontal:"Container-module_horizontal__gnBWZ",shadow:"Container-module_shadow__1UsB3",Header:"Container-module_Header__dzbqd",Actions:"Container-module_Actions__peIDq"},Container=React.forwardRef((function(e,t){var n=e.children,r=e.columns,o=void 0===r?1:r,a=e.handleProps,i=e.horizontal,s=e.hover,l=e.onClick,c=e.onRemove,u=e.label,d=e.footer,f=e.placeholder,p=e.style,_=e.scrollable,m=e.shadow,g=e.unstyled,h=e.className,v=__rest(e,["children","columns","handleProps","horizontal","hover","onClick","onRemove","label","footer","placeholder","style","scrollable","shadow","unstyled","className"]),y=l?"button":"div";return React__default.default.createElement(y,__assign$1({},v,{ref:t,style:__assign$1(__assign$1({},p),{"--columns":o}),className:classNames(styles.Container,g&&styles.unstyled,i&&styles.horizontal,s&&styles.hover,f&&styles.placeholder,_&&styles.scrollable,m&&styles.shadow,h),onClick:l,tabIndex:l?0:void 0}),u?React__default.default.createElement("div",{className:styles.Header},u,React__default.default.createElement("div",{className:styles.Actions},c?React__default.default.createElement(Remove,{onClick:c}):void 0,React__default.default.createElement(Handle,__assign$1({},a)))):null,f?n:React__default.default.createElement("ul",null,n),d||React__default.default.createElement(React__default.default.Fragment,null))})),animateLayoutChanges=function(e){return defaultAnimateLayoutChanges(__assign$1(__assign$1({},e),{wasDragging:!0}))};function DroppableContainer(e){var t,n=e.children,r=e.columns,o=void 0===r?1:r,a=e.disabled,i=e.id,s=e.items,l=e.style,c=e.className,u=__rest(e,["children","columns","disabled","id","items","style","className"]),d=useSortable({id:i,data:{type:"container",children:s},animateLayoutChanges:animateLayoutChanges}),f=d.active,p=d.attributes,_=d.isDragging,m=d.listeners,g=d.over,h=d.setNodeRef,v=d.transition,y=d.transform,b=!!g&&(i===g.id&&"container"!==(null===(t=null==f?void 0:f.data.current)||void 0===t?void 0:t.type)||s.includes(g.id));return React__default.default.createElement(Container,__assign$1({ref:a?void 0:h,style:__assign$1(__assign$1({},l),{transition:v,transform:CSS.Translate.toString(y),opacity:_?.5:void 0}),className:c,hover:b,handleProps:__assign$1(__assign$1({},p),m),columns:o},u),n)}var dropAnimation={sideEffects:defaultDropAnimationSideEffects({styles:{active:{opacity:"0.5"}}})},TRASH_ID="void",PLACEHOLDER_ID="placeholder",empty=[];function MultipleContainers(e){var t=this,n=e.adjustScale,r=void 0!==n&&n;e.itemCount;var o=e.cancelDrop,a=e.columns,i=void 0===a?1:a,s=e.handle,l=void 0===s||s,c=e.containerStyle,u=e.coordinateGetter,d=void 0===u?coordinateGetter:u,f=e.getItemStyles,p=void 0===f?function(){return{}}:f,_=e.wrapperStyle,m=void 0===_?function(){return{}}:_,g=e.minimal,h=void 0!==g&&g,v=e.modifiers,y=e.renderItem,b=e.strategy,w=void 0===b?rectSortingStrategy:b,S=e.addable,$=void 0!==S&&S,x=e.trashable,F=void 0!==x&&x,k=e.vertical,O=void 0!==k&&k,C=e.scrollable,R=e.boardSource,j=void 0===R?[]:R,N=e.cardSource,I=void 0===N?[]:N,D=e.value,E=e.onChange,A=e.data,T=e.dispatchEvent,L=e.render,P=e.cardSchema,V=void 0===P?[{type:"tpl",tpl:"${label}",inline:!1}]:P,M=e.boardHeader,B=void 0===M?[{type:"tpl",tpl:"${label}"}]:M,U=e.boardFooter,q=void 0===U?[]:U,z=e.wrapperClassName,K=void 0===z?"gap-2":z,W=e.boardClassName,H=void 0===W?"border rounded":W,J=e.cardClassName,Y=void 0===J?"":J;e.data||(e.data={});var G=React.useRef();D&&delete D.$$id;var X=__read(React.useState((function(){var e;return null!==(e=D)&&void 0!==e?e:{A:["A1","A2"],B:["B1","B2"],C:["C1","C2"]}})),2),Q=X[0],Z=X[1],ee=__read(React.useState(Object.keys(Q)),2),te=ee[0],ne=ee[1];React.useEffect((function(){Z(D),ne(Object.keys(D))}),[D]);var re=function(e){return __awaiter(t,void 0,void 0,(function(){var t,n;return __generator(this,(function(r){switch(r.label){case 0:return T&&E?[4,T("change",createObject(A,{value:t=e||Q}),G.current)]:[2];case 1:return(null==(n=r.sent())?void 0:n.prevented)||setTimeout((function(){return E(t)}),500),[2]}}))}))},oe=__read(React.useState(null),2),ae=oe[0],ie=oe[1],se=React.useRef(null),le=React.useRef(!1),ce=!!ae&&te.includes(ae),ue=React.useCallback((function(e){var t;if(ae&&ae in Q)return closestCenter(__assign$1(__assign$1({},e),{droppableContainers:e.droppableContainers.filter((function(e){return e.id in Q}))}));var n=pointerWithin(e),r=n.length>0?n:rectIntersection(e),o=getFirstCollision(r,"id");if(null!=o){if(o===TRASH_ID)return r;if(o in Q){var a=Q[o];a.length>0&&(o=null===(t=closestCenter(__assign$1(__assign$1({},e),{droppableContainers:e.droppableContainers.filter((function(e){return e.id!==o&&a.includes(e.id)}))}))[0])||void 0===t?void 0:t.id)}return se.current=o,[{id:o}]}return le.current&&(se.current=ae),se.current?[{id:se.current}]:[]}),[ae,Q]),de=__read(React.useState(null),2),fe=de[0],pe=de[1],_e=useSensors(useSensor(MouseSensor),useSensor(TouchSensor),useSensor(KeyboardSensor,{coordinateGetter:d})),me=function(e){return e in Q?e:Object.keys(Q).find((function(t){return Q[t].includes(e)}))},ge=function(e){var t=me(e);return t?Q[t].indexOf(e):-1};React.useEffect((function(){requestAnimationFrame((function(){le.current=!1}))}),[Q]);var he,ve,ye=React__default.default.createElement(DndContext,__assign$1({sensors:_e,collisionDetection:ue,measuring:{droppable:{strategy:MeasuringStrategy.Always}},onDragStart:function(e){var t=e.active;ie(t.id),pe(Q)},onDragOver:function(e){var t=e.active,n=e.over,r=null==n?void 0:n.id;if(null!=r&&r!==TRASH_ID&&!(t.id in Q)){var o=me(r),a=me(t.id);o&&a&&a!==o&&Z((function(e){var i,s,l=e[a],c=e[o],u=c.indexOf(r),d=l.indexOf(t.id);if(r in e)s=c.length+1;else{var f=n&&t.rect.current.translated&&t.rect.current.translated.top>n.rect.top+n.rect.height;s=u>=0?u+(f?1:0):c.length+1}return le.current=!0,__assign$1(__assign$1({},e),((i={})[a]=e[a].filter((function(e){return e!==t.id})),i[o]=__spreadArray(__spreadArray(__spreadArray([],__read(e[o].slice(0,s)),!1),[e[a][d]],!1),__read(e[o].slice(s,e[o].length)),!1),i))}))}},onDragEnd:function(e){var t=e.active,n=e.over;t.id in Q&&(null==n?void 0:n.id)&&ne((function(e){var r=e.indexOf(t.id),o=e.indexOf(n.id);return arrayMove(e,r,o)}));var r=me(t.id);if(r){var o=null==n?void 0:n.id;if(null!=o){if(o===TRASH_ID)return Z((function(e){var t;return __assign$1(__assign$1({},e),((t={})[r]=e[r].filter((function(e){return e!==ae})),t))})),void ie(null);if(o!==PLACEHOLDER_ID){var a=me(o),i=Q;if(a){if(r!==a)return void setTimeout((function(){var e=n.data.current.sortable.items;i={},e.forEach((function(e){i[e]=Q[e]})),delete i[TRASH_ID],delete i[PLACEHOLDER_ID],lodash.exports.keys(Q).join(",")!==lodash.exports.keys(i).join(",")&&(Z(i),re(i)),ie(null)}),500);var s=Q[r].indexOf(t.id),l=Q[a].indexOf(o);s!==l&&Z((function(e){var t;return i=__assign$1(__assign$1({},e),((t={})[a]=arrayMove(e[a],s,l),t))}))}ie(null),re(i)}else{var c=be();reactDom.unstable_batchedUpdates((function(){ne((function(e){return __spreadArray(__spreadArray([],__read(e),!1),[c],!1)})),Z((function(e){var n;return __assign$1(__assign$1({},e),((n={})[r]=e[r].filter((function(e){return e!==ae})),n[c]=[t.id],n))})),re(),ie(null)}))}}else ie(null)}else ie(null)},cancelDrop:o,onDragCancel:function(){fe&&Z(fe),ie(null),pe(null)},modifiers:v},e),React__default.default.createElement("div",{style:{display:"inline-grid",boxSizing:"border-box",gridAutoFlow:O?"row":"column",width:O?"100%":"auto"},className:K},React__default.default.createElement(SortableContext,{items:__spreadArray(__spreadArray([],__read(te),!1),[PLACEHOLDER_ID],!1),strategy:O?verticalListSortingStrategy:horizontalListSortingStrategy},te.map((function(e){var t=lodash.exports.cloneDeep(lodash.exports.keyBy(j,"id")[e])||{id:e,label:"Container "+e};return React__default.default.createElement(DroppableContainer,__assign$1({key:e,columns:i,items:Q[e],scrollable:C,style:c,className:H,unstyled:h},t,{label:L?L("body",B,{data:__assign$1({},t)}):React__default.default.createElement("span",null,t.label),footer:L?L("body",q,{data:__assign$1({},t)}):React__default.default.createElement(React__default.default.Fragment,null)}),React__default.default.createElement(SortableContext,{items:Q[e],strategy:w},Q[e].map((function(t,n){var r=lodash.exports.cloneDeep(lodash.exports.keyBy(I,"id")[t])||{id:t,label:""+t,columnSpan:1,body:V};return r.columnSpan&&r.columnSpan>i&&(r.columnSpan=i),r.body||(r.body=V),React__default.default.createElement(Se,__assign$1({disabled:ce,key:t,value:L?L("body",r.body,{data:__assign$1({},r)}):React__default.default.createElement("span",null,r.label),index:n,handle:l,style:p,wrapperStyle:m,renderItem:y,containerId:e,getIndex:ge,className:Y},r))}))))})),h||!$?void 0:React__default.default.createElement(DroppableContainer,{id:PLACEHOLDER_ID,disabled:ce,items:empty,onClick:function(){var e=be();reactDom.unstable_batchedUpdates((function(){ne((function(t){return __spreadArray(__spreadArray([],__read(t),!1),[e],!1)})),Z((function(t){var n;return __assign$1(__assign$1({},t),((n={})[e]=[],n))}))}))},placeholder:!0},"+ Add")),reactDom.createPortal(React__default.default.createElement(DragOverlay,{adjustScale:r,dropAnimation:dropAnimation},ae?te.includes(ae)?(he=ae,ve=lodash.exports.cloneDeep(lodash.exports.keyBy(j,"id")[he])||{id:he,label:"Container "+he},React__default.default.createElement(Container,{label:L?L("body",B,{data:__assign$1({},ve)}):React__default.default.createElement("span",null,ve.label),columns:i,style:{height:"100%"},className:H,unstyled:!1},Q[he].map((function(e,t){var n=lodash.exports.cloneDeep(lodash.exports.keyBy(I,"id")[e])||{id:e,label:""+e,columnSpan:1};return React__default.default.createElement(Item,{key:e,handle:l,style:p({containerId:he,overIndex:-1,index:ge(e),value:e,isDragging:!1,isSorting:!1,isDragOverlay:!1}),color:we(e),wrapperStyle:m({id:e}),renderItem:y,className:Y,value:L?L("body",V,{data:__assign$1({},n)}):React__default.default.createElement("span",null,n.label)})})))):function(e){var t=lodash.exports.cloneDeep(lodash.exports.keyBy(I,"id")[e])||{id:e,label:""+e,columnSpan:1};t.columnSpan&&t.columnSpan>i&&(t.columnSpan=i);return React__default.default.createElement(Item,{value:L?L("body",V,{data:__assign$1({},t)}):React__default.default.createElement("span",null,t.label),handle:l,style:p({containerId:me(e),overIndex:-1,index:ge(e),value:e,isSorting:!0,isDragging:!0,isDragOverlay:!0}),color:we(e),wrapperStyle:m({index:0}),renderItem:y,dragOverlay:!0})}(ae):null),document.body),F&&ae&&!te.includes(ae)?React__default.default.createElement(Trash,{id:TRASH_ID}):null));return G.current=ye,ye;function be(){var e=Object.keys(Q),t=e[e.length-1];return String.fromCharCode(t.charCodeAt(0)+1)}function we(e){var t=lodash.exports.cloneDeep(lodash.exports.keyBy(I,"id")[e]);return t&&t.color?t.color:void 0}function Se(e){var t=e.disabled,n=e.id;e.label;var r=e.index,o=e.handle,a=e.renderItem,i=e.style,s=e.containerId,l=e.getIndex,c=e.value,u=e.wrapperStyle,d=e.className,f=__rest(e,["disabled","id","label","index","handle","renderItem","style","containerId","getIndex","value","wrapperStyle","className"]),p=useSortable({id:n}),_=p.setNodeRef,m=p.setActivatorNodeRef,g=p.listeners,h=p.isDragging,v=p.isSorting,y=p.over,b=p.overIndex,w=p.transform,S=p.transition,$=useMountStatus(),x=h&&!$;return React__default.default.createElement(Item,__assign$1({ref:t?void 0:_,value:c,dragging:h,sorting:v,handle:o,handleProps:o?{ref:m}:void 0,index:r,wrapperStyle:u({index:r}),style:i({index:r,value:n,isDragging:h,isSorting:v,overIndex:y?l(y.id):b,containerId:s}),color:we(n),transition:S,transform:w,fadeIn:x,listeners:g,renderItem:a,className:d},f))}}function Trash(e){var t=useDroppable({id:e.id}),n=t.setNodeRef,r=t.isOver;return React__default.default.createElement("div",{ref:n,style:{display:"flex",alignItems:"center",justifyContent:"center",position:"fixed",left:"50%",marginLeft:-150,bottom:20,width:300,height:60,borderRadius:5,border:"1px solid",borderColor:r?"red":"#DDD"}},"Drop here to delete")}function useMountStatus(){var e=__read(React.useState(!1),2),t=e[0],n=e[1];return React.useEffect((function(){var e=setTimeout((function(){return n(!0)}),500);return function(){return clearTimeout(e)}}),[]),t}exports.MultipleContainers=MultipleContainers,Object.defineProperty(exports,"__esModule",{value:!0})}));