@adminide-stack/yantra-mobile 12.0.129-alpha.0 → 12.0.129-alpha.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/compute.js +57 -1
- package/lib/compute.js.map +1 -1
- package/lib/features/agent-chat/NativeAgentChat.js +3 -2
- package/lib/features/agent-chat/NativeAgentChat.js.map +1 -1
- package/lib/features/apps/AppsCatalog.js +10 -0
- package/lib/features/apps/AppsCatalog.js.map +1 -1
- package/lib/features/apps/mobileAppCatalog.js +11 -0
- package/lib/features/apps/mobileAppCatalog.js.map +1 -1
- package/lib/features/canvas/AudioEditorExperience.js +448 -105
- package/lib/features/canvas/AudioEditorExperience.js.map +1 -1
- package/lib/features/canvas/CanvasAgentChatPane.js +33 -14
- package/lib/features/canvas/CanvasAgentChatPane.js.map +1 -1
- package/lib/features/canvas/CanvasBoardsGrid.js +493 -41
- package/lib/features/canvas/CanvasBoardsGrid.js.map +1 -1
- package/lib/features/canvas/CanvasChatResultCard.js.map +1 -1
- package/lib/features/canvas/CanvasEditToolsPanel.js +37 -1
- package/lib/features/canvas/CanvasEditToolsPanel.js.map +1 -1
- package/lib/features/canvas/CanvasExperience.js +237 -22
- package/lib/features/canvas/CanvasExperience.js.map +1 -1
- package/lib/features/canvas/CanvasGeneratePanel.js +119 -26
- package/lib/features/canvas/CanvasGeneratePanel.js.map +1 -1
- package/lib/features/canvas/CanvasLooksPanel.js +17 -6
- package/lib/features/canvas/CanvasLooksPanel.js.map +1 -1
- package/lib/features/canvas/CanvasTasksPanel.js +18 -1
- package/lib/features/canvas/CanvasTasksPanel.js.map +1 -1
- package/lib/features/canvas/DesignCategoryGallery.js +423 -0
- package/lib/features/canvas/DesignCategoryGallery.js.map +1 -0
- package/lib/features/canvas/ImageEditorExperience.js +763 -187
- package/lib/features/canvas/ImageEditorExperience.js.map +1 -1
- package/lib/features/canvas/SetStudioExperience.js +199 -11
- package/lib/features/canvas/SetStudioExperience.js.map +1 -1
- package/lib/features/canvas/VideoEditorExperience.js +59 -40
- package/lib/features/canvas/VideoEditorExperience.js.map +1 -1
- package/lib/features/canvas/VideoGeneratorExperience.js +134 -34
- package/lib/features/canvas/VideoGeneratorExperience.js.map +1 -1
- package/lib/features/canvas/aiEdit.js +4 -2
- package/lib/features/canvas/aiEdit.js.map +1 -1
- package/lib/features/canvas/audioEditor/AudioWaveform.js +96 -0
- package/lib/features/canvas/audioEditor/AudioWaveform.js.map +1 -0
- package/lib/features/canvas/audioEditor/audioPeaks.js +93 -0
- package/lib/features/canvas/audioEditor/audioPeaks.js.map +1 -0
- package/lib/features/canvas/canvasTaskSync.js +34 -7
- package/lib/features/canvas/canvasTaskSync.js.map +1 -1
- package/lib/features/canvas/canvasTasks.js +23 -3
- package/lib/features/canvas/canvasTasks.js.map +1 -1
- package/lib/features/canvas/canvasTheme.js +10 -24
- package/lib/features/canvas/canvasTheme.js.map +1 -1
- package/lib/features/canvas/canvasUi.js +1 -1
- package/lib/features/canvas/canvasUi.js.map +1 -1
- package/lib/features/canvas/createTiles.js +17 -9
- package/lib/features/canvas/createTiles.js.map +1 -1
- package/lib/features/canvas/deepLinks.js +35 -5
- package/lib/features/canvas/deepLinks.js.map +1 -1
- package/lib/features/canvas/designCatalog.js +165 -0
- package/lib/features/canvas/designCatalog.js.map +1 -0
- package/lib/features/canvas/designCategories.js +262 -0
- package/lib/features/canvas/designCategories.js.map +1 -0
- package/lib/features/canvas/editorControls.js +406 -0
- package/lib/features/canvas/editorControls.js.map +1 -0
- package/lib/features/canvas/generationModels.js +5 -3
- package/lib/features/canvas/generationModels.js.map +1 -1
- package/lib/features/canvas/generationTasks.js +162 -0
- package/lib/features/canvas/generationTasks.js.map +1 -0
- package/lib/features/canvas/generator/BottomSheet.js +167 -0
- package/lib/features/canvas/generator/BottomSheet.js.map +1 -0
- package/lib/features/canvas/generator/BusinessCardChatCard.js +155 -0
- package/lib/features/canvas/generator/BusinessCardChatCard.js.map +1 -0
- package/lib/features/canvas/generator/DirectorSheet.js +163 -0
- package/lib/features/canvas/generator/DirectorSheet.js.map +1 -0
- package/lib/features/canvas/generator/ReframePreview.js +122 -0
- package/lib/features/canvas/generator/ReframePreview.js.map +1 -0
- package/lib/features/canvas/generator/RunLogCard.js +119 -0
- package/lib/features/canvas/generator/RunLogCard.js.map +1 -0
- package/lib/features/canvas/generator/ShotPanel.js +261 -0
- package/lib/features/canvas/generator/ShotPanel.js.map +1 -0
- package/lib/features/canvas/generator/businessCardWidget.js +117 -0
- package/lib/features/canvas/generator/businessCardWidget.js.map +1 -0
- package/lib/features/canvas/generator/cameraVocabulary.js +142 -0
- package/lib/features/canvas/generator/cameraVocabulary.js.map +1 -0
- package/lib/features/canvas/generator/cinematicVocabulary.js +416 -0
- package/lib/features/canvas/generator/cinematicVocabulary.js.map +1 -0
- package/lib/features/canvas/generator/direction.js +41 -0
- package/lib/features/canvas/generator/direction.js.map +1 -0
- package/lib/features/canvas/generator/reframeGeometry.js +108 -0
- package/lib/features/canvas/generator/reframeGeometry.js.map +1 -0
- package/lib/features/canvas/generator/runLog.js +71 -0
- package/lib/features/canvas/generator/runLog.js.map +1 -0
- package/lib/features/canvas/generator/shot.js +133 -0
- package/lib/features/canvas/generator/shot.js.map +1 -0
- package/lib/features/canvas/generator/useShotSpec.js +87 -0
- package/lib/features/canvas/generator/useShotSpec.js.map +1 -0
- package/lib/features/canvas/home/HeroComposer.js +214 -0
- package/lib/features/canvas/home/HeroComposer.js.map +1 -0
- package/lib/features/canvas/home/HeroMonitor.js +225 -0
- package/lib/features/canvas/home/HeroMonitor.js.map +1 -0
- package/lib/features/canvas/home/LookDetail.js +185 -0
- package/lib/features/canvas/home/LookDetail.js.map +1 -0
- package/lib/features/canvas/home/LoopingVideo.js +37 -0
- package/lib/features/canvas/home/LoopingVideo.js.map +1 -0
- package/lib/features/canvas/home/TemplatesGallery.js +253 -0
- package/lib/features/canvas/home/TemplatesGallery.js.map +1 -0
- package/lib/features/canvas/home/heroShots.js +100 -0
- package/lib/features/canvas/home/heroShots.js.map +1 -0
- package/lib/features/canvas/homeWork.js +62 -3
- package/lib/features/canvas/homeWork.js.map +1 -1
- package/lib/features/canvas/imageEditor/ImageMarkup.js +195 -0
- package/lib/features/canvas/imageEditor/ImageMarkup.js.map +1 -0
- package/lib/features/canvas/imageEditor/imageEditOps.js +367 -0
- package/lib/features/canvas/imageEditor/imageEditOps.js.map +1 -0
- package/lib/features/canvas/nativeViewerRegistry.js.map +1 -1
- package/lib/features/canvas/rankedCatalogSearch.js +375 -0
- package/lib/features/canvas/rankedCatalogSearch.js.map +1 -0
- package/lib/features/canvas/recorder/CameraRecorderExperience.js +68 -20
- package/lib/features/canvas/recorder/CameraRecorderExperience.js.map +1 -1
- package/lib/features/canvas/recorder/RecordingReview.js +272 -0
- package/lib/features/canvas/recorder/RecordingReview.js.map +1 -0
- package/lib/features/canvas/recorder/RecordingsList.js +179 -0
- package/lib/features/canvas/recorder/RecordingsList.js.map +1 -0
- package/lib/features/canvas/recorder/recorderOps.js +99 -0
- package/lib/features/canvas/recorder/recorderOps.js.map +1 -0
- package/lib/features/canvas/seedanceShowcase.js +314 -0
- package/lib/features/canvas/seedanceShowcase.js.map +1 -0
- package/lib/features/canvas/serverTasks.js +149 -15
- package/lib/features/canvas/serverTasks.js.map +1 -1
- package/lib/features/canvas/sessionRenewal.js +114 -0
- package/lib/features/canvas/sessionRenewal.js.map +1 -0
- package/lib/features/canvas/set/SetViewportWebView.js +34 -1
- package/lib/features/canvas/set/SetViewportWebView.js.map +1 -1
- package/lib/features/canvas/set/agent/setTurn.js +4 -2
- package/lib/features/canvas/set/agent/setTurn.js.map +1 -1
- package/lib/features/canvas/set/setPresets.js +85 -0
- package/lib/features/canvas/set/setPresets.js.map +1 -0
- package/lib/features/canvas/set/setProject.js +4 -1
- package/lib/features/canvas/set/setProject.js.map +1 -1
- package/lib/features/canvas/studioCatalog.js +59 -4
- package/lib/features/canvas/studioCatalog.js.map +1 -1
- package/lib/features/canvas/studioLooks.js +31 -4
- package/lib/features/canvas/studioLooks.js.map +1 -1
- package/lib/features/canvas/surfaceIndex.js +1 -14
- package/lib/features/canvas/surfaceIndex.js.map +1 -1
- package/lib/features/canvas/templateSearch.js +489 -0
- package/lib/features/canvas/templateSearch.js.map +1 -0
- package/lib/features/canvas/useCanvasSession.js +28 -6
- package/lib/features/canvas/useCanvasSession.js.map +1 -1
- package/lib/features/canvas/useStudioCatalogTemplates.js +41 -5
- package/lib/features/canvas/useStudioCatalogTemplates.js.map +1 -1
- package/lib/features/canvas/videoEditor/EditorPanels.js +531 -0
- package/lib/features/canvas/videoEditor/EditorPanels.js.map +1 -0
- package/lib/features/canvas/videoEditor/agent/AgentCutPane.js +48 -4
- package/lib/features/canvas/videoEditor/agent/AgentCutPane.js.map +1 -1
- package/lib/features/canvas/videoEditor/agent/agentLoop.js +2 -0
- package/lib/features/canvas/videoEditor/agent/agentLoop.js.map +1 -1
- package/lib/features/canvas/videoEditor/agent/brainClient.js +97 -27
- package/lib/features/canvas/videoEditor/agent/brainClient.js.map +1 -1
- package/lib/features/canvas/videoEditor/agent/cutTools.js +707 -3
- package/lib/features/canvas/videoEditor/agent/cutTools.js.map +1 -1
- package/lib/features/canvas/videoEditor/audioServices.js +165 -0
- package/lib/features/canvas/videoEditor/audioServices.js.map +1 -0
- package/lib/features/canvas/videoEditor/captions.js +144 -0
- package/lib/features/canvas/videoEditor/captions.js.map +1 -0
- package/lib/features/canvas/videoEditor/compileTimeline.js +24 -16
- package/lib/features/canvas/videoEditor/compileTimeline.js.map +1 -1
- package/lib/features/canvas/videoEditor/editorModel.js +12 -2
- package/lib/features/canvas/videoEditor/editorModel.js.map +1 -1
- package/lib/features/canvas/videoEditor/exportTask.js +89 -7
- package/lib/features/canvas/videoEditor/exportTask.js.map +1 -1
- package/lib/features/canvas/videoEditor/layers.js +117 -0
- package/lib/features/canvas/videoEditor/layers.js.map +1 -0
- package/lib/features/canvas/videoEditor/remoteMediaClient.js +45 -18
- package/lib/features/canvas/videoEditor/remoteMediaClient.js.map +1 -1
- package/lib/features/canvas/videoEditor/renderTimeline.js +18 -6
- package/lib/features/canvas/videoEditor/renderTimeline.js.map +1 -1
- package/lib/features/canvas/videoEditor/revoice.js +138 -0
- package/lib/features/canvas/videoEditor/revoice.js.map +1 -0
- package/lib/features/canvas/videoEditor/storageUpload.js +34 -0
- package/lib/features/canvas/videoEditor/storageUpload.js.map +1 -0
- package/lib/features/canvas/videoEditor/textMotion.js +109 -0
- package/lib/features/canvas/videoEditor/textMotion.js.map +1 -0
- package/lib/features/canvas/videoEditor/transitions.js +31 -0
- package/lib/features/canvas/videoEditor/transitions.js.map +1 -0
- package/lib/features/chat/TemplatesChatCards.js +8 -3
- package/lib/features/chat/TemplatesChatCards.js.map +1 -1
- package/lib/features/design/DesignEditorExperience.js +674 -644
- package/lib/features/design/DesignEditorExperience.js.map +1 -1
- package/lib/features/design/DesignExperience.js +285 -538
- package/lib/features/design/DesignExperience.js.map +1 -1
- package/lib/features/design/designCore.js +2 -212
- package/lib/features/design/designCore.js.map +1 -1
- package/lib/features/design/designIndex.js +1 -50
- package/lib/features/design/designIndex.js.map +1 -1
- package/lib/features/design/doc/aiDesign.js +247 -0
- package/lib/features/design/doc/aiDesign.js.map +1 -0
- package/lib/features/design/doc/artifacts.js +280 -0
- package/lib/features/design/doc/artifacts.js.map +1 -0
- package/lib/features/design/doc/chart.js +98 -0
- package/lib/features/design/doc/chart.js.map +1 -0
- package/lib/features/design/doc/crop.js +104 -0
- package/lib/features/design/doc/crop.js.map +1 -0
- package/lib/features/design/doc/curve.js +49 -0
- package/lib/features/design/doc/curve.js.map +1 -0
- package/lib/features/design/doc/docOps.js +397 -0
- package/lib/features/design/doc/docOps.js.map +1 -0
- package/lib/features/design/doc/findReplace.js +112 -0
- package/lib/features/design/doc/findReplace.js.map +1 -0
- package/lib/features/design/doc/fonts.js +79 -0
- package/lib/features/design/doc/fonts.js.map +1 -0
- package/lib/features/design/doc/frames.js +17 -0
- package/lib/features/design/doc/frames.js.map +1 -0
- package/lib/features/design/doc/geometry.js +133 -0
- package/lib/features/design/doc/geometry.js.map +1 -0
- package/lib/features/design/doc/imageAdjust.js +203 -0
- package/lib/features/design/doc/imageAdjust.js.map +1 -0
- package/lib/features/design/doc/legacyDoc.js +107 -0
- package/lib/features/design/doc/legacyDoc.js.map +1 -0
- package/lib/features/design/doc/newDoc.js +335 -0
- package/lib/features/design/doc/newDoc.js.map +1 -0
- package/lib/features/design/doc/pageRange.js +17 -0
- package/lib/features/design/doc/pageRange.js.map +1 -0
- package/lib/features/design/doc/pathScale.js +68 -0
- package/lib/features/design/doc/pathScale.js.map +1 -0
- package/lib/features/design/doc/qr.js +62 -0
- package/lib/features/design/doc/qr.js.map +1 -0
- package/lib/features/design/doc/shapes.js +366 -0
- package/lib/features/design/doc/shapes.js.map +1 -0
- package/lib/features/design/doc/sizes.js +230 -0
- package/lib/features/design/doc/sizes.js.map +1 -0
- package/lib/features/design/doc/textEffects.js +134 -0
- package/lib/features/design/doc/textEffects.js.map +1 -0
- package/lib/features/design/doc/textLayout.js +182 -0
- package/lib/features/design/doc/textLayout.js.map +1 -0
- package/lib/features/design/doc/types.js +30 -0
- package/lib/features/design/doc/types.js.map +1 -0
- package/lib/features/design/editor/AiPanel.js +194 -0
- package/lib/features/design/editor/AiPanel.js.map +1 -0
- package/lib/features/design/editor/ChartDataPanel.js +182 -0
- package/lib/features/design/editor/ChartDataPanel.js.map +1 -0
- package/lib/features/design/editor/CropOverlay.js +199 -0
- package/lib/features/design/editor/CropOverlay.js.map +1 -0
- package/lib/features/design/editor/DesignCanvas.js +363 -0
- package/lib/features/design/editor/DesignCanvas.js.map +1 -0
- package/lib/features/design/editor/ExportSheet.js +123 -0
- package/lib/features/design/editor/ExportSheet.js.map +1 -0
- package/lib/features/design/editor/FindReplacePanel.js +93 -0
- package/lib/features/design/editor/FindReplacePanel.js.map +1 -0
- package/lib/features/design/editor/ImageTools.js +188 -0
- package/lib/features/design/editor/ImageTools.js.map +1 -0
- package/lib/features/design/editor/LayerTools.js +485 -0
- package/lib/features/design/editor/LayerTools.js.map +1 -0
- package/lib/features/design/editor/PageStrip.js +203 -0
- package/lib/features/design/editor/PageStrip.js.map +1 -0
- package/lib/features/design/editor/Slideshow.js +97 -0
- package/lib/features/design/editor/Slideshow.js.map +1 -0
- package/lib/features/design/editor/ToolPanels.js +695 -0
- package/lib/features/design/editor/ToolPanels.js.map +1 -0
- package/lib/features/design/editor/controls.js +630 -0
- package/lib/features/design/editor/controls.js.map +1 -0
- package/lib/features/design/editor/useDesignSave.js +91 -0
- package/lib/features/design/editor/useDesignSave.js.map +1 -0
- package/lib/features/design/export/exportDesign.js +170 -0
- package/lib/features/design/export/exportDesign.js.map +1 -0
- package/lib/features/design/export/pdf.js +143 -0
- package/lib/features/design/export/pdf.js.map +1 -0
- package/lib/features/design/home/DesignHome.js +688 -0
- package/lib/features/design/home/DesignHome.js.map +1 -0
- package/lib/features/design/home/studioHome.js +61 -0
- package/lib/features/design/home/studioHome.js.map +1 -0
- package/lib/features/design/pickDesignImage.js +60 -0
- package/lib/features/design/pickDesignImage.js.map +1 -0
- package/lib/features/design/render/DesignPageView.js +69 -0
- package/lib/features/design/render/DesignPageView.js.map +1 -0
- package/lib/features/design/render/PageCapture.js +288 -0
- package/lib/features/design/render/PageCapture.js.map +1 -0
- package/lib/features/design/render/TextMeasure.js +115 -0
- package/lib/features/design/render/TextMeasure.js.map +1 -0
- package/lib/features/design/render/fontRegistry.js +110 -0
- package/lib/features/design/render/fontRegistry.js.map +1 -0
- package/lib/features/design/render/layers.js +392 -0
- package/lib/features/design/render/layers.js.map +1 -0
- package/lib/features/design/render/svg.js +35 -0
- package/lib/features/design/render/svg.js.map +1 -0
- package/lib/features/design/render/svgParts.js +435 -0
- package/lib/features/design/render/svgParts.js.map +1 -0
- package/lib/features/design/surface/BoardScreen.js +529 -0
- package/lib/features/design/surface/BoardScreen.js.map +1 -0
- package/lib/features/design/surface/CompareView.js +138 -0
- package/lib/features/design/surface/CompareView.js.map +1 -0
- package/lib/features/design/surface/CreationScreen.js +294 -0
- package/lib/features/design/surface/CreationScreen.js.map +1 -0
- package/lib/features/design/surface/DesignAgentChatPane.js +444 -0
- package/lib/features/design/surface/DesignAgentChatPane.js.map +1 -0
- package/lib/features/design/surface/DesignBoards.js +441 -0
- package/lib/features/design/surface/DesignBoards.js.map +1 -0
- package/lib/features/design/surface/DesignPreview.js +159 -0
- package/lib/features/design/surface/DesignPreview.js.map +1 -0
- package/lib/features/design/surface/DesignSurfaceExperience.js +80 -0
- package/lib/features/design/surface/DesignSurfaceExperience.js.map +1 -0
- package/lib/features/design/surface/FullScreenPreview.js +59 -0
- package/lib/features/design/surface/FullScreenPreview.js.map +1 -0
- package/lib/features/design/surface/NewSystemDialog.js +122 -0
- package/lib/features/design/surface/NewSystemDialog.js.map +1 -0
- package/lib/features/design/surface/PickerSheet.js +175 -0
- package/lib/features/design/surface/PickerSheet.js.map +1 -0
- package/lib/features/design/surface/TemplatesGallery.js +156 -0
- package/lib/features/design/surface/TemplatesGallery.js.map +1 -0
- package/lib/features/design/surface/WetPaint.js +140 -0
- package/lib/features/design/surface/WetPaint.js.map +1 -0
- package/lib/features/design/surface/agentTurn.js +229 -0
- package/lib/features/design/surface/agentTurn.js.map +1 -0
- package/lib/features/design/surface/designBoard.js +218 -0
- package/lib/features/design/surface/designBoard.js.map +1 -0
- package/lib/features/design/surface/designChannel.js +186 -0
- package/lib/features/design/surface/designChannel.js.map +1 -0
- package/lib/features/design/surface/designChat.js +141 -0
- package/lib/features/design/surface/designChat.js.map +1 -0
- package/lib/features/design/surface/designConnector.js +266 -0
- package/lib/features/design/surface/designConnector.js.map +1 -0
- package/lib/features/design/surface/designDocument.js +40 -0
- package/lib/features/design/surface/designDocument.js.map +1 -0
- package/lib/features/design/surface/designExport.js +55 -0
- package/lib/features/design/surface/designExport.js.map +1 -0
- package/lib/features/design/surface/designLinks.js +64 -0
- package/lib/features/design/surface/designLinks.js.map +1 -0
- package/lib/features/design/surface/designPalette.js +24 -0
- package/lib/features/design/surface/designPalette.js.map +1 -0
- package/lib/features/design/surface/designRun.js +161 -0
- package/lib/features/design/surface/designRun.js.map +1 -0
- package/lib/features/design/surface/designTheme.js +119 -0
- package/lib/features/design/surface/designTheme.js.map +1 -0
- package/lib/features/design/surface/execStream.js +206 -0
- package/lib/features/design/surface/execStream.js.map +1 -0
- package/lib/features/design/surface/metaball.js +48 -0
- package/lib/features/design/surface/metaball.js.map +1 -0
- package/lib/features/design/surface/pickReferenceFiles.js +35 -0
- package/lib/features/design/surface/pickReferenceFiles.js.map +1 -0
- package/lib/features/design/surface/useDesignSurface.js +379 -0
- package/lib/features/design/surface/useDesignSurface.js.map +1 -0
- package/lib/features/docs/DocBlockRow.js +336 -0
- package/lib/features/docs/DocBlockRow.js.map +1 -0
- package/lib/features/docs/DocsEditorExperience.js +949 -0
- package/lib/features/docs/DocsEditorExperience.js.map +1 -0
- package/lib/features/docs/DocsToolbar.js +247 -0
- package/lib/features/docs/DocsToolbar.js.map +1 -0
- package/lib/features/docs/blocks.js +560 -0
- package/lib/features/docs/blocks.js.map +1 -0
- package/lib/features/docs/docArtifacts.js +129 -0
- package/lib/features/docs/docArtifacts.js.map +1 -0
- package/lib/features/docs/docEdits.js +201 -0
- package/lib/features/docs/docEdits.js.map +1 -0
- package/lib/features/docs/docExport.js +235 -0
- package/lib/features/docs/docExport.js.map +1 -0
- package/lib/features/docs/docShare.js +62 -0
- package/lib/features/docs/docShare.js.map +1 -0
- package/lib/features/links/openInApp.js +38 -2
- package/lib/features/links/openInApp.js.map +1 -1
- package/lib/routes.json +54 -0
- package/lib/screens/DesignNative/index.js +35 -0
- package/lib/screens/DesignNative/index.js.map +1 -0
- package/package.json +3 -3
- package/lib/features/design/exportDesign.js +0 -133
- package/lib/features/design/exportDesign.js.map +0 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {jsxs,jsx,Fragment}from'react/jsx-runtime';import {useMemo,useState,useRef,useEffect}from'react';import {View,ScrollView,Text,TextInput,ActivityIndicator,StyleSheet}from'react-native';import {MaterialCommunityIcons}from'@expo/vector-icons';import {resultUrl,friendlyMediaError,generationImageUrl,generationMediaUrl}from'./videoEditor/mediaActions.js';import {unwrapProxyUrl}from'./videoEditor/remoteMediaClient.js';import {STATIC_IMAGE_MODELS,normalizeModels,promptAudioModels,STATIC_VIDEO_MODELS,generationCapabilities,videoReferenceCap,modelThatReadsImages,videoDurationOptions,buildVideoGenerateParams}from'./generationModels.js';import {MAX_REFERENCE_IMAGES,PROMO_MAX_REFERENCES,addReference,imageLaneCall}from'./generatorReferences.js';import {modelForCommand,parseCommandLine,matchCommands,laneForCommand,findCommand,missingFor,MISSING_LABEL,VIDEO_INPUT_MODEL,commandPrompt}from'./generatorCommands.js';import {ReferenceStrip,StillRoleSwitch,FrameSlot}from'./GeneratorReferenceSlots.js';import {CanvasTemplatesPanel}from'./CanvasTemplatesPanel.js';import {nearestAspect}from'./studioLooks.js';import {ensureFetchableMediaUrls,ensureFetchableMediaUrl}from'./mediaUrls.js';import {DEFAULT_PROMO_PRESET,EMPTY_PROMO_CONTEXT,defaultPromoQuality,PROMO_PRESETS,PROMO_DURATIONS,PROMO_ASPECT_RATIOS,PROMO_PLAYBOOKS,lookupPromoPreset,designPromoProject,PROMO_CONNECTOR}from'./promoVideo.js';import {PromoContextFields,PromoProductionFields}from'./PromoContextFields.js';import {startPromoTask}from'./canvasTasks.js';import {CLIP_COUNT_CHOICES,CLIP_ASPECT_RATIOS,CLIP_RESOLUTIONS,buildClipRunParams,parseClipRunResult}from'./videoClips.js';import {NativeDictationBar}from'../audio-input/NativeDictationBar.js';import {useCanvasTheme,themedStyles}from'./canvasTheme.js';import {Segmented,Pressable,pressedStyle,SPACE,RADIUS,HIT,TYPE}from'./canvasUi.js';var __defProp = Object.defineProperty;
|
|
1
|
+
import {jsxs,jsx,Fragment}from'react/jsx-runtime';import {useMemo,useState,useRef,useEffect}from'react';import {View,ScrollView,Text,TextInput,ActivityIndicator,StyleSheet}from'react-native';import {MaterialCommunityIcons}from'@expo/vector-icons';import {resultUrl,friendlyMediaError,generationImageUrl,generationMediaUrl}from'./videoEditor/mediaActions.js';import {unwrapProxyUrl}from'./videoEditor/remoteMediaClient.js';import {STATIC_IMAGE_MODELS,normalizeModels,promptAudioModels,STATIC_VIDEO_MODELS,generationCapabilities,videoReferenceCap,modelThatReadsImages,videoDurationOptions,buildVideoGenerateParams}from'./generationModels.js';import {MAX_REFERENCE_IMAGES,PROMO_MAX_REFERENCES,addReference,imageLaneCall}from'./generatorReferences.js';import {modelForCommand,parseCommandLine,matchCommands,laneForCommand,findCommand,missingFor,MISSING_LABEL,VIDEO_INPUT_MODEL,commandPrompt}from'./generatorCommands.js';import {ReferenceStrip,StillRoleSwitch,FrameSlot}from'./GeneratorReferenceSlots.js';import {CanvasTemplatesPanel}from'./CanvasTemplatesPanel.js';import {nearestAspect}from'./studioLooks.js';import {ensureFetchableMediaUrls,ensureFetchableMediaUrl}from'./mediaUrls.js';import {DEFAULT_PROMO_PRESET,EMPTY_PROMO_CONTEXT,defaultPromoQuality,defaultNarration,PROMO_PRESETS,PROMO_DURATIONS,PROMO_ASPECT_RATIOS,PROMO_PLAYBOOKS,lookupPromoPreset,designPromoProject,PROMO_CONNECTOR}from'./promoVideo.js';import {PromoContextFields,PromoProductionFields}from'./PromoContextFields.js';import {startPromoTask}from'./canvasTasks.js';import {runTrackedGeneration}from'./generationTasks.js';import {DirectorPill,DirectorSheet}from'./generator/DirectorSheet.js';import {EMPTY_DIRECTION,directedPrompt}from'./generator/direction.js';import {ShotPanel,ShotStructureButton}from'./generator/ShotPanel.js';import {briefWorthStructuring}from'./generator/shot.js';import {useShotSpec}from'./generator/useShotSpec.js';import {RunLogCard}from'./generator/RunLogCard.js';import {logStep,startRun,finishRun,failRun}from'./generator/runLog.js';import {CLIP_COUNT_CHOICES,CLIP_ASPECT_RATIOS,CLIP_RESOLUTIONS,buildClipRunParams,parseClipRunResult}from'./videoClips.js';import {NativeDictationBar}from'../audio-input/NativeDictationBar.js';import {useCanvasTheme,themedStyles}from'./canvasTheme.js';import {Segmented,Pressable,pressedStyle,SPACE,RADIUS,HIT,TYPE}from'./canvasUi.js';var __defProp = Object.defineProperty;
|
|
2
2
|
var __defProps = Object.defineProperties;
|
|
3
3
|
var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
|
|
4
4
|
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
@@ -55,6 +55,7 @@ function CanvasGeneratePanel({
|
|
|
55
55
|
onPromoQueued,
|
|
56
56
|
pickStill
|
|
57
57
|
}) {
|
|
58
|
+
var _a;
|
|
58
59
|
const theme = useCanvasTheme();
|
|
59
60
|
const styles = useMemo(() => makeStyles(theme), [theme]);
|
|
60
61
|
const [mode, setMode] = useState("image");
|
|
@@ -91,6 +92,13 @@ function CanvasGeneratePanel({
|
|
|
91
92
|
const [promoNarrator, setPromoNarrator] = useState("");
|
|
92
93
|
const [promoUseCases, setPromoUseCases] = useState("");
|
|
93
94
|
const [promoDesignModel, setPromoDesignModel] = useState("");
|
|
95
|
+
const [videoResolution, setVideoResolution] = useState("1080p");
|
|
96
|
+
const [promoCaptions, setPromoCaptions] = useState(false);
|
|
97
|
+
const [promoNarration, setPromoNarration] = useState(() => defaultNarration(DEFAULT_PROMO_PRESET));
|
|
98
|
+
const [direction, setDirection] = useState(EMPTY_DIRECTION);
|
|
99
|
+
const [directorOpen, setDirectorOpen] = useState(false);
|
|
100
|
+
const [runLog, setRunLog] = useState(null);
|
|
101
|
+
const shot = useShotSpec(runAction);
|
|
94
102
|
const pendingCommand = useRef(null);
|
|
95
103
|
useEffect(() => {
|
|
96
104
|
if (frameUrl) setStartFrame(frameUrl);
|
|
@@ -126,7 +134,7 @@ function CanvasGeneratePanel({
|
|
|
126
134
|
let cancelled = false;
|
|
127
135
|
const job = mode === "image" ? runAction("yantra-image-generation", "YANTRA_GEMINI_IMAGE_LIST_MODELS", {}) : mode === "audio" ? runAction("yantra-audio", "YANTRA_AUDIO_LIST_MODELS", {}) : runAction("yantra-video-generation", "YANTRA_VIDEO_GENERATION_LIST_MODELS", {});
|
|
128
136
|
job.then((result) => {
|
|
129
|
-
var
|
|
137
|
+
var _a2, _b, _c, _d;
|
|
130
138
|
if (cancelled) return;
|
|
131
139
|
let list = normalizeModels(result);
|
|
132
140
|
if (mode === "audio") list = promptAudioModels(list);
|
|
@@ -135,7 +143,7 @@ function CanvasGeneratePanel({
|
|
|
135
143
|
setModels(list);
|
|
136
144
|
const cmd = pendingCommand.current;
|
|
137
145
|
pendingCommand.current = null;
|
|
138
|
-
setSelectedModel(cmd ? modelForCommand(cmd, list, (_b = (
|
|
146
|
+
setSelectedModel(cmd ? modelForCommand(cmd, list, (_b = (_a2 = list[0]) == null ? void 0 : _a2.id) != null ? _b : "") : (_d = (_c = list[0]) == null ? void 0 : _c.id) != null ? _d : "");
|
|
139
147
|
}).catch(() => {
|
|
140
148
|
if (cancelled) return;
|
|
141
149
|
if (mode === "video") {
|
|
@@ -153,6 +161,8 @@ function CanvasGeneratePanel({
|
|
|
153
161
|
const modelInfo = models.find((m) => m.id === selectedModel);
|
|
154
162
|
const videoCaps = generationCapabilities(modelInfo);
|
|
155
163
|
const refCap = videoReferenceCap(models, selectedModel);
|
|
164
|
+
const resolutions = mode === "video" ? (_a = modelInfo == null ? void 0 : modelInfo.resolutions) != null ? _a : [] : [];
|
|
165
|
+
const effectiveResolution = resolutions.length ? resolutions.includes(videoResolution) ? videoResolution : resolutions.includes("1080p") ? "1080p" : resolutions[resolutions.length - 1] : void 0;
|
|
156
166
|
const footageSrc = (seedItem == null ? void 0 : seedItem.type) === "video" ? unwrapProxyUrl(seedItem.src) : void 0;
|
|
157
167
|
const hasStill = mode === "image" ? imageStills.length > 0 : Boolean(startFrame || imageStills[0]);
|
|
158
168
|
const commandLine = parseCommandLine(prompt);
|
|
@@ -204,7 +214,7 @@ function CanvasGeneratePanel({
|
|
|
204
214
|
const durations = mode === "video" ? videoDurationOptions(modelInfo) : [];
|
|
205
215
|
const noun = mode === "promo" ? "marketing video" : mode === "slides" ? "slides" : mode;
|
|
206
216
|
const generate = () => {
|
|
207
|
-
var
|
|
217
|
+
var _a2, _b;
|
|
208
218
|
if (mode === "slides") {
|
|
209
219
|
onSlides();
|
|
210
220
|
return;
|
|
@@ -255,11 +265,23 @@ function CanvasGeneratePanel({
|
|
|
255
265
|
setNotice(`${cmd.label} needs ${MISSING_LABEL[missing]}`);
|
|
256
266
|
return;
|
|
257
267
|
}
|
|
258
|
-
model = has.footage && lane === "video" ? (_b = (
|
|
268
|
+
model = has.footage && lane === "video" ? (_b = (_a2 = models.find((m) => m.supportsVideoInput)) == null ? void 0 : _a2.id) != null ? _b : VIDEO_INPUT_MODEL : modelForCommand(cmd, models, selectedModel);
|
|
259
269
|
}
|
|
260
|
-
const
|
|
270
|
+
const typed = cmd ? commandPrompt(raw) : raw;
|
|
271
|
+
const {
|
|
272
|
+
compiled: capturedShot,
|
|
273
|
+
snapshot: shotSnapshot
|
|
274
|
+
} = mode === "video" ? shot.capture() : {
|
|
275
|
+
compiled: null,
|
|
276
|
+
snapshot: null
|
|
277
|
+
};
|
|
278
|
+
const text = mode === "video" ? directedPrompt((capturedShot == null ? void 0 : capturedShot.prompt) || typed, direction) : typed;
|
|
279
|
+
if (capturedShot) shot.clear();
|
|
261
280
|
setBusy(true);
|
|
262
281
|
setNotice(null);
|
|
282
|
+
let log = startRun(`Generate ${noun}`);
|
|
283
|
+
log = logStep(log, mode === "promo" ? "Submitting the production\u2026" : "Submitting\u2026");
|
|
284
|
+
setRunLog(log);
|
|
263
285
|
const footage = mode === "video" && footageSrc && (restyle || cmd && cmd.needs !== "image") ? footageSrc : void 0;
|
|
264
286
|
const promoRequest = __spreadValues(__spreadValues(__spreadValues(__spreadValues(__spreadValues({
|
|
265
287
|
prompt: text,
|
|
@@ -284,17 +306,37 @@ function CanvasGeneratePanel({
|
|
|
284
306
|
stills,
|
|
285
307
|
role: cmd ? "source" : stillRole
|
|
286
308
|
});
|
|
287
|
-
return
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
309
|
+
return runTrackedGeneration({
|
|
310
|
+
run: runAction,
|
|
311
|
+
connector: "yantra-image-generation",
|
|
312
|
+
action: call.action,
|
|
313
|
+
params: call.params,
|
|
314
|
+
mode: "image",
|
|
315
|
+
prompt: text,
|
|
316
|
+
boardId,
|
|
317
|
+
resolveUrl: generationImageUrl
|
|
318
|
+
});
|
|
319
|
+
})() : mode === "audio" ? runTrackedGeneration({
|
|
320
|
+
run: runAction,
|
|
321
|
+
connector: "yantra-audio",
|
|
322
|
+
action: "YANTRA_AUDIO_RUN_PROMPT",
|
|
323
|
+
params: __spreadValues({
|
|
324
|
+
prompt: text
|
|
325
|
+
}, model ? {
|
|
326
|
+
model
|
|
327
|
+
} : {}),
|
|
328
|
+
mode: "audio",
|
|
329
|
+
prompt: text,
|
|
330
|
+
boardId,
|
|
331
|
+
resolveUrl: (result) => resultUrl(result, "YANTRA_AUDIO_RUN_PROMPT")
|
|
332
|
+
}) : mode === "promo" ? startPromoTask(runAction, {
|
|
293
333
|
boardId: boardId || "global",
|
|
294
334
|
brief: text,
|
|
295
335
|
request: __spreadValues(__spreadValues(__spreadProps(__spreadValues({}, promoRequest), {
|
|
336
|
+
captions: promoCaptions,
|
|
337
|
+
narration: promoNarration,
|
|
296
338
|
quality: promoQuality
|
|
297
|
-
}), promoNarrator ? {
|
|
339
|
+
}), promoNarration && promoNarrator ? {
|
|
298
340
|
narratorVoice: promoNarrator
|
|
299
341
|
} : {}), promoUseCases.trim() ? {
|
|
300
342
|
useCases: promoUseCases
|
|
@@ -307,25 +349,46 @@ function CanvasGeneratePanel({
|
|
|
307
349
|
const first = startFrame && !footage && videoCaps.canStartFrame ? await ensureFetchableMediaUrl(runAction, startFrame) : void 0;
|
|
308
350
|
const last = endFrame && videoCaps.canEndFrame ? await ensureFetchableMediaUrl(runAction, endFrame) : void 0;
|
|
309
351
|
const refs = await ensureFetchableMediaUrls(runAction, videoRefs.slice(0, refCap));
|
|
310
|
-
|
|
352
|
+
return runTrackedGeneration({
|
|
353
|
+
run: runAction,
|
|
354
|
+
connector: "yantra-video-generation",
|
|
355
|
+
action: "YANTRA_VIDEO_GENERATION_GENERATE",
|
|
356
|
+
params: buildVideoGenerateParams({
|
|
357
|
+
prompt: text,
|
|
358
|
+
// The spec's framing wins when it has one: the compiled prompt was written against it.
|
|
359
|
+
aspectRatio: (capturedShot == null ? void 0 : capturedShot.aspectRatio) || aspect,
|
|
360
|
+
model,
|
|
361
|
+
durationSeconds: (capturedShot == null ? void 0 : capturedShot.durationSeconds) || videoDuration || void 0,
|
|
362
|
+
referenceImageUrl: first,
|
|
363
|
+
referenceEndImageUrl: last,
|
|
364
|
+
styleReferenceUrls: refs,
|
|
365
|
+
referenceVideoUrl: footage,
|
|
366
|
+
resolution: effectiveResolution,
|
|
367
|
+
// Constraints ride the provider's negative_prompt, never the prompt.
|
|
368
|
+
negativePrompt: capturedShot == null ? void 0 : capturedShot.negativePrompt
|
|
369
|
+
}),
|
|
370
|
+
mode: "video",
|
|
311
371
|
prompt: text,
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
referenceImageUrl: first,
|
|
316
|
-
referenceEndImageUrl: last,
|
|
317
|
-
styleReferenceUrls: refs,
|
|
318
|
-
referenceVideoUrl: footage
|
|
319
|
-
}));
|
|
320
|
-
return generationMediaUrl(result);
|
|
372
|
+
boardId,
|
|
373
|
+
resolveUrl: generationMediaUrl
|
|
374
|
+
});
|
|
321
375
|
})();
|
|
376
|
+
log = logStep(log, mode === "promo" ? "Queued as a background task" : `Generating ${noun}\u2026`);
|
|
377
|
+
setRunLog(log);
|
|
322
378
|
job.then((url) => {
|
|
323
379
|
if (url) onGenerated(url, {
|
|
324
380
|
prompt: text,
|
|
325
381
|
aspect,
|
|
326
382
|
mode
|
|
327
383
|
});
|
|
328
|
-
|
|
384
|
+
const summary = mode === "promo" ? "Production queued. Track it under More > Tasks." : mode === "video" ? `Generated a ${(capturedShot == null ? void 0 : capturedShot.durationSeconds) || videoDuration ? `${(capturedShot == null ? void 0 : capturedShot.durationSeconds) || videoDuration}s ` : ""}${(capturedShot == null ? void 0 : capturedShot.aspectRatio) || aspect}${effectiveResolution ? ` ${effectiveResolution}` : ""} video and placed it on the board.` : `Generated ${mode === "image" ? "an image" : "audio"} and placed it on the board.`;
|
|
385
|
+
setRunLog(finishRun(log, summary));
|
|
386
|
+
}).catch((err) => {
|
|
387
|
+
const message = friendlyMediaError(err, `${noun} generation`);
|
|
388
|
+
setNotice(message);
|
|
389
|
+
setRunLog(failRun(log, message));
|
|
390
|
+
if (shotSnapshot == null ? void 0 : shotSnapshot.spec) shot.restore(shotSnapshot);
|
|
391
|
+
}).finally(() => setBusy(false));
|
|
329
392
|
};
|
|
330
393
|
const placeholder = mode === "clips" ? "Paste a video URL\u2026" : `Describe the ${mode === "promo" ? "promo" : mode} you want to generate\u2026`;
|
|
331
394
|
const cta = mode === "slides" ? "Open slides studio" : `Generate ${noun}`;
|
|
@@ -374,6 +437,16 @@ function CanvasGeneratePanel({
|
|
|
374
437
|
/* @__PURE__ */ jsx(MaterialCommunityIcons, { name: "clock-outline", size: 14, color: theme.mutedForeground }),
|
|
375
438
|
/* @__PURE__ */ jsx(Text, { style: styles.pillLabel, children: videoDuration ? `${videoDuration}s` : "Auto" })
|
|
376
439
|
] }) : null,
|
|
440
|
+
effectiveResolution ? /* @__PURE__ */ jsxs(Pressable, { onPress: () => {
|
|
441
|
+
const i = resolutions.indexOf(effectiveResolution);
|
|
442
|
+
setVideoResolution(resolutions[(i + 1) % resolutions.length]);
|
|
443
|
+
}, style: ({
|
|
444
|
+
pressed
|
|
445
|
+
}) => [styles.pill, pressedStyle(pressed)], accessibilityRole: "button", accessibilityLabel: `Resolution ${effectiveResolution}`, children: [
|
|
446
|
+
/* @__PURE__ */ jsx(MaterialCommunityIcons, { name: "high-definition-box", size: 14, color: theme.mutedForeground }),
|
|
447
|
+
/* @__PURE__ */ jsx(Text, { style: styles.pillLabel, children: effectiveResolution })
|
|
448
|
+
] }) : null,
|
|
449
|
+
mode === "video" ? /* @__PURE__ */ jsx(DirectorPill, { value: direction, onPress: () => setDirectorOpen(true) }) : null,
|
|
377
450
|
/* @__PURE__ */ jsxs(Pressable, { onPress: () => setTemplatesOpen((v) => !v), style: ({
|
|
378
451
|
pressed
|
|
379
452
|
}) => [styles.pill, templatesOpen && styles.pillOn, pressedStyle(pressed)], accessibilityRole: "button", accessibilityLabel: "Browse prompt templates", children: [
|
|
@@ -413,6 +486,7 @@ function CanvasGeneratePanel({
|
|
|
413
486
|
setPromoPreset(p.id);
|
|
414
487
|
setPromoDuration(p.defaultDurationSeconds);
|
|
415
488
|
setPromoQuality(defaultPromoQuality(p.id));
|
|
489
|
+
setPromoNarration(defaultNarration(p.id));
|
|
416
490
|
}, style: ({
|
|
417
491
|
pressed
|
|
418
492
|
}) => [styles.pill, promoPreset === p.id && styles.pillOn, pressedStyle(pressed)], children: /* @__PURE__ */ jsx(Text, { style: [styles.pillLabel, promoPreset === p.id && styles.pillLabelOn], children: p.name }) }, p.id)) }) : null,
|
|
@@ -435,6 +509,14 @@ function CanvasGeneratePanel({
|
|
|
435
509
|
designModel: promoDesignModel,
|
|
436
510
|
onDesignModel: setPromoDesignModel
|
|
437
511
|
} : {})) : null,
|
|
512
|
+
mode === "promo" ? /* @__PURE__ */ jsx(View, { style: styles.pills, children: [["Captions", "closed-caption-outline", promoCaptions, () => setPromoCaptions((v) => !v)], ["Narration", "microphone-outline", promoNarration, () => setPromoNarration((v) => !v)]].map(([label, icon, on, toggle]) => /* @__PURE__ */ jsxs(Pressable, { onPress: toggle, style: ({
|
|
513
|
+
pressed
|
|
514
|
+
}) => [styles.pill, on && styles.pillOn, pressedStyle(pressed)], accessibilityRole: "switch", accessibilityState: {
|
|
515
|
+
checked: on
|
|
516
|
+
}, accessibilityHint: label === "Captions" ? "Burn word-level captions into the video" : "Write and voice a script; off leaves music and on-screen text to carry it", children: [
|
|
517
|
+
/* @__PURE__ */ jsx(MaterialCommunityIcons, { name: icon, size: 14, color: on ? theme.background : theme.mutedForeground }),
|
|
518
|
+
/* @__PURE__ */ jsx(Text, { style: [styles.pillLabel, on && styles.pillLabelOn], children: label })
|
|
519
|
+
] }, label)) }) : null,
|
|
438
520
|
mode === "clips" ? /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
439
521
|
/* @__PURE__ */ jsx(TextInput, { value: clipUrl, onChangeText: setClipUrl, placeholder: "Paste a video URL\u2026", placeholderTextColor: theme.mutedForeground, autoCapitalize: "none", style: styles.field }),
|
|
440
522
|
/* @__PURE__ */ jsx(View, { style: styles.pills, children: CLIP_COUNT_CHOICES.map((n) => /* @__PURE__ */ jsx(Pressable, { onPress: () => setClipCount(n), style: ({
|
|
@@ -449,7 +531,12 @@ function CanvasGeneratePanel({
|
|
|
449
531
|
label: `${value}p`
|
|
450
532
|
})), value: clipRes, onChange: setClipRes, style: styles.segmented })
|
|
451
533
|
] }) : mode === "slides" ? /* @__PURE__ */ jsx(Text, { style: styles.hint, children: "Opens the slides studio, the same as Generate, then Slides, on the web." }) : /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
452
|
-
|
|
534
|
+
mode === "video" && shot.spec && shot.constraints ? /* @__PURE__ */ jsx(ShotPanel, { spec: shot.spec, constraints: shot.constraints, onChange: shot.setSpec, onDiscard: () => {
|
|
535
|
+
const brief = shot.discard();
|
|
536
|
+
if (brief) setPrompt(brief);
|
|
537
|
+
}, onRestructure: () => void shot.structure(shot.brief.current, selectedModel), busy: shot.busy }) : /* @__PURE__ */ jsx(TextInput, { value: prompt, onChangeText: setPrompt, placeholder: mode === "image" || mode === "video" ? `${placeholder} Type / for effects` : placeholder, placeholderTextColor: theme.mutedForeground, multiline: true, style: styles.prompt }),
|
|
538
|
+
mode === "video" && !shot.spec && briefWorthStructuring(prompt) && runAction ? /* @__PURE__ */ jsx(ShotStructureButton, { busy: shot.busy, onPress: () => void shot.structure(prompt, selectedModel) }) : null,
|
|
539
|
+
shot.error && mode === "video" ? /* @__PURE__ */ jsx(Text, { style: styles.hint, children: shot.error }) : null,
|
|
453
540
|
commandSuggestions.length > 0 ? /* @__PURE__ */ jsx(ScrollView, { horizontal: true, keyboardShouldPersistTaps: "handled", showsHorizontalScrollIndicator: false, style: styles.hScroll, contentContainerStyle: styles.pills, children: commandSuggestions.map((cmd) => /* @__PURE__ */ jsxs(Pressable, { onPress: () => applyCommand(cmd), style: ({
|
|
454
541
|
pressed
|
|
455
542
|
}) => [styles.pill, pressedStyle(pressed)], accessibilityRole: "button", accessibilityHint: cmd.blurb, children: [
|
|
@@ -461,6 +548,7 @@ function CanvasGeneratePanel({
|
|
|
461
548
|
] }, cmd.id)) }) : null
|
|
462
549
|
] })
|
|
463
550
|
] }),
|
|
551
|
+
runLog ? /* @__PURE__ */ jsx(View, { style: styles.runLog, children: /* @__PURE__ */ jsx(RunLogCard, { run: runLog }) }) : null,
|
|
464
552
|
notice ? /* @__PURE__ */ jsx(Text, { style: styles.notice, children: notice }) : null,
|
|
465
553
|
/* @__PURE__ */ jsxs(View, { style: styles.actions, children: [
|
|
466
554
|
dictating ? /* @__PURE__ */ jsx(View, { style: {
|
|
@@ -501,13 +589,18 @@ function CanvasGeneratePanel({
|
|
|
501
589
|
/* @__PURE__ */ jsx(Text, { style: styles.ctaLabel, children: cta }),
|
|
502
590
|
/* @__PURE__ */ jsx(MaterialCommunityIcons, { name: "arrow-right", size: 18, color: theme.primaryForeground })
|
|
503
591
|
] }) })
|
|
504
|
-
] })
|
|
592
|
+
] }),
|
|
593
|
+
directorOpen && mode === "video" ? /* @__PURE__ */ jsx(DirectorSheet, { value: direction, onChange: setDirection, onClose: () => setDirectorOpen(false), prompt }) : null
|
|
505
594
|
] });
|
|
506
595
|
}
|
|
507
596
|
const makeStyles = themedStyles((theme) => StyleSheet.create({
|
|
508
597
|
root: {
|
|
509
598
|
flex: 1
|
|
510
599
|
},
|
|
600
|
+
runLog: {
|
|
601
|
+
paddingHorizontal: SPACE.lg,
|
|
602
|
+
paddingBottom: SPACE.sm
|
|
603
|
+
},
|
|
511
604
|
hScroll: {
|
|
512
605
|
flexGrow: 0
|
|
513
606
|
},
|