@directus/api
Version:
Directus is a real-time API and App dashboard for managing SQL database content
102 lines (100 loc) • 1.5 kB
JavaScript
import path from "path";
//#region src/cli/commands/init/questions.ts
const filename = ({ filepath }) => ({
type: "input",
name: "filename",
message: "Database File Path:",
default: path.join(filepath, "data.db")
});
const host = () => ({
type: "input",
name: "host",
message: "Database Host:",
default: "127.0.0.1"
});
const port = ({ client }) => ({
type: "input",
name: "port",
message: "Port:",
default() {
return {
pg: 5432,
cockroachdb: 26257,
mysql2: 3306,
oracledb: 1521,
mssql: 1433
}[client];
}
});
const database = () => ({
type: "input",
name: "database",
message: "Database Name:",
default: "directus"
});
const user = () => ({
type: "input",
name: "user",
message: "Database User:"
});
const password = () => ({
type: "password",
name: "password",
message: "Database Password:",
mask: "*"
});
const encrypt = () => ({
type: "confirm",
name: "options__encrypt",
message: "Encrypt Connection:",
default: false
});
const ssl = () => ({
type: "confirm",
name: "ssl",
message: "Enable SSL:",
default: false
});
const databaseQuestions = {
sqlite3: [filename],
mysql2: [
host,
port,
database,
user,
password
],
pg: [
host,
port,
database,
user,
password,
ssl
],
cockroachdb: [
host,
port,
database,
user,
password,
ssl
],
oracledb: [
host,
port,
database,
user,
password
],
mssql: [
host,
port,
database,
user,
password,
encrypt
]
};
//#endregion
export { databaseQuestions };