@dailies-studio/shot-editor 0.1.0 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/.vite/manifest.json +382 -0
- package/dist/assets/AgentPanel-CQejLbiX.js +2 -0
- package/dist/assets/AgentPanel-DJEphah0.css +1 -0
- package/dist/assets/AgentQuestionDialog-BqkD0kXF.js +1 -0
- package/dist/assets/CodeStudio-Dv4ihHpz.js +23 -0
- package/dist/assets/CommentsPanel-B4yhhT1T.js +1 -0
- package/dist/assets/ComponentLibraryRail-Ch_dsAru.js +1 -0
- package/dist/assets/ComponentStage-BRhRotyH.js +1 -0
- package/dist/assets/CurvePane-BjFVabKX.css +1 -0
- package/dist/assets/CurvePane-R22WzllJ.js +1 -0
- package/dist/assets/ExportDialog-CWLQWTmG.js +2 -0
- package/dist/assets/FontPicker-DWKaYL7F.js +1 -0
- package/dist/assets/FontPicker-v0IOIArM.css +1 -0
- package/dist/assets/GenerateDrawer-Bh3SqDKt.js +2 -0
- package/dist/assets/InsertDrawer-Ce1fod1L.js +1 -0
- package/dist/assets/LibraryBrowser-D9sEGz5w.js +2 -0
- package/dist/assets/MakeItYoursSection-CMO4319_.js +2 -0
- package/dist/assets/MaterialGraphCanvas-BFzl4wWR.js +23 -0
- package/dist/assets/MaterialGraphCanvas-BIUD59ik.css +1 -0
- package/dist/assets/MaterialWorkspace-CqTWqaRA.js +14 -0
- package/dist/assets/PreferencesDialog-CBf9_OoD.js +1 -0
- package/dist/assets/PresetsSection-CUEaoCVU.js +1 -0
- package/dist/assets/SoundHistory-BeS8EW1h.js +1 -0
- package/dist/assets/SoundMode-BmcZru3i.js +3 -0
- package/dist/assets/StockSounds-DdAUGRYK.js +1 -0
- package/dist/assets/TemplateFieldSection-CaeXpLFo.js +1 -0
- package/dist/assets/VersionHistoryPanel-CxG6XhNP.js +1 -0
- package/dist/assets/board-B88EPuLO.css +1 -0
- package/dist/assets/board-CL-he7SL.js +3 -0
- package/dist/assets/components-0oOSPN0l.js +1 -0
- package/dist/assets/googleFontRanges-gp32wJMo.js +1 -0
- package/dist/assets/googleFonts-BNon6M7X.js +1 -0
- package/dist/assets/iconsAndAliases-DL7gXP5j.js +1863 -0
- package/dist/assets/index-4F5NQmI8.css +1 -0
- package/dist/assets/index-BGHQGV5z.js +117 -0
- package/dist/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2 +0 -0
- package/dist/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2 +0 -0
- package/dist/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2 +0 -0
- package/dist/assets/inter-greek-wght-normal-CkhJZR-_.woff2 +0 -0
- package/dist/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2 +0 -0
- package/dist/assets/inter-latin-wght-normal-Dx4kXJAl.woff2 +0 -0
- package/dist/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2 +0 -0
- package/dist/assets/libraryModel-CpIwfFha.js +1 -0
- package/dist/assets/lucide-6iK64tTB.js +9319 -0
- package/dist/assets/motionStamp-CH-Hew4E.js +1 -0
- package/dist/assets/takeMeasure-Tdg0TxEi.js +1 -0
- package/dist/assets/webmcp-BsB9gxWC.js +2 -0
- package/dist/index.html +34 -3
- package/package.json +12 -9
- package/src/addFamilies.ts +66 -0
- package/src/api.ts +1631 -55
- package/src/app/App.tsx +977 -198
- package/src/app/lazyPanel.tsx +137 -0
- package/src/app/lazySurfaces.tsx +203 -0
- package/src/audio/index.tsx +41 -10
- package/src/audio/meter.ts +485 -0
- package/src/audio/meterMath.ts +273 -0
- package/src/audio/meterStore.ts +155 -0
- package/src/audio/offlineMix.ts +289 -0
- package/src/audio/preview.ts +928 -118
- package/src/bridge.ts +15 -5
- package/src/bridgeTypes.ts +1611 -36
- package/src/channels.ts +17 -32
- package/src/fonts/googleFonts.ts +4 -0
- package/src/hostApi.ts +174 -0
- package/src/icons.tsx +770 -0
- package/src/layerWords.ts +61 -0
- package/src/main.tsx +56 -4
- package/src/panels/ResizeHandle.tsx +33 -43
- package/src/panels/agent/AgentDots.tsx +36 -0
- package/src/panels/agent/AgentPanel.tsx +119 -43
- package/src/panels/agent/AgentQuestionDialog.tsx +202 -0
- package/src/panels/agent/agent.css +113 -97
- package/src/panels/agent/agentGate.ts +35 -0
- package/src/panels/code/CodeDefaultsPanel.tsx +345 -0
- package/src/panels/code/CodeStudio.tsx +373 -0
- package/src/panels/code/FileTree.tsx +265 -0
- package/src/panels/code/codeBufferGuard.ts +52 -0
- package/src/panels/code/codeParts.tsx +321 -0
- package/src/panels/comments/CommentComposer.tsx +239 -0
- package/src/panels/comments/CommentThread.tsx +346 -0
- package/src/panels/comments/CommentsPanel.tsx +336 -0
- package/src/panels/comments/InboxButton.tsx +131 -0
- package/src/panels/comments/MentionMenu.tsx +98 -0
- package/src/panels/comments/parts.tsx +171 -0
- package/src/panels/export/ExportDialog.tsx +919 -96
- package/src/panels/export/ExportScrim.tsx +57 -0
- package/src/panels/files/AssetsTab.tsx +656 -0
- package/src/panels/files/FilePanel.tsx +1466 -216
- package/src/panels/files/LayerMarks.tsx +40 -0
- package/src/panels/files/LeftColumn.tsx +37 -0
- package/src/panels/files/McpSection.tsx +690 -47
- package/src/panels/files/MissingAssetsNotice.tsx +60 -0
- package/src/panels/files/assetDrag.ts +79 -0
- package/src/panels/files/resourceParts.tsx +255 -0
- package/src/panels/fonts/FontPicker.tsx +762 -0
- package/src/panels/fonts/faceCache.ts +207 -0
- package/src/panels/fonts/fontPicker.css +271 -0
- package/src/panels/fonts/pickerModel.ts +265 -0
- package/src/panels/fonts/pickerRequest.ts +46 -0
- package/src/panels/header/AccountAvatar.tsx +76 -0
- package/src/panels/header/AgentChip.tsx +77 -0
- package/src/panels/header/AppMenu.tsx +213 -0
- package/src/panels/header/Header.tsx +564 -84
- package/src/panels/header/HistoryControls.tsx +31 -5
- package/src/panels/header/PresenceStack.tsx +329 -0
- package/src/panels/header/ProjectTitle.tsx +232 -0
- package/src/panels/header/ShareButton.tsx +59 -0
- package/src/panels/header/StatusBadges.tsx +358 -27
- package/src/panels/header/SyncDeletedDialog.tsx +88 -0
- package/src/panels/header/ZoomControls.tsx +46 -15
- package/src/panels/header/agentHandoff.ts +52 -0
- package/src/panels/header/leave.ts +26 -0
- package/src/panels/help/HelpSection.tsx +189 -163
- package/src/panels/insert/InsertDrawer.tsx +723 -0
- package/src/panels/insert/iconSet.ts +109 -0
- package/src/panels/inspector/ExposeDot.tsx +117 -0
- package/src/panels/inspector/FramingRows.tsx +314 -44
- package/src/panels/inspector/InspectorFooter.tsx +91 -0
- package/src/panels/inspector/InspectorHead.tsx +425 -0
- package/src/panels/inspector/InspectorPanel.tsx +408 -124
- package/src/panels/inspector/KeyframeDot.tsx +373 -0
- package/src/panels/inspector/KeyframeSection.tsx +257 -0
- package/src/panels/inspector/MarkerSection.tsx +55 -11
- package/src/panels/inspector/ParamRow.tsx +84 -53
- package/src/panels/inspector/RightColumn.tsx +152 -0
- package/src/panels/inspector/TimeSection.tsx +866 -0
- package/src/panels/inspector/animate/EaseControl.tsx +244 -0
- package/src/panels/inspector/animate/PresetsSection.tsx +135 -0
- package/src/panels/inspector/animate/ShotSection.tsx +562 -48
- package/src/panels/inspector/design/AlignRow.tsx +95 -31
- package/src/panels/inspector/design/AppearanceSection.tsx +118 -9
- package/src/panels/inspector/design/ClonerSection.tsx +323 -62
- package/src/panels/inspector/design/ComponentSection.tsx +50 -43
- package/src/panels/inspector/design/CornerSection.tsx +45 -14
- package/src/panels/inspector/design/DefinitionProps.tsx +315 -0
- package/src/panels/inspector/design/DefinitionSection.tsx +136 -0
- package/src/panels/inspector/design/DeviceSection.tsx +210 -0
- package/src/panels/inspector/design/FillSection.tsx +83 -51
- package/src/panels/inspector/design/FontField.tsx +196 -0
- package/src/panels/inspector/design/HtmlSection.tsx +23 -12
- package/src/panels/inspector/design/InstanceSection.tsx +373 -154
- package/src/panels/inspector/design/MaskSection.tsx +84 -0
- package/src/panels/inspector/design/MaterialSection.tsx +177 -0
- package/src/panels/inspector/design/MediaSection.tsx +273 -120
- package/src/panels/inspector/design/MeshSection.tsx +910 -82
- package/src/panels/inspector/design/PaintRows.tsx +550 -0
- package/src/panels/inspector/design/PlateStyleSection.tsx +177 -0
- package/src/panels/inspector/design/ShadowSection.tsx +221 -48
- package/src/panels/inspector/design/SplineFollowSection.tsx +235 -0
- package/src/panels/inspector/design/StrokeSection.tsx +228 -43
- package/src/panels/inspector/design/TemplateFieldSection.tsx +57 -0
- package/src/panels/inspector/design/TransformSection.tsx +244 -50
- package/src/panels/inspector/design/TypographySection.tsx +679 -110
- package/src/panels/inspector/layout.ts +295 -0
- package/src/panels/inspector/propValue.ts +199 -0
- package/src/panels/inspector/scene/CameraSection.tsx +232 -22
- package/src/panels/inspector/scene/EffectsSection.tsx +722 -71
- package/src/panels/inspector/scene/MakeItYoursSection.tsx +180 -0
- package/src/panels/inspector/scene/SceneDocSection.tsx +191 -0
- package/src/panels/inspector/scene/SceneSection.tsx +219 -44
- package/src/panels/inspector/scene/TransitionSection.tsx +523 -72
- package/src/panels/inspector/storyboard/StoryboardReferenceSection.tsx +593 -0
- package/src/panels/inspector/storyboard/VideoStill.tsx +120 -0
- package/src/panels/inspector/timeModel.ts +190 -0
- package/src/panels/inspector/useDocWrite.ts +438 -146
- package/src/panels/library/LibraryBrowser.tsx +435 -0
- package/src/panels/library/LibraryGrid.tsx +190 -0
- package/src/panels/library/LibraryPreviewPanel.tsx +349 -0
- package/src/panels/library/LibraryRail.tsx +84 -0
- package/src/panels/library/LibrarySoundPanel.tsx +293 -0
- package/src/panels/library/SoundHistory.tsx +245 -0
- package/src/panels/library/StockSounds.tsx +390 -0
- package/src/panels/library/libraryModel.ts +147 -0
- package/src/panels/library/stockSearch.ts +77 -0
- package/src/panels/maskMarks.tsx +117 -0
- package/src/panels/material/MaterialCommentNode.tsx +54 -0
- package/src/panels/material/MaterialGraphCanvas.tsx +861 -0
- package/src/panels/material/MaterialGraphMenu.tsx +45 -0
- package/src/panels/material/MaterialGroupNode.tsx +56 -0
- package/src/panels/material/MaterialLibrary.tsx +253 -0
- package/src/panels/material/MaterialNode.tsx +453 -0
- package/src/panels/material/MaterialNodePalette.tsx +349 -0
- package/src/panels/material/MaterialParameterControls.tsx +525 -0
- package/src/panels/material/MaterialRerouteNode.tsx +42 -0
- package/src/panels/material/MaterialWorkspace.tsx +501 -0
- package/src/panels/material/NodePreview.tsx +70 -0
- package/src/panels/material/flowModel.ts +441 -0
- package/src/panels/material/parameterValues.ts +231 -0
- package/src/panels/material/previewScheduler.ts +235 -0
- package/src/panels/material/reactFlow.css +6 -0
- package/src/panels/material/socketGlyph.ts +85 -0
- package/src/panels/material/viewportMemory.ts +58 -0
- package/src/panels/preferences/PreferencesDialog.tsx +215 -0
- package/src/panels/share/ShareComponentDialog.tsx +247 -0
- package/src/panels/stage/StageMenu.tsx +35 -5
- package/src/panels/stage/StagePanel.tsx +338 -23
- package/src/panels/stage/cellSlots.tsx +70 -0
- package/src/panels/storyboard/BoardCanvas.tsx +739 -0
- package/src/panels/storyboard/BoardCursors.tsx +158 -0
- package/src/panels/storyboard/BoardDropDialog.tsx +161 -0
- package/src/panels/storyboard/BoardPlan.tsx +42 -0
- package/src/panels/storyboard/ComponentSheet.tsx +187 -0
- package/src/panels/storyboard/ComponentStage.tsx +235 -0
- package/src/panels/storyboard/MiniSketch.tsx +173 -0
- package/src/panels/storyboard/PartPicker.tsx +64 -0
- package/src/panels/storyboard/PlanPanel.tsx +617 -0
- package/src/panels/storyboard/ReferencePreview.tsx +217 -0
- package/src/panels/storyboard/ShotBrief.tsx +360 -0
- package/src/panels/storyboard/ShotCard.tsx +251 -0
- package/src/panels/storyboard/StagePreview.tsx +348 -0
- package/src/panels/storyboard/StillThumbs.tsx +162 -0
- package/src/panels/storyboard/StoryboardView.tsx +79 -0
- package/src/panels/storyboard/board.css +1065 -0
- package/src/panels/storyboard/board.ts +12 -0
- package/src/panels/storyboard/boardClipboard.ts +111 -0
- package/src/panels/storyboard/boardOrder.ts +68 -0
- package/src/panels/storyboard/boardRows.tsx +425 -0
- package/src/panels/storyboard/liveCap.ts +90 -0
- package/src/panels/storyboard/plan.css +295 -0
- package/src/panels/storyboard/posterCache.ts +133 -0
- package/src/panels/storyboard/shotboard/ComponentPicker.tsx +373 -0
- package/src/panels/storyboard/shotboard/ImagePicker.tsx +145 -0
- package/src/panels/storyboard/shotboard/ShotBoard.tsx +292 -0
- package/src/panels/storyboard/shotboard/SketchCanvas.tsx +443 -0
- package/src/panels/storyboard/shotboard/SketchInspector.tsx +471 -0
- package/src/panels/storyboard/shotboard/SketchItem.tsx +240 -0
- package/src/panels/storyboard/shotboard/SketchLayers.tsx +130 -0
- package/src/panels/storyboard/shotboard/SketchPlay.tsx +108 -0
- package/src/panels/storyboard/shotboard/SketchStrip.tsx +178 -0
- package/src/panels/storyboard/shotboard/SketchToolFooter.tsx +99 -0
- package/src/panels/storyboard/shotboard/sketch.css +1392 -0
- package/src/panels/storyboard/shotboard/sketchModel.ts +219 -0
- package/src/panels/storyboard/storyboardDrop.ts +164 -0
- package/src/panels/studio/ComponentLibraryRail.tsx +346 -0
- package/src/panels/studio/ComponentSidePanel.tsx +355 -0
- package/src/panels/studio/ComponentStudio.tsx +243 -0
- package/src/panels/studio/ComponentsHome.tsx +318 -0
- package/src/panels/studio/ComponentsPreview.tsx +179 -0
- package/src/panels/studio/EveryUse.tsx +244 -0
- package/src/panels/studio/ThisUsePanel.tsx +679 -0
- package/src/panels/studio/componentParts.tsx +341 -0
- package/src/panels/studio/components.ts +6 -0
- package/src/panels/studio/newCodeComponent.ts +66 -0
- package/src/panels/timeline/AudioFxButton.tsx +290 -0
- package/src/panels/timeline/AudioLane.tsx +674 -85
- package/src/panels/timeline/BlockRow.tsx +154 -85
- package/src/panels/timeline/ChannelRow.tsx +378 -129
- package/src/panels/timeline/CurvePane.tsx +508 -0
- package/src/panels/timeline/Filmstrip.tsx +361 -0
- package/src/panels/timeline/GenerateDrawer.tsx +407 -0
- package/src/panels/timeline/KeyStretch.tsx +115 -0
- package/src/panels/timeline/LifespanRow.tsx +730 -47
- package/src/panels/timeline/MarkerLane.tsx +46 -8
- package/src/panels/timeline/PlayButton.tsx +91 -0
- package/src/panels/timeline/PropertyPicker.tsx +254 -0
- package/src/panels/timeline/ShotRow.tsx +400 -0
- package/src/panels/timeline/SoundMode.tsx +1406 -0
- package/src/panels/timeline/TimelineDock.tsx +2338 -272
- package/src/panels/timeline/TransportVolume.tsx +163 -0
- package/src/panels/timeline/beatRuler.ts +74 -0
- package/src/panels/timeline/curveModel.ts +500 -0
- package/src/panels/timeline/duckUnderVoice.ts +68 -0
- package/src/panels/timeline/keyframeMenu.ts +138 -0
- package/src/panels/timeline/labelWidth.ts +49 -0
- package/src/panels/timeline/marquee.ts +155 -0
- package/src/panels/timeline/model.ts +1860 -199
- package/src/panels/timeline/snap.ts +125 -43
- package/src/panels/timeline/staggerPreview.tsx +92 -0
- package/src/panels/timeline/takeMeasure.ts +72 -0
- package/src/panels/timeline/useLive.ts +48 -0
- package/src/panels/timeline/viewport.ts +234 -0
- package/src/panels/toolbar/BackChip.tsx +116 -0
- package/src/panels/toolbar/CameraViewBar.tsx +118 -49
- package/src/panels/toolbar/CanvasBar.tsx +117 -0
- package/src/panels/toolbar/InsertButton.tsx +38 -0
- package/src/panels/toolbar/IsolationTrail.tsx +156 -0
- package/src/panels/toolbar/PanelToggles.tsx +86 -0
- package/src/panels/toolbar/ShadingBar.tsx +119 -26
- package/src/panels/toolbar/ToolDockBar.tsx +329 -80
- package/src/panels/toolbar/ToolFooter.tsx +102 -0
- package/src/panels/toolbar/ViewModeBar.tsx +247 -38
- package/src/panels/toolbar/WorkPlaneBar.tsx +94 -0
- package/src/panels/toolbar/useAddRows.tsx +326 -0
- package/src/panels/toolbar/useDismiss.ts +122 -0
- package/src/panels/versions/VersionHistoryPanel.tsx +274 -0
- package/src/panels/versions/versionModel.ts +103 -0
- package/src/panels/virtualWindow.ts +271 -0
- package/src/shotTokens.css +151 -60
- package/src/stage/FrustumGizmo.tsx +504 -84
- package/src/stage/GridPlane.tsx +225 -16
- package/src/stage/NodePreviews.tsx +628 -0
- package/src/stage/PerfHud.tsx +437 -47
- package/src/stage/SplitRenderer.tsx +816 -169
- package/src/stage/StageApp.tsx +4274 -486
- package/src/stage/StageRootBoundary.tsx +114 -0
- package/src/stage/StageTools.tsx +651 -151
- package/src/stage/TransformGizmo.tsx +696 -0
- package/src/stage/adaptivePresentation.ts +145 -0
- package/src/stage/bridgeClient.ts +2522 -41
- package/src/stage/exportWorker.ts +9 -0
- package/src/stage/feed.ts +305 -14
- package/src/stage/fontPreview.ts +176 -0
- package/src/stage/frustumGeometry.ts +319 -1
- package/src/stage/furnitureTokens.ts +33 -0
- package/src/stage/gizmoMath.ts +508 -16
- package/src/stage/gpuTimer.ts +276 -0
- package/src/stage/instanceModules.ts +194 -33
- package/src/stage/interactions/move.ts +24 -5
- package/src/stage/isolation.ts +291 -33
- package/src/stage/jsSelfProfiler.ts +325 -0
- package/src/stage/main.tsx +116 -16
- package/src/stage/modalState.ts +222 -23
- package/src/stage/moduleEpoch.ts +60 -0
- package/src/stage/motionPathStage.ts +279 -0
- package/src/stage/motionPreview.ts +74 -0
- package/src/stage/overlays/Overlays.tsx +1112 -159
- package/src/stage/overlays/Rulers.tsx +495 -0
- package/src/stage/panes.ts +159 -10
- package/src/stage/project.ts +68 -3
- package/src/stage/renderScaleController.ts +730 -0
- package/src/stage/rulers.ts +129 -0
- package/src/stage/sceneExtent.ts +75 -0
- package/src/stage/shading.ts +20 -0
- package/src/stage/splineStage.ts +632 -0
- package/src/stage/stagePerformanceTelemetry.ts +717 -0
- package/src/stage/stageTheme.ts +36 -0
- package/src/stage/stageWarmup.ts +11 -0
- package/src/stage/textAutoSize.ts +124 -0
- package/src/stage/tier1Export.ts +641 -0
- package/src/stage/tokenColor.ts +14 -9
- package/src/stage/view.ts +56 -9
- package/src/stage/workingView.ts +277 -33
- package/src/state/accountPrefs.ts +261 -0
- package/src/state/agentActions.ts +173 -15
- package/src/state/agentActivity.ts +198 -0
- package/src/state/agentQuestion.ts +239 -0
- package/src/state/bootOpen.ts +42 -0
- package/src/state/cameraVerbs.ts +139 -0
- package/src/state/clientId.ts +6 -1
- package/src/state/comments.ts +1099 -0
- package/src/state/context.tsx +19 -1
- package/src/state/editorPrefs.ts +220 -0
- package/src/state/errorReports.ts +121 -0
- package/src/state/fieldWrite.ts +161 -0
- package/src/state/fontRecents.ts +70 -0
- package/src/state/fonts.ts +656 -0
- package/src/state/graphClipboard.ts +414 -0
- package/src/state/imageThumbs.ts +216 -0
- package/src/state/insert.ts +444 -67
- package/src/state/isolationTrail.ts +92 -0
- package/src/state/keyMoves.ts +134 -0
- package/src/state/keyframeClipboard.ts +177 -0
- package/src/state/keymap.ts +1153 -117
- package/src/state/layoutPrefs.ts +272 -0
- package/src/state/layouts.ts +205 -0
- package/src/state/measureMedia.ts +167 -0
- package/src/state/menu.ts +2341 -28
- package/src/state/motionStamp.ts +7 -0
- package/src/state/panelSize.ts +375 -5
- package/src/state/pendingChanges.ts +119 -0
- package/src/state/playHold.ts +78 -0
- package/src/state/playbackPreparation.ts +562 -0
- package/src/state/posterCapture.ts +242 -0
- package/src/state/presence.ts +254 -0
- package/src/state/projectComponents.ts +160 -0
- package/src/state/renderEvents.ts +298 -18
- package/src/state/runtimeErrors.ts +46 -0
- package/src/state/selection.ts +12 -0
- package/src/state/shortcuts.ts +1606 -0
- package/src/state/sketchGuide.ts +51 -0
- package/src/state/splineRefs.ts +87 -0
- package/src/state/stageHealth.ts +259 -0
- package/src/state/stageWatchdog.ts +47 -0
- package/src/state/stillStage.ts +330 -0
- package/src/state/stillThumbs.ts +474 -0
- package/src/state/store.ts +23591 -2982
- package/src/state/storyboardModel.ts +528 -0
- package/src/state/sync.ts +1257 -0
- package/src/state/syncCache.ts +159 -0
- package/src/state/triangles.ts +13 -0
- package/src/state/types.ts +1698 -55
- package/src/state/unsavedGuard.ts +49 -0
- package/src/state/viewMode.ts +200 -0
- package/src/state/webmcp.ts +1128 -0
- package/src/state/workspace.ts +1147 -0
- package/src/styles/assets-tab.css +304 -0
- package/src/styles/canvas.css +545 -0
- package/src/styles/comments.css +1435 -0
- package/src/styles/controls.css +162 -0
- package/src/styles/dialogs.css +390 -0
- package/src/styles/insert-drawer.css +586 -0
- package/src/styles/inspector-board.css +207 -0
- package/src/styles/inspector-object.css +486 -0
- package/src/styles/inspector-shot.css +252 -0
- package/src/styles/inspector.css +360 -0
- package/src/styles/left-column.css +1628 -0
- package/src/styles/library-preview.css +575 -0
- package/src/styles/library.css +512 -0
- package/src/styles/modes/code.css +569 -0
- package/src/styles/modes/component.css +1561 -0
- package/src/styles/modes/material.css +1201 -0
- package/src/styles/modes/storyboard.css +518 -0
- package/src/styles/share-component.css +49 -0
- package/src/styles/shell.css +653 -0
- package/src/styles/shot-brief.css +360 -0
- package/src/styles/states.css +76 -0
- package/src/styles/sync.css +380 -0
- package/src/styles/timeline-graph.css +384 -0
- package/src/styles/timeline-meters.css +89 -0
- package/src/styles/timeline-rows.css +1959 -0
- package/src/styles/timeline-sound.css +1003 -0
- package/src/styles/timeline.css +754 -0
- package/src/styles/tool-footer.css +525 -0
- package/src/styles/topbar.css +886 -0
- package/src/styles/versions.css +262 -0
- package/src/styles.css +72 -2921
- package/src/tools.ts +108 -23
- package/dist/assets/index-B7notge7.css +0 -1
- package/dist/assets/index-BBE6Ta9L.js +0 -52
- package/src/panels/files/icons.tsx +0 -118
- package/src/panels/header/DocSwitcher.tsx +0 -85
- package/src/panels/header/TransportBar.tsx +0 -86
- package/src/panels/inspector/animate/BlockTiming.tsx +0 -341
- package/src/panels/inspector/animate/DuringBlocks.tsx +0 -85
- package/src/panels/inspector/animate/InOutPresets.tsx +0 -57
- package/src/panels/inspector/animate/ResolvedChannels.tsx +0 -150
- package/src/panels/inspector/animate/useBlocks.ts +0 -43
- package/src/panels/material/MaterialPicker.tsx +0 -172
- package/src/panels/timeline/SceneStrip.tsx +0 -145
- package/src/panels/toolbar/AddMenu.tsx +0 -230
- package/src/stage/MoveGizmo.tsx +0 -411
|
@@ -0,0 +1,518 @@
|
|
|
1
|
+
/* The storyboard, the part that loads with the shell: the board's place in
|
|
2
|
+
the docked frame, the rules that restyle a house widget on a board element
|
|
3
|
+
(the panel head, a button, the dialog, the drop zone, caps), and what Studio
|
|
4
|
+
and the inspector share with the board (a sketch drawn small, the card
|
|
5
|
+
previews, the live component preview, the Place slot). Values from
|
|
6
|
+
plans/SHOT-BOARD-VALUES.md.
|
|
7
|
+
|
|
8
|
+
THE REST OF THE BOARD IS panels/storyboard/board.css, in the board's own
|
|
9
|
+
chunk (app/lazySurfaces.tsx). That sheet sits in `component-sheets`, UNDER
|
|
10
|
+
the widgets and the chrome, so a board rule on an element that also carries
|
|
11
|
+
a house class (`.panel-head board-bar`, `.btn board-plan-action`,
|
|
12
|
+
`.dialog board-drop`, `.drop style-drop`) would lose to the house rule.
|
|
13
|
+
Those stay here, in the chrome layer, where they win. */
|
|
14
|
+
|
|
15
|
+
/* ---- the board in the docked frame --------------------------------------- */
|
|
16
|
+
/* ONE CANVAS, EDGE TO EDGE. The board has no left column, no canvas bar, no
|
|
17
|
+
tool footer and no timeline: App draws the rail and the dock row at 0, and
|
|
18
|
+
the canvas cell spans from the left edge to the right column and from under
|
|
19
|
+
the top bar to the bottom. The right column stands only while it has an
|
|
20
|
+
occupant (`boardRightPanel`); empty, it is not drawn, so it draws no seam. */
|
|
21
|
+
.shell.is-storyboard > .control-strip,
|
|
22
|
+
.shell.is-storyboard > .left-rail,
|
|
23
|
+
.shell.is-storyboard > .tool-footer,
|
|
24
|
+
.shell.is-storyboard > .bottom-cell,
|
|
25
|
+
.shell.is-storyboard > .timeline-dock,
|
|
26
|
+
.shell.is-storyboard > .inspector-column[data-empty] {
|
|
27
|
+
display: none;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
/* Start only: the end stays the canvas track's, so a collapsed right column
|
|
31
|
+
still hands the canvas its width (shell.css). */
|
|
32
|
+
.shell.is-storyboard > .canvas-cell {
|
|
33
|
+
grid-column-start: edge-l;
|
|
34
|
+
grid-row: main-t / edge-b;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
.shell.is-storyboard > .inspector-column {
|
|
38
|
+
grid-row: main-t / edge-b;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
/* THE BOARD BAR (SB1): the one panel head, 16 in and 8 from the right, the
|
|
42
|
+
title, the count, then "Shot" and the board's one primary. */
|
|
43
|
+
.board-bar {
|
|
44
|
+
gap: var(--space-6);
|
|
45
|
+
padding-right: var(--space-4);
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
/* The head's + sits in the 16 line, so it does not grow the row. */
|
|
49
|
+
.board-section-add {
|
|
50
|
+
margin-block: calc(-1 * var(--space-4));
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
/* ---- the drop slot -------------------------------------------------------- */
|
|
54
|
+
/* The house drop zone (`.drop`, G1 09) at the wall's height, its words in
|
|
55
|
+
`--ink-2` and its plus in `--ink-3` (SB1). This sheet's layer outranks the
|
|
56
|
+
house widgets, so the rest state names only what `.drop.is-over` leaves
|
|
57
|
+
alone: a transparent ground here would hide the drag's wash. */
|
|
58
|
+
.style-drop {
|
|
59
|
+
flex: none;
|
|
60
|
+
width: 200px;
|
|
61
|
+
height: 100%;
|
|
62
|
+
padding: 0 var(--space-6);
|
|
63
|
+
font: inherit;
|
|
64
|
+
font-size: var(--type-md);
|
|
65
|
+
font-weight: var(--weight-medium);
|
|
66
|
+
cursor: pointer;
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
.style-drop:not(.is-over) {
|
|
70
|
+
background: transparent;
|
|
71
|
+
color: var(--ink-2);
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
.style-drop > svg {
|
|
75
|
+
flex: none;
|
|
76
|
+
width: 16px;
|
|
77
|
+
height: 16px;
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
.style-drop:not(.is-over) > svg {
|
|
81
|
+
color: var(--ink-3);
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
.style-drop:hover {
|
|
85
|
+
border-color: var(--ink-3);
|
|
86
|
+
color: var(--ink-1);
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
.style-drop:focus-visible {
|
|
90
|
+
outline: none;
|
|
91
|
+
box-shadow: var(--focus-ring);
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
/* The link field takes the slot's place while it is open. */
|
|
95
|
+
.style-drop.is-link {
|
|
96
|
+
border: 1px solid var(--accent);
|
|
97
|
+
border-radius: var(--radius-tab);
|
|
98
|
+
background: var(--surface-secondary);
|
|
99
|
+
color: var(--ink-1);
|
|
100
|
+
text-align: center;
|
|
101
|
+
cursor: text;
|
|
102
|
+
outline: none;
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
/* ---- a sketch, drawn small (MiniSketch) ----------------------------------- */
|
|
106
|
+
/* Items sit in percentages of the box and type in `cqw` of it, so one markup
|
|
107
|
+
is right at any width. A picture: it takes no pointer. */
|
|
108
|
+
.mini-sketch {
|
|
109
|
+
position: relative;
|
|
110
|
+
width: 100%;
|
|
111
|
+
container-type: inline-size;
|
|
112
|
+
overflow: hidden;
|
|
113
|
+
background: var(--sketch-paper);
|
|
114
|
+
color: var(--sketch-ink);
|
|
115
|
+
pointer-events: none;
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
.mini-sketch[data-ground="dark"] {
|
|
119
|
+
background: var(--surface-app);
|
|
120
|
+
color: var(--on-media);
|
|
121
|
+
}
|
|
122
|
+
|
|
123
|
+
.mini-sketch[data-ground="brand"] {
|
|
124
|
+
background: var(--accent);
|
|
125
|
+
color: var(--on-accent);
|
|
126
|
+
}
|
|
127
|
+
|
|
128
|
+
/* The sketch as the still stage drew it, at the Project's aspect: it fills
|
|
129
|
+
the box edge to edge, in place of the DOM drawing. */
|
|
130
|
+
.mini-sketch-picture {
|
|
131
|
+
position: absolute;
|
|
132
|
+
inset: 0;
|
|
133
|
+
display: block;
|
|
134
|
+
width: 100%;
|
|
135
|
+
height: 100%;
|
|
136
|
+
}
|
|
137
|
+
|
|
138
|
+
.mini-sketch-text,
|
|
139
|
+
.mini-sketch-box,
|
|
140
|
+
.mini-sketch-ref {
|
|
141
|
+
position: absolute;
|
|
142
|
+
overflow: hidden;
|
|
143
|
+
}
|
|
144
|
+
|
|
145
|
+
.mini-sketch-text {
|
|
146
|
+
line-height: var(--leading-tight);
|
|
147
|
+
font-weight: var(--weight-semibold);
|
|
148
|
+
overflow-wrap: anywhere;
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
.mini-sketch-text.is-title {
|
|
152
|
+
letter-spacing: var(--tracking-display-md);
|
|
153
|
+
}
|
|
154
|
+
|
|
155
|
+
.mini-sketch-text[data-align="center"] {
|
|
156
|
+
text-align: center;
|
|
157
|
+
}
|
|
158
|
+
|
|
159
|
+
.mini-sketch-text[data-align="end"] {
|
|
160
|
+
text-align: right;
|
|
161
|
+
}
|
|
162
|
+
|
|
163
|
+
.mini-sketch-box {
|
|
164
|
+
box-sizing: border-box;
|
|
165
|
+
border: 1px solid var(--sketch-line);
|
|
166
|
+
border-radius: var(--radius-2xs);
|
|
167
|
+
background: var(--sketch-fill);
|
|
168
|
+
}
|
|
169
|
+
|
|
170
|
+
.mini-sketch-box[data-tone="dark"] {
|
|
171
|
+
border-color: transparent;
|
|
172
|
+
background: var(--sketch-dark);
|
|
173
|
+
color: var(--sketch-line);
|
|
174
|
+
}
|
|
175
|
+
|
|
176
|
+
.mini-sketch-box[data-tone="accent"] {
|
|
177
|
+
border-color: transparent;
|
|
178
|
+
background: var(--accent);
|
|
179
|
+
color: var(--on-accent);
|
|
180
|
+
}
|
|
181
|
+
|
|
182
|
+
/* A box's label sits in its top left, an arrow's centred over its head. */
|
|
183
|
+
.mini-sketch-label {
|
|
184
|
+
position: absolute;
|
|
185
|
+
top: 6%;
|
|
186
|
+
left: 4%;
|
|
187
|
+
max-width: 92%;
|
|
188
|
+
overflow: hidden;
|
|
189
|
+
text-overflow: ellipsis;
|
|
190
|
+
white-space: nowrap;
|
|
191
|
+
line-height: var(--leading-tight);
|
|
192
|
+
font-weight: var(--weight-medium);
|
|
193
|
+
}
|
|
194
|
+
|
|
195
|
+
.mini-sketch-label.is-arrow {
|
|
196
|
+
top: auto;
|
|
197
|
+
translate: -50% -50%;
|
|
198
|
+
}
|
|
199
|
+
|
|
200
|
+
.mini-sketch-ref > img,
|
|
201
|
+
.mini-sketch-media {
|
|
202
|
+
display: block;
|
|
203
|
+
width: 100%;
|
|
204
|
+
height: 100%;
|
|
205
|
+
object-fit: cover;
|
|
206
|
+
}
|
|
207
|
+
|
|
208
|
+
/* A component, or a card with no picture: its name on the sketch fill. */
|
|
209
|
+
.mini-sketch-ref.is-tile {
|
|
210
|
+
box-sizing: border-box;
|
|
211
|
+
border: 1px dashed var(--sketch-line);
|
|
212
|
+
border-radius: var(--radius-2xs);
|
|
213
|
+
background: var(--sketch-fill);
|
|
214
|
+
}
|
|
215
|
+
|
|
216
|
+
.mini-sketch-ref.is-missing {
|
|
217
|
+
color: var(--danger);
|
|
218
|
+
}
|
|
219
|
+
|
|
220
|
+
.mini-sketch-arrows {
|
|
221
|
+
position: absolute;
|
|
222
|
+
inset: 0;
|
|
223
|
+
width: 100%;
|
|
224
|
+
height: 100%;
|
|
225
|
+
overflow: visible;
|
|
226
|
+
fill: none;
|
|
227
|
+
stroke: currentColor;
|
|
228
|
+
stroke-width: 6;
|
|
229
|
+
stroke-linecap: round;
|
|
230
|
+
stroke-linejoin: round;
|
|
231
|
+
}
|
|
232
|
+
|
|
233
|
+
/* ---- the board's Plan panel ------------------------------------------------ */
|
|
234
|
+
/* Its footer's two ways on share the width (SB1). */
|
|
235
|
+
.board-plan-action {
|
|
236
|
+
flex: 1 1 0;
|
|
237
|
+
min-width: 0;
|
|
238
|
+
}
|
|
239
|
+
|
|
240
|
+
/* Cut to next is the house select trigger (PlanPanel.tsx), and it discloses
|
|
241
|
+
the cut's rows under it, so its caret (the house `.field-caret`, pointing
|
|
242
|
+
down) turns up while they are open. */
|
|
243
|
+
.plan-cut-select[aria-expanded="true"] .combobox-caret {
|
|
244
|
+
transform: rotate(180deg);
|
|
245
|
+
}
|
|
246
|
+
|
|
247
|
+
/* A BEAT IS A LINE OF PROSE in its own box, its remove inside the box's
|
|
248
|
+
accessory lane (PlanPanel.tsx), so its words read from the left. The house
|
|
249
|
+
sets a one-line value in a pill on the right, beside the name it answers; a
|
|
250
|
+
beat's box holds no name, and its number sits outside it. */
|
|
251
|
+
.plan-beat .insp-pill input.text-input {
|
|
252
|
+
text-align: left;
|
|
253
|
+
}
|
|
254
|
+
|
|
255
|
+
/* THE PLAN'S BARE FIELDS TAKE THE RECIPE'S 8px INSET. What we see, Voice
|
|
256
|
+
and the Cut to next trigger sit under their caps labels, outside any
|
|
257
|
+
property row, so they kept the 12px a text field or a select has on its
|
|
258
|
+
own, while the beats' boxes and the Length field beside them start their
|
|
259
|
+
words 8px in, as every Studio box does. The house gives a bare field the
|
|
260
|
+
inset only inside a row (widgets.css, `:where(.insp-row, .prop-row)`), so
|
|
261
|
+
this is the same inset in the plan's own context: both sides for a text
|
|
262
|
+
field, the left for a select, whose right holds its caret. */
|
|
263
|
+
.plan-field > .text-input {
|
|
264
|
+
padding-inline: var(--space-4);
|
|
265
|
+
}
|
|
266
|
+
.plan-field > .select {
|
|
267
|
+
padding-left: var(--space-4);
|
|
268
|
+
}
|
|
269
|
+
|
|
270
|
+
/* ---- the drop dialog (S2) ------------------------------------------------- */
|
|
271
|
+
/* The house Dialog, restyled: 640 wide on the strong scrim, every inset its
|
|
272
|
+
own section's. The title row carries the Esc hint, so the house X steps
|
|
273
|
+
aside (Cancel and Esc both close). */
|
|
274
|
+
.dialog-overlay:has(> .dialog.board-drop) {
|
|
275
|
+
background: var(--scrim-strong);
|
|
276
|
+
}
|
|
277
|
+
|
|
278
|
+
.dialog.board-drop {
|
|
279
|
+
width: 640px;
|
|
280
|
+
gap: 0;
|
|
281
|
+
padding: 0;
|
|
282
|
+
border: 1px solid var(--line);
|
|
283
|
+
border-radius: var(--control-radius);
|
|
284
|
+
box-shadow: var(--shadow-popover);
|
|
285
|
+
overflow: hidden;
|
|
286
|
+
}
|
|
287
|
+
|
|
288
|
+
.dialog.board-drop > .dialog-close {
|
|
289
|
+
display: none;
|
|
290
|
+
}
|
|
291
|
+
|
|
292
|
+
.dialog.board-drop > .dialog-title {
|
|
293
|
+
display: flex;
|
|
294
|
+
align-items: center;
|
|
295
|
+
gap: var(--space-5);
|
|
296
|
+
padding: var(--space-7) var(--space-7) var(--space-6);
|
|
297
|
+
}
|
|
298
|
+
|
|
299
|
+
.dialog.board-drop > .dialog-body {
|
|
300
|
+
gap: 0;
|
|
301
|
+
padding: 0;
|
|
302
|
+
}
|
|
303
|
+
|
|
304
|
+
.dialog.board-drop > .dialog-actions {
|
|
305
|
+
gap: var(--space-4);
|
|
306
|
+
padding: var(--space-7) var(--space-7) var(--space-7);
|
|
307
|
+
}
|
|
308
|
+
|
|
309
|
+
.dialog.board-drop > .dialog-actions > .btn {
|
|
310
|
+
height: var(--control-h);
|
|
311
|
+
padding: 0 var(--space-6);
|
|
312
|
+
border-radius: var(--radius-tab);
|
|
313
|
+
font-weight: var(--weight-semibold);
|
|
314
|
+
}
|
|
315
|
+
|
|
316
|
+
.board-drop-cancel {
|
|
317
|
+
background: var(--surface-secondary);
|
|
318
|
+
}
|
|
319
|
+
|
|
320
|
+
/* ---- the component sheet's head and foot (S3) ----------------------------- */
|
|
321
|
+
/* On the house panel head and panel foot, so here; the sheet's own parts are
|
|
322
|
+
in board.css. */
|
|
323
|
+
.component-sheet-bar {
|
|
324
|
+
padding-left: var(--space-6);
|
|
325
|
+
}
|
|
326
|
+
|
|
327
|
+
.component-sheet-foot {
|
|
328
|
+
justify-content: flex-start;
|
|
329
|
+
padding: 0 var(--space-6);
|
|
330
|
+
}
|
|
331
|
+
|
|
332
|
+
/* THIS USE AMONG SECTIONS, in the sheet and in the item inspector: the
|
|
333
|
+
column's own hairline runs only between two sections, so the first section
|
|
334
|
+
under the This use block takes it here, and in the item inspector the block
|
|
335
|
+
takes it under the section above it (Component). The sheet's block sits
|
|
336
|
+
under the stage, which is a box of its own. */
|
|
337
|
+
.component-sheet-body > .this-use + .insp-section,
|
|
338
|
+
.sketch-inspector-body > .this-use + .insp-section,
|
|
339
|
+
.sketch-inspector-body > .insp-section + .this-use {
|
|
340
|
+
border-top: 1px solid var(--line);
|
|
341
|
+
}
|
|
342
|
+
|
|
343
|
+
/* ---- the board's read-only rows (ReadoutRow, boardRows.tsx) -------------- */
|
|
344
|
+
/* They are the house readout (`insp-readout`, widgets.css), the one the
|
|
345
|
+
Studio's Time section wears: the field's box on the control ground with no
|
|
346
|
+
hover, the value in the numeric face, a sentence wrapping in a row aligned
|
|
347
|
+
to its start, and a badge in one (a requirement's Status) 2px short so the
|
|
348
|
+
row stays 28. Nothing here restates it. */
|
|
349
|
+
|
|
350
|
+
/* A library item's README, quoted whole: the row's width, its own line
|
|
351
|
+
breaks, wrapping at the row's edge, in the readout's ink. */
|
|
352
|
+
.insp-docs {
|
|
353
|
+
flex: 1;
|
|
354
|
+
min-width: 0;
|
|
355
|
+
margin: 0;
|
|
356
|
+
font: inherit;
|
|
357
|
+
color: var(--ink-2);
|
|
358
|
+
white-space: pre-wrap;
|
|
359
|
+
overflow-wrap: anywhere;
|
|
360
|
+
}
|
|
361
|
+
|
|
362
|
+
/* The File row's value, the file's own name, in the readout's second ink:
|
|
363
|
+
the third was dimmer than the label naming it. Its buttons (Choose file,
|
|
364
|
+
Replace, Clear) are the house in-pill button, the chip height inside the
|
|
365
|
+
row's 28px box, and a row's own buttons on the board (Place, Mark done, a
|
|
366
|
+
library verb, Delete; the item inspector's Replace and Open in Components,
|
|
367
|
+
each a row of buttons) are the house row's 28, as the Studio inspector's
|
|
368
|
+
are (widgets.css). */
|
|
369
|
+
.insp-file-row .insp-dim.is-text {
|
|
370
|
+
color: var(--ink-2);
|
|
371
|
+
}
|
|
372
|
+
|
|
373
|
+
/* ---- the inspector's lead and the shared preview -------------------------- */
|
|
374
|
+
/* The inspector's lead: the same `ReferencePreview` the board's other cards
|
|
375
|
+
render, at the section's width. What a card IS, before any property of it.
|
|
376
|
+
The section already carries the column's inset, so the lead adds none. */
|
|
377
|
+
.insp-reference-lead {
|
|
378
|
+
position: relative;
|
|
379
|
+
aspect-ratio: 16 / 9;
|
|
380
|
+
margin: 0 0 var(--space-2);
|
|
381
|
+
border-radius: var(--radius-sm);
|
|
382
|
+
border: 1px solid var(--line);
|
|
383
|
+
background: var(--fill-rest);
|
|
384
|
+
overflow: hidden;
|
|
385
|
+
}
|
|
386
|
+
|
|
387
|
+
/* One preview recipe, four kinds. The card and the inspector's lead render
|
|
388
|
+
the same component, so this is the only place any of them is sized. */
|
|
389
|
+
.reference-preview {
|
|
390
|
+
display: block;
|
|
391
|
+
width: 100%;
|
|
392
|
+
height: 100%;
|
|
393
|
+
object-fit: cover;
|
|
394
|
+
}
|
|
395
|
+
|
|
396
|
+
.reference-preview.is-note,
|
|
397
|
+
.reference-preview.is-component,
|
|
398
|
+
.reference-preview.is-missing,
|
|
399
|
+
.reference-preview.is-kind {
|
|
400
|
+
display: flex;
|
|
401
|
+
align-items: center;
|
|
402
|
+
justify-content: center;
|
|
403
|
+
padding: var(--space-2);
|
|
404
|
+
text-align: center;
|
|
405
|
+
font-size: var(--type-micro);
|
|
406
|
+
color: var(--ink-2);
|
|
407
|
+
overflow: hidden;
|
|
408
|
+
}
|
|
409
|
+
|
|
410
|
+
/* A note shows ITS OWN TEXT, which is the whole card. A generic glyph is the
|
|
411
|
+
least informative thing a note can show. */
|
|
412
|
+
.reference-preview.is-note {
|
|
413
|
+
display: -webkit-box;
|
|
414
|
+
-webkit-line-clamp: 3;
|
|
415
|
+
-webkit-box-orient: vertical;
|
|
416
|
+
align-items: flex-start;
|
|
417
|
+
text-align: left;
|
|
418
|
+
line-height: var(--leading-tight);
|
|
419
|
+
color: var(--ink-1);
|
|
420
|
+
}
|
|
421
|
+
|
|
422
|
+
.reference-preview.is-component {
|
|
423
|
+
flex-direction: column;
|
|
424
|
+
gap: var(--space-1);
|
|
425
|
+
}
|
|
426
|
+
|
|
427
|
+
.reference-preview-glyph {
|
|
428
|
+
font-family: var(--font-mono);
|
|
429
|
+
font-size: var(--type-sm);
|
|
430
|
+
color: var(--ink-2);
|
|
431
|
+
}
|
|
432
|
+
|
|
433
|
+
.reference-preview-name {
|
|
434
|
+
max-width: 100%;
|
|
435
|
+
white-space: nowrap;
|
|
436
|
+
overflow: hidden;
|
|
437
|
+
text-overflow: ellipsis;
|
|
438
|
+
color: var(--ink-1);
|
|
439
|
+
}
|
|
440
|
+
|
|
441
|
+
.reference-preview.is-missing {
|
|
442
|
+
color: var(--danger);
|
|
443
|
+
}
|
|
444
|
+
|
|
445
|
+
/* A video's lead is the video itself at the card's frame, with Extract
|
|
446
|
+
still over its corner (VideoStill). */
|
|
447
|
+
.insp-video-still {
|
|
448
|
+
display: block;
|
|
449
|
+
width: 100%;
|
|
450
|
+
height: 100%;
|
|
451
|
+
object-fit: cover;
|
|
452
|
+
}
|
|
453
|
+
|
|
454
|
+
/* The lead LETTERBOXES a picture: a card is looked at whole here, and a logo
|
|
455
|
+
or a wide still cropped to fill is a different picture. */
|
|
456
|
+
.insp-reference-lead > img.reference-preview {
|
|
457
|
+
object-fit: contain;
|
|
458
|
+
}
|
|
459
|
+
|
|
460
|
+
.insp-reference-lead > .btn {
|
|
461
|
+
position: absolute;
|
|
462
|
+
right: var(--space-3);
|
|
463
|
+
bottom: var(--space-3);
|
|
464
|
+
}
|
|
465
|
+
|
|
466
|
+
/* ---- the live component preview (ComponentStage) -------------------------- */
|
|
467
|
+
/* A second shot stage, on a card and in the sheet. It takes no pointer: it is
|
|
468
|
+
a picture, and a press on it must select nothing on a stage nobody edits.
|
|
469
|
+
At rest a card shows the stage's captured POSTER under the same box. */
|
|
470
|
+
.component-stage {
|
|
471
|
+
position: relative;
|
|
472
|
+
width: 100%;
|
|
473
|
+
height: 100%;
|
|
474
|
+
}
|
|
475
|
+
|
|
476
|
+
.component-stage-frame,
|
|
477
|
+
.component-stage-poster {
|
|
478
|
+
display: block;
|
|
479
|
+
width: 100%;
|
|
480
|
+
height: 100%;
|
|
481
|
+
border: 0;
|
|
482
|
+
pointer-events: none;
|
|
483
|
+
background: transparent;
|
|
484
|
+
}
|
|
485
|
+
|
|
486
|
+
.component-stage-poster {
|
|
487
|
+
position: absolute;
|
|
488
|
+
inset: 0;
|
|
489
|
+
object-fit: cover;
|
|
490
|
+
}
|
|
491
|
+
|
|
492
|
+
.component-stage-status {
|
|
493
|
+
position: absolute;
|
|
494
|
+
inset: 0;
|
|
495
|
+
display: grid;
|
|
496
|
+
place-items: center;
|
|
497
|
+
padding: var(--space-4);
|
|
498
|
+
text-align: center;
|
|
499
|
+
font-size: var(--type-micro);
|
|
500
|
+
color: var(--ink-3);
|
|
501
|
+
background: var(--fill-rest);
|
|
502
|
+
}
|
|
503
|
+
|
|
504
|
+
/* ---- a requirement's Place slot (boardRows.tsx) ------------------------ */
|
|
505
|
+
.ledger-in {
|
|
506
|
+
max-width: 100%;
|
|
507
|
+
overflow: hidden;
|
|
508
|
+
text-overflow: ellipsis;
|
|
509
|
+
}
|
|
510
|
+
|
|
511
|
+
.ledger-note {
|
|
512
|
+
min-width: 0;
|
|
513
|
+
overflow: hidden;
|
|
514
|
+
text-overflow: ellipsis;
|
|
515
|
+
white-space: nowrap;
|
|
516
|
+
font-size: var(--type-sm);
|
|
517
|
+
color: var(--ink-3);
|
|
518
|
+
}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
/* Share component (C3): panels/share/ShareComponentDialog.tsx. */
|
|
2
|
+
|
|
3
|
+
.share-component-body {
|
|
4
|
+
display: flex;
|
|
5
|
+
flex-direction: column;
|
|
6
|
+
gap: var(--space-7);
|
|
7
|
+
min-width: 0;
|
|
8
|
+
max-width: 420px;
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
.share-component-status {
|
|
12
|
+
margin: 0;
|
|
13
|
+
color: var(--ink-2);
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
.share-component-section {
|
|
17
|
+
display: flex;
|
|
18
|
+
flex-direction: column;
|
|
19
|
+
align-items: flex-start;
|
|
20
|
+
gap: var(--space-4);
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
.share-component-section > .dialog-field {
|
|
24
|
+
align-self: stretch;
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
.share-component-heading {
|
|
28
|
+
margin: 0;
|
|
29
|
+
font-size: var(--type-md);
|
|
30
|
+
font-weight: 600;
|
|
31
|
+
color: var(--ink-1);
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
.share-component-check {
|
|
35
|
+
display: flex;
|
|
36
|
+
align-items: center;
|
|
37
|
+
gap: var(--space-3);
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
.share-component-contents p,
|
|
41
|
+
.share-component-foot,
|
|
42
|
+
.share-component-reason {
|
|
43
|
+
margin: 0;
|
|
44
|
+
color: var(--ink-2);
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
.share-component-foot {
|
|
48
|
+
font-size: var(--type-micro);
|
|
49
|
+
}
|