pi-provider-litellm 0.1.4 → 1.2.1

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/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # pi-provider-litellm
2
2
 
3
- LiteLLM proxy provider extension for [pi-mono](https://github.com/badlogic/pi-mono).
3
+ LiteLLM proxy provider extension for [Pi](https://pi.dev).
4
4
 
5
5
  Discovers models from a self-hosted LiteLLM proxy and registers them under the `litellm` provider. Supports `/login litellm` and `/litellm-refresh`. Tries `/model/info` first (admin endpoint with rich metadata), falls back to `/v1/models` (OpenAI-compatible) on 401/403/404.
6
6
 
@@ -32,14 +32,7 @@ npm run build
32
32
 
33
33
  ## Configure
34
34
 
35
- ### Option A — environment variables
36
-
37
- ```bash
38
- export LITELLM_BASE_URL="https://litellm.your-domain.com"
39
- export LITELLM_API_KEY="sk-..."
40
- ```
41
-
42
- ### Option B — interactive login
35
+ ### Option A — interactive login
43
36
 
44
37
  Inside pi:
45
38
 
@@ -49,16 +42,21 @@ Inside pi:
49
42
 
50
43
  You'll be prompted for the base URL and API key. Credentials are persisted to `~/.pi/agent/auth.json`.
51
44
 
45
+ ### Option B — environment variables
46
+
47
+ ```bash
48
+ export LITELLM_BASE_URL="https://litellm.your-domain.com"
49
+ export LITELLM_API_KEY="sk-..."
50
+ ```
51
+
52
52
  Stored pi credentials for `litellm` take precedence over `LITELLM_API_KEY`; the environment key is used when no saved credential exists. `LITELLM_BASE_URL` is used when no saved login base URL exists.
53
53
 
54
54
  ## Use
55
55
 
56
56
  ```
57
- /model litellm/anthropic/claude-3-5-sonnet
57
+ /model
58
58
  ```
59
59
 
60
- (Whatever model IDs your proxy exposes — see the discovered list at startup.)
61
-
62
60
  ## Optional environment variables
63
61
 
64
62
  | Variable | Default | Effect |
@@ -74,7 +72,7 @@ Stored pi credentials for `litellm` take precedence over `LITELLM_API_KEY`; the
74
72
 
75
73
  ## Cache
76
74
 
77
- The model list is cached at `~/.pi/agent/litellm-models.json` with a sha256 fingerprint of the base URL + API key. Changing either invalidates the cache automatically.
75
+ The model list is cached at `~/.pi/agent/litellm-models.json` with a keyed fingerprint of the base URL + API key. Changing either invalidates the cache automatically.
78
76
 
79
77
  ## Troubleshooting
80
78
 
package/dist/cache.d.ts CHANGED
@@ -3,4 +3,3 @@ export declare function fingerprint(apiKey: string): string;
3
3
  export declare function isCacheValid(cache: CacheFile | null, baseUrl: string, apiKey: string): boolean;
4
4
  export declare function readCache(path: string): Promise<CacheFile | null>;
5
5
  export declare function writeCache(path: string, cache: CacheFile): Promise<void>;
6
- //# sourceMappingURL=cache.d.ts.map
package/dist/cache.js CHANGED
@@ -1,8 +1,9 @@
1
- import { createHash } from "node:crypto";
1
+ import { scryptSync } from "node:crypto";
2
2
  import { mkdir, readFile, rename, writeFile } from "node:fs/promises";
3
3
  import { dirname } from "node:path";
4
+ const FINGERPRINT_SALT = "pi-provider-litellm-cache-fingerprint-v1";
4
5
  export function fingerprint(apiKey) {
5
- return createHash("sha256").update(apiKey).digest("hex");
6
+ return scryptSync(apiKey, FINGERPRINT_SALT, 32).toString("hex");
6
7
  }
7
8
  export function isCacheValid(cache, baseUrl, apiKey) {
8
9
  if (!cache)
@@ -44,4 +45,3 @@ export async function writeCache(path, cache) {
44
45
  await writeFile(tmp, JSON.stringify(cache, null, 2), "utf8");
45
46
  await rename(tmp, path);
46
47
  }
47
- //# sourceMappingURL=cache.js.map
package/dist/cost.d.ts ADDED
@@ -0,0 +1,8 @@
1
+ import type { ExtensionAPI } from "@earendil-works/pi-coding-agent";
2
+ export interface ModelCostInfo {
3
+ inputCostPerToken: number;
4
+ outputCostPerToken: number;
5
+ cacheReadCostPerToken: number;
6
+ cacheWriteCostPerToken: number;
7
+ }
8
+ export declare function setupLiteLLMCostTracking(pi: ExtensionAPI): void;
package/dist/cost.js ADDED
@@ -0,0 +1,135 @@
1
+ import { resolveCredentials } from "./litellm.js";
2
+ export function setupLiteLLMCostTracking(pi) {
3
+ const modelCosts = new Map();
4
+ let lastResponseCost = null;
5
+ pi.on("session_start", async (_event, ctx) => {
6
+ try {
7
+ const config = await resolveCredentials();
8
+ if (!config.baseUrl || !config.apiKey) {
9
+ ctx.ui?.notify?.("LiteLLM cost extension: no credentials configured", "warning");
10
+ return;
11
+ }
12
+ const response = await fetch(`${config.baseUrl}/model/info`, {
13
+ headers: {
14
+ Authorization: `Bearer ${config.apiKey}`,
15
+ Accept: "application/json",
16
+ },
17
+ });
18
+ if (!response.ok) {
19
+ ctx.ui?.notify?.(`LiteLLM cost extension: /model/info returned ${response.status}`, "warning");
20
+ return;
21
+ }
22
+ const payload = (await response.json());
23
+ for (const entry of payload.data) {
24
+ const info = entry.model_info;
25
+ if (!info)
26
+ continue;
27
+ const costInfo = {
28
+ inputCostPerToken: info.input_cost_per_token ?? 0,
29
+ outputCostPerToken: info.output_cost_per_token ?? 0,
30
+ cacheReadCostPerToken: info.cache_read_input_token_cost ?? 0,
31
+ cacheWriteCostPerToken: info.cache_creation_input_token_cost ?? 0,
32
+ };
33
+ modelCosts.set(entry.model_name, costInfo);
34
+ if (entry.litellm_params?.model) {
35
+ modelCosts.set(entry.litellm_params.model, costInfo);
36
+ }
37
+ }
38
+ if (modelCosts.size > 0) {
39
+ ctx.ui?.notify?.(`LiteLLM cost: loaded pricing for ${modelCosts.size} model(s)`, "info");
40
+ }
41
+ }
42
+ catch (error) {
43
+ ctx.ui?.notify?.(`LiteLLM cost extension: could not fetch /model/info (${error instanceof Error ? error.message : String(error)})`, "warning");
44
+ }
45
+ });
46
+ pi.on("after_provider_response", (event) => {
47
+ const costHeader = event.headers?.["x-litellm-response-cost"] ?? event.headers?.["X-Litellm-Response-Cost"];
48
+ if (costHeader) {
49
+ const cost = Number.parseFloat(String(costHeader));
50
+ if (!Number.isNaN(cost)) {
51
+ lastResponseCost = cost;
52
+ return;
53
+ }
54
+ }
55
+ lastResponseCost = null;
56
+ });
57
+ pi.on("message_end", async (event) => {
58
+ if (event.message.role !== "assistant")
59
+ return;
60
+ const usage = event.message.usage;
61
+ if (!usage)
62
+ return;
63
+ let totalCost = null;
64
+ if (lastResponseCost !== null) {
65
+ totalCost = lastResponseCost;
66
+ lastResponseCost = null;
67
+ }
68
+ if (totalCost === null) {
69
+ const modelId = event.message.model;
70
+ const costInfo = modelId ? modelCosts.get(modelId) : undefined;
71
+ if (costInfo) {
72
+ const inputCost = costInfo.inputCostPerToken * usage.input;
73
+ const outputCost = costInfo.outputCostPerToken * usage.output;
74
+ const cacheReadCost = costInfo.cacheReadCostPerToken * (usage.cacheRead ?? 0);
75
+ const cacheWriteCost = costInfo.cacheWriteCostPerToken * (usage.cacheWrite ?? 0);
76
+ totalCost = inputCost + outputCost + cacheReadCost + cacheWriteCost;
77
+ return {
78
+ message: {
79
+ ...event.message,
80
+ usage: {
81
+ ...usage,
82
+ cost: {
83
+ input: inputCost,
84
+ output: outputCost,
85
+ cacheRead: cacheReadCost,
86
+ cacheWrite: cacheWriteCost,
87
+ total: totalCost,
88
+ },
89
+ },
90
+ },
91
+ };
92
+ }
93
+ }
94
+ if (totalCost !== null) {
95
+ const totalTokens = usage.input + usage.output + (usage.cacheRead ?? 0) + (usage.cacheWrite ?? 0);
96
+ if (totalTokens > 0) {
97
+ const inputFraction = usage.input / totalTokens;
98
+ const outputFraction = usage.output / totalTokens;
99
+ const cacheReadFraction = (usage.cacheRead ?? 0) / totalTokens;
100
+ const cacheWriteFraction = (usage.cacheWrite ?? 0) / totalTokens;
101
+ return {
102
+ message: {
103
+ ...event.message,
104
+ usage: {
105
+ ...usage,
106
+ cost: {
107
+ input: totalCost * inputFraction,
108
+ output: totalCost * outputFraction,
109
+ cacheRead: totalCost * cacheReadFraction,
110
+ cacheWrite: totalCost * cacheWriteFraction,
111
+ total: totalCost,
112
+ },
113
+ },
114
+ },
115
+ };
116
+ }
117
+ return {
118
+ message: {
119
+ ...event.message,
120
+ usage: {
121
+ ...usage,
122
+ cost: {
123
+ input: 0,
124
+ output: 0,
125
+ cacheRead: 0,
126
+ cacheWrite: 0,
127
+ total: totalCost,
128
+ },
129
+ },
130
+ },
131
+ };
132
+ }
133
+ return;
134
+ });
135
+ }
@@ -1,6 +1,5 @@
1
- import type { ProviderModelConfig } from "@mariozechner/pi-coding-agent";
1
+ import type { ProviderModelConfig } from "@earendil-works/pi-coding-agent";
2
2
  import type { DiscoveryOptions, DiscoveryResult } from "./types.js";
3
3
  export declare function normalizeBaseUrl(input: string): string;
4
4
  export declare function buildCompat(modelId: string): ProviderModelConfig["compat"];
5
5
  export declare function discoverModels(baseUrl: string, apiKey: string, options?: DiscoveryOptions): Promise<DiscoveryResult>;
6
- //# sourceMappingURL=discover.d.ts.map
package/dist/discover.js CHANGED
@@ -10,7 +10,17 @@ export function normalizeBaseUrl(input) {
10
10
  // `cacheControlFormat: "anthropic"` flag, pi never relays cache_control markers
11
11
  // through the proxy, so prompt caching silently no-ops on Claude models.
12
12
  const ANTHROPIC_MODEL_PATTERN = /^(anthropic\/|claude|opus|sonnet|haiku)/i;
13
+ const MOONSHOT_MODEL_PATTERN = /^(moonshotai\/|moonshot\/|kimi[-/])/i;
13
14
  export function buildCompat(modelId) {
15
+ if (MOONSHOT_MODEL_PATTERN.test(modelId)) {
16
+ return {
17
+ supportsStore: false,
18
+ supportsDeveloperRole: false,
19
+ supportsReasoningEffort: false,
20
+ supportsStrictMode: false,
21
+ maxTokensField: "max_tokens",
22
+ };
23
+ }
14
24
  if (ANTHROPIC_MODEL_PATTERN.test(modelId)) {
15
25
  return { supportsStore: false, cacheControlFormat: "anthropic" };
16
26
  }
@@ -110,4 +120,3 @@ export async function discoverModels(baseUrl, apiKey, options = {}) {
110
120
  .filter((m) => m !== undefined);
111
121
  return { source: "models_list", models };
112
122
  }
113
- //# sourceMappingURL=discover.js.map
package/dist/index.d.ts CHANGED
@@ -1,3 +1,2 @@
1
- import type { ExtensionAPI } from "@mariozechner/pi-coding-agent";
1
+ import type { ExtensionAPI } from "@earendil-works/pi-coding-agent";
2
2
  export default function (pi: ExtensionAPI): Promise<void>;
3
- //# sourceMappingURL=index.d.ts.map
package/dist/index.js CHANGED
@@ -1,8 +1,10 @@
1
1
  import { readFile } from "node:fs/promises";
2
2
  import { join } from "node:path";
3
- import { AuthStorage, getAgentDir } from "@mariozechner/pi-coding-agent";
3
+ import { AuthStorage, getAgentDir } from "@earendil-works/pi-coding-agent";
4
4
  import { fingerprint, readCache, writeCache } from "./cache.js";
5
+ import { setupLiteLLMCostTracking } from "./cost.js";
5
6
  import { discoverModels, normalizeBaseUrl } from "./discover.js";
7
+ import { getSessionIdFromFile } from "./litellm.js";
6
8
  const PROVIDER_NAME = "litellm";
7
9
  const ENV_BASE_URL = "LITELLM_BASE_URL";
8
10
  const ENV_API_KEY = "LITELLM_API_KEY";
@@ -207,5 +209,19 @@ export default async function (pi) {
207
209
  }
208
210
  },
209
211
  });
212
+ setupLiteLLMCostTracking(pi);
213
+ let sessionId;
214
+ pi.on("session_start", async (_event, ctx) => {
215
+ sessionId = getSessionIdFromFile(ctx.sessionManager.getSessionFile());
216
+ });
217
+ pi.on("before_provider_request", (event) => {
218
+ if (!sessionId)
219
+ return;
220
+ if (typeof event.payload !== "object" || event.payload === null)
221
+ return;
222
+ return {
223
+ ...event.payload,
224
+ litellm_session_id: sessionId,
225
+ };
226
+ });
210
227
  }
211
- //# sourceMappingURL=index.js.map
@@ -0,0 +1,18 @@
1
+ import type { OAuthCredentials } from "@earendil-works/pi-ai";
2
+ import type { ResolvedCredentials } from "./types.js";
3
+ export declare const PROVIDER_NAME = "litellm";
4
+ export declare const ENV_BASE_URL = "LITELLM_BASE_URL";
5
+ export declare const ENV_API_KEY = "LITELLM_API_KEY";
6
+ export declare const ENV_TIMEOUT = "LITELLM_DISCOVERY_TIMEOUT_MS";
7
+ export declare const ENV_OFFLINE = "LITELLM_OFFLINE";
8
+ export declare const DEFAULT_TIMEOUT_MS = 5000;
9
+ export declare const LOGIN_TIMEOUT_MS = 10000;
10
+ export declare const CACHE_FILENAME = "litellm-models.json";
11
+ export declare function getAuthPath(): string;
12
+ export declare function getCachePath(): string;
13
+ export declare function resolveCredentials(): Promise<ResolvedCredentials>;
14
+ export declare function getDiscoveryTimeoutMs(): number;
15
+ export declare function isOffline(): boolean;
16
+ export declare function isListModelsMode(): boolean;
17
+ export declare function getSessionIdFromFile(sessionFile?: string): string | undefined;
18
+ export type { OAuthCredentials };
@@ -0,0 +1,71 @@
1
+ import { readFile } from "node:fs/promises";
2
+ import { join } from "node:path";
3
+ import { AuthStorage, getAgentDir } from "@earendil-works/pi-coding-agent";
4
+ import { normalizeBaseUrl } from "./discover.js";
5
+ export const PROVIDER_NAME = "litellm";
6
+ export const ENV_BASE_URL = "LITELLM_BASE_URL";
7
+ export const ENV_API_KEY = "LITELLM_API_KEY";
8
+ export const ENV_TIMEOUT = "LITELLM_DISCOVERY_TIMEOUT_MS";
9
+ export const ENV_OFFLINE = "LITELLM_OFFLINE";
10
+ export const DEFAULT_TIMEOUT_MS = 5000;
11
+ export const LOGIN_TIMEOUT_MS = 10_000;
12
+ export const CACHE_FILENAME = "litellm-models.json";
13
+ export function getAuthPath() {
14
+ return join(getAgentDir(), "auth.json");
15
+ }
16
+ export function getCachePath() {
17
+ return join(getAgentDir(), CACHE_FILENAME);
18
+ }
19
+ async function readAuthEntry() {
20
+ try {
21
+ const raw = await readFile(getAuthPath(), "utf8");
22
+ const parsed = JSON.parse(raw);
23
+ return parsed?.[PROVIDER_NAME];
24
+ }
25
+ catch {
26
+ return undefined;
27
+ }
28
+ }
29
+ export async function resolveCredentials() {
30
+ const entry = await readAuthEntry();
31
+ const envBase = process.env[ENV_BASE_URL]?.trim();
32
+ const envKey = process.env[ENV_API_KEY]?.trim();
33
+ const authBase = entry?.type === "oauth" ? entry.baseUrl?.trim() : undefined;
34
+ const authKey = entry?.type === "oauth"
35
+ ? entry.access?.trim()
36
+ : entry?.type === "api_key"
37
+ ? (await AuthStorage.create(getAuthPath()).getApiKey(PROVIDER_NAME, { includeFallback: false }))?.trim()
38
+ : undefined;
39
+ const rawBase = authBase || envBase;
40
+ return {
41
+ baseUrl: rawBase ? normalizeBaseUrl(rawBase) : undefined,
42
+ apiKey: authKey || envKey || undefined,
43
+ };
44
+ }
45
+ export function getDiscoveryTimeoutMs() {
46
+ const raw = process.env[ENV_TIMEOUT];
47
+ if (raw === undefined)
48
+ return DEFAULT_TIMEOUT_MS;
49
+ const parsed = Number.parseInt(raw, 10);
50
+ if (Number.isNaN(parsed) || parsed < 0)
51
+ return DEFAULT_TIMEOUT_MS;
52
+ return parsed;
53
+ }
54
+ export function isOffline() {
55
+ return process.env[ENV_OFFLINE] === "1";
56
+ }
57
+ export function isListModelsMode() {
58
+ return process.argv.includes("--list-models");
59
+ }
60
+ export function getSessionIdFromFile(sessionFile) {
61
+ if (!sessionFile)
62
+ return undefined;
63
+ const filename = sessionFile
64
+ .split("/")
65
+ .pop()
66
+ ?.replace(/\.jsonl$/i, "");
67
+ if (!filename)
68
+ return undefined;
69
+ const uuidMatch = filename.match(/([0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12})$/i);
70
+ return uuidMatch?.[1] ?? filename;
71
+ }
package/dist/types.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import type { ProviderModelConfig } from "@mariozechner/pi-coding-agent";
1
+ import type { ProviderModelConfig } from "@earendil-works/pi-coding-agent";
2
2
  export type DiscoverySource = "model_info" | "models_list";
3
3
  export interface CacheFile {
4
4
  baseUrl: string;
@@ -52,4 +52,3 @@ export interface ResolvedCredentials {
52
52
  baseUrl?: string;
53
53
  apiKey?: string;
54
54
  }
55
- //# sourceMappingURL=types.d.ts.map
package/dist/types.js CHANGED
@@ -1,2 +1 @@
1
1
  export {};
2
- //# sourceMappingURL=types.js.map
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "pi-provider-litellm",
3
- "version": "0.1.4",
4
- "description": "LiteLLM proxy provider extension for pi-mono.",
3
+ "version": "1.2.1",
4
+ "description": "LiteLLM proxy provider extension for Pi",
5
5
  "type": "module",
6
6
  "license": "MIT",
7
7
  "author": "Dávid Balatoni <balcsida@gmail.com>",
@@ -54,18 +54,23 @@
54
54
  "node": ">=20.0.0"
55
55
  },
56
56
  "peerDependencies": {
57
- "@mariozechner/pi-ai": "^0.70.0",
58
- "@mariozechner/pi-coding-agent": "^0.70.0"
57
+ "@earendil-works/pi-ai": "^0.74.0",
58
+ "@earendil-works/pi-coding-agent": "^0.74.0"
59
+ },
60
+ "overrides": {
61
+ "basic-ftp": "6.0.1",
62
+ "fast-xml-builder": "1.2.0",
63
+ "protobufjs": "8.2.1"
59
64
  },
60
65
  "devDependencies": {
66
+ "@earendil-works/pi-ai": "^0.74.0",
67
+ "@earendil-works/pi-coding-agent": "^0.74.0",
61
68
  "@biomejs/biome": "^1.9.4",
62
- "@mariozechner/pi-ai": "^0.70.0",
63
- "@mariozechner/pi-coding-agent": "^0.70.0",
64
- "@types/node": "^24.3.0",
69
+ "@types/node": "^24.12.3",
65
70
  "@typescript/native-preview": "7.0.0-dev.20260120.1",
66
71
  "shx": "^0.4.0",
67
72
  "tsx": "^4.21.0",
68
- "typescript": "^5.7.3",
73
+ "typescript": "^5.9.3",
69
74
  "vitest": "^3.2.4"
70
75
  }
71
76
  }
@@ -1 +0,0 @@
1
- {"version":3,"file":"cache.d.ts","sourceRoot":"","sources":["../src/cache.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAE5C,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAElD;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAG9F;AAED,wBAAsB,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC,CAevE;AAcD,wBAAsB,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CAK9E"}
package/dist/cache.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"cache.js","sourceRoot":"","sources":["../src/cache.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AACtE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAGpC,MAAM,UAAU,WAAW,CAAC,MAAc,EAAU;IAClD,OAAO,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAAA,CAC1D;AAED,MAAM,UAAU,YAAY,CAAC,KAAuB,EAAE,OAAe,EAAE,MAAc,EAAW;IAC9F,IAAI,CAAC,KAAK;QAAE,OAAO,KAAK,CAAC;IACzB,OAAO,KAAK,CAAC,OAAO,KAAK,OAAO,IAAI,KAAK,CAAC,iBAAiB,KAAK,WAAW,CAAC,MAAM,CAAC,CAAC;AAAA,CACrF;AAED,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,IAAY,EAA6B;IACvE,IAAI,GAAW,CAAC;IAChB,IAAI,CAAC;QACH,GAAG,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IACrC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;IACD,IAAI,MAAe,CAAC;IACpB,IAAI,CAAC;QACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC3B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;IACD,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC;QAAE,OAAO,IAAI,CAAC;IAC3C,OAAO,MAAM,CAAC;AAAA,CACf;AAED,SAAS,gBAAgB,CAAC,KAAc,EAAsB;IAC5D,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI;QAAE,OAAO,KAAK,CAAC;IAC9D,MAAM,CAAC,GAAG,KAAgC,CAAC;IAC3C,OAAO,CACL,OAAO,CAAC,CAAC,OAAO,KAAK,QAAQ;QAC7B,OAAO,CAAC,CAAC,iBAAiB,KAAK,QAAQ;QACvC,OAAO,CAAC,CAAC,SAAS,KAAK,QAAQ;QAC/B,CAAC,CAAC,CAAC,MAAM,KAAK,YAAY,IAAI,CAAC,CAAC,MAAM,KAAK,aAAa,CAAC;QACzD,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CACxB,CAAC;AAAA,CACH;AAED,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,IAAY,EAAE,KAAgB,EAAiB;IAC9E,MAAM,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAChD,MAAM,GAAG,GAAG,GAAG,IAAI,IAAI,OAAO,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC;IACvD,MAAM,SAAS,CAAC,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;IAC7D,MAAM,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;AAAA,CACzB"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"discover.d.ts","sourceRoot":"","sources":["../src/discover.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AACzE,OAAO,KAAK,EACV,gBAAgB,EAChB,eAAe,EAKhB,MAAM,YAAY,CAAC;AAMpB,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAEtD;AASD,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,mBAAmB,CAAC,QAAQ,CAAC,CAK1E;AA4ED,wBAAsB,cAAc,CAClC,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,MAAM,EACd,OAAO,GAAE,gBAAqB,GAC7B,OAAO,CAAC,eAAe,CAAC,CAoB1B"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"discover.js","sourceRoot":"","sources":["../src/discover.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,YAAY,EAAuB,MAAM,+BAA+B,CAAC;AA8HvF,yBAA+B,EAAE,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAwG9D"}
package/dist/index.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AAEzE,MAAM,MAAM,eAAe,GAAG,YAAY,GAAG,aAAa,CAAC;AAE3D,MAAM,WAAW,SAAS;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,eAAe,CAAC;IACxB,MAAM,EAAE,mBAAmB,EAAE,CAAC;CAC/B;AAED,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,mBAAmB,EAAE,CAAC;IAC9B,MAAM,EAAE,eAAe,CAAC;CACzB;AAED,MAAM,WAAW,gBAAgB;IAC/B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AAED,MAAM,WAAW,cAAc;IAC7B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE;QACX,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,oBAAoB,CAAC,EAAE,MAAM,CAAC;QAC9B,qBAAqB,CAAC,EAAE,MAAM,CAAC;QAC/B,2BAA2B,CAAC,EAAE,MAAM,CAAC;QACrC,+BAA+B,CAAC,EAAE,MAAM,CAAC;QACzC,gBAAgB,CAAC,EAAE,MAAM,CAAC;QAC1B,iBAAiB,CAAC,EAAE,MAAM,CAAC;QAC3B,kBAAkB,CAAC,EAAE,OAAO,CAAC;QAC7B,eAAe,CAAC,EAAE,OAAO,CAAC;KAC3B,CAAC;CACH;AAED,MAAM,WAAW,iBAAiB;IAChC,IAAI,CAAC,EAAE,cAAc,EAAE,CAAC;CACzB;AAED,MAAM,WAAW,eAAe;IAC9B,EAAE,CAAC,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,kBAAkB;IACjC,IAAI,CAAC,EAAE,eAAe,EAAE,CAAC;CAC1B;AAED,MAAM,MAAM,aAAa,GACrB;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,GACrF;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,CAAC;AAErC,MAAM,WAAW,mBAAmB;IAClC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB"}
package/dist/types.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":""}