vidspotai-shared 1.0.69-dev.0 → 1.0.69
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/lib/globals/aiModels/enums.d.ts +6 -63
- package/lib/globals/aiModels/enums.d.ts.map +1 -1
- package/lib/globals/aiModels/enums.js +9 -78
- package/lib/globals/aiModels/index.d.ts +30 -2
- package/lib/globals/aiModels/index.d.ts.map +1 -1
- package/lib/globals/aiModels/index.js +35 -7
- package/lib/globals/aiModels/providers/bytedance.d.ts.map +1 -1
- package/lib/globals/aiModels/providers/bytedance.js +0 -19
- package/lib/globals/aiModels/providers/google.d.ts.map +1 -1
- package/lib/globals/aiModels/providers/google.js +2 -150
- package/lib/globals/aiModels/providers/kling.d.ts.map +1 -1
- package/lib/globals/aiModels/providers/kling.js +37 -280
- package/lib/globals/aiModels/providers/minimax.d.ts.map +1 -1
- package/lib/globals/aiModels/providers/minimax.js +11 -76
- package/lib/globals/aiModels/providers/openai.d.ts.map +1 -1
- package/lib/globals/aiModels/providers/openai.js +6 -90
- package/lib/globals/aiModels/providers/pixverse.d.ts.map +1 -1
- package/lib/globals/aiModels/providers/pixverse.js +29 -111
- package/lib/globals/aiModels/providers/runway.d.ts.map +1 -1
- package/lib/globals/aiModels/providers/runway.js +2 -64
- package/lib/globals/aiModels/types.d.ts +1 -20
- package/lib/globals/aiModels/types.d.ts.map +1 -1
- package/lib/globals/ttsModels/index.d.ts +0 -2
- package/lib/globals/ttsModels/index.d.ts.map +1 -1
- package/lib/globals/ttsModels/index.js +1 -9
- package/lib/globals/ttsModels/types.d.ts +1 -1
- package/lib/globals/ttsModels/types.d.ts.map +1 -1
- package/lib/globals/ttsModels/voices.d.ts +4 -39
- package/lib/globals/ttsModels/voices.d.ts.map +1 -1
- package/lib/globals/ttsModels/voices.js +26 -273
- package/lib/globals/types.d.ts +1 -59
- package/lib/globals/types.d.ts.map +1 -1
- package/lib/globals/types.js +2 -81
- package/lib/index.d.ts +0 -1
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +0 -1
- package/lib/models/index.d.ts +0 -6
- package/lib/models/index.d.ts.map +1 -1
- package/lib/models/index.js +0 -6
- package/lib/models/user.model.d.ts +1 -12
- package/lib/models/user.model.d.ts.map +1 -1
- package/lib/models/video.model.d.ts +8 -120
- package/lib/models/video.model.d.ts.map +1 -1
- package/lib/models/video.model.js +0 -10
- package/lib/services/aiGen/aiGenFactory.service.d.ts +1 -21
- package/lib/services/aiGen/aiGenFactory.service.d.ts.map +1 -1
- package/lib/services/aiGen/aiGenFactory.service.js +21 -84
- package/lib/services/aiGen/helpers.d.ts.map +1 -1
- package/lib/services/aiGen/helpers.js +0 -10
- package/lib/services/aiGen/providers/alibaba/alibaba.d.ts +3 -14
- package/lib/services/aiGen/providers/alibaba/alibaba.d.ts.map +1 -1
- package/lib/services/aiGen/providers/alibaba/alibaba.js +22 -155
- package/lib/services/aiGen/providers/azure/azure.service.d.ts +14 -0
- package/lib/services/aiGen/providers/azure/azure.service.d.ts.map +1 -0
- package/lib/services/aiGen/providers/azure/azure.service.js +108 -0
- package/lib/services/aiGen/providers/azure/index.d.ts +2 -0
- package/lib/services/aiGen/providers/azure/index.d.ts.map +1 -0
- package/lib/services/aiGen/providers/{pexels → azure}/index.js +1 -1
- package/lib/services/aiGen/providers/baseAiGenProvider.service.d.ts +4 -22
- package/lib/services/aiGen/providers/baseAiGenProvider.service.d.ts.map +1 -1
- package/lib/services/aiGen/providers/baseAiGenProvider.service.js +0 -32
- package/lib/services/aiGen/providers/bytedance/bytedance.service.d.ts.map +1 -1
- package/lib/services/aiGen/providers/bytedance/bytedance.service.js +25 -13
- package/lib/services/aiGen/providers/google/google.service.d.ts +2 -11
- package/lib/services/aiGen/providers/google/google.service.d.ts.map +1 -1
- package/lib/services/aiGen/providers/google/google.service.js +28 -245
- package/lib/services/aiGen/providers/index.d.ts +0 -3
- package/lib/services/aiGen/providers/index.d.ts.map +1 -1
- package/lib/services/aiGen/providers/index.js +0 -3
- package/lib/services/aiGen/providers/kling/index.d.ts +0 -1
- package/lib/services/aiGen/providers/kling/index.d.ts.map +1 -1
- package/lib/services/aiGen/providers/kling/index.js +0 -1
- package/lib/services/aiGen/providers/kling/kling.service.d.ts +1 -12
- package/lib/services/aiGen/providers/kling/kling.service.d.ts.map +1 -1
- package/lib/services/aiGen/providers/kling/kling.service.js +26 -357
- package/lib/services/aiGen/providers/kling/types.d.ts +0 -105
- package/lib/services/aiGen/providers/kling/types.d.ts.map +1 -1
- package/lib/services/aiGen/providers/minimax/minimax.service.d.ts +2 -15
- package/lib/services/aiGen/providers/minimax/minimax.service.d.ts.map +1 -1
- package/lib/services/aiGen/providers/minimax/minimax.service.js +5 -128
- package/lib/services/aiGen/providers/minimax/types.d.ts +1 -10
- package/lib/services/aiGen/providers/minimax/types.d.ts.map +1 -1
- package/lib/services/aiGen/providers/openai/openai.service.d.ts +2 -8
- package/lib/services/aiGen/providers/openai/openai.service.d.ts.map +1 -1
- package/lib/services/aiGen/providers/openai/openai.service.js +7 -184
- package/lib/services/aiGen/providers/pixverse/pixverse.service.d.ts.map +1 -1
- package/lib/services/aiGen/providers/pixverse/pixverse.service.js +2 -125
- package/lib/services/aiGen/providers/runway/runway.service.d.ts +2 -12
- package/lib/services/aiGen/providers/runway/runway.service.d.ts.map +1 -1
- package/lib/services/aiGen/providers/runway/runway.service.js +21 -224
- package/lib/services/aiGen/providers/types.d.ts +6 -263
- package/lib/services/aiGen/providers/types.d.ts.map +1 -1
- package/lib/services/analytics.service.js +4 -2
- package/lib/services/bullmq.service.d.ts +1 -6
- package/lib/services/bullmq.service.d.ts.map +1 -1
- package/lib/services/bullmq.service.js +14 -62
- package/lib/services/credit.service.d.ts.map +1 -1
- package/lib/services/credit.service.js +7 -45
- package/lib/services/firestore.service.d.ts +0 -17
- package/lib/services/firestore.service.d.ts.map +1 -1
- package/lib/services/firestore.service.js +0 -30
- package/lib/services/gcp/index.d.ts +0 -1
- package/lib/services/gcp/index.d.ts.map +1 -1
- package/lib/services/gcp/index.js +0 -1
- package/lib/services/index.d.ts +0 -13
- package/lib/services/index.d.ts.map +1 -1
- package/lib/services/index.js +0 -13
- package/lib/services/redis.service.d.ts +0 -9
- package/lib/services/redis.service.d.ts.map +1 -1
- package/lib/services/redis.service.js +11 -20
- package/lib/services/tts/index.d.ts +0 -2
- package/lib/services/tts/index.d.ts.map +1 -1
- package/lib/services/tts/index.js +0 -2
- package/lib/services/tts/providers/elevenlabs.service.d.ts.map +1 -1
- package/lib/services/tts/providers/elevenlabs.service.js +24 -91
- package/lib/services/tts/ttsFactory.service.d.ts.map +1 -1
- package/lib/services/tts/ttsFactory.service.js +0 -6
- package/lib/services/tts/types.d.ts +0 -33
- package/lib/services/tts/types.d.ts.map +1 -1
- package/lib/utils/errors.d.ts +0 -8
- package/lib/utils/errors.d.ts.map +1 -1
- package/lib/utils/errors.js +0 -8
- package/lib/utils/helpers.d.ts +0 -13
- package/lib/utils/helpers.d.ts.map +1 -1
- package/lib/utils/helpers.js +11 -48
- package/lib/utils/logger.d.ts.map +1 -1
- package/lib/utils/logger.js +1 -37
- package/package.json +1 -5
- package/lib/globals/aiModels/providers/alibaba.d.ts +0 -4
- package/lib/globals/aiModels/providers/alibaba.d.ts.map +0 -1
- package/lib/globals/aiModels/providers/alibaba.js +0 -194
- package/lib/globals/aiModels/providers/elevenlabs.d.ts +0 -14
- package/lib/globals/aiModels/providers/elevenlabs.d.ts.map +0 -1
- package/lib/globals/aiModels/providers/elevenlabs.js +0 -29
- package/lib/globals/aiModels/providers/pixverseTemplates.d.ts +0 -36
- package/lib/globals/aiModels/providers/pixverseTemplates.d.ts.map +0 -1
- package/lib/globals/aiModels/providers/pixverseTemplates.js +0 -42
- package/lib/globals/aiModels/tierHelpers.d.ts +0 -33
- package/lib/globals/aiModels/tierHelpers.d.ts.map +0 -1
- package/lib/globals/aiModels/tierHelpers.js +0 -109
- package/lib/globals/ttsModels/providers/minimax.d.ts +0 -8
- package/lib/globals/ttsModels/providers/minimax.d.ts.map +0 -1
- package/lib/globals/ttsModels/providers/minimax.js +0 -18
- package/lib/globals/ttsModels/providers/openai.d.ts +0 -12
- package/lib/globals/ttsModels/providers/openai.d.ts.map +0 -1
- package/lib/globals/ttsModels/providers/openai.js +0 -22
- package/lib/models/agent.model.d.ts +0 -357
- package/lib/models/agent.model.d.ts.map +0 -1
- package/lib/models/agent.model.js +0 -21
- package/lib/models/cachedAsset.model.d.ts +0 -18
- package/lib/models/cachedAsset.model.d.ts.map +0 -1
- package/lib/models/cachedAsset.model.js +0 -2
- package/lib/models/cachedRawAsset.model.d.ts +0 -20
- package/lib/models/cachedRawAsset.model.d.ts.map +0 -1
- package/lib/models/cachedRawAsset.model.js +0 -2
- package/lib/models/image.model.d.ts +0 -47
- package/lib/models/image.model.d.ts.map +0 -1
- package/lib/models/image.model.js +0 -2
- package/lib/models/notification.model.d.ts +0 -25
- package/lib/models/notification.model.d.ts.map +0 -1
- package/lib/models/notification.model.js +0 -2
- package/lib/models/ref.model.d.ts +0 -80
- package/lib/models/ref.model.d.ts.map +0 -1
- package/lib/models/ref.model.js +0 -13
- package/lib/models/share.model.d.ts +0 -29
- package/lib/models/share.model.d.ts.map +0 -1
- package/lib/models/share.model.js +0 -2
- package/lib/schemas/agentPersona.schema.d.ts +0 -10
- package/lib/schemas/agentPersona.schema.d.ts.map +0 -1
- package/lib/schemas/agentPersona.schema.js +0 -11
- package/lib/schemas/agentRunJob.schema.d.ts +0 -105
- package/lib/schemas/agentRunJob.schema.d.ts.map +0 -1
- package/lib/schemas/agentRunJob.schema.js +0 -88
- package/lib/schemas/brandKit.schema.d.ts +0 -113
- package/lib/schemas/brandKit.schema.d.ts.map +0 -1
- package/lib/schemas/brandKit.schema.js +0 -46
- package/lib/schemas/brief.schema.d.ts +0 -263
- package/lib/schemas/brief.schema.d.ts.map +0 -1
- package/lib/schemas/brief.schema.js +0 -157
- package/lib/schemas/index.d.ts +0 -7
- package/lib/schemas/index.d.ts.map +0 -1
- package/lib/schemas/index.js +0 -22
- package/lib/schemas/project.schema.d.ts +0 -1025
- package/lib/schemas/project.schema.d.ts.map +0 -1
- package/lib/schemas/project.schema.js +0 -256
- package/lib/schemas/videoPlan.schema.d.ts +0 -590
- package/lib/schemas/videoPlan.schema.d.ts.map +0 -1
- package/lib/schemas/videoPlan.schema.js +0 -412
- package/lib/services/agent/beatSnap.d.ts +0 -10
- package/lib/services/agent/beatSnap.d.ts.map +0 -1
- package/lib/services/agent/beatSnap.js +0 -128
- package/lib/services/agent/bibleBuilder.d.ts +0 -43
- package/lib/services/agent/bibleBuilder.d.ts.map +0 -1
- package/lib/services/agent/bibleBuilder.js +0 -102
- package/lib/services/agent/bibleImageVision.d.ts +0 -45
- package/lib/services/agent/bibleImageVision.d.ts.map +0 -1
- package/lib/services/agent/bibleImageVision.js +0 -169
- package/lib/services/agent/chatAgent.d.ts +0 -79
- package/lib/services/agent/chatAgent.d.ts.map +0 -1
- package/lib/services/agent/chatAgent.js +0 -136
- package/lib/services/agent/costPreflight.d.ts +0 -61
- package/lib/services/agent/costPreflight.d.ts.map +0 -1
- package/lib/services/agent/costPreflight.js +0 -143
- package/lib/services/agent/critic.d.ts +0 -103
- package/lib/services/agent/critic.d.ts.map +0 -1
- package/lib/services/agent/critic.js +0 -139
- package/lib/services/agent/editClassifier.d.ts +0 -262
- package/lib/services/agent/editClassifier.d.ts.map +0 -1
- package/lib/services/agent/editClassifier.js +0 -186
- package/lib/services/agent/eval/index.d.ts +0 -5
- package/lib/services/agent/eval/index.d.ts.map +0 -1
- package/lib/services/agent/eval/index.js +0 -20
- package/lib/services/agent/eval/judge.d.ts +0 -14
- package/lib/services/agent/eval/judge.d.ts.map +0 -1
- package/lib/services/agent/eval/judge.js +0 -96
- package/lib/services/agent/eval/recorder.d.ts +0 -28
- package/lib/services/agent/eval/recorder.d.ts.map +0 -1
- package/lib/services/agent/eval/recorder.js +0 -100
- package/lib/services/agent/eval/seedBriefs.d.ts +0 -16
- package/lib/services/agent/eval/seedBriefs.d.ts.map +0 -1
- package/lib/services/agent/eval/seedBriefs.js +0 -1188
- package/lib/services/agent/eval/types.d.ts +0 -230
- package/lib/services/agent/eval/types.d.ts.map +0 -1
- package/lib/services/agent/eval/types.js +0 -73
- package/lib/services/agent/executor.d.ts +0 -141
- package/lib/services/agent/executor.d.ts.map +0 -1
- package/lib/services/agent/executor.js +0 -561
- package/lib/services/agent/globalActions.d.ts +0 -49
- package/lib/services/agent/globalActions.d.ts.map +0 -1
- package/lib/services/agent/globalActions.js +0 -328
- package/lib/services/agent/index.d.ts +0 -38
- package/lib/services/agent/index.d.ts.map +0 -1
- package/lib/services/agent/index.js +0 -53
- package/lib/services/agent/llmCaller.d.ts +0 -144
- package/lib/services/agent/llmCaller.d.ts.map +0 -1
- package/lib/services/agent/llmCaller.js +0 -16
- package/lib/services/agent/llmCallerAnthropic.d.ts +0 -90
- package/lib/services/agent/llmCallerAnthropic.d.ts.map +0 -1
- package/lib/services/agent/llmCallerAnthropic.js +0 -255
- package/lib/services/agent/llmCallerGateway.d.ts +0 -61
- package/lib/services/agent/llmCallerGateway.d.ts.map +0 -1
- package/lib/services/agent/llmCallerGateway.js +0 -360
- package/lib/services/agent/llmCallerRegistry.d.ts +0 -6
- package/lib/services/agent/llmCallerRegistry.d.ts.map +0 -1
- package/lib/services/agent/llmCallerRegistry.js +0 -39
- package/lib/services/agent/modelQualityNotes.d.ts +0 -100
- package/lib/services/agent/modelQualityNotes.d.ts.map +0 -1
- package/lib/services/agent/modelQualityNotes.js +0 -248
- package/lib/services/agent/modelRouter.d.ts +0 -41
- package/lib/services/agent/modelRouter.d.ts.map +0 -1
- package/lib/services/agent/modelRouter.js +0 -65
- package/lib/services/agent/musicSelect.d.ts +0 -23
- package/lib/services/agent/musicSelect.d.ts.map +0 -1
- package/lib/services/agent/musicSelect.js +0 -109
- package/lib/services/agent/overlayRenderer.d.ts +0 -67
- package/lib/services/agent/overlayRenderer.d.ts.map +0 -1
- package/lib/services/agent/overlayRenderer.js +0 -253
- package/lib/services/agent/perSceneCritic.d.ts +0 -90
- package/lib/services/agent/perSceneCritic.d.ts.map +0 -1
- package/lib/services/agent/perSceneCritic.js +0 -125
- package/lib/services/agent/personas.d.ts +0 -78
- package/lib/services/agent/personas.d.ts.map +0 -1
- package/lib/services/agent/personas.js +0 -177
- package/lib/services/agent/planDiff.d.ts +0 -76
- package/lib/services/agent/planDiff.d.ts.map +0 -1
- package/lib/services/agent/planDiff.js +0 -182
- package/lib/services/agent/planMutations.d.ts +0 -46
- package/lib/services/agent/planMutations.d.ts.map +0 -1
- package/lib/services/agent/planMutations.js +0 -120
- package/lib/services/agent/planner/Planner.d.ts +0 -107
- package/lib/services/agent/planner/Planner.d.ts.map +0 -1
- package/lib/services/agent/planner/Planner.js +0 -591
- package/lib/services/agent/planner/overlaySanity.d.ts +0 -7
- package/lib/services/agent/planner/overlaySanity.d.ts.map +0 -1
- package/lib/services/agent/planner/overlaySanity.js +0 -86
- package/lib/services/agent/planner/promptSections.d.ts +0 -25
- package/lib/services/agent/planner/promptSections.d.ts.map +0 -1
- package/lib/services/agent/planner/promptSections.js +0 -174
- package/lib/services/agent/planner/repair.d.ts +0 -16
- package/lib/services/agent/planner/repair.d.ts.map +0 -1
- package/lib/services/agent/planner/repair.js +0 -51
- package/lib/services/agent/planner/structuralRules.d.ts +0 -10
- package/lib/services/agent/planner/structuralRules.d.ts.map +0 -1
- package/lib/services/agent/planner/structuralRules.js +0 -111
- package/lib/services/agent/planner/validators.d.ts +0 -65
- package/lib/services/agent/planner/validators.d.ts.map +0 -1
- package/lib/services/agent/planner/validators.js +0 -284
- package/lib/services/agent/planner.d.ts +0 -3
- package/lib/services/agent/planner.d.ts.map +0 -1
- package/lib/services/agent/planner.js +0 -14
- package/lib/services/agent/providerFallback/chains.d.ts +0 -100
- package/lib/services/agent/providerFallback/chains.d.ts.map +0 -1
- package/lib/services/agent/providerFallback/chains.js +0 -198
- package/lib/services/agent/providerFallback/classifier.d.ts +0 -36
- package/lib/services/agent/providerFallback/classifier.d.ts.map +0 -1
- package/lib/services/agent/providerFallback/classifier.js +0 -103
- package/lib/services/agent/providerFallback/index.d.ts +0 -4
- package/lib/services/agent/providerFallback/index.d.ts.map +0 -1
- package/lib/services/agent/providerFallback/index.js +0 -19
- package/lib/services/agent/providerFallback/withFallback.d.ts +0 -60
- package/lib/services/agent/providerFallback/withFallback.d.ts.map +0 -1
- package/lib/services/agent/providerFallback/withFallback.js +0 -93
- package/lib/services/agent/providerTaskCache.d.ts +0 -50
- package/lib/services/agent/providerTaskCache.d.ts.map +0 -1
- package/lib/services/agent/providerTaskCache.js +0 -98
- package/lib/services/agent/qualityGate.d.ts +0 -82
- package/lib/services/agent/qualityGate.d.ts.map +0 -1
- package/lib/services/agent/qualityGate.js +0 -232
- package/lib/services/agent/referenceImageRenderer.d.ts +0 -37
- package/lib/services/agent/referenceImageRenderer.d.ts.map +0 -1
- package/lib/services/agent/referenceImageRenderer.js +0 -92
- package/lib/services/agent/regenCore.d.ts +0 -60
- package/lib/services/agent/regenCore.d.ts.map +0 -1
- package/lib/services/agent/regenCore.js +0 -487
- package/lib/services/agent/runHelpers.d.ts +0 -44
- package/lib/services/agent/runHelpers.d.ts.map +0 -1
- package/lib/services/agent/runHelpers.js +0 -196
- package/lib/services/agent/sceneLayoutVision.d.ts +0 -90
- package/lib/services/agent/sceneLayoutVision.d.ts.map +0 -1
- package/lib/services/agent/sceneLayoutVision.js +0 -212
- package/lib/services/agent/stitchedVideoCritic.d.ts +0 -136
- package/lib/services/agent/stitchedVideoCritic.d.ts.map +0 -1
- package/lib/services/agent/stitchedVideoCritic.gemini.d.ts +0 -26
- package/lib/services/agent/stitchedVideoCritic.gemini.d.ts.map +0 -1
- package/lib/services/agent/stitchedVideoCritic.gemini.js +0 -198
- package/lib/services/agent/stitchedVideoCritic.js +0 -162
- package/lib/services/agent/taskPoller.d.ts +0 -65
- package/lib/services/agent/taskPoller.d.ts.map +0 -1
- package/lib/services/agent/taskPoller.js +0 -176
- package/lib/services/agent/textOverlayStyles.d.ts +0 -60
- package/lib/services/agent/textOverlayStyles.d.ts.map +0 -1
- package/lib/services/agent/textOverlayStyles.js +0 -174
- package/lib/services/agent/toolRegistry.d.ts +0 -73
- package/lib/services/agent/toolRegistry.d.ts.map +0 -1
- package/lib/services/agent/toolRegistry.js +0 -95
- package/lib/services/agent/tools/analyzeReference.tool.d.ts +0 -36
- package/lib/services/agent/tools/analyzeReference.tool.d.ts.map +0 -1
- package/lib/services/agent/tools/analyzeReference.tool.js +0 -44
- package/lib/services/agent/tools/animateImage.tool.d.ts +0 -24
- package/lib/services/agent/tools/animateImage.tool.d.ts.map +0 -1
- package/lib/services/agent/tools/animateImage.tool.js +0 -115
- package/lib/services/agent/tools/animateImageWithMotionBrush.tool.d.ts +0 -32
- package/lib/services/agent/tools/animateImageWithMotionBrush.tool.d.ts.map +0 -1
- package/lib/services/agent/tools/animateImageWithMotionBrush.tool.js +0 -135
- package/lib/services/agent/tools/composeScene.tool.d.ts +0 -978
- package/lib/services/agent/tools/composeScene.tool.d.ts.map +0 -1
- package/lib/services/agent/tools/composeScene.tool.js +0 -90
- package/lib/services/agent/tools/estimateCost.tool.d.ts +0 -352
- package/lib/services/agent/tools/estimateCost.tool.d.ts.map +0 -1
- package/lib/services/agent/tools/estimateCost.tool.js +0 -62
- package/lib/services/agent/tools/generateAvatarVideo.tool.d.ts +0 -32
- package/lib/services/agent/tools/generateAvatarVideo.tool.d.ts.map +0 -1
- package/lib/services/agent/tools/generateAvatarVideo.tool.js +0 -143
- package/lib/services/agent/tools/generateCaptions.tool.d.ts +0 -42
- package/lib/services/agent/tools/generateCaptions.tool.d.ts.map +0 -1
- package/lib/services/agent/tools/generateCaptions.tool.js +0 -196
- package/lib/services/agent/tools/generateImage.tool.d.ts +0 -74
- package/lib/services/agent/tools/generateImage.tool.d.ts.map +0 -1
- package/lib/services/agent/tools/generateImage.tool.js +0 -206
- package/lib/services/agent/tools/generateVideo.tool.d.ts +0 -31
- package/lib/services/agent/tools/generateVideo.tool.d.ts.map +0 -1
- package/lib/services/agent/tools/generateVideo.tool.js +0 -153
- package/lib/services/agent/tools/generateVoiceover.tool.d.ts +0 -44
- package/lib/services/agent/tools/generateVoiceover.tool.d.ts.map +0 -1
- package/lib/services/agent/tools/generateVoiceover.tool.js +0 -206
- package/lib/services/agent/tools/index.d.ts +0 -20
- package/lib/services/agent/tools/index.d.ts.map +0 -1
- package/lib/services/agent/tools/index.js +0 -35
- package/lib/services/agent/tools/planVideo.tool.d.ts +0 -343
- package/lib/services/agent/tools/planVideo.tool.d.ts.map +0 -1
- package/lib/services/agent/tools/planVideo.tool.js +0 -46
- package/lib/services/agent/tools/render.tool.d.ts +0 -367
- package/lib/services/agent/tools/render.tool.d.ts.map +0 -1
- package/lib/services/agent/tools/render.tool.js +0 -48
- package/lib/services/agent/tools/searchMusic.tool.d.ts +0 -49
- package/lib/services/agent/tools/searchMusic.tool.d.ts.map +0 -1
- package/lib/services/agent/tools/searchMusic.tool.js +0 -74
- package/lib/services/agent/tools/searchStock.tool.d.ts +0 -41
- package/lib/services/agent/tools/searchStock.tool.d.ts.map +0 -1
- package/lib/services/agent/tools/searchStock.tool.js +0 -314
- package/lib/services/agent/tools/searchUserLibrary.tool.d.ts +0 -59
- package/lib/services/agent/tools/searchUserLibrary.tool.d.ts.map +0 -1
- package/lib/services/agent/tools/searchUserLibrary.tool.js +0 -58
- package/lib/services/agent/ttsDuration.d.ts +0 -29
- package/lib/services/agent/ttsDuration.d.ts.map +0 -1
- package/lib/services/agent/ttsDuration.js +0 -60
- package/lib/services/aiGen/canonicalAdapters/cameraControl.types.d.ts +0 -31
- package/lib/services/aiGen/canonicalAdapters/cameraControl.types.d.ts.map +0 -1
- package/lib/services/aiGen/canonicalAdapters/cameraControl.types.js +0 -2
- package/lib/services/aiGen/canonicalAdapters/index.d.ts +0 -3
- package/lib/services/aiGen/canonicalAdapters/index.d.ts.map +0 -1
- package/lib/services/aiGen/canonicalAdapters/index.js +0 -18
- package/lib/services/aiGen/canonicalAdapters/multiShot.types.d.ts +0 -23
- package/lib/services/aiGen/canonicalAdapters/multiShot.types.d.ts.map +0 -1
- package/lib/services/aiGen/canonicalAdapters/multiShot.types.js +0 -12
- package/lib/services/aiGen/providers/elevenlabs/elevenlabs.service.d.ts +0 -18
- package/lib/services/aiGen/providers/elevenlabs/elevenlabs.service.d.ts.map +0 -1
- package/lib/services/aiGen/providers/elevenlabs/elevenlabs.service.js +0 -102
- package/lib/services/aiGen/providers/fal/falImage.service.d.ts +0 -15
- package/lib/services/aiGen/providers/fal/falImage.service.d.ts.map +0 -1
- package/lib/services/aiGen/providers/fal/falImage.service.js +0 -141
- package/lib/services/aiGen/providers/fal/index.d.ts +0 -2
- package/lib/services/aiGen/providers/fal/index.d.ts.map +0 -1
- package/lib/services/aiGen/providers/fal/index.js +0 -17
- package/lib/services/aiGen/providers/kling/cameraAdapter.d.ts +0 -4
- package/lib/services/aiGen/providers/kling/cameraAdapter.d.ts.map +0 -1
- package/lib/services/aiGen/providers/kling/cameraAdapter.js +0 -53
- package/lib/services/aiGen/providers/kling/klingImage.service.d.ts +0 -21
- package/lib/services/aiGen/providers/kling/klingImage.service.d.ts.map +0 -1
- package/lib/services/aiGen/providers/kling/klingImage.service.js +0 -208
- package/lib/services/aiGen/providers/pexels/index.d.ts +0 -2
- package/lib/services/aiGen/providers/pexels/index.d.ts.map +0 -1
- package/lib/services/aiGen/providers/pexels/pexels.service.d.ts +0 -11
- package/lib/services/aiGen/providers/pexels/pexels.service.d.ts.map +0 -1
- package/lib/services/aiGen/providers/pexels/pexels.service.js +0 -150
- package/lib/services/aiGen/providers/pixabay/index.d.ts +0 -2
- package/lib/services/aiGen/providers/pixabay/index.d.ts.map +0 -1
- package/lib/services/aiGen/providers/pixabay/index.js +0 -17
- package/lib/services/aiGen/providers/pixabay/pixabay.service.d.ts +0 -12
- package/lib/services/aiGen/providers/pixabay/pixabay.service.d.ts.map +0 -1
- package/lib/services/aiGen/providers/pixabay/pixabay.service.js +0 -156
- package/lib/services/aiGen/providers/runway/cameraAdapter.d.ts +0 -3
- package/lib/services/aiGen/providers/runway/cameraAdapter.d.ts.map +0 -1
- package/lib/services/aiGen/providers/runway/cameraAdapter.js +0 -46
- package/lib/services/aiGen/providers/unsplash/index.d.ts +0 -2
- package/lib/services/aiGen/providers/unsplash/index.d.ts.map +0 -1
- package/lib/services/aiGen/providers/unsplash/index.js +0 -17
- package/lib/services/aiGen/providers/unsplash/unsplash.service.d.ts +0 -16
- package/lib/services/aiGen/providers/unsplash/unsplash.service.d.ts.map +0 -1
- package/lib/services/aiGen/providers/unsplash/unsplash.service.js +0 -131
- package/lib/services/apiUsageCounter.service.d.ts +0 -20
- package/lib/services/apiUsageCounter.service.d.ts.map +0 -1
- package/lib/services/apiUsageCounter.service.js +0 -84
- package/lib/services/asr/assemblyai.service.d.ts +0 -72
- package/lib/services/asr/assemblyai.service.d.ts.map +0 -1
- package/lib/services/asr/assemblyai.service.js +0 -89
- package/lib/services/asr/index.d.ts +0 -3
- package/lib/services/asr/index.d.ts.map +0 -1
- package/lib/services/asr/index.js +0 -18
- package/lib/services/asr/whisper.service.d.ts +0 -18
- package/lib/services/asr/whisper.service.d.ts.map +0 -1
- package/lib/services/asr/whisper.service.js +0 -151
- package/lib/services/assetCache.service.d.ts +0 -54
- package/lib/services/assetCache.service.d.ts.map +0 -1
- package/lib/services/assetCache.service.js +0 -109
- package/lib/services/audioAnalysis/index.d.ts +0 -2
- package/lib/services/audioAnalysis/index.d.ts.map +0 -1
- package/lib/services/audioAnalysis/index.js +0 -17
- package/lib/services/audioAnalysis/onsetDetection.service.d.ts +0 -50
- package/lib/services/audioAnalysis/onsetDetection.service.d.ts.map +0 -1
- package/lib/services/audioAnalysis/onsetDetection.service.js +0 -140
- package/lib/services/credits/pricing.d.ts +0 -58
- package/lib/services/credits/pricing.d.ts.map +0 -1
- package/lib/services/credits/pricing.js +0 -111
- package/lib/services/editor/designToProject.d.ts +0 -75
- package/lib/services/editor/designToProject.d.ts.map +0 -1
- package/lib/services/editor/designToProject.js +0 -295
- package/lib/services/editor/planToProject.d.ts +0 -84
- package/lib/services/editor/planToProject.d.ts.map +0 -1
- package/lib/services/editor/planToProject.js +0 -395
- package/lib/services/editor/projectToDesign.d.ts +0 -4
- package/lib/services/editor/projectToDesign.d.ts.map +0 -1
- package/lib/services/editor/projectToDesign.js +0 -186
- package/lib/services/gcp/uploadAudioBuffer.d.ts +0 -13
- package/lib/services/gcp/uploadAudioBuffer.d.ts.map +0 -1
- package/lib/services/gcp/uploadAudioBuffer.js +0 -28
- package/lib/services/musicGen/index.d.ts +0 -6
- package/lib/services/musicGen/index.d.ts.map +0 -1
- package/lib/services/musicGen/index.js +0 -26
- package/lib/services/musicGen/musicSearchFactory.service.d.ts +0 -14
- package/lib/services/musicGen/musicSearchFactory.service.d.ts.map +0 -1
- package/lib/services/musicGen/musicSearchFactory.service.js +0 -59
- package/lib/services/musicGen/providers/curated.service.d.ts +0 -24
- package/lib/services/musicGen/providers/curated.service.d.ts.map +0 -1
- package/lib/services/musicGen/providers/curated.service.js +0 -173
- package/lib/services/musicGen/providers/jamendo.service.d.ts +0 -8
- package/lib/services/musicGen/providers/jamendo.service.d.ts.map +0 -1
- package/lib/services/musicGen/providers/jamendo.service.js +0 -113
- package/lib/services/musicGen/providers/mubert.service.d.ts +0 -10
- package/lib/services/musicGen/providers/mubert.service.d.ts.map +0 -1
- package/lib/services/musicGen/providers/mubert.service.js +0 -128
- package/lib/services/musicGen/types.d.ts +0 -46
- package/lib/services/musicGen/types.d.ts.map +0 -1
- package/lib/services/musicGen/types.js +0 -10
- package/lib/services/notification.service.d.ts +0 -22
- package/lib/services/notification.service.d.ts.map +0 -1
- package/lib/services/notification.service.js +0 -76
- package/lib/services/rateLimiter/distributedRateLimiter.service.d.ts +0 -78
- package/lib/services/rateLimiter/distributedRateLimiter.service.d.ts.map +0 -1
- package/lib/services/rateLimiter/distributedRateLimiter.service.js +0 -269
- package/lib/services/rateLimiter/index.d.ts +0 -2
- package/lib/services/rateLimiter/index.d.ts.map +0 -1
- package/lib/services/rateLimiter/index.js +0 -17
- package/lib/services/redisOptions.d.ts +0 -22
- package/lib/services/redisOptions.d.ts.map +0 -1
- package/lib/services/redisOptions.js +0 -51
- package/lib/services/tts/providers/minimax.service.d.ts +0 -14
- package/lib/services/tts/providers/minimax.service.d.ts.map +0 -1
- package/lib/services/tts/providers/minimax.service.js +0 -78
- package/lib/services/tts/providers/openai.service.d.ts +0 -14
- package/lib/services/tts/providers/openai.service.d.ts.map +0 -1
- package/lib/services/tts/providers/openai.service.js +0 -73
|
@@ -1,150 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.PexelsProviderService = void 0;
|
|
7
|
-
const axios_1 = __importDefault(require("axios"));
|
|
8
|
-
const apiUsageCounter_service_1 = require("../../../apiUsageCounter.service");
|
|
9
|
-
const baseAiGenProvider_service_1 = require("../baseAiGenProvider.service");
|
|
10
|
-
// Pexels free tier: 200 req/h + 20,000 req/month. Cap at 18,000/mo to leave
|
|
11
|
-
// headroom for end-of-month traffic spikes; override per-deploy via env.
|
|
12
|
-
const PEXELS_MONTHLY_CAP = Number(process.env.PEXELS_MONTHLY_CAP ?? 18000);
|
|
13
|
-
// 10s per-call cap so the agent executor doesn't hang on a slow Pexels response
|
|
14
|
-
// — the cascade can fall through to Pixabay / Unsplash instead.
|
|
15
|
-
const PEXELS_TIMEOUT_MS = 10000;
|
|
16
|
-
/**
|
|
17
|
-
* Pexels stock provider — T0 tier (free).
|
|
18
|
-
*
|
|
19
|
-
* Pexels' free API supports video + image search. We deliberately ignore the
|
|
20
|
-
* music API for now (it's photo-only on the free tier; music comes from a
|
|
21
|
-
* different stock provider in a later commit).
|
|
22
|
-
*
|
|
23
|
-
* Attribution: Pexels' license requires "Photos provided by Pexels" attribution
|
|
24
|
-
* when used in publication. Producer surfaces (storyboard, finished video page)
|
|
25
|
-
* must surface this — handled in the UI layer, not here.
|
|
26
|
-
*/
|
|
27
|
-
const PEXELS_VIDEO_URL = "https://api.pexels.com/videos/search";
|
|
28
|
-
const PEXELS_IMAGE_URL = "https://api.pexels.com/v1/search";
|
|
29
|
-
class PexelsProviderService extends baseAiGenProvider_service_1.BaseAiGenProviderService {
|
|
30
|
-
constructor() {
|
|
31
|
-
super(...arguments);
|
|
32
|
-
this.apiKey = process.env.PEXELS_API_KEY;
|
|
33
|
-
}
|
|
34
|
-
async searchStock(params) {
|
|
35
|
-
if (!this.apiKey) {
|
|
36
|
-
throw new Error("PEXELS_API_KEY not set — pexels provider cannot search");
|
|
37
|
-
}
|
|
38
|
-
if (params.kind === "music") {
|
|
39
|
-
throw new Error("Pexels does not provide stock music");
|
|
40
|
-
}
|
|
41
|
-
const allowed = await apiUsageCounter_service_1.ApiUsageCounterService.tryConsume({
|
|
42
|
-
provider: "pexels",
|
|
43
|
-
monthlyCap: PEXELS_MONTHLY_CAP,
|
|
44
|
-
});
|
|
45
|
-
if (!allowed) {
|
|
46
|
-
throw new Error(`PEXELS_RATE_LIMITED: monthly cap of ${PEXELS_MONTHLY_CAP} exceeded — back off`);
|
|
47
|
-
}
|
|
48
|
-
const headers = { Authorization: this.apiKey };
|
|
49
|
-
const perPage = Math.min(params.perPage ?? 15, 80);
|
|
50
|
-
try {
|
|
51
|
-
if (params.kind === "video") {
|
|
52
|
-
const { data } = await axios_1.default.get(PEXELS_VIDEO_URL, {
|
|
53
|
-
headers,
|
|
54
|
-
timeout: PEXELS_TIMEOUT_MS,
|
|
55
|
-
params: {
|
|
56
|
-
query: params.query,
|
|
57
|
-
per_page: perPage,
|
|
58
|
-
page: params.page,
|
|
59
|
-
orientation: this.aspectToOrientation(params.aspectRatio),
|
|
60
|
-
size: params.size,
|
|
61
|
-
locale: params.locale,
|
|
62
|
-
// Server-side filters — avoid wasting page budget client-side.
|
|
63
|
-
min_duration: params.minDurationSec,
|
|
64
|
-
max_duration: params.maxDurationSec,
|
|
65
|
-
min_width: params.minWidth,
|
|
66
|
-
min_height: params.minHeight,
|
|
67
|
-
},
|
|
68
|
-
});
|
|
69
|
-
return {
|
|
70
|
-
assets: data.videos.map((v) => ({
|
|
71
|
-
id: String(v.id),
|
|
72
|
-
url: this.pickBestVideoFile(v.video_files),
|
|
73
|
-
thumbnailUrl: v.image,
|
|
74
|
-
width: v.width,
|
|
75
|
-
height: v.height,
|
|
76
|
-
durationSec: v.duration,
|
|
77
|
-
source: "pexels",
|
|
78
|
-
attribution: { name: v.user.name, url: v.user.url },
|
|
79
|
-
})),
|
|
80
|
-
totalAvailable: data.total_results,
|
|
81
|
-
};
|
|
82
|
-
}
|
|
83
|
-
// image
|
|
84
|
-
const { data } = await axios_1.default.get(PEXELS_IMAGE_URL, {
|
|
85
|
-
headers,
|
|
86
|
-
timeout: PEXELS_TIMEOUT_MS,
|
|
87
|
-
params: {
|
|
88
|
-
query: params.query,
|
|
89
|
-
per_page: perPage,
|
|
90
|
-
page: params.page,
|
|
91
|
-
orientation: this.aspectToOrientation(params.aspectRatio),
|
|
92
|
-
size: params.size,
|
|
93
|
-
color: params.color,
|
|
94
|
-
locale: params.locale,
|
|
95
|
-
},
|
|
96
|
-
});
|
|
97
|
-
return {
|
|
98
|
-
assets: data.photos.map((p) => ({
|
|
99
|
-
id: String(p.id),
|
|
100
|
-
url: p.src.original,
|
|
101
|
-
thumbnailUrl: p.src.medium,
|
|
102
|
-
width: p.width,
|
|
103
|
-
height: p.height,
|
|
104
|
-
source: "pexels",
|
|
105
|
-
attribution: { name: p.photographer, url: p.photographer_url },
|
|
106
|
-
})),
|
|
107
|
-
totalAvailable: data.total_results,
|
|
108
|
-
};
|
|
109
|
-
}
|
|
110
|
-
catch (err) {
|
|
111
|
-
// Surface 429 distinctly so upstream can degrade / pick another provider
|
|
112
|
-
// rather than retrying into the rate-limit wall (200 req/h free tier).
|
|
113
|
-
if (err?.response?.status === 429) {
|
|
114
|
-
throw new Error("PEXELS_RATE_LIMITED: 429 from Pexels API — back off");
|
|
115
|
-
}
|
|
116
|
-
if (err?.code === "ECONNABORTED" || /timeout/i.test(err?.message ?? "")) {
|
|
117
|
-
throw new Error(`PEXELS_TIMEOUT: request timed out after ${PEXELS_TIMEOUT_MS}ms`);
|
|
118
|
-
}
|
|
119
|
-
throw err;
|
|
120
|
-
}
|
|
121
|
-
}
|
|
122
|
-
/** Free assets — registers as 0 credits regardless of model. */
|
|
123
|
-
getCreditUsed(_params) {
|
|
124
|
-
return 0;
|
|
125
|
-
}
|
|
126
|
-
aspectToOrientation(aspect) {
|
|
127
|
-
if (!aspect)
|
|
128
|
-
return undefined;
|
|
129
|
-
if (aspect === "9:16" || aspect === "4:5")
|
|
130
|
-
return "portrait";
|
|
131
|
-
if (aspect === "1:1")
|
|
132
|
-
return "square";
|
|
133
|
-
return "landscape";
|
|
134
|
-
}
|
|
135
|
-
pickBestVideoFile(files) {
|
|
136
|
-
// Prefer .mp4 1080p, fall back to highest-resolution mp4.
|
|
137
|
-
const mp4 = files.filter((f) => f.file_type === "video/mp4");
|
|
138
|
-
if (mp4.length === 0) {
|
|
139
|
-
const first = files[0];
|
|
140
|
-
if (!first)
|
|
141
|
-
throw new Error("Pexels video has no files");
|
|
142
|
-
return first.link;
|
|
143
|
-
}
|
|
144
|
-
const hd = mp4.find((f) => f.height >= 1000 && f.height <= 1200);
|
|
145
|
-
if (hd)
|
|
146
|
-
return hd.link;
|
|
147
|
-
return mp4.sort((a, b) => b.height - a.height)[0].link;
|
|
148
|
-
}
|
|
149
|
-
}
|
|
150
|
-
exports.PexelsProviderService = PexelsProviderService;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/services/aiGen/providers/pixabay/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC"}
|
|
@@ -1,17 +0,0 @@
|
|
|
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("./pixabay.service"), exports);
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import { BaseAiGenProviderService } from "../baseAiGenProvider.service";
|
|
2
|
-
import { CreditUsageParams, StockSearchParams, StockSearchResult } from "../types";
|
|
3
|
-
export declare class PixabayProviderService extends BaseAiGenProviderService {
|
|
4
|
-
private readonly apiKey;
|
|
5
|
-
searchStock(params: StockSearchParams): Promise<StockSearchResult>;
|
|
6
|
-
/** Free assets — registers as 0 credits regardless of model. */
|
|
7
|
-
getCreditUsed(_params: CreditUsageParams): number;
|
|
8
|
-
private aspectToOrientation;
|
|
9
|
-
/** Prefer large → medium → small → tiny so we get the best quality available. */
|
|
10
|
-
private pickBestVideoFile;
|
|
11
|
-
}
|
|
12
|
-
//# sourceMappingURL=pixabay.service.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"pixabay.service.d.ts","sourceRoot":"","sources":["../../../../../src/services/aiGen/providers/pixabay/pixabay.service.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,wBAAwB,EAAE,MAAM,8BAA8B,CAAC;AACxE,OAAO,EACL,iBAAiB,EACjB,iBAAiB,EACjB,iBAAiB,EAClB,MAAM,UAAU,CAAC;AAyElB,qBAAa,sBAAuB,SAAQ,wBAAwB;IAClE,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAmD;IAEpE,WAAW,CAAC,MAAM,EAAE,iBAAiB,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAwHxE,gEAAgE;IAChE,aAAa,CAAC,OAAO,EAAE,iBAAiB,GAAG,MAAM;IAIjD,OAAO,CAAC,mBAAmB;IAS3B,iFAAiF;IACjF,OAAO,CAAC,iBAAiB;CAO1B"}
|
|
@@ -1,156 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.PixabayProviderService = void 0;
|
|
7
|
-
const axios_1 = __importDefault(require("axios"));
|
|
8
|
-
const apiUsageCounter_service_1 = require("../../../apiUsageCounter.service");
|
|
9
|
-
const baseAiGenProvider_service_1 = require("../baseAiGenProvider.service");
|
|
10
|
-
/**
|
|
11
|
-
* Pixabay stock provider — T0 tier (free).
|
|
12
|
-
*
|
|
13
|
-
* Pixabay's free API supports both photo and video search. We use it as the
|
|
14
|
-
* second link in the stock-search cascade (Pexels → Pixabay → Unsplash for
|
|
15
|
-
* images, Pexels → Pixabay for videos). Auth is a query-string `key=...`
|
|
16
|
-
* parameter — no header.
|
|
17
|
-
*
|
|
18
|
-
* Free tier limits: 100 req/min by default, "soft cap" of ~5k req/hr. We
|
|
19
|
-
* impose a conservative monthly counter for runaway protection (cache layer
|
|
20
|
-
* absorbs most repeat queries anyway).
|
|
21
|
-
*
|
|
22
|
-
* Attribution: Pixabay Content License is permissive but encourages credit
|
|
23
|
-
* ("Image by ... from Pixabay"). The producer / finished-video UI surfaces
|
|
24
|
-
* the photographer name via the same `attribution.{name,url}` envelope we
|
|
25
|
-
* use for Pexels + Unsplash.
|
|
26
|
-
*/
|
|
27
|
-
const PIXABAY_IMAGE_URL = "https://pixabay.com/api/";
|
|
28
|
-
const PIXABAY_VIDEO_URL = "https://pixabay.com/api/videos/";
|
|
29
|
-
const PIXABAY_MONTHLY_CAP = Number(process.env.PIXABAY_MONTHLY_CAP ?? 50000);
|
|
30
|
-
const PIXABAY_TIMEOUT_MS = 10000;
|
|
31
|
-
class PixabayProviderService extends baseAiGenProvider_service_1.BaseAiGenProviderService {
|
|
32
|
-
constructor() {
|
|
33
|
-
super(...arguments);
|
|
34
|
-
this.apiKey = process.env.PIXABAY_API_KEY;
|
|
35
|
-
}
|
|
36
|
-
async searchStock(params) {
|
|
37
|
-
if (!this.apiKey) {
|
|
38
|
-
throw new Error("PIXABAY_API_KEY not set — pixabay provider cannot search");
|
|
39
|
-
}
|
|
40
|
-
if (params.kind === "music") {
|
|
41
|
-
throw new Error("Pixabay music search not implemented");
|
|
42
|
-
}
|
|
43
|
-
const allowed = await apiUsageCounter_service_1.ApiUsageCounterService.tryConsume({
|
|
44
|
-
provider: "pixabay",
|
|
45
|
-
monthlyCap: PIXABAY_MONTHLY_CAP,
|
|
46
|
-
});
|
|
47
|
-
if (!allowed) {
|
|
48
|
-
throw new Error(`PIXABAY_RATE_LIMITED: monthly cap of ${PIXABAY_MONTHLY_CAP} exceeded — back off`);
|
|
49
|
-
}
|
|
50
|
-
// Pixabay caps per_page at 200 and requires min 3.
|
|
51
|
-
const perPage = Math.max(3, Math.min(params.perPage ?? 15, 200));
|
|
52
|
-
const orientation = this.aspectToOrientation(params.aspectRatio);
|
|
53
|
-
try {
|
|
54
|
-
if (params.kind === "video") {
|
|
55
|
-
const { data } = await axios_1.default.get(PIXABAY_VIDEO_URL, {
|
|
56
|
-
timeout: PIXABAY_TIMEOUT_MS,
|
|
57
|
-
params: {
|
|
58
|
-
key: this.apiKey,
|
|
59
|
-
q: params.query,
|
|
60
|
-
per_page: perPage,
|
|
61
|
-
page: params.page ?? 1,
|
|
62
|
-
// Pixabay video search has no orientation filter, but supports
|
|
63
|
-
// `video_type=film` to filter out animations if needed. Leave
|
|
64
|
-
// default.
|
|
65
|
-
safesearch: true,
|
|
66
|
-
},
|
|
67
|
-
});
|
|
68
|
-
const assets = data.hits.map((v) => {
|
|
69
|
-
const file = this.pickBestVideoFile(v.videos);
|
|
70
|
-
// Filter post-fetch by duration since Pixabay has no server filter.
|
|
71
|
-
return {
|
|
72
|
-
id: `pixabay-${v.id}`,
|
|
73
|
-
url: file.url,
|
|
74
|
-
thumbnailUrl: v.picture_id
|
|
75
|
-
? `https://i.vimeocdn.com/video/${v.picture_id}_295x166.jpg`
|
|
76
|
-
: undefined,
|
|
77
|
-
width: file.width,
|
|
78
|
-
height: file.height,
|
|
79
|
-
durationSec: v.duration,
|
|
80
|
-
source: "pixabay",
|
|
81
|
-
attribution: {
|
|
82
|
-
name: v.user,
|
|
83
|
-
url: `https://pixabay.com/users/${v.user_id}/`,
|
|
84
|
-
},
|
|
85
|
-
};
|
|
86
|
-
});
|
|
87
|
-
const filtered = assets.filter((a) => {
|
|
88
|
-
if (params.minDurationSec && a.durationSec < params.minDurationSec)
|
|
89
|
-
return false;
|
|
90
|
-
if (params.maxDurationSec && a.durationSec > params.maxDurationSec)
|
|
91
|
-
return false;
|
|
92
|
-
return true;
|
|
93
|
-
});
|
|
94
|
-
return { assets: filtered, totalAvailable: data.totalHits };
|
|
95
|
-
}
|
|
96
|
-
// image
|
|
97
|
-
const { data } = await axios_1.default.get(PIXABAY_IMAGE_URL, {
|
|
98
|
-
timeout: PIXABAY_TIMEOUT_MS,
|
|
99
|
-
params: {
|
|
100
|
-
key: this.apiKey,
|
|
101
|
-
q: params.query,
|
|
102
|
-
per_page: perPage,
|
|
103
|
-
page: params.page ?? 1,
|
|
104
|
-
orientation, // "all" | "horizontal" | "vertical"
|
|
105
|
-
image_type: "photo",
|
|
106
|
-
safesearch: true,
|
|
107
|
-
},
|
|
108
|
-
});
|
|
109
|
-
return {
|
|
110
|
-
assets: data.hits.map((p) => ({
|
|
111
|
-
id: `pixabay-${p.id}`,
|
|
112
|
-
url: p.largeImageURL,
|
|
113
|
-
thumbnailUrl: p.webformatURL ?? p.previewURL,
|
|
114
|
-
width: p.imageWidth,
|
|
115
|
-
height: p.imageHeight,
|
|
116
|
-
source: "pixabay",
|
|
117
|
-
attribution: {
|
|
118
|
-
name: p.user,
|
|
119
|
-
url: `https://pixabay.com/users/${p.user_id}/`,
|
|
120
|
-
},
|
|
121
|
-
})),
|
|
122
|
-
totalAvailable: data.totalHits,
|
|
123
|
-
};
|
|
124
|
-
}
|
|
125
|
-
catch (err) {
|
|
126
|
-
if (err?.response?.status === 429) {
|
|
127
|
-
throw new Error("PIXABAY_RATE_LIMITED: 429 from Pixabay API — back off");
|
|
128
|
-
}
|
|
129
|
-
if (err?.code === "ECONNABORTED" || /timeout/i.test(err?.message ?? "")) {
|
|
130
|
-
throw new Error(`PIXABAY_TIMEOUT: request timed out after ${PIXABAY_TIMEOUT_MS}ms`);
|
|
131
|
-
}
|
|
132
|
-
throw err;
|
|
133
|
-
}
|
|
134
|
-
}
|
|
135
|
-
/** Free assets — registers as 0 credits regardless of model. */
|
|
136
|
-
getCreditUsed(_params) {
|
|
137
|
-
return 0;
|
|
138
|
-
}
|
|
139
|
-
aspectToOrientation(aspect) {
|
|
140
|
-
if (!aspect)
|
|
141
|
-
return "all";
|
|
142
|
-
if (aspect === "9:16" || aspect === "4:5")
|
|
143
|
-
return "vertical";
|
|
144
|
-
if (aspect === "1:1")
|
|
145
|
-
return "all";
|
|
146
|
-
return "horizontal";
|
|
147
|
-
}
|
|
148
|
-
/** Prefer large → medium → small → tiny so we get the best quality available. */
|
|
149
|
-
pickBestVideoFile(videos) {
|
|
150
|
-
const file = videos.large ?? videos.medium ?? videos.small ?? videos.tiny;
|
|
151
|
-
if (!file)
|
|
152
|
-
throw new Error("Pixabay video has no playable files");
|
|
153
|
-
return file;
|
|
154
|
-
}
|
|
155
|
-
}
|
|
156
|
-
exports.PixabayProviderService = PixabayProviderService;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"cameraAdapter.d.ts","sourceRoot":"","sources":["../../../../../src/services/aiGen/providers/runway/cameraAdapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,aAAa,EAEd,MAAM,6CAA6C,CAAC;AAmCrD,wBAAgB,wBAAwB,CACtC,MAAM,EAAE,MAAM,GAAG,SAAS,EAC1B,CAAC,EAAE,aAAa,GACf,MAAM,CAMR"}
|
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.applyRunwayCameraControl = applyRunwayCameraControl;
|
|
4
|
-
/**
|
|
5
|
-
* Runway gen4 doesn't expose a structured camera-control field — moves are
|
|
6
|
-
* inferred from prompt text. We translate the canonical preset/intensity into
|
|
7
|
-
* a short bracketed clause prepended to the prompt. Matches Runway's own
|
|
8
|
-
* cinematography vocabulary so the model parses it reliably.
|
|
9
|
-
*/
|
|
10
|
-
const PRESET_TO_PHRASE = {
|
|
11
|
-
static: "static camera",
|
|
12
|
-
pan_left: "camera pans left",
|
|
13
|
-
pan_right: "camera pans right",
|
|
14
|
-
tilt_up: "camera tilts up",
|
|
15
|
-
tilt_down: "camera tilts down",
|
|
16
|
-
zoom_in: "camera zooms in",
|
|
17
|
-
zoom_out: "camera zooms out",
|
|
18
|
-
dolly_in: "camera dollies in",
|
|
19
|
-
dolly_out: "camera dollies out",
|
|
20
|
-
orbit_left: "camera orbits left around subject",
|
|
21
|
-
orbit_right: "camera orbits right around subject",
|
|
22
|
-
roll_left: "camera rolls counter-clockwise",
|
|
23
|
-
roll_right: "camera rolls clockwise",
|
|
24
|
-
tracking: "tracking shot following subject",
|
|
25
|
-
handheld: "handheld camera",
|
|
26
|
-
push_in: "slow push in",
|
|
27
|
-
pull_out: "slow pull out",
|
|
28
|
-
};
|
|
29
|
-
function intensityWord(i) {
|
|
30
|
-
if (i === undefined)
|
|
31
|
-
return "";
|
|
32
|
-
if (i <= 0.33)
|
|
33
|
-
return "subtle ";
|
|
34
|
-
if (i >= 0.67)
|
|
35
|
-
return "strong ";
|
|
36
|
-
return "";
|
|
37
|
-
}
|
|
38
|
-
function applyRunwayCameraControl(prompt, c) {
|
|
39
|
-
if (!c.preset)
|
|
40
|
-
return prompt ?? "";
|
|
41
|
-
const phrase = PRESET_TO_PHRASE[c.preset];
|
|
42
|
-
if (!phrase)
|
|
43
|
-
return prompt ?? "";
|
|
44
|
-
const clause = `[${intensityWord(c.intensity)}${phrase}]`;
|
|
45
|
-
return prompt ? `${clause} ${prompt}` : clause;
|
|
46
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/services/aiGen/providers/unsplash/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC"}
|
|
@@ -1,17 +0,0 @@
|
|
|
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("./unsplash.service"), exports);
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { BaseAiGenProviderService } from "../baseAiGenProvider.service";
|
|
2
|
-
import { CreditUsageParams, StockSearchParams, StockSearchResult } from "../types";
|
|
3
|
-
export declare class UnsplashProviderService extends BaseAiGenProviderService {
|
|
4
|
-
private readonly accessKey;
|
|
5
|
-
searchStock(params: StockSearchParams): Promise<StockSearchResult>;
|
|
6
|
-
/**
|
|
7
|
-
* Fire the Unsplash download-tracking endpoint. MUST be called once when
|
|
8
|
-
* an Unsplash photo is committed to a render (per their API guidelines).
|
|
9
|
-
* Errors swallowed — failure to ping doesn't break the user's render.
|
|
10
|
-
*/
|
|
11
|
-
pingDownload(trackingUrl: string): Promise<void>;
|
|
12
|
-
/** Free assets — registers as 0 credits regardless of model. */
|
|
13
|
-
getCreditUsed(_params: CreditUsageParams): number;
|
|
14
|
-
private aspectToOrientation;
|
|
15
|
-
}
|
|
16
|
-
//# sourceMappingURL=unsplash.service.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"unsplash.service.d.ts","sourceRoot":"","sources":["../../../../../src/services/aiGen/providers/unsplash/unsplash.service.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,wBAAwB,EAAE,MAAM,8BAA8B,CAAC;AACxE,OAAO,EACL,iBAAiB,EACjB,iBAAiB,EACjB,iBAAiB,EAClB,MAAM,UAAU,CAAC;AA0DlB,qBAAa,uBAAwB,SAAQ,wBAAwB;IACnE,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAuD;IAE3E,WAAW,CAAC,MAAM,EAAE,iBAAiB,GAAG,OAAO,CAAC,iBAAiB,CAAC;IA+DxE;;;;OAIG;IACG,YAAY,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAYtD,gEAAgE;IAChE,aAAa,CAAC,OAAO,EAAE,iBAAiB,GAAG,MAAM;IAIjD,OAAO,CAAC,mBAAmB;CAQ5B"}
|
|
@@ -1,131 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.UnsplashProviderService = void 0;
|
|
7
|
-
const axios_1 = __importDefault(require("axios"));
|
|
8
|
-
const apiUsageCounter_service_1 = require("../../../apiUsageCounter.service");
|
|
9
|
-
const baseAiGenProvider_service_1 = require("../baseAiGenProvider.service");
|
|
10
|
-
/**
|
|
11
|
-
* Unsplash image-search provider (T0 — free).
|
|
12
|
-
*
|
|
13
|
-
* Photos-only. Pairs with Pexels for image queries; we race both and merge
|
|
14
|
-
* results so the agent picks from a wider catalog. Video and music queries
|
|
15
|
-
* delegate to other providers.
|
|
16
|
-
*
|
|
17
|
-
* Auth: `Authorization: Client-ID {access_key}` header (no OAuth needed for
|
|
18
|
-
* read endpoints). Free dev tier: 50 req/h; 1000 req/h after production
|
|
19
|
-
* approval (see https://unsplash.com/documentation#rate-limiting).
|
|
20
|
-
*
|
|
21
|
-
* Attribution: Unsplash guidelines require attributing the photographer and
|
|
22
|
-
* Unsplash (e.g. "Photo by {name} on Unsplash") wherever the photo appears.
|
|
23
|
-
* We surface `attribution.{name,url}` so the producer UI / finished video
|
|
24
|
-
* watermark can render the credit.
|
|
25
|
-
*
|
|
26
|
-
* Download tracking: when an Unsplash photo is actually used in a render,
|
|
27
|
-
* the API requires a fire-and-forget GET to `links.download_location`. We
|
|
28
|
-
* pass that through as `StockAsset.trackingUrl`; callers fire it via
|
|
29
|
-
* `pingDownload()` at scene-commit time.
|
|
30
|
-
*/
|
|
31
|
-
const UNSPLASH_SEARCH_URL = "https://api.unsplash.com/search/photos";
|
|
32
|
-
// 10s per-call cap so the agent executor stays responsive when Unsplash is
|
|
33
|
-
// slow — the search_stock cascade can drop us cleanly.
|
|
34
|
-
const UNSPLASH_TIMEOUT_MS = 10000;
|
|
35
|
-
// Cap below 1000 req/h × 24h × 30d = ~720k theoretical max; the realistic
|
|
36
|
-
// cap is the per-hour throttle. We set a conservative monthly upper bound
|
|
37
|
-
// to surface runaway usage early. Override via env if needed.
|
|
38
|
-
const UNSPLASH_MONTHLY_CAP = Number(process.env.UNSPLASH_MONTHLY_CAP ?? 50000);
|
|
39
|
-
class UnsplashProviderService extends baseAiGenProvider_service_1.BaseAiGenProviderService {
|
|
40
|
-
constructor() {
|
|
41
|
-
super(...arguments);
|
|
42
|
-
this.accessKey = process.env.UNSPLASH_ACCESS_KEY;
|
|
43
|
-
}
|
|
44
|
-
async searchStock(params) {
|
|
45
|
-
if (!this.accessKey) {
|
|
46
|
-
throw new Error("UNSPLASH_ACCESS_KEY not set — unsplash provider cannot search");
|
|
47
|
-
}
|
|
48
|
-
if (params.kind !== "image") {
|
|
49
|
-
// Photos-only. Caller falls back to the appropriate provider.
|
|
50
|
-
return { assets: [] };
|
|
51
|
-
}
|
|
52
|
-
const allowed = await apiUsageCounter_service_1.ApiUsageCounterService.tryConsume({
|
|
53
|
-
provider: "unsplash",
|
|
54
|
-
monthlyCap: UNSPLASH_MONTHLY_CAP,
|
|
55
|
-
});
|
|
56
|
-
if (!allowed) {
|
|
57
|
-
throw new Error(`UNSPLASH_RATE_LIMITED: monthly cap of ${UNSPLASH_MONTHLY_CAP} exceeded — back off`);
|
|
58
|
-
}
|
|
59
|
-
const perPage = Math.min(params.perPage ?? 15, 30); // Unsplash caps at 30
|
|
60
|
-
try {
|
|
61
|
-
const { data } = await axios_1.default.get(UNSPLASH_SEARCH_URL, {
|
|
62
|
-
headers: { Authorization: `Client-ID ${this.accessKey}` },
|
|
63
|
-
timeout: UNSPLASH_TIMEOUT_MS,
|
|
64
|
-
params: {
|
|
65
|
-
query: params.query,
|
|
66
|
-
per_page: perPage,
|
|
67
|
-
page: params.page ?? 1,
|
|
68
|
-
orientation: this.aspectToOrientation(params.aspectRatio),
|
|
69
|
-
color: params.color, // black_and_white, black, white, yellow, orange, red, purple, magenta, green, teal, blue
|
|
70
|
-
},
|
|
71
|
-
});
|
|
72
|
-
return {
|
|
73
|
-
assets: data.results.map((p) => ({
|
|
74
|
-
id: `unsplash-${p.id}`,
|
|
75
|
-
url: p.urls.regular,
|
|
76
|
-
thumbnailUrl: p.urls.small,
|
|
77
|
-
width: p.width,
|
|
78
|
-
height: p.height,
|
|
79
|
-
source: "unsplash",
|
|
80
|
-
attribution: {
|
|
81
|
-
name: p.user.name,
|
|
82
|
-
url: p.user.links?.html,
|
|
83
|
-
},
|
|
84
|
-
trackingUrl: p.links.download_location,
|
|
85
|
-
})),
|
|
86
|
-
totalAvailable: data.total,
|
|
87
|
-
};
|
|
88
|
-
}
|
|
89
|
-
catch (err) {
|
|
90
|
-
if (err?.response?.status === 429) {
|
|
91
|
-
throw new Error("UNSPLASH_RATE_LIMITED: 429 from Unsplash API — back off");
|
|
92
|
-
}
|
|
93
|
-
if (err?.code === "ECONNABORTED" || /timeout/i.test(err?.message ?? "")) {
|
|
94
|
-
throw new Error(`UNSPLASH_TIMEOUT: request timed out after ${UNSPLASH_TIMEOUT_MS}ms`);
|
|
95
|
-
}
|
|
96
|
-
throw err;
|
|
97
|
-
}
|
|
98
|
-
}
|
|
99
|
-
/**
|
|
100
|
-
* Fire the Unsplash download-tracking endpoint. MUST be called once when
|
|
101
|
-
* an Unsplash photo is committed to a render (per their API guidelines).
|
|
102
|
-
* Errors swallowed — failure to ping doesn't break the user's render.
|
|
103
|
-
*/
|
|
104
|
-
async pingDownload(trackingUrl) {
|
|
105
|
-
if (!this.accessKey || !trackingUrl)
|
|
106
|
-
return;
|
|
107
|
-
try {
|
|
108
|
-
await axios_1.default.get(trackingUrl, {
|
|
109
|
-
headers: { Authorization: `Client-ID ${this.accessKey}` },
|
|
110
|
-
timeout: 5000,
|
|
111
|
-
});
|
|
112
|
-
}
|
|
113
|
-
catch {
|
|
114
|
-
// Intentional — ToS-required best-effort signal, not a hard dependency.
|
|
115
|
-
}
|
|
116
|
-
}
|
|
117
|
-
/** Free assets — registers as 0 credits regardless of model. */
|
|
118
|
-
getCreditUsed(_params) {
|
|
119
|
-
return 0;
|
|
120
|
-
}
|
|
121
|
-
aspectToOrientation(aspect) {
|
|
122
|
-
if (!aspect)
|
|
123
|
-
return undefined;
|
|
124
|
-
if (aspect === "9:16" || aspect === "4:5")
|
|
125
|
-
return "portrait";
|
|
126
|
-
if (aspect === "1:1")
|
|
127
|
-
return "squarish";
|
|
128
|
-
return "landscape";
|
|
129
|
-
}
|
|
130
|
-
}
|
|
131
|
-
exports.UnsplashProviderService = UnsplashProviderService;
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
export interface ConsumeOptions {
|
|
2
|
-
/** Provider key, e.g. "pexels" or "jamendo". One doc per provider per month. */
|
|
3
|
-
provider: string;
|
|
4
|
-
/** Hard monthly cap. Below this the call is allowed. */
|
|
5
|
-
monthlyCap: number;
|
|
6
|
-
/** Optional: how many calls this consumes. Defaults to 1. */
|
|
7
|
-
count?: number;
|
|
8
|
-
}
|
|
9
|
-
export declare class ApiUsageCounterService {
|
|
10
|
-
/**
|
|
11
|
-
* Atomically increments the monthly counter for `provider` and returns
|
|
12
|
-
* whether the call is allowed (i.e. the *new* total is ≤ monthlyCap).
|
|
13
|
-
*
|
|
14
|
-
* Fails open on Firestore error — the call goes through and we log.
|
|
15
|
-
*/
|
|
16
|
-
static tryConsume(opts: ConsumeOptions): Promise<boolean>;
|
|
17
|
-
/** Read-only — used by ops dashboards / soft-cap warnings. */
|
|
18
|
-
static getUsed(provider: string): Promise<number>;
|
|
19
|
-
}
|
|
20
|
-
//# sourceMappingURL=apiUsageCounter.service.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"apiUsageCounter.service.d.ts","sourceRoot":"","sources":["../../src/services/apiUsageCounter.service.ts"],"names":[],"mappings":"AA+BA,MAAM,WAAW,cAAc;IAC7B,gFAAgF;IAChF,QAAQ,EAAE,MAAM,CAAC;IACjB,wDAAwD;IACxD,UAAU,EAAE,MAAM,CAAC;IACnB,6DAA6D;IAC7D,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,qBAAa,sBAAsB;IACjC;;;;;OAKG;WACU,UAAU,CAAC,IAAI,EAAE,cAAc,GAAG,OAAO,CAAC,OAAO,CAAC;IAiC/D,8DAA8D;WACjD,OAAO,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;CAexD"}
|