"use strict";(()=>{var e={};e.id=4105,e.ids=[4105],e.modules={39383:e=>{e.exports=require("@moduletrace/datasquirel/dist/package-shared/actions/users/user-auth")},75600:e=>{e.exports=require("next/dist/compiled/next-server/pages-api.runtime.prod.js")},9973:e=>{e.exports=require("serverless-mysql")},29021:e=>{e.exports=require("fs")},33873:e=>{e.exports=require("path")},55096:(e,a,s)=>{s.r(a),s.d(a,{config:()=>g,default:()=>h,routeModule:()=>v});var r={};s.r(r),s.d(r,{default:()=>b});var t=s(89947),i=s(2706),n=s(96762),o=s(29021),d=s.n(o),l=s(69842),u=s(67619),c=s(48786),p=s(33873),f=s.n(p),m=s(76856);async function b(e,a){if("POST"!==e.method)return a.json({user:null,msg:"Registration Failed!"});let s=await (0,l.A)(e,a,!0);if(!s)return a.json({success:!1,msg:"Unauthorized"});let r=e.body.schema,t=e.body.dbId;try{let e=await (0,c.A)("SELECT * FROM user_databases WHERE user_id = ? AND id = ?",[s.id,t]);if(!e?.[0])throw Error("Invalid Database");let i=e[0],n=f().resolve(process.cwd(),`${process.env.DSQL_USER_DB_SCHEMA_PATH}/user-${s.id}/main.json`),o=JSON.parse(d().readFileSync(n,"utf-8")),l=o.find(e=>e.dbFullName==i.db_full_name);if(!l)throw Error("This Database doesn't exist");if(l.tables=r.tables,l.childrenDatabases)for(let e=0;ee.dbFullName===a);if(!s||!s.tables){l.childrenDatabases?.splice(e,1);continue}s.tables=r.tables}d().writeFileSync(`${n}`,JSON.stringify(o),"utf8"),await (0,m.A)({userId:s.id,targetDatabase:i.db_full_name}),a.json({success:!0})}catch(r){(0,u.A)({component:"/api/acceptUserInvitation/catch-error",message:r.message,user:s,req:e}),a.json({success:!1})}}let h=(0,n.M)(r,"default"),g=(0,n.M)(r,"config"),v=new t.PagesAPIRouteModule({definition:{kind:i.A.PAGES_API,page:"/api/user-schema/replace-database-schema",pathname:"/api/user-schema/replace-database-schema",bundlePath:"",filename:""},userland:r})},69842:(e,a,s)=>{s.d(a,{A:()=>i});var r=s(39383),t=s.n(r);async function i(e,a,s){return t()({req:e,level:s?"deep":void 0}).payload}},48786:(e,a,s)=>{s.d(a,{A:()=>t});var r=s(7447);async function t(...e){let a=(0,r.A)();try{if(!a)throw Error("No Connection provided to DB_HANDLER function!");let s=await a.query(...e);return JSON.parse(JSON.stringify(s))}catch(e){return console.log("DB Error =>",e),{success:!1,error:e.message}}finally{await a?.end()}}}};var a=require("../../../webpack-api-runtime.js");a.C(e);var s=e=>a(a.s=e),r=a.X(0,[6934],()=>s(55096));module.exports=r})();