This commit is contained in:
Benjamin Toby 2025-11-13 06:42:09 +01:00
parent 957709f79d
commit 57e67f5c51
8 changed files with 22 additions and 7 deletions

View File

@ -1519,6 +1519,7 @@ export type AppRefObject = {
export type DsqlAppData = {
DSQL_REMOTE_SQL_HOST?: string | null;
DSQL_SU_USER_ID?: string | null;
DSQL_USER_ID?: string | null;
DSQL_HOST_ENV?: string | null;
DSQL_HOST?: string | null;
DSQL_STATIC_HOST?: string | null;
@ -1792,7 +1793,7 @@ export declare const AppVersions: readonly [{
readonly title: "Full";
readonly value: "full";
}];
export declare const EnvKeys: readonly ["DSQL_HOST", "NEXT_PUBLIC_DSQL_HOST", "DSQL_STATIC_HOST", "DSQL_SOCKET_DOMAIN", "DSQL_HOST_ENV", "DSQL_PORT", "DSQL_PRODUCTION_PORT", "DSQL_STATIC_SERVER_PORT", "DSQL_SITE_URL", "DSQL_REMOTE_SQL_HOST", "NEXT_PUBLIC_DSQL_REMOTE_SQL_HOST", "DSQL_DB_TARGET_IP_ADDRESS", "NEXT_PUBLIC_VERSION", "DSQL_USER_DB_PREFIX", "DSQL_USER_DELEGATED_DB_COOKIE_PREFIX", "DSQL_NETWORK_IP_PREFIX", "DSQL_NETWORK_GATEWAY", "DSQL_NETWORK_SUBNET", "DSQL_MARIADB_MASTER_HOST", "DSQL_DB_HOST", "DSQL_WEB_APP_HOST", "DSQL_DB_USERNAME", "DSQL_DB_PASSWORD", "DSQL_MARIADB_ROOT_PASSWORD", "DSQL_REPLICATION_USER_PASSWORD", "DSQL_DB_NAME", "DSQL_MARIADB_REPLICATION_PASSWORD", "DSQL_MAXSCALE_PASSWORD", "DSQL_DB_READ_ONLY_USERNAME", "DSQL_DB_READ_ONLY_PASSWORD", "DSQL_DB_FULL_ACCESS_USERNAME", "DSQL_DB_FULL_ACCESS_PASSWORD", "DSQL_DB_EXPOSED_PORT", "DSQL_ENCRYPTION_PASSWORD", "DSQL_ENCRYPTION_SALT", "DSQL_SU_USER_ID", "DSQL_SU_USER_UUID", "DSQL_SU_EMAIL", "DSQL_GOOGLE_CLIENT_ID", "NEXT_PUBLIC_DSQL_GOOGLE_CLIENT_ID", "DSQL_FACEBOOK_APP_ID", "DSQL_FACEBOOK_SECRET", "DSQL_MAIL_HOST", "DSQL_MAIL_EMAIL", "DSQL_MAIL_PASSWORD", "DSQL_TINY_MCE_API_KEY", "DSQL_GITHUB_ID", "DSQL_GITHUB_SECRET", "DSQL_GITHUB_WEBHOOK_SECRET", "DSQL_GITHUB_WEBHOOK_URL", "DSQL_DEPLOY_SERVER_PORT", "DSQL_DOCKERFILE", "DSQL_VOLUME_APP", "DSQL_VOLUME_STATIC", "DSQL_VOLUME_STATIC_CONFIGURATION_FILE", "DSQL_VOLUME_DB", "DSQL_VOLUME_DB_CONFIG", "DSQL_VOLUME_DB_SETUP", "DSQL_VOLUME_DB_SSL", "DSQL_USER_LOGIN_KEYS_PATH", "DSQL_API_KEYS_PATH", "DSQL_APP_DIR", "DSQL_DATA_DIR", "DSQL_CONTACT_EMAIL", "DSQL_SSL_DIR", "DSQL_DEPLOYMENT_NAME", "DSQL_COOKIES_PREFIX", "DSQL_COOKIES_KEY_NAME", "DSQL_WEB_APP_FAIL_COUNTS", "NODE_ARCH", "DSQL_WEBSOCKET_PORT", "DSQL_WEBSOCKET_HOST", "NEXT_PUBLIC_DSQL_WEBSOCKET_HOST", "S3_ACCESS_KEY_ID", "S3_SECRET_ACCESS", "DSQL_ADDITIONAL_MARIADB_SERVERS", "DSQL_ARCJET_KEY"];
export declare const EnvKeys: readonly ["DSQL_HOST", "NEXT_PUBLIC_DSQL_HOST", "DSQL_STATIC_HOST", "DSQL_SOCKET_DOMAIN", "DSQL_HOST_ENV", "DSQL_PORT", "DSQL_PRODUCTION_PORT", "DSQL_STATIC_SERVER_PORT", "DSQL_SITE_URL", "DSQL_REMOTE_SQL_HOST", "NEXT_PUBLIC_DSQL_REMOTE_SQL_HOST", "DSQL_DB_TARGET_IP_ADDRESS", "NEXT_PUBLIC_VERSION", "DSQL_USER_DB_PREFIX", "DSQL_USER_DELEGATED_DB_COOKIE_PREFIX", "DSQL_NETWORK_IP_PREFIX", "DSQL_NETWORK_GATEWAY", "DSQL_NETWORK_SUBNET", "DSQL_MARIADB_MASTER_HOST", "DSQL_DB_HOST", "DSQL_WEB_APP_HOST", "DSQL_DB_USERNAME", "DSQL_DB_PASSWORD", "DSQL_MARIADB_ROOT_PASSWORD", "DSQL_REPLICATION_USER_PASSWORD", "DSQL_DB_NAME", "DSQL_MARIADB_REPLICATION_PASSWORD", "DSQL_MAXSCALE_PASSWORD", "DSQL_DB_READ_ONLY_USERNAME", "DSQL_DB_READ_ONLY_PASSWORD", "DSQL_DB_FULL_ACCESS_USERNAME", "DSQL_DB_FULL_ACCESS_PASSWORD", "DSQL_DB_EXPOSED_PORT", "DSQL_ENCRYPTION_PASSWORD", "DSQL_ENCRYPTION_SALT", "DSQL_SU_USER_ID", "DSQL_SU_USER_UUID", "DSQL_SU_EMAIL", "DSQL_GOOGLE_CLIENT_ID", "NEXT_PUBLIC_DSQL_GOOGLE_CLIENT_ID", "DSQL_FACEBOOK_APP_ID", "DSQL_FACEBOOK_SECRET", "DSQL_MAIL_HOST", "DSQL_MAIL_EMAIL", "DSQL_MAIL_PASSWORD", "DSQL_TINY_MCE_API_KEY", "DSQL_GITHUB_ID", "DSQL_USER_ID", "DSQL_GITHUB_SECRET", "DSQL_GITHUB_WEBHOOK_SECRET", "DSQL_GITHUB_WEBHOOK_URL", "DSQL_DEPLOY_SERVER_PORT", "DSQL_DOCKERFILE", "DSQL_VOLUME_APP", "DSQL_VOLUME_STATIC", "DSQL_VOLUME_STATIC_CONFIGURATION_FILE", "DSQL_VOLUME_DB", "DSQL_VOLUME_DB_CONFIG", "DSQL_VOLUME_DB_SETUP", "DSQL_VOLUME_DB_SSL", "DSQL_USER_LOGIN_KEYS_PATH", "DSQL_API_KEYS_PATH", "DSQL_APP_DIR", "DSQL_DATA_DIR", "DSQL_CONTACT_EMAIL", "DSQL_SSL_DIR", "DSQL_DEPLOYMENT_NAME", "DSQL_COOKIES_PREFIX", "DSQL_COOKIES_KEY_NAME", "DSQL_WEB_APP_FAIL_COUNTS", "NODE_ARCH", "DSQL_WEBSOCKET_PORT", "DSQL_WEBSOCKET_HOST", "NEXT_PUBLIC_DSQL_WEBSOCKET_HOST", "S3_ACCESS_KEY_ID", "S3_SECRET_ACCESS", "DSQL_ADDITIONAL_MARIADB_SERVERS", "DSQL_ARCJET_KEY"];
export type SQLShowDatabaseObject = {
Database?: string;
};

View File

@ -373,6 +373,7 @@ exports.EnvKeys = [
"DSQL_MAIL_PASSWORD",
"DSQL_TINY_MCE_API_KEY",
"DSQL_GITHUB_ID",
"DSQL_USER_ID",
"DSQL_GITHUB_SECRET",
"DSQL_GITHUB_WEBHOOK_SECRET",
"DSQL_GITHUB_WEBHOOK_URL",

View File

@ -6,7 +6,6 @@ type Param = {
dbName?: string;
userId?: string | number;
user?: UserType | null;
nullable?: boolean;
};
/**
* # Grab full database name

View File

@ -5,6 +5,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
Object.defineProperty(exports, "__esModule", { value: true });
exports.default = grabDbNames;
const grab_db_full_name_1 = __importDefault(require("./grab-db-full-name"));
const numberfy_1 = __importDefault(require("./numberfy"));
/**
* # Grab full database name
* @description Grab full database name from slug or full name
@ -12,9 +13,13 @@ const grab_db_full_name_1 = __importDefault(require("./grab-db-full-name"));
* @returns
*/
function grabDbNames(params) {
var _a;
var _a, _b, _c;
const dbNamePrefix = process.env.DSQL_USER_DB_PREFIX || "datasquirel_user_";
const finalUserId = ((_a = params === null || params === void 0 ? void 0 : params.user) === null || _a === void 0 ? void 0 : _a.id) || (params === null || params === void 0 ? void 0 : params.userId);
const finalUserId = ((_a = params === null || params === void 0 ? void 0 : params.user) === null || _a === void 0 ? void 0 : _a.id) ||
(params === null || params === void 0 ? void 0 : params.userId) ||
(0, numberfy_1.default)(process.env.DSQL_USER_ID) ||
(0, numberfy_1.default)((_c = (_b = process.env.DSQL_DB_NAME) === null || _b === void 0 ? void 0 : _b.split("_")) === null || _c === void 0 ? void 0 : _c[2]) ||
undefined;
const userDbPrefix = finalUserId
? `${dbNamePrefix}${finalUserId}_`
: undefined;

View File

@ -47,6 +47,7 @@ export default function parseEnv(
DSQL_MAIL_PASSWORD: string | undefined;
DSQL_TINY_MCE_API_KEY: string | undefined;
DSQL_GITHUB_ID: string | undefined;
DSQL_USER_ID: string | undefined;
DSQL_GITHUB_SECRET: string | undefined;
DSQL_GITHUB_WEBHOOK_SECRET: string | undefined;
DSQL_GITHUB_WEBHOOK_URL: string | undefined;

View File

@ -1821,6 +1821,7 @@ export type AppRefObject = {
export type DsqlAppData = {
DSQL_REMOTE_SQL_HOST?: string | null;
DSQL_SU_USER_ID?: string | null;
DSQL_USER_ID?: string | null;
DSQL_HOST_ENV?: string | null;
DSQL_HOST?: string | null;
DSQL_STATIC_HOST?: string | null;
@ -2302,6 +2303,7 @@ export const EnvKeys = [
"DSQL_MAIL_PASSWORD",
"DSQL_TINY_MCE_API_KEY",
"DSQL_GITHUB_ID",
"DSQL_USER_ID",
"DSQL_GITHUB_SECRET",
"DSQL_GITHUB_WEBHOOK_SECRET",
"DSQL_GITHUB_WEBHOOK_URL",

View File

@ -1,5 +1,6 @@
import { UserType } from "../types";
import grabDbFullName from "./grab-db-full-name";
import numberfy from "./numberfy";
type Param = {
/**
@ -8,7 +9,6 @@ type Param = {
dbName?: string;
userId?: string | number;
user?: UserType | null;
nullable?: boolean;
};
/**
@ -19,7 +19,13 @@ type Param = {
*/
export default function grabDbNames(params?: Param) {
const dbNamePrefix = process.env.DSQL_USER_DB_PREFIX || "datasquirel_user_";
const finalUserId = params?.user?.id || params?.userId;
const finalUserId =
params?.user?.id ||
params?.userId ||
numberfy(process.env.DSQL_USER_ID) ||
numberfy(process.env.DSQL_DB_NAME?.split("_")?.[2]) ||
undefined;
const userDbPrefix = finalUserId
? `${dbNamePrefix}${finalUserId}_`
: undefined;

View File

@ -1,6 +1,6 @@
{
"name": "@moduletrace/datasquirel",
"version": "5.3.7",
"version": "5.3.8",
"description": "Cloud-based SQL data management tool",
"main": "dist/index.js",
"bin": {