@bendyline/squisq-editor-react 2.11.17 → 2.11.19
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/{chunk-US5DALTZ.js → chunk-5EB3BGPE.js} +2419 -2025
- package/dist/{chunk-QZWFSSDE.js → chunk-DJS5I5NO.js} +1 -1
- package/dist/chunk-DNEVUOBZ.js +14 -0
- package/dist/chunk-DNJ6HOES.js +93 -0
- package/dist/{chunk-DPAMJV6A.js → chunk-HSWWEWT4.js} +31 -2
- package/dist/{chunk-EJKGXWNK.js → chunk-LR6Q2MK4.js} +1 -1
- package/dist/chunk-LRZJD5YD.js +107 -0
- package/dist/{chunk-2XXBDECJ.js → chunk-OCQEWWHI.js} +1 -1
- package/dist/{chunk-HTO5MTTJ.js → chunk-TZX7RKZV.js} +1107 -130
- package/dist/{chunk-C6QVA6TO.js → chunk-UFK47ZAI.js} +58 -133
- package/dist/{chunk-UBFNLWCN.js → chunk-V2OLZOYJ.js} +2 -2
- package/dist/{chunk-XZVMKR5Q.js → chunk-ZS6G2P57.js} +41 -96
- package/dist/dictationSession-PN3OT5LJ.js +521 -0
- package/dist/index.d.ts +30 -11
- package/dist/index.js +53 -21
- package/dist/json-editor/index.js +3 -3
- package/dist/recorder/index.d.ts +2 -2
- package/dist/recorder/index.js +17 -13
- package/dist/{recorder-CRsw0eC7.d.ts → recorder-DKN3vZPi.d.ts} +1 -1
- package/dist/review/index.js +3 -2
- package/dist/shell/index.d.ts +2 -1
- package/dist/shell/index.js +10 -7
- package/dist/{shell-X0EoQbbN.d.ts → shell-Cje1A3zN.d.ts} +176 -5
- package/dist/speech/index.d.ts +126 -0
- package/dist/speech/index.js +10 -0
- package/dist/styles/index.css +142 -3
- package/dist/teleprompter/index.d.ts +13 -5
- package/dist/teleprompter/index.js +3 -2
- package/dist/{useNarrationStage-vKtk6H-V.d.ts → useNarrationStage-CB8dynUg.d.ts} +15 -1
- package/package.json +10 -6
package/dist/index.js
CHANGED
|
@@ -215,34 +215,49 @@ import {
|
|
|
215
215
|
useMermaidSurfaceTheme,
|
|
216
216
|
useMonacoLoader,
|
|
217
217
|
usePreviewSettings,
|
|
218
|
+
usePreviewSettingsOptional,
|
|
218
219
|
useTimelineData,
|
|
219
220
|
useTreeViewData,
|
|
221
|
+
validateMermaidSource,
|
|
220
222
|
viewStateFromBinding,
|
|
221
223
|
writeHeadingViewState
|
|
222
|
-
} from "./chunk-
|
|
224
|
+
} from "./chunk-5EB3BGPE.js";
|
|
223
225
|
import {
|
|
224
226
|
EditorProvider,
|
|
227
|
+
applySourceEditsToText,
|
|
228
|
+
blockInsertionPoint,
|
|
225
229
|
detectLanguageFromFileName,
|
|
226
230
|
getBlockSlices,
|
|
231
|
+
headingDepthForInsertion,
|
|
232
|
+
joinBlockAt,
|
|
227
233
|
lineToOffset,
|
|
234
|
+
minimalReplaceEdit,
|
|
235
|
+
normalizeSourceEdits,
|
|
228
236
|
offsetToLine,
|
|
229
237
|
resolveFileKind,
|
|
238
|
+
resolveOutlineInsertion,
|
|
230
239
|
sliceIndexAtOffset,
|
|
240
|
+
sourceOutline,
|
|
231
241
|
spliceBlock,
|
|
232
242
|
useBlockNavigator,
|
|
233
243
|
useEditorContext
|
|
234
|
-
} from "./chunk-
|
|
244
|
+
} from "./chunk-TZX7RKZV.js";
|
|
245
|
+
import {
|
|
246
|
+
SPEECH_INPUT_SAMPLE_RATE,
|
|
247
|
+
isSpeechInputProviderFactory,
|
|
248
|
+
resolveSpeechInputProvider
|
|
249
|
+
} from "./chunk-DNEVUOBZ.js";
|
|
235
250
|
import "./chunk-V4NBQF5C.js";
|
|
236
251
|
import {
|
|
237
252
|
JsonEditor
|
|
238
|
-
} from "./chunk-
|
|
253
|
+
} from "./chunk-V2OLZOYJ.js";
|
|
239
254
|
import {
|
|
240
255
|
MarkdownEscape
|
|
241
|
-
} from "./chunk-
|
|
256
|
+
} from "./chunk-OCQEWWHI.js";
|
|
242
257
|
import {
|
|
243
258
|
markdownToTiptap,
|
|
244
259
|
tiptapToMarkdown
|
|
245
|
-
} from "./chunk-
|
|
260
|
+
} from "./chunk-HSWWEWT4.js";
|
|
246
261
|
import {
|
|
247
262
|
ImageEditor,
|
|
248
263
|
ImageViewer,
|
|
@@ -252,9 +267,8 @@ import {
|
|
|
252
267
|
} from "./chunk-K4Z2GIX4.js";
|
|
253
268
|
import {
|
|
254
269
|
RecorderButton
|
|
255
|
-
} from "./chunk-
|
|
270
|
+
} from "./chunk-LR6Q2MK4.js";
|
|
256
271
|
import {
|
|
257
|
-
DEFAULT_RECORDER_DEVICE_SETTINGS,
|
|
258
272
|
RecorderDeviceQuickPicks,
|
|
259
273
|
RecorderDeviceSettingsPanel,
|
|
260
274
|
RecorderModal,
|
|
@@ -262,10 +276,6 @@ import {
|
|
|
262
276
|
RecorderSlidesPanel,
|
|
263
277
|
SLIDE_TIMING_CHECKBOX_LABEL,
|
|
264
278
|
buildPreviewDoc,
|
|
265
|
-
buildRecorderAudioConstraints,
|
|
266
|
-
buildRecorderCameraConstraints,
|
|
267
|
-
buildRecorderScreenAudioConstraints,
|
|
268
|
-
buildRecorderScreenConstraints,
|
|
269
279
|
buildRecorderSlideDeck,
|
|
270
280
|
clampSlideIndex,
|
|
271
281
|
documentTitleFromFileName,
|
|
@@ -274,7 +284,6 @@ import {
|
|
|
274
284
|
isExpandedPanel,
|
|
275
285
|
panelModeAfterToggle,
|
|
276
286
|
recordedMediaKind,
|
|
277
|
-
recorderBitsPerSecond,
|
|
278
287
|
recorderDeviceGroups,
|
|
279
288
|
recorderDeviceOptions,
|
|
280
289
|
requestScreenStream,
|
|
@@ -283,11 +292,19 @@ import {
|
|
|
283
292
|
unshownSlidesWarning,
|
|
284
293
|
useMediaDevices,
|
|
285
294
|
useMediaRecorder
|
|
286
|
-
} from "./chunk-
|
|
295
|
+
} from "./chunk-UFK47ZAI.js";
|
|
296
|
+
import {
|
|
297
|
+
DEFAULT_RECORDER_DEVICE_SETTINGS,
|
|
298
|
+
buildRecorderAudioConstraints,
|
|
299
|
+
buildRecorderCameraConstraints,
|
|
300
|
+
buildRecorderScreenAudioConstraints,
|
|
301
|
+
buildRecorderScreenConstraints,
|
|
302
|
+
recorderBitsPerSecond
|
|
303
|
+
} from "./chunk-LRZJD5YD.js";
|
|
287
304
|
import "./chunk-GS7QWYFT.js";
|
|
288
305
|
import {
|
|
289
306
|
TeleprompterView
|
|
290
|
-
} from "./chunk-
|
|
307
|
+
} from "./chunk-DJS5I5NO.js";
|
|
291
308
|
import {
|
|
292
309
|
DEFAULT_TELEPROMPTER_PREFS,
|
|
293
310
|
EYE_LINE_FRACTION,
|
|
@@ -297,7 +314,6 @@ import {
|
|
|
297
314
|
TELEPROMPTER_CSS,
|
|
298
315
|
TeleprompterControls,
|
|
299
316
|
TeleprompterSurface,
|
|
300
|
-
buildFilename,
|
|
301
317
|
buildNarrationSavePlan,
|
|
302
318
|
buildTimingJson,
|
|
303
319
|
cameraVideoLine,
|
|
@@ -312,12 +328,7 @@ import {
|
|
|
312
328
|
prompterVarsFromTheme,
|
|
313
329
|
registerPcmWorklet,
|
|
314
330
|
requestCameraStream,
|
|
315
|
-
requestMicStream,
|
|
316
|
-
resolveFormat,
|
|
317
331
|
stepScroll,
|
|
318
|
-
supportsDisplayMedia,
|
|
319
|
-
supportsMediaRecorder,
|
|
320
|
-
supportsUserMedia,
|
|
321
332
|
targetOffsetFor,
|
|
322
333
|
timingPathFor,
|
|
323
334
|
useFloatingWindow,
|
|
@@ -327,7 +338,15 @@ import {
|
|
|
327
338
|
useStreamPreview,
|
|
328
339
|
useTeleprompter,
|
|
329
340
|
vadConfigForSensitivity
|
|
330
|
-
} from "./chunk-
|
|
341
|
+
} from "./chunk-ZS6G2P57.js";
|
|
342
|
+
import {
|
|
343
|
+
buildFilename,
|
|
344
|
+
requestMicStream,
|
|
345
|
+
resolveFormat,
|
|
346
|
+
supportsDisplayMedia,
|
|
347
|
+
supportsMediaRecorder,
|
|
348
|
+
supportsUserMedia
|
|
349
|
+
} from "./chunk-DNJ6HOES.js";
|
|
331
350
|
|
|
332
351
|
// src/FolderView.tsx
|
|
333
352
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
@@ -822,6 +841,7 @@ export {
|
|
|
822
841
|
RecorderSlidesPanel,
|
|
823
842
|
RepairableDiagramExtension,
|
|
824
843
|
SLIDE_TIMING_CHECKBOX_LABEL,
|
|
844
|
+
SPEECH_INPUT_SAMPLE_RATE,
|
|
825
845
|
StatusBar,
|
|
826
846
|
Subscript,
|
|
827
847
|
Superscript,
|
|
@@ -859,9 +879,11 @@ export {
|
|
|
859
879
|
addTimelineEventOp,
|
|
860
880
|
applyAsciiDiagramCommand,
|
|
861
881
|
applyRepairCommand,
|
|
882
|
+
applySourceEditsToText,
|
|
862
883
|
applyTimelineCommand,
|
|
863
884
|
applyTreeCommand,
|
|
864
885
|
asciiDiagramToCanvas,
|
|
886
|
+
blockInsertionPoint,
|
|
865
887
|
buildFilename,
|
|
866
888
|
buildNarrationSavePlan,
|
|
867
889
|
buildPreviewDoc,
|
|
@@ -906,6 +928,7 @@ export {
|
|
|
906
928
|
getCaptureKind,
|
|
907
929
|
getTimelineForNode,
|
|
908
930
|
hasRecorderDeviceChoice,
|
|
931
|
+
headingDepthForInsertion,
|
|
909
932
|
imageEditorReducer,
|
|
910
933
|
indentItemOp,
|
|
911
934
|
ingestForWrite,
|
|
@@ -921,7 +944,9 @@ export {
|
|
|
921
944
|
isMermaidFlowchartShapeId,
|
|
922
945
|
isMermaidSourceVisible,
|
|
923
946
|
isRepairableFence,
|
|
947
|
+
isSpeechInputProviderFactory,
|
|
924
948
|
isTimelineSourceSafeForSemanticEdit,
|
|
949
|
+
joinBlockAt,
|
|
925
950
|
lineToOffset,
|
|
926
951
|
loadDataPreview,
|
|
927
952
|
mapFenceEntries,
|
|
@@ -933,6 +958,7 @@ export {
|
|
|
933
958
|
mermaidEditableTexts,
|
|
934
959
|
mermaidErrorMessage,
|
|
935
960
|
mermaidSurfaceScheme,
|
|
961
|
+
minimalReplaceEdit,
|
|
936
962
|
monacoLanguageForFence,
|
|
937
963
|
moveItemDownOp,
|
|
938
964
|
moveItemUpOp,
|
|
@@ -940,6 +966,7 @@ export {
|
|
|
940
966
|
narrationAnnotationLine,
|
|
941
967
|
nextTimelineEventId,
|
|
942
968
|
normalizeMermaidFlowchartShape,
|
|
969
|
+
normalizeSourceEdits,
|
|
943
970
|
offsetToLine,
|
|
944
971
|
outdentItemOp,
|
|
945
972
|
panelModeAfterToggle,
|
|
@@ -981,6 +1008,8 @@ export {
|
|
|
981
1008
|
resolveFileKind,
|
|
982
1009
|
resolveFormat,
|
|
983
1010
|
resolveMermaidSurfaceTheme,
|
|
1011
|
+
resolveOutlineInsertion,
|
|
1012
|
+
resolveSpeechInputProvider,
|
|
984
1013
|
sanitizeAsciiLabel,
|
|
985
1014
|
sanitizeTimelineText,
|
|
986
1015
|
sanitizeTreeLabel,
|
|
@@ -1000,6 +1029,7 @@ export {
|
|
|
1000
1029
|
showSlideTimingCheckbox,
|
|
1001
1030
|
sliceIndexAtOffset,
|
|
1002
1031
|
slideStepForKey,
|
|
1032
|
+
sourceOutline,
|
|
1003
1033
|
spliceBlock,
|
|
1004
1034
|
stepScroll,
|
|
1005
1035
|
summarizeBlockProps,
|
|
@@ -1038,11 +1068,13 @@ export {
|
|
|
1038
1068
|
useNarrationRecorder,
|
|
1039
1069
|
useNarrationStage,
|
|
1040
1070
|
usePreviewSettings,
|
|
1071
|
+
usePreviewSettingsOptional,
|
|
1041
1072
|
useStreamPreview,
|
|
1042
1073
|
useTeleprompter,
|
|
1043
1074
|
useTimelineData,
|
|
1044
1075
|
useTreeViewData,
|
|
1045
1076
|
vadConfigForSensitivity,
|
|
1077
|
+
validateMermaidSource,
|
|
1046
1078
|
viewStateFromBinding,
|
|
1047
1079
|
writeHeadingViewState
|
|
1048
1080
|
};
|
package/dist/recorder/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
export { C as CameraStreamOptions, D as DEFAULT_RECORDER_DEVICE_SETTINGS, M as MediaDeviceInventory, R as RecordedBookmark, a as RecordedMediaKind, b as RecorderAudioDeviceSettings, c as RecorderButton, d as RecorderButtonProps, e as RecorderCameraDeviceSettings, f as RecorderCameraSaveResult, g as RecorderColorScheme, h as RecorderConstraintMode, i as RecorderDeviceOption, j as RecorderDeviceQuickPicks, k as RecorderDeviceQuickPicksProps, l as RecorderDeviceSettings, m as RecorderDeviceSettingsPanel, n as RecorderDeviceSettingsPanelProps, o as RecorderEncodingSettings, p as RecorderModal, q as RecorderModalProps, s as RecorderPanel, t as RecorderPanelProps, u as RecorderSaveResult, v as RecorderScreenAudioSettings, w as RecorderScreenDeviceSettings, S as ScreenStreamHandle, y as ScreenStreamOptions, T as TimingJson, A as buildRecorderAudioConstraints, B as buildRecorderCameraConstraints, E as buildRecorderScreenAudioConstraints, F as buildRecorderScreenConstraints, G as buildTimingJson, H as encodeTimingJson, I as hasRecorderDeviceChoice, J as recordedMediaKind, K as recorderBitsPerSecond, L as recorderDeviceGroups, N as recorderDeviceOptions, O as requestCameraStream, P as requestMicStream, Q as requestScreenStream, U as timingPathFor, V as useMediaDevices, W as useStreamPreview } from '../recorder-
|
|
2
|
-
export { a as CaptureKind, i as RecorderAudioBitrateMode, j as RecorderCameraLane, k as RecorderExtendedMediaOptions, l as RecorderSource, R as RecorderState, m as ResolvedFormat, U as UseMediaRecorderOptions, p as UseMediaRecorderResult, r as buildFilename, u as getCaptureKind, v as resolveFormat, w as supportsDisplayMedia, x as supportsMediaRecorder, y as supportsUserMedia, A as useMediaRecorder } from '../useNarrationStage-
|
|
1
|
+
export { C as CameraStreamOptions, D as DEFAULT_RECORDER_DEVICE_SETTINGS, M as MediaDeviceInventory, R as RecordedBookmark, a as RecordedMediaKind, b as RecorderAudioDeviceSettings, c as RecorderButton, d as RecorderButtonProps, e as RecorderCameraDeviceSettings, f as RecorderCameraSaveResult, g as RecorderColorScheme, h as RecorderConstraintMode, i as RecorderDeviceOption, j as RecorderDeviceQuickPicks, k as RecorderDeviceQuickPicksProps, l as RecorderDeviceSettings, m as RecorderDeviceSettingsPanel, n as RecorderDeviceSettingsPanelProps, o as RecorderEncodingSettings, p as RecorderModal, q as RecorderModalProps, s as RecorderPanel, t as RecorderPanelProps, u as RecorderSaveResult, v as RecorderScreenAudioSettings, w as RecorderScreenDeviceSettings, S as ScreenStreamHandle, y as ScreenStreamOptions, T as TimingJson, A as buildRecorderAudioConstraints, B as buildRecorderCameraConstraints, E as buildRecorderScreenAudioConstraints, F as buildRecorderScreenConstraints, G as buildTimingJson, H as encodeTimingJson, I as hasRecorderDeviceChoice, J as recordedMediaKind, K as recorderBitsPerSecond, L as recorderDeviceGroups, N as recorderDeviceOptions, O as requestCameraStream, P as requestMicStream, Q as requestScreenStream, U as timingPathFor, V as useMediaDevices, W as useStreamPreview } from '../recorder-DKN3vZPi.js';
|
|
2
|
+
export { a as CaptureKind, i as RecorderAudioBitrateMode, j as RecorderCameraLane, k as RecorderExtendedMediaOptions, l as RecorderSource, R as RecorderState, m as ResolvedFormat, U as UseMediaRecorderOptions, p as UseMediaRecorderResult, r as buildFilename, u as getCaptureKind, v as resolveFormat, w as supportsDisplayMedia, x as supportsMediaRecorder, y as supportsUserMedia, A as useMediaRecorder } from '../useNarrationStage-CB8dynUg.js';
|
|
3
3
|
import 'react/jsx-runtime';
|
|
4
4
|
import '@bendyline/squisq/schemas';
|
|
5
5
|
import '@bendyline/squisq/storage';
|
package/dist/recorder/index.js
CHANGED
|
@@ -1,40 +1,44 @@
|
|
|
1
1
|
import {
|
|
2
2
|
RecorderButton
|
|
3
|
-
} from "../chunk-
|
|
3
|
+
} from "../chunk-LR6Q2MK4.js";
|
|
4
4
|
import {
|
|
5
|
-
DEFAULT_RECORDER_DEVICE_SETTINGS,
|
|
6
5
|
RecorderDeviceQuickPicks,
|
|
7
6
|
RecorderDeviceSettingsPanel,
|
|
8
7
|
RecorderModal,
|
|
9
8
|
RecorderPanel,
|
|
10
|
-
buildRecorderAudioConstraints,
|
|
11
|
-
buildRecorderCameraConstraints,
|
|
12
|
-
buildRecorderScreenAudioConstraints,
|
|
13
|
-
buildRecorderScreenConstraints,
|
|
14
9
|
getCaptureKind,
|
|
15
10
|
hasRecorderDeviceChoice,
|
|
16
11
|
recordedMediaKind,
|
|
17
|
-
recorderBitsPerSecond,
|
|
18
12
|
recorderDeviceGroups,
|
|
19
13
|
recorderDeviceOptions,
|
|
20
14
|
requestScreenStream,
|
|
21
15
|
useMediaDevices,
|
|
22
16
|
useMediaRecorder
|
|
23
|
-
} from "../chunk-
|
|
17
|
+
} from "../chunk-UFK47ZAI.js";
|
|
18
|
+
import {
|
|
19
|
+
DEFAULT_RECORDER_DEVICE_SETTINGS,
|
|
20
|
+
buildRecorderAudioConstraints,
|
|
21
|
+
buildRecorderCameraConstraints,
|
|
22
|
+
buildRecorderScreenAudioConstraints,
|
|
23
|
+
buildRecorderScreenConstraints,
|
|
24
|
+
recorderBitsPerSecond
|
|
25
|
+
} from "../chunk-LRZJD5YD.js";
|
|
24
26
|
import "../chunk-GS7QWYFT.js";
|
|
25
27
|
import {
|
|
26
|
-
buildFilename,
|
|
27
28
|
buildTimingJson,
|
|
28
29
|
encodeTimingJson,
|
|
29
30
|
requestCameraStream,
|
|
31
|
+
timingPathFor,
|
|
32
|
+
useStreamPreview
|
|
33
|
+
} from "../chunk-ZS6G2P57.js";
|
|
34
|
+
import {
|
|
35
|
+
buildFilename,
|
|
30
36
|
requestMicStream,
|
|
31
37
|
resolveFormat,
|
|
32
38
|
supportsDisplayMedia,
|
|
33
39
|
supportsMediaRecorder,
|
|
34
|
-
supportsUserMedia
|
|
35
|
-
|
|
36
|
-
useStreamPreview
|
|
37
|
-
} from "../chunk-XZVMKR5Q.js";
|
|
40
|
+
supportsUserMedia
|
|
41
|
+
} from "../chunk-DNJ6HOES.js";
|
|
38
42
|
export {
|
|
39
43
|
DEFAULT_RECORDER_DEVICE_SETTINGS,
|
|
40
44
|
RecorderButton,
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
2
|
import { Doc, Theme, ViewportConfig, MediaProvider } from '@bendyline/squisq/schemas';
|
|
3
3
|
import { ContentContainer } from '@bendyline/squisq/storage';
|
|
4
|
-
import { l as RecorderSource, o as TeleprompterRecordingDeps, S as ScreenCaptureRegion } from './useNarrationStage-
|
|
4
|
+
import { l as RecorderSource, o as TeleprompterRecordingDeps, S as ScreenCaptureRegion } from './useNarrationStage-CB8dynUg.js';
|
|
5
5
|
import { CSSProperties, RefObject } from 'react';
|
|
6
6
|
|
|
7
7
|
type RecordedMediaKind = 'audio' | 'video';
|
package/dist/review/index.js
CHANGED
|
@@ -19,8 +19,9 @@ import {
|
|
|
19
19
|
updateReviewDecorations,
|
|
20
20
|
useReview,
|
|
21
21
|
useReviewState
|
|
22
|
-
} from "../chunk-
|
|
23
|
-
import "../chunk-
|
|
22
|
+
} from "../chunk-TZX7RKZV.js";
|
|
23
|
+
import "../chunk-DNEVUOBZ.js";
|
|
24
|
+
import "../chunk-HSWWEWT4.js";
|
|
24
25
|
|
|
25
26
|
// src/review/proofingAdapter.ts
|
|
26
27
|
import {
|
package/dist/shell/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export {
|
|
1
|
+
export { g as BlockTagVisibility, j as DocumentLinkCandidate, k as DocumentLinkProvider, l as EditorActions, m as EditorColorScheme, n as EditorContextMenuContext, o as EditorContextMenuItem, p as EditorContextMenuItemVisibility, q as EditorContextMenuProvider, r as EditorContextMenuProviderProps, s as EditorContextValue, E as EditorHostMode, t as EditorMode, u as EditorProvider, v as EditorProviderProps, x as EditorShell, y as EditorShellProps, z as EditorState, G as EditorView, I as ImageDisplayMode, L as LayoutMode, M as MentionCandidate, N as MentionProvider, Q as PreviewPanel, R as PreviewPanelProps, T as RawEditor, U as RawEditorProps, V as ThemeInheritance, W as ViewPreferences, Z as WysiwygEditor, _ as WysiwygEditorProps, ag as useEditorContext, ah as useEditorContextMenuItems } from '../shell-Cje1A3zN.js';
|
|
2
2
|
import 'react/jsx-runtime';
|
|
3
3
|
import '@bendyline/squisq/table';
|
|
4
4
|
import '@bendyline/squisq-calc';
|
|
@@ -12,6 +12,7 @@ import '@bendyline/squisq/markdown';
|
|
|
12
12
|
import '@bendyline/squisq/storage';
|
|
13
13
|
import '../types-De4z-gGb.js';
|
|
14
14
|
import '@bendyline/squisq/proof';
|
|
15
|
+
import '../speech/index.js';
|
|
15
16
|
import '@bendyline/squisq/versions';
|
|
16
17
|
import '@tiptap/core';
|
|
17
18
|
import 'monaco-editor';
|
package/dist/shell/index.js
CHANGED
|
@@ -5,19 +5,22 @@ import {
|
|
|
5
5
|
RawEditor,
|
|
6
6
|
WysiwygEditor,
|
|
7
7
|
useEditorContextMenuItems
|
|
8
|
-
} from "../chunk-
|
|
8
|
+
} from "../chunk-5EB3BGPE.js";
|
|
9
9
|
import {
|
|
10
10
|
EditorProvider,
|
|
11
11
|
useEditorContext
|
|
12
|
-
} from "../chunk-
|
|
12
|
+
} from "../chunk-TZX7RKZV.js";
|
|
13
|
+
import "../chunk-DNEVUOBZ.js";
|
|
13
14
|
import "../chunk-V4NBQF5C.js";
|
|
14
|
-
import "../chunk-
|
|
15
|
-
import "../chunk-
|
|
15
|
+
import "../chunk-OCQEWWHI.js";
|
|
16
|
+
import "../chunk-HSWWEWT4.js";
|
|
16
17
|
import "../chunk-K4Z2GIX4.js";
|
|
17
|
-
import "../chunk-
|
|
18
|
+
import "../chunk-UFK47ZAI.js";
|
|
19
|
+
import "../chunk-LRZJD5YD.js";
|
|
18
20
|
import "../chunk-GS7QWYFT.js";
|
|
19
|
-
import "../chunk-
|
|
20
|
-
import "../chunk-
|
|
21
|
+
import "../chunk-DJS5I5NO.js";
|
|
22
|
+
import "../chunk-ZS6G2P57.js";
|
|
23
|
+
import "../chunk-DNJ6HOES.js";
|
|
21
24
|
export {
|
|
22
25
|
EditorContextMenuProvider,
|
|
23
26
|
EditorProvider,
|
|
@@ -7,9 +7,10 @@ import { ReactNode, RefObject, ReactElement } from 'react';
|
|
|
7
7
|
import { Doc, MediaProvider, ViewportPreset, Theme } from '@bendyline/squisq/schemas';
|
|
8
8
|
import { FenceRendererMap } from '@bendyline/squisq/fence';
|
|
9
9
|
import { CodeBlockCopyHandler } from '@bendyline/squisq-react';
|
|
10
|
-
import { MarkdownDocument } from '@bendyline/squisq/markdown';
|
|
10
|
+
import { MarkdownSourceEdit, MarkdownDocument } from '@bendyline/squisq/markdown';
|
|
11
11
|
import { ContentContainer } from '@bendyline/squisq/storage';
|
|
12
12
|
import { a as ProofingCapability, c as ProofingIgnoreStore } from './types-De4z-gGb.js';
|
|
13
|
+
import { DictationControl, SpeechInputCapability } from './speech/index.js';
|
|
13
14
|
import { DocumentVersionManager, SaveVersionOptions, SaveVersionResult, PrunePolicy } from '@bendyline/squisq/versions';
|
|
14
15
|
import { Editor } from '@tiptap/core';
|
|
15
16
|
import { editor } from 'monaco-editor';
|
|
@@ -207,6 +208,102 @@ declare function offsetToLine(source: string, offset: number): number;
|
|
|
207
208
|
/** Index of the slice whose range contains `offset`, or -1. */
|
|
208
209
|
declare function sliceIndexAtOffset(slices: BlockSlice[], offset: number): number;
|
|
209
210
|
|
|
211
|
+
/**
|
|
212
|
+
* sourceEdits
|
|
213
|
+
*
|
|
214
|
+
* Pure helpers behind the editor's undoable source-edit actions
|
|
215
|
+
* (`applySourceEdits`, `insertBlockAfterCursor`) and usable by any host that
|
|
216
|
+
* plans edits against a markdown string:
|
|
217
|
+
*
|
|
218
|
+
* - validating and applying `{ start, end, text }` edits to a source string;
|
|
219
|
+
* - the smallest single edit that turns one source into another;
|
|
220
|
+
* - where a new block may go relative to a cursor, without splitting a
|
|
221
|
+
* container template (drawing, layout, diagram) or letting a new heading
|
|
222
|
+
* capture the paragraphs that follow it.
|
|
223
|
+
*
|
|
224
|
+
* Placement is decided on an abstract outline of top-level blocks so the Write
|
|
225
|
+
* view (ProseMirror nodes) and the Source view (markdown AST) share one rule.
|
|
226
|
+
*/
|
|
227
|
+
|
|
228
|
+
/**
|
|
229
|
+
* Where `insertBlockAfterCursor` puts a block.
|
|
230
|
+
*
|
|
231
|
+
* - `afterBlock`: straight after the top-level block holding the cursor. Right
|
|
232
|
+
* for fences, tables and paragraphs.
|
|
233
|
+
* - `sectionEnd`: at the end of the cursor's section, just before the next
|
|
234
|
+
* heading. Right for heading-based blocks, which would otherwise capture
|
|
235
|
+
* the paragraphs after them.
|
|
236
|
+
*/
|
|
237
|
+
type BlockPlacement = 'afterBlock' | 'sectionEnd';
|
|
238
|
+
/** The heading structure around an insertion point. */
|
|
239
|
+
interface BlockInsertionContext {
|
|
240
|
+
/** Depth of the section the insertion point belongs to; 0 before any heading. */
|
|
241
|
+
sectionDepth: number;
|
|
242
|
+
/** Depth of the first heading after the insertion point, or null at the end. */
|
|
243
|
+
nextHeadingDepth: number | null;
|
|
244
|
+
/**
|
|
245
|
+
* Deepest heading depth a heading-based block may use here. Normally 6;
|
|
246
|
+
* lower straight after a container template, whose children any deeper
|
|
247
|
+
* heading would join.
|
|
248
|
+
*/
|
|
249
|
+
maxHeadingDepth: number;
|
|
250
|
+
}
|
|
251
|
+
/** One top-level block, as an outline sees it. */
|
|
252
|
+
interface OutlineBlock {
|
|
253
|
+
/** Heading depth, or null for any non-heading block. */
|
|
254
|
+
headingDepth: number | null;
|
|
255
|
+
/** True for a heading whose template consumes the headings under it. */
|
|
256
|
+
container: boolean;
|
|
257
|
+
}
|
|
258
|
+
/** An insertion point in an outline: insert before `blocks[index]`. */
|
|
259
|
+
interface OutlineInsertion extends BlockInsertionContext {
|
|
260
|
+
index: number;
|
|
261
|
+
}
|
|
262
|
+
/** Validate edits against `source` and sort them by position; null if any is unusable. */
|
|
263
|
+
declare function normalizeSourceEdits(source: string, edits: readonly MarkdownSourceEdit[]): MarkdownSourceEdit[] | null;
|
|
264
|
+
/** Apply edits to `source`. Throws on edits `normalizeSourceEdits` rejects. */
|
|
265
|
+
declare function applySourceEditsToText(source: string, edits: readonly MarkdownSourceEdit[]): string;
|
|
266
|
+
/** The smallest single edit turning `previous` into `next`, or null when they are equal. */
|
|
267
|
+
declare function minimalReplaceEdit(previous: string, next: string): MarkdownSourceEdit | null;
|
|
268
|
+
/**
|
|
269
|
+
* Decide where a block goes in an outline, given the block holding the cursor
|
|
270
|
+
* (`cursorIndex`, -1 when the cursor is before every block).
|
|
271
|
+
*
|
|
272
|
+
* A cursor inside a container template never puts a block among its children:
|
|
273
|
+
* `afterBlock` moves before the container and `sectionEnd` after its subtree.
|
|
274
|
+
*/
|
|
275
|
+
declare function resolveOutlineInsertion(blocks: readonly OutlineBlock[], cursorIndex: number, placement: BlockPlacement): OutlineInsertion;
|
|
276
|
+
/**
|
|
277
|
+
* Heading depth for a heading-based block inserted at this point, so the
|
|
278
|
+
* heading that follows closes it instead of being captured, and it does not
|
|
279
|
+
* join a preceding container's children. `childLevels` reserves depth for the
|
|
280
|
+
* block's own child headings (1 for drawing and layout). Null when nothing fits.
|
|
281
|
+
*/
|
|
282
|
+
declare function headingDepthForInsertion(context: BlockInsertionContext, options?: {
|
|
283
|
+
childLevels?: number;
|
|
284
|
+
}): number | null;
|
|
285
|
+
/** Top-level blocks of a markdown source with their character ranges. */
|
|
286
|
+
declare function sourceOutline(source: string): {
|
|
287
|
+
blocks: OutlineBlock[];
|
|
288
|
+
ranges: Array<{
|
|
289
|
+
start: number;
|
|
290
|
+
end: number;
|
|
291
|
+
}>;
|
|
292
|
+
};
|
|
293
|
+
/**
|
|
294
|
+
* Where a block goes in a markdown source for a cursor at `cursorOffset`.
|
|
295
|
+
* `offset` is the end of the block the new one follows (or the body start);
|
|
296
|
+
* pass it to {@link joinBlockAt}.
|
|
297
|
+
*/
|
|
298
|
+
declare function blockInsertionPoint(source: string, cursorOffset: number, placement: BlockPlacement): BlockInsertionContext & {
|
|
299
|
+
offset: number;
|
|
300
|
+
};
|
|
301
|
+
/**
|
|
302
|
+
* The edit that puts `block` at `offset` with exactly one blank line on each
|
|
303
|
+
* side, absorbing whatever whitespace already surrounds that point.
|
|
304
|
+
*/
|
|
305
|
+
declare function joinBlockAt(source: string, offset: number, block: string): MarkdownSourceEdit;
|
|
306
|
+
|
|
210
307
|
/**
|
|
211
308
|
* Configuration a Scene host (diagram / drawing / layout widget) supplies
|
|
212
309
|
* so the shared inline text editor knows how to read and write the text of
|
|
@@ -288,6 +385,25 @@ interface DocumentLinkCandidate {
|
|
|
288
385
|
*/
|
|
289
386
|
type DocumentLinkProvider = (query: string) => Promise<DocumentLinkCandidate[]>;
|
|
290
387
|
type EditorView = 'raw' | 'wysiwyg' | 'preview';
|
|
388
|
+
/** Options for {@link EditorActions.applySourceEdits}. */
|
|
389
|
+
interface ApplySourceEditsOptions {
|
|
390
|
+
/**
|
|
391
|
+
* The source the edits were planned against. When the document no longer
|
|
392
|
+
* matches it, nothing is applied and the action returns false.
|
|
393
|
+
*/
|
|
394
|
+
baseSource?: string;
|
|
395
|
+
}
|
|
396
|
+
/**
|
|
397
|
+
* Builds the markdown for {@link EditorActions.insertBlockAfterCursor} once the
|
|
398
|
+
* insertion point is known, so a heading-based block can pick a depth that
|
|
399
|
+
* fits there. Return null to cancel.
|
|
400
|
+
*/
|
|
401
|
+
type BlockInsertionBuilder = (context: BlockInsertionContext) => string | null;
|
|
402
|
+
/** Options for {@link EditorActions.insertBlockAfterCursor}. */
|
|
403
|
+
interface InsertBlockOptions {
|
|
404
|
+
/** Defaults to `'afterBlock'`. Use `'sectionEnd'` for heading-based blocks. */
|
|
405
|
+
placement?: BlockPlacement;
|
|
406
|
+
}
|
|
291
407
|
/** What is selected in the active editing surface. */
|
|
292
408
|
interface EditorSelectionInfo {
|
|
293
409
|
/** Which surface reported it. */
|
|
@@ -525,8 +641,34 @@ interface EditorActions {
|
|
|
525
641
|
getBlockAtCursor: () => BlockSlice | null;
|
|
526
642
|
/** Insert text at the current cursor position in the active editor */
|
|
527
643
|
insertAtCursor: (text: string) => void;
|
|
528
|
-
/**
|
|
644
|
+
/**
|
|
645
|
+
* Replace all editor content with the given text. Undoable as one step in
|
|
646
|
+
* Write and Source views (Document layout); elsewhere it replaces the
|
|
647
|
+
* source directly.
|
|
648
|
+
*/
|
|
529
649
|
replaceAll: (text: string) => void;
|
|
650
|
+
/**
|
|
651
|
+
* Apply `{ start, end, text }` edits to the full markdown source as ONE
|
|
652
|
+
* undoable step. Offsets refer to `markdownSource` (frontmatter included).
|
|
653
|
+
*
|
|
654
|
+
* Source view edits Monaco's model in place, so the cursor, scroll and undo
|
|
655
|
+
* history survive. Write view loads the result as a minimal change.
|
|
656
|
+
* Returns false, applying nothing, in Preview, outside the Document layout,
|
|
657
|
+
* when the edits overlap or fall outside the source, or when the source no
|
|
658
|
+
* longer matches `options.baseSource`.
|
|
659
|
+
*/
|
|
660
|
+
applySourceEdits: (edits: readonly MarkdownSourceEdit[], options?: ApplySourceEditsOptions) => boolean;
|
|
661
|
+
/**
|
|
662
|
+
* Insert a markdown block near the cursor as ONE undoable step, leaving the
|
|
663
|
+
* selection where it is.
|
|
664
|
+
*
|
|
665
|
+
* `'afterBlock'` (default) puts it after the top-level block holding the
|
|
666
|
+
* cursor; `'sectionEnd'` puts it just before the next heading. Neither ever
|
|
667
|
+
* lands among a drawing's or layout's child headings. Pass a builder to
|
|
668
|
+
* choose the markdown once the surrounding heading depths are known.
|
|
669
|
+
* Returns false when the surface cannot be edited or the builder cancels.
|
|
670
|
+
*/
|
|
671
|
+
insertBlockAfterCursor: (block: string | BlockInsertionBuilder, options?: InsertBlockOptions) => boolean;
|
|
530
672
|
/**
|
|
531
673
|
* Request the modal image editor open on the given relative media path.
|
|
532
674
|
* The path must resolve through the active `mediaProvider`. No-op when
|
|
@@ -593,6 +735,12 @@ interface EditorContextValue extends EditorState, EditorActions {
|
|
|
593
735
|
* reads it from here.
|
|
594
736
|
*/
|
|
595
737
|
versioning: DocumentVersionManager | null;
|
|
738
|
+
/**
|
|
739
|
+
* Whether versions are also saved automatically after an idle pause
|
|
740
|
+
* (`versioningAutoSaveIdleMs` above zero), so the version-history panel
|
|
741
|
+
* only promises automatic saves when the host has them on.
|
|
742
|
+
*/
|
|
743
|
+
versioningAutoSaves: boolean;
|
|
596
744
|
/**
|
|
597
745
|
* Stamp a new snapshot of the current document. No-op (returns
|
|
598
746
|
* `unchanged`) when content matches the latest version. Always safe
|
|
@@ -645,6 +793,13 @@ interface EditorContextValue extends EditorState, EditorActions {
|
|
|
645
793
|
* for the session.
|
|
646
794
|
*/
|
|
647
795
|
proofingIgnoreStore: ProofingIgnoreStore | null;
|
|
796
|
+
/**
|
|
797
|
+
* Imperative dictation control for the host-injected `speechInput`
|
|
798
|
+
* capability — e.g. to drive dictation from a native menu command in a
|
|
799
|
+
* component rendered inside the shell's slots. `null` when no capability
|
|
800
|
+
* was injected. See docs/speech-input.md.
|
|
801
|
+
*/
|
|
802
|
+
dictation: DictationControl | null;
|
|
648
803
|
/** The document's article id — part of the proofing document ref. */
|
|
649
804
|
articleId: string;
|
|
650
805
|
/**
|
|
@@ -760,6 +915,11 @@ interface EditorProviderProps {
|
|
|
760
915
|
proofingGrammarEnabled?: boolean;
|
|
761
916
|
/** Host-owned per-document storage for dismissed proofing findings. */
|
|
762
917
|
proofingIgnoreStore?: ProofingIgnoreStore | null;
|
|
918
|
+
/**
|
|
919
|
+
* Speech-input (dictation) capability. Omit for no dictation; see
|
|
920
|
+
* `EditorShellProps.speechInput`.
|
|
921
|
+
*/
|
|
922
|
+
speechInput?: SpeechInputCapability | null;
|
|
763
923
|
/**
|
|
764
924
|
* Async provider for sibling-document suggestions in the link dialog.
|
|
765
925
|
* Omit to fall back to URL-only link insertion.
|
|
@@ -897,7 +1057,7 @@ interface ViewPreferences {
|
|
|
897
1057
|
/** Document vs. block-at-a-time layout. */
|
|
898
1058
|
layoutMode?: LayoutMode;
|
|
899
1059
|
}
|
|
900
|
-
declare function EditorProvider({ initialMarkdown, initialView, articleId, colorScheme: initialColorScheme, workspaceContainer, allowVersioning, versionBasename, versioningPrunePolicy, versioningAutoSaveIdleMs, onSaveVersion, mediaProvider, mediaEditRenders, imageDisplayMode, mentionProvider, proofing, proofingDefaultEnabled, proofingSpellingEnabled, proofingGrammarEnabled, proofingIgnoreStore, documentLinkProvider, fenceRenderers, onCopyCode, linkSchemes, allowRecording, allowNarrate, preserveSourceWrapping, fileName, saveCoverImageOutput, saveDashboardImageOutput, language, findMode: controlledFindMode, onFindModeChange, inlinePreview, showStatusBar, outline, blockTags, blockTagVisibility: initialBlockTagVisibility, themeInheritance, layoutMode, viewPreferences, onViewPreferencesChange, children, }: EditorProviderProps): react_jsx_runtime.JSX.Element;
|
|
1060
|
+
declare function EditorProvider({ initialMarkdown, initialView, articleId, colorScheme: initialColorScheme, workspaceContainer, allowVersioning, versionBasename, versioningPrunePolicy, versioningAutoSaveIdleMs, onSaveVersion, mediaProvider, mediaEditRenders, imageDisplayMode, mentionProvider, proofing, proofingDefaultEnabled, proofingSpellingEnabled, proofingGrammarEnabled, proofingIgnoreStore, speechInput, documentLinkProvider, fenceRenderers, onCopyCode, linkSchemes, allowRecording, allowNarrate, preserveSourceWrapping, fileName, saveCoverImageOutput, saveDashboardImageOutput, language, findMode: controlledFindMode, onFindModeChange, inlinePreview, showStatusBar, outline, blockTags, blockTagVisibility: initialBlockTagVisibility, themeInheritance, layoutMode, viewPreferences, onViewPreferencesChange, children, }: EditorProviderProps): react_jsx_runtime.JSX.Element;
|
|
901
1061
|
|
|
902
1062
|
/**
|
|
903
1063
|
* Host-supplied context sections rendered INSIDE the Monaco (raw/code)
|
|
@@ -1350,6 +1510,17 @@ interface EditorShellProps {
|
|
|
1350
1510
|
* store and Ignore still works, lasting for the session only.
|
|
1351
1511
|
*/
|
|
1352
1512
|
proofingIgnoreStore?: ProofingIgnoreStore | null;
|
|
1513
|
+
/**
|
|
1514
|
+
* Dictation capability — a `SpeechInputProvider` (or factory) from
|
|
1515
|
+
* `@bendyline/squisq-editor-react/speech`. Omit and the feature is off:
|
|
1516
|
+
* no microphone button, no capture code loaded. With it, the toolbar
|
|
1517
|
+
* gains a microphone in the Write and Source views that inserts
|
|
1518
|
+
* recognized phrases as literal text at the caret; hosts can also drive
|
|
1519
|
+
* it via `useEditorContext().dictation`. Instance = host-owned; factory =
|
|
1520
|
+
* created on mount, disposed on unmount. Ignored when `readOnly`. Host
|
|
1521
|
+
* guide: docs/speech-input.md.
|
|
1522
|
+
*/
|
|
1523
|
+
speechInput?: SpeechInputCapability | null;
|
|
1353
1524
|
/**
|
|
1354
1525
|
* Optional async provider for sibling-document suggestions in the
|
|
1355
1526
|
* link insert dialog. When supplied, the dialog gains a "Browse
|
|
@@ -1527,7 +1698,7 @@ interface EditorShellProps {
|
|
|
1527
1698
|
* Complete markdown editor shell with toolbar, view switcher, and three
|
|
1528
1699
|
* editing modes: Raw (Monaco), WYSIWYG (Tiptap), and Preview.
|
|
1529
1700
|
*/
|
|
1530
|
-
declare function EditorShell({ initialMarkdown, initialView, hostMode, defaultViewportPreset, articleId, basePath, onChange, onLinkClick, showCodeCopyButton, onCopyCode, colorScheme, className, height, minHeight, maxHeight, mediaProvider, mediaEditRenders, workspaceContainer, allowVersioning, versionBasename, versioningPrunePolicy, versioningAutoSaveIdleMs, onSaveVersion, showFilesToggle, showFilesWhenNotEmpty, showFormattingControls, showInsertControls, allowBinaryDownloads, toolbarSlotLeft, toolbarSlotAfterActions, toolbarSlotRight, statusBarSlotRight, sidePanelSlot, reviewProviders, showPlayTab, allowPresentationWindow, allowPresentationFullscreen, allowPrint, submitOnEnter, calcEngineFactory, codeContext, fullWidth, uxFont, thinMargins, writeCanvasSettings, showStatusBar, imageDisplayMode, fileName, saveCoverImageOutput, saveDashboardImageOutput, language, findMode, onFindModeChange, mentionProvider, proofing, proofingDefaultEnabled, proofingSpellingEnabled, proofingGrammarEnabled, proofingIgnoreStore, documentLinkProvider, fenceRenderers, linkSchemes, allowRecording, allowNarrate, preserveSourceWrapping, placeholder, readOnly, imageSrc, imageAlt, imageMode, imageEditorContainer, onImageExport, inlinePreview, inlinePreviewWidth, outline, outlineWidth, blockTags, blockTagVisibility, themeInheritance, viewPreferences, onViewPreferencesChange, themeOverride, }: EditorShellProps): react_jsx_runtime.JSX.Element;
|
|
1701
|
+
declare function EditorShell({ initialMarkdown, initialView, hostMode, defaultViewportPreset, articleId, basePath, onChange, onLinkClick, showCodeCopyButton, onCopyCode, colorScheme, className, height, minHeight, maxHeight, mediaProvider, mediaEditRenders, workspaceContainer, allowVersioning, versionBasename, versioningPrunePolicy, versioningAutoSaveIdleMs, onSaveVersion, showFilesToggle, showFilesWhenNotEmpty, showFormattingControls, showInsertControls, allowBinaryDownloads, toolbarSlotLeft, toolbarSlotAfterActions, toolbarSlotRight, statusBarSlotRight, sidePanelSlot, reviewProviders, showPlayTab, allowPresentationWindow, allowPresentationFullscreen, allowPrint, submitOnEnter, calcEngineFactory, codeContext, fullWidth, uxFont, thinMargins, writeCanvasSettings, showStatusBar, imageDisplayMode, fileName, saveCoverImageOutput, saveDashboardImageOutput, language, findMode, onFindModeChange, mentionProvider, proofing, proofingDefaultEnabled, proofingSpellingEnabled, proofingGrammarEnabled, proofingIgnoreStore, speechInput, documentLinkProvider, fenceRenderers, linkSchemes, allowRecording, allowNarrate, preserveSourceWrapping, placeholder, readOnly, imageSrc, imageAlt, imageMode, imageEditorContainer, onImageExport, inlinePreview, inlinePreviewWidth, outline, outlineWidth, blockTags, blockTagVisibility, themeInheritance, viewPreferences, onViewPreferencesChange, themeOverride, }: EditorShellProps): react_jsx_runtime.JSX.Element;
|
|
1531
1702
|
|
|
1532
1703
|
/**
|
|
1533
1704
|
* Shared editor context menu.
|
|
@@ -1677,4 +1848,4 @@ interface PreviewPanelProps {
|
|
|
1677
1848
|
*/
|
|
1678
1849
|
declare function PreviewPanel({ basePath, className, workspaceContainer, onLinkClick, showCodeCopyButton, onCopyCode, }: PreviewPanelProps): react_jsx_runtime.JSX.Element;
|
|
1679
1850
|
|
|
1680
|
-
export {
|
|
1851
|
+
export { XLSX_LOCKED_REASON as $, type ApplySourceEditsOptions as A, type BlockInsertionBuilder as B, type CodeContext as C, type DashboardImageSaveOutput as D, type EditorHostMode as E, type FormulaEditRecord as F, type EditorView as G, type FormulaSessionOptions as H, type ImageDisplayMode as I, type IngestedSidecar as J, type InsertBlockOptions as K, type LayoutMode as L, type MentionCandidate as M, type MentionProvider as N, type OutlineBlock as O, type OutlineInsertion as P, PreviewPanel as Q, type PreviewPanelProps as R, type SceneTextChannel as S, RawEditor as T, type RawEditorProps as U, type ThemeInheritance as V, type ViewPreferences as W, type XlsxSourceMeta as X, type WriteCanvasSettings as Y, WysiwygEditor as Z, type WysiwygEditorProps as _, type CalcEngineFactory as a, type XlsxFormulaSession as a0, applySourceEditsToText as a1, blockInsertionPoint as a2, createXlsxFormulaSession as a3, getBlockSlices as a4, headingDepthForInsertion as a5, ingestSidecarBytes as a6, joinBlockAt as a7, lineToOffset as a8, minimalReplaceEdit as a9, normalizeSourceEdits as aa, offsetToLine as ab, resolveOutlineInsertion as ac, sliceIndexAtOffset as ad, sourceOutline as ae, spliceBlock as af, useEditorContext as ag, useEditorContextMenuItems as ah, type CsvSourceMeta as b, type BlockInsertionContext as c, type BlockPlacement as d, type BlockRange as e, type BlockSlice as f, type BlockTagVisibility as g, type CodeContextSection as h, type CoverImageSaveOutput as i, type DocumentLinkCandidate as j, type DocumentLinkProvider as k, type EditorActions as l, type EditorColorScheme as m, type EditorContextMenuContext as n, type EditorContextMenuItem as o, type EditorContextMenuItemVisibility as p, EditorContextMenuProvider as q, type EditorContextMenuProviderProps as r, type EditorContextValue as s, type EditorMode as t, EditorProvider as u, type EditorProviderProps as v, type EditorSelectionInfo as w, EditorShell as x, type EditorShellProps as y, type EditorState as z };
|