Updates
This commit is contained in:
+13
-1
@@ -68,7 +68,19 @@ function queryDSQLAPI(_a) {
|
||||
});
|
||||
response.on("end", function () {
|
||||
try {
|
||||
resolve(JSON.parse(str));
|
||||
const responseObj = JSON.parse(str);
|
||||
if (!responseObj.success) {
|
||||
// console.log("responseObj", responseObj);
|
||||
// console.log(
|
||||
// "response.headers",
|
||||
// response.headers
|
||||
// );
|
||||
// console.log(
|
||||
// "httpsRequest.headers",
|
||||
// httpsRequest.getHeaders()
|
||||
// );
|
||||
}
|
||||
resolve(responseObj);
|
||||
}
|
||||
catch (error) {
|
||||
resolve({
|
||||
|
||||
+5
-7
@@ -1,18 +1,16 @@
|
||||
import { DbContextsArray } from "../../backend/db/runQuery";
|
||||
import { ApiGetQueryObject } from "../../../types";
|
||||
import { DSQL_DatabaseSchemaType, DsqlCrudQueryObject, GetReturn } from "../../../types";
|
||||
type Param<T extends {
|
||||
[key: string]: any;
|
||||
} = {
|
||||
[key: string]: any;
|
||||
}> = {
|
||||
query: string | ApiGetQueryObject<T>;
|
||||
queryValues?: (string | number)[];
|
||||
query: DsqlCrudQueryObject<T>;
|
||||
dbFullName: string;
|
||||
tableName?: string;
|
||||
dbSchema?: import("../../../types").DSQL_DatabaseSchemaType;
|
||||
tableName: string;
|
||||
dbSchema?: DSQL_DatabaseSchemaType;
|
||||
debug?: boolean;
|
||||
dbContext?: (typeof DbContextsArray)[number];
|
||||
forceLocal?: boolean;
|
||||
};
|
||||
/**
|
||||
* # Get Function FOr API
|
||||
@@ -21,5 +19,5 @@ export default function apiGet<T extends {
|
||||
[key: string]: any;
|
||||
} = {
|
||||
[key: string]: any;
|
||||
}>({ query, dbFullName, queryValues, tableName, dbSchema, debug, dbContext, forceLocal, }: Param<T>): Promise<import("../../../types").GetReturn>;
|
||||
}>({ query, dbFullName, tableName, dbSchema, debug, }: Param<T>): Promise<GetReturn>;
|
||||
export {};
|
||||
|
||||
+14
-69
@@ -13,79 +13,24 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
||||
};
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
exports.default = apiGet;
|
||||
const lodash_1 = __importDefault(require("lodash"));
|
||||
const serverError_1 = __importDefault(require("../../backend/serverError"));
|
||||
const runQuery_1 = __importDefault(require("../../backend/db/runQuery"));
|
||||
const grab_query_and_values_1 = __importDefault(require("../../../utils/grab-query-and-values"));
|
||||
const sql_generator_1 = __importDefault(require("../../dsql/sql/sql-generator"));
|
||||
const crud_1 = __importDefault(require("../../../utils/data-fetching/crud"));
|
||||
/**
|
||||
* # Get Function FOr API
|
||||
*/
|
||||
function apiGet(_a) {
|
||||
return __awaiter(this, arguments, void 0, function* ({ query, dbFullName, queryValues, tableName, dbSchema, debug, dbContext, forceLocal, }) {
|
||||
var _b, _c;
|
||||
const queryAndValues = (0, grab_query_and_values_1.default)({
|
||||
query,
|
||||
values: queryValues,
|
||||
return __awaiter(this, arguments, void 0, function* ({ query, dbFullName, tableName, dbSchema, debug, }) {
|
||||
const queryAndValues = (0, sql_generator_1.default)({
|
||||
tableName,
|
||||
genObject: query,
|
||||
dbFullName,
|
||||
});
|
||||
if (typeof query == "string" && query.match(/^alter|^delete|^create/i)) {
|
||||
return { success: false, msg: "Wrong Input." };
|
||||
}
|
||||
let results;
|
||||
try {
|
||||
let { result, error } = yield (0, runQuery_1.default)({
|
||||
dbFullName: dbFullName,
|
||||
query: queryAndValues.query,
|
||||
queryValuesArray: queryAndValues.values,
|
||||
readOnly: true,
|
||||
dbSchema,
|
||||
tableName,
|
||||
dbContext,
|
||||
debug,
|
||||
forceLocal,
|
||||
});
|
||||
if (debug && global.DSQL_USE_LOCAL) {
|
||||
console.log("apiGet:result", result);
|
||||
console.log("apiGet:error", error);
|
||||
}
|
||||
let tableSchema;
|
||||
if (dbSchema) {
|
||||
const targetTable = (_b = dbSchema.tables) === null || _b === void 0 ? void 0 : _b.find((table) => table.tableName === tableName);
|
||||
if (targetTable) {
|
||||
const clonedTargetTable = lodash_1.default.cloneDeep(targetTable);
|
||||
delete clonedTargetTable.childTable;
|
||||
delete clonedTargetTable.childrenTables;
|
||||
delete clonedTargetTable.updateData;
|
||||
delete clonedTargetTable.indexes;
|
||||
tableSchema = clonedTargetTable;
|
||||
}
|
||||
}
|
||||
if (error)
|
||||
throw error;
|
||||
if (result.error)
|
||||
throw new Error(result.error);
|
||||
results = result;
|
||||
const resObject = {
|
||||
success: true,
|
||||
payload: results,
|
||||
schema: tableName && tableSchema ? tableSchema : undefined,
|
||||
};
|
||||
return resObject;
|
||||
}
|
||||
catch (error) {
|
||||
(0, serverError_1.default)({
|
||||
component: "/api/query/get/lines-85-94",
|
||||
message: error.message,
|
||||
});
|
||||
(_c = global.ERROR_CALLBACK) === null || _c === void 0 ? void 0 : _c.call(global, `API Get Error`, error);
|
||||
if (debug && global.DSQL_USE_LOCAL) {
|
||||
console.log("apiGet:error", error.message);
|
||||
console.log("queryAndValues", queryAndValues);
|
||||
}
|
||||
return {
|
||||
success: false,
|
||||
payload: null,
|
||||
error: error.message,
|
||||
};
|
||||
}
|
||||
const result = yield (0, crud_1.default)({
|
||||
action: "get",
|
||||
table: tableName,
|
||||
dbFullName,
|
||||
query,
|
||||
});
|
||||
return result;
|
||||
});
|
||||
}
|
||||
|
||||
+1
-2
@@ -7,11 +7,10 @@ type Param = {
|
||||
tableName?: string;
|
||||
dbSchema?: DSQL_DatabaseSchemaType;
|
||||
dbContext?: (typeof DbContextsArray)[number];
|
||||
forceLocal?: boolean;
|
||||
debug?: boolean;
|
||||
};
|
||||
/**
|
||||
* # Post Function For API
|
||||
*/
|
||||
export default function apiPost({ query, dbFullName, queryValues, tableName, dbSchema, dbContext, forceLocal, debug, }: Param): Promise<PostReturn>;
|
||||
export default function apiPost({ query, dbFullName, queryValues, tableName, dbSchema, dbContext, debug, }: Param): Promise<PostReturn>;
|
||||
export {};
|
||||
|
||||
+2
-4
@@ -21,8 +21,8 @@ const debug_log_1 = __importDefault(require("../../../utils/logging/debug-log"))
|
||||
* # Post Function For API
|
||||
*/
|
||||
function apiPost(_a) {
|
||||
return __awaiter(this, arguments, void 0, function* ({ query, dbFullName, queryValues, tableName, dbSchema, dbContext, forceLocal, debug, }) {
|
||||
var _b, _c;
|
||||
return __awaiter(this, arguments, void 0, function* ({ query, dbFullName, queryValues, tableName, dbSchema, dbContext, debug, }) {
|
||||
var _b;
|
||||
if (typeof query === "string" && (query === null || query === void 0 ? void 0 : query.match(/^create |^alter |^drop /i))) {
|
||||
return { success: false, msg: "Wrong Input" };
|
||||
}
|
||||
@@ -44,7 +44,6 @@ function apiPost(_a) {
|
||||
queryValuesArray: queryValues,
|
||||
tableName,
|
||||
dbContext,
|
||||
forceLocal,
|
||||
debug,
|
||||
});
|
||||
if (debug) {
|
||||
@@ -86,7 +85,6 @@ function apiPost(_a) {
|
||||
component: "/api/query/post/lines-132-142",
|
||||
message: error.message,
|
||||
});
|
||||
(_c = global.ERROR_CALLBACK) === null || _c === void 0 ? void 0 : _c.call(global, `API Post Error`, error);
|
||||
return {
|
||||
success: false,
|
||||
payload: results,
|
||||
|
||||
@@ -13,7 +13,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
||||
};
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
exports.default = facebookLogin;
|
||||
const DB_HANDLER_1 = __importDefault(require("../../../utils/backend/global-db/DB_HANDLER"));
|
||||
const dbHandler_1 = __importDefault(require("../../backend/dbHandler"));
|
||||
const serverError_1 = __importDefault(require("../../backend/serverError"));
|
||||
const hashPassword_1 = __importDefault(require("../../dsql/hashPassword"));
|
||||
/**
|
||||
@@ -22,14 +22,18 @@ const hashPassword_1 = __importDefault(require("../../dsql/hashPassword"));
|
||||
function facebookLogin(_a) {
|
||||
return __awaiter(this, arguments, void 0, function* ({ usertype, body, }) {
|
||||
try {
|
||||
const foundUser = yield (0, DB_HANDLER_1.default)(`SELECT * FROM users WHERE email='${body.facebookUserEmail}' AND social_login='1'`);
|
||||
const foundUser = (yield (0, dbHandler_1.default)({
|
||||
query: `SELECT * FROM users WHERE email='${body.facebookUserEmail}' AND social_login='1'`,
|
||||
values: [body.facebookUserEmail],
|
||||
}));
|
||||
if (foundUser && foundUser[0]) {
|
||||
return foundUser[0];
|
||||
}
|
||||
let socialHashedPassword = (0, hashPassword_1.default)({
|
||||
password: body.facebookUserId,
|
||||
});
|
||||
let newUser = yield (0, DB_HANDLER_1.default)(`INSERT INTO ${usertype} (
|
||||
let newUser = (yield (0, dbHandler_1.default)({
|
||||
query: `INSERT INTO ${usertype} (
|
||||
first_name,
|
||||
last_name,
|
||||
social_platform,
|
||||
@@ -49,8 +53,8 @@ function facebookLogin(_a) {
|
||||
'${body.facebookUserLastName}',
|
||||
'facebook',
|
||||
'facebook_${body.facebookUserEmail
|
||||
? body.facebookUserEmail.replace(/@.*/, "")
|
||||
: body.facebookUserFirstName.toLowerCase()}',
|
||||
? body.facebookUserEmail.replace(/@.*/, "")
|
||||
: body.facebookUserFirstName.toLowerCase()}',
|
||||
'${body.facebookUserEmail}',
|
||||
'${body.facebookUserImage}',
|
||||
'${body.facebookUserImage}',
|
||||
@@ -61,8 +65,20 @@ function facebookLogin(_a) {
|
||||
'1',
|
||||
'${Date()}',
|
||||
'${Date.now()}'
|
||||
)`);
|
||||
const newFoundUser = yield (0, DB_HANDLER_1.default)(`SELECT * FROM ${usertype} WHERE id='${newUser.insertId}'`);
|
||||
)`,
|
||||
values: [
|
||||
body.facebookUserFirstName,
|
||||
body.facebookUserLastName,
|
||||
body.facebookUserEmail,
|
||||
body.facebookUserImage,
|
||||
socialHashedPassword,
|
||||
body.facebookUserId,
|
||||
],
|
||||
}));
|
||||
const newFoundUser = (yield (0, dbHandler_1.default)({
|
||||
query: `SELECT * FROM ${usertype} WHERE id=?`,
|
||||
values: (newUser === null || newUser === void 0 ? void 0 : newUser.insertId) ? [newUser === null || newUser === void 0 ? void 0 : newUser.insertId] : [],
|
||||
}));
|
||||
}
|
||||
catch ( /** @type {any} */error) {
|
||||
(0, serverError_1.default)({
|
||||
|
||||
@@ -13,7 +13,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
||||
};
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
exports.default = githubLogin;
|
||||
const DB_HANDLER_1 = __importDefault(require("../../../utils/backend/global-db/DB_HANDLER"));
|
||||
const dbHandler_1 = __importDefault(require("../../backend/dbHandler"));
|
||||
const httpsRequest_1 = __importDefault(require("../../backend/httpsRequest"));
|
||||
/**
|
||||
* # Login/signup a github user
|
||||
@@ -48,7 +48,10 @@ function githubLogin(_a) {
|
||||
});
|
||||
gitHubUser = JSON.parse(userDataResponse);
|
||||
if (!(gitHubUser === null || gitHubUser === void 0 ? void 0 : gitHubUser.email) && gitHubUser) {
|
||||
const existingGithubUser = yield (0, DB_HANDLER_1.default)(`SELECT email FROM users WHERE social_login='1' AND social_platform='github' AND social_id='${gitHubUser.id}'`);
|
||||
const existingGithubUser = (yield (0, dbHandler_1.default)({
|
||||
query: `SELECT email FROM users WHERE social_login='1' AND social_platform='github' AND social_id='${gitHubUser.id}'`,
|
||||
values: [gitHubUser.id],
|
||||
}));
|
||||
if (existingGithubUser && existingGithubUser[0]) {
|
||||
gitHubUser.email = existingGithubUser[0].email;
|
||||
}
|
||||
|
||||
+21
-11
@@ -15,14 +15,14 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
||||
exports.default = googleLogin;
|
||||
const google_auth_library_1 = require("google-auth-library");
|
||||
const serverError_1 = __importDefault(require("../../backend/serverError"));
|
||||
const DB_HANDLER_1 = __importDefault(require("../../../utils/backend/global-db/DB_HANDLER"));
|
||||
const dbHandler_1 = __importDefault(require("../../backend/dbHandler"));
|
||||
const hashPassword_1 = __importDefault(require("../../dsql/hashPassword"));
|
||||
/**
|
||||
* # Google Login
|
||||
*/
|
||||
function googleLogin(_a) {
|
||||
return __awaiter(this, arguments, void 0, function* ({ usertype, foundUser, isSocialValidated, isUserValid, reqBody, serverRes, loginFailureReason, }) {
|
||||
var _b, _c;
|
||||
var _b;
|
||||
const client = new google_auth_library_1.OAuth2Client(process.env.DSQL_GOOGLE_CLIENT_ID);
|
||||
let isGoogleAuthValid = false;
|
||||
let newFoundUser = null;
|
||||
@@ -54,8 +54,11 @@ function googleLogin(_a) {
|
||||
////////////////////////////////////////////////
|
||||
////////////////////////////////////////////////
|
||||
////////////////////////////////////////////////
|
||||
let existinEmail = yield (0, DB_HANDLER_1.default)(`SELECT * FROM ${usertype} WHERE email='${payload.email}' AND social_login!='1' AND social_platform!='google'`);
|
||||
if (existinEmail && existinEmail[0]) {
|
||||
let existinEmail = (yield (0, dbHandler_1.default)({
|
||||
query: `SELECT * FROM ${usertype} WHERE email='${payload.email}' AND social_login!='1' AND social_platform!='google'`,
|
||||
values: [payload.email],
|
||||
}));
|
||||
if (existinEmail === null || existinEmail === void 0 ? void 0 : existinEmail[0]) {
|
||||
loginFailureReason = "Email Exists Already";
|
||||
isGoogleAuthValid = false;
|
||||
return {
|
||||
@@ -65,8 +68,11 @@ function googleLogin(_a) {
|
||||
};
|
||||
}
|
||||
////////////////////////////////////////
|
||||
foundUser = yield (0, DB_HANDLER_1.default)(`SELECT * FROM ${usertype} WHERE email='${payload.email}' AND social_login='1' AND social_platform='google'`);
|
||||
if (foundUser && foundUser[0]) {
|
||||
foundUser = (yield (0, dbHandler_1.default)({
|
||||
query: `SELECT * FROM ${usertype} WHERE email=? AND social_login='1' AND social_platform='google'`,
|
||||
values: [payload.email],
|
||||
}));
|
||||
if (foundUser === null || foundUser === void 0 ? void 0 : foundUser[0]) {
|
||||
newFoundUser = foundUser;
|
||||
return {
|
||||
isGoogleAuthValid: isGoogleAuthValid,
|
||||
@@ -76,9 +82,10 @@ function googleLogin(_a) {
|
||||
////////////////////////////////////////////////
|
||||
////////////////////////////////////////////////
|
||||
////////////////////////////////////////////////
|
||||
let newUser = yield (0, DB_HANDLER_1.default)(`INSERT INTO ${usertype} (
|
||||
let newUser = (yield (0, dbHandler_1.default)({
|
||||
query: `INSERT INTO ${usertype} (
|
||||
first_name,
|
||||
last_name,
|
||||
last_name,
|
||||
social_platform,
|
||||
social_name,
|
||||
social_id,
|
||||
@@ -106,15 +113,18 @@ function googleLogin(_a) {
|
||||
'1',
|
||||
'${Date()}',
|
||||
'${Date.now()}'
|
||||
)`);
|
||||
newFoundUser = yield (0, DB_HANDLER_1.default)(`SELECT * FROM ${usertype} WHERE id='${newUser.insertId}'`);
|
||||
)`,
|
||||
}));
|
||||
newFoundUser = (yield (0, dbHandler_1.default)({
|
||||
query: `SELECT * FROM ${usertype} WHERE id=?`,
|
||||
values: [newUser.insertId],
|
||||
}));
|
||||
}
|
||||
catch (error) {
|
||||
(0, serverError_1.default)({
|
||||
component: "googleLogin",
|
||||
message: error.message,
|
||||
});
|
||||
(_c = global.ERROR_CALLBACK) === null || _c === void 0 ? void 0 : _c.call(global, `Google Login Error`, error);
|
||||
loginFailureReason = error;
|
||||
isUserValid = false;
|
||||
isSocialValidated = false;
|
||||
|
||||
@@ -17,7 +17,7 @@ const fs_1 = __importDefault(require("fs"));
|
||||
const handleNodemailer_1 = __importDefault(require("../../backend/handleNodemailer"));
|
||||
const path_1 = __importDefault(require("path"));
|
||||
const addMariadbUser_1 = __importDefault(require("../../backend/addMariadbUser"));
|
||||
const varDatabaseDbHandler_1 = __importDefault(require("../../backend/varDatabaseDbHandler"));
|
||||
const dbHandler_1 = __importDefault(require("../../backend/dbHandler"));
|
||||
const encrypt_1 = __importDefault(require("../../dsql/encrypt"));
|
||||
const addDbEntry_1 = __importDefault(require("../../backend/db/addDbEntry"));
|
||||
const loginSocialUser_1 = __importDefault(require("./loginSocialUser"));
|
||||
@@ -27,26 +27,20 @@ const grab_dir_names_1 = __importDefault(require("../../../utils/backend/names/g
|
||||
*/
|
||||
function handleSocialDb(_a) {
|
||||
return __awaiter(this, arguments, void 0, function* ({ database, email, social_platform, payload, invitation, supEmail, additionalFields, debug, loginOnly, }) {
|
||||
var _b, _c;
|
||||
var _b;
|
||||
try {
|
||||
const finalDbName = global.DSQL_USE_LOCAL
|
||||
? undefined
|
||||
: database
|
||||
? database
|
||||
: "datasquirel";
|
||||
const dbAppend = global.DSQL_USE_LOCAL ? "" : `${finalDbName}.`;
|
||||
const existingSocialUserQUery = `SELECT * FROM ${dbAppend}users WHERE email = ? AND social_login='1' AND social_platform = ? `;
|
||||
const finalDbName = database ? database : "datasquirel";
|
||||
const existingSocialUserQUery = `SELECT * FROM users WHERE email = ? AND social_login='1' AND social_platform = ? `;
|
||||
const existingSocialUserValues = [email, social_platform];
|
||||
if (debug) {
|
||||
console.log("handleSocialDb:existingSocialUserQUery", existingSocialUserQUery);
|
||||
console.log("handleSocialDb:existingSocialUserValues", existingSocialUserValues);
|
||||
}
|
||||
let existingSocialUser = yield (0, varDatabaseDbHandler_1.default)({
|
||||
let existingSocialUser = (yield (0, dbHandler_1.default)({
|
||||
database: finalDbName,
|
||||
queryString: existingSocialUserQUery,
|
||||
queryValuesArray: existingSocialUserValues,
|
||||
debug,
|
||||
});
|
||||
query: existingSocialUserQUery,
|
||||
values: existingSocialUserValues,
|
||||
}));
|
||||
if (debug) {
|
||||
console.log("handleSocialDb:existingSocialUser", existingSocialUser);
|
||||
}
|
||||
@@ -75,15 +69,14 @@ function handleSocialDb(_a) {
|
||||
msg: "No Email Present",
|
||||
};
|
||||
}
|
||||
const existingEmailOnlyQuery = `SELECT * FROM ${dbAppend}users WHERE email='${finalEmail}'`;
|
||||
const existingEmailOnlyQuery = `SELECT * FROM users WHERE email='${finalEmail}'`;
|
||||
if (debug) {
|
||||
console.log("handleSocialDb:existingEmailOnlyQuery", existingEmailOnlyQuery);
|
||||
}
|
||||
let existingEmailOnly = yield (0, varDatabaseDbHandler_1.default)({
|
||||
let existingEmailOnly = (yield (0, dbHandler_1.default)({
|
||||
database: finalDbName,
|
||||
queryString: existingEmailOnlyQuery,
|
||||
debug,
|
||||
});
|
||||
query: existingEmailOnlyQuery,
|
||||
}));
|
||||
if (debug) {
|
||||
console.log("handleSocialDb:existingEmailOnly", existingEmailOnly);
|
||||
}
|
||||
@@ -131,12 +124,11 @@ function handleSocialDb(_a) {
|
||||
*/
|
||||
yield (0, addMariadbUser_1.default)({ userId: newUser.payload.insertId });
|
||||
}
|
||||
const newUserQueriedQuery = `SELECT * FROM ${dbAppend}users WHERE id='${newUser.payload.insertId}'`;
|
||||
const newUserQueried = yield (0, varDatabaseDbHandler_1.default)({
|
||||
const newUserQueriedQuery = `SELECT * FROM users WHERE id='${newUser.payload.insertId}'`;
|
||||
const newUserQueried = (yield (0, dbHandler_1.default)({
|
||||
database: finalDbName,
|
||||
queryString: newUserQueriedQuery,
|
||||
debug,
|
||||
});
|
||||
query: newUserQueriedQuery,
|
||||
}));
|
||||
if (!newUserQueried || !newUserQueried[0])
|
||||
return {
|
||||
success: false,
|
||||
@@ -207,7 +199,6 @@ function handleSocialDb(_a) {
|
||||
}
|
||||
catch (error) {
|
||||
console.log("ERROR in 'handleSocialDb.ts' backend function =>", error.message);
|
||||
(_c = global.ERROR_CALLBACK) === null || _c === void 0 ? void 0 : _c.call(global, `Handle Social DB Error`, error);
|
||||
return {
|
||||
success: false,
|
||||
payload: null,
|
||||
|
||||
@@ -14,7 +14,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
exports.default = loginSocialUser;
|
||||
const addAdminUserOnLogin_1 = __importDefault(require("../../backend/addAdminUserOnLogin"));
|
||||
const varDatabaseDbHandler_1 = __importDefault(require("../../backend/varDatabaseDbHandler"));
|
||||
const dbHandler_1 = __importDefault(require("../../backend/dbHandler"));
|
||||
/**
|
||||
* Function to login social user
|
||||
* ==============================================================================
|
||||
@@ -27,12 +27,11 @@ function loginSocialUser(_a) {
|
||||
const dbAppend = database ? `\`${finalDbName}\`.` : "";
|
||||
const foundUserQuery = `SELECT * FROM ${dbAppend}\`users\` WHERE email=?`;
|
||||
const foundUserValues = [user.email];
|
||||
const foundUser = yield (0, varDatabaseDbHandler_1.default)({
|
||||
const foundUser = (yield (0, dbHandler_1.default)({
|
||||
query: foundUserQuery,
|
||||
values: foundUserValues,
|
||||
database: finalDbName,
|
||||
queryString: foundUserQuery,
|
||||
queryValuesArray: foundUserValues,
|
||||
debug,
|
||||
});
|
||||
}));
|
||||
if (!(foundUser === null || foundUser === void 0 ? void 0 : foundUser[0]))
|
||||
return {
|
||||
success: false,
|
||||
|
||||
@@ -2,7 +2,7 @@ import { APICreateUserFunctionParams } from "../../../types";
|
||||
/**
|
||||
* # API Create User
|
||||
*/
|
||||
export default function apiCreateUser({ encryptionKey, payload, database, userId, }: APICreateUserFunctionParams): Promise<{
|
||||
export default function apiCreateUser({ encryptionKey, payload, database, userId, verify, }: APICreateUserFunctionParams): Promise<{
|
||||
success: boolean;
|
||||
msg: string;
|
||||
payload?: undefined;
|
||||
|
||||
+30
-22
@@ -17,17 +17,15 @@ const grab_required_database_schemas_1 = require("../../../shell/createDbFromSch
|
||||
const addUsersTableToDb_1 = __importDefault(require("../../backend/addUsersTableToDb"));
|
||||
const addDbEntry_1 = __importDefault(require("../../backend/db/addDbEntry"));
|
||||
const updateUsersTableSchema_1 = __importDefault(require("../../backend/updateUsersTableSchema"));
|
||||
const varDatabaseDbHandler_1 = __importDefault(require("../../backend/varDatabaseDbHandler"));
|
||||
const dbHandler_1 = __importDefault(require("../../backend/dbHandler"));
|
||||
const hashPassword_1 = __importDefault(require("../../dsql/hashPassword"));
|
||||
const validate_email_1 = __importDefault(require("../../email/fns/validate-email"));
|
||||
/**
|
||||
* # API Create User
|
||||
*/
|
||||
function apiCreateUser(_a) {
|
||||
return __awaiter(this, arguments, void 0, function* ({ encryptionKey, payload, database, userId, }) {
|
||||
return __awaiter(this, arguments, void 0, function* ({ encryptionKey, payload, database, userId, verify, }) {
|
||||
var _b;
|
||||
const dbFullName = database;
|
||||
const API_USER_ID = userId || process.env.DSQL_API_USER_ID;
|
||||
const finalEncryptionKey = encryptionKey || process.env.DSQL_ENCRYPTION_PASSWORD;
|
||||
if (!finalEncryptionKey) {
|
||||
return {
|
||||
@@ -43,9 +41,10 @@ function apiCreateUser(_a) {
|
||||
payload: null,
|
||||
};
|
||||
}
|
||||
const targetDbSchema = (0, grab_required_database_schemas_1.findDbNameInSchemaDir)({
|
||||
dbName: dbFullName,
|
||||
const targetDbSchema = (0, grab_required_database_schemas_1.grabPrimaryRequiredDbSchema)({
|
||||
dbSlug: database,
|
||||
userId,
|
||||
dbId: userId ? undefined : 1,
|
||||
});
|
||||
if (!(targetDbSchema === null || targetDbSchema === void 0 ? void 0 : targetDbSchema.id)) {
|
||||
return {
|
||||
@@ -54,27 +53,35 @@ function apiCreateUser(_a) {
|
||||
payload: null,
|
||||
};
|
||||
}
|
||||
const dbFullName = targetDbSchema.dbFullName;
|
||||
if (!dbFullName) {
|
||||
return {
|
||||
success: false,
|
||||
msg: "dbFullName not found",
|
||||
payload: null,
|
||||
};
|
||||
}
|
||||
const hashedPassword = (0, hashPassword_1.default)({
|
||||
encryptionKey: finalEncryptionKey,
|
||||
password: String(payload.password),
|
||||
});
|
||||
payload.password = hashedPassword;
|
||||
const fieldsQuery = `SHOW COLUMNS FROM ${dbFullName}.users`;
|
||||
let fields = yield (0, varDatabaseDbHandler_1.default)({
|
||||
queryString: fieldsQuery,
|
||||
let fields = (yield (0, dbHandler_1.default)({
|
||||
query: fieldsQuery,
|
||||
database: dbFullName,
|
||||
});
|
||||
}));
|
||||
if (!(fields === null || fields === void 0 ? void 0 : fields[0])) {
|
||||
const newTable = yield (0, addUsersTableToDb_1.default)({
|
||||
userId: Number(API_USER_ID),
|
||||
userId,
|
||||
database: dbFullName,
|
||||
payload: payload,
|
||||
dbId: targetDbSchema.id,
|
||||
});
|
||||
fields = yield (0, varDatabaseDbHandler_1.default)({
|
||||
queryString: fieldsQuery,
|
||||
fields = (yield (0, dbHandler_1.default)({
|
||||
query: fieldsQuery,
|
||||
database: dbFullName,
|
||||
});
|
||||
}));
|
||||
}
|
||||
if (!(fields === null || fields === void 0 ? void 0 : fields[0])) {
|
||||
return {
|
||||
@@ -88,7 +95,7 @@ function apiCreateUser(_a) {
|
||||
const key = Object.keys(payload)[i];
|
||||
if (!fieldsTitles.includes(key)) {
|
||||
yield (0, updateUsersTableSchema_1.default)({
|
||||
userId: Number(API_USER_ID),
|
||||
userId,
|
||||
database: dbFullName,
|
||||
newPayload: {
|
||||
[key]: payload[key],
|
||||
@@ -107,11 +114,11 @@ function apiCreateUser(_a) {
|
||||
const existingUserValues = payload.username
|
||||
? [payload.email, payload.username]
|
||||
: [payload.email];
|
||||
const existingUser = yield (0, varDatabaseDbHandler_1.default)({
|
||||
queryString: existingUserQuery,
|
||||
queryValuesArray: existingUserValues,
|
||||
const existingUser = (yield (0, dbHandler_1.default)({
|
||||
query: existingUserQuery,
|
||||
values: existingUserValues,
|
||||
database: dbFullName,
|
||||
});
|
||||
}));
|
||||
if (existingUser === null || existingUser === void 0 ? void 0 : existingUser[0]) {
|
||||
return {
|
||||
success: false,
|
||||
@@ -132,14 +139,15 @@ function apiCreateUser(_a) {
|
||||
tableName: "users",
|
||||
data: Object.assign(Object.assign({}, payload), { image: process.env.DSQL_DEFAULT_USER_IMAGE ||
|
||||
"/images/user-preset.png", image_thumbnail: process.env.DSQL_DEFAULT_USER_IMAGE ||
|
||||
"/images/user-preset-thumbnail.png" }),
|
||||
"/images/user-preset-thumbnail.png", verification_status: verify ? 1 : 0 }),
|
||||
});
|
||||
if ((_b = addUser === null || addUser === void 0 ? void 0 : addUser.payload) === null || _b === void 0 ? void 0 : _b.insertId) {
|
||||
const newlyAddedUserQuery = `SELECT id,uuid,first_name,last_name,email,username,image,image_thumbnail,verification_status FROM ${dbFullName}.users WHERE id='${addUser.payload.insertId}'`;
|
||||
const newlyAddedUser = yield (0, varDatabaseDbHandler_1.default)({
|
||||
queryString: newlyAddedUserQuery,
|
||||
const newlyAddedUser = (yield (0, dbHandler_1.default)({
|
||||
query: newlyAddedUserQuery,
|
||||
values: [],
|
||||
database: dbFullName,
|
||||
});
|
||||
}));
|
||||
return {
|
||||
success: true,
|
||||
payload: newlyAddedUser[0],
|
||||
|
||||
@@ -14,7 +14,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
exports.default = apiDeleteUser;
|
||||
const deleteDbEntry_1 = __importDefault(require("../../backend/db/deleteDbEntry"));
|
||||
const varDatabaseDbHandler_1 = __importDefault(require("../../backend/varDatabaseDbHandler"));
|
||||
const dbHandler_1 = __importDefault(require("../../backend/dbHandler"));
|
||||
/**
|
||||
* # Update API User Function
|
||||
*/
|
||||
@@ -22,11 +22,11 @@ function apiDeleteUser(_a) {
|
||||
return __awaiter(this, arguments, void 0, function* ({ dbFullName, deletedUserId, }) {
|
||||
const existingUserQuery = `SELECT * FROM ${dbFullName}.users WHERE id = ?`;
|
||||
const existingUserValues = [deletedUserId];
|
||||
const existingUser = yield (0, varDatabaseDbHandler_1.default)({
|
||||
queryString: existingUserQuery,
|
||||
queryValuesArray: existingUserValues,
|
||||
const existingUser = (yield (0, dbHandler_1.default)({
|
||||
query: existingUserQuery,
|
||||
values: existingUserValues,
|
||||
database: dbFullName,
|
||||
});
|
||||
}));
|
||||
if (!(existingUser === null || existingUser === void 0 ? void 0 : existingUser[0])) {
|
||||
return {
|
||||
success: false,
|
||||
|
||||
+5
-5
@@ -13,7 +13,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
||||
};
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
exports.default = apiGetUser;
|
||||
const varDatabaseDbHandler_1 = __importDefault(require("../../backend/varDatabaseDbHandler"));
|
||||
const dbHandler_1 = __importDefault(require("../../backend/dbHandler"));
|
||||
/**
|
||||
* # API Get User
|
||||
*/
|
||||
@@ -22,11 +22,11 @@ function apiGetUser(_a) {
|
||||
const finalDbName = dbFullName.replace(/[^a-z0-9_]/g, "");
|
||||
const query = `SELECT ${fields.join(",")} FROM ${finalDbName}.users WHERE id=?`;
|
||||
const API_USER_ID = userId || process.env.DSQL_API_USER_ID;
|
||||
let foundUser = yield (0, varDatabaseDbHandler_1.default)({
|
||||
queryString: query,
|
||||
queryValuesArray: [API_USER_ID],
|
||||
let foundUser = (yield (0, dbHandler_1.default)({
|
||||
query,
|
||||
values: [API_USER_ID],
|
||||
database: finalDbName,
|
||||
});
|
||||
}));
|
||||
if (!foundUser || !foundUser[0]) {
|
||||
return {
|
||||
success: false,
|
||||
|
||||
+8
-10
@@ -14,7 +14,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
exports.default = apiLoginUser;
|
||||
const grab_db_full_name_1 = __importDefault(require("../../../utils/grab-db-full-name"));
|
||||
const varDatabaseDbHandler_1 = __importDefault(require("../../backend/varDatabaseDbHandler"));
|
||||
const dbHandler_1 = __importDefault(require("../../backend/dbHandler"));
|
||||
const hashPassword_1 = __importDefault(require("../../dsql/hashPassword"));
|
||||
/**
|
||||
* # API Login
|
||||
@@ -29,7 +29,6 @@ function apiLoginUser(_a) {
|
||||
msg: `Database Full Name couldn't be grabbed`,
|
||||
};
|
||||
}
|
||||
const dbAppend = global.DSQL_USE_LOCAL ? "" : `${dbFullName}.`;
|
||||
/**
|
||||
* Check input validity
|
||||
*
|
||||
@@ -58,12 +57,11 @@ function apiLoginUser(_a) {
|
||||
console.log("apiLoginUser:database:", dbFullName);
|
||||
console.log("apiLoginUser:Finding User ...");
|
||||
}
|
||||
let foundUser = yield (0, varDatabaseDbHandler_1.default)({
|
||||
queryString: `SELECT * FROM ${dbAppend}users WHERE email = ? OR username = ?`,
|
||||
queryValuesArray: [email, username],
|
||||
let foundUser = (yield (0, dbHandler_1.default)({
|
||||
query: `SELECT * FROM users WHERE email = ? OR username = ?`,
|
||||
values: [email, username],
|
||||
database: dbFullName,
|
||||
debug,
|
||||
});
|
||||
}));
|
||||
if (debug) {
|
||||
console.log("apiLoginUser:foundUser:", foundUser);
|
||||
}
|
||||
@@ -119,9 +117,9 @@ function apiLoginUser(_a) {
|
||||
console.log("apiLoginUser:email_login:", email_login);
|
||||
}
|
||||
if (isPasswordCorrect && email_login) {
|
||||
const resetTempCode = yield (0, varDatabaseDbHandler_1.default)({
|
||||
queryString: `UPDATE ${dbAppend}users SET ${email_login_field} = '' WHERE email = ? OR username = ?`,
|
||||
queryValuesArray: [email, username],
|
||||
yield (0, dbHandler_1.default)({
|
||||
query: `UPDATE users SET ${email_login_field} = '' WHERE email = ? OR username = ?`,
|
||||
values: [email, username],
|
||||
database: dbFullName,
|
||||
});
|
||||
}
|
||||
|
||||
+5
-10
@@ -13,23 +13,18 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
||||
};
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
exports.default = apiReauthUser;
|
||||
const varDatabaseDbHandler_1 = __importDefault(require("../../backend/varDatabaseDbHandler"));
|
||||
const dbHandler_1 = __importDefault(require("../../backend/dbHandler"));
|
||||
/**
|
||||
* # Re-authenticate API user
|
||||
*/
|
||||
function apiReauthUser(_a) {
|
||||
return __awaiter(this, arguments, void 0, function* ({ existingUser, database, additionalFields, }) {
|
||||
const dbAppend = global.DSQL_USE_LOCAL
|
||||
? ""
|
||||
: database
|
||||
? `${database}.`
|
||||
: "";
|
||||
let foundUser = (existingUser === null || existingUser === void 0 ? void 0 : existingUser.id) && existingUser.id.toString().match(/./)
|
||||
? yield (0, varDatabaseDbHandler_1.default)({
|
||||
queryString: `SELECT * FROM ${dbAppend}users WHERE id=?`,
|
||||
queryValuesArray: [existingUser.id.toString()],
|
||||
? (yield (0, dbHandler_1.default)({
|
||||
query: `SELECT * FROM users WHERE id=?`,
|
||||
values: [existingUser.id.toString()],
|
||||
database,
|
||||
})
|
||||
}))
|
||||
: null;
|
||||
if (!foundUser || !foundUser[0])
|
||||
return {
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
import http from "http";
|
||||
import { SendOneTimeCodeEmailResponse } from "../../../types";
|
||||
import { CookieObject, SendOneTimeCodeEmailResponse } from "../../../types";
|
||||
type Param = {
|
||||
email: string;
|
||||
database: string;
|
||||
@@ -13,7 +13,7 @@ type Param = {
|
||||
response?: http.ServerResponse & {
|
||||
[s: string]: any;
|
||||
};
|
||||
extraCookies?: import("../../../../package-shared/types").CookieObject[];
|
||||
extraCookies?: CookieObject[];
|
||||
};
|
||||
/**
|
||||
* # Send Email Login Code
|
||||
|
||||
@@ -13,7 +13,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
||||
};
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
exports.default = apiSendEmailCode;
|
||||
const varDatabaseDbHandler_1 = __importDefault(require("../../backend/varDatabaseDbHandler"));
|
||||
const dbHandler_1 = __importDefault(require("../../backend/dbHandler"));
|
||||
const nodemailer_1 = __importDefault(require("nodemailer"));
|
||||
const get_auth_cookie_names_1 = __importDefault(require("../../backend/cookies/get-auth-cookie-names"));
|
||||
const encrypt_1 = __importDefault(require("../../dsql/encrypt"));
|
||||
@@ -32,14 +32,11 @@ function apiSendEmailCode(_a) {
|
||||
const createdAt = Date.now();
|
||||
const foundUserQuery = `SELECT * FROM ${database}.users WHERE email = ?`;
|
||||
const foundUserValues = [email];
|
||||
let foundUser = yield (0, varDatabaseDbHandler_1.default)({
|
||||
queryString: foundUserQuery,
|
||||
queryValuesArray: foundUserValues,
|
||||
let foundUser = (yield (0, dbHandler_1.default)({
|
||||
query: foundUserQuery,
|
||||
values: foundUserValues,
|
||||
database,
|
||||
});
|
||||
////////////////////////////////////////
|
||||
////////////////////////////////////////
|
||||
////////////////////////////////////////
|
||||
}));
|
||||
if (!foundUser || !foundUser[0]) {
|
||||
return {
|
||||
success: false,
|
||||
@@ -80,12 +77,11 @@ function apiSendEmailCode(_a) {
|
||||
throw new Error("Mail not Sent!");
|
||||
const setTempCodeQuery = `UPDATE ${database}.users SET ${email_login_field} = ? WHERE email = ?`;
|
||||
const setTempCodeValues = [tempCode + `-${createdAt}`, email];
|
||||
let setTempCode = yield (0, varDatabaseDbHandler_1.default)({
|
||||
queryString: setTempCodeQuery,
|
||||
queryValuesArray: setTempCodeValues,
|
||||
yield (0, dbHandler_1.default)({
|
||||
query: setTempCodeQuery,
|
||||
values: setTempCodeValues,
|
||||
database,
|
||||
});
|
||||
/** @type {import("../../../types").SendOneTimeCodeEmailResponse} */
|
||||
const resObject = {
|
||||
success: true,
|
||||
code: tempCode,
|
||||
@@ -102,7 +98,6 @@ function apiSendEmailCode(_a) {
|
||||
if (!encryptedPayload) {
|
||||
throw new Error("apiSendEmailCode Error: Failed to encrypt payload");
|
||||
}
|
||||
/** @type {import("../../../../package-shared/types").CookieObject} */
|
||||
const oneTimeCookieObject = {
|
||||
name: oneTimeCodeCookieName,
|
||||
value: encryptedPayload,
|
||||
@@ -111,7 +106,6 @@ function apiSendEmailCode(_a) {
|
||||
httpOnly: true,
|
||||
secure: true,
|
||||
};
|
||||
/** @type {import("../../../../package-shared/types").CookieObject[]} */
|
||||
const cookiesObjectArray = extraCookies
|
||||
? [...extraCookies, oneTimeCookieObject]
|
||||
: [oneTimeCookieObject];
|
||||
|
||||
@@ -17,7 +17,7 @@ exports.default = apiUpdateUser;
|
||||
const updateDbEntry_1 = __importDefault(require("../../backend/db/updateDbEntry"));
|
||||
const encrypt_1 = __importDefault(require("../../dsql/encrypt"));
|
||||
const hashPassword_1 = __importDefault(require("../../dsql/hashPassword"));
|
||||
const varDatabaseDbHandler_1 = __importDefault(require("../../backend/varDatabaseDbHandler"));
|
||||
const dbHandler_1 = __importDefault(require("../../backend/dbHandler"));
|
||||
/**
|
||||
* # Update API User Function
|
||||
*/
|
||||
@@ -25,11 +25,11 @@ function apiUpdateUser(_a) {
|
||||
return __awaiter(this, arguments, void 0, function* ({ payload, dbFullName, updatedUserId, dbSchema, }) {
|
||||
const existingUserQuery = `SELECT * FROM ${dbFullName}.users WHERE id = ?`;
|
||||
const existingUserValues = [updatedUserId];
|
||||
const existingUser = yield (0, varDatabaseDbHandler_1.default)({
|
||||
queryString: existingUserQuery,
|
||||
queryValuesArray: existingUserValues,
|
||||
const existingUser = (yield (0, dbHandler_1.default)({
|
||||
query: existingUserQuery,
|
||||
values: existingUserValues,
|
||||
database: dbFullName,
|
||||
});
|
||||
}));
|
||||
if (!(existingUser === null || existingUser === void 0 ? void 0 : existingUser[0])) {
|
||||
return {
|
||||
success: false,
|
||||
|
||||
+5
-6
@@ -14,7 +14,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
exports.default = apiSendResetPasswordLink;
|
||||
const grab_db_full_name_1 = __importDefault(require("../../../../utils/grab-db-full-name"));
|
||||
const varDatabaseDbHandler_1 = __importDefault(require("../../../backend/varDatabaseDbHandler"));
|
||||
const dbHandler_1 = __importDefault(require("../../../backend/dbHandler"));
|
||||
/**
|
||||
* # API Login
|
||||
*/
|
||||
@@ -33,12 +33,11 @@ function apiSendResetPasswordLink(_a) {
|
||||
msg: "Invalid Email/Password format",
|
||||
};
|
||||
}
|
||||
let foundUser = yield (0, varDatabaseDbHandler_1.default)({
|
||||
queryString: `SELECT * FROM ${dbFullName}.users WHERE email = ? OR username = ?`,
|
||||
queryValuesArray: [email, email],
|
||||
let foundUser = (yield (0, dbHandler_1.default)({
|
||||
query: `SELECT * FROM ${dbFullName}.users WHERE email = ? OR username = ?`,
|
||||
values: [email, email],
|
||||
database: dbFullName,
|
||||
debug,
|
||||
});
|
||||
}));
|
||||
if (debug) {
|
||||
console.log("apiSendResetPassword:foundUser:", foundUser);
|
||||
}
|
||||
|
||||
+25
-13
@@ -14,9 +14,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
exports.default = addAdminUserOnLogin;
|
||||
const serverError_1 = __importDefault(require("./serverError"));
|
||||
const DB_HANDLER_1 = __importDefault(require("../../utils/backend/global-db/DB_HANDLER"));
|
||||
const addDbEntry_1 = __importDefault(require("./db/addDbEntry"));
|
||||
const LOCAL_DB_HANDLER_1 = __importDefault(require("../../utils/backend/global-db/LOCAL_DB_HANDLER"));
|
||||
const dbHandler_1 = __importDefault(require("./dbHandler"));
|
||||
/**
|
||||
* Add Admin User on Login
|
||||
* ==============================================================================
|
||||
@@ -27,15 +26,14 @@ const LOCAL_DB_HANDLER_1 = __importDefault(require("../../utils/backend/global-d
|
||||
*/
|
||||
function addAdminUserOnLogin(_a) {
|
||||
return __awaiter(this, arguments, void 0, function* ({ query, user, }) {
|
||||
var _b;
|
||||
try {
|
||||
const finalDbHandler = global.DSQL_USE_LOCAL
|
||||
? LOCAL_DB_HANDLER_1.default
|
||||
: DB_HANDLER_1.default;
|
||||
const { invite, database_access, priviledge, email } = query;
|
||||
const lastInviteTimeQuery = `SELECT date_created_code FROM invitations WHERE inviting_user_id=? AND invited_user_email=?`;
|
||||
const lastInviteTimeValues = [invite, email];
|
||||
const lastInviteTimeArray = yield finalDbHandler(lastInviteTimeQuery, lastInviteTimeValues);
|
||||
const lastInviteTimeArray = (yield (0, dbHandler_1.default)({
|
||||
query: lastInviteTimeQuery,
|
||||
values: lastInviteTimeValues,
|
||||
}));
|
||||
if (!lastInviteTimeArray || !lastInviteTimeArray[0]) {
|
||||
throw new Error("No Invitation Found");
|
||||
}
|
||||
@@ -44,9 +42,15 @@ function addAdminUserOnLogin(_a) {
|
||||
////////////////////////////////////////////////
|
||||
const invitingUserDbQuery = `SELECT first_name,last_name,email FROM users WHERE id=?`;
|
||||
const invitingUserDbValues = [invite];
|
||||
const invitingUserDb = yield finalDbHandler(invitingUserDbQuery, invitingUserDbValues);
|
||||
const invitingUserDb = (yield (0, dbHandler_1.default)({
|
||||
query: invitingUserDbQuery,
|
||||
values: invitingUserDbValues,
|
||||
}));
|
||||
if (invitingUserDb === null || invitingUserDb === void 0 ? void 0 : invitingUserDb[0]) {
|
||||
const existingUserUser = yield finalDbHandler(`SELECT email FROM user_users WHERE user_id=? AND invited_user_id=? AND user_type='admin' AND email=?`, [invite, user.id, email]);
|
||||
const existingUserUser = (yield (0, dbHandler_1.default)({
|
||||
query: `SELECT email FROM user_users WHERE user_id=? AND invited_user_id=? AND user_type='admin' AND email=?`,
|
||||
values: [invite, user.id, email],
|
||||
}));
|
||||
if (existingUserUser === null || existingUserUser === void 0 ? void 0 : existingUserUser[0]) {
|
||||
console.log("User already added");
|
||||
}
|
||||
@@ -72,8 +76,14 @@ function addAdminUserOnLogin(_a) {
|
||||
////////////////////////////////////////////////
|
||||
////////////////////////////////////////////////
|
||||
////////////////////////////////////////////////
|
||||
const dbTableData = yield finalDbHandler(`SELECT db_tables_data FROM invitations WHERE inviting_user_id=? AND invited_user_email=?`, [invite, email]);
|
||||
const clearEntries = yield finalDbHandler(`DELETE FROM delegated_user_tables WHERE root_user_id=? AND delegated_user_id=?`, [invite, user.id]);
|
||||
const dbTableData = (yield (0, dbHandler_1.default)({
|
||||
query: `SELECT db_tables_data FROM invitations WHERE inviting_user_id=? AND invited_user_email=?`,
|
||||
values: [invite, email],
|
||||
}));
|
||||
const clearEntries = (yield (0, dbHandler_1.default)({
|
||||
query: `DELETE FROM delegated_user_tables WHERE root_user_id=? AND delegated_user_id=?`,
|
||||
values: [invite, user.id],
|
||||
}));
|
||||
////////////////////////////////////////////////
|
||||
////////////////////////////////////////////////
|
||||
////////////////////////////////////////////////
|
||||
@@ -97,11 +107,13 @@ function addAdminUserOnLogin(_a) {
|
||||
}
|
||||
}
|
||||
}
|
||||
const inviteAccepted = yield finalDbHandler(`UPDATE invitations SET invitation_status='Accepted' WHERE inviting_user_id=? AND invited_user_email=?`, [invite, email]);
|
||||
const inviteAccepted = (yield (0, dbHandler_1.default)({
|
||||
query: `UPDATE invitations SET invitation_status='Accepted' WHERE inviting_user_id=? AND invited_user_email=?`,
|
||||
values: [invite, email],
|
||||
}));
|
||||
}
|
||||
}
|
||||
catch (error) {
|
||||
(_b = global.ERROR_CALLBACK) === null || _b === void 0 ? void 0 : _b.call(global, `Add Admin User On Login Error`, error);
|
||||
(0, serverError_1.default)({
|
||||
component: "addAdminUserOnLogin",
|
||||
message: error.message,
|
||||
|
||||
+8
-12
@@ -14,12 +14,10 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
exports.default = addMariadbUser;
|
||||
const generate_password_1 = __importDefault(require("generate-password"));
|
||||
const DB_HANDLER_1 = __importDefault(require("../../utils/backend/global-db/DB_HANDLER"));
|
||||
const NO_DB_HANDLER_1 = __importDefault(require("../../utils/backend/global-db/NO_DB_HANDLER"));
|
||||
const addDbEntry_1 = __importDefault(require("./db/addDbEntry"));
|
||||
const encrypt_1 = __importDefault(require("../dsql/encrypt"));
|
||||
const LOCAL_DB_HANDLER_1 = __importDefault(require("../../utils/backend/global-db/LOCAL_DB_HANDLER"));
|
||||
const grab_sql_key_name_1 = __importDefault(require("../../utils/grab-sql-key-name"));
|
||||
const dbHandler_1 = __importDefault(require("./dbHandler"));
|
||||
/**
|
||||
* # Add Mariadb User
|
||||
*/
|
||||
@@ -37,17 +35,15 @@ function addMariadbUser(_a) {
|
||||
});
|
||||
const encryptedPassword = (0, encrypt_1.default)({ data: password });
|
||||
const createMariadbUsersQuery = `CREATE USER IF NOT EXISTS '${username}'@'127.0.0.1' IDENTIFIED BY '${password}'`;
|
||||
if (global.DSQL_USE_LOCAL) {
|
||||
yield (0, LOCAL_DB_HANDLER_1.default)(createMariadbUsersQuery);
|
||||
}
|
||||
else {
|
||||
yield (0, NO_DB_HANDLER_1.default)(createMariadbUsersQuery);
|
||||
}
|
||||
yield (0, dbHandler_1.default)({
|
||||
query: createMariadbUsersQuery,
|
||||
});
|
||||
const updateUserQuery = `UPDATE users SET mariadb_user = ?, mariadb_host = '127.0.0.1', mariadb_pass = ? WHERE id = ?`;
|
||||
const updateUserValues = [username, encryptedPassword, userId];
|
||||
const updateUser = global.DSQL_USE_LOCAL
|
||||
? yield (0, LOCAL_DB_HANDLER_1.default)(updateUserQuery, updateUserValues)
|
||||
: yield (0, DB_HANDLER_1.default)(updateUserQuery, updateUserValues);
|
||||
yield (0, dbHandler_1.default)({
|
||||
query: updateUserQuery,
|
||||
values: updateUserValues,
|
||||
});
|
||||
const addMariadbUser = yield (0, addDbEntry_1.default)({
|
||||
tableName: "mariadb_users",
|
||||
data: {
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
type Param = {
|
||||
userId: number;
|
||||
userId?: number | string;
|
||||
database: string;
|
||||
payload?: {
|
||||
[s: string]: any;
|
||||
|
||||
@@ -14,12 +14,11 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
exports.default = addUsersTableToDb;
|
||||
const serverError_1 = __importDefault(require("./serverError"));
|
||||
const DB_HANDLER_1 = __importDefault(require("../../utils/backend/global-db/DB_HANDLER"));
|
||||
const addDbEntry_1 = __importDefault(require("./db/addDbEntry"));
|
||||
const createDbFromSchema_1 = __importDefault(require("../../shell/createDbFromSchema"));
|
||||
const LOCAL_DB_HANDLER_1 = __importDefault(require("../../utils/backend/global-db/LOCAL_DB_HANDLER"));
|
||||
const grabNewUsersTableSchema_1 = __importDefault(require("./grabNewUsersTableSchema"));
|
||||
const grab_required_database_schemas_1 = require("../../shell/createDbFromSchema/grab-required-database-schemas");
|
||||
const dbHandler_1 = __importDefault(require("./dbHandler"));
|
||||
/**
|
||||
* # Add User Table to Database
|
||||
*/
|
||||
@@ -45,9 +44,10 @@ function addUsersTableToDb(_a) {
|
||||
targetDatabase.tables.push(userPreset);
|
||||
}
|
||||
(0, grab_required_database_schemas_1.writeUpdatedDbSchema)({ dbSchema: targetDatabase, userId });
|
||||
const targetDb = global.DSQL_USE_LOCAL
|
||||
? yield (0, LOCAL_DB_HANDLER_1.default)(`SELECT id FROM user_databases WHERE user_id=? AND db_slug=?`, [userId, database])
|
||||
: yield (0, DB_HANDLER_1.default)(`SELECT id FROM user_databases WHERE user_id=? AND db_slug=?`, [userId, database]);
|
||||
const targetDb = (yield (0, dbHandler_1.default)({
|
||||
query: `SELECT id FROM user_databases WHERE user_id=? AND db_slug=?`,
|
||||
values: [userId, database],
|
||||
}));
|
||||
if (targetDb === null || targetDb === void 0 ? void 0 : targetDb[0]) {
|
||||
const newTableEntry = yield (0, addDbEntry_1.default)({
|
||||
dbFullName: "datasquirel",
|
||||
|
||||
@@ -21,7 +21,6 @@ const grabAuthDirs = () => {
|
||||
};
|
||||
exports.grabAuthDirs = grabAuthDirs;
|
||||
const initAuthFiles = () => {
|
||||
var _a;
|
||||
try {
|
||||
const authDirs = (0, exports.grabAuthDirs)();
|
||||
if (!fs_1.default.existsSync(authDirs.root))
|
||||
@@ -32,7 +31,6 @@ const initAuthFiles = () => {
|
||||
}
|
||||
catch (error) {
|
||||
console.log(`Error initializing Auth Files: ${error.message}`);
|
||||
(_a = global.ERROR_CALLBACK) === null || _a === void 0 ? void 0 : _a.call(global, `Error Initializing Auth Files`, error);
|
||||
return false;
|
||||
}
|
||||
};
|
||||
|
||||
+12
-10
@@ -13,7 +13,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
||||
};
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
exports.default = createDbSchemaFromDb;
|
||||
const varDatabaseDbHandler_1 = __importDefault(require("../../functions/backend/varDatabaseDbHandler"));
|
||||
const dbHandler_1 = __importDefault(require("../../functions/backend/dbHandler"));
|
||||
const addDbEntry_1 = __importDefault(require("../../functions/backend/db/addDbEntry"));
|
||||
const slugToCamelTitle_1 = __importDefault(require("../../shell/utils/slugToCamelTitle"));
|
||||
const grab_dsql_schema_index_comment_1 = __importDefault(require("../../shell/utils/grab-dsql-schema-index-comment"));
|
||||
@@ -35,10 +35,10 @@ function createDbSchemaFromDb(_a) {
|
||||
});
|
||||
if (!targetDb)
|
||||
throw new Error(`Target Db not found!`);
|
||||
const existingTables = yield (0, varDatabaseDbHandler_1.default)({
|
||||
const existingTables = (yield (0, dbHandler_1.default)({
|
||||
database: database.db_full_name,
|
||||
queryString: `SHOW TABLES FROM ${database.db_full_name}`,
|
||||
});
|
||||
query: `SHOW TABLES FROM ${database.db_full_name}`,
|
||||
}));
|
||||
if (!existingTables)
|
||||
throw new Error("No Existing Tables");
|
||||
for (let i = 0; i < existingTables.length; i++) {
|
||||
@@ -60,10 +60,10 @@ function createDbSchemaFromDb(_a) {
|
||||
fields: [],
|
||||
indexes: [],
|
||||
};
|
||||
const tableColumns = yield (0, varDatabaseDbHandler_1.default)({
|
||||
const tableColumns = (yield (0, dbHandler_1.default)({
|
||||
database: database.db_full_name,
|
||||
queryString: `SHOW COLUMNS FROM ${database.db_full_name}.${tableName}`,
|
||||
});
|
||||
query: `SHOW COLUMNS FROM ${database.db_full_name}.${tableName}`,
|
||||
}));
|
||||
if (tableColumns) {
|
||||
for (let k = 0; k < tableColumns.length; k++) {
|
||||
const tableColumn = tableColumns[k];
|
||||
@@ -88,10 +88,10 @@ function createDbSchemaFromDb(_a) {
|
||||
tableObject.fields.push(fieldObject);
|
||||
}
|
||||
}
|
||||
const tableIndexes = yield (0, varDatabaseDbHandler_1.default)({
|
||||
const tableIndexes = (yield (0, dbHandler_1.default)({
|
||||
database: database.db_full_name,
|
||||
queryString: `SHOW INDEXES FROM ${database.db_full_name}.${tableName}`,
|
||||
});
|
||||
query: `SHOW INDEXES FROM ${database.db_full_name}.${tableName}`,
|
||||
}));
|
||||
if (tableIndexes) {
|
||||
for (let m = 0; m < tableIndexes.length; m++) {
|
||||
const indexObject = tableIndexes[m];
|
||||
@@ -106,6 +106,8 @@ function createDbSchemaFromDb(_a) {
|
||||
indexTableFields: [],
|
||||
};
|
||||
const targetTableFieldObject = tableColumns === null || tableColumns === void 0 ? void 0 : tableColumns.filter((col) => col.Field === Column_name)[0];
|
||||
if (!targetTableFieldObject)
|
||||
continue;
|
||||
const existingIndexField = (_e = tableObject.indexes) === null || _e === void 0 ? void 0 : _e.filter((indx) => indx.indexName == Key_name);
|
||||
if (existingIndexField && existingIndexField[0]) {
|
||||
(_f = existingIndexField[0].indexTableFields) === null || _f === void 0 ? void 0 : _f.push({
|
||||
|
||||
+6
-11
@@ -37,12 +37,6 @@ function addDbEntry(_a) {
|
||||
label: "isMaster",
|
||||
});
|
||||
}
|
||||
const DB_CONN = isMaster
|
||||
? global.DSQL_DB_CONN
|
||||
: global.DSQL_FULL_ACCESS_DB_CONN || global.DSQL_DB_CONN;
|
||||
const DB_RO_CONN = isMaster
|
||||
? global.DSQL_DB_CONN
|
||||
: global.DSQL_READ_ONLY_DB_CONN || global.DSQL_DB_CONN;
|
||||
let newData = lodash_1.default.cloneDeep(data);
|
||||
if (newData) {
|
||||
newData = (0, purge_default_fields_1.default)(newData);
|
||||
@@ -55,7 +49,9 @@ function addDbEntry(_a) {
|
||||
typeof duplicateColumnName === "string" &&
|
||||
newData) {
|
||||
const checkDuplicateQuery = `SELECT * FROM ${isMaster ? "" : `\`${dbFullName}\`.`}\`${tableName}\` WHERE \`${duplicateColumnName}\`=?`;
|
||||
const duplicateValue = yield (0, conn_db_handler_1.default)(DB_RO_CONN, checkDuplicateQuery, [duplicateColumnValue]);
|
||||
const duplicateValue = yield (0, conn_db_handler_1.default)(null, checkDuplicateQuery, [
|
||||
duplicateColumnValue,
|
||||
]);
|
||||
if ((duplicateValue === null || duplicateValue === void 0 ? void 0 : duplicateValue[0]) && !update) {
|
||||
return {
|
||||
success: false,
|
||||
@@ -78,7 +74,7 @@ function addDbEntry(_a) {
|
||||
}
|
||||
}
|
||||
function generateQuery(data) {
|
||||
var _a, _b, _c;
|
||||
var _a, _b;
|
||||
const dataKeys = Object.keys(data);
|
||||
let insertKeysArray = [];
|
||||
let insertValuesArray = [];
|
||||
@@ -131,7 +127,6 @@ function addDbEntry(_a) {
|
||||
}
|
||||
catch (error) {
|
||||
console.log("DSQL: Error in parsing data keys =>", error.message);
|
||||
(_c = global.ERROR_CALLBACK) === null || _c === void 0 ? void 0 : _c.call(global, `Error parsing Data Keys`, error);
|
||||
continue;
|
||||
}
|
||||
}
|
||||
@@ -149,7 +144,7 @@ function addDbEntry(_a) {
|
||||
if (newData) {
|
||||
const { insertKeysArray, insertValuesArray, queryValuesArray } = generateQuery(newData);
|
||||
const query = `INSERT INTO ${isMaster && !dbFullName ? "" : `\`${dbFullName}\`.`}\`${tableName}\` (${insertKeysArray.join(",")}) VALUES (${insertValuesArray.map(() => "?").join(",")})`;
|
||||
const newInsert = yield (0, conn_db_handler_1.default)(DB_CONN, query, queryValuesArray, debug);
|
||||
const newInsert = yield (0, conn_db_handler_1.default)(null, query, queryValuesArray, debug);
|
||||
return {
|
||||
success: Boolean(newInsert === null || newInsert === void 0 ? void 0 : newInsert.insertId),
|
||||
payload: newInsert,
|
||||
@@ -177,7 +172,7 @@ function addDbEntry(_a) {
|
||||
.join(",")}`;
|
||||
console.log("query", query);
|
||||
console.log("batchQueryValuesArray", batchQueryValuesArray);
|
||||
const newInsert = yield (0, conn_db_handler_1.default)(DB_CONN, query, batchQueryValuesArray.flat(), debug);
|
||||
const newInsert = yield (0, conn_db_handler_1.default)(null, query, batchQueryValuesArray.flat(), debug);
|
||||
if (debug) {
|
||||
(0, debug_log_1.default)({
|
||||
log: newInsert,
|
||||
|
||||
@@ -21,21 +21,17 @@ const conn_db_handler_1 = __importDefault(require("../../../utils/db/conn-db-han
|
||||
*/
|
||||
function deleteDbEntry(_a) {
|
||||
return __awaiter(this, arguments, void 0, function* ({ dbContext, dbFullName, tableName, identifierColumnName, identifierValue, forceLocal, }) {
|
||||
var _b;
|
||||
try {
|
||||
const isMaster = forceLocal
|
||||
? true
|
||||
: (0, check_if_is_master_1.default)({ dbContext, dbFullName });
|
||||
const DB_CONN = isMaster
|
||||
? global.DSQL_DB_CONN
|
||||
: global.DSQL_FULL_ACCESS_DB_CONN || global.DSQL_DB_CONN;
|
||||
/**
|
||||
* Execution
|
||||
*
|
||||
* @description
|
||||
*/
|
||||
const query = `DELETE FROM ${isMaster && !dbFullName ? "" : `\`${dbFullName}\`.`}\`${tableName}\` WHERE \`${identifierColumnName.toString()}\`=?`;
|
||||
const deletedEntry = yield (0, conn_db_handler_1.default)(DB_CONN, query, [
|
||||
const deletedEntry = yield (0, conn_db_handler_1.default)(null, query, [
|
||||
identifierValue,
|
||||
]);
|
||||
/**
|
||||
@@ -44,7 +40,7 @@ function deleteDbEntry(_a) {
|
||||
return deletedEntry;
|
||||
}
|
||||
catch (error) {
|
||||
(_b = global.ERROR_CALLBACK) === null || _b === void 0 ? void 0 : _b.call(global, `Error Deleting Entry`, error);
|
||||
console.log("Error Deleting Entry =>", error.message);
|
||||
return null;
|
||||
}
|
||||
});
|
||||
|
||||
+1
-2
@@ -8,7 +8,6 @@ type Param = {
|
||||
dbSchema?: import("../../../types").DSQL_DatabaseSchemaType;
|
||||
queryValuesArray?: (string | number)[];
|
||||
tableName?: string;
|
||||
forceLocal?: boolean;
|
||||
};
|
||||
type Return = {
|
||||
result: any;
|
||||
@@ -17,5 +16,5 @@ type Return = {
|
||||
/**
|
||||
* # Run DSQL users queries
|
||||
*/
|
||||
export default function runQuery({ dbFullName, query, readOnly, dbSchema, queryValuesArray, tableName, debug, dbContext, forceLocal, }: Param): Promise<Return>;
|
||||
export default function runQuery({ dbFullName, query, readOnly, dbSchema, queryValuesArray, tableName, debug, dbContext, }: Param): Promise<Return>;
|
||||
export {};
|
||||
|
||||
+7
-10
@@ -15,7 +15,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
||||
exports.DbContextsArray = void 0;
|
||||
exports.default = runQuery;
|
||||
const fullAccessDbHandler_1 = __importDefault(require("../fullAccessDbHandler"));
|
||||
const varReadOnlyDatabaseDbHandler_1 = __importDefault(require("../varReadOnlyDatabaseDbHandler"));
|
||||
const dbHandler_1 = __importDefault(require("../dbHandler"));
|
||||
const serverError_1 = __importDefault(require("../serverError"));
|
||||
const addDbEntry_1 = __importDefault(require("./addDbEntry"));
|
||||
const updateDbEntry_1 = __importDefault(require("./updateDbEntry"));
|
||||
@@ -26,7 +26,7 @@ exports.DbContextsArray = ["Master", "Dsql User"];
|
||||
* # Run DSQL users queries
|
||||
*/
|
||||
function runQuery(_a) {
|
||||
return __awaiter(this, arguments, void 0, function* ({ dbFullName, query, readOnly, dbSchema, queryValuesArray, tableName, debug, dbContext, forceLocal, }) {
|
||||
return __awaiter(this, arguments, void 0, function* ({ dbFullName, query, readOnly, dbSchema, queryValuesArray, tableName, debug, dbContext, }) {
|
||||
/**
|
||||
* Declare variables
|
||||
*
|
||||
@@ -60,7 +60,7 @@ function runQuery(_a) {
|
||||
try {
|
||||
if (typeof query === "string") {
|
||||
const formattedQuery = (0, trim_sql_1.default)(query);
|
||||
if (debug && global.DSQL_USE_LOCAL) {
|
||||
if (debug) {
|
||||
console.log("runQuery:formattedQuery", formattedQuery);
|
||||
}
|
||||
/**
|
||||
@@ -72,11 +72,9 @@ function runQuery(_a) {
|
||||
throw new Error("Wrong Input!");
|
||||
}
|
||||
if (readOnly) {
|
||||
result = yield (0, varReadOnlyDatabaseDbHandler_1.default)({
|
||||
queryString: formattedQuery,
|
||||
queryValuesArray: queryValuesArray === null || queryValuesArray === void 0 ? void 0 : queryValuesArray.map((vl) => String(vl)),
|
||||
tableSchema,
|
||||
forceLocal,
|
||||
result = yield (0, dbHandler_1.default)({
|
||||
query: formattedQuery,
|
||||
values: queryValuesArray === null || queryValuesArray === void 0 ? void 0 : queryValuesArray.map((vl) => String(vl)),
|
||||
});
|
||||
}
|
||||
else {
|
||||
@@ -84,7 +82,6 @@ function runQuery(_a) {
|
||||
queryString: formattedQuery,
|
||||
queryValuesArray: queryValuesArray === null || queryValuesArray === void 0 ? void 0 : queryValuesArray.map((vl) => String(vl)),
|
||||
tableSchema,
|
||||
forceLocal,
|
||||
});
|
||||
}
|
||||
}
|
||||
@@ -144,7 +141,7 @@ function runQuery(_a) {
|
||||
component: "functions/backend/runQuery",
|
||||
message: err.message,
|
||||
});
|
||||
if (debug && global.DSQL_USE_LOCAL) {
|
||||
if (debug) {
|
||||
console.log("runQuery:error", err.message);
|
||||
}
|
||||
result = null;
|
||||
|
||||
@@ -40,9 +40,6 @@ function updateDbEntry(_a) {
|
||||
const isMaster = forceLocal
|
||||
? true
|
||||
: (0, check_if_is_master_1.default)({ dbContext, dbFullName });
|
||||
const DB_CONN = isMaster
|
||||
? global.DSQL_DB_CONN
|
||||
: global.DSQL_FULL_ACCESS_DB_CONN || global.DSQL_DB_CONN;
|
||||
////////////////////////////////////////
|
||||
////////////////////////////////////////
|
||||
////////////////////////////////////////
|
||||
@@ -128,7 +125,7 @@ function updateDbEntry(_a) {
|
||||
////////////////////////////////////////
|
||||
const query = `UPDATE ${isMaster && !dbFullName ? "" : `\`${dbFullName}\`.`}\`${tableName}\` SET ${updateKeyValueArray.join(",")} WHERE \`${identifierColumnName}\`=?`;
|
||||
updateValues.push(identifierValue);
|
||||
const updatedEntry = yield (0, conn_db_handler_1.default)(DB_CONN, query, updateValues);
|
||||
const updatedEntry = yield (0, conn_db_handler_1.default)(null, query, updateValues);
|
||||
/**
|
||||
* Return statement
|
||||
*/
|
||||
|
||||
+15
-2
@@ -1,11 +1,24 @@
|
||||
type Param = {
|
||||
import { DSQL_TableSchemaType } from "../../types";
|
||||
import { ConnectionConfig } from "mariadb";
|
||||
type Param<T extends {
|
||||
[k: string]: any;
|
||||
} = {
|
||||
[k: string]: any;
|
||||
}> = {
|
||||
query: string;
|
||||
values?: string[] | object;
|
||||
noErrorLogs?: boolean;
|
||||
database?: string;
|
||||
tableSchema?: DSQL_TableSchemaType;
|
||||
config?: ConnectionConfig;
|
||||
};
|
||||
/**
|
||||
* # Main DB Handler Function
|
||||
* @requires DSQL_DB_CONN - Gobal Variable for Datasquirel Database
|
||||
*/
|
||||
export default function dbHandler({ query, values, noErrorLogs, }: Param): Promise<any[] | object | null>;
|
||||
export default function dbHandler<T extends {
|
||||
[k: string]: any;
|
||||
} = {
|
||||
[k: string]: any;
|
||||
}>({ query, values, noErrorLogs, database, config, }: Param<T>): Promise<T[] | T | null>;
|
||||
export {};
|
||||
|
||||
+13
-16
@@ -21,24 +21,26 @@ const grab_dsql_connection_1 = __importDefault(require("../../utils/grab-dsql-co
|
||||
* @requires DSQL_DB_CONN - Gobal Variable for Datasquirel Database
|
||||
*/
|
||||
function dbHandler(_a) {
|
||||
return __awaiter(this, arguments, void 0, function* ({ query, values, noErrorLogs, }) {
|
||||
var _b;
|
||||
const CONNECTION = yield (0, grab_dsql_connection_1.default)();
|
||||
return __awaiter(this, arguments, void 0, function* ({ query, values, noErrorLogs, database, config, }) {
|
||||
let CONNECTION;
|
||||
let results;
|
||||
try {
|
||||
CONNECTION = yield (0, grab_dsql_connection_1.default)({ database, config });
|
||||
if (query && values) {
|
||||
results = yield CONNECTION.query(query, values);
|
||||
const queryResults = yield CONNECTION.query(query, values);
|
||||
results = queryResults[0];
|
||||
}
|
||||
else {
|
||||
results = yield CONNECTION.query(query);
|
||||
const queryResults = yield CONNECTION.query(query);
|
||||
results = queryResults[0];
|
||||
}
|
||||
}
|
||||
catch (error) {
|
||||
if (!noErrorLogs) {
|
||||
(_b = global.ERROR_CALLBACK) === null || _b === void 0 ? void 0 : _b.call(global, `DB Handler Error...`, error);
|
||||
}
|
||||
if (process.env.FIRST_RUN) {
|
||||
return null;
|
||||
console.log("Connection Info =>", CONNECTION === null || CONNECTION === void 0 ? void 0 : CONNECTION.info);
|
||||
if (error.message &&
|
||||
typeof error.message == "string" &&
|
||||
error.message.match(/Access denied for user.*password/i)) {
|
||||
throw new Error("Authentication Failed!");
|
||||
}
|
||||
if (!noErrorLogs) {
|
||||
console.log("ERROR in dbHandler =>", error.message);
|
||||
@@ -54,12 +56,7 @@ function dbHandler(_a) {
|
||||
yield (CONNECTION === null || CONNECTION === void 0 ? void 0 : CONNECTION.end());
|
||||
}
|
||||
if (results) {
|
||||
if (Array.isArray(results)) {
|
||||
return Array.from(results);
|
||||
}
|
||||
else {
|
||||
return results;
|
||||
}
|
||||
return results;
|
||||
}
|
||||
else {
|
||||
return null;
|
||||
|
||||
@@ -2,10 +2,9 @@ type Param = {
|
||||
queryString: string;
|
||||
tableSchema?: import("../../types").DSQL_TableSchemaType | null;
|
||||
queryValuesArray?: string[];
|
||||
forceLocal?: boolean;
|
||||
};
|
||||
/**
|
||||
* # Full Access Db Handler
|
||||
*/
|
||||
export default function fullAccessDbHandler({ queryString, tableSchema, queryValuesArray, forceLocal, }: Param): Promise<any>;
|
||||
export default function fullAccessDbHandler({ queryString, tableSchema, queryValuesArray, }: Param): Promise<any>;
|
||||
export {};
|
||||
|
||||
@@ -20,29 +20,25 @@ const serverError_1 = __importDefault(require("./serverError"));
|
||||
* # Full Access Db Handler
|
||||
*/
|
||||
function fullAccessDbHandler(_a) {
|
||||
return __awaiter(this, arguments, void 0, function* ({ queryString, tableSchema, queryValuesArray, forceLocal, }) {
|
||||
var _b;
|
||||
return __awaiter(this, arguments, void 0, function* ({ queryString, tableSchema, queryValuesArray, }) {
|
||||
/**
|
||||
* Declare variables
|
||||
*
|
||||
* @description Declare "results" variable
|
||||
*/
|
||||
let results;
|
||||
const DB_CONN = forceLocal
|
||||
? global.DSQL_DB_CONN
|
||||
: global.DSQL_FULL_ACCESS_DB_CONN || global.DSQL_DB_CONN;
|
||||
/**
|
||||
* Fetch from db
|
||||
*
|
||||
* @description Fetch data from db if no cache
|
||||
*/
|
||||
try {
|
||||
results = yield (0, conn_db_handler_1.default)(DB_CONN, queryString, queryValuesArray);
|
||||
results = yield (0, conn_db_handler_1.default)(null, queryString, queryValuesArray);
|
||||
////////////////////////////////////////
|
||||
}
|
||||
catch (error) {
|
||||
////////////////////////////////////////
|
||||
(_b = global.ERROR_CALLBACK) === null || _b === void 0 ? void 0 : _b.call(global, `Full Access DB Handler Error`, error);
|
||||
console.log("Full Access DB Handler Error =>", error.message);
|
||||
(0, serverError_1.default)({
|
||||
component: "fullAccessDbHandler",
|
||||
message: error.message,
|
||||
|
||||
@@ -0,0 +1,6 @@
|
||||
type HandleBackupParams = {
|
||||
appBackup?: boolean;
|
||||
userId?: string | number;
|
||||
};
|
||||
export default function handleBackup({ appBackup, userId, }: HandleBackupParams): Promise<void>;
|
||||
export {};
|
||||
@@ -0,0 +1,62 @@
|
||||
"use strict";
|
||||
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
||||
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
||||
return new (P || (P = Promise))(function (resolve, reject) {
|
||||
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
||||
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
||||
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
||||
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
||||
});
|
||||
};
|
||||
var __importDefault = (this && this.__importDefault) || function (mod) {
|
||||
return (mod && mod.__esModule) ? mod : { "default": mod };
|
||||
};
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
exports.default = handleBackup;
|
||||
const grab_user_resource_1 = __importDefault(require("@/src/functions/db/grab-user-resource"));
|
||||
const add_backup_1 = __importDefault(require("@/src/functions/api/su/add-backup"));
|
||||
const grab_config_1 = __importDefault(require("@/package-shared/utils/backend/config/grab-config"));
|
||||
const delete_backup_1 = __importDefault(require("@/src/functions/api/su/add-backup/delete-backup"));
|
||||
function handleBackup(_a) {
|
||||
return __awaiter(this, arguments, void 0, function* ({ appBackup, userId, }) {
|
||||
var _b;
|
||||
const { appConfig } = (0, grab_config_1.default)();
|
||||
const maxBackups = ((_b = appConfig.main.max_backups) === null || _b === void 0 ? void 0 : _b.value) || 20;
|
||||
const { count: existingAppBackupsCount } = yield (0, grab_user_resource_1.default)({
|
||||
tableName: "backups",
|
||||
isSuperUser: true,
|
||||
query: {
|
||||
query: {
|
||||
user_id: {
|
||||
nullValue: appBackup ? true : undefined,
|
||||
value: appBackup ? undefined : String(userId),
|
||||
},
|
||||
},
|
||||
},
|
||||
countOnly: true,
|
||||
});
|
||||
if (existingAppBackupsCount && existingAppBackupsCount >= maxBackups) {
|
||||
const { single: oldestAppBackup } = yield (0, grab_user_resource_1.default)({
|
||||
tableName: "backups",
|
||||
isSuperUser: true,
|
||||
query: {
|
||||
query: {
|
||||
user_id: {
|
||||
nullValue: appBackup ? true : undefined,
|
||||
value: appBackup ? undefined : String(userId),
|
||||
},
|
||||
},
|
||||
order: {
|
||||
field: "id",
|
||||
strategy: "ASC",
|
||||
},
|
||||
limit: 1,
|
||||
},
|
||||
});
|
||||
if (oldestAppBackup === null || oldestAppBackup === void 0 ? void 0 : oldestAppBackup.id) {
|
||||
yield (0, delete_backup_1.default)({ backup: oldestAppBackup });
|
||||
}
|
||||
}
|
||||
yield (0, add_backup_1.default)({ targetUserId: userId });
|
||||
});
|
||||
}
|
||||
@@ -4,8 +4,9 @@ export type HandleNodemailerParam = Mail.Options & {
|
||||
senderName?: string;
|
||||
alias?: string | null;
|
||||
options?: SMTPTransport.Options;
|
||||
verifyOnly?: boolean;
|
||||
};
|
||||
/**
|
||||
* # Handle mails With Nodemailer
|
||||
*/
|
||||
export default function handleNodemailer(params: HandleNodemailerParam): Promise<SMTPTransport.SentMessageInfo | undefined>;
|
||||
export default function handleNodemailer(params: HandleNodemailerParam): Promise<SMTPTransport.SentMessageInfo | boolean | undefined>;
|
||||
|
||||
+11
-7
@@ -21,16 +21,20 @@ const nodemailer_1 = __importDefault(require("nodemailer"));
|
||||
*/
|
||||
function handleNodemailer(params) {
|
||||
return __awaiter(this, void 0, void 0, function* () {
|
||||
var _a, _b;
|
||||
var _a, _b, _c;
|
||||
if (!process.env.DSQL_MAIL_HOST ||
|
||||
!process.env.DSQL_MAIL_EMAIL ||
|
||||
!process.env.DSQL_MAIL_PASSWORD) {
|
||||
return undefined;
|
||||
}
|
||||
let transporter = nodemailer_1.default.createTransport(Object.assign({ host: process.env.DSQL_MAIL_HOST, port: 465, secure: true, auth: {
|
||||
user: process.env.DSQL_MAIL_EMAIL,
|
||||
pass: process.env.DSQL_MAIL_PASSWORD,
|
||||
} }, params.options));
|
||||
let transporter = nodemailer_1.default.createTransport(Object.assign(Object.assign({ host: process.env.DSQL_MAIL_HOST, port: 465, secure: true }, params.options), { auth: Object.assign({ user: process.env.DSQL_MAIL_EMAIL, pass: process.env.DSQL_MAIL_PASSWORD }, (_a = params.options) === null || _a === void 0 ? void 0 : _a.auth) }));
|
||||
if (params.verifyOnly) {
|
||||
const isMailServerValid = yield transporter.verify();
|
||||
if (!isMailServerValid) {
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
const sender = (() => {
|
||||
var _a;
|
||||
if ((_a = params.alias) === null || _a === void 0 ? void 0 : _a.match(/support/i))
|
||||
@@ -43,9 +47,9 @@ function handleNodemailer(params) {
|
||||
: undefined;
|
||||
let finalHtml = mailRoot
|
||||
? mailRoot
|
||||
.replace(/{{email_body}}/, ((_a = params.html) === null || _a === void 0 ? void 0 : _a.toString()) || "")
|
||||
.replace(/{{email_body}}/, ((_b = params.html) === null || _b === void 0 ? void 0 : _b.toString()) || "")
|
||||
.replace(/{{issue_date}}/, Date().substring(0, 24))
|
||||
: (_b = params.html) === null || _b === void 0 ? void 0 : _b.toString();
|
||||
: (_c = params.html) === null || _c === void 0 ? void 0 : _c.toString();
|
||||
try {
|
||||
let mailObject = {};
|
||||
mailObject["from"] = `"${params.senderName || "Datasquirel"}" <${sender}>`;
|
||||
|
||||
@@ -28,6 +28,8 @@ function suDbHandler(_a) {
|
||||
supportBigNumbers: true,
|
||||
bigNumberStrings: false,
|
||||
dateStrings: true,
|
||||
bigIntAsNumber: true,
|
||||
metaAsArray: true,
|
||||
});
|
||||
// const connection = mariadb.createPool({
|
||||
// host: process.env.DSQL_DB_HOST,
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
type Param = {
|
||||
userId: number | string;
|
||||
userId?: number | string;
|
||||
database: string;
|
||||
newFields?: string[];
|
||||
newPayload?: {
|
||||
|
||||
@@ -22,7 +22,7 @@ const grab_required_database_schemas_1 = require("../../shell/createDbFromSchema
|
||||
*/
|
||||
function updateUsersTableSchema(_a) {
|
||||
return __awaiter(this, arguments, void 0, function* ({ userId, database, newFields, newPayload, dbId, }) {
|
||||
var _b, _c;
|
||||
var _b;
|
||||
try {
|
||||
const dbFullName = database;
|
||||
let targetDatabase = (0, grab_required_database_schemas_1.grabPrimaryRequiredDbSchema)({
|
||||
@@ -51,7 +51,7 @@ function updateUsersTableSchema(_a) {
|
||||
return `Done!`;
|
||||
}
|
||||
catch (error) {
|
||||
(_c = global.ERROR_CALLBACK) === null || _c === void 0 ? void 0 : _c.call(global, `Error Updating User Table Schema`, error);
|
||||
console.log("Error Updating User Table Schema =>", error.message);
|
||||
(0, serverError_1.default)({
|
||||
component: "addUsersTableToDb",
|
||||
message: error.message,
|
||||
|
||||
@@ -30,6 +30,8 @@ function userDbHandler(_a) {
|
||||
supportBigNumbers: true,
|
||||
bigNumberStrings: false,
|
||||
dateStrings: true,
|
||||
bigIntAsNumber: true,
|
||||
metaAsArray: true,
|
||||
});
|
||||
const results = yield (0, conn_db_handler_1.default)(connection, query);
|
||||
return results;
|
||||
|
||||
@@ -1,13 +0,0 @@
|
||||
import { DSQL_TableSchemaType } from "../../types";
|
||||
type Param = {
|
||||
queryString: string;
|
||||
queryValuesArray?: any[];
|
||||
database?: string;
|
||||
tableSchema?: DSQL_TableSchemaType;
|
||||
debug?: boolean;
|
||||
};
|
||||
/**
|
||||
* # DB handler for specific database
|
||||
*/
|
||||
export default function varDatabaseDbHandler({ queryString, queryValuesArray, database, tableSchema, debug, }: Param): Promise<any>;
|
||||
export {};
|
||||
@@ -1,65 +0,0 @@
|
||||
"use strict";
|
||||
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
||||
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
||||
return new (P || (P = Promise))(function (resolve, reject) {
|
||||
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
||||
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
||||
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
||||
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
||||
});
|
||||
};
|
||||
var __importDefault = (this && this.__importDefault) || function (mod) {
|
||||
return (mod && mod.__esModule) ? mod : { "default": mod };
|
||||
};
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
exports.default = varDatabaseDbHandler;
|
||||
const parseDbResults_1 = __importDefault(require("./parseDbResults"));
|
||||
const serverError_1 = __importDefault(require("./serverError"));
|
||||
const grab_dsql_connection_1 = __importDefault(require("../../utils/grab-dsql-connection"));
|
||||
const conn_db_handler_1 = __importDefault(require("../../utils/db/conn-db-handler"));
|
||||
/**
|
||||
* # DB handler for specific database
|
||||
*/
|
||||
function varDatabaseDbHandler(_a) {
|
||||
return __awaiter(this, arguments, void 0, function* ({ queryString, queryValuesArray, database, tableSchema, debug, }) {
|
||||
var _b;
|
||||
let CONNECTION = yield (0, grab_dsql_connection_1.default)({ fa: true });
|
||||
if (global.DSQL_USE_LOCAL)
|
||||
CONNECTION = yield (0, grab_dsql_connection_1.default)({ local: true });
|
||||
if (database === null || database === void 0 ? void 0 : database.match(/^datasquirel$/))
|
||||
CONNECTION = yield (0, grab_dsql_connection_1.default)();
|
||||
if (debug) {
|
||||
console.log(`varDatabaseDbHandler:query:`, queryString);
|
||||
console.log(`varDatabaseDbHandler:values:`, queryValuesArray);
|
||||
}
|
||||
let results = yield (0, conn_db_handler_1.default)(CONNECTION, queryString, queryValuesArray);
|
||||
if (debug) {
|
||||
console.log(`varDatabaseDbHandler:results:`, results);
|
||||
}
|
||||
if (results && tableSchema) {
|
||||
try {
|
||||
const unparsedResults = results;
|
||||
const parsedResults = yield (0, parseDbResults_1.default)({
|
||||
unparsedResults: unparsedResults,
|
||||
tableSchema: tableSchema,
|
||||
});
|
||||
return parsedResults;
|
||||
}
|
||||
catch (error) {
|
||||
console.log("\x1b[31mvarDatabaseDbHandler ERROR\x1b[0m =>", database, error);
|
||||
(_b = global.ERROR_CALLBACK) === null || _b === void 0 ? void 0 : _b.call(global, `VarDb Handler Error`, error);
|
||||
(0, serverError_1.default)({
|
||||
component: "varDatabaseDbHandler/lines-52-53",
|
||||
message: error.message,
|
||||
});
|
||||
return null;
|
||||
}
|
||||
}
|
||||
else if (results) {
|
||||
return results;
|
||||
}
|
||||
else {
|
||||
return null;
|
||||
}
|
||||
});
|
||||
}
|
||||
@@ -1,12 +0,0 @@
|
||||
type Param = {
|
||||
queryString: string;
|
||||
queryValuesArray?: string[];
|
||||
tableSchema?: import("../../types").DSQL_TableSchemaType;
|
||||
forceLocal?: boolean;
|
||||
};
|
||||
/**
|
||||
* # Read Only Db Handler with Varaibles
|
||||
* @returns
|
||||
*/
|
||||
export default function varReadOnlyDatabaseDbHandler({ queryString, queryValuesArray, tableSchema, forceLocal, }: Param): Promise<any>;
|
||||
export {};
|
||||
@@ -1,56 +0,0 @@
|
||||
"use strict";
|
||||
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
||||
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
||||
return new (P || (P = Promise))(function (resolve, reject) {
|
||||
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
||||
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
||||
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
||||
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
||||
});
|
||||
};
|
||||
var __importDefault = (this && this.__importDefault) || function (mod) {
|
||||
return (mod && mod.__esModule) ? mod : { "default": mod };
|
||||
};
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
exports.default = varReadOnlyDatabaseDbHandler;
|
||||
const serverError_1 = __importDefault(require("./serverError"));
|
||||
const parseDbResults_1 = __importDefault(require("./parseDbResults"));
|
||||
const conn_db_handler_1 = __importDefault(require("../../utils/db/conn-db-handler"));
|
||||
/**
|
||||
* # Read Only Db Handler with Varaibles
|
||||
* @returns
|
||||
*/
|
||||
function varReadOnlyDatabaseDbHandler(_a) {
|
||||
return __awaiter(this, arguments, void 0, function* ({ queryString, queryValuesArray, tableSchema, forceLocal, }) {
|
||||
var _b;
|
||||
let results;
|
||||
const DB_CONN = forceLocal
|
||||
? global.DSQL_DB_CONN
|
||||
: global.DSQL_READ_ONLY_DB_CONN || global.DSQL_DB_CONN;
|
||||
try {
|
||||
results = yield (0, conn_db_handler_1.default)(DB_CONN, queryString, queryValuesArray);
|
||||
}
|
||||
catch (error) {
|
||||
(0, serverError_1.default)({
|
||||
component: "varReadOnlyDatabaseDbHandler",
|
||||
message: error.message,
|
||||
noMail: true,
|
||||
});
|
||||
(_b = global.ERROR_CALLBACK) === null || _b === void 0 ? void 0 : _b.call(global, `VarReadOnlyDB Handler Error`, error);
|
||||
return error.message;
|
||||
}
|
||||
finally {
|
||||
}
|
||||
if (results) {
|
||||
const unparsedResults = results;
|
||||
const parsedResults = yield (0, parseDbResults_1.default)({
|
||||
unparsedResults: unparsedResults,
|
||||
tableSchema: tableSchema,
|
||||
});
|
||||
return parsedResults;
|
||||
}
|
||||
else {
|
||||
return null;
|
||||
}
|
||||
});
|
||||
}
|
||||
+2
-1
@@ -2,9 +2,10 @@ type Param = {
|
||||
encryptedString: string;
|
||||
encryptionKey?: string;
|
||||
encryptionSalt?: string;
|
||||
debug?: boolean;
|
||||
};
|
||||
/**
|
||||
* # Decrypt Function
|
||||
*/
|
||||
export default function decrypt({ encryptedString, encryptionKey, encryptionSalt, }: Param): string;
|
||||
export default function decrypt({ encryptedString, encryptionKey, encryptionSalt, debug, }: Param): string;
|
||||
export {};
|
||||
|
||||
+10
-8
@@ -11,19 +11,21 @@ const grab_keys_1 = __importDefault(require("../../utils/grab-keys"));
|
||||
/**
|
||||
* # Decrypt Function
|
||||
*/
|
||||
function decrypt({ encryptedString, encryptionKey, encryptionSalt, }) {
|
||||
var _a;
|
||||
function decrypt({ encryptedString, encryptionKey, encryptionSalt, debug, }) {
|
||||
if (!(encryptedString === null || encryptedString === void 0 ? void 0 : encryptedString.match(/./))) {
|
||||
console.log("Encrypted string is invalid");
|
||||
if (debug)
|
||||
console.log("Encrypted string is invalid");
|
||||
return encryptedString;
|
||||
}
|
||||
const { key: encrptKey, salt, keyLen, algorithm, bufferAllocSize, } = (0, grab_keys_1.default)({ encryptionKey });
|
||||
if (!(encrptKey === null || encrptKey === void 0 ? void 0 : encrptKey.match(/.{8,}/))) {
|
||||
console.log("Decrption key is invalid");
|
||||
if (debug)
|
||||
console.log("Decrption key is invalid");
|
||||
return encryptedString;
|
||||
}
|
||||
if (!(salt === null || salt === void 0 ? void 0 : salt.match(/.{8,}/))) {
|
||||
console.log("Decrption salt is invalid");
|
||||
if (debug)
|
||||
console.log("Decrption salt is invalid");
|
||||
return encryptedString;
|
||||
}
|
||||
let key = (0, crypto_1.scryptSync)(encrptKey, salt, keyLen);
|
||||
@@ -35,9 +37,9 @@ function decrypt({ encryptedString, encryptionKey, encryptionSalt, }) {
|
||||
return decrypted;
|
||||
}
|
||||
catch (error) {
|
||||
console.log("Error in decrypting =>", error.message);
|
||||
console.log("encryptedString =>", encryptedString);
|
||||
(_a = global.ERROR_CALLBACK) === null || _a === void 0 ? void 0 : _a.call(global, `Error Decrypting data`, error);
|
||||
if (debug) {
|
||||
console.log("Error Decrypting data", error);
|
||||
}
|
||||
return encryptedString;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -12,7 +12,6 @@ const grab_keys_1 = __importDefault(require("../../utils/grab-keys"));
|
||||
* # Encrypt String
|
||||
*/
|
||||
function encrypt({ data, encryptionKey, encryptionSalt, }) {
|
||||
var _a;
|
||||
if (!(data === null || data === void 0 ? void 0 : data.match(/./))) {
|
||||
console.log("Encryption string is invalid");
|
||||
return data;
|
||||
@@ -37,7 +36,6 @@ function encrypt({ data, encryptionKey, encryptionSalt, }) {
|
||||
}
|
||||
catch (error) {
|
||||
console.log("Error in encrypting =>", error.message);
|
||||
(_a = global.ERROR_CALLBACK) === null || _a === void 0 ? void 0 : _a.call(global, `Error Encrypting Data`, error);
|
||||
return data;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -40,6 +40,12 @@ function validateEmail(_a) {
|
||||
}
|
||||
if (welcomeEmailOptions) {
|
||||
const welcomeEmail = yield (0, handleNodemailer_1.default)(welcomeEmailOptions);
|
||||
if (typeof welcomeEmail == "boolean") {
|
||||
return {
|
||||
isValid: false,
|
||||
message: "Email verification failed.",
|
||||
};
|
||||
}
|
||||
if (!((_b = welcomeEmail === null || welcomeEmail === void 0 ? void 0 : welcomeEmail.accepted) === null || _b === void 0 ? void 0 : _b[0])) {
|
||||
return {
|
||||
isValid: false,
|
||||
|
||||
@@ -1,17 +1,4 @@
|
||||
import { DsqlCrudQueryObject } from "../../../../types";
|
||||
import { DsqlTables } from "../../../../types/dsql";
|
||||
export type GrabUserResourceParams<T extends {
|
||||
[k: string]: any;
|
||||
} = any> = {
|
||||
query?: DsqlCrudQueryObject<T>;
|
||||
userId?: string | number;
|
||||
tableName: (typeof DsqlTables)[number];
|
||||
count?: boolean;
|
||||
countOnly?: boolean;
|
||||
noLimit?: boolean;
|
||||
isSuperUser?: boolean;
|
||||
targetID?: string | number;
|
||||
};
|
||||
import { GrabUserResourceParams } from "../../../../types";
|
||||
export default function dbGrabUserResource<T extends {
|
||||
[k: string]: any;
|
||||
} = any>(params: GrabUserResourceParams<T>): Promise<{
|
||||
@@ -25,5 +12,5 @@ export default function dbGrabUserResource<T extends {
|
||||
error: any;
|
||||
msg: string | undefined;
|
||||
};
|
||||
count: number;
|
||||
count: number | undefined;
|
||||
}>;
|
||||
|
||||
@@ -15,7 +15,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
||||
exports.default = dbGrabUserResource;
|
||||
const crud_1 = __importDefault(require("../../../../utils/data-fetching/crud"));
|
||||
const query_1 = __importDefault(require("./query"));
|
||||
const numberfy_1 = __importDefault(require("../../../../utils/numberfy"));
|
||||
function dbGrabUserResource(params) {
|
||||
return __awaiter(this, void 0, void 0, function* () {
|
||||
let queryObject = (0, query_1.default)(params);
|
||||
@@ -35,7 +34,7 @@ function dbGrabUserResource(params) {
|
||||
error: result === null || result === void 0 ? void 0 : result.error,
|
||||
msg: result === null || result === void 0 ? void 0 : result.msg,
|
||||
},
|
||||
count: (0, numberfy_1.default)(result === null || result === void 0 ? void 0 : result.count),
|
||||
count: typeof (result === null || result === void 0 ? void 0 : result.count) == "number" ? result.count : undefined,
|
||||
};
|
||||
});
|
||||
}
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
import { GrabUserResourceParams } from ".";
|
||||
import { GrabUserResourceParams } from "../../../../types";
|
||||
export default function (params?: GrabUserResourceParams): import("../../../../types").ServerQueryParam<{
|
||||
[k: string]: any;
|
||||
}> & {
|
||||
|
||||
+5
-1
@@ -15,5 +15,9 @@ type CreateNewUserParams = {
|
||||
host?: string;
|
||||
password?: string;
|
||||
};
|
||||
export declare function createNewSQLUser({ host, password, username, }: CreateNewUserParams): Promise<object | any[] | null>;
|
||||
export declare function createNewSQLUser({ host, password, username, }: CreateNewUserParams): Promise<{
|
||||
[k: string]: any;
|
||||
} | {
|
||||
[k: string]: any;
|
||||
}[] | null>;
|
||||
export {};
|
||||
|
||||
Reference in New Issue
Block a user