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
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
import { getBundle, getBundles, Bundle } from '../../app'
|
|
2
|
+
import { MigrationSource } from './migrationSource'
|
|
3
|
+
import config from './config'
|
|
4
|
+
import db from '..'
|
|
5
|
+
import type { Migration } from './migration'
|
|
6
|
+
import type { MigrationList } from './migrationList'
|
|
7
|
+
import type { Schema } from './schema'
|
|
8
|
+
|
|
9
|
+
const migrationConfig = (bundle: Bundle) => ({
|
|
10
|
+
migrationSource: new MigrationSource(bundle),
|
|
11
|
+
tableName: `${config.tablePrefix}_${bundle.bundleId}`,
|
|
12
|
+
})
|
|
13
|
+
|
|
14
|
+
const filterBundles = async (bundleId?: string, reverse?: boolean, one?: boolean) => {
|
|
15
|
+
const bundles: Bundle[] = []
|
|
16
|
+
if (bundleId) {
|
|
17
|
+
const bundle = await getBundle(bundleId)
|
|
18
|
+
if (bundle) bundles.push(bundle)
|
|
19
|
+
} else {
|
|
20
|
+
for (const bundle of await getBundles()) {
|
|
21
|
+
if (bundle.migrations && (await bundle.migrations()).length) {
|
|
22
|
+
bundles.push(bundle)
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
if (reverse) bundles.reverse()
|
|
27
|
+
return bundles.slice(0, one ? 1 : undefined)
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
export const listMigrations = async (bundleId?: string, pending?: boolean) => {
|
|
31
|
+
const migrationList: MigrationList = []
|
|
32
|
+
for (const bundle of await filterBundles(bundleId)) {
|
|
33
|
+
const result = await db.migrate.list(migrationConfig(bundle))
|
|
34
|
+
const done: { name: string }[] = result[0]
|
|
35
|
+
const pendingMigrations: Migration[] = result[1]
|
|
36
|
+
if (!pending) {
|
|
37
|
+
done.forEach((migration) => migrationList.push({
|
|
38
|
+
bundleId: bundle.bundleId,
|
|
39
|
+
migrationId: migration.name,
|
|
40
|
+
pending: false,
|
|
41
|
+
}))
|
|
42
|
+
}
|
|
43
|
+
pendingMigrations.forEach((migration) => migrationList.push({
|
|
44
|
+
bundleId: bundle.bundleId,
|
|
45
|
+
migrationId: migration.migrationId,
|
|
46
|
+
pending: true,
|
|
47
|
+
}))
|
|
48
|
+
}
|
|
49
|
+
return migrationList
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
export const runMigrations = async (bundleId?: string, one?: boolean) => {
|
|
53
|
+
const migrationList: MigrationList = []
|
|
54
|
+
for (const bundle of await filterBundles(bundleId, false, one)) {
|
|
55
|
+
const result = one
|
|
56
|
+
? await db.migrate.up(migrationConfig(bundle))
|
|
57
|
+
: await db.migrate.latest(migrationConfig(bundle))
|
|
58
|
+
const done: string[] = result[1]
|
|
59
|
+
done.forEach((migration) => migrationList.push({
|
|
60
|
+
bundleId: bundle.bundleId,
|
|
61
|
+
migrationId: migration,
|
|
62
|
+
}))
|
|
63
|
+
}
|
|
64
|
+
return migrationList
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
export const rollbackMigrations = async (bundleId?: string, one?: boolean) => {
|
|
68
|
+
const migrationList: MigrationList = []
|
|
69
|
+
for (const bundle of await filterBundles(bundleId, true, one)) {
|
|
70
|
+
const result = one
|
|
71
|
+
? await db.migrate.down(migrationConfig(bundle))
|
|
72
|
+
: await db.migrate.rollback(migrationConfig(bundle))
|
|
73
|
+
const done: string[] = result[1]
|
|
74
|
+
done.forEach((migration) => migrationList.push({
|
|
75
|
+
bundleId: bundle.bundleId,
|
|
76
|
+
migrationId: migration,
|
|
77
|
+
}))
|
|
78
|
+
}
|
|
79
|
+
return migrationList
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
const schema: Schema = {
|
|
83
|
+
listMigrations,
|
|
84
|
+
rollbackMigrations,
|
|
85
|
+
runMigrations,
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
export default schema
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { Bundle } from '../../app';
|
|
2
|
+
import type { Migration } from './migration';
|
|
3
|
+
export declare class MigrationSource {
|
|
4
|
+
private bundle;
|
|
5
|
+
constructor(bundle: Bundle);
|
|
6
|
+
getMigrations(): Promise<Migration[]>;
|
|
7
|
+
getMigrationName(migration: Migration): string;
|
|
8
|
+
getMigration(migration: Migration): Promise<Migration>;
|
|
9
|
+
}
|
|
10
|
+
export default MigrationSource;
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
12
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
13
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
14
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
15
|
+
function step(op) {
|
|
16
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
17
|
+
while (g && (g = 0, op[0] && (_ = 0)), _) try {
|
|
18
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
19
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
20
|
+
switch (op[0]) {
|
|
21
|
+
case 0: case 1: t = op; break;
|
|
22
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
23
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
24
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
25
|
+
default:
|
|
26
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
27
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
28
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
29
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
30
|
+
if (t[2]) _.ops.pop();
|
|
31
|
+
_.trys.pop(); continue;
|
|
32
|
+
}
|
|
33
|
+
op = body.call(thisArg, _);
|
|
34
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
35
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
36
|
+
}
|
|
37
|
+
};
|
|
38
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
+
exports.MigrationSource = void 0;
|
|
40
|
+
var MigrationSource = /** @class */ (function () {
|
|
41
|
+
function MigrationSource(bundle) {
|
|
42
|
+
this.bundle = bundle;
|
|
43
|
+
}
|
|
44
|
+
MigrationSource.prototype.getMigrations = function () {
|
|
45
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
46
|
+
return __generator(this, function (_a) {
|
|
47
|
+
return [2 /*return*/, this.bundle.migrations ? this.bundle.migrations() : Promise.resolve([])];
|
|
48
|
+
});
|
|
49
|
+
});
|
|
50
|
+
};
|
|
51
|
+
MigrationSource.prototype.getMigrationName = function (migration) {
|
|
52
|
+
return migration.migrationId;
|
|
53
|
+
};
|
|
54
|
+
MigrationSource.prototype.getMigration = function (migration) {
|
|
55
|
+
return Promise.resolve(migration);
|
|
56
|
+
};
|
|
57
|
+
return MigrationSource;
|
|
58
|
+
}());
|
|
59
|
+
exports.MigrationSource = MigrationSource;
|
|
60
|
+
exports.default = MigrationSource;
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import type { Bundle } from '../../app'
|
|
2
|
+
import type { Migration } from './migration'
|
|
3
|
+
|
|
4
|
+
export class MigrationSource {
|
|
5
|
+
private bundle: Bundle
|
|
6
|
+
|
|
7
|
+
constructor(bundle: Bundle) {
|
|
8
|
+
this.bundle = bundle
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
async getMigrations() {
|
|
12
|
+
return this.bundle.migrations ? this.bundle.migrations() : Promise.resolve([])
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
getMigrationName(migration: Migration) {
|
|
16
|
+
return migration.migrationId
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
getMigration(migration: Migration) {
|
|
20
|
+
return Promise.resolve(migration)
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
export default MigrationSource
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { MigrationList } from './migrationList';
|
|
2
|
+
export interface Schema {
|
|
3
|
+
listMigrations: (bundleId?: string, pending?: boolean) => Promise<MigrationList>;
|
|
4
|
+
rollbackMigrations: (bundleId?: string, one?: boolean) => Promise<MigrationList>;
|
|
5
|
+
runMigrations: (bundleId?: string, one?: boolean) => Promise<MigrationList>;
|
|
6
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { MigrationList } from './migrationList'
|
|
2
|
+
|
|
3
|
+
export interface Schema {
|
|
4
|
+
listMigrations: (bundleId?: string, pending?: boolean) => Promise<MigrationList>,
|
|
5
|
+
rollbackMigrations: (bundleId?: string, one?: boolean) => Promise<MigrationList>,
|
|
6
|
+
runMigrations: (bundleId?: string, one?: boolean) => Promise<MigrationList>,
|
|
7
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { insertGetKey, insertGetKeys } from './insertGetKey';
|
|
2
|
+
export { insertGetKey, insertGetKeys };
|
|
3
|
+
declare const _default: {
|
|
4
|
+
insertGetKey: <Record_1 extends object = any>(query: import("knex").Knex.QueryBuilder<any, any>, primaryColumn: string, data: Partial<Record_1>) => Promise<number>;
|
|
5
|
+
insertGetKeys: <Record_2 extends object = any>(query: import("knex").Knex.QueryBuilder<any, any>, primaryColumn: string, data: Partial<Record_2>[]) => Promise<number[]>;
|
|
6
|
+
};
|
|
7
|
+
export default _default;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.insertGetKeys = exports.insertGetKey = void 0;
|
|
4
|
+
var insertGetKey_1 = require("./insertGetKey");
|
|
5
|
+
Object.defineProperty(exports, "insertGetKey", { enumerable: true, get: function () { return insertGetKey_1.insertGetKey; } });
|
|
6
|
+
Object.defineProperty(exports, "insertGetKeys", { enumerable: true, get: function () { return insertGetKey_1.insertGetKeys; } });
|
|
7
|
+
exports.default = {
|
|
8
|
+
insertGetKey: insertGetKey_1.insertGetKey,
|
|
9
|
+
insertGetKeys: insertGetKey_1.insertGetKeys,
|
|
10
|
+
};
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { Database } from '..';
|
|
2
|
+
export declare const insertGetKeys: <Record_1 extends object = any>(query: Database.QueryBuilder, primaryColumn: string, data: Partial<Record_1>[]) => Promise<number[]>;
|
|
3
|
+
export declare const insertGetKey: <Record_1 extends object = any>(query: Database.QueryBuilder, primaryColumn: string, data: Partial<Record_1>) => Promise<number>;
|
|
4
|
+
declare const _default: {
|
|
5
|
+
insertGetKey: <Record_1 extends object = any>(query: Database.QueryBuilder<any, any>, primaryColumn: string, data: Partial<Record_1>) => Promise<number>;
|
|
6
|
+
insertGetKeys: <Record_2 extends object = any>(query: Database.QueryBuilder<any, any>, primaryColumn: string, data: Partial<Record_2>[]) => Promise<number[]>;
|
|
7
|
+
};
|
|
8
|
+
export default _default;
|
|
@@ -0,0 +1,109 @@
|
|
|
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 __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
14
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
15
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
16
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
17
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
18
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
19
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
20
|
+
});
|
|
21
|
+
};
|
|
22
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
23
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
24
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
25
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
26
|
+
function step(op) {
|
|
27
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
28
|
+
while (g && (g = 0, op[0] && (_ = 0)), _) try {
|
|
29
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
30
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
31
|
+
switch (op[0]) {
|
|
32
|
+
case 0: case 1: t = op; break;
|
|
33
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
34
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
35
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
36
|
+
default:
|
|
37
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
38
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
39
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
40
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
41
|
+
if (t[2]) _.ops.pop();
|
|
42
|
+
_.trys.pop(); continue;
|
|
43
|
+
}
|
|
44
|
+
op = body.call(thisArg, _);
|
|
45
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
46
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
47
|
+
}
|
|
48
|
+
};
|
|
49
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
50
|
+
exports.insertGetKey = exports.insertGetKeys = void 0;
|
|
51
|
+
var config_1 = require("../config");
|
|
52
|
+
var prepareQueryHandler = {
|
|
53
|
+
mysql: function (query) { return query; },
|
|
54
|
+
postgres: function (query, primaryColumn) { return query.returning(primaryColumn); },
|
|
55
|
+
sqlite: function (query) { return query; },
|
|
56
|
+
};
|
|
57
|
+
var processResultHandler = {
|
|
58
|
+
mysql: function (result, count) {
|
|
59
|
+
var keys = [];
|
|
60
|
+
for (var i = result[0]; i < result[0] + count; i += 1) {
|
|
61
|
+
keys.push(i);
|
|
62
|
+
}
|
|
63
|
+
return keys;
|
|
64
|
+
},
|
|
65
|
+
postgres: function (result, count, primaryColumn) { return result.map(function (record) { return record[primaryColumn]; }); },
|
|
66
|
+
sqlite: function (result, count) {
|
|
67
|
+
var keys = [];
|
|
68
|
+
for (var i = result[0] - count; i < result[0]; i += 1) {
|
|
69
|
+
keys.push(i + 1);
|
|
70
|
+
}
|
|
71
|
+
return keys;
|
|
72
|
+
},
|
|
73
|
+
};
|
|
74
|
+
var prepareQuery = function (primaryColumn, query) {
|
|
75
|
+
var prepare = __assign(__assign({}, prepareQueryHandler), { memory: prepareQueryHandler.sqlite });
|
|
76
|
+
return prepare[config_1.module](primaryColumn, query);
|
|
77
|
+
};
|
|
78
|
+
var processResult = function (result, count, primaryColumn) {
|
|
79
|
+
var process = __assign(__assign({}, processResultHandler), { memory: processResultHandler.sqlite });
|
|
80
|
+
return process[config_1.module](result, count, primaryColumn);
|
|
81
|
+
};
|
|
82
|
+
var insertGetKeys = function (query, primaryColumn, data) { return __awaiter(void 0, void 0, void 0, function () {
|
|
83
|
+
var result;
|
|
84
|
+
return __generator(this, function (_a) {
|
|
85
|
+
switch (_a.label) {
|
|
86
|
+
case 0: return [4 /*yield*/, prepareQuery(query.insert(data), primaryColumn)];
|
|
87
|
+
case 1:
|
|
88
|
+
result = _a.sent();
|
|
89
|
+
return [2 /*return*/, processResult(result, data.length, primaryColumn)];
|
|
90
|
+
}
|
|
91
|
+
});
|
|
92
|
+
}); };
|
|
93
|
+
exports.insertGetKeys = insertGetKeys;
|
|
94
|
+
var insertGetKey = function (query, primaryColumn, data) { return __awaiter(void 0, void 0, void 0, function () {
|
|
95
|
+
var result;
|
|
96
|
+
return __generator(this, function (_a) {
|
|
97
|
+
switch (_a.label) {
|
|
98
|
+
case 0: return [4 /*yield*/, prepareQuery(query.insert(data), primaryColumn)];
|
|
99
|
+
case 1:
|
|
100
|
+
result = _a.sent();
|
|
101
|
+
return [2 /*return*/, processResult(result, 1, primaryColumn)[0]];
|
|
102
|
+
}
|
|
103
|
+
});
|
|
104
|
+
}); };
|
|
105
|
+
exports.insertGetKey = insertGetKey;
|
|
106
|
+
exports.default = {
|
|
107
|
+
insertGetKey: exports.insertGetKey,
|
|
108
|
+
insertGetKeys: exports.insertGetKeys,
|
|
109
|
+
};
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
import { module, Module } from '../config'
|
|
2
|
+
import type { Database } from '..'
|
|
3
|
+
|
|
4
|
+
type PrepareQuery = (
|
|
5
|
+
query: Database.QueryBuilder,
|
|
6
|
+
primaryColumn: string
|
|
7
|
+
) => Database.QueryBuilder
|
|
8
|
+
|
|
9
|
+
type ProcessResult = (
|
|
10
|
+
result: any,
|
|
11
|
+
count: number,
|
|
12
|
+
primaryColumn: string
|
|
13
|
+
) => number[]
|
|
14
|
+
|
|
15
|
+
const prepareQueryHandler: { [module in Exclude<Module, 'memory'>]: PrepareQuery } = {
|
|
16
|
+
mysql: (query) => query,
|
|
17
|
+
postgres: (query, primaryColumn) => query.returning(primaryColumn),
|
|
18
|
+
sqlite: (query) => query,
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
const processResultHandler: {
|
|
22
|
+
[module in Exclude<Module, 'memory'>]: ProcessResult
|
|
23
|
+
} = {
|
|
24
|
+
mysql: (result, count) => {
|
|
25
|
+
const keys = []
|
|
26
|
+
for (let i = result[0]; i < result[0] + count; i += 1) {
|
|
27
|
+
keys.push(i)
|
|
28
|
+
}
|
|
29
|
+
return keys
|
|
30
|
+
},
|
|
31
|
+
postgres: (result, count, primaryColumn) => result.map(
|
|
32
|
+
(record: any) => record[primaryColumn],
|
|
33
|
+
),
|
|
34
|
+
sqlite: (result, count) => {
|
|
35
|
+
const keys = []
|
|
36
|
+
for (let i = result[0] - count; i < result[0]; i += 1) {
|
|
37
|
+
keys.push(i + 1)
|
|
38
|
+
}
|
|
39
|
+
return keys
|
|
40
|
+
},
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
const prepareQuery: PrepareQuery = (primaryColumn, query) => {
|
|
44
|
+
const prepare: { [module in Module]: PrepareQuery } = {
|
|
45
|
+
...prepareQueryHandler,
|
|
46
|
+
memory: prepareQueryHandler.sqlite,
|
|
47
|
+
}
|
|
48
|
+
return prepare[module](primaryColumn, query)
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
const processResult: ProcessResult = (result, count, primaryColumn) => {
|
|
52
|
+
const process: { [module in Module]: ProcessResult } = {
|
|
53
|
+
...processResultHandler,
|
|
54
|
+
memory: processResultHandler.sqlite,
|
|
55
|
+
}
|
|
56
|
+
return process[module](result, count, primaryColumn)
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
export const insertGetKeys = async <Record extends object = any>(
|
|
60
|
+
query: Database.QueryBuilder,
|
|
61
|
+
primaryColumn: string,
|
|
62
|
+
data: Partial<Record>[],
|
|
63
|
+
) => {
|
|
64
|
+
const result = await prepareQuery(query.insert(data), primaryColumn)
|
|
65
|
+
return processResult(result, data.length, primaryColumn)
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
export const insertGetKey = async <Record extends object = any>(
|
|
69
|
+
query: Database.QueryBuilder,
|
|
70
|
+
primaryColumn: string,
|
|
71
|
+
data: Partial<Record>,
|
|
72
|
+
) => {
|
|
73
|
+
const result = await prepareQuery(query.insert(data), primaryColumn)
|
|
74
|
+
return processResult(result, 1, primaryColumn)[0]
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
export default {
|
|
78
|
+
insertGetKey,
|
|
79
|
+
insertGetKeys,
|
|
80
|
+
}
|
package/i18n/config.d.ts
ADDED
package/i18n/config.js
ADDED
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
var config_1 = require("../config");
|
|
4
|
+
var config = (0, config_1.getConfig)();
|
|
5
|
+
if (!config.i18nFallbackLanguage)
|
|
6
|
+
throw new Error('i18n: fallback language not provided');
|
|
7
|
+
exports.default = {
|
|
8
|
+
fallbackLanguage: config.i18nFallbackLanguage,
|
|
9
|
+
};
|
package/i18n/config.ts
ADDED
package/i18n/i18n.d.ts
ADDED
package/i18n/i18n.js
ADDED
package/i18n/i18n.ts
ADDED
package/i18n/index.d.ts
ADDED
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { I18n } from './i18n';
|
|
2
|
+
import type { Internationalization } from './internationalization';
|
|
3
|
+
import type { Translation } from './translation';
|
|
4
|
+
export { I18n, Internationalization, Translation };
|
|
5
|
+
export declare const initI18n: () => Promise<Internationalization>;
|
|
6
|
+
export declare const getI18n: () => Promise<Internationalization>;
|
|
7
|
+
declare const i18n: I18n;
|
|
8
|
+
export default i18n;
|