@arch-cadre/modules 0.0.24 → 0.0.26
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/dist/index.cjs +19 -7
- package/dist/index.d.cts +20 -5
- package/dist/index.d.cts.map +1 -0
- package/dist/index.d.mts +20 -5
- package/dist/index.d.mts.map +1 -0
- package/dist/index.mjs +19 -5
- package/dist/index.mjs.map +1 -0
- package/dist/server.cjs +292 -19
- package/dist/server.d.cts +59 -7
- package/dist/server.d.cts.map +1 -0
- package/dist/server.d.mts +59 -7
- package/dist/server.d.mts.map +1 -0
- package/dist/server.mjs +280 -8
- package/dist/server.mjs.map +1 -0
- package/dist/ui-CCBvXMXH.cjs +441 -0
- package/dist/{types.d.cts → ui-CWGtK5lA.d.cts} +15 -2
- package/dist/ui-CWGtK5lA.d.cts.map +1 -0
- package/dist/{types.d.mts → ui-aeAUERbe.d.mts} +15 -2
- package/dist/ui-aeAUERbe.d.mts.map +1 -0
- package/dist/{server/ui.mjs → ui-lsiPxu_C.mjs} +129 -5
- package/dist/ui-lsiPxu_C.mjs.map +1 -0
- package/package.json +1 -1
- package/dist/_virtual/_rolldown/runtime.cjs +0 -29
- package/dist/client/extension-point-client.cjs +0 -28
- package/dist/client/extension-point-client.d.cts +0 -20
- package/dist/client/extension-point-client.d.cts.map +0 -1
- package/dist/client/extension-point-client.d.mts +0 -20
- package/dist/client/extension-point-client.d.mts.map +0 -1
- package/dist/client/extension-point-client.mjs +0 -27
- package/dist/client/extension-point-client.mjs.map +0 -1
- package/dist/client/extension-point.cjs +0 -21
- package/dist/client/extension-point.d.cts +0 -21
- package/dist/client/extension-point.d.cts.map +0 -1
- package/dist/client/extension-point.d.mts +0 -21
- package/dist/client/extension-point.d.mts.map +0 -1
- package/dist/client/extension-point.mjs +0 -20
- package/dist/client/extension-point.mjs.map +0 -1
- package/dist/client/widget-area.cjs +0 -21
- package/dist/client/widget-area.d.cts +0 -19
- package/dist/client/widget-area.d.cts.map +0 -1
- package/dist/client/widget-area.d.mts +0 -19
- package/dist/client/widget-area.d.mts.map +0 -1
- package/dist/client/widget-area.mjs +0 -20
- package/dist/client/widget-area.mjs.map +0 -1
- package/dist/server/lifecycle.cjs +0 -193
- package/dist/server/lifecycle.d.cts +0 -9
- package/dist/server/lifecycle.d.cts.map +0 -1
- package/dist/server/lifecycle.d.mts +0 -9
- package/dist/server/lifecycle.d.mts.map +0 -1
- package/dist/server/lifecycle.mjs +0 -189
- package/dist/server/lifecycle.mjs.map +0 -1
- package/dist/server/manage.cjs +0 -126
- package/dist/server/manage.d.cts +0 -31
- package/dist/server/manage.d.cts.map +0 -1
- package/dist/server/manage.d.mts +0 -31
- package/dist/server/manage.d.mts.map +0 -1
- package/dist/server/manage.mjs +0 -118
- package/dist/server/manage.mjs.map +0 -1
- package/dist/server/registry.cjs +0 -86
- package/dist/server/registry.d.cts +0 -5
- package/dist/server/registry.d.cts.map +0 -1
- package/dist/server/registry.d.mts +0 -5
- package/dist/server/registry.d.mts.map +0 -1
- package/dist/server/registry.mjs +0 -86
- package/dist/server/registry.mjs.map +0 -1
- package/dist/server/ui.cjs +0 -180
- package/dist/server/ui.d.cts +0 -17
- package/dist/server/ui.d.cts.map +0 -1
- package/dist/server/ui.d.mts +0 -17
- package/dist/server/ui.d.mts.map +0 -1
- package/dist/server/ui.mjs.map +0 -1
- package/dist/types.cjs +0 -19
- package/dist/types.d.cts.map +0 -1
- package/dist/types.d.mts.map +0 -1
- package/dist/types.mjs +0 -19
- package/dist/types.mjs.map +0 -1
package/dist/index.cjs
CHANGED
|
@@ -1,12 +1,24 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
2
|
-
const
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
const require_widget_area = require('./client/widget-area.cjs');
|
|
2
|
+
const require_ui = require('./ui-CCBvXMXH.cjs');
|
|
3
|
+
require("react");
|
|
4
|
+
let react_jsx_runtime = require("react/jsx-runtime");
|
|
6
5
|
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
6
|
+
//#region src/client/widget-area.tsx
|
|
7
|
+
async function WidgetArea({ area, className, fallback, props }) {
|
|
8
|
+
const widgets = await require_ui.getModuleWidgets(area);
|
|
9
|
+
if (widgets.length === 0) return fallback || null;
|
|
10
|
+
return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
|
|
11
|
+
className,
|
|
12
|
+
children: widgets.map((widget) => {
|
|
13
|
+
const Component = widget.component;
|
|
14
|
+
return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(Component, { ...props }, widget.id);
|
|
15
|
+
})
|
|
16
|
+
});
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
//#endregion
|
|
20
|
+
exports.ModuleManifestSchema = require_ui.ModuleManifestSchema;
|
|
21
|
+
exports.WidgetArea = WidgetArea;
|
|
10
22
|
exports.getApiModuleRoutes = require_ui.getApiModuleRoutes;
|
|
11
23
|
exports.getExtensions = require_ui.getExtensions;
|
|
12
24
|
exports.getKryoModuleNavigationGrouped = require_ui.getKryoModuleNavigationGrouped;
|
package/dist/index.d.cts
CHANGED
|
@@ -1,5 +1,20 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import
|
|
3
|
-
import
|
|
4
|
-
|
|
5
|
-
|
|
1
|
+
import { C as PrivateRouteDefinition, D as SidebarMenuType, E as SidebarMenuItemType, O as SystemEvent, S as ModuleWidget, T as SidebarGroupType, _ as ModuleNavElement, a as getKryoPathPrefix, b as ModulePageProps, c as getModuleWidgets, d as hasExtension, f as ApiRouteDefinition, g as ModuleManifestSchema, h as ModuleManifest, i as getKryoModuleRoutes, l as getPrivateModuleRoutes, m as ModuleExtension, n as getExtensions, o as getModuleNavigation, p as IModule, r as getKryoModuleNavigationGrouped, s as getModuleNavigationGrouped, t as getApiModuleRoutes, u as getPublicModuleRoutes, v as ModuleNavigation, w as PublicRouteDefinition, x as ModuleRouteDefinition, y as ModuleNavigationGroupMap } from "./ui-CWGtK5lA.cjs";
|
|
2
|
+
import * as react_jsx_runtime0 from "react/jsx-runtime";
|
|
3
|
+
import * as React from "react";
|
|
4
|
+
|
|
5
|
+
//#region src/client/widget-area.d.ts
|
|
6
|
+
interface WidgetAreaProps {
|
|
7
|
+
area: string;
|
|
8
|
+
className?: string;
|
|
9
|
+
fallback?: React.ReactNode;
|
|
10
|
+
props?: any;
|
|
11
|
+
}
|
|
12
|
+
declare function WidgetArea({
|
|
13
|
+
area,
|
|
14
|
+
className,
|
|
15
|
+
fallback,
|
|
16
|
+
props
|
|
17
|
+
}: WidgetAreaProps): Promise<string | number | bigint | boolean | Iterable<React.ReactNode> | react_jsx_runtime0.JSX.Element | null | undefined>;
|
|
18
|
+
//#endregion
|
|
19
|
+
export { ApiRouteDefinition, IModule, ModuleExtension, ModuleManifest, ModuleManifestSchema, ModuleNavElement, ModuleNavigation, ModuleNavigationGroupMap, ModulePageProps, ModuleRouteDefinition, ModuleWidget, PrivateRouteDefinition, PublicRouteDefinition, SidebarGroupType, SidebarMenuItemType, SidebarMenuType, SystemEvent, WidgetArea, getApiModuleRoutes, getExtensions, getKryoModuleNavigationGrouped, getKryoModuleRoutes, getKryoPathPrefix, getModuleNavigation, getModuleNavigationGrouped, getModuleWidgets, getPrivateModuleRoutes, getPublicModuleRoutes, hasExtension };
|
|
20
|
+
//# sourceMappingURL=index.d.cts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.cts","names":[],"sources":["../src/client/widget-area.tsx"],"mappings":";;;;;UAGU,eAAA;EACR,IAAA;EACA,SAAA;EACA,QAAA,GAAW,KAAA,CAAM,SAAA;EAEjB,KAAA;AAAA;AAAA,iBAGoB,UAAA,CAAA;EACpB,IAAA;EACA,SAAA;EACA,QAAA;EACA;AAAA,GACC,eAAA,GAAe,OAAA,sCAAA,QAAA,CAAA,KAAA,CAAA,SAAA,IAAA,kBAAA,CAAA,GAAA,CAAA,OAAA"}
|
package/dist/index.d.mts
CHANGED
|
@@ -1,5 +1,20 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import
|
|
3
|
-
import
|
|
4
|
-
|
|
5
|
-
|
|
1
|
+
import { C as PrivateRouteDefinition, D as SidebarMenuType, E as SidebarMenuItemType, O as SystemEvent, S as ModuleWidget, T as SidebarGroupType, _ as ModuleNavElement, a as getKryoPathPrefix, b as ModulePageProps, c as getModuleWidgets, d as hasExtension, f as ApiRouteDefinition, g as ModuleManifestSchema, h as ModuleManifest, i as getKryoModuleRoutes, l as getPrivateModuleRoutes, m as ModuleExtension, n as getExtensions, o as getModuleNavigation, p as IModule, r as getKryoModuleNavigationGrouped, s as getModuleNavigationGrouped, t as getApiModuleRoutes, u as getPublicModuleRoutes, v as ModuleNavigation, w as PublicRouteDefinition, x as ModuleRouteDefinition, y as ModuleNavigationGroupMap } from "./ui-aeAUERbe.mjs";
|
|
2
|
+
import * as React from "react";
|
|
3
|
+
import * as react_jsx_runtime0 from "react/jsx-runtime";
|
|
4
|
+
|
|
5
|
+
//#region src/client/widget-area.d.ts
|
|
6
|
+
interface WidgetAreaProps {
|
|
7
|
+
area: string;
|
|
8
|
+
className?: string;
|
|
9
|
+
fallback?: React.ReactNode;
|
|
10
|
+
props?: any;
|
|
11
|
+
}
|
|
12
|
+
declare function WidgetArea({
|
|
13
|
+
area,
|
|
14
|
+
className,
|
|
15
|
+
fallback,
|
|
16
|
+
props
|
|
17
|
+
}: WidgetAreaProps): Promise<string | number | bigint | boolean | Iterable<React.ReactNode> | react_jsx_runtime0.JSX.Element | null | undefined>;
|
|
18
|
+
//#endregion
|
|
19
|
+
export { ApiRouteDefinition, IModule, ModuleExtension, ModuleManifest, ModuleManifestSchema, ModuleNavElement, ModuleNavigation, ModuleNavigationGroupMap, ModulePageProps, ModuleRouteDefinition, ModuleWidget, PrivateRouteDefinition, PublicRouteDefinition, SidebarGroupType, SidebarMenuItemType, SidebarMenuType, SystemEvent, WidgetArea, getApiModuleRoutes, getExtensions, getKryoModuleNavigationGrouped, getKryoModuleRoutes, getKryoPathPrefix, getModuleNavigation, getModuleNavigationGrouped, getModuleWidgets, getPrivateModuleRoutes, getPublicModuleRoutes, hasExtension };
|
|
20
|
+
//# sourceMappingURL=index.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.mts","names":[],"sources":["../src/client/widget-area.tsx"],"mappings":";;;;;UAGU,eAAA;EACR,IAAA;EACA,SAAA;EACA,QAAA,GAAW,KAAA,CAAM,SAAA;EAEjB,KAAA;AAAA;AAAA,iBAGoB,UAAA,CAAA;EACpB,IAAA;EACA,SAAA;EACA,QAAA;EACA;AAAA,GACC,eAAA,GAAe,OAAA,sCAAA,QAAA,CAAA,KAAA,CAAA,SAAA,IAAA,kBAAA,CAAA,GAAA,CAAA,OAAA"}
|
package/dist/index.mjs
CHANGED
|
@@ -1,6 +1,20 @@
|
|
|
1
|
-
import { ModuleManifestSchema } from "./
|
|
2
|
-
import
|
|
3
|
-
import {
|
|
4
|
-
import { WidgetArea } from "./client/widget-area.mjs";
|
|
1
|
+
import { a as getKryoPathPrefix, c as getModuleWidgets, d as hasExtension, i as getKryoModuleRoutes, l as getPrivateModuleRoutes, n as getExtensions, o as getModuleNavigation, r as getKryoModuleNavigationGrouped, s as getModuleNavigationGrouped, t as getApiModuleRoutes, u as getPublicModuleRoutes, y as ModuleManifestSchema } from "./ui-lsiPxu_C.mjs";
|
|
2
|
+
import "react";
|
|
3
|
+
import { jsx } from "react/jsx-runtime";
|
|
5
4
|
|
|
6
|
-
|
|
5
|
+
//#region src/client/widget-area.tsx
|
|
6
|
+
async function WidgetArea({ area, className, fallback, props }) {
|
|
7
|
+
const widgets = await getModuleWidgets(area);
|
|
8
|
+
if (widgets.length === 0) return fallback || null;
|
|
9
|
+
return /* @__PURE__ */ jsx("div", {
|
|
10
|
+
className,
|
|
11
|
+
children: widgets.map((widget) => {
|
|
12
|
+
const Component = widget.component;
|
|
13
|
+
return /* @__PURE__ */ jsx(Component, { ...props }, widget.id);
|
|
14
|
+
})
|
|
15
|
+
});
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
//#endregion
|
|
19
|
+
export { ModuleManifestSchema, WidgetArea, getApiModuleRoutes, getExtensions, getKryoModuleNavigationGrouped, getKryoModuleRoutes, getKryoPathPrefix, getModuleNavigation, getModuleNavigationGrouped, getModuleWidgets, getPrivateModuleRoutes, getPublicModuleRoutes, hasExtension };
|
|
20
|
+
//# sourceMappingURL=index.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.mjs","names":[],"sources":["../src/client/widget-area.tsx"],"sourcesContent":["import * as React from \"react\";\nimport { getModuleWidgets } from \"../server/ui\";\n\ninterface WidgetAreaProps {\n area: string;\n className?: string;\n fallback?: React.ReactNode;\n // Przekazywanie dowolnych propsów do widgetów (np. dane użytkownika)\n props?: any;\n}\n\nexport async function WidgetArea({\n area,\n className,\n fallback,\n props,\n}: WidgetAreaProps) {\n const widgets = await getModuleWidgets(area);\n\n if (widgets.length === 0) {\n return fallback || null;\n }\n\n return (\n <div className={className}>\n {widgets.map((widget) => {\n const Component = widget.component;\n return <Component key={widget.id} {...props} />;\n })}\n </div>\n );\n}\n"],"mappings":";;;;;AAWA,eAAsB,WAAW,EAC/B,MACA,WACA,UACA,SACkB;CAClB,MAAM,UAAU,MAAM,iBAAiB,KAAK;AAE5C,KAAI,QAAQ,WAAW,EACrB,QAAO,YAAY;AAGrB,QACE,oBAAC;EAAe;YACb,QAAQ,KAAK,WAAW;GACvB,MAAM,YAAY,OAAO;AACzB,UAAO,oBAAC,aAA0B,GAAI,SAAf,OAAO,GAAiB;IAC/C;GACE"}
|
package/dist/server.cjs
CHANGED
|
@@ -1,32 +1,305 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
2
|
-
const
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
2
|
+
const require_ui = require('./ui-CCBvXMXH.cjs');
|
|
3
|
+
require("react");
|
|
4
|
+
let _arch_cadre_core_server = require("@arch-cadre/core/server");
|
|
5
|
+
let node_fs_promises = require("node:fs/promises");
|
|
6
|
+
node_fs_promises = require_ui.__toESM(node_fs_promises);
|
|
7
|
+
let node_path = require("node:path");
|
|
8
|
+
node_path = require_ui.__toESM(node_path);
|
|
9
|
+
let _arch_cadre_core = require("@arch-cadre/core");
|
|
10
|
+
let drizzle_orm = require("drizzle-orm");
|
|
11
|
+
let react_jsx_runtime = require("react/jsx-runtime");
|
|
12
|
+
let node_child_process = require("node:child_process");
|
|
13
|
+
let node_util = require("node:util");
|
|
8
14
|
|
|
9
|
-
|
|
10
|
-
|
|
15
|
+
//#region src/client/extension-point.tsx
|
|
16
|
+
async function ExtensionPoint({ module, point, className, props, fallback }) {
|
|
17
|
+
const extensions = await require_ui.getExtensions(module, point);
|
|
18
|
+
if (extensions.length === 0) return fallback || null;
|
|
19
|
+
return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
|
|
20
|
+
className,
|
|
21
|
+
children: extensions.map((ext) => {
|
|
22
|
+
const Component = ext.component;
|
|
23
|
+
return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(Component, { ...props }, ext.id);
|
|
24
|
+
})
|
|
25
|
+
});
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
//#endregion
|
|
29
|
+
//#region src/server/lifecycle.ts
|
|
30
|
+
const sleep = (ms) => new Promise((resolve) => setTimeout(resolve, ms));
|
|
31
|
+
async function updateStep(moduleId, step) {
|
|
32
|
+
console.log(`[Kernel] "${moduleId}" step: ${step}`);
|
|
33
|
+
await _arch_cadre_core_server.db.update(_arch_cadre_core.systemModulesTable).set({ lastStep: step }).where((0, drizzle_orm.eq)(_arch_cadre_core.systemModulesTable.id, moduleId));
|
|
34
|
+
}
|
|
35
|
+
async function resolveSchemaPath(moduleId) {
|
|
36
|
+
const root = process.cwd();
|
|
37
|
+
if (moduleId === "@arch-cadre/core" || moduleId === "core") {
|
|
38
|
+
const p = node_path.default.join(root, "node_modules", "@kryo", "core", "dist", "server", "database", "schema.cjs");
|
|
39
|
+
try {
|
|
40
|
+
await node_fs_promises.default.access(p);
|
|
41
|
+
return p;
|
|
42
|
+
} catch {
|
|
43
|
+
const devP = node_path.default.resolve(root, "../../packages/kryo-core/src/server/database/schema.ts");
|
|
44
|
+
try {
|
|
45
|
+
await node_fs_promises.default.access(devP);
|
|
46
|
+
return devP;
|
|
47
|
+
} catch {}
|
|
48
|
+
}
|
|
49
|
+
return null;
|
|
50
|
+
}
|
|
51
|
+
const cleanId = moduleId.replace("@arch-cadre/", "");
|
|
52
|
+
const possible = [
|
|
53
|
+
node_path.default.join(root, "modules", cleanId, "schema.ts"),
|
|
54
|
+
node_path.default.join(root, "modules", moduleId, "schema.ts"),
|
|
55
|
+
node_path.default.join(root, "node_modules", moduleId, "dist", "schema.cjs"),
|
|
56
|
+
node_path.default.join(root, "node_modules", `@arch-cadre/${cleanId}`, "dist", "schema.cjs"),
|
|
57
|
+
node_path.default.join(root, "node_modules", moduleId, "src", "schema.ts"),
|
|
58
|
+
node_path.default.join(root, "node_modules", `@arch-cadre/${cleanId}`, "src", "schema.ts"),
|
|
59
|
+
node_path.default.resolve(root, "../../packages", cleanId, "src", "schema.ts"),
|
|
60
|
+
node_path.default.resolve(root, "../../packages", `kryo-${cleanId}`, "src", "schema.ts"),
|
|
61
|
+
node_path.default.resolve(root, "../../packages", cleanId, "schema.ts")
|
|
62
|
+
];
|
|
63
|
+
for (const p of possible) try {
|
|
64
|
+
await node_fs_promises.default.access(p);
|
|
65
|
+
console.log(`[Kernel:Lifecycle] Resolved schema for ${moduleId} at: ${p}`);
|
|
66
|
+
return p;
|
|
67
|
+
} catch {
|
|
68
|
+
console.warn(`[Kernel:Lifecycle] Unresolved schema for ${moduleId} at: ${p}`);
|
|
69
|
+
}
|
|
70
|
+
console.warn(`[Kernel:Lifecycle] Could not resolve schema path for: ${moduleId}`);
|
|
71
|
+
return null;
|
|
72
|
+
}
|
|
73
|
+
async function pushModuleSchema(moduleId) {
|
|
74
|
+
const execAsync = (0, node_util.promisify)(node_child_process.exec);
|
|
75
|
+
console.log(`[Kernel:Lifecycle] Targeted sync for module: ${moduleId}`);
|
|
76
|
+
const root = process.cwd();
|
|
77
|
+
const enabledFromDb = await _arch_cadre_core_server.db.select({ id: _arch_cadre_core.systemModulesTable.id }).from(_arch_cadre_core.systemModulesTable).where((0, drizzle_orm.eq)(_arch_cadre_core.systemModulesTable.enabled, true));
|
|
78
|
+
const activeModuleIds = new Set(enabledFromDb.map((m) => m.id));
|
|
79
|
+
activeModuleIds.add("@arch-cadre/core");
|
|
80
|
+
activeModuleIds.add(moduleId);
|
|
81
|
+
const schemaPaths = [];
|
|
82
|
+
for (const id of Array.from(activeModuleIds)) {
|
|
83
|
+
const p = await resolveSchemaPath(id);
|
|
84
|
+
if (p) schemaPaths.push(p);
|
|
85
|
+
}
|
|
86
|
+
if (schemaPaths.length === 0) {
|
|
87
|
+
console.warn(`[Kernel:Lifecycle] No schema paths resolved for ${moduleId}, skipping push.`);
|
|
88
|
+
return;
|
|
89
|
+
}
|
|
90
|
+
const configPath = node_path.default.join(root, "drizzle.config.ts");
|
|
91
|
+
const cmd = `"${node_path.default.join(root, "node_modules", ".bin", "drizzle-kit")}" push --force --config=${configPath}`;
|
|
92
|
+
console.log(`[Kernel:Lifecycle] Executing isolated migration. Modules: ${Array.from(activeModuleIds).join(", ")}`);
|
|
93
|
+
try {
|
|
94
|
+
await execAsync(cmd, {
|
|
95
|
+
env: {
|
|
96
|
+
...process.env,
|
|
97
|
+
CI: "true",
|
|
98
|
+
DRIZZLE_SCHEMA_OVERRIDE: schemaPaths.join(",")
|
|
99
|
+
},
|
|
100
|
+
cwd: root
|
|
101
|
+
});
|
|
102
|
+
console.log(`[Kernel:Lifecycle] Isolated migration successful for ${moduleId}`);
|
|
103
|
+
} catch (e) {
|
|
104
|
+
console.error(`[Kernel:Lifecycle] Isolated migration failed for ${moduleId}:`);
|
|
105
|
+
console.error(e.stdout || e.message);
|
|
106
|
+
throw new Error(`Migration failed: ${moduleId}`);
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
async function performToggle(moduleId, isEnabled) {
|
|
110
|
+
try {
|
|
111
|
+
const allModules = await require_ui.getModules();
|
|
112
|
+
const manifest = allModules.find((m) => m.id === moduleId);
|
|
113
|
+
await updateStep(moduleId, "Validate module...");
|
|
114
|
+
await sleep(500);
|
|
115
|
+
if (!manifest) return;
|
|
116
|
+
if (isEnabled) {
|
|
117
|
+
await updateStep(moduleId, "Queued...");
|
|
118
|
+
await sleep(500);
|
|
119
|
+
if (manifest.dependencies?.length) {
|
|
120
|
+
const pendingDeps = manifest.dependencies.filter((depId) => {
|
|
121
|
+
const dep = allModules.find((m) => m.id === depId);
|
|
122
|
+
return dep && !dep.enabled && !dep.system;
|
|
123
|
+
});
|
|
124
|
+
if (pendingDeps.length > 0) for (const depId of pendingDeps) {
|
|
125
|
+
await updateStep(moduleId, `Waiting for dependency "${depId}"...`);
|
|
126
|
+
await performToggle(depId, true);
|
|
127
|
+
await sleep(500);
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
await updateStep(moduleId, "Initializing...");
|
|
131
|
+
await sleep(500);
|
|
132
|
+
await _arch_cadre_core_server.db.update(_arch_cadre_core.systemModulesTable).set({ enabled: true }).where((0, drizzle_orm.eq)(_arch_cadre_core.systemModulesTable.id, moduleId));
|
|
133
|
+
const instance = await require_ui.getModuleInstance(moduleId);
|
|
134
|
+
await updateStep(moduleId, "Migrate database...");
|
|
135
|
+
await sleep(500);
|
|
136
|
+
try {
|
|
137
|
+
if (instance?.onMigrate) await instance.onMigrate();
|
|
138
|
+
else await pushModuleSchema(moduleId);
|
|
139
|
+
await updateStep(moduleId, "Migration successful");
|
|
140
|
+
} catch (e) {
|
|
141
|
+
console.error(`[Kernel] Migration failed for ${moduleId}:`, e);
|
|
142
|
+
await updateStep(moduleId, `Migration failed: ${e.message}`);
|
|
143
|
+
await sleep(500);
|
|
144
|
+
}
|
|
145
|
+
if (instance?.onEnable) {
|
|
146
|
+
await updateStep(moduleId, "Running setup...");
|
|
147
|
+
await sleep(500);
|
|
148
|
+
await instance.onEnable();
|
|
149
|
+
}
|
|
150
|
+
await updateStep(moduleId, "Finishing...");
|
|
151
|
+
await sleep(500);
|
|
152
|
+
await _arch_cadre_core_server.db.update(_arch_cadre_core.systemModulesTable).set({
|
|
153
|
+
installed: true,
|
|
154
|
+
lastStep: null
|
|
155
|
+
}).where((0, drizzle_orm.eq)(_arch_cadre_core.systemModulesTable.id, moduleId));
|
|
156
|
+
} else {
|
|
157
|
+
const dependents = allModules.filter((m) => {
|
|
158
|
+
if (!m.enabled || m.id === moduleId) return false;
|
|
159
|
+
if (m.dependencies?.includes(moduleId)) return true;
|
|
160
|
+
if (m.extends?.includes(moduleId)) return m.extends.filter((targetId) => {
|
|
161
|
+
if (targetId === moduleId) return false;
|
|
162
|
+
return allModules.find((mod) => mod.id === targetId)?.enabled;
|
|
163
|
+
}).length === 0;
|
|
164
|
+
return false;
|
|
165
|
+
});
|
|
166
|
+
if (dependents.length > 0) {
|
|
167
|
+
await updateStep(moduleId, `Deactivating dependents...`);
|
|
168
|
+
for (const dep of dependents) {
|
|
169
|
+
await performToggle(dep.id, false);
|
|
170
|
+
await sleep(500);
|
|
171
|
+
}
|
|
172
|
+
}
|
|
173
|
+
await updateStep(moduleId, "Deactivating...");
|
|
174
|
+
const instance = await require_ui.getModuleInstance(moduleId);
|
|
175
|
+
if (instance?.onDisable) await instance.onDisable();
|
|
176
|
+
await _arch_cadre_core_server.db.update(_arch_cadre_core.systemModulesTable).set({
|
|
177
|
+
enabled: false,
|
|
178
|
+
installed: false
|
|
179
|
+
}).where((0, drizzle_orm.eq)(_arch_cadre_core.systemModulesTable.id, moduleId));
|
|
180
|
+
await updateStep(moduleId, null);
|
|
181
|
+
}
|
|
182
|
+
} catch (e) {
|
|
183
|
+
console.error(`[Kernel] Fatal error for ${moduleId}:`, e);
|
|
184
|
+
await updateStep(moduleId, `Error: ${e.message}`);
|
|
185
|
+
}
|
|
186
|
+
}
|
|
187
|
+
async function toggleModuleState(moduleId, isEnabled) {
|
|
188
|
+
const manifest = (await require_ui.getModules()).find((m) => m.id === moduleId);
|
|
189
|
+
if (!manifest) throw new Error(`Module "${moduleId}" not found`);
|
|
190
|
+
if (manifest.enabled === isEnabled) return { success: true };
|
|
191
|
+
performToggle(moduleId, isEnabled);
|
|
192
|
+
return { success: true };
|
|
193
|
+
}
|
|
194
|
+
async function initOperationalModules() {
|
|
195
|
+
const allModules = await require_ui.getModules();
|
|
196
|
+
for (const mod of allModules) if (mod.enabled) try {
|
|
197
|
+
const instance = await require_ui.getModuleInstance(mod.id);
|
|
198
|
+
if (instance?.init) await instance.init();
|
|
199
|
+
} catch (e) {
|
|
200
|
+
console.error(`[Kernel] Failed to init module ${mod.id}:`, e);
|
|
201
|
+
}
|
|
202
|
+
}
|
|
203
|
+
|
|
204
|
+
//#endregion
|
|
205
|
+
//#region src/server/registry.ts
|
|
206
|
+
const globalForRegistry = globalThis;
|
|
207
|
+
async function initModules(force = false) {
|
|
208
|
+
if (globalForRegistry.__KRYO_MODULES_INITIALIZED__ && !force) return;
|
|
209
|
+
if (force) {
|
|
210
|
+
console.log("[Kernel:Registry] Forcing re-initialization...");
|
|
211
|
+
_arch_cadre_core.eventBus.clearAll();
|
|
212
|
+
}
|
|
213
|
+
console.log("[Kernel:Registry] Synchronizing module listeners...");
|
|
214
|
+
globalForRegistry.__KRYO_MODULES_INITIALIZED__ = true;
|
|
215
|
+
await _arch_cadre_core.eventBus.publish("system:modules:init:start", { timestamp: Date.now() });
|
|
216
|
+
const processedModuleIds = /* @__PURE__ */ new Set();
|
|
217
|
+
let hasNewModules = true;
|
|
218
|
+
let iterations = 0;
|
|
219
|
+
const MAX_ITERATIONS = 10;
|
|
220
|
+
while (hasNewModules && iterations < MAX_ITERATIONS) {
|
|
221
|
+
hasNewModules = false;
|
|
222
|
+
iterations++;
|
|
223
|
+
const pendingModules = (await require_ui.getModules()).filter((mod) => !processedModuleIds.has(mod.id));
|
|
224
|
+
if (pendingModules.length === 0) break;
|
|
225
|
+
for (const mod of pendingModules) try {
|
|
226
|
+
await _arch_cadre_core_server.db.insert(_arch_cadre_core.systemModulesTable).values({
|
|
227
|
+
id: mod.id,
|
|
228
|
+
enabled: mod.system ?? false,
|
|
229
|
+
installed: mod.system ?? false,
|
|
230
|
+
system: mod.system ?? false
|
|
231
|
+
}).onConflictDoNothing();
|
|
232
|
+
} catch (_e) {}
|
|
233
|
+
const sortedPending = [...pendingModules].sort((a, b) => a.system === b.system ? 0 : a.system ? -1 : 1);
|
|
234
|
+
for (const mod of sortedPending) {
|
|
235
|
+
processedModuleIds.add(mod.id);
|
|
236
|
+
hasNewModules = true;
|
|
237
|
+
try {
|
|
238
|
+
const enabled = await require_ui.isModuleEnabled(mod.id);
|
|
239
|
+
if (!enabled) continue;
|
|
240
|
+
const instance = await require_ui.getModuleInstance(mod.id);
|
|
241
|
+
if (!instance) {
|
|
242
|
+
console.warn(`[Kernel:Registry] No instance found for module ${mod.id}. Ensure it is registered correctly.`);
|
|
243
|
+
continue;
|
|
244
|
+
}
|
|
245
|
+
let dbMod = null;
|
|
246
|
+
try {
|
|
247
|
+
[dbMod] = await _arch_cadre_core_server.db.select().from(_arch_cadre_core.systemModulesTable).where((0, drizzle_orm.eq)(_arch_cadre_core.systemModulesTable.id, mod.id));
|
|
248
|
+
} catch (_e) {}
|
|
249
|
+
if (enabled && (!dbMod || !dbMod.installed)) {
|
|
250
|
+
console.log(`[Kernel:Registry] Installing module ${mod.id}...`);
|
|
251
|
+
if (instance.onMigrate) {
|
|
252
|
+
console.log(`[Kernel:Registry] Running onMigrate for ${mod.id}...`);
|
|
253
|
+
await instance.onMigrate();
|
|
254
|
+
}
|
|
255
|
+
console.log(`[Kernel:Registry] Running onEnable for ${mod.id}...`);
|
|
256
|
+
if (instance.onEnable) await instance.onEnable();
|
|
257
|
+
try {
|
|
258
|
+
await _arch_cadre_core_server.db.update(_arch_cadre_core.systemModulesTable).set({
|
|
259
|
+
installed: true,
|
|
260
|
+
lastStep: null
|
|
261
|
+
}).where((0, drizzle_orm.eq)(_arch_cadre_core.systemModulesTable.id, mod.id));
|
|
262
|
+
} catch (_e) {}
|
|
263
|
+
}
|
|
264
|
+
if (instance.init) {
|
|
265
|
+
console.log(`[Kernel:Registry] Initializing ${mod.id}...`);
|
|
266
|
+
await instance.init();
|
|
267
|
+
console.log(`[Kernel:Registry] Module ${mod.id} is active.`);
|
|
268
|
+
}
|
|
269
|
+
} catch (error) {
|
|
270
|
+
console.error(`[Kernel:Registry] Critical failure for ${mod.id}:`, error);
|
|
271
|
+
}
|
|
272
|
+
}
|
|
273
|
+
}
|
|
274
|
+
if (iterations >= MAX_ITERATIONS) console.warn("[Kernel:Registry] Max init iterations reached. Check for circular module registrations.");
|
|
275
|
+
await _arch_cadre_core.eventBus.publish("system:modules:init:end", {
|
|
276
|
+
timestamp: Date.now(),
|
|
277
|
+
moduleCount: processedModuleIds.size
|
|
278
|
+
});
|
|
279
|
+
}
|
|
280
|
+
|
|
281
|
+
//#endregion
|
|
282
|
+
exports.ExtensionPoint = ExtensionPoint;
|
|
283
|
+
exports.ModuleManifestSchema = require_ui.ModuleManifestSchema;
|
|
11
284
|
exports.getApiModuleRoutes = require_ui.getApiModuleRoutes;
|
|
12
285
|
exports.getExtensions = require_ui.getExtensions;
|
|
13
286
|
exports.getKryoModuleNavigationGrouped = require_ui.getKryoModuleNavigationGrouped;
|
|
14
287
|
exports.getKryoModuleRoutes = require_ui.getKryoModuleRoutes;
|
|
15
288
|
exports.getKryoPathPrefix = require_ui.getKryoPathPrefix;
|
|
16
|
-
exports.getModuleConfig =
|
|
17
|
-
exports.getModuleInstance =
|
|
289
|
+
exports.getModuleConfig = require_ui.getModuleConfig;
|
|
290
|
+
exports.getModuleInstance = require_ui.getModuleInstance;
|
|
18
291
|
exports.getModuleNavigation = require_ui.getModuleNavigation;
|
|
19
292
|
exports.getModuleNavigationGrouped = require_ui.getModuleNavigationGrouped;
|
|
20
|
-
exports.getModuleStatus =
|
|
293
|
+
exports.getModuleStatus = require_ui.getModuleStatus;
|
|
21
294
|
exports.getModuleWidgets = require_ui.getModuleWidgets;
|
|
22
|
-
exports.getModules =
|
|
295
|
+
exports.getModules = require_ui.getModules;
|
|
23
296
|
exports.getPrivateModuleRoutes = require_ui.getPrivateModuleRoutes;
|
|
24
297
|
exports.getPublicModuleRoutes = require_ui.getPublicModuleRoutes;
|
|
25
298
|
exports.hasExtension = require_ui.hasExtension;
|
|
26
|
-
exports.initModules =
|
|
27
|
-
exports.initOperationalModules =
|
|
28
|
-
exports.isModuleEnabled =
|
|
29
|
-
exports.pushModuleSchema =
|
|
30
|
-
exports.registerModules =
|
|
31
|
-
exports.toggleModuleState =
|
|
32
|
-
exports.updateModuleConfig =
|
|
299
|
+
exports.initModules = initModules;
|
|
300
|
+
exports.initOperationalModules = initOperationalModules;
|
|
301
|
+
exports.isModuleEnabled = require_ui.isModuleEnabled;
|
|
302
|
+
exports.pushModuleSchema = pushModuleSchema;
|
|
303
|
+
exports.registerModules = require_ui.registerModules;
|
|
304
|
+
exports.toggleModuleState = toggleModuleState;
|
|
305
|
+
exports.updateModuleConfig = require_ui.updateModuleConfig;
|
package/dist/server.d.cts
CHANGED
|
@@ -1,7 +1,59 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import
|
|
3
|
-
import
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
1
|
+
import { C as PrivateRouteDefinition, D as SidebarMenuType, E as SidebarMenuItemType, O as SystemEvent, S as ModuleWidget, T as SidebarGroupType, _ as ModuleNavElement, a as getKryoPathPrefix, b as ModulePageProps, c as getModuleWidgets, d as hasExtension, f as ApiRouteDefinition, g as ModuleManifestSchema, h as ModuleManifest, i as getKryoModuleRoutes, l as getPrivateModuleRoutes, m as ModuleExtension, n as getExtensions, o as getModuleNavigation, p as IModule, r as getKryoModuleNavigationGrouped, s as getModuleNavigationGrouped, t as getApiModuleRoutes, u as getPublicModuleRoutes, v as ModuleNavigation, w as PublicRouteDefinition, x as ModuleRouteDefinition, y as ModuleNavigationGroupMap } from "./ui-CWGtK5lA.cjs";
|
|
2
|
+
import * as react_jsx_runtime0 from "react/jsx-runtime";
|
|
3
|
+
import * as React from "react";
|
|
4
|
+
|
|
5
|
+
//#region src/client/extension-point.d.ts
|
|
6
|
+
interface ExtensionPointProps {
|
|
7
|
+
module: string;
|
|
8
|
+
point: string;
|
|
9
|
+
className?: string;
|
|
10
|
+
props?: any;
|
|
11
|
+
fallback?: React.ReactNode;
|
|
12
|
+
}
|
|
13
|
+
declare function ExtensionPoint({
|
|
14
|
+
module,
|
|
15
|
+
point,
|
|
16
|
+
className,
|
|
17
|
+
props,
|
|
18
|
+
fallback
|
|
19
|
+
}: ExtensionPointProps): Promise<string | number | bigint | boolean | Iterable<React.ReactNode> | react_jsx_runtime0.JSX.Element | null | undefined>;
|
|
20
|
+
//#endregion
|
|
21
|
+
//#region src/server/lifecycle.d.ts
|
|
22
|
+
declare function pushModuleSchema(moduleId: string): Promise<void>;
|
|
23
|
+
declare function toggleModuleState(moduleId: string, isEnabled: boolean): Promise<{
|
|
24
|
+
success: boolean;
|
|
25
|
+
}>;
|
|
26
|
+
declare function initOperationalModules(): Promise<void>;
|
|
27
|
+
//#endregion
|
|
28
|
+
//#region src/server/manage.d.ts
|
|
29
|
+
declare function registerModules(modules: IModule[]): Promise<void>;
|
|
30
|
+
declare function getModules(): Promise<{
|
|
31
|
+
enabled: boolean;
|
|
32
|
+
installed: boolean;
|
|
33
|
+
lastStep: string | null | undefined;
|
|
34
|
+
hasDocs: boolean;
|
|
35
|
+
id: string;
|
|
36
|
+
name: string;
|
|
37
|
+
version: string;
|
|
38
|
+
dependencies: string[];
|
|
39
|
+
extends: string[];
|
|
40
|
+
system: boolean;
|
|
41
|
+
description?: string | undefined;
|
|
42
|
+
npmDependencies?: string[] | undefined;
|
|
43
|
+
npmDevDependencies?: string[] | undefined;
|
|
44
|
+
}[]>;
|
|
45
|
+
declare function getModuleStatus(moduleId: string): Promise<{
|
|
46
|
+
enabled: boolean;
|
|
47
|
+
installed: boolean;
|
|
48
|
+
lastStep: string | null;
|
|
49
|
+
}>;
|
|
50
|
+
declare function isModuleEnabled(moduleId: string): Promise<boolean>;
|
|
51
|
+
declare function getModuleInstance(moduleId: string): Promise<IModule | null>;
|
|
52
|
+
declare function getModuleConfig<T>(moduleId: string): Promise<T | null>;
|
|
53
|
+
declare function updateModuleConfig(moduleId: string, config: any): Promise<void>;
|
|
54
|
+
//#endregion
|
|
55
|
+
//#region src/server/registry.d.ts
|
|
56
|
+
declare function initModules(force?: boolean): Promise<void>;
|
|
57
|
+
//#endregion
|
|
58
|
+
export { ApiRouteDefinition, ExtensionPoint, IModule, ModuleExtension, ModuleManifest, ModuleManifestSchema, ModuleNavElement, ModuleNavigation, ModuleNavigationGroupMap, ModulePageProps, ModuleRouteDefinition, ModuleWidget, PrivateRouteDefinition, PublicRouteDefinition, SidebarGroupType, SidebarMenuItemType, SidebarMenuType, SystemEvent, getApiModuleRoutes, getExtensions, getKryoModuleNavigationGrouped, getKryoModuleRoutes, getKryoPathPrefix, getModuleConfig, getModuleInstance, getModuleNavigation, getModuleNavigationGrouped, getModuleStatus, getModuleWidgets, getModules, getPrivateModuleRoutes, getPublicModuleRoutes, hasExtension, initModules, initOperationalModules, isModuleEnabled, pushModuleSchema, registerModules, toggleModuleState, updateModuleConfig };
|
|
59
|
+
//# sourceMappingURL=server.d.cts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"server.d.cts","names":[],"sources":["../src/client/extension-point.tsx","../src/server/lifecycle.ts","../src/server/manage.ts","../src/server/registry.ts"],"mappings":";;;;;UAGU,mBAAA;EACR,MAAA;EACA,KAAA;EACA,SAAA;EACA,KAAA;EACA,QAAA,GAAW,KAAA,CAAM,SAAA;AAAA;AAAA,iBAGG,cAAA,CAAA;EACpB,MAAA;EACA,KAAA;EACA,SAAA;EACA,KAAA;EACA;AAAA,GACC,mBAAA,GAAmB,OAAA,sCAAA,QAAA,CAAA,KAAA,CAAA,SAAA,IAAA,kBAAA,CAAA,GAAA,CAAA,OAAA;;;iBC2FA,gBAAA,CAAiB,QAAA,WAAgB,OAAA;AAAA,iBAwLjC,iBAAA,CAAkB,QAAA,UAAkB,SAAA,YAAkB,OAAA;;;iBAWtD,sBAAA,CAAA,GAAsB,OAAA;;;iBChStB,eAAA,CAAgB,OAAA,EAAS,OAAA,KAAS,OAAA;AAAA,iBASlC,UAAA,CAAA,GAAU,OAAA;;;;;;;;;;;;;;;iBAmDV,eAAA,CAAgB,QAAA,WAAgB,OAAA;;;;;iBAiBhC,eAAA,CAAgB,QAAA,WAAmB,OAAA;AAAA,iBAYnC,iBAAA,CACpB,QAAA,WACC,OAAA,CAAQ,OAAA;AAAA,iBA6CW,eAAA,GAAA,CAAmB,QAAA,WAAmB,OAAA,CAAQ,CAAA;AAAA,iBAa9C,kBAAA,CAAmB,QAAA,UAAkB,MAAA,QAAW,OAAA;;;iBCzJhD,WAAA,CAAY,KAAA,aAAa,OAAA"}
|
package/dist/server.d.mts
CHANGED
|
@@ -1,7 +1,59 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import
|
|
3
|
-
import
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
1
|
+
import { C as PrivateRouteDefinition, D as SidebarMenuType, E as SidebarMenuItemType, O as SystemEvent, S as ModuleWidget, T as SidebarGroupType, _ as ModuleNavElement, a as getKryoPathPrefix, b as ModulePageProps, c as getModuleWidgets, d as hasExtension, f as ApiRouteDefinition, g as ModuleManifestSchema, h as ModuleManifest, i as getKryoModuleRoutes, l as getPrivateModuleRoutes, m as ModuleExtension, n as getExtensions, o as getModuleNavigation, p as IModule, r as getKryoModuleNavigationGrouped, s as getModuleNavigationGrouped, t as getApiModuleRoutes, u as getPublicModuleRoutes, v as ModuleNavigation, w as PublicRouteDefinition, x as ModuleRouteDefinition, y as ModuleNavigationGroupMap } from "./ui-aeAUERbe.mjs";
|
|
2
|
+
import * as React from "react";
|
|
3
|
+
import * as react_jsx_runtime0 from "react/jsx-runtime";
|
|
4
|
+
|
|
5
|
+
//#region src/client/extension-point.d.ts
|
|
6
|
+
interface ExtensionPointProps {
|
|
7
|
+
module: string;
|
|
8
|
+
point: string;
|
|
9
|
+
className?: string;
|
|
10
|
+
props?: any;
|
|
11
|
+
fallback?: React.ReactNode;
|
|
12
|
+
}
|
|
13
|
+
declare function ExtensionPoint({
|
|
14
|
+
module,
|
|
15
|
+
point,
|
|
16
|
+
className,
|
|
17
|
+
props,
|
|
18
|
+
fallback
|
|
19
|
+
}: ExtensionPointProps): Promise<string | number | bigint | boolean | Iterable<React.ReactNode> | react_jsx_runtime0.JSX.Element | null | undefined>;
|
|
20
|
+
//#endregion
|
|
21
|
+
//#region src/server/lifecycle.d.ts
|
|
22
|
+
declare function pushModuleSchema(moduleId: string): Promise<void>;
|
|
23
|
+
declare function toggleModuleState(moduleId: string, isEnabled: boolean): Promise<{
|
|
24
|
+
success: boolean;
|
|
25
|
+
}>;
|
|
26
|
+
declare function initOperationalModules(): Promise<void>;
|
|
27
|
+
//#endregion
|
|
28
|
+
//#region src/server/manage.d.ts
|
|
29
|
+
declare function registerModules(modules: IModule[]): Promise<void>;
|
|
30
|
+
declare function getModules(): Promise<{
|
|
31
|
+
enabled: boolean;
|
|
32
|
+
installed: boolean;
|
|
33
|
+
lastStep: string | null | undefined;
|
|
34
|
+
hasDocs: boolean;
|
|
35
|
+
id: string;
|
|
36
|
+
name: string;
|
|
37
|
+
version: string;
|
|
38
|
+
dependencies: string[];
|
|
39
|
+
extends: string[];
|
|
40
|
+
system: boolean;
|
|
41
|
+
description?: string | undefined;
|
|
42
|
+
npmDependencies?: string[] | undefined;
|
|
43
|
+
npmDevDependencies?: string[] | undefined;
|
|
44
|
+
}[]>;
|
|
45
|
+
declare function getModuleStatus(moduleId: string): Promise<{
|
|
46
|
+
enabled: boolean;
|
|
47
|
+
installed: boolean;
|
|
48
|
+
lastStep: string | null;
|
|
49
|
+
}>;
|
|
50
|
+
declare function isModuleEnabled(moduleId: string): Promise<boolean>;
|
|
51
|
+
declare function getModuleInstance(moduleId: string): Promise<IModule | null>;
|
|
52
|
+
declare function getModuleConfig<T>(moduleId: string): Promise<T | null>;
|
|
53
|
+
declare function updateModuleConfig(moduleId: string, config: any): Promise<void>;
|
|
54
|
+
//#endregion
|
|
55
|
+
//#region src/server/registry.d.ts
|
|
56
|
+
declare function initModules(force?: boolean): Promise<void>;
|
|
57
|
+
//#endregion
|
|
58
|
+
export { ApiRouteDefinition, ExtensionPoint, IModule, ModuleExtension, ModuleManifest, ModuleManifestSchema, ModuleNavElement, ModuleNavigation, ModuleNavigationGroupMap, ModulePageProps, ModuleRouteDefinition, ModuleWidget, PrivateRouteDefinition, PublicRouteDefinition, SidebarGroupType, SidebarMenuItemType, SidebarMenuType, SystemEvent, getApiModuleRoutes, getExtensions, getKryoModuleNavigationGrouped, getKryoModuleRoutes, getKryoPathPrefix, getModuleConfig, getModuleInstance, getModuleNavigation, getModuleNavigationGrouped, getModuleStatus, getModuleWidgets, getModules, getPrivateModuleRoutes, getPublicModuleRoutes, hasExtension, initModules, initOperationalModules, isModuleEnabled, pushModuleSchema, registerModules, toggleModuleState, updateModuleConfig };
|
|
59
|
+
//# sourceMappingURL=server.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"server.d.mts","names":[],"sources":["../src/client/extension-point.tsx","../src/server/lifecycle.ts","../src/server/manage.ts","../src/server/registry.ts"],"mappings":";;;;;UAGU,mBAAA;EACR,MAAA;EACA,KAAA;EACA,SAAA;EACA,KAAA;EACA,QAAA,GAAW,KAAA,CAAM,SAAA;AAAA;AAAA,iBAGG,cAAA,CAAA;EACpB,MAAA;EACA,KAAA;EACA,SAAA;EACA,KAAA;EACA;AAAA,GACC,mBAAA,GAAmB,OAAA,sCAAA,QAAA,CAAA,KAAA,CAAA,SAAA,IAAA,kBAAA,CAAA,GAAA,CAAA,OAAA;;;iBC2FA,gBAAA,CAAiB,QAAA,WAAgB,OAAA;AAAA,iBAwLjC,iBAAA,CAAkB,QAAA,UAAkB,SAAA,YAAkB,OAAA;;;iBAWtD,sBAAA,CAAA,GAAsB,OAAA;;;iBChStB,eAAA,CAAgB,OAAA,EAAS,OAAA,KAAS,OAAA;AAAA,iBASlC,UAAA,CAAA,GAAU,OAAA;;;;;;;;;;;;;;;iBAmDV,eAAA,CAAgB,QAAA,WAAgB,OAAA;;;;;iBAiBhC,eAAA,CAAgB,QAAA,WAAmB,OAAA;AAAA,iBAYnC,iBAAA,CACpB,QAAA,WACC,OAAA,CAAQ,OAAA;AAAA,iBA6CW,eAAA,GAAA,CAAmB,QAAA,WAAmB,OAAA,CAAQ,CAAA;AAAA,iBAa9C,kBAAA,CAAmB,QAAA,UAAkB,MAAA,QAAW,OAAA;;;iBCzJhD,WAAA,CAAY,KAAA,aAAa,OAAA"}
|