first commit

This commit is contained in:
2026-07-19 03:44:35 +09:00
commit 7f950339ae
23281 changed files with 3217138 additions and 0 deletions
+4
View File
@@ -0,0 +1,4 @@
export { InputItems, type ResponseItemList, type InputItemListParams } from "./input-items.mjs";
export { InputTokens, type InputTokenCountResponse, type InputTokenCountParams } from "./input-tokens.mjs";
export { Responses } from "./responses.mjs";
//# sourceMappingURL=index.d.mts.map
+1
View File
@@ -0,0 +1 @@
{"version":3,"file":"index.d.mts","sourceRoot":"","sources":["../../src/resources/responses/index.ts"],"names":[],"mappings":"OAEO,EAAE,UAAU,EAAE,KAAK,gBAAgB,EAAE,KAAK,mBAAmB,EAAE;OAC/D,EAAE,WAAW,EAAE,KAAK,uBAAuB,EAAE,KAAK,qBAAqB,EAAE;OACzE,EAAE,SAAS,EAAE"}
+4
View File
@@ -0,0 +1,4 @@
export { InputItems, type ResponseItemList, type InputItemListParams } from "./input-items.js";
export { InputTokens, type InputTokenCountResponse, type InputTokenCountParams } from "./input-tokens.js";
export { Responses } from "./responses.js";
//# sourceMappingURL=index.d.ts.map
+1
View File
@@ -0,0 +1 @@
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/resources/responses/index.ts"],"names":[],"mappings":"OAEO,EAAE,UAAU,EAAE,KAAK,gBAAgB,EAAE,KAAK,mBAAmB,EAAE;OAC/D,EAAE,WAAW,EAAE,KAAK,uBAAuB,EAAE,KAAK,qBAAqB,EAAE;OACzE,EAAE,SAAS,EAAE"}
+11
View File
@@ -0,0 +1,11 @@
"use strict";
// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
Object.defineProperty(exports, "__esModule", { value: true });
exports.Responses = exports.InputTokens = exports.InputItems = void 0;
var input_items_1 = require("./input-items.js");
Object.defineProperty(exports, "InputItems", { enumerable: true, get: function () { return input_items_1.InputItems; } });
var input_tokens_1 = require("./input-tokens.js");
Object.defineProperty(exports, "InputTokens", { enumerable: true, get: function () { return input_tokens_1.InputTokens; } });
var responses_1 = require("./responses.js");
Object.defineProperty(exports, "Responses", { enumerable: true, get: function () { return responses_1.Responses; } });
//# sourceMappingURL=index.js.map
+1
View File
@@ -0,0 +1 @@
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/resources/responses/index.ts"],"names":[],"mappings":";AAAA,sFAAsF;;;AAEtF,gDAA4F;AAAnF,yGAAA,UAAU,OAAA;AACnB,kDAAuG;AAA9F,2GAAA,WAAW,OAAA;AACpB,4CAAwC;AAA/B,sGAAA,SAAS,OAAA"}
+5
View File
@@ -0,0 +1,5 @@
// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
export { InputItems } from "./input-items.mjs";
export { InputTokens } from "./input-tokens.mjs";
export { Responses } from "./responses.mjs";
//# sourceMappingURL=index.mjs.map
+1
View File
@@ -0,0 +1 @@
{"version":3,"file":"index.mjs","sourceRoot":"","sources":["../../src/resources/responses/index.ts"],"names":[],"mappings":"AAAA,sFAAsF;OAE/E,EAAE,UAAU,EAAmD;OAC/D,EAAE,WAAW,EAA4D;OACzE,EAAE,SAAS,EAAE"}
+65
View File
@@ -0,0 +1,65 @@
import { APIResource } from "../../core/resource.mjs";
import * as ResponsesAPI from "./responses.mjs";
import { ResponseItemsPage } from "./responses.mjs";
import { type CursorPageParams, PagePromise } from "../../core/pagination.mjs";
import { RequestOptions } from "../../internal/request-options.mjs";
export declare class InputItems extends APIResource {
/**
* Returns a list of input items for a given response.
*
* @example
* ```ts
* // Automatically fetches more pages as needed.
* for await (const responseItem of client.responses.inputItems.list(
* 'response_id',
* )) {
* // ...
* }
* ```
*/
list(responseID: string, query?: InputItemListParams | null | undefined, options?: RequestOptions): PagePromise<ResponseItemsPage, ResponsesAPI.ResponseItem>;
}
/**
* A list of Response items.
*/
export interface ResponseItemList {
/**
* A list of items used to generate this response.
*/
data: Array<ResponsesAPI.ResponseItem>;
/**
* The ID of the first item in the list.
*/
first_id: string;
/**
* Whether there are more items available.
*/
has_more: boolean;
/**
* The ID of the last item in the list.
*/
last_id: string;
/**
* The type of object returned, must be `list`.
*/
object: 'list';
}
export interface InputItemListParams extends CursorPageParams {
/**
* Additional fields to include in the response. See the `include` parameter for
* Response creation above for more information.
*/
include?: Array<ResponsesAPI.ResponseIncludable>;
/**
* The order to return the input items in. Default is `desc`.
*
* - `asc`: Return the input items in ascending order.
* - `desc`: Return the input items in descending order.
*/
order?: 'asc' | 'desc';
}
export declare namespace InputItems {
export { type ResponseItemList as ResponseItemList, type InputItemListParams as InputItemListParams };
}
export { type ResponseItemsPage };
//# sourceMappingURL=input-items.d.mts.map
@@ -0,0 +1 @@
{"version":3,"file":"input-items.d.mts","sourceRoot":"","sources":["../../src/resources/responses/input-items.ts"],"names":[],"mappings":"OAEO,EAAE,WAAW,EAAE;OACf,KAAK,YAAY;OACjB,EAAE,iBAAiB,EAAE;OACrB,EAAc,KAAK,gBAAgB,EAAE,WAAW,EAAE;OAClD,EAAE,cAAc,EAAE;AAGzB,qBAAa,UAAW,SAAQ,WAAW;IACzC;;;;;;;;;;;;OAYG;IACH,IAAI,CACF,UAAU,EAAE,MAAM,EAClB,KAAK,GAAE,mBAAmB,GAAG,IAAI,GAAG,SAAc,EAClD,OAAO,CAAC,EAAE,cAAc,GACvB,WAAW,CAAC,iBAAiB,EAAE,YAAY,CAAC,YAAY,CAAC;CAO7D;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;OAEG;IACH,IAAI,EAAE,KAAK,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC;IAEvC;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,QAAQ,EAAE,OAAO,CAAC;IAElB;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;IAEhB;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,mBAAoB,SAAQ,gBAAgB;IAC3D;;;OAGG;IACH,OAAO,CAAC,EAAE,KAAK,CAAC,YAAY,CAAC,kBAAkB,CAAC,CAAC;IAEjD;;;;;OAKG;IACH,KAAK,CAAC,EAAE,KAAK,GAAG,MAAM,CAAC;CACxB;AAED,MAAM,CAAC,OAAO,WAAW,UAAU,CAAC;IAClC,OAAO,EAAE,KAAK,gBAAgB,IAAI,gBAAgB,EAAE,KAAK,mBAAmB,IAAI,mBAAmB,EAAE,CAAC;CACvG;AAED,OAAO,EAAE,KAAK,iBAAiB,EAAE,CAAC"}
+65
View File
@@ -0,0 +1,65 @@
import { APIResource } from "../../core/resource.js";
import * as ResponsesAPI from "./responses.js";
import { ResponseItemsPage } from "./responses.js";
import { type CursorPageParams, PagePromise } from "../../core/pagination.js";
import { RequestOptions } from "../../internal/request-options.js";
export declare class InputItems extends APIResource {
/**
* Returns a list of input items for a given response.
*
* @example
* ```ts
* // Automatically fetches more pages as needed.
* for await (const responseItem of client.responses.inputItems.list(
* 'response_id',
* )) {
* // ...
* }
* ```
*/
list(responseID: string, query?: InputItemListParams | null | undefined, options?: RequestOptions): PagePromise<ResponseItemsPage, ResponsesAPI.ResponseItem>;
}
/**
* A list of Response items.
*/
export interface ResponseItemList {
/**
* A list of items used to generate this response.
*/
data: Array<ResponsesAPI.ResponseItem>;
/**
* The ID of the first item in the list.
*/
first_id: string;
/**
* Whether there are more items available.
*/
has_more: boolean;
/**
* The ID of the last item in the list.
*/
last_id: string;
/**
* The type of object returned, must be `list`.
*/
object: 'list';
}
export interface InputItemListParams extends CursorPageParams {
/**
* Additional fields to include in the response. See the `include` parameter for
* Response creation above for more information.
*/
include?: Array<ResponsesAPI.ResponseIncludable>;
/**
* The order to return the input items in. Default is `desc`.
*
* - `asc`: Return the input items in ascending order.
* - `desc`: Return the input items in descending order.
*/
order?: 'asc' | 'desc';
}
export declare namespace InputItems {
export { type ResponseItemList as ResponseItemList, type InputItemListParams as InputItemListParams };
}
export { type ResponseItemsPage };
//# sourceMappingURL=input-items.d.ts.map
+1
View File
@@ -0,0 +1 @@
{"version":3,"file":"input-items.d.ts","sourceRoot":"","sources":["../../src/resources/responses/input-items.ts"],"names":[],"mappings":"OAEO,EAAE,WAAW,EAAE;OACf,KAAK,YAAY;OACjB,EAAE,iBAAiB,EAAE;OACrB,EAAc,KAAK,gBAAgB,EAAE,WAAW,EAAE;OAClD,EAAE,cAAc,EAAE;AAGzB,qBAAa,UAAW,SAAQ,WAAW;IACzC;;;;;;;;;;;;OAYG;IACH,IAAI,CACF,UAAU,EAAE,MAAM,EAClB,KAAK,GAAE,mBAAmB,GAAG,IAAI,GAAG,SAAc,EAClD,OAAO,CAAC,EAAE,cAAc,GACvB,WAAW,CAAC,iBAAiB,EAAE,YAAY,CAAC,YAAY,CAAC;CAO7D;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;OAEG;IACH,IAAI,EAAE,KAAK,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC;IAEvC;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,QAAQ,EAAE,OAAO,CAAC;IAElB;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;IAEhB;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,mBAAoB,SAAQ,gBAAgB;IAC3D;;;OAGG;IACH,OAAO,CAAC,EAAE,KAAK,CAAC,YAAY,CAAC,kBAAkB,CAAC,CAAC;IAEjD;;;;;OAKG;IACH,KAAK,CAAC,EAAE,KAAK,GAAG,MAAM,CAAC;CACxB;AAED,MAAM,CAAC,OAAO,WAAW,UAAU,CAAC;IAClC,OAAO,EAAE,KAAK,gBAAgB,IAAI,gBAAgB,EAAE,KAAK,mBAAmB,IAAI,mBAAmB,EAAE,CAAC;CACvG;AAED,OAAO,EAAE,KAAK,iBAAiB,EAAE,CAAC"}
+27
View File
@@ -0,0 +1,27 @@
"use strict";
// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
Object.defineProperty(exports, "__esModule", { value: true });
exports.InputItems = void 0;
const resource_1 = require("../../core/resource.js");
const pagination_1 = require("../../core/pagination.js");
const path_1 = require("../../internal/utils/path.js");
class InputItems extends resource_1.APIResource {
/**
* Returns a list of input items for a given response.
*
* @example
* ```ts
* // Automatically fetches more pages as needed.
* for await (const responseItem of client.responses.inputItems.list(
* 'response_id',
* )) {
* // ...
* }
* ```
*/
list(responseID, query = {}, options) {
return this._client.getAPIList((0, path_1.path) `/responses/${responseID}/input_items`, (pagination_1.CursorPage), { query, ...options });
}
}
exports.InputItems = InputItems;
//# sourceMappingURL=input-items.js.map
+1
View File
@@ -0,0 +1 @@
{"version":3,"file":"input-items.js","sourceRoot":"","sources":["../../src/resources/responses/input-items.ts"],"names":[],"mappings":";AAAA,sFAAsF;;;AAEtF,qDAAkD;AAGlD,yDAAuF;AAEvF,uDAAiD;AAEjD,MAAa,UAAW,SAAQ,sBAAW;IACzC;;;;;;;;;;;;OAYG;IACH,IAAI,CACF,UAAkB,EAClB,QAAgD,EAAE,EAClD,OAAwB;QAExB,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,CAC5B,IAAA,WAAI,EAAA,cAAc,UAAU,cAAc,EAC1C,CAAA,uBAAqC,CAAA,EACrC,EAAE,KAAK,EAAE,GAAG,OAAO,EAAE,CACtB,CAAC;IACJ,CAAC;CACF;AAzBD,gCAyBC"}
+23
View File
@@ -0,0 +1,23 @@
// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
import { APIResource } from "../../core/resource.mjs";
import { CursorPage } from "../../core/pagination.mjs";
import { path } from "../../internal/utils/path.mjs";
export class InputItems extends APIResource {
/**
* Returns a list of input items for a given response.
*
* @example
* ```ts
* // Automatically fetches more pages as needed.
* for await (const responseItem of client.responses.inputItems.list(
* 'response_id',
* )) {
* // ...
* }
* ```
*/
list(responseID, query = {}, options) {
return this._client.getAPIList(path `/responses/${responseID}/input_items`, (CursorPage), { query, ...options });
}
}
//# sourceMappingURL=input-items.mjs.map
+1
View File
@@ -0,0 +1 @@
{"version":3,"file":"input-items.mjs","sourceRoot":"","sources":["../../src/resources/responses/input-items.ts"],"names":[],"mappings":"AAAA,sFAAsF;OAE/E,EAAE,WAAW,EAAE;OAGf,EAAE,UAAU,EAAsC;OAElD,EAAE,IAAI,EAAE;AAEf,MAAM,OAAO,UAAW,SAAQ,WAAW;IACzC;;;;;;;;;;;;OAYG;IACH,IAAI,CACF,UAAkB,EAClB,QAAgD,EAAE,EAClD,OAAwB;QAExB,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,CAC5B,IAAI,CAAA,cAAc,UAAU,cAAc,EAC1C,CAAA,UAAqC,CAAA,EACrC,EAAE,KAAK,EAAE,GAAG,OAAO,EAAE,CACtB,CAAC;IACJ,CAAC;CACF"}
+129
View File
@@ -0,0 +1,129 @@
import { APIResource } from "../../core/resource.mjs";
import * as Shared from "../shared.mjs";
import * as ResponsesAPI from "./responses.mjs";
import { APIPromise } from "../../core/api-promise.mjs";
import { RequestOptions } from "../../internal/request-options.mjs";
export declare class InputTokens extends APIResource {
/**
* Returns input token counts of the request.
*
* Returns an object with `object` set to `response.input_tokens` and an
* `input_tokens` count.
*
* @example
* ```ts
* const response = await client.responses.inputTokens.count();
* ```
*/
count(body?: InputTokenCountParams | null | undefined, options?: RequestOptions): APIPromise<InputTokenCountResponse>;
}
export interface InputTokenCountResponse {
input_tokens: number;
object: 'response.input_tokens';
}
export interface InputTokenCountParams {
/**
* The conversation that this response belongs to. Items from this conversation are
* prepended to `input_items` for this response request. Input items and output
* items from this response are automatically added to this conversation after this
* response completes.
*/
conversation?: string | ResponsesAPI.ResponseConversationParam | null;
/**
* Text, image, or file inputs to the model, used to generate a response
*/
input?: string | Array<ResponsesAPI.ResponseInputItem> | null;
/**
* A system (or developer) message inserted into the model's context. When used
* along with `previous_response_id`, the instructions from a previous response
* will not be carried over to the next response. This makes it simple to swap out
* system (or developer) messages in new responses.
*/
instructions?: string | null;
/**
* Model ID used to generate the response, like `gpt-4o` or `o3`. OpenAI offers a
* wide range of models with different capabilities, performance characteristics,
* and price points. Refer to the
* [model guide](https://platform.openai.com/docs/models) to browse and compare
* available models.
*/
model?: string | null;
/**
* Whether to allow the model to run tool calls in parallel.
*/
parallel_tool_calls?: boolean | null;
/**
* The unique ID of the previous response to the model. Use this to create
* multi-turn conversations. Learn more about
* [conversation state](https://platform.openai.com/docs/guides/conversation-state).
* Cannot be used in conjunction with `conversation`.
*/
previous_response_id?: string | null;
/**
* **gpt-5 and o-series models only** Configuration options for
* [reasoning models](https://platform.openai.com/docs/guides/reasoning).
*/
reasoning?: Shared.Reasoning | null;
/**
* Configuration options for a text response from the model. Can be plain text or
* structured JSON data. Learn more:
*
* - [Text inputs and outputs](https://platform.openai.com/docs/guides/text)
* - [Structured Outputs](https://platform.openai.com/docs/guides/structured-outputs)
*/
text?: InputTokenCountParams.Text | null;
/**
* Controls which tool the model should use, if any.
*/
tool_choice?: ResponsesAPI.ToolChoiceOptions | ResponsesAPI.ToolChoiceAllowed | ResponsesAPI.ToolChoiceTypes | ResponsesAPI.ToolChoiceFunction | ResponsesAPI.ToolChoiceMcp | ResponsesAPI.ToolChoiceCustom | ResponsesAPI.ToolChoiceApplyPatch | ResponsesAPI.ToolChoiceShell | null;
/**
* An array of tools the model may call while generating a response. You can
* specify which tool to use by setting the `tool_choice` parameter.
*/
tools?: Array<ResponsesAPI.Tool> | null;
/**
* The truncation strategy to use for the model response. - `auto`: If the input to
* this Response exceeds the model's context window size, the model will truncate
* the response to fit the context window by dropping items from the beginning of
* the conversation. - `disabled` (default): If the input size will exceed the
* context window size for a model, the request will fail with a 400 error.
*/
truncation?: 'auto' | 'disabled';
}
export declare namespace InputTokenCountParams {
/**
* Configuration options for a text response from the model. Can be plain text or
* structured JSON data. Learn more:
*
* - [Text inputs and outputs](https://platform.openai.com/docs/guides/text)
* - [Structured Outputs](https://platform.openai.com/docs/guides/structured-outputs)
*/
interface Text {
/**
* An object specifying the format that the model must output.
*
* Configuring `{ "type": "json_schema" }` enables Structured Outputs, which
* ensures the model will match your supplied JSON schema. Learn more in the
* [Structured Outputs guide](https://platform.openai.com/docs/guides/structured-outputs).
*
* The default format is `{ "type": "text" }` with no additional options.
*
* **Not recommended for gpt-4o and newer models:**
*
* Setting to `{ "type": "json_object" }` enables the older JSON mode, which
* ensures the message the model generates is valid JSON. Using `json_schema` is
* preferred for models that support it.
*/
format?: ResponsesAPI.ResponseFormatTextConfig;
/**
* Constrains the verbosity of the model's response. Lower values will result in
* more concise responses, while higher values will result in more verbose
* responses. Currently supported values are `low`, `medium`, and `high`.
*/
verbosity?: 'low' | 'medium' | 'high' | null;
}
}
export declare namespace InputTokens {
export { type InputTokenCountResponse as InputTokenCountResponse, type InputTokenCountParams as InputTokenCountParams, };
}
//# sourceMappingURL=input-tokens.d.mts.map
@@ -0,0 +1 @@
{"version":3,"file":"input-tokens.d.mts","sourceRoot":"","sources":["../../src/resources/responses/input-tokens.ts"],"names":[],"mappings":"OAEO,EAAE,WAAW,EAAE;OACf,KAAK,MAAM;OACX,KAAK,YAAY;OACjB,EAAE,UAAU,EAAE;OACd,EAAE,cAAc,EAAE;AAEzB,qBAAa,WAAY,SAAQ,WAAW;IAC1C;;;;;;;;;;OAUG;IACH,KAAK,CACH,IAAI,GAAE,qBAAqB,GAAG,IAAI,GAAG,SAAc,EACnD,OAAO,CAAC,EAAE,cAAc,GACvB,UAAU,CAAC,uBAAuB,CAAC;CAGvC;AAED,MAAM,WAAW,uBAAuB;IACtC,YAAY,EAAE,MAAM,CAAC;IAErB,MAAM,EAAE,uBAAuB,CAAC;CACjC;AAED,MAAM,WAAW,qBAAqB;IACpC;;;;;OAKG;IACH,YAAY,CAAC,EAAE,MAAM,GAAG,YAAY,CAAC,yBAAyB,GAAG,IAAI,CAAC;IAEtE;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC,YAAY,CAAC,iBAAiB,CAAC,GAAG,IAAI,CAAC;IAE9D;;;;;OAKG;IACH,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAE7B;;;;;;OAMG;IACH,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAEtB;;OAEG;IACH,mBAAmB,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;IAErC;;;;;OAKG;IACH,oBAAoB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAErC;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC,SAAS,GAAG,IAAI,CAAC;IAEpC;;;;;;OAMG;IACH,IAAI,CAAC,EAAE,qBAAqB,CAAC,IAAI,GAAG,IAAI,CAAC;IAEzC;;OAEG;IACH,WAAW,CAAC,EACR,YAAY,CAAC,iBAAiB,GAC9B,YAAY,CAAC,iBAAiB,GAC9B,YAAY,CAAC,eAAe,GAC5B,YAAY,CAAC,kBAAkB,GAC/B,YAAY,CAAC,aAAa,GAC1B,YAAY,CAAC,gBAAgB,GAC7B,YAAY,CAAC,oBAAoB,GACjC,YAAY,CAAC,eAAe,GAC5B,IAAI,CAAC;IAET;;;OAGG;IACH,KAAK,CAAC,EAAE,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IAExC;;;;;;OAMG;IACH,UAAU,CAAC,EAAE,MAAM,GAAG,UAAU,CAAC;CAClC;AAED,yBAAiB,qBAAqB,CAAC;IACrC;;;;;;OAMG;IACH,UAAiB,IAAI;QACnB;;;;;;;;;;;;;;WAcG;QACH,MAAM,CAAC,EAAE,YAAY,CAAC,wBAAwB,CAAC;QAE/C;;;;WAIG;QACH,SAAS,CAAC,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,IAAI,CAAC;KAC9C;CACF;AAED,MAAM,CAAC,OAAO,WAAW,WAAW,CAAC;IACnC,OAAO,EACL,KAAK,uBAAuB,IAAI,uBAAuB,EACvD,KAAK,qBAAqB,IAAI,qBAAqB,GACpD,CAAC;CACH"}
+129
View File
@@ -0,0 +1,129 @@
import { APIResource } from "../../core/resource.js";
import * as Shared from "../shared.js";
import * as ResponsesAPI from "./responses.js";
import { APIPromise } from "../../core/api-promise.js";
import { RequestOptions } from "../../internal/request-options.js";
export declare class InputTokens extends APIResource {
/**
* Returns input token counts of the request.
*
* Returns an object with `object` set to `response.input_tokens` and an
* `input_tokens` count.
*
* @example
* ```ts
* const response = await client.responses.inputTokens.count();
* ```
*/
count(body?: InputTokenCountParams | null | undefined, options?: RequestOptions): APIPromise<InputTokenCountResponse>;
}
export interface InputTokenCountResponse {
input_tokens: number;
object: 'response.input_tokens';
}
export interface InputTokenCountParams {
/**
* The conversation that this response belongs to. Items from this conversation are
* prepended to `input_items` for this response request. Input items and output
* items from this response are automatically added to this conversation after this
* response completes.
*/
conversation?: string | ResponsesAPI.ResponseConversationParam | null;
/**
* Text, image, or file inputs to the model, used to generate a response
*/
input?: string | Array<ResponsesAPI.ResponseInputItem> | null;
/**
* A system (or developer) message inserted into the model's context. When used
* along with `previous_response_id`, the instructions from a previous response
* will not be carried over to the next response. This makes it simple to swap out
* system (or developer) messages in new responses.
*/
instructions?: string | null;
/**
* Model ID used to generate the response, like `gpt-4o` or `o3`. OpenAI offers a
* wide range of models with different capabilities, performance characteristics,
* and price points. Refer to the
* [model guide](https://platform.openai.com/docs/models) to browse and compare
* available models.
*/
model?: string | null;
/**
* Whether to allow the model to run tool calls in parallel.
*/
parallel_tool_calls?: boolean | null;
/**
* The unique ID of the previous response to the model. Use this to create
* multi-turn conversations. Learn more about
* [conversation state](https://platform.openai.com/docs/guides/conversation-state).
* Cannot be used in conjunction with `conversation`.
*/
previous_response_id?: string | null;
/**
* **gpt-5 and o-series models only** Configuration options for
* [reasoning models](https://platform.openai.com/docs/guides/reasoning).
*/
reasoning?: Shared.Reasoning | null;
/**
* Configuration options for a text response from the model. Can be plain text or
* structured JSON data. Learn more:
*
* - [Text inputs and outputs](https://platform.openai.com/docs/guides/text)
* - [Structured Outputs](https://platform.openai.com/docs/guides/structured-outputs)
*/
text?: InputTokenCountParams.Text | null;
/**
* Controls which tool the model should use, if any.
*/
tool_choice?: ResponsesAPI.ToolChoiceOptions | ResponsesAPI.ToolChoiceAllowed | ResponsesAPI.ToolChoiceTypes | ResponsesAPI.ToolChoiceFunction | ResponsesAPI.ToolChoiceMcp | ResponsesAPI.ToolChoiceCustom | ResponsesAPI.ToolChoiceApplyPatch | ResponsesAPI.ToolChoiceShell | null;
/**
* An array of tools the model may call while generating a response. You can
* specify which tool to use by setting the `tool_choice` parameter.
*/
tools?: Array<ResponsesAPI.Tool> | null;
/**
* The truncation strategy to use for the model response. - `auto`: If the input to
* this Response exceeds the model's context window size, the model will truncate
* the response to fit the context window by dropping items from the beginning of
* the conversation. - `disabled` (default): If the input size will exceed the
* context window size for a model, the request will fail with a 400 error.
*/
truncation?: 'auto' | 'disabled';
}
export declare namespace InputTokenCountParams {
/**
* Configuration options for a text response from the model. Can be plain text or
* structured JSON data. Learn more:
*
* - [Text inputs and outputs](https://platform.openai.com/docs/guides/text)
* - [Structured Outputs](https://platform.openai.com/docs/guides/structured-outputs)
*/
interface Text {
/**
* An object specifying the format that the model must output.
*
* Configuring `{ "type": "json_schema" }` enables Structured Outputs, which
* ensures the model will match your supplied JSON schema. Learn more in the
* [Structured Outputs guide](https://platform.openai.com/docs/guides/structured-outputs).
*
* The default format is `{ "type": "text" }` with no additional options.
*
* **Not recommended for gpt-4o and newer models:**
*
* Setting to `{ "type": "json_object" }` enables the older JSON mode, which
* ensures the message the model generates is valid JSON. Using `json_schema` is
* preferred for models that support it.
*/
format?: ResponsesAPI.ResponseFormatTextConfig;
/**
* Constrains the verbosity of the model's response. Lower values will result in
* more concise responses, while higher values will result in more verbose
* responses. Currently supported values are `low`, `medium`, and `high`.
*/
verbosity?: 'low' | 'medium' | 'high' | null;
}
}
export declare namespace InputTokens {
export { type InputTokenCountResponse as InputTokenCountResponse, type InputTokenCountParams as InputTokenCountParams, };
}
//# sourceMappingURL=input-tokens.d.ts.map
@@ -0,0 +1 @@
{"version":3,"file":"input-tokens.d.ts","sourceRoot":"","sources":["../../src/resources/responses/input-tokens.ts"],"names":[],"mappings":"OAEO,EAAE,WAAW,EAAE;OACf,KAAK,MAAM;OACX,KAAK,YAAY;OACjB,EAAE,UAAU,EAAE;OACd,EAAE,cAAc,EAAE;AAEzB,qBAAa,WAAY,SAAQ,WAAW;IAC1C;;;;;;;;;;OAUG;IACH,KAAK,CACH,IAAI,GAAE,qBAAqB,GAAG,IAAI,GAAG,SAAc,EACnD,OAAO,CAAC,EAAE,cAAc,GACvB,UAAU,CAAC,uBAAuB,CAAC;CAGvC;AAED,MAAM,WAAW,uBAAuB;IACtC,YAAY,EAAE,MAAM,CAAC;IAErB,MAAM,EAAE,uBAAuB,CAAC;CACjC;AAED,MAAM,WAAW,qBAAqB;IACpC;;;;;OAKG;IACH,YAAY,CAAC,EAAE,MAAM,GAAG,YAAY,CAAC,yBAAyB,GAAG,IAAI,CAAC;IAEtE;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC,YAAY,CAAC,iBAAiB,CAAC,GAAG,IAAI,CAAC;IAE9D;;;;;OAKG;IACH,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAE7B;;;;;;OAMG;IACH,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAEtB;;OAEG;IACH,mBAAmB,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;IAErC;;;;;OAKG;IACH,oBAAoB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAErC;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC,SAAS,GAAG,IAAI,CAAC;IAEpC;;;;;;OAMG;IACH,IAAI,CAAC,EAAE,qBAAqB,CAAC,IAAI,GAAG,IAAI,CAAC;IAEzC;;OAEG;IACH,WAAW,CAAC,EACR,YAAY,CAAC,iBAAiB,GAC9B,YAAY,CAAC,iBAAiB,GAC9B,YAAY,CAAC,eAAe,GAC5B,YAAY,CAAC,kBAAkB,GAC/B,YAAY,CAAC,aAAa,GAC1B,YAAY,CAAC,gBAAgB,GAC7B,YAAY,CAAC,oBAAoB,GACjC,YAAY,CAAC,eAAe,GAC5B,IAAI,CAAC;IAET;;;OAGG;IACH,KAAK,CAAC,EAAE,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IAExC;;;;;;OAMG;IACH,UAAU,CAAC,EAAE,MAAM,GAAG,UAAU,CAAC;CAClC;AAED,yBAAiB,qBAAqB,CAAC;IACrC;;;;;;OAMG;IACH,UAAiB,IAAI;QACnB;;;;;;;;;;;;;;WAcG;QACH,MAAM,CAAC,EAAE,YAAY,CAAC,wBAAwB,CAAC;QAE/C;;;;WAIG;QACH,SAAS,CAAC,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,IAAI,CAAC;KAC9C;CACF;AAED,MAAM,CAAC,OAAO,WAAW,WAAW,CAAC;IACnC,OAAO,EACL,KAAK,uBAAuB,IAAI,uBAAuB,EACvD,KAAK,qBAAqB,IAAI,qBAAqB,GACpD,CAAC;CACH"}
+23
View File
@@ -0,0 +1,23 @@
"use strict";
// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
Object.defineProperty(exports, "__esModule", { value: true });
exports.InputTokens = void 0;
const resource_1 = require("../../core/resource.js");
class InputTokens extends resource_1.APIResource {
/**
* Returns input token counts of the request.
*
* Returns an object with `object` set to `response.input_tokens` and an
* `input_tokens` count.
*
* @example
* ```ts
* const response = await client.responses.inputTokens.count();
* ```
*/
count(body = {}, options) {
return this._client.post('/responses/input_tokens', { body, ...options });
}
}
exports.InputTokens = InputTokens;
//# sourceMappingURL=input-tokens.js.map
+1
View File
@@ -0,0 +1 @@
{"version":3,"file":"input-tokens.js","sourceRoot":"","sources":["../../src/resources/responses/input-tokens.ts"],"names":[],"mappings":";AAAA,sFAAsF;;;AAEtF,qDAAkD;AAMlD,MAAa,WAAY,SAAQ,sBAAW;IAC1C;;;;;;;;;;OAUG;IACH,KAAK,CACH,OAAiD,EAAE,EACnD,OAAwB;QAExB,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,yBAAyB,EAAE,EAAE,IAAI,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;IAC5E,CAAC;CACF;AAlBD,kCAkBC"}
+19
View File
@@ -0,0 +1,19 @@
// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
import { APIResource } from "../../core/resource.mjs";
export class InputTokens extends APIResource {
/**
* Returns input token counts of the request.
*
* Returns an object with `object` set to `response.input_tokens` and an
* `input_tokens` count.
*
* @example
* ```ts
* const response = await client.responses.inputTokens.count();
* ```
*/
count(body = {}, options) {
return this._client.post('/responses/input_tokens', { body, ...options });
}
}
//# sourceMappingURL=input-tokens.mjs.map
+1
View File
@@ -0,0 +1 @@
{"version":3,"file":"input-tokens.mjs","sourceRoot":"","sources":["../../src/resources/responses/input-tokens.ts"],"names":[],"mappings":"AAAA,sFAAsF;OAE/E,EAAE,WAAW,EAAE;AAMtB,MAAM,OAAO,WAAY,SAAQ,WAAW;IAC1C;;;;;;;;;;OAUG;IACH,KAAK,CACH,OAAiD,EAAE,EACnD,OAAwB;QAExB,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,yBAAyB,EAAE,EAAE,IAAI,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;IAC5E,CAAC;CACF"}
+40
View File
@@ -0,0 +1,40 @@
import * as ResponsesAPI from "./responses.mjs";
import { OpenAI } from "../../client.mjs";
import { EventEmitter } from "../../core/EventEmitter.mjs";
import { OpenAIError } from "../../core/error.mjs";
export declare class WebSocketError extends OpenAIError {
/**
* The error data that the API sent back in an error event.
*/
error?: ResponsesAPI.ResponseErrorEvent | undefined;
constructor(message: string, event: ResponsesAPI.ResponseErrorEvent | null);
}
type Simplify<T> = {
[KeyType in keyof T]: T[KeyType];
} & {};
type WebSocketEvents = Simplify<{
event: (event: ResponsesAPI.ResponsesServerEvent) => void;
error: (error: WebSocketError) => void;
} & {
[EventType in Exclude<NonNullable<ResponsesAPI.ResponsesServerEvent['type']>, 'error'>]: (event: Extract<ResponsesAPI.ResponsesServerEvent, {
type?: EventType;
}>) => unknown;
}>;
export declare abstract class ResponsesEmitter extends EventEmitter<WebSocketEvents> {
/**
* Send an event to the API.
*/
abstract send(event: ResponsesAPI.ResponsesClientEvent): void;
/**
* Close the WebSocket connection.
*/
abstract close(props?: {
code: number;
reason: string;
}): void;
protected _onError(event: null, message: string, cause: any): void;
protected _onError(event: ResponsesAPI.ResponseErrorEvent, message?: string | undefined): void;
}
export declare function buildURL(client: OpenAI, query?: object | null): URL;
export {};
//# sourceMappingURL=internal-base.d.mts.map
@@ -0,0 +1 @@
{"version":3,"file":"internal-base.d.mts","sourceRoot":"","sources":["../../src/resources/responses/internal-base.ts"],"names":[],"mappings":"OAEO,KAAK,YAAY;OACjB,EAAE,MAAM,EAAE;OAEV,EAAE,YAAY,EAAE;OAChB,EAAE,WAAW,EAAE;AAGtB,qBAAa,cAAe,SAAQ,WAAW;IAC7C;;OAEG;IACH,KAAK,CAAC,EAAE,YAAY,CAAC,kBAAkB,GAAG,SAAS,CAAC;gBAExC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,YAAY,CAAC,kBAAkB,GAAG,IAAI;CAK3E;AAED,KAAK,QAAQ,CAAC,CAAC,IAAI;KAAG,OAAO,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC;CAAE,GAAG,EAAE,CAAC;AAE7D,KAAK,eAAe,GAAG,QAAQ,CAC7B;IACE,KAAK,EAAE,CAAC,KAAK,EAAE,YAAY,CAAC,oBAAoB,KAAK,IAAI,CAAC;IAC1D,KAAK,EAAE,CAAC,KAAK,EAAE,cAAc,KAAK,IAAI,CAAC;CACxC,GAAG;KACD,SAAS,IAAI,OAAO,CAAC,WAAW,CAAC,YAAY,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC,EAAE,OAAO,CAAC,GAAG,CACvF,KAAK,EAAE,OAAO,CAAC,YAAY,CAAC,oBAAoB,EAAE;QAAE,IAAI,CAAC,EAAE,SAAS,CAAA;KAAE,CAAC,KACpE,OAAO;CACb,CACF,CAAC;AAEF,8BAAsB,gBAAiB,SAAQ,YAAY,CAAC,eAAe,CAAC;IAC1E;;OAEG;IACH,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,YAAY,CAAC,oBAAoB,GAAG,IAAI;IAE7D;;OAEG;IACH,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI;IAE9D,SAAS,CAAC,QAAQ,CAAC,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,GAAG,IAAI;IAClE,SAAS,CAAC,QAAQ,CAAC,KAAK,EAAE,YAAY,CAAC,kBAAkB,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI;CA0B/F;AAED,wBAAgB,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,GAAG,CASnE"}
+40
View File
@@ -0,0 +1,40 @@
import * as ResponsesAPI from "./responses.js";
import { OpenAI } from "../../client.js";
import { EventEmitter } from "../../core/EventEmitter.js";
import { OpenAIError } from "../../core/error.js";
export declare class WebSocketError extends OpenAIError {
/**
* The error data that the API sent back in an error event.
*/
error?: ResponsesAPI.ResponseErrorEvent | undefined;
constructor(message: string, event: ResponsesAPI.ResponseErrorEvent | null);
}
type Simplify<T> = {
[KeyType in keyof T]: T[KeyType];
} & {};
type WebSocketEvents = Simplify<{
event: (event: ResponsesAPI.ResponsesServerEvent) => void;
error: (error: WebSocketError) => void;
} & {
[EventType in Exclude<NonNullable<ResponsesAPI.ResponsesServerEvent['type']>, 'error'>]: (event: Extract<ResponsesAPI.ResponsesServerEvent, {
type?: EventType;
}>) => unknown;
}>;
export declare abstract class ResponsesEmitter extends EventEmitter<WebSocketEvents> {
/**
* Send an event to the API.
*/
abstract send(event: ResponsesAPI.ResponsesClientEvent): void;
/**
* Close the WebSocket connection.
*/
abstract close(props?: {
code: number;
reason: string;
}): void;
protected _onError(event: null, message: string, cause: any): void;
protected _onError(event: ResponsesAPI.ResponseErrorEvent, message?: string | undefined): void;
}
export declare function buildURL(client: OpenAI, query?: object | null): URL;
export {};
//# sourceMappingURL=internal-base.d.ts.map
@@ -0,0 +1 @@
{"version":3,"file":"internal-base.d.ts","sourceRoot":"","sources":["../../src/resources/responses/internal-base.ts"],"names":[],"mappings":"OAEO,KAAK,YAAY;OACjB,EAAE,MAAM,EAAE;OAEV,EAAE,YAAY,EAAE;OAChB,EAAE,WAAW,EAAE;AAGtB,qBAAa,cAAe,SAAQ,WAAW;IAC7C;;OAEG;IACH,KAAK,CAAC,EAAE,YAAY,CAAC,kBAAkB,GAAG,SAAS,CAAC;gBAExC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,YAAY,CAAC,kBAAkB,GAAG,IAAI;CAK3E;AAED,KAAK,QAAQ,CAAC,CAAC,IAAI;KAAG,OAAO,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC;CAAE,GAAG,EAAE,CAAC;AAE7D,KAAK,eAAe,GAAG,QAAQ,CAC7B;IACE,KAAK,EAAE,CAAC,KAAK,EAAE,YAAY,CAAC,oBAAoB,KAAK,IAAI,CAAC;IAC1D,KAAK,EAAE,CAAC,KAAK,EAAE,cAAc,KAAK,IAAI,CAAC;CACxC,GAAG;KACD,SAAS,IAAI,OAAO,CAAC,WAAW,CAAC,YAAY,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC,EAAE,OAAO,CAAC,GAAG,CACvF,KAAK,EAAE,OAAO,CAAC,YAAY,CAAC,oBAAoB,EAAE;QAAE,IAAI,CAAC,EAAE,SAAS,CAAA;KAAE,CAAC,KACpE,OAAO;CACb,CACF,CAAC;AAEF,8BAAsB,gBAAiB,SAAQ,YAAY,CAAC,eAAe,CAAC;IAC1E;;OAEG;IACH,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,YAAY,CAAC,oBAAoB,GAAG,IAAI;IAE7D;;OAEG;IACH,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI;IAE9D,SAAS,CAAC,QAAQ,CAAC,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,GAAG,IAAI;IAClE,SAAS,CAAC,QAAQ,CAAC,KAAK,EAAE,YAAY,CAAC,kBAAkB,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI;CA0B/F;AAED,wBAAgB,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,GAAG,CASnE"}
+52
View File
@@ -0,0 +1,52 @@
"use strict";
// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
Object.defineProperty(exports, "__esModule", { value: true });
exports.ResponsesEmitter = exports.WebSocketError = void 0;
exports.buildURL = buildURL;
const EventEmitter_1 = require("../../core/EventEmitter.js");
const error_1 = require("../../core/error.js");
const utils_1 = require("../../internal/utils.js");
class WebSocketError extends error_1.OpenAIError {
constructor(message, event) {
super(message);
this.error = event ?? undefined;
}
}
exports.WebSocketError = WebSocketError;
class ResponsesEmitter extends EventEmitter_1.EventEmitter {
_onError(event, message, cause) {
message = message ?? safeJSONStringify(event) ?? 'unknown error';
if (!this._hasListener('error')) {
const error = new WebSocketError(message +
`\n\nTo resolve these unhandled rejection errors you should bind an \`error\` callback, e.g. \`ws.on('error', (error) => ...)\` `, event);
// @ts-ignore
error.cause = cause;
Promise.reject(error);
return;
}
const error = new WebSocketError(message, event);
// @ts-ignore
error.cause = cause;
this._emit('error', error);
}
}
exports.ResponsesEmitter = ResponsesEmitter;
function buildURL(client, query) {
const path = '/responses';
const baseURL = client.baseURL;
const url = new URL(baseURL + (baseURL.endsWith('/') ? path.slice(1) : path));
if (query) {
url.search = (0, utils_1.stringifyQuery)(query);
}
url.protocol = url.protocol === 'http:' ? 'ws:' : 'wss:';
return url;
}
function safeJSONStringify(value) {
try {
return JSON.stringify(value);
}
catch {
return null;
}
}
//# sourceMappingURL=internal-base.js.map
+1
View File
@@ -0,0 +1 @@
{"version":3,"file":"internal-base.js","sourceRoot":"","sources":["../../src/resources/responses/internal-base.ts"],"names":[],"mappings":";AAAA,sFAAsF;;;AA2EtF,4BASC;AA/ED,6DAAuD;AACvD,+CAA+C;AAC/C,mDAAsD;AAEtD,MAAa,cAAe,SAAQ,mBAAW;IAM7C,YAAY,OAAe,EAAE,KAA6C;QACxE,KAAK,CAAC,OAAO,CAAC,CAAC;QAEf,IAAI,CAAC,KAAK,GAAG,KAAK,IAAI,SAAS,CAAC;IAClC,CAAC;CACF;AAXD,wCAWC;AAeD,MAAsB,gBAAiB,SAAQ,2BAA6B;IAahE,QAAQ,CAChB,KAA6C,EAC7C,OAA4B,EAC5B,KAAW;QAEX,OAAO,GAAG,OAAO,IAAI,iBAAiB,CAAC,KAAK,CAAC,IAAI,eAAe,CAAC;QAEjE,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE,CAAC;YAChC,MAAM,KAAK,GAAG,IAAI,cAAc,CAC9B,OAAO;gBACL,iIAAiI,EACnI,KAAK,CACN,CAAC;YACF,aAAa;YACb,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC;YACpB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACtB,OAAO;QACT,CAAC;QAED,MAAM,KAAK,GAAG,IAAI,cAAc,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QACjD,aAAa;QACb,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC;QAEpB,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IAC7B,CAAC;CACF;AAtCD,4CAsCC;AAED,SAAgB,QAAQ,CAAC,MAAc,EAAE,KAAqB;IAC5D,MAAM,IAAI,GAAG,YAAY,CAAC;IAC1B,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;IAC/B,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,OAAO,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;IAC9E,IAAI,KAAK,EAAE,CAAC;QACV,GAAG,CAAC,MAAM,GAAG,IAAA,sBAAc,EAAC,KAAK,CAAC,CAAC;IACrC,CAAC;IACD,GAAG,CAAC,QAAQ,GAAG,GAAG,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC;IACzD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAS,iBAAiB,CAAC,KAAc;IACvC,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IAC/B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC"}
+46
View File
@@ -0,0 +1,46 @@
// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
import { EventEmitter } from "../../core/EventEmitter.mjs";
import { OpenAIError } from "../../core/error.mjs";
import { stringifyQuery } from "../../internal/utils.mjs";
export class WebSocketError extends OpenAIError {
constructor(message, event) {
super(message);
this.error = event ?? undefined;
}
}
export class ResponsesEmitter extends EventEmitter {
_onError(event, message, cause) {
message = message ?? safeJSONStringify(event) ?? 'unknown error';
if (!this._hasListener('error')) {
const error = new WebSocketError(message +
`\n\nTo resolve these unhandled rejection errors you should bind an \`error\` callback, e.g. \`ws.on('error', (error) => ...)\` `, event);
// @ts-ignore
error.cause = cause;
Promise.reject(error);
return;
}
const error = new WebSocketError(message, event);
// @ts-ignore
error.cause = cause;
this._emit('error', error);
}
}
export function buildURL(client, query) {
const path = '/responses';
const baseURL = client.baseURL;
const url = new URL(baseURL + (baseURL.endsWith('/') ? path.slice(1) : path));
if (query) {
url.search = stringifyQuery(query);
}
url.protocol = url.protocol === 'http:' ? 'ws:' : 'wss:';
return url;
}
function safeJSONStringify(value) {
try {
return JSON.stringify(value);
}
catch {
return null;
}
}
//# sourceMappingURL=internal-base.mjs.map
@@ -0,0 +1 @@
{"version":3,"file":"internal-base.mjs","sourceRoot":"","sources":["../../src/resources/responses/internal-base.ts"],"names":[],"mappings":"AAAA,sFAAsF;OAK/E,EAAE,YAAY,EAAE;OAChB,EAAE,WAAW,EAAE;OACf,EAAE,cAAc,EAAE;AAEzB,MAAM,OAAO,cAAe,SAAQ,WAAW;IAM7C,YAAY,OAAe,EAAE,KAA6C;QACxE,KAAK,CAAC,OAAO,CAAC,CAAC;QAEf,IAAI,CAAC,KAAK,GAAG,KAAK,IAAI,SAAS,CAAC;IAClC,CAAC;CACF;AAeD,MAAM,OAAgB,gBAAiB,SAAQ,YAA6B;IAahE,QAAQ,CAChB,KAA6C,EAC7C,OAA4B,EAC5B,KAAW;QAEX,OAAO,GAAG,OAAO,IAAI,iBAAiB,CAAC,KAAK,CAAC,IAAI,eAAe,CAAC;QAEjE,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE,CAAC;YAChC,MAAM,KAAK,GAAG,IAAI,cAAc,CAC9B,OAAO;gBACL,iIAAiI,EACnI,KAAK,CACN,CAAC;YACF,aAAa;YACb,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC;YACpB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACtB,OAAO;QACT,CAAC;QAED,MAAM,KAAK,GAAG,IAAI,cAAc,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QACjD,aAAa;QACb,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC;QAEpB,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IAC7B,CAAC;CACF;AAED,MAAM,UAAU,QAAQ,CAAC,MAAc,EAAE,KAAqB;IAC5D,MAAM,IAAI,GAAG,YAAY,CAAC;IAC1B,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;IAC/B,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,OAAO,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;IAC9E,IAAI,KAAK,EAAE,CAAC;QACV,GAAG,CAAC,MAAM,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;IACrC,CAAC;IACD,GAAG,CAAC,QAAQ,GAAG,GAAG,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC;IACzD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAS,iBAAiB,CAAC,KAAc;IACvC,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IAC/B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC"}
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
+105
View File
@@ -0,0 +1,105 @@
"use strict";
// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
Object.defineProperty(exports, "__esModule", { value: true });
exports.Responses = void 0;
const tslib_1 = require("../../internal/tslib.js");
const ResponsesParser_1 = require("../../lib/ResponsesParser.js");
const ResponseStream_1 = require("../../lib/responses/ResponseStream.js");
const resource_1 = require("../../core/resource.js");
const InputItemsAPI = tslib_1.__importStar(require("./input-items.js"));
const input_items_1 = require("./input-items.js");
const InputTokensAPI = tslib_1.__importStar(require("./input-tokens.js"));
const input_tokens_1 = require("./input-tokens.js");
const headers_1 = require("../../internal/headers.js");
const path_1 = require("../../internal/utils/path.js");
class Responses extends resource_1.APIResource {
constructor() {
super(...arguments);
this.inputItems = new InputItemsAPI.InputItems(this._client);
this.inputTokens = new InputTokensAPI.InputTokens(this._client);
}
create(body, options) {
return this._client.post('/responses', { body, ...options, stream: body.stream ?? false })._thenUnwrap((rsp) => {
if ('object' in rsp && rsp.object === 'response') {
(0, ResponsesParser_1.addOutputText)(rsp);
}
return rsp;
});
}
retrieve(responseID, query = {}, options) {
return this._client.get((0, path_1.path) `/responses/${responseID}`, {
query,
...options,
stream: query?.stream ?? false,
})._thenUnwrap((rsp) => {
if ('object' in rsp && rsp.object === 'response') {
(0, ResponsesParser_1.addOutputText)(rsp);
}
return rsp;
});
}
/**
* Deletes a model response with the given ID.
*
* @example
* ```ts
* await client.responses.delete(
* 'resp_677efb5139a88190b512bc3fef8e535d',
* );
* ```
*/
delete(responseID, options) {
return this._client.delete((0, path_1.path) `/responses/${responseID}`, {
...options,
headers: (0, headers_1.buildHeaders)([{ Accept: '*/*' }, options?.headers]),
});
}
parse(body, options) {
return this._client.responses
.create(body, options)
._thenUnwrap((response) => (0, ResponsesParser_1.parseResponse)(response, body));
}
/**
* Creates a model response stream
*/
stream(body, options) {
return ResponseStream_1.ResponseStream.createResponse(this._client, body, options);
}
/**
* Cancels a model response with the given ID. Only responses created with the
* `background` parameter set to `true` can be cancelled.
* [Learn more](https://platform.openai.com/docs/guides/background).
*
* @example
* ```ts
* const response = await client.responses.cancel(
* 'resp_677efb5139a88190b512bc3fef8e535d',
* );
* ```
*/
cancel(responseID, options) {
return this._client.post((0, path_1.path) `/responses/${responseID}/cancel`, options);
}
/**
* Compact a conversation. Returns a compacted response object.
*
* Learn when and how to compact long-running conversations in the
* [conversation state guide](https://platform.openai.com/docs/guides/conversation-state#managing-the-context-window).
* For ZDR-compatible compaction details, see
* [Compaction (advanced)](https://platform.openai.com/docs/guides/conversation-state#compaction-advanced).
*
* @example
* ```ts
* const compactedResponse = await client.responses.compact({
* model: 'gpt-5.4',
* });
* ```
*/
compact(body, options) {
return this._client.post('/responses/compact', { body, ...options });
}
}
exports.Responses = Responses;
Responses.InputItems = input_items_1.InputItems;
Responses.InputTokens = input_tokens_1.InputTokens;
//# sourceMappingURL=responses.js.map
+1
View File
@@ -0,0 +1 @@
{"version":3,"file":"responses.js","sourceRoot":"","sources":["../../src/resources/responses/responses.ts"],"names":[],"mappings":"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"}
+100
View File
@@ -0,0 +1,100 @@
// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
import { parseResponse, addOutputText, } from "../../lib/ResponsesParser.mjs";
import { ResponseStream } from "../../lib/responses/ResponseStream.mjs";
import { APIResource } from "../../core/resource.mjs";
import * as InputItemsAPI from "./input-items.mjs";
import { InputItems } from "./input-items.mjs";
import * as InputTokensAPI from "./input-tokens.mjs";
import { InputTokens } from "./input-tokens.mjs";
import { buildHeaders } from "../../internal/headers.mjs";
import { path } from "../../internal/utils/path.mjs";
export class Responses extends APIResource {
constructor() {
super(...arguments);
this.inputItems = new InputItemsAPI.InputItems(this._client);
this.inputTokens = new InputTokensAPI.InputTokens(this._client);
}
create(body, options) {
return this._client.post('/responses', { body, ...options, stream: body.stream ?? false })._thenUnwrap((rsp) => {
if ('object' in rsp && rsp.object === 'response') {
addOutputText(rsp);
}
return rsp;
});
}
retrieve(responseID, query = {}, options) {
return this._client.get(path `/responses/${responseID}`, {
query,
...options,
stream: query?.stream ?? false,
})._thenUnwrap((rsp) => {
if ('object' in rsp && rsp.object === 'response') {
addOutputText(rsp);
}
return rsp;
});
}
/**
* Deletes a model response with the given ID.
*
* @example
* ```ts
* await client.responses.delete(
* 'resp_677efb5139a88190b512bc3fef8e535d',
* );
* ```
*/
delete(responseID, options) {
return this._client.delete(path `/responses/${responseID}`, {
...options,
headers: buildHeaders([{ Accept: '*/*' }, options?.headers]),
});
}
parse(body, options) {
return this._client.responses
.create(body, options)
._thenUnwrap((response) => parseResponse(response, body));
}
/**
* Creates a model response stream
*/
stream(body, options) {
return ResponseStream.createResponse(this._client, body, options);
}
/**
* Cancels a model response with the given ID. Only responses created with the
* `background` parameter set to `true` can be cancelled.
* [Learn more](https://platform.openai.com/docs/guides/background).
*
* @example
* ```ts
* const response = await client.responses.cancel(
* 'resp_677efb5139a88190b512bc3fef8e535d',
* );
* ```
*/
cancel(responseID, options) {
return this._client.post(path `/responses/${responseID}/cancel`, options);
}
/**
* Compact a conversation. Returns a compacted response object.
*
* Learn when and how to compact long-running conversations in the
* [conversation state guide](https://platform.openai.com/docs/guides/conversation-state#managing-the-context-window).
* For ZDR-compatible compaction details, see
* [Compaction (advanced)](https://platform.openai.com/docs/guides/conversation-state#compaction-advanced).
*
* @example
* ```ts
* const compactedResponse = await client.responses.compact({
* model: 'gpt-5.4',
* });
* ```
*/
compact(body, options) {
return this._client.post('/responses/compact', { body, ...options });
}
}
Responses.InputItems = InputItems;
Responses.InputTokens = InputTokens;
//# sourceMappingURL=responses.mjs.map
+1
View File
@@ -0,0 +1 @@
{"version":3,"file":"responses.mjs","sourceRoot":"","sources":["../../src/resources/responses/responses.ts"],"names":[],"mappings":"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"}
+17
View File
@@ -0,0 +1,17 @@
import * as WS from 'ws';
import { ResponsesEmitter } from "./internal-base.mjs";
import * as ResponsesAPI from "./responses.mjs";
import { OpenAI } from "../../client.mjs";
export declare class ResponsesWS extends ResponsesEmitter {
url: URL;
socket: WS.WebSocket;
private client;
constructor(client: OpenAI, options?: WS.ClientOptions | null | undefined);
send(event: ResponsesAPI.ResponsesClientEvent): void;
close(props?: {
code: number;
reason: string;
}): void;
private authHeaders;
}
//# sourceMappingURL=ws.d.mts.map
+1
View File
@@ -0,0 +1 @@
{"version":3,"file":"ws.d.mts","sourceRoot":"","sources":["../../src/resources/responses/ws.ts"],"names":[],"mappings":"OAEO,KAAK,EAAE,MAAM,IAAI;OACjB,EAAE,gBAAgB,EAAY;OAC9B,KAAK,YAAY;OACjB,EAAE,MAAM,EAAE;AAEjB,qBAAa,WAAY,SAAQ,gBAAgB;IAC/C,GAAG,EAAE,GAAG,CAAC;IACT,MAAM,EAAE,EAAE,CAAC,SAAS,CAAC;IACrB,OAAO,CAAC,MAAM,CAAS;gBAEX,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC,aAAa,GAAG,IAAI,GAAG,SAAS;IAuCzE,IAAI,CAAC,KAAK,EAAE,YAAY,CAAC,oBAAoB;IAQ7C,KAAK,CAAC,KAAK,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE;IAQ9C,OAAO,CAAC,WAAW;CAIpB"}
+17
View File
@@ -0,0 +1,17 @@
import * as WS from 'ws';
import { ResponsesEmitter } from "./internal-base.js";
import * as ResponsesAPI from "./responses.js";
import { OpenAI } from "../../client.js";
export declare class ResponsesWS extends ResponsesEmitter {
url: URL;
socket: WS.WebSocket;
private client;
constructor(client: OpenAI, options?: WS.ClientOptions | null | undefined);
send(event: ResponsesAPI.ResponsesClientEvent): void;
close(props?: {
code: number;
reason: string;
}): void;
private authHeaders;
}
//# sourceMappingURL=ws.d.ts.map
+1
View File
@@ -0,0 +1 @@
{"version":3,"file":"ws.d.ts","sourceRoot":"","sources":["../../src/resources/responses/ws.ts"],"names":[],"mappings":"OAEO,KAAK,EAAE,MAAM,IAAI;OACjB,EAAE,gBAAgB,EAAY;OAC9B,KAAK,YAAY;OACjB,EAAE,MAAM,EAAE;AAEjB,qBAAa,WAAY,SAAQ,gBAAgB;IAC/C,GAAG,EAAE,GAAG,CAAC;IACT,MAAM,EAAE,EAAE,CAAC,SAAS,CAAC;IACrB,OAAO,CAAC,MAAM,CAAS;gBAEX,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC,aAAa,GAAG,IAAI,GAAG,SAAS;IAuCzE,IAAI,CAAC,KAAK,EAAE,YAAY,CAAC,oBAAoB;IAQ7C,KAAK,CAAC,KAAK,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE;IAQ9C,OAAO,CAAC,WAAW;CAIpB"}
+67
View File
@@ -0,0 +1,67 @@
"use strict";
// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
Object.defineProperty(exports, "__esModule", { value: true });
exports.ResponsesWS = void 0;
const tslib_1 = require("../../internal/tslib.js");
const WS = tslib_1.__importStar(require("ws"));
const internal_base_1 = require("./internal-base.js");
class ResponsesWS extends internal_base_1.ResponsesEmitter {
constructor(client, options) {
super();
this.client = client;
this.url = (0, internal_base_1.buildURL)(client, {});
this.socket = new WS.WebSocket(this.url, {
...options,
headers: {
...this.authHeaders(),
...options?.headers,
},
});
this.socket.on('message', (wsEvent) => {
const event = (() => {
try {
return JSON.parse(wsEvent.toString());
}
catch (err) {
this._onError(null, 'could not parse websocket event', err);
return null;
}
})();
if (event) {
this._emit('event', event);
if (event.type === 'error') {
this._onError(event);
}
else {
// @ts-ignore TS isn't smart enough to get the relationship right here
this._emit(event.type, event);
}
}
});
this.socket.on('error', (err) => {
this._onError(null, err.message, err);
});
}
send(event) {
try {
this.socket.send(JSON.stringify(event));
}
catch (err) {
this._onError(null, 'could not send data', err);
}
}
close(props) {
try {
this.socket.close(props?.code ?? 1000, props?.reason ?? 'OK');
}
catch (err) {
this._onError(null, 'could not close the connection', err);
}
}
authHeaders() {
return { Authorization: `Bearer ${this.client.apiKey}` };
return {};
}
}
exports.ResponsesWS = ResponsesWS;
//# sourceMappingURL=ws.js.map
+1
View File
@@ -0,0 +1 @@
{"version":3,"file":"ws.js","sourceRoot":"","sources":["../../src/resources/responses/ws.ts"],"names":[],"mappings":";AAAA,sFAAsF;;;;AAEtF,+CAAyB;AACzB,sDAA6D;AAI7D,MAAa,WAAY,SAAQ,gCAAgB;IAK/C,YAAY,MAAc,EAAE,OAA6C;QACvE,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,GAAG,GAAG,IAAA,wBAAQ,EAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QAChC,IAAI,CAAC,MAAM,GAAG,IAAI,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,EAAE;YACvC,GAAG,OAAO;YACV,OAAO,EAAE;gBACP,GAAG,IAAI,CAAC,WAAW,EAAE;gBACrB,GAAG,OAAO,EAAE,OAAO;aACpB;SACF,CAAC,CAAC;QAEH,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,OAAO,EAAE,EAAE;YACpC,MAAM,KAAK,GAAG,CAAC,GAAG,EAAE;gBAClB,IAAI,CAAC;oBACH,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAsC,CAAC;gBAC7E,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,iCAAiC,EAAE,GAAG,CAAC,CAAC;oBAC5D,OAAO,IAAI,CAAC;gBACd,CAAC;YACH,CAAC,CAAC,EAAE,CAAC;YAEL,IAAI,KAAK,EAAE,CAAC;gBACV,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;gBAE3B,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;oBAC3B,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;gBACvB,CAAC;qBAAM,CAAC;oBACN,sEAAsE;oBACtE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;gBAChC,CAAC;YACH,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE;YAC9B,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;QACxC,CAAC,CAAC,CAAC;IACL,CAAC;IAED,IAAI,CAAC,KAAwC;QAC3C,IAAI,CAAC;YACH,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;QAC1C,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,qBAAqB,EAAE,GAAG,CAAC,CAAC;QAClD,CAAC;IACH,CAAC;IAED,KAAK,CAAC,KAAwC;QAC5C,IAAI,CAAC;YACH,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,IAAI,IAAI,EAAE,KAAK,EAAE,MAAM,IAAI,IAAI,CAAC,CAAC;QAChE,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,gCAAgC,EAAE,GAAG,CAAC,CAAC;QAC7D,CAAC;IACH,CAAC;IAEO,WAAW;QACjB,OAAO,EAAE,aAAa,EAAE,UAAU,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC;QACzD,OAAO,EAAE,CAAC;IACZ,CAAC;CACF;AAhED,kCAgEC"}
+62
View File
@@ -0,0 +1,62 @@
// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
import * as WS from 'ws';
import { ResponsesEmitter, buildURL } from "./internal-base.mjs";
export class ResponsesWS extends ResponsesEmitter {
constructor(client, options) {
super();
this.client = client;
this.url = buildURL(client, {});
this.socket = new WS.WebSocket(this.url, {
...options,
headers: {
...this.authHeaders(),
...options?.headers,
},
});
this.socket.on('message', (wsEvent) => {
const event = (() => {
try {
return JSON.parse(wsEvent.toString());
}
catch (err) {
this._onError(null, 'could not parse websocket event', err);
return null;
}
})();
if (event) {
this._emit('event', event);
if (event.type === 'error') {
this._onError(event);
}
else {
// @ts-ignore TS isn't smart enough to get the relationship right here
this._emit(event.type, event);
}
}
});
this.socket.on('error', (err) => {
this._onError(null, err.message, err);
});
}
send(event) {
try {
this.socket.send(JSON.stringify(event));
}
catch (err) {
this._onError(null, 'could not send data', err);
}
}
close(props) {
try {
this.socket.close(props?.code ?? 1000, props?.reason ?? 'OK');
}
catch (err) {
this._onError(null, 'could not close the connection', err);
}
}
authHeaders() {
return { Authorization: `Bearer ${this.client.apiKey}` };
return {};
}
}
//# sourceMappingURL=ws.mjs.map
+1
View File
@@ -0,0 +1 @@
{"version":3,"file":"ws.mjs","sourceRoot":"","sources":["../../src/resources/responses/ws.ts"],"names":[],"mappings":"AAAA,sFAAsF;OAE/E,KAAK,EAAE,MAAM,IAAI;OACjB,EAAE,gBAAgB,EAAE,QAAQ,EAAE;AAIrC,MAAM,OAAO,WAAY,SAAQ,gBAAgB;IAK/C,YAAY,MAAc,EAAE,OAA6C;QACvE,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,GAAG,GAAG,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QAChC,IAAI,CAAC,MAAM,GAAG,IAAI,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,EAAE;YACvC,GAAG,OAAO;YACV,OAAO,EAAE;gBACP,GAAG,IAAI,CAAC,WAAW,EAAE;gBACrB,GAAG,OAAO,EAAE,OAAO;aACpB;SACF,CAAC,CAAC;QAEH,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,OAAO,EAAE,EAAE;YACpC,MAAM,KAAK,GAAG,CAAC,GAAG,EAAE;gBAClB,IAAI,CAAC;oBACH,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAsC,CAAC;gBAC7E,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,iCAAiC,EAAE,GAAG,CAAC,CAAC;oBAC5D,OAAO,IAAI,CAAC;gBACd,CAAC;YACH,CAAC,CAAC,EAAE,CAAC;YAEL,IAAI,KAAK,EAAE,CAAC;gBACV,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;gBAE3B,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;oBAC3B,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;gBACvB,CAAC;qBAAM,CAAC;oBACN,sEAAsE;oBACtE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;gBAChC,CAAC;YACH,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE;YAC9B,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;QACxC,CAAC,CAAC,CAAC;IACL,CAAC;IAED,IAAI,CAAC,KAAwC;QAC3C,IAAI,CAAC;YACH,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;QAC1C,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,qBAAqB,EAAE,GAAG,CAAC,CAAC;QAClD,CAAC;IACH,CAAC;IAED,KAAK,CAAC,KAAwC;QAC5C,IAAI,CAAC;YACH,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,IAAI,IAAI,EAAE,KAAK,EAAE,MAAM,IAAI,IAAI,CAAC,CAAC;QAChE,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,gCAAgC,EAAE,GAAG,CAAC,CAAC;QAC7D,CAAC;IACH,CAAC;IAEO,WAAW;QACjB,OAAO,EAAE,aAAa,EAAE,UAAU,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC;QACzD,OAAO,EAAE,CAAC;IACZ,CAAC;CACF"}