@arizeai/phoenix-client 7.12.0 → 7.13.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.
@@ -0,0 +1,2 @@
1
+ export * from "./upsertOrDeleteSecrets";
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/secrets/index.ts"],"names":[],"mappings":"AAAA,cAAc,yBAAyB,CAAC"}
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./upsertOrDeleteSecrets"), exports);
18
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/secrets/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0DAAwC"}
@@ -0,0 +1,60 @@
1
+ import type { ClientFn } from "../types/core";
2
+ /**
3
+ * A secret to create, update, or delete.
4
+ */
5
+ export interface SecretInput {
6
+ /** The environment-style key used to identify the secret. */
7
+ key: string;
8
+ /** A value to create or update, or `null` to delete the key. */
9
+ value: string | null;
10
+ }
11
+ /**
12
+ * Parameters for atomically updating secrets.
13
+ */
14
+ export interface UpsertOrDeleteSecretsParams extends ClientFn {
15
+ /**
16
+ * Ordered secret updates. When a key occurs more than once, the server
17
+ * applies only its last occurrence.
18
+ */
19
+ secrets: SecretInput[];
20
+ }
21
+ /**
22
+ * The names of the keys changed by a secrets update.
23
+ *
24
+ * Secret values are intentionally excluded.
25
+ */
26
+ export interface UpsertOrDeleteSecretsResult {
27
+ /** Keys that were created or updated. */
28
+ upsertedKeys: string[];
29
+ /** Keys that were deleted. */
30
+ deletedKeys: string[];
31
+ }
32
+ /**
33
+ * Atomically create, update, or delete a batch of Phoenix secrets.
34
+ *
35
+ * A non-null value creates or updates a secret, while `null` deletes it.
36
+ * Duplicate keys use the last occurrence in the batch. The result contains
37
+ * key names only; submitted values are never returned or logged.
38
+ *
39
+ * @param params - The secrets update.
40
+ * @param params.client - Optional Phoenix client instance.
41
+ * @param params.secrets - Ordered key/value-or-null updates.
42
+ * @returns The names of the keys that were upserted and deleted.
43
+ *
44
+ * @example
45
+ * ```ts
46
+ * import { upsertOrDeleteSecrets } from "@arizeai/phoenix-client/secrets";
47
+ *
48
+ * const apiKey = process.env.OPENAI_API_KEY;
49
+ * if (!apiKey) throw new Error("OPENAI_API_KEY is required");
50
+ *
51
+ * const result = await upsertOrDeleteSecrets({
52
+ * secrets: [
53
+ * { key: "OPENAI_API_KEY", value: apiKey },
54
+ * { key: "OLD_PROVIDER_API_KEY", value: null },
55
+ * ],
56
+ * });
57
+ * ```
58
+ */
59
+ export declare function upsertOrDeleteSecrets({ client: _client, secrets, }: UpsertOrDeleteSecretsParams): Promise<UpsertOrDeleteSecretsResult>;
60
+ //# sourceMappingURL=upsertOrDeleteSecrets.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"upsertOrDeleteSecrets.d.ts","sourceRoot":"","sources":["../../../src/secrets/upsertOrDeleteSecrets.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAE9C;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,6DAA6D;IAC7D,GAAG,EAAE,MAAM,CAAC;IACZ,gEAAgE;IAChE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,2BAA4B,SAAQ,QAAQ;IAC3D;;;OAGG;IACH,OAAO,EAAE,WAAW,EAAE,CAAC;CACxB;AAED;;;;GAIG;AACH,MAAM,WAAW,2BAA2B;IAC1C,yCAAyC;IACzC,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,8BAA8B;IAC9B,WAAW,EAAE,MAAM,EAAE,CAAC;CACvB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAsB,qBAAqB,CAAC,EAC1C,MAAM,EAAE,OAAO,EACf,OAAO,GACR,EAAE,2BAA2B,GAAG,OAAO,CAAC,2BAA2B,CAAC,CAoBpE"}
@@ -0,0 +1,50 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.upsertOrDeleteSecrets = upsertOrDeleteSecrets;
4
+ const client_1 = require("../client");
5
+ /**
6
+ * Atomically create, update, or delete a batch of Phoenix secrets.
7
+ *
8
+ * A non-null value creates or updates a secret, while `null` deletes it.
9
+ * Duplicate keys use the last occurrence in the batch. The result contains
10
+ * key names only; submitted values are never returned or logged.
11
+ *
12
+ * @param params - The secrets update.
13
+ * @param params.client - Optional Phoenix client instance.
14
+ * @param params.secrets - Ordered key/value-or-null updates.
15
+ * @returns The names of the keys that were upserted and deleted.
16
+ *
17
+ * @example
18
+ * ```ts
19
+ * import { upsertOrDeleteSecrets } from "@arizeai/phoenix-client/secrets";
20
+ *
21
+ * const apiKey = process.env.OPENAI_API_KEY;
22
+ * if (!apiKey) throw new Error("OPENAI_API_KEY is required");
23
+ *
24
+ * const result = await upsertOrDeleteSecrets({
25
+ * secrets: [
26
+ * { key: "OPENAI_API_KEY", value: apiKey },
27
+ * { key: "OLD_PROVIDER_API_KEY", value: null },
28
+ * ],
29
+ * });
30
+ * ```
31
+ */
32
+ async function upsertOrDeleteSecrets({ client: _client, secrets, }) {
33
+ const client = _client !== null && _client !== void 0 ? _client : (0, client_1.createClient)();
34
+ const { data, error } = await client.PUT("/v1/secrets", {
35
+ body: { secrets },
36
+ });
37
+ // Do not include the server error payload here: validation responses can be
38
+ // influenced by submitted data, which must never enter helper error text.
39
+ if (error) {
40
+ throw new Error("Failed to upsert or delete secrets");
41
+ }
42
+ if (!(data === null || data === void 0 ? void 0 : data.data)) {
43
+ throw new Error("Failed to upsert or delete secrets: no data returned");
44
+ }
45
+ return {
46
+ upsertedKeys: data.data.upserted_keys,
47
+ deletedKeys: data.data.deleted_keys,
48
+ };
49
+ }
50
+ //# sourceMappingURL=upsertOrDeleteSecrets.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"upsertOrDeleteSecrets.js","sourceRoot":"","sources":["../../../src/secrets/upsertOrDeleteSecrets.ts"],"names":[],"mappings":";;;AAAA,sCAAyC;AAoCzC;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACI,KAAK,gCAAgC,EAC1C,MAAM,EAAE,OAAO,EACf,OAAO,GACqB;IAC5B,MAAM,MAAM,GAAG,OAAO,aAAP,OAAO,cAAP,OAAO,GAAI,IAAA,qBAAY,GAAE,CAAC;IACzC,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,MAAM,CAAC,GAAG,CAAC,aAAa,EAAE;QACtD,IAAI,EAAE,EAAE,OAAO,EAAE;KAClB,CAAC,CAAC;IAEH,4EAA4E;IAC5E,0EAA0E;IAC1E,IAAI,KAAK,EAAE,CAAC;QACV,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAC;IACxD,CAAC;IAED,IAAI,EAAC,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,IAAI,CAAA,EAAE,CAAC;QAChB,MAAM,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAC;IAC1E,CAAC;IAED,OAAO;QACL,YAAY,EAAE,IAAI,CAAC,IAAI,CAAC,aAAa;QACrC,WAAW,EAAE,IAAI,CAAC,IAAI,CAAC,YAAY;KACpC,CAAC;AACJ,CAAC"}