apeframework 0.0.0-dev.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +55 -0
- package/api/api.d.ts +7 -0
- package/api/api.js +2 -0
- package/api/api.ts +8 -0
- package/api/auth.d.ts +9 -0
- package/api/auth.js +11 -0
- package/api/auth.ts +9 -0
- package/api/config.d.ts +13 -0
- package/api/config.js +59 -0
- package/api/config.ts +69 -0
- package/api/endpoint.d.ts +20 -0
- package/api/endpoint.js +5 -0
- package/api/endpoint.ts +23 -0
- package/api/handler.d.ts +8 -0
- package/api/handler.js +13 -0
- package/api/handler.ts +23 -0
- package/api/index.d.ts +7 -0
- package/api/index.js +187 -0
- package/api/index.ts +97 -0
- package/api/route.d.ts +6 -0
- package/api/route.js +2 -0
- package/api/route.ts +4 -0
- package/api/router.d.ts +4 -0
- package/api/router.js +111 -0
- package/api/router.ts +36 -0
- package/api/schema.d.ts +29 -0
- package/api/schema.js +69 -0
- package/api/schema.ts +98 -0
- package/app/app.d.ts +6 -0
- package/app/app.js +2 -0
- package/app/app.ts +7 -0
- package/app/boot.d.ts +4 -0
- package/app/boot.js +2 -0
- package/app/boot.ts +5 -0
- package/app/bundle.d.ts +14 -0
- package/app/bundle.js +2 -0
- package/app/bundle.ts +15 -0
- package/app/config.d.ts +4 -0
- package/app/config.js +9 -0
- package/app/config.ts +9 -0
- package/app/index.d.ts +9 -0
- package/app/index.js +103 -0
- package/app/index.ts +32 -0
- package/bin/ape-cli-ts.js +4 -0
- package/bin/ape-cli.js +2 -0
- package/cli/command.d.ts +4 -0
- package/cli/command.js +2 -0
- package/cli/command.ts +7 -0
- package/cli/index.d.ts +2 -0
- package/cli/index.js +103 -0
- package/cli/index.ts +41 -0
- package/cli/internal/api.d.ts +3 -0
- package/cli/internal/api.js +110 -0
- package/cli/internal/api.ts +38 -0
- package/cli/internal/index.d.ts +2 -0
- package/cli/internal/index.js +13 -0
- package/cli/internal/index.ts +9 -0
- package/cli/internal/migration.d.ts +3 -0
- package/cli/internal/migration.js +214 -0
- package/cli/internal/migration.ts +110 -0
- package/cli/internal/queue.d.ts +3 -0
- package/cli/internal/queue.js +147 -0
- package/cli/internal/queue.ts +60 -0
- package/cli/utils.d.ts +18 -0
- package/cli/utils.js +52 -0
- package/cli/utils.ts +48 -0
- package/config/config.d.ts +5 -0
- package/config/config.js +2 -0
- package/config/config.ts +6 -0
- package/config/configuration.d.ts +63 -0
- package/config/configuration.js +2 -0
- package/config/configuration.ts +72 -0
- package/config/default.d.ts +33 -0
- package/config/default.js +34 -0
- package/config/default.ts +40 -0
- package/config/env.d.ts +66 -0
- package/config/env.js +72 -0
- package/config/env.ts +79 -0
- package/config/index.d.ts +8 -0
- package/config/index.js +91 -0
- package/config/index.ts +101 -0
- package/config/loadFile.d.ts +2 -0
- package/config/loadFile.js +13 -0
- package/config/loadFile.ts +9 -0
- package/config/node.d.ts +5 -0
- package/config/node.js +11 -0
- package/config/node.ts +7 -0
- package/config/store.d.ts +6 -0
- package/config/store.js +20 -0
- package/config/store.ts +15 -0
- package/db/config/index.d.ts +10 -0
- package/db/config/index.js +43 -0
- package/db/config/index.ts +35 -0
- package/db/config/memory.d.ts +3 -0
- package/db/config/memory.js +15 -0
- package/db/config/memory.ts +13 -0
- package/db/config/mysql.d.ts +3 -0
- package/db/config/mysql.js +56 -0
- package/db/config/mysql.ts +58 -0
- package/db/config/postgres.d.ts +3 -0
- package/db/config/postgres.js +59 -0
- package/db/config/postgres.ts +61 -0
- package/db/config/sqlite.d.ts +3 -0
- package/db/config/sqlite.js +21 -0
- package/db/config/sqlite.ts +20 -0
- package/db/database.d.ts +3 -0
- package/db/database.js +3 -0
- package/db/database.ts +5 -0
- package/db/index.d.ts +10 -0
- package/db/index.js +32 -0
- package/db/index.ts +26 -0
- package/db/postProcess.d.ts +3 -0
- package/db/postProcess.js +25 -0
- package/db/postProcess.ts +27 -0
- package/db/schema/builder/_.d.ts +30 -0
- package/db/schema/builder/_.js +87 -0
- package/db/schema/builder/_.ts +101 -0
- package/db/schema/builder/columnBuilder.d.ts +7 -0
- package/db/schema/builder/columnBuilder.js +14 -0
- package/db/schema/builder/columnBuilder.ts +15 -0
- package/db/schema/builder/dataType.d.ts +28 -0
- package/db/schema/builder/dataType.js +170 -0
- package/db/schema/builder/dataType.ts +184 -0
- package/db/schema/builder/index.d.ts +15 -0
- package/db/schema/builder/index.js +42 -0
- package/db/schema/builder/index.ts +50 -0
- package/db/schema/builder/tableBuilder.d.ts +45 -0
- package/db/schema/builder/tableBuilder.js +307 -0
- package/db/schema/builder/tableBuilder.ts +409 -0
- package/db/schema/config.d.ts +4 -0
- package/db/schema/config.js +5 -0
- package/db/schema/config.ts +3 -0
- package/db/schema/index.d.ts +7 -0
- package/db/schema/index.js +252 -0
- package/db/schema/index.ts +88 -0
- package/db/schema/migration.d.ts +6 -0
- package/db/schema/migration.js +2 -0
- package/db/schema/migration.ts +7 -0
- package/db/schema/migrationList.d.ts +5 -0
- package/db/schema/migrationList.js +2 -0
- package/db/schema/migrationList.ts +5 -0
- package/db/schema/migrationSource.d.ts +10 -0
- package/db/schema/migrationSource.js +60 -0
- package/db/schema/migrationSource.ts +24 -0
- package/db/schema/schema.d.ts +6 -0
- package/db/schema/schema.js +2 -0
- package/db/schema/schema.ts +7 -0
- package/db/utils/index.d.ts +7 -0
- package/db/utils/index.js +10 -0
- package/db/utils/index.ts +8 -0
- package/db/utils/insertGetKey.d.ts +8 -0
- package/db/utils/insertGetKey.js +109 -0
- package/db/utils/insertGetKey.ts +80 -0
- package/i18n/config.d.ts +4 -0
- package/i18n/config.js +9 -0
- package/i18n/config.ts +9 -0
- package/i18n/i18n.d.ts +5 -0
- package/i18n/i18n.js +2 -0
- package/i18n/i18n.ts +6 -0
- package/i18n/index.d.ts +8 -0
- package/i18n/index.js +155 -0
- package/i18n/index.ts +42 -0
- package/i18n/internationalization.d.ts +3 -0
- package/i18n/internationalization.js +2 -0
- package/i18n/internationalization.ts +5 -0
- package/i18n/translation.d.ts +4 -0
- package/i18n/translation.js +2 -0
- package/i18n/translation.ts +4 -0
- package/jwt/config.d.ts +5 -0
- package/jwt/config.js +12 -0
- package/jwt/config.ts +11 -0
- package/jwt/index.d.ts +8 -0
- package/jwt/index.js +90 -0
- package/jwt/index.ts +60 -0
- package/jwt/jwt.d.ts +6 -0
- package/jwt/jwt.js +2 -0
- package/jwt/jwt.ts +19 -0
- package/jwt/user.d.ts +4 -0
- package/jwt/user.js +2 -0
- package/jwt/user.ts +4 -0
- package/log/config.d.ts +23 -0
- package/log/config.js +47 -0
- package/log/config.ts +43 -0
- package/log/index.d.ts +4 -0
- package/log/index.js +9 -0
- package/log/index.ts +9 -0
- package/log/logger.d.ts +3 -0
- package/log/logger.js +2 -0
- package/log/logger.ts +5 -0
- package/mail/config.d.ts +4 -0
- package/mail/config.js +5 -0
- package/mail/config.ts +3 -0
- package/mail/email.d.ts +20 -0
- package/mail/email.js +2 -0
- package/mail/email.ts +21 -0
- package/mail/index.d.ts +2 -0
- package/mail/index.js +4 -0
- package/mail/index.ts +3 -0
- package/mail/mail.d.ts +12 -0
- package/mail/mail.js +2 -0
- package/mail/mail.ts +13 -0
- package/mail/module/bypass/index.d.ts +6 -0
- package/mail/module/bypass/index.js +74 -0
- package/mail/module/bypass/index.ts +9 -0
- package/mail/module/config.d.ts +11 -0
- package/mail/module/config.js +24 -0
- package/mail/module/config.ts +25 -0
- package/mail/module/index.d.ts +8 -0
- package/mail/module/index.js +107 -0
- package/mail/module/index.ts +61 -0
- package/mail/module/smtp/config.d.ts +6 -0
- package/mail/module/smtp/config.js +25 -0
- package/mail/module/smtp/config.ts +25 -0
- package/mail/module/smtp/index.d.ts +9 -0
- package/mail/module/smtp/index.js +104 -0
- package/mail/module/smtp/index.ts +36 -0
- package/mq/index.d.ts +3 -0
- package/mq/index.js +27 -0
- package/mq/index.ts +4 -0
- package/mq/module/bypass/index.d.ts +13 -0
- package/mq/module/bypass/index.js +86 -0
- package/mq/module/bypass/index.ts +20 -0
- package/mq/module/config.d.ts +6 -0
- package/mq/module/config.js +15 -0
- package/mq/module/config.ts +14 -0
- package/mq/module/index.d.ts +9 -0
- package/mq/module/index.js +93 -0
- package/mq/module/index.ts +24 -0
- package/mq/module/redis/config.d.ts +27 -0
- package/mq/module/redis/config.js +37 -0
- package/mq/module/redis/config.ts +34 -0
- package/mq/module/redis/index.d.ts +15 -0
- package/mq/module/redis/index.js +132 -0
- package/mq/module/redis/index.ts +60 -0
- package/mq/mq.d.ts +15 -0
- package/mq/mq.js +2 -0
- package/mq/mq.ts +18 -0
- package/mq/queue.d.ts +9 -0
- package/mq/queue.js +2 -0
- package/mq/queue.ts +11 -0
- package/package.json +53 -0
- package/pwd/config.d.ts +4 -0
- package/pwd/config.js +9 -0
- package/pwd/config.ts +9 -0
- package/pwd/index.d.ts +6 -0
- package/pwd/index.js +21 -0
- package/pwd/index.ts +20 -0
- package/pwd/pwd.d.ts +4 -0
- package/pwd/pwd.js +2 -0
- package/pwd/pwd.ts +4 -0
- package/utils/index.d.ts +25 -0
- package/utils/index.js +72 -0
- package/utils/index.ts +56 -0
package/config/env.js
ADDED
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
var dotenv_1 = __importDefault(require("dotenv"));
|
|
7
|
+
dotenv_1.default.config();
|
|
8
|
+
exports.default = {
|
|
9
|
+
nodeEnv: process.env.NODE_ENV,
|
|
10
|
+
nodePath: process.env.NODE_PATH,
|
|
11
|
+
appBoot: process.env.APE_APP_BOOT,
|
|
12
|
+
logLevel: process.env.APE_LOG_LEVEL,
|
|
13
|
+
logDestination: process.env.APE_LOG_DESTINATION,
|
|
14
|
+
logPretty: process.env.APE_LOG_PRETTY,
|
|
15
|
+
logFile: process.env.APE_LOG_FILE,
|
|
16
|
+
apiName: process.env.APE_API_NAME,
|
|
17
|
+
apiVersion: process.env.APE_API_VERSION,
|
|
18
|
+
apiHost: process.env.APE_API_HOST,
|
|
19
|
+
apiPort: process.env.APE_API_PORT,
|
|
20
|
+
apiRandomPort: process.env.APE_API_RANDOM_PORT,
|
|
21
|
+
apiConnectionTimeout: process.env.APE_API_CONNECTION_TIMEOUT,
|
|
22
|
+
apiRequestTimeout: process.env.APE_API_REQUEST_TIMEOUT,
|
|
23
|
+
apiKeepAliveTimeout: process.env.APE_API_KEEP_ALIVE_TIMEOUT,
|
|
24
|
+
apiBodyLimit: process.env.APE_API_BODY_LIMIT,
|
|
25
|
+
apiResponseValidation: process.env.APE_API_RESPONSE_VALIDATION,
|
|
26
|
+
jwtIssuer: process.env.APE_JWT_ISSUER,
|
|
27
|
+
jwtSecret: process.env.APE_JWT_SECRET,
|
|
28
|
+
pwdHashCost: process.env.APE_PWD_HASH_COST,
|
|
29
|
+
i18nFallbackLanguage: process.env.APE_I18N_FALLBACK_LANGUAGE,
|
|
30
|
+
dbModule: process.env.APE_DB_MODULE,
|
|
31
|
+
dbMysqlHost: process.env.APE_DB_MYSQL_HOST,
|
|
32
|
+
dbMysqlPort: process.env.APE_DB_MYSQL_PORT,
|
|
33
|
+
dbMysqlUser: process.env.APE_DB_MYSQL_USER,
|
|
34
|
+
dbMysqlPassword: process.env.APE_DB_MYSQL_PASSWORD,
|
|
35
|
+
dbMysqlDatabase: process.env.APE_DB_MYSQL_DATABASE,
|
|
36
|
+
dbMysqlSsl: process.env.APE_DB_MYSQL_SSL,
|
|
37
|
+
dbMysqlSslCa: process.env.APE_DB_MYSQL_SSL_CA,
|
|
38
|
+
dbMysqlSslCert: process.env.APE_DB_MYSQL_SSL_CERT,
|
|
39
|
+
dbMysqlSslKey: process.env.APE_DB_MYSQL_SSL_KEY,
|
|
40
|
+
dbMysqlSslVerify: process.env.APE_DB_MYSQL_SSL_VERIFY,
|
|
41
|
+
dbMysqlPoolMax: process.env.APE_DB_MYSQL_POOL_MAX,
|
|
42
|
+
dbPostgresHost: process.env.APE_DB_POSTGRES_HOST,
|
|
43
|
+
dbPostgresPort: process.env.APE_DB_POSTGRES_PORT,
|
|
44
|
+
dbPostgresUser: process.env.APE_DB_POSTGRES_USER,
|
|
45
|
+
dbPostgresPassword: process.env.APE_DB_POSTGRES_PASSWORD,
|
|
46
|
+
dbPostgresDatabase: process.env.APE_DB_POSTGRES_DATABASE,
|
|
47
|
+
dbPostgresSsl: process.env.APE_DB_POSTGRES_SSL,
|
|
48
|
+
dbPostgresSslCa: process.env.APE_DB_POSTGRES_SSL_CA,
|
|
49
|
+
dbPostgresSslCert: process.env.APE_DB_POSTGRES_SSL_CERT,
|
|
50
|
+
dbPostgresSslKey: process.env.APE_DB_POSTGRES_SSL_KEY,
|
|
51
|
+
dbPostgresSslVerify: process.env.APE_DB_POSTGRES_SSL_VERIFY,
|
|
52
|
+
dbPostgresPoolMax: process.env.APE_DB_POSTGRES_POOL_MAX,
|
|
53
|
+
dbSqliteFile: process.env.APE_DB_SQLITE_FILE,
|
|
54
|
+
cacheModule: process.env.APE_CACHE_MODULE,
|
|
55
|
+
cacheRedisHost: process.env.APE_CACHE_REDIS_HOST,
|
|
56
|
+
cacheRedisPort: process.env.APE_CACHE_REDIS_PORT,
|
|
57
|
+
cacheRedisUser: process.env.APE_CACHE_REDIS_USER,
|
|
58
|
+
cacheRedisPassword: process.env.APE_CACHE_REDIS_PASSWORD,
|
|
59
|
+
cacheRedisPrefix: process.env.APE_CACHE_REDIS_PREFIX,
|
|
60
|
+
mqModule: process.env.APE_MQ_MODULE,
|
|
61
|
+
mqRedisHost: process.env.APE_MQ_REDIS_HOST,
|
|
62
|
+
mqRedisPort: process.env.APE_MQ_REDIS_PORT,
|
|
63
|
+
mqRedisUser: process.env.APE_MQ_REDIS_USER,
|
|
64
|
+
mqRedisPassword: process.env.APE_MQ_REDIS_PASSWORD,
|
|
65
|
+
mqRedisPrefix: process.env.APE_MQ_REDIS_PREFIX,
|
|
66
|
+
mailModule: process.env.APE_MAIL_MODULE,
|
|
67
|
+
mailSmtpHost: process.env.APE_MAIL_SMTP_HOST,
|
|
68
|
+
mailSmtpPort: process.env.APE_MAIL_SMTP_PORT,
|
|
69
|
+
mailSmtpUser: process.env.APE_MAIL_SMTP_USER,
|
|
70
|
+
mailSmtpPassword: process.env.APE_MAIL_SMTP_PASSWORD,
|
|
71
|
+
mailSmtpEmail: process.env.APE_MAIL_SMTP_EMAIL,
|
|
72
|
+
};
|
package/config/env.ts
ADDED
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
import dotenv from 'dotenv'
|
|
2
|
+
|
|
3
|
+
dotenv.config()
|
|
4
|
+
|
|
5
|
+
export default {
|
|
6
|
+
nodeEnv: process.env.NODE_ENV,
|
|
7
|
+
nodePath: process.env.NODE_PATH,
|
|
8
|
+
|
|
9
|
+
appBoot: process.env.APE_APP_BOOT,
|
|
10
|
+
|
|
11
|
+
logLevel: process.env.APE_LOG_LEVEL,
|
|
12
|
+
logDestination: process.env.APE_LOG_DESTINATION,
|
|
13
|
+
logPretty: process.env.APE_LOG_PRETTY,
|
|
14
|
+
logFile: process.env.APE_LOG_FILE,
|
|
15
|
+
|
|
16
|
+
apiName: process.env.APE_API_NAME,
|
|
17
|
+
apiVersion: process.env.APE_API_VERSION,
|
|
18
|
+
apiHost: process.env.APE_API_HOST,
|
|
19
|
+
apiPort: process.env.APE_API_PORT,
|
|
20
|
+
apiRandomPort: process.env.APE_API_RANDOM_PORT,
|
|
21
|
+
apiConnectionTimeout: process.env.APE_API_CONNECTION_TIMEOUT,
|
|
22
|
+
apiRequestTimeout: process.env.APE_API_REQUEST_TIMEOUT,
|
|
23
|
+
apiKeepAliveTimeout: process.env.APE_API_KEEP_ALIVE_TIMEOUT,
|
|
24
|
+
apiBodyLimit: process.env.APE_API_BODY_LIMIT,
|
|
25
|
+
apiResponseValidation: process.env.APE_API_RESPONSE_VALIDATION,
|
|
26
|
+
|
|
27
|
+
jwtIssuer: process.env.APE_JWT_ISSUER,
|
|
28
|
+
jwtSecret: process.env.APE_JWT_SECRET,
|
|
29
|
+
|
|
30
|
+
pwdHashCost: process.env.APE_PWD_HASH_COST,
|
|
31
|
+
|
|
32
|
+
i18nFallbackLanguage: process.env.APE_I18N_FALLBACK_LANGUAGE,
|
|
33
|
+
|
|
34
|
+
dbModule: process.env.APE_DB_MODULE,
|
|
35
|
+
dbMysqlHost: process.env.APE_DB_MYSQL_HOST,
|
|
36
|
+
dbMysqlPort: process.env.APE_DB_MYSQL_PORT,
|
|
37
|
+
dbMysqlUser: process.env.APE_DB_MYSQL_USER,
|
|
38
|
+
dbMysqlPassword: process.env.APE_DB_MYSQL_PASSWORD,
|
|
39
|
+
dbMysqlDatabase: process.env.APE_DB_MYSQL_DATABASE,
|
|
40
|
+
dbMysqlSsl: process.env.APE_DB_MYSQL_SSL,
|
|
41
|
+
dbMysqlSslCa: process.env.APE_DB_MYSQL_SSL_CA,
|
|
42
|
+
dbMysqlSslCert: process.env.APE_DB_MYSQL_SSL_CERT,
|
|
43
|
+
dbMysqlSslKey: process.env.APE_DB_MYSQL_SSL_KEY,
|
|
44
|
+
dbMysqlSslVerify: process.env.APE_DB_MYSQL_SSL_VERIFY,
|
|
45
|
+
dbMysqlPoolMax: process.env.APE_DB_MYSQL_POOL_MAX,
|
|
46
|
+
dbPostgresHost: process.env.APE_DB_POSTGRES_HOST,
|
|
47
|
+
dbPostgresPort: process.env.APE_DB_POSTGRES_PORT,
|
|
48
|
+
dbPostgresUser: process.env.APE_DB_POSTGRES_USER,
|
|
49
|
+
dbPostgresPassword: process.env.APE_DB_POSTGRES_PASSWORD,
|
|
50
|
+
dbPostgresDatabase: process.env.APE_DB_POSTGRES_DATABASE,
|
|
51
|
+
dbPostgresSsl: process.env.APE_DB_POSTGRES_SSL,
|
|
52
|
+
dbPostgresSslCa: process.env.APE_DB_POSTGRES_SSL_CA,
|
|
53
|
+
dbPostgresSslCert: process.env.APE_DB_POSTGRES_SSL_CERT,
|
|
54
|
+
dbPostgresSslKey: process.env.APE_DB_POSTGRES_SSL_KEY,
|
|
55
|
+
dbPostgresSslVerify: process.env.APE_DB_POSTGRES_SSL_VERIFY,
|
|
56
|
+
dbPostgresPoolMax: process.env.APE_DB_POSTGRES_POOL_MAX,
|
|
57
|
+
dbSqliteFile: process.env.APE_DB_SQLITE_FILE,
|
|
58
|
+
|
|
59
|
+
cacheModule: process.env.APE_CACHE_MODULE,
|
|
60
|
+
cacheRedisHost: process.env.APE_CACHE_REDIS_HOST,
|
|
61
|
+
cacheRedisPort: process.env.APE_CACHE_REDIS_PORT,
|
|
62
|
+
cacheRedisUser: process.env.APE_CACHE_REDIS_USER,
|
|
63
|
+
cacheRedisPassword: process.env.APE_CACHE_REDIS_PASSWORD,
|
|
64
|
+
cacheRedisPrefix: process.env.APE_CACHE_REDIS_PREFIX,
|
|
65
|
+
|
|
66
|
+
mqModule: process.env.APE_MQ_MODULE,
|
|
67
|
+
mqRedisHost: process.env.APE_MQ_REDIS_HOST,
|
|
68
|
+
mqRedisPort: process.env.APE_MQ_REDIS_PORT,
|
|
69
|
+
mqRedisUser: process.env.APE_MQ_REDIS_USER,
|
|
70
|
+
mqRedisPassword: process.env.APE_MQ_REDIS_PASSWORD,
|
|
71
|
+
mqRedisPrefix: process.env.APE_MQ_REDIS_PREFIX,
|
|
72
|
+
|
|
73
|
+
mailModule: process.env.APE_MAIL_MODULE,
|
|
74
|
+
mailSmtpHost: process.env.APE_MAIL_SMTP_HOST,
|
|
75
|
+
mailSmtpPort: process.env.APE_MAIL_SMTP_PORT,
|
|
76
|
+
mailSmtpUser: process.env.APE_MAIL_SMTP_USER,
|
|
77
|
+
mailSmtpPassword: process.env.APE_MAIL_SMTP_PASSWORD,
|
|
78
|
+
mailSmtpEmail: process.env.APE_MAIL_SMTP_EMAIL,
|
|
79
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { Store } from './store';
|
|
2
|
+
import type { Config } from './config';
|
|
3
|
+
import type { Configuration } from './configuration';
|
|
4
|
+
export { Config, Configuration, Store };
|
|
5
|
+
export declare const initConfig: (override?: any, file?: string) => Configuration;
|
|
6
|
+
export declare const getConfig: () => Configuration;
|
|
7
|
+
declare const config: Config;
|
|
8
|
+
export default config;
|
package/config/index.js
ADDED
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.getConfig = exports.initConfig = exports.Store = void 0;
|
|
7
|
+
var utils_1 = require("../utils");
|
|
8
|
+
var store_1 = require("./store");
|
|
9
|
+
Object.defineProperty(exports, "Store", { enumerable: true, get: function () { return store_1.Store; } });
|
|
10
|
+
var default_1 = __importDefault(require("./default"));
|
|
11
|
+
var env_1 = __importDefault(require("./env"));
|
|
12
|
+
var loadFile_1 = __importDefault(require("./loadFile"));
|
|
13
|
+
var configuration;
|
|
14
|
+
var initConfig = function (override, file) {
|
|
15
|
+
if (override === void 0) { override = {}; }
|
|
16
|
+
if (file === void 0) { file = 'ape.config.json'; }
|
|
17
|
+
var json = (0, loadFile_1.default)(file);
|
|
18
|
+
var store = new store_1.Store(override, json, env_1.default, default_1.default);
|
|
19
|
+
configuration = {
|
|
20
|
+
appBoot: (0, utils_1.parseString)(store.get('appBoot')),
|
|
21
|
+
logLevel: (0, utils_1.parseString)(store.get('logLevel')),
|
|
22
|
+
logDestination: (0, utils_1.parseString)(store.get('logDestination')),
|
|
23
|
+
logPretty: (0, utils_1.parseBoolean)(store.get('logPretty')),
|
|
24
|
+
logFile: (0, utils_1.parseString)(store.get('logFile')),
|
|
25
|
+
apiName: (0, utils_1.parseString)(store.get('apiName')),
|
|
26
|
+
apiVersion: (0, utils_1.parseString)(store.get('apiVersion')),
|
|
27
|
+
apiHost: (0, utils_1.parseString)(store.get('apiHost')),
|
|
28
|
+
apiPort: (0, utils_1.parseNumber)(store.get('apiPort')),
|
|
29
|
+
apiRandomPort: (0, utils_1.parseBoolean)(store.get('apiRandomPort')),
|
|
30
|
+
apiConnectionTimeout: (0, utils_1.parseMilliseconds)(store.get('apiConnectionTimeout')),
|
|
31
|
+
apiRequestTimeout: (0, utils_1.parseMilliseconds)(store.get('apiRequestTimeout')),
|
|
32
|
+
apiKeepAliveTimeout: (0, utils_1.parseMilliseconds)(store.get('apiKeepAliveTimeout')),
|
|
33
|
+
apiBodyLimit: (0, utils_1.parseBytes)(store.get('apiBodyLimit')),
|
|
34
|
+
apiResponseValidation: (0, utils_1.parseBoolean)(store.get('apiResponseValidation')),
|
|
35
|
+
jwtIssuer: (0, utils_1.parseString)(store.get('jwtIssuer')),
|
|
36
|
+
jwtSecret: (0, utils_1.parseString)(store.get('jwtSecret')),
|
|
37
|
+
pwdHashCost: (0, utils_1.parseNumber)(store.get('pwdHashCost')),
|
|
38
|
+
i18nFallbackLanguage: (0, utils_1.parseString)(store.get('i18nFallbackLanguage')),
|
|
39
|
+
dbModule: (0, utils_1.parseString)(store.get('dbModule')),
|
|
40
|
+
dbMysqlHost: (0, utils_1.parseString)(store.get('dbMysqlHost')),
|
|
41
|
+
dbMysqlPort: (0, utils_1.parseNumber)(store.get('dbMysqlPort')),
|
|
42
|
+
dbMysqlUser: (0, utils_1.parseString)(store.get('dbMysqlUser')),
|
|
43
|
+
dbMysqlPassword: (0, utils_1.parseString)(store.get('dbMysqlPassword')),
|
|
44
|
+
dbMysqlDatabase: (0, utils_1.parseString)(store.get('dbMysqlDatabase')),
|
|
45
|
+
dbMysqlSsl: (0, utils_1.parseBoolean)(store.get('dbMysqlSsl')),
|
|
46
|
+
dbMysqlSslCa: (0, utils_1.parseString)(store.get('dbMysqlSslCa')),
|
|
47
|
+
dbMysqlSslCert: (0, utils_1.parseString)(store.get('dbMysqlSslCert')),
|
|
48
|
+
dbMysqlSslKey: (0, utils_1.parseString)(store.get('dbMysqlSslKey')),
|
|
49
|
+
dbMysqlSslVerify: (0, utils_1.parseBoolean)(store.get('dbMysqlSslVerify')),
|
|
50
|
+
dbMysqlPoolMax: (0, utils_1.parseNumber)(store.get('dbMysqlPoolMax')),
|
|
51
|
+
dbPostgresHost: (0, utils_1.parseString)(store.get('dbPostgresHost')),
|
|
52
|
+
dbPostgresPort: (0, utils_1.parseNumber)(store.get('dbPostgresPort')),
|
|
53
|
+
dbPostgresUser: (0, utils_1.parseString)(store.get('dbPostgresUser')),
|
|
54
|
+
dbPostgresPassword: (0, utils_1.parseString)(store.get('dbPostgresPassword')),
|
|
55
|
+
dbPostgresDatabase: (0, utils_1.parseString)(store.get('dbPostgresDatabase')),
|
|
56
|
+
dbPostgresSsl: (0, utils_1.parseBoolean)(store.get('dbPostgresSsl')),
|
|
57
|
+
dbPostgresSslCa: (0, utils_1.parseString)(store.get('dbPostgresSslCa')),
|
|
58
|
+
dbPostgresSslCert: (0, utils_1.parseString)(store.get('dbPostgresSslCert')),
|
|
59
|
+
dbPostgresSslKey: (0, utils_1.parseString)(store.get('dbPostgresSslKey')),
|
|
60
|
+
dbPostgresSslVerify: (0, utils_1.parseBoolean)(store.get('dbPostgresSslVerify')),
|
|
61
|
+
dbPostgresPoolMax: (0, utils_1.parseNumber)(store.get('dbPostgresPoolMax')),
|
|
62
|
+
dbSqliteFile: (0, utils_1.parseString)(store.get('dbSqliteFile')),
|
|
63
|
+
cacheModule: (0, utils_1.parseString)(store.get('cacheModule')),
|
|
64
|
+
cacheRedisHost: (0, utils_1.parseString)(store.get('cacheRedisHost')),
|
|
65
|
+
cacheRedisPort: (0, utils_1.parseNumber)(store.get('cacheRedisPort')),
|
|
66
|
+
cacheRedisUser: (0, utils_1.parseString)(store.get('cacheRedisUser')),
|
|
67
|
+
cacheRedisPassword: (0, utils_1.parseString)(store.get('cacheRedisPassword')),
|
|
68
|
+
cacheRedisPrefix: (0, utils_1.parseString)(store.get('cacheRedisPrefix')),
|
|
69
|
+
mqModule: (0, utils_1.parseString)(store.get('mqModule')),
|
|
70
|
+
mqRedisHost: (0, utils_1.parseString)(store.get('mqRedisHost')),
|
|
71
|
+
mqRedisPort: (0, utils_1.parseNumber)(store.get('mqRedisPort')),
|
|
72
|
+
mqRedisUser: (0, utils_1.parseString)(store.get('mqRedisUser')),
|
|
73
|
+
mqRedisPassword: (0, utils_1.parseString)(store.get('mqRedisPassword')),
|
|
74
|
+
mqRedisPrefix: (0, utils_1.parseString)(store.get('mqRedisPrefix')),
|
|
75
|
+
mailModule: (0, utils_1.parseString)(store.get('mailModule')),
|
|
76
|
+
mailSmtpHost: (0, utils_1.parseString)(store.get('mailSmtpHost')),
|
|
77
|
+
mailSmtpPort: (0, utils_1.parseNumber)(store.get('mailSmtpPort')),
|
|
78
|
+
mailSmtpUser: (0, utils_1.parseString)(store.get('mailSmtpUser')),
|
|
79
|
+
mailSmtpPassword: (0, utils_1.parseString)(store.get('mailSmtpPassword')),
|
|
80
|
+
mailSmtpEmail: (0, utils_1.parseString)(store.get('mailSmtpEmail')),
|
|
81
|
+
};
|
|
82
|
+
return configuration;
|
|
83
|
+
};
|
|
84
|
+
exports.initConfig = initConfig;
|
|
85
|
+
var getConfig = function () { return configuration !== null && configuration !== void 0 ? configuration : (0, exports.initConfig)(); };
|
|
86
|
+
exports.getConfig = getConfig;
|
|
87
|
+
var config = {
|
|
88
|
+
getConfig: exports.getConfig,
|
|
89
|
+
initConfig: exports.initConfig,
|
|
90
|
+
};
|
|
91
|
+
exports.default = config;
|
package/config/index.ts
ADDED
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
import { parseBoolean, parseBytes, parseMilliseconds, parseNumber, parseString } from '../utils'
|
|
2
|
+
import { Store } from './store'
|
|
3
|
+
import defaults from './default'
|
|
4
|
+
import env from './env'
|
|
5
|
+
import loadFile from './loadFile'
|
|
6
|
+
import type { Config } from './config'
|
|
7
|
+
import type { Configuration } from './configuration'
|
|
8
|
+
|
|
9
|
+
export { Config, Configuration, Store }
|
|
10
|
+
|
|
11
|
+
let configuration: Configuration | undefined
|
|
12
|
+
|
|
13
|
+
export const initConfig = (override: any = {}, file = 'ape.config.json') => {
|
|
14
|
+
const json = loadFile(file)
|
|
15
|
+
|
|
16
|
+
const store = new Store(override, json, env, defaults)
|
|
17
|
+
|
|
18
|
+
configuration = {
|
|
19
|
+
appBoot: parseString(store.get('appBoot')),
|
|
20
|
+
|
|
21
|
+
logLevel: parseString(store.get('logLevel')),
|
|
22
|
+
logDestination: parseString(store.get('logDestination')),
|
|
23
|
+
logPretty: parseBoolean(store.get('logPretty')),
|
|
24
|
+
logFile: parseString(store.get('logFile')),
|
|
25
|
+
|
|
26
|
+
apiName: parseString(store.get('apiName')),
|
|
27
|
+
apiVersion: parseString(store.get('apiVersion')),
|
|
28
|
+
apiHost: parseString(store.get('apiHost')),
|
|
29
|
+
apiPort: parseNumber(store.get('apiPort')),
|
|
30
|
+
apiRandomPort: parseBoolean(store.get('apiRandomPort')),
|
|
31
|
+
apiConnectionTimeout: parseMilliseconds(store.get('apiConnectionTimeout')),
|
|
32
|
+
apiRequestTimeout: parseMilliseconds(store.get('apiRequestTimeout')),
|
|
33
|
+
apiKeepAliveTimeout: parseMilliseconds(store.get('apiKeepAliveTimeout')),
|
|
34
|
+
apiBodyLimit: parseBytes(store.get('apiBodyLimit')),
|
|
35
|
+
apiResponseValidation: parseBoolean(store.get('apiResponseValidation')),
|
|
36
|
+
|
|
37
|
+
jwtIssuer: parseString(store.get('jwtIssuer')),
|
|
38
|
+
jwtSecret: parseString(store.get('jwtSecret')),
|
|
39
|
+
|
|
40
|
+
pwdHashCost: parseNumber(store.get('pwdHashCost')),
|
|
41
|
+
|
|
42
|
+
i18nFallbackLanguage: parseString(store.get('i18nFallbackLanguage')),
|
|
43
|
+
|
|
44
|
+
dbModule: parseString(store.get('dbModule')),
|
|
45
|
+
dbMysqlHost: parseString(store.get('dbMysqlHost')),
|
|
46
|
+
dbMysqlPort: parseNumber(store.get('dbMysqlPort')),
|
|
47
|
+
dbMysqlUser: parseString(store.get('dbMysqlUser')),
|
|
48
|
+
dbMysqlPassword: parseString(store.get('dbMysqlPassword')),
|
|
49
|
+
dbMysqlDatabase: parseString(store.get('dbMysqlDatabase')),
|
|
50
|
+
dbMysqlSsl: parseBoolean(store.get('dbMysqlSsl')),
|
|
51
|
+
dbMysqlSslCa: parseString(store.get('dbMysqlSslCa')),
|
|
52
|
+
dbMysqlSslCert: parseString(store.get('dbMysqlSslCert')),
|
|
53
|
+
dbMysqlSslKey: parseString(store.get('dbMysqlSslKey')),
|
|
54
|
+
dbMysqlSslVerify: parseBoolean(store.get('dbMysqlSslVerify')),
|
|
55
|
+
dbMysqlPoolMax: parseNumber(store.get('dbMysqlPoolMax')),
|
|
56
|
+
dbPostgresHost: parseString(store.get('dbPostgresHost')),
|
|
57
|
+
dbPostgresPort: parseNumber(store.get('dbPostgresPort')),
|
|
58
|
+
dbPostgresUser: parseString(store.get('dbPostgresUser')),
|
|
59
|
+
dbPostgresPassword: parseString(store.get('dbPostgresPassword')),
|
|
60
|
+
dbPostgresDatabase: parseString(store.get('dbPostgresDatabase')),
|
|
61
|
+
dbPostgresSsl: parseBoolean(store.get('dbPostgresSsl')),
|
|
62
|
+
dbPostgresSslCa: parseString(store.get('dbPostgresSslCa')),
|
|
63
|
+
dbPostgresSslCert: parseString(store.get('dbPostgresSslCert')),
|
|
64
|
+
dbPostgresSslKey: parseString(store.get('dbPostgresSslKey')),
|
|
65
|
+
dbPostgresSslVerify: parseBoolean(store.get('dbPostgresSslVerify')),
|
|
66
|
+
dbPostgresPoolMax: parseNumber(store.get('dbPostgresPoolMax')),
|
|
67
|
+
dbSqliteFile: parseString(store.get('dbSqliteFile')),
|
|
68
|
+
|
|
69
|
+
cacheModule: parseString(store.get('cacheModule')),
|
|
70
|
+
cacheRedisHost: parseString(store.get('cacheRedisHost')),
|
|
71
|
+
cacheRedisPort: parseNumber(store.get('cacheRedisPort')),
|
|
72
|
+
cacheRedisUser: parseString(store.get('cacheRedisUser')),
|
|
73
|
+
cacheRedisPassword: parseString(store.get('cacheRedisPassword')),
|
|
74
|
+
cacheRedisPrefix: parseString(store.get('cacheRedisPrefix')),
|
|
75
|
+
|
|
76
|
+
mqModule: parseString(store.get('mqModule')),
|
|
77
|
+
mqRedisHost: parseString(store.get('mqRedisHost')),
|
|
78
|
+
mqRedisPort: parseNumber(store.get('mqRedisPort')),
|
|
79
|
+
mqRedisUser: parseString(store.get('mqRedisUser')),
|
|
80
|
+
mqRedisPassword: parseString(store.get('mqRedisPassword')),
|
|
81
|
+
mqRedisPrefix: parseString(store.get('mqRedisPrefix')),
|
|
82
|
+
|
|
83
|
+
mailModule: parseString(store.get('mailModule')),
|
|
84
|
+
mailSmtpHost: parseString(store.get('mailSmtpHost')),
|
|
85
|
+
mailSmtpPort: parseNumber(store.get('mailSmtpPort')),
|
|
86
|
+
mailSmtpUser: parseString(store.get('mailSmtpUser')),
|
|
87
|
+
mailSmtpPassword: parseString(store.get('mailSmtpPassword')),
|
|
88
|
+
mailSmtpEmail: parseString(store.get('mailSmtpEmail')),
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
return configuration
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
export const getConfig = () => configuration ?? initConfig()
|
|
95
|
+
|
|
96
|
+
const config: Config = {
|
|
97
|
+
getConfig,
|
|
98
|
+
initConfig,
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
export default config
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
var fs_extra_1 = __importDefault(require("fs-extra"));
|
|
7
|
+
var loadFile = function (path) {
|
|
8
|
+
var json = {};
|
|
9
|
+
if (fs_extra_1.default.existsSync(path))
|
|
10
|
+
json = fs_extra_1.default.readJsonSync(path);
|
|
11
|
+
return json;
|
|
12
|
+
};
|
|
13
|
+
exports.default = loadFile;
|
package/config/node.d.ts
ADDED
package/config/node.js
ADDED
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
var utils_1 = require("../utils");
|
|
7
|
+
var env_1 = __importDefault(require("./env"));
|
|
8
|
+
exports.default = {
|
|
9
|
+
env: (0, utils_1.parseString)(env_1.default.nodeEnv),
|
|
10
|
+
path: (0, utils_1.parseString)(env_1.default.nodePath),
|
|
11
|
+
};
|
package/config/node.ts
ADDED
package/config/store.js
ADDED
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Store = void 0;
|
|
4
|
+
var Store = /** @class */ (function () {
|
|
5
|
+
function Store() {
|
|
6
|
+
var configurations = [];
|
|
7
|
+
for (var _i = 0; _i < arguments.length; _i++) {
|
|
8
|
+
configurations[_i] = arguments[_i];
|
|
9
|
+
}
|
|
10
|
+
this.configurations = configurations;
|
|
11
|
+
}
|
|
12
|
+
Store.prototype.get = function (property) {
|
|
13
|
+
return this.configurations
|
|
14
|
+
.map(function (config) { return config[property]; })
|
|
15
|
+
.find(function (value) { return value !== undefined; });
|
|
16
|
+
};
|
|
17
|
+
return Store;
|
|
18
|
+
}());
|
|
19
|
+
exports.Store = Store;
|
|
20
|
+
exports.default = Store;
|
package/config/store.ts
ADDED
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export class Store {
|
|
2
|
+
configurations: any[]
|
|
3
|
+
|
|
4
|
+
constructor(...configurations: any[]) {
|
|
5
|
+
this.configurations = configurations
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
get(property: string) {
|
|
9
|
+
return this.configurations
|
|
10
|
+
.map((config) => config[property])
|
|
11
|
+
.find((value) => value !== undefined)
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
export default Store
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { Database } from '../database';
|
|
2
|
+
export declare enum Module {
|
|
3
|
+
memory = "memory",
|
|
4
|
+
mysql = "mysql",
|
|
5
|
+
postgres = "postgres",
|
|
6
|
+
sqlite = "sqlite"
|
|
7
|
+
}
|
|
8
|
+
export declare const module: Module;
|
|
9
|
+
declare const dbConfig: Database.Config;
|
|
10
|
+
export default dbConfig;
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __assign = (this && this.__assign) || function () {
|
|
3
|
+
__assign = Object.assign || function(t) {
|
|
4
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
5
|
+
s = arguments[i];
|
|
6
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
7
|
+
t[p] = s[p];
|
|
8
|
+
}
|
|
9
|
+
return t;
|
|
10
|
+
};
|
|
11
|
+
return __assign.apply(this, arguments);
|
|
12
|
+
};
|
|
13
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
14
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
exports.module = exports.Module = void 0;
|
|
18
|
+
var config_1 = require("../../config");
|
|
19
|
+
var memory_1 = __importDefault(require("./memory"));
|
|
20
|
+
var mysql_1 = __importDefault(require("./mysql"));
|
|
21
|
+
var postgres_1 = __importDefault(require("./postgres"));
|
|
22
|
+
var sqlite_1 = __importDefault(require("./sqlite"));
|
|
23
|
+
var config = (0, config_1.getConfig)();
|
|
24
|
+
var Module;
|
|
25
|
+
(function (Module) {
|
|
26
|
+
Module["memory"] = "memory";
|
|
27
|
+
Module["mysql"] = "mysql";
|
|
28
|
+
Module["postgres"] = "postgres";
|
|
29
|
+
Module["sqlite"] = "sqlite";
|
|
30
|
+
})(Module || (exports.Module = Module = {}));
|
|
31
|
+
var dbModule = Object.values(Module)
|
|
32
|
+
.find(function (module) { return module === config.dbModule; });
|
|
33
|
+
if (!dbModule)
|
|
34
|
+
throw new Error("db: invalid module \"".concat(config.dbModule, "\""));
|
|
35
|
+
exports.module = dbModule;
|
|
36
|
+
var dbConfigHandler = {
|
|
37
|
+
memory: memory_1.default,
|
|
38
|
+
mysql: mysql_1.default,
|
|
39
|
+
postgres: postgres_1.default,
|
|
40
|
+
sqlite: sqlite_1.default,
|
|
41
|
+
};
|
|
42
|
+
var dbConfig = __assign(__assign({}, dbConfigHandler[exports.module]()), { useNullAsDefault: true });
|
|
43
|
+
exports.default = dbConfig;
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { getConfig } from '../../config'
|
|
2
|
+
import memoryConfig from './memory'
|
|
3
|
+
import mysqlConfig from './mysql'
|
|
4
|
+
import postgresConfig from './postgres'
|
|
5
|
+
import sqliteConfig from './sqlite'
|
|
6
|
+
import type { Database } from '../database'
|
|
7
|
+
|
|
8
|
+
const config = getConfig()
|
|
9
|
+
|
|
10
|
+
export enum Module {
|
|
11
|
+
memory = 'memory',
|
|
12
|
+
mysql = 'mysql',
|
|
13
|
+
postgres = 'postgres',
|
|
14
|
+
sqlite = 'sqlite',
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
const dbModule = Object.values(Module)
|
|
18
|
+
.find((module: string) => module === config.dbModule)
|
|
19
|
+
if (!dbModule) throw new Error(`db: invalid module "${config.dbModule}"`)
|
|
20
|
+
|
|
21
|
+
export const module = dbModule
|
|
22
|
+
|
|
23
|
+
const dbConfigHandler: { [module in Module]: () => Database.Config } = {
|
|
24
|
+
memory: memoryConfig,
|
|
25
|
+
mysql: mysqlConfig,
|
|
26
|
+
postgres: postgresConfig,
|
|
27
|
+
sqlite: sqliteConfig,
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
const dbConfig: Database.Config = {
|
|
31
|
+
...dbConfigHandler[module](),
|
|
32
|
+
useNullAsDefault: true,
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
export default dbConfig
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
var postProcess_1 = __importDefault(require("../postProcess"));
|
|
7
|
+
var dbConfig = function () { return ({
|
|
8
|
+
client: 'sqlite3',
|
|
9
|
+
connection: {
|
|
10
|
+
filename: ':memory:',
|
|
11
|
+
},
|
|
12
|
+
pool: { min: 0, max: 1 },
|
|
13
|
+
postProcessResponse: postProcess_1.default,
|
|
14
|
+
}); };
|
|
15
|
+
exports.default = dbConfig;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import postProcessResponse from '../postProcess'
|
|
2
|
+
import type { Database } from '../database'
|
|
3
|
+
|
|
4
|
+
const dbConfig: () => Database.Config = () => ({
|
|
5
|
+
client: 'sqlite3',
|
|
6
|
+
connection: {
|
|
7
|
+
filename: ':memory:',
|
|
8
|
+
},
|
|
9
|
+
pool: { min: 0, max: 1 },
|
|
10
|
+
postProcessResponse,
|
|
11
|
+
})
|
|
12
|
+
|
|
13
|
+
export default dbConfig
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __assign = (this && this.__assign) || function () {
|
|
3
|
+
__assign = Object.assign || function(t) {
|
|
4
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
5
|
+
s = arguments[i];
|
|
6
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
7
|
+
t[p] = s[p];
|
|
8
|
+
}
|
|
9
|
+
return t;
|
|
10
|
+
};
|
|
11
|
+
return __assign.apply(this, arguments);
|
|
12
|
+
};
|
|
13
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
14
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
var fs_extra_1 = __importDefault(require("fs-extra"));
|
|
18
|
+
var config_1 = require("../../config");
|
|
19
|
+
var dbConfig = function () {
|
|
20
|
+
var config = (0, config_1.getConfig)();
|
|
21
|
+
if (!config.dbMysqlHost)
|
|
22
|
+
throw new Error('db: mysql host not provided');
|
|
23
|
+
if (!config.dbMysqlPort)
|
|
24
|
+
throw new Error('db: mysql port not provided');
|
|
25
|
+
if (!config.dbMysqlDatabase)
|
|
26
|
+
throw new Error('db: mysql database not provided');
|
|
27
|
+
var typeCastValue;
|
|
28
|
+
var typeCast = function (field, next) {
|
|
29
|
+
switch (field.type) {
|
|
30
|
+
case 'BIT':
|
|
31
|
+
typeCastValue = field.buffer();
|
|
32
|
+
return typeCastValue === null ? null : !!typeCastValue[0];
|
|
33
|
+
case 'NEWDECIMAL':
|
|
34
|
+
typeCastValue = field.string();
|
|
35
|
+
return typeCastValue === null ? null : parseFloat(typeCastValue);
|
|
36
|
+
default:
|
|
37
|
+
return next();
|
|
38
|
+
}
|
|
39
|
+
};
|
|
40
|
+
return {
|
|
41
|
+
client: 'mysql2',
|
|
42
|
+
connection: __assign(__assign(__assign(__assign(__assign({ host: config.dbMysqlHost, port: config.dbMysqlPort }, config.dbMysqlUser ? { user: config.dbMysqlUser } : {}), config.dbMysqlPassword ? { password: config.dbMysqlPassword } : {}), { database: config.dbMysqlDatabase }), config.dbMysqlSsl
|
|
43
|
+
? {
|
|
44
|
+
ssl: __assign(__assign(__assign(__assign({}, config.dbMysqlSslCa
|
|
45
|
+
? { ca: fs_extra_1.default.readFileSync(config.dbMysqlSslCa).toString() }
|
|
46
|
+
: {}), config.dbMysqlSslCert
|
|
47
|
+
? { cert: fs_extra_1.default.readFileSync(config.dbMysqlSslCert).toString() }
|
|
48
|
+
: {}), config.dbMysqlSslKey
|
|
49
|
+
? { key: fs_extra_1.default.readFileSync(config.dbMysqlSslKey).toString() }
|
|
50
|
+
: {}), { rejectUnauthorized: config.dbMysqlSslVerify }),
|
|
51
|
+
}
|
|
52
|
+
: {}), { dateStrings: true, typeCast: typeCast }),
|
|
53
|
+
pool: { min: 0, max: config.dbMysqlPoolMax },
|
|
54
|
+
};
|
|
55
|
+
};
|
|
56
|
+
exports.default = dbConfig;
|