UNPKG

@pierre/diffs

Version:

107 lines (106 loc) 12.9 kB
import { ALTERNATE_FILE_NAMES_GIT, 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_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"; import { dequeueRender, queueRender } from "./managers/UniversalRenderingManager.js"; import { areObjectsEqual } from "./utils/areObjectsEqual.js"; import { areThemesEqual } from "./utils/areThemesEqual.js"; import { areOptionsEqual } from "./utils/areOptionsEqual.js"; import { areSelectionsEqual } from "./utils/areSelectionsEqual.js"; import { createWindowFromScrollPosition } from "./utils/createWindowFromScrollPosition.js"; import { prefersReducedMotion } from "./utils/prefersReducedMotion.js"; import { createGutterGap, createGutterItem, createGutterWrapper, createHastElement, createIconElement, createTextNodeElement, findCodeElement } from "./utils/hast_utils.js"; import { createGutterUtilityElement } from "./utils/createGutterUtilityElement.js"; import { InteractionManager, pluckInteractionOptions } from "./managers/InteractionManager.js"; import { ResizeManager } from "./managers/ResizeManager.js"; import { AttachedLanguages, RegisteredCustomLanguages, ResolvedLanguages, ResolvingLanguages } from "./highlighter/languages/constants.js"; import { areLanguagesAttached } from "./highlighter/languages/areLanguagesAttached.js"; import { attachResolvedLanguages } from "./highlighter/languages/attachResolvedLanguages.js"; import { cleanUpResolvedLanguages } from "./highlighter/languages/cleanUpResolvedLanguages.js"; import { isWorkerContext } from "./utils/isWorkerContext.js"; import { resolveLanguage } from "./highlighter/languages/resolveLanguage.js"; import { getResolvedOrResolveLanguage } from "./highlighter/languages/getResolvedOrResolveLanguage.js"; import { AttachedThemes } from "./highlighter/themes/constants.js"; import { attachResolvedThemes } from "./highlighter/themes/attachResolvedThemes.js"; import { cleanUpResolvedThemes } from "./highlighter/themes/cleanUpResolvedThemes.js"; import { resolveTheme } from "./highlighter/themes/resolveTheme.js"; import { getResolvedOrResolveTheme } from "./highlighter/themes/getResolvedOrResolveTheme.js"; import { disposeHighlighter, getHighlighterIfLoaded, getSharedHighlighter, isHighlighterLoaded, isHighlighterLoading, isHighlighterNull, preloadHighlighter } from "./highlighter/shared_highlighter.js"; import { getThemes } from "./utils/getThemes.js"; import { areThemesAttached } from "./highlighter/themes/areThemesAttached.js"; import { hasResolvedThemes } from "./highlighter/themes/hasResolvedThemes.js"; import { areFileRenderOptionsEqual } from "./utils/areFileRenderOptionsEqual.js"; import { areFilesEqual } from "./utils/areFilesEqual.js"; import { areRenderRangesEqual } from "./utils/areRenderRangesEqual.js"; import { createAnnotationElement } from "./utils/createAnnotationElement.js"; import { getIconForType } from "./utils/getIconForType.js"; import { createFileHeaderElement } from "./utils/createFileHeaderElement.js"; import { createPreElement, createPreWrapperProperties } from "./utils/createPreElement.js"; import { EXTENSION_TO_FILE_FORMAT, getCustomExtensionsMap, getCustomExtensionsVersion, getFiletypeFromFileName, replaceCustomExtensions, setCustomExtension } from "./utils/getFiletypeFromFileName.js"; import { getHighlighterOptions } from "./utils/getHighlighterOptions.js"; import { getLineAnnotationName } from "./utils/getLineAnnotationName.js"; import { cleanLastNewline } from "./utils/cleanLastNewline.js"; import { processLine } from "./utils/processLine.js"; import { createTransformerWithState } from "./utils/createTransformerWithState.js"; import { formatCSSVariablePrefix } from "./utils/formatCSSVariablePrefix.js"; import { getHighlighterThemeStyles } from "./utils/getHighlighterThemeStyles.js"; import { getLineNodes } from "./utils/getLineNodes.js"; import { renderFileWithHighlighter } from "./utils/renderFileWithHighlighter.js"; import { FileRenderer } from "./renderers/FileRenderer.js"; import { SVGSpriteSheet } from "./sprite.js"; import { areLineAnnotationsEqual } from "./utils/areLineAnnotationsEqual.js"; import { arePrePropertiesEqual } from "./utils/arePrePropertiesEqual.js"; import { createAnnotationWrapperNode } from "./utils/createAnnotationWrapperNode.js"; import { createGutterUtilityContentNode } from "./utils/createGutterUtilityContentNode.js"; import { createUnsafeCSSStyleNode } from "./utils/createUnsafeCSSStyleNode.js"; import { patchScrollbarGutterSize, wrapCoreCSS, wrapThemeCSS, wrapUnsafeCSS } from "./utils/cssWrappers.js"; import { getOrCreateCodeNode } from "./utils/getOrCreateCodeNode.js"; import { prerenderHTMLIfNecessary } from "./utils/prerenderHTMLIfNecessary.js"; import { setPreNodeProperties } from "./utils/setWrapperNodeProps.js"; import { File } from "./components/File.js"; import { VirtualizedFile } from "./components/VirtualizedFile.js"; import { areDiffTargetsEqual } from "./utils/areDiffTargetsEqual.js"; import { detachString, releaseStringDetachBuffer } from "./utils/detachString.js"; import { parsePatchFiles, processFile, processPatch } from "./utils/parsePatchFiles.js"; import { parseDiffFromFile } from "./utils/parseDiffFromFile.js"; import { ScrollSyncManager } from "./managers/ScrollSyncManager.js"; import { areDiffRenderOptionsEqual } from "./utils/areDiffRenderOptionsEqual.js"; import { createEmptyRowBuffer } from "./utils/createEmptyRowBuffer.js"; import { createNoNewlineElement } from "./utils/createNoNewlineElement.js"; import { createSeparator } from "./utils/createSeparator.js"; import { getHunkSeparatorSlotName } from "./utils/getHunkSeparatorSlotName.js"; import { getTotalLineCountFromHunks } from "./utils/getTotalLineCountFromHunks.js"; import { isDefaultRenderRange } from "./utils/isDefaultRenderRange.js"; import { createDiffSpanDecoration, pushOrJoinSpan } from "./utils/parseDiffDecorations.js"; import { renderDiffWithHighlighter } from "./utils/renderDiffWithHighlighter.js"; import { DiffHunksRenderer } from "./renderers/DiffHunksRenderer.js"; import { areDiffLineAnnotationsEqual } from "./utils/areDiffLineAnnotationsEqual.js"; import { areHunkDataEqual } from "./utils/areHunkDataEqual.js"; import { FileDiff } from "./components/FileDiff.js"; import { VirtualizedFileDiff } from "./components/VirtualizedFileDiff.js"; import { CodeView } from "./components/CodeView.js"; import { ShikiStreamTokenizer } from "./shiki-stream/tokenizer.js"; import { CodeToTokenTransformStream } from "./shiki-stream/stream.js"; import { createSpanFromToken } from "./utils/createSpanNodeFromToken.js"; import { FileStream } from "./components/FileStream.js"; import { resolveRegion } from "./utils/resolveRegion.js"; import { resolveConflict } from "./utils/resolveConflict.js"; import { UnresolvedFile, getUnresolvedDiffHunksRendererOptions } from "./components/UnresolvedFile.js"; import { areVirtualWindowSpecsEqual } from "./utils/areVirtualWindowSpecsEqual.js"; import { Virtualizer } from "./components/Virtualizer.js"; import { getResolvedLanguages } from "./highlighter/languages/getResolvedLanguages.js"; import { hasResolvedLanguages } from "./highlighter/languages/hasResolvedLanguages.js"; import { registerCustomLanguage } from "./highlighter/languages/registerCustomLanguage.js"; import { resolveLanguages } from "./highlighter/languages/resolveLanguages.js"; import { getResolvedThemes } from "./highlighter/themes/getResolvedThemes.js"; import { registerCustomTheme } from "./highlighter/themes/registerCustomTheme.js"; import { registerCustomCSSVariableTheme } from "./highlighter/themes/registerCustomCSSVariableTheme.js"; import { resolveThemes } from "./highlighter/themes/resolveThemes.js"; import { areWorkerStatsEqual } from "./utils/areWorkerStatsEqual.js"; import { createRowNodes } from "./utils/createRowNodes.js"; import { createStyleElement, createThemeStyleElement } from "./utils/createStyleElement.js"; import { diffAcceptRejectHunk } from "./utils/diffAcceptRejectHunk.js"; import { getLineEndingType } from "./utils/getLineEndingType.js"; import { getSingularPatch } from "./utils/getSingularPatch.js"; import { parseLineType } from "./utils/parseLineType.js"; import { setLanguageOverride } from "./utils/setLanguageOverride.js"; import { trimPatchContext } from "./utils/trimPatchContext.js"; import { codeToHtml, createCssVariablesTheme as createCSSVariablesTheme } from "shiki"; export { ALTERNATE_FILE_NAMES_GIT, AttachedLanguages, AttachedThemes, 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_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, 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, 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, isDefaultRenderRange, 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 };