@formspec/build 0.1.0-alpha.14 → 0.1.0-alpha.15
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/__tests__/extension-runtime.integration.test.d.ts +2 -0
- package/dist/__tests__/extension-runtime.integration.test.d.ts.map +1 -0
- package/dist/__tests__/fixtures/edge-cases.d.ts +11 -0
- package/dist/__tests__/fixtures/edge-cases.d.ts.map +1 -1
- package/dist/__tests__/fixtures/example-a-builtins.d.ts +6 -6
- package/dist/__tests__/fixtures/example-interface-types.d.ts +26 -26
- package/dist/__tests__/fixtures/example-interface-types.d.ts.map +1 -1
- package/dist/__tests__/jsdoc-constraints.test.d.ts +4 -5
- package/dist/__tests__/jsdoc-constraints.test.d.ts.map +1 -1
- package/dist/__tests__/parity/fixtures/plan-status/chain-dsl.d.ts +19 -0
- package/dist/__tests__/parity/fixtures/plan-status/chain-dsl.d.ts.map +1 -0
- package/dist/__tests__/parity/fixtures/plan-status/expected-ir.d.ts +6 -0
- package/dist/__tests__/parity/fixtures/plan-status/expected-ir.d.ts.map +1 -0
- package/dist/__tests__/parity/fixtures/plan-status/tsdoc.d.ts +17 -0
- package/dist/__tests__/parity/fixtures/plan-status/tsdoc.d.ts.map +1 -0
- package/dist/__tests__/parity/fixtures/usd-cents/chain-dsl.d.ts +9 -0
- package/dist/__tests__/parity/fixtures/usd-cents/chain-dsl.d.ts.map +1 -0
- package/dist/__tests__/parity/fixtures/usd-cents/expected-ir.d.ts +6 -0
- package/dist/__tests__/parity/fixtures/usd-cents/expected-ir.d.ts.map +1 -0
- package/dist/__tests__/parity/fixtures/usd-cents/tsdoc.d.ts +19 -0
- package/dist/__tests__/parity/fixtures/usd-cents/tsdoc.d.ts.map +1 -0
- package/dist/__tests__/parity/utils.d.ts +6 -1
- package/dist/__tests__/parity/utils.d.ts.map +1 -1
- package/dist/analyzer/class-analyzer.d.ts +1 -1
- package/dist/analyzer/class-analyzer.d.ts.map +1 -1
- package/dist/analyzer/jsdoc-constraints.d.ts +7 -51
- package/dist/analyzer/jsdoc-constraints.d.ts.map +1 -1
- package/dist/analyzer/tsdoc-parser.d.ts +6 -8
- package/dist/analyzer/tsdoc-parser.d.ts.map +1 -1
- package/dist/browser.cjs +387 -98
- package/dist/browser.cjs.map +1 -1
- package/dist/browser.d.ts +15 -2
- package/dist/browser.d.ts.map +1 -1
- package/dist/browser.js +385 -98
- package/dist/browser.js.map +1 -1
- package/dist/build.d.ts +131 -5
- package/dist/canonicalize/tsdoc-canonicalizer.d.ts +3 -3
- package/dist/cli.cjs +272 -69
- package/dist/cli.cjs.map +1 -1
- package/dist/cli.js +271 -72
- package/dist/cli.js.map +1 -1
- package/dist/index.cjs +257 -67
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +20 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +255 -71
- package/dist/index.js.map +1 -1
- package/dist/internals.cjs +461 -137
- package/dist/internals.cjs.map +1 -1
- package/dist/internals.js +459 -139
- package/dist/internals.js.map +1 -1
- package/dist/json-schema/generator.d.ts +8 -2
- package/dist/json-schema/generator.d.ts.map +1 -1
- package/dist/json-schema/ir-generator.d.ts +24 -2
- package/dist/json-schema/ir-generator.d.ts.map +1 -1
- package/dist/json-schema/types.d.ts +1 -1
- package/dist/json-schema/types.d.ts.map +1 -1
- package/dist/validate/constraint-validator.d.ts +3 -7
- package/dist/validate/constraint-validator.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"extension-runtime.integration.test.d.ts","sourceRoot":"","sources":["../../src/__tests__/extension-runtime.integration.test.ts"],"names":[],"mappings":""}
|
|
@@ -43,12 +43,23 @@ export declare class ArrayEdgeCases {
|
|
|
43
43
|
anyArray: unknown[];
|
|
44
44
|
nestedArray: string[][];
|
|
45
45
|
}
|
|
46
|
+
/**
|
|
47
|
+
* Self-referential dictionary type — used to verify the circular-reference
|
|
48
|
+
* guard in `tryResolveRecordType`. An index signature that references its
|
|
49
|
+
* own interface is the TS-valid equivalent of `Record<string, X>` where X
|
|
50
|
+
* is self-referential; without the guard, resolving the value type would
|
|
51
|
+
* recurse infinitely.
|
|
52
|
+
*/
|
|
53
|
+
export interface SelfRefRecord {
|
|
54
|
+
[key: string]: SelfRefRecord;
|
|
55
|
+
}
|
|
46
56
|
/**
|
|
47
57
|
* Various object type patterns.
|
|
48
58
|
*/
|
|
49
59
|
export declare class ObjectEdgeCases {
|
|
50
60
|
emptyObject: {};
|
|
51
61
|
stringRecord: Record<string, string>;
|
|
62
|
+
selfRefRecord: SelfRefRecord;
|
|
52
63
|
deepNested: {
|
|
53
64
|
level1: {
|
|
54
65
|
level2: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"edge-cases.d.ts","sourceRoot":"","sources":["../../../src/__tests__/fixtures/edge-cases.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAMH;;GAEG;AACH,qBAAa,eAAe;IAE1B,cAAc,EAAG,MAAM,GAAG,MAAM,CAAC;IAGjC,YAAY,EAAG,MAAM,GAAG;QAAE,MAAM,EAAE,OAAO,CAAA;KAAE,CAAC;IAG5C,WAAW,EAAG;QAAE,IAAI,EAAE,GAAG,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,GAAG;QAAE,IAAI,EAAE,GAAG,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;CAC7E;AAMD;;GAEG;AACH,qBAAa,gBAAgB;IAE3B,cAAc,EAAG,MAAM,GAAG,IAAI,CAAC;IAG/B,eAAe,EAAG,MAAM,GAAG,SAAS,CAAC;IAGrC,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAGjC,WAAW,EAAG,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IAGxC,cAAc,EAAG,QAAQ,GAAG,UAAU,GAAG,IAAI,CAAC;CAC/C;AAMD;;GAEG;AACH,qBAAa,cAAc;IAEzB,OAAO,EAAG,MAAM,EAAE,CAAC;IAGnB,UAAU,EAAG,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAC;IAGjC,aAAa,EAAG,MAAM,EAAE,GAAG,IAAI,CAAC;IAGhC,WAAW,EAAG;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IAG7C,QAAQ,EAAG,OAAO,EAAE,CAAC;IAGrB,WAAW,EAAG,MAAM,EAAE,EAAE,CAAC;CAC1B;AAMD;;GAEG;AACH,qBAAa,eAAe;IAG1B,WAAW,EAAG,EAAE,CAAC;IAGjB,YAAY,EAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAGtC,UAAU,EAAG;QACX,MAAM,EAAE;YACN,MAAM,EAAE;gBACN,MAAM,EAAE;oBACN,KAAK,EAAE,MAAM,CAAC;iBACf,CAAC;aACH,CAAC;SACH,CAAC;KACH,CAAC;IAGF,aAAa,EAAG;QACd,QAAQ,EAAE,MAAM,CAAC;QACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;KACnB,CAAC;CACH;AAMD;;GAEG;AACH,qBAAa,YAAY;IAGvB,QAAQ,EAAG,GAAG,CAAC;IAGf,YAAY,EAAG,OAAO,CAAC;IAOvB,SAAS,EAAG,IAAI,CAAC;IAGjB,SAAS,EAAG,IAAI,CAAC;CAClB;AAMD;;GAEG;AACH,qBAAa,cAAc;IAEzB,aAAa,EAAG,MAAM,CAAC;IAGvB,UAAU,EAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAIvB,aAAa,EAAG,QAAQ,GAAG,EAAE,CAAC;IAG9B,SAAS,EAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;CACvE;AAMD;;GAEG;AACH,qBAAa,iBAAiB;IAE5B,IAAI,EAAG,MAAM,CAAC;IAGd,KAAK,CAAC,EAAE,MAAM,CAAC;IAGf,MAAM,EAAG,OAAO,CAAC;CAClB;AAMD,eAAO,MAAM,YAAY,MAAO,CAAC;AACjC,eAAO,MAAM,YAAY,WAAY,CAAC;AACtC,eAAO,MAAM,YAAY,WAAW,CAAC;AACrC,eAAO,MAAM,YAAY,MAAM,CAAC;AAChC,eAAO,MAAM,YAAY;;CAAsB,CAAC;AAChD,eAAO,MAAM,YAAY;;CAA4B,CAAC;AACtD,eAAO,MAAM,YAAY;;;;CAAwC,CAAC;AAClE,eAAO,MAAM,YAAY;;CAAuB,CAAC"}
|
|
1
|
+
{"version":3,"file":"edge-cases.d.ts","sourceRoot":"","sources":["../../../src/__tests__/fixtures/edge-cases.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,24 +1,24 @@
|
|
|
1
1
|
export declare class ExampleAForm {
|
|
2
|
-
/** @
|
|
3
|
-
* @
|
|
2
|
+
/** @displayName Full Name
|
|
3
|
+
* @description Your legal name
|
|
4
4
|
* @minLength 2
|
|
5
5
|
* @maxLength 100
|
|
6
6
|
*/
|
|
7
7
|
name: string;
|
|
8
|
-
/** @
|
|
8
|
+
/** @displayName Age
|
|
9
9
|
* @minimum 0
|
|
10
10
|
* @maximum 150
|
|
11
11
|
*/
|
|
12
12
|
age: number;
|
|
13
|
-
/** @
|
|
13
|
+
/** @displayName Score
|
|
14
14
|
* @exclusiveMinimum 0
|
|
15
15
|
*/
|
|
16
16
|
score: number;
|
|
17
|
-
/** @
|
|
17
|
+
/** @displayName Email
|
|
18
18
|
* @pattern ^[^@]+@[^@]+$
|
|
19
19
|
*/
|
|
20
20
|
email?: string;
|
|
21
|
-
/** @
|
|
21
|
+
/** @displayName Country
|
|
22
22
|
* @enumOptions [{"id":"us","label":"United States"},{"id":"ca","label":"Canada"}]
|
|
23
23
|
*/
|
|
24
24
|
country: "us" | "ca";
|
|
@@ -6,27 +6,27 @@
|
|
|
6
6
|
*/
|
|
7
7
|
export interface SimpleConfig {
|
|
8
8
|
/**
|
|
9
|
-
* @
|
|
10
|
-
* @
|
|
9
|
+
* @displayName Full Name
|
|
10
|
+
* @description The user's legal name
|
|
11
11
|
* @minLength 1
|
|
12
12
|
* @maxLength 200
|
|
13
13
|
*/
|
|
14
14
|
name: string;
|
|
15
|
-
/** @
|
|
15
|
+
/** @displayName Age @minimum 0 @maximum 150 */
|
|
16
16
|
age: number;
|
|
17
|
-
/** @
|
|
17
|
+
/** @displayName Email @pattern ^[^@]+@[^@]+$ */
|
|
18
18
|
email?: string;
|
|
19
|
-
/** @
|
|
19
|
+
/** @displayName Active */
|
|
20
20
|
active: boolean;
|
|
21
21
|
}
|
|
22
22
|
export interface WithEnumOptions {
|
|
23
23
|
/**
|
|
24
|
-
* @
|
|
24
|
+
* @displayName Status
|
|
25
25
|
* @enumOptions ["draft","active","archived"]
|
|
26
26
|
*/
|
|
27
27
|
status: "draft" | "active" | "archived";
|
|
28
28
|
/**
|
|
29
|
-
* @
|
|
29
|
+
* @displayName Priority
|
|
30
30
|
* @enumOptions [{"id":"low","label":"Low Priority"},{"id":"high","label":"High Priority"}]
|
|
31
31
|
*/
|
|
32
32
|
priority: "low" | "high";
|
|
@@ -34,29 +34,29 @@ export interface WithEnumOptions {
|
|
|
34
34
|
export interface EmptyInterface {
|
|
35
35
|
}
|
|
36
36
|
export interface OnlyOptionalFields {
|
|
37
|
-
/** @
|
|
37
|
+
/** @displayName Notes */
|
|
38
38
|
notes?: string;
|
|
39
|
-
/** @
|
|
39
|
+
/** @displayName Tags */
|
|
40
40
|
tags?: string;
|
|
41
41
|
}
|
|
42
42
|
/** @deprecated Use NewConfig instead */
|
|
43
43
|
export interface DeprecatedFieldInterface {
|
|
44
44
|
/** @deprecated Use fullName instead */
|
|
45
45
|
name?: string;
|
|
46
|
-
/** @
|
|
46
|
+
/** @displayName Full Name */
|
|
47
47
|
fullName: string;
|
|
48
48
|
}
|
|
49
49
|
export type SimpleTypeAlias = {
|
|
50
|
-
/** @
|
|
50
|
+
/** @displayName Label @minLength 1 */
|
|
51
51
|
label: string;
|
|
52
|
-
/** @
|
|
52
|
+
/** @displayName Count @minimum 0 */
|
|
53
53
|
count: number;
|
|
54
|
-
/** @
|
|
54
|
+
/** @displayName Description */
|
|
55
55
|
description?: string;
|
|
56
56
|
};
|
|
57
57
|
export type TypeAliasWithEnumOptions = {
|
|
58
58
|
/**
|
|
59
|
-
* @
|
|
59
|
+
* @displayName Color
|
|
60
60
|
* @enumOptions ["red","green","blue"]
|
|
61
61
|
*/
|
|
62
62
|
color: "red" | "green" | "blue";
|
|
@@ -67,36 +67,36 @@ export type UnionAlias = "a" | "b" | "c";
|
|
|
67
67
|
export type Percent = number;
|
|
68
68
|
/** @minLength 1 @maxLength 255 @pattern ^[^@]+@[^@]+$ */
|
|
69
69
|
export type Email = string;
|
|
70
|
-
/** @
|
|
70
|
+
/** @displayName Discount Rate @description Percentage discount applied @minimum 0 @maximum 100 */
|
|
71
71
|
export type AnnotatedPercent = number;
|
|
72
72
|
export interface ConfigWithAliasedTypes {
|
|
73
|
-
/** @
|
|
73
|
+
/** @displayName Discount */
|
|
74
74
|
discount: Percent;
|
|
75
|
-
/** @
|
|
75
|
+
/** @displayName Contact Email */
|
|
76
76
|
contactEmail: Email;
|
|
77
|
-
/** @
|
|
77
|
+
/** @displayName Tax Rate */
|
|
78
78
|
taxRate: AnnotatedPercent;
|
|
79
79
|
}
|
|
80
80
|
export interface Address {
|
|
81
|
-
/** @
|
|
81
|
+
/** @displayName Street @minLength 1 @maxLength 200 */
|
|
82
82
|
street: string;
|
|
83
|
-
/** @
|
|
83
|
+
/** @displayName City @minLength 1 */
|
|
84
84
|
city: string;
|
|
85
|
-
/** @
|
|
85
|
+
/** @displayName Zip @pattern ^[0-9]{5}$ */
|
|
86
86
|
zip?: string;
|
|
87
87
|
}
|
|
88
88
|
export type ContactInfo = {
|
|
89
|
-
/** @
|
|
89
|
+
/** @displayName Email @pattern ^[^@]+@[^@]+$ */
|
|
90
90
|
email: string;
|
|
91
|
-
/** @
|
|
91
|
+
/** @displayName Phone @maxLength 20 */
|
|
92
92
|
phone?: string;
|
|
93
93
|
};
|
|
94
94
|
export interface NestedConfig {
|
|
95
|
-
/** @
|
|
95
|
+
/** @displayName Name */
|
|
96
96
|
name: string;
|
|
97
|
-
/** @
|
|
97
|
+
/** @displayName Address */
|
|
98
98
|
address: Address;
|
|
99
|
-
/** @
|
|
99
|
+
/** @displayName Contact */
|
|
100
100
|
contact: ContactInfo;
|
|
101
101
|
}
|
|
102
102
|
//# sourceMappingURL=example-interface-types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"example-interface-types.d.ts","sourceRoot":"","sources":["../../../src/__tests__/fixtures/example-interface-types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,MAAM,WAAW,YAAY;IAC3B;;;;;OAKG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb
|
|
1
|
+
{"version":3,"file":"example-interface-types.d.ts","sourceRoot":"","sources":["../../../src/__tests__/fixtures/example-interface-types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,MAAM,WAAW,YAAY;IAC3B;;;;;OAKG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb,+CAA+C;IAC/C,GAAG,EAAE,MAAM,CAAC;IAEZ,gDAAgD;IAChD,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,0BAA0B;IAC1B,MAAM,EAAE,OAAO,CAAC;CACjB;AAED,MAAM,WAAW,eAAe;IAC9B;;;OAGG;IACH,MAAM,EAAE,OAAO,GAAG,QAAQ,GAAG,UAAU,CAAC;IAExC;;;OAGG;IACH,QAAQ,EAAE,KAAK,GAAG,MAAM,CAAC;CAC1B;AAGD,MAAM,WAAW,cAAc;CAAG;AAElC,MAAM,WAAW,kBAAkB;IACjC,yBAAyB;IACzB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,wBAAwB;IACxB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,wCAAwC;AACxC,MAAM,WAAW,wBAAwB;IACvC,uCAAuC;IACvC,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd,6BAA6B;IAC7B,QAAQ,EAAE,MAAM,CAAC;CAClB;AAKD,MAAM,MAAM,eAAe,GAAG;IAC5B,sCAAsC;IACtC,KAAK,EAAE,MAAM,CAAC;IAEd,oCAAoC;IACpC,KAAK,EAAE,MAAM,CAAC;IAEd,+BAA+B;IAC/B,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAGF,MAAM,MAAM,wBAAwB,GAAG;IACrC;;;OAGG;IACH,KAAK,EAAE,KAAK,GAAG,OAAO,GAAG,MAAM,CAAC;CACjC,CAAC;AAGF,MAAM,MAAM,WAAW,GAAG,MAAM,CAAC;AACjC,MAAM,MAAM,UAAU,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;AAIzC,8BAA8B;AAC9B,MAAM,MAAM,OAAO,GAAG,MAAM,CAAC;AAE7B,yDAAyD;AACzD,MAAM,MAAM,KAAK,GAAG,MAAM,CAAC;AAE3B,kGAAkG;AAClG,MAAM,MAAM,gBAAgB,GAAG,MAAM,CAAC;AAEtC,MAAM,WAAW,sBAAsB;IACrC,4BAA4B;IAC5B,QAAQ,EAAE,OAAO,CAAC;IAElB,iCAAiC;IACjC,YAAY,EAAE,KAAK,CAAC;IAEpB,4BAA4B;IAC5B,OAAO,EAAE,gBAAgB,CAAC;CAC3B;AAID,MAAM,WAAW,OAAO;IACtB,sDAAsD;IACtD,MAAM,EAAE,MAAM,CAAC;IACf,qCAAqC;IACrC,IAAI,EAAE,MAAM,CAAC;IACb,2CAA2C;IAC3C,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAGD,MAAM,MAAM,WAAW,GAAG;IACxB,gDAAgD;IAChD,KAAK,EAAE,MAAM,CAAC;IACd,uCAAuC;IACvC,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,MAAM,WAAW,YAAY;IAC3B,wBAAwB;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,2BAA2B;IAC3B,OAAO,EAAE,OAAO,CAAC;IACjB,2BAA2B;IAC3B,OAAO,EAAE,WAAW,CAAC;CACtB"}
|
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
2
|
+
* Legacy constraint extraction tests have been removed.
|
|
3
3
|
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
* @see packages/core/src/types/constraint-definitions.ts for BUILTIN_CONSTRAINT_DEFINITIONS
|
|
4
|
+
* `extractJSDocConstraints` and `extractJSDocFieldMetadata` were deleted as
|
|
5
|
+
* part of the decorator-era cleanup. Equivalent coverage exists in:
|
|
6
|
+
* - ir-jsdoc-constraints.test.ts (tests extractJSDocConstraintNodes / extractJSDocAnnotationNodes)
|
|
8
7
|
*/
|
|
9
8
|
export {};
|
|
10
9
|
//# sourceMappingURL=jsdoc-constraints.test.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"jsdoc-constraints.test.d.ts","sourceRoot":"","sources":["../../src/__tests__/jsdoc-constraints.test.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"jsdoc-constraints.test.d.ts","sourceRoot":"","sources":["../../src/__tests__/jsdoc-constraints.test.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Parity fixture — plan-status — chain DSL definition.
|
|
3
|
+
*
|
|
4
|
+
* Covers the shared static enum surface:
|
|
5
|
+
* - field-level display name
|
|
6
|
+
* - labeled enum members via object options
|
|
7
|
+
* - required enum field
|
|
8
|
+
*/
|
|
9
|
+
export declare const planStatusForm: import("@formspec/core").FormSpec<readonly [import("@formspec/core").StaticEnumField<"status", readonly [{
|
|
10
|
+
readonly id: "active";
|
|
11
|
+
readonly label: "Active";
|
|
12
|
+
}, {
|
|
13
|
+
readonly id: "paused";
|
|
14
|
+
readonly label: "Paused";
|
|
15
|
+
}, {
|
|
16
|
+
readonly id: "cancelled";
|
|
17
|
+
readonly label: "Cancelled";
|
|
18
|
+
}]>]>;
|
|
19
|
+
//# sourceMappingURL=chain-dsl.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chain-dsl.d.ts","sourceRoot":"","sources":["../../../../../src/__tests__/parity/fixtures/plan-status/chain-dsl.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,eAAO,MAAM,cAAc;;;;;;;;;KAa1B,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"expected-ir.d.ts","sourceRoot":"","sources":["../../../../../src/__tests__/parity/fixtures/plan-status/expected-ir.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAE3D,eAAO,MAAM,UAAU,EAAE,oBA2BxB,CAAC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Parity fixture — plan-status — TSDoc class definition.
|
|
3
|
+
*
|
|
4
|
+
* This stays on the shared static surface. The TSDoc field carries the same
|
|
5
|
+
* field-level label and member labels that the chain DSL expresses via
|
|
6
|
+
* `field.enum(..., [{ id, label }], { label })`.
|
|
7
|
+
*/
|
|
8
|
+
export declare class SubscriptionForm {
|
|
9
|
+
/**
|
|
10
|
+
* @displayName Plan Status
|
|
11
|
+
* @displayName :active Active
|
|
12
|
+
* @displayName :paused Paused
|
|
13
|
+
* @displayName :cancelled Cancelled
|
|
14
|
+
*/
|
|
15
|
+
status: "active" | "paused" | "cancelled";
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=tsdoc.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tsdoc.d.ts","sourceRoot":"","sources":["../../../../../src/__tests__/parity/fixtures/plan-status/tsdoc.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,qBAAa,gBAAgB;IAC3B;;;;;OAKG;IACH,MAAM,EAAG,QAAQ,GAAG,QAAQ,GAAG,WAAW,CAAC;CAC5C"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Parity fixture — usd-cents — chain DSL definition.
|
|
3
|
+
*
|
|
4
|
+
* Mirrors the effective numeric semantics of the TSDoc alias chain:
|
|
5
|
+
* - integer-valued number fields via `multipleOf: 1`
|
|
6
|
+
* - inherited minimum bounds resolved into the final field constraints
|
|
7
|
+
*/
|
|
8
|
+
export declare const usdCentsForm: import("@formspec/core").FormSpec<readonly [import("@formspec/core").NumberField<"unitPrice">, import("@formspec/core").NumberField<"quantity">]>;
|
|
9
|
+
//# sourceMappingURL=chain-dsl.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chain-dsl.d.ts","sourceRoot":"","sources":["../../../../../src/__tests__/parity/fixtures/usd-cents/chain-dsl.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH,eAAO,MAAM,YAAY,mJAWxB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"expected-ir.d.ts","sourceRoot":"","sources":["../../../../../src/__tests__/parity/fixtures/usd-cents/expected-ir.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAE3D,eAAO,MAAM,UAAU,EAAE,oBAgDxB,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Parity fixture — usd-cents — TSDoc class definition.
|
|
3
|
+
*
|
|
4
|
+
* The alias chain exercises the same shared static semantics as the chain DSL:
|
|
5
|
+
* integer-valued fields represented as numbers plus `@multipleOf 1`, with
|
|
6
|
+
* per-alias minimum bounds flowing to the final field.
|
|
7
|
+
*/
|
|
8
|
+
/** @multipleOf 1 */
|
|
9
|
+
type Integer = number;
|
|
10
|
+
/** @minimum 0 */
|
|
11
|
+
type USDCents = Integer;
|
|
12
|
+
/** @minimum 1 */
|
|
13
|
+
type Quantity = Integer;
|
|
14
|
+
export declare class LineItemForm {
|
|
15
|
+
unitPrice: USDCents;
|
|
16
|
+
quantity: Quantity;
|
|
17
|
+
}
|
|
18
|
+
export {};
|
|
19
|
+
//# sourceMappingURL=tsdoc.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tsdoc.d.ts","sourceRoot":"","sources":["../../../../../src/__tests__/parity/fixtures/usd-cents/tsdoc.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,oBAAoB;AACpB,KAAK,OAAO,GAAG,MAAM,CAAC;AAEtB,iBAAiB;AACjB,KAAK,QAAQ,GAAG,OAAO,CAAC;AAExB,iBAAiB;AACjB,KAAK,QAAQ,GAAG,OAAO,CAAC;AAExB,qBAAa,YAAY;IACvB,SAAS,EAAG,QAAQ,CAAC;IACrB,QAAQ,EAAG,QAAQ,CAAC;CACrB"}
|
|
@@ -40,6 +40,11 @@ export interface ProvenanceFreeObjectTypeNode {
|
|
|
40
40
|
readonly properties: readonly ProvenanceFreeObjectProperty[];
|
|
41
41
|
readonly additionalProperties: boolean;
|
|
42
42
|
}
|
|
43
|
+
/** Record type node — valueType is recursively provenance-free. */
|
|
44
|
+
export interface ProvenanceFreeRecordTypeNode {
|
|
45
|
+
readonly kind: "record";
|
|
46
|
+
readonly valueType: ProvenanceFreeTypeNode;
|
|
47
|
+
}
|
|
43
48
|
/** Union type node — members are recursively provenance-free. */
|
|
44
49
|
export interface ProvenanceFreeUnionTypeNode {
|
|
45
50
|
readonly kind: "union";
|
|
@@ -56,7 +61,7 @@ export type ProvenanceFreeDynamicTypeNode = DynamicTypeNode;
|
|
|
56
61
|
/** Custom type node has no `provenance` field — pass through unchanged. */
|
|
57
62
|
export type ProvenanceFreeCustomTypeNode = CustomTypeNode;
|
|
58
63
|
/** Union of all provenance-free type node variants. */
|
|
59
|
-
export type ProvenanceFreeTypeNode = ProvenanceFreePrimitiveTypeNode | ProvenanceFreeEnumTypeNode | ProvenanceFreeArrayTypeNode | ProvenanceFreeObjectTypeNode | ProvenanceFreeUnionTypeNode | ProvenanceFreeReferenceTypeNode | ProvenanceFreeDynamicTypeNode | ProvenanceFreeCustomTypeNode;
|
|
64
|
+
export type ProvenanceFreeTypeNode = ProvenanceFreePrimitiveTypeNode | ProvenanceFreeEnumTypeNode | ProvenanceFreeArrayTypeNode | ProvenanceFreeObjectTypeNode | ProvenanceFreeRecordTypeNode | ProvenanceFreeUnionTypeNode | ProvenanceFreeReferenceTypeNode | ProvenanceFreeDynamicTypeNode | ProvenanceFreeCustomTypeNode;
|
|
60
65
|
export type ProvenanceFreeNumericConstraintNode = Omit<NumericConstraintNode, "provenance">;
|
|
61
66
|
export type ProvenanceFreeLengthConstraintNode = Omit<LengthConstraintNode, "provenance">;
|
|
62
67
|
export type ProvenanceFreePatternConstraintNode = Omit<PatternConstraintNode, "provenance">;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/__tests__/parity/utils.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/__tests__/parity/utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
import * as ts from "typescript";
|
|
9
9
|
import type { FieldNode, TypeNode, TypeDefinition, JsonValue } from "@formspec/core";
|
|
10
10
|
/**
|
|
11
|
-
* Layout metadata extracted from `@Group` and `@ShowWhen`
|
|
11
|
+
* Layout metadata extracted from `@Group` and `@ShowWhen` TSDoc tags.
|
|
12
12
|
* One entry per field, in the same order as `fields`.
|
|
13
13
|
*/
|
|
14
14
|
export interface FieldLayoutMetadata {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"class-analyzer.d.ts","sourceRoot":"","sources":["../../src/analyzer/class-analyzer.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AACjC,OAAO,KAAK,EACV,SAAS,EACT,QAAQ,
|
|
1
|
+
{"version":3,"file":"class-analyzer.d.ts","sourceRoot":"","sources":["../../src/analyzer/class-analyzer.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,36 +4,16 @@
|
|
|
4
4
|
* Extracts constraints and annotation tags from JSDoc comments on
|
|
5
5
|
* class/interface fields and returns canonical IR nodes directly:
|
|
6
6
|
* - {@link ConstraintNode} for set-influencing tags (@minimum, @pattern, etc.)
|
|
7
|
-
* - {@link AnnotationNode} for value-influencing tags (@
|
|
7
|
+
* - {@link AnnotationNode} for value-influencing tags (@displayName, etc.)
|
|
8
8
|
*
|
|
9
9
|
* The IR extraction path uses the official `@microsoft/tsdoc` parser for
|
|
10
|
-
*
|
|
11
|
-
* compiler JSDoc API for annotation tags (which contain underscores, e.g.
|
|
12
|
-
* `@Field_displayName`).
|
|
10
|
+
* all canonical tags.
|
|
13
11
|
*
|
|
14
|
-
* Supported constraints correspond to
|
|
15
|
-
*
|
|
12
|
+
* Supported constraints correspond to the built-in FormSpec constraint tags
|
|
13
|
+
* (e.g., `@minimum`, `@maximum`, `@pattern`).
|
|
16
14
|
*/
|
|
17
15
|
import * as ts from "typescript";
|
|
18
|
-
import {
|
|
19
|
-
/**
|
|
20
|
-
* A constraint argument value.
|
|
21
|
-
*/
|
|
22
|
-
export type ConstraintArg = string | number | boolean | null | ConstraintArg[] | {
|
|
23
|
-
[key: string]: ConstraintArg;
|
|
24
|
-
};
|
|
25
|
-
/**
|
|
26
|
-
* Extracted constraint information from a JSDoc tag.
|
|
27
|
-
* @deprecated Use {@link ConstraintNode} from the IR path instead.
|
|
28
|
-
*/
|
|
29
|
-
export interface ConstraintInfo {
|
|
30
|
-
/** Constraint name (e.g., "Minimum", "Pattern", "Field") */
|
|
31
|
-
name: string;
|
|
32
|
-
/** Constraint arguments as literal values */
|
|
33
|
-
args: ConstraintArg[];
|
|
34
|
-
/** Raw AST node (undefined for synthetic JSDoc constraint entries) */
|
|
35
|
-
node: ts.Decorator | undefined;
|
|
36
|
-
}
|
|
16
|
+
import type { ConstraintNode, AnnotationNode } from "@formspec/core";
|
|
37
17
|
/**
|
|
38
18
|
* Extracts constraints from JSDoc comments on a TypeScript AST node and returns
|
|
39
19
|
* canonical {@link ConstraintNode} objects.
|
|
@@ -47,14 +27,8 @@ export interface ConstraintInfo {
|
|
|
47
27
|
*/
|
|
48
28
|
export declare function extractJSDocConstraintNodes(node: ts.Node, file?: string): ConstraintNode[];
|
|
49
29
|
/**
|
|
50
|
-
* Extracts
|
|
51
|
-
*
|
|
52
|
-
*
|
|
53
|
-
* Uses a hybrid approach:
|
|
54
|
-
* - `@deprecated` is extracted via the TSDoc parser (standard tag).
|
|
55
|
-
* - `@Field_displayName` and `@Field_description` are extracted via the
|
|
56
|
-
* TypeScript compiler JSDoc API because they contain underscores which
|
|
57
|
-
* are invalid in TSDoc tag names.
|
|
30
|
+
* Extracts canonical annotation tags from a node and returns
|
|
31
|
+
* {@link AnnotationNode} objects.
|
|
58
32
|
*
|
|
59
33
|
* @param node - The AST node to inspect for annotation tags
|
|
60
34
|
* @param file - Absolute path to the source file for provenance
|
|
@@ -74,22 +48,4 @@ export declare function hasDeprecatedTag(node: ts.Node): boolean;
|
|
|
74
48
|
* Only extracts literal values (strings, numbers, booleans, null).
|
|
75
49
|
*/
|
|
76
50
|
export declare function extractDefaultValueAnnotation(initializer: ts.Expression | undefined, file?: string): AnnotationNode | null;
|
|
77
|
-
/**
|
|
78
|
-
* Extracts JSDoc constraint tags and returns synthetic {@link ConstraintInfo}
|
|
79
|
-
* objects for backward compatibility with the decorator-based pipeline.
|
|
80
|
-
*
|
|
81
|
-
* Uses the TypeScript compiler JSDoc API (not TSDoc parser) to maintain
|
|
82
|
-
* identical behavior with the legacy pipeline.
|
|
83
|
-
*
|
|
84
|
-
* @deprecated Use {@link extractJSDocConstraintNodes} for IR output.
|
|
85
|
-
*/
|
|
86
|
-
export declare function extractJSDocConstraints(node: ts.Node): ConstraintInfo[];
|
|
87
|
-
/**
|
|
88
|
-
* Extracts `@Field_displayName` and `@Field_description` TSDoc tags
|
|
89
|
-
* and returns a synthetic `Field` {@link ConstraintInfo} for backward
|
|
90
|
-
* compatibility with the decorator-based pipeline.
|
|
91
|
-
*
|
|
92
|
-
* @deprecated Use {@link extractJSDocAnnotationNodes} for IR output.
|
|
93
|
-
*/
|
|
94
|
-
export declare function extractJSDocFieldMetadata(node: ts.Node): ConstraintInfo | null;
|
|
95
51
|
//# sourceMappingURL=jsdoc-constraints.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"jsdoc-constraints.d.ts","sourceRoot":"","sources":["../../src/analyzer/jsdoc-constraints.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"jsdoc-constraints.d.ts","sourceRoot":"","sources":["../../src/analyzer/jsdoc-constraints.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AACjC,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAa,MAAM,gBAAgB,CAAC;AAOhF;;;;;;;;;;GAUG;AACH,wBAAgB,2BAA2B,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,IAAI,SAAK,GAAG,cAAc,EAAE,CAGtF;AAED;;;;;;;GAOG;AACH,wBAAgB,2BAA2B,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,IAAI,SAAK,GAAG,cAAc,EAAE,CAGtF;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,GAAG,OAAO,CAEvD;AAED;;;;;GAKG;AACH,wBAAgB,6BAA6B,CAC3C,WAAW,EAAE,EAAE,CAAC,UAAU,GAAG,SAAS,EACtC,IAAI,SAAK,GACR,cAAc,GAAG,IAAI,CAwCvB"}
|
|
@@ -14,10 +14,9 @@
|
|
|
14
14
|
* — Parsed via TSDocParser as custom block tags.
|
|
15
15
|
* Both camelCase and PascalCase forms are accepted (e.g., `@Minimum`).
|
|
16
16
|
*
|
|
17
|
-
* 2. **Annotation tags** (`@
|
|
18
|
-
* These
|
|
19
|
-
*
|
|
20
|
-
* until a future migration to underscore-free tag names.
|
|
17
|
+
* 2. **Annotation tags** (`@displayName`, `@description`):
|
|
18
|
+
* These are parsed as structured custom block tags and mapped directly
|
|
19
|
+
* onto annotation IR nodes.
|
|
21
20
|
*
|
|
22
21
|
* The `@deprecated` tag is a standard TSDoc block tag, parsed structurally.
|
|
23
22
|
*
|
|
@@ -36,7 +35,7 @@ import { type ConstraintNode, type AnnotationNode, type PathTarget } from "@form
|
|
|
36
35
|
export interface TSDocParseResult {
|
|
37
36
|
/** Constraint IR nodes extracted from custom block tags. */
|
|
38
37
|
readonly constraints: readonly ConstraintNode[];
|
|
39
|
-
/** Annotation IR nodes extracted from
|
|
38
|
+
/** Annotation IR nodes extracted from canonical TSDoc block tags. */
|
|
40
39
|
readonly annotations: readonly AnnotationNode[];
|
|
41
40
|
}
|
|
42
41
|
/**
|
|
@@ -45,9 +44,8 @@ export interface TSDocParseResult {
|
|
|
45
44
|
* nodes.
|
|
46
45
|
*
|
|
47
46
|
* For constraint tags (`@minimum`, `@pattern`, `@enumOptions`, etc.),
|
|
48
|
-
* the structured TSDoc parser is used.
|
|
49
|
-
*
|
|
50
|
-
* compiler JSDoc API is used as a fallback.
|
|
47
|
+
* the structured TSDoc parser is used. Canonical annotation tags
|
|
48
|
+
* (`@displayName`, `@description`) are also parsed structurally.
|
|
51
49
|
*
|
|
52
50
|
* @param node - The TS AST node to inspect (PropertyDeclaration, PropertySignature, etc.)
|
|
53
51
|
* @param file - Absolute source file path for provenance
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tsdoc-parser.d.ts","sourceRoot":"","sources":["../../src/analyzer/tsdoc-parser.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"tsdoc-parser.d.ts","sourceRoot":"","sources":["../../src/analyzer/tsdoc-parser.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AAEH,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AAYjC,OAAO,EAIL,KAAK,cAAc,EACnB,KAAK,cAAc,EAInB,KAAK,UAAU,EAChB,MAAM,gBAAgB,CAAC;AAwFxB;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,4DAA4D;IAC5D,QAAQ,CAAC,WAAW,EAAE,SAAS,cAAc,EAAE,CAAC;IAChD,qEAAqE;IACrE,QAAQ,CAAC,WAAW,EAAE,SAAS,cAAc,EAAE,CAAC;CACjD;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,IAAI,SAAK,GAAG,gBAAgB,CAkGzE;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,GAAG,OAAO,CAsB5D;AAMD;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAC/B,IAAI,EAAE,MAAM,GACX;IAAE,IAAI,EAAE,UAAU,CAAC;IAAC,aAAa,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAQpD"}
|