@antelopejs/dms-database 0.0.14 → 0.1.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/README.md +30 -5
- package/dist/db/models/query_history.model.d.ts +1 -0
- package/dist/db/models/query_history.model.js +6 -0
- package/dist/db/models/query_history.model.js.map +1 -1
- package/dist/db/tables/query_history.table.d.ts +3 -0
- package/dist/db/tables/query_history.table.js +12 -0
- package/dist/db/tables/query_history.table.js.map +1 -1
- package/dist/db/tables/saved_queries.table.d.ts +1 -0
- package/dist/db/tables/saved_queries.table.js +4 -0
- package/dist/db/tables/saved_queries.table.js.map +1 -1
- package/dist/i18n/messages.d.ts +39 -0
- package/dist/i18n/messages.js +64 -0
- package/dist/i18n/messages.js.map +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.js +1 -7
- package/dist/index.js.map +1 -1
- package/dist/module.d.ts +11 -0
- package/dist/module.js +55 -0
- package/dist/module.js.map +1 -0
- package/dist/pages/data.d.ts +1 -1
- package/dist/pages/data.js +9 -6
- package/dist/pages/data.js.map +1 -1
- package/dist/pages/diagram.d.ts +9 -0
- package/dist/pages/diagram.js +45 -0
- package/dist/pages/diagram.js.map +1 -0
- package/dist/pages/index.d.ts +1 -0
- package/dist/pages/index.js +1 -0
- package/dist/pages/index.js.map +1 -1
- package/dist/pages/overview.d.ts +4 -1
- package/dist/pages/overview.js +113 -6
- package/dist/pages/overview.js.map +1 -1
- package/dist/pages/query.d.ts +1 -1
- package/dist/pages/query.js +22 -6
- package/dist/pages/query.js.map +1 -1
- package/dist/pages/schemas.d.ts +2 -1
- package/dist/pages/schemas.js +143 -6
- package/dist/pages/schemas.js.map +1 -1
- package/dist/routes/data.d.ts +8 -0
- package/dist/routes/data.js +84 -21
- package/dist/routes/data.js.map +1 -1
- package/dist/routes/index.d.ts +1 -0
- package/dist/routes/index.js +1 -0
- package/dist/routes/index.js.map +1 -1
- package/dist/routes/overview.d.ts +12 -0
- package/dist/routes/overview.js +55 -0
- package/dist/routes/overview.js.map +1 -0
- package/dist/routes/query.d.ts +5 -1
- package/dist/routes/query.js +162 -27
- package/dist/routes/query.js.map +1 -1
- package/dist/routes/tables.d.ts +15 -12
- package/dist/routes/tables.js +95 -55
- package/dist/routes/tables.js.map +1 -1
- package/dist/service/catalog.d.ts +3 -0
- package/dist/service/catalog.js +26 -0
- package/dist/service/catalog.js.map +1 -0
- package/dist/service/health.d.ts +3 -3
- package/dist/service/health.js +17 -14
- package/dist/service/health.js.map +1 -1
- package/dist/service/introspect.d.ts +3 -1
- package/dist/service/introspect.js +131 -43
- package/dist/service/introspect.js.map +1 -1
- package/dist/service/overview.d.ts +9 -0
- package/dist/service/overview.js +113 -0
- package/dist/service/overview.js.map +1 -0
- package/dist/service/queryInspection.d.ts +15 -0
- package/dist/service/queryInspection.js +107 -0
- package/dist/service/queryInspection.js.map +1 -0
- package/dist/service/references.d.ts +9 -0
- package/dist/service/references.js +52 -0
- package/dist/service/references.js.map +1 -0
- package/dist/service/schemaFilters.d.ts +26 -0
- package/dist/service/schemaFilters.js +42 -0
- package/dist/service/schemaFilters.js.map +1 -0
- package/dist/service/stagedSerialization.d.ts +2 -0
- package/dist/service/stagedSerialization.js +38 -10
- package/dist/service/stagedSerialization.js.map +1 -1
- package/dist/service/types.d.ts +11 -1
- package/dist/types/constants.d.ts +2 -0
- package/dist/types/constants.js +3 -1
- package/dist/types/constants.js.map +1 -1
- package/dist/utils/query.d.ts +0 -2
- package/dist/utils/query.js +0 -20
- package/dist/utils/query.js.map +1 -1
- package/frontend-vue/app/{composables → build/composables}/useDataBrowserGrid.ts +65 -50
- package/frontend-vue/app/build/composables/useDataBrowserTabs.ts +366 -0
- package/frontend-vue/app/build/composables/useDatabaseHealth.ts +50 -0
- package/frontend-vue/app/build/composables/useDatabaseSchemas.ts +140 -0
- package/frontend-vue/app/{composables → build/composables}/useDiagramPersistence.ts +47 -39
- package/frontend-vue/app/build/composables/useQueryRuntime.ts +217 -0
- package/frontend-vue/app/build/composables/useQueryStore.ts +162 -0
- package/frontend-vue/app/build/data/cellValues.ts +132 -0
- package/frontend-vue/app/build/data/instanceOptions.ts +36 -0
- package/frontend-vue/app/build/data/pickerMenus.ts +175 -0
- package/frontend-vue/app/build/data/recentTables.ts +48 -0
- package/frontend-vue/app/build/data/stagedEdits.ts +117 -0
- package/frontend-vue/app/build/data/stagedWrites.ts +64 -0
- package/frontend-vue/app/build/data/useStagedSave.ts +298 -0
- package/frontend-vue/app/build/diagram/autosave.ts +72 -0
- package/frontend-vue/app/build/diagram/graph.ts +585 -0
- package/frontend-vue/app/build/diagram/history.ts +178 -0
- package/frontend-vue/app/build/diagram/shortcuts.ts +62 -0
- package/frontend-vue/app/build/diagram/sync.ts +137 -0
- package/frontend-vue/app/build/query/completion.ts +100 -0
- package/frontend-vue/app/build/query/csv.ts +32 -0
- package/frontend-vue/app/build/query/examples.ts +38 -0
- package/frontend-vue/app/build/query/runs.ts +168 -0
- package/frontend-vue/app/build/query/tableColumns.ts +35 -0
- package/frontend-vue/app/build/query/target.ts +143 -0
- package/frontend-vue/app/build/schemas/filterState.ts +128 -0
- package/frontend-vue/app/build/schemas/useSchemasListing.ts +62 -0
- package/frontend-vue/app/build/utils/databaseLinks.ts +98 -0
- package/frontend-vue/app/build/utils/fieldTypes.ts +198 -0
- package/frontend-vue/app/build/utils/relativeTime.ts +19 -0
- package/frontend-vue/app/{utils → build/utils}/stagedSerialization.ts +7 -1
- package/frontend-vue/app/components/ConnectionStatus.vue +122 -0
- package/frontend-vue/app/components/DataBrowser.vue +126 -0
- package/frontend-vue/app/components/DataBrowserSidebar.vue +293 -210
- package/frontend-vue/app/components/DataBrowserTabBar.vue +185 -93
- package/frontend-vue/app/components/DataFilterBar.vue +163 -0
- package/frontend-vue/app/components/DataGrid.vue +737 -499
- package/frontend-vue/app/components/DataGridCell.vue +125 -77
- package/frontend-vue/app/components/DataGridHeaderCell.vue +119 -81
- package/frontend-vue/app/components/DiagramNoteNode.vue +81 -63
- package/frontend-vue/app/components/DiagramRelationEdge.vue +57 -27
- package/frontend-vue/app/components/DiagramStubNode.vue +16 -17
- package/frontend-vue/app/components/DiagramTableNode.vue +106 -68
- package/frontend-vue/app/components/InstancePicker.vue +195 -0
- package/frontend-vue/app/components/JsonCellPanel.vue +55 -41
- package/frontend-vue/app/components/QueryBuilderPanel.vue +290 -238
- package/frontend-vue/app/components/QueryConsole.vue +726 -0
- package/frontend-vue/app/components/QueryLibrary.vue +314 -0
- package/frontend-vue/app/components/QueryResultPanel.vue +556 -126
- package/frontend-vue/app/components/RowDrawer.vue +520 -0
- package/frontend-vue/app/components/SchemaDiagram.vue +1016 -1051
- package/frontend-vue/app/components/SchemaPicker.vue +86 -0
- package/frontend-vue/app/components/SchemasFilterBar.vue +201 -0
- package/frontend-vue/app/components/TableInspector.vue +741 -0
- package/frontend-vue/app/config/shortcuts-registry.ts +65 -0
- package/frontend-vue/dms.frontend.ts +5 -14
- package/frontend-vue/i18n/locales/database-en-GB.json +527 -193
- package/frontend-vue/i18n/locales/database-fr-FR.json +529 -195
- package/frontend-vue/package.json +2 -1
- package/frontend-vue/pnpm-lock.yaml +2601 -858
- package/frontend-vue/pnpm-workspace.yaml +1 -1
- package/frontend-vue/tests/dataBrowser.test.ts +206 -0
- package/frontend-vue/tests/diagram.test.ts +516 -0
- package/frontend-vue/tests/helpers.test.ts +205 -0
- package/frontend-vue/tests/instanceOptions.test.ts +53 -0
- package/frontend-vue/tests/locales.test.ts +56 -0
- package/frontend-vue/tests/persistence.test.ts +106 -5
- package/frontend-vue/tests/pickerMenus.test.ts +254 -0
- package/frontend-vue/tests/queryConsole.test.ts +282 -0
- package/frontend-vue/tests/queryRuntime.test.ts +2 -2
- package/frontend-vue/tests/registration.test.ts +36 -25
- package/frontend-vue/tests/schemasFilters.test.ts +115 -0
- package/package.json +7 -7
- package/frontend-vue/app/components/QueryFavoritesPanel.vue +0 -127
- package/frontend-vue/app/components/QueryHistoryPanel.vue +0 -134
- package/frontend-vue/app/components/SchemaTableInspector.vue +0 -278
- package/frontend-vue/app/composables/useDataBrowserTabs.ts +0 -255
- package/frontend-vue/app/composables/useDatabaseHealth.ts +0 -50
- package/frontend-vue/app/composables/useDatabaseSchemas.ts +0 -92
- package/frontend-vue/app/composables/useQueryRuntime.ts +0 -118
- package/frontend-vue/app/composables/useQueryStore.ts +0 -117
- package/frontend-vue/app/composables/useTableViewRowClick.ts +0 -22
- package/frontend-vue/app/custom-pages/database/data.vue +0 -41
- package/frontend-vue/app/custom-pages/database/overview.vue +0 -367
- package/frontend-vue/app/custom-pages/database/query.vue +0 -436
- package/frontend-vue/app/custom-pages/database/schemas.vue +0 -218
- package/frontend-vue/app/utils/databaseFieldModifiers.ts +0 -33
- package/frontend-vue/app/utils/databaseFieldTypeIcons.ts +0 -224
- package/frontend-vue/app/utils/dmsTableView.ts +0 -83
- package/frontend-vue/app/utils/relativeTime.ts +0 -18
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { User } from "@antelopejs/interface-dms/auth/db";
|
|
2
|
+
import type { ActivityFeedItem } from "@antelopejs/interface-dms/base/activity-feed";
|
|
3
|
+
import type { NavCardItem } from "@antelopejs/interface-dms/base/nav-card-grid";
|
|
4
|
+
import type { TopListItem } from "@antelopejs/interface-dms/base/top-list-card";
|
|
5
|
+
import type { ListResult } from "../types/responses";
|
|
6
|
+
declare const DatabaseOverviewController_base: import("@antelopejs/interface-api").ControllerClass<object>;
|
|
7
|
+
export declare class DatabaseOverviewController extends DatabaseOverviewController_base {
|
|
8
|
+
schemas(_user: User): Promise<ListResult<NavCardItem>>;
|
|
9
|
+
largest(_user: User): Promise<ListResult<TopListItem>>;
|
|
10
|
+
recentQueries(user: User): Promise<ListResult<ActivityFeedItem>>;
|
|
11
|
+
}
|
|
12
|
+
export {};
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
12
|
+
return function (target, key) { decorator(target, key, paramIndex); }
|
|
13
|
+
};
|
|
14
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
+
exports.DatabaseOverviewController = void 0;
|
|
16
|
+
const interface_api_1 = require("@antelopejs/interface-api");
|
|
17
|
+
const auth_1 = require("@antelopejs/interface-dms/auth");
|
|
18
|
+
const overview_1 = require("../service/overview");
|
|
19
|
+
let DatabaseOverviewController = class DatabaseOverviewController extends (0, interface_api_1.Controller)("/api/database/overview") {
|
|
20
|
+
async schemas(_user) {
|
|
21
|
+
return { items: await (0, overview_1.listSchemaCards)() };
|
|
22
|
+
}
|
|
23
|
+
async largest(_user) {
|
|
24
|
+
return { items: await (0, overview_1.listLargestTables)() };
|
|
25
|
+
}
|
|
26
|
+
async recentQueries(user) {
|
|
27
|
+
return { items: await (0, overview_1.listRecentQueries)(user._id) };
|
|
28
|
+
}
|
|
29
|
+
};
|
|
30
|
+
exports.DatabaseOverviewController = DatabaseOverviewController;
|
|
31
|
+
__decorate([
|
|
32
|
+
(0, interface_api_1.Get)("/schemas"),
|
|
33
|
+
__param(0, (0, auth_1.AuthRawUser)()),
|
|
34
|
+
__metadata("design:type", Function),
|
|
35
|
+
__metadata("design:paramtypes", [Function]),
|
|
36
|
+
__metadata("design:returntype", Promise)
|
|
37
|
+
], DatabaseOverviewController.prototype, "schemas", null);
|
|
38
|
+
__decorate([
|
|
39
|
+
(0, interface_api_1.Get)("/largest"),
|
|
40
|
+
__param(0, (0, auth_1.AuthRawUser)()),
|
|
41
|
+
__metadata("design:type", Function),
|
|
42
|
+
__metadata("design:paramtypes", [Function]),
|
|
43
|
+
__metadata("design:returntype", Promise)
|
|
44
|
+
], DatabaseOverviewController.prototype, "largest", null);
|
|
45
|
+
__decorate([
|
|
46
|
+
(0, interface_api_1.Get)("/recent-queries"),
|
|
47
|
+
__param(0, (0, auth_1.AuthRawUser)()),
|
|
48
|
+
__metadata("design:type", Function),
|
|
49
|
+
__metadata("design:paramtypes", [Function]),
|
|
50
|
+
__metadata("design:returntype", Promise)
|
|
51
|
+
], DatabaseOverviewController.prototype, "recentQueries", null);
|
|
52
|
+
exports.DatabaseOverviewController = DatabaseOverviewController = __decorate([
|
|
53
|
+
(0, auth_1.AuthOwnerOnly)()
|
|
54
|
+
], DatabaseOverviewController);
|
|
55
|
+
//# sourceMappingURL=overview.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"overview.js","sourceRoot":"","sources":["../../src/routes/overview.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,6DAA4D;AAC5D,yDAA4E;AAK5E,kDAI6B;AAKtB,IAAM,0BAA0B,GAAhC,MAAM,0BAA2B,SAAQ,IAAA,0BAAU,EACxD,wBAAwB,CACzB;IAEO,AAAN,KAAK,CAAC,OAAO,CAAgB,KAAW;QACtC,OAAO,EAAE,KAAK,EAAE,MAAM,IAAA,0BAAe,GAAE,EAAE,CAAC;IAC5C,CAAC;IAGK,AAAN,KAAK,CAAC,OAAO,CAAgB,KAAW;QACtC,OAAO,EAAE,KAAK,EAAE,MAAM,IAAA,4BAAiB,GAAE,EAAE,CAAC;IAC9C,CAAC;IAGK,AAAN,KAAK,CAAC,aAAa,CACF,IAAU;QAEzB,OAAO,EAAE,KAAK,EAAE,MAAM,IAAA,4BAAiB,EAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;IACtD,CAAC;CACF,CAAA;AAnBY,gEAA0B;AAI/B;IADL,IAAA,mBAAG,EAAC,UAAU,CAAC;IACD,WAAA,IAAA,kBAAW,GAAE,CAAA;;;;yDAE3B;AAGK;IADL,IAAA,mBAAG,EAAC,UAAU,CAAC;IACD,WAAA,IAAA,kBAAW,GAAE,CAAA;;;;yDAE3B;AAGK;IADL,IAAA,mBAAG,EAAC,iBAAiB,CAAC;IAEpB,WAAA,IAAA,kBAAW,GAAE,CAAA;;;;+DAGf;qCAlBU,0BAA0B;IADtC,IAAA,oBAAa,GAAE;GACH,0BAA0B,CAmBtC"}
|
package/dist/routes/query.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import type
|
|
1
|
+
import { type User } from "@antelopejs/interface-dms/auth/db";
|
|
2
|
+
import { type DryRunResult } from "../service/queryInspection";
|
|
2
3
|
import type { ExecuteResult, HistoryEntry, SavedQuery } from "../service/types";
|
|
3
4
|
import type { ListResult, PaginatedResult, SuccessResponse } from "../types/responses";
|
|
4
5
|
interface ExecuteBody {
|
|
@@ -17,10 +18,13 @@ interface SaveBody {
|
|
|
17
18
|
declare const DatabaseQueryController_base: import("@antelopejs/interface-api").ControllerClass<object>;
|
|
18
19
|
export declare class DatabaseQueryController extends DatabaseQueryController_base {
|
|
19
20
|
execute(user: User, body: ExecuteBody): Promise<ExecuteResult>;
|
|
21
|
+
dryRun(_user: User, body: ExecuteBody): Promise<DryRunResult>;
|
|
20
22
|
createSaved(user: User, body: SaveBody): Promise<SavedQuery>;
|
|
21
23
|
updateSaved(user: User, id: unknown, body: SaveBody): Promise<SavedQuery>;
|
|
22
24
|
listSaved(user: User, scope: unknown): Promise<ListResult<SavedQuery>>;
|
|
23
25
|
deleteSaved(user: User, id: unknown): Promise<SuccessResponse>;
|
|
26
|
+
clearHistory(user: User): Promise<SuccessResponse>;
|
|
27
|
+
getHistoryEntry(user: User, id: unknown): Promise<HistoryEntry>;
|
|
24
28
|
listHistory(user: User, limitRaw: unknown, offsetRaw: unknown): Promise<PaginatedResult<HistoryEntry>>;
|
|
25
29
|
}
|
|
26
30
|
export {};
|
package/dist/routes/query.js
CHANGED
|
@@ -18,12 +18,16 @@ const interface_api_util_1 = require("@antelopejs/interface-api-util");
|
|
|
18
18
|
const interface_database_1 = require("@antelopejs/interface-database");
|
|
19
19
|
const interface_database_decorators_1 = require("@antelopejs/interface-database-decorators");
|
|
20
20
|
const auth_1 = require("@antelopejs/interface-dms/auth");
|
|
21
|
-
const db_1 = require("
|
|
21
|
+
const db_1 = require("@antelopejs/interface-dms/auth/db");
|
|
22
|
+
const db_2 = require("../db");
|
|
23
|
+
const queryInspection_1 = require("../service/queryInspection");
|
|
22
24
|
const stagedSerialization_1 = require("../service/stagedSerialization");
|
|
25
|
+
const constants_1 = require("../types/constants");
|
|
23
26
|
const query_1 = require("../utils/query");
|
|
24
27
|
const requestValidation_1 = require("../utils/requestValidation");
|
|
25
28
|
const DEFAULT_HISTORY_LIMIT = 25;
|
|
26
|
-
const
|
|
29
|
+
const MAX_RESULT_ROWS = 1000;
|
|
30
|
+
const MAX_HISTORY_LIMIT = constants_1.MAX_HISTORY_PER_USER;
|
|
27
31
|
const SUPPORTED_LANGUAGES = ["aql"];
|
|
28
32
|
function asRecord(value) {
|
|
29
33
|
(0, interface_api_util_1.assert)(typeof value === "object" && value !== null && !Array.isArray(value), 400, "Expected query to be an object");
|
|
@@ -43,9 +47,22 @@ function asSavedScope(value) {
|
|
|
43
47
|
function asBoolean(value) {
|
|
44
48
|
return value === true;
|
|
45
49
|
}
|
|
50
|
+
function runFailure(message, durationMs) {
|
|
51
|
+
return new interface_api_1.HTTPResult(400, { message, durationMs });
|
|
52
|
+
}
|
|
46
53
|
function decodeRunnable(query) {
|
|
47
|
-
|
|
48
|
-
|
|
54
|
+
let root;
|
|
55
|
+
try {
|
|
56
|
+
root = (0, stagedSerialization_1.decodeStaged)(query);
|
|
57
|
+
}
|
|
58
|
+
catch (error) {
|
|
59
|
+
if (error instanceof stagedSerialization_1.StagedDecodeError)
|
|
60
|
+
throw runFailure(error.message, 0);
|
|
61
|
+
throw error;
|
|
62
|
+
}
|
|
63
|
+
if (!(root instanceof interface_database_1.Query)) {
|
|
64
|
+
throw runFailure("Query must resolve to a runnable expression (Table/Selection/Stream/Datum/Query)", 0);
|
|
65
|
+
}
|
|
49
66
|
return root;
|
|
50
67
|
}
|
|
51
68
|
function parseSaveBody(body) {
|
|
@@ -62,12 +79,17 @@ function parseSaveBody(body) {
|
|
|
62
79
|
}
|
|
63
80
|
async function getOwnedSavedQuery(id, userId) {
|
|
64
81
|
const queryId = (0, requestValidation_1.asNonEmptyString)(id);
|
|
65
|
-
const row = await (0, interface_database_decorators_1.GetModel)(
|
|
82
|
+
const row = await (0, interface_database_decorators_1.GetModel)(db_2.SavedQueryModel).get(queryId);
|
|
66
83
|
(0, interface_api_util_1.assert)(row !== undefined, 404, "Saved query not found");
|
|
67
84
|
const owned = row;
|
|
68
85
|
(0, interface_api_util_1.assert)(owned.userId === userId, 404, "Saved query not found");
|
|
69
86
|
return owned;
|
|
70
87
|
}
|
|
88
|
+
function toIso(value) {
|
|
89
|
+
return value instanceof Date
|
|
90
|
+
? value.toISOString()
|
|
91
|
+
: new Date(value).toISOString();
|
|
92
|
+
}
|
|
71
93
|
function toSavedWire(row) {
|
|
72
94
|
return {
|
|
73
95
|
id: row._id,
|
|
@@ -78,11 +100,24 @@ function toSavedWire(row) {
|
|
|
78
100
|
source: row.source,
|
|
79
101
|
language: row.language,
|
|
80
102
|
shared: row.shared,
|
|
81
|
-
createdAt: row.createdAt
|
|
82
|
-
|
|
83
|
-
: new Date(row.createdAt).toISOString(),
|
|
103
|
+
createdAt: toIso(row.createdAt),
|
|
104
|
+
updatedAt: toIso(row.updatedAt ?? row.createdAt),
|
|
84
105
|
};
|
|
85
106
|
}
|
|
107
|
+
async function ownerNames(userIds) {
|
|
108
|
+
const users = (0, interface_database_decorators_1.GetModel)(db_1.UserModel);
|
|
109
|
+
const names = new Map();
|
|
110
|
+
for (const userId of new Set(userIds)) {
|
|
111
|
+
try {
|
|
112
|
+
const user = await users.get(userId);
|
|
113
|
+
if (user?.name)
|
|
114
|
+
names.set(userId, user.name);
|
|
115
|
+
}
|
|
116
|
+
catch {
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
return names;
|
|
120
|
+
}
|
|
86
121
|
function normaliseRows(raw) {
|
|
87
122
|
if (Array.isArray(raw)) {
|
|
88
123
|
return raw.map((entry) => entry !== null && typeof entry === "object" && !Array.isArray(entry)
|
|
@@ -97,7 +132,7 @@ function normaliseRows(raw) {
|
|
|
97
132
|
return [{ value: raw }];
|
|
98
133
|
}
|
|
99
134
|
function toHistoryWire(row) {
|
|
100
|
-
|
|
135
|
+
const entry = {
|
|
101
136
|
id: row._id,
|
|
102
137
|
userId: row.userId,
|
|
103
138
|
query: row.query,
|
|
@@ -108,26 +143,60 @@ function toHistoryWire(row) {
|
|
|
108
143
|
: new Date(row.executedAt).toISOString(),
|
|
109
144
|
durationMs: row.durationMs,
|
|
110
145
|
rowCount: row.rowCount,
|
|
146
|
+
status: row.status ?? "ok",
|
|
147
|
+
mutation: row.mutation ?? false,
|
|
148
|
+
};
|
|
149
|
+
if (row.error)
|
|
150
|
+
entry.error = row.error;
|
|
151
|
+
return entry;
|
|
152
|
+
}
|
|
153
|
+
function parseExecuteBody(body) {
|
|
154
|
+
const query = asRecord(body?.query);
|
|
155
|
+
return {
|
|
156
|
+
query,
|
|
157
|
+
source: (0, requestValidation_1.asNonEmptyString)(body?.source),
|
|
158
|
+
language: asLanguage(body?.language),
|
|
159
|
+
root: decodeRunnable(query),
|
|
111
160
|
};
|
|
112
161
|
}
|
|
162
|
+
function errorMessage(error) {
|
|
163
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
164
|
+
return message || "Query execution failed";
|
|
165
|
+
}
|
|
113
166
|
let DatabaseQueryController = class DatabaseQueryController extends (0, interface_api_1.Controller)("/api/database/query") {
|
|
114
167
|
async execute(user, body) {
|
|
115
|
-
const query =
|
|
116
|
-
const
|
|
117
|
-
const
|
|
118
|
-
const root = decodeRunnable(query);
|
|
168
|
+
const { query, source, language, root } = parseExecuteBody(body);
|
|
169
|
+
const mutation = (0, queryInspection_1.containsMutation)(root);
|
|
170
|
+
const historyModel = (0, interface_database_decorators_1.GetModel)(db_2.QueryHistoryModel);
|
|
119
171
|
const executedAt = new Date();
|
|
120
172
|
const startedAt = Date.now();
|
|
121
173
|
let raw;
|
|
122
174
|
try {
|
|
175
|
+
const unknownTarget = await (0, queryInspection_1.describeUnknownQueryTarget)((0, queryInspection_1.readQueryTarget)(root));
|
|
176
|
+
if (unknownTarget)
|
|
177
|
+
throw new Error(unknownTarget);
|
|
123
178
|
raw = await root.run();
|
|
124
179
|
}
|
|
125
|
-
catch (
|
|
126
|
-
|
|
180
|
+
catch (error) {
|
|
181
|
+
const message = errorMessage(error);
|
|
182
|
+
const durationMs = Date.now() - startedAt;
|
|
183
|
+
await historyModel.addAndPrune({
|
|
184
|
+
userId: user._id,
|
|
185
|
+
query,
|
|
186
|
+
source,
|
|
187
|
+
language,
|
|
188
|
+
executedAt,
|
|
189
|
+
durationMs,
|
|
190
|
+
rowCount: 0,
|
|
191
|
+
status: "error",
|
|
192
|
+
mutation,
|
|
193
|
+
error: message,
|
|
194
|
+
});
|
|
195
|
+
throw runFailure(message, durationMs);
|
|
127
196
|
}
|
|
128
197
|
const durationMs = Date.now() - startedAt;
|
|
129
198
|
const rows = normaliseRows(raw);
|
|
130
|
-
const
|
|
199
|
+
const rowCount = (0, queryInspection_1.affectedRows)(raw, rows.length, mutation);
|
|
131
200
|
await historyModel.addAndPrune({
|
|
132
201
|
userId: user._id,
|
|
133
202
|
query,
|
|
@@ -135,21 +204,39 @@ let DatabaseQueryController = class DatabaseQueryController extends (0, interfac
|
|
|
135
204
|
language,
|
|
136
205
|
executedAt,
|
|
137
206
|
durationMs,
|
|
138
|
-
rowCount
|
|
207
|
+
rowCount,
|
|
208
|
+
status: "ok",
|
|
209
|
+
mutation,
|
|
139
210
|
});
|
|
140
211
|
return {
|
|
141
|
-
rows,
|
|
212
|
+
rows: rows.slice(0, MAX_RESULT_ROWS),
|
|
213
|
+
rowCount,
|
|
214
|
+
truncated: rows.length > MAX_RESULT_ROWS,
|
|
215
|
+
mutation,
|
|
142
216
|
executedAt: executedAt.toISOString(),
|
|
143
217
|
durationMs,
|
|
144
218
|
};
|
|
145
219
|
}
|
|
220
|
+
async dryRun(_user, body) {
|
|
221
|
+
const root = decodeRunnable(asRecord(body?.query));
|
|
222
|
+
const unknownTarget = await (0, queryInspection_1.describeUnknownQueryTarget)((0, queryInspection_1.readQueryTarget)(root));
|
|
223
|
+
(0, interface_api_util_1.assert)(!unknownTarget, 400, unknownTarget ?? "");
|
|
224
|
+
try {
|
|
225
|
+
return await (0, queryInspection_1.dryRun)(root);
|
|
226
|
+
}
|
|
227
|
+
catch (error) {
|
|
228
|
+
(0, interface_api_util_1.assert)(false, 400, errorMessage(error));
|
|
229
|
+
}
|
|
230
|
+
}
|
|
146
231
|
async createSaved(user, body) {
|
|
147
232
|
const input = parseSaveBody(body);
|
|
148
|
-
const savedModel = (0, interface_database_decorators_1.GetModel)(
|
|
233
|
+
const savedModel = (0, interface_database_decorators_1.GetModel)(db_2.SavedQueryModel);
|
|
234
|
+
const now = new Date();
|
|
149
235
|
const ids = await savedModel.insert({
|
|
150
236
|
userId: user._id,
|
|
151
237
|
...input,
|
|
152
|
-
createdAt:
|
|
238
|
+
createdAt: now,
|
|
239
|
+
updatedAt: now,
|
|
153
240
|
});
|
|
154
241
|
const id = ids[0];
|
|
155
242
|
(0, interface_api_util_1.assert)(id !== undefined, 500, "Failed to persist saved query");
|
|
@@ -160,27 +247,52 @@ let DatabaseQueryController = class DatabaseQueryController extends (0, interfac
|
|
|
160
247
|
async updateSaved(user, id, body) {
|
|
161
248
|
const input = parseSaveBody(body);
|
|
162
249
|
const existing = await getOwnedSavedQuery(id, user._id);
|
|
163
|
-
|
|
164
|
-
|
|
250
|
+
const updatedAt = new Date();
|
|
251
|
+
await (0, interface_database_decorators_1.GetModel)(db_2.SavedQueryModel).update(existing._id, {
|
|
252
|
+
...input,
|
|
253
|
+
updatedAt,
|
|
254
|
+
});
|
|
255
|
+
return {
|
|
256
|
+
...toSavedWire(existing),
|
|
257
|
+
...input,
|
|
258
|
+
updatedAt: updatedAt.toISOString(),
|
|
259
|
+
};
|
|
165
260
|
}
|
|
166
261
|
async listSaved(user, scope) {
|
|
167
|
-
const savedModel = (0, interface_database_decorators_1.GetModel)(
|
|
168
|
-
const
|
|
262
|
+
const savedModel = (0, interface_database_decorators_1.GetModel)(db_2.SavedQueryModel);
|
|
263
|
+
const shared = asSavedScope(scope) === "shared";
|
|
264
|
+
const rows = shared
|
|
169
265
|
? await savedModel.listShared()
|
|
170
266
|
: await savedModel.listForUser(user._id);
|
|
267
|
+
const names = shared
|
|
268
|
+
? await ownerNames(rows.map((row) => row.userId))
|
|
269
|
+
: new Map();
|
|
171
270
|
return {
|
|
172
|
-
items: rows.map((
|
|
271
|
+
items: rows.map((row) => {
|
|
272
|
+
const wire = toSavedWire(row);
|
|
273
|
+
const ownerName = names.get(row.userId);
|
|
274
|
+
return ownerName ? { ...wire, ownerName } : wire;
|
|
275
|
+
}),
|
|
173
276
|
};
|
|
174
277
|
}
|
|
175
278
|
async deleteSaved(user, id) {
|
|
176
279
|
const existing = await getOwnedSavedQuery(id, user._id);
|
|
177
|
-
await (0, interface_database_decorators_1.GetModel)(
|
|
280
|
+
await (0, interface_database_decorators_1.GetModel)(db_2.SavedQueryModel).delete(existing._id);
|
|
281
|
+
return { success: true };
|
|
282
|
+
}
|
|
283
|
+
async clearHistory(user) {
|
|
284
|
+
await (0, interface_database_decorators_1.GetModel)(db_2.QueryHistoryModel).clearForUser(user._id);
|
|
178
285
|
return { success: true };
|
|
179
286
|
}
|
|
287
|
+
async getHistoryEntry(user, id) {
|
|
288
|
+
const row = await (0, interface_database_decorators_1.GetModel)(db_2.QueryHistoryModel).get((0, requestValidation_1.asNonEmptyString)(id));
|
|
289
|
+
(0, interface_api_util_1.assert)(row !== undefined && row.userId === user._id, 404, "History entry not found");
|
|
290
|
+
return toHistoryWire(row);
|
|
291
|
+
}
|
|
180
292
|
async listHistory(user, limitRaw, offsetRaw) {
|
|
181
293
|
const limit = (0, query_1.clamp)((0, query_1.parseInteger)(limitRaw, DEFAULT_HISTORY_LIMIT), 1, MAX_HISTORY_LIMIT);
|
|
182
294
|
const offset = Math.max(0, (0, query_1.parseInteger)(offsetRaw, 0));
|
|
183
|
-
const historyModel = (0, interface_database_decorators_1.GetModel)(
|
|
295
|
+
const historyModel = (0, interface_database_decorators_1.GetModel)(db_2.QueryHistoryModel);
|
|
184
296
|
const { items, total } = await historyModel.listForUser(user._id, limit, offset);
|
|
185
297
|
return {
|
|
186
298
|
items: items.map((r) => toHistoryWire(r)),
|
|
@@ -197,6 +309,14 @@ __decorate([
|
|
|
197
309
|
__metadata("design:paramtypes", [Function, Object]),
|
|
198
310
|
__metadata("design:returntype", Promise)
|
|
199
311
|
], DatabaseQueryController.prototype, "execute", null);
|
|
312
|
+
__decorate([
|
|
313
|
+
(0, interface_api_1.Post)("/dry-run"),
|
|
314
|
+
__param(0, (0, auth_1.AuthRawUser)()),
|
|
315
|
+
__param(1, (0, interface_api_1.JSONBody)()),
|
|
316
|
+
__metadata("design:type", Function),
|
|
317
|
+
__metadata("design:paramtypes", [Function, Object]),
|
|
318
|
+
__metadata("design:returntype", Promise)
|
|
319
|
+
], DatabaseQueryController.prototype, "dryRun", null);
|
|
200
320
|
__decorate([
|
|
201
321
|
(0, interface_api_1.Post)("/saved"),
|
|
202
322
|
__param(0, (0, auth_1.AuthRawUser)()),
|
|
@@ -230,6 +350,21 @@ __decorate([
|
|
|
230
350
|
__metadata("design:paramtypes", [Function, Object]),
|
|
231
351
|
__metadata("design:returntype", Promise)
|
|
232
352
|
], DatabaseQueryController.prototype, "deleteSaved", null);
|
|
353
|
+
__decorate([
|
|
354
|
+
(0, interface_api_1.Delete)("/history"),
|
|
355
|
+
__param(0, (0, auth_1.AuthRawUser)()),
|
|
356
|
+
__metadata("design:type", Function),
|
|
357
|
+
__metadata("design:paramtypes", [Function]),
|
|
358
|
+
__metadata("design:returntype", Promise)
|
|
359
|
+
], DatabaseQueryController.prototype, "clearHistory", null);
|
|
360
|
+
__decorate([
|
|
361
|
+
(0, interface_api_1.Get)("/history/:id"),
|
|
362
|
+
__param(0, (0, auth_1.AuthRawUser)()),
|
|
363
|
+
__param(1, (0, interface_api_1.Parameter)("id", "param")),
|
|
364
|
+
__metadata("design:type", Function),
|
|
365
|
+
__metadata("design:paramtypes", [Function, Object]),
|
|
366
|
+
__metadata("design:returntype", Promise)
|
|
367
|
+
], DatabaseQueryController.prototype, "getHistoryEntry", null);
|
|
233
368
|
__decorate([
|
|
234
369
|
(0, interface_api_1.Get)("/history"),
|
|
235
370
|
__param(0, (0, auth_1.AuthRawUser)()),
|
package/dist/routes/query.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"query.js","sourceRoot":"","sources":["../../src/routes/query.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"query.js","sourceRoot":"","sources":["../../src/routes/query.ts"],"names":[],"mappings":"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"}
|
package/dist/routes/tables.d.ts
CHANGED
|
@@ -1,23 +1,26 @@
|
|
|
1
1
|
import type { User } from "@antelopejs/interface-dms/auth/db";
|
|
2
|
-
interface
|
|
2
|
+
export interface TableSourceRow {
|
|
3
3
|
id: string;
|
|
4
4
|
schema: string;
|
|
5
5
|
name: string;
|
|
6
|
+
elementCount: number;
|
|
6
7
|
columnCount: number;
|
|
7
8
|
indexCount: number;
|
|
8
|
-
|
|
9
|
-
|
|
9
|
+
relations: string[];
|
|
10
|
+
modifiers: string[];
|
|
11
|
+
}
|
|
12
|
+
interface TableSourceResult {
|
|
13
|
+
results: TableSourceRow[];
|
|
14
|
+
total: number;
|
|
15
|
+
all: number;
|
|
16
|
+
}
|
|
17
|
+
interface InstancesResult {
|
|
18
|
+
instances: string[];
|
|
19
|
+
total: number;
|
|
10
20
|
}
|
|
11
21
|
declare const DatabaseTablesController_base: import("@antelopejs/interface-api").ControllerClass<object>;
|
|
12
22
|
export declare class DatabaseTablesController extends DatabaseTablesController_base {
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
total: number;
|
|
16
|
-
offset: number;
|
|
17
|
-
limit: number;
|
|
18
|
-
}>;
|
|
19
|
-
count(_user: User, schemaFilter: unknown, instanceFilter: unknown, search: unknown): Promise<{
|
|
20
|
-
total: number;
|
|
21
|
-
}>;
|
|
23
|
+
source(user: User, scope: unknown, instance: unknown, q: unknown, has: unknown): Promise<TableSourceResult>;
|
|
24
|
+
instances(schemaRaw: unknown, search: unknown, limitRaw: unknown): Promise<InstancesResult>;
|
|
22
25
|
}
|
|
23
26
|
export {};
|