@discomedia/utils 1.0.25 → 1.0.26
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index-frontend.cjs +42 -12
- package/dist/index-frontend.cjs.map +1 -1
- package/dist/index-frontend.mjs +42 -13
- package/dist/index-frontend.mjs.map +1 -1
- package/dist/index.cjs +171 -22
- package/dist/index.cjs.map +1 -1
- package/dist/index.mjs +171 -23
- package/dist/index.mjs.map +1 -1
- package/dist/package.json +2 -2
- package/dist/test.js +250 -63
- package/dist/test.js.map +1 -1
- package/dist/types/index-frontend.d.ts +1 -1
- package/dist/types/index.d.ts +3 -1
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/json-tools.d.ts.map +1 -1
- package/dist/types/llm-deepseek.d.ts +1 -1
- package/dist/types/llm-deepseek.d.ts.map +1 -1
- package/dist/types/llm-images.d.ts.map +1 -1
- package/dist/types/llm-openai.d.ts +2 -2
- package/dist/types/llm-openai.d.ts.map +1 -1
- package/dist/types/llm-openrouter.d.ts +28 -0
- package/dist/types/llm-openrouter.d.ts.map +1 -0
- package/dist/types/misc-utils.d.ts.map +1 -1
- package/dist/types/types/llm-types.d.ts +26 -3
- package/dist/types/types/llm-types.d.ts.map +1 -1
- package/dist/types/types/logging-types.d.ts +1 -1
- package/dist/types/types/logging-types.d.ts.map +1 -1
- package/dist/types-frontend/index-frontend.d.ts +1 -1
- package/dist/types-frontend/index.d.ts +3 -1
- package/dist/types-frontend/index.d.ts.map +1 -1
- package/dist/types-frontend/json-tools.d.ts.map +1 -1
- package/dist/types-frontend/llm-deepseek.d.ts +1 -1
- package/dist/types-frontend/llm-deepseek.d.ts.map +1 -1
- package/dist/types-frontend/llm-images.d.ts.map +1 -1
- package/dist/types-frontend/llm-openai.d.ts +2 -2
- package/dist/types-frontend/llm-openai.d.ts.map +1 -1
- package/dist/types-frontend/llm-openrouter.d.ts +28 -0
- package/dist/types-frontend/llm-openrouter.d.ts.map +1 -0
- package/dist/types-frontend/misc-utils.d.ts.map +1 -1
- package/dist/types-frontend/types/llm-types.d.ts +26 -3
- package/dist/types-frontend/types/llm-types.d.ts.map +1 -1
- package/dist/types-frontend/types/logging-types.d.ts +1 -1
- package/dist/types-frontend/types/logging-types.d.ts.map +1 -1
- package/package.json +2 -2
package/dist/index-frontend.cjs
CHANGED
|
@@ -14,8 +14,28 @@ var require$$0$4 = require('fs');
|
|
|
14
14
|
var require$$1$1 = require('path');
|
|
15
15
|
var require$$2$1 = require('os');
|
|
16
16
|
|
|
17
|
+
/**
|
|
18
|
+
* Type guard to check if a model is an OpenRouter model
|
|
19
|
+
*/
|
|
20
|
+
function isOpenRouterModel(model) {
|
|
21
|
+
const openRouterModels = [
|
|
22
|
+
'openai/gpt-5',
|
|
23
|
+
'openai/gpt-5-mini',
|
|
24
|
+
'openai/gpt-5-nano',
|
|
25
|
+
'openai/gpt-oss-120b',
|
|
26
|
+
'z.ai/glm-4.5',
|
|
27
|
+
'z.ai/glm-4.5-air',
|
|
28
|
+
'google/gemini-2.5-flash',
|
|
29
|
+
'google/gemini-2.5-flash-lite',
|
|
30
|
+
'deepseek/deepseek-r1-0528',
|
|
31
|
+
'deepseek/deepseek-chat-v3-0324',
|
|
32
|
+
];
|
|
33
|
+
return openRouterModels.includes(model);
|
|
34
|
+
}
|
|
35
|
+
|
|
17
36
|
var Types = /*#__PURE__*/Object.freeze({
|
|
18
|
-
__proto__: null
|
|
37
|
+
__proto__: null,
|
|
38
|
+
isOpenRouterModel: isOpenRouterModel
|
|
19
39
|
});
|
|
20
40
|
|
|
21
41
|
function __classPrivateFieldSet(receiver, state, value, kind, f) {
|
|
@@ -249,7 +269,7 @@ const safeJSON = (text) => {
|
|
|
249
269
|
// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
|
|
250
270
|
const sleep = (ms) => new Promise((resolve) => setTimeout(resolve, ms));
|
|
251
271
|
|
|
252
|
-
const VERSION = '5.12.
|
|
272
|
+
const VERSION = '5.12.2'; // x-release-please-version
|
|
253
273
|
|
|
254
274
|
// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
|
|
255
275
|
const isRunningInBrowser = () => {
|
|
@@ -7044,7 +7064,8 @@ function fixBrokenJson(jsonStr) {
|
|
|
7044
7064
|
return parse();
|
|
7045
7065
|
}
|
|
7046
7066
|
catch (error) {
|
|
7047
|
-
|
|
7067
|
+
const msg = error instanceof Error ? error.message : String(error);
|
|
7068
|
+
console.error(`Error parsing JSON at position ${index}: ${msg}`);
|
|
7048
7069
|
return null;
|
|
7049
7070
|
}
|
|
7050
7071
|
}
|
|
@@ -7588,7 +7609,13 @@ async function makeImagesCall(prompt, options = {}) {
|
|
|
7588
7609
|
const enhancedResponse = {
|
|
7589
7610
|
...response,
|
|
7590
7611
|
usage: {
|
|
7591
|
-
|
|
7612
|
+
// OpenAI Images response may not include usage details per image; preserve if present
|
|
7613
|
+
...(response.usage ?? {
|
|
7614
|
+
input_tokens: 0,
|
|
7615
|
+
input_tokens_details: { image_tokens: 0, text_tokens: 0 },
|
|
7616
|
+
output_tokens: 0,
|
|
7617
|
+
total_tokens: 0,
|
|
7618
|
+
}),
|
|
7592
7619
|
provider: 'openai',
|
|
7593
7620
|
model: 'gpt-image-1',
|
|
7594
7621
|
cost,
|
|
@@ -7597,7 +7624,8 @@ async function makeImagesCall(prompt, options = {}) {
|
|
|
7597
7624
|
return enhancedResponse;
|
|
7598
7625
|
}
|
|
7599
7626
|
catch (error) {
|
|
7600
|
-
|
|
7627
|
+
const message = error instanceof Error ? error.message : 'Unknown error';
|
|
7628
|
+
throw new Error(`OpenAI Images API call failed: ${message}`);
|
|
7601
7629
|
}
|
|
7602
7630
|
}
|
|
7603
7631
|
|
|
@@ -7822,14 +7850,15 @@ const makeDeepseekCall = async (content, responseFormat = 'json', options = {})
|
|
|
7822
7850
|
const completion = await createDeepseekCompletion(content, responseFormat, mergedOptions);
|
|
7823
7851
|
// Handle tool calls similarly to OpenAI
|
|
7824
7852
|
if (completion.tool_calls && completion.tool_calls.length > 0) {
|
|
7853
|
+
const fnCalls = completion.tool_calls
|
|
7854
|
+
.filter((tc) => tc.type === 'function')
|
|
7855
|
+
.map((tc) => ({
|
|
7856
|
+
id: tc.id,
|
|
7857
|
+
name: tc.function.name,
|
|
7858
|
+
arguments: JSON.parse(tc.function.arguments),
|
|
7859
|
+
}));
|
|
7825
7860
|
return {
|
|
7826
|
-
response: {
|
|
7827
|
-
tool_calls: completion.tool_calls.map((tc) => ({
|
|
7828
|
-
id: tc.id,
|
|
7829
|
-
name: tc.function.name,
|
|
7830
|
-
arguments: JSON.parse(tc.function.arguments),
|
|
7831
|
-
})),
|
|
7832
|
-
},
|
|
7861
|
+
response: { tool_calls: fnCalls },
|
|
7833
7862
|
usage: {
|
|
7834
7863
|
prompt_tokens: completion.usage.prompt_tokens,
|
|
7835
7864
|
completion_tokens: completion.usage.completion_tokens,
|
|
@@ -15989,4 +16018,5 @@ const disco = {
|
|
|
15989
16018
|
exports.AlpacaMarketDataAPI = AlpacaMarketDataAPI;
|
|
15990
16019
|
exports.AlpacaTradingAPI = AlpacaTradingAPI;
|
|
15991
16020
|
exports.disco = disco;
|
|
16021
|
+
exports.isOpenRouterModel = isOpenRouterModel;
|
|
15992
16022
|
//# sourceMappingURL=index-frontend.cjs.map
|