harperdb 4.5.3 → 4.5.5

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.
Files changed (52) hide show
  1. package/README.md +1 -1
  2. package/bin/harperdb.js +74 -74
  3. package/bin/lite.js +72 -72
  4. package/launchServiceScripts/launchInstallNATSServer.js +3 -3
  5. package/launchServiceScripts/launchNatsIngestService.js +72 -72
  6. package/launchServiceScripts/launchNatsReplyService.js +72 -72
  7. package/launchServiceScripts/launchUpdateNodes4-0-0.js +73 -73
  8. package/npm-shrinkwrap.json +11 -11
  9. package/package.json +1 -1
  10. package/resources/auditStore.d.ts +3 -3
  11. package/resources/blob.d.ts +1 -1
  12. package/server/jobs/jobProcess.js +72 -72
  13. package/server/threads/threadServer.js +72 -72
  14. package/studio/build-local/asset-manifest.json +33 -33
  15. package/studio/build-local/index.html +1 -1
  16. package/studio/build-local/static/js/656.c59b30a3.chunk.js +2 -0
  17. package/studio/build-local/static/js/{833.0adf7923.chunk.js → 833.4f9ba8bb.chunk.js} +1 -1
  18. package/studio/build-local/static/js/{browse-csvupload.aceb2454.chunk.js → browse-csvupload.098dfbf3.chunk.js} +1 -1
  19. package/studio/build-local/static/js/{browse-datatable.170a2dc3.chunk.js → browse-datatable.dfc8d899.chunk.js} +1 -1
  20. package/studio/build-local/static/js/{browse-entitymanager.bab20377.chunk.js → browse-entitymanager.efe8323a.chunk.js} +1 -1
  21. package/studio/build-local/static/js/{browse-jsonviewer.62991eaa.chunk.js → browse-jsonviewer.02fc2ff0.chunk.js} +1 -1
  22. package/studio/build-local/static/js/{custom-functions.fc08c212.chunk.js → custom-functions.b5bc3a63.chunk.js} +1 -1
  23. package/studio/build-local/static/js/{instance-cluster.b1cecd22.chunk.js → instance-cluster.6b4d5fe7.chunk.js} +1 -1
  24. package/studio/build-local/static/js/{instance-config.3b4c8bb2.chunk.js → instance-config.d949e132.chunk.js} +1 -1
  25. package/studio/build-local/static/js/{instance-logs.7ffbdb78.chunk.js → instance-logs.37ca1ae8.chunk.js} +1 -1
  26. package/studio/build-local/static/js/{instance-roles.0496670c.chunk.js → instance-roles.2e4a1bd0.chunk.js} +1 -1
  27. package/studio/build-local/static/js/{instance-status.e1d264ed.chunk.js → instance-status.4c0f4e09.chunk.js} +1 -1
  28. package/studio/build-local/static/js/{instance-users-datatable.74be158e.chunk.js → instance-users-datatable.b15433ca.chunk.js} +1 -1
  29. package/studio/build-local/static/js/{instance-users-edit.f6546639.chunk.js → instance-users-edit.8b70ada6.chunk.js} +1 -1
  30. package/studio/build-local/static/js/{instance-users.9f8c9ce8.chunk.js → instance-users.a8e27d45.chunk.js} +1 -1
  31. package/studio/build-local/static/js/{instance.7f8bc10e.chunk.js → instance.23ed04ec.chunk.js} +1 -1
  32. package/studio/build-local/static/js/{instances.b9528378.chunk.js → instances.bf9a8758.chunk.js} +1 -1
  33. package/studio/build-local/static/js/{main.055e9e0e.js → main.06d21e7d.js} +2 -2
  34. package/studio/build-local/static/js/{offline-app.2b3d559a.chunk.js → offline-app.49a81d63.chunk.js} +1 -1
  35. package/studio/build-local/static/js/{online-app.75d38a43.chunk.js → online-app.0a0cf21a.chunk.js} +1 -1
  36. package/studio/build-local/static/js/{organization-billing.eb5f253c.chunk.js → organization-billing.c4519987.chunk.js} +1 -1
  37. package/studio/build-local/static/js/{organization-users.6e22a1a5.chunk.js → organization-users.1ec6dae2.chunk.js} +1 -1
  38. package/studio/build-local/static/js/{organization.42c0f784.chunk.js → organization.e39f6cd2.chunk.js} +1 -1
  39. package/studio/build-local/static/js/{organizations.44dd3bd2.chunk.js → organizations.b4583aa2.chunk.js} +1 -1
  40. package/studio/build-local/static/js/{profile.97200a91.chunk.js → profile.a5f8dae5.chunk.js} +1 -1
  41. package/studio/build-local/static/js/{resetPassword.a3406893.chunk.js → resetPassword.2dd720ac.chunk.js} +1 -1
  42. package/studio/build-local/static/js/{roles-jsonviewer.b6e22a22.chunk.js → roles-jsonviewer.55d5c685.chunk.js} +1 -1
  43. package/studio/build-local/static/js/{signIn.6aa68409.chunk.js → signIn.90642da2.chunk.js} +1 -1
  44. package/studio/build-local/static/js/{signUp.1df9eab1.chunk.js → signUp.88e90055.chunk.js} +1 -1
  45. package/studio/build-local/static/js/{structure-reloader.b808fbf1.chunk.js → structure-reloader.760c8015.chunk.js} +1 -1
  46. package/studio/build-local/static/js/{topnav.64ebd91d.chunk.js → topnav.a8ee396a.chunk.js} +1 -1
  47. package/studio/build-local/static/js/{updatePassword.a3c0ffcf.chunk.js → updatePassword.0fd3692f.chunk.js} +1 -1
  48. package/utility/hdbTerms.d.ts +2 -0
  49. package/utility/scripts/restartHdb.js +72 -72
  50. package/studio/build-local/static/js/86.5d79defb.chunk.js +0 -2
  51. /package/studio/build-local/static/js/{86.5d79defb.chunk.js.LICENSE.txt → 656.c59b30a3.chunk.js.LICENSE.txt} +0 -0
  52. /package/studio/build-local/static/js/{main.055e9e0e.js.LICENSE.txt → main.06d21e7d.js.LICENSE.txt} +0 -0
@@ -1,3 +1,3 @@
1
- "use strict";var Z=Object.defineProperty;var i=(e,t)=>Z(e,"name",{value:t,configurable:!0});var I=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports);var x=I((qe,M)=>{var{join:K,dirname:q}=require("node:path"),{existsSync:ee,readFileSync:te}=require("node:fs");function ne(){let t=__dirname,n,r=0;for(;!ee(n=K(t,"package.json"));)if(t===(t=q(t))||r++>10)throw new Error("Could not find package root");return n}i(ne,"findPackageJson");var L=ne(),re=JSON.parse(te(L,"utf8")),se=q(L);M.exports={packageJson:re,PACKAGE_ROOT:se}});var V=I((Me,U)=>{if(__filename.endsWith("dev.js")){let e=require("fast-glob"),{tmpdir:t}=require("node:os"),{relative:n,join:r}=require("node:path"),{existsSync:_,statSync:g,readFileSync:A,writeFileSync:$}=require("node:fs"),{isMainThread:v}=require("node:worker_threads"),{spawnSync:m,spawn:w}=require("node:child_process");process.setSourceMapsEnabled(!0);let{PACKAGE_ROOT:c}=x(),Y=["bin","components","dataLayer","resources","server","sqlTranslator","upgrade","utility","validation"],N="ts-build";if(v){let p=!1,S=!1;if((S=_(r(c,N)))?p=e.sync(Y.map(o=>`${o}/**/*.ts`),{cwd:c}).some(o=>{let a=0,l=0;try{a=g(r(c,o)).mtimeMs-5e3,l=g(r(c,N,o.replace(/.ts$/,".js"))).mtimeMs}catch{}return a>l}):p=!0,p){console.log("Compiling TypeScript...");let o=m("npx",["tsc"],{cwd:c});if(o.stdout?.length&&console.log(o.stdout.toString()),o.stderr?.length&&console.log(o.stderr.toString()),S){let a=r(t(),"harperdb-tsc.pid"),l=!1;if(_(a))try{process.kill(+A(a,"utf8"),0),l=!0}catch{}if(!l){console.log("Starting background TypeScript compilation...");let u=w("npx",["tsc","--watch"],{detached:!0,cwd:c,stdio:"ignore"});$(a,u.pid.toString()),u.unref()}}}}let D=U.constructor,Q=D._findPath;D._findPath=function(p,S,o){if(p.startsWith(".")&&!o&&S.length===1&&S[0].startsWith(c)&&!S[0].includes("node_modules")){let a=n(c,S[0]),l;a.startsWith(N)?l=r(c,n(N,a)):l=r(c,N,a);let u=r(l,p),b=u+".js";if(_(b))return b;if(u.includes(".")&&_(u))return u}return Q(p,S,o)}}});var j=I((Ve,G)=>{"use strict";var{platform:Ue}=require("os"),oe="nats-server.zip",C="nats-server",ie=process.platform==="win32"?`${C}.exe`:C,ce=/^[^\s.,*>]+$/,F="__request__",ae=i(e=>`${e}.${F}`,"REQUEST_SUBJECT"),le={NATS_MSG_ID:"Nats-Msg-Id",ORIGIN:"origin",TRANSACTED_NODES:"transacted_nodes"},ue={HUB_SERVER:"hub.json",LEAF_SERVER:"leaf.json"},de={HUB:"hub.pid",LEAF:"leaf.pid"},Se={HUB:"-hub",LEAF:"-leaf",ADMIN:"-admin"},Ee={SUCCESS:"success",ERROR:"error"},_e={OPEN:"open",CLOSED:"closed",NO_RESPONDERS:"NoResponders",TIMEOUT:"Timeout"},ge={TXN:"txn",MSGID:"msgid"},T={ERR:"error",WRN:"warn",INF:"info",DBG:"debug",TRC:"trace"},pe={[T.ERR]:1,[T.WRN]:2,[T.INF]:3,[T.DBG]:4,[T.TRC]:5},Re={debug:"-D",trace:"-DVV"};G.exports={NATS_SERVER_ZIP:oe,NATS_SERVER_NAME:C,NATS_BINARY_NAME:ie,PID_FILES:de,NATS_CONFIG_FILES:ue,SERVER_SUFFIX:Se,NATS_TERM_CONSTRAINTS_RX:ce,REQUEST_SUFFIX:F,UPDATE_REMOTE_RESPONSE_STATUSES:Ee,CLUSTER_STATUS_STATUSES:_e,REQUEST_SUBJECT:ae,SUBJECT_PREFIXES:ge,MSG_HEADERS:le,LOG_LEVELS:T,LOG_LEVEL_FLAGS:Re,LOG_LEVEL_HIERARCHY:pe}});var X=I((Ge,J)=>{"use strict";var R=require("fs-extra"),E=require("path"),s=require("chalk"),fe=require("needle"),k=require("node-stream-zip"),H=require("semver"),f=j(),Te=require("util"),Ae=require("child_process"),{platform:me}=require("os"),we=Te.promisify(Ae.exec),{packageJson:B,PACKAGE_ROOT:Ne}=x(),d=E.join(Ne,"dependencies"),he=E.join(d,f.NATS_SERVER_ZIP),O=B.engines["go-lang"],y=B.engines[f.NATS_SERVER_NAME],ye=`${process.platform}-${process.arch}`,P=E.join(d,ye,`${f.NATS_BINARY_NAME}`),ve=`https://github.com/nats-io/nats-server/releases/download/v${y}/nats-server-v${y}-`,z={"linux-x64":"linux-amd64.zip","linux-arm64":"linux-arm64.zip","darwin-x64":"darwin-amd64.zip","darwin-arm64":"darwin-arm64.zip","win32-x64":"windows-amd64.zip"},Ie=Object.keys(z).map(e=>e.split("-"));async function h(e,t=void 0){let{stdout:n,stderr:r}=await we(e,{cwd:t});if(r)throw new Error(r.replace(`
2
- `,""));return n.replace(`
3
- `,"")}i(h,"runCommand");async function Oe(){try{await R.access(P)}catch{return!1}let e=await h(`${P} --version`,void 0),t=e.substring(e.lastIndexOf("v")+1,e.length);return H.eq(t,y)}i(Oe,"checkNATSServerInstalled");async function Pe(){console.log(s.green(`Verifying go v${O} is on system.`));let e;try{e=(await h("go version",void 0)).match(/[\d.]+/)[0]}catch{throw Error("go does not appear to be installed or is not in the PATH, cannot install clustering dependencies.")}if(!H.gte(e,O))throw Error(`go version ${O} or higher must be installed.`);console.log(s.green(`go v${O} is on the system.`))}i(Pe,"checkGoVersion");async function $e(){console.log(s.green("Extracting NATS Server source code."));let e=new k.async({file:he}),t=E.join(d,`${f.NATS_SERVER_NAME}-src`),n=await e.extract(null,d);return console.log(s.green(`Extracted ${n} entries.`)),await e.close(),t}i($e,"extractNATSServer");async function xe(e){let t=E.join(e,f.NATS_BINARY_NAME),n=E.join(d,"pkg");await R.move(t,P,{overwrite:!0}),await R.remove(e),await R.remove(n)}i(xe,"cleanUp");async function W(e,t){let n=e&&t?`${e}-${t}`:`${process.platform}-${process.arch}`,r=z[n];if(r===void 0)throw Error(`unknown platform - architecture: ${n}`);let _=`${ve}${r}`,g=E.join(d,n,r);await R.ensureFile(g),console.log(s.green(`****Downloading install of NATS Server: ${_}****`)),await fe("get",_,{output:g,follow_max:5}),console.log(s.green("Successfully downloaded and saved nats-server zip.")),console.log(s.green("Extracting nats-server zip."));let A=new k.async({file:g}),$=await A.entries(),v=e==="win32"||process.platform==="win32"?`${f.NATS_SERVER_NAME}.exe`:f.NATS_SERVER_NAME,m=E.join(d,n,v);for(let w of Object.values($))!w.isDirectory&&w.name.endsWith(v)&&(await A.extract(w.name,m),console.log(s.green(`Successfully extracted nats-server zip to ${m}.`)));await A.close(),await R.remove(g),await R.chmod(m,511)}i(W,"downloadNATSServer");async function Ce(){if(console.log(s.green("****Starting install of NATS Server.****")),await Oe()){console.log(s.green(`****NATS Server v${y} installed.****`));return}try{await W();try{let n=await h(`${P} --version`,void 0);console.log(s.green(`****Successfully extracted ${n}.****`))}catch(n){if(n.toString().includes("file busy"))console.warn("Error checking NATS versions",n);else throw n}return}catch(n){console.error(s.red(`Error: ${n.message}. Failed to download NATS server. Building from source`))}try{await Pe()}catch(n){console.error(s.red(n.message)),process.exit(1)}let t=await $e();console.log(s.green("Building NATS Server binary.")),me()=="win32"?await h(`set GOPATH=${d}&& go build`,t):await h(`export GOPATH=${d} && go build`,t),console.log(s.green("Building NATS Server binary complete.")),await xe(t),console.log(s.green(`****NATS Server v${y} is installed.****`))}i(Ce,"installer");J.exports={installer:Ce,downloadNATSServer:W,ALL_SUPPORTED_PLATFORM_ARCHITECTURES:Ie}});V();var ke=require("fs"),He=require("path"),De=X();(async()=>{try{await De.installer()}catch(e){console.error(e)}})();
1
+ "use strict";var Z=Object.defineProperty;var i=(e,t)=>Z(e,"name",{value:t,configurable:!0});var O=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports);var C=O((qe,M)=>{var{join:K,dirname:q}=require("node:path"),{existsSync:ee,readFileSync:te}=require("node:fs");function re(){let t=__dirname,r,n=0;for(;!ee(r=K(t,"package.json"));)if(t===(t=q(t))||n++>10)throw new Error("Could not find package root");return r}i(re,"findPackageJson");var L=re(),ne=JSON.parse(te(L,"utf8")),oe=q(L);M.exports={packageJson:ne,PACKAGE_ROOT:oe}});var V=O((Me,U)=>{if(__filename.endsWith("dev.js")){let e=require("fast-glob"),{tmpdir:t}=require("node:os"),{relative:r,join:n}=require("node:path"),{existsSync:_,statSync:p,readFileSync:A,writeFileSync:x}=require("node:fs"),{isMainThread:v}=require("node:worker_threads"),{spawnSync:m,spawn:w}=require("node:child_process");process.setSourceMapsEnabled(!0);let{PACKAGE_ROOT:a}=C(),Y=["bin","components","dataLayer","resources","server","sqlTranslator","upgrade","utility","validation"],N="ts-build";if(v){let g=!1,S=!1;if((S=_(n(a,N)))?g=e.sync(Y.map(s=>`${s}/**/*.ts`),{cwd:a}).some(s=>{let l=0,u=0;try{l=p(n(a,s)).mtimeMs-5e3,u=p(n(a,N,s.replace(/.ts$/,".js"))).mtimeMs}catch{}return l>u}):g=!0,g){console.log("Compiling TypeScript...");let s=m("npx",["tsc"],{cwd:a});if(s.stdout?.length&&console.log(s.stdout.toString()),s.stderr?.length&&console.log(s.stderr.toString()),S){let l=n(t(),"harperdb-tsc.pid"),u=!1;if(_(l))try{process.kill(+A(l,"utf8"),0),u=!0}catch{}if(!u){console.log("Starting background TypeScript compilation...");let c=w("npx",["tsc","--watch"],{detached:!0,cwd:a,stdio:"ignore"});c.on("error",I=>{console.error("Error trying to compile TypeScript",I)}),c.pid&&x(l,String(c.pid),"utf-8"),c.unref()}}}}let b=U.constructor,Q=b._findPath;b._findPath=function(g,S,s){if(g.startsWith(".")&&!s&&S.length===1&&S[0].startsWith(a)&&!S[0].includes("node_modules")){let l=r(a,S[0]),u;l.startsWith(N)?u=n(a,r(N,l)):u=n(a,N,l);let c=n(u,g),I=c+".js";if(_(I))return I;if(c.includes(".")&&_(c))return c}return Q(g,S,s)}}});var j=O((Ve,G)=>{"use strict";var{platform:Ue}=require("os"),se="nats-server.zip",D="nats-server",ie=process.platform==="win32"?`${D}.exe`:D,ce=/^[^\s.,*>]+$/,F="__request__",ae=i(e=>`${e}.${F}`,"REQUEST_SUBJECT"),le={NATS_MSG_ID:"Nats-Msg-Id",ORIGIN:"origin",TRANSACTED_NODES:"transacted_nodes"},ue={HUB_SERVER:"hub.json",LEAF_SERVER:"leaf.json"},de={HUB:"hub.pid",LEAF:"leaf.pid"},Se={HUB:"-hub",LEAF:"-leaf",ADMIN:"-admin"},Ee={SUCCESS:"success",ERROR:"error"},_e={OPEN:"open",CLOSED:"closed",NO_RESPONDERS:"NoResponders",TIMEOUT:"Timeout"},pe={TXN:"txn",MSGID:"msgid"},T={ERR:"error",WRN:"warn",INF:"info",DBG:"debug",TRC:"trace"},ge={[T.ERR]:1,[T.WRN]:2,[T.INF]:3,[T.DBG]:4,[T.TRC]:5},Re={debug:"-D",trace:"-DVV"};G.exports={NATS_SERVER_ZIP:se,NATS_SERVER_NAME:D,NATS_BINARY_NAME:ie,PID_FILES:de,NATS_CONFIG_FILES:ue,SERVER_SUFFIX:Se,NATS_TERM_CONSTRAINTS_RX:ce,REQUEST_SUFFIX:F,UPDATE_REMOTE_RESPONSE_STATUSES:Ee,CLUSTER_STATUS_STATUSES:_e,REQUEST_SUBJECT:ae,SUBJECT_PREFIXES:pe,MSG_HEADERS:le,LOG_LEVELS:T,LOG_LEVEL_FLAGS:Re,LOG_LEVEL_HIERARCHY:ge}});var X=O((Ge,J)=>{"use strict";var R=require("fs-extra"),E=require("path"),o=require("chalk"),fe=require("needle"),k=require("node-stream-zip"),H=require("semver"),f=j(),Te=require("util"),Ae=require("child_process"),{platform:me}=require("os"),we=Te.promisify(Ae.exec),{packageJson:B,PACKAGE_ROOT:Ne}=C(),d=E.join(Ne,"dependencies"),he=E.join(d,f.NATS_SERVER_ZIP),P=B.engines["go-lang"],y=B.engines[f.NATS_SERVER_NAME],ye=`${process.platform}-${process.arch}`,$=E.join(d,ye,`${f.NATS_BINARY_NAME}`),ve=`https://github.com/nats-io/nats-server/releases/download/v${y}/nats-server-v${y}-`,z={"linux-x64":"linux-amd64.zip","linux-arm64":"linux-arm64.zip","darwin-x64":"darwin-amd64.zip","darwin-arm64":"darwin-arm64.zip","win32-x64":"windows-amd64.zip"},Ie=Object.keys(z).map(e=>e.split("-"));async function h(e,t=void 0){let{stdout:r,stderr:n}=await we(e,{cwd:t});if(n)throw new Error(n.replace(`
2
+ `,""));return r.replace(`
3
+ `,"")}i(h,"runCommand");async function Oe(){try{await R.access($)}catch{return!1}let e=await h(`${$} --version`,void 0),t=e.substring(e.lastIndexOf("v")+1,e.length);return H.eq(t,y)}i(Oe,"checkNATSServerInstalled");async function Pe(){console.log(o.green(`Verifying go v${P} is on system.`));let e;try{e=(await h("go version",void 0)).match(/[\d.]+/)[0]}catch{throw Error("go does not appear to be installed or is not in the PATH, cannot install clustering dependencies.")}if(!H.gte(e,P))throw Error(`go version ${P} or higher must be installed.`);console.log(o.green(`go v${P} is on the system.`))}i(Pe,"checkGoVersion");async function $e(){console.log(o.green("Extracting NATS Server source code."));let e=new k.async({file:he}),t=E.join(d,`${f.NATS_SERVER_NAME}-src`),r=await e.extract(null,d);return console.log(o.green(`Extracted ${r} entries.`)),await e.close(),t}i($e,"extractNATSServer");async function xe(e){let t=E.join(e,f.NATS_BINARY_NAME),r=E.join(d,"pkg");await R.move(t,$,{overwrite:!0}),await R.remove(e),await R.remove(r)}i(xe,"cleanUp");async function W(e,t){let r=e&&t?`${e}-${t}`:`${process.platform}-${process.arch}`,n=z[r];if(n===void 0)throw Error(`unknown platform - architecture: ${r}`);let _=`${ve}${n}`,p=E.join(d,r,n);await R.ensureFile(p),console.log(o.green(`****Downloading install of NATS Server: ${_}****`)),await fe("get",_,{output:p,follow_max:5}),console.log(o.green("Successfully downloaded and saved nats-server zip.")),console.log(o.green("Extracting nats-server zip."));let A=new k.async({file:p}),x=await A.entries(),v=e==="win32"||process.platform==="win32"?`${f.NATS_SERVER_NAME}.exe`:f.NATS_SERVER_NAME,m=E.join(d,r,v);for(let w of Object.values(x))!w.isDirectory&&w.name.endsWith(v)&&(await A.extract(w.name,m),console.log(o.green(`Successfully extracted nats-server zip to ${m}.`)));await A.close(),await R.remove(p),await R.chmod(m,511)}i(W,"downloadNATSServer");async function Ce(){if(console.log(o.green("****Starting install of NATS Server.****")),await Oe()){console.log(o.green(`****NATS Server v${y} installed.****`));return}try{await W();try{let r=await h(`${$} --version`,void 0);console.log(o.green(`****Successfully extracted ${r}.****`))}catch(r){if(r.toString().includes("file busy"))console.warn("Error checking NATS versions",r);else throw r}return}catch(r){console.error(o.red(`Error: ${r.message}. Failed to download NATS server. Building from source`))}try{await Pe()}catch(r){console.error(o.red(r.message)),process.exit(1)}let t=await $e();console.log(o.green("Building NATS Server binary.")),me()=="win32"?await h(`set GOPATH=${d}&& go build`,t):await h(`export GOPATH=${d} && go build`,t),console.log(o.green("Building NATS Server binary complete.")),await xe(t),console.log(o.green(`****NATS Server v${y} is installed.****`))}i(Ce,"installer");J.exports={installer:Ce,downloadNATSServer:W,ALL_SUPPORTED_PLATFORM_ARCHITECTURES:Ie}});V();var ke=require("fs"),He=require("path"),De=X();(async()=>{try{await De.installer()}catch(e){console.error(e)}})();