@x12i/ai-tools 1.0.4 → 2.0.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 +23 -0
- package/README.md +146 -204
- package/dist/AiModelsCatalogClient-B5FMI9gj.d.cts +58 -0
- package/dist/AiModelsCatalogClient-CPPNI6Ry.d.ts +58 -0
- package/dist/aliases/index.cjs +4 -3
- package/dist/aliases/index.cjs.map +1 -1
- package/dist/aliases/index.d.cts +3 -5
- package/dist/aliases/index.d.ts +3 -5
- package/dist/aliases/index.js +2 -2
- package/dist/catalog/index.cjs +18 -9
- package/dist/catalog/index.cjs.map +1 -1
- package/dist/catalog/index.d.cts +13 -100
- package/dist/catalog/index.d.ts +13 -100
- package/dist/catalog/index.js +31 -23
- package/dist/{chunk-AJEKEWWB.js → chunk-2PTCWPHV.js} +17 -3
- package/dist/chunk-2PTCWPHV.js.map +1 -0
- package/dist/chunk-56R4XA2S.js +1 -0
- package/dist/chunk-5GUKLOEK.cjs +1 -0
- package/dist/chunk-5GUKLOEK.cjs.map +1 -0
- package/dist/chunk-5XAAMBDO.cjs +1988 -0
- package/dist/chunk-5XAAMBDO.cjs.map +1 -0
- package/dist/chunk-6BQBKROR.js +95 -0
- package/dist/chunk-6BQBKROR.js.map +1 -0
- package/dist/chunk-AB5GNXJ4.js +46 -0
- package/dist/chunk-AB5GNXJ4.js.map +1 -0
- package/dist/{chunk-O2A6OVEH.js → chunk-ANVONYJF.js} +2 -2
- package/dist/{chunk-O2A6OVEH.js.map → chunk-ANVONYJF.js.map} +1 -1
- package/dist/chunk-B3V2EHRY.js +225 -0
- package/dist/chunk-B3V2EHRY.js.map +1 -0
- package/dist/{chunk-QWAX7VQO.cjs → chunk-BAHBDADJ.cjs} +11 -11
- package/dist/{chunk-QWAX7VQO.cjs.map → chunk-BAHBDADJ.cjs.map} +1 -1
- package/dist/{chunk-TF4L2NEC.cjs → chunk-DXZOL3VN.cjs} +62 -313
- package/dist/chunk-DXZOL3VN.cjs.map +1 -0
- package/dist/chunk-EDMCKHO6.cjs +225 -0
- package/dist/chunk-EDMCKHO6.cjs.map +1 -0
- package/dist/{chunk-DJ5SWJDY.js → chunk-EYHMQVAL.js} +48 -299
- package/dist/chunk-EYHMQVAL.js.map +1 -0
- package/dist/chunk-GS7T56RP.cjs +8 -0
- package/dist/chunk-GS7T56RP.cjs.map +1 -0
- package/dist/chunk-NF2SKQR7.cjs +973 -0
- package/dist/chunk-NF2SKQR7.cjs.map +1 -0
- package/dist/chunk-OPN6BGNH.js +1985 -0
- package/dist/chunk-OPN6BGNH.js.map +1 -0
- package/dist/{chunk-7Q742NI3.cjs → chunk-PADNCGZB.cjs} +17 -3
- package/dist/chunk-PADNCGZB.cjs.map +1 -0
- package/dist/chunk-PRCICORG.cjs +95 -0
- package/dist/chunk-PRCICORG.cjs.map +1 -0
- package/dist/{chunk-6QGDZTGH.js → chunk-SIH4GPV4.js} +4 -29
- package/dist/chunk-SIH4GPV4.js.map +1 -0
- package/dist/chunk-U2YDDUVP.js +970 -0
- package/dist/chunk-U2YDDUVP.js.map +1 -0
- package/dist/{chunk-4NAY6HRP.js → chunk-VJHLO2R3.js} +7 -58
- package/dist/chunk-VJHLO2R3.js.map +1 -0
- package/dist/chunk-XAWBTX3N.cjs +46 -0
- package/dist/chunk-XAWBTX3N.cjs.map +1 -0
- package/dist/{chunk-AV6OE2YQ.cjs → chunk-XOKUDUUI.cjs} +14 -39
- package/dist/chunk-XOKUDUUI.cjs.map +1 -0
- package/dist/chunk-YQDSN6R6.cjs +86 -0
- package/dist/chunk-YQDSN6R6.cjs.map +1 -0
- package/dist/cli/index.cjs +59 -201
- package/dist/cli/index.cjs.map +1 -1
- package/dist/cli/index.js +53 -198
- package/dist/cli/index.js.map +1 -1
- package/dist/cost/index.cjs +19 -3
- package/dist/cost/index.cjs.map +1 -1
- package/dist/cost/index.d.cts +10 -50
- package/dist/cost/index.d.ts +10 -50
- package/dist/cost/index.js +18 -3
- package/dist/index.cjs +24 -16
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +13 -13
- package/dist/index.d.ts +13 -13
- package/dist/index.js +44 -37
- package/dist/modelCache-BzRn6t_C.d.ts +113 -0
- package/dist/modelCache-CJftI-Ko.d.cts +113 -0
- package/dist/{modelNameResolver-DqFt7g6W.d.ts → modelNameResolver-5XkBMctP.d.ts} +2 -6
- package/dist/{modelNameResolver-D9V_GfUK.d.cts → modelNameResolver-C5CSTGFF.d.cts} +2 -6
- package/dist/models/index.cjs +9 -6
- package/dist/models/index.cjs.map +1 -1
- package/dist/models/index.d.cts +9 -31
- package/dist/models/index.d.ts +9 -31
- package/dist/models/index.js +9 -7
- package/dist/resolveUsageModel-BFwf80Hz.d.ts +140 -0
- package/dist/resolveUsageModel-C_YmGR1M.d.cts +140 -0
- package/dist/sync/index.cjs +7 -9
- package/dist/sync/index.cjs.map +1 -1
- package/dist/sync/index.d.cts +3 -8
- package/dist/sync/index.d.ts +3 -8
- package/dist/sync/index.js +8 -11
- package/dist/toolbox/index.cjs +1 -0
- package/dist/toolbox/index.cjs.map +1 -1
- package/dist/types-BrzJWsTU.d.cts +277 -0
- package/dist/types-BrzJWsTU.d.ts +277 -0
- package/package.json +9 -20
- package/src/data/models-catalog.json +670 -0
- package/src/data/openrouter-models-catalog.json +857 -0
- package/dist/AiModelsCatalogClient-4RF5BCDL.cjs +0 -9
- package/dist/AiModelsCatalogClient-4RF5BCDL.cjs.map +0 -1
- package/dist/AiModelsCatalogClient-CNeqFiFs.d.cts +0 -30
- package/dist/AiModelsCatalogClient-NUF3CBLW.js +0 -9
- package/dist/AiModelsCatalogClient-nwFoEaqL.d.ts +0 -30
- package/dist/catalox/index.cjs +0 -21
- package/dist/catalox/index.cjs.map +0 -1
- package/dist/catalox/index.d.cts +0 -11
- package/dist/catalox/index.d.ts +0 -11
- package/dist/catalox/index.js +0 -21
- package/dist/catalox/index.js.map +0 -1
- package/dist/chunk-4NAY6HRP.js.map +0 -1
- package/dist/chunk-6QGDZTGH.js.map +0 -1
- package/dist/chunk-7Q742NI3.cjs.map +0 -1
- package/dist/chunk-AJEKEWWB.js.map +0 -1
- package/dist/chunk-AV6OE2YQ.cjs.map +0 -1
- package/dist/chunk-C3H7RTFR.cjs +0 -1
- package/dist/chunk-C3H7RTFR.cjs.map +0 -1
- package/dist/chunk-DJ5SWJDY.js.map +0 -1
- package/dist/chunk-DKHGWHXP.cjs +0 -169
- package/dist/chunk-DKHGWHXP.cjs.map +0 -1
- package/dist/chunk-F2F4UEFD.cjs +0 -75
- package/dist/chunk-F2F4UEFD.cjs.map +0 -1
- package/dist/chunk-FGP3QXWL.cjs +0 -163
- package/dist/chunk-FGP3QXWL.cjs.map +0 -1
- package/dist/chunk-G2G4KSC5.js +0 -30
- package/dist/chunk-G2G4KSC5.js.map +0 -1
- package/dist/chunk-HN6UAQAE.cjs +0 -83
- package/dist/chunk-HN6UAQAE.cjs.map +0 -1
- package/dist/chunk-HS74X2OJ.cjs +0 -172
- package/dist/chunk-HS74X2OJ.cjs.map +0 -1
- package/dist/chunk-HYGXZY25.js +0 -163
- package/dist/chunk-HYGXZY25.js.map +0 -1
- package/dist/chunk-KQOALKKX.js +0 -75
- package/dist/chunk-KQOALKKX.js.map +0 -1
- package/dist/chunk-LYOU7CA2.cjs +0 -30
- package/dist/chunk-LYOU7CA2.cjs.map +0 -1
- package/dist/chunk-M5TMA73F.js +0 -1
- package/dist/chunk-M5TMA73F.js.map +0 -1
- package/dist/chunk-MX3AMQFC.js +0 -172
- package/dist/chunk-MX3AMQFC.js.map +0 -1
- package/dist/chunk-QCRLKVB3.cjs +0 -137
- package/dist/chunk-QCRLKVB3.cjs.map +0 -1
- package/dist/chunk-TF4L2NEC.cjs.map +0 -1
- package/dist/chunk-VRFVF5RH.js +0 -169
- package/dist/chunk-VRFVF5RH.js.map +0 -1
- package/dist/chunk-YHO57D2V.js +0 -83
- package/dist/chunk-YHO57D2V.js.map +0 -1
- package/dist/syncAiModelsCatalog-CnXRLm2c.d.cts +0 -32
- package/dist/syncAiModelsCatalog-DpkN_w7S.d.ts +0 -32
- package/dist/types-BYXnCvKx.d.cts +0 -137
- package/dist/types-BYXnCvKx.d.ts +0 -137
- package/dist/types-CX6QFNNy.d.cts +0 -144
- package/dist/types-CuiPDcVs.d.ts +0 -144
- package/dist/upsertAiModelRecord-C831wOIF.d.ts +0 -35
- package/dist/upsertAiModelRecord-CjY-sny0.d.cts +0 -35
- /package/dist/{AiModelsCatalogClient-NUF3CBLW.js.map → chunk-56R4XA2S.js.map} +0 -0
package/dist/cost/index.d.cts
CHANGED
|
@@ -1,53 +1,13 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
import '@x12i/catalox';
|
|
1
|
+
import { a as AiCostResult, d as AiUsageInput, A as AiCostExtraction, f as ExtractUsageInputResult } from '../resolveUsageModel-C_YmGR1M.cjs';
|
|
2
|
+
export { b as AiCostWarning, c as AiCostWarningCode, C as CostCalculator, e as CostCalculatorOptions, E as ExtractUsageInputOptions, F as FieldProvenance, M as MODEL_FIELD_PRIORITY, T as TokenExtractionProvenance, g as extractUsageInput, r as resolveUsageModel } from '../resolveUsageModel-C_YmGR1M.cjs';
|
|
3
|
+
export { A as AiModelPricing, a as AiModelRecord } from '../types-BrzJWsTU.cjs';
|
|
4
|
+
import '../AiModelsCatalogClient-B5FMI9gj.cjs';
|
|
6
5
|
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
completion: number;
|
|
11
|
-
total: number;
|
|
12
|
-
cached?: number;
|
|
13
|
-
cacheWrite?: number;
|
|
14
|
-
reasoning?: number;
|
|
15
|
-
audio?: number;
|
|
16
|
-
image?: number;
|
|
17
|
-
};
|
|
18
|
-
provider: string;
|
|
19
|
-
modelUsed: string;
|
|
20
|
-
};
|
|
21
|
-
type AiCostResult = {
|
|
22
|
-
cost: number;
|
|
23
|
-
breakdown?: {
|
|
24
|
-
promptCostUsd: number;
|
|
25
|
-
completionCostUsd: number;
|
|
26
|
-
cachingCostUsd?: number;
|
|
27
|
-
reasoningCostUsd?: number;
|
|
28
|
-
audioCostUsd?: number;
|
|
29
|
-
imageCostUsd?: number;
|
|
30
|
-
requestFlatCostUsd?: number;
|
|
31
|
-
};
|
|
32
|
-
resolvedModelId: string;
|
|
33
|
-
routedViaOpenRouter: boolean;
|
|
34
|
-
isAuthoritative: boolean;
|
|
35
|
-
pricingSnapshot: AiModelPricing;
|
|
36
|
-
source: "catalog" | "estimate-fallback";
|
|
37
|
-
};
|
|
6
|
+
declare function toCostExtraction(provenance: ExtractUsageInputResult["provenance"]): AiCostExtraction;
|
|
7
|
+
/** Attach usage, provider, and model fields callers expect on every cost response. */
|
|
8
|
+
declare function enrichCostResult(result: Omit<AiCostResult, "usage" | "provider" | "usedModel" | "model" | "extraction">, input: AiUsageInput, extraction?: AiCostExtraction): AiCostResult;
|
|
38
9
|
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
includeBreakdown?: boolean;
|
|
42
|
-
resolverOptions?: ModelResolverOptions;
|
|
43
|
-
};
|
|
44
|
-
declare class CostCalculator {
|
|
45
|
-
private readonly catalog;
|
|
46
|
-
private readonly aliasRegistry?;
|
|
47
|
-
private readonly includeBreakdown;
|
|
48
|
-
private readonly resolverOptions?;
|
|
49
|
-
constructor(catalog: AiModelsCatalogClient, options?: CostCalculatorOptions);
|
|
50
|
-
calculate(input: AiUsageInput): Promise<AiCostResult>;
|
|
51
|
-
}
|
|
10
|
+
/** Default OpenRouter platform surcharge when catalog markup fields are absent (5%). */
|
|
11
|
+
declare const DEFAULT_OPENROUTER_MARKUP_RATE = 0.05;
|
|
52
12
|
|
|
53
|
-
export {
|
|
13
|
+
export { AiCostExtraction, AiCostResult, AiUsageInput, DEFAULT_OPENROUTER_MARKUP_RATE, ExtractUsageInputResult, enrichCostResult, toCostExtraction };
|
package/dist/cost/index.d.ts
CHANGED
|
@@ -1,53 +1,13 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
import '@x12i/catalox';
|
|
1
|
+
import { a as AiCostResult, d as AiUsageInput, A as AiCostExtraction, f as ExtractUsageInputResult } from '../resolveUsageModel-BFwf80Hz.js';
|
|
2
|
+
export { b as AiCostWarning, c as AiCostWarningCode, C as CostCalculator, e as CostCalculatorOptions, E as ExtractUsageInputOptions, F as FieldProvenance, M as MODEL_FIELD_PRIORITY, T as TokenExtractionProvenance, g as extractUsageInput, r as resolveUsageModel } from '../resolveUsageModel-BFwf80Hz.js';
|
|
3
|
+
export { A as AiModelPricing, a as AiModelRecord } from '../types-BrzJWsTU.js';
|
|
4
|
+
import '../AiModelsCatalogClient-CPPNI6Ry.js';
|
|
6
5
|
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
completion: number;
|
|
11
|
-
total: number;
|
|
12
|
-
cached?: number;
|
|
13
|
-
cacheWrite?: number;
|
|
14
|
-
reasoning?: number;
|
|
15
|
-
audio?: number;
|
|
16
|
-
image?: number;
|
|
17
|
-
};
|
|
18
|
-
provider: string;
|
|
19
|
-
modelUsed: string;
|
|
20
|
-
};
|
|
21
|
-
type AiCostResult = {
|
|
22
|
-
cost: number;
|
|
23
|
-
breakdown?: {
|
|
24
|
-
promptCostUsd: number;
|
|
25
|
-
completionCostUsd: number;
|
|
26
|
-
cachingCostUsd?: number;
|
|
27
|
-
reasoningCostUsd?: number;
|
|
28
|
-
audioCostUsd?: number;
|
|
29
|
-
imageCostUsd?: number;
|
|
30
|
-
requestFlatCostUsd?: number;
|
|
31
|
-
};
|
|
32
|
-
resolvedModelId: string;
|
|
33
|
-
routedViaOpenRouter: boolean;
|
|
34
|
-
isAuthoritative: boolean;
|
|
35
|
-
pricingSnapshot: AiModelPricing;
|
|
36
|
-
source: "catalog" | "estimate-fallback";
|
|
37
|
-
};
|
|
6
|
+
declare function toCostExtraction(provenance: ExtractUsageInputResult["provenance"]): AiCostExtraction;
|
|
7
|
+
/** Attach usage, provider, and model fields callers expect on every cost response. */
|
|
8
|
+
declare function enrichCostResult(result: Omit<AiCostResult, "usage" | "provider" | "usedModel" | "model" | "extraction">, input: AiUsageInput, extraction?: AiCostExtraction): AiCostResult;
|
|
38
9
|
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
includeBreakdown?: boolean;
|
|
42
|
-
resolverOptions?: ModelResolverOptions;
|
|
43
|
-
};
|
|
44
|
-
declare class CostCalculator {
|
|
45
|
-
private readonly catalog;
|
|
46
|
-
private readonly aliasRegistry?;
|
|
47
|
-
private readonly includeBreakdown;
|
|
48
|
-
private readonly resolverOptions?;
|
|
49
|
-
constructor(catalog: AiModelsCatalogClient, options?: CostCalculatorOptions);
|
|
50
|
-
calculate(input: AiUsageInput): Promise<AiCostResult>;
|
|
51
|
-
}
|
|
10
|
+
/** Default OpenRouter platform surcharge when catalog markup fields are absent (5%). */
|
|
11
|
+
declare const DEFAULT_OPENROUTER_MARKUP_RATE = 0.05;
|
|
52
12
|
|
|
53
|
-
export {
|
|
13
|
+
export { AiCostExtraction, AiCostResult, AiUsageInput, DEFAULT_OPENROUTER_MARKUP_RATE, ExtractUsageInputResult, enrichCostResult, toCostExtraction };
|
package/dist/cost/index.js
CHANGED
|
@@ -1,7 +1,22 @@
|
|
|
1
|
+
import "../chunk-56R4XA2S.js";
|
|
1
2
|
import {
|
|
2
|
-
CostCalculator
|
|
3
|
-
|
|
3
|
+
CostCalculator,
|
|
4
|
+
DEFAULT_OPENROUTER_MARKUP_RATE,
|
|
5
|
+
MODEL_FIELD_PRIORITY,
|
|
6
|
+
enrichCostResult,
|
|
7
|
+
extractUsageInput,
|
|
8
|
+
resolveUsageModel,
|
|
9
|
+
toCostExtraction
|
|
10
|
+
} from "../chunk-U2YDDUVP.js";
|
|
11
|
+
import "../chunk-B3V2EHRY.js";
|
|
12
|
+
import "../chunk-2PTCWPHV.js";
|
|
4
13
|
export {
|
|
5
|
-
CostCalculator
|
|
14
|
+
CostCalculator,
|
|
15
|
+
DEFAULT_OPENROUTER_MARKUP_RATE,
|
|
16
|
+
MODEL_FIELD_PRIORITY,
|
|
17
|
+
enrichCostResult,
|
|
18
|
+
extractUsageInput,
|
|
19
|
+
resolveUsageModel,
|
|
20
|
+
toCostExtraction
|
|
6
21
|
};
|
|
7
22
|
//# sourceMappingURL=index.js.map
|
package/dist/index.cjs
CHANGED
|
@@ -1,6 +1,4 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true});
|
|
2
|
-
|
|
3
|
-
var _chunkHN6UAQAEcjs = require('./chunk-HN6UAQAE.cjs');
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});require('./chunk-5GUKLOEK.cjs');
|
|
4
2
|
|
|
5
3
|
|
|
6
4
|
var _chunk5HNFAYTOcjs = require('./chunk-5HNFAYTO.cjs');
|
|
@@ -8,53 +6,62 @@ var _chunk5HNFAYTOcjs = require('./chunk-5HNFAYTO.cjs');
|
|
|
8
6
|
|
|
9
7
|
|
|
10
8
|
|
|
11
|
-
|
|
9
|
+
|
|
10
|
+
var _chunkPRCICORGcjs = require('./chunk-PRCICORG.cjs');
|
|
12
11
|
require('./chunk-3E67S427.cjs');
|
|
12
|
+
require('./chunk-2PYACSZ5.cjs');
|
|
13
13
|
|
|
14
14
|
|
|
15
|
+
var _chunkXOKUDUUIcjs = require('./chunk-XOKUDUUI.cjs');
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
var _chunkNF2SKQR7cjs = require('./chunk-NF2SKQR7.cjs');
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
var _chunkBAHBDADJcjs = require('./chunk-BAHBDADJ.cjs');
|
|
26
|
+
|
|
15
27
|
|
|
16
|
-
var _chunkQWAX7VQOcjs = require('./chunk-QWAX7VQO.cjs');
|
|
17
|
-
require('./chunk-2PYACSZ5.cjs');
|
|
18
28
|
|
|
19
29
|
|
|
20
30
|
|
|
31
|
+
var _chunkYQDSN6R6cjs = require('./chunk-YQDSN6R6.cjs');
|
|
21
32
|
|
|
22
33
|
|
|
23
|
-
var _chunkQCRLKVB3cjs = require('./chunk-QCRLKVB3.cjs');
|
|
24
|
-
require('./chunk-C3H7RTFR.cjs');
|
|
25
34
|
|
|
35
|
+
var _chunkXAWBTX3Ncjs = require('./chunk-XAWBTX3N.cjs');
|
|
26
36
|
|
|
27
37
|
|
|
28
38
|
|
|
29
39
|
|
|
30
|
-
var _chunkHS74X2OJcjs = require('./chunk-HS74X2OJ.cjs');
|
|
31
40
|
|
|
32
41
|
|
|
33
42
|
|
|
34
43
|
|
|
35
|
-
var _chunkDKHGWHXPcjs = require('./chunk-DKHGWHXP.cjs');
|
|
36
|
-
require('./chunk-FGP3QXWL.cjs');
|
|
37
44
|
|
|
45
|
+
var _chunk5XAAMBDOcjs = require('./chunk-5XAAMBDO.cjs');
|
|
38
46
|
|
|
39
47
|
|
|
40
48
|
|
|
41
49
|
|
|
42
50
|
|
|
43
51
|
|
|
44
|
-
var _chunkAV6OE2YQcjs = require('./chunk-AV6OE2YQ.cjs');
|
|
45
52
|
|
|
53
|
+
var _chunkDXZOL3VNcjs = require('./chunk-DXZOL3VN.cjs');
|
|
46
54
|
|
|
47
|
-
var _chunkF2F4UEFDcjs = require('./chunk-F2F4UEFD.cjs');
|
|
48
55
|
|
|
49
56
|
|
|
50
57
|
|
|
51
58
|
|
|
59
|
+
var _chunkEDMCKHO6cjs = require('./chunk-EDMCKHO6.cjs');
|
|
52
60
|
|
|
53
61
|
|
|
54
62
|
|
|
55
63
|
|
|
56
64
|
|
|
57
|
-
var _chunkTF4L2NECcjs = require('./chunk-TF4L2NEC.cjs');
|
|
58
65
|
|
|
59
66
|
|
|
60
67
|
|
|
@@ -62,11 +69,12 @@ var _chunkTF4L2NECcjs = require('./chunk-TF4L2NEC.cjs');
|
|
|
62
69
|
|
|
63
70
|
|
|
64
71
|
|
|
72
|
+
var _chunkPADNCGZBcjs = require('./chunk-PADNCGZB.cjs');
|
|
73
|
+
require('./chunk-GS7T56RP.cjs');
|
|
65
74
|
|
|
66
75
|
|
|
67
76
|
|
|
68
77
|
|
|
69
|
-
var _chunk7Q742NI3cjs = require('./chunk-7Q742NI3.cjs');
|
|
70
78
|
|
|
71
79
|
|
|
72
80
|
|
|
@@ -111,5 +119,5 @@ var _chunk7Q742NI3cjs = require('./chunk-7Q742NI3.cjs');
|
|
|
111
119
|
|
|
112
120
|
|
|
113
121
|
|
|
114
|
-
exports.AIToolbox = _chunk5HNFAYTOcjs.AIToolbox; exports.
|
|
122
|
+
exports.AIToolbox = _chunk5HNFAYTOcjs.AIToolbox; exports.AiModelsCatalogClient = _chunk5XAAMBDOcjs.AiModelsCatalogClient; exports.AiModelsService = _chunkYQDSN6R6cjs.AiModelsService; exports.AiToolsError = _chunkPADNCGZBcjs.AiToolsError; exports.AliasConflictError = _chunkPADNCGZBcjs.AliasConflictError; exports.AliasFileParseError = _chunkPADNCGZBcjs.AliasFileParseError; exports.AliasFileWriteError = _chunkPADNCGZBcjs.AliasFileWriteError; exports.AliasInvalidNameError = _chunkPADNCGZBcjs.AliasInvalidNameError; exports.AliasNotFoundError = _chunkPADNCGZBcjs.AliasNotFoundError; exports.AliasRegistry = _chunkBAHBDADJcjs.AliasRegistry; exports.AliasResolver = _chunkBAHBDADJcjs.AliasResolver; exports.CostCalculationError = _chunkPADNCGZBcjs.CostCalculationError; exports.CostCalculator = _chunkNF2SKQR7cjs.CostCalculator; exports.DEFAULT_CATALOG_CACHE_TTL_MS = _chunk5XAAMBDOcjs.DEFAULT_CATALOG_CACHE_TTL_MS; exports.DEFAULT_DIRECT_CATALOG_URL = _chunk5XAAMBDOcjs.DEFAULT_DIRECT_CATALOG_URL; exports.DEFAULT_OPENROUTER_CATALOG_URL = _chunk5XAAMBDOcjs.DEFAULT_OPENROUTER_CATALOG_URL; exports.MODEL_FIELD_PRIORITY = _chunkNF2SKQR7cjs.MODEL_FIELD_PRIORITY; exports.ModelNameResolver = _chunkDXZOL3VNcjs.ModelNameResolver; exports.ModelNotFoundError = _chunkPADNCGZBcjs.ModelNotFoundError; exports.ModelResolutionError = _chunkPADNCGZBcjs.ModelResolutionError; exports.OpenRouterSyncProvider = _chunkPRCICORGcjs.OpenRouterSyncProvider; exports.REASONING_SUPPORTED_PARAMETERS = _chunkDXZOL3VNcjs.REASONING_SUPPORTED_PARAMETERS; exports.SyncError = _chunkPADNCGZBcjs.SyncError; exports.UnknownModelCostError = _chunkPADNCGZBcjs.UnknownModelCostError; exports.computeSupportsReasoning = _chunkDXZOL3VNcjs.computeSupportsReasoning; exports.countModels = _chunkYQDSN6R6cjs.countModels; exports.createModelNameResolver = _chunkPRCICORGcjs.createModelNameResolver; exports.extractUsageInput = _chunkNF2SKQR7cjs.extractUsageInput; exports.filterModels = _chunkYQDSN6R6cjs.filterModels; exports.getModelInfo = _chunkYQDSN6R6cjs.getModelInfo; exports.hasReasoningPricing = _chunkDXZOL3VNcjs.hasReasoningPricing; exports.invalidateCatalogLoadCache = _chunk5XAAMBDOcjs.invalidateCatalogLoadCache; exports.isReasoningModel = _chunkDXZOL3VNcjs.isReasoningModel; exports.isRoutedViaOpenRouter = _chunkPRCICORGcjs.isRoutedViaOpenRouter; exports.loadCatalogSources = _chunk5XAAMBDOcjs.loadCatalogSources; exports.loadCatalogSourcesCached = _chunk5XAAMBDOcjs.loadCatalogSourcesCached; exports.loadOpenRouterRoutingEnv = _chunkEDMCKHO6cjs.loadOpenRouterRoutingEnv; exports.normalizeOpenRouterModel = _chunkXOKUDUUIcjs.normalizeOpenRouterModel; exports.providerIdToEnvKeyPrefix = _chunkEDMCKHO6cjs.providerIdToEnvKeyPrefix; exports.refreshAiModelsCatalog = _chunkXAWBTX3Ncjs.refreshAiModelsCatalog; exports.resolveCatalogCacheTtlMs = _chunk5XAAMBDOcjs.resolveCatalogCacheTtlMs; exports.resolveModel = _chunkPRCICORGcjs.resolveModel; exports.resolveUsageModel = _chunkNF2SKQR7cjs.resolveUsageModel; exports.shouldDefaultRouteViaOpenRouter = _chunkEDMCKHO6cjs.shouldDefaultRouteViaOpenRouter; exports.supportsReasoningParameter = _chunkDXZOL3VNcjs.supportsReasoningParameter; exports.vendorApiKeyEnvName = _chunkEDMCKHO6cjs.vendorApiKeyEnvName; exports.verifyAiModelsCatalog = _chunkXAWBTX3Ncjs.verifyAiModelsCatalog;
|
|
115
123
|
//# sourceMappingURL=index.cjs.map
|
package/dist/index.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/Users/ami/Documents/prometheus/x12i/ai-tools/dist/index.cjs"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"sources":["/Users/ami/Documents/prometheus/x12i/ai-tools/dist/index.cjs"],"names":[],"mappings":"AAAA,yGAA6B;AAC7B;AACE;AACF,wDAA6B;AAC7B;AACE;AACA;AACA;AACA;AACF,wDAA6B;AAC7B,gCAA6B;AAC7B,gCAA6B;AAC7B;AACE;AACF,wDAA6B;AAC7B;AACE;AACA;AACA;AACA;AACF,wDAA6B;AAC7B;AACE;AACA;AACF,wDAA6B;AAC7B;AACE;AACA;AACA;AACA;AACF,wDAA6B;AAC7B;AACE;AACA;AACF,wDAA6B;AAC7B;AACE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACF,wDAA6B;AAC7B;AACE;AACA;AACA;AACA;AACA;AACA;AACF,wDAA6B;AAC7B;AACE;AACA;AACA;AACA;AACF,wDAA6B;AAC7B;AACE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACF,wDAA6B;AAC7B,gCAA6B;AAC7B;AACE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACF,guGAAC","file":"/Users/ami/Documents/prometheus/x12i/ai-tools/dist/index.cjs"}
|
package/dist/index.d.cts
CHANGED
|
@@ -1,19 +1,14 @@
|
|
|
1
|
-
export { AiCostResult, AiUsageInput, CostCalculator, CostCalculatorOptions } from './
|
|
2
|
-
export { A as AiModelsCatalogClient, a as AiModelsCatalogClientOptions } from './AiModelsCatalogClient-
|
|
1
|
+
export { A as AiCostExtraction, a as AiCostResult, b as AiCostWarning, d as AiUsageInput, C as CostCalculator, e as CostCalculatorOptions, E as ExtractUsageInputOptions, f as ExtractUsageInputResult, M as MODEL_FIELD_PRIORITY, g as extractUsageInput, r as resolveUsageModel } from './resolveUsageModel-C_YmGR1M.cjs';
|
|
2
|
+
export { A as AiModelsCatalogClient, a as AiModelsCatalogClientOptions, L as LoadCatalogOptions, b as LoadedCatalogs, l as loadCatalogSources } from './AiModelsCatalogClient-B5FMI9gj.cjs';
|
|
3
|
+
import { h as ModelResolutionInput, i as ModelResolutionNotFound } from './types-BrzJWsTU.cjs';
|
|
4
|
+
export { A as AiModelPricing, a as AiModelRecord, b as AliasEntry, c as AliasFileSchema, d as AliasRegistry, e as AliasRegistryOptions, f as AliasValidationReport, M as ModelListFilters, g as ModelListResult, j as ModelResolutionResult, k as ModelResolutionSuccess, l as ModelResolverOptions, m as OpenRouterModelApi, n as OpenRouterModelsQuery, r as OpenRouterRoutingConfig, R as ResolutionStrategy, t as ResolvedModel, u as ResolvedModelRef, v as loadOpenRouterRoutingEnv, w as providerIdToEnvKeyPrefix, x as shouldDefaultRouteViaOpenRouter, y as vendorApiKeyEnvName } from './types-BrzJWsTU.cjs';
|
|
5
|
+
export { C as CatalogRefreshOptions, a as CatalogRefreshResult, c as CatalogVerifyOptions, d as CatalogVerifyReport, D as DEFAULT_CATALOG_CACHE_TTL_MS, e as DEFAULT_DIRECT_CATALOG_URL, f as DEFAULT_OPENROUTER_CATALOG_URL, i as invalidateCatalogLoadCache, l as loadCatalogSourcesCached, r as refreshAiModelsCatalog, h as resolveCatalogCacheTtlMs, v as verifyAiModelsCatalog } from './modelCache-CJftI-Ko.cjs';
|
|
3
6
|
export { AiModelsService, AiModelsServiceOptions, REASONING_SUPPORTED_PARAMETERS, ReasoningModelInput, computeSupportsReasoning, countModels, filterModels, getModelInfo, hasReasoningPricing, isReasoningModel, normalizeOpenRouterModel, supportsReasoningParameter } from './models/index.cjs';
|
|
4
|
-
export {
|
|
5
|
-
export { AI_MODELS_CATALOG_ID, AI_MODELS_DESCRIPTOR, AI_TOOLS_APP_ID, CatalogSyncJobError, CatalogSyncJobOptions, CatalogSyncJobResult, CatalogVerifyOptions, CatalogVerifyReport, EnsureAiModelsCatalogOptions, PruneStaleCatalogModelsOptions, PruneStaleCatalogModelsResult, ensureAiModelsCatalog, pruneStaleCatalogModels, runAiModelsCatalogSync, verifyAiModelsCatalog } from './catalog/index.cjs';
|
|
6
|
-
export { M as ModelNameResolver, O as OpenRouterSyncProvider, a as OpenRouterSyncProviderOptions, c as createModelNameResolver, i as isRoutedViaOpenRouter, r as resolveModel } from './modelNameResolver-D9V_GfUK.cjs';
|
|
7
|
-
export { S as SyncOptions, a as SyncResult, s as syncAiModelsCatalog } from './syncAiModelsCatalog-CnXRLm2c.cjs';
|
|
7
|
+
export { M as ModelNameResolver, O as OpenRouterSyncProvider, a as OpenRouterSyncProviderOptions, c as createModelNameResolver, i as isRoutedViaOpenRouter, r as resolveModel } from './modelNameResolver-C5CSTGFF.cjs';
|
|
8
8
|
export { AIToolbox, AiToolboxOptions, Fallback, FallbackChain, Guard, GuardConfig, RouteRule, Router, TrackResult, Tracker } from './toolbox/index.cjs';
|
|
9
|
-
import { M as ModelResolutionInput, e as ModelResolutionNotFound } from './types-CX6QFNNy.cjs';
|
|
10
|
-
export { A as AliasEntry, a as AliasFileSchema, b as AliasRegistry, c as AliasRegistryOptions, d as AliasValidationReport, f as ModelResolutionResult, g as ModelResolutionSuccess, h as ModelResolverOptions, O as OpenRouterRoutingConfig, R as ResolutionStrategy, i as ResolvedModel, j as ResolvedModelRef, l as loadOpenRouterRoutingEnv, p as providerIdToEnvKeyPrefix, s as shouldDefaultRouteViaOpenRouter, v as vendorApiKeyEnvName } from './types-CX6QFNNy.cjs';
|
|
11
9
|
export { AliasResolver, AliasResolverOptions } from './aliases/index.cjs';
|
|
12
|
-
import '@x12i/catalox';
|
|
13
|
-
import 'firebase-admin/firestore';
|
|
14
|
-
import './upsertAiModelRecord-CjY-sny0.cjs';
|
|
15
10
|
|
|
16
|
-
type AiToolsErrorCode = "MODEL_NOT_FOUND" | "SYNC_FETCH_FAILED" | "SYNC_UPSERT_FAILED" | "
|
|
11
|
+
type AiToolsErrorCode = "MODEL_NOT_FOUND" | "SYNC_FETCH_FAILED" | "SYNC_UPSERT_FAILED" | "COST_CALCULATION_FAILED" | "COST_UNKNOWN_MODEL" | "INVALID_USAGE_INPUT" | "OPENROUTER_AUTH_FAILED" | "OPENROUTER_MODELS_FETCH_FAILED" | "CACHE_READ_ERROR" | "ALIAS_NOT_FOUND" | "ALIAS_INVALID_NAME" | "ALIAS_CONFLICT" | "ALIAS_FILE_PARSE_ERROR" | "ALIAS_FILE_WRITE_ERROR";
|
|
17
12
|
declare class AiToolsError extends Error {
|
|
18
13
|
readonly code: AiToolsErrorCode;
|
|
19
14
|
readonly cause?: unknown | undefined;
|
|
@@ -48,5 +43,10 @@ declare class SyncError extends AiToolsError {
|
|
|
48
43
|
declare class CostCalculationError extends AiToolsError {
|
|
49
44
|
constructor(message: string, cause?: unknown);
|
|
50
45
|
}
|
|
46
|
+
declare class UnknownModelCostError extends AiToolsError {
|
|
47
|
+
readonly model: string;
|
|
48
|
+
readonly provider: string;
|
|
49
|
+
constructor(model: string, provider: string);
|
|
50
|
+
}
|
|
51
51
|
|
|
52
|
-
export { AiToolsError, type AiToolsErrorCode, AliasConflictError, AliasFileParseError, AliasFileWriteError, AliasInvalidNameError, AliasNotFoundError, CostCalculationError, ModelNotFoundError, ModelResolutionError, ModelResolutionInput, SyncError };
|
|
52
|
+
export { AiToolsError, type AiToolsErrorCode, AliasConflictError, AliasFileParseError, AliasFileWriteError, AliasInvalidNameError, AliasNotFoundError, CostCalculationError, ModelNotFoundError, ModelResolutionError, ModelResolutionInput, SyncError, UnknownModelCostError };
|
package/dist/index.d.ts
CHANGED
|
@@ -1,19 +1,14 @@
|
|
|
1
|
-
export { AiCostResult, AiUsageInput, CostCalculator, CostCalculatorOptions } from './
|
|
2
|
-
export { A as AiModelsCatalogClient, a as AiModelsCatalogClientOptions } from './AiModelsCatalogClient-
|
|
1
|
+
export { A as AiCostExtraction, a as AiCostResult, b as AiCostWarning, d as AiUsageInput, C as CostCalculator, e as CostCalculatorOptions, E as ExtractUsageInputOptions, f as ExtractUsageInputResult, M as MODEL_FIELD_PRIORITY, g as extractUsageInput, r as resolveUsageModel } from './resolveUsageModel-BFwf80Hz.js';
|
|
2
|
+
export { A as AiModelsCatalogClient, a as AiModelsCatalogClientOptions, L as LoadCatalogOptions, b as LoadedCatalogs, l as loadCatalogSources } from './AiModelsCatalogClient-CPPNI6Ry.js';
|
|
3
|
+
import { h as ModelResolutionInput, i as ModelResolutionNotFound } from './types-BrzJWsTU.js';
|
|
4
|
+
export { A as AiModelPricing, a as AiModelRecord, b as AliasEntry, c as AliasFileSchema, d as AliasRegistry, e as AliasRegistryOptions, f as AliasValidationReport, M as ModelListFilters, g as ModelListResult, j as ModelResolutionResult, k as ModelResolutionSuccess, l as ModelResolverOptions, m as OpenRouterModelApi, n as OpenRouterModelsQuery, r as OpenRouterRoutingConfig, R as ResolutionStrategy, t as ResolvedModel, u as ResolvedModelRef, v as loadOpenRouterRoutingEnv, w as providerIdToEnvKeyPrefix, x as shouldDefaultRouteViaOpenRouter, y as vendorApiKeyEnvName } from './types-BrzJWsTU.js';
|
|
5
|
+
export { C as CatalogRefreshOptions, a as CatalogRefreshResult, c as CatalogVerifyOptions, d as CatalogVerifyReport, D as DEFAULT_CATALOG_CACHE_TTL_MS, e as DEFAULT_DIRECT_CATALOG_URL, f as DEFAULT_OPENROUTER_CATALOG_URL, i as invalidateCatalogLoadCache, l as loadCatalogSourcesCached, r as refreshAiModelsCatalog, h as resolveCatalogCacheTtlMs, v as verifyAiModelsCatalog } from './modelCache-BzRn6t_C.js';
|
|
3
6
|
export { AiModelsService, AiModelsServiceOptions, REASONING_SUPPORTED_PARAMETERS, ReasoningModelInput, computeSupportsReasoning, countModels, filterModels, getModelInfo, hasReasoningPricing, isReasoningModel, normalizeOpenRouterModel, supportsReasoningParameter } from './models/index.js';
|
|
4
|
-
export {
|
|
5
|
-
export { AI_MODELS_CATALOG_ID, AI_MODELS_DESCRIPTOR, AI_TOOLS_APP_ID, CatalogSyncJobError, CatalogSyncJobOptions, CatalogSyncJobResult, CatalogVerifyOptions, CatalogVerifyReport, EnsureAiModelsCatalogOptions, PruneStaleCatalogModelsOptions, PruneStaleCatalogModelsResult, ensureAiModelsCatalog, pruneStaleCatalogModels, runAiModelsCatalogSync, verifyAiModelsCatalog } from './catalog/index.js';
|
|
6
|
-
export { M as ModelNameResolver, O as OpenRouterSyncProvider, a as OpenRouterSyncProviderOptions, c as createModelNameResolver, i as isRoutedViaOpenRouter, r as resolveModel } from './modelNameResolver-DqFt7g6W.js';
|
|
7
|
-
export { S as SyncOptions, a as SyncResult, s as syncAiModelsCatalog } from './syncAiModelsCatalog-DpkN_w7S.js';
|
|
7
|
+
export { M as ModelNameResolver, O as OpenRouterSyncProvider, a as OpenRouterSyncProviderOptions, c as createModelNameResolver, i as isRoutedViaOpenRouter, r as resolveModel } from './modelNameResolver-5XkBMctP.js';
|
|
8
8
|
export { AIToolbox, AiToolboxOptions, Fallback, FallbackChain, Guard, GuardConfig, RouteRule, Router, TrackResult, Tracker } from './toolbox/index.js';
|
|
9
|
-
import { M as ModelResolutionInput, e as ModelResolutionNotFound } from './types-CuiPDcVs.js';
|
|
10
|
-
export { A as AliasEntry, a as AliasFileSchema, b as AliasRegistry, c as AliasRegistryOptions, d as AliasValidationReport, f as ModelResolutionResult, g as ModelResolutionSuccess, h as ModelResolverOptions, O as OpenRouterRoutingConfig, R as ResolutionStrategy, i as ResolvedModel, j as ResolvedModelRef, l as loadOpenRouterRoutingEnv, p as providerIdToEnvKeyPrefix, s as shouldDefaultRouteViaOpenRouter, v as vendorApiKeyEnvName } from './types-CuiPDcVs.js';
|
|
11
9
|
export { AliasResolver, AliasResolverOptions } from './aliases/index.js';
|
|
12
|
-
import '@x12i/catalox';
|
|
13
|
-
import 'firebase-admin/firestore';
|
|
14
|
-
import './upsertAiModelRecord-C831wOIF.js';
|
|
15
10
|
|
|
16
|
-
type AiToolsErrorCode = "MODEL_NOT_FOUND" | "SYNC_FETCH_FAILED" | "SYNC_UPSERT_FAILED" | "
|
|
11
|
+
type AiToolsErrorCode = "MODEL_NOT_FOUND" | "SYNC_FETCH_FAILED" | "SYNC_UPSERT_FAILED" | "COST_CALCULATION_FAILED" | "COST_UNKNOWN_MODEL" | "INVALID_USAGE_INPUT" | "OPENROUTER_AUTH_FAILED" | "OPENROUTER_MODELS_FETCH_FAILED" | "CACHE_READ_ERROR" | "ALIAS_NOT_FOUND" | "ALIAS_INVALID_NAME" | "ALIAS_CONFLICT" | "ALIAS_FILE_PARSE_ERROR" | "ALIAS_FILE_WRITE_ERROR";
|
|
17
12
|
declare class AiToolsError extends Error {
|
|
18
13
|
readonly code: AiToolsErrorCode;
|
|
19
14
|
readonly cause?: unknown | undefined;
|
|
@@ -48,5 +43,10 @@ declare class SyncError extends AiToolsError {
|
|
|
48
43
|
declare class CostCalculationError extends AiToolsError {
|
|
49
44
|
constructor(message: string, cause?: unknown);
|
|
50
45
|
}
|
|
46
|
+
declare class UnknownModelCostError extends AiToolsError {
|
|
47
|
+
readonly model: string;
|
|
48
|
+
readonly provider: string;
|
|
49
|
+
constructor(model: string, provider: string);
|
|
50
|
+
}
|
|
51
51
|
|
|
52
|
-
export { AiToolsError, type AiToolsErrorCode, AliasConflictError, AliasFileParseError, AliasFileWriteError, AliasInvalidNameError, AliasNotFoundError, CostCalculationError, ModelNotFoundError, ModelResolutionError, ModelResolutionInput, SyncError };
|
|
52
|
+
export { AiToolsError, type AiToolsErrorCode, AliasConflictError, AliasFileParseError, AliasFileWriteError, AliasInvalidNameError, AliasNotFoundError, CostCalculationError, ModelNotFoundError, ModelResolutionError, ModelResolutionInput, SyncError, UnknownModelCostError };
|
package/dist/index.js
CHANGED
|
@@ -1,60 +1,62 @@
|
|
|
1
|
-
import
|
|
2
|
-
CostCalculator
|
|
3
|
-
} from "./chunk-YHO57D2V.js";
|
|
1
|
+
import "./chunk-56R4XA2S.js";
|
|
4
2
|
import {
|
|
5
3
|
AIToolbox
|
|
6
4
|
} from "./chunk-XRBZQQQU.js";
|
|
7
5
|
import {
|
|
6
|
+
OpenRouterSyncProvider,
|
|
8
7
|
createModelNameResolver,
|
|
9
8
|
isRoutedViaOpenRouter,
|
|
10
9
|
resolveModel
|
|
11
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-6BQBKROR.js";
|
|
12
11
|
import "./chunk-KHODXGPV.js";
|
|
12
|
+
import "./chunk-COK34C6P.js";
|
|
13
|
+
import {
|
|
14
|
+
normalizeOpenRouterModel
|
|
15
|
+
} from "./chunk-SIH4GPV4.js";
|
|
16
|
+
import {
|
|
17
|
+
CostCalculator,
|
|
18
|
+
MODEL_FIELD_PRIORITY,
|
|
19
|
+
extractUsageInput,
|
|
20
|
+
resolveUsageModel
|
|
21
|
+
} from "./chunk-U2YDDUVP.js";
|
|
13
22
|
import {
|
|
14
23
|
AliasRegistry,
|
|
15
24
|
AliasResolver
|
|
16
|
-
} from "./chunk-
|
|
17
|
-
import "./chunk-COK34C6P.js";
|
|
25
|
+
} from "./chunk-ANVONYJF.js";
|
|
18
26
|
import {
|
|
19
27
|
AiModelsService,
|
|
20
28
|
countModels,
|
|
21
29
|
filterModels,
|
|
22
30
|
getModelInfo
|
|
23
|
-
} from "./chunk-
|
|
24
|
-
import "./chunk-M5TMA73F.js";
|
|
31
|
+
} from "./chunk-VJHLO2R3.js";
|
|
25
32
|
import {
|
|
26
|
-
|
|
27
|
-
pruneStaleCatalogModels,
|
|
28
|
-
runAiModelsCatalogSync,
|
|
33
|
+
refreshAiModelsCatalog,
|
|
29
34
|
verifyAiModelsCatalog
|
|
30
|
-
} from "./chunk-
|
|
35
|
+
} from "./chunk-AB5GNXJ4.js";
|
|
31
36
|
import {
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
+
AiModelsCatalogClient,
|
|
38
|
+
DEFAULT_CATALOG_CACHE_TTL_MS,
|
|
39
|
+
DEFAULT_DIRECT_CATALOG_URL,
|
|
40
|
+
DEFAULT_OPENROUTER_CATALOG_URL,
|
|
41
|
+
invalidateCatalogLoadCache,
|
|
42
|
+
loadCatalogSources,
|
|
43
|
+
loadCatalogSourcesCached,
|
|
44
|
+
resolveCatalogCacheTtlMs
|
|
45
|
+
} from "./chunk-OPN6BGNH.js";
|
|
37
46
|
import {
|
|
47
|
+
ModelNameResolver,
|
|
38
48
|
REASONING_SUPPORTED_PARAMETERS,
|
|
39
49
|
computeSupportsReasoning,
|
|
40
50
|
hasReasoningPricing,
|
|
41
51
|
isReasoningModel,
|
|
42
|
-
normalizeOpenRouterModel,
|
|
43
52
|
supportsReasoningParameter
|
|
44
|
-
} from "./chunk-
|
|
53
|
+
} from "./chunk-EYHMQVAL.js";
|
|
45
54
|
import {
|
|
46
|
-
AiModelsCatalogClient
|
|
47
|
-
} from "./chunk-KQOALKKX.js";
|
|
48
|
-
import {
|
|
49
|
-
AI_MODELS_CATALOG_ID,
|
|
50
|
-
AI_MODELS_DESCRIPTOR,
|
|
51
|
-
AI_TOOLS_APP_ID,
|
|
52
|
-
ModelNameResolver,
|
|
53
55
|
loadOpenRouterRoutingEnv,
|
|
54
56
|
providerIdToEnvKeyPrefix,
|
|
55
57
|
shouldDefaultRouteViaOpenRouter,
|
|
56
58
|
vendorApiKeyEnvName
|
|
57
|
-
} from "./chunk-
|
|
59
|
+
} from "./chunk-B3V2EHRY.js";
|
|
58
60
|
import {
|
|
59
61
|
AiToolsError,
|
|
60
62
|
AliasConflictError,
|
|
@@ -65,13 +67,11 @@ import {
|
|
|
65
67
|
CostCalculationError,
|
|
66
68
|
ModelNotFoundError,
|
|
67
69
|
ModelResolutionError,
|
|
68
|
-
SyncError
|
|
69
|
-
|
|
70
|
+
SyncError,
|
|
71
|
+
UnknownModelCostError
|
|
72
|
+
} from "./chunk-2PTCWPHV.js";
|
|
70
73
|
export {
|
|
71
74
|
AIToolbox,
|
|
72
|
-
AI_MODELS_CATALOG_ID,
|
|
73
|
-
AI_MODELS_DESCRIPTOR,
|
|
74
|
-
AI_TOOLS_APP_ID,
|
|
75
75
|
AiModelsCatalogClient,
|
|
76
76
|
AiModelsService,
|
|
77
77
|
AiToolsError,
|
|
@@ -82,33 +82,40 @@ export {
|
|
|
82
82
|
AliasNotFoundError,
|
|
83
83
|
AliasRegistry,
|
|
84
84
|
AliasResolver,
|
|
85
|
-
CatalogSyncJobError,
|
|
86
85
|
CostCalculationError,
|
|
87
86
|
CostCalculator,
|
|
87
|
+
DEFAULT_CATALOG_CACHE_TTL_MS,
|
|
88
|
+
DEFAULT_DIRECT_CATALOG_URL,
|
|
89
|
+
DEFAULT_OPENROUTER_CATALOG_URL,
|
|
90
|
+
MODEL_FIELD_PRIORITY,
|
|
88
91
|
ModelNameResolver,
|
|
89
92
|
ModelNotFoundError,
|
|
90
93
|
ModelResolutionError,
|
|
91
94
|
OpenRouterSyncProvider,
|
|
92
95
|
REASONING_SUPPORTED_PARAMETERS,
|
|
93
96
|
SyncError,
|
|
97
|
+
UnknownModelCostError,
|
|
94
98
|
computeSupportsReasoning,
|
|
95
99
|
countModels,
|
|
96
100
|
createModelNameResolver,
|
|
97
|
-
|
|
101
|
+
extractUsageInput,
|
|
98
102
|
filterModels,
|
|
99
103
|
getModelInfo,
|
|
100
104
|
hasReasoningPricing,
|
|
105
|
+
invalidateCatalogLoadCache,
|
|
101
106
|
isReasoningModel,
|
|
102
107
|
isRoutedViaOpenRouter,
|
|
108
|
+
loadCatalogSources,
|
|
109
|
+
loadCatalogSourcesCached,
|
|
103
110
|
loadOpenRouterRoutingEnv,
|
|
104
111
|
normalizeOpenRouterModel,
|
|
105
112
|
providerIdToEnvKeyPrefix,
|
|
106
|
-
|
|
113
|
+
refreshAiModelsCatalog,
|
|
114
|
+
resolveCatalogCacheTtlMs,
|
|
107
115
|
resolveModel,
|
|
108
|
-
|
|
116
|
+
resolveUsageModel,
|
|
109
117
|
shouldDefaultRouteViaOpenRouter,
|
|
110
118
|
supportsReasoningParameter,
|
|
111
|
-
syncAiModelsCatalog,
|
|
112
119
|
vendorApiKeyEnvName,
|
|
113
120
|
verifyAiModelsCatalog
|
|
114
121
|
};
|
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
import { L as LoadCatalogOptions, b as LoadedCatalogs } from './AiModelsCatalogClient-CPPNI6Ry.js';
|
|
2
|
+
|
|
3
|
+
/** Remote catalog URLs (primary). */
|
|
4
|
+
declare const DEFAULT_DIRECT_CATALOG_URL = "https://open-assets.x12i.com/models-catalog.json";
|
|
5
|
+
declare const DEFAULT_OPENROUTER_CATALOG_URL = "https://open-assets.x12i.com/openrouter-models-catalog.json";
|
|
6
|
+
type CatalogSourceKind = "direct" | "openrouter";
|
|
7
|
+
type X12iCatalogPricing = {
|
|
8
|
+
input?: number | null;
|
|
9
|
+
output?: number | null;
|
|
10
|
+
cachedInput?: number | null;
|
|
11
|
+
cacheHit?: number | null;
|
|
12
|
+
cacheWrite?: number | null;
|
|
13
|
+
cacheWrite5m?: number | null;
|
|
14
|
+
cacheWrite1h?: number | null;
|
|
15
|
+
textInput?: number | null;
|
|
16
|
+
textOutput?: number | null;
|
|
17
|
+
audioInput?: number | null;
|
|
18
|
+
imageInput?: number | null;
|
|
19
|
+
internalReasoning?: number | null;
|
|
20
|
+
webSearchPerRequest?: number | null;
|
|
21
|
+
inputBelow200k?: number | null;
|
|
22
|
+
inputAbove200k?: number | null;
|
|
23
|
+
outputBelow200k?: number | null;
|
|
24
|
+
outputAbove200k?: number | null;
|
|
25
|
+
[key: string]: unknown;
|
|
26
|
+
};
|
|
27
|
+
type X12iCatalogModelEntry = {
|
|
28
|
+
provider: string;
|
|
29
|
+
modelId: string;
|
|
30
|
+
displayName?: string;
|
|
31
|
+
canonicalSlug?: string;
|
|
32
|
+
family?: string;
|
|
33
|
+
status?: string;
|
|
34
|
+
modalities?: string[] | {
|
|
35
|
+
input?: string[];
|
|
36
|
+
output?: string[];
|
|
37
|
+
};
|
|
38
|
+
contextWindow?: number;
|
|
39
|
+
maxCompletionTokens?: number;
|
|
40
|
+
pricing?: X12iCatalogPricing;
|
|
41
|
+
capabilities?: {
|
|
42
|
+
reasoning?: boolean | string;
|
|
43
|
+
toolCalling?: boolean;
|
|
44
|
+
structuredOutputs?: boolean;
|
|
45
|
+
};
|
|
46
|
+
aliases?: string[];
|
|
47
|
+
sourceUrl?: string;
|
|
48
|
+
};
|
|
49
|
+
/**
|
|
50
|
+
* Raw catalog JSON from open-assets.x12i.com (or bundled `src/data`).
|
|
51
|
+
*
|
|
52
|
+
* `schema` and `version` are publisher metadata only — this library never reads or
|
|
53
|
+
* compares them. Remote catalogs are always treated as the latest pricing source.
|
|
54
|
+
*/
|
|
55
|
+
type X12iModelsCatalogFile = {
|
|
56
|
+
/** Publisher schema id (informational). */
|
|
57
|
+
schema?: string;
|
|
58
|
+
/** Publisher catalog revision (informational; not used for cache or compatibility). */
|
|
59
|
+
version?: string;
|
|
60
|
+
verifiedAt?: string;
|
|
61
|
+
models: X12iCatalogModelEntry[];
|
|
62
|
+
[key: string]: unknown;
|
|
63
|
+
};
|
|
64
|
+
|
|
65
|
+
declare function invalidateCatalogLoadCache(cacheKey?: string): void;
|
|
66
|
+
type LoadCatalogCachedOptions = {
|
|
67
|
+
cacheKey?: string;
|
|
68
|
+
ttlMs?: number;
|
|
69
|
+
/** Bypass cache and fetch again (e.g. `catalog refresh`). */
|
|
70
|
+
forceRefresh?: boolean;
|
|
71
|
+
};
|
|
72
|
+
/**
|
|
73
|
+
* Load catalogs with a process-wide in-memory cache.
|
|
74
|
+
* Remote fetches run at most once per TTL window (default 24h); concurrent callers share one in-flight request.
|
|
75
|
+
*/
|
|
76
|
+
declare function loadCatalogSourcesCached(options?: LoadCatalogOptions, cacheOptions?: LoadCatalogCachedOptions): Promise<LoadedCatalogs>;
|
|
77
|
+
|
|
78
|
+
type CatalogRefreshOptions = LoadCatalogOptions & {
|
|
79
|
+
cacheKey?: string;
|
|
80
|
+
cacheTtlMs?: number;
|
|
81
|
+
};
|
|
82
|
+
type CatalogRefreshResult = {
|
|
83
|
+
ok: true;
|
|
84
|
+
directCount: number;
|
|
85
|
+
openRouterCount: number;
|
|
86
|
+
directSource: "remote" | "bundled";
|
|
87
|
+
openRouterSource: "remote" | "bundled";
|
|
88
|
+
};
|
|
89
|
+
/** Fetch remote catalogs and warm the in-memory cache (forces a network load). */
|
|
90
|
+
declare function refreshAiModelsCatalog(options?: CatalogRefreshOptions): Promise<CatalogRefreshResult>;
|
|
91
|
+
type CatalogVerifyOptions = LoadCatalogOptions & {
|
|
92
|
+
cacheKey?: string;
|
|
93
|
+
cacheTtlMs?: number;
|
|
94
|
+
};
|
|
95
|
+
type CatalogVerifyReport = {
|
|
96
|
+
ok: boolean;
|
|
97
|
+
directCount: number;
|
|
98
|
+
openRouterCount: number;
|
|
99
|
+
directSource: "remote" | "bundled";
|
|
100
|
+
openRouterSource: "remote" | "bundled";
|
|
101
|
+
directUrl: string;
|
|
102
|
+
openRouterUrl: string;
|
|
103
|
+
};
|
|
104
|
+
/** Load and validate both catalogs (uses cache unless `forceRefresh`). */
|
|
105
|
+
declare function verifyAiModelsCatalog(options?: CatalogVerifyOptions & {
|
|
106
|
+
forceRefresh?: boolean;
|
|
107
|
+
}): Promise<CatalogVerifyReport>;
|
|
108
|
+
|
|
109
|
+
/** Default in-memory catalog cache lifetime (24 hours). */
|
|
110
|
+
declare const DEFAULT_CATALOG_CACHE_TTL_MS: number;
|
|
111
|
+
declare function resolveCatalogCacheTtlMs(override?: number): number;
|
|
112
|
+
|
|
113
|
+
export { type CatalogRefreshOptions as C, DEFAULT_CATALOG_CACHE_TTL_MS as D, type LoadCatalogCachedOptions as L, type X12iCatalogModelEntry as X, type CatalogRefreshResult as a, type CatalogSourceKind as b, type CatalogVerifyOptions as c, type CatalogVerifyReport as d, DEFAULT_DIRECT_CATALOG_URL as e, DEFAULT_OPENROUTER_CATALOG_URL as f, type X12iModelsCatalogFile as g, resolveCatalogCacheTtlMs as h, invalidateCatalogLoadCache as i, loadCatalogSourcesCached as l, refreshAiModelsCatalog as r, verifyAiModelsCatalog as v };
|