127 lines
3.4 KiB
TypeScript
127 lines
3.4 KiB
TypeScript
import type { Connection } from "mariadb";
|
|
|
|
declare global {
|
|
var DSQL_DB_CONN: Connection | undefined;
|
|
var DSQL_READ_ONLY_DB_CONN: Connection | undefined;
|
|
var DSQL_FULL_ACCESS_DB_CONN: Connection | undefined;
|
|
var DSQL_USE_LOCAL: boolean | undefined;
|
|
var ERROR_CALLBACK: ErrorCallback | undefined;
|
|
}
|
|
|
|
import get from "./package-shared/actions/get";
|
|
import post from "./package-shared/actions/post";
|
|
import getSchema from "./package-shared/actions/get-schema";
|
|
|
|
import createUser from "./package-shared/actions/users/add-user";
|
|
import updateUser from "./package-shared/actions/users/update-user";
|
|
|
|
import datasquirelClient from "./client";
|
|
import sqlGenerator from "./package-shared/functions/dsql/sql/sql-generator";
|
|
import sqlInsertGenerator from "./package-shared/functions/dsql/sql/sql-insert-generator";
|
|
import sqlDeleteGenerator from "./package-shared/functions/dsql/sql/sql-delete-generator";
|
|
import trimSql from "./package-shared/utils/trim-sql";
|
|
import parseCookies from "./package-shared/utils/backend/parseCookies";
|
|
import connDbHandler from "./package-shared/utils/db/conn-db-handler";
|
|
import encrypt from "./package-shared/functions/dsql/encrypt";
|
|
import decrypt from "./package-shared/functions/dsql/decrypt";
|
|
import hashPassword from "./package-shared/functions/dsql/hashPassword";
|
|
import dsqlCrud from "./package-shared/utils/data-fetching/crud";
|
|
import dsqlMethodCrud from "./package-shared/utils/data-fetching/method-crud";
|
|
import debugLog from "./package-shared/utils/logging/debug-log";
|
|
import { ErrorCallback } from "./package-shared/types";
|
|
import parseEnv from "./package-shared/utils/parse-env";
|
|
import crud from "./package-shared/api/crud";
|
|
import user from "./package-shared/api/user";
|
|
import media from "./package-shared/api/media";
|
|
import dbHandler from "./package-shared/functions/backend/dbHandler";
|
|
|
|
/**
|
|
* User Functions Object
|
|
*/
|
|
// const user = {
|
|
// createUser: createUser,
|
|
// deleteUser,
|
|
// loginUser: loginUser,
|
|
// sendEmailCode: sendEmailCode,
|
|
// logoutUser: logoutUser,
|
|
// userAuth: userAuth,
|
|
// reAuthUser: reAuthUser,
|
|
// updateUser: updateUser,
|
|
// getUser: getUser,
|
|
// getToken: getToken,
|
|
// validateToken: validateToken,
|
|
// validateTempEmailCode,
|
|
// social: {
|
|
// loginWithGoogle: loginWithGoogle,
|
|
// loginWithGithub: loginWithGithub,
|
|
// },
|
|
// };
|
|
|
|
/**
|
|
* API Functions Object
|
|
*/
|
|
const api = {
|
|
crud,
|
|
media,
|
|
user: user(),
|
|
};
|
|
|
|
/**
|
|
* SQL Utils
|
|
*/
|
|
const sql = {
|
|
sqlGenerator,
|
|
sqlInsertGenerator,
|
|
sqlDeleteGenerator,
|
|
trim: trimSql,
|
|
};
|
|
|
|
/**
|
|
* Main Export
|
|
*/
|
|
const datasquirel = {
|
|
/**
|
|
* API Actions
|
|
*/
|
|
api,
|
|
/**
|
|
* Get Action
|
|
*/
|
|
get,
|
|
/**
|
|
* Post Action
|
|
*/
|
|
post,
|
|
user: user({ local: true }),
|
|
getSchema,
|
|
client: datasquirelClient,
|
|
sql,
|
|
utils: {
|
|
crypto: {
|
|
encrypt,
|
|
decrypt,
|
|
hashPassword,
|
|
},
|
|
parseCookies,
|
|
connDbHandler,
|
|
debugLog,
|
|
parseEnv,
|
|
},
|
|
/**
|
|
* Run Crud actions `get`, `insert`, `update`, `delete`
|
|
* @description *Requires global variables `DSQL_USE_LOCAL` and `DSQL_DB_CONN`
|
|
*/
|
|
crud: dsqlCrud,
|
|
/**
|
|
* Run Crud based on request Methods `GET`, `POST`, `PUT`, `PATCH`
|
|
* @description *Requires global variables `DSQL_USE_LOCAL` and `DSQL_DB_CONN`
|
|
*/
|
|
methodCrud: dsqlMethodCrud,
|
|
/**
|
|
* General Database Handler
|
|
*/
|
|
dbHandler,
|
|
};
|
|
|
|
export default datasquirel;
|