@astrale-os/sdk 0.1.9 → 0.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/dist/auth/index.d.ts +1 -1
- package/dist/auth/index.d.ts.map +1 -1
- package/dist/auth/index.js +1 -1
- package/dist/auth/index.js.map +1 -1
- package/dist/cli/run.d.ts +0 -1
- package/dist/cli/run.d.ts.map +1 -1
- package/dist/cli/run.js +21 -10
- package/dist/cli/run.js.map +1 -1
- package/dist/config/adapter.d.ts +19 -11
- package/dist/config/adapter.d.ts.map +1 -1
- package/dist/config/adapter.js.map +1 -1
- package/dist/config/define-domain.d.ts +13 -29
- package/dist/config/define-domain.d.ts.map +1 -1
- package/dist/config/define-domain.js +22 -33
- package/dist/config/define-domain.js.map +1 -1
- package/dist/config/deploy.d.ts +1 -1
- package/dist/config/deploy.js +1 -1
- package/dist/config/index.d.ts +1 -1
- package/dist/config/index.d.ts.map +1 -1
- package/dist/define/remote-function.d.ts +9 -14
- package/dist/define/remote-function.d.ts.map +1 -1
- package/dist/define/remote-function.js +9 -8
- package/dist/define/remote-function.js.map +1 -1
- package/dist/define/view.d.ts +14 -6
- package/dist/define/view.d.ts.map +1 -1
- package/dist/define/view.js +8 -6
- package/dist/define/view.js.map +1 -1
- package/dist/dispatch/identity.d.ts +10 -9
- package/dist/dispatch/identity.d.ts.map +1 -1
- package/dist/dispatch/identity.js +9 -15
- package/dist/dispatch/identity.js.map +1 -1
- package/dist/domain/binding.d.ts +18 -0
- package/dist/domain/binding.d.ts.map +1 -0
- package/dist/domain/binding.js +29 -0
- package/dist/domain/binding.js.map +1 -0
- package/dist/domain/build-spec.d.ts.map +1 -1
- package/dist/domain/build-spec.js +10 -7
- package/dist/domain/build-spec.js.map +1 -1
- package/dist/domain/define.d.ts +27 -27
- package/dist/domain/define.d.ts.map +1 -1
- package/dist/domain/define.js +31 -49
- package/dist/domain/define.js.map +1 -1
- package/dist/domain/extend-core.d.ts.map +1 -1
- package/dist/domain/extend-core.js +9 -1
- package/dist/domain/extend-core.js.map +1 -1
- package/dist/domain/extend-functions.d.ts +44 -0
- package/dist/domain/extend-functions.d.ts.map +1 -0
- package/dist/domain/extend-functions.js +69 -0
- package/dist/domain/extend-functions.js.map +1 -0
- package/dist/domain/extend-views.d.ts +45 -0
- package/dist/domain/extend-views.d.ts.map +1 -0
- package/dist/domain/extend-views.js +116 -0
- package/dist/domain/extend-views.js.map +1 -0
- package/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/server/auxiliary-routes.js +1 -1
- package/dist/server/auxiliary-routes.js.map +1 -1
- package/dist/server/worker-entry.d.ts +3 -3
- package/dist/server/worker-entry.js +3 -3
- package/package.json +2 -5
- package/src/auth/index.ts +1 -1
- package/src/cli/run.ts +21 -12
- package/src/config/adapter.ts +16 -11
- package/src/config/define-domain.ts +34 -56
- package/src/config/deploy.ts +1 -1
- package/src/config/index.ts +1 -1
- package/src/define/remote-function.ts +9 -14
- package/src/define/view.ts +14 -6
- package/src/dispatch/identity.ts +15 -21
- package/src/domain/binding.ts +37 -0
- package/src/domain/build-spec.ts +18 -7
- package/src/domain/define.ts +67 -62
- package/src/domain/extend-functions.ts +86 -0
- package/src/domain/extend-views.ts +151 -0
- package/src/index.ts +7 -2
- package/src/server/auxiliary-routes.ts +1 -1
- package/src/server/worker-entry.ts +3 -3
- package/src/domain/extend-core.ts +0 -287
|
@@ -4,16 +4,17 @@
|
|
|
4
4
|
* the canonical kernel `Function` class, the former distribution `RemoteFunction`.)
|
|
5
5
|
*
|
|
6
6
|
* Each entry in `defineRemoteDomain({ remoteFunctions: { ... } })` becomes:
|
|
7
|
-
* - a graph node at `/${origin}/
|
|
8
|
-
* as the kernel `Function` class
|
|
9
|
-
* `
|
|
7
|
+
* - a graph node at `/${origin}/functions/<slug>` — a first-class domain MEMBER,
|
|
8
|
+
* materialized as the kernel `Function` class and attached to the Domain via an
|
|
9
|
+
* `of_domain` edge (slug `function.<slug>`), so it is addressable by the
|
|
10
|
+
* semantic path `/:${origin}:function.<slug>` (the form a `postInstall` uses).
|
|
10
11
|
* - a Hono route on the worker at the path implied by `binding`
|
|
11
|
-
* (`/<functionsFolder>/<slug>` POST by default —
|
|
12
|
+
* (`/<functionsFolder>/<slug>` POST by default — the route URL is decoupled
|
|
13
|
+
* from the graph layout).
|
|
12
14
|
*
|
|
13
|
-
* The slug = the map key (single source of truth, no duplication).
|
|
14
|
-
*
|
|
15
|
-
* `
|
|
16
|
-
* `Function.ref` on the graph node and as the dispatch key.
|
|
15
|
+
* The slug = the map key (single source of truth, no duplication). The member
|
|
16
|
+
* ref (`function.<slug>`), the layout (`/<origin>/functions/<slug>`), and the
|
|
17
|
+
* `of_domain` edge slug are all DERIVED from it — there is nothing else to name.
|
|
17
18
|
*/
|
|
18
19
|
/**
|
|
19
20
|
* Identity helper for authoring a RemoteFunction. Returns its argument
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"remote-function.js","sourceRoot":"","sources":["../../src/define/remote-function.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"remote-function.js","sourceRoot":"","sources":["../../src/define/remote-function.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAwGH;;;GAGG;AACH,MAAM,UAAU,oBAAoB,CAMlC,GAAsD;IAEtD,OAAO,GAAG,CAAA;AACZ,CAAC"}
|
package/dist/define/view.d.ts
CHANGED
|
@@ -2,14 +2,16 @@
|
|
|
2
2
|
* Authoring a `View` — iframe-mountable callable served by the domain worker.
|
|
3
3
|
*
|
|
4
4
|
* Each entry in `defineRemoteDomain({ views: { ... } })` becomes both:
|
|
5
|
-
* - a
|
|
6
|
-
*
|
|
7
|
-
*
|
|
5
|
+
* - a first-class domain MEMBER: a `View` node at `/${origin}/views/<slug>`
|
|
6
|
+
* attached to the Domain via an `of_domain` edge (slug `view.<slug>`),
|
|
7
|
+
* addressable as `/:${origin}:view.<slug>`. `<slug>` is the map key, so it
|
|
8
|
+
* lives in exactly one place.
|
|
8
9
|
* - a Hono route on the worker at the path implied by `binding`
|
|
9
|
-
* (`/<viewsFolder>/<slug>` by default
|
|
10
|
+
* (`/<viewsFolder>/<slug>` by default).
|
|
10
11
|
*
|
|
11
|
-
* The
|
|
12
|
-
* lands in `Function.binding.remoteUrl` is
|
|
12
|
+
* The graph layout (`/<origin>/views/<slug>`) is a fixed kernel convention; the
|
|
13
|
+
* URL path that lands in `Function.binding.remoteUrl` is
|
|
14
|
+
* `${url}/<viewsFolder>/<slug>` — DECOUPLED from the graph layout.
|
|
13
15
|
*
|
|
14
16
|
* The author can override the URL via `binding` — host and/or path
|
|
15
17
|
* placeholders are supported (the kernel's `route` mechanism does the
|
|
@@ -68,6 +70,12 @@ export type ViewDef<TDeps = unknown, TAuth extends AuthPolicy = AuthPolicy> = {
|
|
|
68
70
|
* with `render`; takes precedence over `binding`.
|
|
69
71
|
*/
|
|
70
72
|
mount?: string;
|
|
73
|
+
/**
|
|
74
|
+
* Shell handshake mode for the mounted iframe. Omit for the common case:
|
|
75
|
+
* SPA-mounted views (`mount`) use the shell handshake; inline `render` views
|
|
76
|
+
* default to `'none'` because they do not include the shell client.
|
|
77
|
+
*/
|
|
78
|
+
handshake?: 'shell' | 'none';
|
|
71
79
|
/** Authentication policy. Defaults to `'required'`. */
|
|
72
80
|
auth?: TAuth;
|
|
73
81
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"view.d.ts","sourceRoot":"","sources":["../../src/define/view.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"view.d.ts","sourceRoot":"","sources":["../../src/define/view.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAA;AAChF,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,2BAA2B,CAAA;AACtD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,mCAAmC,CAAA;AAC/E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AAC1D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAA;AAEnC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AAEtD,MAAM,MAAM,iBAAiB,CAAC,KAAK,GAAG,OAAO,EAAE,KAAK,SAAS,UAAU,GAAG,UAAU,IAAI;IACtF,+DAA+D;IAC/D,CAAC,EAAE,OAAO,CAAA;IACV;;;;OAIG;IACH,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC9B;;;;OAIG;IACH,IAAI,EAAE,aAAa,CAAC,KAAK,CAAC,CAAA;IAC1B,6DAA6D;IAC7D,IAAI,EAAE,KAAK,CAAA;IACX;;;;;;OAMG;IACH,UAAU,EAAE,CAAC,SAAS,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC,CAAA;CAC3E,CAAA;AAED,MAAM,MAAM,OAAO,CAAC,KAAK,GAAG,OAAO,EAAE,KAAK,SAAS,UAAU,GAAG,UAAU,IAAI;IAC5E;;;;;;;;OAQG;IACH,OAAO,CAAC,EAAE,eAAe,CAAA;IACzB;;;;;;OAMG;IACH,KAAK,CAAC,EAAE,MAAM,CAAA;IACd;;;;OAIG;IACH,SAAS,CAAC,EAAE,OAAO,GAAG,MAAM,CAAA;IAC5B,uDAAuD;IACvD,IAAI,CAAC,EAAE,KAAK,CAAA;IACZ;;;OAGG;IACH,SAAS,CAAC,EAAE,CAAC,GAAG,EAAE,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAC1E;;;;OAIG;IACH,MAAM,CAAC,EAAE,CAAC,GAAG,EAAE,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAA;IAC/E;;;;;OAKG;IACH,OAAO,CAAC,EAAE,YAAY,GAAG,YAAY,EAAE,CAAA;IACvC,2CAA2C;IAC3C,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB,CAAA;AAED;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,KAAK,GAAG,OAAO,EAAE,KAAK,SAAS,UAAU,GAAG,UAAU,EAC/E,GAAG,EAAE,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,GACzB,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,CAEvB"}
|
package/dist/define/view.js
CHANGED
|
@@ -2,14 +2,16 @@
|
|
|
2
2
|
* Authoring a `View` — iframe-mountable callable served by the domain worker.
|
|
3
3
|
*
|
|
4
4
|
* Each entry in `defineRemoteDomain({ views: { ... } })` becomes both:
|
|
5
|
-
* - a
|
|
6
|
-
*
|
|
7
|
-
*
|
|
5
|
+
* - a first-class domain MEMBER: a `View` node at `/${origin}/views/<slug>`
|
|
6
|
+
* attached to the Domain via an `of_domain` edge (slug `view.<slug>`),
|
|
7
|
+
* addressable as `/:${origin}:view.<slug>`. `<slug>` is the map key, so it
|
|
8
|
+
* lives in exactly one place.
|
|
8
9
|
* - a Hono route on the worker at the path implied by `binding`
|
|
9
|
-
* (`/<viewsFolder>/<slug>` by default
|
|
10
|
+
* (`/<viewsFolder>/<slug>` by default).
|
|
10
11
|
*
|
|
11
|
-
* The
|
|
12
|
-
* lands in `Function.binding.remoteUrl` is
|
|
12
|
+
* The graph layout (`/<origin>/views/<slug>`) is a fixed kernel convention; the
|
|
13
|
+
* URL path that lands in `Function.binding.remoteUrl` is
|
|
14
|
+
* `${url}/<viewsFolder>/<slug>` — DECOUPLED from the graph layout.
|
|
13
15
|
*
|
|
14
16
|
* The author can override the URL via `binding` — host and/or path
|
|
15
17
|
* placeholders are supported (the kernel's `route` mechanism does the
|
package/dist/define/view.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"view.js","sourceRoot":"","sources":["../../src/define/view.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"view.js","sourceRoot":"","sources":["../../src/define/view.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAsFH;;;;GAIG;AACH,MAAM,UAAU,UAAU,CACxB,GAA0B;IAE1B,OAAO,GAAG,CAAA;AACZ,CAAC"}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Per-callable identity — dispatcher runtime + install-time wiring.
|
|
3
3
|
*
|
|
4
|
-
*
|
|
5
|
-
* binding: Methods on classes/interfaces (sub = MethodPath)
|
|
6
|
-
*
|
|
7
|
-
*
|
|
4
|
+
* Three flavors of callable get an identity per the install-time identity
|
|
5
|
+
* binding: Methods on classes/interfaces (sub = MethodPath), standalone-function
|
|
6
|
+
* MEMBERS (sub = AbsolutePath at `/<origin>/functions/<slug>`), and view MEMBERS
|
|
7
|
+
* (sub = AbsolutePath at `/<origin>/views/<slug>`).
|
|
8
8
|
*
|
|
9
9
|
* At server startup the method dispatcher and the View / RemoteFunction
|
|
10
10
|
* route mounter pre-compute, for every materialized callable, the
|
|
@@ -41,11 +41,12 @@ export type AuxBuckets<T> = {
|
|
|
41
41
|
remoteFunctions: Record<string, T>;
|
|
42
42
|
};
|
|
43
43
|
/**
|
|
44
|
-
* slug → `AbsolutePath.raw` for each
|
|
45
|
-
* (
|
|
46
|
-
* `/<origin>/
|
|
47
|
-
*
|
|
48
|
-
*
|
|
44
|
+
* slug → `AbsolutePath.raw` for each aux callable MEMBER node:
|
|
45
|
+
* - standalone-function members (`kind: 'function'`) at `/<origin>/functions/<slug>`;
|
|
46
|
+
* - view members (`kind: 'view'`) at `/<origin>/views/<slug>` (plus any
|
|
47
|
+
* hand-authored/legacy core `View` nodes, `kind: 'core'` className `View`).
|
|
48
|
+
* Neither has a class+method decomposition that would justify a MethodPath —
|
|
49
|
+
* their identity is their graph position.
|
|
49
50
|
*/
|
|
50
51
|
export type AuxIdentityPaths = AuxBuckets<string>;
|
|
51
52
|
export declare function collectAuxIdentityPaths(compiled: CompiledDomain): AuxIdentityPaths;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"identity.d.ts","sourceRoot":"","sources":["../../src/dispatch/identity.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAA;AAIjF,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAA;AAC5D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAA;AAExD;;;;;;;;;;GAUG;AACH,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,cAAc,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAMnF;AAED;gEACgE;AAChE,MAAM,MAAM,UAAU,CAAC,CAAC,IAAI;IAC1B,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAA;IACxB,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAA;CACnC,CAAA;AAED
|
|
1
|
+
{"version":3,"file":"identity.d.ts","sourceRoot":"","sources":["../../src/dispatch/identity.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAA;AAIjF,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAA;AAC5D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAA;AAExD;;;;;;;;;;GAUG;AACH,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,cAAc,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAMnF;AAED;gEACgE;AAChE,MAAM,MAAM,UAAU,CAAC,CAAC,IAAI;IAC1B,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAA;IACxB,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAA;CACnC,CAAA;AAED;;;;;;;GAOG;AACH,MAAM,MAAM,gBAAgB,GAAG,UAAU,CAAC,MAAM,CAAC,CAAA;AAEjD,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,cAAc,GAAG,gBAAgB,CAalF;AAED;;;;;GAKG;AACH,MAAM,MAAM,cAAc,GAAG,UAAU,CAAC,oBAAoB,CAAC,CAAA;AAE7D,wBAAgB,mBAAmB,CACjC,QAAQ,EAAE,cAAc,EACxB,UAAU,EAAE,UAAU,EACtB,MAAM,EAAE,MAAM,GACb,cAAc,CAWhB;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,gBAAgB,CAC9B,QAAQ,EAAE,cAAc,EACxB,OAAO,EAAE,WAAW,CAAC,gBAAgB,CAAC,EAAE,EACxC,UAAU,EAAE,UAAU,EACtB,MAAM,EAAE,MAAM,GACb,GAAG,CAAC,WAAW,CAAC,gBAAgB,CAAC,EAAE,oBAAoB,CAAC,CAmB1D"}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Per-callable identity — dispatcher runtime + install-time wiring.
|
|
3
3
|
*
|
|
4
|
-
*
|
|
5
|
-
* binding: Methods on classes/interfaces (sub = MethodPath)
|
|
6
|
-
*
|
|
7
|
-
*
|
|
4
|
+
* Three flavors of callable get an identity per the install-time identity
|
|
5
|
+
* binding: Methods on classes/interfaces (sub = MethodPath), standalone-function
|
|
6
|
+
* MEMBERS (sub = AbsolutePath at `/<origin>/functions/<slug>`), and view MEMBERS
|
|
7
|
+
* (sub = AbsolutePath at `/<origin>/views/<slug>`).
|
|
8
8
|
*
|
|
9
9
|
* At server startup the method dispatcher and the View / RemoteFunction
|
|
10
10
|
* route mounter pre-compute, for every materialized callable, the
|
|
@@ -43,21 +43,15 @@ export function collectAuxIdentityPaths(compiled) {
|
|
|
43
43
|
const views = {};
|
|
44
44
|
const remoteFunctions = {};
|
|
45
45
|
for (const c of resolveCallables(compiled)) {
|
|
46
|
-
if (
|
|
46
|
+
if (!c.slug)
|
|
47
47
|
continue;
|
|
48
|
-
if (c.
|
|
49
|
-
views[c.slug] = c.sub;
|
|
50
|
-
}
|
|
51
|
-
else if (c.className === 'Function') {
|
|
52
|
-
// Standalone callables (the former `RemoteFunction`) materialize as the
|
|
53
|
-
// canonical kernel `Function` class.
|
|
48
|
+
if (c.kind === 'function') {
|
|
54
49
|
remoteFunctions[c.slug] = c.sub;
|
|
55
50
|
}
|
|
56
|
-
else {
|
|
57
|
-
|
|
58
|
-
`at ${c.ref}. If you've added a new auto-materialized Function class to extendCore, ` +
|
|
59
|
-
`extend this collector + the kernel walker (resolveCallables) to handle it.`);
|
|
51
|
+
else if (c.kind === 'view' || (c.kind === 'core' && c.className === 'View')) {
|
|
52
|
+
views[c.slug] = c.sub;
|
|
60
53
|
}
|
|
54
|
+
// Methods (`kind: 'method'`) get their identity via `collectMethodPaths`.
|
|
61
55
|
}
|
|
62
56
|
return { views, remoteFunctions };
|
|
63
57
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"identity.js","sourceRoot":"","sources":["../../src/dispatch/identity.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAIH,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAA;AAKjE;;;;;;;;;;GAUG;AACH,MAAM,UAAU,kBAAkB,CAAC,QAAwB;IACzD,MAAM,GAAG,GAA2B,EAAE,CAAA;IACtC,KAAK,MAAM,CAAC,IAAI,gBAAgB,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC3C,IAAI,CAAC,CAAC,IAAI,KAAK,QAAQ;YAAE,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAA;IAC7C,CAAC;IACD,OAAO,GAAG,CAAA;AACZ,CAAC;
|
|
1
|
+
{"version":3,"file":"identity.js","sourceRoot":"","sources":["../../src/dispatch/identity.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Shared binding helpers for auto-materialized members (functions + views).
|
|
3
|
+
*
|
|
4
|
+
* The worker ROUTE URL a member is served at — `<url>/<folderSlug>/<slug>` — is
|
|
5
|
+
* decoupled from the member's GRAPH layout (`/<origin>/{functions,views}/<slug>`,
|
|
6
|
+
* a fixed kernel convention). `folderSlug` names only the URL segment.
|
|
7
|
+
*/
|
|
8
|
+
import type { FunctionBinding } from '@astrale-os/kernel-api/routed';
|
|
9
|
+
/** Join a worker-relative mount path onto the serving url (single slash). */
|
|
10
|
+
export declare function joinWorkerPath(url: string, mount: string): string;
|
|
11
|
+
/**
|
|
12
|
+
* Resolve a member's effective binding against the serving `url`. An explicit
|
|
13
|
+
* `override.remoteUrl` wins; otherwise defaults to `<url>/<folderSlug>/<slug>`.
|
|
14
|
+
* Same trailing-slash discipline as {@link joinWorkerPath} — a `url` ending in
|
|
15
|
+
* `/` must not produce `//` (the kernel pins `iss` by exact string).
|
|
16
|
+
*/
|
|
17
|
+
export declare function resolveBinding(override: FunctionBinding | undefined, url: string, folderSlug: string, slug: string): FunctionBinding;
|
|
18
|
+
//# sourceMappingURL=binding.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"binding.d.ts","sourceRoot":"","sources":["../../src/domain/binding.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAA;AAEpE,6EAA6E;AAC7E,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAGjE;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAC5B,QAAQ,EAAE,eAAe,GAAG,SAAS,EACrC,GAAG,EAAE,MAAM,EACX,UAAU,EAAE,MAAM,EAClB,IAAI,EAAE,MAAM,GACX,eAAe,CASjB"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Shared binding helpers for auto-materialized members (functions + views).
|
|
3
|
+
*
|
|
4
|
+
* The worker ROUTE URL a member is served at — `<url>/<folderSlug>/<slug>` — is
|
|
5
|
+
* decoupled from the member's GRAPH layout (`/<origin>/{functions,views}/<slug>`,
|
|
6
|
+
* a fixed kernel convention). `folderSlug` names only the URL segment.
|
|
7
|
+
*/
|
|
8
|
+
/** Join a worker-relative mount path onto the serving url (single slash). */
|
|
9
|
+
export function joinWorkerPath(url, mount) {
|
|
10
|
+
const base = url.replace(/\/+$/, '');
|
|
11
|
+
return `${base}/${mount.replace(/^\/+/, '')}`;
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Resolve a member's effective binding against the serving `url`. An explicit
|
|
15
|
+
* `override.remoteUrl` wins; otherwise defaults to `<url>/<folderSlug>/<slug>`.
|
|
16
|
+
* Same trailing-slash discipline as {@link joinWorkerPath} — a `url` ending in
|
|
17
|
+
* `/` must not produce `//` (the kernel pins `iss` by exact string).
|
|
18
|
+
*/
|
|
19
|
+
export function resolveBinding(override, url, folderSlug, slug) {
|
|
20
|
+
const base = url.replace(/\/+$/, '');
|
|
21
|
+
if (override) {
|
|
22
|
+
return {
|
|
23
|
+
...override,
|
|
24
|
+
remoteUrl: override.remoteUrl ?? `${base}/${folderSlug}/${slug}`,
|
|
25
|
+
};
|
|
26
|
+
}
|
|
27
|
+
return { remoteUrl: `${base}/${folderSlug}/${slug}` };
|
|
28
|
+
}
|
|
29
|
+
//# sourceMappingURL=binding.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"binding.js","sourceRoot":"","sources":["../../src/domain/binding.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH,6EAA6E;AAC7E,MAAM,UAAU,cAAc,CAAC,GAAW,EAAE,KAAa;IACvD,MAAM,IAAI,GAAG,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAA;IACpC,OAAO,GAAG,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,CAAA;AAC/C,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,cAAc,CAC5B,QAAqC,EACrC,GAAW,EACX,UAAkB,EAClB,IAAY;IAEZ,MAAM,IAAI,GAAG,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAA;IACpC,IAAI,QAAQ,EAAE,CAAC;QACb,OAAO;YACL,GAAG,QAAQ;YACX,SAAS,EAAE,QAAQ,CAAC,SAAS,IAAI,GAAG,IAAI,IAAI,UAAU,IAAI,IAAI,EAAE;SACjE,CAAA;IACH,CAAC;IACD,OAAO,EAAE,SAAS,EAAE,GAAG,IAAI,IAAI,UAAU,IAAI,IAAI,EAAE,EAAE,CAAA;AACvD,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"build-spec.d.ts","sourceRoot":"","sources":["../../src/domain/build-spec.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,KAAK,EAAS,SAAS,EAAE,MAAM,yBAAyB,CAAA;AAE/D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAA;AAKpD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AAK5C;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAAC,CAAC,SAAS,MAAM,EAChD,MAAM,EAAE,YAAY,CAAC,CAAC,CAAC,EACvB,GAAG,EAAE,MAAM,GACV,SAAS,
|
|
1
|
+
{"version":3,"file":"build-spec.d.ts","sourceRoot":"","sources":["../../src/domain/build-spec.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,KAAK,EAAS,SAAS,EAAE,MAAM,yBAAyB,CAAA;AAE/D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAA;AAKpD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AAK5C;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAAC,CAAC,SAAS,MAAM,EAChD,MAAM,EAAE,YAAY,CAAC,CAAC,CAAC,EACvB,GAAG,EAAE,MAAM,GACV,SAAS,CASX;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,CAAC,SAAS,MAAM,EACpD,MAAM,EAAE,YAAY,CAAC,CAAC,CAAC,EACvB,GAAG,EAAE,MAAM,GACV,OAAO,CAAC,MAAM,CAAC,CAEjB"}
|
|
@@ -28,8 +28,8 @@ import { materializeRemoteDomain } from './define';
|
|
|
28
28
|
* kernel install guard rejects it).
|
|
29
29
|
*/
|
|
30
30
|
export function buildInstallGraph(domain, url) {
|
|
31
|
-
const { compiled } = materializeRemoteDomain(domain, url);
|
|
32
|
-
return buildSpecInternal(compiled, domain.methods, url).toWire();
|
|
31
|
+
const { compiled, auxiliary } = materializeRemoteDomain(domain, url);
|
|
32
|
+
return buildSpecInternal(compiled, domain.methods, url, auxiliary?.functionSchemas ?? [], auxiliary?.viewSchemas ?? []).toWire();
|
|
33
33
|
}
|
|
34
34
|
/**
|
|
35
35
|
* Content hash of the install graph. Delegates the canonical hash to kernel-core's
|
|
@@ -40,12 +40,15 @@ export function buildInstallGraphHash(domain, url) {
|
|
|
40
40
|
return hashInstallGraph(buildInstallGraph(domain, url));
|
|
41
41
|
}
|
|
42
42
|
// ── Internal ────────────────────────────────────────────────
|
|
43
|
-
function buildSpecInternal(compiled, methods, url) {
|
|
43
|
+
function buildSpecInternal(compiled, methods, url, functionSchemas, viewSchemas) {
|
|
44
44
|
const serialized = serializeMethodsWithStubs(compiled, methods, url);
|
|
45
|
-
|
|
46
|
-
//
|
|
47
|
-
//
|
|
48
|
-
//
|
|
45
|
+
// Method impls + standalone-function-member impls travel in the same callable
|
|
46
|
+
// array (distinct refs: `class.X.method.y` vs `function.<slug>`); view-member
|
|
47
|
+
// impls travel in `options.views` (a view differs structurally — handshake,
|
|
48
|
+
// view_for, View class). The serializer emits method nodes from the IR,
|
|
49
|
+
// function/view members from `compiled.$.refs.{functions,views}`, pulling each
|
|
50
|
+
// impl by ref.
|
|
51
|
+
const tree = serialize(compiled, [...serialized, ...functionSchemas], { views: viewSchemas });
|
|
49
52
|
return tree.toGraph();
|
|
50
53
|
}
|
|
51
54
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"build-spec.js","sourceRoot":"","sources":["../../src/domain/build-spec.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAMH,OAAO,EAAE,gBAAgB,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAA;AAK7F,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAC3C,OAAO,EAAE,uBAAuB,EAAE,MAAM,UAAU,CAAA;AAElD;;;;;;;GAOG;AACH,MAAM,UAAU,iBAAiB,CAC/B,MAAuB,EACvB,GAAW;IAEX,MAAM,EAAE,QAAQ,EAAE,GAAG,uBAAuB,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"build-spec.js","sourceRoot":"","sources":["../../src/domain/build-spec.ts"],"names":[],"mappings":"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"}
|
package/dist/domain/define.d.ts
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* `defineRemoteDomain` — turn a typed schema + methods map into a mountable domain.
|
|
3
3
|
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
* configure). The same entries'
|
|
4
|
+
* `views` and `functions` entries become first-class DOMAIN MEMBERS: a `View` /
|
|
5
|
+
* `Function` node attached to the Domain via an `of_domain` edge (slug
|
|
6
|
+
* `view.<slug>` / `function.<slug>`), laid out at `/<origin>/{views,functions}/<slug>`.
|
|
7
|
+
* Their contract half (the member ref) threads through `compileDomain`; their
|
|
8
|
+
* impl/binding half threads through `serialize`. The same entries'
|
|
10
9
|
* `render` / `execute` handlers are mounted as Hono routes by
|
|
11
|
-
* `createRemoteServer
|
|
10
|
+
* `createRemoteServer` at `<url>/<viewsFolder|functionsFolder>/<slug>` (the route
|
|
11
|
+
* URL is decoupled from the graph layout). Slug = map key.
|
|
12
12
|
*
|
|
13
13
|
* The domain definition is deployment-agnostic: it carries NO serving url. The
|
|
14
14
|
* url is supplied late by the spec producer (`createRemoteServer({ url })` at
|
|
@@ -17,8 +17,8 @@
|
|
|
17
17
|
* — the worker serving URL, which is also `iss` and the binding base.
|
|
18
18
|
*/
|
|
19
19
|
import type { FunctionBinding } from '@astrale-os/kernel-api/routed';
|
|
20
|
-
import type { BoundMethod, CompiledDomain } from '@astrale-os/kernel-core/domain';
|
|
21
|
-
import type {
|
|
20
|
+
import type { BoundMethod, CompiledDomain, FunctionSchema, ViewSchema } from '@astrale-os/kernel-core/domain';
|
|
21
|
+
import type { Core, Schema } from '@astrale-os/kernel-dsl';
|
|
22
22
|
import type { AnyRemoteFunctionDef, ViewDef } from '../define';
|
|
23
23
|
import type { SchemaMethodsImpl } from '../method/class';
|
|
24
24
|
import type { AnyRemoteHandler } from '../method/single';
|
|
@@ -27,24 +27,26 @@ export type RemoteDomainConfig<S extends Schema, TDeps> = {
|
|
|
27
27
|
methods: SchemaMethodsImpl<S, TDeps>;
|
|
28
28
|
core?: Core<S>;
|
|
29
29
|
views?: Record<string, ViewDef<TDeps>>;
|
|
30
|
-
viewClass?: AnyNodeDef;
|
|
31
|
-
viewForEdgeClass?: AnyEdgeDef;
|
|
32
30
|
viewsFolder?: string;
|
|
33
31
|
remoteFunctions?: Record<string, AnyRemoteFunctionDef>;
|
|
34
32
|
functionsFolder?: string;
|
|
35
33
|
};
|
|
36
|
-
/** Effective bindings + folder layout for auxiliary routes, resolved against `url`. */
|
|
34
|
+
/** Effective bindings + folder layout + member schemas for auxiliary routes, resolved against `url`. */
|
|
37
35
|
export type AuxiliaryMetadata = {
|
|
38
36
|
url: string;
|
|
39
37
|
viewsFolder: string;
|
|
40
38
|
functionsFolder: string;
|
|
41
39
|
viewBindings: Record<string, FunctionBinding>;
|
|
42
40
|
remoteFunctionBindings: Record<string, FunctionBinding>;
|
|
41
|
+
/** Function members' impl/binding half (`function.<slug>`) for `serialize`. */
|
|
42
|
+
functionSchemas: FunctionSchema[];
|
|
43
|
+
/** View members' impl/binding half (`view.<slug>`) for `serialize`. */
|
|
44
|
+
viewSchemas: ViewSchema[];
|
|
43
45
|
};
|
|
44
46
|
export type RemoteDomain<S extends Schema = Schema> = {
|
|
45
47
|
/**
|
|
46
|
-
* Define-time compile: full domain STRUCTURE (classes, methods, and the
|
|
47
|
-
*
|
|
48
|
+
* Define-time compile: full domain STRUCTURE (classes, methods, and the
|
|
49
|
+
* view/function members' paths/names/refs — what identity, subs, and contract
|
|
48
50
|
* resolution need). It carries NO `binding` values: bindings derive from the
|
|
49
51
|
* serving url, which only the spec producers know — they call
|
|
50
52
|
* `materializeRemoteDomain(domain, url)` for the install-ready compile.
|
|
@@ -53,26 +55,24 @@ export type RemoteDomain<S extends Schema = Schema> = {
|
|
|
53
55
|
methods: BoundMethod<AnyRemoteHandler>[];
|
|
54
56
|
views?: Record<string, ViewDef<any>>;
|
|
55
57
|
remoteFunctions?: Record<string, AnyRemoteFunctionDef>;
|
|
56
|
-
/** The original config, so `materializeRemoteDomain` re-
|
|
57
|
-
config:
|
|
58
|
+
/** The original config, so `materializeRemoteDomain` re-materializes from source. */
|
|
59
|
+
config: MaterializeInputs;
|
|
58
60
|
};
|
|
59
|
-
/** The defineRemoteDomain inputs `materializeRemoteDomain` needs to re-
|
|
60
|
-
type
|
|
61
|
+
/** The defineRemoteDomain inputs `materializeRemoteDomain` needs to re-materialize. */
|
|
62
|
+
type MaterializeInputs = {
|
|
61
63
|
userCore?: Core;
|
|
62
|
-
viewClass?: AnyNodeDef;
|
|
63
|
-
viewForEdgeClass?: AnyEdgeDef;
|
|
64
64
|
viewsFolder: string;
|
|
65
65
|
functionsFolder: string;
|
|
66
66
|
};
|
|
67
67
|
export declare function defineRemoteDomain<TDeps>(): <S extends Schema>(config: RemoteDomainConfig<S, TDeps>) => RemoteDomain<S>;
|
|
68
68
|
/**
|
|
69
|
-
* Materialize a `RemoteDomain` at its real serving `url`: re-
|
|
70
|
-
*
|
|
71
|
-
*
|
|
72
|
-
* only two spec producers — `createRemoteServer`
|
|
73
|
-
* `astrale-domain` CLI. Returns the define-time `compiled`
|
|
74
|
-
* stamp.
|
|
75
|
-
*
|
|
69
|
+
* Materialize a `RemoteDomain` at its real serving `url`: re-compiles the domain
|
|
70
|
+
* and builds every member's url-stamped impl schema + binding, returning the
|
|
71
|
+
* binding maps the auxiliary routes mount from and the member schemas `serialize`
|
|
72
|
+
* emits from. Called by the only two spec producers — `createRemoteServer`
|
|
73
|
+
* (`config.url`) and the `astrale-domain` CLI. Returns the define-time `compiled`
|
|
74
|
+
* untouched when there is no aux to stamp. Pure, so safe to call repeatedly (and
|
|
75
|
+
* memoized per cold isolate by the callers).
|
|
76
76
|
*/
|
|
77
77
|
export declare function materializeRemoteDomain<S extends Schema>(domain: RemoteDomain<S>, url: string): {
|
|
78
78
|
compiled: CompiledDomain<S>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"define.d.ts","sourceRoot":"","sources":["../../src/domain/define.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAA;AACpE,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"define.d.ts","sourceRoot":"","sources":["../../src/domain/define.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAA;AACpE,OAAO,KAAK,EACV,WAAW,EACX,cAAc,EACd,cAAc,EACd,UAAU,EACX,MAAM,gCAAgC,CAAA;AACvC,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAA;AAI1D,OAAO,KAAK,EAAE,oBAAoB,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAC9D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAA;AACxD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAA;AASxD,MAAM,MAAM,kBAAkB,CAAC,CAAC,SAAS,MAAM,EAAE,KAAK,IAAI;IACxD,MAAM,EAAE,CAAC,CAAA;IACT,OAAO,EAAE,iBAAiB,CAAC,CAAC,EAAE,KAAK,CAAC,CAAA;IACpC,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAA;IAEd,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,CAAA;IACtC,WAAW,CAAC,EAAE,MAAM,CAAA;IAEpB,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAA;IACtD,eAAe,CAAC,EAAE,MAAM,CAAA;CACzB,CAAA;AAED,wGAAwG;AACxG,MAAM,MAAM,iBAAiB,GAAG;IAC9B,GAAG,EAAE,MAAM,CAAA;IACX,WAAW,EAAE,MAAM,CAAA;IACnB,eAAe,EAAE,MAAM,CAAA;IACvB,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAA;IAC7C,sBAAsB,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAA;IACvD,+EAA+E;IAC/E,eAAe,EAAE,cAAc,EAAE,CAAA;IACjC,uEAAuE;IACvE,WAAW,EAAE,UAAU,EAAE,CAAA;CAC1B,CAAA;AAED,MAAM,MAAM,YAAY,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM,IAAI;IACpD;;;;;;OAMG;IACH,QAAQ,EAAE,cAAc,CAAC,CAAC,CAAC,CAAA;IAC3B,OAAO,EAAE,WAAW,CAAC,gBAAgB,CAAC,EAAE,CAAA;IAExC,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAA;IACpC,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAA;IACtD,qFAAqF;IACrF,MAAM,EAAE,iBAAiB,CAAA;CAC1B,CAAA;AAED,uFAAuF;AACvF,KAAK,iBAAiB,GAAG;IACvB,QAAQ,CAAC,EAAE,IAAI,CAAA;IACf,WAAW,EAAE,MAAM,CAAA;IACnB,eAAe,EAAE,MAAM,CAAA;CACxB,CAAA;AAED,wBAAgB,kBAAkB,CAAC,KAAK,MACrB,CAAC,SAAS,MAAM,UAAU,kBAAkB,CAAC,CAAC,EAAE,KAAK,CAAC,KAAG,YAAY,CAAC,CAAC,CAAC,CAiC1F;AAED;;;;;;;;GAQG;AACH,wBAAgB,uBAAuB,CAAC,CAAC,SAAS,MAAM,EACtD,MAAM,EAAE,YAAY,CAAC,CAAC,CAAC,EACvB,GAAG,EAAE,MAAM,GACV;IAAE,QAAQ,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC;IAAC,SAAS,EAAE,iBAAiB,GAAG,SAAS,CAAA;CAAE,CAkC3E"}
|
package/dist/domain/define.js
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* `defineRemoteDomain` — turn a typed schema + methods map into a mountable domain.
|
|
3
3
|
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
* configure). The same entries'
|
|
4
|
+
* `views` and `functions` entries become first-class DOMAIN MEMBERS: a `View` /
|
|
5
|
+
* `Function` node attached to the Domain via an `of_domain` edge (slug
|
|
6
|
+
* `view.<slug>` / `function.<slug>`), laid out at `/<origin>/{views,functions}/<slug>`.
|
|
7
|
+
* Their contract half (the member ref) threads through `compileDomain`; their
|
|
8
|
+
* impl/binding half threads through `serialize`. The same entries'
|
|
10
9
|
* `render` / `execute` handlers are mounted as Hono routes by
|
|
11
|
-
* `createRemoteServer
|
|
10
|
+
* `createRemoteServer` at `<url>/<viewsFolder|functionsFolder>/<slug>` (the route
|
|
11
|
+
* URL is decoupled from the graph layout). Slug = map key.
|
|
12
12
|
*
|
|
13
13
|
* The domain definition is deployment-agnostic: it carries NO serving url. The
|
|
14
14
|
* url is supplied late by the spec producer (`createRemoteServer({ url })` at
|
|
@@ -17,28 +17,16 @@
|
|
|
17
17
|
* — the worker serving URL, which is also `iss` and the binding base.
|
|
18
18
|
*/
|
|
19
19
|
import { bindMethods, compileDomain } from '@astrale-os/kernel-core/domain';
|
|
20
|
-
import {
|
|
20
|
+
import { buildFunctionDeclarations, buildFunctionSchemas, DEFAULT_FUNCTIONS_FOLDER, } from './extend-functions';
|
|
21
|
+
import { buildViewDeclarations, buildViewSchemas, DEFAULT_VIEWS_FOLDER } from './extend-views';
|
|
21
22
|
export function defineRemoteDomain() {
|
|
22
23
|
return function (config) {
|
|
23
|
-
const hasAux = Boolean(config.views || config.remoteFunctions);
|
|
24
24
|
const viewsFolder = config.viewsFolder ?? DEFAULT_VIEWS_FOLDER;
|
|
25
25
|
const functionsFolder = config.functionsFolder ?? DEFAULT_FUNCTIONS_FOLDER;
|
|
26
|
-
//
|
|
27
|
-
//
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
schema: config.schema,
|
|
31
|
-
origin: config.schema.domain,
|
|
32
|
-
userCore: config.core,
|
|
33
|
-
viewClass: config.viewClass,
|
|
34
|
-
viewForEdgeClass: config.viewForEdgeClass,
|
|
35
|
-
viewsFolder,
|
|
36
|
-
views: config.views,
|
|
37
|
-
functionsFolder,
|
|
38
|
-
remoteFunctions: config.remoteFunctions,
|
|
39
|
-
}).core
|
|
40
|
-
: config.core;
|
|
41
|
-
const compiled = compileDomain(config.schema, effectiveCore);
|
|
26
|
+
// Views + functions are domain MEMBERS — their contract enters compile via
|
|
27
|
+
// the `functions` / `views` args (no Core involvement). `config.core` is the
|
|
28
|
+
// author's own genuine genesis instance data, untouched.
|
|
29
|
+
const compiled = compileDomain(config.schema, config.core, undefined, config.remoteFunctions ? buildFunctionDeclarations(config.remoteFunctions) : undefined, config.views ? buildViewDeclarations(config.views) : undefined);
|
|
42
30
|
const methods = bindMethods(compiled.$.schema, compiled.$.methods,
|
|
43
31
|
// oxlint-disable-next-line no-explicit-any
|
|
44
32
|
config.methods);
|
|
@@ -49,8 +37,6 @@ export function defineRemoteDomain() {
|
|
|
49
37
|
...(config.remoteFunctions ? { remoteFunctions: config.remoteFunctions } : {}),
|
|
50
38
|
config: {
|
|
51
39
|
userCore: config.core,
|
|
52
|
-
viewClass: config.viewClass,
|
|
53
|
-
viewForEdgeClass: config.viewForEdgeClass,
|
|
54
40
|
viewsFolder,
|
|
55
41
|
functionsFolder,
|
|
56
42
|
},
|
|
@@ -58,13 +44,13 @@ export function defineRemoteDomain() {
|
|
|
58
44
|
};
|
|
59
45
|
}
|
|
60
46
|
/**
|
|
61
|
-
* Materialize a `RemoteDomain` at its real serving `url`: re-
|
|
62
|
-
*
|
|
63
|
-
*
|
|
64
|
-
* only two spec producers — `createRemoteServer`
|
|
65
|
-
* `astrale-domain` CLI. Returns the define-time `compiled`
|
|
66
|
-
* stamp.
|
|
67
|
-
*
|
|
47
|
+
* Materialize a `RemoteDomain` at its real serving `url`: re-compiles the domain
|
|
48
|
+
* and builds every member's url-stamped impl schema + binding, returning the
|
|
49
|
+
* binding maps the auxiliary routes mount from and the member schemas `serialize`
|
|
50
|
+
* emits from. Called by the only two spec producers — `createRemoteServer`
|
|
51
|
+
* (`config.url`) and the `astrale-domain` CLI. Returns the define-time `compiled`
|
|
52
|
+
* untouched when there is no aux to stamp. Pure, so safe to call repeatedly (and
|
|
53
|
+
* memoized per cold isolate by the callers).
|
|
68
54
|
*/
|
|
69
55
|
export function materializeRemoteDomain(domain, url) {
|
|
70
56
|
const hasAux = Boolean(domain.views || domain.remoteFunctions);
|
|
@@ -72,27 +58,23 @@ export function materializeRemoteDomain(domain, url) {
|
|
|
72
58
|
return { compiled: domain.compiled, auxiliary: undefined };
|
|
73
59
|
const { config } = domain;
|
|
74
60
|
const schema = domain.compiled.$.schema;
|
|
75
|
-
const
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
viewsFolder: config.viewsFolder,
|
|
83
|
-
views: domain.views,
|
|
84
|
-
functionsFolder: config.functionsFolder,
|
|
85
|
-
remoteFunctions: domain.remoteFunctions,
|
|
86
|
-
});
|
|
87
|
-
const compiled = compileDomain(schema, result.core);
|
|
61
|
+
const compiled = compileDomain(schema, config.userCore, undefined, domain.remoteFunctions ? buildFunctionDeclarations(domain.remoteFunctions) : undefined, domain.views ? buildViewDeclarations(domain.views) : undefined);
|
|
62
|
+
const fns = domain.remoteFunctions
|
|
63
|
+
? buildFunctionSchemas(domain.remoteFunctions, url, config.functionsFolder)
|
|
64
|
+
: { schemas: [], bindings: {} };
|
|
65
|
+
const vws = domain.views
|
|
66
|
+
? buildViewSchemas(domain.views, url, config.viewsFolder, schema)
|
|
67
|
+
: { schemas: [], bindings: {} };
|
|
88
68
|
return {
|
|
89
69
|
compiled,
|
|
90
70
|
auxiliary: {
|
|
91
71
|
url,
|
|
92
72
|
viewsFolder: config.viewsFolder,
|
|
93
73
|
functionsFolder: config.functionsFolder,
|
|
94
|
-
viewBindings:
|
|
95
|
-
remoteFunctionBindings:
|
|
74
|
+
viewBindings: vws.bindings,
|
|
75
|
+
remoteFunctionBindings: fns.bindings,
|
|
76
|
+
functionSchemas: fns.schemas,
|
|
77
|
+
viewSchemas: vws.schemas,
|
|
96
78
|
},
|
|
97
79
|
};
|
|
98
80
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"define.js","sourceRoot":"","sources":["../../src/domain/define.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;
|
|
1
|
+
{"version":3,"file":"define.js","sourceRoot":"","sources":["../../src/domain/define.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"extend-core.d.ts","sourceRoot":"","sources":["../../src/domain/extend-core.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAA;AACpE,OAAO,KAAK,EACV,UAAU,EACV,UAAU,EACV,IAAI,EAGJ,MAAM,EACP,MAAM,wBAAwB,CAAA;AAY/B,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAA;AACrE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAA;AAE7C,eAAO,MAAM,oBAAoB,UAAU,CAAA;AAC3C,eAAO,MAAM,wBAAwB,cAAc,CAAA;AAGnD,MAAM,MAAM,gBAAgB,GAAG;IAC7B,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,MAAM,CAAA;IACd,QAAQ,CAAC,EAAE,IAAI,CAAA;IACf;;;;;;;OAOG;IACH,GAAG,CAAC,EAAE,MAAM,CAAA;IAEZ,SAAS,CAAC,EAAE,UAAU,CAAA;IACtB,gBAAgB,CAAC,EAAE,UAAU,CAAA;IAC7B,WAAW,CAAC,EAAE,MAAM,CAAA;IAEpB,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAA;IAEpC,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAA;CACvD,CAAA;AAED,MAAM,MAAM,gBAAgB,GAAG;IAC7B,IAAI,EAAE,IAAI,CAAA;IACV,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAA;IAC7C,sBAAsB,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAA;CACxD,CAAA;AAED,wBAAgB,UAAU,CAAC,MAAM,EAAE,gBAAgB,GAAG,gBAAgB,
|
|
1
|
+
{"version":3,"file":"extend-core.d.ts","sourceRoot":"","sources":["../../src/domain/extend-core.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAA;AACpE,OAAO,KAAK,EACV,UAAU,EACV,UAAU,EACV,IAAI,EAGJ,MAAM,EACP,MAAM,wBAAwB,CAAA;AAY/B,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAA;AACrE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAA;AAE7C,eAAO,MAAM,oBAAoB,UAAU,CAAA;AAC3C,eAAO,MAAM,wBAAwB,cAAc,CAAA;AAGnD,MAAM,MAAM,gBAAgB,GAAG;IAC7B,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,MAAM,CAAA;IACd,QAAQ,CAAC,EAAE,IAAI,CAAA;IACf;;;;;;;OAOG;IACH,GAAG,CAAC,EAAE,MAAM,CAAA;IAEZ,SAAS,CAAC,EAAE,UAAU,CAAA;IACtB,gBAAgB,CAAC,EAAE,UAAU,CAAA;IAC7B,WAAW,CAAC,EAAE,MAAM,CAAA;IAEpB,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAA;IAEpC,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAA;CACvD,CAAA;AAED,MAAM,MAAM,gBAAgB,GAAG;IAC7B,IAAI,EAAE,IAAI,CAAA;IACV,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAA;IAC7C,sBAAsB,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAA;CACxD,CAAA;AAED,wBAAgB,UAAU,CAAC,MAAM,EAAE,gBAAgB,GAAG,gBAAgB,CAuFrE;AAQD,wBAAgB,cAAc,CAC5B,QAAQ,EAAE,eAAe,GAAG,SAAS,EACrC,GAAG,EAAE,MAAM,EACX,UAAU,EAAE,MAAM,EAClB,IAAI,EAAE,MAAM,GACX,eAAe,CAWjB"}
|