typebulb 0.12.0 → 0.13.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (191) hide show
  1. package/dist/agents/claude/client.js +341 -205
  2. package/dist/agents/claude/styles.css +3 -21
  3. package/dist/ai/aiProvider.d.ts +59 -0
  4. package/dist/ai/aiProvider.d.ts.map +1 -0
  5. package/dist/ai/aiProvider.js +109 -0
  6. package/dist/ai/aiProvider.js.map +1 -0
  7. package/dist/ai/aiProviders.d.ts +28 -0
  8. package/dist/ai/aiProviders.d.ts.map +1 -0
  9. package/dist/ai/aiProviders.js +47 -0
  10. package/dist/ai/aiProviders.js.map +1 -0
  11. package/dist/ai/chat.d.ts +32 -0
  12. package/dist/ai/chat.d.ts.map +1 -0
  13. package/dist/ai/chat.js +5 -0
  14. package/dist/ai/chat.js.map +1 -0
  15. package/dist/ai/index.d.ts +9 -0
  16. package/dist/ai/index.d.ts.map +1 -0
  17. package/dist/ai/index.js +11 -0
  18. package/dist/ai/index.js.map +1 -0
  19. package/dist/ai/protocol.d.ts +18 -0
  20. package/dist/ai/protocol.d.ts.map +1 -0
  21. package/dist/ai/protocol.js +3 -0
  22. package/dist/ai/protocol.js.map +1 -0
  23. package/dist/ai/providers/anthropic.d.ts +123 -0
  24. package/dist/ai/providers/anthropic.d.ts.map +1 -0
  25. package/dist/ai/providers/anthropic.js +130 -0
  26. package/dist/ai/providers/anthropic.js.map +1 -0
  27. package/dist/ai/providers/gemini.d.ts +62 -0
  28. package/dist/ai/providers/gemini.d.ts.map +1 -0
  29. package/dist/ai/providers/gemini.js +136 -0
  30. package/dist/ai/providers/gemini.js.map +1 -0
  31. package/dist/ai/providers/openAI.d.ts +146 -0
  32. package/dist/ai/providers/openAI.d.ts.map +1 -0
  33. package/dist/ai/providers/openAI.js +127 -0
  34. package/dist/ai/providers/openAI.js.map +1 -0
  35. package/dist/ai/providers/openRouter.d.ts +65 -0
  36. package/dist/ai/providers/openRouter.d.ts.map +1 -0
  37. package/dist/ai/providers/openRouter.js +82 -0
  38. package/dist/ai/providers/openRouter.js.map +1 -0
  39. package/dist/ai/sseParser.d.ts +32 -0
  40. package/dist/ai/sseParser.d.ts.map +1 -0
  41. package/dist/ai/sseParser.js +121 -0
  42. package/dist/ai/sseParser.js.map +1 -0
  43. package/dist/ai/stream.d.ts +20 -0
  44. package/dist/ai/stream.d.ts.map +1 -0
  45. package/dist/ai/stream.js +6 -0
  46. package/dist/ai/stream.js.map +1 -0
  47. package/dist/dts/cache.d.ts +30 -0
  48. package/dist/dts/cache.d.ts.map +1 -0
  49. package/dist/dts/cache.js +2 -0
  50. package/dist/dts/cache.js.map +1 -0
  51. package/dist/dts/definitelyTypedProvider.d.ts +20 -0
  52. package/dist/dts/definitelyTypedProvider.d.ts.map +1 -0
  53. package/dist/dts/definitelyTypedProvider.js +93 -0
  54. package/dist/dts/definitelyTypedProvider.js.map +1 -0
  55. package/dist/dts/dtsConfig.d.ts +12 -0
  56. package/dist/dts/dtsConfig.d.ts.map +1 -0
  57. package/dist/dts/dtsConfig.js +24 -0
  58. package/dist/dts/dtsConfig.js.map +1 -0
  59. package/dist/dts/dtsResolver.d.ts +63 -0
  60. package/dist/dts/dtsResolver.d.ts.map +1 -0
  61. package/dist/dts/dtsResolver.js +272 -0
  62. package/dist/dts/dtsResolver.js.map +1 -0
  63. package/dist/dts/fetchDts.d.ts +13 -0
  64. package/dist/dts/fetchDts.d.ts.map +1 -0
  65. package/dist/dts/fetchDts.js +46 -0
  66. package/dist/dts/fetchDts.js.map +1 -0
  67. package/dist/dts/httpFetch.d.ts +17 -0
  68. package/dist/dts/httpFetch.d.ts.map +1 -0
  69. package/dist/dts/httpFetch.js +35 -0
  70. package/dist/dts/httpFetch.js.map +1 -0
  71. package/dist/dts/index.d.ts +14 -0
  72. package/dist/dts/index.d.ts.map +1 -0
  73. package/dist/dts/index.js +14 -0
  74. package/dist/dts/index.js.map +1 -0
  75. package/dist/dts/libManifest.d.ts +41 -0
  76. package/dist/dts/libManifest.d.ts.map +1 -0
  77. package/dist/dts/libManifest.js +109 -0
  78. package/dist/dts/libManifest.js.map +1 -0
  79. package/dist/dts/negativeCacheHelper.d.ts +29 -0
  80. package/dist/dts/negativeCacheHelper.d.ts.map +1 -0
  81. package/dist/dts/negativeCacheHelper.js +44 -0
  82. package/dist/dts/negativeCacheHelper.js.map +1 -0
  83. package/dist/dts/tarballFetcher.d.ts +13 -0
  84. package/dist/dts/tarballFetcher.d.ts.map +1 -0
  85. package/dist/dts/tarballFetcher.js +58 -0
  86. package/dist/dts/tarballFetcher.js.map +1 -0
  87. package/dist/dts/tbTypings.d.ts +15 -0
  88. package/dist/dts/tbTypings.d.ts.map +1 -0
  89. package/dist/dts/tbTypings.js +210 -0
  90. package/dist/dts/tbTypings.js.map +1 -0
  91. package/dist/dts/typeProvider.d.ts +37 -0
  92. package/dist/dts/typeProvider.d.ts.map +1 -0
  93. package/dist/dts/typeProvider.js +30 -0
  94. package/dist/dts/typeProvider.js.map +1 -0
  95. package/dist/dts/typeRefScanner.d.ts +8 -0
  96. package/dist/dts/typeRefScanner.d.ts.map +1 -0
  97. package/dist/dts/typeRefScanner.js +33 -0
  98. package/dist/dts/typeRefScanner.js.map +1 -0
  99. package/dist/dts/typescriptProvider.d.ts +21 -0
  100. package/dist/dts/typescriptProvider.d.ts.map +1 -0
  101. package/dist/dts/typescriptProvider.js +140 -0
  102. package/dist/dts/typescriptProvider.js.map +1 -0
  103. package/dist/dts/virtualFs.d.ts +20 -0
  104. package/dist/dts/virtualFs.d.ts.map +1 -0
  105. package/dist/dts/virtualFs.js +48 -0
  106. package/dist/dts/virtualFs.js.map +1 -0
  107. package/dist/format/chunks.d.ts +20 -0
  108. package/dist/format/chunks.d.ts.map +1 -0
  109. package/dist/format/chunks.js +51 -0
  110. package/dist/format/chunks.js.map +1 -0
  111. package/dist/format/config.d.ts +17 -0
  112. package/dist/format/config.d.ts.map +1 -0
  113. package/dist/format/config.js +13 -0
  114. package/dist/format/config.js.map +1 -0
  115. package/dist/format/detection.d.ts +11 -0
  116. package/dist/format/detection.d.ts.map +1 -0
  117. package/dist/format/detection.js +43 -0
  118. package/dist/format/detection.js.map +1 -0
  119. package/dist/format/index.d.ts +8 -0
  120. package/dist/format/index.d.ts.map +1 -0
  121. package/dist/format/index.js +8 -0
  122. package/dist/format/index.js.map +1 -0
  123. package/dist/format/parse.d.ts +20 -0
  124. package/dist/format/parse.d.ts.map +1 -0
  125. package/dist/format/parse.js +88 -0
  126. package/dist/format/parse.js.map +1 -0
  127. package/dist/format/registry.d.ts +24 -0
  128. package/dist/format/registry.d.ts.map +1 -0
  129. package/dist/format/registry.js +31 -0
  130. package/dist/format/registry.js.map +1 -0
  131. package/dist/format/serialize.d.ts +8 -0
  132. package/dist/format/serialize.d.ts.map +1 -0
  133. package/dist/format/serialize.js +30 -0
  134. package/dist/format/serialize.js.map +1 -0
  135. package/dist/format/yaml.d.ts +4 -0
  136. package/dist/format/yaml.d.ts.map +1 -0
  137. package/dist/format/yaml.js +17 -0
  138. package/dist/format/yaml.js.map +1 -0
  139. package/dist/index.js +385 -84
  140. package/dist/lint/index.d.ts +29 -0
  141. package/dist/lint/index.d.ts.map +1 -0
  142. package/dist/lint/index.js +257 -0
  143. package/dist/lint/index.js.map +1 -0
  144. package/dist/render.js +174 -38
  145. package/dist/resolver/attempt.d.ts +2 -0
  146. package/dist/resolver/attempt.d.ts.map +1 -0
  147. package/dist/resolver/attempt.js +9 -0
  148. package/dist/resolver/attempt.js.map +1 -0
  149. package/dist/resolver/cdnClient.d.ts +46 -0
  150. package/dist/resolver/cdnClient.d.ts.map +1 -0
  151. package/dist/resolver/cdnClient.js +107 -0
  152. package/dist/resolver/cdnClient.js.map +1 -0
  153. package/dist/resolver/cdnConstants.d.ts +10 -0
  154. package/dist/resolver/cdnConstants.d.ts.map +1 -0
  155. package/dist/resolver/cdnConstants.js +10 -0
  156. package/dist/resolver/cdnConstants.js.map +1 -0
  157. package/dist/resolver/index.d.ts +20 -0
  158. package/dist/resolver/index.d.ts.map +1 -0
  159. package/dist/resolver/index.js +20 -0
  160. package/dist/resolver/index.js.map +1 -0
  161. package/dist/resolver/packageRef.d.ts +21 -0
  162. package/dist/resolver/packageRef.d.ts.map +1 -0
  163. package/dist/resolver/packageRef.js +89 -0
  164. package/dist/resolver/packageRef.js.map +1 -0
  165. package/dist/resolver/packageService.d.ts +40 -0
  166. package/dist/resolver/packageService.d.ts.map +1 -0
  167. package/dist/resolver/packageService.js +156 -0
  168. package/dist/resolver/packageService.js.map +1 -0
  169. package/dist/resolver/peerResolver.d.ts +33 -0
  170. package/dist/resolver/peerResolver.d.ts.map +1 -0
  171. package/dist/resolver/peerResolver.js +66 -0
  172. package/dist/resolver/peerResolver.js.map +1 -0
  173. package/dist/resolver/semver.d.ts +17 -0
  174. package/dist/resolver/semver.d.ts.map +1 -0
  175. package/dist/resolver/semver.js +56 -0
  176. package/dist/resolver/semver.js.map +1 -0
  177. package/dist/resolver/types.d.ts +33 -0
  178. package/dist/resolver/types.d.ts.map +1 -0
  179. package/dist/resolver/types.js +2 -0
  180. package/dist/resolver/types.js.map +1 -0
  181. package/dist/resolver/versionResolver.d.ts +29 -0
  182. package/dist/resolver/versionResolver.d.ts.map +1 -0
  183. package/dist/resolver/versionResolver.js +79 -0
  184. package/dist/resolver/versionResolver.js.map +1 -0
  185. package/dist/servers.js +142 -3
  186. package/dist/transpile/index.d.ts +19 -0
  187. package/dist/transpile/index.d.ts.map +1 -0
  188. package/dist/transpile/index.js +23 -0
  189. package/dist/transpile/index.js.map +1 -0
  190. package/dist/tsconfig.tsbuildinfo +1 -0
  191. package/package.json +99 -68
@@ -0,0 +1,272 @@
1
+ import pLimit from 'p-limit';
2
+ import { PackageRef, } from 'typebulb/resolver';
3
+ import { TypescriptProvider } from './typescriptProvider.js';
4
+ import { DefinitelyTypedProvider } from './definitelyTypedProvider.js';
5
+ import { TypeRefScanner } from './typeRefScanner.js';
6
+ import { VirtualFs } from './virtualFs.js';
7
+ import { createFetchDts } from './fetchDts.js';
8
+ import { DtsConfig, isDtsFile } from './dtsConfig.js';
9
+ /**
10
+ * Resolves .d.ts files for a bulb's import set. Constructed via
11
+ * `createDtsResolver(deps)`; each instance owns its own providers, in-flight
12
+ * map, virtual filesystem, and fetch closure.
13
+ *
14
+ * Web client wires Dexie-backed cache + typebulb/resolver web bits.
15
+ * CLI wires FS-backed cache + typebulb/resolver Node bits.
16
+ */
17
+ export class DtsResolver {
18
+ constructor(deps) {
19
+ this.inFlight = new Map();
20
+ this.scanner = new TypeRefScanner();
21
+ this.cache = deps.cache;
22
+ this.cdnClient = deps.cdnClient;
23
+ this.versionResolver = deps.versionResolver;
24
+ this.packageService = deps.packageService;
25
+ this.fetchDts = createFetchDts(deps.cache);
26
+ this.typescriptProvider = new TypescriptProvider(this.fetchDts, deps.cdnClient);
27
+ this.definitelyTypedProvider = new DefinitelyTypedProvider(this.fetchDts, deps.cdnClient, deps.cache);
28
+ this.virtualFs = new VirtualFs();
29
+ }
30
+ withInFlight(pkg, factory) {
31
+ const existing = this.inFlight.get(pkg);
32
+ if (existing)
33
+ return existing;
34
+ const p = factory().finally(() => this.inFlight.delete(pkg));
35
+ this.inFlight.set(pkg, p);
36
+ return p;
37
+ }
38
+ /** Reset in-flight requests, e.g. when ranges change reactively in the web client. */
39
+ invalidate() {
40
+ this.virtualFs.bumpEpoch();
41
+ this.inFlight.clear();
42
+ }
43
+ capArray(items, limit) {
44
+ return items.length <= limit ? items : items.slice(0, limit);
45
+ }
46
+ pushFileIfNew(files, path, content) {
47
+ if (!files.some(f => f.path === path))
48
+ files.push({ path, content });
49
+ }
50
+ createStubDef(pkg) {
51
+ const mainPath = this.virtualFs.pathForMain(pkg);
52
+ const stub = 'export const _shim: any; export default _shim;';
53
+ return { pkg, mainPath, files: [{ path: mainPath, content: stub }], shims: [{ module: pkg, path: mainPath }] };
54
+ }
55
+ async trySubpathWithRootFallback(pkg, ranges) {
56
+ const parsed = new PackageRef(pkg);
57
+ return parsed.subpath ? this.fetchRootDts(parsed.name, ranges) : undefined;
58
+ }
59
+ async fetchViaProviders(pkg) {
60
+ for (const provider of [this.typescriptProvider, this.definitelyTypedProvider]) {
61
+ try {
62
+ const res = await provider.resolve(pkg);
63
+ if (res?.dts)
64
+ return res;
65
+ }
66
+ catch { }
67
+ }
68
+ return undefined;
69
+ }
70
+ subpathsMatch(requested, resolved) {
71
+ return new PackageRef(requested).subpath === new PackageRef(resolved).subpath;
72
+ }
73
+ async fetchRootDts(pkg, ranges) {
74
+ const { effectivePackage: effectivePkg, root, pinned } = await this.versionResolver.effectivePackage(pkg, ranges);
75
+ const cached = await this.cache.getCachedDts(effectivePkg);
76
+ if (cached?.content) {
77
+ const fallbackUrl = cached.url ?? this.cdnClient.file(pinned ? `${root}@${pinned}` : root, 'index.d.ts');
78
+ return { dts: cached.content, url: fallbackUrl, resolvedPkg: effectivePkg };
79
+ }
80
+ let res;
81
+ try {
82
+ res = await this.fetchViaProviders(effectivePkg);
83
+ }
84
+ catch {
85
+ return undefined;
86
+ }
87
+ if (!res?.dts || !res.url)
88
+ return undefined;
89
+ try {
90
+ await this.cache.setCachedFile(res.url, res.dts);
91
+ }
92
+ catch { }
93
+ if (this.subpathsMatch(effectivePkg, res.resolvedPkg || effectivePkg)) {
94
+ try {
95
+ await this.cache.setCachedDts(effectivePkg, res.dts, res.url);
96
+ }
97
+ catch { }
98
+ return res;
99
+ }
100
+ return undefined;
101
+ }
102
+ extractPackageRootUrl(fileUrl) {
103
+ const match = fileUrl.pathname.match(/^(.+@[^/]+\/)/);
104
+ if (match)
105
+ return new URL(match[1], fileUrl.origin);
106
+ return new URL('./', fileUrl);
107
+ }
108
+ toVirtualPath(packageRootUrl, fileUrl, contentPkg) {
109
+ const relPath = fileUrl.pathname.startsWith(packageRootUrl.pathname)
110
+ ? fileUrl.pathname.slice(packageRootUrl.pathname.length)
111
+ : `__deps__/${encodeURIComponent(fileUrl.toString()).replace(/%/g, '_')}.d.ts`;
112
+ return this.virtualFs.pathFor(contentPkg, relPath);
113
+ }
114
+ computeEntryPath(url, contentPkg) {
115
+ if (!url) {
116
+ return { mainPath: this.virtualFs.pathForMain(contentPkg), packageRootUrl: undefined };
117
+ }
118
+ const urlObj = new URL(url);
119
+ const packageRootUrl = this.extractPackageRootUrl(urlObj);
120
+ const mainPath = this.toVirtualPath(packageRootUrl, urlObj, contentPkg);
121
+ return { mainPath, packageRootUrl };
122
+ }
123
+ async expandRelativeRefs(dts, url, contentpkg, files, visited = new Set(), packageRootUrl) {
124
+ if (visited.has(url))
125
+ return;
126
+ visited.add(url);
127
+ if (visited.size > DtsConfig.maxRelativeTypeRefs)
128
+ return;
129
+ try {
130
+ const base = new URL(url);
131
+ const baseDir = new URL('./', base);
132
+ packageRootUrl ?? (packageRootUrl = this.extractPackageRootUrl(base));
133
+ const refs = this.capArray(this.scanner.collectRelativeTypeRefs(dts), DtsConfig.maxRelativeTypeRefs);
134
+ for (const rel of refs) {
135
+ await this.tryRelativeRef(rel, baseDir, packageRootUrl, contentpkg, files, visited);
136
+ }
137
+ }
138
+ catch { }
139
+ }
140
+ /**
141
+ * Resolve one relative ref by trying each declaration-candidate URL in turn.
142
+ * Exits as soon as one candidate succeeds, but the caller continues to the
143
+ * next ref. (Subtle: this MUST be a separate function — folding it into the
144
+ * caller's loop body lets `return` short-circuit all remaining refs.)
145
+ */
146
+ async tryRelativeRef(rel, baseDir, packageRootUrl, contentpkg, files, visited) {
147
+ try {
148
+ const abs = new URL(rel, baseDir);
149
+ const runtimePath = abs.pathname + abs.search;
150
+ const candidates = isDtsFile(runtimePath)
151
+ ? [runtimePath]
152
+ : this.typescriptProvider.declarationCandidatesFor(runtimePath);
153
+ for (const cand of candidates) {
154
+ const target = new URL(cand, abs);
155
+ const targetUrl = target.toString();
156
+ if (visited.has(targetUrl))
157
+ return;
158
+ const out = await this.fetchDts(targetUrl);
159
+ if (out?.dts) {
160
+ const vpath = this.toVirtualPath(packageRootUrl, new URL(out.url), contentpkg);
161
+ this.pushFileIfNew(files, vpath, out.dts);
162
+ await this.expandRelativeRefs(out.dts, out.url, contentpkg, files, visited, packageRootUrl);
163
+ return;
164
+ }
165
+ }
166
+ }
167
+ catch { }
168
+ }
169
+ isDifferentPackage(mod, contentPkg) {
170
+ if (mod === contentPkg)
171
+ return false;
172
+ return new PackageRef(mod).name !== new PackageRef(contentPkg).name;
173
+ }
174
+ // A package may ship its types as a non-module ambient script — top-level
175
+ // `declare module 'x' { … }` blocks (often a `'x/sub/*'` wildcard) rather than a
176
+ // per-entry ESM .d.ts. That file is not a valid `import … from 'x'` *target*, so a
177
+ // `paths` shim onto it yields TS2306 "is not a module". When the file already
178
+ // declares `specifier` ambiently (exact name or matching wildcard), the shim is both
179
+ // wrong and unnecessary — the declaration itself resolves the import once the file
180
+ // is in the program. Callers suppress the shim and flag the file ambient instead.
181
+ ambientlyDeclares(dts, specifier) {
182
+ for (const m of dts.matchAll(/declare\s+module\s+['"]([^'"]+)['"]/g)) {
183
+ const decl = m[1];
184
+ if (decl === specifier)
185
+ return true;
186
+ if (decl.endsWith('/*') && specifier.startsWith(decl.slice(0, -1)))
187
+ return true;
188
+ }
189
+ return false;
190
+ }
191
+ markFileAmbient(files, path) {
192
+ const f = files.find(x => x.path === path);
193
+ if (f)
194
+ f.ambient = true;
195
+ }
196
+ async prefetchBareDeps(dts, contentPkg, files, shims, ranges) {
197
+ try {
198
+ const bare = this.capArray(this.scanner.collectBareModuleRefs(dts), DtsConfig.maxBareDeps)
199
+ .filter(mod => this.isDifferentPackage(mod, contentPkg));
200
+ if (!bare.length)
201
+ return;
202
+ const visited = new Set([contentPkg]);
203
+ const limit = pLimit(DtsConfig.prefetchConcurrency);
204
+ await Promise.all(bare.map(mod => limit(() => this.prefetchBareDepsRecursive(mod, files, shims, DtsConfig.maxBareDepth, visited, ranges).catch(() => { }))));
205
+ }
206
+ catch { }
207
+ }
208
+ async prefetchBareDepsRecursive(mod, files, shims, depth, visited, ranges) {
209
+ if (depth <= 0 || visited.has(mod))
210
+ return;
211
+ visited.add(mod);
212
+ const dep = await this.fetchRootDts(mod, ranges);
213
+ if (!dep?.dts)
214
+ return;
215
+ const depPkg = dep.resolvedPkg || mod;
216
+ const depMain = this.virtualFs.pathForMain(depPkg);
217
+ this.pushFileIfNew(files, depMain, dep.dts);
218
+ if (this.ambientlyDeclares(dep.dts, mod))
219
+ this.markFileAmbient(files, depMain);
220
+ else
221
+ shims.push({ module: mod, path: depMain });
222
+ if (dep.url)
223
+ await this.expandRelativeRefs(dep.dts, dep.url, depPkg, files);
224
+ const inner = this.capArray(this.scanner.collectBareModuleRefs(dep.dts), DtsConfig.maxBareDeps)
225
+ .filter(next => !visited.has(next));
226
+ for (const next of inner) {
227
+ await this.prefetchBareDepsRecursive(next, files, shims, depth - 1, visited, ranges);
228
+ }
229
+ }
230
+ async resolve(code, ranges, additionalPackages) {
231
+ const explicitImports = await this.packageService.extractImports(code);
232
+ const packages = additionalPackages ? [...explicitImports, ...additionalPackages] : explicitImports;
233
+ const results = await Promise.all(packages.map(s => this.resolveOne(s, ranges)));
234
+ return results.filter((x) => !!x);
235
+ }
236
+ async resolveOne(pkg, ranges) {
237
+ const { effectivePackage } = await this.versionResolver.effectivePackage(pkg, ranges);
238
+ return this.withInFlight(effectivePackage, async () => {
239
+ const res = await this.fetchRootDts(pkg, ranges) ?? await this.trySubpathWithRootFallback(pkg, ranges);
240
+ if (!res)
241
+ return this.createStubDef(pkg);
242
+ return this.buildDefFromContent(pkg, res, res.resolvedPkg || pkg, ranges);
243
+ });
244
+ }
245
+ async buildDefFromContent(publicPkg, fetchResult, requestedPkg, ranges) {
246
+ const { dts, url, resolvedPkg } = fetchResult;
247
+ const fullRef = new PackageRef(resolvedPkg || requestedPkg);
248
+ const contentRoot = fullRef.version ? `${fullRef.name}@${fullRef.version}` : fullRef.name;
249
+ const { mainPath, packageRootUrl } = this.computeEntryPath(url, contentRoot);
250
+ const files = [{ path: mainPath, content: dts }];
251
+ const shims = [];
252
+ if (url)
253
+ await this.expandRelativeRefs(dts, url, contentRoot, files, undefined, packageRootUrl);
254
+ const allContent = files.map(f => f.content).join('\n');
255
+ await this.prefetchBareDeps(allContent, contentRoot, files, shims, ranges);
256
+ const versionedFull = fullRef.format();
257
+ const shimNames = publicPkg === versionedFull ? [publicPkg] : [publicPkg, versionedFull];
258
+ // If the entry dts is an ambient script declaring these specifiers (e.g. a subpath
259
+ // that fell back to a root index.d.ts with a `…/*` wildcard), don't path-map onto
260
+ // the non-module file — include it ambiently and let its declaration resolve.
261
+ const ambient = shimNames.some(m => this.ambientlyDeclares(dts, m));
262
+ if (ambient)
263
+ this.markFileAmbient(files, mainPath);
264
+ else
265
+ shims.push(...shimNames.map(module => ({ module, path: mainPath })));
266
+ return { pkg: publicPkg, mainPath, files, shims, ambient };
267
+ }
268
+ }
269
+ export function createDtsResolver(deps) {
270
+ return new DtsResolver(deps);
271
+ }
272
+ //# sourceMappingURL=dtsResolver.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dtsResolver.js","sourceRoot":"","sources":["../../dts/src/dtsResolver.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ import type { DtsCache } from './cache.js';
2
+ export type FetchOut = {
3
+ dts: string;
4
+ url: string;
5
+ } | undefined;
6
+ /**
7
+ * Factory: returns a `fetchDtsWithCache(url)` function backed by the given
8
+ * persistent DtsCache plus an in-process LRU negative cache and an in-flight
9
+ * dedup map. The closure isolates cache state per resolver instance.
10
+ */
11
+ export declare function createFetchDts(cache: DtsCache): (url: string) => Promise<FetchOut>;
12
+ export type FetchDtsWithCache = ReturnType<typeof createFetchDts>;
13
+ //# sourceMappingURL=fetchDts.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fetchDts.d.ts","sourceRoot":"","sources":["../../dts/src/fetchDts.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAE1C,MAAM,MAAM,QAAQ,GAAG;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,GAAG,SAAS,CAAA;AAE/D;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,QAAQ,IAIJ,KAAK,MAAM,KAAG,OAAO,CAAC,QAAQ,CAAC,CAmCxE;AAED,MAAM,MAAM,iBAAiB,GAAG,UAAU,CAAC,OAAO,cAAc,CAAC,CAAA"}
@@ -0,0 +1,46 @@
1
+ import { LRUCache } from 'lru-cache';
2
+ /**
3
+ * Factory: returns a `fetchDtsWithCache(url)` function backed by the given
4
+ * persistent DtsCache plus an in-process LRU negative cache and an in-flight
5
+ * dedup map. The closure isolates cache state per resolver instance.
6
+ */
7
+ export function createFetchDts(cache) {
8
+ const negativeCache = new LRUCache({ ttl: 10000, max: 500 });
9
+ const inFlight = new Map();
10
+ return async function fetchDtsWithCache(url) {
11
+ try {
12
+ if (await cache.isNegative(url))
13
+ return undefined;
14
+ const neg = negativeCache.get(url);
15
+ if (neg && Date.now() - neg < 10000)
16
+ return undefined;
17
+ const cached = await cache.getCachedFile(url);
18
+ if (cached)
19
+ return { dts: cached, url };
20
+ const existing = inFlight.get(url);
21
+ if (existing)
22
+ return existing;
23
+ const p = (async () => {
24
+ const resp = await fetch(url, { cache: 'no-store' });
25
+ if (!resp.ok) {
26
+ if (resp.status === 404) {
27
+ negativeCache.set(url, Date.now());
28
+ await cache.recordNegative(url);
29
+ }
30
+ return undefined;
31
+ }
32
+ const dts = await resp.text();
33
+ const finalUrl = resp.url || url;
34
+ await cache.clearNegative(url);
35
+ await cache.setCachedFile(finalUrl, dts);
36
+ return { dts, url: finalUrl };
37
+ })();
38
+ inFlight.set(url, p);
39
+ return await p.finally(() => inFlight.delete(url));
40
+ }
41
+ catch {
42
+ return undefined;
43
+ }
44
+ };
45
+ }
46
+ //# sourceMappingURL=fetchDts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fetchDts.js","sourceRoot":"","sources":["../../dts/src/fetchDts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AAKpC;;;;GAIG;AACH,MAAM,UAAU,cAAc,CAAC,KAAe;IAC5C,MAAM,aAAa,GAAG,IAAI,QAAQ,CAAiB,EAAE,GAAG,EAAE,KAAM,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAA;IAC7E,MAAM,QAAQ,GAAG,IAAI,GAAG,EAA6B,CAAA;IAErD,OAAO,KAAK,UAAU,iBAAiB,CAAC,GAAW;QACjD,IAAI,CAAC;YACH,IAAI,MAAM,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC;gBAAE,OAAO,SAAS,CAAA;YAEjD,MAAM,GAAG,GAAG,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;YAClC,IAAI,GAAG,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,KAAM;gBAAE,OAAO,SAAS,CAAA;YAEtD,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,CAAA;YAC7C,IAAI,MAAM;gBAAE,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,CAAA;YAEvC,MAAM,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;YAClC,IAAI,QAAQ;gBAAE,OAAO,QAAQ,CAAA;YAE7B,MAAM,CAAC,GAAG,CAAC,KAAK,IAAuB,EAAE;gBACvC,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC,CAAA;gBACpD,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;oBACb,IAAI,IAAI,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;wBACxB,aAAa,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAA;wBAClC,MAAM,KAAK,CAAC,cAAc,CAAC,GAAG,CAAC,CAAA;oBACjC,CAAC;oBACD,OAAO,SAAS,CAAA;gBAClB,CAAC;gBACD,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE,CAAA;gBAC7B,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,IAAI,GAAG,CAAA;gBAChC,MAAM,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,CAAA;gBAC9B,MAAM,KAAK,CAAC,aAAa,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAA;gBACxC,OAAO,EAAE,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAA;YAC/B,CAAC,CAAC,EAAE,CAAA;YAEJ,QAAQ,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,CAAA;YACpB,OAAO,MAAM,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAA;QACpD,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,SAAS,CAAA;QAClB,CAAC;IACH,CAAC,CAAA;AACH,CAAC"}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * `fetch` with retry + timeout.
3
+ *
4
+ * - 2 retries on 408 / 429 / 5xx (transient upstream errors)
5
+ * - Default 15 second total per-attempt timeout via AbortController
6
+ * - Network errors (DNS, refused, abort) count as retryable
7
+ *
8
+ * Returns `undefined` on terminal failure. Callers treat undefined the same
9
+ * as a 404 (the package's types just couldn't be loaded).
10
+ */
11
+ export interface FetchWithRetryOptions {
12
+ retries?: number;
13
+ timeoutMs?: number;
14
+ init?: RequestInit;
15
+ }
16
+ export declare function fetchWithRetry(url: string, { retries, timeoutMs, init }?: FetchWithRetryOptions): Promise<Response | undefined>;
17
+ //# sourceMappingURL=httpFetch.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"httpFetch.d.ts","sourceRoot":"","sources":["../../dts/src/httpFetch.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,MAAM,WAAW,qBAAqB;IACpC,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,IAAI,CAAC,EAAE,WAAW,CAAA;CACnB;AAED,wBAAsB,cAAc,CAClC,GAAG,EAAE,MAAM,EACX,EAAE,OAAW,EAAE,SAAkB,EAAE,IAAI,EAAE,GAAE,qBAA0B,GACpE,OAAO,CAAC,QAAQ,GAAG,SAAS,CAAC,CAgB/B"}
@@ -0,0 +1,35 @@
1
+ /**
2
+ * `fetch` with retry + timeout.
3
+ *
4
+ * - 2 retries on 408 / 429 / 5xx (transient upstream errors)
5
+ * - Default 15 second total per-attempt timeout via AbortController
6
+ * - Network errors (DNS, refused, abort) count as retryable
7
+ *
8
+ * Returns `undefined` on terminal failure. Callers treat undefined the same
9
+ * as a 404 (the package's types just couldn't be loaded).
10
+ */
11
+ export async function fetchWithRetry(url, { retries = 2, timeoutMs = 15000, init } = {}) {
12
+ for (let attempt = 0; attempt <= retries; attempt++) {
13
+ const controller = new AbortController();
14
+ const timer = setTimeout(() => controller.abort(), timeoutMs);
15
+ try {
16
+ const resp = await fetch(url, { ...init, signal: controller.signal });
17
+ if (isRetryableStatus(resp.status) && attempt < retries)
18
+ continue;
19
+ return resp;
20
+ }
21
+ catch {
22
+ if (attempt < retries)
23
+ continue;
24
+ return undefined;
25
+ }
26
+ finally {
27
+ clearTimeout(timer);
28
+ }
29
+ }
30
+ return undefined;
31
+ }
32
+ function isRetryableStatus(status) {
33
+ return status === 408 || status === 429 || (status >= 500 && status < 600);
34
+ }
35
+ //# sourceMappingURL=httpFetch.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"httpFetch.js","sourceRoot":"","sources":["../../dts/src/httpFetch.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAQH,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,GAAW,EACX,EAAE,OAAO,GAAG,CAAC,EAAE,SAAS,GAAG,KAAM,EAAE,IAAI,KAA4B,EAAE;IAErE,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,IAAI,OAAO,EAAE,OAAO,EAAE,EAAE,CAAC;QACpD,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAA;QACxC,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,EAAE,SAAS,CAAC,CAAA;QAC7D,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE,EAAE,GAAG,IAAI,EAAE,MAAM,EAAE,UAAU,CAAC,MAAM,EAAE,CAAC,CAAA;YACrE,IAAI,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,OAAO,GAAG,OAAO;gBAAE,SAAQ;YACjE,OAAO,IAAI,CAAA;QACb,CAAC;QAAC,MAAM,CAAC;YACP,IAAI,OAAO,GAAG,OAAO;gBAAE,SAAQ;YAC/B,OAAO,SAAS,CAAA;QAClB,CAAC;gBAAS,CAAC;YACT,YAAY,CAAC,KAAK,CAAC,CAAA;QACrB,CAAC;IACH,CAAC;IACD,OAAO,SAAS,CAAA;AAClB,CAAC;AAED,SAAS,iBAAiB,CAAC,MAAc;IACvC,OAAO,MAAM,KAAK,GAAG,IAAI,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,IAAI,GAAG,IAAI,MAAM,GAAG,GAAG,CAAC,CAAA;AAC5E,CAAC"}
@@ -0,0 +1,14 @@
1
+ export { esLibEntries, domLibEntries, filterByTsVersion, WEBGPU_TYPES_PACKAGE, type LibEntry, type TsVersionGate, } from './libManifest.js';
2
+ export { clientTbTypings, serverTbTypings } from './tbTypings.js';
3
+ export { type DtsCache } from './cache.js';
4
+ export { NegativeCacheHelper, type NegativeCacheStore, type NegativeRecord, } from './negativeCacheHelper.js';
5
+ export { DtsResolver, createDtsResolver, type DtsResolverDeps, type TypeFetchResult, type ModuleShim, type ResolvedTypeFile, type ResolvedTypeDef, } from './dtsResolver.js';
6
+ export { VirtualFs } from './virtualFs.js';
7
+ export { TypeRefScanner } from './typeRefScanner.js';
8
+ export { TarballFetcher, tarballFetcher } from './tarballFetcher.js';
9
+ export { TypescriptProvider } from './typescriptProvider.js';
10
+ export { DefinitelyTypedProvider } from './definitelyTypedProvider.js';
11
+ export { createFetchDts, type FetchDtsWithCache } from './fetchDts.js';
12
+ export { fetchWithRetry, type FetchWithRetryOptions } from './httpFetch.js';
13
+ export { DtsConfig, DECLARATION_EXTENSIONS, DTS_REGEX, isDtsFile, makeDeclarationCandidates, } from './dtsConfig.js';
14
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../dts/src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EACZ,aAAa,EACb,iBAAiB,EACjB,oBAAoB,EACpB,KAAK,QAAQ,EACb,KAAK,aAAa,GACnB,MAAM,kBAAkB,CAAA;AAEzB,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AAEjE,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,YAAY,CAAA;AAE1C,OAAO,EACL,mBAAmB,EACnB,KAAK,kBAAkB,EACvB,KAAK,cAAc,GACpB,MAAM,0BAA0B,CAAA;AAGjC,OAAO,EACL,WAAW,EACX,iBAAiB,EACjB,KAAK,eAAe,EACpB,KAAK,eAAe,EACpB,KAAK,UAAU,EACf,KAAK,gBAAgB,EACrB,KAAK,eAAe,GACrB,MAAM,kBAAkB,CAAA;AACzB,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AACpD,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AACpE,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAA;AAC5D,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAA;AACtE,OAAO,EAAE,cAAc,EAAE,KAAK,iBAAiB,EAAE,MAAM,eAAe,CAAA;AACtE,OAAO,EAAE,cAAc,EAAE,KAAK,qBAAqB,EAAE,MAAM,gBAAgB,CAAA;AAC3E,OAAO,EACL,SAAS,EACT,sBAAsB,EACtB,SAAS,EACT,SAAS,EACT,yBAAyB,GAC1B,MAAM,gBAAgB,CAAA"}
@@ -0,0 +1,14 @@
1
+ export { esLibEntries, domLibEntries, filterByTsVersion, WEBGPU_TYPES_PACKAGE, } from './libManifest.js';
2
+ export { clientTbTypings, serverTbTypings } from './tbTypings.js';
3
+ export { NegativeCacheHelper, } from './negativeCacheHelper.js';
4
+ // DTS resolver pipeline
5
+ export { DtsResolver, createDtsResolver, } from './dtsResolver.js';
6
+ export { VirtualFs } from './virtualFs.js';
7
+ export { TypeRefScanner } from './typeRefScanner.js';
8
+ export { TarballFetcher, tarballFetcher } from './tarballFetcher.js';
9
+ export { TypescriptProvider } from './typescriptProvider.js';
10
+ export { DefinitelyTypedProvider } from './definitelyTypedProvider.js';
11
+ export { createFetchDts } from './fetchDts.js';
12
+ export { fetchWithRetry } from './httpFetch.js';
13
+ export { DtsConfig, DECLARATION_EXTENSIONS, DTS_REGEX, isDtsFile, makeDeclarationCandidates, } from './dtsConfig.js';
14
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../dts/src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EACZ,aAAa,EACb,iBAAiB,EACjB,oBAAoB,GAGrB,MAAM,kBAAkB,CAAA;AAEzB,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AAIjE,OAAO,EACL,mBAAmB,GAGpB,MAAM,0BAA0B,CAAA;AAEjC,wBAAwB;AACxB,OAAO,EACL,WAAW,EACX,iBAAiB,GAMlB,MAAM,kBAAkB,CAAA;AACzB,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AACpD,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AACpE,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAA;AAC5D,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAA;AACtE,OAAO,EAAE,cAAc,EAA0B,MAAM,eAAe,CAAA;AACtE,OAAO,EAAE,cAAc,EAA8B,MAAM,gBAAgB,CAAA;AAC3E,OAAO,EACL,SAAS,EACT,sBAAsB,EACtB,SAAS,EACT,SAAS,EACT,yBAAyB,GAC1B,MAAM,gBAAgB,CAAA"}
@@ -0,0 +1,41 @@
1
+ /**
2
+ * Declarative list of TypeScript lib file names used by Typebulb bulbs.
3
+ *
4
+ * Single source of truth for both the web client (loaded via Vite ?raw imports
5
+ * into Monaco/standalone TypeChecker) and the CLI (emitted into tsconfig's
6
+ * compilerOptions.lib array).
7
+ *
8
+ * Names match TypeScript's lib.<name>.d.ts naming (without the `lib.` prefix
9
+ * and without the `.d.ts` suffix). The corresponding tsconfig `lib` entry is
10
+ * derived by transforming `es2015.core` → `ES2015.Core`, etc.
11
+ */
12
+ /**
13
+ * Minimum TypeScript version required for an entry. Used to filter the manifest
14
+ * against the consumer's available TS version.
15
+ */
16
+ export type TsVersionGate = '5.0' | '5.5';
17
+ export interface LibEntry {
18
+ /** Lib name as used in the lib.<name>.d.ts file (e.g. 'es2015.core'). */
19
+ name: string;
20
+ /** Minimum TS version required, if any. */
21
+ since?: TsVersionGate;
22
+ }
23
+ /**
24
+ * ES core libs (no DOM, no WebGPU). Ordered by ES version, then alphabetically.
25
+ */
26
+ export declare const esLibEntries: LibEntry[];
27
+ /**
28
+ * DOM libs (separate from ES core so server-side emit can omit them).
29
+ */
30
+ export declare const domLibEntries: LibEntry[];
31
+ /**
32
+ * Filter a list of entries against an available TS version.
33
+ * Entries without `since` are always included.
34
+ */
35
+ export declare function filterByTsVersion(entries: LibEntry[], tsVersion?: TsVersionGate): LibEntry[];
36
+ /**
37
+ * WebGPU types — sourced from the @webgpu/types npm package, not TypeScript's
38
+ * bundled libs. Listed here as a marker so consumers know to include it.
39
+ */
40
+ export declare const WEBGPU_TYPES_PACKAGE = "@webgpu/types";
41
+ //# sourceMappingURL=libManifest.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"libManifest.d.ts","sourceRoot":"","sources":["../../dts/src/libManifest.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH;;;GAGG;AACH,MAAM,MAAM,aAAa,GAAG,KAAK,GAAG,KAAK,CAAA;AAEzC,MAAM,WAAW,QAAQ;IACvB,yEAAyE;IACzE,IAAI,EAAE,MAAM,CAAA;IACZ,2CAA2C;IAC3C,KAAK,CAAC,EAAE,aAAa,CAAA;CACtB;AAED;;GAEG;AACH,eAAO,MAAM,YAAY,EAAE,QAAQ,EA+ElC,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,aAAa,EAAE,QAAQ,EAInC,CAAA;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,QAAQ,EAAE,EAAE,SAAS,CAAC,EAAE,aAAa,GAAG,QAAQ,EAAE,CAO5F;AAED;;;GAGG;AACH,eAAO,MAAM,oBAAoB,kBAAkB,CAAA"}
@@ -0,0 +1,109 @@
1
+ /**
2
+ * Declarative list of TypeScript lib file names used by Typebulb bulbs.
3
+ *
4
+ * Single source of truth for both the web client (loaded via Vite ?raw imports
5
+ * into Monaco/standalone TypeChecker) and the CLI (emitted into tsconfig's
6
+ * compilerOptions.lib array).
7
+ *
8
+ * Names match TypeScript's lib.<name>.d.ts naming (without the `lib.` prefix
9
+ * and without the `.d.ts` suffix). The corresponding tsconfig `lib` entry is
10
+ * derived by transforming `es2015.core` → `ES2015.Core`, etc.
11
+ */
12
+ /**
13
+ * ES core libs (no DOM, no WebGPU). Ordered by ES version, then alphabetically.
14
+ */
15
+ export const esLibEntries = [
16
+ { name: 'es5' },
17
+ { name: 'es2015.core' },
18
+ { name: 'es2015.collection' },
19
+ { name: 'es2015.promise' },
20
+ { name: 'es2015.iterable' },
21
+ { name: 'es2015.symbol' },
22
+ { name: 'es2015.symbol.wellknown' },
23
+ { name: 'es2015.generator' },
24
+ { name: 'es2015.proxy' },
25
+ { name: 'es2015.reflect' },
26
+ { name: 'es2016.array.include' },
27
+ { name: 'es2016.intl' },
28
+ { name: 'es2017.object' },
29
+ { name: 'es2017.string' },
30
+ { name: 'es2017.sharedmemory' },
31
+ { name: 'es2017.typedarrays' },
32
+ { name: 'es2017.date' },
33
+ { name: 'es2017.intl' },
34
+ { name: 'es2018.asynciterable' },
35
+ { name: 'es2018.asyncgenerator' },
36
+ { name: 'es2018.promise' },
37
+ { name: 'es2018.regexp' },
38
+ { name: 'es2018.intl' },
39
+ { name: 'es2019.array' },
40
+ { name: 'es2019.object' },
41
+ { name: 'es2019.string' },
42
+ { name: 'es2019.symbol' },
43
+ { name: 'es2019.intl' },
44
+ { name: 'es2020.bigint' },
45
+ { name: 'es2020.promise' },
46
+ { name: 'es2020.string' },
47
+ { name: 'es2020.sharedmemory' },
48
+ { name: 'es2020.date' },
49
+ { name: 'es2020.number' },
50
+ { name: 'es2020.symbol.wellknown' },
51
+ { name: 'es2020.intl' },
52
+ { name: 'es2021.promise' },
53
+ { name: 'es2021.string' },
54
+ { name: 'es2021.weakref' },
55
+ { name: 'es2021.intl' },
56
+ { name: 'es2022.array' },
57
+ { name: 'es2022.object' },
58
+ { name: 'es2022.error' },
59
+ { name: 'es2022.string' },
60
+ { name: 'es2022.regexp' },
61
+ { name: 'es2022.intl' },
62
+ { name: 'es2023.array' },
63
+ { name: 'es2023.collection' },
64
+ { name: 'es2023.intl', since: '5.5' },
65
+ { name: 'es2024.arraybuffer', since: '5.5' },
66
+ { name: 'es2024.collection', since: '5.5' },
67
+ { name: 'es2024.object', since: '5.5' },
68
+ { name: 'es2024.promise', since: '5.5' },
69
+ { name: 'es2024.regexp', since: '5.5' },
70
+ { name: 'es2024.sharedmemory', since: '5.5' },
71
+ { name: 'es2024.string', since: '5.5' },
72
+ { name: 'esnext.array', since: '5.5' },
73
+ { name: 'esnext.collection' },
74
+ { name: 'esnext.decorators' },
75
+ { name: 'esnext.disposable' },
76
+ { name: 'esnext.error', since: '5.5' },
77
+ { name: 'esnext.float16', since: '5.5' },
78
+ { name: 'esnext.iterator', since: '5.5' },
79
+ { name: 'esnext.object' },
80
+ { name: 'esnext.promise' },
81
+ { name: 'esnext.sharedmemory', since: '5.5' },
82
+ { name: 'esnext.intl' },
83
+ ];
84
+ /**
85
+ * DOM libs (separate from ES core so server-side emit can omit them).
86
+ */
87
+ export const domLibEntries = [
88
+ { name: 'dom' },
89
+ { name: 'dom.iterable' },
90
+ { name: 'dom.asynciterable' },
91
+ ];
92
+ /**
93
+ * Filter a list of entries against an available TS version.
94
+ * Entries without `since` are always included.
95
+ */
96
+ export function filterByTsVersion(entries, tsVersion) {
97
+ if (!tsVersion) {
98
+ return entries.filter(e => !e.since);
99
+ }
100
+ const order = { '5.0': 0, '5.5': 1 };
101
+ const available = order[tsVersion];
102
+ return entries.filter(e => !e.since || order[e.since] <= available);
103
+ }
104
+ /**
105
+ * WebGPU types — sourced from the @webgpu/types npm package, not TypeScript's
106
+ * bundled libs. Listed here as a marker so consumers know to include it.
107
+ */
108
+ export const WEBGPU_TYPES_PACKAGE = '@webgpu/types';
109
+ //# sourceMappingURL=libManifest.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"libManifest.js","sourceRoot":"","sources":["../../dts/src/libManifest.ts"],"names":[],"mappings":"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"}