Updates
This commit is contained in:
Executable → Regular
+3
-3
@@ -3,9 +3,9 @@
|
||||
const fs = require("fs");
|
||||
const decrypt = require("./decrypt");
|
||||
|
||||
/** @type {import("@/package-shared/types").CheckApiCredentialsFn} */
|
||||
/** @type {import("../../types").CheckApiCredentialsFn} */
|
||||
const grabApiCred = ({ key, database, table }) => {
|
||||
if (!key) return undefined;
|
||||
if (!key) return null;
|
||||
|
||||
try {
|
||||
const allowedKeysPath = process.env.DSQL_API_KEYS_PATH;
|
||||
@@ -16,7 +16,7 @@ const grabApiCred = ({ key, database, table }) => {
|
||||
);
|
||||
|
||||
const ApiJSON = decrypt(key);
|
||||
/** @type {import("@/package-shared/types").ApiKeyObject} */
|
||||
/** @type {import("../../types").ApiKeyObject} */
|
||||
const ApiObject = JSON.parse(ApiJSON || "");
|
||||
const isApiKeyValid = fs.existsSync(
|
||||
`${allowedKeysPath}/${ApiObject.sign}`
|
||||
|
||||
Executable → Regular
+17
-5
@@ -18,6 +18,8 @@ const serverError = require("../serverError");
|
||||
const addDbEntry = require("./addDbEntry");
|
||||
const updateDbEntry = require("./updateDbEntry");
|
||||
const deleteDbEntry = require("./deleteDbEntry");
|
||||
const DB_HANDLER = require("../../../utils/backend/global-db/DB_HANDLER");
|
||||
const parseDbResults = require("../parseDbResults");
|
||||
|
||||
/** ****************************************************************************** */
|
||||
/** ****************************************************************************** */
|
||||
@@ -31,8 +33,9 @@ const deleteDbEntry = require("./deleteDbEntry");
|
||||
* ==============================================================================
|
||||
* @param {object} params - An object containing the function parameters.
|
||||
* @param {string} params.dbFullName - Database full name. Eg. "datasquire_user_2_test"
|
||||
* @param {string|any} params.query - Query string or object
|
||||
* @param {string | any} params.query - Query string or object
|
||||
* @param {boolean} [params.readOnly] - Is this operation read only?
|
||||
* @param {boolean} [params.local] - Is this operation read only?
|
||||
* @param {import("../../../types").DSQL_DatabaseSchemaType} [params.dbSchema] - Database schema
|
||||
* @param {string[]} [params.queryValuesArray] - An optional array of query values if "?" is used in the query string
|
||||
* @param {string} [params.tableName] - Table Name
|
||||
@@ -46,6 +49,7 @@ async function runQuery({
|
||||
dbSchema,
|
||||
queryValuesArray,
|
||||
tableName,
|
||||
local,
|
||||
}) {
|
||||
/**
|
||||
* Declare variables
|
||||
@@ -85,7 +89,15 @@ async function runQuery({
|
||||
*/
|
||||
try {
|
||||
if (typeof query === "string") {
|
||||
if (readOnly) {
|
||||
if (local) {
|
||||
const rawResults = await DB_HANDLER(query, queryValuesArray);
|
||||
result = tableSchema
|
||||
? parseDbResults({
|
||||
unparsedResults: rawResults,
|
||||
tableSchema,
|
||||
})
|
||||
: rawResults;
|
||||
} else if (readOnly) {
|
||||
result = await varReadOnlyDatabaseDbHandler({
|
||||
queryString: query,
|
||||
queryValuesArray,
|
||||
@@ -120,7 +132,7 @@ async function runQuery({
|
||||
switch (action.toLowerCase()) {
|
||||
case "insert":
|
||||
result = await addDbEntry({
|
||||
dbContext: "Dsql User",
|
||||
dbContext: local ? "Master" : "Dsql User",
|
||||
paradigm: "Full Access",
|
||||
dbFullName: dbFullName,
|
||||
tableName: table,
|
||||
@@ -139,7 +151,7 @@ async function runQuery({
|
||||
|
||||
case "update":
|
||||
result = await updateDbEntry({
|
||||
dbContext: "Dsql User",
|
||||
dbContext: local ? "Master" : "Dsql User",
|
||||
paradigm: "Full Access",
|
||||
dbFullName: dbFullName,
|
||||
tableName: table,
|
||||
@@ -153,7 +165,7 @@ async function runQuery({
|
||||
|
||||
case "delete":
|
||||
result = await deleteDbEntry({
|
||||
dbContext: "Dsql User",
|
||||
dbContext: local ? "Master" : "Dsql User",
|
||||
paradigm: "Full Access",
|
||||
dbFullName: dbFullName,
|
||||
tableName: table,
|
||||
|
||||
Executable → Regular
+2
-1
@@ -6,7 +6,8 @@ const serverError = require("./serverError");
|
||||
const mysql = require("serverless-mysql");
|
||||
const path = require("path");
|
||||
|
||||
const SSL_DIR = "/app/ssl";
|
||||
const SSL_DIR =
|
||||
process.env.DSQL_SSL_DIR || path.resolve(__dirname, "../../../ssl");
|
||||
|
||||
const connection = mysql({
|
||||
config: {
|
||||
|
||||
Executable → Regular
+2
@@ -9,6 +9,7 @@ const serverError = require("./serverError");
|
||||
* @param {object} param0
|
||||
* @param {string} param0.queryString
|
||||
* @param {string} param0.database
|
||||
* @param {boolean} [param0.local]
|
||||
* @param {import("../../types").DSQL_TableSchemaType | null} [param0.tableSchema]
|
||||
* @param {string[]} [param0.queryValuesArray]
|
||||
* @returns
|
||||
@@ -18,6 +19,7 @@ module.exports = async function fullAccessDbHandler({
|
||||
database,
|
||||
tableSchema,
|
||||
queryValuesArray,
|
||||
local,
|
||||
}) {
|
||||
/**
|
||||
* Declare variables
|
||||
|
||||
Executable → Regular
+1
-1
@@ -1,8 +1,8 @@
|
||||
// @ts-check
|
||||
|
||||
const { IncomingMessage } = require("http");
|
||||
const parseCookies = require("datasquirel/utils/functions/parseCookies");
|
||||
const decrypt = require("./decrypt");
|
||||
const parseCookies = require("../../utils/backend/parseCookies");
|
||||
|
||||
/**
|
||||
* @async
|
||||
|
||||
Reference in New Issue
Block a user