yagisan-reports
Version:
yagisan-reports SDK
10 lines (9 loc) • 16.9 kB
JavaScript
/**
* yagisan-reports
* Copyright © DenkiYagi Inc.
* Licensed under the commercial license.
**/
(()=>{var pe=(m,l)=>()=>(l||m((l={exports:{}}).exports,l),l.exports);var X=pe(K=>{(function(m){"use strict";var l=function(){return f.__string_rec(this,"")},y=y||{},a;class z{static substr(e,r,t){if(t==null)t=e.length;else if(t<0)if(r==0)t=e.length+t;else return"";return e.substr(r,t)}static now(){return Date.now()}}z.__name__=!0;class B{static array(e){let r=[],t=x(e);for(;t.hasNext();)r.push(t.next());return r}}B.__name__=!0,Math.__name__=!0;class ${static deleteField(e,r){return Object.prototype.hasOwnProperty.call(e,r)?(delete e[r],!0):!1}}$.__name__=!0;class Y{static replace(e,r,t){return e.split(r).join(t)}}Y.__name__=!0;var u=y.ValueType={__ename__:!0,__constructs__:null,TNull:{_hx_name:"TNull",_hx_index:0,__enum__:"ValueType",toString:l},TInt:{_hx_name:"TInt",_hx_index:1,__enum__:"ValueType",toString:l},TFloat:{_hx_name:"TFloat",_hx_index:2,__enum__:"ValueType",toString:l},TBool:{_hx_name:"TBool",_hx_index:3,__enum__:"ValueType",toString:l},TObject:{_hx_name:"TObject",_hx_index:4,__enum__:"ValueType",toString:l},TFunction:{_hx_name:"TFunction",_hx_index:5,__enum__:"ValueType",toString:l},TClass:(a=function(n){return{_hx_index:6,c:n,__enum__:"ValueType",toString:l}},a._hx_name="TClass",a.__params__=["c"],a),TEnum:(a=function(n){return{_hx_index:7,e:n,__enum__:"ValueType",toString:l}},a._hx_name="TEnum",a.__params__=["e"],a),TUnknown:{_hx_name:"TUnknown",_hx_index:8,__enum__:"ValueType",toString:l}};u.__constructs__=[u.TNull,u.TInt,u.TFloat,u.TBool,u.TObject,u.TFunction,u.TClass,u.TEnum,u.TUnknown];class D{static typeof(e){switch(typeof e){case"boolean":return u.TBool;case"function":return e.__name__||e.__ename__?u.TObject:u.TFunction;case"number":return Math.ceil(e)==e%2147483648?u.TInt:u.TFloat;case"object":if(e==null)return u.TNull;let r=e.__enum__;if(r!=null)return u.TEnum(y[r]);let t=f.getClass(e);return t!=null?u.TClass(t):u.TObject;case"string":return u.TClass(String);case"undefined":return u.TNull;default:return u.TUnknown}}static enumParameters(e){let t=y[e.__enum__].__constructs__[e._hx_index].__params__;if(t!=null){let _=[],s=0;for(;s<t.length;){let o=t[s];++s,_.push(e[o])}return _}else return[]}}D.__name__=!0;class E{constructor(e){this.value=w.Uninitialized(e)}}E.__name__=!0,Object.assign(E.prototype,{__class__:E});var w=y["extype._Lazy.LazyValue"]={__ename__:!0,__constructs__:null,Uninitialized:(a=function(n){return{_hx_index:0,fn:n,__enum__:"extype._Lazy.LazyValue",toString:l}},a._hx_name="Uninitialized",a.__params__=["fn"],a),Initialized:(a=function(n){return{_hx_index:1,x:n,__enum__:"extype._Lazy.LazyValue",toString:l}},a._hx_name="Initialized",a.__params__=["x"],a)};w.__constructs__=[w.Uninitialized,w.Initialized];class d extends Error{constructor(e,r,t){super(e),this.message=e,this.__previousException=r,this.__nativeException=t??this}unwrap(){return this.__nativeException}static caught(e){return e instanceof d?e:e instanceof Error?new d(e.message,null,e):new v(e,null,e)}}d.__name__=!0,Object.assign(d.prototype,{__class__:d});class T{constructor(){this.map=new Map}}T.__name__=!0,Object.assign(T.prototype,{__class__:T});class R{constructor(){this.map=new Map}iterator(){return new W(this.map.values())}}R.__name__=!0,Object.assign(R.prototype,{__class__:R});class v extends d{constructor(e,r,t){super(String(e),r,t),this.value=e}unwrap(){return this.value}}v.__name__=!0,Object.assign(v.prototype,{__class__:v});class S{constructor(e){this.current=0,this.array=e}hasNext(){return this.current<this.array.length}next(){return this.array[this.current++]}}S.__name__=!0,Object.assign(S.prototype,{__class__:S});class f{static getClass(e){if(e==null)return null;if(e instanceof Array)return Array;{let r=e.__class__;if(r!=null)return r;let t=f.__nativeClassName(e);return t!=null?f.__resolveNativeClass(t):null}}static __string_rec(e,r){if(e==null)return"null";if(r.length>=5)return"<...>";let t=typeof e;switch(t=="function"&&(e.__name__||e.__ename__)&&(t="object"),t){case"function":return"<function>";case"object":if(e.__enum__){let g=y[e.__enum__].__constructs__[e._hx_index],C=g._hx_name;return g.__params__?(r=r+" ",C+"("+function(M){var H;let J=[];{let P=0,Q=g.__params__;for(;P<Q.length;){let ce=Q[P];P=P+1,J.push(f.__string_rec(e[ce],r))}}return H=J,H}(this).join(",")+")"):C}if(e instanceof Array){let c="[";r+=" ";let g=0,C=e.length;for(;g<C;){let M=g++;c+=(M>0?",":"")+f.__string_rec(e[M],r)}return c+="]",c}let _;try{_=e.toString}catch{return"???"}if(_!=null&&_!=Object.toString&&typeof _=="function"){let c=e.toString();if(c!="[object Object]")return c}let s=`{
`;r+=" ";let o=e.hasOwnProperty!=null,i=null;for(i in e)o&&!e.hasOwnProperty(i)||i=="prototype"||i=="__class__"||i=="__super__"||i=="__interfaces__"||i=="__properties__"||(s.length!=2&&(s+=`,
`),s+=r+i+" : "+f.__string_rec(e[i],r));return r=r.substring(1),s+=`
`+r+"}",s;case"string":return e;default:return String(e)}}static __nativeClassName(e){let r=f.__toStr.call(e).slice(8,-1);return r=="Object"||r=="Function"||r=="Math"||r=="JSON"?null:r}static __resolveNativeClass(e){return m[e]}}f.__name__=!0;class W{constructor(e){this.jsIterator=e,this.lastStep=e.next()}hasNext(){return!this.lastStep.done}next(){let e=this.lastStep.value;return this.lastStep=this.jsIterator.next(),e}}W.__name__=!0,Object.assign(W.prototype,{__class__:W});class h extends Error{constructor(e,r){super(r),this.name=e}}h.__name__=!0,Object.assign(h.prototype,{__class__:h});class Z{static fromString(e){let r;switch(e){case"AlreadyDisposedError":r=!0;break;case"BadInputError":r=!0;break;case"FatalError":r=!0;break;case"FontAlreadyDetachedError":r=!0;break;case"FontLoadFailedError":r=!0;break;case"GlyphDataLoadFailedError":r=!0;break;case"InvalidFontDataError":r=!0;break;case"InvalidGlyphDataError":r=!0;break;case"InvalidLayoutError":r=!0;break;case"InvalidPasswordError":r=!0;break;case"InvalidServiceKeyError":r=!0;break;case"InvalidSyntaxError":r=!0;break;case"InvalidYrtFormatError":r=!0;break;case"NotAllowedDomainError":r=!0;break;case"NotSecureContextError":r=!0;break;case"ReportWorkerAleadyInitializedError":r=!0;break;case"ReportWorkerAlreadyTerminatedError":r=!0;break;case"ReportWorkerLoadFailedError":r=!0;break;case"ReportWorkerVersionMismatchError":r=!0;break;case"ReportWrokerUninitilizedError":r=!0;break;case"UnauthorizedError":r=!0;break;case"UnregisteredFontError":r=!0;break;case"YrtAlreadyDetachedError":r=!0;break;default:r=!1}if(r)return e}}function ee(n){return new I(n)}function re(){let n=K;n.globalOptions=G,n.createEngine=ee,n.YagisanReportsError=h}var p=y["yagisan.reports.sdk.web.ReportWorkerArgument"]={__ename__:!0,__constructs__:null,Initialize:(a=function(n){return{_hx_index:0,serviceKey:n,__enum__:"yagisan.reports.sdk.web.ReportWorkerArgument",toString:l}},a._hx_name="Initialize",a.__params__=["serviceKey"],a),RegisterUserFonts:(a=function(n){return{_hx_index:1,userFonts:n,__enum__:"yagisan.reports.sdk.web.ReportWorkerArgument",toString:l}},a._hx_name="RegisterUserFonts",a.__params__=["userFonts"],a),LoadTemplate:(a=function(n){return{_hx_index:2,yrt:n,__enum__:"yagisan.reports.sdk.web.ReportWorkerArgument",toString:l}},a._hx_name="LoadTemplate",a.__params__=["yrt"],a),DisposeTemplate:(a=function(n){return{_hx_index:3,templateId:n,__enum__:"yagisan.reports.sdk.web.ReportWorkerArgument",toString:l}},a._hx_name="DisposeTemplate",a.__params__=["templateId"],a),CreatePdfGenerator:(a=function(n,e){return{_hx_index:4,templateId:n,fontUrl:e,__enum__:"yagisan.reports.sdk.web.ReportWorkerArgument",toString:l}},a._hx_name="CreatePdfGenerator",a.__params__=["templateId","fontUrl"],a),DisposePdfGenerator:(a=function(n){return{_hx_index:5,generatorId:n,__enum__:"yagisan.reports.sdk.web.ReportWorkerArgument",toString:l}},a._hx_name="DisposePdfGenerator",a.__params__=["generatorId"],a),CallPdfGenerator:(a=function(n,e,r){return{_hx_index:6,generatorId:n,data:e,options:r,__enum__:"yagisan.reports.sdk.web.ReportWorkerArgument",toString:l}},a._hx_name="CallPdfGenerator",a.__params__=["generatorId","data","options"],a)};p.__constructs__=[p.Initialize,p.RegisterUserFonts,p.LoadTemplate,p.DisposeTemplate,p.CreatePdfGenerator,p.DisposePdfGenerator,p.CallPdfGenerator];class L{constructor(e){this.isTerminated=!1,this.userFonts=new R,this.rpcWorker=new E(function(){return te(G.workerUrl).then(function(r){return le.set(r,e.serviceKey),r.dispatch(p.Initialize(e.serviceKey)).catch(b).then(function(t){if((t!=null?t.workerVersion:null)=="1.0.0-alpha.13")return r;throw new h("ReportWorkerVersionMismatchError",'SDKとReportWorkerのバージョンが一致していません。 SDK="1.0.0-alpha.13" ReportWorker="'+(t!=null?t.workerVersion:null)+'"')}).catch(function(t){return m.console.error(t),r.terminate(),Promise.reject(t)})})})}registerUserFont(e){if(this.isTerminated)throw new h("ReportWorkerAlreadyTerminatedError","ReportWorkerは既に終了しています。");let r,t=e.normal.buffer;if(t!=null&&(t instanceof ArrayBuffer?t:t.buffer).detached)r=!0;else{let _=e.bold,s=_!=null?_.buffer:null;r=s!=null&&(s instanceof ArrayBuffer?s:s.buffer).detached}if(r)throw new h("FontAlreadyDetachedError","既に所有権が移譲されているため読み取りできないフォントデータが指定されています。");this.userFonts.map.set(e.name,e)}loadTemplate(e){if(this.isTerminated)return Promise.reject(new h("ReportWorkerAlreadyTerminatedError","ReportWorkerは既に終了しています。"));if(e!=null&&(e instanceof ArrayBuffer?e:e.buffer).detached)return Promise.reject(new h("YrtAlreadyDetachedError","既に所有権が移譲されているため読み取りできないテンプレートデータが指定されています。"));let r=this,t=this.rpcWorker,_,s=t.value;switch(s._hx_index){case 0:let o=s.fn();t.value=w.Initialized(o),_=o;break;case 1:_=s.x;break}return _.then(function(o){return o.dispatch(p.LoadTemplate(e)).then(function(i){return new U(o,i,r.userFonts)})}).catch(b)}terminate(){if(!this.isTerminated){this.isTerminated=!0,this.userFonts.map.clear();let e;switch(this.rpcWorker.value._hx_index){case 0:e=!1;break;case 1:e=!0;break}if(e){let r=this.rpcWorker,t,_=r.value;switch(_._hx_index){case 0:let s=_.fn();r.value=w.Initialized(s),t=s;break;case 1:t=_.x;break}t.then(function(s){s.terminate()})}}}}L.__name__=!0,Object.assign(L.prototype,{__class__:L});class U{constructor(e,r,t){this.worker=e,this.templateId=r,this.userFonts=t}createPdfReportGenerator(e){let r=this.userFonts.map.size>0?this.worker.dispatch(p.RegisterUserFonts(B.array(this.userFonts))).catch(function(_){return _.name=="DataCloneError"?Promise.reject(new h("FontAlreadyDetachedError","既に所有権が移譲されているため読み取りできないフォントデータが指定されています。")):Promise.reject(_)}):Promise.resolve(void 0),t=this;return r.then(function(_){t.userFonts.map.clear();let s=G.fontUrl;return t.worker.dispatch(p.CreatePdfGenerator(t.templateId,ne(s)?V(q):V(z.substr(s,-1,null)=="/"?s:s+"/"))).then(function(o){return new j(t.worker,o)})}).catch(b)}dispose(){return this.worker.dispatch(p.DisposeTemplate(this.templateId)).catch(b)}}U.__name__=!0,Object.assign(U.prototype,{__class__:U});class j{constructor(e,r){this.worker=e,this.generatorId=r}generate(e,r){return this.worker.dispatch(p.CallPdfGenerator(this.generatorId,e,r)).then(function(t){return{type:"PDF",pageCount:t.pageCount,pageCountPerLayout:t.pageCountPerLayout,getContent:function(){return Promise.resolve(t.content)}}}).catch(b)}dispose(){return this.worker.dispatch(p.DisposePdfGenerator(this.generatorId)).catch(b)}}j.__name__=!0,Object.assign(j.prototype,{__class__:j});function te(n){return se(V(n)).catch(function(e){return Promise.reject(new h("ReportWorkerLoadFailedError",'ReportWorkerの読み込みに失敗しました。 URL="'+n+'"'))})}function b(n){let e=Z.fromString(n.name);return Promise.reject(new h(e??"FatalError",n.message))}class I{constructor(e){let r=e;e=r??{},this.reportWorkerClient=new L({serviceKey:e.serviceKey})}registerUserFont(e){this.reportWorkerClient.registerUserFont(e)}loadTemplate(e){let r;if(e instanceof ArrayBuffer||e instanceof Uint8Array)r=e;else throw typeof e=="string"?new h("BadInputError","テンプレートIDの入力は未実装です。"):new h("BadInputError","不正な値が入力されています");return this.reportWorkerClient.loadTemplate(r)}dispose(){this.reportWorkerClient.terminate()}}I.__name__=!0,Object.assign(I.prototype,{__class__:I});class O{constructor(){let e=this;this.promise=new Promise(function(r,t){e.resolveFn=r,e.rejectFn=t})}resolve(e){this.resolveFn(e)}reject(e){this.rejectFn(e)}}O.__name__=!0,Object.assign(O.prototype,{__class__:O});function ne(n){return n!=null?n==="":!0}function V(n){try{return new URL(n).toString()}catch{return new URL(n,window.location.href).toString()}}class F{constructor(e,r){this.isTerminated=!1,this.callCounter=0,this.resultEmitters=new T,this.worker=e,this.onTerminate=r,e.addEventListener("message",k(this,this.onMessage))}dispatch(e){if(this.isTerminated)return Promise.reject(new Error("already terminated"));let r=this.callCounter++;ae(e);let t={id:r,argument:e};try{let _=new O;return this.resultEmitters.map.set(r,_),this.worker.postMessage(t,N(e)),_.promise}catch(_){let s=d.caught(_).unwrap();if(s instanceof Error)return Promise.reject(s);throw _}}onMessage(e){let r=e.data,t=this.resultEmitters.map.get(r.id);t!=null&&(r.isError?t.reject(r.error):t.resolve(r.result),this.resultEmitters.map.delete(r.id))}terminate(){this.isTerminated||(this.isTerminated=!0,this.worker.terminate(),this.worker.removeEventListener("message",k(this,this.onMessage)),this.onTerminate())}}F.__name__=!0,Object.assign(F.prototype,{__class__:F});function se(n){return new Promise(function(e,r){let t;try{t=new URL(n).toString()}catch{t=new URL(n,window.location.href).toString()}let _=URL.createObjectURL(new Blob([Y.replace(ue,"%URL%",t)],{type:"text/javascript"})),s=new Worker(_),o=null;o=function(i){s.removeEventListener("message",o);let c=i.data;switch(c.length){case 1:c[0]=="__WORKER_LOAD_SUCCESS__"?e(new F(s,function(){s.removeEventListener("error",(a=m.console,k(a,a.error))),s.removeEventListener("messageerror",(a=m.console,k(a,a.warn))),URL.revokeObjectURL(_)})):(s.terminate(),URL.revokeObjectURL(_),r(A(c)));break;case 2:let g=c[1];c[0]=="__WORKER_LOAD_ERROR__"?(s.terminate(),URL.revokeObjectURL(_),r(A(g))):(s.terminate(),URL.revokeObjectURL(_),r(A(c)));break;default:s.terminate(),URL.revokeObjectURL(_),r(A(c))}},s.addEventListener("message",o),s.addEventListener("error",(a=m.console,k(a,a.error))),s.addEventListener("messageerror",(a=m.console,k(a,a.warn)))})}function N(n){if(!n||typeof n!="object")return[];if(n instanceof ArrayBuffer)return[n];if(ArrayBuffer.isView(n))return[n.buffer];if(n instanceof Array){let e=n,r=new Array(e.length),t=0,_=e.length;for(;t<_;){let i=t++;r[i]=N(e[i])}let s=[],o=x(r);for(;o.hasNext();){let i=x(o.next());for(;i.hasNext();)s.push(i.next())}return s}else{let e=Object.entries(n),r=new Array(e.length),t=0,_=e.length;for(;t<_;){let i=t++;r[i]=N(e[i][1])}let s=[],o=x(r);for(;o.hasNext();){let i=x(o.next());for(;i.hasNext();)s.push(i.next())}return s}}function A(n){let e=new Error;return e.message=n.message,e.name=n.name,e}function ae(n){let e=[],r=function(t){_e(t)&&e.push(t)};for(r(n);e.length>0;){let t=e.pop();if(ie(t)){$.deleteField(t,"toString");let _=0,s=D.enumParameters(t);for(;_<s.length;)r(s[_++])}else if(t instanceof Array){let _=0,s=t;for(;_<s.length;)r(s[_++])}else if(t instanceof Map){let _=t.entries(),s=_.next();for(;!s.done;){let o=s.value;s=_.next();let i=o[1];r(o[0]),r(i)}}else if(t instanceof Set){let _=t.values(),s=_.next();for(;!s.done;){let o=s.value;s=_.next(),r(o)}}else{let _=0,s=Object.values(t);for(;_<s.length;)r(s[_++])}}}function _e(n){return n&&typeof n=="object"&&!ArrayBuffer.isView(n)}function ie(n){return D.typeof(n)._hx_index==7}function x(n){return n instanceof Array?new S(n):n.iterator()}function k(n,e){if(e==null)return null;e.__id__==null&&(e.__id__=m.$haxeUID++);var r;return n.hx__closures__==null?n.hx__closures__={}:r=n.hx__closures__[e.__id__],r==null&&(r=e.bind(n),n.hx__closures__[e.__id__]=r),r}m.$haxeUID|=0,typeof performance<"u"&&typeof performance.now=="function"&&(z.now=performance.now.bind(performance)),Object.defineProperty(String.prototype,"__class__",{value:String,enumerable:!1,writable:!0}),String.__name__=!0,Array.__name__=!0,f.__toStr={}.toString;var oe="./reportworker.js",q="./",G={workerUrl:oe,fontUrl:q},le=new WeakMap,ue='try {importScripts("%URL%");self.postMessage(["__WORKER_LOAD_SUCCESS__"]);} catch (err) {console.error("%URL% の起動に失敗しました。");self.postMessage(["__WORKER_LOAD_ERROR__", err]);throw err;}';re()})(typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:K)});window.YagisanReports=X();})();