typebulb 0.19.3 → 0.19.5

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 (128) hide show
  1. package/dist/agents/claude/client.js +245 -250
  2. package/dist/agents/pi/client.js +251 -256
  3. package/dist/ai/aiProvider.d.ts +3 -6
  4. package/dist/ai/aiProvider.d.ts.map +1 -1
  5. package/dist/ai/aiProvider.js +5 -9
  6. package/dist/ai/aiProvider.js.map +1 -1
  7. package/dist/ai/aiProviders.d.ts +0 -1
  8. package/dist/ai/aiProviders.d.ts.map +1 -1
  9. package/dist/ai/aiProviders.js +2 -2
  10. package/dist/ai/aiProviders.js.map +1 -1
  11. package/dist/ai/index.d.ts +1 -0
  12. package/dist/ai/index.d.ts.map +1 -1
  13. package/dist/ai/index.js +1 -0
  14. package/dist/ai/index.js.map +1 -1
  15. package/dist/ai/protocol.d.ts +43 -2
  16. package/dist/ai/protocol.d.ts.map +1 -1
  17. package/dist/ai/protocol.js +2 -2
  18. package/dist/ai/protocol.js.map +1 -1
  19. package/dist/ai/providers/anthropic.d.ts +1 -2
  20. package/dist/ai/providers/anthropic.d.ts.map +1 -1
  21. package/dist/ai/providers/anthropic.js +2 -12
  22. package/dist/ai/providers/anthropic.js.map +1 -1
  23. package/dist/ai/providers/chatCompletions.d.ts +38 -0
  24. package/dist/ai/providers/chatCompletions.d.ts.map +1 -0
  25. package/dist/ai/providers/chatCompletions.js +34 -0
  26. package/dist/ai/providers/chatCompletions.js.map +1 -0
  27. package/dist/ai/providers/gemini.d.ts.map +1 -1
  28. package/dist/ai/providers/gemini.js +4 -17
  29. package/dist/ai/providers/gemini.js.map +1 -1
  30. package/dist/ai/providers/ollama.d.ts +5 -31
  31. package/dist/ai/providers/ollama.d.ts.map +1 -1
  32. package/dist/ai/providers/ollama.js +2 -35
  33. package/dist/ai/providers/ollama.js.map +1 -1
  34. package/dist/ai/providers/openAI.d.ts +3 -53
  35. package/dist/ai/providers/openAI.d.ts.map +1 -1
  36. package/dist/ai/providers/openAI.js +2 -22
  37. package/dist/ai/providers/openAI.js.map +1 -1
  38. package/dist/ai/providers/openRouter.d.ts +6 -39
  39. package/dist/ai/providers/openRouter.d.ts.map +1 -1
  40. package/dist/ai/providers/openRouter.js +5 -37
  41. package/dist/ai/providers/openRouter.js.map +1 -1
  42. package/dist/ai/sseParser.d.ts +3 -2
  43. package/dist/ai/sseParser.d.ts.map +1 -1
  44. package/dist/ai/sseParser.js +20 -47
  45. package/dist/ai/sseParser.js.map +1 -1
  46. package/dist/dts/definitelyTypedProvider.d.ts +8 -9
  47. package/dist/dts/definitelyTypedProvider.d.ts.map +1 -1
  48. package/dist/dts/definitelyTypedProvider.js +9 -15
  49. package/dist/dts/definitelyTypedProvider.js.map +1 -1
  50. package/dist/dts/dtsConfig.d.ts +4 -0
  51. package/dist/dts/dtsConfig.d.ts.map +1 -1
  52. package/dist/dts/dtsConfig.js +15 -10
  53. package/dist/dts/dtsConfig.js.map +1 -1
  54. package/dist/dts/dtsResolver.d.ts +2 -7
  55. package/dist/dts/dtsResolver.d.ts.map +1 -1
  56. package/dist/dts/dtsResolver.js +18 -28
  57. package/dist/dts/dtsResolver.js.map +1 -1
  58. package/dist/dts/fetchDts.d.ts.map +1 -1
  59. package/dist/dts/fetchDts.js +4 -4
  60. package/dist/dts/fetchDts.js.map +1 -1
  61. package/dist/dts/index.d.ts +2 -10
  62. package/dist/dts/index.d.ts.map +1 -1
  63. package/dist/dts/index.js +2 -10
  64. package/dist/dts/index.js.map +1 -1
  65. package/dist/dts/libManifest.d.ts +0 -5
  66. package/dist/dts/libManifest.d.ts.map +1 -1
  67. package/dist/dts/libManifest.js +0 -5
  68. package/dist/dts/libManifest.js.map +1 -1
  69. package/dist/dts/tarballFetcher.d.ts +0 -1
  70. package/dist/dts/tarballFetcher.d.ts.map +1 -1
  71. package/dist/dts/tarballFetcher.js +0 -1
  72. package/dist/dts/tarballFetcher.js.map +1 -1
  73. package/dist/dts/typeProvider.d.ts +2 -14
  74. package/dist/dts/typeProvider.d.ts.map +1 -1
  75. package/dist/dts/typeProvider.js +1 -29
  76. package/dist/dts/typeProvider.js.map +1 -1
  77. package/dist/dts/typeRefScanner.d.ts +0 -1
  78. package/dist/dts/typeRefScanner.d.ts.map +1 -1
  79. package/dist/dts/typeRefScanner.js +12 -17
  80. package/dist/dts/typeRefScanner.js.map +1 -1
  81. package/dist/dts/typescriptProvider.d.ts +5 -3
  82. package/dist/dts/typescriptProvider.d.ts.map +1 -1
  83. package/dist/dts/typescriptProvider.js +30 -22
  84. package/dist/dts/typescriptProvider.js.map +1 -1
  85. package/dist/dts/virtualFs.d.ts +1 -4
  86. package/dist/dts/virtualFs.d.ts.map +1 -1
  87. package/dist/dts/virtualFs.js +1 -19
  88. package/dist/dts/virtualFs.js.map +1 -1
  89. package/dist/index.js +226 -229
  90. package/dist/lint/index.d.ts +1 -3
  91. package/dist/lint/index.d.ts.map +1 -1
  92. package/dist/lint/index.js +26 -33
  93. package/dist/lint/index.js.map +1 -1
  94. package/dist/render.js +137 -142
  95. package/dist/resolver/cdnClient.d.ts +2 -6
  96. package/dist/resolver/cdnClient.d.ts.map +1 -1
  97. package/dist/resolver/cdnClient.js +12 -20
  98. package/dist/resolver/cdnClient.js.map +1 -1
  99. package/dist/resolver/index.d.ts +1 -1
  100. package/dist/resolver/index.d.ts.map +1 -1
  101. package/dist/resolver/index.js +2 -2
  102. package/dist/resolver/index.js.map +1 -1
  103. package/dist/resolver/packageRef.d.ts +0 -2
  104. package/dist/resolver/packageRef.d.ts.map +1 -1
  105. package/dist/resolver/packageRef.js +0 -8
  106. package/dist/resolver/packageRef.js.map +1 -1
  107. package/dist/resolver/packageService.d.ts +5 -3
  108. package/dist/resolver/packageService.d.ts.map +1 -1
  109. package/dist/resolver/packageService.js +13 -22
  110. package/dist/resolver/packageService.js.map +1 -1
  111. package/dist/resolver/semver.d.ts +0 -3
  112. package/dist/resolver/semver.d.ts.map +1 -1
  113. package/dist/resolver/semver.js +1 -16
  114. package/dist/resolver/semver.js.map +1 -1
  115. package/dist/resolver/versionResolver.d.ts +0 -1
  116. package/dist/resolver/versionResolver.d.ts.map +1 -1
  117. package/dist/resolver/versionResolver.js +17 -21
  118. package/dist/resolver/versionResolver.js.map +1 -1
  119. package/dist/servers.js +59 -59
  120. package/package.json +1 -1
  121. package/dist/ai/chat.d.ts +0 -32
  122. package/dist/ai/chat.d.ts.map +0 -1
  123. package/dist/ai/chat.js +0 -5
  124. package/dist/ai/chat.js.map +0 -1
  125. package/dist/ai/stream.d.ts +0 -20
  126. package/dist/ai/stream.d.ts.map +0 -1
  127. package/dist/ai/stream.js +0 -6
  128. package/dist/ai/stream.js.map +0 -1
@@ -1,5 +1,5 @@
1
- import { AIProvider } from '../aiProvider.js';
2
- export class OllamaProvider extends AIProvider {
1
+ import { ChatCompletionsProvider } from './chatCompletions.js';
2
+ export class OllamaProvider extends ChatCompletionsProvider {
3
3
  constructor() {
4
4
  super(...arguments);
5
5
  this.providerName = 'Ollama';
@@ -31,38 +31,5 @@ export class OllamaProvider extends AIProvider {
31
31
  buildPayload(messages, model, _opts, stream) {
32
32
  return { model, messages, stream };
33
33
  }
34
- parseError(errorText, status) {
35
- return this.parseJsonError(errorText, status, true);
36
- }
37
- // ── Response parsing ─────────────────────────────────────────────
38
- parseNonStreamingResponse(json) {
39
- if (!this.hasChoices(json))
40
- return { text: '' };
41
- const choice = json.choices[0];
42
- const msg = choice?.message;
43
- const text = msg?.content ?? '';
44
- const reasoning = msg?.reasoning ?? msg?.reasoning_content;
45
- return { text, reasoning };
46
- }
47
- parseProviderStreamChunk(json) {
48
- if (!this.hasChoices(json))
49
- return null;
50
- const choice = json.choices[0];
51
- if (!choice)
52
- return null;
53
- const delta = choice.delta || choice.message;
54
- if (!delta)
55
- return null;
56
- const text = delta.content || undefined;
57
- const reasoning = delta.reasoning || delta.reasoning_content || undefined;
58
- if (!text && !reasoning)
59
- return null;
60
- return { text, reasoning };
61
- }
62
- // ── Private helpers ──────────────────────────────────────────────
63
- hasChoices(json) {
64
- return typeof json === 'object' && json !== null
65
- && 'choices' in json && Array.isArray(json.choices);
66
- }
67
34
  }
68
35
  //# sourceMappingURL=ollama.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ollama.js","sourceRoot":"","sources":["../../../ai/src/providers/ollama.ts"],"names":[],"mappings":"AAsBA,OAAO,EAAE,UAAU,EAAwB,MAAM,kBAAkB,CAAA;AA6CnE,MAAM,OAAO,cAAe,SAAQ,UAAU;IAA9C;;QACqB,iBAAY,GAAG,QAAQ,CAAA;QAC1C,gGAAgG;QAChG,gGAAgG;QAChG,iGAAiG;QACjG,gGAAgG;QAChG,qGAAqG;QACrG,kGAAkG;QAClG,6DAA6D;QACpD,mBAAc,GAAG,wBAAwB,CAAA;QACzC,SAAI,GAAG,mBAAmB,CAAA;IAkErC,CAAC;IAhEC,oEAAoE;IAEpE,gGAAgG;IAChG,2FAA2F;IAC3F,YAAY,CAAC,MAAc;QACzB,MAAM,OAAO,GAA2B;YACtC,cAAc,EAAE,kBAAkB;YAClC,QAAQ,EAAE,kBAAkB;SAC7B,CAAA;QACD,IAAI,MAAM;YAAE,OAAO,CAAC,eAAe,CAAC,GAAG,UAAU,MAAM,EAAE,CAAA;QACzD,OAAO,OAAO,CAAA;IAChB,CAAC;IAED,6FAA6F;IAC7F,8FAA8F;IAC9F,oGAAoG;IACpG,YAAY,CACV,QAA0B,EAC1B,KAAa,EACb,KAAsB,EACtB,MAAe;QAEf,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAA;IACpC,CAAC;IAED,UAAU,CAAC,SAAiB,EAAE,MAAc;QAC1C,OAAO,IAAI,CAAC,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,CAAC,CAAA;IACrD,CAAC;IAED,oEAAoE;IAEpE,yBAAyB,CAAC,IAAyB;QACjD,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;YAAE,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,CAAA;QAE/C,MAAM,MAAM,GAAI,IAA0B,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA;QACrD,MAAM,GAAG,GAAG,MAAM,EAAE,OAAO,CAAA;QAC3B,MAAM,IAAI,GAAG,GAAG,EAAE,OAAO,IAAI,EAAE,CAAA;QAC/B,MAAM,SAAS,GAAG,GAAG,EAAE,SAAS,IAAI,GAAG,EAAE,iBAAiB,CAAA;QAC1D,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,CAAA;IAC5B,CAAC;IAES,wBAAwB,CAAC,IAA4B;QAC7D,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;YAAE,OAAO,IAAI,CAAA;QAEvC,MAAM,MAAM,GAAI,IAA6B,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA;QACxD,IAAI,CAAC,MAAM;YAAE,OAAO,IAAI,CAAA;QAExB,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,OAAO,CAAA;QAC5C,IAAI,CAAC,KAAK;YAAE,OAAO,IAAI,CAAA;QAEvB,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,IAAI,SAAS,CAAA;QACvC,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,IAAI,KAAK,CAAC,iBAAiB,IAAI,SAAS,CAAA;QAEzE,IAAI,CAAC,IAAI,IAAI,CAAC,SAAS;YAAE,OAAO,IAAI,CAAA;QAEpC,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,CAAA;IAC5B,CAAC;IAED,oEAAoE;IAE5D,UAAU,CAAC,IAAa;QAC9B,OAAO,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,IAAI;eAC3C,SAAS,IAAI,IAAI,IAAI,KAAK,CAAC,OAAO,CAAE,IAA8B,CAAC,OAAO,CAAC,CAAA;IAClF,CAAC;CACF"}
1
+ {"version":3,"file":"ollama.js","sourceRoot":"","sources":["../../../ai/src/providers/ollama.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAA;AAS9D,MAAM,OAAO,cAAe,SAAQ,uBAAuB;IAA3D;;QACqB,iBAAY,GAAG,QAAQ,CAAA;QAC1C,gGAAgG;QAChG,gGAAgG;QAChG,iGAAiG;QACjG,gGAAgG;QAChG,qGAAqG;QACrG,kGAAkG;QAClG,6DAA6D;QACpD,mBAAc,GAAG,wBAAwB,CAAA;QACzC,SAAI,GAAG,mBAAmB,CAAA;IA0BrC,CAAC;IAxBC,oEAAoE;IAEpE,gGAAgG;IAChG,2FAA2F;IAC3F,YAAY,CAAC,MAAc;QACzB,MAAM,OAAO,GAA2B;YACtC,cAAc,EAAE,kBAAkB;YAClC,QAAQ,EAAE,kBAAkB;SAC7B,CAAA;QACD,IAAI,MAAM;YAAE,OAAO,CAAC,eAAe,CAAC,GAAG,UAAU,MAAM,EAAE,CAAA;QACzD,OAAO,OAAO,CAAA;IAChB,CAAC;IAED,6FAA6F;IAC7F,8FAA8F;IAC9F,oGAAoG;IACpG,YAAY,CACV,QAA0B,EAC1B,KAAa,EACb,KAAsB,EACtB,MAAe;QAEf,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAA;IACpC,CAAC;CACF"}
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * OpenAI Responses API (/v1/responses, not Chat Completions) — wire types and provider implementation.
3
3
  */
4
- import type { ChatMessageDto, UpstreamErrorDto, ChatStreamPieceDto, ChatResponseDto, ProviderResponseDto, ProviderStreamEventDto } from '../protocol.js';
4
+ import type { ChatMessageDto, ChatStreamPieceDto, ChatResponseDto, ProviderResponseDto, ProviderStreamEventDto } from '../protocol.js';
5
5
  import { AIProvider, type ChatRequestOpts } from '../aiProvider.js';
6
6
  export type OpenAIReasoningEffort = 'none' | 'low' | 'medium' | 'high';
7
7
  export type OpenAIReasoningSummary = 'auto' | 'concise' | 'detailed';
@@ -51,54 +51,15 @@ interface OpenAIResponseItemLocation {
51
51
  interface OpenAIResponseContentLocation extends OpenAIResponseItemLocation {
52
52
  content_index: number;
53
53
  }
54
- export type OpenAIResponseCreatedEvent = OpenAIResponseEventBase & {
55
- type: 'response.created';
56
- response: {
57
- id: string;
58
- object: 'response';
59
- created_at: number;
60
- model: string;
61
- };
62
- };
63
- export type OpenAIResponseInProgressEvent = OpenAIResponseEventBase & {
64
- type: 'response.in_progress';
65
- };
66
- export type OpenAIResponseOutputItemAddedEvent = OpenAIResponseEventBase & {
67
- type: 'response.output_item.added';
68
- output_index: number;
69
- item: OpenAIResponseOutputItem;
70
- };
71
- export type OpenAIResponseOutputItemDoneEvent = OpenAIResponseEventBase & {
72
- type: 'response.output_item.done';
73
- output_index: number;
74
- item: OpenAIResponseOutputItem;
75
- };
76
- export type OpenAIResponseContentPartAddedEvent = OpenAIResponseEventBase & OpenAIResponseContentLocation & {
77
- type: 'response.content_part.added';
78
- part: OpenAIResponseOutputText;
79
- };
80
- export type OpenAIResponseContentPartDoneEvent = OpenAIResponseEventBase & OpenAIResponseContentLocation & {
81
- type: 'response.content_part.done';
82
- part: OpenAIResponseOutputText;
83
- };
84
54
  export type OpenAIResponseOutputTextDeltaEvent = OpenAIResponseEventBase & OpenAIResponseContentLocation & {
85
55
  type: 'response.output_text.delta';
86
56
  delta: string;
87
57
  };
88
- export type OpenAIResponseOutputTextDoneEvent = OpenAIResponseEventBase & OpenAIResponseContentLocation & {
89
- type: 'response.output_text.done';
90
- text: string;
91
- };
92
58
  export type OpenAIResponseReasoningSummaryTextDeltaEvent = OpenAIResponseEventBase & OpenAIResponseItemLocation & {
93
59
  type: 'response.reasoning_summary_text.delta';
94
60
  delta: string;
95
61
  summary_index: number;
96
62
  };
97
- export type OpenAIResponseReasoningSummaryTextDoneEvent = OpenAIResponseEventBase & OpenAIResponseItemLocation & {
98
- type: 'response.reasoning_summary_text.done';
99
- text: string;
100
- summary_index: number;
101
- };
102
63
  export type OpenAIResponseCompletedEvent = OpenAIResponseEventBase & {
103
64
  type: 'response.completed';
104
65
  response: OpenAIResponsesApiResponseDto;
@@ -115,19 +76,9 @@ export type OpenAIResponseErrorEvent = OpenAIResponseEventBase & {
115
76
  export type OpenAIResponseFailedEvent = OpenAIResponseEventBase & {
116
77
  type: 'response.failed';
117
78
  };
118
- export type OpenAIResponseWebSearchInProgressEvent = OpenAIResponseEventBase & {
119
- type: 'response.web_search_call.in_progress';
120
- };
121
- export type OpenAIResponseWebSearchSearchingEvent = OpenAIResponseEventBase & {
122
- type: 'response.web_search_call.searching';
123
- };
124
- export type OpenAIResponseWebSearchCompletedEvent = OpenAIResponseEventBase & {
125
- type: 'response.web_search_call.completed';
126
- };
127
- export type OpenAIResponseAnnotationAddedEvent = OpenAIResponseEventBase & OpenAIResponseContentLocation & {
128
- type: 'response.output_text.annotation.added';
79
+ export type OpenAIResponseSseEventDto = OpenAIResponseOutputTextDeltaEvent | OpenAIResponseReasoningSummaryTextDeltaEvent | OpenAIResponseCompletedEvent | OpenAIResponseErrorEvent | OpenAIResponseFailedEvent | {
80
+ type: string;
129
81
  };
130
- export type OpenAIResponseSseEventDto = OpenAIResponseCreatedEvent | OpenAIResponseInProgressEvent | OpenAIResponseOutputItemAddedEvent | OpenAIResponseOutputItemDoneEvent | OpenAIResponseContentPartAddedEvent | OpenAIResponseContentPartDoneEvent | OpenAIResponseOutputTextDeltaEvent | OpenAIResponseOutputTextDoneEvent | OpenAIResponseAnnotationAddedEvent | OpenAIResponseReasoningSummaryTextDeltaEvent | OpenAIResponseReasoningSummaryTextDoneEvent | OpenAIResponseWebSearchInProgressEvent | OpenAIResponseWebSearchSearchingEvent | OpenAIResponseWebSearchCompletedEvent | OpenAIResponseCompletedEvent | OpenAIResponseErrorEvent | OpenAIResponseFailedEvent;
131
82
  export declare class OpenAIProvider extends AIProvider {
132
83
  protected readonly providerName = "OpenAI";
133
84
  readonly defaultBaseUrl = "https://api.openai.com";
@@ -135,7 +86,6 @@ export declare class OpenAIProvider extends AIProvider {
135
86
  private readonly effortMap;
136
87
  buildHeaders(apiKey: string): Record<string, string>;
137
88
  buildPayload(messages: ChatMessageDto[], model: string, opts: ChatRequestOpts, stream: boolean): OpenAIResponsesApiRequestDto;
138
- parseError(errorText: string, status: number): UpstreamErrorDto;
139
89
  parseNonStreamingResponse(json: ProviderResponseDto): ChatResponseDto;
140
90
  protected parseProviderStreamChunk(json: ProviderStreamEventDto): ChatStreamPieceDto | null;
141
91
  private convertMessagesToInput;
@@ -1 +1 @@
1
- {"version":3,"file":"openAI.d.ts","sourceRoot":"","sources":["../../../ai/src/providers/openAI.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"openAI.d.ts","sourceRoot":"","sources":["../../../ai/src/providers/openAI.ts"],"names":[],"mappings":"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"}
@@ -33,16 +33,13 @@ export class OpenAIProvider extends AIProvider {
33
33
  if (opts?.webSearch !== false) {
34
34
  payload.tools = [{ type: 'web_search' }];
35
35
  }
36
- if (this.isReasoningEnabled(opts)) {
36
+ if (opts?.effort !== undefined) {
37
37
  const effort = this.effortMap[opts.effort];
38
38
  // `summary: 'auto'` requests a reasoning summary; at `none` there's no reasoning to summarize.
39
39
  payload.reasoning = effort === 'none' ? { effort } : { effort, summary: 'auto' };
40
40
  }
41
41
  return payload;
42
42
  }
43
- parseError(errorText, status) {
44
- return this.parseJsonError(errorText, status, true);
45
- }
46
43
  // ── Response parsing ─────────────────────────────────────────────
47
44
  parseNonStreamingResponse(json) {
48
45
  if (!this.isResponsesApiResponse(json)) {
@@ -69,10 +66,7 @@ export class OpenAIProvider extends AIProvider {
69
66
  parseProviderStreamChunk(json) {
70
67
  if (!this.isResponsesApiEvent(json))
71
68
  return null;
72
- const eventType = json.type;
73
- switch (eventType) {
74
- case 'error':
75
- return null;
69
+ switch (json.type) {
76
70
  case 'response.failed': {
77
71
  const resp = json.response;
78
72
  const errObj = resp?.error;
@@ -84,20 +78,6 @@ export class OpenAIProvider extends AIProvider {
84
78
  return { text: json.delta };
85
79
  case 'response.reasoning_summary_text.delta':
86
80
  return { reasoning: json.delta };
87
- case 'response.created':
88
- case 'response.in_progress':
89
- case 'response.output_item.added':
90
- case 'response.output_item.done':
91
- case 'response.content_part.added':
92
- case 'response.content_part.done':
93
- case 'response.output_text.done':
94
- case 'response.output_text.annotation.added':
95
- case 'response.reasoning_summary_text.done':
96
- case 'response.completed':
97
- case 'response.web_search_call.in_progress':
98
- case 'response.web_search_call.searching':
99
- case 'response.web_search_call.completed':
100
- return null;
101
81
  default:
102
82
  return null;
103
83
  }
@@ -1 +1 @@
1
- {"version":3,"file":"openAI.js","sourceRoot":"","sources":["../../../ai/src/providers/openAI.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"openAI.js","sourceRoot":"","sources":["../../../ai/src/providers/openAI.ts"],"names":[],"mappings":"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"}
@@ -1,39 +1,10 @@
1
1
  /**
2
- * OpenRouter API (Chat Completions style with choices[]) — wire types and provider implementation.
2
+ * OpenRouter API (Chat Completions style with choices[]) — request building; wire types and
3
+ * parsing shared via ChatCompletionsProvider.
3
4
  */
4
- import type { ChatMessageDto, UpstreamErrorDto, ChatStreamPieceDto, ChatResponseDto, ProviderResponseDto, ProviderStreamEventDto } from '../protocol.js';
5
- import { AIProvider, type ChatRequestOpts } from '../aiProvider.js';
6
- export interface OpenRouterMessageDto {
7
- content: string;
8
- reasoning?: string;
9
- }
10
- export interface OpenRouterChoiceDto {
11
- message?: OpenRouterMessageDto;
12
- text?: string;
13
- }
14
- export interface OpenRouterResponseDto extends ProviderResponseDto {
15
- choices: OpenRouterChoiceDto[];
16
- reasoning?: string;
17
- }
18
- export interface OpenRouterDeltaDto {
19
- content?: string;
20
- reasoning?: string;
21
- }
22
- export interface OpenRouterStreamChoiceDto {
23
- delta?: OpenRouterDeltaDto;
24
- message?: OpenRouterDeltaDto;
25
- }
26
- export interface OpenRouterStreamEventDto extends ProviderStreamEventDto {
27
- choices: OpenRouterStreamChoiceDto[];
28
- }
29
- export interface OpenRouterErrorResponseDto {
30
- error: {
31
- message: string;
32
- type?: string;
33
- code?: string;
34
- };
35
- }
36
- export type OpenRouterSseEventDto = OpenRouterStreamEventDto | OpenRouterErrorResponseDto;
5
+ import type { ChatMessageDto } from '../protocol.js';
6
+ import type { ChatRequestOpts } from '../aiProvider.js';
7
+ import { ChatCompletionsProvider } from './chatCompletions.js';
37
8
  /** OpenRouter web search plugin */
38
9
  interface OpenRouterWebPlugin {
39
10
  id: 'web';
@@ -49,17 +20,13 @@ export type OpenRouterRequestPayload = {
49
20
  };
50
21
  plugins?: OpenRouterWebPlugin[];
51
22
  };
52
- export declare class OpenRouterProvider extends AIProvider {
23
+ export declare class OpenRouterProvider extends ChatCompletionsProvider {
53
24
  protected readonly providerName = "OpenRouter";
54
25
  readonly defaultBaseUrl = "https://openrouter.ai";
55
26
  readonly path: string;
56
27
  private readonly effortMap;
57
28
  buildHeaders(apiKey: string, origin?: string): Record<string, string>;
58
29
  buildPayload(messages: ChatMessageDto[], model: string, opts: ChatRequestOpts, stream: boolean): OpenRouterRequestPayload;
59
- parseError(errorText: string, status: number): UpstreamErrorDto;
60
- parseNonStreamingResponse(json: ProviderResponseDto): ChatResponseDto;
61
- protected parseProviderStreamChunk(json: ProviderStreamEventDto): ChatStreamPieceDto | null;
62
- private hasChoices;
63
30
  }
64
31
  export {};
65
32
  //# sourceMappingURL=openRouter.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"openRouter.d.ts","sourceRoot":"","sources":["../../../ai/src/providers/openRouter.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EACV,cAAc,EACd,gBAAgB,EAEhB,kBAAkB,EAClB,eAAe,EACf,mBAAmB,EACnB,sBAAsB,EACvB,MAAM,gBAAgB,CAAA;AACvB,OAAO,EAAE,UAAU,EAAE,KAAK,eAAe,EAAE,MAAM,kBAAkB,CAAA;AAKnE,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,MAAM,CAAA;IACf,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAED,MAAM,WAAW,mBAAmB;IAClC,OAAO,CAAC,EAAE,oBAAoB,CAAA;IAC9B,IAAI,CAAC,EAAE,MAAM,CAAA;CACd;AAED,MAAM,WAAW,qBAAsB,SAAQ,mBAAmB;IAChE,OAAO,EAAE,mBAAmB,EAAE,CAAA;IAC9B,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAGD,MAAM,WAAW,kBAAkB;IACjC,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAED,MAAM,WAAW,yBAAyB;IACxC,KAAK,CAAC,EAAE,kBAAkB,CAAA;IAC1B,OAAO,CAAC,EAAE,kBAAkB,CAAA;CAC7B;AAED,MAAM,WAAW,wBAAyB,SAAQ,sBAAsB;IACtE,OAAO,EAAE,yBAAyB,EAAE,CAAA;CACrC;AAGD,MAAM,WAAW,0BAA0B;IACzC,KAAK,EAAE;QACL,OAAO,EAAE,MAAM,CAAA;QACf,IAAI,CAAC,EAAE,MAAM,CAAA;QACb,IAAI,CAAC,EAAE,MAAM,CAAA;KACd,CAAA;CACF;AAGD,MAAM,MAAM,qBAAqB,GAC7B,wBAAwB,GACxB,0BAA0B,CAAA;AAI9B,mCAAmC;AACnC,UAAU,mBAAmB;IAC3B,EAAE,EAAE,KAAK,CAAA;IACT,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB;AAED,iCAAiC;AACjC,MAAM,MAAM,wBAAwB,GAAG;IACrC,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,cAAc,EAAE,CAAA;IAC1B,MAAM,EAAE,OAAO,CAAA;IACf,SAAS,CAAC,EAAE;QAAE,MAAM,EAAE,MAAM,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAA;KAAE,CAAA;IAC1D,OAAO,CAAC,EAAE,mBAAmB,EAAE,CAAA;CAChC,CAAA;AAED,qBAAa,kBAAmB,SAAQ,UAAU;IAChD,SAAS,CAAC,QAAQ,CAAC,YAAY,gBAAe;IAO9C,QAAQ,CAAC,cAAc,2BAA0B;IACjD,QAAQ,CAAC,IAAI,EAAE,MAAM,CAA6B;IAIlD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAKzB;IAID,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAkBrE,YAAY,CACV,QAAQ,EAAE,cAAc,EAAE,EAC1B,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,eAAe,EACrB,MAAM,EAAE,OAAO,GACd,wBAAwB;IAqB3B,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,gBAAgB;IAM/D,yBAAyB,CAAC,IAAI,EAAE,mBAAmB,GAAG,eAAe;IAarE,SAAS,CAAC,wBAAwB,CAAC,IAAI,EAAE,sBAAsB,GAAG,kBAAkB,GAAG,IAAI;IAmB3F,OAAO,CAAC,UAAU;CAGnB"}
1
+ {"version":3,"file":"openRouter.d.ts","sourceRoot":"","sources":["../../../ai/src/providers/openRouter.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,KAAK,EAAE,cAAc,EAAe,MAAM,gBAAgB,CAAA;AACjE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAA;AACvD,OAAO,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAA;AAE9D,mCAAmC;AACnC,UAAU,mBAAmB;IAC3B,EAAE,EAAE,KAAK,CAAA;IACT,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB;AAED,iCAAiC;AACjC,MAAM,MAAM,wBAAwB,GAAG;IACrC,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,cAAc,EAAE,CAAA;IAC1B,MAAM,EAAE,OAAO,CAAA;IACf,SAAS,CAAC,EAAE;QAAE,MAAM,EAAE,MAAM,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAA;KAAE,CAAA;IAC1D,OAAO,CAAC,EAAE,mBAAmB,EAAE,CAAA;CAChC,CAAA;AAED,qBAAa,kBAAmB,SAAQ,uBAAuB;IAC7D,SAAS,CAAC,QAAQ,CAAC,YAAY,gBAAe;IAO9C,QAAQ,CAAC,cAAc,2BAA0B;IACjD,QAAQ,CAAC,IAAI,EAAE,MAAM,CAA6B;IAIlD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAKzB;IAID,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAkBrE,YAAY,CACV,QAAQ,EAAE,cAAc,EAAE,EAC1B,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,eAAe,EACrB,MAAM,EAAE,OAAO,GACd,wBAAwB;CAqB5B"}
@@ -1,5 +1,5 @@
1
- import { AIProvider } from '../aiProvider.js';
2
- export class OpenRouterProvider extends AIProvider {
1
+ import { ChatCompletionsProvider } from './chatCompletions.js';
2
+ export class OpenRouterProvider extends ChatCompletionsProvider {
3
3
  constructor() {
4
4
  super(...arguments);
5
5
  this.providerName = 'OpenRouter';
@@ -46,45 +46,13 @@ export class OpenRouterProvider extends AIProvider {
46
46
  if (opts?.webSearch === true) {
47
47
  payload.plugins = [{ id: 'web' }];
48
48
  }
49
- if (this.isReasoningEnabled(opts)) {
49
+ const effort = opts?.effort;
50
+ if (effort !== undefined) {
50
51
  payload.reasoning = {
51
- effort: this.effortMap[opts.effort]
52
+ effort: this.effortMap[effort]
52
53
  };
53
54
  }
54
55
  return payload;
55
56
  }
56
- parseError(errorText, status) {
57
- return this.parseJsonError(errorText, status, true);
58
- }
59
- // ── Response parsing ─────────────────────────────────────────────
60
- parseNonStreamingResponse(json) {
61
- if (!this.hasChoices(json)) {
62
- return { text: '' };
63
- }
64
- const resp = json;
65
- const choice = resp.choices[0];
66
- const text = choice?.message?.content ?? choice?.text ?? '';
67
- const reasoning = choice?.message?.reasoning ?? resp.reasoning;
68
- return { text, reasoning };
69
- }
70
- parseProviderStreamChunk(json) {
71
- if (!this.hasChoices(json))
72
- return null;
73
- const choice = json.choices[0];
74
- if (!choice)
75
- return null;
76
- const delta = choice.delta || choice.message;
77
- if (!delta)
78
- return null;
79
- const text = delta.content || undefined;
80
- const reasoning = delta.reasoning || undefined;
81
- if (!text && !reasoning)
82
- return null;
83
- return { text, reasoning };
84
- }
85
- // ── Private helpers ──────────────────────────────────────────────
86
- hasChoices(json) {
87
- return typeof json === 'object' && json !== null && 'choices' in json && Array.isArray(json.choices);
88
- }
89
57
  }
90
58
  //# sourceMappingURL=openRouter.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"openRouter.js","sourceRoot":"","sources":["../../../ai/src/providers/openRouter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"openRouter.js","sourceRoot":"","sources":["../../../ai/src/providers/openRouter.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAA;AAiB9D,MAAM,OAAO,kBAAmB,SAAQ,uBAAuB;IAA/D;;QACqB,iBAAY,GAAG,YAAY,CAAA;QAC9C,6FAA6F;QAC7F,iGAAiG;QACjG,gGAAgG;QAChG,gGAAgG;QAChG,iGAAiG;QACjG,uGAAuG;QAC9F,mBAAc,GAAG,uBAAuB,CAAA;QACxC,SAAI,GAAW,0BAA0B,CAAA;QAElD,qGAAqG;QACrG,gFAAgF;QAC/D,cAAS,GAA4D;YACpF,CAAC,EAAE,MAAM;YACT,CAAC,EAAE,KAAK;YACR,CAAC,EAAE,QAAQ;YACX,CAAC,EAAE,MAAM;SACV,CAAA;IAgDH,CAAC;IA9CC,oEAAoE;IAEpE,YAAY,CAAC,MAAc,EAAE,MAAe;QAC1C,MAAM,OAAO,GAA2B;YACtC,eAAe,EAAE,UAAU,MAAM,EAAE;YACnC,WAAW,EAAE,MAAM;YACnB,cAAc,EAAE,kBAAkB;YAClC,QAAQ,EAAE,kBAAkB;YAC5B,SAAS,EAAE,UAAU;SACtB,CAAA;QAED,IAAI,MAAM,EAAE,CAAC;YACX,OAAO,CAAC,cAAc,CAAC,GAAG,MAAM,CAAA;YAChC,OAAO,CAAC,SAAS,CAAC,GAAG,MAAM,CAAA;YAC3B,OAAO,CAAC,QAAQ,CAAC,GAAG,MAAM,CAAA;QAC5B,CAAC;QAED,OAAO,OAAO,CAAA;IAChB,CAAC;IAED,YAAY,CACV,QAA0B,EAC1B,KAAa,EACb,IAAqB,EACrB,MAAe;QAEf,MAAM,OAAO,GAA6B;YACxC,KAAK;YACL,QAAQ;YACR,MAAM;SACP,CAAA;QAED,6EAA6E;QAC7E,IAAI,IAAI,EAAE,SAAS,KAAK,IAAI,EAAE,CAAC;YAC7B,OAAO,CAAC,OAAO,GAAG,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAA;QACnC,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,EAAE,MAAM,CAAA;QAC3B,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,OAAO,CAAC,SAAS,GAAG;gBAClB,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC;aAC/B,CAAA;QACH,CAAC;QAED,OAAO,OAAO,CAAA;IAChB,CAAC;CACF"}
@@ -23,9 +23,10 @@ export declare function consumeSseStream<T = any>(reader: ReadableStreamDefaultR
23
23
  /**
24
24
  * Pull-based twin of {@link consumeSseStream}: yields each parsed SSE block as it arrives so a
25
25
  * caller can `for await` the stream (and tear it down by breaking the loop). Same framing and
26
- * `[DONE]` handling; single-sources the SSE parsing. Cancels the reader on early exit.
26
+ * `[DONE]` handling; single-sources the SSE parsing. Cancels the reader on early exit; throws
27
+ * on abort so callers' error paths fire.
27
28
  */
28
- export declare function consumeSseStreamGen<T = any>(reader: ReadableStreamDefaultReader<Uint8Array>, signal?: AbortSignal): AsyncGenerator<T>;
29
+ export declare function consumeSseStreamGen<T = any>(reader: ReadableStreamDefaultReader<Uint8Array>, signal?: AbortSignal, onBytes?: () => void): AsyncGenerator<T>;
29
30
  /**
30
31
  * Consume a provider SSE stream into a single text string.
31
32
  * Handles protocol detection, chunk parsing, and reasoning token filtering.
@@ -1 +1 @@
1
- {"version":3,"file":"sseParser.d.ts","sourceRoot":"","sources":["../../ai/src/sseParser.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,OAAO,EAAsB,MAAM,eAAe,CAAA;AAYlF;;;GAGG;AACH,wBAAgB,aAAa,CAAC,CAAC,GAAG,GAAG,EAAE,KAAK,EAAE,MAAM,GAAG,CAAC,GAAG,MAAM,GAAG,IAAI,CAmBvE;AAED;;;;;;;;GAQG;AACH,wBAAsB,gBAAgB,CAAC,CAAC,GAAG,GAAG,EAC5C,MAAM,EAAE,2BAA2B,CAAC,UAAU,CAAC,EAC/C,OAAO,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,IAAI,EAC3B,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC;IAAE,eAAe,EAAE,OAAO,CAAA;CAAE,CAAC,CAmDvC;AAED;;;;GAIG;AACH,wBAAuB,mBAAmB,CAAC,CAAC,GAAG,GAAG,EAChD,MAAM,EAAE,2BAA2B,CAAC,UAAU,CAAC,EAC/C,MAAM,CAAC,EAAE,WAAW,GACnB,cAAc,CAAC,CAAC,CAAC,CA4BnB;AAED;;;;;;;GAOG;AACH,wBAAsB,iBAAiB,CACrC,QAAQ,EAAE,QAAQ,EAClB,QAAQ,CAAC,EAAE,gBAAgB,GAC1B,OAAO,CAAC,MAAM,CAAC,CASjB;AAED;;;;;;;;GAQG;AACH,wBAAuB,cAAc,CACnC,QAAQ,EAAE,QAAQ,EAClB,QAAQ,CAAC,EAAE,gBAAgB,GAC1B,cAAc,CAAC,OAAO,CAAC,CAazB"}
1
+ {"version":3,"file":"sseParser.d.ts","sourceRoot":"","sources":["../../ai/src/sseParser.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,OAAO,EAAsB,MAAM,eAAe,CAAA;AAYlF;;;GAGG;AACH,wBAAgB,aAAa,CAAC,CAAC,GAAG,GAAG,EAAE,KAAK,EAAE,MAAM,GAAG,CAAC,GAAG,MAAM,GAAG,IAAI,CAmBvE;AAED;;;;;;;;GAQG;AACH,wBAAsB,gBAAgB,CAAC,CAAC,GAAG,GAAG,EAC5C,MAAM,EAAE,2BAA2B,CAAC,UAAU,CAAC,EAC/C,OAAO,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,IAAI,EAC3B,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC;IAAE,eAAe,EAAE,OAAO,CAAA;CAAE,CAAC,CAQvC;AAED;;;;;GAKG;AACH,wBAAuB,mBAAmB,CAAC,CAAC,GAAG,GAAG,EAChD,MAAM,EAAE,2BAA2B,CAAC,UAAU,CAAC,EAC/C,MAAM,CAAC,EAAE,WAAW,EACpB,OAAO,CAAC,EAAE,MAAM,IAAI,GACnB,cAAc,CAAC,CAAC,CAAC,CAwCnB;AAED;;;;;;;GAOG;AACH,wBAAsB,iBAAiB,CACrC,QAAQ,EAAE,QAAQ,EAClB,QAAQ,CAAC,EAAE,gBAAgB,GAC1B,OAAO,CAAC,MAAM,CAAC,CASjB;AAED;;;;;;;;GAQG;AACH,wBAAuB,cAAc,CACnC,QAAQ,EAAE,QAAQ,EAClB,QAAQ,CAAC,EAAE,gBAAgB,GAC1B,cAAc,CAAC,OAAO,CAAC,CAazB"}
@@ -47,66 +47,38 @@ export function parseSseBlock(block) {
47
47
  * @returns Object with whether any data was received
48
48
  */
49
49
  export async function consumeSseStream(reader, onChunk, signal) {
50
- const decoder = new TextDecoder();
51
- let buffer = '';
50
+ // "Any bytes read", not "any chunk parsed" — callers use it to tell a dead connection
51
+ // (failed) from a stream that died mid-flight (interrupted).
52
52
  let receivedAnyData = false;
53
- // reader.read() can block for seconds after cancel; race against abort for immediate exit
54
- const abortPromise = signal
55
- ? new Promise((_, reject) => {
56
- if (signal.aborted)
57
- reject(new Error('Aborted'));
58
- signal.addEventListener('abort', () => reject(new Error('Aborted')), { once: true });
59
- })
60
- : null;
61
- while (true) {
62
- const readResult = abortPromise
63
- ? await Promise.race([reader.read(), abortPromise])
64
- : await reader.read();
65
- const { done, value } = readResult;
66
- if (done) {
67
- // Process any remaining buffer content
68
- if (buffer.trim()) {
69
- const parsed = parseSseBlock(buffer);
70
- if (parsed !== null && parsed !== 'done') {
71
- onChunk(parsed);
72
- }
73
- }
74
- break;
75
- }
76
- receivedAnyData = true;
77
- buffer += decoder.decode(value, { stream: true });
78
- let { pos: sep, len: sepLen } = findSeparator(buffer);
79
- while (sep !== -1) {
80
- const block = buffer.slice(0, sep);
81
- buffer = buffer.slice(sep + sepLen);
82
- const parsed = parseSseBlock(block);
83
- if (parsed === 'done') {
84
- buffer = '';
85
- break;
86
- }
87
- if (parsed !== null) {
88
- onChunk(parsed);
89
- }
90
- ;
91
- ({ pos: sep, len: sepLen } = findSeparator(buffer));
92
- }
53
+ for await (const chunk of consumeSseStreamGen(reader, signal, () => { receivedAnyData = true; })) {
54
+ onChunk(chunk);
93
55
  }
94
56
  return { receivedAnyData };
95
57
  }
96
58
  /**
97
59
  * Pull-based twin of {@link consumeSseStream}: yields each parsed SSE block as it arrives so a
98
60
  * caller can `for await` the stream (and tear it down by breaking the loop). Same framing and
99
- * `[DONE]` handling; single-sources the SSE parsing. Cancels the reader on early exit.
61
+ * `[DONE]` handling; single-sources the SSE parsing. Cancels the reader on early exit; throws
62
+ * on abort so callers' error paths fire.
100
63
  */
101
- export async function* consumeSseStreamGen(reader, signal) {
64
+ export async function* consumeSseStreamGen(reader, signal, onBytes) {
102
65
  const decoder = new TextDecoder();
103
66
  let buffer = '';
67
+ // reader.read() can block for seconds after cancel; race against abort for immediate exit
68
+ const abortPromise = signal
69
+ ? new Promise((_, reject) => {
70
+ if (signal.aborted)
71
+ reject(new Error('Aborted'));
72
+ signal.addEventListener('abort', () => reject(new Error('Aborted')), { once: true });
73
+ })
74
+ : null;
104
75
  try {
105
76
  while (true) {
106
- if (signal?.aborted)
107
- return;
108
- const { done, value } = await reader.read();
77
+ const { done, value } = abortPromise
78
+ ? await Promise.race([reader.read(), abortPromise])
79
+ : await reader.read();
109
80
  if (done) {
81
+ // Process any remaining buffer content
110
82
  if (buffer.trim()) {
111
83
  const parsed = parseSseBlock(buffer);
112
84
  if (parsed !== null && parsed !== 'done')
@@ -114,6 +86,7 @@ export async function* consumeSseStreamGen(reader, signal) {
114
86
  }
115
87
  return;
116
88
  }
89
+ onBytes?.();
117
90
  buffer += decoder.decode(value, { stream: true });
118
91
  let { pos: sep, len: sepLen } = findSeparator(buffer);
119
92
  while (sep !== -1) {
@@ -1 +1 @@
1
- {"version":3,"file":"sseParser.js","sourceRoot":"","sources":["../../ai/src/sseParser.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAE9C,sFAAsF;AACtF,SAAS,aAAa,CAAC,MAAc;IACnC,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAA;IACvC,MAAM,EAAE,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;IACjC,IAAI,IAAI,KAAK,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,CAAC,CAAC,IAAI,IAAI,GAAG,EAAE,CAAC;QAAE,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,EAAE,CAAA;IACzE,IAAI,EAAE,KAAK,CAAC,CAAC;QAAE,OAAO,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,CAAA;IACzC,OAAO,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,CAAA;AAC5B,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,aAAa,CAAU,KAAa;IAClD,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;IAClC,MAAM,SAAS,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAA;IAE1D,IAAI,CAAC,SAAS,CAAC,MAAM;QAAE,OAAO,IAAI,CAAA;IAElC,MAAM,UAAU,GAAG,SAAS;SACzB,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;SACpC,IAAI,CAAC,IAAI,CAAC;SACV,IAAI,EAAE,CAAA;IAET,IAAI,CAAC,UAAU;QAAE,OAAO,IAAI,CAAA;IAC5B,IAAI,UAAU,KAAK,QAAQ;QAAE,OAAO,MAAM,CAAA;IAE1C,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,KAAK,CAAC,UAAU,CAAM,CAAA;IACpC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAA;IACb,CAAC;AACH,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,MAA+C,EAC/C,OAA2B,EAC3B,MAAoB;IAEpB,MAAM,OAAO,GAAG,IAAI,WAAW,EAAE,CAAA;IACjC,IAAI,MAAM,GAAG,EAAE,CAAA;IACf,IAAI,eAAe,GAAG,KAAK,CAAA;IAE3B,0FAA0F;IAC1F,MAAM,YAAY,GAA0B,MAAM;QAChD,CAAC,CAAC,IAAI,OAAO,CAAQ,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE;YAC/B,IAAI,MAAM,CAAC,OAAO;gBAAE,MAAM,CAAC,IAAI,KAAK,CAAC,SAAS,CAAC,CAAC,CAAA;YAChD,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAA;QACtF,CAAC,CAAC;QACJ,CAAC,CAAC,IAAI,CAAA;IAER,OAAO,IAAI,EAAE,CAAC;QACZ,MAAM,UAAU,GAAG,YAAY;YAC7B,CAAC,CAAC,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,YAAY,CAAC,CAAC;YACnD,CAAC,CAAC,MAAM,MAAM,CAAC,IAAI,EAAE,CAAA;QACvB,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,UAAU,CAAA;QAClC,IAAI,IAAI,EAAE,CAAC;YACT,uCAAuC;YACvC,IAAI,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC;gBAClB,MAAM,MAAM,GAAG,aAAa,CAAI,MAAM,CAAC,CAAA;gBACvC,IAAI,MAAM,KAAK,IAAI,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;oBACzC,OAAO,CAAC,MAAM,CAAC,CAAA;gBACjB,CAAC;YACH,CAAC;YACD,MAAK;QACP,CAAC;QAED,eAAe,GAAG,IAAI,CAAA;QACtB,MAAM,IAAI,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAA;QAEjD,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,aAAa,CAAC,MAAM,CAAC,CAAA;QACrD,OAAO,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC;YAClB,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAA;YAClC,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,GAAG,MAAM,CAAC,CAAA;YAEnC,MAAM,MAAM,GAAG,aAAa,CAAI,KAAK,CAAC,CAAA;YACtC,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;gBACtB,MAAM,GAAG,EAAE,CAAA;gBACX,MAAK;YACP,CAAC;YACD,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;gBACpB,OAAO,CAAC,MAAM,CAAC,CAAA;YACjB,CAAC;YAED,CAAC;YAAA,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC,CAAA;QACtD,CAAC;IACH,CAAC;IAED,OAAO,EAAE,eAAe,EAAE,CAAA;AAC5B,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,SAAS,CAAC,CAAC,mBAAmB,CACxC,MAA+C,EAC/C,MAAoB;IAEpB,MAAM,OAAO,GAAG,IAAI,WAAW,EAAE,CAAA;IACjC,IAAI,MAAM,GAAG,EAAE,CAAA;IACf,IAAI,CAAC;QACH,OAAO,IAAI,EAAE,CAAC;YACZ,IAAI,MAAM,EAAE,OAAO;gBAAE,OAAM;YAC3B,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE,CAAA;YAC3C,IAAI,IAAI,EAAE,CAAC;gBACT,IAAI,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC;oBAClB,MAAM,MAAM,GAAG,aAAa,CAAI,MAAM,CAAC,CAAA;oBACvC,IAAI,MAAM,KAAK,IAAI,IAAI,MAAM,KAAK,MAAM;wBAAE,MAAM,MAAM,CAAA;gBACxD,CAAC;gBACD,OAAM;YACR,CAAC;YACD,MAAM,IAAI,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAA;YACjD,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,aAAa,CAAC,MAAM,CAAC,CAAA;YACrD,OAAO,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC;gBAClB,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAA;gBAClC,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,GAAG,MAAM,CAAC,CAAA;gBACnC,MAAM,MAAM,GAAG,aAAa,CAAI,KAAK,CAAC,CAAA;gBACtC,IAAI,MAAM,KAAK,MAAM;oBAAE,OAAM;gBAC7B,IAAI,MAAM,KAAK,IAAI;oBAAE,MAAM,MAAM,CAChC;gBAAA,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC,CAAA;YACtD,CAAC;QACH,CAAC;IACH,CAAC;YAAS,CAAC;QACT,IAAI,CAAC;YAAC,MAAM,MAAM,CAAC,MAAM,EAAE,CAAA;QAAC,CAAC;QAAC,MAAM,CAAC,CAAC,oBAAoB,CAAC,CAAC;IAC9D,CAAC;AACH,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,QAAkB,EAClB,QAA2B;IAE3B,IAAI,CAAC,QAAQ,CAAC,IAAI;QAAE,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAA;IAC/D,4FAA4F;IAC5F,oFAAoF;IACpF,IAAI,QAAQ,GAAG,EAAE,CAAA;IACjB,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,cAAc,CAAC,QAAQ,EAAE,QAAQ,CAAC,EAAE,CAAC;QAC7D,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM;YAAE,QAAQ,IAAI,KAAK,CAAC,IAAI,CAAA;IACnD,CAAC;IACD,OAAO,QAAQ,CAAA;AACjB,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,CAAC,KAAK,SAAS,CAAC,CAAC,cAAc,CACnC,QAAkB,EAClB,QAA2B;IAE3B,gGAAgG;IAChG,6EAA6E;IAC7E,MAAM,CAAC,GAAG,QAAQ;WACb,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC,IAAI,QAAQ,CAAqB,CAAA;IAClF,MAAM,IAAI,GAAG,WAAW,CAAC,CAAC,CAAC,CAAA;IAC3B,IAAI,CAAC,QAAQ,CAAC,IAAI;QAAE,OAAM;IAC1B,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,CAAA;IACxC,IAAI,KAAK,EAAE,MAAM,IAAI,IAAI,mBAAmB,CAAC,MAAM,CAAC,EAAE,CAAC;QACrD,MAAM,KAAK,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAA8B,CAAA;QACtE,IAAI,KAAK,EAAE,SAAS;YAAE,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,KAAK,CAAC,SAAS,EAAE,CAAA;QACxE,IAAI,KAAK,EAAE,IAAI;YAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,CAAA;IAC3D,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"sseParser.js","sourceRoot":"","sources":["../../ai/src/sseParser.ts"],"names":[],"mappings":"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"}
@@ -1,22 +1,21 @@
1
1
  import { type CdnClient } from 'typebulb/resolver';
2
- import { TypeProvider } from './typeProvider.js';
2
+ import type { TypeProvider } from './typeProvider.js';
3
3
  import { TarballFetcher } from './tarballFetcher.js';
4
4
  import type { DtsCache } from './cache.js';
5
- import type { FetchDtsWithCache } from './fetchDts.js';
6
- export declare class DefinitelyTypedProvider extends TypeProvider {
5
+ export declare class DefinitelyTypedProvider implements TypeProvider {
7
6
  private cdnClient;
8
7
  private cache;
9
8
  private tarballFetcher;
10
- constructor(fetchDts: FetchDtsWithCache, cdnClient: CdnClient, cache: DtsCache, tarballFetcher?: TarballFetcher);
9
+ constructor(cdnClient: CdnClient, cache: DtsCache, tarballFetcher?: TarballFetcher);
11
10
  private typesNameCandidates;
12
11
  private selectTypesVersion;
13
12
  /**
14
13
  * Declaration-file candidates for a subpath, keyed as the tarball stores them
15
- * (package-relative, no leading `./`). A runtime extension is stripped first —
16
- * `examples/jsm/controls/OrbitControls.js` lives at `OrbitControls.d.ts`, not
17
- * `OrbitControls.js.d.ts` mirroring TypescriptProvider.declarationCandidatesFor.
18
- * The raw-subpath forms are kept as a fallback for paths whose dot isn't a JS
19
- * extension (e.g. a literal `foo.bar` directory).
14
+ * (package-relative, no leading `./`). `declarationCandidatesFor` strips a
15
+ * runtime extension first — `examples/jsm/controls/OrbitControls.js` lives at
16
+ * `OrbitControls.d.ts`, not `OrbitControls.js.d.ts`. The raw-subpath forms are
17
+ * kept as a fallback for paths whose dot isn't a JS extension (e.g. a literal
18
+ * `foo.bar` directory).
20
19
  */
21
20
  private subpathCandidates;
22
21
  private fetchFromVersionedRoot;
@@ -1 +1 @@
1
- {"version":3,"file":"definitelyTypedProvider.d.ts","sourceRoot":"","sources":["../../dts/src/definitelyTypedProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EAA6B,KAAK,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAC7E,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAEhD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AACpD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAC1C,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAA;AAEtD,qBAAa,uBAAwB,SAAQ,YAAY;IAGrD,OAAO,CAAC,SAAS;IACjB,OAAO,CAAC,KAAK;IACb,OAAO,CAAC,cAAc;gBAHtB,QAAQ,EAAE,iBAAiB,EACnB,SAAS,EAAE,SAAS,EACpB,KAAK,EAAE,QAAQ,EACf,cAAc,iBAAuB;IAK/C,OAAO,CAAC,mBAAmB;IAM3B,OAAO,CAAC,kBAAkB;IAe1B;;;;;;;OAOG;IACH,OAAO,CAAC,iBAAiB;YAWX,sBAAsB;IAgC9B,OAAO,CAAC,GAAG,EAAE,MAAM;;;;;CAiB1B"}
1
+ {"version":3,"file":"definitelyTypedProvider.d.ts","sourceRoot":"","sources":["../../dts/src/definitelyTypedProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EAA6B,KAAK,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAC7E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAErD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AACpD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAE1C,qBAAa,uBAAwB,YAAW,YAAY;IAExD,OAAO,CAAC,SAAS;IACjB,OAAO,CAAC,KAAK;IACb,OAAO,CAAC,cAAc;gBAFd,SAAS,EAAE,SAAS,EACpB,KAAK,EAAE,QAAQ,EACf,cAAc,iBAAuB;IAG/C,OAAO,CAAC,mBAAmB;IAM3B,OAAO,CAAC,kBAAkB;IAe1B;;;;;;;OAOG;IACH,OAAO,CAAC,iBAAiB;YAOX,sBAAsB;IAgC9B,OAAO,CAAC,GAAG,EAAE,MAAM;;;;;CAiB1B"}
@@ -1,10 +1,8 @@
1
1
  import { PackageRef, semverService } from 'typebulb/resolver';
2
- import { TypeProvider } from './typeProvider.js';
3
- import { makeDeclarationCandidates } from './dtsConfig.js';
2
+ import { declarationCandidatesFor } from './dtsConfig.js';
4
3
  import { TarballFetcher } from './tarballFetcher.js';
5
- export class DefinitelyTypedProvider extends TypeProvider {
6
- constructor(fetchDts, cdnClient, cache, tarballFetcher = new TarballFetcher()) {
7
- super(fetchDts);
4
+ export class DefinitelyTypedProvider {
5
+ constructor(cdnClient, cache, tarballFetcher = new TarballFetcher()) {
8
6
  this.cdnClient = cdnClient;
9
7
  this.cache = cache;
10
8
  this.tarballFetcher = tarballFetcher;
@@ -34,19 +32,15 @@ export class DefinitelyTypedProvider extends TypeProvider {
34
32
  }
35
33
  /**
36
34
  * Declaration-file candidates for a subpath, keyed as the tarball stores them
37
- * (package-relative, no leading `./`). A runtime extension is stripped first —
38
- * `examples/jsm/controls/OrbitControls.js` lives at `OrbitControls.d.ts`, not
39
- * `OrbitControls.js.d.ts` mirroring TypescriptProvider.declarationCandidatesFor.
40
- * The raw-subpath forms are kept as a fallback for paths whose dot isn't a JS
41
- * extension (e.g. a literal `foo.bar` directory).
35
+ * (package-relative, no leading `./`). `declarationCandidatesFor` strips a
36
+ * runtime extension first — `examples/jsm/controls/OrbitControls.js` lives at
37
+ * `OrbitControls.d.ts`, not `OrbitControls.js.d.ts`. The raw-subpath forms are
38
+ * kept as a fallback for paths whose dot isn't a JS extension (e.g. a literal
39
+ * `foo.bar` directory).
42
40
  */
43
41
  subpathCandidates(subpath) {
44
42
  const base = subpath.replace(/\.(mjs|cjs|js|mts|cts|ts)$/i, '');
45
- const out = [
46
- ...makeDeclarationCandidates(base),
47
- `${base}/index.d.ts`,
48
- `${base}/index.d.mts`,
49
- ];
43
+ const out = declarationCandidatesFor(subpath);
50
44
  if (base !== subpath)
51
45
  out.push(`${subpath}.d.ts`, `${subpath}/index.d.ts`);
52
46
  return out;