@pierre/diffs 1.3.6 → 1.4.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/components/CodeView.d.ts +113 -68
- package/dist/components/CodeView.d.ts.map +1 -1
- package/dist/components/CodeView.js +153 -58
- package/dist/components/CodeView.js.map +1 -1
- package/dist/components/File.d.ts +75 -15
- package/dist/components/File.d.ts.map +1 -1
- package/dist/components/File.js +223 -62
- package/dist/components/File.js.map +1 -1
- package/dist/components/FileDiff.d.ts +97 -21
- package/dist/components/FileDiff.d.ts.map +1 -1
- package/dist/components/FileDiff.js +400 -100
- package/dist/components/FileDiff.js.map +1 -1
- package/dist/components/UnresolvedFile.d.ts +2 -2
- package/dist/components/UnresolvedFile.d.ts.map +1 -1
- package/dist/components/UnresolvedFile.js +2 -2
- package/dist/components/UnresolvedFile.js.map +1 -1
- package/dist/components/VirtualizedFile.d.ts +16 -7
- package/dist/components/VirtualizedFile.d.ts.map +1 -1
- package/dist/components/VirtualizedFile.js +140 -51
- package/dist/components/VirtualizedFile.js.map +1 -1
- package/dist/components/VirtualizedFileDiff.d.ts +14 -8
- package/dist/components/VirtualizedFileDiff.d.ts.map +1 -1
- package/dist/components/VirtualizedFileDiff.js +183 -93
- package/dist/components/VirtualizedFileDiff.js.map +1 -1
- package/dist/components/VirtulizerDevelopment.d.ts +1 -1
- package/dist/components/VirtulizerDevelopment.d.ts.map +1 -1
- package/dist/edit/index.d.ts +7 -4
- package/dist/edit/index.js +5 -1
- package/dist/editor/EditStateManager.d.ts +56 -0
- package/dist/editor/EditStateManager.d.ts.map +1 -0
- package/dist/editor/EditStateManager.js +135 -0
- package/dist/editor/EditStateManager.js.map +1 -0
- package/dist/editor/cloneRetainedDiffSessionSnapshot.d.ts +7 -0
- package/dist/editor/cloneRetainedDiffSessionSnapshot.d.ts.map +1 -0
- package/dist/editor/cloneRetainedDiffSessionSnapshot.js +16 -0
- package/dist/editor/cloneRetainedDiffSessionSnapshot.js.map +1 -0
- package/dist/editor/editPrediction.d.ts +76 -0
- package/dist/editor/editPrediction.d.ts.map +1 -0
- package/dist/editor/editPrediction.js +365 -0
- package/dist/editor/editPrediction.js.map +1 -0
- package/dist/editor/editStack.d.ts +19 -40
- package/dist/editor/editStack.d.ts.map +1 -1
- package/dist/editor/editStack.js +67 -4
- package/dist/editor/editStack.js.map +1 -1
- package/dist/editor/editor.d.ts +118 -29
- package/dist/editor/editor.d.ts.map +1 -1
- package/dist/editor/editor.js +1103 -383
- package/dist/editor/editor.js.map +1 -1
- package/dist/editor/editor2.js +1 -1
- package/dist/editor/languages.d.ts +3 -3
- package/dist/editor/languages.d.ts.map +1 -1
- package/dist/editor/languages.js.map +1 -1
- package/dist/editor/lineAnnotations.d.ts +3 -3
- package/dist/editor/lineAnnotations.d.ts.map +1 -1
- package/dist/editor/lineAnnotations.js +16 -7
- package/dist/editor/lineAnnotations.js.map +1 -1
- package/dist/editor/marker.d.ts +2 -2
- package/dist/editor/marker.d.ts.map +1 -1
- package/dist/editor/marker.js.map +1 -1
- package/dist/editor/matchBrackets.d.ts +2 -2
- package/dist/editor/matchBrackets.d.ts.map +1 -1
- package/dist/editor/matchBrackets.js.map +1 -1
- package/dist/editor/pieceTable.d.ts +1 -1
- package/dist/editor/pieceTable.js.map +1 -1
- package/dist/editor/searchPanel.d.ts +2 -2
- package/dist/editor/searchPanel.js +1 -1
- package/dist/editor/searchPanel.js.map +1 -1
- package/dist/editor/selection.d.ts +32 -23
- package/dist/editor/selection.d.ts.map +1 -1
- package/dist/editor/selection.js +3 -3
- package/dist/editor/selection.js.map +1 -1
- package/dist/editor/selectionAction.d.ts +3 -3
- package/dist/editor/selectionAction.d.ts.map +1 -1
- package/dist/editor/selectionAction.js.map +1 -1
- package/dist/editor/textDocument.d.ts +11 -8
- package/dist/editor/textDocument.d.ts.map +1 -1
- package/dist/editor/textDocument.js +28 -5
- package/dist/editor/textDocument.js.map +1 -1
- package/dist/editor/textDocumentChangeTransaction.d.ts +15 -0
- package/dist/editor/textDocumentChangeTransaction.d.ts.map +1 -0
- package/dist/editor/textDocumentChangeTransaction.js +12 -0
- package/dist/editor/textDocumentChangeTransaction.js.map +1 -0
- package/dist/editor/textMeasure.d.ts +5 -0
- package/dist/editor/textMeasure.d.ts.map +1 -1
- package/dist/editor/textMeasure.js +10 -0
- package/dist/editor/textMeasure.js.map +1 -1
- package/dist/editor/tokenizer.d.ts +1 -1
- package/dist/editor/tokenizer.js.map +1 -1
- package/dist/editor/types.d.ts +267 -0
- package/dist/editor/types.d.ts.map +1 -0
- package/dist/editor/types.js +0 -0
- package/dist/editor/utils.d.ts +2 -1
- package/dist/editor/utils.d.ts.map +1 -1
- package/dist/editor/utils.js +4 -1
- package/dist/editor/utils.js.map +1 -1
- package/dist/index.d.ts +8 -6
- package/dist/index.js +9 -8
- package/dist/managers/InteractionManager.d.ts.map +1 -1
- package/dist/managers/InteractionManager.js +7 -0
- package/dist/managers/InteractionManager.js.map +1 -1
- package/dist/react/CodeView.d.ts +36 -25
- package/dist/react/CodeView.d.ts.map +1 -1
- package/dist/react/CodeView.js +15 -14
- package/dist/react/CodeView.js.map +1 -1
- package/dist/react/EditContext.d.ts +8 -11
- package/dist/react/EditContext.d.ts.map +1 -1
- package/dist/react/EditContext.js +2 -9
- package/dist/react/EditContext.js.map +1 -1
- package/dist/react/File.d.ts +10 -6
- package/dist/react/File.d.ts.map +1 -1
- package/dist/react/File.js +8 -4
- package/dist/react/File.js.map +1 -1
- package/dist/react/FileDiff.d.ts +10 -5
- package/dist/react/FileDiff.d.ts.map +1 -1
- package/dist/react/FileDiff.js +8 -4
- package/dist/react/FileDiff.js.map +1 -1
- package/dist/react/MultiFileDiff.d.ts +8 -5
- package/dist/react/MultiFileDiff.d.ts.map +1 -1
- package/dist/react/MultiFileDiff.js +8 -12
- package/dist/react/MultiFileDiff.js.map +1 -1
- package/dist/react/PatchDiff.d.ts +7 -4
- package/dist/react/PatchDiff.d.ts.map +1 -1
- package/dist/react/PatchDiff.js +8 -4
- package/dist/react/PatchDiff.js.map +1 -1
- package/dist/react/UnresolvedFile.d.ts +3 -3
- package/dist/react/UnresolvedFile.d.ts.map +1 -1
- package/dist/react/UnresolvedFile.js.map +1 -1
- package/dist/react/index.d.ts +8 -5
- package/dist/react/types.d.ts +46 -9
- package/dist/react/types.d.ts.map +1 -1
- package/dist/react/utils/renderDiffChildren.d.ts +14 -12
- package/dist/react/utils/renderDiffChildren.d.ts.map +1 -1
- package/dist/react/utils/renderDiffChildren.js +2 -2
- package/dist/react/utils/renderDiffChildren.js.map +1 -1
- package/dist/react/utils/renderFileChildren.d.ts +14 -12
- package/dist/react/utils/renderFileChildren.d.ts.map +1 -1
- package/dist/react/utils/renderFileChildren.js +2 -2
- package/dist/react/utils/renderFileChildren.js.map +1 -1
- package/dist/react/utils/useFileDiffInstance.d.ts +22 -10
- package/dist/react/utils/useFileDiffInstance.d.ts.map +1 -1
- package/dist/react/utils/useFileDiffInstance.js +112 -22
- package/dist/react/utils/useFileDiffInstance.js.map +1 -1
- package/dist/react/utils/useFileInstance.d.ts +15 -9
- package/dist/react/utils/useFileInstance.d.ts.map +1 -1
- package/dist/react/utils/useFileInstance.js +84 -25
- package/dist/react/utils/useFileInstance.js.map +1 -1
- package/dist/renderers/DiffHunksRenderer.d.ts +30 -15
- package/dist/renderers/DiffHunksRenderer.d.ts.map +1 -1
- package/dist/renderers/DiffHunksRenderer.js +172 -108
- package/dist/renderers/DiffHunksRenderer.js.map +1 -1
- package/dist/renderers/FileRenderer.d.ts +27 -11
- package/dist/renderers/FileRenderer.d.ts.map +1 -1
- package/dist/renderers/FileRenderer.js +138 -64
- package/dist/renderers/FileRenderer.js.map +1 -1
- package/dist/renderers/UnresolvedFileHunksRenderer.d.ts +2 -2
- package/dist/renderers/UnresolvedFileHunksRenderer.d.ts.map +1 -1
- package/dist/renderers/UnresolvedFileHunksRenderer.js +2 -2
- package/dist/renderers/UnresolvedFileHunksRenderer.js.map +1 -1
- package/dist/shiki-stream/tokenizer.d.ts.map +1 -1
- package/dist/shiki-stream/tokenizer.js +2 -1
- package/dist/shiki-stream/tokenizer.js.map +1 -1
- package/dist/ssr/index.d.ts +2 -2
- package/dist/ssr/preloadDiffs.d.ts +21 -21
- package/dist/ssr/preloadDiffs.d.ts.map +1 -1
- package/dist/ssr/preloadDiffs.js +1 -1
- package/dist/ssr/preloadDiffs.js.map +1 -1
- package/dist/ssr/preloadFile.d.ts +6 -6
- package/dist/ssr/preloadFile.d.ts.map +1 -1
- package/dist/ssr/preloadFile.js.map +1 -1
- package/dist/ssr/preloadPatchFile.d.ts +4 -4
- package/dist/ssr/preloadPatchFile.d.ts.map +1 -1
- package/dist/ssr/preloadPatchFile.js.map +1 -1
- package/dist/style.js +1 -1
- package/dist/types.d.ts +13 -263
- package/dist/types.d.ts.map +1 -1
- package/dist/utils/appendItems.d.ts +5 -0
- package/dist/utils/appendItems.d.ts.map +1 -0
- package/dist/utils/appendItems.js +8 -0
- package/dist/utils/appendItems.js.map +1 -0
- package/dist/utils/areDiffTargetsEqual.js +1 -1
- package/dist/utils/areDiffTargetsEqual.js.map +1 -1
- package/dist/utils/areFileTargetsEqual.d.ts +7 -0
- package/dist/utils/areFileTargetsEqual.d.ts.map +1 -0
- package/dist/utils/areFileTargetsEqual.js +8 -0
- package/dist/utils/areFileTargetsEqual.js.map +1 -0
- package/dist/utils/areManagedSnapshotsEqual.d.ts +1 -1
- package/dist/utils/areManagedSnapshotsEqual.d.ts.map +1 -1
- package/dist/utils/areManagedSnapshotsEqual.js.map +1 -1
- package/dist/utils/areOptionsEqual.d.ts +3 -3
- package/dist/utils/areOptionsEqual.d.ts.map +1 -1
- package/dist/utils/areOptionsEqual.js.map +1 -1
- package/dist/utils/cloneFileDiffMetadata.d.ts +3 -2
- package/dist/utils/cloneFileDiffMetadata.d.ts.map +1 -1
- package/dist/utils/cloneFileDiffMetadata.js +8 -5
- package/dist/utils/cloneFileDiffMetadata.js.map +1 -1
- package/dist/utils/composeCacheKey.d.ts +6 -0
- package/dist/utils/composeCacheKey.d.ts.map +1 -0
- package/dist/utils/composeCacheKey.js +10 -0
- package/dist/utils/composeCacheKey.js.map +1 -0
- package/dist/utils/editSessionAnnotations.d.ts +69 -0
- package/dist/utils/editSessionAnnotations.d.ts.map +1 -0
- package/dist/utils/editSessionAnnotations.js +64 -0
- package/dist/utils/editSessionAnnotations.js.map +1 -0
- package/dist/utils/editSessionHunks.d.ts +5 -3
- package/dist/utils/editSessionHunks.d.ts.map +1 -1
- package/dist/utils/editSessionHunks.js +7 -5
- package/dist/utils/editSessionHunks.js.map +1 -1
- package/dist/utils/getDiffHunksRendererOptions.d.ts +1 -1
- package/dist/utils/getDiffHunksRendererOptions.d.ts.map +1 -1
- package/dist/utils/getDiffHunksRendererOptions.js.map +1 -1
- package/dist/utils/getFileRendererOptions.d.ts +1 -1
- package/dist/utils/getFileRendererOptions.d.ts.map +1 -1
- package/dist/utils/getFileRendererOptions.js.map +1 -1
- package/dist/utils/hydratePartialDiff.d.ts.map +1 -1
- package/dist/utils/hydratePartialDiff.js +2 -1
- package/dist/utils/hydratePartialDiff.js.map +1 -1
- package/dist/utils/lineAnnotationIdentity.d.ts +16 -0
- package/dist/utils/lineAnnotationIdentity.d.ts.map +1 -0
- package/dist/utils/lineAnnotationIdentity.js +17 -0
- package/dist/utils/lineAnnotationIdentity.js.map +1 -0
- package/dist/utils/parseDiffFromFile.d.ts +2 -2
- package/dist/utils/parseDiffFromFile.d.ts.map +1 -1
- package/dist/utils/parseDiffFromFile.js +6 -6
- package/dist/utils/parseDiffFromFile.js.map +1 -1
- package/dist/utils/parsePatchFiles.d.ts +6 -3
- package/dist/utils/parsePatchFiles.d.ts.map +1 -1
- package/dist/utils/parsePatchFiles.js +34 -9
- package/dist/utils/parsePatchFiles.js.map +1 -1
- package/dist/utils/renderDiffWithHighlighter.d.ts.map +1 -1
- package/dist/utils/renderDiffWithHighlighter.js +6 -5
- package/dist/utils/renderDiffWithHighlighter.js.map +1 -1
- package/dist/utils/renderFileWithHighlighter.d.ts.map +1 -1
- package/dist/utils/renderFileWithHighlighter.js +7 -4
- package/dist/utils/renderFileWithHighlighter.js.map +1 -1
- package/dist/utils/trimPatchContext.d.ts.map +1 -1
- package/dist/utils/trimPatchContext.js +3 -2
- package/dist/utils/trimPatchContext.js.map +1 -1
- package/dist/utils/updateDiffHunks.js +1 -1
- package/dist/utils/virtualDiffLayout.js +1 -1
- package/dist/worker/WorkerPoolManager.d.ts +4 -3
- package/dist/worker/WorkerPoolManager.d.ts.map +1 -1
- package/dist/worker/WorkerPoolManager.js +33 -4
- package/dist/worker/WorkerPoolManager.js.map +1 -1
- package/dist/worker/types.d.ts +5 -0
- package/dist/worker/types.d.ts.map +1 -1
- package/dist/worker/worker-portable.js +14 -6
- package/dist/worker/worker-portable.js.map +1 -1
- package/dist/worker/worker.js +14 -6
- package/dist/worker/worker.js.map +1 -1
- package/package.json +9 -1
- package/dist/editor/stateStorage.d.ts +0 -15
- package/dist/editor/stateStorage.d.ts.map +0 -1
- package/dist/editor/stateStorage.js +0 -65
- package/dist/editor/stateStorage.js.map +0 -1
package/dist/editor/utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","names":[],"sources":["../../src/editor/utils.ts"],"sourcesContent":["export function h<K extends keyof HTMLElementTagNameMap>(\n tagName: K,\n props?: {\n style?: string | Partial<CSSStyleDeclaration>;\n dataset?: DOMStringMap | string[] | string;\n children?: (Node | string)[];\n } & Partial<Omit<HTMLElementTagNameMap[K], 'style' | 'dataset' | 'children'>>,\n parent?: Element | ShadowRoot | DocumentFragment\n): HTMLElementTagNameMap[K] {\n const { style, dataset, children, ...attrs } = props ?? {};\n const el = document.createElement(tagName);\n Object.assign(el, attrs);\n if (style !== undefined) {\n if (typeof style === 'string') {\n el.style.cssText = style;\n } else {\n Object.assign(el.style, style);\n }\n }\n if (dataset !== undefined) {\n if (typeof dataset === 'string') {\n el.dataset[dataset] = '';\n } else if (Array.isArray(dataset)) {\n dataset.forEach((key) => {\n el.dataset[key] = '';\n });\n } else {\n Object.assign(el.dataset, dataset);\n }\n }\n if (children !== undefined) {\n el.replaceChildren(...children);\n }\n if (parent !== undefined) {\n parent.appendChild(el);\n }\n return el;\n}\n\nexport function addEventListener<K extends keyof HTMLElementEventMap>(\n el: HTMLElement,\n event: K,\n listener: (this: HTMLElement, evt: HTMLElementEventMap[K]) => void,\n options?: AddEventListenerOptions\n): () => void;\nexport function addEventListener<K extends keyof DocumentEventMap>(\n el: Document,\n event: K,\n listener: (this: Document, evt: DocumentEventMap[K]) => void,\n options?: AddEventListenerOptions\n): () => void;\nexport function addEventListener<K extends keyof WindowEventMap>(\n el: Window,\n event: K,\n listener: (this: Window, evt: WindowEventMap[K]) => void,\n options?: AddEventListenerOptions\n): () => void;\nexport function addEventListener<K extends keyof MediaQueryListEventMap>(\n el: MediaQueryList,\n event: K,\n listener: (this: MediaQueryList, evt: MediaQueryListEventMap[K]) => void,\n options?: AddEventListenerOptions\n): () => void;\nexport function addEventListener(\n el: HTMLElement | Document | ShadowRoot | Window | MediaQueryList,\n event: string,\n listener: EventListener,\n options?: AddEventListenerOptions\n) {\n el.addEventListener(event, listener, options);\n return () => el.removeEventListener(event, listener, options);\n}\n\nexport function getLineNumberAttr(\n el: HTMLElement,\n key = 'line'\n): number | undefined {\n const value = el.dataset[key];\n if (value === undefined) {\n return undefined;\n }\n const lineNumber = parseInt(value, 10);\n if (Number.isNaN(lineNumber)) {\n return undefined;\n }\n return lineNumber;\n}\n\nexport function clampDomOffset(node: Node, offset: number): number {\n if (node.nodeType === 3) {\n const length = (node as Text).textContent?.length ?? 0;\n return Math.max(0, Math.min(offset, length));\n }\n if (node.nodeType === 1) {\n return Math.max(0, Math.min(offset, node.childNodes.length));\n }\n return 0;\n}\n\nexport function extend<T extends object>(obj: T, attrs: Partial<T>): T {\n return Object.assign(obj, attrs);\n}\n\n// oxlint-disable-next-line typescript/no-explicit-any\nexport function debounce<T extends (...args: any[]) => void>(\n func: T,\n wait: number\n): (...args: Parameters<T>) => void {\n let timeout: ReturnType<typeof setTimeout>;\n return function (this: ThisType<T>, ...args: Parameters<T>) {\n clearTimeout(timeout);\n timeout = setTimeout(() => func.apply(this, args), wait);\n };\n}\n\nexport function round(value: number, precision: number = 1000): number {\n return Math.round(value * precision) / precision;\n}\n\nexport function endsWithLineBreak(text: string): boolean {\n return text.endsWith('\\n') || text.endsWith('\\r');\n}\n\n// Creates an Intl.Segmenter, or undefined when the engine lacks support.\n// Callers must fall back to a degraded path when this returns undefined.\nexport function createSegmenter(\n options: Intl.SegmenterOptions\n): Intl.Segmenter | undefined {\n if (typeof Intl === 'undefined' || typeof Intl.Segmenter !== 'function') {\n return undefined;\n }\n return new Intl.Segmenter(undefined, options);\n}\n\n// Lazily created and cached grapheme segmenter. Avoids constructing\n// Intl.Segmenter at import time so importing the editor never throws on\n// engines that lack it. Undefined when the engine has no Intl.Segmenter.\nlet graphemeSegmenter: Intl.Segmenter | undefined;\nlet graphemeSegmenterInit = false;\nexport function getGraphemeSegmenter(): Intl.Segmenter | undefined {\n if (!graphemeSegmenterInit) {\n graphemeSegmenter = createSegmenter({ granularity: 'grapheme' });\n graphemeSegmenterInit = true;\n }\n return graphemeSegmenter;\n}\n\n// lookup the scroll container for the given element\nexport function lookupScrollContainer(\n element: HTMLElement\n): HTMLElement | Document {\n const ownerDocument = element.ownerDocument;\n let parentElement = element.parentElement;\n while (\n parentElement != null &&\n parentElement !== ownerDocument.body &&\n parentElement !== ownerDocument.documentElement\n ) {\n const overflowY =\n parentElement.ownerDocument.defaultView?.getComputedStyle(\n parentElement\n ).overflowY;\n if (\n overflowY === 'auto' ||\n overflowY === 'scroll' ||\n overflowY === 'overlay'\n ) {\n return parentElement;\n }\n parentElement = parentElement.parentElement;\n }\n return ownerDocument;\n}\n"],"mappings":";AAAA,SAAgB,EACd,SACA,OAKA,QAC0B;CAC1B,MAAM,EAAE,OAAO,SAAS,UAAU,GAAG,UAAU,SAAS,CAAC;CACzD,MAAM,KAAK,SAAS,cAAc,OAAO;CACzC,OAAO,OAAO,IAAI,KAAK;CACvB,IAAI,UAAU,KAAA,GACZ,IAAI,OAAO,UAAU,UACnB,GAAG,MAAM,UAAU;MAEnB,OAAO,OAAO,GAAG,OAAO,KAAK;CAGjC,IAAI,YAAY,KAAA,GACd,IAAI,OAAO,YAAY,UACrB,GAAG,QAAQ,WAAW;MACjB,IAAI,MAAM,QAAQ,OAAO,GAC9B,QAAQ,SAAS,QAAQ;EACvB,GAAG,QAAQ,OAAO;CACpB,CAAC;MAED,OAAO,OAAO,GAAG,SAAS,OAAO;CAGrC,IAAI,aAAa,KAAA,GACf,GAAG,gBAAgB,GAAG,QAAQ;CAEhC,IAAI,WAAW,KAAA,GACb,OAAO,YAAY,EAAE;CAEvB,OAAO;AACT;AA0BA,SAAgB,iBACd,IACA,OACA,UACA,SACA;CACA,GAAG,iBAAiB,OAAO,UAAU,OAAO;CAC5C,aAAa,GAAG,oBAAoB,OAAO,UAAU,OAAO;AAC9D;AAEA,SAAgB,kBACd,IACA,MAAM,QACc;CACpB,MAAM,QAAQ,GAAG,QAAQ;CACzB,IAAI,UAAU,KAAA,GACZ;CAEF,MAAM,aAAa,SAAS,OAAO,EAAE;CACrC,IAAI,OAAO,MAAM,UAAU,GACzB;CAEF,OAAO;AACT;AAEA,SAAgB,eAAe,MAAY,QAAwB;CACjE,IAAI,KAAK,aAAa,GAAG;EACvB,MAAM,SAAU,KAAc,aAAa,UAAU;EACrD,OAAO,KAAK,IAAI,GAAG,KAAK,IAAI,QAAQ,MAAM,CAAC;CAC7C;CACA,IAAI,KAAK,aAAa,GACpB,OAAO,KAAK,IAAI,GAAG,KAAK,IAAI,QAAQ,KAAK,WAAW,MAAM,CAAC;CAE7D,OAAO;AACT;AAEA,SAAgB,OAAyB,KAAQ,OAAsB;CACrE,OAAO,OAAO,OAAO,KAAK,KAAK;AACjC;AAGA,SAAgB,SACd,MACA,MACkC;CAClC,IAAI;CACJ,OAAO,SAA6B,GAAG,MAAqB;EAC1D,aAAa,OAAO;EACpB,UAAU,iBAAiB,KAAK,MAAM,MAAM,IAAI,GAAG,IAAI;CACzD;AACF;AAEA,SAAgB,MAAM,OAAe,YAAoB,KAAc;CACrE,OAAO,KAAK,MAAM,QAAQ,SAAS,IAAI;AACzC;AAEA,SAAgB,kBAAkB,MAAuB;CACvD,OAAO,KAAK,SAAS,IAAI,KAAK,KAAK,SAAS,IAAI;AAClD;AAIA,SAAgB,gBACd,SAC4B;CAC5B,IAAI,OAAO,SAAS,eAAe,OAAO,KAAK,cAAc,YAC3D;CAEF,OAAO,IAAI,KAAK,UAAU,KAAA,GAAW,OAAO;AAC9C;AAKA,IAAI;AACJ,IAAI,wBAAwB;AAC5B,SAAgB,uBAAmD;CACjE,IAAI,CAAC,uBAAuB;EAC1B,oBAAoB,gBAAgB,EAAE,aAAa,WAAW,CAAC;EAC/D,wBAAwB;CAC1B;CACA,OAAO;AACT;AAGA,SAAgB,sBACd,SACwB;CACxB,MAAM,gBAAgB,QAAQ;CAC9B,IAAI,gBAAgB,QAAQ;CAC5B,OACE,iBAAiB,QACjB,kBAAkB,cAAc,QAChC,kBAAkB,cAAc,iBAChC;EACA,MAAM,YACJ,cAAc,cAAc,aAAa,iBACvC,aACF,CAAC,CAAC;EACJ,IACE,cAAc,UACd,cAAc,YACd,cAAc,WAEd,OAAO;EAET,gBAAgB,cAAc;CAChC;CACA,OAAO;AACT"}
|
|
1
|
+
{"version":3,"file":"utils.js","names":[],"sources":["../../src/editor/utils.ts"],"sourcesContent":["export function h<K extends keyof HTMLElementTagNameMap>(\n tagName: K,\n props?: {\n style?: string | Partial<CSSStyleDeclaration>;\n dataset?: DOMStringMap | string[] | string;\n children?: (Node | string)[];\n } & Partial<Omit<HTMLElementTagNameMap[K], 'style' | 'dataset' | 'children'>>,\n parent?: Element | ShadowRoot | DocumentFragment\n): HTMLElementTagNameMap[K] {\n const { style, dataset, children, ...attrs } = props ?? {};\n const el = document.createElement(tagName);\n Object.assign(el, attrs);\n if (style !== undefined) {\n if (typeof style === 'string') {\n el.style.cssText = style;\n } else {\n Object.assign(el.style, style);\n }\n }\n if (dataset !== undefined) {\n if (typeof dataset === 'string') {\n el.dataset[dataset] = '';\n } else if (Array.isArray(dataset)) {\n dataset.forEach((key) => {\n el.dataset[key] = '';\n });\n } else {\n Object.assign(el.dataset, dataset);\n }\n }\n if (children !== undefined) {\n el.replaceChildren(...children);\n }\n if (parent !== undefined) {\n parent.appendChild(el);\n }\n return el;\n}\n\nexport function isPromise<T>(value: T | Promise<T>): value is Promise<T> {\n return (\n typeof value === 'object' &&\n value !== null &&\n 'then' in value &&\n typeof value.then === 'function'\n );\n}\n\nexport function addEventListener<K extends keyof HTMLElementEventMap>(\n el: HTMLElement,\n event: K,\n listener: (this: HTMLElement, evt: HTMLElementEventMap[K]) => void,\n options?: AddEventListenerOptions\n): () => void;\nexport function addEventListener<K extends keyof DocumentEventMap>(\n el: Document,\n event: K,\n listener: (this: Document, evt: DocumentEventMap[K]) => void,\n options?: AddEventListenerOptions\n): () => void;\nexport function addEventListener<K extends keyof WindowEventMap>(\n el: Window,\n event: K,\n listener: (this: Window, evt: WindowEventMap[K]) => void,\n options?: AddEventListenerOptions\n): () => void;\nexport function addEventListener<K extends keyof MediaQueryListEventMap>(\n el: MediaQueryList,\n event: K,\n listener: (this: MediaQueryList, evt: MediaQueryListEventMap[K]) => void,\n options?: AddEventListenerOptions\n): () => void;\nexport function addEventListener(\n el: HTMLElement | Document | ShadowRoot | Window | MediaQueryList,\n event: string,\n listener: EventListener,\n options?: AddEventListenerOptions\n) {\n el.addEventListener(event, listener, options);\n return () => el.removeEventListener(event, listener, options);\n}\n\nexport function getLineNumberAttr(\n el: HTMLElement,\n key = 'line'\n): number | undefined {\n const value = el.dataset[key];\n if (value === undefined) {\n return undefined;\n }\n const lineNumber = parseInt(value, 10);\n if (Number.isNaN(lineNumber)) {\n return undefined;\n }\n return lineNumber;\n}\n\nexport function clampDomOffset(node: Node, offset: number): number {\n if (node.nodeType === 3) {\n const length = (node as Text).textContent?.length ?? 0;\n return Math.max(0, Math.min(offset, length));\n }\n if (node.nodeType === 1) {\n return Math.max(0, Math.min(offset, node.childNodes.length));\n }\n return 0;\n}\n\nexport function extend<T extends object>(obj: T, attrs: Partial<T>): T {\n return Object.assign(obj, attrs);\n}\n\n// oxlint-disable-next-line typescript/no-explicit-any\nexport function debounce<T extends (...args: any[]) => void>(\n func: T,\n wait: number\n): (...args: Parameters<T>) => void {\n let timeout: ReturnType<typeof setTimeout>;\n return function (this: ThisType<T>, ...args: Parameters<T>) {\n clearTimeout(timeout);\n timeout = setTimeout(() => func.apply(this, args), wait);\n };\n}\n\nexport function round(value: number, precision: number = 1000): number {\n return Math.round(value * precision) / precision;\n}\n\nexport function endsWithLineBreak(text: string): boolean {\n return text.endsWith('\\n') || text.endsWith('\\r');\n}\n\n// Creates an Intl.Segmenter, or undefined when the engine lacks support.\n// Callers must fall back to a degraded path when this returns undefined.\nexport function createSegmenter(\n options: Intl.SegmenterOptions\n): Intl.Segmenter | undefined {\n if (typeof Intl === 'undefined' || typeof Intl.Segmenter !== 'function') {\n return undefined;\n }\n return new Intl.Segmenter(undefined, options);\n}\n\n// Lazily created and cached grapheme segmenter. Avoids constructing\n// Intl.Segmenter at import time so importing the editor never throws on\n// engines that lack it. Undefined when the engine has no Intl.Segmenter.\nlet graphemeSegmenter: Intl.Segmenter | undefined;\nlet graphemeSegmenterInit = false;\nexport function getGraphemeSegmenter(): Intl.Segmenter | undefined {\n if (!graphemeSegmenterInit) {\n graphemeSegmenter = createSegmenter({ granularity: 'grapheme' });\n graphemeSegmenterInit = true;\n }\n return graphemeSegmenter;\n}\n\n// lookup the scroll container for the given element\nexport function lookupScrollContainer(\n element: HTMLElement\n): HTMLElement | Document {\n const ownerDocument = element.ownerDocument;\n let parentElement = element.parentElement;\n while (\n parentElement != null &&\n parentElement !== ownerDocument.body &&\n parentElement !== ownerDocument.documentElement\n ) {\n const overflowY =\n parentElement.ownerDocument.defaultView?.getComputedStyle(\n parentElement\n ).overflowY;\n if (\n overflowY === 'auto' ||\n overflowY === 'scroll' ||\n overflowY === 'overlay'\n ) {\n return parentElement;\n }\n parentElement = parentElement.parentElement;\n }\n return ownerDocument;\n}\n"],"mappings":";AAAA,SAAgB,EACd,SACA,OAKA,QAC0B;CAC1B,MAAM,EAAE,OAAO,SAAS,UAAU,GAAG,UAAU,SAAS,CAAC;CACzD,MAAM,KAAK,SAAS,cAAc,OAAO;CACzC,OAAO,OAAO,IAAI,KAAK;CACvB,IAAI,UAAU,KAAA,GACZ,IAAI,OAAO,UAAU,UACnB,GAAG,MAAM,UAAU;MAEnB,OAAO,OAAO,GAAG,OAAO,KAAK;CAGjC,IAAI,YAAY,KAAA,GACd,IAAI,OAAO,YAAY,UACrB,GAAG,QAAQ,WAAW;MACjB,IAAI,MAAM,QAAQ,OAAO,GAC9B,QAAQ,SAAS,QAAQ;EACvB,GAAG,QAAQ,OAAO;CACpB,CAAC;MAED,OAAO,OAAO,GAAG,SAAS,OAAO;CAGrC,IAAI,aAAa,KAAA,GACf,GAAG,gBAAgB,GAAG,QAAQ;CAEhC,IAAI,WAAW,KAAA,GACb,OAAO,YAAY,EAAE;CAEvB,OAAO;AACT;AAEA,SAAgB,UAAa,OAA4C;CACvE,OACE,OAAO,UAAU,YACjB,UAAU,QACV,UAAU,SACV,OAAO,MAAM,SAAS;AAE1B;AA0BA,SAAgB,iBACd,IACA,OACA,UACA,SACA;CACA,GAAG,iBAAiB,OAAO,UAAU,OAAO;CAC5C,aAAa,GAAG,oBAAoB,OAAO,UAAU,OAAO;AAC9D;AAEA,SAAgB,kBACd,IACA,MAAM,QACc;CACpB,MAAM,QAAQ,GAAG,QAAQ;CACzB,IAAI,UAAU,KAAA,GACZ;CAEF,MAAM,aAAa,SAAS,OAAO,EAAE;CACrC,IAAI,OAAO,MAAM,UAAU,GACzB;CAEF,OAAO;AACT;AAEA,SAAgB,eAAe,MAAY,QAAwB;CACjE,IAAI,KAAK,aAAa,GAAG;EACvB,MAAM,SAAU,KAAc,aAAa,UAAU;EACrD,OAAO,KAAK,IAAI,GAAG,KAAK,IAAI,QAAQ,MAAM,CAAC;CAC7C;CACA,IAAI,KAAK,aAAa,GACpB,OAAO,KAAK,IAAI,GAAG,KAAK,IAAI,QAAQ,KAAK,WAAW,MAAM,CAAC;CAE7D,OAAO;AACT;AAEA,SAAgB,OAAyB,KAAQ,OAAsB;CACrE,OAAO,OAAO,OAAO,KAAK,KAAK;AACjC;AAGA,SAAgB,SACd,MACA,MACkC;CAClC,IAAI;CACJ,OAAO,SAA6B,GAAG,MAAqB;EAC1D,aAAa,OAAO;EACpB,UAAU,iBAAiB,KAAK,MAAM,MAAM,IAAI,GAAG,IAAI;CACzD;AACF;AAEA,SAAgB,MAAM,OAAe,YAAoB,KAAc;CACrE,OAAO,KAAK,MAAM,QAAQ,SAAS,IAAI;AACzC;AAEA,SAAgB,kBAAkB,MAAuB;CACvD,OAAO,KAAK,SAAS,IAAI,KAAK,KAAK,SAAS,IAAI;AAClD;AAIA,SAAgB,gBACd,SAC4B;CAC5B,IAAI,OAAO,SAAS,eAAe,OAAO,KAAK,cAAc,YAC3D;CAEF,OAAO,IAAI,KAAK,UAAU,KAAA,GAAW,OAAO;AAC9C;AAKA,IAAI;AACJ,IAAI,wBAAwB;AAC5B,SAAgB,uBAAmD;CACjE,IAAI,CAAC,uBAAuB;EAC1B,oBAAoB,gBAAgB,EAAE,aAAa,WAAW,CAAC;EAC/D,wBAAwB;CAC1B;CACA,OAAO;AACT;AAGA,SAAgB,sBACd,SACwB;CACxB,MAAM,gBAAgB,QAAQ;CAC9B,IAAI,gBAAgB,QAAQ;CAC5B,OACE,iBAAiB,QACjB,kBAAkB,cAAc,QAChC,kBAAkB,cAAc,iBAChC;EACA,MAAM,YACJ,cAAc,cAAc,aAAa,iBACvC,aACF,CAAC,CAAC;EACJ,IACE,cAAc,UACd,cAAc,YACd,cAAc,WAEd,OAAO;EAET,gBAAgB,cAAc;CAChC;CACA,OAAO;AACT"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,21 +1,23 @@
|
|
|
1
|
-
import { AnnotationLineMap, AnnotationSide, AnnotationSpan, AppliedThemeStyleCache, BaseCodeOptions, BaseDiffOptions, BaseDiffOptionsWithDefaults, BundledLanguage, ChangeContent, ChangeTypes, CodeColumnType, CodeToHastOptions,
|
|
1
|
+
import { AnnotationLineMap, AnnotationSide, AnnotationSpan, AppliedThemeStyleCache, BaseCodeOptions, BaseDiffOptions, BaseDiffOptionsWithDefaults, BundledLanguage, ChangeContent, ChangeTypes, CodeColumnType, CodeToHastOptions, CodeViewDiffItem, CodeViewFileItem, CodeViewItem, CodeViewItemScrollTarget, CodeViewLayout, CodeViewLineScrollTarget, CodeViewPositionScrollTarget, CodeViewRangeScrollTarget, CodeViewScrollBehavior, CodeViewScrollTarget, ConflictResolverTypes, ContextContent, CreatePatchOptionsNonabortable, CustomPreProperties, DecorationItem, DiffAcceptRejectHunkConfig, DiffAcceptRejectHunkType, DiffFileInput, DiffIndicators, DiffLineAnnotation, DiffLineEventBaseProps, DiffTokenEventBaseProps, DiffsHighlighter, DiffsThemeNames, ExpansionDirections, ExtensionFormatMap, FileContents, FileDiffContentsLoader, FileDiffLoadedChangedFiles, FileDiffLoadedFiles, FileDiffLoadedPureRenamedFile, FileDiffMetadata, FileHeaderRenderMode, ForceDiffPlainTextOptions, ForceFilePlainTextOptions, GapSpan, HighlightedToken, HighlighterTypes, Hunk, HunkData, HunkExpansionRegion, HunkLineType, HunkSeparators, LanguageRegistration, LineAnnotation, LineDiffTypes, LineEventBaseProps, LineInfo, LineSpans, LineTypes, MaybeDiffFileInput, MergeConflictActionPayload, MergeConflictMarkerRow, MergeConflictMarkerRowType, MergeConflictRegion, MergeConflictResolution, NumericScrollLineAnchor, ObservedAnnotationNodes, ObservedGridNodes, ParsedPatch, PendingCodeViewLayoutReset, PostRenderPhase, PrePropertiesConfig, ProcessFileConflictData, RenderDiffFilesResult, RenderDiffOptions, RenderDiffResult, RenderFileMetadata, RenderFileOptions, RenderFileResult, RenderHeaderFilenameSuffixCallback, RenderHeaderMetadataCallback, RenderHeaderPrefixCallback, RenderRange, RenderWindow, RenderedDiffASTCache, RenderedFileASTCache, SelectedLineRange, SelectionPoint, SelectionSide, SharedRenderState, ShikiTransformer, SmoothScrollSettings, StickySpecs, SupportedLanguages, ThemeRegistration, ThemeRegistrationResolved, ThemeTypes, ThemedDiffResult, ThemedFileResult, ThemedToken, ThemesType, TokenEventBase, VirtualFileMetrics, VirtualWindowSpecs } from "./types.js";
|
|
2
|
+
import { FileDiffEditCompleteEvent, FileEditCompleteEvent } from "./editor/types.js";
|
|
2
3
|
import { GetHoveredLineResult, GetLineIndexUtility, InteractionManager, InteractionManagerBaseOptions, InteractionManagerMode, InteractionManagerOptions, LogTypes, MergeConflictActionTarget, OnDiffLineClickProps, OnDiffLineEnterLeaveProps, OnLineClickProps, OnLineEnterLeaveProps, OnTokenEventProps, SelectionWriteOptions, pluckInteractionOptions } from "./managers/InteractionManager.js";
|
|
3
4
|
import { ResizeManager, ResizeManagerColumnVariableMode, ResizeManagerSetupOptions } from "./managers/ResizeManager.js";
|
|
4
5
|
import { FileRenderResult, FileRenderer, FileRendererOptions } from "./renderers/FileRenderer.js";
|
|
5
|
-
import { File, FileHydrateProps, FileOptions, FileRenderProps } from "./components/File.js";
|
|
6
|
+
import { File, FileEditChangeHandler, FileEditCompleteHandler, FileHydrateProps, FileOptions, FileRenderProps } from "./components/File.js";
|
|
6
7
|
import { ScrollSyncManager } from "./managers/ScrollSyncManager.js";
|
|
7
8
|
import { DiffHunksRenderer, DiffHunksRendererOptions, DiffHunksRendererOptionsWithDefaults, HunksRenderResult, InjectedRow, LineDecoration, RenderedLineContext, SplitInjectedRow, SplitInjectedRowPlacement, SplitLineDecorationProps, UnifiedInjectedRowPlacement, UnifiedLineDecorationProps } from "./renderers/DiffHunksRenderer.js";
|
|
8
|
-
import { FileDiff, FileDiffHydrationProps, FileDiffOptions, FileDiffRenderBaseProps, FileDiffRenderProps, FileDiffType } from "./components/FileDiff.js";
|
|
9
|
+
import { FileDiff, FileDiffEditChangeHandler, FileDiffEditCompleteHandler, FileDiffHydrationProps, FileDiffOptions, FileDiffRenderBaseProps, FileDiffRenderProps, FileDiffType } from "./components/FileDiff.js";
|
|
9
10
|
import { Virtualizer, VirtualizerConfig, VirtualizerScrollOptions } from "./components/Virtualizer.js";
|
|
10
11
|
import { VirtualizedFile } from "./components/VirtualizedFile.js";
|
|
11
12
|
import { VIRTUALIZED_FILE_DIFF_LAYOUT_CHECKPOINT_INTERVAL, VirtualizedFileDiff } from "./components/VirtualizedFileDiff.js";
|
|
12
|
-
import { CODE_VIEW_DIFF_OPTION_KEYS, CODE_VIEW_FILE_OPTION_KEYS, CodeView, CodeViewCoordinator, CodeViewLineSelection, CodeViewOptions, CodeViewRenderedDiffItem, CodeViewRenderedFileItem, CodeViewRenderedItem, CodeViewScrollListener, CodeViewSlotSnapshot } from "./components/CodeView.js";
|
|
13
|
+
import { CODE_VIEW_DIFF_OPTION_KEYS, CODE_VIEW_FILE_OPTION_KEYS, CodeView, CodeViewCoordinator, CodeViewCreateEditorOptions, CodeViewItemEditCompleteEventMap, CodeViewItemEditCompleteHandler, CodeViewLineSelection, CodeViewMode, CodeViewModeItemMap, CodeViewOptions, CodeViewRenderedDiffItem, CodeViewRenderedFileItem, CodeViewRenderedItem, CodeViewScrollListener, CodeViewSlotSnapshot } from "./components/CodeView.js";
|
|
13
14
|
import { ALTERNATE_FILE_NAMES_GIT, CODE_VIEW_FOOTER_ATTRIBUTE, CODE_VIEW_HEADER_ATTRIBUTE, COMMIT_METADATA_SPLIT, CORE_CSS_ATTRIBUTE, CUSTOM_HEADER_SLOT_ID, DEFAULT_CODE_VIEW_FILE_METRICS, DEFAULT_CODE_VIEW_LAYOUT, DEFAULT_COLLAPSED_CONTEXT_THRESHOLD, DEFAULT_EXPANDED_REGION, DEFAULT_RENDER_RANGE, DEFAULT_SMOOTH_SCROLL_SETTINGS, DEFAULT_THEMES, DEFAULT_TOKENIZE_MAX_LENGTH, DEFAULT_VIRTUAL_FILE_METRICS, DIFFS_DEVELOPMENT_BUILD, DIFFS_SCROLLBAR_GUTTER_MEASURED_PROPERTY, DIFFS_SCROLLBAR_MEASURE_ATTRIBUTE, DIFFS_TAG_NAME, EMPTY_RENDER_RANGE, FILENAME_HEADER_REGEX, FILENAME_HEADER_REGEX_GIT, FILE_CONTEXT_BLOB, GIT_DIFF_FILE_BREAK_REGEX, HEADER_FILENAME_SUFFIX_SLOT_ID, HEADER_METADATA_SLOT_ID, HEADER_PREFIX_SLOT_ID, HUNK_HEADER, INDEX_LINE_METADATA, MERGE_CONFLICT_BASE_MARKER_REGEX, MERGE_CONFLICT_END_MARKER_REGEX, MERGE_CONFLICT_SEPARATOR_MARKER_REGEX, MERGE_CONFLICT_START_MARKER_REGEX, SPLIT_WITH_NEWLINES, THEME_CSS_ATTRIBUTE, UNIFIED_DIFF_FILE_BREAK_REGEX, UNSAFE_CSS_ATTRIBUTE } from "./constants.js";
|
|
14
15
|
import { CodeToTokenTransformStreamOptions, RecallToken, ShikiStreamTokenizerEnqueueResult, ShikiStreamTokenizerOptions } from "./shiki-stream/types.js";
|
|
15
16
|
import { ShikiStreamTokenizer } from "./shiki-stream/tokenizer.js";
|
|
16
17
|
import { CodeToTokenTransformStream } from "./shiki-stream/stream.js";
|
|
17
18
|
import { FileStream, FileStreamOptions } from "./components/FileStream.js";
|
|
18
19
|
import { MergeConflictActionsTypeOption, RenderMergeConflictActions, UnresolvedFile, UnresolvedFileHydrationProps, UnresolvedFileOptions, UnresolvedFileRenderProps, getUnresolvedDiffHunksRendererOptions } from "./components/UnresolvedFile.js";
|
|
20
|
+
import { LineAnnotationPosition, getLineAnnotationSource, recordLineAnnotationSource } from "./utils/lineAnnotationIdentity.js";
|
|
19
21
|
import { areLanguagesAttached } from "./highlighter/languages/areLanguagesAttached.js";
|
|
20
22
|
import { attachResolvedLanguages } from "./highlighter/languages/attachResolvedLanguages.js";
|
|
21
23
|
import { cleanUpResolvedLanguages } from "./highlighter/languages/cleanUpResolvedLanguages.js";
|
|
@@ -57,7 +59,7 @@ import { areThemesEqual } from "./utils/areThemesEqual.js";
|
|
|
57
59
|
import { areVirtualWindowSpecsEqual } from "./utils/areVirtualWindowSpecsEqual.js";
|
|
58
60
|
import { areWorkerStatsEqual } from "./utils/areWorkerStatsEqual.js";
|
|
59
61
|
import { cleanLastNewline } from "./utils/cleanLastNewline.js";
|
|
60
|
-
import { cloneFileDiffMetadata } from "./utils/cloneFileDiffMetadata.js";
|
|
62
|
+
import { cloneFileDiffMetadata, cloneHunks } from "./utils/cloneFileDiffMetadata.js";
|
|
61
63
|
import { createAnnotationElement } from "./utils/createAnnotationElement.js";
|
|
62
64
|
import { createAnnotationWrapperNode } from "./utils/createAnnotationWrapperNode.js";
|
|
63
65
|
import { createEmptyRowBuffer } from "./utils/createEmptyRowBuffer.js";
|
|
@@ -108,4 +110,4 @@ import { setLanguageOverride } from "./utils/setLanguageOverride.js";
|
|
|
108
110
|
import { setPreNodeProperties } from "./utils/setWrapperNodeProps.js";
|
|
109
111
|
import { trimPatchContext } from "./utils/trimPatchContext.js";
|
|
110
112
|
import { codeToHtml, createCssVariablesTheme as createCSSVariablesTheme } from "shiki";
|
|
111
|
-
export { ALTERNATE_FILE_NAMES_GIT, type AnnotationLineMap, type AnnotationSide, type AnnotationSpan, type AppliedThemeStyleCache, AttachedLanguages, AttachedThemes, type BaseCodeOptions, type BaseDiffOptions, type BaseDiffOptionsWithDefaults, type BundledLanguage, CODE_VIEW_DIFF_OPTION_KEYS, CODE_VIEW_FILE_OPTION_KEYS, CODE_VIEW_FOOTER_ATTRIBUTE, CODE_VIEW_HEADER_ATTRIBUTE, COMMIT_METADATA_SPLIT, CORE_CSS_ATTRIBUTE, CUSTOM_HEADER_SLOT_ID, type ChangeContent, type ChangeTypes, type CodeColumnType, type CodeToHastOptions, CodeToTokenTransformStream, CodeToTokenTransformStreamOptions, CodeView, CodeViewCoordinator,
|
|
113
|
+
export { ALTERNATE_FILE_NAMES_GIT, type AnnotationLineMap, type AnnotationSide, type AnnotationSpan, type AppliedThemeStyleCache, AttachedLanguages, AttachedThemes, type BaseCodeOptions, type BaseDiffOptions, type BaseDiffOptionsWithDefaults, type BundledLanguage, CODE_VIEW_DIFF_OPTION_KEYS, CODE_VIEW_FILE_OPTION_KEYS, CODE_VIEW_FOOTER_ATTRIBUTE, CODE_VIEW_HEADER_ATTRIBUTE, COMMIT_METADATA_SPLIT, CORE_CSS_ATTRIBUTE, CUSTOM_HEADER_SLOT_ID, type ChangeContent, type ChangeTypes, type CodeColumnType, type CodeToHastOptions, CodeToTokenTransformStream, CodeToTokenTransformStreamOptions, CodeView, CodeViewCoordinator, CodeViewCreateEditorOptions, type CodeViewDiffItem, type CodeViewFileItem, type CodeViewItem, CodeViewItemEditCompleteEventMap, CodeViewItemEditCompleteHandler, type CodeViewItemScrollTarget, type CodeViewLayout, type CodeViewLineScrollTarget, CodeViewLineSelection, CodeViewMode, CodeViewModeItemMap, CodeViewOptions, type CodeViewPositionScrollTarget, type CodeViewRangeScrollTarget, CodeViewRenderedDiffItem, CodeViewRenderedFileItem, CodeViewRenderedItem, type CodeViewScrollBehavior, CodeViewScrollListener, type CodeViewScrollTarget, CodeViewSlotSnapshot, type ConflictResolverTypes, type ContextContent, CreateFileHeaderElementProps, type CreatePatchOptionsNonabortable, type CustomPreProperties, CustomThemeLoader, DEFAULT_CODE_VIEW_FILE_METRICS, DEFAULT_CODE_VIEW_LAYOUT, DEFAULT_COLLAPSED_CONTEXT_THRESHOLD, DEFAULT_EXPANDED_REGION, DEFAULT_RENDER_RANGE, DEFAULT_SMOOTH_SCROLL_SETTINGS, DEFAULT_THEMES, DEFAULT_TOKENIZE_MAX_LENGTH, DEFAULT_VIRTUAL_FILE_METRICS, DIFFS_DEVELOPMENT_BUILD, DIFFS_SCROLLBAR_GUTTER_MEASURED_PROPERTY, DIFFS_SCROLLBAR_MEASURE_ATTRIBUTE, DIFFS_TAG_NAME, type DecorationItem, type DiffAcceptRejectHunkConfig, type DiffAcceptRejectHunkType, type DiffFileInput, DiffHunksRenderer, DiffHunksRendererOptions, DiffHunksRendererOptionsWithDefaults, type DiffIndicators, type DiffLineAnnotation, type DiffLineEventBaseProps, type DiffTokenEventBaseProps, type DiffsHighlighter, type DiffsThemeNames, EMPTY_RENDER_RANGE, EXTENSION_TO_FILE_FORMAT, type ExpansionDirections, type ExtensionFormatMap, FILENAME_HEADER_REGEX, FILENAME_HEADER_REGEX_GIT, FILE_CONTEXT_BLOB, File, type FileContents, FileDiff, type FileDiffContentsLoader, FileDiffEditChangeHandler, type FileDiffEditCompleteEvent, FileDiffEditCompleteHandler, FileDiffHydrationProps, type FileDiffLoadedChangedFiles, type FileDiffLoadedFiles, type FileDiffLoadedPureRenamedFile, type FileDiffMetadata, FileDiffOptions, FileDiffRenderBaseProps, FileDiffRenderProps, FileDiffType, FileEditChangeHandler, type FileEditCompleteEvent, FileEditCompleteHandler, type FileHeaderRenderMode, FileHydrateProps, FileOptions, FileRenderProps, FileRenderResult, FileRenderer, FileRendererOptions, FileStream, FileStreamOptions, type ForceDiffPlainTextOptions, type ForceFilePlainTextOptions, GIT_DIFF_FILE_BREAK_REGEX, type GapSpan, GetHoveredLineResult, GetLineIndexUtility, HEADER_FILENAME_SUFFIX_SLOT_ID, HEADER_METADATA_SLOT_ID, HEADER_PREFIX_SLOT_ID, HUNK_HEADER, type HighlightedToken, type HighlighterTypes, type Hunk, type HunkData, type HunkExpansionRegion, type HunkLineType, type HunkSeparators, HunksRenderResult, INDEX_LINE_METADATA, InjectedRow, InteractionManager, InteractionManagerBaseOptions, InteractionManagerMode, InteractionManagerOptions, type LanguageRegistration, type LineAnnotation, LineAnnotationPosition, LineDecoration, type LineDiffTypes, type LineEventBaseProps, type LineInfo, type LineSpans, type LineTypes, LogTypes, MERGE_CONFLICT_BASE_MARKER_REGEX, MERGE_CONFLICT_END_MARKER_REGEX, MERGE_CONFLICT_SEPARATOR_MARKER_REGEX, MERGE_CONFLICT_START_MARKER_REGEX, type MaybeDiffFileInput, type MergeConflictActionPayload, MergeConflictActionTarget, MergeConflictActionsTypeOption, type MergeConflictMarkerRow, type MergeConflictMarkerRowType, type MergeConflictRegion, type MergeConflictResolution, type NumericScrollLineAnchor, type ObservedAnnotationNodes, type ObservedGridNodes, OnDiffLineClickProps, OnDiffLineEnterLeaveProps, OnLineClickProps, OnLineEnterLeaveProps, OnTokenEventProps, ParsedLine, type ParsedPatch, type PendingCodeViewLayoutReset, type PostRenderPhase, type PrePropertiesConfig, type ProcessFileConflictData, RecallToken, RegisteredCustomLanguages, type RenderDiffFilesResult, type RenderDiffOptions, type RenderDiffResult, type RenderFileMetadata, type RenderFileOptions, type RenderFileResult, type RenderHeaderFilenameSuffixCallback, type RenderHeaderMetadataCallback, type RenderHeaderPrefixCallback, RenderMergeConflictActions, type RenderRange, type RenderWindow, type RenderedDiffASTCache, type RenderedFileASTCache, RenderedLineContext, ResizeManager, ResizeManagerColumnVariableMode, ResizeManagerSetupOptions, ResolvedLanguages, ResolvingLanguages, SPLIT_WITH_NEWLINES, SVGSpriteNames, SVGSpriteSheet, ScrollSyncManager, type SelectedLineRange, type SelectionPoint, type SelectionSide, SelectionWriteOptions, type SharedRenderState, ShikiStreamTokenizer, ShikiStreamTokenizerEnqueueResult, ShikiStreamTokenizerOptions, type ShikiTransformer, type SmoothScrollSettings, SplitInjectedRow, SplitInjectedRowPlacement, SplitLineDecorationProps, type StickySpecs, type SupportedLanguages, THEME_CSS_ATTRIBUTE, type ThemeRegistration, type ThemeRegistrationResolved, type ThemeTypes, type ThemedDiffResult, type ThemedFileResult, type ThemedToken, type ThemesType, type TokenEventBase, UNIFIED_DIFF_FILE_BREAK_REGEX, UNSAFE_CSS_ATTRIBUTE, UnifiedInjectedRowPlacement, UnifiedLineDecorationProps, UnresolvedFile, UnresolvedFileHydrationProps, UnresolvedFileOptions, UnresolvedFileRenderProps, VIRTUALIZED_FILE_DIFF_LAYOUT_CHECKPOINT_INTERVAL, type VirtualFileMetrics, type VirtualWindowSpecs, VirtualizedFile, VirtualizedFileDiff, Virtualizer, VirtualizerConfig, VirtualizerScrollOptions, areDiffLineAnnotationsEqual, areDiffRenderOptionsEqual, areDiffTargetsEqual, areFileRenderOptionsEqual, areFilesEqual, areHunkDataEqual, areLanguagesAttached, areLineAnnotationsEqual, areObjectsEqual, areOptionsEqual, arePrePropertiesEqual, areRenderRangesEqual, areSelectionsEqual, areThemesAttached, areThemesEqual, areVirtualWindowSpecsEqual, areWorkerStatsEqual, attachResolvedLanguages, attachResolvedThemes, cleanLastNewline, cleanUpResolvedLanguages, cleanUpResolvedThemes, clearRenderQueue, cloneFileDiffMetadata, cloneHunks, codeToHtml, createAnnotationElement, createAnnotationWrapperNode, createCSSVariablesTheme, createDiffSpanDecoration, createEmptyRowBuffer, createFileHeaderElement, createGutterGap, createGutterItem, createGutterUtilityContentNode, createGutterUtilityElement, createGutterWrapper, createHastElement, createIconElement, createNoNewlineElement, createPreElement, createPreWrapperProperties, createRowNodes, createSeparator, createSpanFromToken, createStyleElement, createTextNodeElement, createThemeStyleElement, createTransformerWithState, createUnsafeCSSStyleNode, createWindowFromScrollPosition, dequeueRender, detachString, diffAcceptRejectHunk, disposeHighlighter, findCodeElement, formatCSSVariablePrefix, getCustomExtensionsMap, getCustomExtensionsVersion, getFiletypeFromFileName, getHighlighterIfLoaded, getHighlighterOptions, getHighlighterThemeStyles, getHunkSeparatorSlotName, getIconForType, getLineAnnotationName, getLineAnnotationSource, getLineEndingType, getLineNodes, getOrCreateCodeNode, getResolvedLanguages, getResolvedOrResolveLanguage, getResolvedOrResolveTheme, getResolvedThemes, getSharedHighlighter, getSingularPatch, getThemes, getTotalLineCountFromHunks, getUnresolvedDiffHunksRendererOptions, hasResolvedLanguages, hasResolvedThemes, hydratePartialDiff, isDefaultRenderRange, isDiffAnnotation, isDiffAnnotationCollection, isFileAnnotation, isFileAnnotationCollection, isHighlighterLoaded, isHighlighterLoading, isHighlighterNull, isWorkerContext, parseDiffFromFile, parseLineType, parsePatchFiles, patchScrollbarGutterSize, pluckInteractionOptions, prefersReducedMotion, preloadHighlighter, prerenderHTMLIfNecessary, processFile, processLine, processPatch, pushOrJoinSpan, queueRender, recordLineAnnotationSource, registerCustomCSSVariableTheme, registerCustomLanguage, registerCustomTheme, releaseStringDetachBuffer, renderDiffWithHighlighter, renderFileWithHighlighter, replaceCustomExtensions, resolveConflict, resolveLanguage, resolveLanguages, resolveRegion, resolveTheme, resolveThemes, setCustomExtension, setLanguageOverride, setPreNodeProperties, trimPatchContext, wrapCoreCSS, wrapThemeCSS, wrapUnsafeCSS };
|
package/dist/index.js
CHANGED
|
@@ -5,12 +5,7 @@ import { areThemesEqual } from "./utils/areThemesEqual.js";
|
|
|
5
5
|
import { areOptionsEqual } from "./utils/areOptionsEqual.js";
|
|
6
6
|
import { areSelectionsEqual } from "./utils/areSelectionsEqual.js";
|
|
7
7
|
import { createWindowFromScrollPosition } from "./utils/createWindowFromScrollPosition.js";
|
|
8
|
-
import { cleanLastNewline } from "./utils/cleanLastNewline.js";
|
|
9
|
-
import { detachString, releaseStringDetachBuffer } from "./utils/detachString.js";
|
|
10
|
-
import { parsePatchFiles, processFile, processPatch } from "./utils/parsePatchFiles.js";
|
|
11
|
-
import { parseDiffFromFile } from "./utils/parseDiffFromFile.js";
|
|
12
8
|
import { prefersReducedMotion } from "./utils/prefersReducedMotion.js";
|
|
13
|
-
import { areFilesEqual } from "./utils/areFilesEqual.js";
|
|
14
9
|
import { createGutterGap, createGutterItem, createGutterWrapper, createHastElement, createIconElement, createTextNodeElement, findCodeElement } from "./utils/hast_utils.js";
|
|
15
10
|
import { createGutterUtilityElement } from "./utils/createGutterUtilityElement.js";
|
|
16
11
|
import { InteractionManager, pluckInteractionOptions } from "./managers/InteractionManager.js";
|
|
@@ -40,6 +35,7 @@ import { createPreElement, createPreWrapperProperties } from "./utils/createPreE
|
|
|
40
35
|
import { EXTENSION_TO_FILE_FORMAT, getCustomExtensionsMap, getCustomExtensionsVersion, getFiletypeFromFileName, replaceCustomExtensions, setCustomExtension } from "./utils/getFiletypeFromFileName.js";
|
|
41
36
|
import { getHighlighterOptions } from "./utils/getHighlighterOptions.js";
|
|
42
37
|
import { getLineAnnotationName } from "./utils/getLineAnnotationName.js";
|
|
38
|
+
import { isDefaultRenderRange } from "./utils/isDefaultRenderRange.js";
|
|
43
39
|
import { processLine } from "./utils/processLine.js";
|
|
44
40
|
import { createTransformerWithState } from "./utils/createTransformerWithState.js";
|
|
45
41
|
import { formatCSSVariablePrefix } from "./utils/formatCSSVariablePrefix.js";
|
|
@@ -54,14 +50,20 @@ import { createAnnotationWrapperNode } from "./utils/createAnnotationWrapperNode
|
|
|
54
50
|
import { createGutterUtilityContentNode } from "./utils/createGutterUtilityContentNode.js";
|
|
55
51
|
import { createUnsafeCSSStyleNode } from "./utils/createUnsafeCSSStyleNode.js";
|
|
56
52
|
import { patchScrollbarGutterSize, wrapCoreCSS, wrapThemeCSS, wrapUnsafeCSS } from "./utils/cssWrappers.js";
|
|
53
|
+
import { getLineAnnotationSource, recordLineAnnotationSource } from "./utils/lineAnnotationIdentity.js";
|
|
57
54
|
import { getOrCreateCodeNode } from "./utils/getOrCreateCodeNode.js";
|
|
58
55
|
import { prerenderHTMLIfNecessary } from "./utils/prerenderHTMLIfNecessary.js";
|
|
59
56
|
import { setPreNodeProperties } from "./utils/setWrapperNodeProps.js";
|
|
60
57
|
import { File } from "./components/File.js";
|
|
61
58
|
import { VirtualizedFile } from "./components/VirtualizedFile.js";
|
|
62
59
|
import { areDiffTargetsEqual } from "./utils/areDiffTargetsEqual.js";
|
|
63
|
-
import {
|
|
60
|
+
import { areFilesEqual } from "./utils/areFilesEqual.js";
|
|
61
|
+
import { cloneFileDiffMetadata, cloneHunks } from "./utils/cloneFileDiffMetadata.js";
|
|
64
62
|
import { hydratePartialDiff } from "./utils/hydratePartialDiff.js";
|
|
63
|
+
import { cleanLastNewline } from "./utils/cleanLastNewline.js";
|
|
64
|
+
import { detachString, releaseStringDetachBuffer } from "./utils/detachString.js";
|
|
65
|
+
import { parsePatchFiles, processFile, processPatch } from "./utils/parsePatchFiles.js";
|
|
66
|
+
import { parseDiffFromFile } from "./utils/parseDiffFromFile.js";
|
|
65
67
|
import { ScrollSyncManager } from "./managers/ScrollSyncManager.js";
|
|
66
68
|
import { areDiffRenderOptionsEqual } from "./utils/areDiffRenderOptionsEqual.js";
|
|
67
69
|
import { createEmptyRowBuffer } from "./utils/createEmptyRowBuffer.js";
|
|
@@ -69,7 +71,6 @@ import { createNoNewlineElement } from "./utils/createNoNewlineElement.js";
|
|
|
69
71
|
import { createSeparator } from "./utils/createSeparator.js";
|
|
70
72
|
import { getHunkSeparatorSlotName } from "./utils/getHunkSeparatorSlotName.js";
|
|
71
73
|
import { getTotalLineCountFromHunks } from "./utils/getTotalLineCountFromHunks.js";
|
|
72
|
-
import { isDefaultRenderRange } from "./utils/isDefaultRenderRange.js";
|
|
73
74
|
import { createDiffSpanDecoration, pushOrJoinSpan } from "./utils/parseDiffDecorations.js";
|
|
74
75
|
import { renderDiffWithHighlighter } from "./utils/renderDiffWithHighlighter.js";
|
|
75
76
|
import { DiffHunksRenderer } from "./renderers/DiffHunksRenderer.js";
|
|
@@ -106,4 +107,4 @@ import { parseLineType } from "./utils/parseLineType.js";
|
|
|
106
107
|
import { setLanguageOverride } from "./utils/setLanguageOverride.js";
|
|
107
108
|
import { trimPatchContext } from "./utils/trimPatchContext.js";
|
|
108
109
|
import { codeToHtml, createCssVariablesTheme as createCSSVariablesTheme } from "shiki";
|
|
109
|
-
export { ALTERNATE_FILE_NAMES_GIT, AttachedLanguages, AttachedThemes, CODE_VIEW_DIFF_OPTION_KEYS, CODE_VIEW_FILE_OPTION_KEYS, CODE_VIEW_FOOTER_ATTRIBUTE, CODE_VIEW_HEADER_ATTRIBUTE, COMMIT_METADATA_SPLIT, CORE_CSS_ATTRIBUTE, CUSTOM_HEADER_SLOT_ID, CodeToTokenTransformStream, CodeView, DEFAULT_CODE_VIEW_FILE_METRICS, DEFAULT_CODE_VIEW_LAYOUT, DEFAULT_COLLAPSED_CONTEXT_THRESHOLD, DEFAULT_EXPANDED_REGION, DEFAULT_RENDER_RANGE, DEFAULT_SMOOTH_SCROLL_SETTINGS, DEFAULT_THEMES, DEFAULT_TOKENIZE_MAX_LENGTH, DEFAULT_VIRTUAL_FILE_METRICS, DIFFS_DEVELOPMENT_BUILD, DIFFS_SCROLLBAR_GUTTER_MEASURED_PROPERTY, DIFFS_SCROLLBAR_MEASURE_ATTRIBUTE, DIFFS_TAG_NAME, DiffHunksRenderer, EMPTY_RENDER_RANGE, EXTENSION_TO_FILE_FORMAT, FILENAME_HEADER_REGEX, FILENAME_HEADER_REGEX_GIT, FILE_CONTEXT_BLOB, File, FileDiff, FileRenderer, FileStream, GIT_DIFF_FILE_BREAK_REGEX, HEADER_FILENAME_SUFFIX_SLOT_ID, HEADER_METADATA_SLOT_ID, HEADER_PREFIX_SLOT_ID, HUNK_HEADER, INDEX_LINE_METADATA, InteractionManager, MERGE_CONFLICT_BASE_MARKER_REGEX, MERGE_CONFLICT_END_MARKER_REGEX, MERGE_CONFLICT_SEPARATOR_MARKER_REGEX, MERGE_CONFLICT_START_MARKER_REGEX, RegisteredCustomLanguages, ResizeManager, ResolvedLanguages, ResolvingLanguages, SPLIT_WITH_NEWLINES, SVGSpriteSheet, ScrollSyncManager, ShikiStreamTokenizer, THEME_CSS_ATTRIBUTE, UNIFIED_DIFF_FILE_BREAK_REGEX, UNSAFE_CSS_ATTRIBUTE, UnresolvedFile, VIRTUALIZED_FILE_DIFF_LAYOUT_CHECKPOINT_INTERVAL, VirtualizedFile, VirtualizedFileDiff, Virtualizer, areDiffLineAnnotationsEqual, areDiffRenderOptionsEqual, areDiffTargetsEqual, areFileRenderOptionsEqual, areFilesEqual, areHunkDataEqual, areLanguagesAttached, areLineAnnotationsEqual, areObjectsEqual, areOptionsEqual, arePrePropertiesEqual, areRenderRangesEqual, areSelectionsEqual, areThemesAttached, areThemesEqual, areVirtualWindowSpecsEqual, areWorkerStatsEqual, attachResolvedLanguages, attachResolvedThemes, cleanLastNewline, cleanUpResolvedLanguages, cleanUpResolvedThemes, clearRenderQueue, cloneFileDiffMetadata, codeToHtml, createAnnotationElement, createAnnotationWrapperNode, createCSSVariablesTheme, createDiffSpanDecoration, createEmptyRowBuffer, createFileHeaderElement, createGutterGap, createGutterItem, createGutterUtilityContentNode, createGutterUtilityElement, createGutterWrapper, createHastElement, createIconElement, createNoNewlineElement, createPreElement, createPreWrapperProperties, createRowNodes, createSeparator, createSpanFromToken, createStyleElement, createTextNodeElement, createThemeStyleElement, createTransformerWithState, createUnsafeCSSStyleNode, createWindowFromScrollPosition, dequeueRender, detachString, diffAcceptRejectHunk, disposeHighlighter, findCodeElement, formatCSSVariablePrefix, getCustomExtensionsMap, getCustomExtensionsVersion, getFiletypeFromFileName, getHighlighterIfLoaded, getHighlighterOptions, getHighlighterThemeStyles, getHunkSeparatorSlotName, getIconForType, getLineAnnotationName, getLineEndingType, getLineNodes, getOrCreateCodeNode, getResolvedLanguages, getResolvedOrResolveLanguage, getResolvedOrResolveTheme, getResolvedThemes, getSharedHighlighter, getSingularPatch, getThemes, getTotalLineCountFromHunks, getUnresolvedDiffHunksRendererOptions, hasResolvedLanguages, hasResolvedThemes, hydratePartialDiff, isDefaultRenderRange, isDiffAnnotation, isDiffAnnotationCollection, isFileAnnotation, isFileAnnotationCollection, isHighlighterLoaded, isHighlighterLoading, isHighlighterNull, isWorkerContext, parseDiffFromFile, parseLineType, parsePatchFiles, patchScrollbarGutterSize, pluckInteractionOptions, prefersReducedMotion, preloadHighlighter, prerenderHTMLIfNecessary, processFile, processLine, processPatch, pushOrJoinSpan, queueRender, registerCustomCSSVariableTheme, registerCustomLanguage, registerCustomTheme, releaseStringDetachBuffer, renderDiffWithHighlighter, renderFileWithHighlighter, replaceCustomExtensions, resolveConflict, resolveLanguage, resolveLanguages, resolveRegion, resolveTheme, resolveThemes, setCustomExtension, setLanguageOverride, setPreNodeProperties, trimPatchContext, wrapCoreCSS, wrapThemeCSS, wrapUnsafeCSS };
|
|
110
|
+
export { ALTERNATE_FILE_NAMES_GIT, AttachedLanguages, AttachedThemes, CODE_VIEW_DIFF_OPTION_KEYS, CODE_VIEW_FILE_OPTION_KEYS, CODE_VIEW_FOOTER_ATTRIBUTE, CODE_VIEW_HEADER_ATTRIBUTE, COMMIT_METADATA_SPLIT, CORE_CSS_ATTRIBUTE, CUSTOM_HEADER_SLOT_ID, CodeToTokenTransformStream, CodeView, DEFAULT_CODE_VIEW_FILE_METRICS, DEFAULT_CODE_VIEW_LAYOUT, DEFAULT_COLLAPSED_CONTEXT_THRESHOLD, DEFAULT_EXPANDED_REGION, DEFAULT_RENDER_RANGE, DEFAULT_SMOOTH_SCROLL_SETTINGS, DEFAULT_THEMES, DEFAULT_TOKENIZE_MAX_LENGTH, DEFAULT_VIRTUAL_FILE_METRICS, DIFFS_DEVELOPMENT_BUILD, DIFFS_SCROLLBAR_GUTTER_MEASURED_PROPERTY, DIFFS_SCROLLBAR_MEASURE_ATTRIBUTE, DIFFS_TAG_NAME, DiffHunksRenderer, EMPTY_RENDER_RANGE, EXTENSION_TO_FILE_FORMAT, FILENAME_HEADER_REGEX, FILENAME_HEADER_REGEX_GIT, FILE_CONTEXT_BLOB, File, FileDiff, FileRenderer, FileStream, GIT_DIFF_FILE_BREAK_REGEX, HEADER_FILENAME_SUFFIX_SLOT_ID, HEADER_METADATA_SLOT_ID, HEADER_PREFIX_SLOT_ID, HUNK_HEADER, INDEX_LINE_METADATA, InteractionManager, MERGE_CONFLICT_BASE_MARKER_REGEX, MERGE_CONFLICT_END_MARKER_REGEX, MERGE_CONFLICT_SEPARATOR_MARKER_REGEX, MERGE_CONFLICT_START_MARKER_REGEX, RegisteredCustomLanguages, ResizeManager, ResolvedLanguages, ResolvingLanguages, SPLIT_WITH_NEWLINES, SVGSpriteSheet, ScrollSyncManager, ShikiStreamTokenizer, THEME_CSS_ATTRIBUTE, UNIFIED_DIFF_FILE_BREAK_REGEX, UNSAFE_CSS_ATTRIBUTE, UnresolvedFile, VIRTUALIZED_FILE_DIFF_LAYOUT_CHECKPOINT_INTERVAL, VirtualizedFile, VirtualizedFileDiff, Virtualizer, areDiffLineAnnotationsEqual, areDiffRenderOptionsEqual, areDiffTargetsEqual, areFileRenderOptionsEqual, areFilesEqual, areHunkDataEqual, areLanguagesAttached, areLineAnnotationsEqual, areObjectsEqual, areOptionsEqual, arePrePropertiesEqual, areRenderRangesEqual, areSelectionsEqual, areThemesAttached, areThemesEqual, areVirtualWindowSpecsEqual, areWorkerStatsEqual, attachResolvedLanguages, attachResolvedThemes, cleanLastNewline, cleanUpResolvedLanguages, cleanUpResolvedThemes, clearRenderQueue, cloneFileDiffMetadata, cloneHunks, codeToHtml, createAnnotationElement, createAnnotationWrapperNode, createCSSVariablesTheme, createDiffSpanDecoration, createEmptyRowBuffer, createFileHeaderElement, createGutterGap, createGutterItem, createGutterUtilityContentNode, createGutterUtilityElement, createGutterWrapper, createHastElement, createIconElement, createNoNewlineElement, createPreElement, createPreWrapperProperties, createRowNodes, createSeparator, createSpanFromToken, createStyleElement, createTextNodeElement, createThemeStyleElement, createTransformerWithState, createUnsafeCSSStyleNode, createWindowFromScrollPosition, dequeueRender, detachString, diffAcceptRejectHunk, disposeHighlighter, findCodeElement, formatCSSVariablePrefix, getCustomExtensionsMap, getCustomExtensionsVersion, getFiletypeFromFileName, getHighlighterIfLoaded, getHighlighterOptions, getHighlighterThemeStyles, getHunkSeparatorSlotName, getIconForType, getLineAnnotationName, getLineAnnotationSource, getLineEndingType, getLineNodes, getOrCreateCodeNode, getResolvedLanguages, getResolvedOrResolveLanguage, getResolvedOrResolveTheme, getResolvedThemes, getSharedHighlighter, getSingularPatch, getThemes, getTotalLineCountFromHunks, getUnresolvedDiffHunksRendererOptions, hasResolvedLanguages, hasResolvedThemes, hydratePartialDiff, isDefaultRenderRange, isDiffAnnotation, isDiffAnnotationCollection, isFileAnnotation, isFileAnnotationCollection, isHighlighterLoaded, isHighlighterLoading, isHighlighterNull, isWorkerContext, parseDiffFromFile, parseLineType, parsePatchFiles, patchScrollbarGutterSize, pluckInteractionOptions, prefersReducedMotion, preloadHighlighter, prerenderHTMLIfNecessary, processFile, processLine, processPatch, pushOrJoinSpan, queueRender, recordLineAnnotationSource, registerCustomCSSVariableTheme, registerCustomLanguage, registerCustomTheme, releaseStringDetachBuffer, renderDiffWithHighlighter, renderFileWithHighlighter, replaceCustomExtensions, resolveConflict, resolveLanguage, resolveLanguages, resolveRegion, resolveTheme, resolveThemes, setCustomExtension, setLanguageOverride, setPreNodeProperties, trimPatchContext, wrapCoreCSS, wrapThemeCSS, wrapUnsafeCSS };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InteractionManager.d.ts","names":[],"sources":["../../src/managers/InteractionManager.ts"],"mappings":"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
|
|
1
|
+
{"version":3,"file":"InteractionManager.d.ts","names":[],"sources":["../../src/managers/InteractionManager.ts"],"mappings":"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"}
|
|
@@ -693,6 +693,8 @@ var InteractionManager = class {
|
|
|
693
693
|
return this.pathFromAnnotationSlot(element);
|
|
694
694
|
}
|
|
695
695
|
pathFromAnnotationSlot(element) {
|
|
696
|
+
const annotatedLine = annotationRowFromSlot(element)?.previousElementSibling;
|
|
697
|
+
if (annotatedLine instanceof HTMLElement && (annotatedLine.hasAttribute("data-line") || annotatedLine.hasAttribute("data-column-number"))) return getElementPath(annotatedLine);
|
|
696
698
|
const point = selectionPointFromAnnotationSlotName(getAnnotationSlotName(element));
|
|
697
699
|
if (point == null) return;
|
|
698
700
|
const target = this.targetForSelectionPoint(point);
|
|
@@ -1137,6 +1139,11 @@ function closestSelectableRow(element) {
|
|
|
1137
1139
|
const previousRow = annotationRow.previousElementSibling;
|
|
1138
1140
|
return previousRow instanceof HTMLElement && (previousRow.hasAttribute("data-line") || previousRow.hasAttribute("data-column-number")) ? previousRow : void 0;
|
|
1139
1141
|
}
|
|
1142
|
+
function annotationRowFromSlot(element) {
|
|
1143
|
+
const slotted = element.closest("[slot^=\"annotation-\"]");
|
|
1144
|
+
const row = (slotted instanceof HTMLElement && slotted.assignedSlot != null ? slotted.assignedSlot : element.tagName === "SLOT" ? element : void 0)?.closest("[data-line-annotation]");
|
|
1145
|
+
return row instanceof HTMLElement ? row : void 0;
|
|
1146
|
+
}
|
|
1140
1147
|
function getAnnotationSlotName(element) {
|
|
1141
1148
|
const slottedElement = element.closest("[slot^=\"annotation-\"]");
|
|
1142
1149
|
if (slottedElement instanceof HTMLElement) return slottedElement.getAttribute("slot") ?? void 0;
|