@defold-typescript/types 0.40.0 → 0.41.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/api-availability.json +3963 -772
- package/api-migrations.json +27 -0
- package/api-signatures.json +18069 -10240
- package/api-targets.json +448 -11
- package/examples/translations.json +560 -89
- package/fixtures/messages_doc.json +96 -0
- package/generated/b2d.d.ts +680 -4
- package/generated/b2d_body.d.ts +29 -103
- package/generated/b2d_chain.d.ts +5 -6
- package/generated/b2d_fixture.d.ts +34 -38
- package/generated/b2d_joint.d.ts +503 -25
- package/generated/b2d_shape.d.ts +183 -20
- package/generated/b2d_world.d.ts +57 -63
- package/generated/buffer.d.ts +16 -15
- package/generated/builtin-messages.d.ts +7 -1
- package/generated/bullet3d.d.ts +91 -0
- package/generated/bullet3d_collision_object.d.ts +433 -0
- package/generated/bullet3d_constraint.d.ts +818 -0
- package/generated/bullet3d_rigid_body.d.ts +429 -0
- package/generated/bullet3d_shape.d.ts +123 -0
- package/generated/bullet3d_world.d.ts +492 -0
- package/generated/camera.d.ts +29 -32
- package/generated/collectionfactory.d.ts +15 -18
- package/generated/collectionproxy.d.ts +22 -6
- package/generated/compute.d.ts +12 -238
- package/generated/crash.d.ts +24 -10
- package/generated/editor-vm/http.d.ts +90 -7
- package/generated/editor-vm/image.d.ts +7 -7
- package/generated/editor-vm/json.d.ts +11 -0
- package/generated/editor-vm/localization.d.ts +7 -7
- package/generated/editor-vm/tilemap_tiles.d.ts +56 -10
- package/generated/editor-vm/zip.d.ts +28 -0
- package/generated/editor.d.ts +1496 -430
- package/generated/factory.d.ts +21 -25
- package/generated/font.d.ts +64 -22
- package/generated/go.d.ts +235 -182
- package/generated/graphics.d.ts +335 -97
- package/generated/gui.d.ts +240 -471
- package/generated/html5.d.ts +2 -2
- package/generated/http.d.ts +28 -35
- package/generated/image.d.ts +105 -72
- package/generated/json.d.ts +34 -16
- package/generated/kinds/gui-script.d.ts +7 -0
- package/generated/kinds/render-script.d.ts +7 -0
- package/generated/kinds/script.d.ts +7 -0
- package/generated/label.d.ts +77 -7
- package/generated/liveupdate.d.ts +13 -10
- package/generated/material.d.ts +312 -360
- package/generated/model.d.ts +40 -39
- package/generated/particlefx.d.ts +19 -28
- package/generated/physics.d.ts +365 -133
- package/generated/profiler.d.ts +13 -23
- package/generated/render.d.ts +237 -297
- package/generated/resource.d.ts +664 -583
- package/generated/socket.d.ts +120 -133
- package/generated/sound.d.ts +62 -31
- package/generated/sprite.d.ts +31 -17
- package/generated/sys.d.ts +234 -190
- package/generated/tilemap.d.ts +21 -16
- package/generated/timer.d.ts +34 -21
- package/generated/versions/defold-1.12.4/b2d_body.d.ts +0 -7
- package/generated/versions/defold-1.12.4/buffer.d.ts +1 -3
- package/generated/versions/defold-1.12.4/camera.d.ts +21 -21
- package/generated/versions/defold-1.12.4/collectionfactory.d.ts +9 -9
- package/generated/versions/defold-1.12.4/collectionproxy.d.ts +2 -2
- package/generated/versions/defold-1.12.4/crash.d.ts +2 -2
- package/generated/versions/defold-1.12.4/factory.d.ts +15 -16
- package/generated/versions/defold-1.12.4/go.d.ts +6 -12
- package/generated/versions/defold-1.12.4/gui.d.ts +77 -175
- package/generated/versions/defold-1.12.4/html5.d.ts +1 -1
- package/generated/versions/defold-1.12.4/http.d.ts +0 -13
- package/generated/versions/defold-1.12.4/image.d.ts +16 -33
- package/generated/versions/defold-1.12.4/index.d.ts +1 -0
- package/generated/versions/defold-1.12.4/json.d.ts +10 -6
- package/generated/versions/defold-1.12.4/label.d.ts +2 -3
- package/generated/versions/defold-1.12.4/liveupdate.d.ts +5 -3
- package/generated/versions/defold-1.12.4/model.d.ts +2 -10
- package/generated/versions/defold-1.12.4/particlefx.d.ts +2 -5
- package/generated/versions/defold-1.12.4/physics.d.ts +69 -67
- package/generated/versions/defold-1.12.4/profiler.d.ts +2 -5
- package/generated/versions/defold-1.12.4/render.d.ts +99 -128
- package/generated/versions/defold-1.12.4/resource.d.ts +120 -148
- package/generated/versions/defold-1.12.4/socket.d.ts +34 -60
- package/generated/versions/defold-1.12.4/sound.d.ts +8 -8
- package/generated/versions/defold-1.12.4/sprite.d.ts +15 -5
- package/generated/versions/defold-1.12.4/sys.d.ts +37 -71
- package/generated/versions/defold-1.12.4/tilemap.d.ts +18 -11
- package/generated/versions/defold-1.12.4/timer.d.ts +5 -3
- package/generated/versions/defold-1.12.4/vmath.d.ts +0 -21
- package/generated/versions/defold-1.12.4/window.d.ts +1 -16
- package/generated/versions/defold-1.13.0/b2d_body.d.ts +10 -55
- package/generated/versions/defold-1.13.0/b2d_fixture.d.ts +25 -25
- package/generated/versions/defold-1.13.0/b2d_shape.d.ts +169 -8
- package/generated/versions/defold-1.13.0/b2d_world.d.ts +16 -10
- package/generated/versions/defold-1.13.0/buffer.d.ts +1 -3
- package/generated/versions/defold-1.13.0/camera.d.ts +25 -25
- package/generated/versions/defold-1.13.0/collectionfactory.d.ts +9 -9
- package/generated/versions/defold-1.13.0/collectionproxy.d.ts +2 -2
- package/generated/versions/defold-1.13.0/compute.d.ts +0 -69
- package/generated/versions/defold-1.13.0/crash.d.ts +2 -2
- package/generated/versions/defold-1.13.0/editor-vm/tilemap_tiles.d.ts +3 -3
- package/generated/versions/defold-1.13.0/editor.d.ts +34 -24
- package/generated/versions/defold-1.13.0/factory.d.ts +15 -16
- package/generated/versions/defold-1.13.0/go.d.ts +6 -12
- package/generated/versions/defold-1.13.0/graphics.d.ts +73 -37
- package/generated/versions/defold-1.13.0/gui.d.ts +77 -175
- package/generated/versions/defold-1.13.0/html5.d.ts +1 -1
- package/generated/versions/defold-1.13.0/http.d.ts +0 -13
- package/generated/versions/defold-1.13.0/image.d.ts +16 -33
- package/generated/versions/defold-1.13.0/index.d.ts +1 -0
- package/generated/versions/defold-1.13.0/json.d.ts +10 -6
- package/generated/versions/defold-1.13.0/label.d.ts +2 -3
- package/generated/versions/defold-1.13.0/liveupdate.d.ts +7 -5
- package/generated/versions/defold-1.13.0/material.d.ts +68 -106
- package/generated/versions/defold-1.13.0/model.d.ts +2 -10
- package/generated/versions/defold-1.13.0/particlefx.d.ts +2 -5
- package/generated/versions/defold-1.13.0/physics.d.ts +69 -67
- package/generated/versions/defold-1.13.0/profiler.d.ts +2 -5
- package/generated/versions/defold-1.13.0/render.d.ts +99 -128
- package/generated/versions/defold-1.13.0/resource.d.ts +126 -150
- package/generated/versions/defold-1.13.0/socket.d.ts +34 -60
- package/generated/versions/defold-1.13.0/sound.d.ts +8 -8
- package/generated/versions/defold-1.13.0/sprite.d.ts +15 -5
- package/generated/versions/defold-1.13.0/sys.d.ts +37 -71
- package/generated/versions/defold-1.13.0/tilemap.d.ts +18 -11
- package/generated/versions/defold-1.13.0/timer.d.ts +5 -3
- package/generated/versions/defold-1.13.0/vmath.d.ts +0 -21
- package/generated/versions/defold-1.13.0/window.d.ts +1 -16
- package/generated/versions/defold-1.13.1/b2d.d.ts +33 -0
- package/generated/versions/defold-1.13.1/b2d_body.d.ts +636 -0
- package/generated/versions/defold-1.13.1/b2d_chain.d.ts +106 -0
- package/generated/versions/defold-1.13.1/b2d_fixture.d.ts +157 -0
- package/generated/versions/defold-1.13.1/b2d_joint.d.ts +823 -0
- package/generated/versions/defold-1.13.1/b2d_shape.d.ts +400 -0
- package/generated/versions/defold-1.13.1/b2d_world.d.ts +320 -0
- package/generated/versions/defold-1.13.1/buffer.d.ts +189 -0
- package/generated/versions/defold-1.13.1/camera.d.ts +303 -0
- package/generated/versions/defold-1.13.1/collectionfactory.d.ts +151 -0
- package/generated/versions/defold-1.13.1/collectionproxy.d.ts +93 -0
- package/generated/versions/defold-1.13.1/compute.d.ts +237 -0
- package/generated/versions/defold-1.13.1/crash.d.ts +143 -0
- package/generated/versions/defold-1.13.1/editor-vm/http.d.ts +56 -0
- package/generated/versions/defold-1.13.1/editor-vm/image.d.ts +48 -0
- package/generated/versions/defold-1.13.1/editor-vm/json.d.ts +10 -0
- package/generated/versions/defold-1.13.1/editor-vm/localization.d.ts +42 -0
- package/generated/versions/defold-1.13.1/editor-vm/tilemap_tiles.d.ts +80 -0
- package/generated/versions/defold-1.13.1/editor-vm/zip.d.ts +10 -0
- package/generated/versions/defold-1.13.1/editor-vm/zlib.d.ts +24 -0
- package/generated/versions/defold-1.13.1/editor.d.ts +1121 -0
- package/generated/versions/defold-1.13.1/factory.d.ts +124 -0
- package/generated/versions/defold-1.13.1/font.d.ts +81 -0
- package/generated/versions/defold-1.13.1/go.d.ts +1107 -0
- package/generated/versions/defold-1.13.1/graphics.d.ts +411 -0
- package/generated/versions/defold-1.13.1/gui.d.ts +2353 -0
- package/generated/versions/defold-1.13.1/html5.d.ts +55 -0
- package/generated/versions/defold-1.13.1/http.d.ts +77 -0
- package/generated/versions/defold-1.13.1/image.d.ts +131 -0
- package/generated/versions/defold-1.13.1/index.d.ts +57 -0
- package/generated/versions/defold-1.13.1/json.d.ts +80 -0
- package/generated/versions/defold-1.13.1/kinds/editor-script.d.ts +14 -0
- package/generated/versions/defold-1.13.1/label.d.ts +93 -0
- package/generated/versions/defold-1.13.1/liveupdate.d.ts +142 -0
- package/generated/versions/defold-1.13.1/material.d.ts +408 -0
- package/generated/versions/defold-1.13.1/model.d.ts +272 -0
- package/generated/versions/defold-1.13.1/msg.d.ts +10 -0
- package/generated/versions/defold-1.13.1/particlefx.d.ts +163 -0
- package/generated/versions/defold-1.13.1/physics.d.ts +559 -0
- package/generated/versions/defold-1.13.1/profiler.d.ts +235 -0
- package/generated/versions/defold-1.13.1/render.d.ts +1190 -0
- package/generated/versions/defold-1.13.1/resource.d.ts +1523 -0
- package/generated/versions/defold-1.13.1/socket.d.ts +784 -0
- package/generated/versions/defold-1.13.1/sound.d.ts +292 -0
- package/generated/versions/defold-1.13.1/sprite.d.ts +175 -0
- package/generated/versions/defold-1.13.1/sys.d.ts +678 -0
- package/generated/versions/defold-1.13.1/tilemap.d.ts +208 -0
- package/generated/versions/defold-1.13.1/timer.d.ts +125 -0
- package/generated/versions/defold-1.13.1/types.d.ts +61 -0
- package/generated/versions/defold-1.13.1/vmath.d.ts +774 -0
- package/generated/versions/defold-1.13.1/window.d.ts +183 -0
- package/generated/versions/defold-1.13.1/zlib.d.ts +41 -0
- package/generated/vmath.d.ts +1 -21
- package/generated/window.d.ts +71 -71
- package/identity-vocabulary.json +561 -0
- package/index.d.ts +7 -0
- package/package.json +13 -2
- package/scripts/example-store-io.ts +12 -1
- package/scripts/extension-goldens.ts +1 -0
- package/scripts/fidelity-baseline.json +146 -46
- package/scripts/generate-api-availability.ts +90 -12
- package/scripts/generate-api-signatures.ts +12 -2
- package/scripts/import-defold-release.ts +85 -24
- package/scripts/prose-constants.ts +77 -16
- package/scripts/regen.ts +391 -77
- package/scripts/shared-handle-methods.ts +53 -0
- package/scripts/signature-store-fs.ts +1 -0
- package/scripts/sync-api-docs.ts +16 -5
- package/src/api-availability.ts +0 -0
- package/src/api-doc.ts +201 -3
- package/src/api-identity.ts +252 -0
- package/src/core-types.ts +26 -3
- package/src/correction-pins.ts +49 -0
- package/src/doc-comment.ts +104 -11
- package/src/doc-corrections.ts +108 -0
- package/src/editor-vm-globals.d.ts +5 -2
- package/src/emit-dts.ts +2064 -281
- package/src/emit-messages.ts +52 -0
- package/src/example-store.ts +125 -14
- package/src/field-correction-coverage.ts +204 -0
- package/src/fnv1a.ts +16 -0
- package/src/go-overloads.d.ts +25 -6
- package/src/index-base-table.ts +145 -0
- package/src/index-slot-classifications.ts +588 -0
- package/src/index.ts +38 -5
- package/src/library-index-slot-classifications.ts +332 -0
- package/src/lifecycle.ts +61 -199
- package/src/luals-type-expr.ts +354 -0
- package/src/msg-overloads.d.ts +0 -1
- package/src/param-correction-provenance.ts +8 -11
- package/src/render-overloads.d.ts +0 -15
- package/src/return-correction-provenance.ts +58 -16
- package/src/sys-overloads.d.ts +48 -0
- package/src/vmath-overloads.d.ts +27 -1
- package/src/window-event-guard.d.ts +6 -9
- package/url-parameters.json +1 -2
|
@@ -5,7 +5,8 @@
|
|
|
5
5
|
"recordTables": 0,
|
|
6
6
|
"multiReturn": 0,
|
|
7
7
|
"droppedMembers": 0,
|
|
8
|
-
"optionalAsRequired": 0
|
|
8
|
+
"optionalAsRequired": 0,
|
|
9
|
+
"bindingOpen": 0
|
|
9
10
|
},
|
|
10
11
|
"b2d.body": {
|
|
11
12
|
"droppedElements": 0,
|
|
@@ -13,7 +14,8 @@
|
|
|
13
14
|
"recordTables": 0,
|
|
14
15
|
"multiReturn": 0,
|
|
15
16
|
"droppedMembers": 0,
|
|
16
|
-
"optionalAsRequired": 0
|
|
17
|
+
"optionalAsRequired": 0,
|
|
18
|
+
"bindingOpen": 0
|
|
17
19
|
},
|
|
18
20
|
"b2d.chain": {
|
|
19
21
|
"droppedElements": 0,
|
|
@@ -21,7 +23,8 @@
|
|
|
21
23
|
"recordTables": 0,
|
|
22
24
|
"multiReturn": 0,
|
|
23
25
|
"droppedMembers": 0,
|
|
24
|
-
"optionalAsRequired": 0
|
|
26
|
+
"optionalAsRequired": 0,
|
|
27
|
+
"bindingOpen": 0
|
|
25
28
|
},
|
|
26
29
|
"b2d.fixture": {
|
|
27
30
|
"droppedElements": 0,
|
|
@@ -29,7 +32,8 @@
|
|
|
29
32
|
"recordTables": 0,
|
|
30
33
|
"multiReturn": 0,
|
|
31
34
|
"droppedMembers": 0,
|
|
32
|
-
"optionalAsRequired": 0
|
|
35
|
+
"optionalAsRequired": 0,
|
|
36
|
+
"bindingOpen": 0
|
|
33
37
|
},
|
|
34
38
|
"b2d.joint": {
|
|
35
39
|
"droppedElements": 0,
|
|
@@ -37,7 +41,8 @@
|
|
|
37
41
|
"recordTables": 0,
|
|
38
42
|
"multiReturn": 0,
|
|
39
43
|
"droppedMembers": 0,
|
|
40
|
-
"optionalAsRequired": 0
|
|
44
|
+
"optionalAsRequired": 0,
|
|
45
|
+
"bindingOpen": 0
|
|
41
46
|
},
|
|
42
47
|
"b2d.shape": {
|
|
43
48
|
"droppedElements": 0,
|
|
@@ -45,7 +50,8 @@
|
|
|
45
50
|
"recordTables": 0,
|
|
46
51
|
"multiReturn": 0,
|
|
47
52
|
"droppedMembers": 0,
|
|
48
|
-
"optionalAsRequired": 0
|
|
53
|
+
"optionalAsRequired": 0,
|
|
54
|
+
"bindingOpen": 0
|
|
49
55
|
},
|
|
50
56
|
"b2d.world": {
|
|
51
57
|
"droppedElements": 0,
|
|
@@ -53,7 +59,8 @@
|
|
|
53
59
|
"recordTables": 0,
|
|
54
60
|
"multiReturn": 0,
|
|
55
61
|
"droppedMembers": 0,
|
|
56
|
-
"optionalAsRequired": 0
|
|
62
|
+
"optionalAsRequired": 0,
|
|
63
|
+
"bindingOpen": 0
|
|
57
64
|
},
|
|
58
65
|
"buffer": {
|
|
59
66
|
"droppedElements": 0,
|
|
@@ -61,7 +68,62 @@
|
|
|
61
68
|
"recordTables": 0,
|
|
62
69
|
"multiReturn": 0,
|
|
63
70
|
"droppedMembers": 0,
|
|
64
|
-
"optionalAsRequired": 0
|
|
71
|
+
"optionalAsRequired": 0,
|
|
72
|
+
"bindingOpen": 0
|
|
73
|
+
},
|
|
74
|
+
"bullet3d": {
|
|
75
|
+
"droppedElements": 0,
|
|
76
|
+
"unknownTokens": [],
|
|
77
|
+
"recordTables": 0,
|
|
78
|
+
"multiReturn": 0,
|
|
79
|
+
"droppedMembers": 0,
|
|
80
|
+
"optionalAsRequired": 0,
|
|
81
|
+
"bindingOpen": 0
|
|
82
|
+
},
|
|
83
|
+
"bullet3d.collision_object": {
|
|
84
|
+
"droppedElements": 0,
|
|
85
|
+
"unknownTokens": [],
|
|
86
|
+
"recordTables": 0,
|
|
87
|
+
"multiReturn": 0,
|
|
88
|
+
"droppedMembers": 0,
|
|
89
|
+
"optionalAsRequired": 0,
|
|
90
|
+
"bindingOpen": 0
|
|
91
|
+
},
|
|
92
|
+
"bullet3d.constraint": {
|
|
93
|
+
"droppedElements": 0,
|
|
94
|
+
"unknownTokens": [],
|
|
95
|
+
"recordTables": 0,
|
|
96
|
+
"multiReturn": 0,
|
|
97
|
+
"droppedMembers": 0,
|
|
98
|
+
"optionalAsRequired": 0,
|
|
99
|
+
"bindingOpen": 0
|
|
100
|
+
},
|
|
101
|
+
"bullet3d.rigid_body": {
|
|
102
|
+
"droppedElements": 0,
|
|
103
|
+
"unknownTokens": [],
|
|
104
|
+
"recordTables": 0,
|
|
105
|
+
"multiReturn": 0,
|
|
106
|
+
"droppedMembers": 0,
|
|
107
|
+
"optionalAsRequired": 0,
|
|
108
|
+
"bindingOpen": 0
|
|
109
|
+
},
|
|
110
|
+
"bullet3d.shape": {
|
|
111
|
+
"droppedElements": 0,
|
|
112
|
+
"unknownTokens": [],
|
|
113
|
+
"recordTables": 0,
|
|
114
|
+
"multiReturn": 0,
|
|
115
|
+
"droppedMembers": 0,
|
|
116
|
+
"optionalAsRequired": 0,
|
|
117
|
+
"bindingOpen": 0
|
|
118
|
+
},
|
|
119
|
+
"bullet3d.world": {
|
|
120
|
+
"droppedElements": 0,
|
|
121
|
+
"unknownTokens": [],
|
|
122
|
+
"recordTables": 0,
|
|
123
|
+
"multiReturn": 0,
|
|
124
|
+
"droppedMembers": 0,
|
|
125
|
+
"optionalAsRequired": 0,
|
|
126
|
+
"bindingOpen": 0
|
|
65
127
|
},
|
|
66
128
|
"camera": {
|
|
67
129
|
"droppedElements": 0,
|
|
@@ -69,7 +131,8 @@
|
|
|
69
131
|
"recordTables": 0,
|
|
70
132
|
"multiReturn": 0,
|
|
71
133
|
"droppedMembers": 0,
|
|
72
|
-
"optionalAsRequired": 0
|
|
134
|
+
"optionalAsRequired": 0,
|
|
135
|
+
"bindingOpen": 0
|
|
73
136
|
},
|
|
74
137
|
"collectionfactory": {
|
|
75
138
|
"droppedElements": 0,
|
|
@@ -77,7 +140,8 @@
|
|
|
77
140
|
"recordTables": 0,
|
|
78
141
|
"multiReturn": 0,
|
|
79
142
|
"droppedMembers": 0,
|
|
80
|
-
"optionalAsRequired": 0
|
|
143
|
+
"optionalAsRequired": 0,
|
|
144
|
+
"bindingOpen": 0
|
|
81
145
|
},
|
|
82
146
|
"collectionproxy": {
|
|
83
147
|
"droppedElements": 0,
|
|
@@ -85,7 +149,8 @@
|
|
|
85
149
|
"recordTables": 0,
|
|
86
150
|
"multiReturn": 0,
|
|
87
151
|
"droppedMembers": 0,
|
|
88
|
-
"optionalAsRequired": 0
|
|
152
|
+
"optionalAsRequired": 0,
|
|
153
|
+
"bindingOpen": 0
|
|
89
154
|
},
|
|
90
155
|
"compute": {
|
|
91
156
|
"droppedElements": 0,
|
|
@@ -93,7 +158,8 @@
|
|
|
93
158
|
"recordTables": 0,
|
|
94
159
|
"multiReturn": 0,
|
|
95
160
|
"droppedMembers": 0,
|
|
96
|
-
"optionalAsRequired": 0
|
|
161
|
+
"optionalAsRequired": 0,
|
|
162
|
+
"bindingOpen": 0
|
|
97
163
|
},
|
|
98
164
|
"crash": {
|
|
99
165
|
"droppedElements": 0,
|
|
@@ -101,7 +167,8 @@
|
|
|
101
167
|
"recordTables": 0,
|
|
102
168
|
"multiReturn": 0,
|
|
103
169
|
"droppedMembers": 0,
|
|
104
|
-
"optionalAsRequired": 0
|
|
170
|
+
"optionalAsRequired": 0,
|
|
171
|
+
"bindingOpen": 0
|
|
105
172
|
},
|
|
106
173
|
"factory": {
|
|
107
174
|
"droppedElements": 0,
|
|
@@ -109,7 +176,8 @@
|
|
|
109
176
|
"recordTables": 0,
|
|
110
177
|
"multiReturn": 0,
|
|
111
178
|
"droppedMembers": 0,
|
|
112
|
-
"optionalAsRequired": 0
|
|
179
|
+
"optionalAsRequired": 0,
|
|
180
|
+
"bindingOpen": 0
|
|
113
181
|
},
|
|
114
182
|
"font": {
|
|
115
183
|
"droppedElements": 0,
|
|
@@ -117,7 +185,8 @@
|
|
|
117
185
|
"recordTables": 0,
|
|
118
186
|
"multiReturn": 0,
|
|
119
187
|
"droppedMembers": 0,
|
|
120
|
-
"optionalAsRequired": 0
|
|
188
|
+
"optionalAsRequired": 0,
|
|
189
|
+
"bindingOpen": 0
|
|
121
190
|
},
|
|
122
191
|
"go": {
|
|
123
192
|
"droppedElements": 0,
|
|
@@ -125,7 +194,8 @@
|
|
|
125
194
|
"recordTables": 0,
|
|
126
195
|
"multiReturn": 0,
|
|
127
196
|
"droppedMembers": 0,
|
|
128
|
-
"optionalAsRequired": 0
|
|
197
|
+
"optionalAsRequired": 0,
|
|
198
|
+
"bindingOpen": 0
|
|
129
199
|
},
|
|
130
200
|
"graphics": {
|
|
131
201
|
"droppedElements": 0,
|
|
@@ -133,7 +203,8 @@
|
|
|
133
203
|
"recordTables": 0,
|
|
134
204
|
"multiReturn": 0,
|
|
135
205
|
"droppedMembers": 0,
|
|
136
|
-
"optionalAsRequired": 0
|
|
206
|
+
"optionalAsRequired": 0,
|
|
207
|
+
"bindingOpen": 0
|
|
137
208
|
},
|
|
138
209
|
"gui": {
|
|
139
210
|
"droppedElements": 0,
|
|
@@ -141,7 +212,8 @@
|
|
|
141
212
|
"recordTables": 0,
|
|
142
213
|
"multiReturn": 0,
|
|
143
214
|
"droppedMembers": 0,
|
|
144
|
-
"optionalAsRequired": 0
|
|
215
|
+
"optionalAsRequired": 0,
|
|
216
|
+
"bindingOpen": 0
|
|
145
217
|
},
|
|
146
218
|
"html5": {
|
|
147
219
|
"droppedElements": 0,
|
|
@@ -149,7 +221,8 @@
|
|
|
149
221
|
"recordTables": 0,
|
|
150
222
|
"multiReturn": 0,
|
|
151
223
|
"droppedMembers": 0,
|
|
152
|
-
"optionalAsRequired": 0
|
|
224
|
+
"optionalAsRequired": 0,
|
|
225
|
+
"bindingOpen": 0
|
|
153
226
|
},
|
|
154
227
|
"http": {
|
|
155
228
|
"droppedElements": 0,
|
|
@@ -157,7 +230,8 @@
|
|
|
157
230
|
"recordTables": 0,
|
|
158
231
|
"multiReturn": 0,
|
|
159
232
|
"droppedMembers": 0,
|
|
160
|
-
"optionalAsRequired": 0
|
|
233
|
+
"optionalAsRequired": 0,
|
|
234
|
+
"bindingOpen": 0
|
|
161
235
|
},
|
|
162
236
|
"iac": {
|
|
163
237
|
"droppedElements": 0,
|
|
@@ -165,7 +239,8 @@
|
|
|
165
239
|
"recordTables": 0,
|
|
166
240
|
"multiReturn": 0,
|
|
167
241
|
"droppedMembers": 0,
|
|
168
|
-
"optionalAsRequired": 0
|
|
242
|
+
"optionalAsRequired": 0,
|
|
243
|
+
"bindingOpen": 0
|
|
169
244
|
},
|
|
170
245
|
"iap": {
|
|
171
246
|
"droppedElements": 0,
|
|
@@ -173,7 +248,8 @@
|
|
|
173
248
|
"recordTables": 0,
|
|
174
249
|
"multiReturn": 0,
|
|
175
250
|
"droppedMembers": 0,
|
|
176
|
-
"optionalAsRequired": 0
|
|
251
|
+
"optionalAsRequired": 0,
|
|
252
|
+
"bindingOpen": 0
|
|
177
253
|
},
|
|
178
254
|
"image": {
|
|
179
255
|
"droppedElements": 0,
|
|
@@ -181,7 +257,8 @@
|
|
|
181
257
|
"recordTables": 0,
|
|
182
258
|
"multiReturn": 0,
|
|
183
259
|
"droppedMembers": 0,
|
|
184
|
-
"optionalAsRequired": 0
|
|
260
|
+
"optionalAsRequired": 0,
|
|
261
|
+
"bindingOpen": 0
|
|
185
262
|
},
|
|
186
263
|
"json": {
|
|
187
264
|
"droppedElements": 0,
|
|
@@ -189,7 +266,8 @@
|
|
|
189
266
|
"recordTables": 0,
|
|
190
267
|
"multiReturn": 0,
|
|
191
268
|
"droppedMembers": 0,
|
|
192
|
-
"optionalAsRequired": 0
|
|
269
|
+
"optionalAsRequired": 0,
|
|
270
|
+
"bindingOpen": 0
|
|
193
271
|
},
|
|
194
272
|
"label": {
|
|
195
273
|
"droppedElements": 0,
|
|
@@ -197,7 +275,8 @@
|
|
|
197
275
|
"recordTables": 0,
|
|
198
276
|
"multiReturn": 0,
|
|
199
277
|
"droppedMembers": 0,
|
|
200
|
-
"optionalAsRequired": 0
|
|
278
|
+
"optionalAsRequired": 0,
|
|
279
|
+
"bindingOpen": 0
|
|
201
280
|
},
|
|
202
281
|
"liveupdate": {
|
|
203
282
|
"droppedElements": 0,
|
|
@@ -205,7 +284,8 @@
|
|
|
205
284
|
"recordTables": 0,
|
|
206
285
|
"multiReturn": 0,
|
|
207
286
|
"droppedMembers": 0,
|
|
208
|
-
"optionalAsRequired": 0
|
|
287
|
+
"optionalAsRequired": 0,
|
|
288
|
+
"bindingOpen": 0
|
|
209
289
|
},
|
|
210
290
|
"material": {
|
|
211
291
|
"droppedElements": 0,
|
|
@@ -213,7 +293,8 @@
|
|
|
213
293
|
"recordTables": 0,
|
|
214
294
|
"multiReturn": 0,
|
|
215
295
|
"droppedMembers": 0,
|
|
216
|
-
"optionalAsRequired": 0
|
|
296
|
+
"optionalAsRequired": 0,
|
|
297
|
+
"bindingOpen": 0
|
|
217
298
|
},
|
|
218
299
|
"model": {
|
|
219
300
|
"droppedElements": 0,
|
|
@@ -221,7 +302,8 @@
|
|
|
221
302
|
"recordTables": 0,
|
|
222
303
|
"multiReturn": 0,
|
|
223
304
|
"droppedMembers": 0,
|
|
224
|
-
"optionalAsRequired": 0
|
|
305
|
+
"optionalAsRequired": 0,
|
|
306
|
+
"bindingOpen": 0
|
|
225
307
|
},
|
|
226
308
|
"msg": {
|
|
227
309
|
"droppedElements": 0,
|
|
@@ -229,7 +311,8 @@
|
|
|
229
311
|
"recordTables": 0,
|
|
230
312
|
"multiReturn": 0,
|
|
231
313
|
"droppedMembers": 0,
|
|
232
|
-
"optionalAsRequired": 0
|
|
314
|
+
"optionalAsRequired": 0,
|
|
315
|
+
"bindingOpen": 0
|
|
233
316
|
},
|
|
234
317
|
"particlefx": {
|
|
235
318
|
"droppedElements": 0,
|
|
@@ -237,7 +320,8 @@
|
|
|
237
320
|
"recordTables": 0,
|
|
238
321
|
"multiReturn": 0,
|
|
239
322
|
"droppedMembers": 0,
|
|
240
|
-
"optionalAsRequired": 0
|
|
323
|
+
"optionalAsRequired": 0,
|
|
324
|
+
"bindingOpen": 0
|
|
241
325
|
},
|
|
242
326
|
"physics": {
|
|
243
327
|
"droppedElements": 0,
|
|
@@ -245,7 +329,8 @@
|
|
|
245
329
|
"recordTables": 0,
|
|
246
330
|
"multiReturn": 0,
|
|
247
331
|
"droppedMembers": 0,
|
|
248
|
-
"optionalAsRequired": 0
|
|
332
|
+
"optionalAsRequired": 0,
|
|
333
|
+
"bindingOpen": 0
|
|
249
334
|
},
|
|
250
335
|
"profiler": {
|
|
251
336
|
"droppedElements": 0,
|
|
@@ -253,7 +338,8 @@
|
|
|
253
338
|
"recordTables": 0,
|
|
254
339
|
"multiReturn": 0,
|
|
255
340
|
"droppedMembers": 0,
|
|
256
|
-
"optionalAsRequired": 0
|
|
341
|
+
"optionalAsRequired": 0,
|
|
342
|
+
"bindingOpen": 0
|
|
257
343
|
},
|
|
258
344
|
"push": {
|
|
259
345
|
"droppedElements": 0,
|
|
@@ -261,7 +347,8 @@
|
|
|
261
347
|
"recordTables": 0,
|
|
262
348
|
"multiReturn": 0,
|
|
263
349
|
"droppedMembers": 0,
|
|
264
|
-
"optionalAsRequired": 0
|
|
350
|
+
"optionalAsRequired": 0,
|
|
351
|
+
"bindingOpen": 0
|
|
265
352
|
},
|
|
266
353
|
"render": {
|
|
267
354
|
"droppedElements": 0,
|
|
@@ -269,7 +356,8 @@
|
|
|
269
356
|
"recordTables": 0,
|
|
270
357
|
"multiReturn": 0,
|
|
271
358
|
"droppedMembers": 0,
|
|
272
|
-
"optionalAsRequired": 0
|
|
359
|
+
"optionalAsRequired": 0,
|
|
360
|
+
"bindingOpen": 0
|
|
273
361
|
},
|
|
274
362
|
"resource": {
|
|
275
363
|
"droppedElements": 0,
|
|
@@ -277,7 +365,8 @@
|
|
|
277
365
|
"recordTables": 0,
|
|
278
366
|
"multiReturn": 0,
|
|
279
367
|
"droppedMembers": 0,
|
|
280
|
-
"optionalAsRequired": 0
|
|
368
|
+
"optionalAsRequired": 0,
|
|
369
|
+
"bindingOpen": 0
|
|
281
370
|
},
|
|
282
371
|
"socket": {
|
|
283
372
|
"droppedElements": 0,
|
|
@@ -285,7 +374,8 @@
|
|
|
285
374
|
"recordTables": 0,
|
|
286
375
|
"multiReturn": 0,
|
|
287
376
|
"droppedMembers": 0,
|
|
288
|
-
"optionalAsRequired": 0
|
|
377
|
+
"optionalAsRequired": 0,
|
|
378
|
+
"bindingOpen": 0
|
|
289
379
|
},
|
|
290
380
|
"sound": {
|
|
291
381
|
"droppedElements": 0,
|
|
@@ -293,7 +383,8 @@
|
|
|
293
383
|
"recordTables": 0,
|
|
294
384
|
"multiReturn": 0,
|
|
295
385
|
"droppedMembers": 0,
|
|
296
|
-
"optionalAsRequired": 0
|
|
386
|
+
"optionalAsRequired": 0,
|
|
387
|
+
"bindingOpen": 0
|
|
297
388
|
},
|
|
298
389
|
"sprite": {
|
|
299
390
|
"droppedElements": 0,
|
|
@@ -301,7 +392,8 @@
|
|
|
301
392
|
"recordTables": 0,
|
|
302
393
|
"multiReturn": 0,
|
|
303
394
|
"droppedMembers": 0,
|
|
304
|
-
"optionalAsRequired": 0
|
|
395
|
+
"optionalAsRequired": 0,
|
|
396
|
+
"bindingOpen": 0
|
|
305
397
|
},
|
|
306
398
|
"sys": {
|
|
307
399
|
"droppedElements": 0,
|
|
@@ -309,7 +401,8 @@
|
|
|
309
401
|
"recordTables": 0,
|
|
310
402
|
"multiReturn": 0,
|
|
311
403
|
"droppedMembers": 0,
|
|
312
|
-
"optionalAsRequired": 0
|
|
404
|
+
"optionalAsRequired": 0,
|
|
405
|
+
"bindingOpen": 0
|
|
313
406
|
},
|
|
314
407
|
"tilemap": {
|
|
315
408
|
"droppedElements": 0,
|
|
@@ -317,7 +410,8 @@
|
|
|
317
410
|
"recordTables": 0,
|
|
318
411
|
"multiReturn": 0,
|
|
319
412
|
"droppedMembers": 0,
|
|
320
|
-
"optionalAsRequired": 0
|
|
413
|
+
"optionalAsRequired": 0,
|
|
414
|
+
"bindingOpen": 0
|
|
321
415
|
},
|
|
322
416
|
"timer": {
|
|
323
417
|
"droppedElements": 0,
|
|
@@ -325,7 +419,8 @@
|
|
|
325
419
|
"recordTables": 0,
|
|
326
420
|
"multiReturn": 0,
|
|
327
421
|
"droppedMembers": 0,
|
|
328
|
-
"optionalAsRequired": 0
|
|
422
|
+
"optionalAsRequired": 0,
|
|
423
|
+
"bindingOpen": 0
|
|
329
424
|
},
|
|
330
425
|
"types": {
|
|
331
426
|
"droppedElements": 0,
|
|
@@ -333,7 +428,8 @@
|
|
|
333
428
|
"recordTables": 0,
|
|
334
429
|
"multiReturn": 0,
|
|
335
430
|
"droppedMembers": 0,
|
|
336
|
-
"optionalAsRequired": 0
|
|
431
|
+
"optionalAsRequired": 0,
|
|
432
|
+
"bindingOpen": 0
|
|
337
433
|
},
|
|
338
434
|
"vmath": {
|
|
339
435
|
"droppedElements": 0,
|
|
@@ -341,7 +437,8 @@
|
|
|
341
437
|
"recordTables": 0,
|
|
342
438
|
"multiReturn": 0,
|
|
343
439
|
"droppedMembers": 0,
|
|
344
|
-
"optionalAsRequired": 0
|
|
440
|
+
"optionalAsRequired": 0,
|
|
441
|
+
"bindingOpen": 0
|
|
345
442
|
},
|
|
346
443
|
"webview": {
|
|
347
444
|
"droppedElements": 0,
|
|
@@ -349,7 +446,8 @@
|
|
|
349
446
|
"recordTables": 0,
|
|
350
447
|
"multiReturn": 0,
|
|
351
448
|
"droppedMembers": 0,
|
|
352
|
-
"optionalAsRequired": 0
|
|
449
|
+
"optionalAsRequired": 0,
|
|
450
|
+
"bindingOpen": 0
|
|
353
451
|
},
|
|
354
452
|
"window": {
|
|
355
453
|
"droppedElements": 0,
|
|
@@ -357,7 +455,8 @@
|
|
|
357
455
|
"recordTables": 0,
|
|
358
456
|
"multiReturn": 0,
|
|
359
457
|
"droppedMembers": 0,
|
|
360
|
-
"optionalAsRequired": 0
|
|
458
|
+
"optionalAsRequired": 0,
|
|
459
|
+
"bindingOpen": 0
|
|
361
460
|
},
|
|
362
461
|
"zlib": {
|
|
363
462
|
"droppedElements": 0,
|
|
@@ -365,6 +464,7 @@
|
|
|
365
464
|
"recordTables": 0,
|
|
366
465
|
"multiReturn": 0,
|
|
367
466
|
"droppedMembers": 0,
|
|
368
|
-
"optionalAsRequired": 0
|
|
467
|
+
"optionalAsRequired": 0,
|
|
468
|
+
"bindingOpen": 0
|
|
369
469
|
}
|
|
370
470
|
}
|
|
@@ -10,7 +10,23 @@ import {
|
|
|
10
10
|
type VersionSurface,
|
|
11
11
|
validateAvailability,
|
|
12
12
|
} from "../src/api-availability";
|
|
13
|
-
import { type ApiModule, parseDefoldApiDoc } from "../src/api-doc";
|
|
13
|
+
import { type ApiModule, parseDefoldApiDoc, withholdOverloads } from "../src/api-doc";
|
|
14
|
+
import {
|
|
15
|
+
buildIdentityVocabulary,
|
|
16
|
+
type IdentityCorrections,
|
|
17
|
+
type IdentityVocabulary,
|
|
18
|
+
} from "../src/api-identity";
|
|
19
|
+
import { correctionPins } from "../src/correction-pins";
|
|
20
|
+
import {
|
|
21
|
+
CONSTANT_UNION_ALIASES,
|
|
22
|
+
HAND_DECLARED_OPTIONAL_SLOTS,
|
|
23
|
+
OPTIONAL_SLOT_CORRECTIONS,
|
|
24
|
+
PARAM_TYPE_CORRECTIONS,
|
|
25
|
+
REQUIRED_SLOT_CORRECTIONS,
|
|
26
|
+
RETURN_TYPE_CORRECTIONS,
|
|
27
|
+
routeTypeDeclarations,
|
|
28
|
+
} from "../src/emit-dts";
|
|
29
|
+
import { splitTopLevel } from "../src/luals-type-expr";
|
|
14
30
|
import { type ApiTarget, loadApiTargets, loadTargetModules } from "./regen";
|
|
15
31
|
|
|
16
32
|
const PACKAGE_ROOT = resolve(import.meta.dir, "..");
|
|
@@ -71,6 +87,56 @@ export function loadMigrationCatalog(path: string = MIGRATIONS_PATH): ApiMigrati
|
|
|
71
87
|
return raw as ApiMigrationCatalog;
|
|
72
88
|
}
|
|
73
89
|
|
|
90
|
+
// The emitter's corrections in the form identity applies them.
|
|
91
|
+
export function identityCorrections(): IdentityCorrections {
|
|
92
|
+
const union = (ts: string): string[] => splitTopLevel(ts, "|").map((arm) => arm.trim());
|
|
93
|
+
return {
|
|
94
|
+
optionalSlots: [...OPTIONAL_SLOT_CORRECTIONS.keys(), ...HAND_DECLARED_OPTIONAL_SLOTS.keys()],
|
|
95
|
+
requiredSlots: [...REQUIRED_SLOT_CORRECTIONS.keys()],
|
|
96
|
+
parameterCorrections: Object.fromEntries(
|
|
97
|
+
[...PARAM_TYPE_CORRECTIONS].map(([key, correction]) => [
|
|
98
|
+
key,
|
|
99
|
+
{
|
|
100
|
+
pins: correctionPins(correction),
|
|
101
|
+
...(correction.adds === undefined ? {} : { adds: union(correction.adds) }),
|
|
102
|
+
...(correction.removes === undefined ? {} : { removes: [...correction.removes] }),
|
|
103
|
+
},
|
|
104
|
+
]),
|
|
105
|
+
),
|
|
106
|
+
returnCorrections: Object.fromEntries(
|
|
107
|
+
[...RETURN_TYPE_CORRECTIONS].map(([element, correction]) => [
|
|
108
|
+
element,
|
|
109
|
+
{
|
|
110
|
+
pins: correctionPins(correction),
|
|
111
|
+
replaces: union(correction.ts),
|
|
112
|
+
...(correction.slot === undefined ? {} : { slot: correction.slot }),
|
|
113
|
+
},
|
|
114
|
+
]),
|
|
115
|
+
),
|
|
116
|
+
constantFamilies: Object.fromEntries(
|
|
117
|
+
CONSTANT_UNION_ALIASES.map((alias) => [`${alias.home}.${alias.name}`, alias.members]),
|
|
118
|
+
),
|
|
119
|
+
};
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
export const IDENTITY_VOCABULARY_PATH = resolve(PACKAGE_ROOT, "identity-vocabulary.json");
|
|
123
|
+
|
|
124
|
+
// The vocabulary every committed target declares, which the availability
|
|
125
|
+
// identities and every downstream join resolve ref-doc tokens against.
|
|
126
|
+
export function deriveIdentityVocabulary(
|
|
127
|
+
packageRoot: string = PACKAGE_ROOT,
|
|
128
|
+
registryPath: string = resolve(packageRoot, "api-targets.json"),
|
|
129
|
+
): IdentityVocabulary {
|
|
130
|
+
return buildIdentityVocabulary(
|
|
131
|
+
loadApiTargets(registryPath)
|
|
132
|
+
.filter((target) => target.source == null)
|
|
133
|
+
.flatMap((target) =>
|
|
134
|
+
loadTargetModules(target, packageRoot).map((entry) => parseDefoldApiDoc(entry.doc)),
|
|
135
|
+
),
|
|
136
|
+
identityCorrections(),
|
|
137
|
+
);
|
|
138
|
+
}
|
|
139
|
+
|
|
74
140
|
export interface BuildAvailabilityOptions {
|
|
75
141
|
readonly packageRoot?: string;
|
|
76
142
|
readonly registryPath?: string;
|
|
@@ -84,23 +150,33 @@ export function buildAvailabilityArtifact(
|
|
|
84
150
|
const registryPath = options.registryPath ?? resolve(packageRoot, "api-targets.json");
|
|
85
151
|
const targets = loadApiTargets(registryPath);
|
|
86
152
|
const completeTargets = selectCompleteVersionSurfaces(targets);
|
|
153
|
+
// Routed per target, like regen, so an identity names the namespace whose
|
|
154
|
+
// declarations export it and routing never carries a symbol across versions.
|
|
87
155
|
const parse = (target: ApiTarget): ApiModule[] =>
|
|
88
|
-
|
|
156
|
+
routeTypeDeclarations(
|
|
157
|
+
loadTargetModules(target, packageRoot).map((entry) =>
|
|
158
|
+
withholdOverloads(parseDefoldApiDoc(entry.doc), entry.skipOverloads ?? []),
|
|
159
|
+
),
|
|
160
|
+
);
|
|
89
161
|
const surfaces: VersionSurface[] = completeTargets.map((target) => ({
|
|
90
162
|
version: versionOf(target),
|
|
91
163
|
modules: parse(target),
|
|
92
164
|
}));
|
|
93
165
|
const versions = surfaces.map((surface) => surface.version);
|
|
166
|
+
const vocabulary = deriveIdentityVocabulary(packageRoot, registryPath);
|
|
94
167
|
|
|
95
|
-
const derived = deriveAvailabilityMatrix({ surfaces });
|
|
168
|
+
const derived = deriveAvailabilityMatrix({ surfaces, vocabulary });
|
|
96
169
|
const catalog =
|
|
97
170
|
options.catalog ?? loadMigrationCatalog(resolve(packageRoot, "api-migrations.json"));
|
|
98
|
-
const universe = collectSymbolIdentities(
|
|
171
|
+
const universe = collectSymbolIdentities(
|
|
172
|
+
surfaces.flatMap((surface) => surface.modules),
|
|
173
|
+
vocabulary,
|
|
174
|
+
);
|
|
99
175
|
const records = applyMigrationOverlay({ derived, catalog, universe, versions });
|
|
100
176
|
|
|
101
177
|
const newestSurface = surfaces[0] as VersionSurface;
|
|
102
178
|
const currentSurface = new Set(
|
|
103
|
-
collectSymbolIdentities(newestSurface.modules).map(symbolIdentityKey),
|
|
179
|
+
collectSymbolIdentities(newestSurface.modules, vocabulary).map(symbolIdentityKey),
|
|
104
180
|
);
|
|
105
181
|
const knownIdentities = new Set(universe.map(symbolIdentityKey));
|
|
106
182
|
const errors = validateAvailability({ records, versions, currentSurface, knownIdentities });
|
|
@@ -111,13 +187,10 @@ export function buildAvailabilityArtifact(
|
|
|
111
187
|
return { versions, records };
|
|
112
188
|
}
|
|
113
189
|
|
|
114
|
-
function biomeFormatJson(raw: string): string {
|
|
115
|
-
const out = Bun.spawnSync(
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
stdin: Buffer.from(raw),
|
|
119
|
-
},
|
|
120
|
-
);
|
|
190
|
+
function biomeFormatJson(raw: string, name = "api-availability.json"): string {
|
|
191
|
+
const out = Bun.spawnSync(["bunx", "biome", "format", `--stdin-file-path=${name}`], {
|
|
192
|
+
stdin: Buffer.from(raw),
|
|
193
|
+
});
|
|
121
194
|
if (out.exitCode !== 0) {
|
|
122
195
|
throw new Error(`biome format failed: ${out.stderr.toString()}`);
|
|
123
196
|
}
|
|
@@ -131,6 +204,11 @@ export function serializeAvailabilityArtifact(artifact: AvailabilityArtifact): s
|
|
|
131
204
|
if (import.meta.main) {
|
|
132
205
|
const artifact = buildAvailabilityArtifact();
|
|
133
206
|
if (process.argv.includes("--write")) {
|
|
207
|
+
Bun.write(
|
|
208
|
+
IDENTITY_VOCABULARY_PATH,
|
|
209
|
+
biomeFormatJson(JSON.stringify(deriveIdentityVocabulary()), "identity-vocabulary.json"),
|
|
210
|
+
);
|
|
211
|
+
console.log(`wrote ${IDENTITY_VOCABULARY_PATH}`);
|
|
134
212
|
Bun.write(AVAILABILITY_PATH, serializeAvailabilityArtifact(artifact));
|
|
135
213
|
console.log(`wrote ${AVAILABILITY_PATH} (${artifact.records.length} records)`);
|
|
136
214
|
} else {
|
|
@@ -3,6 +3,7 @@ import { symbolIdentityKey } from "../src/api-availability";
|
|
|
3
3
|
import type { SlotTypes } from "../src/emit-dts";
|
|
4
4
|
import { selectCompleteVersionSurfaces, versionOf } from "./generate-api-availability";
|
|
5
5
|
import {
|
|
6
|
+
type ApiTarget,
|
|
6
7
|
generateModuleSignatures,
|
|
7
8
|
loadApiTargets,
|
|
8
9
|
loadTargetModules,
|
|
@@ -27,6 +28,10 @@ export interface SignaturesArtifact {
|
|
|
27
28
|
export interface BuildSignaturesOptions {
|
|
28
29
|
readonly packageRoot?: string;
|
|
29
30
|
readonly registryPath?: string;
|
|
31
|
+
// The constants each target's engine registers, which gate the undocumented
|
|
32
|
+
// constant back-fill. Omitted, every target is emitted ungated. Supplied by the
|
|
33
|
+
// in-repo callers only: the vendored bindings it reads are not published.
|
|
34
|
+
readonly registeredConstantsOf?: (target: ApiTarget) => ReadonlySet<string> | undefined;
|
|
30
35
|
}
|
|
31
36
|
|
|
32
37
|
// The authored replacement for a symbol the skip filter withheld, read from the
|
|
@@ -74,8 +79,12 @@ export function buildSignaturesArtifact(options: BuildSignaturesOptions = {}): S
|
|
|
74
79
|
const version = versionOf(target);
|
|
75
80
|
const perSymbol: Record<string, string> = {};
|
|
76
81
|
const perSymbolSlots: Record<string, SlotTypes> = {};
|
|
82
|
+
const registeredConstants = options.registeredConstantsOf?.(target);
|
|
77
83
|
for (const entry of loadTargetModules(target, packageRoot)) {
|
|
78
|
-
for (const signature of generateModuleSignatures(
|
|
84
|
+
for (const signature of generateModuleSignatures(
|
|
85
|
+
entry,
|
|
86
|
+
registeredConstants ? { registeredConstants } : undefined,
|
|
87
|
+
)) {
|
|
79
88
|
const key = symbolIdentityKey(signature.identity);
|
|
80
89
|
perSymbol[key] = signature.tsSignature;
|
|
81
90
|
if (Object.keys(signature.slotTypes).length > 0) {
|
|
@@ -120,7 +129,8 @@ export function serializeSignaturesArtifact(artifact: SignaturesArtifact): strin
|
|
|
120
129
|
}
|
|
121
130
|
|
|
122
131
|
if (import.meta.main) {
|
|
123
|
-
const
|
|
132
|
+
const { registeredConstantFqns } = await import("./engine-binding-extract");
|
|
133
|
+
const artifact = buildSignaturesArtifact({ registeredConstantsOf: registeredConstantFqns });
|
|
124
134
|
if (process.argv.includes("--write")) {
|
|
125
135
|
Bun.write(SIGNATURES_PATH, serializeSignaturesArtifact(artifact));
|
|
126
136
|
const count = Object.values(artifact.versions).reduce((n, v) => n + Object.keys(v).length, 0);
|