@nodaro/shared 1.22.0 → 1.23.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/dist/index.cjs +57 -36
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +33 -1
- package/dist/index.d.ts +33 -1
- package/dist/index.js +56 -37
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
- package/src/__tests__/llm-models.test.ts +19 -0
- package/src/__tests__/video-analysis-catalog-sync.test.ts +39 -0
- package/src/index.ts +3 -0
- package/src/llm-models.ts +43 -0
- package/src/model-catalog.ts +20 -20
- package/src/video-analysis-pricing.ts +16 -16
package/dist/index.cjs
CHANGED
|
@@ -1667,11 +1667,11 @@ var VIDEO_MODELS = {
|
|
|
1667
1667
|
description: "Legacy fast-tier analysis model (pre-2026-07). Kept so stored raw-model configs keep running and keep pricing under their own identifier; new fast-tier runs use the current fast model.",
|
|
1668
1668
|
useCases: ["video-analysis", "shot-list", "fast"],
|
|
1669
1669
|
pricing: [
|
|
1670
|
-
{ identifier: "video-analysis:gemini-3-flash", credits:
|
|
1671
|
-
{ identifier: "video-analysis:gemini-3-flash:60s", credits:
|
|
1672
|
-
{ identifier: "video-analysis:gemini-3-flash:180s", credits:
|
|
1673
|
-
{ identifier: "video-analysis:gemini-3-flash:360s", credits:
|
|
1674
|
-
{ identifier: "video-analysis:gemini-3-flash:600s", credits:
|
|
1670
|
+
{ identifier: "video-analysis:gemini-3-flash", credits: 112, note: "10-min ceiling (no duration given)" },
|
|
1671
|
+
{ identifier: "video-analysis:gemini-3-flash:60s", credits: 21 },
|
|
1672
|
+
{ identifier: "video-analysis:gemini-3-flash:180s", credits: 24 },
|
|
1673
|
+
{ identifier: "video-analysis:gemini-3-flash:360s", credits: 68 },
|
|
1674
|
+
{ identifier: "video-analysis:gemini-3-flash:600s", credits: 112, note: "10-min ceiling" }
|
|
1675
1675
|
]
|
|
1676
1676
|
},
|
|
1677
1677
|
"gemini-3.6-flash-video-analysis": {
|
|
@@ -1684,11 +1684,11 @@ var VIDEO_MODELS = {
|
|
|
1684
1684
|
description: "Analyze a video into a structured shot list (scenes, camera, audio) \u2014 fast, economy tier. Billed per duration bucket.",
|
|
1685
1685
|
useCases: ["video-analysis", "shot-list", "fast"],
|
|
1686
1686
|
pricing: [
|
|
1687
|
-
{ identifier: "video-analysis:gemini-3.6-flash", credits:
|
|
1688
|
-
{ identifier: "video-analysis:gemini-3.6-flash:60s", credits:
|
|
1689
|
-
{ identifier: "video-analysis:gemini-3.6-flash:180s", credits:
|
|
1690
|
-
{ identifier: "video-analysis:gemini-3.6-flash:360s", credits:
|
|
1691
|
-
{ identifier: "video-analysis:gemini-3.6-flash:600s", credits:
|
|
1687
|
+
{ identifier: "video-analysis:gemini-3.6-flash", credits: 291, note: "10-min ceiling (no duration given)" },
|
|
1688
|
+
{ identifier: "video-analysis:gemini-3.6-flash:60s", credits: 54 },
|
|
1689
|
+
{ identifier: "video-analysis:gemini-3.6-flash:180s", credits: 63 },
|
|
1690
|
+
{ identifier: "video-analysis:gemini-3.6-flash:360s", credits: 175 },
|
|
1691
|
+
{ identifier: "video-analysis:gemini-3.6-flash:600s", credits: 291, note: "10-min ceiling" }
|
|
1692
1692
|
]
|
|
1693
1693
|
},
|
|
1694
1694
|
"gemini-3.1-pro-video-analysis": {
|
|
@@ -1701,11 +1701,11 @@ var VIDEO_MODELS = {
|
|
|
1701
1701
|
description: "Analyze a video into a structured shot list (scenes, camera, audio) \u2014 higher-fidelity, default tier. Billed per duration bucket.",
|
|
1702
1702
|
useCases: ["video-analysis", "shot-list", "cinematic"],
|
|
1703
1703
|
pricing: [
|
|
1704
|
-
{ identifier: "video-analysis:gemini-3.1-pro", credits:
|
|
1705
|
-
{ identifier: "video-analysis:gemini-3.1-pro:60s", credits:
|
|
1706
|
-
{ identifier: "video-analysis:gemini-3.1-pro:180s", credits:
|
|
1707
|
-
{ identifier: "video-analysis:gemini-3.1-pro:360s", credits:
|
|
1708
|
-
{ identifier: "video-analysis:gemini-3.1-pro:600s", credits:
|
|
1704
|
+
{ identifier: "video-analysis:gemini-3.1-pro", credits: 448, note: "10-min ceiling (no duration given)" },
|
|
1705
|
+
{ identifier: "video-analysis:gemini-3.1-pro:60s", credits: 84 },
|
|
1706
|
+
{ identifier: "video-analysis:gemini-3.1-pro:180s", credits: 96 },
|
|
1707
|
+
{ identifier: "video-analysis:gemini-3.1-pro:360s", credits: 269 },
|
|
1708
|
+
{ identifier: "video-analysis:gemini-3.1-pro:600s", credits: 448, note: "10-min ceiling" }
|
|
1709
1709
|
]
|
|
1710
1710
|
},
|
|
1711
1711
|
// Both mixed tiers are variants of the same advanced multi-engine analysis
|
|
@@ -1721,11 +1721,11 @@ var VIDEO_MODELS = {
|
|
|
1721
1721
|
description: "Our most advanced analysis tier \u2014 multiple analysis engines combined into one result for maximum completeness and accuracy. Billed per duration bucket.",
|
|
1722
1722
|
useCases: ["video-analysis", "shot-list", "premium", "most-complete"],
|
|
1723
1723
|
pricing: [
|
|
1724
|
-
{ identifier: "video-analysis:mixed", credits:
|
|
1725
|
-
{ identifier: "video-analysis:mixed:60s", credits:
|
|
1726
|
-
{ identifier: "video-analysis:mixed:180s", credits:
|
|
1727
|
-
{ identifier: "video-analysis:mixed:360s", credits:
|
|
1728
|
-
{ identifier: "video-analysis:mixed:600s", credits:
|
|
1724
|
+
{ identifier: "video-analysis:mixed", credits: 739, note: "10-min ceiling (no duration given)" },
|
|
1725
|
+
{ identifier: "video-analysis:mixed:60s", credits: 137 },
|
|
1726
|
+
{ identifier: "video-analysis:mixed:180s", credits: 158 },
|
|
1727
|
+
{ identifier: "video-analysis:mixed:360s", credits: 443 },
|
|
1728
|
+
{ identifier: "video-analysis:mixed:600s", credits: 739, note: "10-min ceiling" }
|
|
1729
1729
|
]
|
|
1730
1730
|
}
|
|
1731
1731
|
};
|
|
@@ -4626,6 +4626,25 @@ function effectiveReasoningEffort(modelId, requested, advanced = false) {
|
|
|
4626
4626
|
}
|
|
4627
4627
|
return best;
|
|
4628
4628
|
}
|
|
4629
|
+
var LLM_ROUTE_DEFAULTS = {
|
|
4630
|
+
"llm-chat": { temperature: 0.7, maxTokens: 8192 },
|
|
4631
|
+
"ai-writer": { temperature: 0.7, maxTokens: 8192 },
|
|
4632
|
+
"prompt-helper": { temperature: 0.7, maxTokens: 8192, structuredOutput: true },
|
|
4633
|
+
"generate-script": { maxTokens: 16384, structuredOutput: true },
|
|
4634
|
+
"qa-check": { maxTokens: 1024, structuredOutput: true },
|
|
4635
|
+
"image-critic": { maxTokens: 1024, structuredOutput: true },
|
|
4636
|
+
"image-to-text": { maxTokens: 1024 },
|
|
4637
|
+
"describe-to-picker": { structuredOutput: true },
|
|
4638
|
+
"scene-graph-ai": { temperature: 0.3, maxTokens: 4096, structuredOutput: true },
|
|
4639
|
+
"after-effects": { temperature: 0.3, maxTokens: 2048, structuredOutput: true },
|
|
4640
|
+
"lottie-overlay": { temperature: 0.3, maxTokens: 2048, structuredOutput: true },
|
|
4641
|
+
"motion-graphics": { temperature: 0.3, maxTokens: 2048, structuredOutput: true },
|
|
4642
|
+
"motion-graphics-lottie": { temperature: 0.3, maxTokens: 8192, structuredOutput: true },
|
|
4643
|
+
"3d-title": { temperature: 0.4, maxTokens: 3072, structuredOutput: true }
|
|
4644
|
+
};
|
|
4645
|
+
function llmRouteDefaults(feature) {
|
|
4646
|
+
return feature && LLM_ROUTE_DEFAULTS[feature] || {};
|
|
4647
|
+
}
|
|
4629
4648
|
function bumpTier(tier) {
|
|
4630
4649
|
if (tier === "economy") return "standard";
|
|
4631
4650
|
if (tier === "standard") return "premium";
|
|
@@ -12510,27 +12529,27 @@ var WINDOW_OVERLAP = 5;
|
|
|
12510
12529
|
var VIDEO_ANALYSIS_WINDOW = { LEN: WINDOW_LEN, STRIDE: WINDOW_STRIDE, OVERLAP: WINDOW_OVERLAP, SINGLE_MAX: 180 };
|
|
12511
12530
|
var VIDEO_ANALYSIS_BUCKET_CREDITS = {
|
|
12512
12531
|
// Legacy fast-tier model (pre-2026-07) — kept for stored raw-id configs.
|
|
12513
|
-
"video-analysis:gemini-3-flash:60s":
|
|
12514
|
-
"video-analysis:gemini-3-flash:180s":
|
|
12515
|
-
"video-analysis:gemini-3-flash:360s":
|
|
12516
|
-
"video-analysis:gemini-3-flash:600s":
|
|
12532
|
+
"video-analysis:gemini-3-flash:60s": 21,
|
|
12533
|
+
"video-analysis:gemini-3-flash:180s": 24,
|
|
12534
|
+
"video-analysis:gemini-3-flash:360s": 68,
|
|
12535
|
+
"video-analysis:gemini-3-flash:600s": 112,
|
|
12517
12536
|
// Current fast tier — regenerated from the private formula for its backing
|
|
12518
12537
|
// model; higher than the legacy fast schedule but still ≤ pro per bucket.
|
|
12519
|
-
"video-analysis:gemini-3.6-flash:60s":
|
|
12520
|
-
"video-analysis:gemini-3.6-flash:180s":
|
|
12521
|
-
"video-analysis:gemini-3.6-flash:360s":
|
|
12522
|
-
"video-analysis:gemini-3.6-flash:600s":
|
|
12523
|
-
"video-analysis:gemini-3.1-pro:60s":
|
|
12524
|
-
"video-analysis:gemini-3.1-pro:180s":
|
|
12525
|
-
"video-analysis:gemini-3.1-pro:360s":
|
|
12526
|
-
"video-analysis:gemini-3.1-pro:600s":
|
|
12538
|
+
"video-analysis:gemini-3.6-flash:60s": 54,
|
|
12539
|
+
"video-analysis:gemini-3.6-flash:180s": 63,
|
|
12540
|
+
"video-analysis:gemini-3.6-flash:360s": 175,
|
|
12541
|
+
"video-analysis:gemini-3.6-flash:600s": 291,
|
|
12542
|
+
"video-analysis:gemini-3.1-pro:60s": 84,
|
|
12543
|
+
"video-analysis:gemini-3.1-pro:180s": 96,
|
|
12544
|
+
"video-analysis:gemini-3.1-pro:360s": 269,
|
|
12545
|
+
"video-analysis:gemini-3.1-pro:600s": 448,
|
|
12527
12546
|
// Mixed tiers (`mixed` + `mixed-fast`) share ONE credit family — they are
|
|
12528
12547
|
// variants of the same engine plan (plan internals live in the private
|
|
12529
12548
|
// analysis plugin). Admin-tunable via model_pricing like every other row.
|
|
12530
|
-
"video-analysis:mixed:60s":
|
|
12531
|
-
"video-analysis:mixed:180s":
|
|
12532
|
-
"video-analysis:mixed:360s":
|
|
12533
|
-
"video-analysis:mixed:600s":
|
|
12549
|
+
"video-analysis:mixed:60s": 137,
|
|
12550
|
+
"video-analysis:mixed:180s": 158,
|
|
12551
|
+
"video-analysis:mixed:360s": 443,
|
|
12552
|
+
"video-analysis:mixed:600s": 739
|
|
12534
12553
|
};
|
|
12535
12554
|
function videoAnalysisCreditSegment(modelOrSentinel) {
|
|
12536
12555
|
return modelOrSentinel === "mixed-fast" ? "mixed" : modelOrSentinel;
|
|
@@ -12744,6 +12763,7 @@ exports.LLM_MODALITY_CAPS = LLM_MODALITY_CAPS;
|
|
|
12744
12763
|
exports.LLM_MODELS = LLM_MODELS;
|
|
12745
12764
|
exports.LLM_MODEL_IDS = LLM_MODEL_IDS;
|
|
12746
12765
|
exports.LLM_REASONING_EFFORTS = LLM_REASONING_EFFORTS;
|
|
12766
|
+
exports.LLM_ROUTE_DEFAULTS = LLM_ROUTE_DEFAULTS;
|
|
12747
12767
|
exports.LLM_TEXT_INPUT_MAX = LLM_TEXT_INPUT_MAX;
|
|
12748
12768
|
exports.LOCATION_ASSET_TYPES = LOCATION_ASSET_TYPES;
|
|
12749
12769
|
exports.LOCATION_ASSET_VARIANTS = LOCATION_ASSET_VARIANTS;
|
|
@@ -13152,6 +13172,7 @@ exports.jsonResultToList = jsonResultToList;
|
|
|
13152
13172
|
exports.listBoardTemplates = listBoardTemplates;
|
|
13153
13173
|
exports.listModels = listModels;
|
|
13154
13174
|
exports.listSlotSids = listSlotSids;
|
|
13175
|
+
exports.llmRouteDefaults = llmRouteDefaults;
|
|
13155
13176
|
exports.locationMentionSlug = locationMentionSlug;
|
|
13156
13177
|
exports.locationReferencePhotoKindLabel = locationReferencePhotoKindLabel;
|
|
13157
13178
|
exports.locationUsageModeLabel = locationUsageModeLabel;
|