@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 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: 30, note: "10-min ceiling (no duration given)" },
1671
- { identifier: "video-analysis:gemini-3-flash:60s", credits: 6 },
1672
- { identifier: "video-analysis:gemini-3-flash:180s", credits: 7 },
1673
- { identifier: "video-analysis:gemini-3-flash:360s", credits: 18 },
1674
- { identifier: "video-analysis:gemini-3-flash:600s", credits: 30, note: "10-min ceiling" }
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: 81, note: "10-min ceiling (no duration given)" },
1688
- { identifier: "video-analysis:gemini-3.6-flash:60s", credits: 14 },
1689
- { identifier: "video-analysis:gemini-3.6-flash:180s", credits: 19 },
1690
- { identifier: "video-analysis:gemini-3.6-flash:360s", credits: 49 },
1691
- { identifier: "video-analysis:gemini-3.6-flash:600s", credits: 81, note: "10-min ceiling" }
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: 120, note: "10-min ceiling (no duration given)" },
1705
- { identifier: "video-analysis:gemini-3.1-pro:60s", credits: 21 },
1706
- { identifier: "video-analysis:gemini-3.1-pro:180s", credits: 27 },
1707
- { identifier: "video-analysis:gemini-3.1-pro:360s", credits: 72 },
1708
- { identifier: "video-analysis:gemini-3.1-pro:600s", credits: 120, note: "10-min ceiling" }
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: 200, note: "10-min ceiling (no duration given)" },
1725
- { identifier: "video-analysis:mixed:60s", credits: 34 },
1726
- { identifier: "video-analysis:mixed:180s", credits: 46 },
1727
- { identifier: "video-analysis:mixed:360s", credits: 120 },
1728
- { identifier: "video-analysis:mixed:600s", credits: 200, note: "10-min ceiling" }
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": 6,
12514
- "video-analysis:gemini-3-flash:180s": 7,
12515
- "video-analysis:gemini-3-flash:360s": 18,
12516
- "video-analysis:gemini-3-flash:600s": 30,
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": 14,
12520
- "video-analysis:gemini-3.6-flash:180s": 19,
12521
- "video-analysis:gemini-3.6-flash:360s": 49,
12522
- "video-analysis:gemini-3.6-flash:600s": 81,
12523
- "video-analysis:gemini-3.1-pro:60s": 21,
12524
- "video-analysis:gemini-3.1-pro:180s": 27,
12525
- "video-analysis:gemini-3.1-pro:360s": 72,
12526
- "video-analysis:gemini-3.1-pro:600s": 120,
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": 34,
12531
- "video-analysis:mixed:180s": 46,
12532
- "video-analysis:mixed:360s": 120,
12533
- "video-analysis:mixed:600s": 200
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;