@sapiom/tools 0.6.2 → 0.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +6 -0
- package/README.md +16 -11
- package/dist/cjs/_client/index.d.ts +22 -2
- package/dist/cjs/_client/index.d.ts.map +1 -1
- package/dist/cjs/_client/index.js +16 -6
- package/dist/cjs/_client/index.js.map +1 -1
- package/dist/cjs/client.d.ts +20 -1
- package/dist/cjs/client.d.ts.map +1 -1
- package/dist/cjs/client.js +8 -0
- package/dist/cjs/client.js.map +1 -1
- package/dist/cjs/content-generation/index.d.ts +55 -3
- package/dist/cjs/content-generation/index.d.ts.map +1 -1
- package/dist/cjs/content-generation/index.js +76 -4
- package/dist/cjs/content-generation/index.js.map +1 -1
- package/dist/cjs/index.d.ts +3 -1
- package/dist/cjs/index.d.ts.map +1 -1
- package/dist/cjs/index.js +4 -1
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/search/errors.d.ts +16 -0
- package/dist/cjs/search/errors.d.ts.map +1 -0
- package/dist/cjs/search/errors.js +36 -0
- package/dist/cjs/search/errors.js.map +1 -0
- package/dist/cjs/search/index.d.ts +105 -0
- package/dist/cjs/search/index.d.ts.map +1 -0
- package/dist/cjs/search/index.js +129 -0
- package/dist/cjs/search/index.js.map +1 -0
- package/dist/cjs/stub/index.d.ts.map +1 -1
- package/dist/cjs/stub/index.js +39 -1
- package/dist/cjs/stub/index.js.map +1 -1
- package/dist/esm/_client/index.d.ts +22 -2
- package/dist/esm/_client/index.d.ts.map +1 -1
- package/dist/esm/_client/index.js +16 -6
- package/dist/esm/_client/index.js.map +1 -1
- package/dist/esm/client.d.ts +20 -1
- package/dist/esm/client.d.ts.map +1 -1
- package/dist/esm/client.js +8 -0
- package/dist/esm/client.js.map +1 -1
- package/dist/esm/content-generation/index.d.ts +55 -3
- package/dist/esm/content-generation/index.d.ts.map +1 -1
- package/dist/esm/content-generation/index.js +74 -3
- package/dist/esm/content-generation/index.js.map +1 -1
- package/dist/esm/index.d.ts +3 -1
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +3 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/search/errors.d.ts +16 -0
- package/dist/esm/search/errors.d.ts.map +1 -0
- package/dist/esm/search/errors.js +31 -0
- package/dist/esm/search/errors.js.map +1 -0
- package/dist/esm/search/index.d.ts +105 -0
- package/dist/esm/search/index.d.ts.map +1 -0
- package/dist/esm/search/index.js +124 -0
- package/dist/esm/search/index.js.map +1 -0
- package/dist/esm/stub/index.d.ts.map +1 -1
- package/dist/esm/stub/index.js +39 -1
- package/dist/esm/stub/index.js.map +1 -1
- package/dist/tsconfig.cjs.tsbuildinfo +1 -1
- package/dist/tsconfig.esm.tsbuildinfo +1 -1
- package/package.json +6 -1
- package/src/content-generation/README.md +23 -2
- package/src/search/README.md +126 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,11 @@
|
|
|
1
1
|
# @sapiom/tools
|
|
2
2
|
|
|
3
|
+
## 0.7.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- a3cc368: Add `contentGeneration.video.create` — generate a video from a prompt, with an optional `storage` param. Video generation is asynchronous: `create` submits the job and polls until the result is ready (configurable `pollIntervalMs` / `timeoutMs`), then resolves — so you `await` it just like `images.create`. When `storage` is passed, the output is persisted and the returned `video` carries a `fileId`. camelCase surface, mapped from the wire.
|
|
8
|
+
|
|
3
9
|
## 0.6.2
|
|
4
10
|
|
|
5
11
|
### Patch Changes
|
package/README.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# @sapiom/tools
|
|
2
2
|
|
|
3
|
-
A typed TypeScript client for Sapiom capabilities — sandboxes, git repositories, coding agents, file storage, content generation, and orchestrations — authenticated to your tenant.
|
|
3
|
+
A typed TypeScript client for Sapiom capabilities — sandboxes, git repositories, coding agents, file storage, content generation, search, and orchestrations — authenticated to your tenant.
|
|
4
4
|
|
|
5
5
|
These are the same capabilities your Sapiom agents call as tools; this package makes them callable directly from your own code.
|
|
6
6
|
|
|
@@ -25,7 +25,9 @@ const run = await sapiom.agent.coding.run({
|
|
|
25
25
|
});
|
|
26
26
|
|
|
27
27
|
if (run.result?.success) {
|
|
28
|
-
const { sha } = await repo.pushFromSandbox(run.sandbox, {
|
|
28
|
+
const { sha } = await repo.pushFromSandbox(run.sandbox, {
|
|
29
|
+
message: "build: landing",
|
|
30
|
+
});
|
|
29
31
|
console.log("published", sha);
|
|
30
32
|
}
|
|
31
33
|
```
|
|
@@ -65,14 +67,15 @@ If a single process makes calls on behalf of more than one agent or trace, deriv
|
|
|
65
67
|
|
|
66
68
|
Each capability is a namespace, importable from the barrel or its own subpath (e.g. `@sapiom/tools/sandboxes`). Every capability has its own README with usage details, preconditions, and gotchas the type signatures can't express — read it before first use.
|
|
67
69
|
|
|
68
|
-
| Namespace
|
|
69
|
-
|
|
70
|
-
| `sandboxes`
|
|
71
|
-
| `repositories`
|
|
72
|
-
| `agent`
|
|
73
|
-
| `fileStorage`
|
|
74
|
-
| `contentGeneration` | Media generation (images;
|
|
75
|
-
| `
|
|
70
|
+
| Namespace | What it is | Docs |
|
|
71
|
+
| ------------------- | -------------------------------------------------------------------------------------- | ------------------------------------------------------------ |
|
|
72
|
+
| `sandboxes` | Isolated, ephemeral compute | [src/sandboxes](./src/sandboxes/README.md) |
|
|
73
|
+
| `repositories` | Private, in-network git repos | [src/repositories](./src/repositories/README.md) |
|
|
74
|
+
| `agent` | Coding agents (LLM execution) | [src/agent](./src/agent/README.md) |
|
|
75
|
+
| `fileStorage` | Tenant-scoped object storage (presigned URLs) | [src/file-storage](./src/file-storage/README.md) |
|
|
76
|
+
| `contentGeneration` | Media generation (images + video; audio soon), with optional `storage` | [src/content-generation](./src/content-generation/README.md) |
|
|
77
|
+
| `search` | Search the web with `webSearch`, read a page with `scrape` (email lookup landing soon) | [src/search](./src/search/README.md) |
|
|
78
|
+
| `orchestrations` | Run a deployed orchestration, or dispatch one from a step and await its result | [src/orchestrations](./src/orchestrations/README.md) |
|
|
76
79
|
|
|
77
80
|
## Composing capabilities
|
|
78
81
|
|
|
@@ -92,7 +95,9 @@ const out = await contentGeneration.images.create({
|
|
|
92
95
|
prompt: "a logo",
|
|
93
96
|
storage: { visibility: "private" },
|
|
94
97
|
});
|
|
95
|
-
const { downloadUrl } = await fileStorage.getDownloadUrl(
|
|
98
|
+
const { downloadUrl } = await fileStorage.getDownloadUrl(
|
|
99
|
+
out.images![0].fileId!,
|
|
100
|
+
);
|
|
96
101
|
```
|
|
97
102
|
|
|
98
103
|
## License
|
|
@@ -51,6 +51,22 @@ export interface TransportConfig {
|
|
|
51
51
|
*/
|
|
52
52
|
resumeToken?: string;
|
|
53
53
|
}
|
|
54
|
+
/**
|
|
55
|
+
* Which header carries the tenant credential. Sapiom has two authenticated
|
|
56
|
+
* surfaces with different conventions: most operations send `x-sapiom-api-key`
|
|
57
|
+
* (the default), while a few send `x-api-key`. A capability that targets the
|
|
58
|
+
* latter passes `authHeader: "x-api-key"`; everything else uses the default.
|
|
59
|
+
* The credential value is the same — the Transport holds it; callers never do.
|
|
60
|
+
*/
|
|
61
|
+
export type AuthHeader = "x-sapiom-api-key" | "x-api-key";
|
|
62
|
+
/** Per-request options the Transport understands, layered over a normal `RequestInit`. */
|
|
63
|
+
export interface TransportRequestOptions {
|
|
64
|
+
/**
|
|
65
|
+
* Which header carries the tenant credential. Defaults to `x-sapiom-api-key`.
|
|
66
|
+
* A capability sets this only when its destination expects a different header.
|
|
67
|
+
*/
|
|
68
|
+
authHeader?: AuthHeader;
|
|
69
|
+
}
|
|
54
70
|
/**
|
|
55
71
|
* Standalone-only ambient attribution. Read once for the process-global default
|
|
56
72
|
* transport. NOT the engine's injection channel — `process.env` is process-wide,
|
|
@@ -82,10 +98,14 @@ export declare class Transport {
|
|
|
82
98
|
* response handling (filesystem, log streams) use this and inspect the
|
|
83
99
|
* `Response` themselves. Injects the tenant credential + attribution headers;
|
|
84
100
|
* sets no content-type.
|
|
101
|
+
*
|
|
102
|
+
* The credential rides `x-sapiom-api-key` by default; pass
|
|
103
|
+
* `{ authHeader: "x-api-key" }` for a destination that expects that header
|
|
104
|
+
* instead (the value is identical — the Transport owns the key either way).
|
|
85
105
|
*/
|
|
86
|
-
fetch(url: string, init?: RequestInit): Promise<Response>;
|
|
106
|
+
fetch(url: string, init?: RequestInit, options?: TransportRequestOptions): Promise<Response>;
|
|
87
107
|
/** Authenticated JSON request — parses the body and throws on a non-2xx status. */
|
|
88
|
-
request<T>(url: string, init?: RequestInit): Promise<T>;
|
|
108
|
+
request<T>(url: string, init?: RequestInit, options?: TransportRequestOptions): Promise<T>;
|
|
89
109
|
}
|
|
90
110
|
export declare function defaultTransport(): Transport;
|
|
91
111
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/_client/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH;;;GAGG;AACH,MAAM,WAAW,WAAW;IAC1B,uFAAuF;IACvF,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,0EAA0E;IAC1E,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,iDAAiD;IACjD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,gDAAgD;IAChD,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,4EAA4E;IAC5E,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAED,MAAM,WAAW,eAAe;IAC9B,8FAA8F;IAC9F,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,gFAAgF;IAChF,KAAK,CAAC,EAAE,OAAO,UAAU,CAAC,KAAK,CAAC;IAChC,yFAAyF;IACzF,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B;;;;;;;OAOG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAYD;;;;;;GAMG;AACH,wBAAgB,kBAAkB,IAAI,WAAW,CAShD;AAED,qBAAa,SAAS;IACpB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAqB;IAC5C,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA0B;IACpD,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAc;IAC1C;;;;OAIG;IACH,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,SAAS,CAAC;gBAE7B,MAAM,GAAE,eAAoB;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/_client/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH;;;GAGG;AACH,MAAM,WAAW,WAAW;IAC1B,uFAAuF;IACvF,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,0EAA0E;IAC1E,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,iDAAiD;IACjD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,gDAAgD;IAChD,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,4EAA4E;IAC5E,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAED,MAAM,WAAW,eAAe;IAC9B,8FAA8F;IAC9F,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,gFAAgF;IAChF,KAAK,CAAC,EAAE,OAAO,UAAU,CAAC,KAAK,CAAC;IAChC,yFAAyF;IACzF,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B;;;;;;;OAOG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;;;;;GAMG;AACH,MAAM,MAAM,UAAU,GAAG,kBAAkB,GAAG,WAAW,CAAC;AAI1D,0FAA0F;AAC1F,MAAM,WAAW,uBAAuB;IACtC;;;OAGG;IACH,UAAU,CAAC,EAAE,UAAU,CAAC;CACzB;AAYD;;;;;;GAMG;AACH,wBAAgB,kBAAkB,IAAI,WAAW,CAShD;AAED,qBAAa,SAAS;IACpB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAqB;IAC5C,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA0B;IACpD,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAc;IAC1C;;;;OAIG;IACH,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,SAAS,CAAC;gBAE7B,MAAM,GAAE,eAAoB;IAUxC;;;;;OAKG;IACH,eAAe,CAAC,WAAW,EAAE,WAAW,GAAG,SAAS;IASpD;;;;;;;;;OASG;IACG,KAAK,CACT,GAAG,EAAE,MAAM,EACX,IAAI,GAAE,WAAgB,EACtB,OAAO,GAAE,uBAA4B,GACpC,OAAO,CAAC,QAAQ,CAAC;IAiBpB,mFAAmF;IAC7E,OAAO,CAAC,CAAC,EACb,GAAG,EAAE,MAAM,EACX,IAAI,GAAE,WAAgB,EACtB,OAAO,GAAE,uBAA4B,GACpC,OAAO,CAAC,CAAC,CAAC;CAmBd;AAID,wBAAgB,gBAAgB,IAAI,SAAS,CAE5C"}
|
|
@@ -23,6 +23,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
23
23
|
exports.Transport = void 0;
|
|
24
24
|
exports.attributionFromEnv = attributionFromEnv;
|
|
25
25
|
exports.defaultTransport = defaultTransport;
|
|
26
|
+
const DEFAULT_AUTH_HEADER = "x-sapiom-api-key";
|
|
26
27
|
function attributionToHeaders(a) {
|
|
27
28
|
const h = {};
|
|
28
29
|
if (a.agentName)
|
|
@@ -62,7 +63,9 @@ class Transport {
|
|
|
62
63
|
this.fetchImpl = config.fetch ?? globalThis.fetch;
|
|
63
64
|
this.attribution = config.attribution ?? {};
|
|
64
65
|
this.resumeToken =
|
|
65
|
-
config.resumeToken ??
|
|
66
|
+
config.resumeToken ??
|
|
67
|
+
process.env.SAPIOM_CAPABILITY_RESUME_TOKEN ??
|
|
68
|
+
undefined;
|
|
66
69
|
}
|
|
67
70
|
/**
|
|
68
71
|
* A new transport sharing this one's credential, fetch, and resume token, with
|
|
@@ -83,8 +86,12 @@ class Transport {
|
|
|
83
86
|
* response handling (filesystem, log streams) use this and inspect the
|
|
84
87
|
* `Response` themselves. Injects the tenant credential + attribution headers;
|
|
85
88
|
* sets no content-type.
|
|
89
|
+
*
|
|
90
|
+
* The credential rides `x-sapiom-api-key` by default; pass
|
|
91
|
+
* `{ authHeader: "x-api-key" }` for a destination that expects that header
|
|
92
|
+
* instead (the value is identical — the Transport owns the key either way).
|
|
86
93
|
*/
|
|
87
|
-
async fetch(url, init = {}) {
|
|
94
|
+
async fetch(url, init = {}, options = {}) {
|
|
88
95
|
if (!this.apiKey) {
|
|
89
96
|
throw new Error("@sapiom/tools: no tenant credential. Pass createClient({ apiKey }) for standalone use, " +
|
|
90
97
|
"or run inside a Sapiom workflow (the engine injects SAPIOM_API_KEY).");
|
|
@@ -92,18 +99,21 @@ class Transport {
|
|
|
92
99
|
return this.fetchImpl(url, {
|
|
93
100
|
...init,
|
|
94
101
|
headers: {
|
|
95
|
-
|
|
102
|
+
[options.authHeader ?? DEFAULT_AUTH_HEADER]: this.apiKey,
|
|
96
103
|
...attributionToHeaders(this.attribution),
|
|
97
104
|
...(init.headers ?? {}),
|
|
98
105
|
},
|
|
99
106
|
});
|
|
100
107
|
}
|
|
101
108
|
/** Authenticated JSON request — parses the body and throws on a non-2xx status. */
|
|
102
|
-
async request(url, init = {}) {
|
|
109
|
+
async request(url, init = {}, options = {}) {
|
|
103
110
|
const res = await this.fetch(url, {
|
|
104
111
|
...init,
|
|
105
|
-
headers: {
|
|
106
|
-
|
|
112
|
+
headers: {
|
|
113
|
+
"content-type": "application/json",
|
|
114
|
+
...(init.headers ?? {}),
|
|
115
|
+
},
|
|
116
|
+
}, options);
|
|
107
117
|
if (!res.ok) {
|
|
108
118
|
throw new Error(`${init.method ?? "GET"} ${url} → ${res.status} ${await res.text()}`);
|
|
109
119
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/_client/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;GAmBG;;;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/_client/index.ts"],"names":[],"mappings":"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"}
|
package/dist/cjs/client.d.ts
CHANGED
|
@@ -21,7 +21,8 @@ import { Repository } from "./repositories/index.js";
|
|
|
21
21
|
import type { CodingRunSpec, CodingRunResult, RunHandle } from "./agent/index.js";
|
|
22
22
|
import type { OrchestrationRunSpec, OrchestrationRunResult, RunHandle as OrchestrationRunHandle } from "./orchestrations/index.js";
|
|
23
23
|
import type { UploadInput, UploadResponse, DownloadUrlResponse, ListOptions, ListResponse, FileMetadata } from "./file-storage/index.js";
|
|
24
|
-
import type { ImageCreateInput, ImageGenerationResult } from "./content-generation/index.js";
|
|
24
|
+
import type { ImageCreateInput, ImageGenerationResult, VideoCreateInput, VideoGenerationResult } from "./content-generation/index.js";
|
|
25
|
+
import type { ScrapeInput, ScrapeResult, WebSearchInput, WebSearchResponse } from "./search/index.js";
|
|
25
26
|
export interface Sapiom {
|
|
26
27
|
readonly sandboxes: {
|
|
27
28
|
create(opts: SandboxCreateOptions): Promise<Sandbox>;
|
|
@@ -64,6 +65,24 @@ export interface Sapiom {
|
|
|
64
65
|
*/
|
|
65
66
|
create(input: ImageCreateInput): Promise<ImageGenerationResult>;
|
|
66
67
|
};
|
|
68
|
+
video: {
|
|
69
|
+
/**
|
|
70
|
+
* Generate a video from a prompt — async (submits, then polls until ready, then
|
|
71
|
+
* returns it). Pass `storage` to persist the output (the returned video carries
|
|
72
|
+
* `fileId`).
|
|
73
|
+
*/
|
|
74
|
+
create(input: VideoCreateInput): Promise<VideoGenerationResult>;
|
|
75
|
+
};
|
|
76
|
+
};
|
|
77
|
+
/**
|
|
78
|
+
* Search the web, read pages, and look up professional emails. More operations
|
|
79
|
+
* are added to this namespace as they ship.
|
|
80
|
+
*/
|
|
81
|
+
readonly search: {
|
|
82
|
+
/** Read a page and return its content (markdown by default). */
|
|
83
|
+
scrape(input: ScrapeInput): Promise<ScrapeResult>;
|
|
84
|
+
/** Search the web — a synthesized answer plus results by default. */
|
|
85
|
+
webSearch(input: WebSearchInput): Promise<WebSearchResponse>;
|
|
67
86
|
};
|
|
68
87
|
/**
|
|
69
88
|
* Derive a client that attributes its calls to a different agent/trace. For the
|
package/dist/cjs/client.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/client.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/client.ts"],"names":[],"mappings":"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"}
|
package/dist/cjs/client.js
CHANGED
|
@@ -58,6 +58,7 @@ const index_js_4 = require("./agent/index.js");
|
|
|
58
58
|
const index_js_5 = require("./orchestrations/index.js");
|
|
59
59
|
const fileStorage = __importStar(require("./file-storage/index.js"));
|
|
60
60
|
const contentGeneration = __importStar(require("./content-generation/index.js"));
|
|
61
|
+
const index_js_6 = require("./search/index.js");
|
|
61
62
|
/** Bind every capability namespace to a transport. `withAttribution` rebinds to a derived one. */
|
|
62
63
|
function bind(transport) {
|
|
63
64
|
return {
|
|
@@ -93,6 +94,13 @@ function bind(transport) {
|
|
|
93
94
|
images: {
|
|
94
95
|
create: (input) => contentGeneration.createImage(input, transport),
|
|
95
96
|
},
|
|
97
|
+
video: {
|
|
98
|
+
create: (input) => contentGeneration.createVideo(input, transport),
|
|
99
|
+
},
|
|
100
|
+
},
|
|
101
|
+
search: {
|
|
102
|
+
scrape: (input) => (0, index_js_6.scrape)(input, transport),
|
|
103
|
+
webSearch: (input) => (0, index_js_6.webSearch)(input, transport),
|
|
96
104
|
},
|
|
97
105
|
withAttribution: (attribution) => bind(transport.withAttribution(attribution)),
|
|
98
106
|
};
|
package/dist/cjs/client.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/client.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/client.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* `contentGeneration` capability — generate media (images
|
|
2
|
+
* `contentGeneration` capability — generate media (images and video today; audio
|
|
3
3
|
* to come), with an optional `storage` param that persists each output to Sapiom
|
|
4
4
|
* file storage so you get a durable `fileId` back inline.
|
|
5
5
|
*
|
|
@@ -78,10 +78,62 @@ export interface ImageGenerationResult {
|
|
|
78
78
|
export declare function createImage(input: ImageCreateInput, transport?: Transport, baseUrl?: string): Promise<ImageGenerationResult>;
|
|
79
79
|
/**
|
|
80
80
|
* The `images` sub-namespace, so `contentGeneration.images.create(...)` reads the
|
|
81
|
-
* same whether imported from the barrel or used on a client.
|
|
82
|
-
* land here as sibling sub-namespaces.
|
|
81
|
+
* same whether imported from the barrel or used on a client.
|
|
83
82
|
*/
|
|
84
83
|
export declare const images: {
|
|
85
84
|
create: typeof createImage;
|
|
86
85
|
};
|
|
86
|
+
export interface VideoCreateInput {
|
|
87
|
+
/** Text prompt describing the video to generate. */
|
|
88
|
+
prompt: string;
|
|
89
|
+
/**
|
|
90
|
+
* Optional model selector. Defaults to a standard video model; most callers omit it.
|
|
91
|
+
* (Model identifiers are an advanced, evolving surface.)
|
|
92
|
+
*/
|
|
93
|
+
model?: string;
|
|
94
|
+
/**
|
|
95
|
+
* Optional: persist the generated output to Sapiom file storage. When set, the
|
|
96
|
+
* returned `video` comes back annotated with `fileId` (or `storageError` if
|
|
97
|
+
* persisting failed).
|
|
98
|
+
*/
|
|
99
|
+
storage?: StorageOptions;
|
|
100
|
+
/** Advanced: extra model-specific parameters, forwarded verbatim. */
|
|
101
|
+
params?: Record<string, unknown>;
|
|
102
|
+
/** How often to poll while the video generates (default 5s). */
|
|
103
|
+
pollIntervalMs?: number;
|
|
104
|
+
/** Give up and throw if the result isn't ready within this window (default 5 min). */
|
|
105
|
+
timeoutMs?: number;
|
|
106
|
+
}
|
|
107
|
+
export interface GeneratedVideo {
|
|
108
|
+
/** Hosted URL of the generated video. */
|
|
109
|
+
url: string;
|
|
110
|
+
/** MIME type, when reported. */
|
|
111
|
+
contentType?: string;
|
|
112
|
+
/**
|
|
113
|
+
* Present when `storage` was requested and the output was persisted — pass to
|
|
114
|
+
* `fileStorage.getDownloadUrl(fileId)` to retrieve it.
|
|
115
|
+
*/
|
|
116
|
+
fileId?: string;
|
|
117
|
+
/** Present when `storage` was requested but persisting the output failed. */
|
|
118
|
+
storageError?: string;
|
|
119
|
+
}
|
|
120
|
+
export interface VideoGenerationResult {
|
|
121
|
+
/** The generated video. */
|
|
122
|
+
video?: GeneratedVideo;
|
|
123
|
+
/** Additional model-specific fields (e.g. `seed`, `timings`), returned as-is. */
|
|
124
|
+
[key: string]: unknown;
|
|
125
|
+
}
|
|
126
|
+
/**
|
|
127
|
+
* Generate a video from a prompt. Video generation is asynchronous: this submits the
|
|
128
|
+
* job, then polls the result through Sapiom until it's ready and returns it — so you
|
|
129
|
+
* `await` it just like {@link createImage}, it just takes longer. Pass `storage` to
|
|
130
|
+
* persist the output (the returned `video` then carries `fileId`). Throws
|
|
131
|
+
* {@link ContentGenerationHttpError} on a failed submit, or an `Error` if the result
|
|
132
|
+
* isn't ready within `timeoutMs`.
|
|
133
|
+
*/
|
|
134
|
+
export declare function createVideo(input: VideoCreateInput, transport?: Transport, baseUrl?: string): Promise<VideoGenerationResult>;
|
|
135
|
+
/** The `video` sub-namespace: `contentGeneration.video.create(...)`. Async (submit + poll). */
|
|
136
|
+
export declare const video: {
|
|
137
|
+
create: typeof createVideo;
|
|
138
|
+
};
|
|
87
139
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/content-generation/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,OAAO,EAAE,SAAS,EAAoB,MAAM,qBAAqB,CAAC;AAClE,OAAO,EAAY,0BAA0B,EAAE,MAAM,aAAa,CAAC;AAEnE,OAAO,EAAE,0BAA0B,EAAE,CAAC;AAUtC,MAAM,WAAW,cAAc;IAC7B;;;;OAIG;IACH,UAAU,CAAC,EAAE,SAAS,GAAG,QAAQ,CAAC;CACnC;AAED,MAAM,WAAW,gBAAgB;IAC/B,oDAAoD;IACpD,MAAM,EAAE,MAAM,CAAC;IACf,oCAAoC;IACpC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;;OAIG;IACH,OAAO,CAAC,EAAE,cAAc,CAAC;IACzB;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAClC;AAED,MAAM,WAAW,cAAc;IAC7B,yCAAyC;IACzC,GAAG,EAAE,MAAM,CAAC;IACZ,gCAAgC;IAChC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,qBAAqB;IACpC,wBAAwB;IACxB,MAAM,CAAC,EAAE,cAAc,EAAE,CAAC;IAC1B,iFAAiF;IACjF,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AA2CD;;;;GAIG;AACH,wBAAsB,WAAW,CAC/B,KAAK,EAAE,gBAAgB,EACvB,SAAS,GAAE,SAA8B,EACzC,OAAO,SAAmB,GACzB,OAAO,CAAC,qBAAqB,CAAC,CAqBhC;AAED
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/content-generation/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,OAAO,EAAE,SAAS,EAAoB,MAAM,qBAAqB,CAAC;AAClE,OAAO,EAAY,0BAA0B,EAAE,MAAM,aAAa,CAAC;AAEnE,OAAO,EAAE,0BAA0B,EAAE,CAAC;AAUtC,MAAM,WAAW,cAAc;IAC7B;;;;OAIG;IACH,UAAU,CAAC,EAAE,SAAS,GAAG,QAAQ,CAAC;CACnC;AAED,MAAM,WAAW,gBAAgB;IAC/B,oDAAoD;IACpD,MAAM,EAAE,MAAM,CAAC;IACf,oCAAoC;IACpC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;;OAIG;IACH,OAAO,CAAC,EAAE,cAAc,CAAC;IACzB;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAClC;AAED,MAAM,WAAW,cAAc;IAC7B,yCAAyC;IACzC,GAAG,EAAE,MAAM,CAAC;IACZ,gCAAgC;IAChC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,qBAAqB;IACpC,wBAAwB;IACxB,MAAM,CAAC,EAAE,cAAc,EAAE,CAAC;IAC1B,iFAAiF;IACjF,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AA2CD;;;;GAIG;AACH,wBAAsB,WAAW,CAC/B,KAAK,EAAE,gBAAgB,EACvB,SAAS,GAAE,SAA8B,EACzC,OAAO,SAAmB,GACzB,OAAO,CAAC,qBAAqB,CAAC,CAqBhC;AAED;;;GAGG;AACH,eAAO,MAAM,MAAM;;CAA0B,CAAC;AAU9C,MAAM,WAAW,gBAAgB;IAC/B,oDAAoD;IACpD,MAAM,EAAE,MAAM,CAAC;IACf;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;;OAIG;IACH,OAAO,CAAC,EAAE,cAAc,CAAC;IACzB,qEAAqE;IACrE,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACjC,gEAAgE;IAChE,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,sFAAsF;IACtF,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,cAAc;IAC7B,yCAAyC;IACzC,GAAG,EAAE,MAAM,CAAC;IACZ,gCAAgC;IAChC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,6EAA6E;IAC7E,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,qBAAqB;IACpC,2BAA2B;IAC3B,KAAK,CAAC,EAAE,cAAc,CAAC;IACvB,iFAAiF;IACjF,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAwCD;;;;;;;GAOG;AACH,wBAAsB,WAAW,CAC/B,KAAK,EAAE,gBAAgB,EACvB,SAAS,GAAE,SAA8B,EACzC,OAAO,SAAmB,GACzB,OAAO,CAAC,qBAAqB,CAAC,CA8ChC;AAED,+FAA+F;AAC/F,eAAO,MAAM,KAAK;;CAA0B,CAAC"}
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.images = exports.ContentGenerationHttpError = void 0;
|
|
3
|
+
exports.video = exports.images = exports.ContentGenerationHttpError = void 0;
|
|
4
4
|
exports.createImage = createImage;
|
|
5
|
+
exports.createVideo = createVideo;
|
|
5
6
|
/**
|
|
6
|
-
* `contentGeneration` capability — generate media (images
|
|
7
|
+
* `contentGeneration` capability — generate media (images and video today; audio
|
|
7
8
|
* to come), with an optional `storage` param that persists each output to Sapiom
|
|
8
9
|
* file storage so you get a durable `fileId` back inline.
|
|
9
10
|
*
|
|
@@ -70,8 +71,79 @@ async function createImage(input, transport = (0, index_js_1.defaultTransport)()
|
|
|
70
71
|
}
|
|
71
72
|
/**
|
|
72
73
|
* The `images` sub-namespace, so `contentGeneration.images.create(...)` reads the
|
|
73
|
-
* same whether imported from the barrel or used on a client.
|
|
74
|
-
* land here as sibling sub-namespaces.
|
|
74
|
+
* same whether imported from the barrel or used on a client.
|
|
75
75
|
*/
|
|
76
76
|
exports.images = { create: createImage };
|
|
77
|
+
// ----- Video (async) -----
|
|
78
|
+
/** Default video model when the caller doesn't pick one. */
|
|
79
|
+
const DEFAULT_VIDEO_MODEL = "fal-ai/veo3/fast";
|
|
80
|
+
/** How often to poll for the async result, and when to give up. Caller-overridable. */
|
|
81
|
+
const DEFAULT_VIDEO_POLL_INTERVAL_MS = 5000;
|
|
82
|
+
const DEFAULT_VIDEO_TIMEOUT_MS = 5 * 60000;
|
|
83
|
+
function mapVideo(raw) {
|
|
84
|
+
return {
|
|
85
|
+
url: raw.url,
|
|
86
|
+
...(raw.content_type !== undefined && { contentType: raw.content_type }),
|
|
87
|
+
...(raw.file_id !== undefined && { fileId: raw.file_id }),
|
|
88
|
+
...(raw.storage_error !== undefined && { storageError: raw.storage_error }),
|
|
89
|
+
};
|
|
90
|
+
}
|
|
91
|
+
function mapVideoResult(raw) {
|
|
92
|
+
const { video, ...rest } = raw;
|
|
93
|
+
return video === undefined ? { ...rest } : { ...rest, video: mapVideo(video) };
|
|
94
|
+
}
|
|
95
|
+
const sleep = (ms) => new Promise((resolve) => setTimeout(resolve, ms));
|
|
96
|
+
/**
|
|
97
|
+
* Generate a video from a prompt. Video generation is asynchronous: this submits the
|
|
98
|
+
* job, then polls the result through Sapiom until it's ready and returns it — so you
|
|
99
|
+
* `await` it just like {@link createImage}, it just takes longer. Pass `storage` to
|
|
100
|
+
* persist the output (the returned `video` then carries `fileId`). Throws
|
|
101
|
+
* {@link ContentGenerationHttpError} on a failed submit, or an `Error` if the result
|
|
102
|
+
* isn't ready within `timeoutMs`.
|
|
103
|
+
*/
|
|
104
|
+
async function createVideo(input, transport = (0, index_js_1.defaultTransport)(), baseUrl = DEFAULT_BASE_URL) {
|
|
105
|
+
const path = modelToPath(input.model || DEFAULT_VIDEO_MODEL);
|
|
106
|
+
const body = { prompt: input.prompt, ...input.params };
|
|
107
|
+
// Truthy check (not `!== undefined`) so `storage: null` is treated as "no storage".
|
|
108
|
+
if (input.storage)
|
|
109
|
+
body.storage = input.storage;
|
|
110
|
+
// Submit — for an async model Sapiom returns a queue handle, not the result.
|
|
111
|
+
const submitRes = await (0, errors_js_1.ensureOk)(await transport.fetch(`${baseUrl}/run/${path}`, {
|
|
112
|
+
method: "POST",
|
|
113
|
+
headers: { "content-type": "application/json" },
|
|
114
|
+
body: JSON.stringify(body),
|
|
115
|
+
}), "Failed to submit video generation");
|
|
116
|
+
const handle = (await submitRes.json());
|
|
117
|
+
if (!handle.response_url) {
|
|
118
|
+
throw new Error("Video submit did not return a result URL to poll");
|
|
119
|
+
}
|
|
120
|
+
// Poll the result THROUGH Sapiom until it's ready. The poll is what persists the
|
|
121
|
+
// output when `storage` was requested, so `fileId` is filled in by the time it returns.
|
|
122
|
+
const intervalMs = input.pollIntervalMs ?? DEFAULT_VIDEO_POLL_INTERVAL_MS;
|
|
123
|
+
const timeoutMs = input.timeoutMs ?? DEFAULT_VIDEO_TIMEOUT_MS;
|
|
124
|
+
const deadline = Date.now() + timeoutMs;
|
|
125
|
+
while (Date.now() < deadline) {
|
|
126
|
+
const res = await transport.fetch(handle.response_url, { method: "GET" });
|
|
127
|
+
if (res.ok) {
|
|
128
|
+
const raw = (await res.json());
|
|
129
|
+
if (raw.video?.url)
|
|
130
|
+
return mapVideoResult(raw);
|
|
131
|
+
}
|
|
132
|
+
else {
|
|
133
|
+
// Still generating, or a transient error. Drain the unread body so the
|
|
134
|
+
// connection can be reused, then keep polling — `timeoutMs` is the backstop
|
|
135
|
+
// for a result that never arrives.
|
|
136
|
+
try {
|
|
137
|
+
await res.body?.cancel();
|
|
138
|
+
}
|
|
139
|
+
catch {
|
|
140
|
+
// best-effort drain
|
|
141
|
+
}
|
|
142
|
+
}
|
|
143
|
+
await sleep(intervalMs);
|
|
144
|
+
}
|
|
145
|
+
throw new Error(`Video generation did not complete within ${timeoutMs}ms (request id: ${handle.request_id ?? "unknown"})`);
|
|
146
|
+
}
|
|
147
|
+
/** The `video` sub-namespace: `contentGeneration.video.create(...)`. Async (submit + poll). */
|
|
148
|
+
exports.video = { create: createVideo };
|
|
77
149
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/content-generation/index.ts"],"names":[],"mappings":";;;AAoIA,kCAyBC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/content-generation/index.ts"],"names":[],"mappings":"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"}
|
package/dist/cjs/index.d.ts
CHANGED
|
@@ -26,9 +26,11 @@ export { codingResultSchema, CodingResultSchemaError, toResumePayload, EXECUTION
|
|
|
26
26
|
export * as orchestrations from "./orchestrations/index.js";
|
|
27
27
|
export { ORCHESTRATIONS_RESULT_SIGNAL } from "./orchestrations/index.js";
|
|
28
28
|
export type { OrchestrationRunResultPayload } from "./orchestrations/index.js";
|
|
29
|
-
export { orchestrationResultSchema, OrchestrationResultSchemaError } from "./orchestrations/index.js";
|
|
29
|
+
export { orchestrationResultSchema, OrchestrationResultSchemaError, } from "./orchestrations/index.js";
|
|
30
30
|
export * as fileStorage from "./file-storage/index.js";
|
|
31
31
|
export { FileStorageHttpError } from "./file-storage/index.js";
|
|
32
32
|
export * as contentGeneration from "./content-generation/index.js";
|
|
33
33
|
export { ContentGenerationHttpError } from "./content-generation/index.js";
|
|
34
|
+
export * as search from "./search/index.js";
|
|
35
|
+
export { SearchHttpError } from "./search/index.js";
|
|
34
36
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/cjs/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AACH,OAAO,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAChE,YAAY,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAC1C,YAAY,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAIvE,YAAY,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAEpD,OAAO,KAAK,SAAS,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAE/C,OAAO,KAAK,YAAY,MAAM,yBAAyB,CAAC;AACxD,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAErD,OAAO,KAAK,KAAK,MAAM,kBAAkB,CAAC;AAE1C,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAGxD,YAAY,EACV,mBAAmB,EACnB,uBAAuB,GACxB,MAAM,kBAAkB,CAAC;AAG1B,OAAO,EACL,kBAAkB,EAClB,uBAAuB,EACvB,eAAe,EACf,oCAAoC,GACrC,MAAM,kBAAkB,CAAC;AAE1B,OAAO,KAAK,cAAc,MAAM,2BAA2B,CAAC;AAE5D,OAAO,EAAE,4BAA4B,EAAE,MAAM,2BAA2B,CAAC;AAGzE,YAAY,EAAE,6BAA6B,EAAE,MAAM,2BAA2B,CAAC;AAE/E,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AACH,OAAO,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAChE,YAAY,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAC1C,YAAY,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAIvE,YAAY,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAEpD,OAAO,KAAK,SAAS,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAE/C,OAAO,KAAK,YAAY,MAAM,yBAAyB,CAAC;AACxD,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAErD,OAAO,KAAK,KAAK,MAAM,kBAAkB,CAAC;AAE1C,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAGxD,YAAY,EACV,mBAAmB,EACnB,uBAAuB,GACxB,MAAM,kBAAkB,CAAC;AAG1B,OAAO,EACL,kBAAkB,EAClB,uBAAuB,EACvB,eAAe,EACf,oCAAoC,GACrC,MAAM,kBAAkB,CAAC;AAE1B,OAAO,KAAK,cAAc,MAAM,2BAA2B,CAAC;AAE5D,OAAO,EAAE,4BAA4B,EAAE,MAAM,2BAA2B,CAAC;AAGzE,YAAY,EAAE,6BAA6B,EAAE,MAAM,2BAA2B,CAAC;AAE/E,OAAO,EACL,yBAAyB,EACzB,8BAA8B,GAC/B,MAAM,2BAA2B,CAAC;AAEnC,OAAO,KAAK,WAAW,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAE/D,OAAO,KAAK,iBAAiB,MAAM,+BAA+B,CAAC;AACnE,OAAO,EAAE,0BAA0B,EAAE,MAAM,+BAA+B,CAAC;AAE3E,OAAO,KAAK,MAAM,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC"}
|
package/dist/cjs/index.js
CHANGED
|
@@ -33,7 +33,7 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
33
33
|
};
|
|
34
34
|
})();
|
|
35
35
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
-
exports.ContentGenerationHttpError = exports.contentGeneration = exports.FileStorageHttpError = exports.fileStorage = exports.OrchestrationResultSchemaError = exports.orchestrationResultSchema = exports.ORCHESTRATIONS_RESULT_SIGNAL = exports.orchestrations = exports.EXECUTION_ENVIRONMENT_BLAXEL_SANDBOX = exports.toResumePayload = exports.CodingResultSchemaError = exports.codingResultSchema = exports.CODING_RESULT_SIGNAL = exports.agent = exports.Repository = exports.repositories = exports.Sandbox = exports.sandboxes = exports.createClientFromEnv = exports.createClient = void 0;
|
|
36
|
+
exports.SearchHttpError = exports.search = exports.ContentGenerationHttpError = exports.contentGeneration = exports.FileStorageHttpError = exports.fileStorage = exports.OrchestrationResultSchemaError = exports.orchestrationResultSchema = exports.ORCHESTRATIONS_RESULT_SIGNAL = exports.orchestrations = exports.EXECUTION_ENVIRONMENT_BLAXEL_SANDBOX = exports.toResumePayload = exports.CodingResultSchemaError = exports.codingResultSchema = exports.CODING_RESULT_SIGNAL = exports.agent = exports.Repository = exports.repositories = exports.Sandbox = exports.sandboxes = exports.createClientFromEnv = exports.createClient = void 0;
|
|
37
37
|
/**
|
|
38
38
|
* `@sapiom/tools` — the typed Sapiom capability client.
|
|
39
39
|
*
|
|
@@ -81,4 +81,7 @@ Object.defineProperty(exports, "FileStorageHttpError", { enumerable: true, get:
|
|
|
81
81
|
exports.contentGeneration = __importStar(require("./content-generation/index.js"));
|
|
82
82
|
var index_js_8 = require("./content-generation/index.js");
|
|
83
83
|
Object.defineProperty(exports, "ContentGenerationHttpError", { enumerable: true, get: function () { return index_js_8.ContentGenerationHttpError; } });
|
|
84
|
+
exports.search = __importStar(require("./search/index.js"));
|
|
85
|
+
var index_js_9 = require("./search/index.js");
|
|
86
|
+
Object.defineProperty(exports, "SearchHttpError", { enumerable: true, get: function () { return index_js_9.SearchHttpError; } });
|
|
84
87
|
//# sourceMappingURL=index.js.map
|
package/dist/cjs/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;;;;;;;;;;;GAYG;AACH,yCAAgE;AAAvD,yGAAA,YAAY,OAAA;AAAE,gHAAA,mBAAmB,OAAA;AAQ1C,kEAAkD;AAClD,iDAA+C;AAAtC,mGAAA,OAAO,OAAA;AAEhB,wEAAwD;AACxD,oDAAqD;AAA5C,sGAAA,UAAU,OAAA;AAEnB,0DAA0C;AAC1C,iFAAiF;AACjF,6CAAwD;AAA/C,gHAAA,oBAAoB,OAAA;AAO7B,+EAA+E;AAC/E,2CAA2C;AAC3C,6CAK0B;AAJxB,8GAAA,kBAAkB,OAAA;AAClB,mHAAA,uBAAuB,OAAA;AACvB,2GAAA,eAAe,OAAA;AACf,gIAAA,oCAAoC,OAAA;AAGtC,4EAA4D;AAC5D,iFAAiF;AACjF,sDAAyE;AAAhE,wHAAA,4BAA4B,OAAA;AAIrC,oEAAoE;AACpE,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;;;;;;;;;;;GAYG;AACH,yCAAgE;AAAvD,yGAAA,YAAY,OAAA;AAAE,gHAAA,mBAAmB,OAAA;AAQ1C,kEAAkD;AAClD,iDAA+C;AAAtC,mGAAA,OAAO,OAAA;AAEhB,wEAAwD;AACxD,oDAAqD;AAA5C,sGAAA,UAAU,OAAA;AAEnB,0DAA0C;AAC1C,iFAAiF;AACjF,6CAAwD;AAA/C,gHAAA,oBAAoB,OAAA;AAO7B,+EAA+E;AAC/E,2CAA2C;AAC3C,6CAK0B;AAJxB,8GAAA,kBAAkB,OAAA;AAClB,mHAAA,uBAAuB,OAAA;AACvB,2GAAA,eAAe,OAAA;AACf,gIAAA,oCAAoC,OAAA;AAGtC,4EAA4D;AAC5D,iFAAiF;AACjF,sDAAyE;AAAhE,wHAAA,4BAA4B,OAAA;AAIrC,oEAAoE;AACpE,sDAGmC;AAFjC,qHAAA,yBAAyB,OAAA;AACzB,0HAAA,8BAA8B,OAAA;AAGhC,uEAAuD;AACvD,oDAA+D;AAAtD,gHAAA,oBAAoB,OAAA;AAE7B,mFAAmE;AACnE,0DAA2E;AAAlE,sHAAA,0BAA0B,OAAA;AAEnC,4DAA4C;AAC5C,8CAAoD;AAA3C,2GAAA,eAAe,OAAA"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Error thrown by the `search` capability when a request fails (non-2xx
|
|
3
|
+
* response). Exposes `status` (HTTP status code) and `body` (parsed JSON body, or
|
|
4
|
+
* raw text when the body isn't JSON) for programmatic inspection.
|
|
5
|
+
*/
|
|
6
|
+
export declare class SearchHttpError extends Error {
|
|
7
|
+
readonly status: number;
|
|
8
|
+
readonly body: unknown;
|
|
9
|
+
constructor(message: string, status: number, body: unknown);
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* Return the response when 2xx, otherwise throw a {@link SearchHttpError}.
|
|
13
|
+
* Parses the error body as JSON when possible; falls back to raw text.
|
|
14
|
+
*/
|
|
15
|
+
export declare function ensureOk(response: Response, errorPrefix: string): Promise<Response>;
|
|
16
|
+
//# sourceMappingURL=errors.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../../src/search/errors.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,qBAAa,eAAgB,SAAQ,KAAK;IACxC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;gBAEX,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO;CAM3D;AAED;;;GAGG;AACH,wBAAsB,QAAQ,CAC5B,QAAQ,EAAE,QAAQ,EAClB,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,QAAQ,CAAC,CAcnB"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.SearchHttpError = void 0;
|
|
4
|
+
exports.ensureOk = ensureOk;
|
|
5
|
+
/**
|
|
6
|
+
* Error thrown by the `search` capability when a request fails (non-2xx
|
|
7
|
+
* response). Exposes `status` (HTTP status code) and `body` (parsed JSON body, or
|
|
8
|
+
* raw text when the body isn't JSON) for programmatic inspection.
|
|
9
|
+
*/
|
|
10
|
+
class SearchHttpError extends Error {
|
|
11
|
+
constructor(message, status, body) {
|
|
12
|
+
super(message);
|
|
13
|
+
this.name = "SearchHttpError";
|
|
14
|
+
this.status = status;
|
|
15
|
+
this.body = body;
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
exports.SearchHttpError = SearchHttpError;
|
|
19
|
+
/**
|
|
20
|
+
* Return the response when 2xx, otherwise throw a {@link SearchHttpError}.
|
|
21
|
+
* Parses the error body as JSON when possible; falls back to raw text.
|
|
22
|
+
*/
|
|
23
|
+
async function ensureOk(response, errorPrefix) {
|
|
24
|
+
if (response.ok)
|
|
25
|
+
return response;
|
|
26
|
+
let body;
|
|
27
|
+
const text = await response.text().catch(() => "");
|
|
28
|
+
try {
|
|
29
|
+
body = JSON.parse(text);
|
|
30
|
+
}
|
|
31
|
+
catch {
|
|
32
|
+
body = text;
|
|
33
|
+
}
|
|
34
|
+
throw new SearchHttpError(`${errorPrefix}: ${response.status} ${text}`, response.status, body);
|
|
35
|
+
}
|
|
36
|
+
//# sourceMappingURL=errors.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../../src/search/errors.ts"],"names":[],"mappings":";;;AAqBA,4BAiBC;AAtCD;;;;GAIG;AACH,MAAa,eAAgB,SAAQ,KAAK;IAIxC,YAAY,OAAe,EAAE,MAAc,EAAE,IAAa;QACxD,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,iBAAiB,CAAC;QAC9B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;CACF;AAVD,0CAUC;AAED;;;GAGG;AACI,KAAK,UAAU,QAAQ,CAC5B,QAAkB,EAClB,WAAmB;IAEnB,IAAI,QAAQ,CAAC,EAAE;QAAE,OAAO,QAAQ,CAAC;IACjC,IAAI,IAAa,CAAC;IAClB,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;IACnD,IAAI,CAAC;QACH,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;IAAC,MAAM,CAAC;QACP,IAAI,GAAG,IAAI,CAAC;IACd,CAAC;IACD,MAAM,IAAI,eAAe,CACvB,GAAG,WAAW,KAAK,QAAQ,CAAC,MAAM,IAAI,IAAI,EAAE,EAC5C,QAAQ,CAAC,MAAM,EACf,IAAI,CACL,CAAC;AACJ,CAAC"}
|