auricui-skill 0.0.0-stage → 0.1.2
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/LICENSE +21 -0
- package/README.md +29 -2
- package/bin/install.mjs +66 -0
- package/package.json +29 -4
- package/skill/SKILL.md +64 -0
- package/skill/agents/openai.yaml +4 -0
- package/skill/assets/examples/ApprovalCard.tsx +8 -0
- package/skill/assets/examples/BasicApp.tsx +38 -0
- package/skill/assets/examples/BriefingCard.tsx +8 -0
- package/skill/assets/examples/ChatControls.tsx +49 -0
- package/skill/assets/examples/ChatPanel.tsx +73 -0
- package/skill/assets/examples/Checkbox.tsx +13 -0
- package/skill/assets/examples/Combobox.tsx +14 -0
- package/skill/assets/examples/Drawer.tsx +10 -0
- package/skill/assets/examples/MemoryCard.tsx +9 -0
- package/skill/assets/examples/MessageList.tsx +8 -0
- package/skill/assets/examples/Theme.tsx +14 -0
- package/skill/assets/examples/ToolCall.tsx +8 -0
- package/skill/assets/examples/Tree.tsx +15 -0
- package/skill/assets/examples/examples.css +11 -0
- package/skill/assets/library/auricui-0.1.0-preview.1.tgz +0 -0
- package/skill/assets/library/auricui-0.1.0-preview.3.tgz +0 -0
- package/skill/assets/library/auricui-0.1.0-preview.4.tgz +0 -0
- package/skill/assets/upstream/LICENSE +21 -0
- package/skill/assets/upstream/apps/desktop/chat/src/App.tsx +1099 -0
- package/skill/assets/upstream/apps/desktop/chat/src/app-bridge.ts +154 -0
- package/skill/assets/upstream/apps/desktop/chat/src/chat.css +1812 -0
- package/skill/assets/upstream/apps/desktop/chat/src/components/AddSkill.tsx +223 -0
- package/skill/assets/upstream/apps/desktop/chat/src/components/AgentActivityRow.tsx +716 -0
- package/skill/assets/upstream/apps/desktop/chat/src/components/AgentIcons.tsx +46 -0
- package/skill/assets/upstream/apps/desktop/chat/src/components/AttachmentCard.tsx +34 -0
- package/skill/assets/upstream/apps/desktop/chat/src/components/AttachmentPreview.tsx +331 -0
- package/skill/assets/upstream/apps/desktop/chat/src/components/BalanceNotice.tsx +22 -0
- package/skill/assets/upstream/apps/desktop/chat/src/components/BrandLogo.tsx +35 -0
- package/skill/assets/upstream/apps/desktop/chat/src/components/ComposerCard.tsx +182 -0
- package/skill/assets/upstream/apps/desktop/chat/src/components/ConversationSessionBar.tsx +292 -0
- package/skill/assets/upstream/apps/desktop/chat/src/components/CopyDiagnostics.tsx +24 -0
- package/skill/assets/upstream/apps/desktop/chat/src/components/Divider.tsx +47 -0
- package/skill/assets/upstream/apps/desktop/chat/src/components/FileChangesList.tsx +119 -0
- package/skill/assets/upstream/apps/desktop/chat/src/components/Markdown.tsx +198 -0
- package/skill/assets/upstream/apps/desktop/chat/src/components/ModelPopover.tsx +280 -0
- package/skill/assets/upstream/apps/desktop/chat/src/components/NoticeCard.tsx +87 -0
- package/skill/assets/upstream/apps/desktop/chat/src/components/Popover.tsx +195 -0
- package/skill/assets/upstream/apps/desktop/chat/src/components/PreviewFrame.tsx +129 -0
- package/skill/assets/upstream/apps/desktop/chat/src/components/ProjectConversation.tsx +852 -0
- package/skill/assets/upstream/apps/desktop/chat/src/components/ProjectStarters.tsx +118 -0
- package/skill/assets/upstream/apps/desktop/chat/src/components/Tooltip.tsx +191 -0
- package/skill/assets/upstream/apps/desktop/chat/src/components/TurnLog.tsx +583 -0
- package/skill/assets/upstream/apps/desktop/chat/src/components/TurnQuestionCard.tsx +133 -0
- package/skill/assets/upstream/apps/desktop/chat/src/components/dock-pane-bar.ts +14 -0
- package/skill/assets/upstream/apps/desktop/chat/src/components/project-version.ts +37 -0
- package/skill/assets/upstream/apps/desktop/chat/src/components/prompt-editor/MentionMenuPlugin.tsx +372 -0
- package/skill/assets/upstream/apps/desktop/chat/src/components/prompt-editor/PromptEditor.tsx +476 -0
- package/skill/assets/upstream/apps/desktop/chat/src/components/prompt-editor/PromptPill.tsx +399 -0
- package/skill/assets/upstream/apps/desktop/chat/src/components/prompt-editor/PromptReferenceNode.tsx +164 -0
- package/skill/assets/upstream/apps/desktop/chat/src/components/prompt-editor/index.ts +31 -0
- package/skill/assets/upstream/apps/desktop/chat/src/components/prompt-editor/mention-menu.ts +206 -0
- package/skill/assets/upstream/apps/desktop/chat/src/components/prompt-editor/prompt-text.ts +171 -0
- package/skill/assets/upstream/apps/desktop/chat/src/components/useStickToBottom.ts +320 -0
- package/skill/assets/upstream/apps/desktop/chat/src/components/useTicker.ts +55 -0
- package/skill/assets/upstream/apps/desktop/chat/src/i18n/index.ts +42 -0
- package/skill/assets/upstream/apps/desktop/chat/src/i18n/locales/en-US.ts +408 -0
- package/skill/assets/upstream/apps/desktop/chat/src/i18n/locales/es.ts +407 -0
- package/skill/assets/upstream/apps/desktop/chat/src/i18n/locales/ja.ts +407 -0
- package/skill/assets/upstream/apps/desktop/chat/src/i18n/locales/ko.ts +403 -0
- package/skill/assets/upstream/apps/desktop/chat/src/i18n/locales/words.ts +6 -0
- package/skill/assets/upstream/apps/desktop/chat/src/i18n/locales/zh-CN.ts +407 -0
- package/skill/assets/upstream/apps/desktop/chat/src/i18n/lookup.ts +12 -0
- package/skill/assets/upstream/apps/desktop/chat/src/lib/agent-activity-runs.ts +154 -0
- package/skill/assets/upstream/apps/desktop/chat/src/lib/agent-menu-rows.ts +41 -0
- package/skill/assets/upstream/apps/desktop/chat/src/lib/agent-refs.ts +105 -0
- package/skill/assets/upstream/apps/desktop/chat/src/lib/agent-transcript.ts +440 -0
- package/skill/assets/upstream/apps/desktop/chat/src/lib/asset-lists.ts +75 -0
- package/skill/assets/upstream/apps/desktop/chat/src/lib/attachment-place.ts +17 -0
- package/skill/assets/upstream/apps/desktop/chat/src/lib/balance.ts +16 -0
- package/skill/assets/upstream/apps/desktop/chat/src/lib/chat-layer.ts +10 -0
- package/skill/assets/upstream/apps/desktop/chat/src/lib/chat-menu.ts +18 -0
- package/skill/assets/upstream/apps/desktop/chat/src/lib/chat-store.ts +101 -0
- package/skill/assets/upstream/apps/desktop/chat/src/lib/composer-attachments.ts +189 -0
- package/skill/assets/upstream/apps/desktop/chat/src/lib/desktop-attachments.ts +178 -0
- package/skill/assets/upstream/apps/desktop/chat/src/lib/desktop-bridge.ts +291 -0
- package/skill/assets/upstream/apps/desktop/chat/src/lib/developer.ts +39 -0
- package/skill/assets/upstream/apps/desktop/chat/src/lib/esc-stop.ts +23 -0
- package/skill/assets/upstream/apps/desktop/chat/src/lib/file-changes.ts +32 -0
- package/skill/assets/upstream/apps/desktop/chat/src/lib/live-activity.ts +20 -0
- package/skill/assets/upstream/apps/desktop/chat/src/lib/local-agent-run.ts +1174 -0
- package/skill/assets/upstream/apps/desktop/chat/src/lib/local-sessions.ts +25 -0
- package/skill/assets/upstream/apps/desktop/chat/src/lib/model-calls.ts +87 -0
- package/skill/assets/upstream/apps/desktop/chat/src/lib/pretty-json.ts +12 -0
- package/skill/assets/upstream/apps/desktop/chat/src/lib/preview-top.ts +15 -0
- package/skill/assets/upstream/apps/desktop/chat/src/lib/project-resources.ts +66 -0
- package/skill/assets/upstream/apps/desktop/chat/src/lib/project-sessions.ts +66 -0
- package/skill/assets/upstream/apps/desktop/chat/src/lib/project-versions.ts +116 -0
- package/skill/assets/upstream/apps/desktop/chat/src/lib/ref-pictures.ts +119 -0
- package/skill/assets/upstream/apps/desktop/chat/src/lib/relative-time.ts +46 -0
- package/skill/assets/upstream/apps/desktop/chat/src/lib/skill-pages.ts +29 -0
- package/skill/assets/upstream/apps/desktop/chat/src/lib/step-file.ts +23 -0
- package/skill/assets/upstream/apps/desktop/chat/src/lib/structural-share.ts +52 -0
- package/skill/assets/upstream/apps/desktop/chat/src/lib/studio-film.ts +44 -0
- package/skill/assets/upstream/apps/desktop/chat/src/lib/studio-transfer.ts +40 -0
- package/skill/assets/upstream/apps/desktop/chat/src/lib/unprompted.ts +27 -0
- package/skill/assets/upstream/apps/desktop/chat/src/lib/upload-limits.ts +53 -0
- package/skill/assets/upstream/apps/desktop/chat/src/mount.tsx +19 -0
- package/skill/assets/upstream/apps/desktop/chat/src/state/local-agent-store.ts +296 -0
- package/skill/assets/upstream/apps/desktop/chat/src/studio-refs.ts +307 -0
- package/skill/assets/upstream/apps/desktop/package.json +51 -0
- package/skill/assets/upstream/apps/desktop/shell/bridge.ts +415 -0
- package/skill/assets/upstream/apps/desktop/shell/index.html +27 -0
- package/skill/assets/upstream/apps/desktop/shell/main.tsx +17 -0
- package/skill/assets/upstream/apps/desktop/shell/shell.css +17 -0
- package/skill/assets/upstream/apps/desktop/shell/vite.config.ts +65 -0
- package/skill/assets/upstream/apps/desktop/src/agent-definitions.mjs +31 -0
- package/skill/assets/upstream/packages/openfilm/LICENSE +21 -0
- package/skill/assets/upstream/packages/openfilm/package.json +88 -0
- package/skill/assets/upstream/packages/openfilm/src/film-doc.d.mts +125 -0
- package/skill/assets/upstream/packages/openfilm/src/film-doc.mjs +986 -0
- package/skill/assets/upstream/packages/openfilm/src/overrides.mjs +73 -0
- package/skill/assets/upstream/packages/openfilm/src/timeline.mjs +1280 -0
- package/skill/assets/upstream/packages/openfilm/studio/server/bridge.js +209 -0
- package/skill/assets/upstream/packages/openfilm/studio/server/film-subtitle.mjs +785 -0
- package/skill/assets/upstream/packages/openfilm/studio/server/ops.mjs +403 -0
- package/skill/assets/upstream/packages/openfilm/studio/server/stage.js +1649 -0
- package/skill/assets/upstream/packages/openfilm/studio/server/track-layout.mjs +43 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/App.tsx +156 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/api.ts +328 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/components/AudioMeters.tsx +188 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/components/BlockThumbs.tsx +84 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/components/BlockWaveform.tsx +201 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/components/BrandLoadingScreen.tsx +56 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/components/BrandLogo.tsx +25 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/components/Card.tsx +89 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/components/ColorPicker.tsx +204 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/components/ConfirmDialog.tsx +96 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/components/ContextMenu.tsx +422 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/components/DesktopDialog.tsx +271 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/components/ExamplesGallery.tsx +372 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/components/FilmFullscreenBar.tsx +147 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/components/FilmInspector.tsx +2310 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/components/FilmStageSelect.tsx +3296 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/components/FocusNav.tsx +28 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/components/FontFamilyPicker.tsx +293 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/components/FramePicker.tsx +69 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/components/InspectorPanel.tsx +25 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/components/Launcher.tsx +38 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/components/LayersPanel.tsx +277 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/components/LiveTime.tsx +101 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/components/MediaPool.tsx +1413 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/components/MediaPreview.tsx +188 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/components/MenuSelect.tsx +161 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/components/MgOutline.tsx +24 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/components/OperationHistory.tsx +184 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/components/PaneDivider.tsx +292 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/components/PasteAttrsDialog.tsx +69 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/components/PlaybackMenu.tsx +110 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/components/Popover.tsx +159 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/components/ProjectCover.tsx +60 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/components/ProjectHistoryControls.tsx +748 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/components/ProjectLayoutMenu.tsx +82 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/components/ProjectMenu.tsx +111 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/components/ProjectSources.tsx +587 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/components/ProjectView.tsx +3222 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/components/ProjectsLibrary.tsx +567 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/components/ProjectsView.tsx +1593 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/components/PropertiesSection.tsx +418 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/components/ResourceInspector.tsx +100 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/components/SelectionToolbar.tsx +157 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/components/SkillsLibrary.tsx +504 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/components/SourcePreview.tsx +464 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/components/SpendAsks.tsx +88 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/components/StageMaskOverlay.tsx +299 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/components/StageTransformFrame.tsx +246 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/components/SubtitleInspector.module.css +46 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/components/SubtitleInspector.tsx +884 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/components/SubtitleOverlay.tsx +148 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/components/SubtitleRow.tsx +419 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/components/TabStrip.tsx +188 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/components/Timeline.tsx +4911 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/components/TimelineMarkers.tsx +329 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/components/Toast.tsx +55 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/components/Tooltip.tsx +193 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/components/UpdateButton.tsx +104 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/components/ViewerBar.tsx +98 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/components/WhatsNew.tsx +147 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/components/dock-pane-bar.ts +16 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/components/export/ExportCenter.tsx +1502 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/components/export/ExportTray.tsx +284 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/components/film-stage-hit.ts +18 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/components/inspector-fields.tsx +863 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/components/inspector-look.tsx +1357 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/components/player-controls/controls-bar.tsx +397 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/components/player-controls/transport.tsx +294 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/components/replace-drop.ts +20 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/components/settings/AgentsSection.tsx +613 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/components/settings/CustomServices.tsx +104 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/components/settings/DiagnosticsGroup.tsx +202 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/components/settings/ModelsSection.tsx +179 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/components/settings/ProviderMark.tsx +24 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/components/settings/ProvidersSection.tsx +177 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/components/settings/SettingsModal.tsx +511 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/components/settings/SettingsSelect.tsx +84 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/components/settings/ShortcutsSection.tsx +291 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/components/settings/StorageGroup.tsx +119 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/components/settings/theme.ts +47 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/components/settings/ui.tsx +139 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/components/settings/use-settings.ts +10 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/components/stage-menu.tsx +283 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/components/timeline-head-extras.tsx +91 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/components/typing-target.ts +45 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/components/use-editor-tools.tsx +408 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/components/use-page-changes.ts +48 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/components/use-project-history.ts +113 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/components/useBlockDrag.ts +639 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/editor/Preview.tsx +426 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/editor/player.ts +558 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/editor/preview-frames.ts +36 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/editor/steps.ts +36 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/editor/undo.ts +156 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/editor/use-film.ts +212 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/editor/use-preview-renders.ts +89 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/globals.css +559 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/i18n/en.ts +1901 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/i18n/es.ts +1900 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/i18n/index.ts +130 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/i18n/ja.ts +1900 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/i18n/ko.ts +1896 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/i18n/words.ts +6 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/i18n/zh-CN.ts +1901 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/agent-row.ts +21 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/asset-timeline.ts +469 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/audio-levels.ts +60 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/batch-map.ts +28 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/browser.ts +10 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/canvas-fit.ts +116 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/chat-marks.ts +114 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/clip-attrs.ts +102 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/clip-fade.ts +70 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/clip-look.ts +520 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/clip-mask.ts +536 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/clip-replace.ts +60 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/component-props.ts +128 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/context-length.ts +12 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/desktop-build.ts +44 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/diagnostics.ts +68 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/double-press.ts +22 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/dropped-overrides.ts +139 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/export-jobs.ts +191 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/export-spec.ts +261 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/field-input.ts +155 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/film-clip-edits.ts +82 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/film-frame.ts +134 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/film-overrides.ts +107 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/film-shape.ts +172 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/film.ts +80 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/font-menu.ts +236 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/font-styles.ts +129 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/freeze-frame.ts +49 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/host.ts +438 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/inspect-scrub.ts +26 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/keymap-store.ts +74 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/keymap.ts +529 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/layers-tree.ts +133 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/look.ts +83 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/loudness.ts +58 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/markers.ts +152 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/media-bar.ts +58 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/media-folders.ts +45 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/media-place.ts +102 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/media-queue.ts +107 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/media-selection.ts +64 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/menu-position.ts +77 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/mg-transform.ts +111 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/mixed.ts +3 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/page-changes.ts +45 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/picture-files.ts +19 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/preview-prefs.ts +46 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/preview-renders.ts +71 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/project-delete.ts +20 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/project-folders.ts +144 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/project-history.ts +188 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/project-sources.ts +283 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/projects-page.ts +40 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/provider-marks.ts +35 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/providers.ts +163 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/resource-drag.ts +131 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/retry-image.ts +17 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/saved-insert.ts +40 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/saved.ts +125 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/selection-toolbar.ts +158 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/shortcut-hint.ts +21 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/similar-layers.ts +46 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/solo.ts +19 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/stage-clip.ts +60 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/stage-crop.ts +232 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/stage-gesture.ts +277 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/stage-layers.ts +71 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/stage-mask.ts +176 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/stage-measure.ts +53 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/stage-types.ts +155 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/studio-refs.ts +248 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/studio-version.ts +41 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/subtitle-cues.ts +238 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/subtitles.ts +263 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/tab-menu.ts +6 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/template-controls.ts +131 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/theme-changes.ts +31 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/thumb-cache.ts +63 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/thumb-cell.ts +8 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/thumb-frame.ts +76 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/thumb-pick.ts +42 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/timecode.ts +161 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/timeline-clipboard.ts +279 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/timeline-drag.ts +589 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/timeline-edit.ts +1138 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/timeline-keys.ts +63 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/timeline-layout.ts +1038 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/timeline-nav.ts +160 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/timeline-prefs.ts +73 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/timeline-split.ts +40 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/timeline-view.ts +105 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/title.ts +39 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/track-heights.ts +55 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/track-lock.ts +27 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/transitions.ts +459 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/type-metrics.ts +83 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/use-film-subtitles.ts +111 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/use-fonts.ts +181 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/use-loaded-thumbs.ts +91 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/use-subtitle-edits.ts +134 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/use-subtitle-font.ts +51 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/use-subtitle-style.ts +68 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/waveform-columns.ts +48 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/web-update.ts +41 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/whats-new.ts +401 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/lib/workspace-resources.ts +373 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/src/main.tsx +10 -0
- package/skill/assets/upstream/packages/openfilm/studio/ui/vite.config.ts +12 -0
- package/skill/assets/upstream/packages/shared/package.json +45 -0
- package/skill/assets/upstream/packages/shared/src/agent-activity.ts +263 -0
- package/skill/assets/upstream/packages/shared/src/contract.ts +285 -0
- package/skill/assets/upstream/packages/shared/src/index.ts +17 -0
- package/skill/assets/upstream/packages/shared/src/markdown-blocks.ts +252 -0
- package/skill/assets/upstream/packages/shared/src/modality.ts +4 -0
- package/skill/assets/upstream/packages/shared/src/prompt-reference.ts +113 -0
- package/skill/assets/upstream/packages/shared/src/title.ts +76 -0
- package/skill/assets/upstream/packages/shared/src/turn.ts +68 -0
- package/skill/assets/upstream/packages/shared/src/video.ts +26 -0
- package/skill/references/agent-components.md +33 -0
- package/skill/references/api-index.json +2693 -0
- package/skill/references/chat-components.md +65 -0
- package/skill/references/components.md +23 -0
- package/skill/references/core-components.md +44 -0
- package/skill/references/dependencies.md +22 -0
- package/skill/references/esm-package.md +48 -0
- package/skill/references/integration.md +43 -0
- package/skill/references/library-manifest.json +12 -0
- package/skill/references/source-manifest.json +325 -0
- package/skill/references/studio-components.md +24 -0
- package/skill/references/theme-motion.md +49 -0
- package/skill/references/troubleshooting.md +27 -0
- package/skill/references/verification.md +13 -0
- package/skill/scripts/check_dependencies.py +109 -0
- package/skill/scripts/inspect_api.py +60 -0
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
|
|
3
|
+
import * as React from 'react';
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* One clock shared by every row that shows a running time.
|
|
7
|
+
*
|
|
8
|
+
* With a timer per row, several running rows tick at unrelated moments and something always seems to flicker.
|
|
9
|
+
* Five staggered ticks read as noise; one shared tick reads as a heartbeat.
|
|
10
|
+
*
|
|
11
|
+
* It runs only while someone is watching: the last unsubscribe stops it, so a finished conversation doesn't wake
|
|
12
|
+
* every second.
|
|
13
|
+
*/
|
|
14
|
+
let listeners = new Set<() => void>();
|
|
15
|
+
let timer: ReturnType<typeof setInterval> | null = null;
|
|
16
|
+
let now = Date.now();
|
|
17
|
+
|
|
18
|
+
function subscribe(onChange: () => void): () => void {
|
|
19
|
+
listeners.add(onChange);
|
|
20
|
+
if (!timer) {
|
|
21
|
+
/* Set the time on start: the module may have loaded long ago, and the first frame would show seconds counted
|
|
22
|
+
from then. */
|
|
23
|
+
now = Date.now();
|
|
24
|
+
timer = setInterval(() => {
|
|
25
|
+
now = Date.now();
|
|
26
|
+
for (const listener of listeners) listener();
|
|
27
|
+
}, 1000);
|
|
28
|
+
}
|
|
29
|
+
return () => {
|
|
30
|
+
listeners.delete(onChange);
|
|
31
|
+
if (listeners.size === 0 && timer) {
|
|
32
|
+
clearInterval(timer);
|
|
33
|
+
timer = null;
|
|
34
|
+
}
|
|
35
|
+
};
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
/* getSnapshot must return a stable value (React asks several times per render), so it reads the module variable,
|
|
39
|
+
not Date.now(). */
|
|
40
|
+
const getSnapshot = (): number => now;
|
|
41
|
+
/** No "now" on the server: 0, and the renderer draws no seconds, so server and hydrated output match. */
|
|
42
|
+
const getServerSnapshot = (): number => 0;
|
|
43
|
+
|
|
44
|
+
/** The current time, ticking each second in phase everywhere. 0 when rendered on the server. */
|
|
45
|
+
export function useTick(): number {
|
|
46
|
+
return React.useSyncExternalStore(subscribe, getSnapshot, getServerSnapshot);
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
/** Time since startedAt, `12s` / `1m 05s`; empty when unknown. */
|
|
50
|
+
export function elapsedLabel(startedAt: number | undefined, tick: number): string {
|
|
51
|
+
if (!startedAt || !tick) return '';
|
|
52
|
+
const seconds = Math.max(0, Math.floor((tick - startedAt) / 1000));
|
|
53
|
+
if (seconds < 60) return `${seconds}s`;
|
|
54
|
+
return `${Math.floor(seconds / 60)}m ${String(seconds % 60).padStart(2, '0')}s`;
|
|
55
|
+
}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The chat's words, in the language Studio shows: Studio says which (its <html lang>, through the app), and the
|
|
3
|
+
* chat follows. `t('project.stop')` looks the path up in that language's table, then in English; a path in neither
|
|
4
|
+
* comes back as itself.
|
|
5
|
+
*/
|
|
6
|
+
import React from 'react';
|
|
7
|
+
import { enUS } from './locales/en-US';
|
|
8
|
+
import { es } from './locales/es';
|
|
9
|
+
import { ja } from './locales/ja';
|
|
10
|
+
import { ko } from './locales/ko';
|
|
11
|
+
import { zhCN } from './locales/zh-CN';
|
|
12
|
+
import { lookup } from './lookup';
|
|
13
|
+
|
|
14
|
+
export type UiLocale = 'en' | 'zh-CN' | 'ja' | 'ko' | 'es';
|
|
15
|
+
|
|
16
|
+
const TABLES: Record<UiLocale, unknown> = { en: enUS, 'zh-CN': zhCN, ja, ko, es };
|
|
17
|
+
|
|
18
|
+
let language: UiLocale = 'en';
|
|
19
|
+
const listeners = new Set<() => void>();
|
|
20
|
+
|
|
21
|
+
/** Studio's language tag, as one of the chat's. The page's own `lang` is Studio's: the chat only follows it. */
|
|
22
|
+
export function setLanguage(tag: string) {
|
|
23
|
+
const next = (Object.keys(TABLES) as UiLocale[]).find((l) => l === tag) ?? (tag?.toLowerCase().startsWith('zh') ? 'zh-CN' : (Object.keys(TABLES) as UiLocale[]).find((l) => l === tag?.split('-')[0]) ?? 'en');
|
|
24
|
+
if (next === language) return;
|
|
25
|
+
language = next;
|
|
26
|
+
for (const listener of listeners) listener();
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
const subscribe = (on: () => void) => { listeners.add(on); return () => { listeners.delete(on); }; };
|
|
30
|
+
|
|
31
|
+
export function useUiLocale(): UiLocale {
|
|
32
|
+
return React.useSyncExternalStore(subscribe, () => language, () => 'en' as UiLocale);
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
/** t('project.stop'), in the language shown. */
|
|
36
|
+
export function useT(): (path: string) => string {
|
|
37
|
+
const now = useUiLocale();
|
|
38
|
+
return React.useCallback((path: string) => {
|
|
39
|
+
const said = now === 'en' ? null : lookup(TABLES[now], path);
|
|
40
|
+
return said && said !== path ? said : lookup(enUS, path);
|
|
41
|
+
}, [now]);
|
|
42
|
+
}
|
|
@@ -0,0 +1,408 @@
|
|
|
1
|
+
/** The chat's words (English): the paths its components look up with useT(). */
|
|
2
|
+
|
|
3
|
+
/* the system's trash, by its name there */
|
|
4
|
+
const TRASH = typeof navigator !== 'undefined' && /^win/i.test(navigator.platform) ? 'the Recycle Bin'
|
|
5
|
+
: typeof navigator !== 'undefined' && /^mac/i.test(navigator.platform) ? 'the Trash' : 'the trash';
|
|
6
|
+
|
|
7
|
+
export const enUS = {
|
|
8
|
+
/* a turn of the app's own agent stopped: the service its model runs on has no balance left (BalanceNotice) */
|
|
9
|
+
balance: {
|
|
10
|
+
title: '{provider}: not enough balance',
|
|
11
|
+
body: "{provider} doesn't have enough balance for this. Top it up there, or switch to another service, then try again.",
|
|
12
|
+
manage: 'Manage',
|
|
13
|
+
},
|
|
14
|
+
banner: {
|
|
15
|
+
studioFailed: 'Studio did not start: {error}',
|
|
16
|
+
ffmpegMissing: 'Studio needs ffmpeg for video pictures, sound waves and exports. Install it, then reopen OpenFilm:',
|
|
17
|
+
ffmpegDownloading: 'Getting ffmpeg for video pictures, sound and exports (about 50 MB, once)… {n}%',
|
|
18
|
+
ffmpegFailed: 'ffmpeg did not download: {error}. Reopen OpenFilm to try again.',
|
|
19
|
+
browserDownloading: 'Downloading the browser Studio draws pages in (about 100 MB, once)…',
|
|
20
|
+
browserFailed: 'The browser Studio draws pages in did not download: {error}',
|
|
21
|
+
},
|
|
22
|
+
act: {
|
|
23
|
+
waitingForYou: 'Waiting for you',
|
|
24
|
+
/* the app's own agent, after two minutes with nothing from the model (some think for minutes first) */
|
|
25
|
+
waitingForModel: 'Waiting for the model',
|
|
26
|
+
waitingForModelHint: "Some models think for a long while before they start to answer. Stop if you don't want to wait.",
|
|
27
|
+
asset: {
|
|
28
|
+
genImage: 'Generating image',
|
|
29
|
+
genVideo: 'Generating video',
|
|
30
|
+
searchImage: 'Searching visuals',
|
|
31
|
+
},
|
|
32
|
+
audio: {
|
|
33
|
+
music: 'Composing music',
|
|
34
|
+
narrate: 'Recording narration',
|
|
35
|
+
sfx: 'Making a sound effect',
|
|
36
|
+
transcribe: 'Transcribing footage',
|
|
37
|
+
translate: 'Translating subtitles',
|
|
38
|
+
voice: 'Choosing a voice',
|
|
39
|
+
},
|
|
40
|
+
chat: {
|
|
41
|
+
ask: 'Asking you',
|
|
42
|
+
},
|
|
43
|
+
command: {
|
|
44
|
+
run: 'Running a command',
|
|
45
|
+
},
|
|
46
|
+
connecting: 'Reconnecting',
|
|
47
|
+
files: {
|
|
48
|
+
edit: 'Editing files',
|
|
49
|
+
read: 'Reading files',
|
|
50
|
+
search: 'Searching files',
|
|
51
|
+
},
|
|
52
|
+
film: {
|
|
53
|
+
arrange: 'Arranging the timeline',
|
|
54
|
+
check: 'Checking the film',
|
|
55
|
+
frames: 'Looking at frames',
|
|
56
|
+
hear: 'Listening back',
|
|
57
|
+
review: 'Previewing the film',
|
|
58
|
+
},
|
|
59
|
+
planning: 'Thinking',
|
|
60
|
+
research: {
|
|
61
|
+
read: 'Reading a page',
|
|
62
|
+
search: 'Searching the web',
|
|
63
|
+
},
|
|
64
|
+
scene: {
|
|
65
|
+
edit: 'Adjusting a scene',
|
|
66
|
+
write: 'Writing a scene',
|
|
67
|
+
},
|
|
68
|
+
stillWorking: 'Still working',
|
|
69
|
+
thinking: 'Thinking',
|
|
70
|
+
working: 'Working',
|
|
71
|
+
},
|
|
72
|
+
actDone: {
|
|
73
|
+
asset: {
|
|
74
|
+
genImage: 'Generated image',
|
|
75
|
+
genVideo: 'Generated video',
|
|
76
|
+
searchImage: 'Searched visuals',
|
|
77
|
+
},
|
|
78
|
+
audio: {
|
|
79
|
+
music: 'Composed music',
|
|
80
|
+
narrate: 'Recorded narration',
|
|
81
|
+
sfx: 'Made a sound effect',
|
|
82
|
+
transcribe: 'Transcribed footage',
|
|
83
|
+
translate: 'Translated subtitles',
|
|
84
|
+
voice: 'Chose a voice',
|
|
85
|
+
},
|
|
86
|
+
chat: {
|
|
87
|
+
ask: 'Asked you',
|
|
88
|
+
},
|
|
89
|
+
command: {
|
|
90
|
+
run: 'Ran a command',
|
|
91
|
+
},
|
|
92
|
+
files: {
|
|
93
|
+
edit: 'Edited files',
|
|
94
|
+
read: 'Read files',
|
|
95
|
+
search: 'Searched files',
|
|
96
|
+
},
|
|
97
|
+
film: {
|
|
98
|
+
arrange: 'Arranged the timeline',
|
|
99
|
+
check: 'Checked the film',
|
|
100
|
+
frames: 'Looked at frames',
|
|
101
|
+
hear: 'Listened back',
|
|
102
|
+
review: 'Previewed the film',
|
|
103
|
+
},
|
|
104
|
+
research: {
|
|
105
|
+
read: 'Read a page',
|
|
106
|
+
search: 'Searched the web',
|
|
107
|
+
},
|
|
108
|
+
scene: {
|
|
109
|
+
edit: 'Adjusted a scene',
|
|
110
|
+
write: 'Wrote a scene',
|
|
111
|
+
},
|
|
112
|
+
},
|
|
113
|
+
actGroup: {
|
|
114
|
+
openImage: 'Open full size',
|
|
115
|
+
pause: 'Pause',
|
|
116
|
+
play: 'Play',
|
|
117
|
+
},
|
|
118
|
+
agent: {
|
|
119
|
+
contextCompacted: 'Earlier conversation folded into a summary',
|
|
120
|
+
thinking: 'Thinking',
|
|
121
|
+
},
|
|
122
|
+
assets: {
|
|
123
|
+
close: 'Close',
|
|
124
|
+
download: 'Download',
|
|
125
|
+
imageActualSize: 'Original size',
|
|
126
|
+
imageFit: 'Fit',
|
|
127
|
+
noPreview: 'This file type cannot be previewed here — download it instead',
|
|
128
|
+
previewFailed: 'This file could not be read',
|
|
129
|
+
},
|
|
130
|
+
composer: {
|
|
131
|
+
contextFull: 'This conversation is getting long. A new one will work better.',
|
|
132
|
+
contextFullNew: 'New conversation',
|
|
133
|
+
commands: 'Commands',
|
|
134
|
+
agentLoading: 'Loading…',
|
|
135
|
+
agentNone: 'Agent',
|
|
136
|
+
agentNoneShown: 'No agent is switched on for the chat.',
|
|
137
|
+
agentNotFound: 'Not found',
|
|
138
|
+
agentOptionsFailed: 'Couldn\'t start it to read its settings.',
|
|
139
|
+
agentOutdated: 'It is older than OpenFilm needs. Update Codex, then',
|
|
140
|
+
agentOwnKey: 'Your own key',
|
|
141
|
+
agentPermissionDeny: 'Don’t allow',
|
|
142
|
+
agentPermissionTitle: '{name} wants to do this',
|
|
143
|
+
agentSection: 'Agent',
|
|
144
|
+
agentSetUp: 'Set up',
|
|
145
|
+
agentWaiting: 'Signing in…',
|
|
146
|
+
effort: 'Effort',
|
|
147
|
+
filesFailed: 'Couldn\'t attach {names}: {error} Remove it to send.',
|
|
148
|
+
filesPending: 'The files are still being attached.',
|
|
149
|
+
model: 'Model',
|
|
150
|
+
/* the one value of a model or an effort the agent offers no choice of */
|
|
151
|
+
optionDefault: 'Default',
|
|
152
|
+
openAttachment: 'View {name}',
|
|
153
|
+
revealFolder: 'Show {name} in its folder',
|
|
154
|
+
openSettings: 'Open Settings',
|
|
155
|
+
queued: 'Queued — sends when this turn finishes.',
|
|
156
|
+
queuedCancel: 'Don\'t send',
|
|
157
|
+
copyDiagnostics: 'Copy diagnostic report',
|
|
158
|
+
copyDiagnosticsHint: 'What OpenFilm finds on this computer and its recent problems, to paste into an issue',
|
|
159
|
+
diagnosticsCopied: 'Copied',
|
|
160
|
+
removeFile: 'Remove file',
|
|
161
|
+
removeImage: 'Remove image',
|
|
162
|
+
speed: 'Speed',
|
|
163
|
+
thumbOnly: 'A thumbnail kept with the message. The original stays where it was, or in the project if it was pasted.',
|
|
164
|
+
},
|
|
165
|
+
library: {
|
|
166
|
+
removeReference: 'Remove reference',
|
|
167
|
+
revealReference: 'Click to jump to this reference',
|
|
168
|
+
},
|
|
169
|
+
mention: {
|
|
170
|
+
currentRange: 'Current range',
|
|
171
|
+
currentSelection: 'Current selection',
|
|
172
|
+
currentSelectionNone: 'Select something in the picture or on the timeline first',
|
|
173
|
+
currentTime: 'Current time',
|
|
174
|
+
currentTimeUnavailable: 'Once the film is ready',
|
|
175
|
+
groupAssets: 'Assets',
|
|
176
|
+
groupMoment: 'Moments',
|
|
177
|
+
menu: 'Reference menu',
|
|
178
|
+
},
|
|
179
|
+
/** a reference's hover card (studio-refs.ts pillCard) */
|
|
180
|
+
refCard: {
|
|
181
|
+
title: {
|
|
182
|
+
clip: 'Clip',
|
|
183
|
+
layer: 'Layer',
|
|
184
|
+
region: 'Region of the picture',
|
|
185
|
+
time: 'Moment',
|
|
186
|
+
range: 'Range',
|
|
187
|
+
track: 'Track',
|
|
188
|
+
file: 'File',
|
|
189
|
+
subtitle: 'Subtitle',
|
|
190
|
+
example: 'Example film',
|
|
191
|
+
},
|
|
192
|
+
clip: 'Clip',
|
|
193
|
+
file: 'File',
|
|
194
|
+
span: 'Span',
|
|
195
|
+
track: 'Track',
|
|
196
|
+
in: 'In point',
|
|
197
|
+
speed: 'Speed',
|
|
198
|
+
tag: 'Element',
|
|
199
|
+
words: 'Words',
|
|
200
|
+
at: 'At',
|
|
201
|
+
box: 'Box',
|
|
202
|
+
source: 'Source',
|
|
203
|
+
clips: 'Clips',
|
|
204
|
+
path: 'Path',
|
|
205
|
+
kind: 'Kind',
|
|
206
|
+
size: 'Size',
|
|
207
|
+
length: 'Length',
|
|
208
|
+
language: 'Language',
|
|
209
|
+
line: 'Line',
|
|
210
|
+
example: 'Example',
|
|
211
|
+
part: 'Part',
|
|
212
|
+
},
|
|
213
|
+
project: {
|
|
214
|
+
assets: 'Assets',
|
|
215
|
+
addAttachment: 'Add files',
|
|
216
|
+
close: 'Close',
|
|
217
|
+
composerPlaceholder: 'Say what to change. Type @ to point at a file, a moment or what you selected',
|
|
218
|
+
composerPlaceholderBlank: 'Describe your film. Type @ to use a file from this project',
|
|
219
|
+
dismiss: 'Dismiss',
|
|
220
|
+
jumpToLatest: 'Jump to latest',
|
|
221
|
+
loadingMessages: 'Loading conversation…',
|
|
222
|
+
messagesLoadFailed: 'Couldn’t load conversation',
|
|
223
|
+
retry: 'Retry',
|
|
224
|
+
sendFollowUp: 'Send edit instruction',
|
|
225
|
+
sessionBusy: 'This turn is still running. Wait for it to finish, or stop it, before starting or switching chats.',
|
|
226
|
+
sessionHistory: 'Session history',
|
|
227
|
+
sessionHistoryEmpty: 'No other chats yet',
|
|
228
|
+
sessionSearchPlaceholder: 'Search chats…',
|
|
229
|
+
stop: 'Stop',
|
|
230
|
+
untitledSession: 'Untitled chat',
|
|
231
|
+
},
|
|
232
|
+
projectMenu: {
|
|
233
|
+
newSession: 'New session',
|
|
234
|
+
rename: 'Rename',
|
|
235
|
+
},
|
|
236
|
+
sidebar: {
|
|
237
|
+
searchEarlier: 'Earlier',
|
|
238
|
+
searchPrevious7Days: 'Previous 7 days',
|
|
239
|
+
searchToday: 'Today',
|
|
240
|
+
searchYesterday: 'Yesterday',
|
|
241
|
+
},
|
|
242
|
+
starter: {
|
|
243
|
+
attach: 'Upload your files: video, images, audio, slides, docs, anything',
|
|
244
|
+
hint: 'One sentence is enough. I\'ll take it from there.',
|
|
245
|
+
s1: 'A 30-second launch film for our new app',
|
|
246
|
+
s10: 'Walk through how to solve this physics problem, step by step',
|
|
247
|
+
s11: 'Turn my travel photos into a vlog',
|
|
248
|
+
s12: 'A birthday video for my daughter\'s 8th',
|
|
249
|
+
s13: 'A workout tutorial with three moves you can do at home',
|
|
250
|
+
s14: 'Cut this podcast episode into three short clips',
|
|
251
|
+
s15: 'An invitation video for our company\'s annual party',
|
|
252
|
+
s16: 'A funny little film about my cat',
|
|
253
|
+
s17: 'An opening film for my wedding',
|
|
254
|
+
s18: 'Turn this week\'s work update into a short video',
|
|
255
|
+
s19: 'A recipe video for tomato and egg stir-fry',
|
|
256
|
+
s2: 'Explain what a black hole is in one minute',
|
|
257
|
+
s20: 'A photo-wall transition effect made from my photos',
|
|
258
|
+
s3: 'Three TikTok ads selling an insulated water bottle',
|
|
259
|
+
s4: 'Cut my uploaded talk into highlights, with captions',
|
|
260
|
+
s5: 'Turn my slides into a narrated explainer video',
|
|
261
|
+
s6: 'A logo intro animation for my channel',
|
|
262
|
+
s7: 'An animated bedtime story about a little fox looking for a star',
|
|
263
|
+
s8: 'A perfume ad: red petals, dusk light',
|
|
264
|
+
s9: 'Turn this sales data into an animated chart with a story',
|
|
265
|
+
shuffle: 'Shuffle',
|
|
266
|
+
title: 'What do you want to make?',
|
|
267
|
+
tryLabel: 'Try one of these, just tap',
|
|
268
|
+
},
|
|
269
|
+
turnAsk: {
|
|
270
|
+
collapse: 'Collapse',
|
|
271
|
+
expand: 'Expand',
|
|
272
|
+
other: 'Something else…',
|
|
273
|
+
otherPlaceholder: 'Type your answer',
|
|
274
|
+
send: 'Send',
|
|
275
|
+
skipped: 'Skipped — it carried on with its own call',
|
|
276
|
+
timedOut: 'No answer in time — it carried on with its own call',
|
|
277
|
+
},
|
|
278
|
+
/* the composer's button that opens the Community over the film: skills and examples (Studio's ExamplesGallery) */
|
|
279
|
+
community: { button: 'Community', tooltip: 'Community: skills and examples' },
|
|
280
|
+
skills: {
|
|
281
|
+
chooseCover: 'Choose cover',
|
|
282
|
+
removeCover: 'Undo cover choice',
|
|
283
|
+
coverHint: 'Optional · PNG, JPEG or WebP, up to 5 MB. Keeps the original cover when left unchanged.',
|
|
284
|
+
coverInvalid: 'Choose a valid PNG, JPEG or WebP image up to 5 MB.',
|
|
285
|
+
button: 'Skills',
|
|
286
|
+
addTitle: 'Add a skill',
|
|
287
|
+
addHint: 'Paste the address of a skill, or a folder of skills, on GitHub or GitLab.',
|
|
288
|
+
add: 'Add',
|
|
289
|
+
adding: 'Adding…',
|
|
290
|
+
scriptsWarning: 'It brings {n} scripts the agent can run. Add only skills you trust.',
|
|
291
|
+
done: 'Done',
|
|
292
|
+
useIt: 'Use in message',
|
|
293
|
+
cardDoes: 'What it does',
|
|
294
|
+
next: 'Next',
|
|
295
|
+
cancel: 'Cancel',
|
|
296
|
+
replaceNote: `You have {names} already: adding it moves the old one to ${TRASH}.`,
|
|
297
|
+
replaceAndAdd: 'Replace and add',
|
|
298
|
+
scriptsCount: '{n} scripts',
|
|
299
|
+
fromLink: 'From a link',
|
|
300
|
+
folderDialog: 'Add Skills from a Folder',
|
|
301
|
+
make: 'Make one with the agent',
|
|
302
|
+
makeHint: 'It writes down how something was made, into Yours.',
|
|
303
|
+
makePrompt: 'Turn what we did in this conversation into an OpenFilm skill: a folder with a SKILL.md (its name, a description of when to use it, then the steps), saved in {folder}. First tell me what it will cover and what to name it; save it once I agree.',
|
|
304
|
+
fromFolderTitle: 'From a folder',
|
|
305
|
+
dropHere: 'Drop a skill folder here',
|
|
306
|
+
orPick: 'or click to choose one',
|
|
307
|
+
makeTitle: 'Make your own',
|
|
308
|
+
addedTitle: 'Added to your skills',
|
|
309
|
+
},
|
|
310
|
+
turnLog: {
|
|
311
|
+
thoughtNotKept: 'not kept in the agent\'s record',
|
|
312
|
+
skills: 'Skills and MCP',
|
|
313
|
+
skillsOpenfilm: 'OpenFilm\'s skills',
|
|
314
|
+
skillsHidden: 'Your own skills, off',
|
|
315
|
+
skillsUnfiltered: 'This agent has all your own skills, as in its own app',
|
|
316
|
+
mcpHidden: 'Your own MCP servers, off',
|
|
317
|
+
letIn: 'Let in',
|
|
318
|
+
answered: 'Answered',
|
|
319
|
+
appended: 'Added to its system prompt',
|
|
320
|
+
callCount: '{n} requests',
|
|
321
|
+
calls: 'Model requests {n}',
|
|
322
|
+
chars: '{n} chars',
|
|
323
|
+
close: 'Close',
|
|
324
|
+
collapseAll: 'Collapse all',
|
|
325
|
+
contextHint: 'Put in by the agent itself, not written by you',
|
|
326
|
+
copied: 'Copied',
|
|
327
|
+
copy: 'Copy as JSON',
|
|
328
|
+
cut: 'A long log: these are its last events.',
|
|
329
|
+
developer: 'Codex developer instructions (yours first, then the app\'s)',
|
|
330
|
+
ended: 'Ended',
|
|
331
|
+
env: 'Variables the app set',
|
|
332
|
+
events: '{n} events',
|
|
333
|
+
expandAll: 'Expand all',
|
|
334
|
+
failed: 'Failed',
|
|
335
|
+
filter: 'Filter events',
|
|
336
|
+
firstMessage: 'Before the first message',
|
|
337
|
+
fresh: 'new',
|
|
338
|
+
fromRecord: 'Read from the agent\'s own record: {file}',
|
|
339
|
+
handshake: 'Handshake',
|
|
340
|
+
joined: 'Join text pieces',
|
|
341
|
+
lacks: {
|
|
342
|
+
copilotRebuilt: 'Rebuilt from Copilot\'s own record: it keeps no tool definitions, and its messages are as it recorded them, not the bytes it sent.',
|
|
343
|
+
opencodeBeforeProvider: 'From OpenCode\'s telemetry: the request as OpenCode handed it to its AI SDK, before the provider\'s last changes (cache marks and the like).',
|
|
344
|
+
},
|
|
345
|
+
loading: 'Reading the log…',
|
|
346
|
+
logOff: 'This agent\'s requests are logged only in sessions started while Developer mode is on: a new conversation has them.',
|
|
347
|
+
logOwn: 'You set this agent\'s own telemetry or logging, so the app left it as it is and has no log of its requests.',
|
|
348
|
+
logSendsMore: 'CodeBuddy sends its traces to its makers, and with its requests logged each trace would name the request\'s file. The app logs them only when that is off: set DISABLE_TELEMETRY=1 in your shell.',
|
|
349
|
+
message: 'Message',
|
|
350
|
+
messages: 'Messages, as the agent got them · {n}',
|
|
351
|
+
noCalls: 'No model requests here: this agent keeps no record of them that the app can read.',
|
|
352
|
+
noCallsCursor: 'Cursor makes its prompt on its own servers, so what its model got is not on this computer.',
|
|
353
|
+
noMatch: 'No events match',
|
|
354
|
+
noOpened: 'This turn was logged before the app kept what it started the agent with.',
|
|
355
|
+
noSent: 'No message was logged whole for this turn.',
|
|
356
|
+
none: 'No log for this turn: it ran before turns were logged.',
|
|
357
|
+
open: 'Log',
|
|
358
|
+
opened: 'Started and opened with',
|
|
359
|
+
picture: 'Picture · {type} · {size} bytes',
|
|
360
|
+
program: 'Program',
|
|
361
|
+
readable: 'Readable',
|
|
362
|
+
reasoningTokens: '{n} thinking',
|
|
363
|
+
refresh: 'Refresh',
|
|
364
|
+
reply: 'What came back',
|
|
365
|
+
rest: 'The rest of the request · {n} tools',
|
|
366
|
+
reveal: 'Show in folder',
|
|
367
|
+
running: 'Running',
|
|
368
|
+
sent: 'What the model got · {n} messages, {fresh} new',
|
|
369
|
+
sentTab: 'Sent to the agent',
|
|
370
|
+
session: 'Session',
|
|
371
|
+
settings: 'Turn settings',
|
|
372
|
+
showAll: 'Show all ({n} chars)',
|
|
373
|
+
steered: 'Sent while it worked',
|
|
374
|
+
thought: 'Thinking',
|
|
375
|
+
through: 'through {adapter}',
|
|
376
|
+
title: 'Turn log',
|
|
377
|
+
tokens: 'in {input} (cached {cached}) · out {output}',
|
|
378
|
+
toolsMissing: 'The record has no tool definitions for this request.',
|
|
379
|
+
toolsUnknown: 'Codex does not keep its tools\' definitions in its record.',
|
|
380
|
+
},
|
|
381
|
+
turnFrame: {
|
|
382
|
+
background: 'A background task finished; the agent went on',
|
|
383
|
+
balance: '{provider}: not enough balance',
|
|
384
|
+
copied: 'Copied',
|
|
385
|
+
copy: 'Copy reply',
|
|
386
|
+
failed: 'Interrupted',
|
|
387
|
+
oneStep: '1 step',
|
|
388
|
+
plan: 'Plan · {done}/{total}',
|
|
389
|
+
steps: '{n} steps',
|
|
390
|
+
stopped: 'Stopped',
|
|
391
|
+
thought: 'Thought for {t}',
|
|
392
|
+
thoughtShort: 'Thought',
|
|
393
|
+
worked: 'Worked {t}',
|
|
394
|
+
},
|
|
395
|
+
/** a reference an agent wrote in its reply (lib/agent-refs) */
|
|
396
|
+
agentRef: {
|
|
397
|
+
track: 'Track {n}',
|
|
398
|
+
},
|
|
399
|
+
/** what a turn changed in the project's files, under its reply (components/FileChangesList) */
|
|
400
|
+
fileChanges: {
|
|
401
|
+
more: '{n} more files',
|
|
402
|
+
fewer: 'Show fewer',
|
|
403
|
+
cut: 'Only the first changed lines are kept.',
|
|
404
|
+
added: 'New',
|
|
405
|
+
removed: 'Deleted',
|
|
406
|
+
changed: 'Changed',
|
|
407
|
+
},
|
|
408
|
+
};
|