@bendyline/squisq-editor-react 2.10.2 → 2.11.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{chunk-HFNE3K7X.js → chunk-FT5F2EGI.js} +2450 -1129
- package/dist/index.d.ts +272 -11
- package/dist/index.js +37 -3
- package/dist/shell/index.d.ts +5 -1
- package/dist/shell/index.js +1 -1
- package/dist/{shell-vNr6KOF9.d.ts → shell-DInMVUpf.d.ts} +190 -6
- package/dist/styles/index.css +511 -12
- package/package.json +7 -5
package/dist/index.d.ts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { C as CodeContext, E as EditorHostMode, S as SceneTextChannel } from './shell-
|
|
2
|
-
export { B as BlockTagVisibility,
|
|
1
|
+
import { C as CodeContext, E as EditorHostMode, S as SceneTextChannel, a as CalcEngineFactory, b as CsvSourceMeta, X as XlsxSourceMeta, F as FormulaEditRecord } from './shell-DInMVUpf.js';
|
|
2
|
+
export { B as BlockTagVisibility, c as CodeContextSection, d as CoverImageSaveOutput, D as DashboardImageSaveOutput, e as DocumentLinkCandidate, f as DocumentLinkProvider, g as EditorActions, h as EditorColorScheme, i as EditorContextMenuContext, j as EditorContextMenuItem, k as EditorContextMenuItemVisibility, l as EditorContextMenuProvider, m as EditorContextMenuProviderProps, n as EditorContextValue, o as EditorMode, p as EditorProvider, q as EditorProviderProps, r as EditorShell, s as EditorShellProps, t as EditorState, u as EditorView, v as FormulaSessionOptions, I as ImageDisplayMode, w as IngestedSidecar, L as LayoutMode, M as MentionCandidate, x as MentionProvider, P as PreviewPanel, y as PreviewPanelProps, R as RawEditor, z as RawEditorProps, T as ThemeInheritance, V as ViewPreferences, W as WriteCanvasSettings, A as WysiwygEditor, G as WysiwygEditorProps, H as XLSX_LOCKED_REASON, J as XlsxFormulaSession, K as createXlsxFormulaSession, N as ingestSidecarBytes, O as useEditorContext, Q as useEditorContextMenuItems } from './shell-DInMVUpf.js';
|
|
3
3
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
4
4
|
import * as react from 'react';
|
|
5
|
-
import { ReactNode, CSSProperties } from 'react';
|
|
5
|
+
import { ReactNode, CSSProperties, ReactElement } from 'react';
|
|
6
6
|
import { Doc, ScheduledClip, VideoPlacement, VideoPipSize, VideoPipShape, VideoPipPosition, MediaProvider, Theme, CustomTemplateDefinition, ThemeSeedColors, ViewportPreset, ViewportConfig, Block, MediaEntry, DiagramEdgeAnchor } from '@bendyline/squisq/schemas';
|
|
7
7
|
import { ContentContainer } from '@bendyline/squisq/storage';
|
|
8
8
|
export { CanvasRect, ImageEditor, ImageEditorAction, ImageEditorProps, ImageEditorState, ImageEditorTool, ImageViewer, ImageViewerProps, UseImageEditorOptions, UseImageEditorReturn, imageEditorReducer, initialImageEditorState, useImageEditor } from './image-editor/index.js';
|
|
@@ -23,6 +23,8 @@ import { Transaction, PluginKey } from '@tiptap/pm/state';
|
|
|
23
23
|
import { Node } from '@tiptap/pm/model';
|
|
24
24
|
import { RenderResult } from 'mermaid';
|
|
25
25
|
import { FenceRendererMap } from '@bendyline/squisq/fence';
|
|
26
|
+
import { TableViewState } from '@bendyline/squisq/table';
|
|
27
|
+
import { EditJournal } from '@bendyline/squisq-grid-react';
|
|
26
28
|
export { JsonEditor, JsonEditorProps } from './json-editor/index.js';
|
|
27
29
|
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, r as RecorderNarrationOptions, s as RecorderPanel, t as RecorderPanelProps, u as RecorderSaveResult, v as RecorderScreenAudioSettings, w as RecorderScreenDeviceSettings, x as RecorderSlidesOptions, S as ScreenStreamHandle, y as ScreenStreamOptions, z as SlideTimingSaveResult, 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-GrEh4xE8.js';
|
|
28
30
|
import { R as RecorderState } from './useNarrationStage-B6r9Zlq-.js';
|
|
@@ -31,6 +33,8 @@ export { EYE_LINE_FRACTION, NarrationSavePlan, NarrationSaveResult, NarrationSta
|
|
|
31
33
|
export { H as HarperProofingConfig, P as ProofingCapability, a as ProofingDocumentRef, b as ProofingIgnoreStore, c as ProofingLanguage, d as ProofingLintOptions, e as ProofingProvider, f as ProofingProviderFactory } from './types-B_aHRuSc.js';
|
|
32
34
|
export { createHarperProofingProvider } from './proofing/index.js';
|
|
33
35
|
export { PROOF_DIALECTS, PROOF_FRONTMATTER_KEYS, ProofCategory, ProofDialect, ProofFinding, ProofRange, ProofSuggestion, ProofSuggestionKind } from '@bendyline/squisq/proof';
|
|
36
|
+
import '@bendyline/squisq-calc';
|
|
37
|
+
import '@bendyline/squisq-formats/xlsx';
|
|
34
38
|
import '@bendyline/squisq/versions';
|
|
35
39
|
import '@bendyline/squisq/imageEdit';
|
|
36
40
|
import '@bendyline/squisq/jsonForm';
|
|
@@ -422,9 +426,12 @@ interface FileKind {
|
|
|
422
426
|
/**
|
|
423
427
|
* 'markdown' keeps the full editor (WYSIWYG + Preview tabs); 'code' is
|
|
424
428
|
* Monaco-only; 'image' renders a dedicated image viewer with no text
|
|
425
|
-
* editing surface
|
|
429
|
+
* editing surface; 'data' marks a tabular data file (csv/tsv/parquet) the
|
|
430
|
+
* host should open as a sidecar-referencing document (or fall back to a
|
|
431
|
+
* plaintext Monaco view) rather than pasting raw bytes into the WYSIWYG
|
|
432
|
+
* markdown editor.
|
|
426
433
|
*/
|
|
427
|
-
mode: 'markdown' | 'code' | 'image';
|
|
434
|
+
mode: 'markdown' | 'code' | 'image' | 'data';
|
|
428
435
|
/** Monaco language ID — passed to `<Editor defaultLanguage={...} />`. */
|
|
429
436
|
language: string;
|
|
430
437
|
}
|
|
@@ -1350,8 +1357,13 @@ interface MediaBinProps {
|
|
|
1350
1357
|
* URLs that the host otherwise exposes to the browser.
|
|
1351
1358
|
*/
|
|
1352
1359
|
allowBinaryDownloads?: boolean;
|
|
1360
|
+
/**
|
|
1361
|
+
* Relative path of an entry to highlight and scroll into view — how the
|
|
1362
|
+
* data card's "Show in Files" lands on the file it names.
|
|
1363
|
+
*/
|
|
1364
|
+
highlightPath?: string | null;
|
|
1353
1365
|
}
|
|
1354
|
-
declare function MediaBin({ mediaProvider, isDark, refreshKey, usedMediaPaths, onMediaUploaded, onMediaRemoved, onCountChange, onRecord, isRecorderOpen, allowBinaryDownloads, }: MediaBinProps): react_jsx_runtime.JSX.Element;
|
|
1366
|
+
declare function MediaBin({ mediaProvider, isDark, refreshKey, usedMediaPaths, onMediaUploaded, onMediaRemoved, onCountChange, onRecord, isRecorderOpen, allowBinaryDownloads, highlightPath, }: MediaBinProps): react_jsx_runtime.JSX.Element;
|
|
1355
1367
|
|
|
1356
1368
|
interface StatusBarProps {
|
|
1357
1369
|
/** Additional class name */
|
|
@@ -1383,7 +1395,7 @@ declare function TooltipLayer(): react.ReactPortal | null;
|
|
|
1383
1395
|
* classifies dragged file types (media vs text), and dispatches
|
|
1384
1396
|
* drop events to callers.
|
|
1385
1397
|
*/
|
|
1386
|
-
type FileCategory = 'media' | 'text' | 'unknown';
|
|
1398
|
+
type FileCategory = 'media' | 'text' | 'data' | 'unknown';
|
|
1387
1399
|
type DragContentType = 'media' | 'text' | 'mixed' | null;
|
|
1388
1400
|
type DropTarget = 'media' | 'insert' | 'replace';
|
|
1389
1401
|
declare function classifyFile(file: {
|
|
@@ -1439,12 +1451,13 @@ declare function DropZoneOverlay({ dragContentType, zoneProps, hasMediaProvider,
|
|
|
1439
1451
|
*/
|
|
1440
1452
|
|
|
1441
1453
|
/**
|
|
1442
|
-
* Partition an array of files into media and
|
|
1454
|
+
* Partition an array of files into media, text, and data categories.
|
|
1443
1455
|
* Files with unknown type are skipped.
|
|
1444
1456
|
*/
|
|
1445
1457
|
declare function partitionFiles(files: File[]): {
|
|
1446
1458
|
media: File[];
|
|
1447
1459
|
text: File[];
|
|
1460
|
+
data: File[];
|
|
1448
1461
|
};
|
|
1449
1462
|
/**
|
|
1450
1463
|
* Add media files to a MediaProvider. Returns the relative paths
|
|
@@ -1470,6 +1483,16 @@ declare function partitionFiles(files: File[]): {
|
|
|
1470
1483
|
* problematic file doesn't abort a multi-file drop.
|
|
1471
1484
|
*/
|
|
1472
1485
|
declare function processMediaFiles(files: File[], mediaProvider: MediaProvider): Promise<(string | null)[]>;
|
|
1486
|
+
/**
|
|
1487
|
+
* Store data files (csv/tsv/xlsx/parquet) into the container behind a
|
|
1488
|
+
* MediaProvider, under a caller-supplied directory prefix — conventionally
|
|
1489
|
+
* `dataSidecarPrefix(docBasename)`, i.e. `<docbasename>_files/data/`.
|
|
1490
|
+
*
|
|
1491
|
+
* Same defensive read handling and index-aligned `null` slots as
|
|
1492
|
+
* {@link processMediaFiles}. Name collisions inside the prefix get a
|
|
1493
|
+
* ` -1`, `-2`, … suffix rather than overwriting an existing sidecar.
|
|
1494
|
+
*/
|
|
1495
|
+
declare function processDataFiles(files: File[], mediaProvider: MediaProvider, dataDirPrefix: string): Promise<(string | null)[]>;
|
|
1473
1496
|
/**
|
|
1474
1497
|
* Read a text-content file and return its content as a markdown string.
|
|
1475
1498
|
*
|
|
@@ -1775,7 +1798,12 @@ interface FenceBlockEntry {
|
|
|
1775
1798
|
* (and may use a lenient re-parse gate); a position absent from it is a NEW
|
|
1776
1799
|
* fence that must pass full detection.
|
|
1777
1800
|
*/
|
|
1778
|
-
declare function mapFenceEntries(tr: Transaction, previous: readonly FenceBlockEntry[], doc: Node
|
|
1801
|
+
declare function mapFenceEntries(tr: Transaction, previous: readonly FenceBlockEntry[], doc: Node,
|
|
1802
|
+
/**
|
|
1803
|
+
* Node type the family claims. Defaults to `'codeBlock'` (every fence
|
|
1804
|
+
* family); the data-card family passes `'paragraph'`.
|
|
1805
|
+
*/
|
|
1806
|
+
nodeTypeName?: string): Map<number, string>;
|
|
1779
1807
|
|
|
1780
1808
|
/**
|
|
1781
1809
|
* AsciiDiagramExtension — Tiptap/ProseMirror plugin that turns code blocks
|
|
@@ -2823,8 +2851,16 @@ declare const HostFenceExtension: Extension<HostFenceExtensionOptions, any>;
|
|
|
2823
2851
|
/**
|
|
2824
2852
|
* Every event a mounted fence widget must keep to itself. Ordered
|
|
2825
2853
|
* pointer → key → text-input → composition → clipboard.
|
|
2854
|
+
*
|
|
2855
|
+
* `copy` belongs with `cut`/`paste`: ProseMirror installs its own `copy`
|
|
2856
|
+
* handler on `view.dom` that serializes the DOCUMENT selection into the
|
|
2857
|
+
* clipboard, and since it sits on an ancestor it runs after a widget's own
|
|
2858
|
+
* copy handler — whichever `setData` runs last wins, so a Ctrl/Cmd-C inside
|
|
2859
|
+
* a widget (a selected grid range, a diagram label field) would ship the
|
|
2860
|
+
* document selection instead of the widget's. Its absence while `cut` and
|
|
2861
|
+
* `paste` were contained was an oversight, not a decision.
|
|
2826
2862
|
*/
|
|
2827
|
-
declare const FENCE_WIDGET_CONTAINED_EVENTS: readonly ["pointerdown", "mousedown", "keydown", "keyup", "beforeinput", "input", "change", "compositionstart", "compositionupdate", "compositionend", "paste", "cut"];
|
|
2863
|
+
declare const FENCE_WIDGET_CONTAINED_EVENTS: readonly ["pointerdown", "mousedown", "keydown", "keyup", "beforeinput", "input", "change", "compositionstart", "compositionupdate", "compositionend", "copy", "paste", "cut"];
|
|
2828
2864
|
/**
|
|
2829
2865
|
* Stop every contained event at `container` so interaction inside a mounted
|
|
2830
2866
|
* fence widget never reaches the ProseMirror editor that hosts it.
|
|
@@ -2834,6 +2870,231 @@ declare const FENCE_WIDGET_CONTAINED_EVENTS: readonly ["pointerdown", "mousedown
|
|
|
2834
2870
|
*/
|
|
2835
2871
|
declare function containFenceWidgetEvents(container: HTMLElement): void;
|
|
2836
2872
|
|
|
2873
|
+
/**
|
|
2874
|
+
* DataCardExtension — the Write-view "rectangle" for data sidecar files.
|
|
2875
|
+
*
|
|
2876
|
+
* A paragraph whose entire content is one link to a relative data file
|
|
2877
|
+
* (`[q3.csv](report_files/data/q3.csv)` — the graceful-degradation body link
|
|
2878
|
+
* under a `{[dataTable src=…]}` heading) is hidden and a summary card mounts
|
|
2879
|
+
* in its place: file name, size, rows × cols, and a small preview.
|
|
2880
|
+
*
|
|
2881
|
+
* Structurally a sibling of `fenceWidgets/HostFenceExtension`, claiming
|
|
2882
|
+
* PARAGRAPHS instead of code fences: same position registry with stable
|
|
2883
|
+
* synthetic ids (via the generalized `mapFenceEntries`), same hide-the-node
|
|
2884
|
+
* decoration + React-root widget with `containFenceWidgetEvents`.
|
|
2885
|
+
*
|
|
2886
|
+
* The claim predicate is synchronous and doc-content-only (relative href +
|
|
2887
|
+
* data extension) — never an async listMedia consultation, so plugin state
|
|
2888
|
+
* stays deterministic per transaction. A claimed card whose file is missing
|
|
2889
|
+
* renders the error state instead of un-claiming.
|
|
2890
|
+
*
|
|
2891
|
+
* READ-ONLY by design in this phase: the card never touches the ProseMirror
|
|
2892
|
+
* document, so markdown round-trips byte-identically with the extension
|
|
2893
|
+
* active (`dataCard.test.tsx` holds that contract).
|
|
2894
|
+
*/
|
|
2895
|
+
|
|
2896
|
+
type DataCardBlockEntry = FenceBlockEntry;
|
|
2897
|
+
interface DataCardPluginState {
|
|
2898
|
+
entries: DataCardBlockEntry[];
|
|
2899
|
+
decorations: DecorationSet;
|
|
2900
|
+
seq: number;
|
|
2901
|
+
}
|
|
2902
|
+
declare const DATA_CARD_KEY: PluginKey<DataCardPluginState>;
|
|
2903
|
+
interface DataCardExtensionOptions {
|
|
2904
|
+
/** When false, the extension is inert. */
|
|
2905
|
+
enabled?: boolean;
|
|
2906
|
+
/** Getter — stays live without an editor remount (the mentionProvider pattern). */
|
|
2907
|
+
mediaProvider?: () => MediaProvider | null | undefined;
|
|
2908
|
+
/** Getter for the media revision; a bump re-resolves mounted cards. */
|
|
2909
|
+
mediaRevision?: () => number;
|
|
2910
|
+
/**
|
|
2911
|
+
* Getter for the workspace container — enables the grid save flow's
|
|
2912
|
+
* `.versions/data/` pre-save backups. Absent = saves proceed without a
|
|
2913
|
+
* backup (and say so).
|
|
2914
|
+
*/
|
|
2915
|
+
container?: () => ContentContainer | null | undefined;
|
|
2916
|
+
/** Open the Files panel focused on a sidecar path. */
|
|
2917
|
+
onOpenFiles?: (relativePath: string) => void;
|
|
2918
|
+
/** Notified after a successful sidecar save (hosts bump mediaRevision). */
|
|
2919
|
+
onMediaSaved?: () => void;
|
|
2920
|
+
/** Getter for the calc backend of formula sessions (default in-house). */
|
|
2921
|
+
calcEngineFactory?: () => CalcEngineFactory | null | undefined;
|
|
2922
|
+
}
|
|
2923
|
+
/**
|
|
2924
|
+
* The single data-file href a paragraph is entirely made of, or null.
|
|
2925
|
+
* Every text child must carry the SAME link href; any unlinked or
|
|
2926
|
+
* non-text content disqualifies the paragraph (an inline link in prose
|
|
2927
|
+
* stays prose).
|
|
2928
|
+
*/
|
|
2929
|
+
declare function dataLinkHrefOf(node: Node): string | null;
|
|
2930
|
+
declare function findDataCardBlockPos(editor: Editor, blockId: string): number | null;
|
|
2931
|
+
declare const DataCardExtension: Extension<DataCardExtensionOptions, any>;
|
|
2932
|
+
|
|
2933
|
+
/**
|
|
2934
|
+
* DataCardWidget — the Write-view surface for a data sidecar reference.
|
|
2935
|
+
*
|
|
2936
|
+
* ALWAYS-GRID contract: every `{[dataTable src=…]}` block mounts the real
|
|
2937
|
+
* virtualized grid (`@bendyline/squisq-grid-react`, lazily imported), with
|
|
2938
|
+
* the summary card's identity strip (icon, name, size, rows×cols,
|
|
2939
|
+
* Show-in-Files) as the grid's header. The compact preview card remains
|
|
2940
|
+
* ONLY as the runtime fallback when the grid module fails to load — plus
|
|
2941
|
+
* the unchanged missing/metadata error states.
|
|
2942
|
+
*
|
|
2943
|
+
* View state (sort/filter) binds to the OWNING heading's annotation params
|
|
2944
|
+
* when the heading really owns this sidecar (see viewStateBinding.ts);
|
|
2945
|
+
* otherwise it is session-only and the grid footer says so. CSV/TSV edits
|
|
2946
|
+
* save in place through gridSave.ts; XLSX edits (values, and formulas when
|
|
2947
|
+
* the calc-engine session boots within budget) save through in-place
|
|
2948
|
+
* patching; parquet mounts read-only with a reason chip.
|
|
2949
|
+
*
|
|
2950
|
+
* The underlying PM paragraph is still never touched by the widget itself —
|
|
2951
|
+
* only the heading's `dataTemplateParams` attribute changes, through the
|
|
2952
|
+
* ordinary PM-undoable transaction path.
|
|
2953
|
+
*/
|
|
2954
|
+
|
|
2955
|
+
interface DataCardWidgetProps {
|
|
2956
|
+
editor: Editor;
|
|
2957
|
+
blockId: string;
|
|
2958
|
+
getMediaProvider: () => MediaProvider | null | undefined;
|
|
2959
|
+
getMediaRevision: () => number;
|
|
2960
|
+
getContainer?: (() => ContentContainer | null | undefined) | undefined;
|
|
2961
|
+
onOpenFiles?: ((relativePath: string) => void) | undefined;
|
|
2962
|
+
onMediaSaved?: (() => void) | undefined;
|
|
2963
|
+
/** Calc backend for formula sessions (default: the in-house tier). */
|
|
2964
|
+
getCalcEngineFactory?: (() => CalcEngineFactory | null | undefined) | undefined;
|
|
2965
|
+
}
|
|
2966
|
+
declare function DataCardWidget({ editor, blockId, getMediaProvider, getMediaRevision, getContainer, onOpenFiles, onMediaSaved, getCalcEngineFactory, }: DataCardWidgetProps): ReactElement | null;
|
|
2967
|
+
|
|
2968
|
+
/**
|
|
2969
|
+
* Data preview loading for the Write-view data card: bytes → a small
|
|
2970
|
+
* `DataPreview` window via the formats data readers, loaded lazily so a
|
|
2971
|
+
* document with no data references costs nothing. Results are cached by
|
|
2972
|
+
* `(path, mediaRevision)` — a re-uploaded sidecar bumps the revision and
|
|
2973
|
+
* naturally misses the cache.
|
|
2974
|
+
*/
|
|
2975
|
+
interface DataPreview {
|
|
2976
|
+
columns: string[];
|
|
2977
|
+
rows: string[][];
|
|
2978
|
+
totalRows: number | null;
|
|
2979
|
+
totalCols: number | null;
|
|
2980
|
+
}
|
|
2981
|
+
/** Lowercase extension of a path, or empty string. */
|
|
2982
|
+
declare function dataExtensionOf(path: string): string;
|
|
2983
|
+
/**
|
|
2984
|
+
* Parse a bounded preview from raw bytes. Returns null when no reader is
|
|
2985
|
+
* available for the extension (e.g. parquet without the optional peer) —
|
|
2986
|
+
* the card then renders its metadata-only state. Parse failures also
|
|
2987
|
+
* resolve to null rather than throwing.
|
|
2988
|
+
*/
|
|
2989
|
+
declare function loadDataPreview(bytes: ArrayBuffer, ext: string, opts?: {
|
|
2990
|
+
maxRows?: number;
|
|
2991
|
+
sheet?: string;
|
|
2992
|
+
anchor?: string;
|
|
2993
|
+
}): Promise<DataPreview | null>;
|
|
2994
|
+
|
|
2995
|
+
/**
|
|
2996
|
+
* Binds the grid's view state (sort/filter) to the OWNING heading's
|
|
2997
|
+
* `{[dataTable …]}` annotation params — the document-persisted half of the
|
|
2998
|
+
* "author's sort IS part of the document" contract.
|
|
2999
|
+
*
|
|
3000
|
+
* Persistence guard: params are written ONLY when the owning heading's
|
|
3001
|
+
* template resolves into `TABLE_FED_TEMPLATES` AND its `src` equals the
|
|
3002
|
+
* card's href — a data-link paragraph under a template-less heading gets
|
|
3003
|
+
* SESSION-ONLY view state rather than a fabricated annotation.
|
|
3004
|
+
*
|
|
3005
|
+
* Writes go through the established single-transaction pattern
|
|
3006
|
+
* (`tr.setNodeAttribute(pos, 'dataTemplateParams', serialized || null)`,
|
|
3007
|
+
* see scene/commands/drawingCommands.ts) with canonical
|
|
3008
|
+
* `key=quoteAttrValue(value)` serialization; existing params keep their
|
|
3009
|
+
* order, `sort`/`filter` update in place or append — `paramsEqual` in
|
|
3010
|
+
* docToMarkdown is order-insensitive, so repeat writes stay byte-stable.
|
|
3011
|
+
*/
|
|
3012
|
+
|
|
3013
|
+
interface HeadingViewBinding {
|
|
3014
|
+
/** Heading node position, when an owning heading exists. */
|
|
3015
|
+
headingPos: number | null;
|
|
3016
|
+
/** True when sort/filter writes persist to the document. */
|
|
3017
|
+
persisted: boolean;
|
|
3018
|
+
/** All annotation params on the heading (raw, unquoted values). */
|
|
3019
|
+
params: Record<string, string>;
|
|
3020
|
+
/** Raw sort/filter param values, for `parseTableViewState`. */
|
|
3021
|
+
sortRaw?: string;
|
|
3022
|
+
filterRaw?: string;
|
|
3023
|
+
}
|
|
3024
|
+
/** Resolve the owning heading + persistence eligibility for a card. */
|
|
3025
|
+
declare function readHeadingViewBinding(editor: Editor, cardPos: number, href: string): HeadingViewBinding;
|
|
3026
|
+
/**
|
|
3027
|
+
* Write the view state onto the heading annotation (one transaction,
|
|
3028
|
+
* PM-undoable). Returns false when the write couldn't apply (stale pos).
|
|
3029
|
+
*/
|
|
3030
|
+
declare function writeHeadingViewState(editor: Editor, cardPos: number, href: string, view: TableViewState): boolean;
|
|
3031
|
+
/** Parse the binding's raw params into a `TableViewState` for the grid. */
|
|
3032
|
+
declare function viewStateFromBinding(binding: HeadingViewBinding, headers: readonly string[]): TableViewState;
|
|
3033
|
+
|
|
3034
|
+
/**
|
|
3035
|
+
* Grid save orchestration for CSV/TSV sidecars: journal → serialized bytes
|
|
3036
|
+
* → in-place overwrite, with a `.versions/data/` pre-save backup.
|
|
3037
|
+
*
|
|
3038
|
+
* Order of operations and their whys:
|
|
3039
|
+
* 1. BACKUP the original bytes first (`buildDataBackupPath`, pruned to the
|
|
3040
|
+
* newest 3 per sidecar) — the only cross-save undo the grid offers.
|
|
3041
|
+
* No container = no backup; the result says so rather than hiding it.
|
|
3042
|
+
* 2. Serialize from the ORIGINAL parsed rows with journal edits splatted
|
|
3043
|
+
* in — unedited cells reproduce the parse product byte-for-byte (values,
|
|
3044
|
+
* not necessarily quoting style), sidestepping float-rendering drift.
|
|
3045
|
+
* Formula neutralization applies ONLY to journal-edited, non-numeric
|
|
3046
|
+
* cells (`serializeCsvRows` defaults `preserve`; blanket escaping would
|
|
3047
|
+
* corrupt every negative number in a re-saved file).
|
|
3048
|
+
* 3. `addMedia(samePath)` with FORK DETECTION: `addMedia` returns the path
|
|
3049
|
+
* the host actually used, and a collision-renaming provider would
|
|
3050
|
+
* silently fork the document's reference — surface it instead.
|
|
3051
|
+
* 4. The caller bumps mediaRevision (previews re-resolve, journal cache
|
|
3052
|
+
* rotates) only on success.
|
|
3053
|
+
*/
|
|
3054
|
+
|
|
3055
|
+
interface GridSaveResult {
|
|
3056
|
+
ok: boolean;
|
|
3057
|
+
/** Path actually written (differs from requested on a host fork). */
|
|
3058
|
+
savedPath?: string;
|
|
3059
|
+
/** Human-readable caveats: fork detected, backup skipped, … */
|
|
3060
|
+
notices: string[];
|
|
3061
|
+
error?: string;
|
|
3062
|
+
}
|
|
3063
|
+
interface SaveCsvEditsOptions {
|
|
3064
|
+
path: string;
|
|
3065
|
+
originalBytes: ArrayBuffer;
|
|
3066
|
+
csv: CsvSourceMeta;
|
|
3067
|
+
journal: EditJournal;
|
|
3068
|
+
mediaProvider: MediaProvider;
|
|
3069
|
+
container: ContentContainer | null;
|
|
3070
|
+
}
|
|
3071
|
+
declare function saveCsvEdits(options: SaveCsvEditsOptions): Promise<GridSaveResult>;
|
|
3072
|
+
interface SaveXlsxEditsOptions {
|
|
3073
|
+
path: string;
|
|
3074
|
+
originalBytes: ArrayBuffer;
|
|
3075
|
+
xlsx: XlsxSourceMeta;
|
|
3076
|
+
journal: EditJournal;
|
|
3077
|
+
/** Formula edits from the calc-engine session, keyed `"row:col"`. */
|
|
3078
|
+
formulaEdits?: ReadonlyMap<string, FormulaEditRecord>;
|
|
3079
|
+
mediaProvider: MediaProvider;
|
|
3080
|
+
container: ContentContainer | null;
|
|
3081
|
+
}
|
|
3082
|
+
/**
|
|
3083
|
+
* Save journal edits into an XLSX sidecar via in-place cell patching.
|
|
3084
|
+
*
|
|
3085
|
+
* Journal rowIds are BODY row indices within the region; the region's
|
|
3086
|
+
* anchor (+ header offset) maps them back to sheet addresses. The patcher
|
|
3087
|
+
* is all-or-nothing — a refused cell (formula/date, which the grid's lock
|
|
3088
|
+
* predicate should have prevented) fails the whole save with its reason.
|
|
3089
|
+
*/
|
|
3090
|
+
declare function saveXlsxEdits(options: SaveXlsxEditsOptions): Promise<GridSaveResult>;
|
|
3091
|
+
|
|
3092
|
+
/**
|
|
3093
|
+
* Returns the heading position for the block owning a document position.
|
|
3094
|
+
* A block begins at a top-level heading and continues until the next heading.
|
|
3095
|
+
*/
|
|
3096
|
+
declare function findOwningHeadingPosition(doc: Node, position: number): number | null;
|
|
3097
|
+
|
|
2837
3098
|
/**
|
|
2838
3099
|
* TimelineViewExtension — mounts a WYSIWYG timeline editor over qualifying
|
|
2839
3100
|
* authored timeline code fences while keeping the fence text as source of
|
|
@@ -3106,4 +3367,4 @@ declare function unshownSlidesWarning(total: number, unshown: number): string |
|
|
|
3106
3367
|
/** The exact label of the review-state block-timings checkbox. */
|
|
3107
3368
|
declare const SLIDE_TIMING_CHECKBOX_LABEL = "Update block timings when I save this narration";
|
|
3108
3369
|
|
|
3109
|
-
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, CODE_SNIPPET_KEY, CODE_SNIPPET_LANGUAGES, CodeContext, 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, DiagramCanvas, type DiagramCommand, type DiagramData, type DiagramEdge, type DiagramNode, type DirectionModel, type DocCustomTemplates, type DocCustomThemes, DocumentSettingsDialog, type DocumentSettingsDialogProps, type DragContentType, type DropTarget, DropZoneOverlay, type DropZoneOverlayProps, EMPTY_TRANSITION, EditorHostMode, EmojiPicker, type EmojiPickerProps, FENCE_WIDGET_CONTAINED_EVENTS, type FenceBlockEntry, type FileCategory, type FileKind, type FolderEntry, FolderView, type FolderViewProps, HOST_FENCE_KEY, type HeadingTransitionAttrs, HeadingWithTemplate, type HostFenceBlockEntry, HostFenceExtension, type HostFenceExtensionOptions, type HostFencePluginState, ImportThemeSection, type ImportThemeSectionProps, type ImportedThemeResult, InlinePreviewGutter, type InlinePreviewGutterProps, MERMAID_DIAGRAM_KEY, MERMAID_DIAGRAM_TYPES, MERMAID_FLOWCHART_SHAPES, MediaBin, type MediaBinProps, type MediaClipPatch, 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 MermaidEditableText, type MermaidEditableTextTarget, type MermaidFlowchartDirection, type MermaidFlowchartModel, type MermaidFlowchartShape, type MermaidFlowchartShapeId, type MermaidNodeCanvasAction, type MermaidRenderResult, type MermaidSelection, MermaidShapePalette, type MermaidShapePaletteProps, type MermaidSourceEditableModel, type MermaidSurfaceScheme, MonacoLanguageLoadOptions, MonacoLanguageRequest, OutlinePanel, type OutlinePanelProps, PICKER_CATEGORIES, type PickerCategory, type PickerEntry, PlainHtmlPreview, type PlainHtmlPreviewProps, PreviewFormatSwitch, PreviewModeMenu, PreviewModeSwitch, type PreviewSettings, PreviewSettingsProvider, PreviewToolbarControls, type PreviewToolbarControlsProps, REPAIRABLE_KEY, type RecorderPanelMode, type RecorderSlide, RecorderSlidesPanel, type RecorderSlidesPanelProps, RecorderState, type RepairableBlockEntry, RepairableDiagramExtension, type RepairableDiagramExtensionOptions, type RepairablePluginState, SLIDE_TIMING_CHECKBOX_LABEL, StatusBar, type StatusBarProps, Subscript, Superscript, TIMELINE_VIEW_KEY, TRANSITION_ENTRIES, TRANSITION_GROUPS, TemplatePicker, ThemeCustomizerPanel, type ThemeCustomizerPanelProps, ThemePicker, type ThemePickerProps, type ThemeSaveExtras, type TimelineBlockEntry, type TimelineCommand, type TimelineCommandResult, TimelineCompositionPanel, type TimelineCompositionPanelProps, TimelineEditorWidget, type TimelineEditorWidgetProps, type TimelineEventPatch, TimelineToolbar, type TimelineToolbarProps, TimelineTrack, type TimelineTrackProps, TimelineVideoPanel, type TimelineVideoPanelProps, type TimelineViewData, TimelineViewExtension, type TimelineViewExtensionOptions, type TimelineViewPluginState, Toolbar, type ToolbarProps, TooltipLayer, TransformMenu, 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 UseMonacoLoaderResult, VersionHistoryPanel, ViewMenuPanel, ViewSwitcher, type ViewSwitcherProps, type WrapPolicyIngest, adaptThemeToSurface, addEdgeOp, addItemOp, addNodeOp, addTimelineEventOp, applyAsciiDiagramCommand, applyRepairCommand, applyTimelineCommand, applyTreeCommand, asciiDiagramToCanvas, buildRecorderSlideDeck, clampSlideIndex, classifyFile, codeSnippetFenceLanguageToken, codeSnippetLanguageLabel, codeSnippetMarkdown, containFenceWidgetEvents, detectLanguageFromFileName, draftPatchFromImportedTheme, findAsciiDiagramBlockPos, findCodeSnippetBlockPos, findHostFenceBlockPos, findMermaidDiagramBlockPos, findRepairableBlockPos, findTimelineBlockPos, findTransitionEntry, findTreeBlockPos, formatSeconds, getBlockSlices, getTimelineForNode, indentItemOp, ingestForWrite, inspectMermaidSource, isAsciiSourceVisible, isCodeSnippetFenceLanguage, isCodeSnippetNode, isExpandedPanel, isMermaidDiagramNode, isMermaidFlowchartShapeId, isMermaidSourceVisible, isRepairableFence, isTimelineSourceSafeForSemanticEdit, lineToOffset, mapFenceEntries, markdownToTiptap, mermaidDiagramMarkdown, mermaidDiagramProperties, mermaidEditCapabilities, mermaidEditableTexts, mermaidErrorMessage, mermaidSurfaceScheme, monacoLanguageForFence, moveItemDownOp, moveItemUpOp, moveNodeOp, nextTimelineEventId, normalizeMermaidFlowchartShape, offsetToLine, outdentItemOp, panelModeAfterToggle, parseTimelineForNode, partitionFiles, persistFromWrite, preloadMonaco, preloadMonacoSuggestions, processMediaFiles, processTextFile, processTextFiles, readBlockAttrsParams, readBlockAttrsTransition, readBlockAttrsValue, readHeadingLineTransition, removeEdgeOp, removeItemOp, removeNodeOp, removeTimelineEventOp, renameItemOp, renameNodeOp, renderMermaidDiagram, replaceAsciiFenceText, replaceCodeSnippetText, replaceHostFenceText, replaceAsciiFenceText as replaceTreeFenceText, resizeNodeOp, resolveFileKind, resolveMermaidSurfaceTheme, sanitizeAsciiLabel, sanitizeTimelineText, sanitizeTreeLabel, searchPickerEntries, setBlockAttrsValue, setBlockDurationInSource, setBlockStartTimeInSource, setBlockTransitionInSource, setHeadingAttrsTransition, setHeadingLineTransition, setMediaClipInSource, shouldPasteAsAsciiFence, shouldPasteAsTimelineFence, shouldPasteAsTreeFence, showSlideTimingCheckbox, sliceIndexAtOffset, slideStepForKey, spliceBlock, summarizeBlockProps, templateLabel, tiptapToMarkdown, toggleAsciiSource, toggleDirOp, toggleMermaidSource, transitionLabel, translateDiagramOp, unshownSlidesWarning, updateTimelineEventOp, useAsciiDiagramData, useBlockNavigator, useCodeSnippetData, useCustomTemplates, useCustomThemes, useDocCustomTemplates, useDocCustomThemes, useFileDrop, useMermaidDiagramData, useMermaidSurfaceTheme, useMonacoLoader, usePreviewSettings, useTimelineData, useTreeViewData };
|
|
3370
|
+
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, CODE_SNIPPET_KEY, CODE_SNIPPET_LANGUAGES, CalcEngineFactory, CodeContext, CodeContextZones, type CodeSnippetBlockEntry, type CodeSnippetData, CodeSnippetExtension, type CodeSnippetExtensionOptions, type CodeSnippetLanguage, type CodeSnippetPluginState, CodeSnippetWidget, type CodeSnippetWidgetProps, CsvSourceMeta, type CustomTemplateContextValue, CustomTemplateProvider, type CustomTemplateProviderProps, type CustomThemeContextValue, CustomThemeProvider, type CustomThemeProviderProps, DATA_CARD_KEY, DEFAULT_MERMAID_DIAGRAM_TYPE, type DataCardBlockEntry, DataCardExtension, type DataCardExtensionOptions, type DataCardPluginState, DataCardWidget, type DataPreview, DiagramCanvas, type DiagramCommand, type DiagramData, type DiagramEdge, type DiagramNode, type DirectionModel, type DocCustomTemplates, type DocCustomThemes, DocumentSettingsDialog, type DocumentSettingsDialogProps, type DragContentType, type DropTarget, DropZoneOverlay, type DropZoneOverlayProps, EMPTY_TRANSITION, EditorHostMode, EmojiPicker, type EmojiPickerProps, FENCE_WIDGET_CONTAINED_EVENTS, type FenceBlockEntry, type FileCategory, type FileKind, type FolderEntry, FolderView, type FolderViewProps, FormulaEditRecord, type GridSaveResult, HOST_FENCE_KEY, type HeadingTransitionAttrs, type HeadingViewBinding, HeadingWithTemplate, type HostFenceBlockEntry, HostFenceExtension, type HostFenceExtensionOptions, type HostFencePluginState, ImportThemeSection, type ImportThemeSectionProps, type ImportedThemeResult, InlinePreviewGutter, type InlinePreviewGutterProps, MERMAID_DIAGRAM_KEY, MERMAID_DIAGRAM_TYPES, MERMAID_FLOWCHART_SHAPES, MediaBin, type MediaBinProps, type MediaClipPatch, 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 MermaidEditableText, type MermaidEditableTextTarget, type MermaidFlowchartDirection, type MermaidFlowchartModel, type MermaidFlowchartShape, type MermaidFlowchartShapeId, type MermaidNodeCanvasAction, type MermaidRenderResult, type MermaidSelection, MermaidShapePalette, type MermaidShapePaletteProps, type MermaidSourceEditableModel, type MermaidSurfaceScheme, MonacoLanguageLoadOptions, MonacoLanguageRequest, OutlinePanel, type OutlinePanelProps, PICKER_CATEGORIES, type PickerCategory, type PickerEntry, PlainHtmlPreview, type PlainHtmlPreviewProps, PreviewFormatSwitch, PreviewModeMenu, PreviewModeSwitch, type PreviewSettings, PreviewSettingsProvider, PreviewToolbarControls, type PreviewToolbarControlsProps, REPAIRABLE_KEY, type RecorderPanelMode, type RecorderSlide, RecorderSlidesPanel, type RecorderSlidesPanelProps, RecorderState, type RepairableBlockEntry, RepairableDiagramExtension, type RepairableDiagramExtensionOptions, type RepairablePluginState, SLIDE_TIMING_CHECKBOX_LABEL, type SaveCsvEditsOptions, type SaveXlsxEditsOptions, StatusBar, type StatusBarProps, Subscript, Superscript, TIMELINE_VIEW_KEY, TRANSITION_ENTRIES, TRANSITION_GROUPS, TemplatePicker, ThemeCustomizerPanel, type ThemeCustomizerPanelProps, ThemePicker, type ThemePickerProps, type ThemeSaveExtras, type TimelineBlockEntry, type TimelineCommand, type TimelineCommandResult, TimelineCompositionPanel, type TimelineCompositionPanelProps, TimelineEditorWidget, type TimelineEditorWidgetProps, type TimelineEventPatch, TimelineToolbar, type TimelineToolbarProps, TimelineTrack, type TimelineTrackProps, TimelineVideoPanel, type TimelineVideoPanelProps, type TimelineViewData, TimelineViewExtension, type TimelineViewExtensionOptions, type TimelineViewPluginState, Toolbar, type ToolbarProps, TooltipLayer, TransformMenu, 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 UseMonacoLoaderResult, VersionHistoryPanel, ViewMenuPanel, ViewSwitcher, type ViewSwitcherProps, type WrapPolicyIngest, XlsxSourceMeta, adaptThemeToSurface, addEdgeOp, addItemOp, addNodeOp, addTimelineEventOp, applyAsciiDiagramCommand, applyRepairCommand, applyTimelineCommand, applyTreeCommand, asciiDiagramToCanvas, buildRecorderSlideDeck, clampSlideIndex, classifyFile, codeSnippetFenceLanguageToken, codeSnippetLanguageLabel, codeSnippetMarkdown, containFenceWidgetEvents, dataExtensionOf, dataLinkHrefOf, detectLanguageFromFileName, draftPatchFromImportedTheme, findAsciiDiagramBlockPos, findCodeSnippetBlockPos, findDataCardBlockPos, findHostFenceBlockPos, findMermaidDiagramBlockPos, findOwningHeadingPosition, findRepairableBlockPos, findTimelineBlockPos, findTransitionEntry, findTreeBlockPos, formatSeconds, getBlockSlices, getTimelineForNode, indentItemOp, ingestForWrite, inspectMermaidSource, isAsciiSourceVisible, isCodeSnippetFenceLanguage, isCodeSnippetNode, isExpandedPanel, isMermaidDiagramNode, isMermaidFlowchartShapeId, isMermaidSourceVisible, isRepairableFence, isTimelineSourceSafeForSemanticEdit, lineToOffset, loadDataPreview, mapFenceEntries, markdownToTiptap, mermaidDiagramMarkdown, mermaidDiagramProperties, mermaidEditCapabilities, mermaidEditableTexts, mermaidErrorMessage, mermaidSurfaceScheme, monacoLanguageForFence, moveItemDownOp, moveItemUpOp, moveNodeOp, nextTimelineEventId, normalizeMermaidFlowchartShape, offsetToLine, outdentItemOp, panelModeAfterToggle, parseTimelineForNode, partitionFiles, persistFromWrite, preloadMonaco, preloadMonacoSuggestions, processDataFiles, processMediaFiles, processTextFile, processTextFiles, readBlockAttrsParams, readBlockAttrsTransition, readBlockAttrsValue, readHeadingLineTransition, readHeadingViewBinding, removeEdgeOp, removeItemOp, removeNodeOp, removeTimelineEventOp, renameItemOp, renameNodeOp, renderMermaidDiagram, replaceAsciiFenceText, replaceCodeSnippetText, replaceHostFenceText, replaceAsciiFenceText as replaceTreeFenceText, resizeNodeOp, resolveFileKind, resolveMermaidSurfaceTheme, sanitizeAsciiLabel, sanitizeTimelineText, sanitizeTreeLabel, saveCsvEdits, saveXlsxEdits, searchPickerEntries, setBlockAttrsValue, setBlockDurationInSource, setBlockStartTimeInSource, setBlockTransitionInSource, setHeadingAttrsTransition, setHeadingLineTransition, setMediaClipInSource, shouldPasteAsAsciiFence, shouldPasteAsTimelineFence, shouldPasteAsTreeFence, showSlideTimingCheckbox, sliceIndexAtOffset, slideStepForKey, spliceBlock, summarizeBlockProps, templateLabel, tiptapToMarkdown, toggleAsciiSource, toggleDirOp, toggleMermaidSource, transitionLabel, translateDiagramOp, unshownSlidesWarning, updateTimelineEventOp, useAsciiDiagramData, useBlockNavigator, useCodeSnippetData, useCustomTemplates, useCustomThemes, useDocCustomTemplates, useDocCustomThemes, useFileDrop, useMermaidDiagramData, useMermaidSurfaceTheme, useMonacoLoader, usePreviewSettings, useTimelineData, useTreeViewData, viewStateFromBinding, writeHeadingViewState };
|
package/dist/index.js
CHANGED
|
@@ -22,8 +22,11 @@ import {
|
|
|
22
22
|
CodeSnippetWidget,
|
|
23
23
|
CustomTemplateProvider,
|
|
24
24
|
CustomThemeProvider,
|
|
25
|
+
DATA_CARD_KEY,
|
|
25
26
|
DEFAULT_DRAFT,
|
|
26
27
|
DEFAULT_MERMAID_DIAGRAM_TYPE,
|
|
28
|
+
DataCardExtension,
|
|
29
|
+
DataCardWidget,
|
|
27
30
|
DiagramCanvas,
|
|
28
31
|
DocumentSettingsDialog,
|
|
29
32
|
DropZoneOverlay,
|
|
@@ -88,6 +91,7 @@ import {
|
|
|
88
91
|
VersionHistoryPanel,
|
|
89
92
|
ViewMenuPanel,
|
|
90
93
|
WysiwygEditor,
|
|
94
|
+
XLSX_LOCKED_REASON,
|
|
91
95
|
adaptThemeToSurface,
|
|
92
96
|
addEdgeOp,
|
|
93
97
|
addItemOp,
|
|
@@ -104,12 +108,17 @@ import {
|
|
|
104
108
|
codeSnippetMarkdown,
|
|
105
109
|
compileDraft,
|
|
106
110
|
containFenceWidgetEvents,
|
|
111
|
+
createXlsxFormulaSession,
|
|
112
|
+
dataExtensionOf,
|
|
113
|
+
dataLinkHrefOf,
|
|
107
114
|
detectLanguageFromFileName,
|
|
108
115
|
draftPatchFromImportedTheme,
|
|
109
116
|
findAsciiDiagramBlockPos,
|
|
110
117
|
findCodeSnippetBlockPos,
|
|
118
|
+
findDataCardBlockPos,
|
|
111
119
|
findHostFenceBlockPos,
|
|
112
120
|
findMermaidDiagramBlockPos,
|
|
121
|
+
findOwningHeadingPosition,
|
|
113
122
|
findRepairableBlockPos,
|
|
114
123
|
findTimelineBlockPos,
|
|
115
124
|
findTransitionEntry,
|
|
@@ -119,6 +128,7 @@ import {
|
|
|
119
128
|
getTimelineForNode,
|
|
120
129
|
indentItemOp,
|
|
121
130
|
ingestForWrite,
|
|
131
|
+
ingestSidecarBytes,
|
|
122
132
|
inspectMermaidSource,
|
|
123
133
|
isAsciiSourceVisible,
|
|
124
134
|
isCodeSnippetFenceLanguage,
|
|
@@ -129,6 +139,7 @@ import {
|
|
|
129
139
|
isRepairableFence,
|
|
130
140
|
isTimelineSourceSafeForSemanticEdit,
|
|
131
141
|
lineToOffset,
|
|
142
|
+
loadDataPreview,
|
|
132
143
|
mapFenceEntries,
|
|
133
144
|
mermaidDiagramMarkdown,
|
|
134
145
|
mermaidDiagramProperties,
|
|
@@ -150,6 +161,7 @@ import {
|
|
|
150
161
|
platformShortcut,
|
|
151
162
|
preloadMonaco,
|
|
152
163
|
preloadMonacoSuggestions,
|
|
164
|
+
processDataFiles,
|
|
153
165
|
processMediaFiles,
|
|
154
166
|
processTextFile,
|
|
155
167
|
processTextFiles,
|
|
@@ -157,6 +169,7 @@ import {
|
|
|
157
169
|
readBlockAttrsTransition,
|
|
158
170
|
readBlockAttrsValue,
|
|
159
171
|
readHeadingLineTransition,
|
|
172
|
+
readHeadingViewBinding,
|
|
160
173
|
removeEdgeOp,
|
|
161
174
|
removeItemOp,
|
|
162
175
|
removeNodeOp,
|
|
@@ -173,6 +186,8 @@ import {
|
|
|
173
186
|
sanitizeAsciiLabel,
|
|
174
187
|
sanitizeTimelineText,
|
|
175
188
|
sanitizeTreeLabel,
|
|
189
|
+
saveCsvEdits,
|
|
190
|
+
saveXlsxEdits,
|
|
176
191
|
searchPickerEntries,
|
|
177
192
|
setBlockAttrsValue,
|
|
178
193
|
setBlockDurationInSource,
|
|
@@ -211,8 +226,10 @@ import {
|
|
|
211
226
|
useMonacoLoader,
|
|
212
227
|
usePreviewSettings,
|
|
213
228
|
useTimelineData,
|
|
214
|
-
useTreeViewData
|
|
215
|
-
|
|
229
|
+
useTreeViewData,
|
|
230
|
+
viewStateFromBinding,
|
|
231
|
+
writeHeadingViewState
|
|
232
|
+
} from "./chunk-FT5F2EGI.js";
|
|
216
233
|
import "./chunk-V4NBQF5C.js";
|
|
217
234
|
import {
|
|
218
235
|
JsonEditor
|
|
@@ -741,9 +758,12 @@ export {
|
|
|
741
758
|
CodeSnippetWidget,
|
|
742
759
|
CustomTemplateProvider,
|
|
743
760
|
CustomThemeProvider,
|
|
761
|
+
DATA_CARD_KEY,
|
|
744
762
|
DEFAULT_MERMAID_DIAGRAM_TYPE,
|
|
745
763
|
DEFAULT_RECORDER_DEVICE_SETTINGS,
|
|
746
764
|
DEFAULT_TELEPROMPTER_PREFS,
|
|
765
|
+
DataCardExtension,
|
|
766
|
+
DataCardWidget,
|
|
747
767
|
DiagramCanvas,
|
|
748
768
|
DocumentSettingsDialog,
|
|
749
769
|
DropZoneOverlay,
|
|
@@ -825,6 +845,7 @@ export {
|
|
|
825
845
|
ViewMenuPanel,
|
|
826
846
|
ViewSwitcher,
|
|
827
847
|
WysiwygEditor,
|
|
848
|
+
XLSX_LOCKED_REASON,
|
|
828
849
|
adaptThemeToSurface,
|
|
829
850
|
addEdgeOp,
|
|
830
851
|
addItemOp,
|
|
@@ -854,6 +875,9 @@ export {
|
|
|
854
875
|
containFenceWidgetEvents,
|
|
855
876
|
createFloatingWindowManager,
|
|
856
877
|
createHarperProofingProvider,
|
|
878
|
+
createXlsxFormulaSession,
|
|
879
|
+
dataExtensionOf,
|
|
880
|
+
dataLinkHrefOf,
|
|
857
881
|
detectFloatTiers,
|
|
858
882
|
detectLanguageFromFileName,
|
|
859
883
|
documentTitleFromFileName,
|
|
@@ -863,8 +887,10 @@ export {
|
|
|
863
887
|
executeNarrationSave,
|
|
864
888
|
findAsciiDiagramBlockPos,
|
|
865
889
|
findCodeSnippetBlockPos,
|
|
890
|
+
findDataCardBlockPos,
|
|
866
891
|
findHostFenceBlockPos,
|
|
867
892
|
findMermaidDiagramBlockPos,
|
|
893
|
+
findOwningHeadingPosition,
|
|
868
894
|
findRepairableBlockPos,
|
|
869
895
|
findTimelineBlockPos,
|
|
870
896
|
findTransitionEntry,
|
|
@@ -877,6 +903,7 @@ export {
|
|
|
877
903
|
imageEditorReducer,
|
|
878
904
|
indentItemOp,
|
|
879
905
|
ingestForWrite,
|
|
906
|
+
ingestSidecarBytes,
|
|
880
907
|
initialImageEditorState,
|
|
881
908
|
insertNarrationPreamble,
|
|
882
909
|
inspectMermaidSource,
|
|
@@ -890,6 +917,7 @@ export {
|
|
|
890
917
|
isRepairableFence,
|
|
891
918
|
isTimelineSourceSafeForSemanticEdit,
|
|
892
919
|
lineToOffset,
|
|
920
|
+
loadDataPreview,
|
|
893
921
|
mapFenceEntries,
|
|
894
922
|
markdownToTiptap,
|
|
895
923
|
measureTokenLines,
|
|
@@ -914,6 +942,7 @@ export {
|
|
|
914
942
|
persistFromWrite,
|
|
915
943
|
preloadMonaco,
|
|
916
944
|
preloadMonacoSuggestions,
|
|
945
|
+
processDataFiles,
|
|
917
946
|
processMediaFiles,
|
|
918
947
|
processTextFile,
|
|
919
948
|
processTextFiles,
|
|
@@ -922,6 +951,7 @@ export {
|
|
|
922
951
|
readBlockAttrsTransition,
|
|
923
952
|
readBlockAttrsValue,
|
|
924
953
|
readHeadingLineTransition,
|
|
954
|
+
readHeadingViewBinding,
|
|
925
955
|
recordedMediaKind,
|
|
926
956
|
recorderBitsPerSecond,
|
|
927
957
|
recorderDeviceGroups,
|
|
@@ -948,6 +978,8 @@ export {
|
|
|
948
978
|
sanitizeAsciiLabel,
|
|
949
979
|
sanitizeTimelineText,
|
|
950
980
|
sanitizeTreeLabel,
|
|
981
|
+
saveCsvEdits,
|
|
982
|
+
saveXlsxEdits,
|
|
951
983
|
searchPickerEntries,
|
|
952
984
|
setBlockAttrsValue,
|
|
953
985
|
setBlockDurationInSource,
|
|
@@ -1004,5 +1036,7 @@ export {
|
|
|
1004
1036
|
useTeleprompter,
|
|
1005
1037
|
useTimelineData,
|
|
1006
1038
|
useTreeViewData,
|
|
1007
|
-
vadConfigForSensitivity
|
|
1039
|
+
vadConfigForSensitivity,
|
|
1040
|
+
viewStateFromBinding,
|
|
1041
|
+
writeHeadingViewState
|
|
1008
1042
|
};
|
package/dist/shell/index.d.ts
CHANGED
|
@@ -1,5 +1,9 @@
|
|
|
1
|
-
export { B as BlockTagVisibility,
|
|
1
|
+
export { B as BlockTagVisibility, e as DocumentLinkCandidate, f as DocumentLinkProvider, g as EditorActions, h as EditorColorScheme, i as EditorContextMenuContext, j as EditorContextMenuItem, k as EditorContextMenuItemVisibility, l as EditorContextMenuProvider, m as EditorContextMenuProviderProps, n as EditorContextValue, E as EditorHostMode, o as EditorMode, p as EditorProvider, q as EditorProviderProps, r as EditorShell, s as EditorShellProps, t as EditorState, u as EditorView, I as ImageDisplayMode, L as LayoutMode, M as MentionCandidate, x as MentionProvider, P as PreviewPanel, y as PreviewPanelProps, R as RawEditor, z as RawEditorProps, T as ThemeInheritance, V as ViewPreferences, A as WysiwygEditor, G as WysiwygEditorProps, O as useEditorContext, Q as useEditorContextMenuItems } from '../shell-DInMVUpf.js';
|
|
2
2
|
import 'react/jsx-runtime';
|
|
3
|
+
import '@bendyline/squisq/table';
|
|
4
|
+
import '@bendyline/squisq-calc';
|
|
5
|
+
import '@bendyline/squisq-grid-react';
|
|
6
|
+
import '@bendyline/squisq-formats/xlsx';
|
|
3
7
|
import 'react';
|
|
4
8
|
import '@bendyline/squisq/schemas';
|
|
5
9
|
import '@bendyline/squisq/fence';
|
package/dist/shell/index.js
CHANGED