@astrale-os/kernel-client 0.6.0-beta.4 → 0.6.0-beta.6

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.
Files changed (141) hide show
  1. package/dist/auth/authorization.d.ts.map +1 -1
  2. package/dist/auth/authorization.js +3 -3
  3. package/dist/auth/authorization.js.map +1 -1
  4. package/dist/auth/credential.d.ts +1 -1
  5. package/dist/auth/credential.d.ts.map +1 -1
  6. package/dist/auth/credential.js +5 -5
  7. package/dist/auth/credential.js.map +1 -1
  8. package/dist/auth/identity.d.ts +2 -2
  9. package/dist/auth/identity.d.ts.map +1 -1
  10. package/dist/auth/identity.js +4 -4
  11. package/dist/auth/identity.js.map +1 -1
  12. package/dist/auth/index.d.ts +1 -1
  13. package/dist/auth/index.d.ts.map +1 -1
  14. package/dist/auth/provision.d.ts.map +1 -1
  15. package/dist/auth/provision.js +2 -2
  16. package/dist/auth/provision.js.map +1 -1
  17. package/dist/client/request.d.ts +1 -1
  18. package/dist/client/request.d.ts.map +1 -1
  19. package/dist/client/request.js +1 -1
  20. package/dist/client/request.js.map +1 -1
  21. package/dist/errors/response-error.d.ts +2 -1
  22. package/dist/errors/response-error.d.ts.map +1 -1
  23. package/dist/errors/response-error.js +1 -1
  24. package/dist/errors/response-error.js.map +1 -1
  25. package/dist/graph/mutation.js +2 -2
  26. package/dist/graph/mutation.js.map +1 -1
  27. package/dist/graph/query.js +2 -2
  28. package/dist/graph/query.js.map +1 -1
  29. package/dist/schema/admission.d.ts +9 -6
  30. package/dist/schema/admission.d.ts.map +1 -1
  31. package/dist/schema/admission.js +6 -11
  32. package/dist/schema/admission.js.map +1 -1
  33. package/dist/schema/introspection.js +2 -2
  34. package/dist/schema/introspection.js.map +1 -1
  35. package/dist/schema/schema.d.ts.map +1 -1
  36. package/dist/schema/schema.js +6 -5
  37. package/dist/schema/schema.js.map +1 -1
  38. package/dist/session/context/policy.d.ts +1 -1
  39. package/dist/session/context/policy.d.ts.map +1 -1
  40. package/dist/session/context/policy.js +2 -2
  41. package/dist/session/context/policy.js.map +1 -1
  42. package/dist/session/discovery/bundle.js +2 -2
  43. package/dist/session/discovery/bundle.js.map +1 -1
  44. package/dist/session/discovery/discovery.d.ts +1 -1
  45. package/dist/session/discovery/discovery.d.ts.map +1 -1
  46. package/dist/session/discovery/index.d.ts +1 -1
  47. package/dist/session/discovery/index.d.ts.map +1 -1
  48. package/dist/session/discovery/publication.d.ts +1 -1
  49. package/dist/session/discovery/publication.d.ts.map +1 -1
  50. package/dist/session/discovery/publication.js +2 -1
  51. package/dist/session/discovery/publication.js.map +1 -1
  52. package/dist/session/discovery/snapshot.d.ts +1 -1
  53. package/dist/session/discovery/snapshot.d.ts.map +1 -1
  54. package/dist/session/index.d.ts +4 -3
  55. package/dist/session/index.d.ts.map +1 -1
  56. package/dist/session/index.js +1 -1
  57. package/dist/session/index.js.map +1 -1
  58. package/dist/session/reference.d.ts +27 -0
  59. package/dist/session/reference.d.ts.map +1 -0
  60. package/dist/session/reference.js +54 -0
  61. package/dist/session/reference.js.map +1 -0
  62. package/dist/session/routing/auth.d.ts +1 -1
  63. package/dist/session/routing/auth.d.ts.map +1 -1
  64. package/dist/session/routing/auth.js +1 -1
  65. package/dist/session/routing/auth.js.map +1 -1
  66. package/dist/session/routing/cache.d.ts +2 -2
  67. package/dist/session/routing/cache.d.ts.map +1 -1
  68. package/dist/session/routing/cache.js +1 -12
  69. package/dist/session/routing/cache.js.map +1 -1
  70. package/dist/session/routing/dispatch.d.ts +3 -3
  71. package/dist/session/routing/dispatch.d.ts.map +1 -1
  72. package/dist/session/routing/dispatch.js +5 -8
  73. package/dist/session/routing/dispatch.js.map +1 -1
  74. package/dist/session/routing/expectation.d.ts +7 -0
  75. package/dist/session/routing/expectation.d.ts.map +1 -0
  76. package/dist/session/routing/expectation.js +2 -0
  77. package/dist/session/routing/expectation.js.map +1 -0
  78. package/dist/session/routing/index.d.ts +1 -1
  79. package/dist/session/routing/index.d.ts.map +1 -1
  80. package/dist/session/routing/request.d.ts +1 -1
  81. package/dist/session/routing/request.d.ts.map +1 -1
  82. package/dist/session/routing/request.js +1 -1
  83. package/dist/session/routing/request.js.map +1 -1
  84. package/dist/session/session.d.ts +7 -6
  85. package/dist/session/session.d.ts.map +1 -1
  86. package/dist/session/session.js +23 -14
  87. package/dist/session/session.js.map +1 -1
  88. package/dist/session/views/catalog.d.ts +2 -2
  89. package/dist/session/views/catalog.d.ts.map +1 -1
  90. package/dist/session/views/catalog.js +3 -3
  91. package/dist/session/views/catalog.js.map +1 -1
  92. package/dist/session/views/resolve.d.ts.map +1 -1
  93. package/dist/session/views/resolve.js +4 -2
  94. package/dist/session/views/resolve.js.map +1 -1
  95. package/dist/transport/http/response.d.ts +2 -1
  96. package/dist/transport/http/response.d.ts.map +1 -1
  97. package/dist/transport/http/response.js +2 -1
  98. package/dist/transport/http/response.js.map +1 -1
  99. package/dist/transport/http/stream.d.ts +2 -1
  100. package/dist/transport/http/stream.d.ts.map +1 -1
  101. package/dist/transport/http/stream.js +1 -1
  102. package/dist/transport/http/stream.js.map +1 -1
  103. package/dist/transport/http/transport.d.ts.map +1 -1
  104. package/dist/transport/http/transport.js +2 -1
  105. package/dist/transport/http/transport.js.map +1 -1
  106. package/dist/transport/websocket/connection.d.ts +2 -1
  107. package/dist/transport/websocket/connection.d.ts.map +1 -1
  108. package/dist/transport/websocket/connection.js +1 -1
  109. package/dist/transport/websocket/connection.js.map +1 -1
  110. package/dist/transport/websocket/exchange.d.ts +1 -1
  111. package/dist/transport/websocket/exchange.d.ts.map +1 -1
  112. package/dist/transport/websocket/exchange.js +1 -1
  113. package/dist/transport/websocket/exchange.js.map +1 -1
  114. package/dist/transport/websocket/transport.d.ts.map +1 -1
  115. package/dist/transport/websocket/transport.js +2 -1
  116. package/dist/transport/websocket/transport.js.map +1 -1
  117. package/package.json +14 -9
  118. package/dist/domain/binding.d.ts +0 -24
  119. package/dist/domain/binding.d.ts.map +0 -1
  120. package/dist/domain/binding.js +0 -69
  121. package/dist/domain/binding.js.map +0 -1
  122. package/dist/domain/callable.d.ts +0 -25
  123. package/dist/domain/callable.d.ts.map +0 -1
  124. package/dist/domain/callable.js +0 -70
  125. package/dist/domain/callable.js.map +0 -1
  126. package/dist/domain/domain.typecheck.d.ts +0 -2
  127. package/dist/domain/domain.typecheck.d.ts.map +0 -1
  128. package/dist/domain/domain.typecheck.js +0 -69
  129. package/dist/domain/domain.typecheck.js.map +0 -1
  130. package/dist/domain/index.d.ts +0 -4
  131. package/dist/domain/index.d.ts.map +0 -1
  132. package/dist/domain/index.js +0 -2
  133. package/dist/domain/index.js.map +0 -1
  134. package/dist/domain/node.d.ts +0 -10
  135. package/dist/domain/node.d.ts.map +0 -1
  136. package/dist/domain/node.js +0 -6
  137. package/dist/domain/node.js.map +0 -1
  138. package/dist/session/routing/bound.d.ts +0 -7
  139. package/dist/session/routing/bound.d.ts.map +0 -1
  140. package/dist/session/routing/bound.js +0 -2
  141. package/dist/session/routing/bound.js.map +0 -1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@astrale-os/kernel-client",
3
- "version": "0.6.0-beta.4",
3
+ "version": "0.6.0-beta.6",
4
4
  "description": "Universal Client — protocol-first, transport-agnostic",
5
5
  "keywords": [
6
6
  "astrale",
@@ -11,6 +11,11 @@
11
11
  ],
12
12
  "license": "Apache-2.0",
13
13
  "author": "Astrale",
14
+ "repository": {
15
+ "type": "git",
16
+ "url": "git+https://github.com/astrale-os/kernel.git",
17
+ "directory": "client"
18
+ },
14
19
  "files": [
15
20
  "dist"
16
21
  ],
@@ -26,6 +31,10 @@
26
31
  "types": "./dist/auth/index.d.ts",
27
32
  "import": "./dist/auth/index.js"
28
33
  },
34
+ "./errors": {
35
+ "types": "./dist/errors/index.d.ts",
36
+ "import": "./dist/errors/index.js"
37
+ },
29
38
  "./graph": {
30
39
  "types": "./dist/graph/index.d.ts",
31
40
  "import": "./dist/graph/index.js"
@@ -34,10 +43,6 @@
34
43
  "types": "./dist/schema/index.d.ts",
35
44
  "import": "./dist/schema/index.js"
36
45
  },
37
- "./domain": {
38
- "types": "./dist/domain/index.d.ts",
39
- "import": "./dist/domain/index.js"
40
- },
41
46
  "./session": {
42
47
  "types": "./dist/session/index.d.ts",
43
48
  "import": "./dist/session/index.js"
@@ -60,9 +65,9 @@
60
65
  "access": "public"
61
66
  },
62
67
  "dependencies": {
63
- "@astrale-os/kernel-core": ">=0.9.0-beta.3 <1.0.0",
64
- "@astrale-os/kernel-dsl": ">=0.2.0-beta.2 <1.0.0",
65
- "@astrale-os/kernel-protocol": ">=0.5.0-beta.3 <1.0.0",
68
+ "@astrale-os/kernel-core": ">=0.9.0-beta.6 <1.0.0",
69
+ "@astrale-os/kernel-dsl": ">=0.2.0-beta.5 <1.0.0",
70
+ "@astrale-os/kernel-protocol": ">=0.5.0-beta.5 <1.0.0",
66
71
  "@tanstack/pacer": "0.20.1",
67
72
  "msgpackr": "^1.11.0"
68
73
  },
@@ -72,7 +77,7 @@
72
77
  "@typescript/native-preview": "latest",
73
78
  "typescript": "~6.0.1-rc",
74
79
  "vitest": "^3.1.4",
75
- "@astrale-os/kernel-server": "^0.5.0-beta.4"
80
+ "@astrale-os/kernel-server": "^0.5.0-beta.6"
76
81
  },
77
82
  "scripts": {
78
83
  "build": "tsgo",
@@ -1,24 +0,0 @@
1
- import type { BoundInstanceOf, Domain as RichDomain, InputOf, OutputOf, WrappedNode } from '@astrale-os/kernel-core/domain';
2
- import type { Node } from '@astrale-os/kernel-core/graph/node';
3
- import type { PathLike } from '@astrale-os/kernel-core/path';
4
- import type { schema as dslSchema } from '@astrale-os/kernel-dsl/v1';
5
- import type { publication } from '@astrale-os/kernel-protocol';
6
- import type { ClientSession, InstalledDomain } from '../session/index.js';
7
- import type { DomainInvokeOptions, InstanceMethodOf, RemoteCallableOf } from './callable.js';
8
- import type { NodeDefinitionOf } from './node.js';
9
- export interface DomainBindingOperations<S extends dslSchema.DomainSchema> {
10
- readonly installed: InstalledDomain;
11
- readonly publication?: publication.Publication;
12
- invoke<Callable extends RemoteCallableOf<S>>(callable: Callable, input: InputOf<Callable>, options?: DomainInvokeOptions): Promise<OutputOf<Callable>>;
13
- invoke<Method extends InstanceMethodOf<S>>(method: Method, receiver: PathLike, input: InputOf<Method>, options?: DomainInvokeOptions): Promise<OutputOf<Method>>;
14
- bind<Definition extends NodeDefinitionOf<S>>(definition: Definition, value: Node): BoundInstanceOf<Definition>;
15
- bind(value: Node): WrappedNode;
16
- }
17
- /** Exact rich Domain revision bound to one target Publication and one source Session revision. */
18
- export type DomainBinding<S extends dslSchema.DomainSchema = dslSchema.DomainSchema> = RichDomain<S> & {
19
- /** Core Domain reflection plus binding-local lifecycle and invocation operations. */
20
- readonly $: RichDomain<S>['$'] & DomainBindingOperations<S>;
21
- };
22
- export declare function bind<const S extends dslSchema.DomainSchema>(session: ClientSession, schema: S, installed: InstalledDomain): DomainBinding<S>;
23
- export declare function bind(session: ClientSession, installed: InstalledDomain): DomainBinding;
24
- //# sourceMappingURL=binding.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"binding.d.ts","sourceRoot":"","sources":["../../domain/binding.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,eAAe,EACf,MAAM,IAAI,UAAU,EACpB,OAAO,EAEP,QAAQ,EACR,WAAW,EACZ,MAAM,gCAAgC,CAAA;AACvC,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAA;AAC9D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAA;AAC5D,OAAO,KAAK,EAAE,MAAM,IAAI,SAAS,EAAE,MAAM,2BAA2B,CAAA;AACpE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAA;AAM9D,OAAO,KAAK,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AACzE,OAAO,KAAK,EACV,mBAAmB,EAEnB,gBAAgB,EAEhB,gBAAgB,EACjB,MAAM,eAAe,CAAA;AACtB,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAA;AAUjD,MAAM,WAAW,uBAAuB,CAAC,CAAC,SAAS,SAAS,CAAC,YAAY;IACvE,QAAQ,CAAC,SAAS,EAAE,eAAe,CAAA;IACnC,QAAQ,CAAC,WAAW,CAAC,EAAE,WAAW,CAAC,WAAW,CAAA;IAE9C,MAAM,CAAC,QAAQ,SAAS,gBAAgB,CAAC,CAAC,CAAC,EACzC,QAAQ,EAAE,QAAQ,EAClB,KAAK,EAAE,OAAO,CAAC,QAAQ,CAAC,EACxB,OAAO,CAAC,EAAE,mBAAmB,GAC5B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAA;IAE9B,MAAM,CAAC,MAAM,SAAS,gBAAgB,CAAC,CAAC,CAAC,EACvC,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,QAAQ,EAClB,KAAK,EAAE,OAAO,CAAC,MAAM,CAAC,EACtB,OAAO,CAAC,EAAE,mBAAmB,GAC5B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAA;IAE5B,IAAI,CAAC,UAAU,SAAS,gBAAgB,CAAC,CAAC,CAAC,EACzC,UAAU,EAAE,UAAU,EACtB,KAAK,EAAE,IAAI,GACV,eAAe,CAAC,UAAU,CAAC,CAAA;IAC9B,IAAI,CAAC,KAAK,EAAE,IAAI,GAAG,WAAW,CAAA;CAC/B;AAED,kGAAkG;AAClG,MAAM,MAAM,aAAa,CAAC,CAAC,SAAS,SAAS,CAAC,YAAY,GAAG,SAAS,CAAC,YAAY,IACjF,UAAU,CAAC,CAAC,CAAC,GAAG;IACd,qFAAqF;IACrF,QAAQ,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,uBAAuB,CAAC,CAAC,CAAC,CAAA;CAC5D,CAAA;AAEH,wBAAgB,IAAI,CAAC,KAAK,CAAC,CAAC,SAAS,SAAS,CAAC,YAAY,EACzD,OAAO,EAAE,aAAa,EACtB,MAAM,EAAE,CAAC,EACT,SAAS,EAAE,eAAe,GACzB,aAAa,CAAC,CAAC,CAAC,CAAA;AACnB,wBAAgB,IAAI,CAAC,OAAO,EAAE,aAAa,EAAE,SAAS,EAAE,eAAe,GAAG,aAAa,CAAA"}
@@ -1,69 +0,0 @@
1
- import { Domain } from '@astrale-os/kernel-core/domain';
2
- import { schema as schemaValue } from '@astrale-os/kernel-dsl/v1';
3
- import { publication as publicationValue } from '@astrale-os/kernel-protocol';
4
- import { bindRemoteMethod, concreteRootCallables, invokeRemote, invokeRemoteMethod, } from './callable.js';
5
- import { bindNode } from './node.js';
6
- export function bind(session, schemaOrInstalled, maybeInstalled) {
7
- const installed = admitInstalled(maybeInstalled ?? schemaOrInstalled);
8
- const published = installed.source.kind === 'remote' ? installed.source.publication : undefined;
9
- const root = maybeInstalled === undefined ? installed.bundle.root : schemaOrInstalled;
10
- if (published !== undefined)
11
- requireSchemaPublication(root, published);
12
- if (root.origin !== installed.bundle.root.origin ||
13
- schemaValue.revision(root) !== schemaValue.revision(installed.bundle.root)) {
14
- throw new TypeError('Expected Domain schema does not match the installed schema Bundle.');
15
- }
16
- const domain = Domain.fromSchema(root);
17
- const invocationTarget = Object.freeze({
18
- callables: concreteRootCallables(domain),
19
- bound: Object.freeze({
20
- schema: published === undefined
21
- ? Object.freeze({ target: installed.target })
22
- : Object.freeze({ revision: schemaValue.revision(root) }),
23
- ...(published === undefined ? {} : { publication: publicationValue.reference(published) }),
24
- }),
25
- });
26
- const methodBinder = bindRemoteMethod(session, invocationTarget);
27
- const invoke = ((callable, receiverOrInput, inputOrOptions, options) => 'on' in callable
28
- ? invokeRemoteMethod(session, invocationTarget, callable, receiverOrInput, inputOrOptions, options)
29
- : invokeRemote(session, invocationTarget, callable, receiverOrInput, inputOrOptions));
30
- const bind = ((definitionOrValue, value) => value === undefined
31
- ? bindNode(domain, methodBinder, definitionOrValue)
32
- : bindNode(domain, methodBinder, definitionOrValue, value));
33
- const binding = {
34
- ...domain,
35
- $: Object.freeze({
36
- ...domain.$,
37
- installed,
38
- ...(published === undefined ? {} : { publication: published }),
39
- invoke,
40
- bind,
41
- }),
42
- };
43
- return Object.freeze(binding);
44
- }
45
- function admitInstalled(input) {
46
- if (input === null || typeof input !== 'object' || Array.isArray(input)) {
47
- throw new TypeError('Installed Domain evidence is invalid.');
48
- }
49
- if (input.state !== 'ready' || input.readiness === null) {
50
- throw new TypeError('Installed Domain is not ready.');
51
- }
52
- if (input.source.kind === 'remote') {
53
- const published = publicationValue.accept(input.source.publication);
54
- const acceptedBundle = publicationValue.acceptBundle(published, input.bundle);
55
- return Object.freeze({
56
- ...input,
57
- source: Object.freeze({ kind: 'remote', publication: published }),
58
- bundle: acceptedBundle,
59
- });
60
- }
61
- return input;
62
- }
63
- function requireSchemaPublication(domainSchema, published) {
64
- if (domainSchema.origin !== published.origin ||
65
- schemaValue.revision(domainSchema) !== published.schema.revision) {
66
- throw new TypeError('Expected Domain schema does not match the target Publication revision.');
67
- }
68
- }
69
- //# sourceMappingURL=binding.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"binding.js","sourceRoot":"","sources":["../../domain/binding.ts"],"names":[],"mappings":"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"}
@@ -1,25 +0,0 @@
1
- import type { Definition, Domain as RichDomain, InputOf, InstanceMethod, InstanceMethodOf as CoreInstanceMethodOf, OutputOf, RemoteCallableOf as CoreRemoteCallableOf, StaticMethod } from '@astrale-os/kernel-core/domain';
2
- import type { Node } from '@astrale-os/kernel-core/graph/node';
3
- import type { PathLike } from '@astrale-os/kernel-core/path';
4
- import type { Key, schema } from '@astrale-os/kernel-dsl/v1';
5
- import type { invocation } from '@astrale-os/kernel-protocol';
6
- import type { BoundTarget, SessionControlOptions, ClientSession } from '../session/index.js';
7
- export type RemoteCallable = (Definition<'function'> & {
8
- readonly path: NonNullable<Definition<'function'>['path']>;
9
- }) | StaticMethod;
10
- export type RemoteCallableOf<S extends schema.DomainSchema> = CoreRemoteCallableOf<S>;
11
- export type InstanceMethodOf<S extends schema.DomainSchema> = CoreInstanceMethodOf<S>;
12
- export interface DomainInvokeOptions extends SessionControlOptions {
13
- readonly idempotencyKey?: invocation.IdempotencyKey;
14
- }
15
- export interface DomainInvocationTarget {
16
- /** Canonical callable keys projected to this binding's verified rich root definitions. */
17
- readonly callables: ReadonlyMap<Key.Callable, RemoteCallable | InstanceMethod>;
18
- /** Exact installed target every source-Kernel resolution must witness. */
19
- readonly bound: BoundTarget;
20
- }
21
- export declare function invokeRemote<Callable extends RemoteCallable>(session: ClientSession, target: DomainInvocationTarget, callable: Callable, input: InputOf<Callable>, options?: DomainInvokeOptions): Promise<OutputOf<Callable>>;
22
- export declare function invokeRemoteMethod<Method extends InstanceMethod>(session: ClientSession, target: DomainInvocationTarget, method: Method, receiver: PathLike, input: InputOf<Method>, options?: DomainInvokeOptions): Promise<OutputOf<Method>>;
23
- export declare function bindRemoteMethod(session: ClientSession, target: DomainInvocationTarget): <Method extends InstanceMethod>(method: Method, receiver: Node) => (input: InputOf<Method>) => Promise<OutputOf<Method>>;
24
- export declare function concreteRootCallables(domain: RichDomain): ReadonlyMap<Key.Callable, RemoteCallable | InstanceMethod>;
25
- //# sourceMappingURL=callable.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"callable.d.ts","sourceRoot":"","sources":["../../domain/callable.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,UAAU,EACV,MAAM,IAAI,UAAU,EACpB,OAAO,EACP,cAAc,EACd,gBAAgB,IAAI,oBAAoB,EACxC,QAAQ,EACR,gBAAgB,IAAI,oBAAoB,EACxC,YAAY,EACb,MAAM,gCAAgC,CAAA;AACvC,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAA;AAC9D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAA;AAC5D,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAA;AAC5D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAA;AAK7D,OAAO,KAAK,EAAE,WAAW,EAAE,qBAAqB,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AAM5F,MAAM,MAAM,cAAc,GACtB,CAAC,UAAU,CAAC,UAAU,CAAC,GAAG;IAAE,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC,CAAA;CAAE,CAAC,GACzF,YAAY,CAAA;AAChB,MAAM,MAAM,gBAAgB,CAAC,CAAC,SAAS,MAAM,CAAC,YAAY,IAAI,oBAAoB,CAAC,CAAC,CAAC,CAAA;AACrF,MAAM,MAAM,gBAAgB,CAAC,CAAC,SAAS,MAAM,CAAC,YAAY,IAAI,oBAAoB,CAAC,CAAC,CAAC,CAAA;AAErF,MAAM,WAAW,mBAAoB,SAAQ,qBAAqB;IAChE,QAAQ,CAAC,cAAc,CAAC,EAAE,UAAU,CAAC,cAAc,CAAA;CACpD;AAED,MAAM,WAAW,sBAAsB;IACrC,0FAA0F;IAC1F,QAAQ,CAAC,SAAS,EAAE,WAAW,CAAC,GAAG,CAAC,QAAQ,EAAE,cAAc,GAAG,cAAc,CAAC,CAAA;IAC9E,0EAA0E;IAC1E,QAAQ,CAAC,KAAK,EAAE,WAAW,CAAA;CAC5B;AAED,wBAAsB,YAAY,CAAC,QAAQ,SAAS,cAAc,EAChE,OAAO,EAAE,aAAa,EACtB,MAAM,EAAE,sBAAsB,EAC9B,QAAQ,EAAE,QAAQ,EAClB,KAAK,EAAE,OAAO,CAAC,QAAQ,CAAC,EACxB,OAAO,CAAC,EAAE,mBAAmB,GAC5B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAE7B;AAED,wBAAsB,kBAAkB,CAAC,MAAM,SAAS,cAAc,EACpE,OAAO,EAAE,aAAa,EACtB,MAAM,EAAE,sBAAsB,EAC9B,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,QAAQ,EAClB,KAAK,EAAE,OAAO,CAAC,MAAM,CAAC,EACtB,OAAO,CAAC,EAAE,mBAAmB,GAC5B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAE3B;AAED,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,aAAa,EACtB,MAAM,EAAE,sBAAsB,GAC7B,CAAC,MAAM,SAAS,cAAc,EAC/B,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,IAAI,KACX,CAAC,KAAK,EAAE,OAAO,CAAC,MAAM,CAAC,KAAK,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAGzD;AAED,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,UAAU,GACjB,WAAW,CAAC,GAAG,CAAC,QAAQ,EAAE,cAAc,GAAG,cAAc,CAAC,CAsB5D"}
@@ -1,70 +0,0 @@
1
- import { Path as GraphPath } from '@astrale-os/kernel-core/path';
2
- import { call } from '../client/index.js';
3
- import { ClientError } from '../errors/index.js';
4
- import { dispatchBound } from '../session/index.js';
5
- export async function invokeRemote(session, target, callable, input, options) {
6
- return dispatchCallable(session, target, callable, undefined, input, options);
7
- }
8
- export async function invokeRemoteMethod(session, target, method, receiver, input, options) {
9
- return dispatchCallable(session, target, method, receiver, input, options);
10
- }
11
- export function bindRemoteMethod(session, target) {
12
- return (method, receiver) => (input) => dispatchCallable(session, target, method, GraphPath.id(receiver.id), input);
13
- }
14
- export function concreteRootCallables(domain) {
15
- const result = new Map();
16
- for (const definition of domain.$.definitions.values()) {
17
- if (definition.kind === 'function') {
18
- const callable = definition;
19
- result.set(callable.key, callable);
20
- continue;
21
- }
22
- if ((definition.kind !== 'class' && definition.kind !== 'interface') ||
23
- definition.family !== 'node') {
24
- continue;
25
- }
26
- for (const method of definition.methods.values()) {
27
- if (method.definition.inheritance !== 'abstract') {
28
- const callable = method;
29
- result.set(callable.key, callable);
30
- }
31
- }
32
- }
33
- return result;
34
- }
35
- async function dispatchCallable(session, target, callable, receiver, input, controls = {}) {
36
- const bound = target.callables.get(callable.key);
37
- if (bound === undefined) {
38
- throw new ClientError('Callable is not a concrete member of the bound Domain root.');
39
- }
40
- const path = receiver === undefined
41
- ? bound.path
42
- : bound.on(GraphPath.from(receiver));
43
- const result = await dispatchBound(session, call(path, input), target.bound, controls);
44
- return requireOutput(bound, result);
45
- }
46
- function requireOutput(callable, result) {
47
- const mode = callable.definition.output.mode;
48
- switch (mode) {
49
- case 'value':
50
- if (result.kind === 'value')
51
- return result.value;
52
- break;
53
- case 'stream':
54
- if (result.kind === 'stream')
55
- return result.stream;
56
- break;
57
- case 'binary':
58
- if (result.kind === 'binary')
59
- return result.value;
60
- break;
61
- }
62
- return resultMismatch(mode, result);
63
- }
64
- function resultMismatch(expected, result) {
65
- if (result.kind === 'stream') {
66
- void result.stream.cancel(`Remote callable declared ${expected} output.`);
67
- }
68
- throw new ClientError(`Remote callable declared ${expected} output but returned ${result.kind}.`);
69
- }
70
- //# sourceMappingURL=callable.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"callable.js","sourceRoot":"","sources":["../../domain/callable.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=domain.typecheck.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"domain.typecheck.d.ts","sourceRoot":"","sources":["../../domain/domain.typecheck.ts"],"names":[],"mappings":""}
@@ -1,69 +0,0 @@
1
- import { Domain, } from '@astrale-os/kernel-core/domain';
2
- import { Path } from '@astrale-os/kernel-core/path';
3
- import { defineSchema, fn, nodeClass, nodeInterface } from '@astrale-os/kernel-dsl/v1';
4
- const input = { type: 'string' };
5
- const output = { type: 'string' };
6
- const Resource = nodeInterface({
7
- methods: {
8
- inspect: fn({ input, output, auth: 'anonymous', inheritance: 'default' }),
9
- },
10
- });
11
- const Document = nodeClass({ implements: [Resource] });
12
- const Current = defineSchema('typed-binding.client.test', {
13
- interfaces: { Resource },
14
- classes: { Document },
15
- functions: { echo: fn({ input, output, auth: 'anonymous' }) },
16
- });
17
- const current = Domain.fromSchema(Current);
18
- const Replacement = defineSchema('typed-binding.client.test', {
19
- functions: {
20
- echo: fn({ input: { type: 'number' }, output, auth: 'anonymous' }),
21
- },
22
- });
23
- const replacement = Domain.fromSchema(Replacement);
24
- const Foreign = defineSchema('foreign-typed-binding.client.test', {
25
- classes: { Record: nodeClass() },
26
- functions: { echo: fn({ input, output, auth: 'anonymous' }) },
27
- });
28
- const foreign = Domain.fromSchema(Foreign);
29
- const ImportedResource = nodeInterface({
30
- methods: {
31
- inspect: fn({ input, output, auth: 'anonymous', inheritance: 'default' }),
32
- },
33
- });
34
- const Dependency = defineSchema('dependency-typed-binding.client.test', {
35
- interfaces: { ImportedResource },
36
- });
37
- const ImportedDocument = nodeClass({ implements: [ImportedResource] });
38
- const WithDependency = defineSchema('dependent-typed-binding.client.test', {
39
- dependencies: [Dependency],
40
- classes: { ImportedDocument },
41
- });
42
- const dependent = Domain.fromSchema(WithDependency);
43
- void {};
44
- function assertDomainBindingTypes() {
45
- void binding.Document;
46
- void binding.echo;
47
- void binding.$.installed;
48
- void binding.$.publication;
49
- void binding.$.origin;
50
- // @ts-expect-error DomainBinding has one reserved namespace, never a second nested Domain.
51
- void binding.domain;
52
- // @ts-expect-error DomainBinding exposes the caller lifecycle under $, never as host.
53
- void binding.$.host;
54
- void binding.$.invoke(binding.echo, 'accepted');
55
- void binding.$.invoke(binding.Resource.inspect, Path.id(node.id), 'accepted');
56
- void binding.$.invoke(binding.Document.inspect, Path.id(node.id), 'accepted');
57
- void binding.$.bind(binding.Document, node);
58
- void binding.$.bind(binding.Resource, node);
59
- // @ts-expect-error A same-origin callable projected from another revision is not in this lease.
60
- void binding.$.invoke(replacement.echo, 1);
61
- // @ts-expect-error An unrelated Domain callable is not in this lease.
62
- void binding.$.invoke(foreign.echo, 'rejected');
63
- // @ts-expect-error An unrelated node definition is not in this lease.
64
- void binding.$.bind(foreign.Record, node);
65
- // @ts-expect-error An imported Method is owned by its declaring Domain, not the root lease.
66
- void dependentBinding.$.invoke(dependent.ImportedDocument.inspect, Path.id(node.id), 'rejected');
67
- }
68
- void assertDomainBindingTypes;
69
- //# sourceMappingURL=domain.typecheck.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"domain.typecheck.js","sourceRoot":"","sources":["../../domain/domain.typecheck.ts"],"names":[],"mappings":"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"}
@@ -1,4 +0,0 @@
1
- export { bind, bind as bindDomain, type DomainBinding, type DomainBindingOperations, } from './binding.js';
2
- export type { DomainInvokeOptions, InstanceMethodOf, RemoteCallableOf } from './callable.js';
3
- export type { NodeDefinitionOf } from './node.js';
4
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../domain/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,IAAI,EACJ,IAAI,IAAI,UAAU,EAClB,KAAK,aAAa,EAClB,KAAK,uBAAuB,GAC7B,MAAM,cAAc,CAAA;AACrB,YAAY,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAA;AAC5F,YAAY,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAA"}
@@ -1,2 +0,0 @@
1
- export { bind, bind as bindDomain, } from './binding.js';
2
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../domain/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,IAAI,EACJ,IAAI,IAAI,UAAU,GAGnB,MAAM,cAAc,CAAA"}
@@ -1,10 +0,0 @@
1
- import type { BoundInstanceOf, Definition, Domain, MethodBinder, NodeDefinitionOf as CoreNodeDefinitionOf, WrappedNode } from '@astrale-os/kernel-core/domain';
2
- import type { Node } from '@astrale-os/kernel-core/graph/node';
3
- import type { schema } from '@astrale-os/kernel-dsl/v1';
4
- export type NodeDefinition = (Definition<'class'> | Definition<'interface'>) & {
5
- readonly family: 'node';
6
- };
7
- export type NodeDefinitionOf<S extends schema.DomainSchema> = CoreNodeDefinitionOf<S>;
8
- export declare function bindNode<S extends schema.DomainSchema, RichDefinition extends CoreNodeDefinitionOf<S>>(domain: Domain<S>, methodBinder: MethodBinder, definition: RichDefinition, value: Node): BoundInstanceOf<RichDefinition>;
9
- export declare function bindNode(domain: Domain, methodBinder: MethodBinder, value: Node): WrappedNode;
10
- //# sourceMappingURL=node.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../../domain/node.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,eAAe,EACf,UAAU,EACV,MAAM,EACN,YAAY,EACZ,gBAAgB,IAAI,oBAAoB,EACxC,WAAW,EACZ,MAAM,gCAAgC,CAAA;AACvC,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAA;AAC9D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAA;AAEvD,MAAM,MAAM,cAAc,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,GAAG,UAAU,CAAC,WAAW,CAAC,CAAC,GAAG;IAC7E,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;CACxB,CAAA;AACD,MAAM,MAAM,gBAAgB,CAAC,CAAC,SAAS,MAAM,CAAC,YAAY,IAAI,oBAAoB,CAAC,CAAC,CAAC,CAAA;AAErF,wBAAgB,QAAQ,CACtB,CAAC,SAAS,MAAM,CAAC,YAAY,EAC7B,cAAc,SAAS,oBAAoB,CAAC,CAAC,CAAC,EAE9C,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,EACjB,YAAY,EAAE,YAAY,EAC1B,UAAU,EAAE,cAAc,EAC1B,KAAK,EAAE,IAAI,GACV,eAAe,CAAC,cAAc,CAAC,CAAA;AAClC,wBAAgB,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,YAAY,EAAE,KAAK,EAAE,IAAI,GAAG,WAAW,CAAA"}
@@ -1,6 +0,0 @@
1
- export function bindNode(domain, methodBinder, definitionOrValue, value) {
2
- return value === undefined
3
- ? domain.$.wrap(definitionOrValue, methodBinder)
4
- : domain.$.wrap(definitionOrValue, value, methodBinder);
5
- }
6
- //# sourceMappingURL=node.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"node.js","sourceRoot":"","sources":["../../domain/node.ts"],"names":[],"mappings":"AA0BA,MAAM,UAAU,QAAQ,CACtB,MAAc,EACd,YAA0B,EAC1B,iBAAwC,EACxC,KAAY;IAEZ,OAAO,KAAK,KAAK,SAAS;QACxB,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,iBAAyB,EAAE,YAAY,CAAC;QACxD,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CACX,iBAAyE,EACzE,KAAK,EACL,YAAY,CACb,CAAA;AACP,CAAC"}
@@ -1,7 +0,0 @@
1
- import type { invocation, publication } from '@astrale-os/kernel-protocol';
2
- /** Installed schema and optional remote Publication expected by one typed Domain binding. */
3
- export interface BoundTarget {
4
- readonly schema: invocation.SchemaTarget;
5
- readonly publication?: publication.PublicationRef;
6
- }
7
- //# sourceMappingURL=bound.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"bound.d.ts","sourceRoot":"","sources":["../../../session/routing/bound.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAA;AAE1E,6FAA6F;AAC7F,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC,YAAY,CAAA;IACxC,QAAQ,CAAC,WAAW,CAAC,EAAE,WAAW,CAAC,cAAc,CAAA;CAClD"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=bound.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"bound.js","sourceRoot":"","sources":["../../../session/routing/bound.ts"],"names":[],"mappings":""}