@sprig-and-prose/sprig 0.8.0 → 0.9.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 (36) hide show
  1. package/CHANGELOG.md +20 -0
  2. package/dist/cli.d.ts.map +1 -1
  3. package/dist/cli.js +58 -18
  4. package/dist/cli.js.map +1 -1
  5. package/dist/scene-compiler.d.ts +9 -2
  6. package/dist/scene-compiler.d.ts.map +1 -1
  7. package/dist/scene-compiler.js +55 -39
  8. package/dist/scene-compiler.js.map +1 -1
  9. package/dist/scene-discovery.d.ts +11 -0
  10. package/dist/scene-discovery.d.ts.map +1 -0
  11. package/dist/scene-discovery.js +41 -0
  12. package/dist/scene-discovery.js.map +1 -0
  13. package/package.json +1 -1
  14. package/src/cli.ts +77 -19
  15. package/src/scene-compiler.ts +62 -39
  16. package/src/scene-discovery.ts +51 -0
  17. package/tests/compile-scene-only.test.js +109 -0
  18. package/tests/fixtures/scene-only-empty/.gitkeep +0 -0
  19. package/tests/fixtures/scene-only-invalid/.sprig-out/bad.error.txt +2 -0
  20. package/tests/fixtures/scene-only-invalid/bad.scene.prose +10 -0
  21. package/tests/fixtures/scene-only-valid/.sprig-emit/AnotherScene.scene.json +15 -0
  22. package/tests/fixtures/scene-only-valid/.sprig-emit/SimpleScene.scene.json +15 -0
  23. package/tests/fixtures/scene-only-valid/.sprig-out/AnotherScene.scene.json +15 -0
  24. package/tests/fixtures/scene-only-valid/.sprig-out/SimpleScene.scene.json +15 -0
  25. package/tests/fixtures/scene-only-valid/another.scene.prose +3 -0
  26. package/tests/fixtures/scene-only-valid/simple.scene.prose +3 -0
  27. package/tests/fixtures/universe-unchanged/.sprig/TestScene.scene.json +15 -0
  28. package/tests/fixtures/universe-unchanged/.sprig/manifest.json +62 -0
  29. package/tests/fixtures/universe-unchanged/custom-out/TestScene.scene.json +15 -0
  30. package/tests/fixtures/universe-unchanged/custom-out/manifest.json +62 -0
  31. package/tests/fixtures/universe-unchanged/scene.scene.prose +3 -0
  32. package/tests/fixtures/universe-unchanged/universe.prose +5 -0
  33. package/tests/fixtures/universe-upstream/subdir/.sprig/OneScene.scene.json +15 -0
  34. package/tests/fixtures/universe-upstream/subdir/.sprig/manifest.json +62 -0
  35. package/tests/fixtures/universe-upstream/subdir/one.scene.prose +3 -0
  36. package/tests/fixtures/universe-upstream/universe.prose +5 -0
@@ -0,0 +1,62 @@
1
+ {
2
+ "version": 1,
3
+ "universes": {
4
+ "TestUniverse": {
5
+ "name": "TestUniverse",
6
+ "root": "TestUniverse:universe:TestUniverse"
7
+ }
8
+ },
9
+ "nodes": {
10
+ "TestUniverse:universe:TestUniverse": {
11
+ "id": "TestUniverse:universe:TestUniverse",
12
+ "kind": "universe",
13
+ "name": "TestUniverse",
14
+ "children": [],
15
+ "source": {
16
+ "file": "/home/grumpy/git/sprig/packages/cli/tests/fixtures/universe-unchanged/universe.prose",
17
+ "start": {
18
+ "line": 1,
19
+ "col": 1,
20
+ "offset": 0
21
+ },
22
+ "end": {
23
+ "line": 5,
24
+ "col": 2,
25
+ "offset": 63
26
+ }
27
+ },
28
+ "describe": {
29
+ "raw": "\n A test universe.\n ",
30
+ "normalized": "\n A test universe.\n ",
31
+ "source": {
32
+ "file": "/home/grumpy/git/sprig/packages/cli/tests/fixtures/universe-unchanged/universe.prose",
33
+ "start": {
34
+ "line": 2,
35
+ "col": 3,
36
+ "offset": 26
37
+ },
38
+ "end": {
39
+ "line": 4,
40
+ "col": 4,
41
+ "offset": 61
42
+ }
43
+ }
44
+ }
45
+ }
46
+ },
47
+ "edges": [],
48
+ "edgesAsserted": [],
49
+ "diagnostics": [],
50
+ "repositories": {},
51
+ "references": {},
52
+ "arcs": {},
53
+ "documentsByName": {},
54
+ "relationshipDecls": {
55
+ "TestUniverse": {}
56
+ },
57
+ "generatedAt": "2026-02-21T20:23:33.273Z",
58
+ "meta": {
59
+ "generatedAt": "2026-02-21T20:23:33.273Z",
60
+ "manifestId": "git:e97c34ae2cb10839cafef399d1ef329411e3bd22"
61
+ }
62
+ }
@@ -0,0 +1,3 @@
1
+ scene TestScene {
2
+ actor IntActor { integer }
3
+ }
@@ -0,0 +1,5 @@
1
+ universe TestUniverse {
2
+ describe {
3
+ A test universe.
4
+ }
5
+ }
@@ -0,0 +1,15 @@
1
+ {
2
+ "sceneName": "OneScene",
3
+ "actors": {
4
+ "IntActor": {
5
+ "type": "integer",
6
+ "identity": []
7
+ }
8
+ },
9
+ "portals": {},
10
+ "derived": {},
11
+ "meta": {
12
+ "generatedAt": "2026-02-21T20:23:33.807Z",
13
+ "manifestId": "git:e97c34ae2cb10839cafef399d1ef329411e3bd22"
14
+ }
15
+ }
@@ -0,0 +1,62 @@
1
+ {
2
+ "version": 1,
3
+ "universes": {
4
+ "UpstreamUniverse": {
5
+ "name": "UpstreamUniverse",
6
+ "root": "UpstreamUniverse:universe:UpstreamUniverse"
7
+ }
8
+ },
9
+ "nodes": {
10
+ "UpstreamUniverse:universe:UpstreamUniverse": {
11
+ "id": "UpstreamUniverse:universe:UpstreamUniverse",
12
+ "kind": "universe",
13
+ "name": "UpstreamUniverse",
14
+ "children": [],
15
+ "source": {
16
+ "file": "/home/grumpy/git/sprig/packages/cli/tests/fixtures/universe-upstream/universe.prose",
17
+ "start": {
18
+ "line": 1,
19
+ "col": 1,
20
+ "offset": 0
21
+ },
22
+ "end": {
23
+ "line": 5,
24
+ "col": 2,
25
+ "offset": 80
26
+ }
27
+ },
28
+ "describe": {
29
+ "raw": "\n Universe in parent directory.\n ",
30
+ "normalized": "\n Universe in parent directory.\n ",
31
+ "source": {
32
+ "file": "/home/grumpy/git/sprig/packages/cli/tests/fixtures/universe-upstream/universe.prose",
33
+ "start": {
34
+ "line": 2,
35
+ "col": 3,
36
+ "offset": 30
37
+ },
38
+ "end": {
39
+ "line": 4,
40
+ "col": 4,
41
+ "offset": 78
42
+ }
43
+ }
44
+ }
45
+ }
46
+ },
47
+ "edges": [],
48
+ "edgesAsserted": [],
49
+ "diagnostics": [],
50
+ "repositories": {},
51
+ "references": {},
52
+ "arcs": {},
53
+ "documentsByName": {},
54
+ "relationshipDecls": {
55
+ "UpstreamUniverse": {}
56
+ },
57
+ "generatedAt": "2026-02-21T20:23:33.801Z",
58
+ "meta": {
59
+ "generatedAt": "2026-02-21T20:23:33.801Z",
60
+ "manifestId": "git:e97c34ae2cb10839cafef399d1ef329411e3bd22"
61
+ }
62
+ }
@@ -0,0 +1,3 @@
1
+ scene OneScene {
2
+ actor IntActor { integer }
3
+ }
@@ -0,0 +1,5 @@
1
+ universe UpstreamUniverse {
2
+ describe {
3
+ Universe in parent directory.
4
+ }
5
+ }