@neocompose/cli 0.11.1 → 0.13.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.
Files changed (3) hide show
  1. package/CHANGELOG.md +51 -0
  2. package/dist/neo.mjs +11624 -10191
  3. package/package.json +1 -1
package/CHANGELOG.md CHANGED
@@ -1,5 +1,56 @@
1
1
  # Changelog
2
2
 
3
+ ## [0.13.0] - 2026-07-28
4
+
5
+ ### Added
6
+
7
+ - Author a single field of a structured leaf member inside an animation
8
+ override graph. P42 gives `SpriteInfo`, `Vector2`, `Vector2Int`, `Vector3`,
9
+ `Vector3Int` and `Color` a named field surface — `FileId`/`SliceIndex`,
10
+ `x`/`y`/`z`, `r`/`g`/`b`/`a` — and a frame's `Overrides` can now name one of
11
+ them: `Sprite = new { SliceIndex = 2 }` animates the slice while the sheet
12
+ stays whatever the played instance holds, and `Position = new { y = 0.5 }`
13
+ leaves `x` and `z` alone. The explicit `new Partial<SpriteInfo> { ... }` form
14
+ is accepted alongside the inferred `new { ... }`, matching how a class
15
+ override already reads, and an empty `new { }` still means no change.
16
+ - Accept a bare `Images.<Name>` in a `FileId` field position. It is the one
17
+ place a sprite file is named without a slice; as a whole sprite value it is
18
+ still rejected in favour of `Images.<Name>.Slice(index)`.
19
+
20
+ ### Changed
21
+
22
+ - Reject a non-integer component of a `Vector2Int` or `Vector3Int` in source,
23
+ naming the member and the field. `new(0.5, 0.5)` used to lower unchecked and
24
+ fail later at commit against a server guard, which reported the record rather
25
+ than the line that wrote it.
26
+ - Reject `new { ... }` for a structured leaf outside an animation override
27
+ graph — a member declaration default, or a top-level value binding — instead
28
+ of accepting a partial value in a position that can never be composed with
29
+ anything.
30
+
31
+ ### Fixed
32
+
33
+ - Stop emitting the literal text `null` for a sprite value that carries no
34
+ `fileId`. Now that a sprite field can be overridden on its own, a `neo pull`
35
+ of such a value wrote source that the next `neo push` read as a deletion of
36
+ the override.
37
+
38
+ ## [0.12.0] - 2026-07-28
39
+
40
+ ### Added
41
+
42
+ - Warn on `neo push` when an animation clip's owning class is also
43
+ instantiated as a nested `Children` row. P41 lets the players skip a child
44
+ reference they cannot resolve instead of throwing, which would otherwise
45
+ make one real defect silent: a nested row's own children are re-lowered
46
+ copies, so a clip naming its owner's class-default rows resolves none of
47
+ them on that instance. The advisory names the clip and the nested use site
48
+ it found, and points at authored provenance for nested rows (P44) or a
49
+ constructor (P43) as the fix. It never blocks the push, and it is removed
50
+ when P44 lands. `neo push --json`, `neo status --json` and `neo diff --json`
51
+ carry the same text in a new `warnings` array, separate from the blocking
52
+ `diagnostics`.
53
+
3
54
  ## [0.11.1] - 2026-07-27
4
55
 
5
56
  ### Fixed