dsql-admin/dsql-app/.local_dist/server/chunks/9595.js
Benjamin Toby 35fec57590 Updates
2025-01-28 19:43:16 +01:00

16 lines
12 KiB
JavaScript

"use strict";exports.id=9595,exports.ids=[9595],exports.modules={96762:(e,t)=>{Object.defineProperty(t,"M",{enumerable:!0,get:function(){return function e(t,r){return r in t?t[r]:"then"in t&&"function"==typeof t.then?t.then(t=>e(t,r)):"function"==typeof t&&"default"===r?t:void 0}}})},56081:(e,t,r)=>{r.d(t,{A:()=>o});var a=r(29021),n=r.n(a),l=r(95969);let o=({key:e,database:t,table:r,user_id:a,media:o})=>{if(!e||!a)return null;try{let i=process.env.DSQL_API_KEYS_PATH;if(!i)throw Error("process.env.DSQL_API_KEYS_PATH variable not found");let s=(0,l.A)({encryptedString:e}),c=JSON.parse(s||""),u=n().existsSync(`${i}/${c.sign}`);if(String(c.user_id)!==String(a)||!u)return null;if(!c.target_database||o)return c;if(!t&&c.target_database)return null;let d=c.target_database?.split(",").includes(String(t));if(d&&!c.target_table)return c;if(d&&!r&&c.target_table)return null;if(c.target_table?.split(",").includes(String(r)))return c;return null}catch(e){return console.log(`api-cred ERROR: ${e.message}`),{error:`api-cred ERROR: ${e.message}`}}}},98e3:(e,t,r)=>{r.d(t,{A:()=>u});var a=r(72583),n=r.n(a),l=r(92652),o=r(30802),i=r(68829),s=r(64292),c=r(52939);async function u({dbContext:e,paradigm:t,dbFullName:r,tableName:a,data:u,tableSchema:d,duplicateColumnName:_,duplicateColumnValue:p,update:g,encryptionKey:f,encryptionSalt:y}){let S=(0,c.A)({dbContext:e,dbFullName:r}),m=S?global.DSQL_DB_CONN:global.DSQL_FULL_ACCESS_DB_CONN||global.DSQL_DB_CONN,h=S?global.DSQL_DB_CONN:global.DSQL_READ_ONLY_DB_CONN||global.DSQL_DB_CONN;if(u?.date_created_timestamp&&delete u.date_created_timestamp,u?.date_updated_timestamp&&delete u.date_updated_timestamp,u?.date_updated&&delete u.date_updated,u?.date_updated_code&&delete u.date_updated_code,u?.date_created&&delete u.date_created,u?.date_created_code&&delete u.date_created_code,_&&"string"==typeof _){let t=`SELECT * FROM ${S?"":`\`${r}\`.`}\`${a}\` WHERE \`${_}\`=?`,n=await (0,s.A)(h,t,[p]);if(n?.[0]&&!g)return null;if(n&&n[0]&&g)return await (0,o.A)({dbContext:e,dbFullName:r,tableName:a,data:u,tableSchema:d,encryptionKey:f,encryptionSalt:y,identifierColumnName:_,identifierValue:p||""})}let N=Object.keys(u),A=[],D=[];for(let e=0;e<N.length;e++)try{let t=N[e],r=u?.[t],a=d?d?.fields?.filter(e=>e.fieldName==t):null,o=a&&a[0]?a[0]:null;if(null==r||void 0==r||o?.dataType?.match(/int$/i)&&"string"==typeof r&&!r?.match(/./))continue;o?.encrypted&&(r=(0,i.A)({data:r,encryptionKey:f,encryptionSalt:y}),console.log("DSQL: Encrypted value =>",r));let s=/<[^>]+>/g;(o?.richText||String(r).match(s))&&(r=n()(r,l.A)),o?.pattern&&!new RegExp(o.pattern,o.patternFlags||"").test(r)&&(console.log("DSQL: Pattern not matched =>",r),r=""),A.push("`"+t+"`"),"object"==typeof r&&(r=JSON.stringify(r)),"number"==typeof r?D.push(String(r)):D.push(r)}catch(e){console.log("DSQL: Error in parsing data keys =>",e.message);continue}u?.date_created||(A.push("`date_created`"),D.push(Date())),u?.date_created_code||(A.push("`date_created_code`"),D.push(Date.now())),u?.date_updated||(A.push("`date_updated`"),D.push(Date())),u?.date_updated_code||(A.push("`date_updated_code`"),D.push(Date.now()));let E=`INSERT INTO ${S?"":`\`${r}\`.`}\`${a}\` (${A.join(",")}) VALUES (${D.map(()=>"?").join(",")})`;return await (0,s.A)(m,E,D)}},61932:(e,t,r)=>{r.d(t,{A:()=>l});var a=r(52939),n=r(64292);async function l({dbContext:e,dbFullName:t,tableName:r,identifierColumnName:l,identifierValue:o}){try{let i=(0,a.A)({dbContext:e,dbFullName:t}),s=i?global.DSQL_DB_CONN:global.DSQL_FULL_ACCESS_DB_CONN||global.DSQL_DB_CONN;i?global.DSQL_DB_CONN:global.DSQL_READ_ONLY_DB_CONN||global.DSQL_DB_CONN;let c=`DELETE FROM ${i?"":`\`${t}\`.`}\`${r}\` WHERE \`${l}\`=?`;return await (0,n.A)(s,c,[o])}catch(e){return null}}},36249:(e,t,r)=>{r.d(t,{A:()=>d});var a=r(64292),n=r(43775),l=r(67619);async function o({queryString:e,tableSchema:t,queryValuesArray:r}){let o;let i=global.DSQL_FULL_ACCESS_DB_CONN||global.DSQL_DB_CONN;try{o=await (0,a.A)(i,e,r)}catch(e){return(0,l.A)({component:"fullAccessDbHandler",message:e.message}),e.message}finally{i?.end()}if(o&&t){let e=o;return await (0,n.A)({unparsedResults:e,tableSchema:t})}return o||null}async function i({queryString:e,queryValuesArray:t,tableSchema:r}){let o;let i=global.DSQL_READ_ONLY_DB_CONN||global.DSQL_DB_CONN;try{o=await (0,a.A)(i,e,t)}catch(e){return(0,l.A)({component:"varReadOnlyDatabaseDbHandler",message:e.message,noMail:!0}),e.message}finally{i?.end()}if(!o)return null;{let e=o;return await (0,n.A)({unparsedResults:e,tableSchema:r})}}var s=r(98e3),c=r(30802),u=r(61932);async function d({dbFullName:e,query:t,readOnly:r,dbSchema:a,queryValuesArray:n,tableName:d,debug:_,dbContext:p}){let g,f,y;if(a)try{let e=d||("string"==typeof t?null:t?t?.table:null);if(!e)throw Error("No table name provided");y=a.tables.filter(t=>t?.tableName===e)[0]}catch(e){}try{if("string"==typeof t){let e=t.replace(/\n|\r|\n\r|\r\n/gm," ").replace(/ {2,}/g," ").trim();if(_&&global.DSQL_USE_LOCAL&&console.log("runQuery:formattedQuery",e),r&&e.match(/^alter|^delete|information_schema|^create/i))throw Error("Wrong Input!");g=r?await i({queryString:e,queryValuesArray:n?.map(e=>String(e)),tableSchema:y}):await o({queryString:e,queryValuesArray:n?.map(e=>String(e)),tableSchema:y})}else if("object"==typeof t){let{data:r,action:a,table:n,identifierColumnName:l,identifierValue:o,update:i,duplicateColumnName:d,duplicateColumnValue:_}=t;switch(a.toLowerCase()){case"insert":g=await (0,s.A)({dbContext:p,dbFullName:e,tableName:n,data:r,update:i,duplicateColumnName:d,duplicateColumnValue:_,tableSchema:y}),g?.insertId||(f=Error("Couldn't insert data"));break;case"update":g=await (0,c.A)({dbContext:p,dbFullName:e,tableName:n,data:r,identifierColumnName:l,identifierValue:o,tableSchema:y});break;case"delete":g=await (0,u.A)({dbContext:p,dbFullName:e,tableName:n,identifierColumnName:l,identifierValue:o,tableSchema:y});break;default:g=null}}}catch(e){(0,l.A)({component:"functions/backend/runQuery",message:e.message}),_&&global.DSQL_USE_LOCAL&&console.log("runQuery:error",e.message),g=null,e=e.message}return{result:g,error:f}}},30802:(e,t,r)=>{r.d(t,{A:()=>c});var a=r(72583),n=r.n(a),l=r(92652),o=r(68829),i=r(52939),s=r(64292);async function c({dbContext:e,dbFullName:t,tableName:r,data:a,tableSchema:c,identifierColumnName:u,identifierValue:d,encryptionKey:_,encryptionSalt:p}){if(!a||!Object.keys(a).length)return null;let g=(0,i.A)({dbContext:e,dbFullName:t}),f=g?global.DSQL_DB_CONN:global.DSQL_FULL_ACCESS_DB_CONN||global.DSQL_DB_CONN;g?global.DSQL_DB_CONN:global.DSQL_READ_ONLY_DB_CONN||global.DSQL_DB_CONN;let y=Object.keys(a),S=[],m=[];for(let e=0;e<y.length;e++)try{let t=y[e],r=a[t],i=c?c?.fields?.filter(e=>e.fieldName===t):null,s=i&&i[0]?i[0]:null;if(null==r||void 0==r)continue;let u=/<[^>]+>/g;(s?.richText||String(r).match(u))&&(r=n()(r,l.A)),s?.encrypted&&(r=(0,o.A)({data:r,encryptionKey:_,encryptionSalt:p})),"object"==typeof r&&(r=JSON.stringify(r)),s?.pattern&&!new RegExp(s.pattern,s.patternFlags||"").test(r)&&(console.log("DSQL: Pattern not matched =>",r),r=""),"string"==typeof r&&r.match(/^null$/i)&&(r={toSqlString:function(){return"NULL"}}),"string"!=typeof r||r.match(/./i)||(r={toSqlString:function(){return"NULL"}}),S.push(`\`${t}\`=?`),"number"==typeof r?m.push(String(r)):m.push(r)}catch(e){console.log("DSQL: Error in parsing data keys in update function =>",e.message);continue}S.push(`date_updated='${Date()}'`),S.push(`date_updated_code='${Date.now()}'`);let h=`UPDATE ${g?"":`\`${t}\`.`}\`${r}\` SET ${S.join(",")} WHERE \`${u}\`=?`;return m.push(d),await (0,s.A)(f,h,m)}},92652:(e,t,r)=>{r.d(t,{A:()=>a});let a={allowedTags:["b","i","em","strong","a","p","span","ul","ol","li","h1","h2","h3","h4","h5","h6","img","div","button","pre","code","br"],allowedAttributes:{a:["href"],img:["src","alt","width","height","class","style"],"*":["style","class"]}}},43775:(e,t,r)=>{r.d(t,{A:()=>l});var a=r(95969);let n=/^id$|^uuid$|^date_created$|^date_created_code$|^date_created_timestamp$|^date_updated$|^date_updated_code$|^date_updated_timestamp$/;async function l({unparsedResults:e,tableSchema:t}){let r=[];try{for(let l=0;l<e.length;l++){let o=e[l],i=Object.keys(o);for(let e=0;e<i.length;e++){let r=i[e],l=t?.fields[e];if(r?.match(n))continue;let s=o[r];("number"==typeof s||s)&&l?.encrypted&&s?.match(/./)&&(o[r]=(0,a.A)({encryptedString:s}))}r.push(o)}return r}catch(t){return console.log("ERROR in parseDbResults Function =>",t.message),e}}},67619:(e,t,r)=>{r.d(t,{A:()=>l});var a=r(29021),n=r.n(a);async function l({user:e,message:t,component:r,noMail:a,req:l}){let o=new Date,i=(()=>{if(!l)return null;try{let e=l.headers["x-forwarded-for"],t=l.headers["x-real-ip"],r=l.headers["cf-connecting-ip"],a=Array.isArray(e)?e[0]:e?.split(",")[0],n=r||a||t||l.socket.remoteAddress;if(!n)return null;return String(n)}catch(e){return null}})();try{let a=`🚀 SERVER ERROR ===========================
Error Message: ${t}
Component: ${r}`;e?.id&&e?.first_name&&e?.last_name&&e?.email&&(a+=`
User Id: ${e?.id}
User Name: ${e?.first_name} ${e?.last_name}
User Email: ${e?.email}`),l?.url&&(a+=`
URL: ${l.url}`),l?.body&&(a+=`
Request Body: ${JSON.stringify(l.body,null,4)}`),i&&(a+=`
IP: ${i}`),a+=`
Date: ${o.toDateString()}
========================================`,n().existsSync("./.tmp/error.log")||n().writeFileSync("./.tmp/error.log","","utf-8");let s=n().readFileSync("./.tmp/error.log","utf-8");n().writeFileSync("./.tmp/error.log",a),n().appendFileSync("./.tmp/error.log",`
${s}`)}catch(e){console.log("Server Error Reporting Error:",e.message)}}},95969:(e,t,r)=>{r.d(t,{A:()=>o});var a=r(55511),n=r(79428),l=r(32443);function o({encryptedString:e,encryptionKey:t,encryptionSalt:r}){if(!e?.match(/./))return console.log("Encrypted string is invalid"),e;let{key:o,salt:i,keyLen:s,algorithm:c,bufferAllocSize:u}=(0,l.A)({encryptionKey:t});if(!o?.match(/.{8,}/))return console.log("Decrption key is invalid"),e;if(!i?.match(/.{8,}/))return console.log("Decrption salt is invalid"),e;let d=(0,a.scryptSync)(o,i,s),_=n.Buffer.alloc(u,0),p=(0,a.createDecipheriv)(c,d,_);try{let t=p.update(e,"hex","utf8");return t+=p.final("utf8")}catch(t){return console.log("Error in decrypting =>",t.message),e}}},68829:(e,t,r)=>{r.d(t,{A:()=>o});var a=r(55511),n=r(79428),l=r(32443);function o({data:e,encryptionKey:t,encryptionSalt:r}){if(!e?.match(/./))return console.log("Encryption string is invalid"),e;let{key:o,salt:i,keyLen:s,algorithm:c,bufferAllocSize:u}=(0,l.A)({encryptionKey:t});if(!o?.match(/.{8,}/))return console.log("Encryption key is invalid"),e;if(!i?.match(/.{8,}/))return console.log("Encryption salt is invalid"),e;let d=(0,a.scryptSync)(o,i,s),_=n.Buffer.alloc(u,0),p=(0,a.createCipheriv)(c,d,_);try{let t=p.update(e,"utf8","hex");return t+=p.final("hex")}catch(t){return console.log("Error in encrypting =>",t.message),e}}},52939:(e,t,r)=>{r.d(t,{A:()=>a});function a({dbContext:e,dbFullName:t}){return!e?.match(/dsql.user/i)&&(!!global.DSQL_USE_LOCAL||!t||!!t.match(/^datasquirel$/))}},64292:(e,t,r)=>{async function a(e,t,r){try{if(!e)throw Error("No Connection Found!");if(!t)throw Error("Query String Required!");if("string"==typeof t){let a=await e.query(n(t),r);return JSON.parse(JSON.stringify(a))}if("object"!=typeof t)return null;{let r=[];for(let a=0;a<t.length;a++)try{let l=t[a],o=await e.query(n(l.query),l.values);r.push(JSON.parse(JSON.stringify(o)))}catch(e){console.log(`connDbHandler Query Error: ${e.message}`),r.push(null)}return r}}catch(e){return console.log(`connDbHandler Error: ${e.message}`),null}finally{e?.end()}}function n(e){return e.replace(/\n/gm,"").replace(/ {2,}/g,"").trim()}r.d(t,{A:()=>a})},32443:(e,t,r)=>{r.d(t,{A:()=>a});function a(e){return{key:e?.encryptionKey||process.env.DSQL_ENCRYPTION_PASSWORD,keyLen:process.env.DSQL_ENCRYPTION_KEY_LENGTH?Number(process.env.DSQL_ENCRYPTION_KEY_LENGTH):24,salt:e?.encryptionSalt||process.env.DSQL_ENCRYPTION_SALT,apiKey:e?.apiKey||process.env.DSQL_API_KEY,algorithm:e?.algorithm||process.env.DSQL_ENCRYPTION_ALGORITHM||"aes-192-cbc",bufferAllocSize:e?.bufferAllocSize||(process.env.DSQL_ENCRYPTION_BUFFER_ALLOCATION_SIZE?function(e,t){try{let t=Number(e);if("number"!=typeof t||isNaN(t))return 0;return Math.round(t)}catch(e){return console.log(`Numberfy ERROR: ${e.message}`),0}}(process.env.DSQL_ENCRYPTION_BUFFER_ALLOCATION_SIZE):void 0)||16}}},2706:(e,t)=>{Object.defineProperty(t,"A",{enumerable:!0,get:function(){return r}});var r=function(e){return e.PAGES="PAGES",e.PAGES_API="PAGES_API",e.APP_PAGE="APP_PAGE",e.APP_ROUTE="APP_ROUTE",e.IMAGE="IMAGE",e}({})},89947:(e,t,r)=>{e.exports=r(75600)}};