@api-client/core 0.19.1 → 0.19.2
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/build/src/mocking/ModelingMock.d.ts +2 -0
- package/build/src/mocking/ModelingMock.d.ts.map +1 -1
- package/build/src/mocking/ModelingMock.js +2 -0
- package/build/src/mocking/ModelingMock.js.map +1 -1
- package/build/src/mocking/lib/Ai.d.ts +11 -0
- package/build/src/mocking/lib/Ai.d.ts.map +1 -0
- package/build/src/mocking/lib/Ai.js +53 -0
- package/build/src/mocking/lib/Ai.js.map +1 -0
- package/build/src/modeling/ai/DataDomainDelta.d.ts +146 -0
- package/build/src/modeling/ai/DataDomainDelta.d.ts.map +1 -0
- package/build/src/modeling/ai/DataDomainDelta.js +729 -0
- package/build/src/modeling/ai/DataDomainDelta.js.map +1 -0
- package/build/src/modeling/ai/DomainSerialization.d.ts +20 -0
- package/build/src/modeling/ai/DomainSerialization.d.ts.map +1 -0
- package/build/src/modeling/ai/DomainSerialization.js +185 -0
- package/build/src/modeling/ai/DomainSerialization.js.map +1 -0
- package/build/src/modeling/ai/domain_response_schema.d.ts +806 -0
- package/build/src/modeling/ai/domain_response_schema.d.ts.map +1 -0
- package/build/src/modeling/ai/domain_response_schema.js +289 -0
- package/build/src/modeling/ai/domain_response_schema.js.map +1 -0
- package/build/src/modeling/ai/domain_tools.d.ts +68 -0
- package/build/src/modeling/ai/domain_tools.d.ts.map +1 -0
- package/build/src/modeling/ai/domain_tools.js +71 -0
- package/build/src/modeling/ai/domain_tools.js.map +1 -0
- package/build/src/modeling/ai/index.d.ts +10 -0
- package/build/src/modeling/ai/index.d.ts.map +1 -0
- package/build/src/modeling/ai/index.js +9 -0
- package/build/src/modeling/ai/index.js.map +1 -0
- package/build/src/modeling/ai/message_parser.d.ts +23 -0
- package/build/src/modeling/ai/message_parser.d.ts.map +1 -0
- package/build/src/modeling/ai/message_parser.js +93 -0
- package/build/src/modeling/ai/message_parser.js.map +1 -0
- package/build/src/modeling/ai/prompts/domain_system.d.ts +6 -0
- package/build/src/modeling/ai/prompts/domain_system.d.ts.map +1 -0
- package/build/src/modeling/ai/prompts/domain_system.js +80 -0
- package/build/src/modeling/ai/prompts/domain_system.js.map +1 -0
- package/build/src/modeling/ai/tools/DataDomain.tools.d.ts +25 -0
- package/build/src/modeling/ai/tools/DataDomain.tools.d.ts.map +1 -0
- package/build/src/modeling/ai/tools/DataDomain.tools.js +334 -0
- package/build/src/modeling/ai/tools/DataDomain.tools.js.map +1 -0
- package/build/src/modeling/ai/tools/Semantic.tools.d.ts +48 -0
- package/build/src/modeling/ai/tools/Semantic.tools.d.ts.map +1 -0
- package/build/src/modeling/ai/tools/Semantic.tools.js +36 -0
- package/build/src/modeling/ai/tools/Semantic.tools.js.map +1 -0
- package/build/src/modeling/ai/tools/config.d.ts +13 -0
- package/build/src/modeling/ai/tools/config.d.ts.map +1 -0
- package/build/src/modeling/ai/tools/config.js +2 -0
- package/build/src/modeling/ai/tools/config.js.map +1 -0
- package/build/src/modeling/ai/types.d.ts +302 -0
- package/build/src/modeling/ai/types.d.ts.map +1 -0
- package/build/src/modeling/ai/types.js +40 -0
- package/build/src/modeling/ai/types.js.map +1 -0
- package/build/src/models/AiMessage.d.ts +185 -0
- package/build/src/models/AiMessage.d.ts.map +1 -0
- package/build/src/models/AiMessage.js +203 -0
- package/build/src/models/AiMessage.js.map +1 -0
- package/build/src/models/AiSession.d.ts +80 -0
- package/build/src/models/AiSession.d.ts.map +1 -0
- package/build/src/models/AiSession.js +102 -0
- package/build/src/models/AiSession.js.map +1 -0
- package/build/src/models/kinds.d.ts +2 -0
- package/build/src/models/kinds.d.ts.map +1 -1
- package/build/src/models/kinds.js +2 -0
- package/build/src/models/kinds.js.map +1 -1
- package/build/src/sdk/AiSdk.d.ts +93 -0
- package/build/src/sdk/AiSdk.d.ts.map +1 -0
- package/build/src/sdk/AiSdk.js +348 -0
- package/build/src/sdk/AiSdk.js.map +1 -0
- package/build/src/sdk/RouteBuilder.d.ts +7 -0
- package/build/src/sdk/RouteBuilder.d.ts.map +1 -1
- package/build/src/sdk/RouteBuilder.js +18 -0
- package/build/src/sdk/RouteBuilder.js.map +1 -1
- package/build/src/sdk/Sdk.d.ts +2 -0
- package/build/src/sdk/Sdk.d.ts.map +1 -1
- package/build/src/sdk/Sdk.js +2 -0
- package/build/src/sdk/Sdk.js.map +1 -1
- package/build/src/sdk/SdkBase.d.ts +4 -0
- package/build/src/sdk/SdkBase.d.ts.map +1 -1
- package/build/src/sdk/SdkBase.js.map +1 -1
- package/build/src/sdk/SdkMock.d.ts +15 -0
- package/build/src/sdk/SdkMock.d.ts.map +1 -1
- package/build/src/sdk/SdkMock.js +118 -0
- package/build/src/sdk/SdkMock.js.map +1 -1
- package/build/tsconfig.tsbuildinfo +1 -1
- package/data/models/example-generator-api.json +22 -22
- package/package.json +3 -3
- package/src/mocking/ModelingMock.ts +2 -0
- package/src/mocking/lib/Ai.ts +71 -0
- package/src/modeling/ai/DataDomainDelta.ts +798 -0
- package/src/modeling/ai/DomainSerialization.ts +199 -0
- package/src/modeling/ai/domain_response_schema.ts +301 -0
- package/src/modeling/ai/domain_tools.ts +76 -0
- package/src/modeling/ai/message_parser.ts +101 -0
- package/src/modeling/ai/prompts/domain_system.ts +79 -0
- package/src/modeling/ai/readme.md +8 -0
- package/src/modeling/ai/tools/DataDomain.tools.ts +365 -0
- package/src/modeling/ai/tools/Semantic.tools.ts +38 -0
- package/src/modeling/ai/tools/config.ts +13 -0
- package/src/modeling/ai/tools/readme.md +3 -0
- package/src/modeling/ai/types.ts +306 -0
- package/src/models/AiMessage.ts +335 -0
- package/src/models/AiSession.ts +160 -0
- package/src/models/kinds.ts +2 -0
- package/src/sdk/AiSdk.ts +395 -0
- package/src/sdk/RouteBuilder.ts +27 -0
- package/src/sdk/Sdk.ts +3 -0
- package/src/sdk/SdkBase.ts +4 -0
- package/src/sdk/SdkMock.ts +185 -0
- package/tests/unit/mocking/current/Ai.spec.ts +109 -0
- package/tests/unit/modeling/ai/DataDomainDelta.spec.ts +419 -0
- package/tests/unit/modeling/ai/DomainAiTools.spec.ts +29 -0
- package/tests/unit/modeling/ai/DomainSerialization.spec.ts +143 -0
- package/tests/unit/modeling/ai/message_parser.spec.ts +157 -0
- package/tests/unit/modeling/ai/tools/DataDomain.tools.spec.ts +64 -0
- package/tests/unit/modeling/ai/tools/Semantic.tools.spec.ts +55 -0
- package/tests/unit/models/AiMessage.spec.ts +216 -0
- package/tests/unit/models/AiSession.spec.ts +147 -0
package/build/src/sdk/Sdk.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Sdk.js","sourceRoot":"","sources":["../../../src/sdk/Sdk.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AACtC,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AACxC,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAC5C,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAE1C,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AACxC,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAA;AAC/D,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAA;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;
|
|
1
|
+
{"version":3,"file":"Sdk.js","sourceRoot":"","sources":["../../../src/sdk/Sdk.ts"],"names":[],"mappings":"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","sourcesContent":["import { Http } from './Http.js'\nimport { WsClient } from './WsClient.js'\nimport { AuthSdk } from './AuthSdk.js'\nimport { FilesSdk } from './FilesSdk.js'\nimport { UsersSdk } from './UsersSdk.js'\nimport { HistorySdk } from './HistorySdk.js'\nimport { SharedSdk } from './SharedSdk.js'\nimport type { ContextListOptions } from '../events/BaseEvents.js'\nimport { RevisionsSdk } from './RevisionsSdk.js'\nimport { TrashSdk } from './TrashSdk.js'\nimport { ProjectExecutionSdk } from './ProjectExecutionsSdk.js'\nimport { OrganizationsSdk } from './OrganizationsSdk.js'\nimport { DataCatalogSdk } from './DataCatalogSdk.js'\nimport { GroupsSdk } from './GroupsSdk.js'\nimport { AiSdk } from './AiSdk.js'\n\nconst baseUriSymbol = Symbol('baseUri')\n\n/**\n * NodeJS API for API Client's net-store module.\n */\nexport abstract class Sdk {\n #token?: string\n\n /**\n * The token to use with requests. Can be overwritten\n * with each API call by providing custom token.\n */\n get token(): string | undefined {\n return this.#token\n }\n\n set token(value: string | undefined) {\n this.#token = value\n }\n\n /**\n * The user authentication features.\n */\n auth = new AuthSdk(this)\n /**\n * The user files features.\n */\n files = new FilesSdk(this)\n /**\n * @deprecated Use `files` instead.\n */\n file = this.files\n /**\n * User management features.\n */\n users = new UsersSdk(this)\n /**\n * @deprecated Use `users` instead.\n */\n user = this.users\n /**\n * The HTTP(S) requests.\n */\n abstract http: Http\n /**\n * The web socket requests.\n */\n abstract ws: WsClient\n /**\n * The history data.\n */\n history = new HistorySdk(this)\n /**\n * The shared data.\n */\n shared = new SharedSdk(this)\n\n revisions = new RevisionsSdk(this)\n\n trash = new TrashSdk(this)\n\n projectExecution = new ProjectExecutionSdk(this)\n\n organizations = new OrganizationsSdk(this)\n\n dataCatalog = new DataCatalogSdk(this)\n\n groups = new GroupsSdk(this)\n\n ai = new AiSdk(this)\n /**\n * When set it limits log output to minimum.\n */\n silent = false;\n\n [baseUriSymbol] = ''\n\n /**\n * @returns The base URI to the store.\n */\n get baseUri(): string {\n return this[baseUriSymbol]\n }\n\n /**\n * @param value The base URI to the store.\n */\n set baseUri(value: string) {\n if (!value) {\n throw new Error(`Invalid value for the baseUri`)\n }\n let url: URL\n try {\n url = new URL(value)\n } catch {\n throw new Error(`Invalid baseUri: Not an URL`)\n }\n this[baseUriSymbol] = url.origin\n const { pathname } = url\n if (pathname && pathname !== '/') {\n this.basePath = pathname\n } else {\n this.basePath = undefined\n }\n }\n\n /**\n * @param baseUri The base URI to the store.\n * @param basePath The base path (the router prefix) for the server.\n */\n constructor(\n baseUri: string,\n public basePath?: string\n ) {\n this.baseUri = baseUri\n }\n\n /**\n * Creates a full URL for a path.\n * This adds the server's base path and the passed path to the configured base URL.\n * @param path The path to the endpoint, without the base path.\n */\n getUrl(path = '/'): URL {\n if (path.startsWith('http:') || path.startsWith('https:')) {\n return new URL(path)\n }\n const { baseUri, basePath = '' } = this\n let userPath = path\n if (basePath && userPath.startsWith(basePath)) {\n userPath = userPath.substring(basePath.length)\n }\n return new URL(`${basePath}${userPath}`, baseUri)\n }\n\n /**\n * Appends list options to the query parameters.\n * @param url The URL object to the API endpoint\n * @param options The list options, if any\n */\n appendListOptions(url: URL, options: ContextListOptions = {}): void {\n const { searchParams } = url\n if (options.cursor) {\n searchParams.set('cursor', options.cursor)\n }\n if (typeof options.limit === 'number') {\n searchParams.set('limit', String(options.limit))\n }\n if (options.parent) {\n searchParams.set('parent', options.parent)\n }\n if (options.since) {\n searchParams.set('since', String(options.since))\n }\n if (options.sort) {\n searchParams.set('sort', String(options.sort))\n }\n if (options.order) {\n searchParams.set('order', String(options.order))\n }\n if (options.oid) {\n searchParams.set('oid', String(options.oid))\n }\n if (options.uid) {\n searchParams.set('uid', String(options.uid))\n }\n if (options.filter) {\n const bytes = new TextEncoder().encode(JSON.stringify(options.filter))\n // To be used when Uint8Array.prototype.toBase64() is available.\n // const encoded = bytes.toBase64({ alphabet: 'base64url' })\n const binString = Array.from(bytes, (byte) => String.fromCodePoint(byte)).join('')\n searchParams.set('filter', btoa(binString))\n }\n }\n}\n"]}
|
|
@@ -7,6 +7,10 @@ export interface SdkOptions {
|
|
|
7
7
|
* Uses the provided token for authentication.
|
|
8
8
|
*/
|
|
9
9
|
token?: string;
|
|
10
|
+
/**
|
|
11
|
+
* The abort signal.
|
|
12
|
+
*/
|
|
13
|
+
signal?: AbortSignal;
|
|
10
14
|
}
|
|
11
15
|
export interface IStoreRequestOptions extends SdkOptions {
|
|
12
16
|
method?: 'GET' | 'POST' | 'PATCH' | 'PUT' | 'DELETE';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SdkBase.d.ts","sourceRoot":"","sources":["../../../src/sdk/SdkBase.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAA;AACnD,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAA;AAC9B,OAAO,EACL,mBAAmB,EACnB,kBAAkB,EAClB,iBAAiB,EACjB,oBAAoB,EACrB,MAAM,yBAAyB,CAAA;AAChC,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAA;AAEtD,MAAM,WAAW,UAAU;IACzB;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAA;
|
|
1
|
+
{"version":3,"file":"SdkBase.d.ts","sourceRoot":"","sources":["../../../src/sdk/SdkBase.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAA;AACnD,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAA;AAC9B,OAAO,EACL,mBAAmB,EACnB,kBAAkB,EAClB,iBAAiB,EACjB,oBAAoB,EACrB,MAAM,yBAAyB,CAAA;AAChC,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAA;AAEtD,MAAM,WAAW,UAAU;IACzB;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAA;IACd;;OAEG;IACH,MAAM,CAAC,EAAE,WAAW,CAAA;CACrB;AAED,MAAM,WAAW,oBAAqB,SAAQ,UAAU;IACtD,MAAM,CAAC,EAAE,KAAK,GAAG,MAAM,GAAG,OAAO,GAAG,KAAK,GAAG,QAAQ,CAAA;IACpD,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAChC,IAAI,CAAC,EAAE,MAAM,CAAA;IACb;;;OAGG;IACH,KAAK,CAAC,EAAE,OAAO,CAAA;CAChB;AAED,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,MAAM,CAAA;IACd,OAAO,EAAE,OAAO,CAAA;IAChB,IAAI,CAAC,EAAE,MAAM,CAAA;CACd;AAED,eAAO,MAAM,cAAc,2BAA2B,CAAA;AACtD,eAAO,MAAM,mBAAmB,+BAA+B,CAAA;AAC/D,eAAO,MAAM,iBAAiB,8BAA8B,CAAA;AAC5D,eAAO,MAAM,kBAAkB,sCAAsC,CAAA;AACrE,eAAO,MAAM,mBAAmB,6CAA2C,CAAA;AAE3E,qBAAa,OAAO;IACC,GAAG,EAAE,GAAG;gBAAR,GAAG,EAAE,GAAG;IAE3B,SAAS,CAAC,kBAAkB,CAAC,QAAQ,EAAE,cAAc,GAAG,IAAI;IAgB5D;;;OAGG;IACH,SAAS,CAAC,wBAAwB,CAAC,QAAQ,EAAE,cAAc,GAAG,IAAI;IAkClE;;;;;;;OAOG;IACH,SAAS,CAAC,cAAc,CAAC,cAAc,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS;IAgB1E;;;;;;;OAOG;cACa,kBAAkB,CAChC,GAAG,EAAE,GAAG,EACR,IAAI,EAAE,MAAM,EAAE,EACd,OAAO,GAAE,UAAe,GACvB,OAAO,CAAC,oBAAoB,CAAC,mBAAmB,CAAC,CAAC;IAyBrD;;;;;OAKG;cACa,aAAa,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,GAAE,UAAe,GAAG,OAAO,CAAC,IAAI,CAAC;cAWhE,WAAW,CACzB,GAAG,EAAE,GAAG,EACR,OAAO,EAAE,kBAAkB,EAC3B,OAAO,GAAE,UAAe,GACvB,OAAO,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;IAyBtC,SAAS,CAAC,gBAAgB,CAAC,QAAQ,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM;IAcjF,SAAS,CAAC,gBAAgB,CAAC,QAAQ,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO;CAUnF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SdkBase.js","sourceRoot":"","sources":["../../../src/sdk/SdkBase.ts"],"names":[],"mappings":"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","sourcesContent":["/* eslint-disable no-console */\nimport { Headers } from '../lib/headers/Headers.js'\nimport { Sdk } from './Sdk.js'\nimport {\n ContextDeleteRecord,\n ContextListOptions,\n ContextListResult,\n IBulkOperationResult,\n} from '../events/BaseEvents.js'\nimport { Exception } from '../exceptions/exception.js'\n\nexport interface SdkOptions {\n /**\n * Uses the provided token for authentication.\n */\n token?: string\n}\n\nexport interface IStoreRequestOptions extends SdkOptions {\n method?: 'GET' | 'POST' | 'PATCH' | 'PUT' | 'DELETE'\n headers?: Record<string, string>\n body?: string\n /**\n * If there's retry logic involved, this flag tells the engine\n * that the retry logic was triggered.\n */\n retry?: boolean\n}\n\nexport interface IStoreResponse {\n status: number\n headers: Headers\n body?: string\n}\n\nexport const E_INVALID_JSON = 'Invalid JSON response.'\nexport const E_RESPONSE_NO_VALUE = 'The response has no value.'\nexport const E_RESPONSE_STATUS = 'Invalid response status: '\nexport const E_RESPONSE_UNKNOWN = 'Unknown response from the server.'\nexport const E_RESPONSE_LOCATION = 'The response has no \"location\" header.'\n\nexport class SdkBase {\n constructor(public sdk: Sdk) {}\n\n protected logInvalidResponse(response: IStoreResponse): void {\n if (this.sdk.silent) {\n return\n }\n if (response.body) {\n try {\n const data = JSON.parse(response.body)\n if (data.message) {\n console.warn(`[Store message]: ${data.message}`)\n }\n } catch {\n // .\n }\n }\n }\n\n /**\n * Throws unified message for a common error status codes.\n * It handles 404, 403, and 401 status codes.\n */\n protected inspectCommonStatusCodes(response: IStoreResponse): void {\n const { status, body } = response\n if (status === 404) {\n const e = this.createApiError('Not found', body)\n if (e.status !== 404) {\n e.setStatus(404)\n }\n if (e.code !== 'E_NOT_FOUND') {\n e.setCode('E_NOT_FOUND')\n }\n throw e\n }\n if (status === 403) {\n const e = this.createApiError('You have no access to this resource', body)\n if (e.status !== 403) {\n e.setStatus(403)\n }\n if (e.code !== 'E_FORBIDDEN') {\n e.setCode('E_FORBIDDEN')\n }\n throw e\n }\n if (status === 401) {\n const e = this.createApiError('Not authorized', body)\n if (e.status !== 401) {\n e.setStatus(401)\n }\n if (e.code !== 'E_UNAUTHORIZED') {\n e.setCode('E_UNAUTHORIZED')\n }\n throw e\n }\n }\n\n /**\n * Creates an Exception from the response body.\n * It reads the error details from the body.\n *\n * @param defaultMessage The default message to use if the body does not contain a message.\n * @param body The message returned by the store.\n * @returns The Exception or undefined when not an error.\n */\n protected createApiError(defaultMessage: string, body?: string): Exception {\n if (!body) {\n return new Exception(defaultMessage)\n }\n let data: Record<string, string | number>\n try {\n data = JSON.parse(body)\n } catch {\n return new Exception(defaultMessage)\n }\n if (!data || typeof data !== 'object' || !data.message) {\n return new Exception(defaultMessage)\n }\n return Exception.fromRawException(data, defaultMessage)\n }\n\n /**\n * A generic (common) method to batch-delete object from the store.\n *\n * @param url The URL object to make the request.\n * @param keys The list of keys to delete\n * @param request Optional request options.\n * @returns THe list of context delete records.\n */\n protected async genericBatchDelete(\n url: URL,\n keys: string[],\n request: SdkOptions = {}\n ): Promise<IBulkOperationResult<ContextDeleteRecord>> {\n const { token } = request\n const result = await this.sdk.http.post(url.toString(), { token, body: JSON.stringify(keys) })\n this.inspectCommonStatusCodes(result)\n const E_PREFIX = 'Unable to delete in batch. '\n if (result.status !== 200) {\n this.logInvalidResponse(result)\n throw this.createApiError(`${E_PREFIX}${E_RESPONSE_STATUS}${result.status}`, result.body)\n }\n if (!result.body) {\n throw new Exception(`${E_PREFIX}${E_RESPONSE_NO_VALUE}`, { code: 'E_RESPONSE_NO_VALUE', status: result.status })\n }\n\n let data: IBulkOperationResult<ContextDeleteRecord>\n try {\n data = JSON.parse(result.body)\n } catch {\n throw new Exception(`${E_PREFIX}${E_INVALID_JSON}`, { code: 'E_INVALID_JSON', status: result.status })\n }\n if (!Array.isArray(data.items)) {\n throw new Exception(`${E_PREFIX}${E_RESPONSE_UNKNOWN}`, { code: 'E_RESPONSE_UNKNOWN', status: result.status })\n }\n return data\n }\n\n /**\n * Generic (common) function to delete an entity in the store.\n *\n * @param url The URL to make the DELETE request to.\n * @param request Optional request options.\n */\n protected async genericDelete(url: URL, request: SdkOptions = {}): Promise<void> {\n const { token } = request\n const result = await this.sdk.http.delete(url.toString(), { token })\n this.inspectCommonStatusCodes(result)\n const E_PREFIX = 'Unable to delete the object. '\n if (result.status !== 204) {\n this.logInvalidResponse(result)\n throw this.createApiError(`${E_PREFIX}${E_RESPONSE_STATUS}${result.status}`, result.body)\n }\n }\n\n protected async genericList(\n url: URL,\n options: ContextListOptions,\n request: SdkOptions = {}\n ): Promise<ContextListResult<unknown>> {\n const { token } = request\n this.sdk.appendListOptions(url, options)\n const result = await this.sdk.http.get(url.toString(), { token })\n this.inspectCommonStatusCodes(result)\n const E_PREFIX = 'Unable to list revisions for a file. '\n if (result.status !== 200) {\n this.logInvalidResponse(result)\n throw this.createApiError(`${E_PREFIX}${E_RESPONSE_STATUS}${result.status}`, result.body)\n }\n if (!result.body) {\n throw new Exception(`${E_PREFIX}${E_RESPONSE_NO_VALUE}`, { code: 'E_RESPONSE_NO_VALUE', status: result.status })\n }\n let data: ContextListResult<unknown>\n try {\n data = JSON.parse(result.body)\n } catch {\n throw new Exception(`${E_PREFIX}${E_INVALID_JSON}`, { code: 'E_INVALID_JSON', status: result.status })\n }\n if (!Array.isArray(data.items)) {\n throw new Exception(`${E_PREFIX}${E_RESPONSE_UNKNOWN}`, { code: 'E_RESPONSE_UNKNOWN', status: result.status })\n }\n return data\n }\n\n protected readResponseBody(response: IStoreResponse, errorPrefix: string): string {\n if (response.status !== 200) {\n this.logInvalidResponse(response)\n throw this.createApiError(`${errorPrefix}${E_RESPONSE_STATUS}${response.status}`, response.body)\n }\n if (!response.body) {\n throw new Exception(`${errorPrefix}${E_RESPONSE_NO_VALUE}`, {\n code: 'E_RESPONSE_NO_VALUE',\n status: response.status,\n })\n }\n return response.body\n }\n\n protected readResponseJSON(response: IStoreResponse, errorPrefix: string): unknown {\n const body = this.readResponseBody(response, errorPrefix)\n let data: unknown\n try {\n data = JSON.parse(body)\n } catch {\n throw new Exception(`${errorPrefix}${E_INVALID_JSON}`, { code: 'E_INVALID_JSON', status: response.status })\n }\n return data\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"SdkBase.js","sourceRoot":"","sources":["../../../src/sdk/SdkBase.ts"],"names":[],"mappings":"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","sourcesContent":["/* eslint-disable no-console */\nimport { Headers } from '../lib/headers/Headers.js'\nimport { Sdk } from './Sdk.js'\nimport {\n ContextDeleteRecord,\n ContextListOptions,\n ContextListResult,\n IBulkOperationResult,\n} from '../events/BaseEvents.js'\nimport { Exception } from '../exceptions/exception.js'\n\nexport interface SdkOptions {\n /**\n * Uses the provided token for authentication.\n */\n token?: string\n /**\n * The abort signal.\n */\n signal?: AbortSignal\n}\n\nexport interface IStoreRequestOptions extends SdkOptions {\n method?: 'GET' | 'POST' | 'PATCH' | 'PUT' | 'DELETE'\n headers?: Record<string, string>\n body?: string\n /**\n * If there's retry logic involved, this flag tells the engine\n * that the retry logic was triggered.\n */\n retry?: boolean\n}\n\nexport interface IStoreResponse {\n status: number\n headers: Headers\n body?: string\n}\n\nexport const E_INVALID_JSON = 'Invalid JSON response.'\nexport const E_RESPONSE_NO_VALUE = 'The response has no value.'\nexport const E_RESPONSE_STATUS = 'Invalid response status: '\nexport const E_RESPONSE_UNKNOWN = 'Unknown response from the server.'\nexport const E_RESPONSE_LOCATION = 'The response has no \"location\" header.'\n\nexport class SdkBase {\n constructor(public sdk: Sdk) {}\n\n protected logInvalidResponse(response: IStoreResponse): void {\n if (this.sdk.silent) {\n return\n }\n if (response.body) {\n try {\n const data = JSON.parse(response.body)\n if (data.message) {\n console.warn(`[Store message]: ${data.message}`)\n }\n } catch {\n // .\n }\n }\n }\n\n /**\n * Throws unified message for a common error status codes.\n * It handles 404, 403, and 401 status codes.\n */\n protected inspectCommonStatusCodes(response: IStoreResponse): void {\n const { status, body } = response\n if (status === 404) {\n const e = this.createApiError('Not found', body)\n if (e.status !== 404) {\n e.setStatus(404)\n }\n if (e.code !== 'E_NOT_FOUND') {\n e.setCode('E_NOT_FOUND')\n }\n throw e\n }\n if (status === 403) {\n const e = this.createApiError('You have no access to this resource', body)\n if (e.status !== 403) {\n e.setStatus(403)\n }\n if (e.code !== 'E_FORBIDDEN') {\n e.setCode('E_FORBIDDEN')\n }\n throw e\n }\n if (status === 401) {\n const e = this.createApiError('Not authorized', body)\n if (e.status !== 401) {\n e.setStatus(401)\n }\n if (e.code !== 'E_UNAUTHORIZED') {\n e.setCode('E_UNAUTHORIZED')\n }\n throw e\n }\n }\n\n /**\n * Creates an Exception from the response body.\n * It reads the error details from the body.\n *\n * @param defaultMessage The default message to use if the body does not contain a message.\n * @param body The message returned by the store.\n * @returns The Exception or undefined when not an error.\n */\n protected createApiError(defaultMessage: string, body?: string): Exception {\n if (!body) {\n return new Exception(defaultMessage)\n }\n let data: Record<string, string | number>\n try {\n data = JSON.parse(body)\n } catch {\n return new Exception(defaultMessage)\n }\n if (!data || typeof data !== 'object' || !data.message) {\n return new Exception(defaultMessage)\n }\n return Exception.fromRawException(data, defaultMessage)\n }\n\n /**\n * A generic (common) method to batch-delete object from the store.\n *\n * @param url The URL object to make the request.\n * @param keys The list of keys to delete\n * @param request Optional request options.\n * @returns THe list of context delete records.\n */\n protected async genericBatchDelete(\n url: URL,\n keys: string[],\n request: SdkOptions = {}\n ): Promise<IBulkOperationResult<ContextDeleteRecord>> {\n const { token } = request\n const result = await this.sdk.http.post(url.toString(), { token, body: JSON.stringify(keys) })\n this.inspectCommonStatusCodes(result)\n const E_PREFIX = 'Unable to delete in batch. '\n if (result.status !== 200) {\n this.logInvalidResponse(result)\n throw this.createApiError(`${E_PREFIX}${E_RESPONSE_STATUS}${result.status}`, result.body)\n }\n if (!result.body) {\n throw new Exception(`${E_PREFIX}${E_RESPONSE_NO_VALUE}`, { code: 'E_RESPONSE_NO_VALUE', status: result.status })\n }\n\n let data: IBulkOperationResult<ContextDeleteRecord>\n try {\n data = JSON.parse(result.body)\n } catch {\n throw new Exception(`${E_PREFIX}${E_INVALID_JSON}`, { code: 'E_INVALID_JSON', status: result.status })\n }\n if (!Array.isArray(data.items)) {\n throw new Exception(`${E_PREFIX}${E_RESPONSE_UNKNOWN}`, { code: 'E_RESPONSE_UNKNOWN', status: result.status })\n }\n return data\n }\n\n /**\n * Generic (common) function to delete an entity in the store.\n *\n * @param url The URL to make the DELETE request to.\n * @param request Optional request options.\n */\n protected async genericDelete(url: URL, request: SdkOptions = {}): Promise<void> {\n const { token } = request\n const result = await this.sdk.http.delete(url.toString(), { token })\n this.inspectCommonStatusCodes(result)\n const E_PREFIX = 'Unable to delete the object. '\n if (result.status !== 204) {\n this.logInvalidResponse(result)\n throw this.createApiError(`${E_PREFIX}${E_RESPONSE_STATUS}${result.status}`, result.body)\n }\n }\n\n protected async genericList(\n url: URL,\n options: ContextListOptions,\n request: SdkOptions = {}\n ): Promise<ContextListResult<unknown>> {\n const { token } = request\n this.sdk.appendListOptions(url, options)\n const result = await this.sdk.http.get(url.toString(), { token })\n this.inspectCommonStatusCodes(result)\n const E_PREFIX = 'Unable to list revisions for a file. '\n if (result.status !== 200) {\n this.logInvalidResponse(result)\n throw this.createApiError(`${E_PREFIX}${E_RESPONSE_STATUS}${result.status}`, result.body)\n }\n if (!result.body) {\n throw new Exception(`${E_PREFIX}${E_RESPONSE_NO_VALUE}`, { code: 'E_RESPONSE_NO_VALUE', status: result.status })\n }\n let data: ContextListResult<unknown>\n try {\n data = JSON.parse(result.body)\n } catch {\n throw new Exception(`${E_PREFIX}${E_INVALID_JSON}`, { code: 'E_INVALID_JSON', status: result.status })\n }\n if (!Array.isArray(data.items)) {\n throw new Exception(`${E_PREFIX}${E_RESPONSE_UNKNOWN}`, { code: 'E_RESPONSE_UNKNOWN', status: result.status })\n }\n return data\n }\n\n protected readResponseBody(response: IStoreResponse, errorPrefix: string): string {\n if (response.status !== 200) {\n this.logInvalidResponse(response)\n throw this.createApiError(`${errorPrefix}${E_RESPONSE_STATUS}${response.status}`, response.body)\n }\n if (!response.body) {\n throw new Exception(`${errorPrefix}${E_RESPONSE_NO_VALUE}`, {\n code: 'E_RESPONSE_NO_VALUE',\n status: response.status,\n })\n }\n return response.body\n }\n\n protected readResponseJSON(response: IStoreResponse, errorPrefix: string): unknown {\n const body = this.readResponseBody(response, errorPrefix)\n let data: unknown\n try {\n data = JSON.parse(body)\n } catch {\n throw new Exception(`${errorPrefix}${E_INVALID_JSON}`, { code: 'E_INVALID_JSON', status: response.status })\n }\n return data\n }\n}\n"]}
|
|
@@ -170,6 +170,21 @@ export declare class SdkMock {
|
|
|
170
170
|
*/
|
|
171
171
|
removeUsers: (init?: MockResult, options?: InterceptOptions) => Promise<void>;
|
|
172
172
|
};
|
|
173
|
+
ai: {
|
|
174
|
+
sessions: {
|
|
175
|
+
list: (init?: MockListResult, options?: InterceptOptions) => Promise<void>;
|
|
176
|
+
create: (init?: MockResult, options?: InterceptOptions) => Promise<void>;
|
|
177
|
+
read: (init?: MockResult, options?: InterceptOptions) => Promise<void>;
|
|
178
|
+
update: (init?: MockResult, options?: InterceptOptions) => Promise<void>;
|
|
179
|
+
delete: (init?: MockResult, options?: InterceptOptions) => Promise<void>;
|
|
180
|
+
};
|
|
181
|
+
messages: {
|
|
182
|
+
list: (init?: MockListResult, options?: InterceptOptions) => Promise<void>;
|
|
183
|
+
update: (init?: MockResult, options?: InterceptOptions) => Promise<void>;
|
|
184
|
+
delete: (init?: MockResult, options?: InterceptOptions) => Promise<void>;
|
|
185
|
+
};
|
|
186
|
+
modifyDomain: (init?: MockResult, options?: InterceptOptions) => Promise<void>;
|
|
187
|
+
};
|
|
173
188
|
/**
|
|
174
189
|
* User API mocks.
|
|
175
190
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SdkMock.d.ts","sourceRoot":"","sources":["../../../src/sdk/SdkMock.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,iBAAiB,EAEtB,KAAK,WAAW,EAChB,KAAK,kBAAkB,EACvB,KAAK,gBAAgB,EACrB,KAAK,iBAAiB,EACvB,MAAM,eAAe,CAAA;AAStB,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAA;
|
|
1
|
+
{"version":3,"file":"SdkMock.d.ts","sourceRoot":"","sources":["../../../src/sdk/SdkMock.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,iBAAiB,EAEtB,KAAK,WAAW,EAChB,KAAK,kBAAkB,EACvB,KAAK,gBAAgB,EACrB,KAAK,iBAAiB,EACvB,MAAM,eAAe,CAAA;AAStB,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAA;AAczD,MAAM,WAAW,UAAU;IACzB;;OAEG;IACH,QAAQ,CAAC,EAAE,iBAAiB,CAAA;IAC5B;;;;OAIG;IACH,SAAS,CAAC,EAAE,OAAO,CAAA;CACpB;AAED,MAAM,WAAW,cAAe,SAAQ,UAAU;IAChD;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAA;IACb;;;;OAIG;IACH,MAAM,CAAC,EAAE,OAAO,CAAA;CACjB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2DG;AACH,qBAAa,OAAO;IAIC,OAAO,CAAC,EAAE,kBAAkB;IAH/C,OAAO,CAAC,EAAE,WAAW,CAAA;IACrB,GAAG,eAAqB;gBAEL,OAAO,CAAC,EAAE,kBAAkB,YAAA;IAE/C;;;OAGG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAI5B;;OAEG;IACG,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAI/B;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAI5B,IAAI,IAAI,IAAI,WAAW,CAKtB;IAED,SAAS,CAAC,kBAAkB,CAAC,IAAI,GAAE,cAAmB,GAAG,MAAM,GAAG,SAAS;IAW3E,SAAS,CAAC,qBAAqB,CAC7B,MAAM,EAAE,MAAM,EACd,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAChC,IAAI,CAAC,EAAE,CAAC,GAAG,EAAE,iBAAiB,KAAK,MAAM,EACzC,UAAU,CAAC,EAAE,UAAU,GACtB,iBAAiB;IA2BpB;;OAEG;IACH,aAAa;QACX;;;WAGG;sBACiB,cAAc,YAAY,gBAAgB,KAAG,OAAO,CAAC,IAAI,CAAC;QAgC9E;;;WAGG;wBACmB,UAAU,YAAY,gBAAgB,KAAG,OAAO,CAAC,IAAI,CAAC;;0BA0BtD,cAAc,YAAY,gBAAgB,KAAG,OAAO,CAAC,IAAI,CAAC;4BAiCxD,UAAU,YAAY,gBAAgB,KAAG,OAAO,CAAC,IAAI,CAAC;iCAwBjD,UAAU,YAAY,gBAAgB,KAAG,OAAO,CAAC,IAAI,CAAC;6BAyB1D,UAAU,YAAY,gBAAgB,KAAG,OAAO,CAAC,IAAI,CAAC;4BAyBvD,UAAU,YAAY,gBAAgB,KAAG,OAAO,CAAC,IAAI,CAAC;2BAyBvD,UAAU,YAAY,gBAAgB,KAAG,OAAO,CAAC,IAAI,CAAC;4BAwBrD,UAAU,YAAY,gBAAgB,KAAG,OAAO,CAAC,IAAI,CAAC;;;0BA4BxD,cAAc,YAAY,gBAAgB,KAAG,OAAO,CAAC,IAAI,CAAC;0BAiC1D,UAAU,YAAY,gBAAgB,KAAG,OAAO,CAAC,IAAI,CAAC;+BAwBjD,cAAc,YAAY,gBAAgB,KAAG,OAAO,CAAC,IAAI,CAAC;8BAsB3D,UAAU,YAAY,gBAAgB,KAAG,OAAO,CAAC,IAAI,CAAC;gCAwBpD,UAAU,YAAY,gBAAgB,KAAG,OAAO,CAAC,IAAI,CAAC;4BAwB1D,UAAU,YAAY,gBAAgB,KAAG,OAAO,CAAC,IAAI,CAAC;;MAkB/E;IAED;;OAEG;IACH,MAAM;QACJ;;;WAGG;sBACiB,cAAc,YAAY,gBAAgB,KAAG,OAAO,CAAC,IAAI,CAAC;QAkC9E;;;WAGG;wBACmB,UAAU,YAAY,gBAAgB,KAAG,OAAO,CAAC,IAAI,CAAC;QAyB5E;;;WAGG;wBACmB,UAAU,YAAY,gBAAgB,KAAG,OAAO,CAAC,IAAI,CAAC;QAyB5E;;;WAGG;wBACmB,UAAU,YAAY,gBAAgB,KAAG,OAAO,CAAC,IAAI,CAAC;QAkB5E;;WAEG;0BACqB,UAAU,YAAY,gBAAgB,KAAG,OAAO,CAAC,IAAI,CAAC;QAyB9E;;WAEG;6BACwB,UAAU,YAAY,gBAAgB,KAAG,OAAO,CAAC,IAAI,CAAC;MAwBlF;IAED,EAAE;;0BAEsB,cAAc,YAAY,gBAAgB,KAAG,OAAO,CAAC,IAAI,CAAC;4BAyBxD,UAAU,YAAY,gBAAgB,KAAG,OAAO,CAAC,IAAI,CAAC;0BAmBxD,UAAU,YAAY,gBAAgB,KAAG,OAAO,CAAC,IAAI,CAAC;4BAmBpD,UAAU,YAAY,gBAAgB,KAAG,OAAO,CAAC,IAAI,CAAC;4BAmBtD,UAAU,YAAY,gBAAgB,KAAG,OAAO,CAAC,IAAI,CAAC;;;0BAiBxD,cAAc,YAAY,gBAAgB,KAAG,OAAO,CAAC,IAAI,CAAC;4BAyBxD,UAAU,YAAY,gBAAgB,KAAG,OAAO,CAAC,IAAI,CAAC;4BAmBtD,UAAU,YAAY,gBAAgB,KAAG,OAAO,CAAC,IAAI,CAAC;;8BAgBlD,UAAU,YAAY,gBAAgB,KAAG,OAAO,CAAC,IAAI,CAAC;MAoBnF;IAED;;OAEG;IACH,KAAK;QACH;;;WAGG;oBACe,UAAU,YAAY,gBAAgB,KAAG,OAAO,CAAC,IAAI,CAAC;MAwBzE;IAED;;OAEG;IACH,KAAK;QACH;;WAEG;sBACiB,cAAc,YAAY,gBAAgB,KAAG,OAAO,CAAC,IAAI,CAAC;QAkC9E;;WAEG;4BACuB,UAAU,YAAY,gBAAgB,KAAG,OAAO,CAAC,IAAI,CAAC;QAyBhF;;WAEG;6BACwB,UAAU,YAAY,gBAAgB,KAAG,OAAO,CAAC,IAAI,CAAC;QAkBjF;;WAEG;wBACmB,UAAU,YAAY,gBAAgB,KAAG,OAAO,CAAC,IAAI,CAAC;QAQ5E;;WAEG;8BACyB,UAAU,YAAY,gBAAgB,KAAG,OAAO,CAAC,IAAI,CAAC;QAyBlF;;WAEG;sBACiB,UAAU,YAAY,gBAAgB,KAAG,OAAO,CAAC,IAAI,CAAC;QAyB1E;;WAEG;2BACsB,UAAU,YAAY,gBAAgB,KAAG,OAAO,CAAC,IAAI,CAAC;QA+B/E;;WAEG;0BACqB,cAAc,YAAY,gBAAgB,KAAG,OAAO,CAAC,IAAI,CAAC;QAgClF;;WAEG;uBACkB,UAAU,YAAY,gBAAgB,KAAG,OAAO,CAAC,IAAI,CAAC;QAyB3E;;WAEG;4BACuB,UAAU,YAAY,gBAAgB,KAAG,OAAO,CAAC,IAAI,CAAC;QAyBhF;;WAEG;wBACmB,UAAU,YAAY,gBAAgB,KAAG,OAAO,CAAC,IAAI,CAAC;QAkB5E;;WAEG;4BACuB,UAAU,YAAY,gBAAgB,KAAG,OAAO,CAAC,IAAI,CAAC;QAkBhF;;WAEG;4BACuB,UAAU,YAAY,gBAAgB,KAAG,OAAO,CAAC,IAAI,CAAC;QAyBhF;;WAEG;yBACoB,UAAU,YAAY,gBAAgB,KAAG,OAAO,CAAC,IAAI,CAAC;QAI7E;;WAEG;4BACuB,UAAU,YAAY,gBAAgB,KAAG,OAAO,CAAC,IAAI,CAAC;QAIhF;;WAEG;2BACsB,cAAc,YAAY,gBAAgB,KAAG,OAAO,CAAC,IAAI,CAAC;QAkCnF;;WAEG;6BACwB,cAAc,YAAY,gBAAgB,KAAG,OAAO,CAAC,IAAI,CAAC;MAiCtF;IAED;;OAEG;IACH,IAAI;QAxbF;;WAEG;sBACiB,cAAc,YAAY,gBAAgB,KAAG,OAAO,CAAC,IAAI,CAAC;QAkC9E;;WAEG;4BACuB,UAAU,YAAY,gBAAgB,KAAG,OAAO,CAAC,IAAI,CAAC;QAyBhF;;WAEG;6BACwB,UAAU,YAAY,gBAAgB,KAAG,OAAO,CAAC,IAAI,CAAC;QAkBjF;;WAEG;wBACmB,UAAU,YAAY,gBAAgB,KAAG,OAAO,CAAC,IAAI,CAAC;QAQ5E;;WAEG;8BACyB,UAAU,YAAY,gBAAgB,KAAG,OAAO,CAAC,IAAI,CAAC;QAyBlF;;WAEG;sBACiB,UAAU,YAAY,gBAAgB,KAAG,OAAO,CAAC,IAAI,CAAC;QAyB1E;;WAEG;2BACsB,UAAU,YAAY,gBAAgB,KAAG,OAAO,CAAC,IAAI,CAAC;QA+B/E;;WAEG;0BACqB,cAAc,YAAY,gBAAgB,KAAG,OAAO,CAAC,IAAI,CAAC;QAgClF;;WAEG;uBACkB,UAAU,YAAY,gBAAgB,KAAG,OAAO,CAAC,IAAI,CAAC;QAyB3E;;WAEG;4BACuB,UAAU,YAAY,gBAAgB,KAAG,OAAO,CAAC,IAAI,CAAC;QAyBhF;;WAEG;wBACmB,UAAU,YAAY,gBAAgB,KAAG,OAAO,CAAC,IAAI,CAAC;QAkB5E;;WAEG;4BACuB,UAAU,YAAY,gBAAgB,KAAG,OAAO,CAAC,IAAI,CAAC;QAkBhF;;WAEG;4BACuB,UAAU,YAAY,gBAAgB,KAAG,OAAO,CAAC,IAAI,CAAC;QAyBhF;;WAEG;yBACoB,UAAU,YAAY,gBAAgB,KAAG,OAAO,CAAC,IAAI,CAAC;QAI7E;;WAEG;4BACuB,UAAU,YAAY,gBAAgB,KAAG,OAAO,CAAC,IAAI,CAAC;QAIhF;;WAEG;2BACsB,cAAc,YAAY,gBAAgB,KAAG,OAAO,CAAC,IAAI,CAAC;QAkCnF;;WAEG;6BACwB,cAAc,YAAY,gBAAgB,KAAG,OAAO,CAAC,IAAI,CAAC;MAsCtE;IAEjB;;OAEG;IACH,MAAM;sBACgB,cAAc,YAAY,gBAAgB,KAAG,OAAO,CAAC,IAAI,CAAC;MAiC/E;IAED;;OAEG;IACH,KAAK;sBACiB,cAAc,YAAY,gBAAgB,KAAG,OAAO,CAAC,IAAI,CAAC;wBAiCxD,UAAU,YAAY,gBAAgB,KAAG,OAAO,CAAC,IAAI,CAAC;yBAiBrD,UAAU,YAAY,gBAAgB,KAAG,OAAO,CAAC,IAAI,CAAC;uBAiBxD,UAAU,YAAY,gBAAgB,KAAG,OAAO,CAAC,IAAI,CAAC;MAiB5E;IAED;;OAEG;IACH,WAAW;sBACW,cAAc,YAAY,gBAAgB,KAAG,OAAO,CAAC,IAAI,CAAC;8BA0BlD,cAAc,YAAY,gBAAgB,KAAG,OAAO,CAAC,IAAI,CAAC;yBA0B/D,UAAU,YAAY,gBAAgB,KAAG,OAAO,CAAC,IAAI,CAAC;sBA4BzD,UAAU,YAAY,gBAAgB,KAAG,OAAO,CAAC,IAAI,CAAC;2BAuBjD,UAAU,YAAY,gBAAgB,KAAG,OAAO,CAAC,IAAI,CAAC;2BA4BtD,UAAU,YAAY,gBAAgB,KAAG,OAAO,CAAC,IAAI,CAAC;gCA4BjD,UAAU,YAAY,gBAAgB,KAAG,OAAO,CAAC,IAAI,CAAC;6BA8BzD,UAAU,YAAY,gBAAgB,KAAG,OAAO,CAAC,IAAI,CAAC;kCAuBjD,cAAc,YAAY,gBAAgB,KAAG,OAAO,CAAC,IAAI,CAAC;kCAkC1D,UAAU,YAAY,gBAAgB,KAAG,OAAO,CAAC,IAAI,CAAC;kCAiCtD,UAAU,YAAY,gBAAgB,KAAG,OAAO,CAAC,IAAI,CAAC;wCA8BhD,UAAU,YAAY,gBAAgB,KAAG,OAAO,CAAC,IAAI,CAAC;MAuB7F;CACF"}
|
package/build/src/sdk/SdkMock.js
CHANGED
|
@@ -545,6 +545,124 @@ export class SdkMock {
|
|
|
545
545
|
}, options);
|
|
546
546
|
},
|
|
547
547
|
};
|
|
548
|
+
ai = {
|
|
549
|
+
sessions: {
|
|
550
|
+
list: async (init, options) => {
|
|
551
|
+
const { mock } = this;
|
|
552
|
+
const respond = this.createDefaultResponse(200, { 'content-type': 'application/json' }, () => {
|
|
553
|
+
const obj = {
|
|
554
|
+
items: this.gen.ai.sessions('general', init?.size ?? 5),
|
|
555
|
+
cursor: this.createCursorOption(init),
|
|
556
|
+
};
|
|
557
|
+
return JSON.stringify(obj);
|
|
558
|
+
}, init);
|
|
559
|
+
await mock.add({
|
|
560
|
+
match: {
|
|
561
|
+
uri: RouteBuilder.aiSessions(':oid', ':app'),
|
|
562
|
+
methods: ['GET'],
|
|
563
|
+
},
|
|
564
|
+
respond,
|
|
565
|
+
}, options);
|
|
566
|
+
},
|
|
567
|
+
create: async (init, options) => {
|
|
568
|
+
const { mock } = this;
|
|
569
|
+
const respond = this.createDefaultResponse(201, { 'content-type': 'application/json' }, () => JSON.stringify(this.gen.ai.session()), init);
|
|
570
|
+
await mock.add({
|
|
571
|
+
match: {
|
|
572
|
+
uri: RouteBuilder.aiSessions(':oid', ':app'),
|
|
573
|
+
methods: ['POST'],
|
|
574
|
+
},
|
|
575
|
+
respond,
|
|
576
|
+
}, options);
|
|
577
|
+
},
|
|
578
|
+
read: async (init, options) => {
|
|
579
|
+
const { mock } = this;
|
|
580
|
+
const respond = this.createDefaultResponse(200, { 'content-type': 'application/json' }, () => JSON.stringify(this.gen.ai.session()), init);
|
|
581
|
+
await mock.add({
|
|
582
|
+
match: {
|
|
583
|
+
uri: RouteBuilder.aiSession(':oid', ':app', ':sid'),
|
|
584
|
+
methods: ['GET'],
|
|
585
|
+
},
|
|
586
|
+
respond,
|
|
587
|
+
}, options);
|
|
588
|
+
},
|
|
589
|
+
update: async (init, options) => {
|
|
590
|
+
const { mock } = this;
|
|
591
|
+
const respond = this.createDefaultResponse(200, { 'content-type': 'application/json' }, () => JSON.stringify(this.gen.ai.session()), init);
|
|
592
|
+
await mock.add({
|
|
593
|
+
match: {
|
|
594
|
+
uri: RouteBuilder.aiSession(':oid', ':app', ':sid'),
|
|
595
|
+
methods: ['PUT'],
|
|
596
|
+
},
|
|
597
|
+
respond,
|
|
598
|
+
}, options);
|
|
599
|
+
},
|
|
600
|
+
delete: async (init, options) => {
|
|
601
|
+
const { mock } = this;
|
|
602
|
+
const respond = this.createDefaultResponse(204, undefined, undefined, init);
|
|
603
|
+
await mock.add({
|
|
604
|
+
match: {
|
|
605
|
+
uri: RouteBuilder.aiSession(':oid', ':app', ':sid'),
|
|
606
|
+
methods: ['DELETE'],
|
|
607
|
+
},
|
|
608
|
+
respond,
|
|
609
|
+
}, options);
|
|
610
|
+
},
|
|
611
|
+
},
|
|
612
|
+
messages: {
|
|
613
|
+
list: async (init, options) => {
|
|
614
|
+
const { mock } = this;
|
|
615
|
+
const respond = this.createDefaultResponse(200, { 'content-type': 'application/json' }, () => {
|
|
616
|
+
const obj = {
|
|
617
|
+
items: this.gen.ai.messages(init?.size ?? 5),
|
|
618
|
+
cursor: this.createCursorOption(init),
|
|
619
|
+
};
|
|
620
|
+
return JSON.stringify(obj);
|
|
621
|
+
}, init);
|
|
622
|
+
await mock.add({
|
|
623
|
+
match: {
|
|
624
|
+
uri: RouteBuilder.aiMessages(':oid', ':sid'),
|
|
625
|
+
methods: ['GET'],
|
|
626
|
+
},
|
|
627
|
+
respond,
|
|
628
|
+
}, options);
|
|
629
|
+
},
|
|
630
|
+
update: async (init, options) => {
|
|
631
|
+
const { mock } = this;
|
|
632
|
+
const respond = this.createDefaultResponse(200, { 'content-type': 'application/json' }, () => JSON.stringify(this.gen.ai.message()), init);
|
|
633
|
+
await mock.add({
|
|
634
|
+
match: {
|
|
635
|
+
uri: RouteBuilder.aiMessage(':oid', ':sid', ':mid'),
|
|
636
|
+
methods: ['PUT'],
|
|
637
|
+
},
|
|
638
|
+
respond,
|
|
639
|
+
}, options);
|
|
640
|
+
},
|
|
641
|
+
delete: async (init, options) => {
|
|
642
|
+
const { mock } = this;
|
|
643
|
+
const respond = this.createDefaultResponse(204, undefined, undefined, init);
|
|
644
|
+
await mock.add({
|
|
645
|
+
match: {
|
|
646
|
+
uri: RouteBuilder.aiMessage(':oid', ':sid', ':mid'),
|
|
647
|
+
methods: ['DELETE'],
|
|
648
|
+
},
|
|
649
|
+
respond,
|
|
650
|
+
}, options);
|
|
651
|
+
},
|
|
652
|
+
},
|
|
653
|
+
modifyDomain: async (init, options) => {
|
|
654
|
+
const { mock } = this;
|
|
655
|
+
// Return a basic JSON response simulating the stream end state for simplicity if not overriding.
|
|
656
|
+
const respond = this.createDefaultResponse(200, { 'content-type': 'text/event-stream' }, () => 'event: done\ndata: {}\n\n', init);
|
|
657
|
+
await mock.add({
|
|
658
|
+
match: {
|
|
659
|
+
uri: RouteBuilder.aiModifyDomain(':oid', ':fid'),
|
|
660
|
+
methods: ['POST'],
|
|
661
|
+
},
|
|
662
|
+
respond,
|
|
663
|
+
}, options);
|
|
664
|
+
},
|
|
665
|
+
};
|
|
548
666
|
/**
|
|
549
667
|
* User API mocks.
|
|
550
668
|
*/
|