@knapsack/spec-utils 4.94.4 → 4.94.5--canary.7781.96e1884.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.
- package/dist/analyze-symbol.d.ts.map +1 -1
- package/dist/analyze-symbol.js +7 -2
- package/dist/analyze-symbol.js.map +1 -1
- package/dist/analyze-type.d.ts +9 -0
- package/dist/analyze-type.d.ts.map +1 -1
- package/dist/analyze-type.js +63 -0
- package/dist/analyze-type.js.map +1 -1
- package/dist/test-fixtures/iterable-props.d.ts +32 -0
- package/dist/test-fixtures/iterable-props.d.ts.map +1 -0
- package/dist/test-fixtures/iterable-props.js +12 -0
- package/dist/test-fixtures/iterable-props.js.map +1 -0
- package/package.json +10 -10
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"analyze-symbol.d.ts","sourceRoot":"","sources":["../src/analyze-symbol.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,YAAY,CAAC;AAE5B,OAAO,EACL,KAAK,wBAAwB,EAC7B,KAAK,UAAU,EAEhB,MAAM,YAAY,CAAC;AA6CpB;;;;;GAKG;AACH,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,EAAE,CAAC,MAAM,GAChB,wBAAwB,GAAG,SAAS,CAWtC;AAED,wBAAgB,aAAa,CAAC,EAC5B,MAAM,EACN,OAAO,EACP,cAA0B,EAC1B,KAAS,EACT,QAAY,GACb,EAAE;IACD,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC;IAClB,OAAO,EAAE,EAAE,CAAC,WAAW,CAAC;IACxB,wCAAwC;IACxC,cAAc,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC;IAChC,8BAA8B;IAC9B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,sCAAsC;IACtC,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,GAAG,UAAU,
|
|
1
|
+
{"version":3,"file":"analyze-symbol.d.ts","sourceRoot":"","sources":["../src/analyze-symbol.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,YAAY,CAAC;AAE5B,OAAO,EACL,KAAK,wBAAwB,EAC7B,KAAK,UAAU,EAEhB,MAAM,YAAY,CAAC;AA6CpB;;;;;GAKG;AACH,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,EAAE,CAAC,MAAM,GAChB,wBAAwB,GAAG,SAAS,CAWtC;AAED,wBAAgB,aAAa,CAAC,EAC5B,MAAM,EACN,OAAO,EACP,cAA0B,EAC1B,KAAS,EACT,QAAY,GACb,EAAE;IACD,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC;IAClB,OAAO,EAAE,EAAE,CAAC,WAAW,CAAC;IACxB,wCAAwC;IACxC,cAAc,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC;IAChC,8BAA8B;IAC9B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,sCAAsC;IACtC,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,GAAG,UAAU,CAiRb"}
|
package/dist/analyze-symbol.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import ts from 'typescript';
|
|
2
|
-
import { analyzeType } from './analyze-type.js';
|
|
2
|
+
import { analyzeType, isNonArrayIterable } from './analyze-type.js';
|
|
3
3
|
import { getSetFlags } from './utils.js';
|
|
4
4
|
/**
|
|
5
5
|
* React DOM type interfaces whose properties are flattened into a component's
|
|
@@ -263,7 +263,12 @@ export function analyzeSymbol({ symbol, checker, symbolsVisited = new Set(), dep
|
|
|
263
263
|
// this check could be better: lots of things are `ts.TypeFlags.Object`
|
|
264
264
|
typeFlags.includes('Object') &&
|
|
265
265
|
// here we exclude things that are technically `ts.TypeFlags.Object` but are not "objects" in JS
|
|
266
|
-
!isArray
|
|
266
|
+
!isArray &&
|
|
267
|
+
// Non-array iterables (Set, Iterable<T>, etc.) carry the Object flag and a
|
|
268
|
+
// `[Symbol.iterator]` member; without this they'd be walked as objects and
|
|
269
|
+
// emit a spurious `__@iterator` property. Delegate them to analyzeType,
|
|
270
|
+
// which represents them as arrays of their element type.
|
|
271
|
+
!isNonArrayIterable(type)) {
|
|
267
272
|
typeInfo = {
|
|
268
273
|
type: 'object',
|
|
269
274
|
tsRawType: checker.typeToString(type, undefined, ts.TypeFormatFlags.NoTruncation),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"analyze-symbol.js","sourceRoot":"","sources":["../src/analyze-symbol.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,YAAY,CAAC;AAC5B,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"analyze-symbol.js","sourceRoot":"","sources":["../src/analyze-symbol.ts"],"names":[],"mappings":"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"}
|
package/dist/analyze-type.d.ts
CHANGED
|
@@ -1,5 +1,14 @@
|
|
|
1
1
|
import ts from 'typescript';
|
|
2
2
|
import { type TypeInfo } from './types.js';
|
|
3
|
+
/**
|
|
4
|
+
* True when a type is iterable (exposes a `[Symbol.iterator]` member) but is not
|
|
5
|
+
* an array/array-like — e.g. `Set`, `Iterable<T>`, `IterableIterator<T>`, and the
|
|
6
|
+
* `Set` arm of react-stately's `Selection`. Arrays reach the dedicated array
|
|
7
|
+
* branch first, and primitives like `string` never reach here, so this only
|
|
8
|
+
* matches non-array iterables. Without it these fall through to the object
|
|
9
|
+
* branch and emit a bogus `__@iterator` property ("should be object").
|
|
10
|
+
*/
|
|
11
|
+
export declare function isNonArrayIterable(type: ts.Type): boolean;
|
|
3
12
|
/**
|
|
4
13
|
* Analyzes a TypeScript type and returns a structured TypeInfo representation
|
|
5
14
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"analyze-type.d.ts","sourceRoot":"","sources":["../src/analyze-type.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,YAAY,CAAC;AAC5B,OAAO,EACL,KAAK,QAAQ,EAGd,MAAM,YAAY,CAAC;AA6CpB;;GAEG;AACH,wBAAgB,WAAW,CAAC,EAC1B,IAAI,EACJ,OAAO,EACP,UAAU,EACV,YAA0C,EAC1C,KAAS;AACT;;;GAGG;AACH,QAAY,GACb,EAAE;IACD,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC;IACd,OAAO,EAAE,EAAE,CAAC,WAAW,CAAC;IACxB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,YAAY,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IACrC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,GAAG,QAAQ,
|
|
1
|
+
{"version":3,"file":"analyze-type.d.ts","sourceRoot":"","sources":["../src/analyze-type.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,YAAY,CAAC;AAC5B,OAAO,EACL,KAAK,QAAQ,EAGd,MAAM,YAAY,CAAC;AA6CpB;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,GAAG,OAAO,CAyBzD;AAkBD;;GAEG;AACH,wBAAgB,WAAW,CAAC,EAC1B,IAAI,EACJ,OAAO,EACP,UAAU,EACV,YAA0C,EAC1C,KAAS;AACT;;;GAGG;AACH,QAAY,GACb,EAAE;IACD,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC;IACd,OAAO,EAAE,EAAE,CAAC,WAAW,CAAC;IACxB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,YAAY,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IACrC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,GAAG,QAAQ,CA0VX"}
|
package/dist/analyze-type.js
CHANGED
|
@@ -30,6 +30,47 @@ function getTypeId(type, checker) {
|
|
|
30
30
|
typeIdMap.set(type, newId);
|
|
31
31
|
return newId;
|
|
32
32
|
}
|
|
33
|
+
/**
|
|
34
|
+
* True when a type is iterable (exposes a `[Symbol.iterator]` member) but is not
|
|
35
|
+
* an array/array-like — e.g. `Set`, `Iterable<T>`, `IterableIterator<T>`, and the
|
|
36
|
+
* `Set` arm of react-stately's `Selection`. Arrays reach the dedicated array
|
|
37
|
+
* branch first, and primitives like `string` never reach here, so this only
|
|
38
|
+
* matches non-array iterables. Without it these fall through to the object
|
|
39
|
+
* branch and emit a bogus `__@iterator` property ("should be object").
|
|
40
|
+
*/
|
|
41
|
+
export function isNonArrayIterable(type) {
|
|
42
|
+
// Known iterable built-ins by symbol name…
|
|
43
|
+
const name = type.getSymbol()?.getName();
|
|
44
|
+
if (name &&
|
|
45
|
+
[
|
|
46
|
+
'Set',
|
|
47
|
+
'ReadonlySet',
|
|
48
|
+
'Map',
|
|
49
|
+
'ReadonlyMap',
|
|
50
|
+
'Iterable',
|
|
51
|
+
'IterableIterator',
|
|
52
|
+
'Generator',
|
|
53
|
+
'AsyncIterable',
|
|
54
|
+
'AsyncIterableIterator',
|
|
55
|
+
].includes(name)) {
|
|
56
|
+
return true;
|
|
57
|
+
}
|
|
58
|
+
// …plus any other type exposing a `[Symbol.iterator]` member (custom
|
|
59
|
+
// iterables). Callers must check array-like types first, since arrays also
|
|
60
|
+
// expose an iterator member.
|
|
61
|
+
return type
|
|
62
|
+
.getProperties()
|
|
63
|
+
.some((symbol) => symbol.getName().includes('@iterator'));
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* Best-effort element type for an iterable: its first type argument
|
|
67
|
+
* (`Set<T>` / `Iterable<T>` → `T`). Returns undefined when none is resolvable,
|
|
68
|
+
* in which case callers fall back to a `misc` item type.
|
|
69
|
+
*/
|
|
70
|
+
function getIterableElementType({ type, checker, }) {
|
|
71
|
+
const typeArgs = checker.getTypeArguments(type);
|
|
72
|
+
return typeArgs && typeArgs.length > 0 ? typeArgs[0] : undefined;
|
|
73
|
+
}
|
|
33
74
|
/**
|
|
34
75
|
* Analyzes a TypeScript type and returns a structured TypeInfo representation
|
|
35
76
|
*/
|
|
@@ -175,6 +216,28 @@ maxDepth = 3, }) {
|
|
|
175
216
|
...typeInfoCommon,
|
|
176
217
|
};
|
|
177
218
|
}
|
|
219
|
+
// Handle non-array iterables (Set, Iterable<T>, the Set arm of react-stately's
|
|
220
|
+
// Selection, etc.). These carry the `Object` flag and a `[Symbol.iterator]`
|
|
221
|
+
// member but no numeric index signature, so without this branch they fall
|
|
222
|
+
// through to the object handler and emit a spurious `__@iterator` property.
|
|
223
|
+
// Represent them as arrays of their element type instead.
|
|
224
|
+
else if (isNonArrayIterable(type)) {
|
|
225
|
+
const elementType = getIterableElementType({ type, checker });
|
|
226
|
+
result = {
|
|
227
|
+
type: 'array',
|
|
228
|
+
items: elementType
|
|
229
|
+
? analyzeType({
|
|
230
|
+
type: elementType,
|
|
231
|
+
checker,
|
|
232
|
+
isOptional,
|
|
233
|
+
visitedTypes,
|
|
234
|
+
depth: depth + 1,
|
|
235
|
+
maxDepth,
|
|
236
|
+
})
|
|
237
|
+
: { type: 'misc', ...typeInfoCommon },
|
|
238
|
+
...typeInfoCommon,
|
|
239
|
+
};
|
|
240
|
+
}
|
|
178
241
|
// Handle intersections
|
|
179
242
|
// This is where ForwardRef is being inferred
|
|
180
243
|
// @TODO: We need to find a way to handle depth here. Currently we bring in all of the properties
|
package/dist/analyze-type.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"analyze-type.js","sourceRoot":"","sources":["../src/analyze-type.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"analyze-type.js","sourceRoot":"","sources":["../src/analyze-type.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,YAAY,CAAC;AAM5B,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAC5D,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAEzC,4CAA4C;AAC5C,MAAM,SAAS,GAAG,IAAI,OAAO,EAAmB,CAAC;AAEjD;;;GAGG;AACH,SAAS,SAAS,CAAC,IAAa,EAAE,OAAuB;IACvD,+CAA+C;IAC/C,MAAM,UAAU,GAAG,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACvC,IAAI,UAAU,EAAE,CAAC;QACf,OAAO,UAAU,CAAC;IACpB,CAAC;IAED,8DAA8D;IAC9D,+CAA+C;IAC/C,MAAM,UAAU,GAAG,OAAO,CAAC,YAAY,CACrC,IAAI,EACJ,SAAS,EAET,EAAE,CAAC,eAAe,CAAC,YAAY,CAChC,CAAC;IAEF,4DAA4D;IAC5D,iDAAiD;IACjD,MAAM,YAAY,GAAG,CAAC,UAAU,CAAC,CAAC;IAElC,+BAA+B;IAC/B,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;IAChC,IAAI,MAAM,EAAE,CAAC;QACX,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;IACtC,CAAC;IAED,2CAA2C;IAC3C,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;IAEtC,MAAM,KAAK,GAAG,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACrC,SAAS,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IAC3B,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,kBAAkB,CAAC,IAAa;IAC9C,2CAA2C;IAC3C,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,EAAE,EAAE,OAAO,EAAE,CAAC;IACzC,IACE,IAAI;QACJ;YACE,KAAK;YACL,aAAa;YACb,KAAK;YACL,aAAa;YACb,UAAU;YACV,kBAAkB;YAClB,WAAW;YACX,eAAe;YACf,uBAAuB;SACxB,CAAC,QAAQ,CAAC,IAAI,CAAC,EAChB,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IACD,qEAAqE;IACrE,2EAA2E;IAC3E,6BAA6B;IAC7B,OAAO,IAAI;SACR,aAAa,EAAE;SACf,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC;AAC9D,CAAC;AAED;;;;GAIG;AACH,SAAS,sBAAsB,CAAC,EAC9B,IAAI,EACJ,OAAO,GAIR;IACC,MAAM,QAAQ,GAAG,OAAO,CAAC,gBAAgB,CAAC,IAAwB,CAAC,CAAC;IACpE,OAAO,QAAQ,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AACnE,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,WAAW,CAAC,EAC1B,IAAI,EACJ,OAAO,EACP,UAAU,EACV,YAAY,GAAG,IAAI,GAAG,EAAoB,EAC1C,KAAK,GAAG,CAAC;AACT;;;GAGG;AACH,QAAQ,GAAG,CAAC,GAQb;IACC,qCAAqC;IACrC,MAAM,MAAM,GAAG,SAAS,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAExC,4CAA4C;IAC5C,IAAI,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;QAC7B,OAAO,YAAY,CAAC,GAAG,CAAC,MAAM,CAAE,CAAC;IACnC,CAAC;IAED,MAAM,SAAS,GAAG,OAAO,CAAC,YAAY,CACpC,IAAI,EACJ,SAAS,EAET,EAAE,CAAC,eAAe,CAAC,uBAAuB;QACxC,EAAE,CAAC,eAAe,CAAC,YAAY,CAClC,CAAC;IACF,MAAM,SAAS,GAAG,WAAW,CAAC;QAC5B,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,UAAU,EAAE,EAAE,CAAC,SAAS;KACzB,CAAC,CAAC;IACH,MAAM,cAAc,GAAmB;QACrC,SAAS;QACT,UAAU,EAAE;YACV,SAAS;SACV;QACD,UAAU;KACX,CAAC;IAEF,0EAA0E;IAC1E,4EAA4E;IAC5E,6EAA6E;IAC7E,qEAAqE;IACrE,8EAA8E;IAC9E,6EAA6E;IAC7E,wDAAwD;IAExD,+BAA+B;IAC/B,IACE,SAAS,KAAK,QAAQ;QACtB,SAAS,KAAK,SAAS;QACvB,SAAS,KAAK,QAAQ,EACtB,CAAC;QACD,MAAM,MAAM,GAAa;YACvB,IAAI,EAAE,SAAS;YACf,GAAG,cAAc;SAClB,CAAC;QACF,YAAY,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACjC,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,uBAAuB;IACvB,IAAI,IAAI,CAAC,eAAe,EAAE,EAAE,CAAC;QAC3B,MAAM,MAAM,GAAa;YACvB,IAAI,EAAE,eAAe;YACrB,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,GAAG,cAAc;SAClB,CAAC;QACF,YAAY,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACjC,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,IAAI,IAAI,CAAC,eAAe,EAAE,EAAE,CAAC;QAC3B,MAAM,MAAM,GAAa;YACvB,IAAI,EAAE,eAAe;YACrB,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,GAAG,cAAc;SAClB,CAAC;QACF,YAAY,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACjC,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,qFAAqF;IACrF,oFAAoF;IACpF,kFAAkF;IAClF,oFAAoF;IACpF,qFAAqF;IACrF,sFAAsF;IACtF,qFAAqF;IACrF,sFAAsF;IACtF,gFAAgF;IAChF;IACE,sCAAsC;IACtC,IAAI,CAAC,KAAK;QACV,CAAC,EAAE,CAAC,SAAS,CAAC,aAAa;YACzB,EAAE,CAAC,SAAS,CAAC,aAAa;YAC1B,EAAE,CAAC,SAAS,CAAC,WAAW,CAAC,EAC3B,CAAC;QACD,MAAM,UAAU,GAAG,OAAO,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC;QACzD,IAAI,UAAU,IAAI,UAAU,KAAK,IAAI,EAAE,CAAC;YACtC,MAAM,QAAQ,GAAG,WAAW,CAAC;gBAC3B,IAAI,EAAE,UAAU;gBAChB,OAAO;gBACP,UAAU;gBACV,YAAY;gBACZ,KAAK;gBACL,QAAQ;aACT,CAAC,CAAC;YACH,YAAY,CAAC,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;YACnC,OAAO,QAAQ,CAAC;QAClB,CAAC;IACH,CAAC;IAED,6EAA6E;IAC7E,sEAAsE;IACtE,iDAAiD;IACjD,IAAI,KAAK,IAAI,QAAQ,EAAE,CAAC;QACtB,MAAM,MAAM,GAAa;YACvB,IAAI,EAAE,MAAM;YACZ,GAAG,cAAc;SAClB,CAAC;QACF,YAAY,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACjC,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,IAAI,MAAgB,CAAC;IAErB,mDAAmD;IACnD,MAAM,WAAW,GAAa;QAC5B,IAAI,EAAE,MAAM;QACZ,GAAG,cAAc;KAClB,CAAC;IACF,YAAY,CAAC,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IAEtC,gBAAgB;IAChB,IAAI,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC;QACnB,MAAM,GAAG;YACP,IAAI,EAAE,OAAO;YACb,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAC1B,WAAW,CAAC;gBACV,IAAI,EAAE,CAAC;gBACP,OAAO;gBACP,UAAU;gBACV,YAAY;gBACZ,KAAK,EAAE,KAAK,GAAG,CAAC;gBAChB,QAAQ;aACT,CAAC,CACH;YACD,GAAG,cAAc;SAClB,CAAC;IACJ,CAAC;IACD,gBAAgB;SACX,IAAI,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,OAAO,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC;QACpE,MAAM,UAAU,GAAG,OAAO,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;QAErD,MAAM,GAAG;YACP,IAAI,EAAE,OAAO;YACb,KAAK,EACH,UAAU,CAAC,MAAM,KAAK,CAAC;gBACrB,CAAC,CAAC,WAAW,CAAC;oBACV,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC,EAAE,IAAI;oBACzB,OAAO;oBACP,UAAU;oBACV,YAAY;oBACZ,KAAK,EAAE,KAAK,GAAG,CAAC;oBAChB,QAAQ;iBACT,CAAC;gBACJ,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,cAAc,EAAE;YACzC,GAAG,cAAc;SAClB,CAAC;IACJ,CAAC;IACD,+EAA+E;IAC/E,4EAA4E;IAC5E,0EAA0E;IAC1E,4EAA4E;IAC5E,0DAA0D;SACrD,IAAI,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAAC;QAClC,MAAM,WAAW,GAAG,sBAAsB,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;QAC9D,MAAM,GAAG;YACP,IAAI,EAAE,OAAO;YACb,KAAK,EAAE,WAAW;gBAChB,CAAC,CAAC,WAAW,CAAC;oBACV,IAAI,EAAE,WAAW;oBACjB,OAAO;oBACP,UAAU;oBACV,YAAY;oBACZ,KAAK,EAAE,KAAK,GAAG,CAAC;oBAChB,QAAQ;iBACT,CAAC;gBACJ,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,cAAc,EAAE;YACvC,GAAG,cAAc;SAClB,CAAC;IACJ,CAAC;IACD,uBAAuB;IACvB,6CAA6C;IAC7C,iGAAiG;IACjG,6FAA6F;IAC7F,iCAAiC;IACjC,iGAAiG;SAC5F,IAAI,IAAI,CAAC,cAAc,EAAE,EAAE,CAAC;QAC/B,MAAM,UAAU,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC;QACxC,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC1B,MAAM,kBAAkB,GAAG,UAAU,CAAC,MAAM,CAC1C,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE;gBACZ,IAAI,CAAC;oBACH,2EAA2E;oBAC3E,MAAM,QAAQ,GAAG,OAAO,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;oBAE/C,IAAI,QAAQ,EAAE,CAAC;wBACb,MAAM,YAAY,GAAG,WAAW,CAAC;4BAC/B,IAAI,EAAE,QAAQ;4BACd,OAAO;4BAEP,UAAU,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC,WAAW,CAAC,QAAQ,CAAC;4BACpD,YAAY;4BACZ,KAAK,EAAE,KAAK,GAAG,CAAC;4BAChB,QAAQ;yBACT,CAAC,CAAC;wBAEH,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,GAAG;4BACpB,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE;4BACpB,QAAQ,EAAE,YAAY;4BACtB,UAAU,EAAE;gCACV,WAAW,EAAE,WAAW,CAAC;oCACvB,KAAK,EAAE,IAAI,CAAC,KAAK;oCACjB,UAAU,EAAE,EAAE,CAAC,WAAW;iCAC3B,CAAC;6BACH;4BACD,UAAU,EAAE,qBAAqB,CAAC,IAAI,CAAC;yBACxC,CAAC;oBACJ,CAAC;gBACH,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,OAAO,CAAC,KAAK,CACX,4BAA4B,IAAI,CAAC,OAAO,EAAE,KAAK,KAAK,EAAE,CACvD,CAAC;gBACJ,CAAC;gBACD,OAAO,GAAG,CAAC;YACb,CAAC,EACD,EAAgC,CACjC,CAAC;YAEF,IAAI,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC/C,MAAM,GAAG;oBACP,IAAI,EAAE,QAAQ;oBACd,UAAU,EAAE,kBAAkB;oBAC9B,GAAG,cAAc;iBAClB,CAAC;YACJ,CAAC;iBAAM,CAAC;gBACN,MAAM,GAAG,WAAW,CAAC;YACvB,CAAC;QACH,CAAC;aAAM,CAAC;YACN,MAAM,GAAG,WAAW,CAAC;QACvB,CAAC;IACH,CAAC;IACD,wBAAwB;SACnB,IACH,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC;QAC5B,IAAI,CAAC,iBAAiB,EAAE,CAAC,MAAM,GAAG,CAAC,EACnC,CAAC;QACD,MAAM,GAAG;YACP,IAAI,EAAE,UAAU;YAChB,UAAU,EAAE,EAAE;YACd,UAAU,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,cAAc,EAAE;YAC/C,GAAG,cAAc;SAClB,CAAC;IACJ,CAAC;IACD,0EAA0E;SACrE,IAAI,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;QACtC,MAAM,UAAU,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC;QACxC,MAAM,cAAc,GAAG,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAChD,MAAM,mBAAmB,GAAG,IAAI,CAAC,sBAAsB,EAAE,CAAC;QAE1D,mEAAmE;QACnE,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;QAChC,MAAM,gBAAgB,GACpB,MAAM;YACN;gBACE,SAAS;gBACT,KAAK;gBACL,KAAK;gBACL,SAAS;gBACT,SAAS;gBACT,aAAa;gBACb,aAAa;aACd,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;QAE/B,8BAA8B;QAC9B,yBAAyB;QACzB,wCAAwC;QACxC,0CAA0C;QAC1C,wCAAwC;QACxC,0DAA0D;QAC1D,IACE,UAAU,CAAC,MAAM,GAAG,CAAC;YACrB,cAAc,CAAC,MAAM,KAAK,CAAC;YAC3B,mBAAmB,CAAC,MAAM,KAAK,CAAC;YAChC,CAAC,gBAAgB;YACjB,KAAK,GAAG,QAAQ,EAChB,CAAC;YACD,MAAM,kBAAkB,GAAG,UAAU,CAAC,MAAM,CAC1C,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE;gBACZ,IAAI,CAAC;oBACH,MAAM,QAAQ,GAAG,OAAO,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;oBAC/C,IAAI,QAAQ,EAAE,CAAC;wBACb,MAAM,YAAY,GAAG,WAAW,CAAC;4BAC/B,IAAI,EAAE,QAAQ;4BACd,OAAO;4BAEP,UAAU,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC,WAAW,CAAC,QAAQ,CAAC;4BACpD,YAAY;4BACZ,KAAK,EAAE,KAAK,GAAG,CAAC;4BAChB,QAAQ;yBACT,CAAC,CAAC;wBAEH,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,GAAG;4BACpB,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE;4BACpB,QAAQ,EAAE,YAAY;4BACtB,UAAU,EAAE;gCACV,WAAW,EAAE,WAAW,CAAC;oCACvB,KAAK,EAAE,IAAI,CAAC,KAAK;oCACjB,UAAU,EAAE,EAAE,CAAC,WAAW;iCAC3B,CAAC;6BACH;4BACD,UAAU,EAAE,qBAAqB,CAAC,IAAI,CAAC;yBACxC,CAAC;oBACJ,CAAC;gBACH,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,OAAO,CAAC,KAAK,CACX,4BAA4B,IAAI,CAAC,OAAO,EAAE,KAAK,KAAK,EAAE,CACvD,CAAC;gBACJ,CAAC;gBACD,OAAO,GAAG,CAAC;YACb,CAAC,EACD,EAAgC,CACjC,CAAC;YAEF,IAAI,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC/C,MAAM,GAAG;oBACP,IAAI,EAAE,QAAQ;oBACd,UAAU,EAAE,kBAAkB;oBAC9B,GAAG,cAAc;iBAClB,CAAC;YACJ,CAAC;iBAAM,CAAC;gBACN,MAAM,GAAG,WAAW,CAAC;YACvB,CAAC;QACH,CAAC;aAAM,CAAC;YACN,MAAM,GAAG,WAAW,CAAC;QACvB,CAAC;IACH,CAAC;IACD,8DAA8D;SACzD,CAAC;QACJ,MAAM,GAAG,WAAW,CAAC;IACvB,CAAC;IAED,0CAA0C;IAC1C,YAAY,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,OAAO,MAAM,CAAC;AAChB,CAAC"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Fixtures for components with ITERABLE-typed props — the react-aria collection
|
|
3
|
+
* shape (`disabledKeys?: Iterable<Key>`, `selectedKeys?: Selection`). These carry
|
|
4
|
+
* the `Object` flag plus a `[Symbol.iterator]` member but no numeric index, so
|
|
5
|
+
* without a dedicated iterable branch the analyzer emitted them as objects with a
|
|
6
|
+
* spurious `__@iterator` property (rendered in Knapsack as "should be object").
|
|
7
|
+
* They should resolve to ARRAY fields of their element type instead.
|
|
8
|
+
*/
|
|
9
|
+
type Key = string | number;
|
|
10
|
+
/** Mirrors react-stately's `Selection = 'all' | Set<Key>`. */
|
|
11
|
+
type Selection = 'all' | Set<Key>;
|
|
12
|
+
export declare function CollectionComponent(props: {
|
|
13
|
+
/** react-aria's `disabledKeys?: Iterable<Key>`. */
|
|
14
|
+
disabledKeys?: Iterable<Key>;
|
|
15
|
+
/** A plain `Set<string>`. */
|
|
16
|
+
tags?: Set<string>;
|
|
17
|
+
/** `ReadonlySet<number>`. */
|
|
18
|
+
ids?: ReadonlySet<number>;
|
|
19
|
+
/** react-stately `Selection` (`'all' | Set<Key>`). */
|
|
20
|
+
selectedKeys?: Selection;
|
|
21
|
+
}): {
|
|
22
|
+
/** react-aria's `disabledKeys?: Iterable<Key>`. */
|
|
23
|
+
disabledKeys?: Iterable<Key>;
|
|
24
|
+
/** A plain `Set<string>`. */
|
|
25
|
+
tags?: Set<string>;
|
|
26
|
+
/** `ReadonlySet<number>`. */
|
|
27
|
+
ids?: ReadonlySet<number>;
|
|
28
|
+
/** react-stately `Selection` (`'all' | Set<Key>`). */
|
|
29
|
+
selectedKeys?: Selection;
|
|
30
|
+
};
|
|
31
|
+
export {};
|
|
32
|
+
//# sourceMappingURL=iterable-props.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"iterable-props.d.ts","sourceRoot":"","sources":["../../src/test-fixtures/iterable-props.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,KAAK,GAAG,GAAG,MAAM,GAAG,MAAM,CAAC;AAE3B,8DAA8D;AAC9D,KAAK,SAAS,GAAG,KAAK,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC;AAElC,wBAAgB,mBAAmB,CAAC,KAAK,EAAE;IACzC,mDAAmD;IACnD,YAAY,CAAC,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC;IAC7B,6BAA6B;IAC7B,IAAI,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACnB,6BAA6B;IAC7B,GAAG,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC1B,sDAAsD;IACtD,YAAY,CAAC,EAAE,SAAS,CAAC;CAC1B;IARC,mDAAmD;mBACpC,QAAQ,CAAC,GAAG,CAAC;IAC5B,6BAA6B;WACtB,GAAG,CAAC,MAAM,CAAC;IAClB,6BAA6B;UACvB,WAAW,CAAC,MAAM,CAAC;IACzB,sDAAsD;mBACvC,SAAS;EAGzB"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Fixtures for components with ITERABLE-typed props — the react-aria collection
|
|
3
|
+
* shape (`disabledKeys?: Iterable<Key>`, `selectedKeys?: Selection`). These carry
|
|
4
|
+
* the `Object` flag plus a `[Symbol.iterator]` member but no numeric index, so
|
|
5
|
+
* without a dedicated iterable branch the analyzer emitted them as objects with a
|
|
6
|
+
* spurious `__@iterator` property (rendered in Knapsack as "should be object").
|
|
7
|
+
* They should resolve to ARRAY fields of their element type instead.
|
|
8
|
+
*/
|
|
9
|
+
export function CollectionComponent(props) {
|
|
10
|
+
return props;
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=iterable-props.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"iterable-props.js","sourceRoot":"","sources":["../../src/test-fixtures/iterable-props.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAOH,MAAM,UAAU,mBAAmB,CAAC,KASnC;IACC,OAAO,KAAK,CAAC;AACf,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@knapsack/spec-utils",
|
|
3
3
|
"description": "",
|
|
4
|
-
"version": "4.94.
|
|
4
|
+
"version": "4.94.5--canary.7781.96e1884.0",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"exports": {
|
|
7
7
|
".": {
|
|
@@ -20,19 +20,19 @@
|
|
|
20
20
|
"test": "vitest run"
|
|
21
21
|
},
|
|
22
22
|
"dependencies": {
|
|
23
|
-
"@knapsack/utils": "4.94.
|
|
23
|
+
"@knapsack/utils": "4.94.5--canary.7781.96e1884.0",
|
|
24
24
|
"json-stable-stringify": "^1.3.0",
|
|
25
25
|
"quick-lru": "^7.3.0",
|
|
26
26
|
"typescript": "^5.9.3"
|
|
27
27
|
},
|
|
28
28
|
"devDependencies": {
|
|
29
|
-
"@knapsack/angular-sandbox-components": "4.94.
|
|
30
|
-
"@knapsack/eslint-config-starter": "4.94.
|
|
31
|
-
"@knapsack/file-utils": "4.94.
|
|
32
|
-
"@knapsack/prettier-config": "4.94.
|
|
33
|
-
"@knapsack/sandbox-components": "4.94.
|
|
34
|
-
"@knapsack/types": "4.94.
|
|
35
|
-
"@knapsack/typescript-config-starter": "4.94.
|
|
29
|
+
"@knapsack/angular-sandbox-components": "4.94.5--canary.7781.96e1884.0",
|
|
30
|
+
"@knapsack/eslint-config-starter": "4.94.5--canary.7781.96e1884.0",
|
|
31
|
+
"@knapsack/file-utils": "4.94.5--canary.7781.96e1884.0",
|
|
32
|
+
"@knapsack/prettier-config": "4.94.5--canary.7781.96e1884.0",
|
|
33
|
+
"@knapsack/sandbox-components": "4.94.5--canary.7781.96e1884.0",
|
|
34
|
+
"@knapsack/types": "4.94.5--canary.7781.96e1884.0",
|
|
35
|
+
"@knapsack/typescript-config-starter": "4.94.5--canary.7781.96e1884.0",
|
|
36
36
|
"@mui/material": "^5.18.0",
|
|
37
37
|
"@types/node": "^22.19.11",
|
|
38
38
|
"eslint": "^9.20.0",
|
|
@@ -47,5 +47,5 @@
|
|
|
47
47
|
"directory": "apps/client/libs/spec-utils",
|
|
48
48
|
"type": "git"
|
|
49
49
|
},
|
|
50
|
-
"gitHead": "
|
|
50
|
+
"gitHead": "96e188432257949b3210f0ce647082763f31083d"
|
|
51
51
|
}
|