@dxos/app-graph 0.10.0 → 0.11.1

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 (57) hide show
  1. package/dist/lib/chunk-graph-builder.mjs +1901 -0
  2. package/dist/lib/chunk-graph-builder.mjs.map +1 -0
  3. package/dist/lib/index.mjs +281 -0
  4. package/dist/lib/index.mjs.map +1 -0
  5. package/dist/lib/scheduler.browser.mjs +2 -0
  6. package/dist/lib/scheduler.mjs +12 -0
  7. package/dist/lib/scheduler.mjs.map +1 -0
  8. package/dist/lib/testing.mjs +28 -0
  9. package/dist/lib/testing.mjs.map +1 -0
  10. package/dist/types/src/atoms.d.ts +1 -1
  11. package/dist/types/src/atoms.d.ts.map +1 -1
  12. package/dist/types/src/graph-builder.d.ts +128 -9
  13. package/dist/types/src/graph-builder.d.ts.map +1 -1
  14. package/dist/types/src/graph.d.ts +4 -1
  15. package/dist/types/src/graph.d.ts.map +1 -1
  16. package/dist/types/src/index.d.ts +1 -0
  17. package/dist/types/src/index.d.ts.map +1 -1
  18. package/dist/types/src/node-matcher.d.ts +1 -1
  19. package/dist/types/src/node-matcher.d.ts.map +1 -1
  20. package/dist/types/src/node.d.ts +14 -2
  21. package/dist/types/src/node.d.ts.map +1 -1
  22. package/dist/types/src/path-resolution.d.ts +69 -0
  23. package/dist/types/src/path-resolution.d.ts.map +1 -0
  24. package/dist/types/src/path-resolution.test.d.ts +2 -0
  25. package/dist/types/src/path-resolution.test.d.ts.map +1 -0
  26. package/dist/types/src/stories/EchoGraph.stories.d.ts.map +1 -1
  27. package/dist/types/src/testing/setup-graph-builder.d.ts +1 -1
  28. package/dist/types/src/testing/setup-graph-builder.d.ts.map +1 -1
  29. package/dist/types/src/util.test.d.ts +2 -0
  30. package/dist/types/src/util.test.d.ts.map +1 -0
  31. package/dist/types/tsconfig.tsbuildinfo +1 -1
  32. package/package.json +22 -21
  33. package/src/atoms.ts +1 -1
  34. package/src/graph-builder.test.ts +21 -1
  35. package/src/graph-builder.ts +327 -58
  36. package/src/graph.test.ts +1 -1
  37. package/src/graph.ts +22 -16
  38. package/src/index.ts +1 -0
  39. package/src/node-matcher.test.ts +1 -1
  40. package/src/node-matcher.ts +1 -1
  41. package/src/node.ts +19 -2
  42. package/src/path-resolution.test.ts +520 -0
  43. package/src/path-resolution.ts +355 -0
  44. package/src/stories/EchoGraph.stories.tsx +97 -121
  45. package/src/testing/setup-graph-builder.ts +1 -1
  46. package/src/util.test.ts +85 -0
  47. package/dist/lib/neutral/chunk-J5LGTIGS.mjs +0 -10
  48. package/dist/lib/neutral/chunk-J5LGTIGS.mjs.map +0 -7
  49. package/dist/lib/neutral/chunk-YMTZ7MPW.mjs +0 -1509
  50. package/dist/lib/neutral/chunk-YMTZ7MPW.mjs.map +0 -7
  51. package/dist/lib/neutral/index.mjs +0 -40
  52. package/dist/lib/neutral/index.mjs.map +0 -7
  53. package/dist/lib/neutral/meta.json +0 -1
  54. package/dist/lib/neutral/scheduler.mjs +0 -15
  55. package/dist/lib/neutral/scheduler.mjs.map +0 -7
  56. package/dist/lib/neutral/testing/index.mjs +0 -40
  57. package/dist/lib/neutral/testing/index.mjs.map +0 -7
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dxos/app-graph",
3
- "version": "0.10.0",
3
+ "version": "0.11.1",
4
4
  "description": "Constructs knowledge graphs for the purpose of building applications on top of",
5
5
  "homepage": "https://dxos.org",
6
6
  "bugs": "https://github.com/dxos/dxos/issues",
@@ -19,19 +19,19 @@
19
19
  "default": "./src/scheduler.ts"
20
20
  },
21
21
  "types": "./dist/types/src/scheduler.d.ts",
22
- "default": "./dist/lib/neutral/scheduler.mjs"
22
+ "default": "./dist/lib/scheduler.mjs"
23
23
  }
24
24
  },
25
25
  "exports": {
26
26
  ".": {
27
27
  "source": "./src/index.ts",
28
28
  "types": "./dist/types/src/index.d.ts",
29
- "default": "./dist/lib/neutral/index.mjs"
29
+ "import": "./dist/lib/index.mjs"
30
30
  },
31
31
  "./testing": {
32
32
  "source": "./src/testing/index.ts",
33
33
  "types": "./dist/types/src/testing/index.d.ts",
34
- "default": "./dist/lib/neutral/testing/index.mjs"
34
+ "import": "./dist/lib/testing.mjs"
35
35
  }
36
36
  },
37
37
  "types": "dist/types/src/index.d.ts",
@@ -40,14 +40,16 @@
40
40
  "src"
41
41
  ],
42
42
  "dependencies": {
43
+ "@effect-atom/atom": "^0.5.3",
43
44
  "main-thread-scheduling": "^14.1.1",
44
- "@dxos/async": "0.10.0",
45
- "@dxos/debug": "0.10.0",
46
- "@dxos/echo": "0.10.0",
47
- "@dxos/keys": "0.10.0",
48
- "@dxos/log": "0.10.0",
49
- "@dxos/util": "0.10.0",
50
- "@dxos/invariant": "0.10.0"
45
+ "@dxos/async": "0.11.1",
46
+ "@dxos/debug": "0.11.1",
47
+ "@dxos/echo": "0.11.1",
48
+ "@dxos/effect": "0.11.1",
49
+ "@dxos/invariant": "0.11.1",
50
+ "@dxos/keys": "0.11.1",
51
+ "@dxos/log": "0.11.1",
52
+ "@dxos/util": "0.11.1"
51
53
  },
52
54
  "devDependencies": {
53
55
  "@effect-atom/atom-react": "^0.5.0",
@@ -57,14 +59,13 @@
57
59
  "effect": "3.21.4",
58
60
  "react": "~19.2.7",
59
61
  "react-dom": "~19.2.7",
60
- "vite": "^8.0.16",
61
- "@dxos/react-client": "0.10.0",
62
- "@dxos/random": "0.10.0",
63
- "@dxos/react-ui": "0.10.0",
64
- "@dxos/react-ui-list": "0.10.0",
65
- "@dxos/react-ui-tabs": "0.10.0",
66
- "@dxos/ui-theme": "0.10.0",
67
- "@dxos/storybook-utils": "0.10.0"
62
+ "vite": "^8.1.4",
63
+ "@dxos/random": "0.11.1",
64
+ "@dxos/react-ui": "0.11.1",
65
+ "@dxos/react-client": "0.11.1",
66
+ "@dxos/react-ui-tabs": "0.11.1",
67
+ "@dxos/storybook-utils": "0.11.1",
68
+ "@dxos/ui-theme": "0.11.1"
68
69
  },
69
70
  "peerDependencies": {
70
71
  "@effect-atom/atom-react": "^0.5.0",
@@ -72,8 +73,8 @@
72
73
  "effect": "3.21.4",
73
74
  "react": "~19.2.7",
74
75
  "react-dom": "~19.2.7",
75
- "@dxos/react-ui": "0.10.0",
76
- "@dxos/ui-theme": "0.10.0"
76
+ "@dxos/react-ui": "^0.11.1",
77
+ "@dxos/ui-theme": "^0.11.1"
77
78
  },
78
79
  "publishConfig": {
79
80
  "access": "public"
package/src/atoms.ts CHANGED
@@ -2,7 +2,7 @@
2
2
  // Copyright 2025 DXOS.org
3
3
  //
4
4
 
5
- import { Atom } from '@effect-atom/atom-react';
5
+ import { Atom } from '@effect-atom/atom';
6
6
 
7
7
  import { type MulticastObservable } from '@dxos/async';
8
8
 
@@ -2,7 +2,7 @@
2
2
  // Copyright 2023 DXOS.org
3
3
  //
4
4
 
5
- import { Atom, Registry } from '@effect-atom/atom-react';
5
+ import { Atom, Registry } from '@effect-atom/atom';
6
6
  import * as Context from 'effect/Context';
7
7
  import * as Effect from 'effect/Effect';
8
8
  import * as Function from 'effect/Function';
@@ -1652,4 +1652,24 @@ describe('GraphBuilder', () => {
1652
1652
  expect(visited[2].id).to.equal('root/second');
1653
1653
  });
1654
1654
  });
1655
+
1656
+ describe('invalid local id', () => {
1657
+ test('drops an extension with an invalid id rather than throwing', ({ expect }) => {
1658
+ expect(
1659
+ GraphBuilder.createExtensionRaw({
1660
+ id: 'gallery-article',
1661
+ connector: () => Atom.make([{ id: 'foo', type: EXAMPLE_TYPE, data: null }]),
1662
+ }),
1663
+ ).toEqual([]);
1664
+ });
1665
+
1666
+ test('keeps an extension with a valid id', ({ expect }) => {
1667
+ expect(
1668
+ GraphBuilder.createExtensionRaw({
1669
+ id: 'galleryArticle',
1670
+ connector: () => Atom.make([{ id: 'foo', type: EXAMPLE_TYPE, data: null }]),
1671
+ }).length,
1672
+ ).toBeGreaterThan(0);
1673
+ });
1674
+ });
1655
1675
  });