@arch-cadre/modules 0.0.54 → 0.0.55
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/_virtual/_rolldown/runtime.cjs +1 -0
- package/dist/client/extension-point-client.cjs +1 -35
- package/dist/client/extension-point-client.d.cts +20 -0
- package/dist/client/extension-point-client.d.cts.map +1 -0
- package/dist/client/extension-point-client.d.mts +20 -0
- package/dist/client/extension-point-client.d.mts.map +1 -0
- package/dist/client/extension-point-client.mjs +2 -22
- package/dist/client/extension-point-client.mjs.map +1 -0
- package/dist/client/extension-point.cjs +1 -26
- package/dist/client/extension-point.d.cts +21 -0
- package/dist/client/extension-point.d.cts.map +1 -0
- package/dist/client/extension-point.d.mts +21 -0
- package/dist/client/extension-point.d.mts.map +1 -0
- package/dist/client/extension-point.mjs +2 -15
- package/dist/client/extension-point.mjs.map +1 -0
- package/dist/client/widget-area.cjs +1 -30
- package/dist/client/widget-area.d.cts +19 -0
- package/dist/client/widget-area.d.cts.map +1 -0
- package/dist/client/widget-area.d.mts +19 -0
- package/dist/client/widget-area.d.mts.map +1 -0
- package/dist/client/widget-area.mjs +2 -17
- package/dist/client/widget-area.mjs.map +1 -0
- package/dist/index.cjs +1 -43
- package/dist/index.d.cts +5 -0
- package/dist/index.d.mts +5 -0
- package/dist/index.mjs +1 -4
- package/dist/server/lifecycle.cjs +1 -217
- package/dist/server/lifecycle.d.cts +9 -0
- package/dist/server/lifecycle.d.cts.map +1 -0
- package/dist/server/lifecycle.d.mts +9 -0
- package/dist/server/lifecycle.d.mts.map +1 -0
- package/dist/server/lifecycle.mjs +2 -238
- package/dist/server/lifecycle.mjs.map +1 -0
- package/dist/server/manage.cjs +1 -140
- package/dist/server/manage.d.cts +31 -0
- package/dist/server/manage.d.cts.map +1 -0
- package/dist/server/manage.d.mts +31 -0
- package/dist/server/manage.d.mts.map +1 -0
- package/dist/server/manage.mjs +2 -126
- package/dist/server/manage.mjs.map +1 -0
- package/dist/server/registry.cjs +1 -94
- package/dist/server/registry.d.cts +5 -0
- package/dist/server/registry.d.cts.map +1 -0
- package/dist/server/registry.d.mts +5 -0
- package/dist/server/registry.d.mts.map +1 -0
- package/dist/server/registry.mjs +2 -99
- package/dist/server/registry.mjs.map +1 -0
- package/dist/server/ui.cjs +1 -222
- package/dist/server/ui.d.cts +17 -0
- package/dist/server/ui.d.cts.map +1 -0
- package/dist/server/ui.d.mts +17 -0
- package/dist/server/ui.d.mts.map +1 -0
- package/dist/server/ui.mjs +2 -218
- package/dist/server/ui.mjs.map +1 -0
- package/dist/server.cjs +1 -60
- package/dist/server.d.cts +6 -0
- package/dist/server.d.mts +6 -0
- package/dist/server.mjs +1 -5
- package/dist/types.cjs +1 -20
- package/dist/types.d.cts +117 -0
- package/dist/types.d.cts.map +1 -0
- package/dist/types.d.mts +117 -0
- package/dist/types.d.mts.map +1 -0
- package/dist/types.mjs +2 -14
- package/dist/types.mjs.map +1 -0
- package/package.json +6 -6
- package/dist/client/extension-point-client.d.ts +0 -10
- package/dist/client/extension-point.d.ts +0 -9
- package/dist/client/index.cjs +0 -38
- package/dist/client/index.d.ts +0 -3
- package/dist/client/index.mjs +0 -3
- package/dist/client/widget-area.d.ts +0 -9
- package/dist/index.d.ts +0 -4
- package/dist/server/lifecycle.d.ts +0 -5
- package/dist/server/manage.d.ts +0 -12
- package/dist/server/registry.d.ts +0 -1
- package/dist/server/ui.d.ts +0 -12
- package/dist/server.d.ts +0 -5
- package/dist/types.d.ts +0 -113
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var e=Object.create,t=Object.defineProperty,n=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,i=Object.getPrototypeOf,a=Object.prototype.hasOwnProperty,o=(e,i,o,s)=>{if(i&&typeof i==`object`||typeof i==`function`)for(var c=r(i),l=0,u=c.length,d;l<u;l++)d=c[l],!a.call(e,d)&&d!==o&&t(e,d,{get:(e=>i[e]).bind(null,d),enumerable:!(s=n(i,d))||s.enumerable});return e},s=(n,r,a)=>(a=n==null?{}:e(i(n)),o(r||!n||!n.__esModule?t(a,`default`,{value:n,enumerable:!0}):a,n));exports.__toESM=s;
|
|
@@ -1,35 +1 @@
|
|
|
1
|
-
"use
|
|
2
|
-
"use client";
|
|
3
|
-
|
|
4
|
-
Object.defineProperty(exports, "__esModule", {
|
|
5
|
-
value: true
|
|
6
|
-
});
|
|
7
|
-
exports.ExtensionPointClient = ExtensionPointClient;
|
|
8
|
-
var _react = _interopRequireWildcard(require("react"));
|
|
9
|
-
var React = _react;
|
|
10
|
-
var _ui = require("../server/ui.cjs");
|
|
11
|
-
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
12
|
-
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
13
|
-
function ExtensionPointClient({
|
|
14
|
-
module,
|
|
15
|
-
point,
|
|
16
|
-
className,
|
|
17
|
-
props,
|
|
18
|
-
fallback
|
|
19
|
-
}) {
|
|
20
|
-
const [extensions, setExtensions] = (0, _react.useState)([]);
|
|
21
|
-
(0, _react.useEffect)(() => {
|
|
22
|
-
(0, _ui.getExtensions)(module, point).then(setExtensions);
|
|
23
|
-
}, [module, point]);
|
|
24
|
-
if (extensions.length === 0) return fallback || null;
|
|
25
|
-
return /* @__PURE__ */React.createElement("div", {
|
|
26
|
-
className
|
|
27
|
-
}, extensions.map(ext => {
|
|
28
|
-
const Component = ext.component;
|
|
29
|
-
if (!Component) return null;
|
|
30
|
-
return /* @__PURE__ */React.createElement(Component, {
|
|
31
|
-
key: ext.id,
|
|
32
|
-
...props
|
|
33
|
-
});
|
|
34
|
-
}));
|
|
35
|
-
}
|
|
1
|
+
"use client";const e=require(`../_virtual/_rolldown/runtime.cjs`),t=require(`../server/ui.cjs`);let n=require(`react/jsx-runtime`),r=require(`react`);r=e.__toESM(r);function i({module:e,point:i,className:a,props:o,fallback:s}){let[c,l]=(0,r.useState)([]);return(0,r.useEffect)(()=>{t.getExtensions(e,i).then(l)},[e,i]),c.length===0?s||null:(0,n.jsx)(`div`,{className:a,children:c.map(e=>{let t=e.component;return t?(0,n.jsx)(t,{...o},e.id):null})})}exports.ExtensionPointClient=i;
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
|
|
3
|
+
//#region src/client/extension-point-client.d.ts
|
|
4
|
+
interface ExtensionPointProps {
|
|
5
|
+
module: string;
|
|
6
|
+
point: string;
|
|
7
|
+
className?: string;
|
|
8
|
+
props?: any;
|
|
9
|
+
fallback?: React.ReactNode;
|
|
10
|
+
}
|
|
11
|
+
declare function ExtensionPointClient({
|
|
12
|
+
module,
|
|
13
|
+
point,
|
|
14
|
+
className,
|
|
15
|
+
props,
|
|
16
|
+
fallback
|
|
17
|
+
}: ExtensionPointProps): any;
|
|
18
|
+
//#endregion
|
|
19
|
+
export { ExtensionPointClient };
|
|
20
|
+
//# sourceMappingURL=extension-point-client.d.cts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"extension-point-client.d.cts","names":[],"sources":["../../src/client/extension-point-client.tsx"],"mappings":";;;UAOU,mBAAA;EACR,MAAA;EACA,KAAA;EACA,SAAA;EACA,KAAA;EACA,QAAA,GAAW,KAAA,CAAM,SAAA;AAAA;AAAA,iBAGH,oBAAA,CAAA;EACd,MAAA;EACA,KAAA;EACA,SAAA;EACA,KAAA;EACA;AAAA,GACC,mBAAA"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
|
|
3
|
+
//#region src/client/extension-point-client.d.ts
|
|
4
|
+
interface ExtensionPointProps {
|
|
5
|
+
module: string;
|
|
6
|
+
point: string;
|
|
7
|
+
className?: string;
|
|
8
|
+
props?: any;
|
|
9
|
+
fallback?: React.ReactNode;
|
|
10
|
+
}
|
|
11
|
+
declare function ExtensionPointClient({
|
|
12
|
+
module,
|
|
13
|
+
point,
|
|
14
|
+
className,
|
|
15
|
+
props,
|
|
16
|
+
fallback
|
|
17
|
+
}: ExtensionPointProps): any;
|
|
18
|
+
//#endregion
|
|
19
|
+
export { ExtensionPointClient };
|
|
20
|
+
//# sourceMappingURL=extension-point-client.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"extension-point-client.d.mts","names":[],"sources":["../../src/client/extension-point-client.tsx"],"mappings":";;;UAOU,mBAAA;EACR,MAAA;EACA,KAAA;EACA,SAAA;EACA,KAAA;EACA,QAAA,GAAW,KAAA,CAAM,SAAA;AAAA;AAAA,iBAGH,oBAAA,CAAA;EACd,MAAA;EACA,KAAA;EACA,SAAA;EACA,KAAA;EACA;AAAA,GACC,mBAAA"}
|
|
@@ -1,22 +1,2 @@
|
|
|
1
|
-
"use client";
|
|
2
|
-
|
|
3
|
-
import { useEffect, useState } from "react";
|
|
4
|
-
import { getExtensions } from "../server/ui.mjs";
|
|
5
|
-
export function ExtensionPointClient({
|
|
6
|
-
module,
|
|
7
|
-
point,
|
|
8
|
-
className,
|
|
9
|
-
props,
|
|
10
|
-
fallback
|
|
11
|
-
}) {
|
|
12
|
-
const [extensions, setExtensions] = useState([]);
|
|
13
|
-
useEffect(() => {
|
|
14
|
-
getExtensions(module, point).then(setExtensions);
|
|
15
|
-
}, [module, point]);
|
|
16
|
-
if (extensions.length === 0) return fallback || null;
|
|
17
|
-
return /* @__PURE__ */ React.createElement("div", { className }, extensions.map((ext) => {
|
|
18
|
-
const Component = ext.component;
|
|
19
|
-
if (!Component) return null;
|
|
20
|
-
return /* @__PURE__ */ React.createElement(Component, { key: ext.id, ...props });
|
|
21
|
-
}));
|
|
22
|
-
}
|
|
1
|
+
"use client";import{getExtensions as e}from"../server/ui.mjs";import{jsx as t}from"react/jsx-runtime";import{useEffect as n,useState as r}from"react";function i({module:i,point:a,className:o,props:s,fallback:c}){let[l,u]=r([]);return n(()=>{e(i,a).then(u)},[i,a]),l.length===0?c||null:t(`div`,{className:o,children:l.map(e=>{let n=e.component;return n?t(n,{...s},e.id):null})})}export{i as ExtensionPointClient};
|
|
2
|
+
//# sourceMappingURL=extension-point-client.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"extension-point-client.mjs","names":[],"sources":["../../src/client/extension-point-client.tsx"],"sourcesContent":["/** biome-ignore-all lint/suspicious/noExplicitAny: <> */\n\"use client\";\nimport * as React from \"react\";\n\nimport { useEffect, useState } from \"react\";\nimport { getExtensions } from \"../server/ui\";\n\ninterface ExtensionPointProps {\n module: string;\n point: string;\n className?: string;\n props?: any;\n fallback?: React.ReactNode;\n}\n\nexport function ExtensionPointClient({\n module,\n point,\n className,\n props,\n fallback,\n}: ExtensionPointProps) {\n const [extensions, setExtensions] = useState<any[]>([]);\n\n useEffect(() => {\n getExtensions(module, point).then(setExtensions);\n }, [module, point]);\n\n if (extensions.length === 0) return (fallback as any) || null;\n\n return (\n <div className={className}>\n {extensions.map((ext) => {\n const Component = ext.component;\n if (!Component) return null;\n return <Component key={ext.id} {...props} />;\n })}\n </div>\n );\n}\n"],"mappings":"sJAeA,SAAgB,EAAqB,CACnC,SACA,QACA,YACA,QACA,YACsB,CACtB,GAAM,CAAC,EAAY,GAAiB,EAAgB,EAAE,CAAC,CAQvD,OANA,MAAgB,CACd,EAAc,EAAQ,EAAM,CAAC,KAAK,EAAc,EAC/C,CAAC,EAAQ,EAAM,CAAC,CAEf,EAAW,SAAW,EAAW,GAAoB,KAGvD,EAAC,MAAA,CAAe,qBACb,EAAW,IAAK,GAAQ,CACvB,IAAM,EAAY,EAAI,UAEtB,OADK,EACE,EAAC,EAAA,CAAuB,GAAI,EAAA,CAAZ,EAAI,GAAiB,CADrB,MAEvB,EACE"}
|
|
@@ -1,26 +1 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.ExtensionPoint = ExtensionPoint;
|
|
7
|
-
var _ui = require("../server/ui.cjs");
|
|
8
|
-
async function ExtensionPoint({
|
|
9
|
-
module,
|
|
10
|
-
point,
|
|
11
|
-
className,
|
|
12
|
-
props,
|
|
13
|
-
fallback
|
|
14
|
-
}) {
|
|
15
|
-
const extensions = await (0, _ui.getExtensions)(module, point);
|
|
16
|
-
if (extensions.length === 0) return fallback || null;
|
|
17
|
-
return /* @__PURE__ */React.createElement("div", {
|
|
18
|
-
className
|
|
19
|
-
}, extensions.map(ext => {
|
|
20
|
-
const Component = ext.component;
|
|
21
|
-
return /* @__PURE__ */React.createElement(Component, {
|
|
22
|
-
key: ext.id,
|
|
23
|
-
...props
|
|
24
|
-
});
|
|
25
|
-
}));
|
|
26
|
-
}
|
|
1
|
+
require(`../_virtual/_rolldown/runtime.cjs`);const e=require(`../server/ui.cjs`);let t=require(`react/jsx-runtime`);async function n({module:n,point:r,className:i,props:a,fallback:o}){let s=await e.getExtensions(n,r);return s.length===0?o||null:(0,t.jsx)(`div`,{className:i,children:s.map(e=>{let n=e.component;return(0,t.jsx)(n,{...a},e.id)})})}exports.ExtensionPoint=n;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import * as react from "react";
|
|
2
|
+
import * as react_jsx_runtime0 from "react/jsx-runtime";
|
|
3
|
+
|
|
4
|
+
//#region src/client/extension-point.d.ts
|
|
5
|
+
interface ExtensionPointProps {
|
|
6
|
+
module: string;
|
|
7
|
+
point: string;
|
|
8
|
+
className?: string;
|
|
9
|
+
props?: any;
|
|
10
|
+
fallback?: React.ReactNode;
|
|
11
|
+
}
|
|
12
|
+
declare function ExtensionPoint({
|
|
13
|
+
module,
|
|
14
|
+
point,
|
|
15
|
+
className,
|
|
16
|
+
props,
|
|
17
|
+
fallback
|
|
18
|
+
}: ExtensionPointProps): Promise<string | number | bigint | boolean | Iterable<react.ReactNode> | react_jsx_runtime0.JSX.Element | null | undefined>;
|
|
19
|
+
//#endregion
|
|
20
|
+
export { ExtensionPoint };
|
|
21
|
+
//# sourceMappingURL=extension-point.d.cts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"extension-point.d.cts","names":[],"sources":["../../src/client/extension-point.tsx"],"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"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import * as react_jsx_runtime0 from "react/jsx-runtime";
|
|
2
|
+
import * as react from "react";
|
|
3
|
+
|
|
4
|
+
//#region src/client/extension-point.d.ts
|
|
5
|
+
interface ExtensionPointProps {
|
|
6
|
+
module: string;
|
|
7
|
+
point: string;
|
|
8
|
+
className?: string;
|
|
9
|
+
props?: any;
|
|
10
|
+
fallback?: React.ReactNode;
|
|
11
|
+
}
|
|
12
|
+
declare function ExtensionPoint({
|
|
13
|
+
module,
|
|
14
|
+
point,
|
|
15
|
+
className,
|
|
16
|
+
props,
|
|
17
|
+
fallback
|
|
18
|
+
}: ExtensionPointProps): Promise<string | number | bigint | boolean | Iterable<react.ReactNode> | react_jsx_runtime0.JSX.Element | null | undefined>;
|
|
19
|
+
//#endregion
|
|
20
|
+
export { ExtensionPoint };
|
|
21
|
+
//# sourceMappingURL=extension-point.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"extension-point.d.mts","names":[],"sources":["../../src/client/extension-point.tsx"],"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"}
|
|
@@ -1,15 +1,2 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
3
|
-
module,
|
|
4
|
-
point,
|
|
5
|
-
className,
|
|
6
|
-
props,
|
|
7
|
-
fallback
|
|
8
|
-
}) {
|
|
9
|
-
const extensions = await getExtensions(module, point);
|
|
10
|
-
if (extensions.length === 0) return fallback || null;
|
|
11
|
-
return /* @__PURE__ */ React.createElement("div", { className }, extensions.map((ext) => {
|
|
12
|
-
const Component = ext.component;
|
|
13
|
-
return /* @__PURE__ */ React.createElement(Component, { key: ext.id, ...props });
|
|
14
|
-
}));
|
|
15
|
-
}
|
|
1
|
+
import{getExtensions as e}from"../server/ui.mjs";import{jsx as t}from"react/jsx-runtime";async function n({module:n,point:r,className:i,props:a,fallback:o}){let s=await e(n,r);return s.length===0?o||null:t(`div`,{className:i,children:s.map(e=>{let n=e.component;return t(n,{...a},e.id)})})}export{n as ExtensionPoint};
|
|
2
|
+
//# sourceMappingURL=extension-point.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"extension-point.mjs","names":[],"sources":["../../src/client/extension-point.tsx"],"sourcesContent":["// import * as React from \"react\";\nimport { getExtensions } from \"../server/ui\";\n\ninterface ExtensionPointProps {\n module: string;\n point: string;\n className?: string;\n props?: any;\n fallback?: React.ReactNode;\n}\n\nexport async function ExtensionPoint({\n module,\n point,\n className,\n props,\n fallback,\n}: ExtensionPointProps) {\n const extensions = await getExtensions(module, point);\n\n if (extensions.length === 0) return fallback || null;\n\n return (\n <div className={className}>\n {extensions.map((ext) => {\n const Component = ext.component;\n return <Component key={ext.id} {...props} />;\n })}\n </div>\n );\n}\n"],"mappings":"yFAWA,eAAsB,EAAe,CACnC,SACA,QACA,YACA,QACA,YACsB,CACtB,IAAM,EAAa,MAAM,EAAc,EAAQ,EAAM,CAIrD,OAFI,EAAW,SAAW,EAAU,GAAY,KAG9C,EAAC,MAAA,CAAe,qBACb,EAAW,IAAK,GAAQ,CACvB,IAAM,EAAY,EAAI,UACtB,OAAO,EAAC,EAAA,CAAuB,GAAI,EAAA,CAAZ,EAAI,GAAiB,EAC5C,EACE"}
|
|
@@ -1,30 +1 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.WidgetArea = WidgetArea;
|
|
7
|
-
var React = _interopRequireWildcard(require("react"));
|
|
8
|
-
var _ui = require("../server/ui.cjs");
|
|
9
|
-
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
10
|
-
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
11
|
-
async function WidgetArea({
|
|
12
|
-
area,
|
|
13
|
-
className,
|
|
14
|
-
fallback,
|
|
15
|
-
props
|
|
16
|
-
}) {
|
|
17
|
-
const widgets = await (0, _ui.getModuleWidgets)(area);
|
|
18
|
-
if (widgets.length === 0) {
|
|
19
|
-
return fallback || null;
|
|
20
|
-
}
|
|
21
|
-
return /* @__PURE__ */React.createElement("div", {
|
|
22
|
-
className
|
|
23
|
-
}, widgets.map(widget => {
|
|
24
|
-
const Component = widget.component;
|
|
25
|
-
return /* @__PURE__ */React.createElement(Component, {
|
|
26
|
-
key: widget.id,
|
|
27
|
-
...props
|
|
28
|
-
});
|
|
29
|
-
}));
|
|
30
|
-
}
|
|
1
|
+
const e=require(`../_virtual/_rolldown/runtime.cjs`),t=require(`../server/ui.cjs`);let n=require(`react/jsx-runtime`),r=require(`react`);r=e.__toESM(r);async function i({area:e,className:r,fallback:i,props:a}){let o=await t.getModuleWidgets(e);return o.length===0?i||null:(0,n.jsx)(`div`,{className:r,children:o.map(e=>{let t=e.component;return(0,n.jsx)(t,{...a},e.id)})})}exports.WidgetArea=i;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import * as react_jsx_runtime0 from "react/jsx-runtime";
|
|
3
|
+
|
|
4
|
+
//#region src/client/widget-area.d.ts
|
|
5
|
+
interface WidgetAreaProps {
|
|
6
|
+
area: string;
|
|
7
|
+
className?: string;
|
|
8
|
+
fallback?: React.ReactNode;
|
|
9
|
+
props?: any;
|
|
10
|
+
}
|
|
11
|
+
declare function WidgetArea({
|
|
12
|
+
area,
|
|
13
|
+
className,
|
|
14
|
+
fallback,
|
|
15
|
+
props
|
|
16
|
+
}: WidgetAreaProps): Promise<string | number | bigint | boolean | Iterable<React.ReactNode> | react_jsx_runtime0.JSX.Element | null | undefined>;
|
|
17
|
+
//#endregion
|
|
18
|
+
export { WidgetArea };
|
|
19
|
+
//# sourceMappingURL=widget-area.d.cts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"widget-area.d.cts","names":[],"sources":["../../src/client/widget-area.tsx"],"mappings":";;;;UAIU,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"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import * as react_jsx_runtime0 from "react/jsx-runtime";
|
|
2
|
+
import * as React from "react";
|
|
3
|
+
|
|
4
|
+
//#region src/client/widget-area.d.ts
|
|
5
|
+
interface WidgetAreaProps {
|
|
6
|
+
area: string;
|
|
7
|
+
className?: string;
|
|
8
|
+
fallback?: React.ReactNode;
|
|
9
|
+
props?: any;
|
|
10
|
+
}
|
|
11
|
+
declare function WidgetArea({
|
|
12
|
+
area,
|
|
13
|
+
className,
|
|
14
|
+
fallback,
|
|
15
|
+
props
|
|
16
|
+
}: WidgetAreaProps): Promise<string | number | bigint | boolean | Iterable<React.ReactNode> | react_jsx_runtime0.JSX.Element | null | undefined>;
|
|
17
|
+
//#endregion
|
|
18
|
+
export { WidgetArea };
|
|
19
|
+
//# sourceMappingURL=widget-area.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"widget-area.d.mts","names":[],"sources":["../../src/client/widget-area.tsx"],"mappings":";;;;UAIU,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"}
|
|
@@ -1,17 +1,2 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
3
|
-
export async function WidgetArea({
|
|
4
|
-
area,
|
|
5
|
-
className,
|
|
6
|
-
fallback,
|
|
7
|
-
props
|
|
8
|
-
}) {
|
|
9
|
-
const widgets = await getModuleWidgets(area);
|
|
10
|
-
if (widgets.length === 0) {
|
|
11
|
-
return fallback || null;
|
|
12
|
-
}
|
|
13
|
-
return /* @__PURE__ */ React.createElement("div", { className }, widgets.map((widget) => {
|
|
14
|
-
const Component = widget.component;
|
|
15
|
-
return /* @__PURE__ */ React.createElement(Component, { key: widget.id, ...props });
|
|
16
|
-
}));
|
|
17
|
-
}
|
|
1
|
+
import{getModuleWidgets as e}from"../server/ui.mjs";import{jsx as t}from"react/jsx-runtime";import"react";async function n({area:n,className:r,fallback:i,props:a}){let o=await e(n);return o.length===0?i||null:t(`div`,{className:r,children:o.map(e=>{let n=e.component;return t(n,{...a},e.id)})})}export{n as WidgetArea};
|
|
2
|
+
//# sourceMappingURL=widget-area.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"widget-area.mjs","names":[],"sources":["../../src/client/widget-area.tsx"],"sourcesContent":["\nimport * 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":"0GAYA,eAAsB,EAAW,CAC/B,OACA,YACA,WACA,SACkB,CAClB,IAAM,EAAU,MAAM,EAAiB,EAAK,CAM5C,OAJI,EAAQ,SAAW,EACd,GAAY,KAInB,EAAC,MAAA,CAAe,qBACb,EAAQ,IAAK,GAAW,CACvB,IAAM,EAAY,EAAO,UACzB,OAAO,EAAC,EAAA,CAA0B,GAAI,EAAA,CAAf,EAAO,GAAiB,EAC/C,EACE"}
|
package/dist/index.cjs
CHANGED
|
@@ -1,43 +1 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
var _exportNames = {
|
|
7
|
-
ExtensionPoint: true,
|
|
8
|
-
ExtensionPointClient: true,
|
|
9
|
-
WidgetArea: true
|
|
10
|
-
};
|
|
11
|
-
Object.defineProperty(exports, "ExtensionPoint", {
|
|
12
|
-
enumerable: true,
|
|
13
|
-
get: function () {
|
|
14
|
-
return _extensionPoint.ExtensionPoint;
|
|
15
|
-
}
|
|
16
|
-
});
|
|
17
|
-
Object.defineProperty(exports, "ExtensionPointClient", {
|
|
18
|
-
enumerable: true,
|
|
19
|
-
get: function () {
|
|
20
|
-
return _extensionPointClient.ExtensionPointClient;
|
|
21
|
-
}
|
|
22
|
-
});
|
|
23
|
-
Object.defineProperty(exports, "WidgetArea", {
|
|
24
|
-
enumerable: true,
|
|
25
|
-
get: function () {
|
|
26
|
-
return _widgetArea.WidgetArea;
|
|
27
|
-
}
|
|
28
|
-
});
|
|
29
|
-
var _extensionPoint = require("./client/extension-point.cjs");
|
|
30
|
-
var _extensionPointClient = require("./client/extension-point-client.cjs");
|
|
31
|
-
var _widgetArea = require("./client/widget-area.cjs");
|
|
32
|
-
var _types = require("./types.cjs");
|
|
33
|
-
Object.keys(_types).forEach(function (key) {
|
|
34
|
-
if (key === "default" || key === "__esModule") return;
|
|
35
|
-
if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
|
|
36
|
-
if (key in exports && exports[key] === _types[key]) return;
|
|
37
|
-
Object.defineProperty(exports, key, {
|
|
38
|
-
enumerable: true,
|
|
39
|
-
get: function () {
|
|
40
|
-
return _types[key];
|
|
41
|
-
}
|
|
42
|
-
});
|
|
43
|
-
});
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require(`./types.cjs`),t=require(`./client/extension-point.cjs`),n=require(`./client/extension-point-client.cjs`),r=require(`./client/widget-area.cjs`);exports.ExtensionPoint=t.ExtensionPoint,exports.ExtensionPointClient=n.ExtensionPointClient,exports.ModuleManifestSchema=e.ModuleManifestSchema,exports.WidgetArea=r.WidgetArea;
|
package/dist/index.d.cts
ADDED
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { ExtensionPoint } from "./client/extension-point.cjs";
|
|
2
|
+
import { ExtensionPointClient } from "./client/extension-point-client.cjs";
|
|
3
|
+
import { WidgetArea } from "./client/widget-area.cjs";
|
|
4
|
+
import { ApiRouteDefinition, IModule, ModuleExtension, ModuleManifest, ModuleManifestSchema, ModuleNavElement, ModuleNavigation, ModuleNavigationGroupMap, ModulePageProps, ModuleRouteDefinition, ModuleWidget, PrivateRouteDefinition, PublicRouteDefinition, SidebarGroupType, SidebarMenuItemType, SidebarMenuType, SystemEvent } from "./types.cjs";
|
|
5
|
+
export { ApiRouteDefinition, ExtensionPoint, ExtensionPointClient, IModule, ModuleExtension, ModuleManifest, ModuleManifestSchema, ModuleNavElement, ModuleNavigation, ModuleNavigationGroupMap, ModulePageProps, ModuleRouteDefinition, ModuleWidget, PrivateRouteDefinition, PublicRouteDefinition, SidebarGroupType, SidebarMenuItemType, SidebarMenuType, SystemEvent, WidgetArea };
|
package/dist/index.d.mts
ADDED
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { ExtensionPoint } from "./client/extension-point.mjs";
|
|
2
|
+
import { ExtensionPointClient } from "./client/extension-point-client.mjs";
|
|
3
|
+
import { WidgetArea } from "./client/widget-area.mjs";
|
|
4
|
+
import { ApiRouteDefinition, IModule, ModuleExtension, ModuleManifest, ModuleManifestSchema, ModuleNavElement, ModuleNavigation, ModuleNavigationGroupMap, ModulePageProps, ModuleRouteDefinition, ModuleWidget, PrivateRouteDefinition, PublicRouteDefinition, SidebarGroupType, SidebarMenuItemType, SidebarMenuType, SystemEvent } from "./types.mjs";
|
|
5
|
+
export { ApiRouteDefinition, ExtensionPoint, ExtensionPointClient, IModule, ModuleExtension, ModuleManifest, ModuleManifestSchema, ModuleNavElement, ModuleNavigation, ModuleNavigationGroupMap, ModulePageProps, ModuleRouteDefinition, ModuleWidget, PrivateRouteDefinition, PublicRouteDefinition, SidebarGroupType, SidebarMenuItemType, SidebarMenuType, SystemEvent, WidgetArea };
|
package/dist/index.mjs
CHANGED
|
@@ -1,4 +1 @@
|
|
|
1
|
-
|
|
2
|
-
export { ExtensionPointClient } from "./client/extension-point-client.mjs";
|
|
3
|
-
export { WidgetArea } from "./client/widget-area.mjs";
|
|
4
|
-
export * from "./types.mjs";
|
|
1
|
+
import{ModuleManifestSchema as e}from"./types.mjs";import{ExtensionPoint as t}from"./client/extension-point.mjs";import{ExtensionPointClient as n}from"./client/extension-point-client.mjs";import{WidgetArea as r}from"./client/widget-area.mjs";export{t as ExtensionPoint,n as ExtensionPointClient,e as ModuleManifestSchema,r as WidgetArea};
|
|
@@ -1,217 +1 @@
|
|
|
1
|
-
"use
|
|
2
|
-
"use server";
|
|
3
|
-
|
|
4
|
-
Object.defineProperty(exports, "__esModule", {
|
|
5
|
-
value: true
|
|
6
|
-
});
|
|
7
|
-
exports.initOperationalModules = initOperationalModules;
|
|
8
|
-
exports.pushModuleSchema = pushModuleSchema;
|
|
9
|
-
exports.toggleModuleState = toggleModuleState;
|
|
10
|
-
var _nodeChild_process = require("node:child_process");
|
|
11
|
-
var _promises = _interopRequireDefault(require("node:fs/promises"));
|
|
12
|
-
var _nodePath = _interopRequireDefault(require("node:path"));
|
|
13
|
-
var _nodeUtil = require("node:util");
|
|
14
|
-
var _core = require("@arch-cadre/core");
|
|
15
|
-
var _server = require("@arch-cadre/core/server");
|
|
16
|
-
var _drizzleOrm = require("drizzle-orm");
|
|
17
|
-
var _manage = require("./manage.cjs");
|
|
18
|
-
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
19
|
-
const sleep = ms => new Promise(resolve => setTimeout(resolve, ms));
|
|
20
|
-
async function updateStep(moduleId, step) {
|
|
21
|
-
console.log(`[Kernel] "${moduleId}" step: ${step}`);
|
|
22
|
-
await _server.db.update(_core.systemModulesTable).set({
|
|
23
|
-
lastStep: step
|
|
24
|
-
}).where((0, _drizzleOrm.eq)(_core.systemModulesTable.id, moduleId));
|
|
25
|
-
}
|
|
26
|
-
async function resolveSchemaPath(moduleId) {
|
|
27
|
-
const root = process.cwd();
|
|
28
|
-
if (moduleId === "@arch-cadre/core" || moduleId === "core") {
|
|
29
|
-
const p = _nodePath.default.join(root, "node_modules", "@kryo", "core", "dist", "server", "database", "schema.cjs");
|
|
30
|
-
try {
|
|
31
|
-
await _promises.default.access(p);
|
|
32
|
-
return p;
|
|
33
|
-
} catch {
|
|
34
|
-
const devP = _nodePath.default.resolve(root, "../../packages/kryo-core/src/server/database/schema.ts");
|
|
35
|
-
try {
|
|
36
|
-
await _promises.default.access(devP);
|
|
37
|
-
return devP;
|
|
38
|
-
} catch {}
|
|
39
|
-
}
|
|
40
|
-
return null;
|
|
41
|
-
}
|
|
42
|
-
const cleanId = moduleId.replace("@arch-cadre/", "");
|
|
43
|
-
const possible = [
|
|
44
|
-
// Local module
|
|
45
|
-
_nodePath.default.join(root, "modules", cleanId, "schema.ts"), _nodePath.default.join(root, "modules", moduleId, "schema.ts"),
|
|
46
|
-
// node_modules (installed or symlinked)
|
|
47
|
-
_nodePath.default.join(root, "node_modules", moduleId, "dist", "schema.cjs"), _nodePath.default.join(root, "node_modules", `@arch-cadre/${cleanId}`, "dist", "schema.cjs"), _nodePath.default.join(root, "node_modules", moduleId, "src", "schema.ts"), _nodePath.default.join(root, "node_modules", `@arch-cadre/${cleanId}`, "src", "schema.ts"),
|
|
48
|
-
// Monorepo packages (searching by various naming conventions)
|
|
49
|
-
_nodePath.default.resolve(root, "../../packages", cleanId, "src", "schema.ts"), _nodePath.default.resolve(root, "../../packages", `kryo-${cleanId}`, "src", "schema.ts"), _nodePath.default.resolve(root, "../../packages", cleanId, "schema.ts")];
|
|
50
|
-
for (const p of possible) {
|
|
51
|
-
try {
|
|
52
|
-
await _promises.default.access(p);
|
|
53
|
-
console.log(`[Kernel:Lifecycle] Resolved schema for ${moduleId} at: ${p}`);
|
|
54
|
-
return p;
|
|
55
|
-
} catch {
|
|
56
|
-
console.warn(`[Kernel:Lifecycle] Unresolved schema for ${moduleId} at: ${p}`);
|
|
57
|
-
}
|
|
58
|
-
}
|
|
59
|
-
console.warn(`[Kernel:Lifecycle] Could not resolve schema path for: ${moduleId}`);
|
|
60
|
-
return null;
|
|
61
|
-
}
|
|
62
|
-
async function pushModuleSchema(moduleId) {
|
|
63
|
-
const execAsync = (0, _nodeUtil.promisify)(_nodeChild_process.exec);
|
|
64
|
-
console.log(`[Kernel:Lifecycle] Targeted sync for module: ${moduleId}`);
|
|
65
|
-
const root = process.cwd();
|
|
66
|
-
const enabledFromDb = await _server.db.select({
|
|
67
|
-
id: _core.systemModulesTable.id
|
|
68
|
-
}).from(_core.systemModulesTable).where((0, _drizzleOrm.eq)(_core.systemModulesTable.enabled, true));
|
|
69
|
-
const activeModuleIds = new Set(enabledFromDb.map(m => m.id));
|
|
70
|
-
activeModuleIds.add("@arch-cadre/core");
|
|
71
|
-
activeModuleIds.add(moduleId);
|
|
72
|
-
const schemaPaths = [];
|
|
73
|
-
for (const id of Array.from(activeModuleIds)) {
|
|
74
|
-
const p = await resolveSchemaPath(id);
|
|
75
|
-
if (p) schemaPaths.push(p);
|
|
76
|
-
}
|
|
77
|
-
if (schemaPaths.length === 0) {
|
|
78
|
-
console.warn(`[Kernel:Lifecycle] No schema paths resolved for ${moduleId}, skipping push.`);
|
|
79
|
-
return;
|
|
80
|
-
}
|
|
81
|
-
const configPath = _nodePath.default.join(root, "drizzle.config.ts");
|
|
82
|
-
const drizzleKitBin = _nodePath.default.join(root, "node_modules", ".bin", "drizzle-kit");
|
|
83
|
-
const cmd = `"${drizzleKitBin}" push --force --config=${configPath}`;
|
|
84
|
-
console.log(`[Kernel:Lifecycle] Executing isolated migration. Modules: ${Array.from(activeModuleIds).join(", ")}`);
|
|
85
|
-
try {
|
|
86
|
-
await execAsync(cmd, {
|
|
87
|
-
env: {
|
|
88
|
-
...process.env,
|
|
89
|
-
CI: "true",
|
|
90
|
-
// Pass the calculated schemas to our dynamic drizzle.config.ts
|
|
91
|
-
DRIZZLE_SCHEMA_OVERRIDE: schemaPaths.join(",")
|
|
92
|
-
},
|
|
93
|
-
cwd: root
|
|
94
|
-
});
|
|
95
|
-
console.log(`[Kernel:Lifecycle] Isolated migration successful for ${moduleId}`);
|
|
96
|
-
} catch (e) {
|
|
97
|
-
console.error(`[Kernel:Lifecycle] Isolated migration failed for ${moduleId}:`);
|
|
98
|
-
console.error(e.stdout || e.message);
|
|
99
|
-
throw new Error(`Migration failed: ${moduleId}`);
|
|
100
|
-
}
|
|
101
|
-
}
|
|
102
|
-
async function performToggle(moduleId, isEnabled) {
|
|
103
|
-
try {
|
|
104
|
-
const allModules = await (0, _manage.getModules)();
|
|
105
|
-
const manifest = allModules.find(m => m.id === moduleId);
|
|
106
|
-
await updateStep(moduleId, "Validate module...");
|
|
107
|
-
await sleep(500);
|
|
108
|
-
if (!manifest) return;
|
|
109
|
-
if (isEnabled) {
|
|
110
|
-
await updateStep(moduleId, "Queued...");
|
|
111
|
-
await sleep(500);
|
|
112
|
-
if (manifest.dependencies?.length) {
|
|
113
|
-
const pendingDeps = manifest.dependencies.filter(depId => {
|
|
114
|
-
const dep = allModules.find(m => m.id === depId);
|
|
115
|
-
return dep && !dep.enabled && !dep.system;
|
|
116
|
-
});
|
|
117
|
-
if (pendingDeps.length > 0) {
|
|
118
|
-
for (const depId of pendingDeps) {
|
|
119
|
-
await updateStep(moduleId, `Waiting for dependency "${depId}"...`);
|
|
120
|
-
await performToggle(depId, true);
|
|
121
|
-
await sleep(500);
|
|
122
|
-
}
|
|
123
|
-
}
|
|
124
|
-
}
|
|
125
|
-
await updateStep(moduleId, "Initializing...");
|
|
126
|
-
await sleep(500);
|
|
127
|
-
await _server.db.update(_core.systemModulesTable).set({
|
|
128
|
-
enabled: true
|
|
129
|
-
}).where((0, _drizzleOrm.eq)(_core.systemModulesTable.id, moduleId));
|
|
130
|
-
const instance = await (0, _manage.getModuleInstance)(moduleId);
|
|
131
|
-
await updateStep(moduleId, "Migrate database...");
|
|
132
|
-
await sleep(500);
|
|
133
|
-
try {
|
|
134
|
-
if (instance?.onMigrate) {
|
|
135
|
-
await instance.onMigrate();
|
|
136
|
-
} else {
|
|
137
|
-
await pushModuleSchema(moduleId);
|
|
138
|
-
}
|
|
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 _server.db.update(_core.systemModulesTable).set({
|
|
153
|
-
installed: true,
|
|
154
|
-
lastStep: null
|
|
155
|
-
}).where((0, _drizzleOrm.eq)(_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)) {
|
|
161
|
-
const otherActiveTargets = m.extends.filter(targetId => {
|
|
162
|
-
if (targetId === moduleId) return false;
|
|
163
|
-
const target = allModules.find(mod => mod.id === targetId);
|
|
164
|
-
return target?.enabled;
|
|
165
|
-
});
|
|
166
|
-
return otherActiveTargets.length === 0;
|
|
167
|
-
}
|
|
168
|
-
return false;
|
|
169
|
-
});
|
|
170
|
-
if (dependents.length > 0) {
|
|
171
|
-
await updateStep(moduleId, `Deactivating dependents...`);
|
|
172
|
-
for (const dep of dependents) {
|
|
173
|
-
await performToggle(dep.id, false);
|
|
174
|
-
await sleep(500);
|
|
175
|
-
}
|
|
176
|
-
}
|
|
177
|
-
await updateStep(moduleId, "Deactivating...");
|
|
178
|
-
const instance = await (0, _manage.getModuleInstance)(moduleId);
|
|
179
|
-
if (instance?.onDisable) await instance.onDisable();
|
|
180
|
-
await _server.db.update(_core.systemModulesTable).set({
|
|
181
|
-
enabled: false,
|
|
182
|
-
installed: false
|
|
183
|
-
}).where((0, _drizzleOrm.eq)(_core.systemModulesTable.id, moduleId));
|
|
184
|
-
await updateStep(moduleId, null);
|
|
185
|
-
}
|
|
186
|
-
} catch (e) {
|
|
187
|
-
console.error(`[Kernel] Fatal error for ${moduleId}:`, e);
|
|
188
|
-
await updateStep(moduleId, `Error: ${e.message}`);
|
|
189
|
-
}
|
|
190
|
-
}
|
|
191
|
-
async function toggleModuleState(moduleId, isEnabled) {
|
|
192
|
-
const allModules = await (0, _manage.getModules)();
|
|
193
|
-
const manifest = allModules.find(m => m.id === moduleId);
|
|
194
|
-
if (!manifest) throw new Error(`Module "${moduleId}" not found`);
|
|
195
|
-
if (manifest.enabled === isEnabled) return {
|
|
196
|
-
success: true
|
|
197
|
-
};
|
|
198
|
-
void performToggle(moduleId, isEnabled);
|
|
199
|
-
return {
|
|
200
|
-
success: true
|
|
201
|
-
};
|
|
202
|
-
}
|
|
203
|
-
async function initOperationalModules() {
|
|
204
|
-
const allModules = await (0, _manage.getModules)();
|
|
205
|
-
for (const mod of allModules) {
|
|
206
|
-
if (mod.enabled) {
|
|
207
|
-
try {
|
|
208
|
-
const instance = await (0, _manage.getModuleInstance)(mod.id);
|
|
209
|
-
if (instance?.init) {
|
|
210
|
-
await instance.init();
|
|
211
|
-
}
|
|
212
|
-
} catch (e) {
|
|
213
|
-
console.error(`[Kernel] Failed to init module ${mod.id}:`, e);
|
|
214
|
-
}
|
|
215
|
-
}
|
|
216
|
-
}
|
|
217
|
-
}
|
|
1
|
+
"use server";const e=require(`../_virtual/_rolldown/runtime.cjs`),t=require(`./manage.cjs`);let n=require(`@arch-cadre/core/server`),r=require(`node:fs/promises`);r=e.__toESM(r);let i=require(`node:path`);i=e.__toESM(i);let a=require(`@arch-cadre/core`),o=require(`drizzle-orm`),s=require(`node:child_process`),c=require(`node:util`);const l=e=>new Promise(t=>setTimeout(t,e));async function u(e,t){console.log(`[Kernel] "${e}" step: ${t}`),await n.db.update(a.systemModulesTable).set({lastStep:t}).where((0,o.eq)(a.systemModulesTable.id,e))}async function d(e){let t=process.cwd();if(e===`@arch-cadre/core`||e===`core`){let e=i.default.join(t,`node_modules`,`@kryo`,`core`,`dist`,`server`,`database`,`schema.cjs`);try{return await r.default.access(e),e}catch{let e=i.default.resolve(t,`../../packages/kryo-core/src/server/database/schema.ts`);try{return await r.default.access(e),e}catch{}}return null}let n=e.replace(`@arch-cadre/`,``),a=[i.default.join(t,`modules`,n,`schema.ts`),i.default.join(t,`modules`,e,`schema.ts`),i.default.join(t,`node_modules`,e,`dist`,`schema.cjs`),i.default.join(t,`node_modules`,`@arch-cadre/${n}`,`dist`,`schema.cjs`),i.default.join(t,`node_modules`,e,`src`,`schema.ts`),i.default.join(t,`node_modules`,`@arch-cadre/${n}`,`src`,`schema.ts`),i.default.resolve(t,`../../packages`,n,`src`,`schema.ts`),i.default.resolve(t,`../../packages`,`kryo-${n}`,`src`,`schema.ts`),i.default.resolve(t,`../../packages`,n,`schema.ts`)];for(let t of a)try{return await r.default.access(t),console.log(`[Kernel:Lifecycle] Resolved schema for ${e} at: ${t}`),t}catch{console.warn(`[Kernel:Lifecycle] Unresolved schema for ${e} at: ${t}`)}return console.warn(`[Kernel:Lifecycle] Could not resolve schema path for: ${e}`),null}async function f(e){let t=(0,c.promisify)(s.exec);console.log(`[Kernel:Lifecycle] Targeted sync for module: ${e}`);let r=process.cwd(),l=await n.db.select({id:a.systemModulesTable.id}).from(a.systemModulesTable).where((0,o.eq)(a.systemModulesTable.enabled,!0)),u=new Set(l.map(e=>e.id));u.add(`@arch-cadre/core`),u.add(e);let f=[];for(let e of Array.from(u)){let t=await d(e);t&&f.push(t)}if(f.length===0){console.warn(`[Kernel:Lifecycle] No schema paths resolved for ${e}, skipping push.`);return}let p=i.default.join(r,`drizzle.config.ts`),m=`"${i.default.join(r,`node_modules`,`.bin`,`drizzle-kit`)}" push --force --config=${p}`;console.log(`[Kernel:Lifecycle] Executing isolated migration. Modules: ${Array.from(u).join(`, `)}`);try{await t(m,{env:{...process.env,CI:`true`,DRIZZLE_SCHEMA_OVERRIDE:f.join(`,`)},cwd:r}),console.log(`[Kernel:Lifecycle] Isolated migration successful for ${e}`)}catch(t){throw console.error(`[Kernel:Lifecycle] Isolated migration failed for ${e}:`),console.error(t.stdout||t.message),Error(`Migration failed: ${e}`)}}async function p(e,r){try{let i=await t.getModules(),s=i.find(t=>t.id===e);if(await u(e,`Validate module...`),await l(500),!s)return;if(r){if(await u(e,`Queued...`),await l(500),s.dependencies?.length){let t=s.dependencies.filter(e=>{let t=i.find(t=>t.id===e);return t&&!t.enabled&&!t.system});if(t.length>0)for(let n of t)await u(e,`Waiting for dependency "${n}"...`),await p(n,!0),await l(500)}await u(e,`Initializing...`),await l(500),await n.db.update(a.systemModulesTable).set({enabled:!0}).where((0,o.eq)(a.systemModulesTable.id,e));let r=await t.getModuleInstance(e);await u(e,`Migrate database...`),await l(500);try{r?.onMigrate?await r.onMigrate():await f(e),await u(e,`Migration successful`)}catch(t){console.error(`[Kernel] Migration failed for ${e}:`,t),await u(e,`Migration failed: ${t.message}`),await l(500)}r?.onEnable&&(await u(e,`Running setup...`),await l(500),await r.onEnable()),await u(e,`Finishing...`),await l(500),await n.db.update(a.systemModulesTable).set({installed:!0,lastStep:null}).where((0,o.eq)(a.systemModulesTable.id,e))}else{let r=i.filter(t=>!t.enabled||t.id===e?!1:t.dependencies?.includes(e)?!0:t.extends?.includes(e)?t.extends.filter(t=>t===e?!1:i.find(e=>e.id===t)?.enabled).length===0:!1);if(r.length>0){await u(e,`Deactivating dependents...`);for(let e of r)await p(e.id,!1),await l(500)}await u(e,`Deactivating...`);let s=await t.getModuleInstance(e);s?.onDisable&&await s.onDisable(),await n.db.update(a.systemModulesTable).set({enabled:!1,installed:!1}).where((0,o.eq)(a.systemModulesTable.id,e)),await u(e,null)}}catch(t){console.error(`[Kernel] Fatal error for ${e}:`,t),await u(e,`Error: ${t.message}`)}}async function m(e,n){let r=(await t.getModules()).find(t=>t.id===e);if(!r)throw Error(`Module "${e}" not found`);return r.enabled===n||p(e,n),{success:!0}}async function h(){let e=await t.getModules();for(let n of e)if(n.enabled)try{let e=await t.getModuleInstance(n.id);e?.init&&await e.init()}catch(e){console.error(`[Kernel] Failed to init module ${n.id}:`,e)}}exports.initOperationalModules=h,exports.pushModuleSchema=f,exports.toggleModuleState=m;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
//#region src/server/lifecycle.d.ts
|
|
2
|
+
declare function pushModuleSchema(moduleId: string): Promise<void>;
|
|
3
|
+
declare function toggleModuleState(moduleId: string, isEnabled: boolean): Promise<{
|
|
4
|
+
success: boolean;
|
|
5
|
+
}>;
|
|
6
|
+
declare function initOperationalModules(): Promise<void>;
|
|
7
|
+
//#endregion
|
|
8
|
+
export { initOperationalModules, pushModuleSchema, toggleModuleState };
|
|
9
|
+
//# sourceMappingURL=lifecycle.d.cts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lifecycle.d.cts","names":[],"sources":["../../src/server/lifecycle.ts"],"mappings":";iBA4GsB,gBAAA,CAAiB,QAAA,WAAgB,OAAA;AAAA,iBAwLjC,iBAAA,CAAkB,QAAA,UAAkB,SAAA,YAAkB,OAAA;;;iBAWtD,sBAAA,CAAA,GAAsB,OAAA"}
|