@dxos/compute 0.8.3 → 0.8.4-main.05e74ebcff

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 (182) hide show
  1. package/LICENSE +102 -5
  2. package/README.md +36 -1
  3. package/dist/lib/neutral/StorageService.mjs +22 -0
  4. package/dist/lib/neutral/chunk-AKVCVI6N.mjs +25 -0
  5. package/dist/lib/neutral/chunk-AKVCVI6N.mjs.map +7 -0
  6. package/dist/lib/neutral/chunk-J5LGTIGS.mjs +10 -0
  7. package/dist/lib/neutral/chunk-LF2ANNYW.mjs +171 -0
  8. package/dist/lib/neutral/chunk-LF2ANNYW.mjs.map +7 -0
  9. package/dist/lib/neutral/chunk-LRCABAWU.mjs +17 -0
  10. package/dist/lib/neutral/chunk-LRCABAWU.mjs.map +7 -0
  11. package/dist/lib/neutral/chunk-RCLYF66G.mjs +21 -0
  12. package/dist/lib/neutral/chunk-RCLYF66G.mjs.map +7 -0
  13. package/dist/lib/neutral/chunk-SEBWOTOU.mjs +235 -0
  14. package/dist/lib/neutral/chunk-SEBWOTOU.mjs.map +7 -0
  15. package/dist/lib/neutral/chunk-VSICPGGY.mjs +53 -0
  16. package/dist/lib/neutral/chunk-VSICPGGY.mjs.map +7 -0
  17. package/dist/lib/neutral/chunk-XEVFBI6S.mjs +62 -0
  18. package/dist/lib/neutral/chunk-XEVFBI6S.mjs.map +7 -0
  19. package/dist/lib/neutral/fib-ZSJYREBW.mjs +10 -0
  20. package/dist/lib/neutral/fib-ZSJYREBW.mjs.map +7 -0
  21. package/dist/lib/neutral/index.mjs +1225 -0
  22. package/dist/lib/neutral/index.mjs.map +7 -0
  23. package/dist/lib/neutral/meta.json +1 -0
  24. package/dist/lib/neutral/reply-YH3BVOUT.mjs +10 -0
  25. package/dist/lib/neutral/reply-YH3BVOUT.mjs.map +7 -0
  26. package/dist/lib/neutral/sleep-TSPIQ5EY.mjs +10 -0
  27. package/dist/lib/neutral/sleep-TSPIQ5EY.mjs.map +7 -0
  28. package/dist/lib/neutral/testing/index.mjs +32 -0
  29. package/dist/lib/neutral/testing/index.mjs.map +7 -0
  30. package/dist/types/src/Blueprint.d.ts +192 -0
  31. package/dist/types/src/Blueprint.d.ts.map +1 -0
  32. package/dist/types/src/Credential.d.ts +27 -0
  33. package/dist/types/src/Credential.d.ts.map +1 -0
  34. package/dist/types/src/LayerSpec.d.ts +56 -0
  35. package/dist/types/src/LayerSpec.d.ts.map +1 -0
  36. package/dist/types/src/McpServer.d.ts +27 -0
  37. package/dist/types/src/McpServer.d.ts.map +1 -0
  38. package/dist/types/src/Operation.d.ts +340 -0
  39. package/dist/types/src/Operation.d.ts.map +1 -0
  40. package/dist/types/src/OperationHandlerSet.d.ts +67 -0
  41. package/dist/types/src/OperationHandlerSet.d.ts.map +1 -0
  42. package/dist/types/src/OperationHandlerSet.test.d.ts +2 -0
  43. package/dist/types/src/OperationHandlerSet.test.d.ts.map +1 -0
  44. package/dist/types/src/OperationRegistry.d.ts +23 -0
  45. package/dist/types/src/OperationRegistry.d.ts.map +1 -0
  46. package/dist/types/src/Process.d.ts +247 -0
  47. package/dist/types/src/Process.d.ts.map +1 -0
  48. package/dist/types/src/Routine.d.ts +63 -0
  49. package/dist/types/src/Routine.d.ts.map +1 -0
  50. package/dist/types/src/Script.d.ts +22 -0
  51. package/dist/types/src/Script.d.ts.map +1 -0
  52. package/dist/types/src/ServiceResolver.d.ts +89 -0
  53. package/dist/types/src/ServiceResolver.d.ts.map +1 -0
  54. package/dist/types/src/StorageService.d.ts +58 -0
  55. package/dist/types/src/StorageService.d.ts.map +1 -0
  56. package/dist/types/src/Template.d.ts +62 -0
  57. package/dist/types/src/Template.d.ts.map +1 -0
  58. package/dist/types/src/Template.test.d.ts +2 -0
  59. package/dist/types/src/Template.test.d.ts.map +1 -0
  60. package/dist/types/src/Trace.d.ts +268 -0
  61. package/dist/types/src/Trace.d.ts.map +1 -0
  62. package/dist/types/src/Trigger.d.ts +150 -0
  63. package/dist/types/src/Trigger.d.ts.map +1 -0
  64. package/dist/types/src/TriggerEvent.d.ts +75 -0
  65. package/dist/types/src/TriggerEvent.d.ts.map +1 -0
  66. package/dist/types/src/errors.d.ts +308 -0
  67. package/dist/types/src/errors.d.ts.map +1 -0
  68. package/dist/types/src/index.d.ts +17 -5
  69. package/dist/types/src/index.d.ts.map +1 -1
  70. package/dist/types/src/testing/definitions.d.ts +11 -0
  71. package/dist/types/src/testing/definitions.d.ts.map +1 -0
  72. package/dist/types/src/testing/fib.d.ts +8 -0
  73. package/dist/types/src/testing/fib.d.ts.map +1 -0
  74. package/dist/types/src/testing/index.d.ts +6 -3
  75. package/dist/types/src/testing/index.d.ts.map +1 -1
  76. package/dist/types/src/testing/reply.d.ts +4 -0
  77. package/dist/types/src/testing/reply.d.ts.map +1 -0
  78. package/dist/types/src/testing/sleep.d.ts +6 -0
  79. package/dist/types/src/testing/sleep.d.ts.map +1 -0
  80. package/dist/types/src/umbrella.test.d.ts +2 -0
  81. package/dist/types/src/umbrella.test.d.ts.map +1 -0
  82. package/dist/types/tsconfig.tsbuildinfo +1 -1
  83. package/package.json +31 -52
  84. package/src/Blueprint.ts +303 -0
  85. package/src/Credential.ts +53 -0
  86. package/src/LayerSpec.ts +91 -0
  87. package/src/McpServer.ts +44 -0
  88. package/src/Operation.ts +593 -0
  89. package/src/OperationHandlerSet.test.ts +92 -0
  90. package/src/OperationHandlerSet.ts +174 -0
  91. package/src/OperationRegistry.ts +50 -0
  92. package/src/Process.ts +504 -0
  93. package/src/Routine.ts +75 -0
  94. package/src/Script.ts +40 -0
  95. package/src/ServiceResolver.ts +194 -0
  96. package/src/StorageService.ts +101 -0
  97. package/src/Template.test.ts +151 -0
  98. package/src/Template.ts +122 -0
  99. package/src/Trace.ts +368 -0
  100. package/src/Trigger.ts +209 -0
  101. package/src/TriggerEvent.ts +64 -0
  102. package/src/errors.ts +71 -0
  103. package/src/index.ts +18 -32
  104. package/src/testing/definitions.ts +49 -0
  105. package/src/testing/fib.ts +22 -0
  106. package/src/testing/index.ts +13 -4
  107. package/src/testing/reply.ts +18 -0
  108. package/src/testing/sleep.ts +16 -0
  109. package/src/umbrella.test.ts +51 -0
  110. package/dist/lib/browser/chunk-UGMCTYCW.mjs +0 -3078
  111. package/dist/lib/browser/chunk-UGMCTYCW.mjs.map +0 -7
  112. package/dist/lib/browser/index.mjs +0 -55
  113. package/dist/lib/browser/meta.json +0 -1
  114. package/dist/lib/browser/testing/index.mjs +0 -173
  115. package/dist/lib/browser/testing/index.mjs.map +0 -7
  116. package/dist/lib/node/chunk-KCYHSFFU.cjs +0 -3120
  117. package/dist/lib/node/chunk-KCYHSFFU.cjs.map +0 -7
  118. package/dist/lib/node/index.cjs +0 -77
  119. package/dist/lib/node/index.cjs.map +0 -7
  120. package/dist/lib/node/meta.json +0 -1
  121. package/dist/lib/node/testing/index.cjs +0 -188
  122. package/dist/lib/node/testing/index.cjs.map +0 -7
  123. package/dist/lib/node-esm/chunk-WIABMPQE.mjs +0 -3080
  124. package/dist/lib/node-esm/chunk-WIABMPQE.mjs.map +0 -7
  125. package/dist/lib/node-esm/index.mjs +0 -56
  126. package/dist/lib/node-esm/meta.json +0 -1
  127. package/dist/lib/node-esm/testing/index.mjs +0 -174
  128. package/dist/lib/node-esm/testing/index.mjs.map +0 -7
  129. package/dist/types/src/compute-graph-registry.d.ts +0 -34
  130. package/dist/types/src/compute-graph-registry.d.ts.map +0 -1
  131. package/dist/types/src/compute-graph.d.ts +0 -64
  132. package/dist/types/src/compute-graph.d.ts.map +0 -1
  133. package/dist/types/src/compute-graph.test.d.ts +0 -2
  134. package/dist/types/src/compute-graph.test.d.ts.map +0 -1
  135. package/dist/types/src/compute-node.d.ts +0 -25
  136. package/dist/types/src/compute-node.d.ts.map +0 -1
  137. package/dist/types/src/functions/async-function.d.ts +0 -66
  138. package/dist/types/src/functions/async-function.d.ts.map +0 -1
  139. package/dist/types/src/functions/edge-function.d.ts +0 -20
  140. package/dist/types/src/functions/edge-function.d.ts.map +0 -1
  141. package/dist/types/src/functions/function-defs.d.ts +0 -11
  142. package/dist/types/src/functions/function-defs.d.ts.map +0 -1
  143. package/dist/types/src/functions/index.d.ts +0 -4
  144. package/dist/types/src/functions/index.d.ts.map +0 -1
  145. package/dist/types/src/hyperformula.test.d.ts +0 -2
  146. package/dist/types/src/hyperformula.test.d.ts.map +0 -1
  147. package/dist/types/src/testing/test-builder.d.ts +0 -15
  148. package/dist/types/src/testing/test-builder.d.ts.map +0 -1
  149. package/dist/types/src/testing/test-plugin.d.ts +0 -36
  150. package/dist/types/src/testing/test-plugin.d.ts.map +0 -1
  151. package/dist/types/src/testing/util.d.ts +0 -2
  152. package/dist/types/src/testing/util.d.ts.map +0 -1
  153. package/dist/types/src/types/hyperformula.d.ts +0 -11
  154. package/dist/types/src/types/hyperformula.d.ts.map +0 -1
  155. package/dist/types/src/types/index.d.ts +0 -3
  156. package/dist/types/src/types/index.d.ts.map +0 -1
  157. package/dist/types/src/types/types.d.ts +0 -20
  158. package/dist/types/src/types/types.d.ts.map +0 -1
  159. package/dist/types/src/types/types.test.d.ts +0 -2
  160. package/dist/types/src/types/types.test.d.ts.map +0 -1
  161. package/dist/types/src/util.d.ts +0 -2
  162. package/dist/types/src/util.d.ts.map +0 -1
  163. package/dist/vendor/hyperformula.mjs +0 -37145
  164. package/src/compute-graph-registry.ts +0 -90
  165. package/src/compute-graph.test.ts +0 -88
  166. package/src/compute-graph.ts +0 -259
  167. package/src/compute-node.ts +0 -61
  168. package/src/functions/async-function.ts +0 -179
  169. package/src/functions/edge-function.ts +0 -111
  170. package/src/functions/function-defs.ts +0 -2427
  171. package/src/functions/index.ts +0 -7
  172. package/src/hyperformula.test.ts +0 -14
  173. package/src/testing/test-builder.ts +0 -54
  174. package/src/testing/test-plugin.ts +0 -100
  175. package/src/testing/util.ts +0 -9
  176. package/src/types/hyperformula.ts +0 -19
  177. package/src/types/index.ts +0 -6
  178. package/src/types/types.test.ts +0 -91
  179. package/src/types/types.ts +0 -80
  180. package/src/util.ts +0 -8
  181. /package/dist/lib/{browser/index.mjs.map → neutral/StorageService.mjs.map} +0 -0
  182. /package/dist/lib/{node-esm/index.mjs.map → neutral/chunk-J5LGTIGS.mjs.map} +0 -0
package/src/index.ts CHANGED
@@ -1,36 +1,22 @@
1
1
  //
2
- // Copyright 2024 DXOS.org
2
+ // Copyright 2026 DXOS.org
3
3
  //
4
4
 
5
- // TODO(burdon): Separate hyperformula (client compute) from remote/edge functions.
5
+ export * from './errors';
6
6
 
7
- // TODO(burdon): Reconcile: types.
8
- // - dxos/graph
9
- // - dxos/compute
10
- // - dxos/functions
11
- // - dxos/assistant
12
- // - dxos/plugin-automation
13
- // - dxos/plugin-script
14
- // - dxos/plugin-sheet
15
-
16
- // TODO(burdon): Tech debt.
17
- // - move hyperformula defs from sheet to compute.
18
- // - standard from ./types exports for plugins.
19
- // - dxos/agent
20
- // - dxos/agent-functions
21
- // - dxos/mosaic, dxos-card
22
-
23
- // TODO(burdon): Reconcile UX.
24
- // - dxos/plugin-explorer
25
- // - dxos/plugin-canvas
26
- // - dxos/gem-*
27
-
28
- // TODO(burdon): Next
29
- // - dxos/plugin-search
30
- // - dxos/plugin-threads
31
-
32
- export * from './compute-graph';
33
- export * from './compute-graph-registry';
34
- export * from './compute-node';
35
- export * from './functions';
36
- export * from './types';
7
+ export * as Blueprint from './Blueprint';
8
+ export * as Credential from './Credential';
9
+ export * as McpServer from './McpServer';
10
+ export * as LayerSpec from './LayerSpec';
11
+ export * as Operation from './Operation';
12
+ export * as OperationHandlerSet from './OperationHandlerSet';
13
+ export * as OperationRegistry from './OperationRegistry';
14
+ export * as Process from './Process';
15
+ export * as Routine from './Routine';
16
+ export * as Script from './Script';
17
+ export * as ServiceResolver from './ServiceResolver';
18
+ export * as StorageService from './StorageService';
19
+ export * as Template from './Template';
20
+ export * as Trace from './Trace';
21
+ export * as Trigger from './Trigger';
22
+ export * as TriggerEvent from './TriggerEvent';
@@ -0,0 +1,49 @@
1
+ //
2
+ // Copyright 2025 DXOS.org
3
+ //
4
+
5
+ import * as Schema from 'effect/Schema';
6
+
7
+ import * as Operation from '../Operation';
8
+
9
+ export const Fibonacci = Operation.make({
10
+ meta: {
11
+ key: 'org.example.function.fib',
12
+ name: 'Fibonacci',
13
+ description: 'Function that calculates a Fibonacci number',
14
+ },
15
+ input: Schema.Struct({
16
+ iterations: Schema.optional(Schema.Number).annotations({
17
+ description: 'Number of iterations',
18
+ default: 100_000,
19
+ }),
20
+ }),
21
+ output: Schema.Struct({
22
+ result: Schema.String,
23
+ }),
24
+ }).pipe(Operation.intrinsic);
25
+
26
+ export const Reply = Operation.make({
27
+ meta: {
28
+ key: 'org.example.function.reply',
29
+ name: 'Reply',
30
+ description: 'Function that echoes the input',
31
+ },
32
+ input: Schema.Any,
33
+ output: Schema.Any,
34
+ }).pipe(Operation.intrinsic);
35
+
36
+ export const Sleep = Operation.make({
37
+ meta: {
38
+ key: 'org.example.function.sleep',
39
+ name: 'Sleep',
40
+ description: 'Function that sleeps for a given amount of time',
41
+ },
42
+ input: Schema.Struct({
43
+ duration: Schema.optional(Schema.Number).annotations({
44
+ description: 'Milliseconds to sleep',
45
+ default: 100_000,
46
+ }),
47
+ }),
48
+ output: Schema.Void,
49
+ }).pipe(Operation.intrinsic);
@@ -0,0 +1,22 @@
1
+ //
2
+ // Copyright 2025 DXOS.org
3
+ //
4
+
5
+ import * as Effect from 'effect/Effect';
6
+
7
+ import * as Operation from '../Operation';
8
+ import { Fibonacci } from './definitions';
9
+
10
+ export default Fibonacci.pipe(
11
+ Operation.withHandler(
12
+ Effect.fn(function* ({ iterations = 100_000 }) {
13
+ let a = 0n;
14
+ let b = 1n;
15
+ for (let i = 0; i < iterations; i++) {
16
+ a += b;
17
+ b = a - b;
18
+ }
19
+ return { result: a.toString() };
20
+ }),
21
+ ),
22
+ );
@@ -1,7 +1,16 @@
1
1
  //
2
- // Copyright 2024 DXOS.org
2
+ // Copyright 2025 DXOS.org
3
3
  //
4
4
 
5
- export * from './test-builder';
6
- export * from './test-plugin';
7
- export * from './util';
5
+ import * as OperationHandlerSet from '../OperationHandlerSet';
6
+
7
+ export { Fibonacci, Reply, Sleep } from './definitions';
8
+ export { default as FibonacciHandler } from './fib';
9
+ export { default as ReplyHandler } from './reply';
10
+ export { default as SleepHandler } from './sleep';
11
+
12
+ export const ExampleHandlers = OperationHandlerSet.lazy(
13
+ () => import('./fib'),
14
+ () => import('./reply'),
15
+ () => import('./sleep'),
16
+ );
@@ -0,0 +1,18 @@
1
+ //
2
+ // Copyright 2025 DXOS.org
3
+ //
4
+
5
+ import * as Console from 'effect/Console';
6
+ import * as Effect from 'effect/Effect';
7
+
8
+ import * as Operation from '../Operation';
9
+ import { Reply } from './definitions';
10
+
11
+ export default Reply.pipe(
12
+ Operation.withHandler(
13
+ Effect.fn(function* (input) {
14
+ yield* Console.log('reply', { input });
15
+ return input;
16
+ }),
17
+ ),
18
+ );
@@ -0,0 +1,16 @@
1
+ //
2
+ // Copyright 2025 DXOS.org
3
+ //
4
+
5
+ import * as Effect from 'effect/Effect';
6
+
7
+ import * as Operation from '../Operation';
8
+ import { Sleep } from './definitions';
9
+
10
+ export default Sleep.pipe(
11
+ Operation.withHandler(
12
+ Effect.fn(function* ({ duration = 100_000 }) {
13
+ yield* Effect.sleep(duration);
14
+ }),
15
+ ),
16
+ );
@@ -0,0 +1,51 @@
1
+ //
2
+ // Copyright 2026 DXOS.org
3
+ //
4
+
5
+ import { describe, test } from 'vitest';
6
+
7
+ import {
8
+ Blueprint,
9
+ Credential,
10
+ FunctionNotFoundError,
11
+ Operation,
12
+ OperationHandlerSet,
13
+ OperationRegistry,
14
+ Process,
15
+ Routine,
16
+ Script,
17
+ ServiceResolver,
18
+ StorageService,
19
+ Template,
20
+ Trace,
21
+ Trigger,
22
+ TriggerEvent,
23
+ } from './index';
24
+
25
+ describe('umbrella re-exports', () => {
26
+ test('top-level re-exports preserve source-package namespace nesting', ({ expect }) => {
27
+ // Operation primitives.
28
+ expect(Operation).toBeDefined();
29
+ expect(OperationHandlerSet).toBeDefined();
30
+ expect(OperationRegistry).toBeDefined();
31
+
32
+ // Blueprint primitives.
33
+ expect(Blueprint).toBeDefined();
34
+ expect(Blueprint.make).toBeTypeOf('function');
35
+ expect(Routine).toBeDefined();
36
+ expect(Template).toBeDefined();
37
+
38
+ // Function primitives.
39
+ expect(Process).toBeDefined();
40
+ expect(Trigger).toBeDefined();
41
+ expect(TriggerEvent).toBeDefined();
42
+ expect(Script).toBeDefined();
43
+ expect(Trace).toBeDefined();
44
+ expect(ServiceResolver).toBeDefined();
45
+ expect(StorageService).toBeDefined();
46
+ expect(Credential).toBeDefined();
47
+
48
+ // Error classes exported top-level.
49
+ expect(FunctionNotFoundError).toBeDefined();
50
+ });
51
+ });