@pierre/diffs
Version:
47 lines (46 loc) • 1.55 kB
JavaScript
"use client";
import { DIFFS_TAG_NAME } from "../constants.js";
import { renderDiffChildren } from "./utils/renderDiffChildren.js";
import { templateRender } from "./utils/templateRender.js";
import { useFileDiffInstance } from "./utils/useFileDiffInstance.js";
import { jsx } from "react/jsx-runtime";
//#region src/react/MultiFileDiff.tsx
function MultiFileDiff({ oldFile, newFile, options, editorOptions, editStateKey, metrics, lineAnnotations, selectedLines, className, style, prerenderedHTML, renderAnnotation, renderCustomHeader, renderHeaderPrefix, renderHeaderFilenameSuffix, renderHeaderMetadata, renderGutterUtility, disableWorkerPool = false, edit = false, onEditChange, onEditComplete }) {
const { fileDiff, ref, getHoveredLine, getAnnotationSlotName } = useFileDiffInstance({
oldFile,
newFile,
options,
editorOptions,
editStateKey,
metrics,
lineAnnotations,
selectedLines,
prerenderedHTML,
hasGutterRenderUtility: renderGutterUtility != null,
hasCustomHeader: renderCustomHeader != null,
disableWorkerPool,
edit,
onEditChange,
onEditComplete
});
return /* @__PURE__ */ jsx(DIFFS_TAG_NAME, {
ref,
className,
style,
children: templateRender(renderDiffChildren({
fileDiff,
renderCustomHeader,
renderHeaderPrefix,
renderHeaderFilenameSuffix,
renderHeaderMetadata,
renderAnnotation,
lineAnnotations,
renderGutterUtility,
getHoveredLine,
getAnnotationSlotName
}), prerenderedHTML)
});
}
//#endregion
export { MultiFileDiff };
//# sourceMappingURL=MultiFileDiff.js.map