@objectql/core 4.0.6 → 4.2.0
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/.turbo/turbo-build.log +1 -1
- package/CHANGELOG.md +19 -0
- package/dist/ai/index.d.ts +8 -0
- package/dist/ai/index.js +25 -0
- package/dist/ai/index.js.map +1 -0
- package/dist/ai/registry.d.ts +23 -0
- package/dist/ai/registry.js +78 -0
- package/dist/ai/registry.js.map +1 -0
- package/dist/app.d.ts +2 -1
- package/dist/app.js +41 -20
- package/dist/app.js.map +1 -1
- package/dist/gateway.d.ts +3 -2
- package/dist/gateway.js +6 -2
- package/dist/gateway.js.map +1 -1
- package/dist/index.d.ts +11 -4
- package/dist/index.js +11 -0
- package/dist/index.js.map +1 -1
- package/dist/optimizations/CompiledHookManager.d.ts +1 -0
- package/dist/optimizations/CompiledHookManager.js +7 -1
- package/dist/optimizations/CompiledHookManager.js.map +1 -1
- package/dist/plugin.d.ts +3 -2
- package/dist/plugin.js +77 -33
- package/dist/plugin.js.map +1 -1
- package/dist/protocol.d.ts +11 -0
- package/dist/protocol.js +12 -0
- package/dist/protocol.js.map +1 -1
- package/dist/query/filter-translator.d.ts +1 -4
- package/dist/query/filter-translator.js.map +1 -1
- package/dist/query/query-analyzer.d.ts +1 -3
- package/dist/query/query-analyzer.js.map +1 -1
- package/dist/query/query-builder.d.ts +1 -9
- package/dist/query/query-builder.js +8 -0
- package/dist/query/query-builder.js.map +1 -1
- package/dist/query/query-service.d.ts +2 -3
- package/dist/query/query-service.js +5 -1
- package/dist/query/query-service.js.map +1 -1
- package/dist/repository.d.ts +0 -28
- package/dist/repository.js +18 -173
- package/dist/repository.js.map +1 -1
- package/package.json +16 -9
- package/src/ai/index.ts +9 -0
- package/src/ai/registry.ts +81 -0
- package/src/app.ts +47 -20
- package/src/gateway.ts +7 -3
- package/src/index.ts +24 -7
- package/src/optimizations/CompiledHookManager.ts +9 -1
- package/src/plugin.ts +90 -36
- package/src/protocol.ts +13 -0
- package/src/query/filter-translator.ts +3 -3
- package/src/query/query-analyzer.ts +1 -2
- package/src/query/query-builder.ts +8 -8
- package/src/query/query-service.ts +7 -3
- package/src/repository.ts +20 -223
- package/test/ai-registry.test.ts +42 -0
- package/test/app.test.ts +6 -6
- package/test/optimizations.test.ts +1 -1
- package/test/plugin-integration.test.ts +3 -2
- package/tsconfig.tsbuildinfo +1 -1
- package/jest.config.js +0 -29
package/.turbo/turbo-build.log
CHANGED
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,24 @@
|
|
|
1
1
|
# @objectql/core
|
|
2
2
|
|
|
3
|
+
## 4.2.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- Release v4.2.0
|
|
8
|
+
- Protocol layer: Added GraphQL, JSON-RPC, and OData v4 protocol adapters
|
|
9
|
+
- Drivers: Added Excel, filesystem, and Redis drivers
|
|
10
|
+
- Plugins: Added formula engine, security RBAC, and validator plugins
|
|
11
|
+
- CLI: Added `objectql create` scaffolding tool
|
|
12
|
+
- Core: Performance improvements and strict type enforcement
|
|
13
|
+
- Testing: Added Driver TCK and Protocol TCK conformance suites
|
|
14
|
+
|
|
15
|
+
### Patch Changes
|
|
16
|
+
|
|
17
|
+
- Updated dependencies
|
|
18
|
+
- @objectql/types@4.2.0
|
|
19
|
+
- @objectql/plugin-formula@4.2.0
|
|
20
|
+
- @objectql/plugin-validator@4.2.0
|
|
21
|
+
|
|
3
22
|
## 4.0.6
|
|
4
23
|
|
|
5
24
|
### Patch Changes
|
package/dist/ai/index.js
ADDED
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* ObjectQL - AI Runtime
|
|
4
|
+
* Copyright (c) 2026-present ObjectStack Inc.
|
|
5
|
+
*
|
|
6
|
+
* This source code is licensed under the MIT license found in the
|
|
7
|
+
* LICENSE file in the root directory of this source tree.
|
|
8
|
+
*/
|
|
9
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
12
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
13
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
14
|
+
}
|
|
15
|
+
Object.defineProperty(o, k2, desc);
|
|
16
|
+
}) : (function(o, m, k, k2) {
|
|
17
|
+
if (k2 === undefined) k2 = k;
|
|
18
|
+
o[k2] = m[k];
|
|
19
|
+
}));
|
|
20
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
21
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
22
|
+
};
|
|
23
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
24
|
+
__exportStar(require("./registry"), exports);
|
|
25
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/ai/index.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;;;;;;;;;;;;;;AAEH,6CAA2B"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ObjectQL - AI Runtime Registry
|
|
3
|
+
* Copyright (c) 2026-present ObjectStack Inc.
|
|
4
|
+
*
|
|
5
|
+
* This source code is licensed under the MIT license found in the
|
|
6
|
+
* LICENSE file in the root directory of this source tree.
|
|
7
|
+
*/
|
|
8
|
+
import type { AiRegistry, AiModelDefinition, ModelRegistry, PromptRegistry, PromptTemplate } from '@objectql/types';
|
|
9
|
+
export declare class InMemoryModelRegistry implements ModelRegistry {
|
|
10
|
+
private readonly models;
|
|
11
|
+
register(model: AiModelDefinition): void;
|
|
12
|
+
get(id: string): AiModelDefinition | undefined;
|
|
13
|
+
list(): readonly AiModelDefinition[];
|
|
14
|
+
remove(id: string): void;
|
|
15
|
+
}
|
|
16
|
+
export declare class InMemoryPromptRegistry implements PromptRegistry {
|
|
17
|
+
private readonly prompts;
|
|
18
|
+
register(template: PromptTemplate): void;
|
|
19
|
+
get(id: string, version?: string): PromptTemplate | undefined;
|
|
20
|
+
list(id?: string): readonly PromptTemplate[];
|
|
21
|
+
remove(id: string, version?: string): void;
|
|
22
|
+
}
|
|
23
|
+
export declare const createDefaultAiRegistry: () => AiRegistry;
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* ObjectQL - AI Runtime Registry
|
|
4
|
+
* Copyright (c) 2026-present ObjectStack Inc.
|
|
5
|
+
*
|
|
6
|
+
* This source code is licensed under the MIT license found in the
|
|
7
|
+
* LICENSE file in the root directory of this source tree.
|
|
8
|
+
*/
|
|
9
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
+
exports.createDefaultAiRegistry = exports.InMemoryPromptRegistry = exports.InMemoryModelRegistry = void 0;
|
|
11
|
+
const DEFAULT_PROMPT_VERSION = 'latest';
|
|
12
|
+
class InMemoryModelRegistry {
|
|
13
|
+
constructor() {
|
|
14
|
+
this.models = new Map();
|
|
15
|
+
}
|
|
16
|
+
register(model) {
|
|
17
|
+
this.models.set(model.id, model);
|
|
18
|
+
}
|
|
19
|
+
get(id) {
|
|
20
|
+
return this.models.get(id);
|
|
21
|
+
}
|
|
22
|
+
list() {
|
|
23
|
+
return Array.from(this.models.values());
|
|
24
|
+
}
|
|
25
|
+
remove(id) {
|
|
26
|
+
this.models.delete(id);
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
exports.InMemoryModelRegistry = InMemoryModelRegistry;
|
|
30
|
+
class InMemoryPromptRegistry {
|
|
31
|
+
constructor() {
|
|
32
|
+
this.prompts = new Map();
|
|
33
|
+
}
|
|
34
|
+
register(template) {
|
|
35
|
+
var _a, _b;
|
|
36
|
+
const version = (_a = template.version) !== null && _a !== void 0 ? _a : DEFAULT_PROMPT_VERSION;
|
|
37
|
+
const byId = (_b = this.prompts.get(template.id)) !== null && _b !== void 0 ? _b : new Map();
|
|
38
|
+
byId.set(version, { ...template, version });
|
|
39
|
+
this.prompts.set(template.id, byId);
|
|
40
|
+
}
|
|
41
|
+
get(id, version) {
|
|
42
|
+
const byId = this.prompts.get(id);
|
|
43
|
+
if (!byId)
|
|
44
|
+
return undefined;
|
|
45
|
+
if (version)
|
|
46
|
+
return byId.get(version);
|
|
47
|
+
if (byId.has(DEFAULT_PROMPT_VERSION))
|
|
48
|
+
return byId.get(DEFAULT_PROMPT_VERSION);
|
|
49
|
+
return byId.values().next().value;
|
|
50
|
+
}
|
|
51
|
+
list(id) {
|
|
52
|
+
var _a, _b;
|
|
53
|
+
if (id) {
|
|
54
|
+
return Array.from((_b = (_a = this.prompts.get(id)) === null || _a === void 0 ? void 0 : _a.values()) !== null && _b !== void 0 ? _b : []);
|
|
55
|
+
}
|
|
56
|
+
return Array.from(this.prompts.values()).flatMap(map => Array.from(map.values()));
|
|
57
|
+
}
|
|
58
|
+
remove(id, version) {
|
|
59
|
+
if (!version) {
|
|
60
|
+
this.prompts.delete(id);
|
|
61
|
+
return;
|
|
62
|
+
}
|
|
63
|
+
const byId = this.prompts.get(id);
|
|
64
|
+
if (!byId)
|
|
65
|
+
return;
|
|
66
|
+
byId.delete(version);
|
|
67
|
+
if (byId.size === 0) {
|
|
68
|
+
this.prompts.delete(id);
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
exports.InMemoryPromptRegistry = InMemoryPromptRegistry;
|
|
73
|
+
const createDefaultAiRegistry = () => ({
|
|
74
|
+
models: new InMemoryModelRegistry(),
|
|
75
|
+
prompts: new InMemoryPromptRegistry(),
|
|
76
|
+
});
|
|
77
|
+
exports.createDefaultAiRegistry = createDefaultAiRegistry;
|
|
78
|
+
//# sourceMappingURL=registry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/ai/registry.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;AAUH,MAAM,sBAAsB,GAAG,QAAQ,CAAC;AAExC,MAAa,qBAAqB;IAAlC;QACmB,WAAM,GAAG,IAAI,GAAG,EAA6B,CAAC;IAiBjE,CAAC;IAfC,QAAQ,CAAC,KAAwB;QAC/B,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;IACnC,CAAC;IAED,GAAG,CAAC,EAAU;QACZ,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAC7B,CAAC;IAED,IAAI;QACF,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;IAC1C,CAAC;IAED,MAAM,CAAC,EAAU;QACf,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IACzB,CAAC;CACF;AAlBD,sDAkBC;AAED,MAAa,sBAAsB;IAAnC;QACmB,YAAO,GAAG,IAAI,GAAG,EAAuC,CAAC;IAoC5E,CAAC;IAlCC,QAAQ,CAAC,QAAwB;;QAC/B,MAAM,OAAO,GAAG,MAAA,QAAQ,CAAC,OAAO,mCAAI,sBAAsB,CAAC;QAC3D,MAAM,IAAI,GAAG,MAAA,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,mCAAI,IAAI,GAAG,EAA0B,CAAC;QAChF,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,EAAE,GAAG,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAC;QAC5C,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;IACtC,CAAC;IAED,GAAG,CAAC,EAAU,EAAE,OAAgB;QAC9B,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAClC,IAAI,CAAC,IAAI;YAAE,OAAO,SAAS,CAAC;QAC5B,IAAI,OAAO;YAAE,OAAO,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACtC,IAAI,IAAI,CAAC,GAAG,CAAC,sBAAsB,CAAC;YAAE,OAAO,IAAI,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC;QAC9E,OAAO,IAAI,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC;IACpC,CAAC;IAED,IAAI,CAAC,EAAW;;QACd,IAAI,EAAE,EAAE,CAAC;YACP,OAAO,KAAK,CAAC,IAAI,CAAC,MAAA,MAAA,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,0CAAE,MAAM,EAAE,mCAAI,EAAE,CAAC,CAAC;QAC1D,CAAC;QACD,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IACpF,CAAC;IAED,MAAM,CAAC,EAAU,EAAE,OAAgB;QACjC,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YACxB,OAAO;QACT,CAAC;QACD,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAClC,IAAI,CAAC,IAAI;YAAE,OAAO;QAClB,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACrB,IAAI,IAAI,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;YACpB,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAC1B,CAAC;IACH,CAAC;CACF;AArCD,wDAqCC;AAEM,MAAM,uBAAuB,GAAG,GAAe,EAAE,CAAC,CAAC;IACxD,MAAM,EAAE,IAAI,qBAAqB,EAAE;IACnC,OAAO,EAAE,IAAI,sBAAsB,EAAE;CACtC,CAAC,CAAC;AAHU,QAAA,uBAAuB,2BAGjC"}
|
package/dist/app.d.ts
CHANGED
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
* LICENSE file in the root directory of this source tree.
|
|
7
7
|
*/
|
|
8
8
|
import { MetadataRegistry, Driver, ObjectConfig, ObjectQLContext, ObjectQLContextOptions, IObjectQL, ObjectQLConfig, HookName, HookHandler, HookContext, ActionHandler, ActionContext } from '@objectql/types';
|
|
9
|
-
import { ObjectKernel, type Plugin } from '@objectstack/
|
|
9
|
+
import { ObjectKernel, type Plugin } from '@objectstack/runtime';
|
|
10
10
|
/**
|
|
11
11
|
* ObjectQL
|
|
12
12
|
*
|
|
@@ -22,6 +22,7 @@ export declare class ObjectQL implements IObjectQL {
|
|
|
22
22
|
private kernelPlugins;
|
|
23
23
|
private hookManager;
|
|
24
24
|
private localActions;
|
|
25
|
+
private logger;
|
|
25
26
|
private config;
|
|
26
27
|
constructor(config: ObjectQLConfig);
|
|
27
28
|
use(plugin: Plugin): void;
|
package/dist/app.js
CHANGED
|
@@ -8,8 +8,11 @@
|
|
|
8
8
|
*/
|
|
9
9
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
10
|
exports.ObjectQL = void 0;
|
|
11
|
-
const
|
|
11
|
+
const types_1 = require("@objectql/types");
|
|
12
|
+
const runtime_1 = require("@objectstack/runtime");
|
|
12
13
|
const objectql_1 = require("@objectstack/objectql");
|
|
14
|
+
const plugin_validator_1 = require("@objectql/plugin-validator");
|
|
15
|
+
const plugin_formula_1 = require("@objectql/plugin-formula");
|
|
13
16
|
const repository_1 = require("./repository");
|
|
14
17
|
const util_1 = require("./util");
|
|
15
18
|
const CompiledHookManager_1 = require("./optimizations/CompiledHookManager");
|
|
@@ -25,6 +28,7 @@ class ObjectQL {
|
|
|
25
28
|
return this.kernel.metadata;
|
|
26
29
|
}
|
|
27
30
|
constructor(config) {
|
|
31
|
+
var _a;
|
|
28
32
|
this.datasources = {};
|
|
29
33
|
this.remotes = [];
|
|
30
34
|
this.kernelPlugins = [];
|
|
@@ -33,6 +37,7 @@ class ObjectQL {
|
|
|
33
37
|
this.localActions = new Map();
|
|
34
38
|
this.config = config;
|
|
35
39
|
this.datasources = config.datasources || {};
|
|
40
|
+
this.logger = (_a = config.logger) !== null && _a !== void 0 ? _a : new types_1.ConsoleLogger({ name: '@objectql/core', level: 'info' });
|
|
36
41
|
if (config.connection) {
|
|
37
42
|
throw new Error("Connection strings are not supported in core directly. Use @objectql/platform-node's createDriverFromConnection or pass a driver instance to 'datasources'.");
|
|
38
43
|
}
|
|
@@ -52,10 +57,25 @@ class ObjectQL {
|
|
|
52
57
|
}
|
|
53
58
|
}
|
|
54
59
|
}
|
|
60
|
+
// Ensure default plugins are present
|
|
61
|
+
if (!this.kernelPlugins.some(p => p.name === 'validator')) {
|
|
62
|
+
this.use(new plugin_validator_1.ValidatorPlugin());
|
|
63
|
+
}
|
|
64
|
+
if (!this.kernelPlugins.some(p => p.name === 'formula')) {
|
|
65
|
+
this.use(new plugin_formula_1.FormulaPlugin());
|
|
66
|
+
}
|
|
55
67
|
// Create the kernel with registered plugins
|
|
56
|
-
this.kernel = new
|
|
68
|
+
this.kernel = new runtime_1.ObjectKernel(this.kernelPlugins);
|
|
57
69
|
for (const plugin of this.kernelPlugins) {
|
|
70
|
+
// Fallback for kernels that support .use() but maybe didn't take them in constructor or if we need to support both
|
|
71
|
+
// NOTE: Modern ObjectKernel takes plugins in constructor.
|
|
58
72
|
if (this.kernel.use) {
|
|
73
|
+
// Try to avoid double registration if the kernel is smart, but since we don't know the kernel logic perfectly:
|
|
74
|
+
// Ideally check if already added. But for now, we leave this for backward compat
|
|
75
|
+
// if ObjectKernel DOESN't take constructor args but HAS use().
|
|
76
|
+
// However, we just instantiated it.
|
|
77
|
+
// Let's assume constructor is the way if available.
|
|
78
|
+
// But we keep this check for .use() just in case the constructor signature is different (e.g. empty)
|
|
59
79
|
this.kernel.use(plugin);
|
|
60
80
|
}
|
|
61
81
|
}
|
|
@@ -96,12 +116,16 @@ class ObjectQL {
|
|
|
96
116
|
}
|
|
97
117
|
},
|
|
98
118
|
unregisterPackage: (packageName) => {
|
|
119
|
+
// Use the official @objectstack/objectql 1.1.0 API for object cleanup
|
|
120
|
+
if (typeof objectql_1.SchemaRegistry.unregisterObjectsByPackage === 'function') {
|
|
121
|
+
objectql_1.SchemaRegistry.unregisterObjectsByPackage(packageName);
|
|
122
|
+
}
|
|
123
|
+
// Also clean up non-object metadata items by package
|
|
99
124
|
const metadata = objectql_1.SchemaRegistry.metadata;
|
|
100
125
|
if (metadata && metadata instanceof Map) {
|
|
101
126
|
for (const [type, collection] of metadata.entries()) {
|
|
102
127
|
if (collection instanceof Map) {
|
|
103
128
|
for (const [key, item] of collection.entries()) {
|
|
104
|
-
// console.log(`[App] Check ${type} ${key} pkg=${(item as any).package}`);
|
|
105
129
|
if (item.package === packageName) {
|
|
106
130
|
collection.delete(key);
|
|
107
131
|
}
|
|
@@ -109,9 +133,6 @@ class ObjectQL {
|
|
|
109
133
|
}
|
|
110
134
|
}
|
|
111
135
|
}
|
|
112
|
-
else {
|
|
113
|
-
console.warn('Metadata is not a Map');
|
|
114
|
-
}
|
|
115
136
|
}
|
|
116
137
|
};
|
|
117
138
|
const kernelHooks = this.kernel.hooks || {};
|
|
@@ -313,11 +334,11 @@ class ObjectQL {
|
|
|
313
334
|
if (!driver.introspectSchema) {
|
|
314
335
|
throw new Error(`Driver for datasource '${datasourceName}' does not support schema introspection`);
|
|
315
336
|
}
|
|
316
|
-
|
|
337
|
+
this.logger.info(`Introspecting datasource '${datasourceName}'...`);
|
|
317
338
|
const introspectedSchema = await driver.introspectSchema();
|
|
318
339
|
// Convert introspected schema to ObjectQL objects
|
|
319
340
|
const objects = (0, util_1.convertIntrospectedSchemaToObjects)(introspectedSchema, options);
|
|
320
|
-
|
|
341
|
+
this.logger.info(`Discovered ${objects.length} table(s), registering as objects...`);
|
|
321
342
|
// Register each discovered object
|
|
322
343
|
for (const obj of objects) {
|
|
323
344
|
this.registerObject(obj);
|
|
@@ -327,13 +348,13 @@ class ObjectQL {
|
|
|
327
348
|
async close() {
|
|
328
349
|
for (const [name, driver] of Object.entries(this.datasources)) {
|
|
329
350
|
if (driver.disconnect) {
|
|
330
|
-
|
|
351
|
+
this.logger.debug(`Closing driver '${name}'...`);
|
|
331
352
|
await driver.disconnect();
|
|
332
353
|
}
|
|
333
354
|
}
|
|
334
355
|
}
|
|
335
356
|
async init() {
|
|
336
|
-
|
|
357
|
+
this.logger.info('Initializing with ObjectKernel...');
|
|
337
358
|
// Start the kernel - this will install and start all plugins
|
|
338
359
|
if (this.kernel.start) {
|
|
339
360
|
await this.kernel.start();
|
|
@@ -342,19 +363,19 @@ class ObjectQL {
|
|
|
342
363
|
await this.kernel.bootstrap();
|
|
343
364
|
}
|
|
344
365
|
else {
|
|
345
|
-
|
|
366
|
+
this.logger.warn('ObjectKernel does not have start() or bootstrap() method');
|
|
346
367
|
// Manually initialize plugins if kernel doesn't support lifecycle
|
|
347
368
|
for (const plugin of this.kernelPlugins) {
|
|
348
369
|
try {
|
|
349
370
|
if (typeof plugin.init === 'function') {
|
|
350
|
-
await plugin.init();
|
|
371
|
+
await plugin.init(this.kernel);
|
|
351
372
|
}
|
|
352
373
|
if (typeof plugin.start === 'function') {
|
|
353
|
-
await plugin.start();
|
|
374
|
+
await plugin.start(this.kernel);
|
|
354
375
|
}
|
|
355
376
|
}
|
|
356
377
|
catch (error) {
|
|
357
|
-
|
|
378
|
+
this.logger.error(`Failed to initialize plugin ${plugin.name || 'unknown'}`, error);
|
|
358
379
|
// Continue with other plugins even if one fails
|
|
359
380
|
}
|
|
360
381
|
}
|
|
@@ -393,19 +414,19 @@ class ObjectQL {
|
|
|
393
414
|
// Let's pass all objects to all configured drivers.
|
|
394
415
|
for (const [name, driver] of Object.entries(this.datasources)) {
|
|
395
416
|
if (driver.init) {
|
|
396
|
-
|
|
417
|
+
this.logger.debug(`Initializing driver '${name}'...`);
|
|
397
418
|
await driver.init(objects);
|
|
398
419
|
}
|
|
399
420
|
}
|
|
400
421
|
// Process Initial Data
|
|
401
422
|
await this.processInitialData();
|
|
402
|
-
|
|
423
|
+
this.logger.info('Initialization complete');
|
|
403
424
|
}
|
|
404
425
|
async processInitialData() {
|
|
405
426
|
const dataEntries = this.kernel.metadata.list('data');
|
|
406
427
|
if (dataEntries.length === 0)
|
|
407
428
|
return;
|
|
408
|
-
|
|
429
|
+
this.logger.info(`Processing ${dataEntries.length} initial data files...`);
|
|
409
430
|
// We need a system context to write data
|
|
410
431
|
const ctx = this.createContext({ isSystem: true });
|
|
411
432
|
for (const entry of dataEntries) {
|
|
@@ -423,7 +444,7 @@ class ObjectQL {
|
|
|
423
444
|
}
|
|
424
445
|
}
|
|
425
446
|
if (!objectName || !records || !Array.isArray(records)) {
|
|
426
|
-
|
|
447
|
+
this.logger.warn('Skipping invalid data entry', { entry: String(entry) });
|
|
427
448
|
continue;
|
|
428
449
|
}
|
|
429
450
|
const repo = ctx.object(objectName);
|
|
@@ -437,11 +458,11 @@ class ObjectQL {
|
|
|
437
458
|
// But without unique keys defined in data, we can't reliably dedup.
|
|
438
459
|
// Let's try to 'create' and catch errors.
|
|
439
460
|
await repo.create(record);
|
|
440
|
-
|
|
461
|
+
this.logger.debug(`Initialized record for ${objectName}`);
|
|
441
462
|
}
|
|
442
463
|
catch (e) {
|
|
443
464
|
// Ignore duplicate key errors silently-ish
|
|
444
|
-
|
|
465
|
+
this.logger.warn(`Failed to insert initial data for ${objectName}: ${e.message}`);
|
|
445
466
|
}
|
|
446
467
|
}
|
|
447
468
|
}
|
package/dist/app.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"app.js","sourceRoot":"","sources":["../src/app.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"app.js","sourceRoot":"","sources":["../src/app.ts"],"names":[],"mappings":"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"}
|
package/dist/gateway.d.ts
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
* This source code is licensed under the MIT license found in the
|
|
6
6
|
* LICENSE file in the root directory of this source tree.
|
|
7
7
|
*/
|
|
8
|
-
import { ApiRequest, ApiResponse, GatewayProtocol } from '@objectql/types';
|
|
8
|
+
import { ApiRequest, ApiResponse, GatewayProtocol, Logger } from '@objectql/types';
|
|
9
9
|
export type RequestTransformer = (request: ApiRequest) => Promise<ApiRequest>;
|
|
10
10
|
export type ResponseTransformer = (response: ApiResponse) => Promise<ApiResponse>;
|
|
11
11
|
/**
|
|
@@ -16,7 +16,8 @@ export declare class ObjectGateway {
|
|
|
16
16
|
private protocols;
|
|
17
17
|
private requestTransforms;
|
|
18
18
|
private responseTransforms;
|
|
19
|
-
|
|
19
|
+
private logger;
|
|
20
|
+
constructor(protocols?: GatewayProtocol[], logger?: Logger);
|
|
20
21
|
/**
|
|
21
22
|
* Register a new protocol handler
|
|
22
23
|
*/
|
package/dist/gateway.js
CHANGED
|
@@ -8,16 +8,18 @@
|
|
|
8
8
|
*/
|
|
9
9
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
10
|
exports.ObjectGateway = void 0;
|
|
11
|
+
const types_1 = require("@objectql/types");
|
|
11
12
|
/**
|
|
12
13
|
* Unified API Gateway
|
|
13
14
|
* Routtes generic API requests to specific protocol implementations
|
|
14
15
|
*/
|
|
15
16
|
class ObjectGateway {
|
|
16
|
-
constructor(protocols = []) {
|
|
17
|
+
constructor(protocols = [], logger) {
|
|
17
18
|
this.protocols = [];
|
|
18
19
|
this.requestTransforms = [];
|
|
19
20
|
this.responseTransforms = [];
|
|
20
21
|
this.protocols = protocols;
|
|
22
|
+
this.logger = logger !== null && logger !== void 0 ? logger : new types_1.ConsoleLogger({ name: '@objectql/gateway', level: 'info' });
|
|
21
23
|
}
|
|
22
24
|
/**
|
|
23
25
|
* Register a new protocol handler
|
|
@@ -66,7 +68,9 @@ class ObjectGateway {
|
|
|
66
68
|
response = await protocol.handle(req);
|
|
67
69
|
}
|
|
68
70
|
catch (error) {
|
|
69
|
-
|
|
71
|
+
this.logger.error(`Error in ${protocol.name}`, error, {
|
|
72
|
+
protocol: protocol.name,
|
|
73
|
+
});
|
|
70
74
|
response = {
|
|
71
75
|
status: 500,
|
|
72
76
|
headers: { 'Content-Type': 'application/json' },
|
package/dist/gateway.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gateway.js","sourceRoot":"","sources":["../src/gateway.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;
|
|
1
|
+
{"version":3,"file":"gateway.js","sourceRoot":"","sources":["../src/gateway.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;AAEH,2CAAkG;AAKlG;;;GAGG;AACH,MAAa,aAAa;IAMtB,YAAY,YAA+B,EAAE,EAAE,MAAe;QALtD,cAAS,GAAsB,EAAE,CAAC;QAClC,sBAAiB,GAAyB,EAAE,CAAC;QAC7C,uBAAkB,GAA0B,EAAE,CAAC;QAInD,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,MAAM,GAAG,MAAM,aAAN,MAAM,cAAN,MAAM,GAAI,IAAI,qBAAa,CAAC,EAAE,IAAI,EAAE,mBAAmB,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;IAC5F,CAAC;IAED;;OAEG;IACH,gBAAgB,CAAC,QAAyB;QACtC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAClC,CAAC;IAED;;OAEG;IACH,mBAAmB,CAAC,WAA+B;QAC/C,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC7C,CAAC;IAED;;OAEG;IACH,oBAAoB,CAAC,WAAgC;QACjD,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC9C,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,MAAM,CAAC,OAAmB;QAC5B,IAAI,GAAG,GAAG,OAAO,CAAC;QAElB,8BAA8B;QAC9B,KAAK,MAAM,SAAS,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC7C,GAAG,GAAG,MAAM,SAAS,CAAC,GAAG,CAAC,CAAC;QAC/B,CAAC;QAED,4BAA4B;QAC5B,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;QAExD,IAAI,CAAC,QAAQ,EAAE,CAAC;YACZ,OAAO;gBACH,MAAM,EAAE,GAAG;gBACX,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;gBAC/C,IAAI,EAAE;oBACF,KAAK,EAAE;wBACH,IAAI,EAAE,oBAAoB;wBAC1B,OAAO,EAAE,qCAAqC,GAAG,CAAC,IAAI,EAAE;qBAC3D;iBACJ;aACJ,CAAC;QACN,CAAC;QAED,IAAI,QAAqB,CAAC;QAE1B,0BAA0B;QAC1B,IAAI,CAAC;YACD,QAAQ,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC1C,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YAClB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,YAAY,QAAQ,CAAC,IAAI,EAAE,EAAE,KAAc,EAAE;gBAC3D,QAAQ,EAAE,QAAQ,CAAC,IAAI;aAC1B,CAAC,CAAC;YACH,QAAQ,GAAG;gBACP,MAAM,EAAE,GAAG;gBACX,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;gBAC/C,IAAI,EAAE;oBACF,KAAK,EAAE;wBACH,IAAI,EAAE,gBAAgB;wBACtB,OAAO,EAAE,KAAK,CAAC,OAAO,IAAI,wBAAwB;qBACrD;iBACJ;aACJ,CAAC;QACN,CAAC;QAED,+BAA+B;QAC/B,KAAK,MAAM,SAAS,IAAI,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAC9C,QAAQ,GAAG,MAAM,SAAS,CAAC,QAAQ,CAAC,CAAC;QACzC,CAAC;QAED,OAAO,QAAQ,CAAC;IACpB,CAAC;CACJ;AAvFD,sCAuFC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -7,10 +7,16 @@
|
|
|
7
7
|
*/
|
|
8
8
|
export type { ObjectKernel } from '@objectstack/runtime';
|
|
9
9
|
export type { ObjectStackProtocolImplementation } from '@objectstack/objectql';
|
|
10
|
-
|
|
11
|
-
export type
|
|
12
|
-
|
|
13
|
-
|
|
10
|
+
export { computeFQN, parseFQN, RESERVED_NAMESPACES, DEFAULT_OWNER_PRIORITY, DEFAULT_EXTENDER_PRIORITY, SchemaRegistry, } from '@objectstack/objectql';
|
|
11
|
+
export type { ObjectContributor } from '@objectstack/objectql';
|
|
12
|
+
import { Data, Automation } from '@objectstack/spec';
|
|
13
|
+
import { z } from 'zod';
|
|
14
|
+
export { QueryAST } from '@objectql/types';
|
|
15
|
+
export type DriverInterface = z.infer<typeof Data.DriverInterfaceSchema>;
|
|
16
|
+
export type DriverOptions = z.infer<typeof Data.DriverOptionsSchema>;
|
|
17
|
+
export type StateMachineConfig = z.infer<typeof Automation.StateMachineSchema>;
|
|
18
|
+
export type ObjectOwnership = z.infer<typeof Data.ObjectOwnershipEnum>;
|
|
19
|
+
export type ObjectExtension = z.infer<typeof Data.ObjectExtensionSchema>;
|
|
14
20
|
export * from './gateway';
|
|
15
21
|
export * from './repository';
|
|
16
22
|
export * from './app';
|
|
@@ -18,3 +24,4 @@ export * from './plugin';
|
|
|
18
24
|
export * from './query';
|
|
19
25
|
export * from './util';
|
|
20
26
|
export * from './optimizations';
|
|
27
|
+
export * from './ai';
|
package/dist/index.js
CHANGED
|
@@ -21,6 +21,15 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
21
21
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
22
22
|
};
|
|
23
23
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
24
|
+
exports.SchemaRegistry = exports.DEFAULT_EXTENDER_PRIORITY = exports.DEFAULT_OWNER_PRIORITY = exports.RESERVED_NAMESPACES = exports.parseFQN = exports.computeFQN = void 0;
|
|
25
|
+
// Re-export new @objectstack/objectql 1.1.0 FQN (Fully Qualified Name) utilities
|
|
26
|
+
var objectql_1 = require("@objectstack/objectql");
|
|
27
|
+
Object.defineProperty(exports, "computeFQN", { enumerable: true, get: function () { return objectql_1.computeFQN; } });
|
|
28
|
+
Object.defineProperty(exports, "parseFQN", { enumerable: true, get: function () { return objectql_1.parseFQN; } });
|
|
29
|
+
Object.defineProperty(exports, "RESERVED_NAMESPACES", { enumerable: true, get: function () { return objectql_1.RESERVED_NAMESPACES; } });
|
|
30
|
+
Object.defineProperty(exports, "DEFAULT_OWNER_PRIORITY", { enumerable: true, get: function () { return objectql_1.DEFAULT_OWNER_PRIORITY; } });
|
|
31
|
+
Object.defineProperty(exports, "DEFAULT_EXTENDER_PRIORITY", { enumerable: true, get: function () { return objectql_1.DEFAULT_EXTENDER_PRIORITY; } });
|
|
32
|
+
Object.defineProperty(exports, "SchemaRegistry", { enumerable: true, get: function () { return objectql_1.SchemaRegistry; } });
|
|
24
33
|
__exportStar(require("./gateway"), exports);
|
|
25
34
|
// Export our enhanced runtime components (actual implementations)
|
|
26
35
|
__exportStar(require("./repository"), exports);
|
|
@@ -32,4 +41,6 @@ __exportStar(require("./query"), exports);
|
|
|
32
41
|
__exportStar(require("./util"), exports);
|
|
33
42
|
// Export kernel optimizations
|
|
34
43
|
__exportStar(require("./optimizations"), exports);
|
|
44
|
+
// Export AI runtime
|
|
45
|
+
__exportStar(require("./ai"), exports);
|
|
35
46
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;;;;;;;;;;;;;;;AAMH,iFAAiF;AACjF,kDAO+B;AAN3B,sGAAA,UAAU,OAAA;AACV,oGAAA,QAAQ,OAAA;AACR,+GAAA,mBAAmB,OAAA;AACnB,kHAAA,sBAAsB,OAAA;AACtB,qHAAA,yBAAyB,OAAA;AACzB,0GAAA,cAAc,OAAA;AAgBlB,4CAA0B;AAE1B,kEAAkE;AAClE,+CAA6B;AAC7B,wCAAsB;AACtB,2CAAyB;AAEzB,2DAA2D;AAC3D,0CAAwB;AAExB,mBAAmB;AACnB,yCAAuB;AAEvB,8BAA8B;AAC9B,kDAAgC;AAEhC,oBAAoB;AACpB,uCAAqB"}
|
|
@@ -8,6 +8,7 @@
|
|
|
8
8
|
*/
|
|
9
9
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
10
|
exports.CompiledHookManager = void 0;
|
|
11
|
+
const types_1 = require("@objectql/types");
|
|
11
12
|
/**
|
|
12
13
|
* Compiled Hook Manager
|
|
13
14
|
*
|
|
@@ -22,6 +23,8 @@ class CompiledHookManager {
|
|
|
22
23
|
this.pipelines = new Map();
|
|
23
24
|
// Keep track of all registered hooks for management
|
|
24
25
|
this.allHooks = new Map();
|
|
26
|
+
// Structured logger
|
|
27
|
+
this.logger = new types_1.ConsoleLogger({ name: '@objectql/hook-manager', level: 'warn' });
|
|
25
28
|
}
|
|
26
29
|
/**
|
|
27
30
|
* Expand a pattern like "before*" to all matching events
|
|
@@ -115,7 +118,10 @@ class CompiledHookManager {
|
|
|
115
118
|
return Promise.resolve(hook.handler(context));
|
|
116
119
|
}
|
|
117
120
|
catch (error) {
|
|
118
|
-
|
|
121
|
+
this.logger.error(`Hook execution failed for ${event}:${objectName}`, error, {
|
|
122
|
+
event,
|
|
123
|
+
objectName,
|
|
124
|
+
});
|
|
119
125
|
return Promise.resolve();
|
|
120
126
|
}
|
|
121
127
|
}));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CompiledHookManager.js","sourceRoot":"","sources":["../../src/optimizations/CompiledHookManager.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;
|
|
1
|
+
{"version":3,"file":"CompiledHookManager.js","sourceRoot":"","sources":["../../src/optimizations/CompiledHookManager.ts"],"names":[],"mappings":"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"}
|