@bendyline/squisq-editor-react 2.1.0 → 2.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/LICENSE +21 -0
- package/NOTICE.md +40 -0
- package/dist/index.d.ts +188 -55
- package/dist/index.js +5094 -2948
- package/dist/monaco.js +0 -1
- package/dist/styles/index.css +234 -145
- package/package.json +9 -6
- package/dist/index.js.map +0 -1
- package/dist/monaco.js.map +0 -1
- package/src/BlockCardView.tsx +0 -121
- package/src/BlockPreviewPanel.tsx +0 -69
- package/src/BlockPropertiesPopover.tsx +0 -222
- package/src/DocumentSettingsDialog.tsx +0 -272
- package/src/DropZoneOverlay.tsx +0 -137
- package/src/EditorContext.tsx +0 -1274
- package/src/EditorShell.tsx +0 -1358
- package/src/EmojiPicker.tsx +0 -332
- package/src/FolderView.tsx +0 -131
- package/src/Icon.tsx +0 -26
- package/src/ImageEditor.tsx +0 -395
- package/src/ImageNodeView.tsx +0 -284
- package/src/ImageViewer.tsx +0 -221
- package/src/InlineIcon.ts +0 -84
- package/src/InlinePreviewGutter.tsx +0 -590
- package/src/LinkDialog.tsx +0 -276
- package/src/MediaBin.tsx +0 -500
- package/src/MentionExtension.tsx +0 -261
- package/src/OutlinePanel.tsx +0 -547
- package/src/PlainHtmlPreview.tsx +0 -277
- package/src/PreviewControls.tsx +0 -1265
- package/src/PreviewPanel.tsx +0 -426
- package/src/RawEditor.tsx +0 -743
- package/src/RecorderEntry.tsx +0 -162
- package/src/StatusBar.tsx +0 -51
- package/src/TemplateAnnotation.ts +0 -167
- package/src/TemplateContentPreview.tsx +0 -56
- package/src/TemplatePicker.tsx +0 -1314
- package/src/ThemeCustomizerPanel.tsx +0 -304
- package/src/ThemePicker.tsx +0 -433
- package/src/TimelineBlockPreview.tsx +0 -37
- package/src/TimelineTrack.tsx +0 -671
- package/src/Toolbar.tsx +0 -2885
- package/src/Tooltip.tsx +0 -142
- package/src/TransitionPicker.tsx +0 -390
- package/src/VersionHistoryPanel.tsx +0 -359
- package/src/ViewMenuPanel.tsx +0 -189
- package/src/ViewSwitcher.tsx +0 -56
- package/src/WysiwygEditor.tsx +0 -806
- package/src/__tests__/blockProperties.test.ts +0 -92
- package/src/__tests__/blockPropertiesPopoverTheme.test.tsx +0 -33
- package/src/__tests__/blockRange.test.ts +0 -105
- package/src/__tests__/blockTagActivity.test.ts +0 -183
- package/src/__tests__/buildDocumentPreviewMarkdown.test.ts +0 -75
- package/src/__tests__/buildPreviewDocContent.test.ts +0 -65
- package/src/__tests__/buildPreviewDocTransition.test.ts +0 -92
- package/src/__tests__/canvasSurfaceTextEditing.test.tsx +0 -60
- package/src/__tests__/codeContextSectionView.test.tsx +0 -97
- package/src/__tests__/codeContextZoneManager.test.ts +0 -127
- package/src/__tests__/createShapeLayer.test.ts +0 -46
- package/src/__tests__/customLayoutManagerTheme.test.tsx +0 -34
- package/src/__tests__/detectMarkdown.test.ts +0 -73
- package/src/__tests__/diffContextSections.test.ts +0 -39
- package/src/__tests__/documentSettingsDialog.test.tsx +0 -197
- package/src/__tests__/drawingShapeRoundTrip.test.ts +0 -49
- package/src/__tests__/editorScrollHandoff.test.tsx +0 -102
- package/src/__tests__/editorScrollSync.test.ts +0 -65
- package/src/__tests__/editorShellCodeContext.test.tsx +0 -86
- package/src/__tests__/editorShellProps.test.tsx +0 -550
- package/src/__tests__/embeddedMedia.test.ts +0 -48
- package/src/__tests__/emojiPicker.test.tsx +0 -93
- package/src/__tests__/fileKind.test.ts +0 -112
- package/src/__tests__/findMode.test.tsx +0 -104
- package/src/__tests__/findModel.test.ts +0 -55
- package/src/__tests__/headingTransition.test.ts +0 -176
- package/src/__tests__/imageEditAffordance.test.tsx +0 -272
- package/src/__tests__/imageEditModalContract.test.tsx +0 -119
- package/src/__tests__/imageEditorShell.test.tsx +0 -94
- package/src/__tests__/imageEditorState.test.ts +0 -171
- package/src/__tests__/inlinePreviewGutter.test.tsx +0 -62
- package/src/__tests__/inlinePreviewGutterAllBlocks.test.tsx +0 -103
- package/src/__tests__/jsonEditor.test.tsx +0 -223
- package/src/__tests__/layersPanel.test.tsx +0 -167
- package/src/__tests__/layoutChildRoundTrip.test.ts +0 -71
- package/src/__tests__/linkDialogDocPicker.test.tsx +0 -137
- package/src/__tests__/majorApiTypes.test.ts +0 -26
- package/src/__tests__/markdownCodeFence.test.ts +0 -45
- package/src/__tests__/mediaAttachmentFlow.test.ts +0 -110
- package/src/__tests__/mediaBinDrop.test.tsx +0 -90
- package/src/__tests__/mediaReferences.test.ts +0 -97
- package/src/__tests__/narrationSave.test.ts +0 -148
- package/src/__tests__/outlinePanel.test.tsx +0 -169
- package/src/__tests__/outlineSource.test.ts +0 -217
- package/src/__tests__/plainHtmlPreview.test.tsx +0 -125
- package/src/__tests__/presentationMode.test.tsx +0 -290
- package/src/__tests__/previewControls.test.tsx +0 -571
- package/src/__tests__/previewPanelAudioFailure.test.tsx +0 -46
- package/src/__tests__/previewPanelPresentation.test.tsx +0 -126
- package/src/__tests__/previewPanelTransforms.test.tsx +0 -117
- package/src/__tests__/propertiesPanel.test.tsx +0 -69
- package/src/__tests__/rawEditorModelIsolation.test.ts +0 -19
- package/src/__tests__/recorderFormats.test.ts +0 -146
- package/src/__tests__/recorderMediaInsert.test.ts +0 -86
- package/src/__tests__/recorderTheme.test.tsx +0 -42
- package/src/__tests__/recorderTimingJson.test.ts +0 -41
- package/src/__tests__/resolveBlockVisual.test.ts +0 -43
- package/src/__tests__/selectionConversions.test.ts +0 -80
- package/src/__tests__/statusBar.test.tsx +0 -27
- package/src/__tests__/teleprompter.test.tsx +0 -190
- package/src/__tests__/templateAnnotationRoundTrip.test.ts +0 -99
- package/src/__tests__/templateContentPreview.test.ts +0 -101
- package/src/__tests__/templatePickerMetadata.test.ts +0 -32
- package/src/__tests__/templatePickerPortal.test.tsx +0 -62
- package/src/__tests__/timelineSource.test.ts +0 -134
- package/src/__tests__/tiptapBridge.test.ts +0 -575
- package/src/__tests__/tiptapBridgeConformance.test.ts +0 -47
- package/src/__tests__/tiptapCodeBlockRoundTrip.test.ts +0 -109
- package/src/__tests__/tiptapImageRoundTrip.test.ts +0 -73
- package/src/__tests__/toolbarSelectionConversion.test.tsx +0 -190
- package/src/__tests__/tooltip.test.tsx +0 -72
- package/src/__tests__/transformStyleId.test.ts +0 -13
- package/src/__tests__/transitionCatalog.test.ts +0 -64
- package/src/__tests__/useBlockNavigator.test.tsx +0 -67
- package/src/__tests__/useImageEditor.test.tsx +0 -226
- package/src/__tests__/useJsonEditorTokens.test.ts +0 -59
- package/src/__tests__/useMediaRecorder.test.ts +0 -302
- package/src/__tests__/useTimelineClock.test.ts +0 -21
- package/src/__tests__/versionHistory.test.tsx +0 -197
- package/src/__tests__/viewMenuPanel.test.tsx +0 -130
- package/src/__tests__/writeCanvasSettings.test.ts +0 -15
- package/src/__tests__/wysiwygImageUpload.test.ts +0 -69
- package/src/__tests__/wysiwygTemplateBadgeFocus.test.tsx +0 -56
- package/src/asciiDiagram/AsciiDiagramExtension.ts +0 -343
- package/src/asciiDiagram/AsciiDiagramWidget.tsx +0 -254
- package/src/asciiDiagram/RepairableDiagramExtension.ts +0 -200
- package/src/asciiDiagram/__tests__/AsciiDiagramExtension.test.ts +0 -164
- package/src/asciiDiagram/__tests__/RepairableDiagramExtension.test.ts +0 -159
- package/src/asciiDiagram/__tests__/asciiDiagramCommands.test.ts +0 -284
- package/src/asciiDiagram/__tests__/asciiDiagramOps.test.ts +0 -114
- package/src/asciiDiagram/__tests__/asciiPaste.test.ts +0 -43
- package/src/asciiDiagram/asciiDiagramCommands.ts +0 -174
- package/src/asciiDiagram/asciiDiagramData.ts +0 -149
- package/src/asciiDiagram/asciiDiagramOps.ts +0 -238
- package/src/asciiDiagram/asciiPaste.ts +0 -19
- package/src/blockProperties.ts +0 -88
- package/src/blockRange.ts +0 -132
- package/src/blockSlice.ts +0 -75
- package/src/blockTagActivity.ts +0 -233
- package/src/buildDocumentPreviewMarkdown.ts +0 -168
- package/src/buildPreviewDoc.ts +0 -407
- package/src/codeContext/CodeContextSectionView.tsx +0 -124
- package/src/codeContext/CodeContextZoneManager.ts +0 -149
- package/src/codeContext/CodeContextZones.tsx +0 -121
- package/src/codeContext/diffContextSections.ts +0 -38
- package/src/codeContext/types.ts +0 -75
- package/src/codeSnippet/CodeSnippetExtension.ts +0 -205
- package/src/codeSnippet/CodeSnippetWidget.tsx +0 -109
- package/src/codeSnippet/__tests__/CodeSnippetExtension.test.ts +0 -95
- package/src/codeSnippet/__tests__/codeSnippetLanguages.test.ts +0 -50
- package/src/codeSnippet/codeSnippetCommands.ts +0 -21
- package/src/codeSnippet/codeSnippetData.ts +0 -43
- package/src/codeSnippet/codeSnippetLanguages.ts +0 -216
- package/src/customTemplates/AddBin.tsx +0 -126
- package/src/customTemplates/CustomLayoutManager.tsx +0 -234
- package/src/customTemplates/CustomTemplateContext.tsx +0 -188
- package/src/customTemplates/LayerToolbar.tsx +0 -580
- package/src/customTemplates/ShapeGlyph.tsx +0 -47
- package/src/customTemplates/TemplateDesigner.tsx +0 -433
- package/src/customTemplates/__tests__/library.test.ts +0 -96
- package/src/customTemplates/__tests__/normalizePositions.test.ts +0 -109
- package/src/customTemplates/__tests__/shapeDefs.test.ts +0 -49
- package/src/customTemplates/__tests__/useMemoryLayerAdapter.test.ts +0 -108
- package/src/customTemplates/designer.css +0 -732
- package/src/customTemplates/index.ts +0 -31
- package/src/customTemplates/library.ts +0 -110
- package/src/customTemplates/normalizePositions.ts +0 -75
- package/src/customTemplates/shapeDefs.ts +0 -131
- package/src/customTemplates/thumbnail.tsx +0 -63
- package/src/customTemplates/tokenDefs.ts +0 -60
- package/src/customTemplates/useDocCustomTemplates.ts +0 -52
- package/src/customTemplates/useMemoryLayerAdapter.ts +0 -129
- package/src/customThemes/CustomThemeContext.tsx +0 -185
- package/src/customThemes/CustomThemeDialog.tsx +0 -316
- package/src/customThemes/ImportThemeSection.tsx +0 -178
- package/src/customThemes/__tests__/CustomThemeContext.test.tsx +0 -64
- package/src/customThemes/__tests__/CustomThemeDialog.test.tsx +0 -47
- package/src/customThemes/__tests__/customThemeLibrary.test.ts +0 -60
- package/src/customThemes/__tests__/importThemeSection.test.tsx +0 -192
- package/src/customThemes/customThemeLibrary.ts +0 -100
- package/src/customThemes/index.ts +0 -37
- package/src/customThemes/themeControls.tsx +0 -229
- package/src/customThemes/themeDraft.ts +0 -288
- package/src/customThemes/useDocCustomThemes.ts +0 -49
- package/src/detectMarkdown.ts +0 -62
- package/src/diagram/DiagramCanvas.tsx +0 -260
- package/src/diagram/DiagramMaximizedOverlay.tsx +0 -46
- package/src/diagram/diagramCommands.ts +0 -604
- package/src/diagram/diagramConstants.ts +0 -17
- package/src/diagram/types.ts +0 -35
- package/src/editorScrollSync.ts +0 -73
- package/src/embeddedMedia.ts +0 -78
- package/src/emojiData.ts +0 -1317
- package/src/fileKind.ts +0 -158
- package/src/find/FindHighlightExtension.ts +0 -81
- package/src/find/FindToolbar.tsx +0 -314
- package/src/find/findModel.ts +0 -77
- package/src/frontmatter.ts +0 -29
- package/src/frontmatterSettings.ts +0 -23
- package/src/headingTransition.ts +0 -291
- package/src/hooks/useFileDrop.ts +0 -266
- package/src/imageEditor/CanvasSurface.tsx +0 -703
- package/src/imageEditor/ImageVersionHistoryDropdown.tsx +0 -396
- package/src/imageEditor/LayersPanel.tsx +0 -218
- package/src/imageEditor/PropertiesPanel.tsx +0 -474
- package/src/imageEditor/Toolbar.tsx +0 -459
- package/src/imageEditor/createShapeLayer.ts +0 -280
- package/src/imageEditor/icons.tsx +0 -68
- package/src/imageEditor/image-editor.css +0 -574
- package/src/imageEditor/layers/EditorImageLayer.tsx +0 -45
- package/src/imageEditor/layers/EditorShapeLayer.tsx +0 -62
- package/src/imageEditor/layers/EditorTextLayer.tsx +0 -45
- package/src/imageEditor/layers/SelectionHandles.tsx +0 -86
- package/src/imageEditor/state.ts +0 -173
- package/src/imageEditor/useImageEditor.ts +0 -385
- package/src/imageEditor/useImageEditorTokens.ts +0 -70
- package/src/index.ts +0 -559
- package/src/jsonEditor/EmbeddedRichTextField.tsx +0 -81
- package/src/jsonEditor/JsonEditor.tsx +0 -81
- package/src/jsonEditor/JsonEditorContext.tsx +0 -81
- package/src/jsonEditor/RenderNode.tsx +0 -87
- package/src/jsonEditor/editors.tsx +0 -745
- package/src/jsonEditor/index.ts +0 -2
- package/src/jsonEditor/json-editor.css +0 -463
- package/src/jsonEditor/useJsonEditorTokens.ts +0 -33
- package/src/markdownCodeFence.ts +0 -72
- package/src/mediaDragMime.ts +0 -32
- package/src/mediaEntries.ts +0 -12
- package/src/mediaReferences.ts +0 -301
- package/src/mermaid/MermaidDiagramCanvas.tsx +0 -693
- package/src/mermaid/MermaidDiagramExtension.ts +0 -243
- package/src/mermaid/MermaidDiagramTypeThumbnail.tsx +0 -184
- package/src/mermaid/MermaidDiagramWidget.tsx +0 -653
- package/src/mermaid/MermaidShapePalette.tsx +0 -245
- package/src/mermaid/__tests__/MermaidDiagramExtension.test.ts +0 -361
- package/src/mermaid/__tests__/mermaidDiagramTypes.test.ts +0 -35
- package/src/mermaid/__tests__/mermaidRenderer.test.ts +0 -49
- package/src/mermaid/__tests__/mermaidSourceOps.test.ts +0 -213
- package/src/mermaid/__tests__/mermaidSyntax.test.ts +0 -71
- package/src/mermaid/mermaidCommands.ts +0 -34
- package/src/mermaid/mermaidData.ts +0 -31
- package/src/mermaid/mermaidDiagramTypes.ts +0 -325
- package/src/mermaid/mermaidModel.ts +0 -31
- package/src/mermaid/mermaidRenderer.ts +0 -181
- package/src/mermaid/mermaidShapes.ts +0 -113
- package/src/mermaid/mermaidSourceOps.ts +0 -454
- package/src/monaco.ts +0 -35
- package/src/monacoWorkers.ts +0 -89
- package/src/outlineSource.ts +0 -171
- package/src/presentation/PresentationMode.tsx +0 -596
- package/src/rawEditorIsolation.ts +0 -18
- package/src/recorder/RecorderButton.tsx +0 -80
- package/src/recorder/RecorderModal.tsx +0 -706
- package/src/recorder/RecorderPanel.tsx +0 -77
- package/src/recorder/formats.ts +0 -159
- package/src/recorder/hooks/useMediaRecorder.ts +0 -436
- package/src/recorder/hooks/useStreamPreview.ts +0 -47
- package/src/recorder/insertMediaBlock.ts +0 -30
- package/src/recorder/sources/cameraStream.ts +0 -32
- package/src/recorder/sources/micStream.ts +0 -25
- package/src/recorder/sources/screenStream.ts +0 -162
- package/src/recorder/timingJson.ts +0 -66
- package/src/resolveBlockVisual.ts +0 -39
- package/src/scene/Scene.tsx +0 -647
- package/src/scene/SceneBlockExtension.ts +0 -205
- package/src/scene/SceneBlockToolbar.tsx +0 -216
- package/src/scene/SceneBlockWidget.tsx +0 -441
- package/src/scene/ScenePropsBar.tsx +0 -85
- package/src/scene/SceneSelection.tsx +0 -111
- package/src/scene/SceneSideToolbar.tsx +0 -89
- package/src/scene/SceneViewControls.tsx +0 -43
- package/src/scene/SceneViewport.tsx +0 -106
- package/src/scene/ShapePalette.tsx +0 -196
- package/src/scene/__tests__/DiagramAdapter.test.ts +0 -142
- package/src/scene/__tests__/SceneBlockExtension.test.ts +0 -33
- package/src/scene/__tests__/bezierEdit.test.ts +0 -85
- package/src/scene/__tests__/blockLayers.test.ts +0 -57
- package/src/scene/__tests__/fitScale.test.ts +0 -19
- package/src/scene/__tests__/sceneIsolation.test.tsx +0 -119
- package/src/scene/__tests__/shapeLayers.test.ts +0 -106
- package/src/scene/__tests__/useSceneHitTest.test.ts +0 -90
- package/src/scene/__tests__/useScenePanZoom.test.ts +0 -130
- package/src/scene/adapters/DiagramAdapter.ts +0 -79
- package/src/scene/adapters/DrawingAdapter.ts +0 -420
- package/src/scene/adapters/LayoutAdapter.ts +0 -313
- package/src/scene/adapters/blockLayers.ts +0 -159
- package/src/scene/commands/SceneCommand.ts +0 -84
- package/src/scene/commands/drawingCommands.ts +0 -318
- package/src/scene/commands/layoutCommands.ts +0 -301
- package/src/scene/fitScale.ts +0 -17
- package/src/scene/hooks/useSceneHitTest.ts +0 -105
- package/src/scene/hooks/useScenePanZoom.ts +0 -154
- package/src/scene/hooks/useSceneSelection.ts +0 -62
- package/src/scene/index.ts +0 -90
- package/src/scene/layers/DiagramEdges.tsx +0 -142
- package/src/scene/layers/edgeGeometry.ts +0 -104
- package/src/scene/layers/nodeCard.tsx +0 -164
- package/src/scene/layers/renderLayer.tsx +0 -70
- package/src/scene/layers/shapeLayers.ts +0 -201
- package/src/scene/paths/bezierEdit.ts +0 -208
- package/src/scene/scene.css +0 -874
- package/src/scene/text/SceneTextOverlay.tsx +0 -161
- package/src/scene/text/sceneTextChannel.ts +0 -46
- package/src/scene/text/sceneTextConfig.ts +0 -31
- package/src/scene/text/sceneTiptap.ts +0 -36
- package/src/scene/text/useSceneTextEditing.ts +0 -39
- package/src/scene/tools/ConnectTool.ts +0 -209
- package/src/scene/tools/DrawingConnectTool.ts +0 -231
- package/src/scene/tools/PathTool.ts +0 -158
- package/src/scene/tools/PlaceTool.ts +0 -47
- package/src/scene/tools/SceneTool.ts +0 -85
- package/src/scene/tools/SelectTool.ts +0 -300
- package/src/scene/tools/ShapeTool.ts +0 -143
- package/src/scene/tools/TextTool.ts +0 -72
- package/src/scene/tools/TokenTool.ts +0 -95
- package/src/scene/tools/createDrawShapeTool.ts +0 -82
- package/src/selectionConversions.ts +0 -155
- package/src/styles/ascii-diagram.css +0 -79
- package/src/styles/ascii-timeline.css +0 -596
- package/src/styles/code-context.css +0 -155
- package/src/styles/code-snippet.css +0 -76
- package/src/styles/diagram.css +0 -183
- package/src/styles/editor.css +0 -7131
- package/src/styles/folder-view.css +0 -210
- package/src/styles/image-edit-affordance.css +0 -201
- package/src/styles/index.css +0 -20
- package/src/styles/mermaid-diagram.css +0 -487
- package/src/styles/tree-view.css +0 -189
- package/src/teleprompter/TeleprompterControls.tsx +0 -218
- package/src/teleprompter/TeleprompterSelfView.tsx +0 -22
- package/src/teleprompter/TeleprompterSurface.tsx +0 -267
- package/src/teleprompter/TeleprompterView.tsx +0 -338
- package/src/teleprompter/canvasRenderer.ts +0 -161
- package/src/teleprompter/floatingWindow.ts +0 -352
- package/src/teleprompter/index.ts +0 -61
- package/src/teleprompter/pcmWorklet.ts +0 -62
- package/src/teleprompter/recording/insertPreamble.ts +0 -80
- package/src/teleprompter/recording/narrationSave.ts +0 -134
- package/src/teleprompter/recording/useNarrationRecorder.ts +0 -367
- package/src/teleprompter/scrollModel.ts +0 -85
- package/src/teleprompter/teleprompterTheme.ts +0 -303
- package/src/teleprompter/types.ts +0 -38
- package/src/teleprompter/useFloatingWindow.ts +0 -74
- package/src/teleprompter/useMicAnalysis.ts +0 -211
- package/src/teleprompter/useTeleprompter.ts +0 -421
- package/src/templateContentPreviewResolver.ts +0 -360
- package/src/timeline/TimelineEditorWidget.tsx +0 -861
- package/src/timeline/TimelineViewExtension.ts +0 -252
- package/src/timeline/__tests__/TimelineEditorWidget.test.tsx +0 -414
- package/src/timeline/__tests__/TimelineViewExtension.test.ts +0 -163
- package/src/timeline/__tests__/timelineCommands.test.ts +0 -359
- package/src/timeline/__tests__/timelineOps.test.ts +0 -277
- package/src/timeline/__tests__/timelinePaste.test.ts +0 -34
- package/src/timeline/timelineCommands.ts +0 -421
- package/src/timeline/timelineData.ts +0 -54
- package/src/timeline/timelineOps.ts +0 -381
- package/src/timeline/timelinePaste.ts +0 -8
- package/src/timelineSource.ts +0 -244
- package/src/tiptap/TiptapAudio.tsx +0 -86
- package/src/tiptap/TiptapVideo.tsx +0 -119
- package/src/tiptap/useResolvedMediaSrc.ts +0 -47
- package/src/tiptapBridge.ts +0 -986
- package/src/tooltipPlacement.ts +0 -13
- package/src/transformStyleId.ts +0 -17
- package/src/transitionCatalog.ts +0 -159
- package/src/treeview/TreeOutlineWidget.tsx +0 -390
- package/src/treeview/TreeViewExtension.ts +0 -250
- package/src/treeview/__tests__/TreeOutlineWidget.test.tsx +0 -156
- package/src/treeview/__tests__/TreeViewExtension.test.ts +0 -122
- package/src/treeview/__tests__/treeOps.test.ts +0 -177
- package/src/treeview/__tests__/treePaste.test.ts +0 -40
- package/src/treeview/__tests__/treeViewCommands.test.ts +0 -179
- package/src/treeview/treeOps.ts +0 -231
- package/src/treeview/treePaste.ts +0 -13
- package/src/treeview/treeViewCommands.ts +0 -99
- package/src/treeview/treeViewData.ts +0 -41
- package/src/types/monaco-shims.d.ts +0 -10
- package/src/useBlockNavigator.ts +0 -153
- package/src/useHeadingLayout.ts +0 -294
- package/src/useMonacoLoader.ts +0 -82
- package/src/useTimelineClock.ts +0 -76
- package/src/utils/collectInlineFontAwesomeCss.ts +0 -69
- package/src/utils/dropUtils.ts +0 -136
- package/src/utils/normalizeMalformedAssetUrl.ts +0 -22
- package/src/writeCanvasSettings.ts +0 -30
- package/src/wysiwygImageUpload.ts +0 -113
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 Bendyline LLC
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/NOTICE.md
ADDED
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
# Third-Party Notices for @bendyline/squisq-editor-react
|
|
2
|
+
|
|
3
|
+
This notice applies to the `@bendyline/squisq-editor-react` npm package.
|
|
4
|
+
Squisq-authored code is licensed under the MIT license in `LICENSE`.
|
|
5
|
+
Third-party components remain under their respective license terms.
|
|
6
|
+
|
|
7
|
+
## Runtime and peer dependencies
|
|
8
|
+
|
|
9
|
+
| Package | Version | License | Repository |
|
|
10
|
+
| ------------------------------ | --------- | ----------------------------- | -------------------------------------------- |
|
|
11
|
+
| @bendyline/squisq | 2.1.0 | MIT | https://github.com/bendyline/squisq |
|
|
12
|
+
| @bendyline/squisq-formats | 2.1.0 | MIT | https://github.com/bendyline/squisq |
|
|
13
|
+
| @bendyline/squisq-react | 2.1.0 | MIT | https://github.com/bendyline/squisq |
|
|
14
|
+
| @fortawesome/fontawesome-free | 7.2.0 | CC-BY-4.0 AND OFL-1.1 AND MIT | https://github.com/FortAwesome/Font-Awesome |
|
|
15
|
+
| @monaco-editor/react | 4.7.0 | MIT | https://github.com/suren-atoyan/monaco-react |
|
|
16
|
+
| @tiptap/extension-image | 2.27.2 | MIT | https://tiptap.dev |
|
|
17
|
+
| @tiptap/extension-link | 2.27.2 | MIT | https://tiptap.dev |
|
|
18
|
+
| @tiptap/extension-mention | 2.27.2 | MIT | https://tiptap.dev |
|
|
19
|
+
| @tiptap/extension-placeholder | 2.27.2 | MIT | https://tiptap.dev |
|
|
20
|
+
| @tiptap/extension-table | 2.27.2 | MIT | https://tiptap.dev |
|
|
21
|
+
| @tiptap/extension-table-cell | 2.27.2 | MIT | https://tiptap.dev |
|
|
22
|
+
| @tiptap/extension-table-header | 2.27.2 | MIT | https://tiptap.dev |
|
|
23
|
+
| @tiptap/extension-table-row | 2.27.2 | MIT | https://tiptap.dev |
|
|
24
|
+
| @tiptap/extension-task-item | 2.27.2 | MIT | https://tiptap.dev |
|
|
25
|
+
| @tiptap/extension-task-list | 2.27.2 | MIT | https://tiptap.dev |
|
|
26
|
+
| @tiptap/pm | 2.27.2 | MIT | https://tiptap.dev |
|
|
27
|
+
| @tiptap/react | 2.27.2 | MIT | https://tiptap.dev |
|
|
28
|
+
| @tiptap/starter-kit | 2.27.2 | MIT | https://tiptap.dev |
|
|
29
|
+
| @tiptap/suggestion | 2.27.2 | MIT | https://tiptap.dev |
|
|
30
|
+
| mermaid | 11.16.0 | MIT | https://github.com/mermaid-js/mermaid |
|
|
31
|
+
| type-fest | 4.41.0 | MIT OR CC0-1.0 | https://github.com/sindresorhus/type-fest |
|
|
32
|
+
| monaco-editor _(peer)_ | >=0.50.0 | MIT | https://github.com/microsoft/monaco-editor |
|
|
33
|
+
| react _(peer)_ | ^18 / ^19 | MIT | https://github.com/facebook/react |
|
|
34
|
+
| react-dom _(peer)_ | ^18 / ^19 | MIT | https://github.com/facebook/react |
|
|
35
|
+
|
|
36
|
+
Font Awesome Free contains icon artwork under CC-BY-4.0, font files under
|
|
37
|
+
OFL-1.1, and CSS/JavaScript under MIT. Attribution is required when its icon
|
|
38
|
+
artwork is redistributed. Mermaid is Copyright (c) 2014-2022 Knut Sveidqvist
|
|
39
|
+
and is distributed under the MIT License. Complete license texts are included
|
|
40
|
+
in the respective dependency distributions and source repositories.
|
package/dist/index.d.ts
CHANGED
|
@@ -2,7 +2,7 @@ import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
|
2
2
|
import * as react from 'react';
|
|
3
3
|
import { ReactNode, CSSProperties, RefObject, KeyboardEvent } from 'react';
|
|
4
4
|
import { Doc, MediaProvider, Theme, CustomTemplateDefinition, ThemeSeedColors, ViewportPreset, ViewportConfig, Block, MediaEntry, DiagramEdgeAnchor, SurfaceScheme, ImageEditDoc, ImageEditLayer } from '@bendyline/squisq/schemas';
|
|
5
|
-
import { MarkdownDocument } from '@bendyline/squisq/markdown';
|
|
5
|
+
import { MarkdownDocument, ResourcePolicy } from '@bendyline/squisq/markdown';
|
|
6
6
|
import { ContentContainer } from '@bendyline/squisq/storage';
|
|
7
7
|
import { DocumentVersionManager, SaveVersionOptions, SaveVersionResult, PrunePolicy } from '@bendyline/squisq/versions';
|
|
8
8
|
import * as _tiptap_core from '@tiptap/core';
|
|
@@ -365,6 +365,13 @@ interface EditorContextValue extends EditorState, EditorActions {
|
|
|
365
365
|
* path link. When unset, the dialog falls back to URL-only.
|
|
366
366
|
*/
|
|
367
367
|
documentLinkProvider: DocumentLinkProvider | null;
|
|
368
|
+
/**
|
|
369
|
+
* Extra link schemes the host intercepts itself (e.g. an app-internal
|
|
370
|
+
* navigation protocol). The link dialog validates against core's
|
|
371
|
+
* `sanitizeUrl` with these allowed, so authors aren't told a scheme the
|
|
372
|
+
* host DOES resolve is unsupported. Executable schemes stay refused.
|
|
373
|
+
*/
|
|
374
|
+
linkSchemes: readonly string[] | undefined;
|
|
368
375
|
}
|
|
369
376
|
type ImageDisplayMode = 'inline' | 'thumbnail';
|
|
370
377
|
/**
|
|
@@ -429,6 +436,12 @@ interface EditorProviderProps {
|
|
|
429
436
|
* Omit to fall back to URL-only link insertion.
|
|
430
437
|
*/
|
|
431
438
|
documentLinkProvider?: DocumentLinkProvider | null;
|
|
439
|
+
/**
|
|
440
|
+
* Extra link schemes this host resolves itself. Threaded into the link
|
|
441
|
+
* dialog's `sanitizeUrl` check so a host-custom protocol is accepted;
|
|
442
|
+
* executable schemes are refused regardless.
|
|
443
|
+
*/
|
|
444
|
+
linkSchemes?: readonly string[];
|
|
432
445
|
/**
|
|
433
446
|
* Whether the in-editor media recorder is available in the toolbar.
|
|
434
447
|
* Defaults to true. Set to false to suppress the recorder affordance
|
|
@@ -535,7 +548,7 @@ interface ViewPreferences {
|
|
|
535
548
|
/** Document vs. block-at-a-time layout. */
|
|
536
549
|
layoutMode?: LayoutMode;
|
|
537
550
|
}
|
|
538
|
-
declare function EditorProvider({ initialMarkdown, initialView, articleId, colorScheme: initialColorScheme, workspaceContainer, allowVersioning, versionBasename, versioningPrunePolicy, versioningAutoSaveIdleMs, onSaveVersion, mediaProvider, imageDisplayMode, mentionProvider, documentLinkProvider, allowRecording, allowNarrate, fileName, language, findMode: controlledFindMode, onFindModeChange, inlinePreview, showStatusBar, outline, blockTags, blockTagVisibility: initialBlockTagVisibility, themeInheritance, layoutMode, viewPreferences, onViewPreferencesChange, children, }: EditorProviderProps): react_jsx_runtime.JSX.Element;
|
|
551
|
+
declare function EditorProvider({ initialMarkdown, initialView, articleId, colorScheme: initialColorScheme, workspaceContainer, allowVersioning, versionBasename, versioningPrunePolicy, versioningAutoSaveIdleMs, onSaveVersion, mediaProvider, imageDisplayMode, mentionProvider, documentLinkProvider, linkSchemes, allowRecording, allowNarrate, fileName, language, findMode: controlledFindMode, onFindModeChange, inlinePreview, showStatusBar, outline, blockTags, blockTagVisibility: initialBlockTagVisibility, themeInheritance, layoutMode, viewPreferences, onViewPreferencesChange, children, }: EditorProviderProps): react_jsx_runtime.JSX.Element;
|
|
539
552
|
|
|
540
553
|
/**
|
|
541
554
|
* Host-supplied context sections rendered INSIDE the Monaco (raw/code)
|
|
@@ -714,6 +727,8 @@ interface EditorShellProps {
|
|
|
714
727
|
toolbarSlotAfterActions?: ReactNode;
|
|
715
728
|
/** Content rendered at the rightmost end of the toolbar, after all other elements. */
|
|
716
729
|
toolbarSlotRight?: ReactNode;
|
|
730
|
+
/** Host-supplied content rendered at the right edge of the bottom status bar. */
|
|
731
|
+
statusBarSlotRight?: ReactNode;
|
|
717
732
|
/**
|
|
718
733
|
* Whether to show the "Play" (preview) tab in the toolbar. When false, the
|
|
719
734
|
* tab and its preview panel are hidden, and ⌘3 becomes a no-op. Use this
|
|
@@ -770,8 +785,8 @@ interface EditorShellProps {
|
|
|
770
785
|
*/
|
|
771
786
|
writeCanvasSettings?: WriteCanvasSettings;
|
|
772
787
|
/**
|
|
773
|
-
* Render the bottom status bar (word / character / line / block counts
|
|
774
|
-
* and
|
|
788
|
+
* Render the bottom status bar (word / character / line / block counts,
|
|
789
|
+
* parse errors, and optional host status). Defaults to `true`. Set to `false` in
|
|
775
790
|
* embedded surfaces — chat composers and other short-form inputs —
|
|
776
791
|
* where the stats are noise.
|
|
777
792
|
*/
|
|
@@ -827,6 +842,14 @@ interface EditorShellProps {
|
|
|
827
842
|
* remote API, …) implement this; the editor stays agnostic.
|
|
828
843
|
*/
|
|
829
844
|
documentLinkProvider?: DocumentLinkProvider | null;
|
|
845
|
+
/**
|
|
846
|
+
* Extra link schemes this host resolves itself (e.g. an app-internal
|
|
847
|
+
* navigation protocol). The link dialog validates typed URLs against
|
|
848
|
+
* core's `sanitizeUrl` with these allowed, so an author isn't told a
|
|
849
|
+
* scheme the host DOES handle is unsupported. Executable schemes
|
|
850
|
+
* (`javascript:`, `vbscript:`, `data:`) are refused regardless.
|
|
851
|
+
*/
|
|
852
|
+
linkSchemes?: readonly string[];
|
|
830
853
|
/**
|
|
831
854
|
* Whether the in-editor media recorder is surfaced in the toolbar.
|
|
832
855
|
* Defaults to true — when a `mediaProvider` is wired, a record
|
|
@@ -969,7 +992,7 @@ interface EditorShellProps {
|
|
|
969
992
|
* Complete markdown editor shell with toolbar, view switcher, and three
|
|
970
993
|
* editing modes: Raw (Monaco), WYSIWYG (Tiptap), and Preview.
|
|
971
994
|
*/
|
|
972
|
-
declare function EditorShell({ initialMarkdown, initialView, articleId, basePath, onChange, colorScheme, className, height, minHeight, maxHeight, mediaProvider, workspaceContainer, allowVersioning, versionBasename, versioningPrunePolicy, versioningAutoSaveIdleMs, onSaveVersion, showFilesToggle, toolbarSlotLeft, toolbarSlotAfterActions, toolbarSlotRight, showPlayTab, submitOnEnter, codeContext, fullWidth, uxFont, thinMargins, writeCanvasSettings, showStatusBar, imageDisplayMode, fileName, language, findMode, onFindModeChange, mentionProvider, documentLinkProvider, allowRecording, allowNarrate, placeholder, readOnly, imageSrc, imageAlt, imageMode, imageEditorContainer, onImageExport, inlinePreview, inlinePreviewWidth, outline, outlineWidth, blockTags, blockTagVisibility, themeInheritance, viewPreferences, onViewPreferencesChange, themeOverride, }: EditorShellProps): react_jsx_runtime.JSX.Element;
|
|
995
|
+
declare function EditorShell({ initialMarkdown, initialView, articleId, basePath, onChange, colorScheme, className, height, minHeight, maxHeight, mediaProvider, workspaceContainer, allowVersioning, versionBasename, versioningPrunePolicy, versioningAutoSaveIdleMs, onSaveVersion, showFilesToggle, toolbarSlotLeft, toolbarSlotAfterActions, toolbarSlotRight, statusBarSlotRight, showPlayTab, submitOnEnter, codeContext, fullWidth, uxFont, thinMargins, writeCanvasSettings, showStatusBar, imageDisplayMode, fileName, language, findMode, onFindModeChange, mentionProvider, documentLinkProvider, linkSchemes, allowRecording, allowNarrate, placeholder, readOnly, imageSrc, imageAlt, imageMode, imageEditorContainer, onImageExport, inlinePreview, inlinePreviewWidth, outline, outlineWidth, blockTags, blockTagVisibility, themeInheritance, viewPreferences, onViewPreferencesChange, themeOverride, }: EditorShellProps): react_jsx_runtime.JSX.Element;
|
|
973
996
|
|
|
974
997
|
/**
|
|
975
998
|
* Bridges a host-supplied {@link CodeContext} onto the live Monaco editor:
|
|
@@ -1727,6 +1750,13 @@ interface PreviewSettings {
|
|
|
1727
1750
|
/** Config for the docked theme designer, or null when closed. Rendered by
|
|
1728
1751
|
* `<ThemeDesignerDock>` in the editor's content row. */
|
|
1729
1752
|
themeDesigner: ThemeDesignerConfig | null;
|
|
1753
|
+
/**
|
|
1754
|
+
* Set when a theme write was ABORTED because the document source could not
|
|
1755
|
+
* be read. The write is skipped rather than merged onto an empty list (which
|
|
1756
|
+
* would erase the doc's other custom themes/templates), so this must be
|
|
1757
|
+
* shown — otherwise the save looks like a silent no-op.
|
|
1758
|
+
*/
|
|
1759
|
+
themeSaveError: string | null;
|
|
1730
1760
|
}
|
|
1731
1761
|
/** Everything `<ThemeDesignerDock>` needs to render the designer pane. */
|
|
1732
1762
|
interface ThemeDesignerConfig {
|
|
@@ -2179,20 +2209,17 @@ interface MediaBinProps {
|
|
|
2179
2209
|
}
|
|
2180
2210
|
declare function MediaBin({ mediaProvider, isDark, refreshKey, usedMediaPaths, onMediaUploaded, onMediaRemoved, onCountChange, }: MediaBinProps): react_jsx_runtime.JSX.Element;
|
|
2181
2211
|
|
|
2182
|
-
/**
|
|
2183
|
-
* StatusBar
|
|
2184
|
-
*
|
|
2185
|
-
* Bottom status bar showing document statistics and parse status.
|
|
2186
|
-
*/
|
|
2187
2212
|
interface StatusBarProps {
|
|
2188
2213
|
/** Additional class name */
|
|
2189
2214
|
className?: string;
|
|
2215
|
+
/** Host-supplied status content rendered at the right edge. */
|
|
2216
|
+
slotRight?: ReactNode;
|
|
2190
2217
|
}
|
|
2191
2218
|
/**
|
|
2192
2219
|
* Status bar displaying document statistics: character count, word count,
|
|
2193
|
-
* block count, and
|
|
2220
|
+
* block count, parse errors, and optional host status.
|
|
2194
2221
|
*/
|
|
2195
|
-
declare function StatusBar({ className }: StatusBarProps): react_jsx_runtime.JSX.Element;
|
|
2222
|
+
declare function StatusBar({ className, slotRight }: StatusBarProps): react_jsx_runtime.JSX.Element;
|
|
2196
2223
|
|
|
2197
2224
|
/**
|
|
2198
2225
|
* TooltipLayer
|
|
@@ -2637,6 +2664,27 @@ interface DiagramCanvasProps {
|
|
|
2637
2664
|
}
|
|
2638
2665
|
declare function DiagramCanvas({ nodes: incomingNodes, edges: incomingEdges, onCommand, showMaximize, maximized, onToggleMaximize, activeToolId: controlledToolId, onActiveToolIdChange, onSelectionChange, textChannel, }: DiagramCanvasProps): react_jsx_runtime.JSX.Element;
|
|
2639
2666
|
|
|
2667
|
+
/**
|
|
2668
|
+
* Shared position-registry remapping for the fence-widget families (ascii
|
|
2669
|
+
* diagram, tree, timeline, mermaid, repairable).
|
|
2670
|
+
*
|
|
2671
|
+
* Each family keeps a registry of `{ id, pos }` entries: a synthetic session
|
|
2672
|
+
* id per claimed code fence, plus that fence's current document position.
|
|
2673
|
+
* The id is what keys the widget decoration, so preserving it across a
|
|
2674
|
+
* transaction is what keeps the mounted React root — and all of its
|
|
2675
|
+
* unpersisted state (pan/zoom, height, `sourceVisible`, collapse set) —
|
|
2676
|
+
* alive. This module owns the one rule for deciding which old id belongs to
|
|
2677
|
+
* which new position; it lived as five near-identical copies before.
|
|
2678
|
+
*/
|
|
2679
|
+
|
|
2680
|
+
/** One registered fence: a stable session id at a live document position. */
|
|
2681
|
+
interface FenceBlockEntry {
|
|
2682
|
+
/** Synthetic session id, stable across edits to one fence. */
|
|
2683
|
+
id: string;
|
|
2684
|
+
/** Document position of the codeBlock node at the current state. */
|
|
2685
|
+
pos: number;
|
|
2686
|
+
}
|
|
2687
|
+
|
|
2640
2688
|
/**
|
|
2641
2689
|
* AsciiDiagramExtension — Tiptap/ProseMirror plugin that turns code blocks
|
|
2642
2690
|
* containing ASCII box-and-line diagrams into interactive diagram canvases.
|
|
@@ -2663,12 +2711,7 @@ declare function DiagramCanvas({ nodes: incomingNodes, edges: incomingEdges, onC
|
|
|
2663
2711
|
* doesn't kick the user back to a raw code block mid-edit.
|
|
2664
2712
|
*/
|
|
2665
2713
|
|
|
2666
|
-
|
|
2667
|
-
/** Synthetic session id (`ascii-N`), stable across edits for one block. */
|
|
2668
|
-
id: string;
|
|
2669
|
-
/** Document position of the codeBlock node at the current state. */
|
|
2670
|
-
pos: number;
|
|
2671
|
-
}
|
|
2714
|
+
type AsciiDiagramBlockEntry = FenceBlockEntry;
|
|
2672
2715
|
interface AsciiDiagramPluginState {
|
|
2673
2716
|
entries: AsciiDiagramBlockEntry[];
|
|
2674
2717
|
decorations: DecorationSet;
|
|
@@ -2759,6 +2802,12 @@ interface ApplyAsciiDiagramCommandOptions {
|
|
|
2759
2802
|
* is re-recognized even after it's flattened. No-op (returns false) only when
|
|
2760
2803
|
* BOTH the text is already identical AND the language already matches, so
|
|
2761
2804
|
* history stays clean on a true no-op.
|
|
2805
|
+
*
|
|
2806
|
+
* This is the single write boundary for the diagram, tree AND timeline
|
|
2807
|
+
* families, so it is also where the editor's read-only authority is enforced.
|
|
2808
|
+
* A mounted canvas/outline outlives the render that created its controls, so
|
|
2809
|
+
* a host flipping the editor read-only (saving, locked, permission change)
|
|
2810
|
+
* must not leave a stale drag/click able to rewrite the fence.
|
|
2762
2811
|
*/
|
|
2763
2812
|
declare function replaceAsciiFenceText(editor: Editor$1, pos: number, nextText: string, ensureLanguage?: string): boolean;
|
|
2764
2813
|
/**
|
|
@@ -2790,12 +2839,7 @@ declare function applyAsciiDiagramCommand(editor: Editor$1, blockId: string, cmd
|
|
|
2790
2839
|
* mapping so the button always resolves the right fence.
|
|
2791
2840
|
*/
|
|
2792
2841
|
|
|
2793
|
-
|
|
2794
|
-
/** Synthetic session id (`repair-N`), stable across edits for one block. */
|
|
2795
|
-
id: string;
|
|
2796
|
-
/** Document position of the codeBlock node at the current state. */
|
|
2797
|
-
pos: number;
|
|
2798
|
-
}
|
|
2842
|
+
type RepairableBlockEntry = FenceBlockEntry;
|
|
2799
2843
|
interface RepairablePluginState {
|
|
2800
2844
|
entries: RepairableBlockEntry[];
|
|
2801
2845
|
decorations: DecorationSet;
|
|
@@ -2889,12 +2933,7 @@ declare function shouldPasteAsAsciiFence(text: string): boolean;
|
|
|
2889
2933
|
* model. That keeps every Mermaid diagram type and directive round-trippable.
|
|
2890
2934
|
*/
|
|
2891
2935
|
|
|
2892
|
-
|
|
2893
|
-
/** Synthetic session id, stable while this code block remains in the doc. */
|
|
2894
|
-
id: string;
|
|
2895
|
-
/** Current ProseMirror position of the `codeBlock`. */
|
|
2896
|
-
pos: number;
|
|
2897
|
-
}
|
|
2936
|
+
type MermaidDiagramBlockEntry = FenceBlockEntry;
|
|
2898
2937
|
interface MermaidDiagramPluginState {
|
|
2899
2938
|
entries: MermaidDiagramBlockEntry[];
|
|
2900
2939
|
decorations: DecorationSet;
|
|
@@ -3170,12 +3209,40 @@ declare function isMermaidFlowchartShapeId(value: string): value is MermaidFlowc
|
|
|
3170
3209
|
declare function normalizeMermaidFlowchartShape(value: string | null | undefined): MermaidFlowchartShapeId;
|
|
3171
3210
|
|
|
3172
3211
|
type MermaidFlowchartDirection = 'TB' | 'TD' | 'BT' | 'RL' | 'LR';
|
|
3212
|
+
type MermaidEditableDiagramKind = 'flowchart' | 'sequence' | 'state' | 'class' | 'er' | 'mindmap' | 'c4' | 'architecture' | 'gantt' | 'timeline' | 'journey' | 'kanban' | 'git' | 'pie' | 'quadrant' | 'sankey' | 'xy' | 'requirement';
|
|
3213
|
+
interface MermaidEditCapabilities {
|
|
3214
|
+
readonly addNode: boolean;
|
|
3215
|
+
readonly renameNode: boolean;
|
|
3216
|
+
readonly duplicateNode: boolean;
|
|
3217
|
+
readonly deleteNode: boolean;
|
|
3218
|
+
readonly connect: boolean;
|
|
3219
|
+
readonly disconnect: boolean;
|
|
3220
|
+
readonly edgeLabel: boolean;
|
|
3221
|
+
readonly shape: boolean;
|
|
3222
|
+
readonly direction: boolean;
|
|
3223
|
+
readonly properties: boolean;
|
|
3224
|
+
/** Explains why Connect is intentionally absent for ordered/data grammars. */
|
|
3225
|
+
readonly connectionHint?: string;
|
|
3226
|
+
}
|
|
3227
|
+
interface MermaidDiagramProperty {
|
|
3228
|
+
readonly id: string;
|
|
3229
|
+
readonly label: string;
|
|
3230
|
+
readonly value: string | boolean;
|
|
3231
|
+
readonly type?: 'text' | 'boolean' | 'select';
|
|
3232
|
+
readonly options?: readonly {
|
|
3233
|
+
readonly value: string;
|
|
3234
|
+
readonly label: string;
|
|
3235
|
+
}[];
|
|
3236
|
+
readonly placeholder?: string;
|
|
3237
|
+
}
|
|
3173
3238
|
interface MermaidEditableNode {
|
|
3174
3239
|
id: string;
|
|
3175
3240
|
domId: string;
|
|
3176
3241
|
label: string;
|
|
3177
3242
|
shape: MermaidFlowchartShapeId;
|
|
3178
3243
|
classes: readonly string[];
|
|
3244
|
+
/** Source adapter metadata. Never serialized into the Mermaid SVG. */
|
|
3245
|
+
origin?: Readonly<Record<string, string | number | boolean>>;
|
|
3179
3246
|
}
|
|
3180
3247
|
interface MermaidEditableEdge {
|
|
3181
3248
|
id: string;
|
|
@@ -3185,6 +3252,8 @@ interface MermaidEditableEdge {
|
|
|
3185
3252
|
type?: string;
|
|
3186
3253
|
stroke?: string;
|
|
3187
3254
|
userDefinedId?: boolean;
|
|
3255
|
+
/** Source adapter metadata. Never serialized into the Mermaid SVG. */
|
|
3256
|
+
origin?: Readonly<Record<string, string | number | boolean>>;
|
|
3188
3257
|
}
|
|
3189
3258
|
interface MermaidFlowchartModel {
|
|
3190
3259
|
kind: 'flowchart';
|
|
@@ -3192,8 +3261,20 @@ interface MermaidFlowchartModel {
|
|
|
3192
3261
|
nodes: readonly MermaidEditableNode[];
|
|
3193
3262
|
edges: readonly MermaidEditableEdge[];
|
|
3194
3263
|
}
|
|
3264
|
+
interface MermaidSourceEditableModel {
|
|
3265
|
+
kind: Exclude<MermaidEditableDiagramKind, 'flowchart'>;
|
|
3266
|
+
nodes: readonly MermaidEditableNode[];
|
|
3267
|
+
edges: readonly MermaidEditableEdge[];
|
|
3268
|
+
capabilities: MermaidEditCapabilities;
|
|
3269
|
+
properties: readonly MermaidDiagramProperty[];
|
|
3270
|
+
nodeNoun: string;
|
|
3271
|
+
edgeNoun: string;
|
|
3272
|
+
direction?: MermaidFlowchartDirection;
|
|
3273
|
+
}
|
|
3195
3274
|
/** Structured editing is additive to full Mermaid rendering, never required by it. */
|
|
3196
|
-
type MermaidEditableModel = MermaidFlowchartModel;
|
|
3275
|
+
type MermaidEditableModel = MermaidFlowchartModel | MermaidSourceEditableModel;
|
|
3276
|
+
declare function mermaidEditCapabilities(model: MermaidEditableModel): MermaidEditCapabilities;
|
|
3277
|
+
declare function mermaidDiagramProperties(model: MermaidEditableModel): readonly MermaidDiagramProperty[];
|
|
3197
3278
|
|
|
3198
3279
|
type MermaidNodeCanvasAction = 'rename' | 'shape' | 'duplicate' | 'connect' | 'delete';
|
|
3199
3280
|
interface MermaidDiagramCanvasProps {
|
|
@@ -3359,12 +3440,7 @@ declare function codeSnippetMarkdown(language: string, source: string): string;
|
|
|
3359
3440
|
* extension claims any given fence.
|
|
3360
3441
|
*/
|
|
3361
3442
|
|
|
3362
|
-
|
|
3363
|
-
/** Synthetic session id (`tree-N`), stable across edits for one block. */
|
|
3364
|
-
id: string;
|
|
3365
|
-
/** Document position of the codeBlock node at the current state. */
|
|
3366
|
-
pos: number;
|
|
3367
|
-
}
|
|
3443
|
+
type TreeBlockEntry = FenceBlockEntry;
|
|
3368
3444
|
interface TreeViewPluginState {
|
|
3369
3445
|
entries: TreeBlockEntry[];
|
|
3370
3446
|
decorations: DecorationSet;
|
|
@@ -3488,12 +3564,7 @@ declare function shouldPasteAsTreeFence(text: string): boolean;
|
|
|
3488
3564
|
* truth. Every semantic edit is rendered back through the core codec.
|
|
3489
3565
|
*/
|
|
3490
3566
|
|
|
3491
|
-
|
|
3492
|
-
/** Synthetic session id, stable across edits to one fence. */
|
|
3493
|
-
id: string;
|
|
3494
|
-
/** Current document position of the codeBlock node. */
|
|
3495
|
-
pos: number;
|
|
3496
|
-
}
|
|
3567
|
+
type TimelineBlockEntry = FenceBlockEntry;
|
|
3497
3568
|
interface TimelineViewPluginState {
|
|
3498
3569
|
entries: TimelineBlockEntry[];
|
|
3499
3570
|
decorations: DecorationSet;
|
|
@@ -3990,10 +4061,17 @@ interface ScreenStreamOptions {
|
|
|
3990
4061
|
/**
|
|
3991
4062
|
* Handle returned by {@link requestScreenStream}. The `stream` is what
|
|
3992
4063
|
* gets handed to `MediaRecorder`; the `dispose()` callback shuts down
|
|
3993
|
-
* any auxiliary resources (
|
|
3994
|
-
* must also stop the stream's tracks
|
|
3995
|
-
* => t.stop())` when done —
|
|
3996
|
-
* the stream itself.
|
|
4064
|
+
* any auxiliary resources (the mic-mix `AudioContext` plus the raw
|
|
4065
|
+
* source tracks feeding it). Callers must also stop the stream's tracks
|
|
4066
|
+
* via `stream.getTracks().forEach(t => t.stop())` when done —
|
|
4067
|
+
* `dispose()` cleans up everything that isn't the stream itself.
|
|
4068
|
+
*
|
|
4069
|
+
* IMPORTANT for callers: when the microphone is mixed in, the raw
|
|
4070
|
+
* system-audio / mic tracks are deliberately NOT members of `stream`
|
|
4071
|
+
* (only the single mixed output track is). So stopping `stream`'s tracks
|
|
4072
|
+
* alone leaves those captures live — `dispose()` is what releases them,
|
|
4073
|
+
* and it must always be called alongside the stream teardown or the
|
|
4074
|
+
* screen-share indicator stays lit.
|
|
3997
4075
|
*/
|
|
3998
4076
|
interface ScreenStreamHandle {
|
|
3999
4077
|
stream: MediaStream;
|
|
@@ -4217,22 +4295,47 @@ declare function buildNarrationSavePlan(args: NarrationSavePlanArgs): NarrationS
|
|
|
4217
4295
|
interface ExecuteNarrationSaveDeps {
|
|
4218
4296
|
mediaProvider: MediaProvider;
|
|
4219
4297
|
container: ContentContainer | null;
|
|
4220
|
-
|
|
4298
|
+
/**
|
|
4299
|
+
* Read the LIVE markdown source at write time. Deliberately a getter, not
|
|
4300
|
+
* a snapshot: the media writes above are async, and a value captured before
|
|
4301
|
+
* them would compose the preamble from a stale source and clobber anything
|
|
4302
|
+
* that landed in between.
|
|
4303
|
+
*/
|
|
4304
|
+
getMarkdownSource: () => string;
|
|
4221
4305
|
setMarkdownSource: (next: string) => void;
|
|
4222
4306
|
bumpMediaRevision: () => void;
|
|
4223
4307
|
}
|
|
4308
|
+
/**
|
|
4309
|
+
* What a save attempt has already committed. Passed back in on a retry so a
|
|
4310
|
+
* second attempt REUSES the audio it already wrote instead of writing another
|
|
4311
|
+
* timestamped file (and orphaning the first).
|
|
4312
|
+
*
|
|
4313
|
+
* Mutated in place by {@link executeNarrationSave} as each step lands, which
|
|
4314
|
+
* is what makes the record survive the throw that aborted the attempt.
|
|
4315
|
+
*/
|
|
4316
|
+
interface NarrationSaveProgress {
|
|
4317
|
+
audioPath?: string;
|
|
4318
|
+
cameraPath?: string | null;
|
|
4319
|
+
sidecarPath?: string;
|
|
4320
|
+
}
|
|
4224
4321
|
interface NarrationSaveResult {
|
|
4225
4322
|
audioPath: string;
|
|
4226
4323
|
cameraPath: string | null;
|
|
4227
4324
|
sidecarPath: string;
|
|
4228
4325
|
}
|
|
4229
|
-
/**
|
|
4326
|
+
/**
|
|
4327
|
+
* Execute a save plan: media writes, sidecar, then the single markdown write.
|
|
4328
|
+
*
|
|
4329
|
+
* Every step is idempotent against `progress`. A failed attempt leaves its
|
|
4330
|
+
* completed steps recorded there, so retrying with the SAME progress object
|
|
4331
|
+
* resumes rather than restarts — no duplicate audio, no second sidecar.
|
|
4332
|
+
*/
|
|
4230
4333
|
declare function executeNarrationSave(plan: NarrationSavePlan, take: {
|
|
4231
4334
|
audioBlob: Blob;
|
|
4232
4335
|
audioMime: string;
|
|
4233
4336
|
cameraBlob: Blob | null;
|
|
4234
4337
|
cameraMime: string | null;
|
|
4235
|
-
}, deps: ExecuteNarrationSaveDeps): Promise<NarrationSaveResult>;
|
|
4338
|
+
}, deps: ExecuteNarrationSaveDeps, progress?: NarrationSaveProgress): Promise<NarrationSaveResult>;
|
|
4236
4339
|
|
|
4237
4340
|
/**
|
|
4238
4341
|
* Pure markdown edit: insert (or replace) the narration reference at the
|
|
@@ -4241,12 +4344,40 @@ declare function executeNarrationSave(plan: NarrationSavePlan, take: {
|
|
|
4241
4344
|
* The narration take is referenced by a preamble media annotation —
|
|
4242
4345
|
* `{[audio src=audio/narration-….webm anchor=document]}` — the canonical
|
|
4243
4346
|
* authored form `markdownToDoc` lifts into `doc.documentMedia`. A prior
|
|
4244
|
-
* teleprompter take's line
|
|
4245
|
-
*
|
|
4246
|
-
*
|
|
4247
|
-
* next line as an inline `<video>` (deliberately NOT doc-anchored:
|
|
4347
|
+
* teleprompter take's line is replaced, so retakes swap the reference
|
|
4348
|
+
* instead of stacking narrations. The optional camera companion rides on
|
|
4349
|
+
* the next line as an inline `<video>` (deliberately NOT doc-anchored:
|
|
4248
4350
|
* document-anchored video renders full-bleed behind every block and is
|
|
4249
4351
|
* excluded from export audio — not a talking head).
|
|
4352
|
+
*
|
|
4353
|
+
* ## Matching a prior take by ROLE, not by path
|
|
4354
|
+
*
|
|
4355
|
+
* These patterns deliberately do not encode a `audio/narration-` /
|
|
4356
|
+
* `video/narration-cam-` path prefix. `narrationSave` treats the path
|
|
4357
|
+
* RETURNED by `MediaProvider.addMedia` as authoritative because providers
|
|
4358
|
+
* may rename or relocate the file, so a path-shaped matcher misses the
|
|
4359
|
+
* very annotation it wrote and the next retake stacks a second one — two
|
|
4360
|
+
* document-anchored audio tracks playing at once.
|
|
4361
|
+
*
|
|
4362
|
+
* Instead we match the annotation's ROLE, scoped to POSITION:
|
|
4363
|
+
*
|
|
4364
|
+
* - Narration: a `{[audio … anchor=document …]}` line. Document-anchored
|
|
4365
|
+
* audio is a single-occupancy slot (it becomes `doc.documentMedia` and
|
|
4366
|
+
* is what `applyNarrationTiming` / `resolveAudioMapping` treat as *the*
|
|
4367
|
+
* narration), so replacing whatever occupies it is exactly right —
|
|
4368
|
+
* two of them is never a valid document.
|
|
4369
|
+
* - Camera: a `<video …></video>` line sitting immediately after that
|
|
4370
|
+
* narration line (blank lines allowed between). Adjacency to the
|
|
4371
|
+
* preamble is the role marker here — an inline `<video>` carries no
|
|
4372
|
+
* anchor of its own, and this is the exact shape `cameraVideoLine`
|
|
4373
|
+
* emits as part of the same insert.
|
|
4374
|
+
*
|
|
4375
|
+
* Both matchers are confined to the PREAMBLE REGION — the blank-padded run
|
|
4376
|
+
* at the insertion point (top of file, or just after the frontmatter fence).
|
|
4377
|
+
* Role alone is not enough: matching document-wide would let a retake
|
|
4378
|
+
* silently replace a background-music annotation the user wrote further
|
|
4379
|
+
* down, or consume whichever `<video>` of theirs happened to follow it.
|
|
4380
|
+
* Content outside the region we wrote is never touched.
|
|
4250
4381
|
*/
|
|
4251
4382
|
declare function narrationAnnotationLine(audioPath: string): string;
|
|
4252
4383
|
declare function cameraVideoLine(cameraPath: string): string;
|
|
@@ -4652,6 +4783,8 @@ interface UseImageEditorOptions {
|
|
|
4652
4783
|
* `assets/source.<ext>` so the doc is portable.
|
|
4653
4784
|
*/
|
|
4654
4785
|
initialSrc?: string;
|
|
4786
|
+
/** Policy and byte/time limits for fetching `initialSrc`. */
|
|
4787
|
+
resourcePolicy?: ResourcePolicy;
|
|
4655
4788
|
/** Override the state filename. Defaults to `state.json`. */
|
|
4656
4789
|
stateFilename?: string;
|
|
4657
4790
|
/** Enable version history. Default: `false`. */
|
|
@@ -4685,4 +4818,4 @@ interface UseImageEditorReturn {
|
|
|
4685
4818
|
}
|
|
4686
4819
|
declare function useImageEditor(options: UseImageEditorOptions): UseImageEditorReturn;
|
|
4687
4820
|
|
|
4688
|
-
export { ALL_PICKER_ENTRIES, type AddTimelineEventOptions, type AddTimelineEventResult, type ApplyAsciiDiagramCommandOptions, type AsciiDiagramBlockEntry, AsciiDiagramExtension, type AsciiDiagramExtensionOptions, type AsciiDiagramPluginState, type AsciiDiagramView, AsciiDiagramWidget, BlockCardView, type BlockCardViewProps, type BlockNavigator, BlockPropertiesPopover, type BlockPropertiesPopoverProps, type BlockRange, type BlockSlice, type BlockTagVisibility, CODE_SNIPPET_KEY, CODE_SNIPPET_LANGUAGES, type CameraStreamOptions, type CanvasRect, type CanvasSink, type CaptureKind, type CodeContext, type CodeContextSection, CodeContextZones, type CodeSnippetBlockEntry, type CodeSnippetData, CodeSnippetExtension, type CodeSnippetExtensionOptions, type CodeSnippetLanguage, type CodeSnippetPluginState, CodeSnippetWidget, type CodeSnippetWidgetProps, type CustomTemplateContextValue, CustomTemplateProvider, type CustomTemplateProviderProps, type CustomThemeContextValue, CustomThemeProvider, type CustomThemeProviderProps, DEFAULT_MERMAID_DIAGRAM_TYPE, DEFAULT_TELEPROMPTER_PREFS, DiagramCanvas, type DiagramCommand, type DiagramData, type DiagramEdge, type DiagramNode, type DirectionModel, type DocCustomTemplates, type DocCustomThemes, type DocumentLinkCandidate, type DocumentLinkProvider, DocumentSettingsDialog, type DocumentSettingsDialogProps, type DragContentType, type DropTarget, DropZoneOverlay, type DropZoneOverlayProps, EMPTY_TRANSITION, EYE_LINE_FRACTION, type EditorActions, type EditorColorScheme, type EditorContextValue, type EditorMode, EditorProvider, type EditorProviderProps, EditorShell, type EditorShellProps, type EditorState, type EditorView, EmojiPicker, type EmojiPickerProps, type FileCategory, type FileKind, type FloatOpenOptions, type FloatTier, type FloatingWindowHandle, type FloatingWindowManager, type FolderEntry, FolderView, type FolderViewProps, type HeadingTransitionAttrs, HeadingWithTemplate, type ImageDisplayMode, ImageEditor, type ImageEditorAction, type ImageEditorProps, type ImageEditorState, type ImageEditorTool, ImageViewer, type ImageViewerProps, ImportThemeSection, type ImportThemeSectionProps, type ImportedThemeResult, InlinePreviewGutter, type InlinePreviewGutterProps, JsonEditor, type JsonEditorProps, type LayoutMode, MERMAID_DIAGRAM_KEY, MERMAID_DIAGRAM_TYPES, MERMAID_FLOWCHART_SHAPES, MediaBin, type MediaBinProps, type MediaClipPatch, type MentionCandidate, type MentionProvider, type MermaidDiagramBlockEntry, MermaidDiagramCanvas, type MermaidDiagramCanvasProps, type MermaidDiagramCategory, type MermaidDiagramData, MermaidDiagramExtension, type MermaidDiagramExtensionOptions, type MermaidDiagramPluginState, type MermaidDiagramPreview, type MermaidDiagramType, MermaidDiagramTypeThumbnail, MermaidDiagramWidget, type MermaidDiagramWidgetProps, type MermaidEditableEdge, type MermaidEditableModel, type MermaidEditableNode, type MermaidFlowchartDirection, type MermaidFlowchartModel, type MermaidFlowchartShape, type MermaidFlowchartShapeId, type MermaidNodeCanvasAction, type MermaidRenderResult, MermaidShapePalette, type MermaidShapePaletteProps, type MicAnalysisHandle, type MicAnalysisStatus, type MonacoWorkerConstructor, type MonacoWorkerConstructors, type NarrationRecorderController, type NarrationRecorderState, type NarrationSavePlan, type NarrationSaveResult, type NarrationTake, OutlinePanel, type OutlinePanelProps, PCM_WORKLET_NAME, PCM_WORKLET_SOURCE, PICKER_CATEGORIES, type PickerCategory, type PickerEntry, PlainHtmlPreview, type PlainHtmlPreviewProps, PreviewFormatSwitch, PreviewModeMenu, PreviewModeSwitch, PreviewPanel, type PreviewPanelProps, type PreviewSettings, PreviewSettingsProvider, PreviewToolbarControls, type PrompterTransport, REPAIRABLE_KEY, RawEditor, type RawEditorProps, type RecordedBookmark, RecorderButton, type RecorderButtonProps, type RecorderColorScheme, RecorderModal, type RecorderModalProps, RecorderPanel, type RecorderPanelProps, type RecorderSaveResult, type RecorderSource, type RecorderState, type RepairableBlockEntry, RepairableDiagramExtension, type RepairableDiagramExtensionOptions, type RepairablePluginState, type ResolvedFormat, type ScreenStreamHandle, type ScreenStreamOptions, StatusBar, type StatusBarProps, TELEPROMPTER_CSS, TIMELINE_VIEW_KEY, TRANSITION_ENTRIES, TRANSITION_GROUPS, type TeleprompterController, TeleprompterControls, type TeleprompterControlsProps, type TeleprompterPrefs, type TeleprompterRecordingDeps, TeleprompterSurface, type TeleprompterSurfaceProps, TeleprompterView, type TeleprompterViewProps, TemplatePicker, ThemeCustomizerPanel, type ThemeCustomizerPanelProps, type ThemeInheritance, ThemePicker, type ThemePickerProps, type ThemeSaveExtras, type TimelineBlockEntry, type TimelineCommand, type TimelineCommandResult, TimelineEditorWidget, type TimelineEditorWidgetProps, type TimelineEventPatch, TimelineTrack, type TimelineTrackProps, type TimelineViewData, TimelineViewExtension, type TimelineViewExtensionOptions, type TimelineViewPluginState, type TimingJson, type TokenLineMap, Toolbar, type ToolbarProps, TooltipLayer, type TransitionCatalogEntry, type TransitionFields, type TransitionGroup, TransitionPicker, type TransitionPickerProps, type TreeBlockEntry, type TreeCommand, TreeOutlineWidget, type TreeViewData, TreeViewExtension, type TreeViewExtensionOptions, type TreeViewPluginState, type UseBlockNavigatorOptions, type UseFileDropOptions, type UseFileDropResult, type UseImageEditorOptions, type UseImageEditorReturn, type UseMediaRecorderOptions, type UseMediaRecorderResult, type UseMonacoLoaderResult, VersionHistoryPanel, ViewMenuPanel, type ViewPreferences, ViewSwitcher, type ViewSwitcherProps, type WriteCanvasSettings, WysiwygEditor, type WysiwygEditorProps, addEdgeOp, addItemOp, addNodeOp, addTimelineEventOp, applyAsciiDiagramCommand, applyRepairCommand, applyTimelineCommand, applyTreeCommand, asciiDiagramToCanvas, buildFilename, buildNarrationSavePlan, buildPreviewDoc, buildTimingJson, cameraVideoLine, classifyFile, codeSnippetFenceLanguageToken, codeSnippetLanguageLabel, codeSnippetMarkdown, configureMonacoWorkers, createFloatingWindowManager, detectFloatTiers, detectLanguageFromFileName, draftPatchFromImportedTheme, encodeTimingJson, ensureTeleprompterStyles, executeNarrationSave, findAsciiDiagramBlockPos, findCodeSnippetBlockPos, findMermaidDiagramBlockPos, findRepairableBlockPos, findTimelineBlockPos, findTransitionEntry, findTreeBlockPos, formatSeconds, getBlockSlices, getCaptureKind, getTimelineForNode, imageEditorReducer, indentItemOp, initialImageEditorState, insertNarrationPreamble, inspectMermaidSource, isAsciiSourceVisible, isCodeSnippetFenceLanguage, isCodeSnippetNode, isMermaidDiagramNode, isMermaidFlowchartShapeId, isMermaidSourceVisible, isRepairableFence, isTimelineSourceSafeForSemanticEdit, lineToOffset, markdownToTiptap, measureTokenLines, mermaidDiagramMarkdown, mermaidErrorMessage, monacoLanguageForFence, moveItemDownOp, moveItemUpOp, moveNodeOp, narrationAnnotationLine, nextTimelineEventId, normalizeMermaidFlowchartShape, offsetToLine, outdentItemOp, parseTimelineForNode, partitionFiles, processMediaFiles, processTextFile, processTextFiles, prompterVarsFromTheme, readBlockAttrsParams, readBlockAttrsTransition, readBlockAttrsValue, readHeadingLineTransition, registerPcmWorklet, removeEdgeOp, removeItemOp, removeNodeOp, removeTimelineEventOp, renameItemOp, renameNodeOp, renderMermaidDiagram, replaceAsciiFenceText, replaceCodeSnippetText, replaceAsciiFenceText as replaceTreeFenceText, requestCameraStream, requestMicStream, requestScreenStream, resizeNodeOp, resolveFileKind, resolveFormat, sanitizeAsciiLabel, sanitizeTimelineText, sanitizeTreeLabel, searchPickerEntries, setBlockAttrsValue, setBlockDurationInSource, setHeadingAttrsTransition, setHeadingLineTransition, setMediaClipInSource, shouldPasteAsAsciiFence, shouldPasteAsTimelineFence, shouldPasteAsTreeFence, sliceIndexAtOffset, spliceBlock, stepScroll, summarizeBlockProps, supportsDisplayMedia, supportsMediaRecorder, supportsUserMedia, targetOffsetFor, templateLabel, timingPathFor, tiptapToMarkdown, toggleAsciiSource, toggleDirOp, toggleMermaidSource, transitionLabel, translateDiagramOp, updateTimelineEventOp, useAsciiDiagramData, useBlockNavigator, useCodeSnippetData, useCustomTemplates, useCustomThemes, useDocCustomTemplates, useDocCustomThemes, useEditorContext, useFileDrop, useFloatingWindow, useImageEditor, useMediaRecorder, useMermaidDiagramData, useMicAnalysis, useMonacoLoader, useNarrationRecorder, usePreviewSettings, useStreamPreview, useTeleprompter, useTimelineData, useTreeViewData, vadConfigForSensitivity };
|
|
4821
|
+
export { ALL_PICKER_ENTRIES, type AddTimelineEventOptions, type AddTimelineEventResult, type ApplyAsciiDiagramCommandOptions, type AsciiDiagramBlockEntry, AsciiDiagramExtension, type AsciiDiagramExtensionOptions, type AsciiDiagramPluginState, type AsciiDiagramView, AsciiDiagramWidget, BlockCardView, type BlockCardViewProps, type BlockNavigator, BlockPropertiesPopover, type BlockPropertiesPopoverProps, type BlockRange, type BlockSlice, type BlockTagVisibility, CODE_SNIPPET_KEY, CODE_SNIPPET_LANGUAGES, type CameraStreamOptions, type CanvasRect, type CanvasSink, type CaptureKind, type CodeContext, type CodeContextSection, CodeContextZones, type CodeSnippetBlockEntry, type CodeSnippetData, CodeSnippetExtension, type CodeSnippetExtensionOptions, type CodeSnippetLanguage, type CodeSnippetPluginState, CodeSnippetWidget, type CodeSnippetWidgetProps, type CustomTemplateContextValue, CustomTemplateProvider, type CustomTemplateProviderProps, type CustomThemeContextValue, CustomThemeProvider, type CustomThemeProviderProps, DEFAULT_MERMAID_DIAGRAM_TYPE, DEFAULT_TELEPROMPTER_PREFS, DiagramCanvas, type DiagramCommand, type DiagramData, type DiagramEdge, type DiagramNode, type DirectionModel, type DocCustomTemplates, type DocCustomThemes, type DocumentLinkCandidate, type DocumentLinkProvider, DocumentSettingsDialog, type DocumentSettingsDialogProps, type DragContentType, type DropTarget, DropZoneOverlay, type DropZoneOverlayProps, EMPTY_TRANSITION, EYE_LINE_FRACTION, type EditorActions, type EditorColorScheme, type EditorContextValue, type EditorMode, EditorProvider, type EditorProviderProps, EditorShell, type EditorShellProps, type EditorState, type EditorView, EmojiPicker, type EmojiPickerProps, type FileCategory, type FileKind, type FloatOpenOptions, type FloatTier, type FloatingWindowHandle, type FloatingWindowManager, type FolderEntry, FolderView, type FolderViewProps, type HeadingTransitionAttrs, HeadingWithTemplate, type ImageDisplayMode, ImageEditor, type ImageEditorAction, type ImageEditorProps, type ImageEditorState, type ImageEditorTool, ImageViewer, type ImageViewerProps, ImportThemeSection, type ImportThemeSectionProps, type ImportedThemeResult, InlinePreviewGutter, type InlinePreviewGutterProps, JsonEditor, type JsonEditorProps, type LayoutMode, MERMAID_DIAGRAM_KEY, MERMAID_DIAGRAM_TYPES, MERMAID_FLOWCHART_SHAPES, MediaBin, type MediaBinProps, type MediaClipPatch, type MentionCandidate, type MentionProvider, type MermaidDiagramBlockEntry, MermaidDiagramCanvas, type MermaidDiagramCanvasProps, type MermaidDiagramCategory, type MermaidDiagramData, MermaidDiagramExtension, type MermaidDiagramExtensionOptions, type MermaidDiagramPluginState, type MermaidDiagramPreview, type MermaidDiagramProperty, type MermaidDiagramType, MermaidDiagramTypeThumbnail, MermaidDiagramWidget, type MermaidDiagramWidgetProps, type MermaidEditCapabilities, type MermaidEditableDiagramKind, type MermaidEditableEdge, type MermaidEditableModel, type MermaidEditableNode, type MermaidFlowchartDirection, type MermaidFlowchartModel, type MermaidFlowchartShape, type MermaidFlowchartShapeId, type MermaidNodeCanvasAction, type MermaidRenderResult, MermaidShapePalette, type MermaidShapePaletteProps, type MermaidSourceEditableModel, type MicAnalysisHandle, type MicAnalysisStatus, type MonacoWorkerConstructor, type MonacoWorkerConstructors, type NarrationRecorderController, type NarrationRecorderState, type NarrationSavePlan, type NarrationSaveResult, type NarrationTake, OutlinePanel, type OutlinePanelProps, PCM_WORKLET_NAME, PCM_WORKLET_SOURCE, PICKER_CATEGORIES, type PickerCategory, type PickerEntry, PlainHtmlPreview, type PlainHtmlPreviewProps, PreviewFormatSwitch, PreviewModeMenu, PreviewModeSwitch, PreviewPanel, type PreviewPanelProps, type PreviewSettings, PreviewSettingsProvider, PreviewToolbarControls, type PrompterTransport, REPAIRABLE_KEY, RawEditor, type RawEditorProps, type RecordedBookmark, RecorderButton, type RecorderButtonProps, type RecorderColorScheme, RecorderModal, type RecorderModalProps, RecorderPanel, type RecorderPanelProps, type RecorderSaveResult, type RecorderSource, type RecorderState, type RepairableBlockEntry, RepairableDiagramExtension, type RepairableDiagramExtensionOptions, type RepairablePluginState, type ResolvedFormat, type ScreenStreamHandle, type ScreenStreamOptions, StatusBar, type StatusBarProps, TELEPROMPTER_CSS, TIMELINE_VIEW_KEY, TRANSITION_ENTRIES, TRANSITION_GROUPS, type TeleprompterController, TeleprompterControls, type TeleprompterControlsProps, type TeleprompterPrefs, type TeleprompterRecordingDeps, TeleprompterSurface, type TeleprompterSurfaceProps, TeleprompterView, type TeleprompterViewProps, TemplatePicker, ThemeCustomizerPanel, type ThemeCustomizerPanelProps, type ThemeInheritance, ThemePicker, type ThemePickerProps, type ThemeSaveExtras, type TimelineBlockEntry, type TimelineCommand, type TimelineCommandResult, TimelineEditorWidget, type TimelineEditorWidgetProps, type TimelineEventPatch, TimelineTrack, type TimelineTrackProps, type TimelineViewData, TimelineViewExtension, type TimelineViewExtensionOptions, type TimelineViewPluginState, type TimingJson, type TokenLineMap, Toolbar, type ToolbarProps, TooltipLayer, type TransitionCatalogEntry, type TransitionFields, type TransitionGroup, TransitionPicker, type TransitionPickerProps, type TreeBlockEntry, type TreeCommand, TreeOutlineWidget, type TreeViewData, TreeViewExtension, type TreeViewExtensionOptions, type TreeViewPluginState, type UseBlockNavigatorOptions, type UseFileDropOptions, type UseFileDropResult, type UseImageEditorOptions, type UseImageEditorReturn, type UseMediaRecorderOptions, type UseMediaRecorderResult, type UseMonacoLoaderResult, VersionHistoryPanel, ViewMenuPanel, type ViewPreferences, ViewSwitcher, type ViewSwitcherProps, type WriteCanvasSettings, WysiwygEditor, type WysiwygEditorProps, addEdgeOp, addItemOp, addNodeOp, addTimelineEventOp, applyAsciiDiagramCommand, applyRepairCommand, applyTimelineCommand, applyTreeCommand, asciiDiagramToCanvas, buildFilename, buildNarrationSavePlan, buildPreviewDoc, buildTimingJson, cameraVideoLine, classifyFile, codeSnippetFenceLanguageToken, codeSnippetLanguageLabel, codeSnippetMarkdown, configureMonacoWorkers, createFloatingWindowManager, detectFloatTiers, detectLanguageFromFileName, draftPatchFromImportedTheme, encodeTimingJson, ensureTeleprompterStyles, executeNarrationSave, findAsciiDiagramBlockPos, findCodeSnippetBlockPos, findMermaidDiagramBlockPos, findRepairableBlockPos, findTimelineBlockPos, findTransitionEntry, findTreeBlockPos, formatSeconds, getBlockSlices, getCaptureKind, getTimelineForNode, imageEditorReducer, indentItemOp, initialImageEditorState, insertNarrationPreamble, inspectMermaidSource, isAsciiSourceVisible, isCodeSnippetFenceLanguage, isCodeSnippetNode, isMermaidDiagramNode, isMermaidFlowchartShapeId, isMermaidSourceVisible, isRepairableFence, isTimelineSourceSafeForSemanticEdit, lineToOffset, markdownToTiptap, measureTokenLines, mermaidDiagramMarkdown, mermaidDiagramProperties, mermaidEditCapabilities, mermaidErrorMessage, monacoLanguageForFence, moveItemDownOp, moveItemUpOp, moveNodeOp, narrationAnnotationLine, nextTimelineEventId, normalizeMermaidFlowchartShape, offsetToLine, outdentItemOp, parseTimelineForNode, partitionFiles, processMediaFiles, processTextFile, processTextFiles, prompterVarsFromTheme, readBlockAttrsParams, readBlockAttrsTransition, readBlockAttrsValue, readHeadingLineTransition, registerPcmWorklet, removeEdgeOp, removeItemOp, removeNodeOp, removeTimelineEventOp, renameItemOp, renameNodeOp, renderMermaidDiagram, replaceAsciiFenceText, replaceCodeSnippetText, replaceAsciiFenceText as replaceTreeFenceText, requestCameraStream, requestMicStream, requestScreenStream, resizeNodeOp, resolveFileKind, resolveFormat, sanitizeAsciiLabel, sanitizeTimelineText, sanitizeTreeLabel, searchPickerEntries, setBlockAttrsValue, setBlockDurationInSource, setHeadingAttrsTransition, setHeadingLineTransition, setMediaClipInSource, shouldPasteAsAsciiFence, shouldPasteAsTimelineFence, shouldPasteAsTreeFence, sliceIndexAtOffset, spliceBlock, stepScroll, summarizeBlockProps, supportsDisplayMedia, supportsMediaRecorder, supportsUserMedia, targetOffsetFor, templateLabel, timingPathFor, tiptapToMarkdown, toggleAsciiSource, toggleDirOp, toggleMermaidSource, transitionLabel, translateDiagramOp, updateTimelineEventOp, useAsciiDiagramData, useBlockNavigator, useCodeSnippetData, useCustomTemplates, useCustomThemes, useDocCustomTemplates, useDocCustomThemes, useEditorContext, useFileDrop, useFloatingWindow, useImageEditor, useMediaRecorder, useMermaidDiagramData, useMicAnalysis, useMonacoLoader, useNarrationRecorder, usePreviewSettings, useStreamPreview, useTeleprompter, useTimelineData, useTreeViewData, vadConfigForSensitivity };
|