@neocompose/cli 0.24.5 → 0.24.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.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,14 @@
1
1
  # Changelog
2
2
 
3
+ ## [0.24.6] - 2026-08-08
4
+
5
+ ### Fixed
6
+
7
+ - Preserve named delegate method groups such as `this.SelectTorso` as lexical
8
+ delegate source during CLI lowering. This lets construction bind the selector
9
+ to each object instance instead of persisting an unbound member target that
10
+ makes animation tracks disappear in preview.
11
+
3
12
  ## [0.24.5] - 2026-08-07
4
13
 
5
14
  ### Fixed
package/dist/neo.mjs CHANGED
@@ -88472,15 +88472,13 @@ function lowerFunctionReference(context, expression, ownerClassId) {
88472
88472
  return { functionMemberId: target.id };
88473
88473
  }
88474
88474
  function lowerDelegateValue(context, expression, ownerClassId, authoredSlice) {
88475
- if (expression.kind === "lambda") {
88476
- const code = initializerExpressionSlice(authoredSlice);
88477
- if (code === void 0) {
88478
- throw new Error(
88479
- "Delegate lambdas require recoverable authored source so the server can compile their closure."
88480
- );
88481
- }
88482
- return { code };
88475
+ const code = initializerExpressionSlice(authoredSlice);
88476
+ if (code === void 0) {
88477
+ throw new Error(
88478
+ "Delegate values require recoverable authored source so the server can compile their lexical receiver."
88479
+ );
88483
88480
  }
88481
+ if (expression.kind === "lambda") return { code };
88484
88482
  const path = memberPath(expression);
88485
88483
  const symbol = path?.startsWith("this.") ? path.slice("this.".length) : path;
88486
88484
  if (symbol === null || symbol === void 0 || symbol.includes(".")) {
@@ -88499,7 +88497,7 @@ function lowerDelegateValue(context, expression, ownerClassId, authoredSlice) {
88499
88497
  `Delegate ${symbol} does not resolve to a function, NSFunction, or NSDelegate member.`
88500
88498
  );
88501
88499
  }
88502
- return { memberId: target.id, valueId: null };
88500
+ return { code };
88503
88501
  }
88504
88502
  function fileTargetId(context, expression, registry) {
88505
88503
  const path = memberPath(expression);
@@ -101548,7 +101546,7 @@ var init_registry2 = __esm({
101548
101546
  PROJECT_SCHEMA_CONTRACT = Object.freeze({
101549
101547
  formatVersion: 3,
101550
101548
  contractVersion: "3.9",
101551
- cliVersion: "0.24.5",
101549
+ cliVersion: "0.24.6",
101552
101550
  projectFileUploadBatchSize: 32,
101553
101551
  documentRecords: {
101554
101552
  member: {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@neocompose/cli",
3
- "version": "0.24.5",
3
+ "version": "0.24.6",
4
4
  "description": "Neo Compose native project-source CLI with bidirectional sync.",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -9,7 +9,7 @@ description: >-
9
9
  `@neocompose/cli` or `node cli/bin/neo.mjs` in the neo-compose repository.
10
10
  ---
11
11
 
12
- <!-- reviewed-through-cli: 0.24.5 -->
12
+ <!-- reviewed-through-cli: 0.24.6 -->
13
13
 
14
14
  # Neo Compose CLI
15
15
 
@@ -181,7 +181,9 @@ pulled rows.
181
181
  A selector argument such as `this.SelectPants` is evaluated in the lexical
182
182
  scope of the class that declares the clip. Here `this` is the `LegPart`, not
183
183
  the nested track row or an outer object instance that later receives a copy of
184
- the declaration default.
184
+ the declaration default. Keep that named method group as authored delegate
185
+ source through lowering so construction can capture each concrete `LegPart`;
186
+ an unbound member target has no instance on which to invoke the selector.
185
187
 
186
188
  Each track has `StartFrame`, `Direction` (`.Forward` or `.Reverse`), and a
187
189
  crop window `OffsetStartIndex`/`OffsetEndIndex`. Crop before reversing, then
@@ -82,7 +82,7 @@ wrappers.
82
82
  The marker near the top of `SKILL.md` must exactly match the package version:
83
83
 
84
84
  ```html
85
- <!-- reviewed-through-cli: 0.24.5 -->
85
+ <!-- reviewed-through-cli: 0.24.6 -->
86
86
  ```
87
87
 
88
88
  The quoted version above is checked too, so this instruction cannot go stale