@byteluck-fe/model-driven-engine 6.1.0-1-beta.7 → 6.1.0-2-beta.1

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.
package/dist/index.umd.js CHANGED
@@ -7,7 +7,7 @@ Example:
7
7
  const mathjs = create(all);
8
8
  mathjs.config({ number: 'BigNumber' });
9
9
  `);return Object.freeze(Ta)};Un(La,Ta,{MATRIX_OPTIONS:M5,NUMBER_OPTIONS:x5});function ka(){return!0}function gt(){return!1}function Or(){}const qa="Argument is not a typed-function.";function ja(){function t(A){return typeof A=="object"&&A!==null&&A.constructor===Object}const e=[{name:"number",test:function(A){return typeof A=="number"}},{name:"string",test:function(A){return typeof A=="string"}},{name:"boolean",test:function(A){return typeof A=="boolean"}},{name:"Function",test:function(A){return typeof A=="function"}},{name:"Array",test:Array.isArray},{name:"Date",test:function(A){return A instanceof Date}},{name:"RegExp",test:function(A){return A instanceof RegExp}},{name:"Object",test:t},{name:"null",test:function(A){return A===null}},{name:"undefined",test:function(A){return A===void 0}}],r={name:"any",test:ka,isAny:!0};let n,i,u=0,o={createCount:0};function a(A){const B=n.get(A);if(B)return B;let M='Unknown type "'+A+'"';const P=A.toLowerCase();let L;for(L of i)if(L.toLowerCase()===P){M+='. Did you mean "'+L+'" ?';break}throw new TypeError(M)}function s(A){let B=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"any";const M=B?a(B).index:i.length,P=[];for(let N=0;N<A.length;++N){if(!A[N]||typeof A[N].name!="string"||typeof A[N].test!="function")throw new TypeError("Object with properties {name: string, test: function} expected");const V=A[N].name;if(n.has(V))throw new TypeError('Duplicate type name "'+V+'"');P.push(V),n.set(V,{name:V,test:A[N].test,isAny:A[N].isAny,index:M+N,conversionsTo:[]})}const L=i.slice(M);i=i.slice(0,M).concat(P).concat(L);for(let N=M+P.length;N<i.length;++N)n.get(i[N]).index=N}function l(){n=new Map,i=[],u=0,s([r],!1)}l(),s(e);function c(){let A;for(A of i)n.get(A).conversionsTo=[];u=0}function f(A){const B=i.filter(M=>{const P=n.get(M);return!P.isAny&&P.test(A)});return B.length?B:["any"]}function h(A){return A&&typeof A=="function"&&"_typedFunctionData"in A}function g(A,B,M){if(!h(A))throw new TypeError(qa);const P=M&&M.exact,L=Array.isArray(B)?B.join(","):B,N=E(L),V=m(N);if(!P||V in A.signatures){const Ee=A._typedFunctionData.signatureMap.get(V);if(Ee)return Ee}const q=N.length;let W;if(P){W=[];let Ee;for(Ee in A.signatures)W.push(A._typedFunctionData.signatureMap.get(Ee))}else W=A._typedFunctionData.signatures;for(let Ee=0;Ee<q;++Ee){const be=N[Ee],$e=[];let nt;for(nt of W){const Xe=C(nt.params,Ee);if(!(!Xe||be.restParam&&!Xe.restParam)){if(!Xe.hasAny){const xt=D(Xe);if(be.types.some(Tt=>!xt.has(Tt.name)))continue}$e.push(nt)}}if(W=$e,W.length===0)break}let k;for(k of W)if(k.params.length<=q)return k;throw new TypeError("Signature not found (signature: "+(A.name||"unnamed")+"("+m(N,", ")+"))")}function y(A,B,M){return g(A,B,M).implementation}function d(A,B){const M=a(B);if(M.test(A))return A;const P=M.conversionsTo;if(P.length===0)throw new Error("There are no conversions to "+B+" defined.");for(let L=0;L<P.length;L++)if(a(P[L].from).test(A))return P[L].convert(A);throw new Error("Cannot convert "+A+" to "+B)}function m(A){let B=arguments.length>1&&arguments[1]!==void 0?arguments[1]:",";return A.map(M=>M.name).join(B)}function p(A){const B=A.indexOf("...")===0,P=(B?A.length>3?A.slice(3):"any":A).split("|").map(q=>a(q.trim()));let L=!1,N=B?"...":"";return{types:P.map(function(q){return L=q.isAny||L,N+=q.name+"|",{name:q.name,typeIndex:q.index,test:q.test,isAny:q.isAny,conversion:null,conversionIndex:-1}}),name:N.slice(0,-1),hasAny:L,hasConversion:!1,restParam:B}}function v(A){const B=A.types.map(V=>V.name),M=Ie(B);let P=A.hasAny,L=A.name;const N=M.map(function(V){const q=a(V.from);return P=q.isAny||P,L+="|"+V.from,{name:V.from,typeIndex:q.index,test:q.test,isAny:q.isAny,conversion:V,conversionIndex:V.index}});return{types:A.types.concat(N),name:L,hasAny:P,hasConversion:N.length>0,restParam:A.restParam}}function D(A){return A.typeSet||(A.typeSet=new Set,A.types.forEach(B=>A.typeSet.add(B.name))),A.typeSet}function E(A){const B=[];if(typeof A!="string")throw new TypeError("Signatures must be strings");const M=A.trim();if(M==="")return B;const P=M.split(",");for(let L=0;L<P.length;++L){const N=p(P[L].trim());if(N.restParam&&L!==P.length-1)throw new SyntaxError('Unexpected rest parameter "'+P[L]+'": only allowed for the last parameter');if(N.types.length===0)return null;B.push(N)}return B}function w(A){const B=fe(A);return B?B.restParam:!1}function _(A){if(!A||A.types.length===0)return ka;if(A.types.length===1)return a(A.types[0].name).test;if(A.types.length===2){const B=a(A.types[0].name).test,M=a(A.types[1].name).test;return function(L){return B(L)||M(L)}}else{const B=A.types.map(function(M){return a(M.name).test});return function(P){for(let L=0;L<B.length;L++)if(B[L](P))return!0;return!1}}}function O(A){let B,M,P;if(w(A)){B=se(A).map(_);const L=B.length,N=_(fe(A)),V=function(q){for(let W=L;W<q.length;W++)if(!N(q[W]))return!1;return!0};return function(W){for(let k=0;k<B.length;k++)if(!B[k](W[k]))return!1;return V(W)&&W.length>=L+1}}else return A.length===0?function(N){return N.length===0}:A.length===1?(M=_(A[0]),function(N){return M(N[0])&&N.length===1}):A.length===2?(M=_(A[0]),P=_(A[1]),function(N){return M(N[0])&&P(N[1])&&N.length===2}):(B=A.map(_),function(N){for(let V=0;V<B.length;V++)if(!B[V](N[V]))return!1;return N.length===B.length})}function C(A,B){return B<A.length?A[B]:w(A)?fe(A):null}function b(A,B){const M=C(A,B);return M?D(M):new Set}function S(A){return A.conversion===null||A.conversion===void 0}function F(A,B){const M=new Set;return A.forEach(P=>{const L=b(P.params,B);let N;for(N of L)M.add(N)}),M.has("any")?["any"]:Array.from(M)}function R(A,B,M){let P,L;const N=A||"unnamed";let V=M,q;for(q=0;q<B.length;q++){const be=[];if(V.forEach($e=>{const nt=C($e.params,q),Xe=_(nt);(q<$e.params.length||w($e.params))&&Xe(B[q])&&be.push($e)}),be.length===0){if(L=F(V,q),L.length>0){const $e=f(B[q]);return P=new TypeError("Unexpected type of argument in function "+N+" (expected: "+L.join(" or ")+", actual: "+$e.join(" | ")+", index: "+q+")"),P.data={category:"wrongType",fn:N,index:q,actual:$e,expected:L},P}}else V=be}const W=V.map(function(be){return w(be.params)?1/0:be.params.length});if(B.length<Math.min.apply(null,W))return L=F(V,q),P=new TypeError("Too few arguments in function "+N+" (expected: "+L.join(" or ")+", index: "+B.length+")"),P.data={category:"tooFewArgs",fn:N,index:B.length,expected:L},P;const k=Math.max.apply(null,W);if(B.length>k)return P=new TypeError("Too many arguments in function "+N+" (expected: "+k+", actual: "+B.length+")"),P.data={category:"tooManyArgs",fn:N,index:B.length,expectedLength:k},P;const Ee=[];for(let be=0;be<B.length;++be)Ee.push(f(B[be]).join("|"));return P=new TypeError('Arguments of type "'+Ee.join(", ")+'" do not match any of the defined signatures of function '+N+"."),P.data={category:"mismatch",actual:Ee},P}function X(A){let B=i.length+1;for(let M=0;M<A.types.length;M++)S(A.types[M])&&(B=Math.min(B,A.types[M].typeIndex));return B}function Y(A){let B=u+1;for(let M=0;M<A.types.length;M++)S(A.types[M])||(B=Math.min(B,A.types[M].conversionIndex));return B}function Z(A,B){if(A.hasAny){if(!B.hasAny)return 1}else if(B.hasAny)return-1;if(A.restParam){if(!B.restParam)return 1}else if(B.restParam)return-1;if(A.hasConversion){if(!B.hasConversion)return 1}else if(B.hasConversion)return-1;const M=X(A)-X(B);if(M<0)return-1;if(M>0)return 1;const P=Y(A)-Y(B);return P<0?-1:P>0?1:0}function j(A,B){const M=A.params,P=B.params,L=fe(M),N=fe(P),V=w(M),q=w(P);if(V&&L.hasAny){if(!q||!N.hasAny)return 1}else if(q&&N.hasAny)return-1;let W=0,k=0,Ee;for(Ee of M)Ee.hasAny&&++W,Ee.hasConversion&&++k;let be=0,$e=0;for(Ee of P)Ee.hasAny&&++be,Ee.hasConversion&&++$e;if(W!==be)return W-be;if(V&&L.hasConversion){if(!q||!N.hasConversion)return 1}else if(q&&N.hasConversion)return-1;if(k!==$e)return k-$e;if(V){if(!q)return 1}else if(q)return-1;const nt=(M.length-P.length)*(V?-1:1);if(nt!==0)return nt;const Xe=[];let xt=0;for(let Vr=0;Vr<M.length;++Vr){const Wi=Z(M[Vr],P[Vr]);Xe.push(Wi),xt+=Wi}if(xt!==0)return xt;let Tt;for(Tt of Xe)if(Tt!==0)return Tt;return 0}function Ie(A){if(A.length===0)return[];const B=A.map(a);A.length>1&&B.sort((L,N)=>L.index-N.index);let M=B[0].conversionsTo;if(A.length===1)return M;M=M.concat([]);const P=new Set(A);for(let L=1;L<B.length;++L){let N;for(N of B[L].conversionsTo)P.has(N.from)||(M.push(N),P.add(N.from))}return M}function wt(A,B){let M=B;if(A.some(L=>L.hasConversion)){const L=w(A),N=A.map(Dr);M=function(){const q=[],W=L?arguments.length-1:arguments.length;for(let k=0;k<W;k++)q[k]=N[k](arguments[k]);return L&&(q[W]=arguments[W].map(N[W])),B.apply(this,q)}}let P=M;if(w(A)){const L=A.length-1;P=function(){return M.apply(this,le(arguments,0,L).concat([le(arguments,L)]))}}return P}function Dr(A){let B,M,P,L;const N=[],V=[];switch(A.types.forEach(function(q){q.conversion&&(N.push(a(q.conversion.from).test),V.push(q.conversion.convert))}),V.length){case 0:return function(W){return W};case 1:return B=N[0],P=V[0],function(W){return B(W)?P(W):W};case 2:return B=N[0],M=N[1],P=V[0],L=V[1],function(W){return B(W)?P(W):M(W)?L(W):W};default:return function(W){for(let k=0;k<V.length;k++)if(N[k](W))return V[k](W);return W}}}function Ct(A){function B(M,P,L){if(P<M.length){const N=M[P];let V=[];if(N.restParam){const q=N.types.filter(S);q.length<N.types.length&&V.push({types:q,name:"..."+q.map(W=>W.name).join("|"),hasAny:q.some(W=>W.isAny),hasConversion:!1,restParam:!0}),V.push(N)}else V=N.types.map(function(q){return{types:[q],name:q.name,hasAny:q.isAny,hasConversion:q.conversion,restParam:!1}});return De(V,function(q){return B(M,P+1,L.concat([q]))})}else return[L]}return B(A,0,[])}function G(A,B){const M=Math.max(A.length,B.length);for(let q=0;q<M;q++){const W=b(A,q),k=b(B,q);let Ee=!1,be;for(be of k)if(W.has(be)){Ee=!0;break}if(!Ee)return!1}const P=A.length,L=B.length,N=w(A),V=w(B);return N?V?P===L:L>=P:V?P>=L:P===L}function J(A){return A.map(B=>ht(B)?Be(B.referToSelf.callback):At(B)?ue(B.referTo.references,B.referTo.callback):B)}function z(A,B,M){const P=[];let L;for(L of A){let N=M[L];if(typeof N!="number")throw new TypeError('No definition for referenced signature "'+L+'"');if(N=B[N],typeof N!="function")return!1;P.push(N)}return P}function x(A,B,M){const P=J(A),L=new Array(P.length).fill(!1);let N=!0;for(;N;){N=!1;let V=!0;for(let q=0;q<P.length;++q){if(L[q])continue;const W=P[q];if(ht(W))P[q]=W.referToSelf.callback(M),P[q].referToSelf=W.referToSelf,L[q]=!0,V=!1;else if(At(W)){const k=z(W.referTo.references,P,B);k?(P[q]=W.referTo.callback.apply(this,k),P[q].referTo=W.referTo,L[q]=!0,V=!1):N=!0}}if(V&&N)throw new SyntaxError("Circular reference detected in resolving typed.referTo")}return P}function U(A){const B=/\bthis(\(|\.signatures\b)/;Object.keys(A).forEach(M=>{const P=A[M];if(B.test(P.toString()))throw new SyntaxError("Using `this` to self-reference a function is deprecated since typed-function@3. Use typed.referTo and typed.referToSelf instead.")})}function te(A,B){if(o.createCount++,Object.keys(B).length===0)throw new SyntaxError("No signatures provided");o.warnAgainstDeprecatedThis&&U(B);const M=[],P=[],L={},N=[];let V;for(V in B){if(!Object.prototype.hasOwnProperty.call(B,V))continue;const ve=E(V);if(!ve)continue;M.forEach(function(wn){if(G(wn,ve))throw new TypeError('Conflicting signatures "'+m(wn)+'" and "'+m(ve)+'".')}),M.push(ve);const it=P.length;P.push(B[V]);const o2=ve.map(v);let zi;for(zi of Ct(o2)){const wn=m(zi);N.push({params:zi,name:wn,fn:it}),zi.every(s2=>!s2.hasConversion)&&(L[wn]=it)}}N.sort(j);const q=x(P,L,En);let W;for(W in L)Object.prototype.hasOwnProperty.call(L,W)&&(L[W]=q[L[W]]);const k=[],Ee=new Map;for(W of N)Ee.has(W.name)||(W.fn=q[W.fn],k.push(W),Ee.set(W.name,W));const be=k[0]&&k[0].params.length<=2&&!w(k[0].params),$e=k[1]&&k[1].params.length<=2&&!w(k[1].params),nt=k[2]&&k[2].params.length<=2&&!w(k[2].params),Xe=k[3]&&k[3].params.length<=2&&!w(k[3].params),xt=k[4]&&k[4].params.length<=2&&!w(k[4].params),Tt=k[5]&&k[5].params.length<=2&&!w(k[5].params),Vr=be&&$e&&nt&&Xe&&xt&&Tt;for(let ve=0;ve<k.length;++ve)k[ve].test=O(k[ve].params);const Wi=be?_(k[0].params[0]):gt,T_=$e?_(k[1].params[0]):gt,I_=nt?_(k[2].params[0]):gt,P_=Xe?_(k[3].params[0]):gt,N_=xt?_(k[4].params[0]):gt,$_=Tt?_(k[5].params[0]):gt,R_=be?_(k[0].params[1]):gt,L_=$e?_(k[1].params[1]):gt,k_=nt?_(k[2].params[1]):gt,q_=Xe?_(k[3].params[1]):gt,j_=xt?_(k[4].params[1]):gt,U_=Tt?_(k[5].params[1]):gt;for(let ve=0;ve<k.length;++ve)k[ve].implementation=wt(k[ve].params,k[ve].fn);const V_=be?k[0].implementation:Or,W_=$e?k[1].implementation:Or,z_=nt?k[2].implementation:Or,G_=Xe?k[3].implementation:Or,H_=xt?k[4].implementation:Or,Q_=Tt?k[5].implementation:Or,J_=be?k[0].params.length:-1,Z_=$e?k[1].params.length:-1,X_=nt?k[2].params.length:-1,K_=Xe?k[3].params.length:-1,Y_=xt?k[4].params.length:-1,e2=Tt?k[5].params.length:-1,t2=Vr?6:0,r2=k.length,n2=k.map(ve=>ve.test),i2=k.map(ve=>ve.implementation),u2=function(){for(let it=t2;it<r2;it++)if(n2[it](arguments))return i2[it].apply(this,arguments);return o.onMismatch(A,arguments,k)};function En(ve,it){return arguments.length===J_&&Wi(ve)&&R_(it)?V_.apply(this,arguments):arguments.length===Z_&&T_(ve)&&L_(it)?W_.apply(this,arguments):arguments.length===X_&&I_(ve)&&k_(it)?z_.apply(this,arguments):arguments.length===K_&&P_(ve)&&q_(it)?G_.apply(this,arguments):arguments.length===Y_&&N_(ve)&&j_(it)?H_.apply(this,arguments):arguments.length===e2&&$_(ve)&&U_(it)?Q_.apply(this,arguments):u2.apply(this,arguments)}try{Object.defineProperty(En,"name",{value:A})}catch(ve){}return En.signatures=L,En._typedFunctionData={signatures:k,signatureMap:Ee},En}function I(A,B,M){throw R(A,B,M)}function se(A){return le(A,0,A.length-1)}function fe(A){return A[A.length-1]}function le(A,B,M){return Array.prototype.slice.call(A,B,M)}function ne(A,B){for(let M=0;M<A.length;M++)if(B(A[M]))return A[M]}function De(A,B){return Array.prototype.concat.apply([],A.map(B))}function Ne(){const A=se(arguments).map(M=>m(E(M))),B=fe(arguments);if(typeof B!="function")throw new TypeError("Callback function expected as last argument");return ue(A,B)}function ue(A,B){return{referTo:{references:A,callback:B}}}function Be(A){if(typeof A!="function")throw new TypeError("Callback function expected as first argument");return{referToSelf:{callback:A}}}function At(A){return A&&typeof A.referTo=="object"&&Array.isArray(A.referTo.references)&&typeof A.referTo.callback=="function"}function ht(A){return A&&typeof A.referToSelf=="object"&&typeof A.referToSelf.callback=="function"}function Qe(A,B){if(!A)return B;if(B&&B!==A){const M=new Error("Function names do not match (expected: "+A+", actual: "+B+")");throw M.data={actual:B,expected:A},M}return A}function je(A){let B;for(const M in A)Object.prototype.hasOwnProperty.call(A,M)&&(h(A[M])||typeof A[M].signature=="string")&&(B=Qe(B,A[M].name));return B}function dt(A,B){let M;for(M in B)if(Object.prototype.hasOwnProperty.call(B,M)){if(M in A&&B[M]!==A[M]){const P=new Error('Signature "'+M+'" is defined twice');throw P.data={signature:M,sourceFunction:B[M],destFunction:A[M]},P}A[M]=B[M]}}const pt=o;o=function(A){const B=typeof A=="string",M=B?1:0;let P=B?A:"";const L={};for(let N=M;N<arguments.length;++N){const V=arguments[N];let q={},W;if(typeof V=="function"?(W=V.name,typeof V.signature=="string"?q[V.signature]=V:h(V)&&(q=V.signatures)):t(V)&&(q=V,B||(W=je(V))),Object.keys(q).length===0){const k=new TypeError("Argument to 'typed' at index "+N+" is not a (typed) function, nor an object with signatures as keys and functions as values.");throw k.data={index:N,argument:V},k}B||(P=Qe(P,W)),dt(L,q)}return te(P||"",L)},o.create=ja,o.createCount=pt.createCount,o.onMismatch=I,o.throwMismatchError=I,o.createError=R,o.clear=l,o.clearConversions=c,o.addTypes=s,o._findType=a,o.referTo=Ne,o.referToSelf=Be,o.convert=d,o.findSignature=g,o.find=y,o.isTypedFunction=h,o.warnAgainstDeprecatedThis=!0,o.addType=function(A,B){let M="any";B!==!1&&n.has("Object")&&(M="Object"),o.addTypes([A],M)};function Mt(A){if(!A||typeof A.from!="string"||typeof A.to!="string"||typeof A.convert!="function")throw new TypeError("Object with properties {from: string, to: string, convert: function} expected");if(A.to===A.from)throw new SyntaxError('Illegal to define conversion from "'+A.from+'" to itself.')}return o.addConversion=function(A){let B=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{override:!1};Mt(A);const M=a(A.to),P=M.conversionsTo.find(L=>L.from===A.from);if(P)if(B&&B.override)o.removeConversion({from:P.from,to:A.to,convert:P.convert});else throw new Error('There is already a conversion from "'+A.from+'" to "'+M.name+'"');M.conversionsTo.push({from:A.from,convert:A.convert,index:u++})},o.addConversions=function(A,B){A.forEach(M=>o.addConversion(M,B))},o.removeConversion=function(A){Mt(A);const B=a(A.to),M=ne(B.conversionsTo,L=>L.from===A.from);if(!M)throw new Error("Attempt to remove nonexistent conversion from "+A.from+" to "+A.to);if(M.convert!==A.convert)throw new Error("Conversion to remove does not match existing conversion");const P=B.conversionsTo.indexOf(M);B.conversionsTo.splice(P,1)},o.resolve=function(A,B){if(!h(A))throw new TypeError(qa);const M=A._typedFunctionData.signatures;for(let P=0;P<M.length;++P)if(M[P].test(B))return M[P];return null},o}var Ua=ja();function Nt(t){return typeof t=="boolean"?!0:isFinite(t)?t===Math.round(t):!1}function Zu(t,e,r){var n={2:"0b",8:"0o",16:"0x"},i=n[e],u="";if(r){if(r<1)throw new Error("size must be in greater than 0");if(!Nt(r))throw new Error("size must be an integer");if(t>Hi(2,r-1)-1||t<-Hi(2,r-1))throw new Error("Value must be in range [-2^".concat(r-1,", 2^").concat(r-1,"-1]"));if(!Nt(t))throw new Error("Value must be an integer");t<0&&(t=t+Hi(2,r)),u="i".concat(r)}var o="";return t<0&&(t=-t,o="-"),"".concat(o).concat(i).concat(t.toString(e)).concat(u)}function Xu(t,e){if(typeof e=="function")return e(t);if(t===1/0)return"Infinity";if(t===-1/0)return"-Infinity";if(isNaN(t))return"NaN";var r="auto",n,i;if(e&&(e.notation&&(r=e.notation),ze(e)?n=e:ze(e.precision)&&(n=e.precision),e.wordSize&&(i=e.wordSize,typeof i!="number")))throw new Error('Option "wordSize" must be a number');switch(r){case"fixed":return I5(t,n);case"exponential":return Va(t,n);case"engineering":return T5(t,n);case"bin":return Zu(t,2,i);case"oct":return Zu(t,8,i);case"hex":return Zu(t,16,i);case"auto":return P5(t,n,e&&e).replace(/((\.\d*?)(0+))($|e)/,function(){var u=arguments[2],o=arguments[4];return u!=="."?u+o:o});default:throw new Error('Unknown notation "'+r+'". Choose "auto", "exponential", "fixed", "bin", "oct", or "hex.')}}function zn(t){var e=String(t).toLowerCase().match(/^(-?)(\d+\.?\d*)(e([+-]?\d+))?$/);if(!e)throw new SyntaxError("Invalid number "+t);var r=e[1],n=e[2],i=parseFloat(e[4]||"0"),u=n.indexOf(".");i+=u!==-1?u-1:n.length-1;var o=n.replace(".","").replace(/^0*/,function(a){return i-=a.length,""}).replace(/0*$/,"").split("").map(function(a){return parseInt(a)});return o.length===0&&(o.push(0),i++),{sign:r,coefficients:o,exponent:i}}function T5(t,e){if(isNaN(t)||!isFinite(t))return String(t);var r=zn(t),n=Gn(r,e),i=n.exponent,u=n.coefficients,o=i%3===0?i:i<0?i-3-i%3:i-i%3;if(ze(e))for(;e>u.length||i-o+1>u.length;)u.push(0);else for(var a=Math.abs(i-o)-(u.length-1),s=0;s<a;s++)u.push(0);for(var l=Math.abs(i-o),c=1;l>0;)c++,l--;var f=u.slice(c).join(""),h=ze(e)&&f.length||f.match(/[1-9]/)?"."+f:"",g=u.slice(0,c).join("")+h+"e"+(i>=0?"+":"")+o.toString();return n.sign+g}function I5(t,e){if(isNaN(t)||!isFinite(t))return String(t);var r=zn(t),n=typeof e=="number"?Gn(r,r.exponent+1+e):r,i=n.coefficients,u=n.exponent+1,o=u+(e||0);return i.length<o&&(i=i.concat(Mr(o-i.length))),u<0&&(i=Mr(-u+1).concat(i),u=1),u<i.length&&i.splice(u,0,u===0?"0.":"."),n.sign+i.join("")}function Va(t,e){if(isNaN(t)||!isFinite(t))return String(t);var r=zn(t),n=e?Gn(r,e):r,i=n.coefficients,u=n.exponent;i.length<e&&(i=i.concat(Mr(e-i.length)));var o=i.shift();return n.sign+o+(i.length>0?"."+i.join(""):"")+"e"+(u>=0?"+":"")+u}function P5(t,e,r){if(isNaN(t)||!isFinite(t))return String(t);var n=r&&r.lowerExp!==void 0?r.lowerExp:-3,i=r&&r.upperExp!==void 0?r.upperExp:5,u=zn(t),o=e?Gn(u,e):u;if(o.exponent<n||o.exponent>=i)return Va(t,e);var a=o.coefficients,s=o.exponent;a.length<e&&(a=a.concat(Mr(e-a.length))),a=a.concat(Mr(s-a.length+1+(a.length<e?e-a.length:0))),a=Mr(-s).concat(a);var l=s>0?s:0;return l<a.length-1&&a.splice(l+1,0,"."),o.sign+a.join("")}function Gn(t,e){for(var r={sign:t.sign,coefficients:t.coefficients,exponent:t.exponent},n=r.coefficients;e<=0;)n.unshift(0),r.exponent++,e++;if(n.length>e){var i=n.splice(e,n.length-e);if(i[0]>=5){var u=e-1;for(n[u]++;n[u]===10;)n.pop(),u===0&&(n.unshift(0),r.exponent++,u++),u--,n[u]++}}return r}function Mr(t){for(var e=[],r=0;r<t;r++)e.push(0);return e}function N5(t){return t.toExponential().replace(/e.*$/,"").replace(/^0\.?0*|\./,"").length}var $5=Number.EPSILON||2220446049250313e-31;function R5(t,e,r){if(r==null)return t===e;if(t===e)return!0;if(isNaN(t)||isNaN(e))return!1;if(isFinite(t)&&isFinite(e)){var n=Math.abs(t-e);return n<$5?!0:n<=Math.max(Math.abs(t),Math.abs(e))*r}return!1}function Ku(t,e,r){var n=t.constructor,i=new n(2),u="";if(r){if(r<1)throw new Error("size must be in greater than 0");if(!Nt(r))throw new Error("size must be an integer");if(t.greaterThan(i.pow(r-1).sub(1))||t.lessThan(i.pow(r-1).mul(-1)))throw new Error("Value must be in range [-2^".concat(r-1,", 2^").concat(r-1,"-1]"));if(!t.isInteger())throw new Error("Value must be an integer");t.lessThan(0)&&(t=t.add(i.pow(r))),u="i".concat(r)}switch(e){case 2:return"".concat(t.toBinary()).concat(u);case 8:return"".concat(t.toOctal()).concat(u);case 16:return"".concat(t.toHexadecimal()).concat(u);default:throw new Error("Base ".concat(e," not supported "))}}function L5(t,e){if(typeof e=="function")return e(t);if(!t.isFinite())return t.isNaN()?"NaN":t.gt(0)?"Infinity":"-Infinity";var r="auto",n,i;if(e!==void 0&&(e.notation&&(r=e.notation),typeof e=="number"?n=e:e.precision!==void 0&&(n=e.precision),e.wordSize&&(i=e.wordSize,typeof i!="number")))throw new Error('Option "wordSize" must be a number');switch(r){case"fixed":return q5(t,n);case"exponential":return Wa(t,n);case"engineering":return k5(t,n);case"bin":return Ku(t,2,i);case"oct":return Ku(t,8,i);case"hex":return Ku(t,16,i);case"auto":{var u=e&&e.lowerExp!==void 0?e.lowerExp:-3,o=e&&e.upperExp!==void 0?e.upperExp:5;if(t.isZero())return"0";var a,s=t.toSignificantDigits(n),l=s.e;return l>=u&&l<o?a=s.toFixed():a=Wa(t,n),a.replace(/((\.\d*?)(0+))($|e)/,function(){var c=arguments[2],f=arguments[4];return c!=="."?c+f:f})}default:throw new Error('Unknown notation "'+r+'". Choose "auto", "exponential", "fixed", "bin", "oct", or "hex.')}}function k5(t,e){var r=t.e,n=r%3===0?r:r<0?r-3-r%3:r-r%3,i=t.mul(Math.pow(10,-n)),u=i.toPrecision(e);if(u.indexOf("e")!==-1){var o=t.constructor;u=new o(u).toFixed()}return u+"e"+(r>=0?"+":"")+n.toString()}function Wa(t,e){return e!==void 0?t.toExponential(e-1):t.toExponential()}function q5(t,e){return t.toFixed(e)}function pr(t,e){var r=j5(t,e);return e&&typeof e=="object"&&"truncate"in e&&r.length>e.truncate?r.substring(0,e.truncate-3)+"...":r}function j5(t,e){if(typeof t=="number")return Xu(t,e);if(zt(t))return L5(t,e);if(U5(t))return!e||e.fraction!=="decimal"?t.s*t.n+"/"+t.d:t.toString();if(Array.isArray(t))return Ha(t,e);if(Vn(t))return za(t);if(typeof t=="function")return t.syntax?String(t.syntax):"function";if(t&&typeof t=="object"){if(typeof t.format=="function")return t.format(e);if(t&&t.toString(e)!=={}.toString())return t.toString(e);var r=Object.keys(t).map(n=>za(n)+": "+pr(t[n],e));return"{"+r.join(", ")+"}"}return String(t)}function za(t){for(var e=String(t),r="",n=0;n<e.length;){var i=e.charAt(n);r+=i in Ga?Ga[i]:i,n++}return'"'+r+'"'}var Ga={'"':'\\"',"\\":"\\\\","\b":"\\b","\f":"\\f","\n":"\\n","\r":"\\r"," ":"\\t"};function Ha(t,e){if(Array.isArray(t)){for(var r="[",n=t.length,i=0;i<n;i++)i!==0&&(r+=", "),r+=Ha(t[i],e);return r+="]",r}else return pr(t,e)}function U5(t){return t&&typeof t=="object"&&typeof t.s=="number"&&typeof t.n=="number"&&typeof t.d=="number"||!1}function Le(t,e,r){if(!(this instanceof Le))throw new SyntaxError("Constructor must be called with the new operator");this.actual=t,this.expected=e,this.relation=r,this.message="Dimension mismatch ("+(Array.isArray(t)?"["+t.join(", ")+"]":t)+" "+(this.relation||"!=")+" "+(Array.isArray(e)?"["+e.join(", ")+"]":e)+")",this.stack=new Error().stack}Le.prototype=new RangeError,Le.prototype.constructor=RangeError,Le.prototype.name="DimensionError",Le.prototype.isDimensionError=!0;function xr(t,e,r){if(!(this instanceof xr))throw new SyntaxError("Constructor must be called with the new operator");this.index=t,arguments.length<3?(this.min=0,this.max=e):(this.min=e,this.max=r),this.min!==void 0&&this.index<this.min?this.message="Index out of range ("+this.index+" < "+this.min+")":this.max!==void 0&&this.index>=this.max?this.message="Index out of range ("+this.index+" > "+(this.max-1)+")":this.message="Index out of range ("+this.index+")",this.stack=new Error().stack}xr.prototype=new RangeError,xr.prototype.constructor=RangeError,xr.prototype.name="IndexError",xr.prototype.isIndexError=!0;function gr(t){for(var e=[];Array.isArray(t);)e.push(t.length),t=t[0];return e}function Qa(t,e,r){var n,i=t.length;if(i!==e[r])throw new Le(i,e[r]);if(r<e.length-1){var u=r+1;for(n=0;n<i;n++){var o=t[n];if(!Array.isArray(o))throw new Le(e.length-1,e.length,"<");Qa(t[n],e,u)}}else for(n=0;n<i;n++)if(Array.isArray(t[n]))throw new Le(e.length+1,e.length,">")}function Ja(t,e){var r=e.length===0;if(r){if(Array.isArray(t))throw new Le(t.length,0)}else Qa(t,e,0)}function vt(t,e){if(t!==void 0){if(!ze(t)||!Nt(t))throw new TypeError("Index must be an integer (value: "+t+")");if(t<0||typeof e=="number"&&t>=e)throw new xr(t,e)}}function Za(t,e,r){if(!Array.isArray(e))throw new TypeError("Array expected");if(e.length===0)throw new Error("Resizing to scalar is not supported");e.forEach(function(i){if(!ze(i)||!Nt(i)||i<0)throw new TypeError("Invalid size, must contain positive integers (size: "+pr(e)+")")}),(ze(t)||zt(t))&&(t=[t]);var n=r!==void 0?r:0;return Yu(t,e,0,n),t}function Yu(t,e,r,n){var i,u,o=t.length,a=e[r],s=Math.min(o,a);if(t.length=a,r<e.length-1){var l=r+1;for(i=0;i<s;i++)u=t[i],Array.isArray(u)||(u=[u],t[i]=u),Yu(u,e,l,n);for(i=s;i<a;i++)u=[],t[i]=u,Yu(u,e,l,n)}else{for(i=0;i<s;i++)for(;Array.isArray(t[i]);)t[i]=t[i][0];for(i=s;i<a;i++)t[i]=n}}function Xa(t,e){var r=z5(t),n=r.length;if(!Array.isArray(t)||!Array.isArray(e))throw new TypeError("Array expected");if(e.length===0)throw new Le(0,n,"!=");e=Ka(e,n);var i=Ya(e);if(n!==i)throw new Le(i,n,"!=");try{return V5(r,e)}catch(u){throw u instanceof Le?new Le(i,n,"!="):u}}function Ka(t,e){var r=Ya(t),n=t.slice(),i=-1,u=t.indexOf(i),o=t.indexOf(i,u+1)>=0;if(o)throw new Error("More than one wildcard in sizes");var a=u>=0,s=e%r===0;if(a)if(s)n[u]=-e/r;else throw new Error("Could not replace wildcard, since "+e+" is no multiple of "+-r);return n}function Ya(t){return t.reduce((e,r)=>e*r,1)}function V5(t,e){for(var r=t,n,i=e.length-1;i>0;i--){var u=e[i];n=[];for(var o=r.length/u,a=0;a<o;a++)n.push(r.slice(a*u,(a+1)*u));r=n}return r}function W5(t,e,r,n){var i=n||gr(t);if(r)for(var u=0;u<r;u++)t=[t],i.unshift(1);for(t=el(t,e,0);i.length<e;)i.push(1);return t}function el(t,e,r){var n,i;if(Array.isArray(t)){var u=r+1;for(n=0,i=t.length;n<i;n++)t[n]=el(t[n],e,u)}else for(var o=r;o<e;o++)t=[t];return t}function z5(t){if(!Array.isArray(t))return t;var e=[];return t.forEach(function r(n){Array.isArray(n)?n.forEach(r):e.push(n)}),e}function eo(t,e){for(var r,n=0,i=0;i<t.length;i++){var u=t[i],o=Array.isArray(u);if(i===0&&o&&(n=u.length),o&&u.length!==n)return;var a=o?eo(u,e):e(u);if(r===void 0)r=a;else if(r!==a)return"mixed"}return r}function tl(t,e,r,n){if(n<r){if(t.length!==e.length)throw new Le(t.length,e.length);for(var i=[],u=0;u<t.length;u++)i[u]=tl(t[u],e[u],r,n+1);return i}else return t.concat(e)}function G5(){var t=Array.prototype.slice.call(arguments,0,-1),e=Array.prototype.slice.call(arguments,-1);if(t.length===1)return t[0];if(t.length>1)return t.slice(1).reduce(function(r,n){return tl(r,n,e,0)},t[0]);throw new Error("Wrong number of arguments in function concat")}function H5(){for(var t=arguments.length,e=new Array(t),r=0;r<t;r++)e[r]=arguments[r];for(var n=e.map(h=>h.length),i=Math.max(...n),u=new Array(i).fill(null),o=0;o<e.length;o++)for(var a=e[o],s=n[o],l=0;l<s;l++){var c=i-s+l;a[l]>u[c]&&(u[c]=a[l])}for(var f=0;f<e.length;f++)rl(e[f],u);return u}function rl(t,e){for(var r=e.length,n=t.length,i=0;i<n;i++){var u=r-n+i;if(t[i]<e[u]&&t[i]>1||t[i]>e[u])throw new Error("shape missmatch: missmatch is found in arg with shape (".concat(t,") not possible to broadcast dimension ").concat(n," with size ").concat(t[i]," to size ").concat(e[u]))}}function nl(t,e){var r=gr(t);if(rn(r,e))return t;rl(r,e);var n=H5(r,e),i=n.length,u=[...Array(i-r.length).fill(1),...r],o=J5(t);r.length<i&&(o=Xa(o,u),r=gr(o));for(var a=0;a<i;a++)r[a]<n[a]&&(o=Q5(o,n[a],a),r=gr(o));return o}function Q5(t,e,r){return G5(...Array(e).fill(t),r)}function J5(t){return Un([],t)}function et(t,e,r,n){function i(u){var o=O5(u,e.map(K5));return Z5(t,e,u),r(o)}return i.isFactory=!0,i.fn=t,i.dependencies=e.slice().sort(),n&&(i.meta=n),i}function Z5(t,e,r){var n=e.filter(u=>!X5(u)).every(u=>r[u]!==void 0);if(!n){var i=e.filter(u=>r[u]===void 0);throw new Error('Cannot create function "'.concat(t,'", ')+"some dependencies are missing: ".concat(i.map(u=>'"'.concat(u,'"')).join(", "),"."))}}function X5(t){return t&&t[0]==="?"}function K5(t){return t&&t[0]==="?"?t.slice(1):t}function Y5(t,e){if(ul(t)&&il(t,e))return t[e];throw typeof t[e]=="function"&&r3(t,e)?new Error('Cannot access method "'+e+'" as a property'):new Error('No access to property "'+e+'"')}function e3(t,e,r){if(ul(t)&&il(t,e))return t[e]=r,r;throw new Error('No access to property "'+e+'"')}function t3(t,e){return e in t}function il(t,e){return!t||typeof t!="object"?!1:Wn(n3,e)?!0:!(e in Object.prototype||e in Function.prototype)}function r3(t,e){return t==null||typeof t[e]!="function"||Wn(t,e)&&Object.getPrototypeOf&&e in Object.getPrototypeOf(t)?!1:Wn(i3,e)?!0:!(e in Object.prototype||e in Function.prototype)}function ul(t){return typeof t=="object"&&t&&t.constructor===Object}var n3={length:!0,name:!0},i3={toString:!0,valueOf:!0,toLocaleString:!0};class u3{constructor(e){this.wrappedObject=e}keys(){return Object.keys(this.wrappedObject)}get(e){return Y5(this.wrappedObject,e)}set(e,r){return e3(this.wrappedObject,e,r),this}has(e){return t3(this.wrappedObject,e)}}function o3(t){return t?t instanceof Map||t instanceof u3||typeof t.set=="function"&&typeof t.get=="function"&&typeof t.keys=="function"&&typeof t.has=="function":!1}var ol=function(){return ol=Ua.create,Ua},s3=["?BigNumber","?Complex","?DenseMatrix","?Fraction"],a3=et("typed",s3,function(e){var{BigNumber:r,Complex:n,DenseMatrix:i,Fraction:u}=e,o=ol();return o.clear(),o.addTypes([{name:"number",test:ze},{name:"Complex",test:Ia},{name:"BigNumber",test:zt},{name:"Fraction",test:Pa},{name:"Unit",test:Na},{name:"identifier",test:a=>Vn&&/^(?:[A-Za-z\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0560-\u0588\u05D0-\u05EA\u05EF-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u0870-\u0887\u0889-\u088E\u08A0-\u08C9\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C5D\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D04-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E86-\u0E8A\u0E8C-\u0EA3\u0EA5\u0EA7-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16F1-\u16F8\u1700-\u1711\u171F-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1878\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4C\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C88\u1C90-\u1CBA\u1CBD-\u1CBF\u1CE9-\u1CEC\u1CEE-\u1CF3\u1CF5\u1CF6\u1CFA\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2183\u2184\u2C00-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005\u3006\u3031-\u3035\u303B\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312F\u3131-\u318E\u31A0-\u31BF\u31F0-\u31FF\u3400-\u4DBF\u4E00-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6E5\uA717-\uA71F\uA722-\uA788\uA78B-\uA7CA\uA7D0\uA7D1\uA7D3\uA7D5-\uA7D9\uA7F2-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA8FE\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB69\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDE80-\uDE9C\uDEA0-\uDED0\uDF00-\uDF1F\uDF2D-\uDF40\uDF42-\uDF49\uDF50-\uDF75\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF]|\uD801[\uDC00-\uDC9D\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDD70-\uDD7A\uDD7C-\uDD8A\uDD8C-\uDD92\uDD94\uDD95\uDD97-\uDDA1\uDDA3-\uDDB1\uDDB3-\uDDB9\uDDBB\uDDBC\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67\uDF80-\uDF85\uDF87-\uDFB0\uDFB2-\uDFBA]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00\uDE10-\uDE13\uDE15-\uDE17\uDE19-\uDE35\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE4\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2\uDD00-\uDD23\uDE80-\uDEA9\uDEB0\uDEB1\uDF00-\uDF1C\uDF27\uDF30-\uDF45\uDF70-\uDF81\uDFB0-\uDFC4\uDFE0-\uDFF6]|\uD804[\uDC03-\uDC37\uDC71\uDC72\uDC75\uDC83-\uDCAF\uDCD0-\uDCE8\uDD03-\uDD26\uDD44\uDD47\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE2B\uDE3F\uDE40\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEDE\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF50\uDF5D-\uDF61]|\uD805[\uDC00-\uDC34\uDC47-\uDC4A\uDC5F-\uDC61\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDD80-\uDDAE\uDDD8-\uDDDB\uDE00-\uDE2F\uDE44\uDE80-\uDEAA\uDEB8\uDF00-\uDF1A\uDF40-\uDF46]|\uD806[\uDC00-\uDC2B\uDCA0-\uDCDF\uDCFF-\uDD06\uDD09\uDD0C-\uDD13\uDD15\uDD16\uDD18-\uDD2F\uDD3F\uDD41\uDDA0-\uDDA7\uDDAA-\uDDD0\uDDE1\uDDE3\uDE00\uDE0B-\uDE32\uDE3A\uDE50\uDE5C-\uDE89\uDE9D\uDEB0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC2E\uDC40\uDC72-\uDC8F\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD30\uDD46\uDD60-\uDD65\uDD67\uDD68\uDD6A-\uDD89\uDD98\uDEE0-\uDEF2\uDF02\uDF04-\uDF10\uDF12-\uDF33\uDFB0]|\uD808[\uDC00-\uDF99]|\uD809[\uDC80-\uDD43]|\uD80B[\uDF90-\uDFF0]|[\uD80C\uD81C-\uD820\uD822\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879\uD880-\uD883\uD885-\uD887][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2F\uDC41-\uDC46]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDE70-\uDEBE\uDED0-\uDEED\uDF00-\uDF2F\uDF40-\uDF43\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDE40-\uDE7F\uDF00-\uDF4A\uDF50\uDF93-\uDF9F\uDFE0\uDFE1\uDFE3]|\uD821[\uDC00-\uDFF7]|\uD823[\uDC00-\uDCD5\uDD00-\uDD08]|\uD82B[\uDFF0-\uDFF3\uDFF5-\uDFFB\uDFFD\uDFFE]|\uD82C[\uDC00-\uDD22\uDD32\uDD50-\uDD52\uDD55\uDD64-\uDD67\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB]|\uD837[\uDF00-\uDF1E\uDF25-\uDF2A]|\uD838[\uDC30-\uDC6D\uDD00-\uDD2C\uDD37-\uDD3D\uDD4E\uDE90-\uDEAD\uDEC0-\uDEEB]|\uD839[\uDCD0-\uDCEB\uDFE0-\uDFE6\uDFE8-\uDFEB\uDFED\uDFEE\uDFF0-\uDFFE]|\uD83A[\uDC00-\uDCC4\uDD00-\uDD43\uDD4B]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDEDF\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF39\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0]|\uD87E[\uDC00-\uDE1D]|\uD884[\uDC00-\uDF4A\uDF50-\uDFFF]|\uD888[\uDC00-\uDFAF])(?:[0-9A-Za-z\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0560-\u0588\u05D0-\u05EA\u05EF-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u0870-\u0887\u0889-\u088E\u08A0-\u08C9\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C5D\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D04-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E86-\u0E8A\u0E8C-\u0EA3\u0EA5\u0EA7-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16F1-\u16F8\u1700-\u1711\u171F-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1878\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4C\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C88\u1C90-\u1CBA\u1CBD-\u1CBF\u1CE9-\u1CEC\u1CEE-\u1CF3\u1CF5\u1CF6\u1CFA\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2183\u2184\u2C00-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005\u3006\u3031-\u3035\u303B\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312F\u3131-\u318E\u31A0-\u31BF\u31F0-\u31FF\u3400-\u4DBF\u4E00-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6E5\uA717-\uA71F\uA722-\uA788\uA78B-\uA7CA\uA7D0\uA7D1\uA7D3\uA7D5-\uA7D9\uA7F2-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA8FE\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB69\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDE80-\uDE9C\uDEA0-\uDED0\uDF00-\uDF1F\uDF2D-\uDF40\uDF42-\uDF49\uDF50-\uDF75\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF]|\uD801[\uDC00-\uDC9D\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDD70-\uDD7A\uDD7C-\uDD8A\uDD8C-\uDD92\uDD94\uDD95\uDD97-\uDDA1\uDDA3-\uDDB1\uDDB3-\uDDB9\uDDBB\uDDBC\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67\uDF80-\uDF85\uDF87-\uDFB0\uDFB2-\uDFBA]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00\uDE10-\uDE13\uDE15-\uDE17\uDE19-\uDE35\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE4\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2\uDD00-\uDD23\uDE80-\uDEA9\uDEB0\uDEB1\uDF00-\uDF1C\uDF27\uDF30-\uDF45\uDF70-\uDF81\uDFB0-\uDFC4\uDFE0-\uDFF6]|\uD804[\uDC03-\uDC37\uDC71\uDC72\uDC75\uDC83-\uDCAF\uDCD0-\uDCE8\uDD03-\uDD26\uDD44\uDD47\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE2B\uDE3F\uDE40\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEDE\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF50\uDF5D-\uDF61]|\uD805[\uDC00-\uDC34\uDC47-\uDC4A\uDC5F-\uDC61\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDD80-\uDDAE\uDDD8-\uDDDB\uDE00-\uDE2F\uDE44\uDE80-\uDEAA\uDEB8\uDF00-\uDF1A\uDF40-\uDF46]|\uD806[\uDC00-\uDC2B\uDCA0-\uDCDF\uDCFF-\uDD06\uDD09\uDD0C-\uDD13\uDD15\uDD16\uDD18-\uDD2F\uDD3F\uDD41\uDDA0-\uDDA7\uDDAA-\uDDD0\uDDE1\uDDE3\uDE00\uDE0B-\uDE32\uDE3A\uDE50\uDE5C-\uDE89\uDE9D\uDEB0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC2E\uDC40\uDC72-\uDC8F\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD30\uDD46\uDD60-\uDD65\uDD67\uDD68\uDD6A-\uDD89\uDD98\uDEE0-\uDEF2\uDF02\uDF04-\uDF10\uDF12-\uDF33\uDFB0]|\uD808[\uDC00-\uDF99]|\uD809[\uDC80-\uDD43]|\uD80B[\uDF90-\uDFF0]|[\uD80C\uD81C-\uD820\uD822\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879\uD880-\uD883\uD885-\uD887][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2F\uDC41-\uDC46]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDE70-\uDEBE\uDED0-\uDEED\uDF00-\uDF2F\uDF40-\uDF43\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDE40-\uDE7F\uDF00-\uDF4A\uDF50\uDF93-\uDF9F\uDFE0\uDFE1\uDFE3]|\uD821[\uDC00-\uDFF7]|\uD823[\uDC00-\uDCD5\uDD00-\uDD08]|\uD82B[\uDFF0-\uDFF3\uDFF5-\uDFFB\uDFFD\uDFFE]|\uD82C[\uDC00-\uDD22\uDD32\uDD50-\uDD52\uDD55\uDD64-\uDD67\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB]|\uD837[\uDF00-\uDF1E\uDF25-\uDF2A]|\uD838[\uDC30-\uDC6D\uDD00-\uDD2C\uDD37-\uDD3D\uDD4E\uDE90-\uDEAD\uDEC0-\uDEEB]|\uD839[\uDCD0-\uDCEB\uDFE0-\uDFE6\uDFE8-\uDFEB\uDFED\uDFEE\uDFF0-\uDFFE]|\uD83A[\uDC00-\uDCC4\uDD00-\uDD43\uDD4B]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDEDF\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF39\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0]|\uD87E[\uDC00-\uDE1D]|\uD884[\uDC00-\uDF4A\uDF50-\uDFFF]|\uD888[\uDC00-\uDFAF])*$/.test(a)},{name:"string",test:Vn},{name:"Chain",test:B5},{name:"Array",test:lt},{name:"Matrix",test:Sr},{name:"DenseMatrix",test:e5},{name:"SparseMatrix",test:t5},{name:"Range",test:r5},{name:"Index",test:$a},{name:"boolean",test:n5},{name:"ResultSet",test:i5},{name:"Help",test:u5},{name:"function",test:o5},{name:"Date",test:s5},{name:"RegExp",test:a5},{name:"null",test:l5},{name:"undefined",test:c5},{name:"AccessorNode",test:f5},{name:"ArrayNode",test:h5},{name:"AssignmentNode",test:d5},{name:"BlockNode",test:p5},{name:"ConditionalNode",test:g5},{name:"ConstantNode",test:v5},{name:"FunctionNode",test:y5},{name:"FunctionAssignmentNode",test:m5},{name:"IndexNode",test:D5},{name:"Node",test:E5},{name:"ObjectNode",test:w5},{name:"OperatorNode",test:C5},{name:"ParenthesisNode",test:A5},{name:"RangeNode",test:b5},{name:"RelationalNode",test:F5},{name:"SymbolNode",test:_5},{name:"Map",test:o3},{name:"Object",test:Ra}]),o.addConversions([{from:"number",to:"BigNumber",convert:function(s){if(r||to(s),N5(s)>15)throw new TypeError("Cannot implicitly convert a number with >15 significant digits to BigNumber (value: "+s+"). Use function bignumber(x) to convert to BigNumber.");return new r(s)}},{from:"number",to:"Complex",convert:function(s){return n||Hn(s),new n(s,0)}},{from:"BigNumber",to:"Complex",convert:function(s){return n||Hn(s),new n(s.toNumber(),0)}},{from:"Fraction",to:"BigNumber",convert:function(s){throw new TypeError("Cannot implicitly convert a Fraction to BigNumber or vice versa. Use function bignumber(x) to convert to BigNumber or fraction(x) to convert to Fraction.")}},{from:"Fraction",to:"Complex",convert:function(s){return n||Hn(s),new n(s.valueOf(),0)}},{from:"number",to:"Fraction",convert:function(s){u||ro(s);var l=new u(s);if(l.valueOf()!==s)throw new TypeError("Cannot implicitly convert a number to a Fraction when there will be a loss of precision (value: "+s+"). Use function fraction(x) to convert to Fraction.");return l}},{from:"string",to:"number",convert:function(s){var l=Number(s);if(isNaN(l))throw new Error('Cannot convert "'+s+'" to a number');return l}},{from:"string",to:"BigNumber",convert:function(s){r||to(s);try{return new r(s)}catch(l){throw new Error('Cannot convert "'+s+'" to BigNumber')}}},{from:"string",to:"Fraction",convert:function(s){u||ro(s);try{return new u(s)}catch(l){throw new Error('Cannot convert "'+s+'" to Fraction')}}},{from:"string",to:"Complex",convert:function(s){n||Hn(s);try{return new n(s)}catch(l){throw new Error('Cannot convert "'+s+'" to Complex')}}},{from:"boolean",to:"number",convert:function(s){return+s}},{from:"boolean",to:"BigNumber",convert:function(s){return r||to(s),new r(+s)}},{from:"boolean",to:"Fraction",convert:function(s){return u||ro(s),new u(+s)}},{from:"boolean",to:"string",convert:function(s){return String(s)}},{from:"Array",to:"Matrix",convert:function(s){return i||l3(),new i(s)}},{from:"Matrix",to:"Array",convert:function(s){return s.valueOf()}}]),o.onMismatch=(a,s,l)=>{var c=o.createError(a,s,l);if(["wrongType","mismatch"].includes(c.data.category)&&s.length===1&&Qu(s[0])&&l.some(h=>!h.params.includes(","))){var f=new TypeError("Function '".concat(a,"' doesn't apply to matrices. To call it ")+"elementwise on a matrix 'M', try 'map(M, ".concat(a,")'."));throw f.data=c.data,f}throw c},o.onMismatch=(a,s,l)=>{var c=o.createError(a,s,l);if(["wrongType","mismatch"].includes(c.data.category)&&s.length===1&&Qu(s[0])&&l.some(h=>!h.params.includes(","))){var f=new TypeError("Function '".concat(a,"' doesn't apply to matrices. To call it ")+"elementwise on a matrix 'M', try 'map(M, ".concat(a,")'."));throw f.data=c.data,f}throw c},o});function to(t){throw new Error("Cannot convert value ".concat(t," into a BigNumber: no class 'BigNumber' provided"))}function Hn(t){throw new Error("Cannot convert value ".concat(t," into a Complex number: no class 'Complex' provided"))}function l3(){throw new Error("Cannot convert array into a Matrix: no class 'DenseMatrix' provided")}function ro(t){throw new Error("Cannot convert value ".concat(t," into a Fraction, no class 'Fraction' provided."))}/*!
10
- * decimal.js v10.5.0
10
+ * decimal.js v10.6.0
11
11
  * An arbitrary-precision Decimal type for JavaScript.
12
12
  * https://github.com/MikeMcl/decimal.js
13
13
  * Copyright (c) 2025 Michael Mclaughlin <M8ch88l@gmail.com>
@@ -1,14 +1,14 @@
1
- export declare class ActionManager {
2
- private actionMap;
3
- private buildinActions;
4
- /**
5
- * 执行action的时候,作为第二个参数传递给方法,可以通过外部挂载
6
- */
7
- actionUtils: {};
8
- /**
9
- * 用于存储es module解析出来的源码,CustomVueControlPlugin
10
- */
11
- sources: {};
12
- execAction(name: string, context: any, ...args: any[]): Promise<any>;
13
- addAction(name: string, func: Function): void;
14
- }
1
+ export declare class ActionManager {
2
+ private actionMap;
3
+ private buildinActions;
4
+ /**
5
+ * 执行action的时候,作为第二个参数传递给方法,可以通过外部挂载
6
+ */
7
+ actionUtils: {};
8
+ /**
9
+ * 用于存储es module解析出来的源码,CustomVueControlPlugin
10
+ */
11
+ sources: {};
12
+ execAction(name: string, context: any, ...args: any[]): Promise<any>;
13
+ addAction(name: string, func: Function): void;
14
+ }
@@ -1,10 +1,10 @@
1
- import { EventPayload } from './Engine';
2
- export declare class DataManager {
3
- private _dataStore;
4
- private executer?;
5
- constructor(callbackExecuter: (payload: EventPayload) => Promise<any>);
6
- add(key: string, data: any): void;
7
- get(key: string): any;
8
- remove(key: string): void;
9
- getRemoteData(payload: EventPayload): Promise<any>;
10
- }
1
+ import { EventPayload } from './Engine';
2
+ export declare class DataManager {
3
+ private _dataStore;
4
+ private executer?;
5
+ constructor(callbackExecuter: (payload: EventPayload) => Promise<any>);
6
+ add(key: string, data: any): void;
7
+ get(key: string): any;
8
+ remove(key: string): void;
9
+ getRemoteData(payload: EventPayload): Promise<any>;
10
+ }
@@ -1,201 +1,201 @@
1
- import { ControlExport, ControlRuntimeInstance, ControlsInstance, ControlsKeys, DataBind, DeepPartial, LayoutControls, ObjectDataBind, RuntimeControl, RuntimeListControl, Schema } from '@byteluck-fe/model-driven-core';
2
- import { Callback, Watcher } from '@byteluck-fe/model-driven-shared';
3
- import { Plugin } from './Plugin';
4
- import { Runtime, RuntimeProps } from './Runtime';
5
- import { DataBindMappingFieldItem, dataBindMappingType, DataBindMappingTypeItem, StatesType, StateType } from './Store';
6
- import { ActionManager } from './ActionManager';
7
- import { DataManager } from './DataManager';
8
- export type getDataControlIdMappingType = {
9
- [controlId: string]: {
10
- dataBind: any;
11
- dataView: string;
12
- children: getDataControlIdMappingType;
13
- };
14
- };
15
- type dataSetType = {
16
- [dataCode: string]: Record<string, unknown> | Record<string, unknown>[];
17
- };
18
- type FieldSetType = {
19
- [fieldCode: string]: unknown;
20
- };
21
- interface EventPayload {
22
- instance?: RuntimeControl;
23
- value?: unknown;
24
- rowIndex?: number;
25
- options?: {
26
- [key: string]: any;
27
- };
28
- }
29
- interface SchemaEventPayload {
30
- instance: RuntimeControl;
31
- value: unknown;
32
- props: string;
33
- rowIndex?: number;
34
- }
35
- type EngineProps<T extends keyof LayoutControls = keyof LayoutControls> = {
36
- schema: RuntimeProps['schema'];
37
- beforeCreateInstance?: RuntimeProps['beforeCreateInstance'];
38
- plugins?: Plugin[];
39
- language?: string;
40
- autoMount?: boolean;
41
- debug?: boolean;
42
- externalParams?: Record<string, unknown>;
43
- messagesI18n: any;
44
- children: {
45
- [key: string]: Engine;
46
- };
47
- };
48
- type EventKeys = 'click' | 'click-finish' | 'wps-open' | 'wps-save' | 'wps-rename' | 'change' | 'schema-change' | 'search' | 'checked' | 'input' | 'focus' | 'blur' | 'list-change' | 'list-splice' | 'list-delete' | 'list-before-insert' | 'list-search' | 'list-mounted' | 'list-actions' | 'engine-mounted' | 'engine-submit' | 'engine-submit-params' | 'engine-submitted' | 'engine-initialized' | 'engine-after-initialized' | 'file-actions' | string;
49
- declare class Engine extends Watcher<EventKeys> {
50
- private store;
51
- rawStore: Record<string, any>;
52
- parent?: Engine;
53
- runtime: Runtime;
54
- isMounted: boolean;
55
- id: string;
56
- readonly externalParams?: Record<string, any>;
57
- children: {
58
- [key: string]: Engine;
59
- };
60
- private __plugins;
61
- private __pluginsApplied;
62
- private readonly $options;
63
- private actionManager;
64
- private dataManager?;
65
- private _jobTasks;
66
- constructor(props: EngineProps);
67
- private debugLog;
68
- use(plugin: Plugin): this;
69
- registerControl(...arg: Parameters<Runtime['register']>): this;
70
- static register(control: ControlExport): typeof import("@byteluck-fe/model-driven-core").RegisterControls;
71
- static judgeControlIsRegistered(control: Parameters<(typeof Runtime)['register']>[0]): boolean;
72
- mount(): void;
73
- destroy(): void;
74
- private _handlerProxyState;
75
- private _proxyStateBeforeSetCallback;
76
- private _proxyStateCallback;
77
- private _handlerArrayUpdate;
78
- private _handlerSubtableUpdateUid;
79
- private _handlerObjectUpdate;
80
- private applyPlugins;
81
- listControlCreateRow<RowType extends ControlsKeys>(instance: RuntimeListControl, rowType: RowType): RuntimeControl | NonNullable<InstanceType<import("@byteluck-fe/model-driven-core").ControlsConstructor<RowType, "Runtime">>> | undefined;
82
- listControlAddRow(instance: RuntimeListControl, rowType?: ControlsKeys): void;
83
- emit(eventKey: EventKeys, payload: EventPayload): Promise<unknown[]>;
84
- on(key: EventKeys, callback: Callback): void;
85
- createControl(...args: Parameters<Runtime['createControl']>): never[];
86
- createInstance<T extends ControlsKeys>(type: T, initSchema?: DeepPartial<Schema<T>>): ControlsInstance<T, 'Runtime'> | undefined;
87
- createControlInstance: <T extends never>(type: T, initSchema?: DeepPartial<Schema<T, InstanceType<import("@byteluck-fe/model-driven-core").Controls[T]["Property"]>>> | undefined) => InstanceType<import("@byteluck-fe/model-driven-core").ControlsConstructor<T, "Runtime">> | undefined;
88
- schemaEvent(eventKey: 'schema-change', payload: SchemaEventPayload): void;
89
- updateInstanceProps(instance: SchemaEventPayload['instance'] | string, props: string, value: unknown, rowIndex?: number): void;
90
- getRule(controlType: string, props: any): any[];
91
- getAllRules(controlId?: string): {
92
- rules: Record<string, import("async-validator").RuleItem>;
93
- antdRules: Record<string, import("async-validator").RuleItem>;
94
- fieldCodeRules: Record<string, import("async-validator").RuleItem>;
95
- defaultAntdRules: Record<string, import("async-validator").RuleItem>;
96
- defaultRule: Record<string, import("async-validator").RuleItem>;
97
- defaultFieldRules: Record<string, import("async-validator").RuleItem>;
98
- } | {
99
- rules: import("async-validator").Rules | undefined;
100
- antdRules: import("async-validator").Rules | undefined;
101
- };
102
- getRules(controlId?: string, isGetFieldCodeRules?: boolean): import("async-validator").RuleItem | import("async-validator").RuleItem[] | import("async-validator").Rules | undefined;
103
- getAntdRules(controlId?: string): import("async-validator").Rules | undefined;
104
- getState(controlId?: string, rowIndex?: number): any;
105
- getEmptyState(controlId?: string): any;
106
- /**
107
- * 设置payload的options,提供在不是使用标准api修改state的时候可以传递options,会在本次任务执行完成之后清空
108
- * @param options 需要携带的options
109
- * */
110
- setPayloadOptions(options: object | null): void;
111
- setState(controlId: string, value: unknown, rowIndex?: number, options?: any): void;
112
- /**
113
- * 向Store设置一组值,明细表必须全量赋值,并触发事件(触发事件是根据组件在页面中的顺序逐个触发)
114
- * @param states
115
- */
116
- setStates(states: StatesType | StateType, rowIndex?: number, options?: any): void;
117
- /**
118
- * 通过dataCode和fieldCode来获取控件的值
119
- * @param dataCode 模型编码 - 如果是主表的话就是主表的模型编码,明细子表的话就是子表的模型编码
120
- * @param fieldCode 字段编码 - 控件绑定的数据项的编码
121
- * @param rowIndex 行下标 - 如果是明细子表中的控件需要提供
122
- * */
123
- getField(dataCode: string, fieldCode?: string, rowIndex?: number): unknown;
124
- getData(dataCode: string): any;
125
- /**
126
- * 通过dataCode和fieldCode来设置控件的值
127
- * @param dataCode 模型编码 - 如果是主表的话就是主表的模型编码,明细子表的话就是子表的模型编码
128
- * @param fieldCode 字段编码 - 控件绑定的数据项的编码
129
- * @param value 修改的值
130
- * @param rowIndex 行下标 - 如果是明细子表中的控件需要提供
131
- * @param options 触发事件携带的参数
132
- * */
133
- setField(dataCode: string, fieldCode: string, value: unknown, rowIndex?: number, options?: EventPayload['options']): void;
134
- /**
135
- * 通过dataCode和 state来给一组控件赋值,并触发事件携带options
136
- * @param dataCode 需要赋值的目标模型
137
- * @param state 赋值对象,以fieldCode为key组成的对象
138
- * @param rowIndex 行下标,给明细子表赋值时指定赋值某行
139
- * @param options 触发事件携带的参数
140
- * */
141
- setFields(dataCode: string, state: FieldSetType, rowIndex?: number, options?: EventPayload['options']): void;
142
- /**
143
- * 通过dataCode来将state转化为标准的state结构
144
- * @param dataCode 需要转换的目标模型code
145
- * @param state 值对象,以fieldCode为key组成的对象
146
- * */
147
- buildFields(dataCode: string, state: FieldSetType): StateType | undefined;
148
- /**
149
- * 向Store设置一组值,并触发事件携带options
150
- * @param dataSet
151
- * @options 传递给关联事件中 EventPayload中的options,一般在plugin中监听使用
152
- */
153
- setData(dataSet: dataSetType, options?: any): void;
154
- /**
155
- * 获取控件的dataBind
156
- * @param controlId
157
- * */
158
- getDataBind(controlId: string): DataBind | ObjectDataBind | undefined;
159
- /**
160
- * 获取组件实例,传入rowIndex代表获取明细表内的控件实例,rowIndex传入-1代表获取表头内的实例
161
- * @param controlId
162
- * @param rowIndex
163
- */
164
- getInstance(controlId?: string, rowIndex?: number): ControlRuntimeInstance<ControlsKeys> | undefined;
165
- /**
166
- * 获取组件实例,明细表中的组件将会得到数组, 第二个参数为(false/不传入)则获取到的是明细表内不包含表头内实例的所有控件实例,传入true则获取到包含表头内实例的所有控件实例,表头内实例永远在下标0的位置
167
- * @param controlId
168
- * @param header 明细表内是否获取表头的控件
169
- */
170
- getInstances(controlId?: string, header?: boolean): ControlRuntimeInstance<ControlsKeys>[];
171
- setInstance(instance: SchemaEventPayload['instance'] | string, props: string, value: unknown, rowIndex?: number): void;
172
- getControlIdMapping(): import("./Store").controlIdMappingType;
173
- getDataBindMapping(): dataBindMappingType;
174
- getDataBindMapping(dataCode: string): DataBindMappingTypeItem | undefined;
175
- getDataBindMapping(dataCode: string, fieldCode: string): DataBindMappingFieldItem | undefined;
176
- getAction(): ActionManager;
177
- initDataManager(callbackExecuter: (payload: EventPayload) => Promise<any>): void;
178
- getDataManager(): DataManager | undefined;
179
- /**
180
- * 判断控件的类型,返回当前控件的正确类型
181
- * */
182
- assertInstance<T extends ControlsKeys>(instance: ControlRuntimeInstance<ControlsKeys> | RuntimeControl, types: T | T[]): instance is ControlRuntimeInstance<T>;
183
- /**
184
- * 判断控件或控件类型是一个自定义控件
185
- * */
186
- assertInstanceIsCustomControl(instance: ControlRuntimeInstance<ControlsKeys> | RuntimeControl): boolean;
187
- /**
188
- * 获取控件在明细子表中的行下标,
189
- * 如果控件在表头内,则返回-1
190
- * 如果控件在表内,则返回行下标
191
- * 如果控件不在明细表内,则返回undefined
192
- * */
193
- getInstanceRowIndex<T extends ControlRuntimeInstance<ControlsKeys>>(instance: T | RuntimeControl): number | undefined;
194
- getInstanceParentControl<T extends ControlsKeys>(instance: ControlRuntimeInstance<ControlsKeys> | RuntimeControl, controlType: T): ControlRuntimeInstance<T> | undefined;
195
- getInstanceInSubtableHeader<T extends ControlsKeys, K extends ControlRuntimeInstance<T>, U extends ControlRuntimeInstance<ControlsKeys>>(instance: K | RuntimeControl): K | undefined;
196
- setControlConfig(...args: Parameters<Runtime['registerControlConfig']>): Runtime;
197
- getControlConfig(control: ControlsKeys): Readonly<Record<string, unknown>> | undefined;
198
- inList(controlId: string): string | undefined;
199
- findSubtableHeadersControl(controlId: string): undefined;
200
- }
201
- export { Engine, EventPayload, SchemaEventPayload, EngineProps };
1
+ import { ControlExport, ControlRuntimeInstance, ControlsInstance, ControlsKeys, DataBind, DeepPartial, LayoutControls, ObjectDataBind, RuntimeControl, RuntimeListControl, Schema } from '@byteluck-fe/model-driven-core';
2
+ import { Callback, Watcher } from '@byteluck-fe/model-driven-shared';
3
+ import { Plugin } from './Plugin';
4
+ import { Runtime, RuntimeProps } from './Runtime';
5
+ import { DataBindMappingFieldItem, dataBindMappingType, DataBindMappingTypeItem, StatesType, StateType } from './Store';
6
+ import { ActionManager } from './ActionManager';
7
+ import { DataManager } from './DataManager';
8
+ export type getDataControlIdMappingType = {
9
+ [controlId: string]: {
10
+ dataBind: any;
11
+ dataView: string;
12
+ children: getDataControlIdMappingType;
13
+ };
14
+ };
15
+ type dataSetType = {
16
+ [dataCode: string]: Record<string, unknown> | Record<string, unknown>[];
17
+ };
18
+ type FieldSetType = {
19
+ [fieldCode: string]: unknown;
20
+ };
21
+ interface EventPayload {
22
+ instance?: RuntimeControl;
23
+ value?: unknown;
24
+ rowIndex?: number;
25
+ options?: {
26
+ [key: string]: any;
27
+ };
28
+ }
29
+ interface SchemaEventPayload {
30
+ instance: RuntimeControl;
31
+ value: unknown;
32
+ props: string;
33
+ rowIndex?: number;
34
+ }
35
+ type EngineProps<T extends keyof LayoutControls = keyof LayoutControls> = {
36
+ schema: RuntimeProps['schema'];
37
+ beforeCreateInstance?: RuntimeProps['beforeCreateInstance'];
38
+ plugins?: Plugin[];
39
+ language?: string;
40
+ autoMount?: boolean;
41
+ debug?: boolean;
42
+ externalParams?: Record<string, unknown>;
43
+ messagesI18n: any;
44
+ children: {
45
+ [key: string]: Engine;
46
+ };
47
+ };
48
+ type EventKeys = 'click' | 'click-finish' | 'wps-open' | 'wps-save' | 'wps-rename' | 'change' | 'schema-change' | 'search' | 'checked' | 'input' | 'focus' | 'blur' | 'list-change' | 'list-splice' | 'list-delete' | 'list-before-insert' | 'list-search' | 'list-mounted' | 'list-actions' | 'engine-mounted' | 'engine-submit' | 'engine-submit-params' | 'engine-submitted' | 'engine-initialized' | 'engine-after-initialized' | 'file-actions' | string;
49
+ declare class Engine extends Watcher<EventKeys> {
50
+ private store;
51
+ rawStore: Record<string, any>;
52
+ parent?: Engine;
53
+ runtime: Runtime;
54
+ isMounted: boolean;
55
+ id: string;
56
+ readonly externalParams?: Record<string, any>;
57
+ children: {
58
+ [key: string]: Engine;
59
+ };
60
+ private __plugins;
61
+ private __pluginsApplied;
62
+ private readonly $options;
63
+ private actionManager;
64
+ private dataManager?;
65
+ private _jobTasks;
66
+ constructor(props: EngineProps);
67
+ private debugLog;
68
+ use(plugin: Plugin): this;
69
+ registerControl(...arg: Parameters<Runtime['register']>): this;
70
+ static register(control: ControlExport): typeof import("@byteluck-fe/model-driven-core").RegisterControls;
71
+ static judgeControlIsRegistered(control: Parameters<(typeof Runtime)['register']>[0]): boolean;
72
+ mount(): void;
73
+ destroy(): void;
74
+ private _handlerProxyState;
75
+ private _proxyStateBeforeSetCallback;
76
+ private _proxyStateCallback;
77
+ private _handlerArrayUpdate;
78
+ private _handlerSubtableUpdateUid;
79
+ private _handlerObjectUpdate;
80
+ private applyPlugins;
81
+ listControlCreateRow<RowType extends ControlsKeys>(instance: RuntimeListControl, rowType: RowType): RuntimeControl | NonNullable<InstanceType<import("@byteluck-fe/model-driven-core").ControlsConstructor<RowType, "Runtime">>> | undefined;
82
+ listControlAddRow(instance: RuntimeListControl, rowType?: ControlsKeys): void;
83
+ emit(eventKey: EventKeys, payload: EventPayload): Promise<unknown[]>;
84
+ on(key: EventKeys, callback: Callback): void;
85
+ createControl(...args: Parameters<Runtime['createControl']>): never[];
86
+ createInstance<T extends ControlsKeys>(type: T, initSchema?: DeepPartial<Schema<T>>): ControlsInstance<T, 'Runtime'> | undefined;
87
+ createControlInstance: <T extends never>(type: T, initSchema?: DeepPartial<Schema<T, InstanceType<import("@byteluck-fe/model-driven-core").Controls[T]["Property"]>>> | undefined) => InstanceType<import("@byteluck-fe/model-driven-core").ControlsConstructor<T, "Runtime">> | undefined;
88
+ schemaEvent(eventKey: 'schema-change', payload: SchemaEventPayload): void;
89
+ updateInstanceProps(instance: SchemaEventPayload['instance'] | string, props: string, value: unknown, rowIndex?: number): void;
90
+ getRule(controlType: string, props: any): any[];
91
+ getAllRules(controlId?: string): {
92
+ rules: Record<string, import("async-validator").RuleItem>;
93
+ antdRules: Record<string, import("async-validator").RuleItem>;
94
+ fieldCodeRules: Record<string, import("async-validator").RuleItem>;
95
+ defaultAntdRules: Record<string, import("async-validator").RuleItem>;
96
+ defaultRule: Record<string, import("async-validator").RuleItem>;
97
+ defaultFieldRules: Record<string, import("async-validator").RuleItem>;
98
+ } | {
99
+ rules: import("async-validator").Rules | undefined;
100
+ antdRules: import("async-validator").Rules | undefined;
101
+ };
102
+ getRules(controlId?: string, isGetFieldCodeRules?: boolean): import("async-validator").RuleItem | import("async-validator").RuleItem[] | import("async-validator").Rules | undefined;
103
+ getAntdRules(controlId?: string): import("async-validator").Rules | undefined;
104
+ getState(controlId?: string, rowIndex?: number): any;
105
+ getEmptyState(controlId?: string): any;
106
+ /**
107
+ * 设置payload的options,提供在不是使用标准api修改state的时候可以传递options,会在本次任务执行完成之后清空
108
+ * @param options 需要携带的options
109
+ * */
110
+ setPayloadOptions(options: object | null): void;
111
+ setState(controlId: string, value: unknown, rowIndex?: number, options?: any): void;
112
+ /**
113
+ * 向Store设置一组值,明细表必须全量赋值,并触发事件(触发事件是根据组件在页面中的顺序逐个触发)
114
+ * @param states
115
+ */
116
+ setStates(states: StatesType | StateType, rowIndex?: number, options?: any): void;
117
+ /**
118
+ * 通过dataCode和fieldCode来获取控件的值
119
+ * @param dataCode 模型编码 - 如果是主表的话就是主表的模型编码,明细子表的话就是子表的模型编码
120
+ * @param fieldCode 字段编码 - 控件绑定的数据项的编码
121
+ * @param rowIndex 行下标 - 如果是明细子表中的控件需要提供
122
+ * */
123
+ getField(dataCode: string, fieldCode?: string, rowIndex?: number): unknown;
124
+ getData(dataCode: string): any;
125
+ /**
126
+ * 通过dataCode和fieldCode来设置控件的值
127
+ * @param dataCode 模型编码 - 如果是主表的话就是主表的模型编码,明细子表的话就是子表的模型编码
128
+ * @param fieldCode 字段编码 - 控件绑定的数据项的编码
129
+ * @param value 修改的值
130
+ * @param rowIndex 行下标 - 如果是明细子表中的控件需要提供
131
+ * @param options 触发事件携带的参数
132
+ * */
133
+ setField(dataCode: string, fieldCode: string, value: unknown, rowIndex?: number, options?: EventPayload['options']): void;
134
+ /**
135
+ * 通过dataCode和 state来给一组控件赋值,并触发事件携带options
136
+ * @param dataCode 需要赋值的目标模型
137
+ * @param state 赋值对象,以fieldCode为key组成的对象
138
+ * @param rowIndex 行下标,给明细子表赋值时指定赋值某行
139
+ * @param options 触发事件携带的参数
140
+ * */
141
+ setFields(dataCode: string, state: FieldSetType, rowIndex?: number, options?: EventPayload['options']): void;
142
+ /**
143
+ * 通过dataCode来将state转化为标准的state结构
144
+ * @param dataCode 需要转换的目标模型code
145
+ * @param state 值对象,以fieldCode为key组成的对象
146
+ * */
147
+ buildFields(dataCode: string, state: FieldSetType): StateType | undefined;
148
+ /**
149
+ * 向Store设置一组值,并触发事件携带options
150
+ * @param dataSet
151
+ * @options 传递给关联事件中 EventPayload中的options,一般在plugin中监听使用
152
+ */
153
+ setData(dataSet: dataSetType, options?: any): void;
154
+ /**
155
+ * 获取控件的dataBind
156
+ * @param controlId
157
+ * */
158
+ getDataBind(controlId: string): DataBind | ObjectDataBind | undefined;
159
+ /**
160
+ * 获取组件实例,传入rowIndex代表获取明细表内的控件实例,rowIndex传入-1代表获取表头内的实例
161
+ * @param controlId
162
+ * @param rowIndex
163
+ */
164
+ getInstance(controlId?: string, rowIndex?: number): ControlRuntimeInstance<ControlsKeys> | undefined;
165
+ /**
166
+ * 获取组件实例,明细表中的组件将会得到数组, 第二个参数为(false/不传入)则获取到的是明细表内不包含表头内实例的所有控件实例,传入true则获取到包含表头内实例的所有控件实例,表头内实例永远在下标0的位置
167
+ * @param controlId
168
+ * @param header 明细表内是否获取表头的控件
169
+ */
170
+ getInstances(controlId?: string, header?: boolean): ControlRuntimeInstance<ControlsKeys>[];
171
+ setInstance(instance: SchemaEventPayload['instance'] | string, props: string, value: unknown, rowIndex?: number): void;
172
+ getControlIdMapping(): import("./Store").controlIdMappingType;
173
+ getDataBindMapping(): dataBindMappingType;
174
+ getDataBindMapping(dataCode: string): DataBindMappingTypeItem | undefined;
175
+ getDataBindMapping(dataCode: string, fieldCode: string): DataBindMappingFieldItem | undefined;
176
+ getAction(): ActionManager;
177
+ initDataManager(callbackExecuter: (payload: EventPayload) => Promise<any>): void;
178
+ getDataManager(): DataManager | undefined;
179
+ /**
180
+ * 判断控件的类型,返回当前控件的正确类型
181
+ * */
182
+ assertInstance<T extends ControlsKeys>(instance: ControlRuntimeInstance<ControlsKeys> | RuntimeControl, types: T | T[]): instance is ControlRuntimeInstance<T>;
183
+ /**
184
+ * 判断控件或控件类型是一个自定义控件
185
+ * */
186
+ assertInstanceIsCustomControl(instance: ControlRuntimeInstance<ControlsKeys> | RuntimeControl): boolean;
187
+ /**
188
+ * 获取控件在明细子表中的行下标,
189
+ * 如果控件在表头内,则返回-1
190
+ * 如果控件在表内,则返回行下标
191
+ * 如果控件不在明细表内,则返回undefined
192
+ * */
193
+ getInstanceRowIndex<T extends ControlRuntimeInstance<ControlsKeys>>(instance: T | RuntimeControl): number | undefined;
194
+ getInstanceParentControl<T extends ControlsKeys>(instance: ControlRuntimeInstance<ControlsKeys> | RuntimeControl, controlType: T): ControlRuntimeInstance<T> | undefined;
195
+ getInstanceInSubtableHeader<T extends ControlsKeys, K extends ControlRuntimeInstance<T>, U extends ControlRuntimeInstance<ControlsKeys>>(instance: K | RuntimeControl): K | undefined;
196
+ setControlConfig(...args: Parameters<Runtime['registerControlConfig']>): Runtime;
197
+ getControlConfig(control: ControlsKeys): Readonly<Record<string, unknown>> | undefined;
198
+ inList(controlId: string): string | undefined;
199
+ findSubtableHeadersControl(controlId: string): undefined;
200
+ }
201
+ export { Engine, EventPayload, SchemaEventPayload, EngineProps };
@@ -1,13 +1,13 @@
1
- interface WorkerMessage {
2
- action: string;
3
- payload: unknown;
4
- }
5
- declare class OkWorker {
6
- worker?: Worker;
7
- run(initState: any): void;
8
- destroy(): void;
9
- postMessage(message: WorkerMessage): void;
10
- private static createWorker;
11
- private static createWorkerFunction;
12
- }
13
- export { OkWorker };
1
+ interface WorkerMessage {
2
+ action: string;
3
+ payload: unknown;
4
+ }
5
+ declare class OkWorker {
6
+ worker?: Worker;
7
+ run(initState: any): void;
8
+ destroy(): void;
9
+ postMessage(message: WorkerMessage): void;
10
+ private static createWorker;
11
+ private static createWorkerFunction;
12
+ }
13
+ export { OkWorker };