@pierre/diffs 1.3.0-beta.1 → 1.3.0-beta.11
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/README.md +15 -15
- package/dist/components/CodeView.d.ts +103 -15
- package/dist/components/CodeView.d.ts.map +1 -1
- package/dist/components/CodeView.js +335 -51
- package/dist/components/CodeView.js.map +1 -1
- package/dist/components/File.d.ts +12 -8
- package/dist/components/File.d.ts.map +1 -1
- package/dist/components/File.js +103 -40
- package/dist/components/File.js.map +1 -1
- package/dist/components/FileDiff.d.ts +82 -36
- package/dist/components/FileDiff.d.ts.map +1 -1
- package/dist/components/FileDiff.js +382 -96
- package/dist/components/FileDiff.js.map +1 -1
- package/dist/components/FileStream.d.ts +0 -1
- package/dist/components/FileStream.d.ts.map +1 -1
- package/dist/components/FileStream.js +10 -7
- package/dist/components/FileStream.js.map +1 -1
- package/dist/components/UnresolvedFile.d.ts +3 -3
- package/dist/components/UnresolvedFile.d.ts.map +1 -1
- package/dist/components/UnresolvedFile.js +8 -6
- package/dist/components/UnresolvedFile.js.map +1 -1
- package/dist/components/VirtualizedFile.d.ts +8 -4
- package/dist/components/VirtualizedFile.d.ts.map +1 -1
- package/dist/components/VirtualizedFile.js +118 -44
- package/dist/components/VirtualizedFile.js.map +1 -1
- package/dist/components/VirtualizedFileDiff.d.ts +36 -9
- package/dist/components/VirtualizedFileDiff.d.ts.map +1 -1
- package/dist/components/VirtualizedFileDiff.js +371 -120
- package/dist/components/VirtualizedFileDiff.js.map +1 -1
- package/dist/components/Virtualizer.d.ts +4 -1
- package/dist/components/Virtualizer.d.ts.map +1 -1
- package/dist/components/Virtualizer.js +47 -29
- package/dist/components/Virtualizer.js.map +1 -1
- package/dist/components/VirtulizerDevelopment.d.ts.map +1 -1
- package/dist/components/web-components.d.ts.map +1 -1
- package/dist/components/web-components.js +2 -3
- package/dist/components/web-components.js.map +1 -1
- package/dist/constants.d.ts +5 -2
- package/dist/constants.d.ts.map +1 -1
- package/dist/constants.js +5 -2
- package/dist/constants.js.map +1 -1
- package/dist/editor/command.d.ts +3 -2
- package/dist/editor/command.d.ts.map +1 -1
- package/dist/editor/command.js +29 -6
- package/dist/editor/command.js.map +1 -1
- package/dist/editor/editStack.d.ts +12 -2
- package/dist/editor/editStack.d.ts.map +1 -1
- package/dist/editor/editStack.js +57 -16
- package/dist/editor/editStack.js.map +1 -1
- package/dist/editor/editor.d.ts +91 -8
- package/dist/editor/editor.d.ts.map +1 -1
- package/dist/editor/editor.js +1951 -709
- package/dist/editor/editor.js.map +1 -1
- package/dist/editor/editor2.js +6 -0
- package/dist/editor/editor2.js.map +1 -0
- package/dist/editor/index.d.ts +4 -2
- package/dist/editor/index.js +1 -2
- package/dist/editor/languages.d.ts +26 -0
- package/dist/editor/languages.d.ts.map +1 -0
- package/dist/editor/languages.js +363 -0
- package/dist/editor/languages.js.map +1 -0
- package/dist/editor/lineAnnotations.d.ts +2 -1
- package/dist/editor/lineAnnotations.d.ts.map +1 -1
- package/dist/editor/lineAnnotations.js +193 -13
- package/dist/editor/lineAnnotations.js.map +1 -1
- package/dist/editor/marker.d.ts +38 -0
- package/dist/editor/marker.d.ts.map +1 -0
- package/dist/editor/marker.js +245 -0
- package/dist/editor/marker.js.map +1 -0
- package/dist/editor/matchBrackets.d.ts +9 -0
- package/dist/editor/matchBrackets.d.ts.map +1 -0
- package/dist/editor/matchBrackets.js +138 -0
- package/dist/editor/matchBrackets.js.map +1 -0
- package/dist/editor/pieceTable.d.ts +15 -7
- package/dist/editor/pieceTable.d.ts.map +1 -1
- package/dist/editor/pieceTable.js +306 -190
- package/dist/editor/pieceTable.js.map +1 -1
- package/dist/editor/platform.d.ts +8 -1
- package/dist/editor/platform.d.ts.map +1 -1
- package/dist/editor/platform.js +18 -5
- package/dist/editor/platform.js.map +1 -1
- package/dist/editor/popover.d.ts +65 -0
- package/dist/editor/popover.d.ts.map +1 -0
- package/dist/editor/popover.js +191 -0
- package/dist/editor/popover.js.map +1 -0
- package/dist/editor/searchPanel.d.ts +17 -7
- package/dist/editor/searchPanel.d.ts.map +1 -1
- package/dist/editor/searchPanel.js +268 -169
- package/dist/editor/searchPanel.js.map +1 -1
- package/dist/editor/selection.d.ts +101 -16
- package/dist/editor/selection.d.ts.map +1 -1
- package/dist/editor/selection.js +863 -137
- package/dist/editor/selection.js.map +1 -1
- package/dist/editor/selectionAction.d.ts +46 -0
- package/dist/editor/selectionAction.d.ts.map +1 -0
- package/dist/editor/selectionAction.js +64 -0
- package/dist/editor/selectionAction.js.map +1 -0
- package/dist/editor/sprite.d.ts +8 -0
- package/dist/editor/sprite.d.ts.map +1 -0
- package/dist/editor/sprite.js +45 -0
- package/dist/editor/sprite.js.map +1 -0
- package/dist/editor/stateStorage.d.ts +15 -0
- package/dist/editor/stateStorage.d.ts.map +1 -0
- package/dist/editor/stateStorage.js +65 -0
- package/dist/editor/stateStorage.js.map +1 -0
- package/dist/editor/textDocument.d.ts +21 -83
- package/dist/editor/textDocument.d.ts.map +1 -1
- package/dist/editor/textDocument.js +117 -48
- package/dist/editor/textDocument.js.map +1 -1
- package/dist/editor/textMeasure.d.ts +31 -2
- package/dist/editor/textMeasure.d.ts.map +1 -1
- package/dist/editor/textMeasure.js +122 -21
- package/dist/editor/textMeasure.js.map +1 -1
- package/dist/editor/{tokenzier.d.ts → tokenizer.d.ts} +16 -12
- package/dist/editor/tokenizer.d.ts.map +1 -0
- package/dist/editor/tokenizer.js +518 -0
- package/dist/editor/tokenizer.js.map +1 -0
- package/dist/editor/utils.d.ts +6 -1
- package/dist/editor/utils.d.ts.map +1 -1
- package/dist/editor/utils.js +34 -3
- package/dist/editor/utils.js.map +1 -1
- package/dist/highlighter/languages/areLanguagesAttached.d.ts.map +1 -1
- package/dist/highlighter/languages/areLanguagesAttached.js +1 -2
- package/dist/highlighter/languages/areLanguagesAttached.js.map +1 -1
- package/dist/highlighter/languages/attachResolvedLanguages.d.ts +0 -2
- package/dist/highlighter/languages/attachResolvedLanguages.d.ts.map +1 -1
- package/dist/highlighter/languages/attachResolvedLanguages.js +1 -2
- package/dist/highlighter/languages/attachResolvedLanguages.js.map +1 -1
- package/dist/highlighter/languages/cleanUpResolvedLanguages.d.ts.map +1 -1
- package/dist/highlighter/languages/cleanUpResolvedLanguages.js +1 -2
- package/dist/highlighter/languages/cleanUpResolvedLanguages.js.map +1 -1
- package/dist/highlighter/languages/constants.d.ts +0 -1
- package/dist/highlighter/languages/constants.d.ts.map +1 -1
- package/dist/highlighter/languages/constants.js +1 -1
- package/dist/highlighter/languages/constants.js.map +1 -1
- package/dist/highlighter/languages/getResolvedLanguages.d.ts +0 -2
- package/dist/highlighter/languages/getResolvedLanguages.d.ts.map +1 -1
- package/dist/highlighter/languages/getResolvedLanguages.js +1 -2
- package/dist/highlighter/languages/getResolvedLanguages.js.map +1 -1
- package/dist/highlighter/languages/getResolvedOrResolveLanguage.d.ts +0 -2
- package/dist/highlighter/languages/getResolvedOrResolveLanguage.d.ts.map +1 -1
- package/dist/highlighter/languages/getResolvedOrResolveLanguage.js +1 -2
- package/dist/highlighter/languages/getResolvedOrResolveLanguage.js.map +1 -1
- package/dist/highlighter/languages/hasResolvedLanguages.d.ts.map +1 -1
- package/dist/highlighter/languages/hasResolvedLanguages.js +1 -2
- package/dist/highlighter/languages/hasResolvedLanguages.js.map +1 -1
- package/dist/highlighter/languages/registerCustomLanguage.d.ts +0 -1
- package/dist/highlighter/languages/registerCustomLanguage.d.ts.map +1 -1
- package/dist/highlighter/languages/registerCustomLanguage.js +1 -2
- package/dist/highlighter/languages/registerCustomLanguage.js.map +1 -1
- package/dist/highlighter/languages/resolveLanguage.d.ts +0 -2
- package/dist/highlighter/languages/resolveLanguage.d.ts.map +1 -1
- package/dist/highlighter/languages/resolveLanguage.js +4 -5
- package/dist/highlighter/languages/resolveLanguage.js.map +1 -1
- package/dist/highlighter/languages/resolveLanguages.d.ts +0 -2
- package/dist/highlighter/languages/resolveLanguages.d.ts.map +1 -1
- package/dist/highlighter/languages/resolveLanguages.js +1 -2
- package/dist/highlighter/languages/resolveLanguages.js.map +1 -1
- package/dist/highlighter/shared_highlighter.d.ts.map +1 -1
- package/dist/highlighter/shared_highlighter.js +6 -33
- package/dist/highlighter/shared_highlighter.js.map +1 -1
- package/dist/highlighter/themes/areThemesAttached.d.ts.map +1 -1
- package/dist/highlighter/themes/areThemesAttached.js +1 -2
- package/dist/highlighter/themes/areThemesAttached.js.map +1 -1
- package/dist/highlighter/themes/attachResolvedThemes.d.ts.map +1 -1
- package/dist/highlighter/themes/attachResolvedThemes.js +5 -5
- package/dist/highlighter/themes/attachResolvedThemes.js.map +1 -1
- package/dist/highlighter/themes/cleanUpResolvedThemes.d.ts.map +1 -1
- package/dist/highlighter/themes/cleanUpResolvedThemes.js +4 -4
- package/dist/highlighter/themes/cleanUpResolvedThemes.js.map +1 -1
- package/dist/highlighter/themes/constants.d.ts +1 -7
- package/dist/highlighter/themes/constants.d.ts.map +1 -1
- package/dist/highlighter/themes/constants.js +2 -5
- package/dist/highlighter/themes/constants.js.map +1 -1
- package/dist/highlighter/themes/getResolvedOrResolveTheme.d.ts.map +1 -1
- package/dist/highlighter/themes/getResolvedOrResolveTheme.js +3 -4
- package/dist/highlighter/themes/getResolvedOrResolveTheme.js.map +1 -1
- package/dist/highlighter/themes/getResolvedThemes.d.ts.map +1 -1
- package/dist/highlighter/themes/getResolvedThemes.js +3 -10
- package/dist/highlighter/themes/getResolvedThemes.js.map +1 -1
- package/dist/highlighter/themes/hasResolvedThemes.d.ts.map +1 -1
- package/dist/highlighter/themes/hasResolvedThemes.js +3 -5
- package/dist/highlighter/themes/hasResolvedThemes.js.map +1 -1
- package/dist/highlighter/themes/registerCustomCSSVariableTheme.d.ts.map +1 -1
- package/dist/highlighter/themes/registerCustomCSSVariableTheme.js +2 -3
- package/dist/highlighter/themes/registerCustomCSSVariableTheme.js.map +1 -1
- package/dist/highlighter/themes/registerCustomTheme.d.ts +5 -3
- package/dist/highlighter/themes/registerCustomTheme.d.ts.map +1 -1
- package/dist/highlighter/themes/registerCustomTheme.js +16 -7
- package/dist/highlighter/themes/registerCustomTheme.js.map +1 -1
- package/dist/highlighter/themes/resolveTheme.d.ts.map +1 -1
- package/dist/highlighter/themes/resolveTheme.js +7 -29
- package/dist/highlighter/themes/resolveTheme.js.map +1 -1
- package/dist/highlighter/themes/resolveThemes.d.ts.map +1 -1
- package/dist/highlighter/themes/resolveThemes.js +6 -14
- package/dist/highlighter/themes/resolveThemes.js.map +1 -1
- package/dist/highlighter/themes/themeResolution.d.ts +8 -0
- package/dist/highlighter/themes/themeResolution.d.ts.map +1 -0
- package/dist/highlighter/themes/themeResolution.js +21 -0
- package/dist/highlighter/themes/themeResolution.js.map +1 -0
- package/dist/highlighter/themes/themeResolver.d.ts +8 -0
- package/dist/highlighter/themes/themeResolver.d.ts.map +1 -0
- package/dist/highlighter/themes/themeResolver.js +7 -0
- package/dist/highlighter/themes/themeResolver.js.map +1 -0
- package/dist/index.d.ts +16 -14
- package/dist/index.js +13 -12
- package/dist/managers/InteractionManager.d.ts +20 -2
- package/dist/managers/InteractionManager.d.ts.map +1 -1
- package/dist/managers/InteractionManager.js +159 -83
- package/dist/managers/InteractionManager.js.map +1 -1
- package/dist/managers/ResizeManager.d.ts +10 -2
- package/dist/managers/ResizeManager.d.ts.map +1 -1
- package/dist/managers/ResizeManager.js +35 -15
- package/dist/managers/ResizeManager.js.map +1 -1
- package/dist/managers/ScrollSyncManager.d.ts.map +1 -1
- package/dist/managers/ScrollSyncManager.js +1 -1
- package/dist/managers/ScrollSyncManager.js.map +1 -1
- package/dist/managers/UniversalRenderingManager.d.ts +2 -1
- package/dist/managers/UniversalRenderingManager.d.ts.map +1 -1
- package/dist/managers/UniversalRenderingManager.js +8 -3
- package/dist/managers/UniversalRenderingManager.js.map +1 -1
- package/dist/node_modules/.pnpm/@types_hast@3.0.4/node_modules/@types/hast/index.d.ts +228 -0
- package/dist/node_modules/.pnpm/@types_hast@3.0.4/node_modules/@types/hast/index.d.ts.map +1 -0
- package/dist/node_modules/.pnpm/@types_unist@3.0.3/node_modules/@types/unist/index.d.ts +84 -0
- package/dist/node_modules/.pnpm/@types_unist@3.0.3/node_modules/@types/unist/index.d.ts.map +1 -0
- package/dist/react/CodeView.d.ts +26 -2
- package/dist/react/CodeView.d.ts.map +1 -1
- package/dist/react/CodeView.js +90 -30
- package/dist/react/CodeView.js.map +1 -1
- package/dist/react/EditContext.d.ts +15 -0
- package/dist/react/EditContext.d.ts.map +1 -0
- package/dist/react/EditContext.js +23 -0
- package/dist/react/EditContext.js.map +1 -0
- package/dist/react/File.d.ts +1 -0
- package/dist/react/File.d.ts.map +1 -1
- package/dist/react/File.js +4 -6
- package/dist/react/File.js.map +1 -1
- package/dist/react/FileDiff.d.ts +1 -0
- package/dist/react/FileDiff.d.ts.map +1 -1
- package/dist/react/FileDiff.js +4 -6
- package/dist/react/FileDiff.js.map +1 -1
- package/dist/react/MultiFileDiff.d.ts +4 -4
- package/dist/react/MultiFileDiff.d.ts.map +1 -1
- package/dist/react/MultiFileDiff.js +4 -6
- package/dist/react/MultiFileDiff.js.map +1 -1
- package/dist/react/PatchDiff.d.ts +1 -0
- package/dist/react/PatchDiff.d.ts.map +1 -1
- package/dist/react/PatchDiff.js +4 -6
- package/dist/react/PatchDiff.js.map +1 -1
- package/dist/react/UnresolvedFile.d.ts +2 -1
- package/dist/react/UnresolvedFile.d.ts.map +1 -1
- package/dist/react/UnresolvedFile.js +4 -6
- package/dist/react/UnresolvedFile.js.map +1 -1
- package/dist/react/Virtualizer.d.ts.map +1 -1
- package/dist/react/Virtualizer.js +2 -5
- package/dist/react/Virtualizer.js.map +1 -1
- package/dist/react/WorkerPoolContext.d.ts +0 -1
- package/dist/react/WorkerPoolContext.d.ts.map +1 -1
- package/dist/react/WorkerPoolContext.js +2 -5
- package/dist/react/WorkerPoolContext.js.map +1 -1
- package/dist/react/constants.d.ts.map +1 -1
- package/dist/react/constants.js +1 -1
- package/dist/react/constants.js.map +1 -1
- package/dist/react/index.d.ts +3 -3
- package/dist/react/index.js +2 -3
- package/dist/react/jsx.d.ts +0 -1
- package/dist/react/jsx.d.ts.map +1 -1
- package/dist/react/types.d.ts +2 -0
- package/dist/react/types.d.ts.map +1 -1
- package/dist/react/types.js +1 -0
- package/dist/react/utils/renderDiffChildren.d.ts +2 -0
- package/dist/react/utils/renderDiffChildren.d.ts.map +1 -1
- package/dist/react/utils/renderDiffChildren.js +18 -11
- package/dist/react/utils/renderDiffChildren.js.map +1 -1
- package/dist/react/utils/renderFileChildren.d.ts +2 -0
- package/dist/react/utils/renderFileChildren.d.ts.map +1 -1
- package/dist/react/utils/renderFileChildren.js +18 -11
- package/dist/react/utils/renderFileChildren.js.map +1 -1
- package/dist/react/utils/templateRender.d.ts.map +1 -1
- package/dist/react/utils/templateRender.js +1 -2
- package/dist/react/utils/templateRender.js.map +1 -1
- package/dist/react/utils/useFileDiffInstance.d.ts.map +1 -1
- package/dist/react/utils/useFileDiffInstance.js +10 -18
- package/dist/react/utils/useFileDiffInstance.js.map +1 -1
- package/dist/react/utils/useFileInstance.d.ts.map +1 -1
- package/dist/react/utils/useFileInstance.js +3 -7
- package/dist/react/utils/useFileInstance.js.map +1 -1
- package/dist/react/utils/useStableCallback.d.ts.map +1 -1
- package/dist/react/utils/useStableCallback.js +1 -2
- package/dist/react/utils/useStableCallback.js.map +1 -1
- package/dist/react/utils/useUnresolvedFileInstance.d.ts.map +1 -1
- package/dist/react/utils/useUnresolvedFileInstance.js +10 -11
- package/dist/react/utils/useUnresolvedFileInstance.js.map +1 -1
- package/dist/renderers/DiffHunksRenderer.d.ts +30 -4
- package/dist/renderers/DiffHunksRenderer.d.ts.map +1 -1
- package/dist/renderers/DiffHunksRenderer.js +313 -45
- package/dist/renderers/DiffHunksRenderer.js.map +1 -1
- package/dist/renderers/FileRenderer.d.ts +7 -6
- package/dist/renderers/FileRenderer.d.ts.map +1 -1
- package/dist/renderers/FileRenderer.js +113 -56
- package/dist/renderers/FileRenderer.js.map +1 -1
- package/dist/renderers/UnresolvedFileHunksRenderer.d.ts +1 -2
- package/dist/renderers/UnresolvedFileHunksRenderer.d.ts.map +1 -1
- package/dist/renderers/UnresolvedFileHunksRenderer.js +1 -2
- package/dist/renderers/UnresolvedFileHunksRenderer.js.map +1 -1
- package/dist/shiki-stream/index.js +1 -2
- package/dist/shiki-stream/stream.d.ts +0 -1
- package/dist/shiki-stream/stream.d.ts.map +1 -1
- package/dist/shiki-stream/stream.js +1 -2
- package/dist/shiki-stream/stream.js.map +1 -1
- package/dist/shiki-stream/tokenizer.d.ts.map +1 -1
- package/dist/shiki-stream/tokenizer.js +1 -1
- package/dist/shiki-stream/tokenizer.js.map +1 -1
- package/dist/shiki-stream/types.d.ts +0 -1
- package/dist/shiki-stream/types.d.ts.map +1 -1
- package/dist/sprite.d.ts.map +1 -1
- package/dist/sprite.js +1 -1
- package/dist/ssr/FileDiffReact.d.ts.map +1 -1
- package/dist/ssr/FileDiffReact.js +4 -7
- package/dist/ssr/FileDiffReact.js.map +1 -1
- package/dist/ssr/index.d.ts +2 -2
- package/dist/ssr/index.js +1 -2
- package/dist/ssr/preloadDiffs.d.ts +12 -11
- package/dist/ssr/preloadDiffs.d.ts.map +1 -1
- package/dist/ssr/preloadDiffs.js +16 -9
- package/dist/ssr/preloadDiffs.js.map +1 -1
- package/dist/ssr/preloadFile.d.ts.map +1 -1
- package/dist/ssr/preloadFile.js +1 -2
- package/dist/ssr/preloadFile.js.map +1 -1
- package/dist/ssr/preloadPatchFile.d.ts.map +1 -1
- package/dist/ssr/preloadPatchFile.js +2 -3
- package/dist/ssr/preloadPatchFile.js.map +1 -1
- package/dist/ssr/renderHTML.d.ts +1 -1
- package/dist/ssr/renderHTML.d.ts.map +1 -1
- package/dist/ssr/renderHTML.js +1 -2
- package/dist/ssr/renderHTML.js.map +1 -1
- package/dist/string-import.d.ts +4 -0
- package/dist/string-import.d.ts.map +1 -1
- package/dist/style.js +3 -3
- package/dist/style.js.map +1 -1
- package/dist/types.d.ts +278 -31
- package/dist/types.d.ts.map +1 -1
- package/dist/utils/applyLineTextWithNewline.d.ts +5 -0
- package/dist/utils/applyLineTextWithNewline.d.ts.map +1 -0
- package/dist/utils/applyLineTextWithNewline.js +11 -0
- package/dist/utils/applyLineTextWithNewline.js.map +1 -0
- package/dist/utils/areDiffLineAnnotationsEqual.d.ts.map +1 -1
- package/dist/utils/areDiffLineAnnotationsEqual.js +1 -1
- package/dist/utils/areDiffLineAnnotationsEqual.js.map +1 -1
- package/dist/utils/areDiffRenderOptionsEqual.d.ts.map +1 -1
- package/dist/utils/areDiffRenderOptionsEqual.js +1 -2
- package/dist/utils/areDiffRenderOptionsEqual.js.map +1 -1
- package/dist/utils/areDiffTargetsEqual.d.ts.map +1 -1
- package/dist/utils/areDiffTargetsEqual.js +1 -1
- package/dist/utils/areDiffTargetsEqual.js.map +1 -1
- package/dist/utils/areFileRenderOptionsEqual.d.ts.map +1 -1
- package/dist/utils/areFileRenderOptionsEqual.js +1 -2
- package/dist/utils/areFileRenderOptionsEqual.js.map +1 -1
- package/dist/utils/areFilesEqual.d.ts.map +1 -1
- package/dist/utils/areFilesEqual.js +1 -1
- package/dist/utils/areFilesEqual.js.map +1 -1
- package/dist/utils/areHunkDataEqual.d.ts.map +1 -1
- package/dist/utils/areHunkDataEqual.js +2 -2
- package/dist/utils/areHunkDataEqual.js.map +1 -1
- package/dist/utils/areLineAnnotationsEqual.d.ts.map +1 -1
- package/dist/utils/areLineAnnotationsEqual.js +1 -1
- package/dist/utils/areLineAnnotationsEqual.js.map +1 -1
- package/dist/utils/areManagedSnapshotsEqual.d.ts +2 -2
- package/dist/utils/areManagedSnapshotsEqual.d.ts.map +1 -1
- package/dist/utils/areManagedSnapshotsEqual.js +6 -1
- package/dist/utils/areManagedSnapshotsEqual.js.map +1 -1
- package/dist/utils/areMergeConflictActionsEqual.d.ts.map +1 -1
- package/dist/utils/areMergeConflictActionsEqual.js +1 -1
- package/dist/utils/areMergeConflictActionsEqual.js.map +1 -1
- package/dist/utils/areObjectsEqual.d.ts.map +1 -1
- package/dist/utils/areObjectsEqual.js +1 -1
- package/dist/utils/areObjectsEqual.js.map +1 -1
- package/dist/utils/areOptionsEqual.d.ts +0 -2
- package/dist/utils/areOptionsEqual.d.ts.map +1 -1
- package/dist/utils/areOptionsEqual.js +1 -2
- package/dist/utils/areOptionsEqual.js.map +1 -1
- package/dist/utils/arePrePropertiesEqual.d.ts.map +1 -1
- package/dist/utils/arePrePropertiesEqual.js +1 -1
- package/dist/utils/arePrePropertiesEqual.js.map +1 -1
- package/dist/utils/areRenderRangesEqual.d.ts.map +1 -1
- package/dist/utils/areRenderRangesEqual.js +1 -1
- package/dist/utils/areRenderRangesEqual.js.map +1 -1
- package/dist/utils/areSelectionPointsEqual.d.ts.map +1 -1
- package/dist/utils/areSelectionPointsEqual.js +1 -1
- package/dist/utils/areSelectionPointsEqual.js.map +1 -1
- package/dist/utils/areSelectionsEqual.d.ts.map +1 -1
- package/dist/utils/areSelectionsEqual.js +1 -1
- package/dist/utils/areSelectionsEqual.js.map +1 -1
- package/dist/utils/areThemesEqual.d.ts.map +1 -1
- package/dist/utils/areThemesEqual.js +1 -1
- package/dist/utils/areThemesEqual.js.map +1 -1
- package/dist/utils/areVirtualWindowSpecsEqual.d.ts.map +1 -1
- package/dist/utils/areVirtualWindowSpecsEqual.js +1 -1
- package/dist/utils/areVirtualWindowSpecsEqual.js.map +1 -1
- package/dist/utils/areWorkerStatsEqual.d.ts +0 -2
- package/dist/utils/areWorkerStatsEqual.d.ts.map +1 -1
- package/dist/utils/areWorkerStatsEqual.js +1 -1
- package/dist/utils/areWorkerStatsEqual.js.map +1 -1
- package/dist/utils/awaitWithTimeout.d.ts +5 -0
- package/dist/utils/awaitWithTimeout.d.ts.map +1 -0
- package/dist/utils/awaitWithTimeout.js +15 -0
- package/dist/utils/awaitWithTimeout.js.map +1 -0
- package/dist/utils/cleanLastNewline.d.ts.map +1 -1
- package/dist/utils/cleanLastNewline.js +1 -1
- package/dist/utils/cleanLastNewline.js.map +1 -1
- package/dist/utils/cloneFileDiffMetadata.d.ts +7 -0
- package/dist/utils/cloneFileDiffMetadata.d.ts.map +1 -0
- package/dist/utils/cloneFileDiffMetadata.js +16 -0
- package/dist/utils/cloneFileDiffMetadata.js.map +1 -0
- package/dist/utils/computeEstimatedDiffHeights.d.ts +3 -1
- package/dist/utils/computeEstimatedDiffHeights.d.ts.map +1 -1
- package/dist/utils/computeEstimatedDiffHeights.js +18 -23
- package/dist/utils/computeEstimatedDiffHeights.js.map +1 -1
- package/dist/utils/computeFileOffsets.d.ts +9 -1
- package/dist/utils/computeFileOffsets.d.ts.map +1 -1
- package/dist/utils/computeFileOffsets.js +51 -4
- package/dist/utils/computeFileOffsets.js.map +1 -1
- package/dist/utils/computeVirtualFileMetrics.d.ts.map +1 -1
- package/dist/utils/computeVirtualFileMetrics.js +1 -2
- package/dist/utils/computeVirtualFileMetrics.js.map +1 -1
- package/dist/utils/createAnnotationElement.d.ts +1 -1
- package/dist/utils/createAnnotationElement.d.ts.map +1 -1
- package/dist/utils/createAnnotationElement.js +1 -2
- package/dist/utils/createAnnotationElement.js.map +1 -1
- package/dist/utils/createAnnotationWrapperNode.d.ts.map +1 -1
- package/dist/utils/createAnnotationWrapperNode.js +1 -1
- package/dist/utils/createAnnotationWrapperNode.js.map +1 -1
- package/dist/utils/createCodeViewHeaderFooterHostElement.d.ts +5 -0
- package/dist/utils/createCodeViewHeaderFooterHostElement.d.ts.map +1 -0
- package/dist/utils/createCodeViewHeaderFooterHostElement.js +19 -0
- package/dist/utils/createCodeViewHeaderFooterHostElement.js.map +1 -0
- package/dist/utils/createContentColumn.d.ts +1 -1
- package/dist/utils/createContentColumn.d.ts.map +1 -1
- package/dist/utils/createContentColumn.js +1 -2
- package/dist/utils/createContentColumn.js.map +1 -1
- package/dist/utils/createEmptyRowBuffer.d.ts +1 -1
- package/dist/utils/createEmptyRowBuffer.d.ts.map +1 -1
- package/dist/utils/createEmptyRowBuffer.js +1 -2
- package/dist/utils/createEmptyRowBuffer.js.map +1 -1
- package/dist/utils/createFileHeaderElement.d.ts +1 -1
- package/dist/utils/createFileHeaderElement.d.ts.map +1 -1
- package/dist/utils/createFileHeaderElement.js +6 -3
- package/dist/utils/createFileHeaderElement.js.map +1 -1
- package/dist/utils/createGutterUtilityContentNode.d.ts.map +1 -1
- package/dist/utils/createGutterUtilityContentNode.js +1 -1
- package/dist/utils/createGutterUtilityContentNode.js.map +1 -1
- package/dist/utils/createGutterUtilityElement.d.ts +1 -1
- package/dist/utils/createGutterUtilityElement.d.ts.map +1 -1
- package/dist/utils/createGutterUtilityElement.js +1 -2
- package/dist/utils/createGutterUtilityElement.js.map +1 -1
- package/dist/utils/createNoNewlineElement.d.ts +1 -1
- package/dist/utils/createNoNewlineElement.d.ts.map +1 -1
- package/dist/utils/createNoNewlineElement.js +1 -2
- package/dist/utils/createNoNewlineElement.js.map +1 -1
- package/dist/utils/createPreElement.d.ts +1 -1
- package/dist/utils/createPreElement.d.ts.map +1 -1
- package/dist/utils/createPreElement.js +1 -3
- package/dist/utils/createPreElement.js.map +1 -1
- package/dist/utils/createRowNodes.d.ts.map +1 -1
- package/dist/utils/createRowNodes.js +1 -1
- package/dist/utils/createRowNodes.js.map +1 -1
- package/dist/utils/createSeparator.d.ts +1 -1
- package/dist/utils/createSeparator.d.ts.map +1 -1
- package/dist/utils/createSeparator.js +1 -2
- package/dist/utils/createSeparator.js.map +1 -1
- package/dist/utils/createSpanNodeFromToken.d.ts.map +1 -1
- package/dist/utils/createSpanNodeFromToken.js +1 -2
- package/dist/utils/createSpanNodeFromToken.js.map +1 -1
- package/dist/utils/createStyleElement.d.ts +1 -1
- package/dist/utils/createStyleElement.d.ts.map +1 -1
- package/dist/utils/createStyleElement.js +1 -2
- package/dist/utils/createStyleElement.js.map +1 -1
- package/dist/utils/createTransformerWithState.d.ts.map +1 -1
- package/dist/utils/createTransformerWithState.js +1 -2
- package/dist/utils/createTransformerWithState.js.map +1 -1
- package/dist/utils/createUnsafeCSSStyleNode.d.ts.map +1 -1
- package/dist/utils/createUnsafeCSSStyleNode.js +1 -2
- package/dist/utils/createUnsafeCSSStyleNode.js.map +1 -1
- package/dist/utils/createWindowFromScrollPosition.d.ts.map +1 -1
- package/dist/utils/createWindowFromScrollPosition.js +5 -5
- package/dist/utils/createWindowFromScrollPosition.js.map +1 -1
- package/dist/utils/cssWrappers.d.ts.map +1 -1
- package/dist/utils/cssWrappers.js +2 -3
- package/dist/utils/cssWrappers.js.map +1 -1
- package/dist/utils/detachString.d.ts.map +1 -1
- package/dist/utils/detachString.js +1 -1
- package/dist/utils/detachString.js.map +1 -1
- package/dist/utils/diffAcceptRejectHunk.d.ts.map +1 -1
- package/dist/utils/diffAcceptRejectHunk.js +1 -2
- package/dist/utils/diffAcceptRejectHunk.js.map +1 -1
- package/dist/utils/editSessionHunks.d.ts +84 -0
- package/dist/utils/editSessionHunks.d.ts.map +1 -0
- package/dist/utils/editSessionHunks.js +366 -0
- package/dist/utils/editSessionHunks.js.map +1 -0
- package/dist/utils/formatCSSVariablePrefix.d.ts.map +1 -1
- package/dist/utils/formatCSSVariablePrefix.js +1 -1
- package/dist/utils/formatCSSVariablePrefix.js.map +1 -1
- package/dist/utils/getDiffFileInput.d.ts +14 -0
- package/dist/utils/getDiffFileInput.d.ts.map +1 -0
- package/dist/utils/getDiffFileInput.js +24 -0
- package/dist/utils/getDiffFileInput.js.map +1 -0
- package/dist/utils/getDiffHunksRendererOptions.d.ts.map +1 -1
- package/dist/utils/getDiffHunksRendererOptions.js +2 -1
- package/dist/utils/getDiffHunksRendererOptions.js.map +1 -1
- package/dist/utils/getFileRendererOptions.d.ts.map +1 -1
- package/dist/utils/getFileRendererOptions.js +1 -1
- package/dist/utils/getFileRendererOptions.js.map +1 -1
- package/dist/utils/getFiletypeFromFileName.d.ts.map +1 -1
- package/dist/utils/getFiletypeFromFileName.js +3 -1
- package/dist/utils/getFiletypeFromFileName.js.map +1 -1
- package/dist/utils/getHighlighterOptions.d.ts.map +1 -1
- package/dist/utils/getHighlighterOptions.js +1 -2
- package/dist/utils/getHighlighterOptions.js.map +1 -1
- package/dist/utils/getHighlighterThemeStyles.d.ts.map +1 -1
- package/dist/utils/getHighlighterThemeStyles.js +17 -14
- package/dist/utils/getHighlighterThemeStyles.js.map +1 -1
- package/dist/utils/getHunkSeparatorSlotName.d.ts.map +1 -1
- package/dist/utils/getHunkSeparatorSlotName.js +1 -1
- package/dist/utils/getHunkSeparatorSlotName.js.map +1 -1
- package/dist/utils/getIconForType.d.ts.map +1 -1
- package/dist/utils/getIconForType.js +1 -1
- package/dist/utils/getIconForType.js.map +1 -1
- package/dist/utils/getLineAnnotationName.d.ts.map +1 -1
- package/dist/utils/getLineAnnotationName.js +1 -1
- package/dist/utils/getLineAnnotationName.js.map +1 -1
- package/dist/utils/getLineEndingType.d.ts.map +1 -1
- package/dist/utils/getLineEndingType.js +1 -1
- package/dist/utils/getLineEndingType.js.map +1 -1
- package/dist/utils/getLineNodes.d.ts +1 -1
- package/dist/utils/getLineNodes.d.ts.map +1 -1
- package/dist/utils/getLineNodes.js +1 -1
- package/dist/utils/getLineNodes.js.map +1 -1
- package/dist/utils/getMergeConflictActionSlotName.d.ts.map +1 -1
- package/dist/utils/getMergeConflictActionSlotName.js +1 -1
- package/dist/utils/getMergeConflictActionSlotName.js.map +1 -1
- package/dist/utils/getMergeConflictLineTypes.d.ts.map +1 -1
- package/dist/utils/getMergeConflictLineTypes.js +1 -2
- package/dist/utils/getMergeConflictLineTypes.js.map +1 -1
- package/dist/utils/getOrCreateCodeNode.d.ts.map +1 -1
- package/dist/utils/getOrCreateCodeNode.js +1 -1
- package/dist/utils/getOrCreateCodeNode.js.map +1 -1
- package/dist/utils/getSingularPatch.d.ts.map +1 -1
- package/dist/utils/getSingularPatch.js +1 -2
- package/dist/utils/getSingularPatch.js.map +1 -1
- package/dist/utils/getThemes.d.ts.map +1 -1
- package/dist/utils/getThemes.js +1 -2
- package/dist/utils/getThemes.js.map +1 -1
- package/dist/utils/getTotalLineCountFromHunks.d.ts.map +1 -1
- package/dist/utils/getTotalLineCountFromHunks.js +1 -1
- package/dist/utils/getTotalLineCountFromHunks.js.map +1 -1
- package/dist/utils/hast_utils.d.ts +1 -1
- package/dist/utils/hast_utils.d.ts.map +1 -1
- package/dist/utils/hast_utils.js +1 -1
- package/dist/utils/hast_utils.js.map +1 -1
- package/dist/utils/hostTheme.d.ts.map +1 -1
- package/dist/utils/hostTheme.js +1 -2
- package/dist/utils/hostTheme.js.map +1 -1
- package/dist/utils/hydratePartialDiff.d.ts +10 -0
- package/dist/utils/hydratePartialDiff.d.ts.map +1 -0
- package/dist/utils/hydratePartialDiff.js +140 -0
- package/dist/utils/hydratePartialDiff.js.map +1 -0
- package/dist/utils/includesFileAnnotations.d.ts +17 -0
- package/dist/utils/includesFileAnnotations.d.ts.map +1 -0
- package/dist/utils/includesFileAnnotations.js +19 -0
- package/dist/utils/includesFileAnnotations.js.map +1 -0
- package/dist/utils/isDefaultRenderRange.d.ts.map +1 -1
- package/dist/utils/isDefaultRenderRange.js +1 -1
- package/dist/utils/isDefaultRenderRange.js.map +1 -1
- package/dist/utils/isDiffPlainText.d.ts.map +1 -1
- package/dist/utils/isDiffPlainText.js +1 -2
- package/dist/utils/isDiffPlainText.js.map +1 -1
- package/dist/utils/isFilePlainText.d.ts.map +1 -1
- package/dist/utils/isFilePlainText.js +1 -2
- package/dist/utils/isFilePlainText.js.map +1 -1
- package/dist/utils/isGutterUtilityPath.d.ts +5 -0
- package/dist/utils/isGutterUtilityPath.d.ts.map +1 -0
- package/dist/utils/isGutterUtilityPath.js +12 -0
- package/dist/utils/isGutterUtilityPath.js.map +1 -0
- package/dist/utils/isStyleNode.d.ts.map +1 -1
- package/dist/utils/isStyleNode.js +1 -1
- package/dist/utils/isStyleNode.js.map +1 -1
- package/dist/utils/isWorkerContext.d.ts.map +1 -1
- package/dist/utils/isWorkerContext.js +1 -1
- package/dist/utils/isWorkerContext.js.map +1 -1
- package/dist/utils/iterateOverDiff.d.ts.map +1 -1
- package/dist/utils/iterateOverDiff.js +178 -214
- package/dist/utils/iterateOverDiff.js.map +1 -1
- package/dist/utils/normalizeDiffResolution.d.ts.map +1 -1
- package/dist/utils/normalizeDiffResolution.js +1 -1
- package/dist/utils/normalizeDiffResolution.js.map +1 -1
- package/dist/utils/parseDiffDecorations.d.ts.map +1 -1
- package/dist/utils/parseDiffDecorations.js +1 -2
- package/dist/utils/parseDiffDecorations.js.map +1 -1
- package/dist/utils/parseDiffFromFile.d.ts +1 -2
- package/dist/utils/parseDiffFromFile.d.ts.map +1 -1
- package/dist/utils/parseDiffFromFile.js +27 -7
- package/dist/utils/parseDiffFromFile.js.map +1 -1
- package/dist/utils/parseLineType.d.ts.map +1 -1
- package/dist/utils/parseLineType.js +1 -1
- package/dist/utils/parseLineType.js.map +1 -1
- package/dist/utils/parseMergeConflictDiffFromFile.d.ts.map +1 -1
- package/dist/utils/parseMergeConflictDiffFromFile.js +5 -5
- package/dist/utils/parseMergeConflictDiffFromFile.js.map +1 -1
- package/dist/utils/parsePatchFiles.d.ts.map +1 -1
- package/dist/utils/parsePatchFiles.js +101 -11
- package/dist/utils/parsePatchFiles.js.map +1 -1
- package/dist/utils/prefersReducedMotion.d.ts.map +1 -1
- package/dist/utils/prefersReducedMotion.js +1 -1
- package/dist/utils/prefersReducedMotion.js.map +1 -1
- package/dist/utils/prerenderHTMLIfNecessary.d.ts.map +1 -1
- package/dist/utils/prerenderHTMLIfNecessary.js +1 -1
- package/dist/utils/prerenderHTMLIfNecessary.js.map +1 -1
- package/dist/utils/processLine.d.ts +1 -1
- package/dist/utils/processLine.d.ts.map +1 -1
- package/dist/utils/processLine.js +1 -2
- package/dist/utils/processLine.js.map +1 -1
- package/dist/utils/realignChangeContent.d.ts +28 -0
- package/dist/utils/realignChangeContent.d.ts.map +1 -0
- package/dist/utils/realignChangeContent.js +142 -0
- package/dist/utils/realignChangeContent.js.map +1 -0
- package/dist/utils/renderDiffWithHighlighter.d.ts.map +1 -1
- package/dist/utils/renderDiffWithHighlighter.js +9 -8
- package/dist/utils/renderDiffWithHighlighter.js.map +1 -1
- package/dist/utils/renderFileWithHighlighter.d.ts.map +1 -1
- package/dist/utils/renderFileWithHighlighter.js +5 -4
- package/dist/utils/renderFileWithHighlighter.js.map +1 -1
- package/dist/utils/resolveConflict.d.ts.map +1 -1
- package/dist/utils/resolveConflict.js +1 -2
- package/dist/utils/resolveConflict.js.map +1 -1
- package/dist/utils/resolveRegion.d.ts.map +1 -1
- package/dist/utils/resolveRegion.js +1 -1
- package/dist/utils/resolveRegion.js.map +1 -1
- package/dist/utils/roundToDevicePixel.d.ts.map +1 -1
- package/dist/utils/roundToDevicePixel.js +1 -1
- package/dist/utils/roundToDevicePixel.js.map +1 -1
- package/dist/utils/scrollbarGutter.d.ts.map +1 -1
- package/dist/utils/scrollbarGutter.js +1 -2
- package/dist/utils/scrollbarGutter.js.map +1 -1
- package/dist/utils/setLanguageOverride.d.ts.map +1 -1
- package/dist/utils/setLanguageOverride.js +1 -1
- package/dist/utils/setLanguageOverride.js.map +1 -1
- package/dist/utils/setWrapperNodeProps.d.ts.map +1 -1
- package/dist/utils/setWrapperNodeProps.js +1 -2
- package/dist/utils/setWrapperNodeProps.js.map +1 -1
- package/dist/utils/shouldUseTokenTransformer.d.ts.map +1 -1
- package/dist/utils/shouldUseTokenTransformer.js +1 -1
- package/dist/utils/shouldUseTokenTransformer.js.map +1 -1
- package/dist/utils/splitFileContents.d.ts.map +1 -1
- package/dist/utils/splitFileContents.js +1 -2
- package/dist/utils/splitFileContents.js.map +1 -1
- package/dist/utils/trimPatchContext.d.ts.map +1 -1
- package/dist/utils/trimPatchContext.js +1 -2
- package/dist/utils/trimPatchContext.js.map +1 -1
- package/dist/utils/updateDiffHunks.d.ts +24 -0
- package/dist/utils/updateDiffHunks.d.ts.map +1 -0
- package/dist/utils/updateDiffHunks.js +235 -0
- package/dist/utils/updateDiffHunks.js.map +1 -0
- package/dist/utils/virtualDiffLayout.d.ts +62 -2
- package/dist/utils/virtualDiffLayout.d.ts.map +1 -1
- package/dist/utils/virtualDiffLayout.js +137 -3
- package/dist/utils/virtualDiffLayout.js.map +1 -1
- package/dist/utils/wrapTokenFragments.d.ts +1 -1
- package/dist/utils/wrapTokenFragments.d.ts.map +1 -1
- package/dist/utils/wrapTokenFragments.js +1 -2
- package/dist/utils/wrapTokenFragments.js.map +1 -1
- package/dist/worker/WorkerPoolManager.d.ts +7 -2
- package/dist/worker/WorkerPoolManager.d.ts.map +1 -1
- package/dist/worker/WorkerPoolManager.js +88 -23
- package/dist/worker/WorkerPoolManager.js.map +1 -1
- package/dist/worker/getOrCreateWorkerPoolSingleton.d.ts.map +1 -1
- package/dist/worker/getOrCreateWorkerPoolSingleton.js +1 -2
- package/dist/worker/getOrCreateWorkerPoolSingleton.js.map +1 -1
- package/dist/worker/index.d.ts +2 -2
- package/dist/worker/index.js +1 -2
- package/dist/worker/types.d.ts +11 -1
- package/dist/worker/types.d.ts.map +1 -1
- package/dist/worker/wasm-B9ZqxnKj.js +8 -0
- package/dist/worker/wasm-B9ZqxnKj.js.map +1 -0
- package/dist/worker/worker-portable.js +3361 -6211
- package/dist/worker/worker-portable.js.map +1 -1
- package/dist/worker/worker.js +321 -314
- package/dist/worker/worker.js.map +1 -1
- package/package.json +29 -32
- package/dist/editor/css.d.ts +0 -6
- package/dist/editor/css.d.ts.map +0 -1
- package/dist/editor/css.js +0 -218
- package/dist/editor/css.js.map +0 -1
- package/dist/editor/quickEdit.d.ts +0 -29
- package/dist/editor/quickEdit.d.ts.map +0 -1
- package/dist/editor/quickEdit.js +0 -81
- package/dist/editor/quickEdit.js.map +0 -1
- package/dist/editor/tokenzier.d.ts.map +0 -1
- package/dist/editor/tokenzier.js +0 -348
- package/dist/editor/tokenzier.js.map +0 -1
- package/dist/react/EditorContext.d.ts +0 -16
- package/dist/react/EditorContext.d.ts.map +0 -1
- package/dist/react/EditorContext.js +0 -26
- package/dist/react/EditorContext.js.map +0 -1
- package/dist/worker/wasm-D4DU5jgR.js +0 -10
- package/dist/worker/wasm-D4DU5jgR.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createNoNewlineElement.d.ts","names":[
|
|
1
|
+
{"version":3,"file":"createNoNewlineElement.d.ts","names":[],"sources":["../../src/utils/createNoNewlineElement.ts"],"mappings":";;;;iBAKgB,sBAAA,CAAuB,IAAA,EAAM,SAAA,GAAY,OAAW"}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { createHastElement, createTextNodeElement } from "./hast_utils.js";
|
|
2
|
-
|
|
3
2
|
//#region src/utils/createNoNewlineElement.ts
|
|
4
3
|
function createNoNewlineElement(type) {
|
|
5
4
|
return createHastElement({
|
|
@@ -15,7 +14,7 @@ function createNoNewlineElement(type) {
|
|
|
15
14
|
}
|
|
16
15
|
});
|
|
17
16
|
}
|
|
18
|
-
|
|
19
17
|
//#endregion
|
|
20
18
|
export { createNoNewlineElement };
|
|
19
|
+
|
|
21
20
|
//# sourceMappingURL=createNoNewlineElement.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createNoNewlineElement.js","names":[],"sources":["../../src/utils/createNoNewlineElement.ts"],"sourcesContent":["import type { Element as HASTElement } from 'hast';\n\nimport type { LineTypes } from '../types';\nimport { createHastElement, createTextNodeElement } from './hast_utils';\n\nexport function createNoNewlineElement(type: LineTypes): HASTElement {\n return createHastElement({\n tagName: 'div',\n children: [\n createHastElement({\n tagName: 'span',\n children: [createTextNodeElement('No newline at end of file')],\n }),\n ],\n properties: {\n 'data-no-newline': '',\n 'data-line-type': type,\n 'data-column-content': '',\n },\n });\n}\n"],"mappings":"
|
|
1
|
+
{"version":3,"file":"createNoNewlineElement.js","names":[],"sources":["../../src/utils/createNoNewlineElement.ts"],"sourcesContent":["import type { Element as HASTElement } from 'hast';\n\nimport type { LineTypes } from '../types';\nimport { createHastElement, createTextNodeElement } from './hast_utils';\n\nexport function createNoNewlineElement(type: LineTypes): HASTElement {\n return createHastElement({\n tagName: 'div',\n children: [\n createHastElement({\n tagName: 'span',\n children: [createTextNodeElement('No newline at end of file')],\n }),\n ],\n properties: {\n 'data-no-newline': '',\n 'data-line-type': type,\n 'data-column-content': '',\n },\n });\n}\n"],"mappings":";;AAKA,SAAgB,uBAAuB,MAA8B;CACnE,OAAO,kBAAkB;EACvB,SAAS;EACT,UAAU,CACR,kBAAkB;GAChB,SAAS;GACT,UAAU,CAAC,sBAAsB,2BAA2B,CAAC;EAC/D,CAAC,CACH;EACA,YAAY;GACV,mBAAmB;GACnB,kBAAkB;GAClB,uBAAuB;EACzB;CACF,CAAC;AACH"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
+
import { Element, Properties } from "../node_modules/.pnpm/@types_hast@3.0.4/node_modules/@types/hast/index.js";
|
|
1
2
|
import { PrePropertiesConfig } from "../types.js";
|
|
2
|
-
import { Element, Properties } from "hast";
|
|
3
3
|
|
|
4
4
|
//#region src/utils/createPreElement.d.ts
|
|
5
5
|
declare function createPreElement(options: PrePropertiesConfig): Element;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createPreElement.d.ts","names":[
|
|
1
|
+
{"version":3,"file":"createPreElement.d.ts","names":[],"sources":["../../src/utils/createPreElement.ts"],"mappings":";;;;iBAKgB,gBAAA,CAAiB,OAAA,EAAS,mBAAA,GAAsB,OAAW;AAAA,iBAO3D,0BAAA;EACd,cAAA;EACA,iBAAA;EACA,kBAAA;EACA,QAAA;EACA,KAAA;EACA,UAAA;EACA,IAAA;EACA;AAAA,GACC,mBAAA,GAAsB,UAAA"}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { createHastElement } from "./hast_utils.js";
|
|
2
|
-
|
|
3
2
|
//#region src/utils/createPreElement.ts
|
|
4
3
|
function createPreElement(options) {
|
|
5
4
|
return createHastElement({
|
|
@@ -17,11 +16,10 @@ function createPreWrapperProperties({ diffIndicators, disableBackground, disable
|
|
|
17
16
|
"data-disable-line-numbers": disableLineNumbers ? "" : void 0,
|
|
18
17
|
"data-background": !disableBackground ? "" : void 0,
|
|
19
18
|
"data-indicators": diffIndicators === "bars" || diffIndicators === "classic" ? diffIndicators : void 0,
|
|
20
|
-
tabIndex: 0,
|
|
21
19
|
style: `--diffs-min-number-column-width-default:${`${totalLines}`.length}ch;`
|
|
22
20
|
};
|
|
23
21
|
}
|
|
24
|
-
|
|
25
22
|
//#endregion
|
|
26
23
|
export { createPreElement, createPreWrapperProperties };
|
|
24
|
+
|
|
27
25
|
//# sourceMappingURL=createPreElement.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createPreElement.js","names":[],"sources":["../../src/utils/createPreElement.ts"],"sourcesContent":["import type { Element as HASTElement, Properties } from 'hast';\n\nimport type { PrePropertiesConfig } from '../types';\nimport { createHastElement } from './hast_utils';\n\nexport function createPreElement(options: PrePropertiesConfig): HASTElement {\n return createHastElement({\n tagName: 'pre',\n properties: createPreWrapperProperties(options),\n });\n}\n\nexport function createPreWrapperProperties({\n diffIndicators,\n disableBackground,\n disableLineNumbers,\n overflow,\n split,\n totalLines,\n type,\n customProperties,\n}: PrePropertiesConfig): Properties {\n const properties: Properties = {\n // NOTE: We always apply custom properties first so the important\n // properties cannot be overridden\n ...customProperties,\n 'data-diff': type === 'diff' ? '' : undefined,\n 'data-file': type === 'file' ? '' : undefined,\n 'data-diff-type':\n type === 'diff' ? (split ? 'split' : 'single') : undefined,\n 'data-overflow': overflow,\n 'data-disable-line-numbers': disableLineNumbers ? '' : undefined,\n 'data-background': !disableBackground ? '' : undefined,\n 'data-indicators':\n diffIndicators === 'bars' || diffIndicators === 'classic'\n ? diffIndicators\n : undefined,\n
|
|
1
|
+
{"version":3,"file":"createPreElement.js","names":[],"sources":["../../src/utils/createPreElement.ts"],"sourcesContent":["import type { Element as HASTElement, Properties } from 'hast';\n\nimport type { PrePropertiesConfig } from '../types';\nimport { createHastElement } from './hast_utils';\n\nexport function createPreElement(options: PrePropertiesConfig): HASTElement {\n return createHastElement({\n tagName: 'pre',\n properties: createPreWrapperProperties(options),\n });\n}\n\nexport function createPreWrapperProperties({\n diffIndicators,\n disableBackground,\n disableLineNumbers,\n overflow,\n split,\n totalLines,\n type,\n customProperties,\n}: PrePropertiesConfig): Properties {\n const properties: Properties = {\n // NOTE: We always apply custom properties first so the important\n // properties cannot be overridden\n ...customProperties,\n 'data-diff': type === 'diff' ? '' : undefined,\n 'data-file': type === 'file' ? '' : undefined,\n 'data-diff-type':\n type === 'diff' ? (split ? 'split' : 'single') : undefined,\n 'data-overflow': overflow,\n 'data-disable-line-numbers': disableLineNumbers ? '' : undefined,\n 'data-background': !disableBackground ? '' : undefined,\n 'data-indicators':\n diffIndicators === 'bars' || diffIndicators === 'classic'\n ? diffIndicators\n : undefined,\n // The pre is intentionally not focusable. It is not the scroll container\n // (`[data-code]` inside it is) and has no keyboard behavior of its own, so\n // a tabindex would only add a tab stop per diff and steal focus from a host\n // wrapper that wants to own keyboard navigation of the selection.\n style: `--diffs-min-number-column-width-default:${`${totalLines}`.length}ch;`,\n };\n\n return properties;\n}\n"],"mappings":";;AAKA,SAAgB,iBAAiB,SAA2C;CAC1E,OAAO,kBAAkB;EACvB,SAAS;EACT,YAAY,2BAA2B,OAAO;CAChD,CAAC;AACH;AAEA,SAAgB,2BAA2B,EACzC,gBACA,mBACA,oBACA,UACA,OACA,YACA,MACA,oBACkC;CAuBlC,OAAO;EAnBL,GAAG;EACH,aAAa,SAAS,SAAS,KAAK,KAAA;EACpC,aAAa,SAAS,SAAS,KAAK,KAAA;EACpC,kBACE,SAAS,SAAU,QAAQ,UAAU,WAAY,KAAA;EACnD,iBAAiB;EACjB,6BAA6B,qBAAqB,KAAK,KAAA;EACvD,mBAAmB,CAAC,oBAAoB,KAAK,KAAA;EAC7C,mBACE,mBAAmB,UAAU,mBAAmB,YAC5C,iBACA,KAAA;EAKN,OAAO,2CAA2C,GAAG,aAAa,OAAO;CAG3D;AAClB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createRowNodes.d.ts","names":[
|
|
1
|
+
{"version":3,"file":"createRowNodes.d.ts","names":[],"sources":["../../src/utils/createRowNodes.ts"],"mappings":";iBAAgB,cAAA,CAAe,IAAA;EAC7B,GAAA,EAAK,WAAA;EACL,OAAA,EAAS,WAAW;AAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createRowNodes.js","names":[],"sources":["../../src/utils/createRowNodes.ts"],"sourcesContent":["export function createRowNodes(line: number): {\n row: HTMLElement;\n content: HTMLElement;\n} {\n const row = document.createElement('div');\n row.dataset.line = `${line}`;\n\n const lineColumn = document.createElement('div');\n lineColumn.dataset.columnNumber = '';\n lineColumn.textContent = `${line}`;\n\n const content = document.createElement('div');\n content.dataset.columnContent = '';\n\n row.appendChild(lineColumn);\n row.appendChild(content);\n return { row, content };\n}\n"],"mappings":";AAAA,SAAgB,eAAe,MAG7B;CACA,MAAM,MAAM,SAAS,cAAc,
|
|
1
|
+
{"version":3,"file":"createRowNodes.js","names":[],"sources":["../../src/utils/createRowNodes.ts"],"sourcesContent":["export function createRowNodes(line: number): {\n row: HTMLElement;\n content: HTMLElement;\n} {\n const row = document.createElement('div');\n row.dataset.line = `${line}`;\n\n const lineColumn = document.createElement('div');\n lineColumn.dataset.columnNumber = '';\n lineColumn.textContent = `${line}`;\n\n const content = document.createElement('div');\n content.dataset.columnContent = '';\n\n row.appendChild(lineColumn);\n row.appendChild(content);\n return { row, content };\n}\n"],"mappings":";AAAA,SAAgB,eAAe,MAG7B;CACA,MAAM,MAAM,SAAS,cAAc,KAAK;CACxC,IAAI,QAAQ,OAAO,GAAG;CAEtB,MAAM,aAAa,SAAS,cAAc,KAAK;CAC/C,WAAW,QAAQ,eAAe;CAClC,WAAW,cAAc,GAAG;CAE5B,MAAM,UAAU,SAAS,cAAc,KAAK;CAC5C,QAAQ,QAAQ,gBAAgB;CAEhC,IAAI,YAAY,UAAU;CAC1B,IAAI,YAAY,OAAO;CACvB,OAAO;EAAE;EAAK;CAAQ;AACxB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createSeparator.d.ts","names":[
|
|
1
|
+
{"version":3,"file":"createSeparator.d.ts","names":[],"sources":["../../src/utils/createSeparator.ts"],"mappings":";;;;UASU,oBAAA;EACR,IAAA,EAAM,cAAc;EACpB,OAAA;EACA,WAAA;EACA,OAAA;EACA,QAAA;EACA,WAAA;EACA,UAAA;AAAA;AAAA,iBAsBc,eAAA;EACd,IAAA;EACA,OAAA;EACA,WAAA;EACA,OAAA;EACA,QAAA;EACA,WAAA;EACA;AAAA,GACC,oBAAA,GAAuB,OAAA"}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { createHastElement, createIconElement, createTextNodeElement } from "./hast_utils.js";
|
|
2
|
-
|
|
3
2
|
//#region src/utils/createSeparator.ts
|
|
4
3
|
function createExpandButton(type) {
|
|
5
4
|
return createHastElement({
|
|
@@ -82,7 +81,7 @@ function createSeparator({ type, content, expandIndex, chunked = false, slotName
|
|
|
82
81
|
}
|
|
83
82
|
});
|
|
84
83
|
}
|
|
85
|
-
|
|
86
84
|
//#endregion
|
|
87
85
|
export { createSeparator };
|
|
86
|
+
|
|
88
87
|
//# sourceMappingURL=createSeparator.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createSeparator.js","names":[
|
|
1
|
+
{"version":3,"file":"createSeparator.js","names":[],"sources":["../../src/utils/createSeparator.ts"],"sourcesContent":["import type { ElementContent, Element as HASTElement } from 'hast';\n\nimport type { ExpansionDirections, HunkSeparators } from '../types';\nimport {\n createHastElement,\n createIconElement,\n createTextNodeElement,\n} from './hast_utils';\n\ninterface CreateSeparatorProps {\n type: HunkSeparators;\n content?: string;\n expandIndex?: number;\n chunked?: boolean;\n slotName?: string;\n isFirstHunk: boolean;\n isLastHunk: boolean;\n}\n\nfunction createExpandButton(type: ExpansionDirections) {\n return createHastElement({\n tagName: 'div',\n children: [\n createIconElement({\n name: type === 'both' ? 'diffs-icon-expand-all' : 'diffs-icon-expand',\n properties: { 'data-icon': '' },\n }),\n ],\n properties: {\n role: 'button',\n 'data-expand-button': '',\n 'data-expand-both': type === 'both' ? '' : undefined,\n 'data-expand-up': type === 'up' ? '' : undefined,\n 'data-expand-down': type === 'down' ? '' : undefined,\n },\n });\n}\n\nexport function createSeparator({\n type,\n content,\n expandIndex,\n chunked = false,\n slotName,\n isFirstHunk,\n isLastHunk,\n}: CreateSeparatorProps): HASTElement {\n let buttonCount = 0;\n const children = [];\n if (type === 'metadata' && content != null) {\n children.push(\n createHastElement({\n tagName: 'div',\n children: [createTextNodeElement(content)],\n properties: { 'data-separator-wrapper': '' },\n })\n );\n }\n if ((type === 'line-info' || type === 'line-info-basic') && content != null) {\n const contentChildren: ElementContent[] = [];\n if (expandIndex != null) {\n if (!chunked) {\n contentChildren.push(\n createExpandButton(\n !isFirstHunk && !isLastHunk ? 'both' : isFirstHunk ? 'down' : 'up'\n )\n );\n buttonCount++;\n } else {\n if (!isFirstHunk) {\n contentChildren.push(createExpandButton('up'));\n buttonCount++;\n }\n if (!isLastHunk) {\n contentChildren.push(createExpandButton('down'));\n buttonCount++;\n }\n }\n }\n contentChildren.push(\n createHastElement({\n tagName: 'div',\n children: [\n createHastElement({\n tagName: 'span',\n children: [createTextNodeElement(content)],\n properties: { 'data-unmodified-lines': '' },\n }),\n ],\n properties: { 'data-separator-content': '' },\n })\n );\n if (chunked && expandIndex != null) {\n contentChildren.push(\n createHastElement({\n tagName: 'div',\n children: [createTextNodeElement('Expand all')],\n properties: {\n role: 'button',\n 'data-expand-button': '',\n 'data-expand-all-button': '',\n },\n })\n );\n }\n children.push(\n createHastElement({\n tagName: 'div',\n children: contentChildren,\n properties: {\n 'data-separator-wrapper': '',\n 'data-separator-multi-button': buttonCount > 1 ? '' : undefined,\n },\n })\n );\n }\n if (type === 'custom' && slotName != null) {\n children.push(\n createHastElement({\n tagName: 'slot',\n properties: { name: slotName },\n })\n );\n }\n return createHastElement({\n tagName: 'div',\n children,\n properties: {\n 'data-separator': children.length === 0 ? 'simple' : type,\n 'data-expand-index': expandIndex,\n 'data-separator-first': isFirstHunk ? '' : undefined,\n 'data-separator-last': isLastHunk ? '' : undefined,\n },\n });\n}\n"],"mappings":";;AAmBA,SAAS,mBAAmB,MAA2B;CACrD,OAAO,kBAAkB;EACvB,SAAS;EACT,UAAU,CACR,kBAAkB;GAChB,MAAM,SAAS,SAAS,0BAA0B;GAClD,YAAY,EAAE,aAAa,GAAG;EAChC,CAAC,CACH;EACA,YAAY;GACV,MAAM;GACN,sBAAsB;GACtB,oBAAoB,SAAS,SAAS,KAAK,KAAA;GAC3C,kBAAkB,SAAS,OAAO,KAAK,KAAA;GACvC,oBAAoB,SAAS,SAAS,KAAK,KAAA;EAC7C;CACF,CAAC;AACH;AAEA,SAAgB,gBAAgB,EAC9B,MACA,SACA,aACA,UAAU,OACV,UACA,aACA,cACoC;CACpC,IAAI,cAAc;CAClB,MAAM,WAAW,CAAC;CAClB,IAAI,SAAS,cAAc,WAAW,MACpC,SAAS,KACP,kBAAkB;EAChB,SAAS;EACT,UAAU,CAAC,sBAAsB,OAAO,CAAC;EACzC,YAAY,EAAE,0BAA0B,GAAG;CAC7C,CAAC,CACH;CAEF,KAAK,SAAS,eAAe,SAAS,sBAAsB,WAAW,MAAM;EAC3E,MAAM,kBAAoC,CAAC;EAC3C,IAAI,eAAe,MACjB,IAAI,CAAC,SAAS;GACZ,gBAAgB,KACd,mBACE,CAAC,eAAe,CAAC,aAAa,SAAS,cAAc,SAAS,IAChE,CACF;GACA;EACF,OAAO;GACL,IAAI,CAAC,aAAa;IAChB,gBAAgB,KAAK,mBAAmB,IAAI,CAAC;IAC7C;GACF;GACA,IAAI,CAAC,YAAY;IACf,gBAAgB,KAAK,mBAAmB,MAAM,CAAC;IAC/C;GACF;EACF;EAEF,gBAAgB,KACd,kBAAkB;GAChB,SAAS;GACT,UAAU,CACR,kBAAkB;IAChB,SAAS;IACT,UAAU,CAAC,sBAAsB,OAAO,CAAC;IACzC,YAAY,EAAE,yBAAyB,GAAG;GAC5C,CAAC,CACH;GACA,YAAY,EAAE,0BAA0B,GAAG;EAC7C,CAAC,CACH;EACA,IAAI,WAAW,eAAe,MAC5B,gBAAgB,KACd,kBAAkB;GAChB,SAAS;GACT,UAAU,CAAC,sBAAsB,YAAY,CAAC;GAC9C,YAAY;IACV,MAAM;IACN,sBAAsB;IACtB,0BAA0B;GAC5B;EACF,CAAC,CACH;EAEF,SAAS,KACP,kBAAkB;GAChB,SAAS;GACT,UAAU;GACV,YAAY;IACV,0BAA0B;IAC1B,+BAA+B,cAAc,IAAI,KAAK,KAAA;GACxD;EACF,CAAC,CACH;CACF;CACA,IAAI,SAAS,YAAY,YAAY,MACnC,SAAS,KACP,kBAAkB;EAChB,SAAS;EACT,YAAY,EAAE,MAAM,SAAS;CAC/B,CAAC,CACH;CAEF,OAAO,kBAAkB;EACvB,SAAS;EACT;EACA,YAAY;GACV,kBAAkB,SAAS,WAAW,IAAI,WAAW;GACrD,qBAAqB;GACrB,wBAAwB,cAAc,KAAK,KAAA;GAC3C,uBAAuB,aAAa,KAAK,KAAA;EAC3C;CACF,CAAC;AACH"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createSpanNodeFromToken.d.ts","names":[
|
|
1
|
+
{"version":3,"file":"createSpanNodeFromToken.d.ts","names":[],"sources":["../../src/utils/createSpanNodeFromToken.ts"],"mappings":";;;iBAMgB,mBAAA,CAAoB,KAAA,EAAO,WAAA,GAAc,eAAe"}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { getTokenStyleObject, stringifyTokenStyle } from "shiki";
|
|
2
|
-
|
|
3
2
|
//#region src/utils/createSpanNodeFromToken.ts
|
|
4
3
|
function createSpanFromToken(token) {
|
|
5
4
|
const element = document.createElement("span");
|
|
@@ -7,7 +6,7 @@ function createSpanFromToken(token) {
|
|
|
7
6
|
element.textContent = token.content;
|
|
8
7
|
return element;
|
|
9
8
|
}
|
|
10
|
-
|
|
11
9
|
//#endregion
|
|
12
10
|
export { createSpanFromToken };
|
|
11
|
+
|
|
13
12
|
//# sourceMappingURL=createSpanNodeFromToken.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createSpanNodeFromToken.js","names":[],"sources":["../../src/utils/createSpanNodeFromToken.ts"],"sourcesContent":["import {\n getTokenStyleObject,\n stringifyTokenStyle,\n type ThemedToken,\n} from 'shiki';\n\nexport function createSpanFromToken(token: ThemedToken): HTMLSpanElement {\n const element = document.createElement('span');\n const style = token.htmlStyle ?? getTokenStyleObject(token);\n element.style = stringifyTokenStyle(style);\n element.textContent = token.content;\n return element;\n}\n"],"mappings":"
|
|
1
|
+
{"version":3,"file":"createSpanNodeFromToken.js","names":[],"sources":["../../src/utils/createSpanNodeFromToken.ts"],"sourcesContent":["import {\n getTokenStyleObject,\n stringifyTokenStyle,\n type ThemedToken,\n} from 'shiki';\n\nexport function createSpanFromToken(token: ThemedToken): HTMLSpanElement {\n const element = document.createElement('span');\n const style = token.htmlStyle ?? getTokenStyleObject(token);\n element.style = stringifyTokenStyle(style);\n element.textContent = token.content;\n return element;\n}\n"],"mappings":";;AAMA,SAAgB,oBAAoB,OAAqC;CACvE,MAAM,UAAU,SAAS,cAAc,MAAM;CAE7C,QAAQ,QAAQ,oBADF,MAAM,aAAa,oBAAoB,KAAK,CACjB;CACzC,QAAQ,cAAc,MAAM;CAC5B,OAAO;AACT"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createStyleElement.d.ts","names":[
|
|
1
|
+
{"version":3,"file":"createStyleElement.d.ts","names":[],"sources":["../../src/utils/createStyleElement.ts"],"mappings":";;;iBAUgB,kBAAA,CACd,OAAA,UACA,SAAA,aACC,OAAW;AAAA,iBAeE,uBAAA,CAAwB,OAAA,WAAkB,OAAW"}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { CORE_CSS_ATTRIBUTE, THEME_CSS_ATTRIBUTE, UNSAFE_CSS_ATTRIBUTE } from "../constants.js";
|
|
2
2
|
import { createHastElement, createTextNodeElement } from "./hast_utils.js";
|
|
3
3
|
import { wrapCoreCSS, wrapUnsafeCSS } from "./cssWrappers.js";
|
|
4
|
-
|
|
5
4
|
//#region src/utils/createStyleElement.ts
|
|
6
5
|
function createStyleElement(content, isCoreCSS = false) {
|
|
7
6
|
return createHastElement({
|
|
@@ -20,7 +19,7 @@ function createThemeStyleElement(content) {
|
|
|
20
19
|
properties: { [THEME_CSS_ATTRIBUTE]: "" }
|
|
21
20
|
});
|
|
22
21
|
}
|
|
23
|
-
|
|
24
22
|
//#endregion
|
|
25
23
|
export { createStyleElement, createThemeStyleElement };
|
|
24
|
+
|
|
26
25
|
//# sourceMappingURL=createStyleElement.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createStyleElement.js","names":[],"sources":["../../src/utils/createStyleElement.ts"],"sourcesContent":["import type { Element as HASTElement } from 'hast';\n\nimport {\n CORE_CSS_ATTRIBUTE,\n THEME_CSS_ATTRIBUTE,\n UNSAFE_CSS_ATTRIBUTE,\n} from '../constants';\nimport { wrapCoreCSS, wrapUnsafeCSS } from './cssWrappers';\nimport { createHastElement, createTextNodeElement } from './hast_utils';\n\nexport function createStyleElement(\n content: string,\n isCoreCSS: boolean = false\n): HASTElement {\n return createHastElement({\n tagName: 'style',\n children: [\n createTextNodeElement(\n isCoreCSS ? wrapCoreCSS(content) : wrapUnsafeCSS(content)\n ),\n ],\n properties: {\n [CORE_CSS_ATTRIBUTE]: isCoreCSS ? '' : undefined,\n [UNSAFE_CSS_ATTRIBUTE]: !isCoreCSS ? '' : undefined,\n },\n });\n}\n\nexport function createThemeStyleElement(content: string): HASTElement {\n return createHastElement({\n tagName: 'style',\n children: [createTextNodeElement(content)],\n properties: {\n [THEME_CSS_ATTRIBUTE]: '',\n },\n });\n}\n"],"mappings":"
|
|
1
|
+
{"version":3,"file":"createStyleElement.js","names":[],"sources":["../../src/utils/createStyleElement.ts"],"sourcesContent":["import type { Element as HASTElement } from 'hast';\n\nimport {\n CORE_CSS_ATTRIBUTE,\n THEME_CSS_ATTRIBUTE,\n UNSAFE_CSS_ATTRIBUTE,\n} from '../constants';\nimport { wrapCoreCSS, wrapUnsafeCSS } from './cssWrappers';\nimport { createHastElement, createTextNodeElement } from './hast_utils';\n\nexport function createStyleElement(\n content: string,\n isCoreCSS: boolean = false\n): HASTElement {\n return createHastElement({\n tagName: 'style',\n children: [\n createTextNodeElement(\n isCoreCSS ? wrapCoreCSS(content) : wrapUnsafeCSS(content)\n ),\n ],\n properties: {\n [CORE_CSS_ATTRIBUTE]: isCoreCSS ? '' : undefined,\n [UNSAFE_CSS_ATTRIBUTE]: !isCoreCSS ? '' : undefined,\n },\n });\n}\n\nexport function createThemeStyleElement(content: string): HASTElement {\n return createHastElement({\n tagName: 'style',\n children: [createTextNodeElement(content)],\n properties: {\n [THEME_CSS_ATTRIBUTE]: '',\n },\n });\n}\n"],"mappings":";;;;AAUA,SAAgB,mBACd,SACA,YAAqB,OACR;CACb,OAAO,kBAAkB;EACvB,SAAS;EACT,UAAU,CACR,sBACE,YAAY,YAAY,OAAO,IAAI,cAAc,OAAO,CAC1D,CACF;EACA,YAAY;IACT,qBAAqB,YAAY,KAAK,KAAA;IACtC,uBAAuB,CAAC,YAAY,KAAK,KAAA;EAC5C;CACF,CAAC;AACH;AAEA,SAAgB,wBAAwB,SAA8B;CACpE,OAAO,kBAAkB;EACvB,SAAS;EACT,UAAU,CAAC,sBAAsB,OAAO,CAAC;EACzC,YAAY,GACT,sBAAsB,GACzB;CACF,CAAC;AACH"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createTransformerWithState.d.ts","names":[
|
|
1
|
+
{"version":3,"file":"createTransformerWithState.d.ts","names":[],"sources":["../../src/utils/createTransformerWithState.ts"],"mappings":";;;;UAYU,gCAAA;EACR,KAAA,EAAO,iBAAA;EACP,YAAA,EAAc,gBAAA;EACd,OAAA,EAAS,4BAAA;AAAA;AAAA,iBAOK,0BAAA,CACd,mBAAA,YACA,aAAA,aACC,gCAAgC"}
|
|
@@ -2,7 +2,6 @@ import { findCodeElement } from "./hast_utils.js";
|
|
|
2
2
|
import { processLine } from "./processLine.js";
|
|
3
3
|
import { wrapTokenFragments } from "./wrapTokenFragments.js";
|
|
4
4
|
import { transformerStyleToClass } from "@shikijs/transformers";
|
|
5
|
-
|
|
6
5
|
//#region src/utils/createTransformerWithState.ts
|
|
7
6
|
function createTransformerWithState(useTokenTransformer = false, useCSSClasses = false) {
|
|
8
7
|
const state = { lineInfo: [] };
|
|
@@ -84,7 +83,7 @@ const tokenStyleNormalizer = {
|
|
|
84
83
|
}
|
|
85
84
|
}
|
|
86
85
|
};
|
|
87
|
-
|
|
88
86
|
//#endregion
|
|
89
87
|
export { createTransformerWithState };
|
|
88
|
+
|
|
90
89
|
//# sourceMappingURL=createTransformerWithState.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createTransformerWithState.js","names":["
|
|
1
|
+
{"version":3,"file":"createTransformerWithState.js","names":["tokenWithOriginalRange"],"sources":["../../src/utils/createTransformerWithState.ts"],"sourcesContent":["import {\n type ShikiTransformerStyleToClass,\n transformerStyleToClass,\n} from '@shikijs/transformers';\nimport type { ElementContent } from 'hast';\nimport type { ThemedToken } from 'shiki';\n\nimport type { SharedRenderState, ShikiTransformer } from '../types';\nimport { findCodeElement } from './hast_utils';\nimport { processLine } from './processLine';\nimport { wrapTokenFragments } from './wrapTokenFragments';\n\ninterface CreateTransformerWithStateReturn {\n state: SharedRenderState;\n transformers: ShikiTransformer[];\n toClass: ShikiTransformerStyleToClass;\n}\n\ntype TokenWithLineChar = ThemedToken & {\n __lineChar?: number;\n};\n\nexport function createTransformerWithState(\n useTokenTransformer = false,\n useCSSClasses = false\n): CreateTransformerWithStateReturn {\n const state: SharedRenderState = { lineInfo: [] };\n const transformers: ShikiTransformer[] = [\n {\n line(node) {\n // Remove the default class\n delete node.properties.class;\n return node;\n },\n pre(pre) {\n const code = findCodeElement(pre);\n const children: ElementContent[] = [];\n if (code != null) {\n let index = 1;\n for (const node of code.children) {\n if (node.type !== 'element') continue;\n if (useTokenTransformer) {\n wrapTokenFragments(node);\n }\n children.push(processLine(node, index, state));\n index++;\n }\n code.children = children;\n }\n return pre;\n },\n ...(useTokenTransformer\n ? {\n tokens(lines) {\n for (const line of lines) {\n let col = 0;\n for (const token of line) {\n const tokenWithOriginalRange = token as TokenWithLineChar;\n tokenWithOriginalRange.__lineChar ??= col;\n col += token.content.length;\n }\n }\n },\n preprocess(_code, options) {\n options.mergeWhitespaces = 'never';\n },\n span(hast, _line, _char, _lineElement, token) {\n if (token?.offset != null && token.content != null) {\n const tokenWithOriginalRange = token as TokenWithLineChar;\n const tokenChar = tokenWithOriginalRange.__lineChar;\n if (tokenChar != null) {\n hast.properties['data-char'] = tokenChar;\n }\n return hast;\n }\n return hast;\n },\n }\n : null),\n },\n ];\n if (useCSSClasses) {\n transformers.push(tokenStyleNormalizer, toClass);\n }\n if (useTokenTransformer) {\n // shiki renders empty lines as \" \" that breaks the editor selection.\n // We replace them with <br> tags.\n transformers.push({\n line: (node) => {\n if (node.type === 'element' && node.children.length === 0) {\n node.children.push({\n type: 'element',\n tagName: 'br',\n properties: {},\n children: [],\n });\n }\n return node;\n },\n });\n }\n return { state, transformers, toClass };\n}\n\nconst toClass = transformerStyleToClass({ classPrefix: 'hl-' });\n\n// Create a transformer that converts token color/fontStyle to htmlStyle\n// This needs to run BEFORE transformerStyleToClass\nconst tokenStyleNormalizer: ShikiTransformer = {\n name: 'token-style-normalizer',\n tokens(lines) {\n for (const line of lines) {\n for (const token of line) {\n // Skip if htmlStyle is already set\n if (token.htmlStyle != null) continue;\n\n const style: Record<string, string> = {};\n\n if (token.color != null) {\n style.color = token.color;\n }\n if (token.bgColor != null) {\n style['background-color'] = token.bgColor;\n }\n if (token.fontStyle != null && token.fontStyle !== 0) {\n // FontStyle is a bitmask: 1 = italic, 2 = bold, 4 = underline\n if ((token.fontStyle & 1) !== 0) {\n style['font-style'] = 'italic';\n }\n if ((token.fontStyle & 2) !== 0) {\n style['font-weight'] = 'bold';\n }\n if ((token.fontStyle & 4) !== 0) {\n style['text-decoration'] = 'underline';\n }\n }\n\n // Only set htmlStyle if we have any styles\n if (Object.keys(style).length > 0) {\n token.htmlStyle = style;\n }\n }\n }\n },\n};\n"],"mappings":";;;;;AAsBA,SAAgB,2BACd,sBAAsB,OACtB,gBAAgB,OACkB;CAClC,MAAM,QAA2B,EAAE,UAAU,CAAC,EAAE;CAChD,MAAM,eAAmC,CACvC;EACE,KAAK,MAAM;GAET,OAAO,KAAK,WAAW;GACvB,OAAO;EACT;EACA,IAAI,KAAK;GACP,MAAM,OAAO,gBAAgB,GAAG;GAChC,MAAM,WAA6B,CAAC;GACpC,IAAI,QAAQ,MAAM;IAChB,IAAI,QAAQ;IACZ,KAAK,MAAM,QAAQ,KAAK,UAAU;KAChC,IAAI,KAAK,SAAS,WAAW;KAC7B,IAAI,qBACF,mBAAmB,IAAI;KAEzB,SAAS,KAAK,YAAY,MAAM,OAAO,KAAK,CAAC;KAC7C;IACF;IACA,KAAK,WAAW;GAClB;GACA,OAAO;EACT;EACA,GAAI,sBACA;GACE,OAAO,OAAO;IACZ,KAAK,MAAM,QAAQ,OAAO;KACxB,IAAI,MAAM;KACV,KAAK,MAAM,SAAS,MAAM;MACxB,MAAM,yBAAyB;MAC/B,uBAAuB,eAAe;MACtC,OAAO,MAAM,QAAQ;KACvB;IACF;GACF;GACA,WAAW,OAAO,SAAS;IACzB,QAAQ,mBAAmB;GAC7B;GACA,KAAK,MAAM,OAAO,OAAO,cAAc,OAAO;IAC5C,IAAI,OAAO,UAAU,QAAQ,MAAM,WAAW,MAAM;KAElD,MAAM,YAAYA,MAAuB;KACzC,IAAI,aAAa,MACf,KAAK,WAAW,eAAe;KAEjC,OAAO;IACT;IACA,OAAO;GACT;EACF,IACA;CACN,CACF;CACA,IAAI,eACF,aAAa,KAAK,sBAAsB,OAAO;CAEjD,IAAI,qBAGF,aAAa,KAAK,EAChB,OAAO,SAAS;EACd,IAAI,KAAK,SAAS,aAAa,KAAK,SAAS,WAAW,GACtD,KAAK,SAAS,KAAK;GACjB,MAAM;GACN,SAAS;GACT,YAAY,CAAC;GACb,UAAU,CAAC;EACb,CAAC;EAEH,OAAO;CACT,EACF,CAAC;CAEH,OAAO;EAAE;EAAO;EAAc;CAAQ;AACxC;AAEA,MAAM,UAAU,wBAAwB,EAAE,aAAa,MAAM,CAAC;AAI9D,MAAM,uBAAyC;CAC7C,MAAM;CACN,OAAO,OAAO;EACZ,KAAK,MAAM,QAAQ,OACjB,KAAK,MAAM,SAAS,MAAM;GAExB,IAAI,MAAM,aAAa,MAAM;GAE7B,MAAM,QAAgC,CAAC;GAEvC,IAAI,MAAM,SAAS,MACjB,MAAM,QAAQ,MAAM;GAEtB,IAAI,MAAM,WAAW,MACnB,MAAM,sBAAsB,MAAM;GAEpC,IAAI,MAAM,aAAa,QAAQ,MAAM,cAAc,GAAG;IAEpD,KAAK,MAAM,YAAY,OAAO,GAC5B,MAAM,gBAAgB;IAExB,KAAK,MAAM,YAAY,OAAO,GAC5B,MAAM,iBAAiB;IAEzB,KAAK,MAAM,YAAY,OAAO,GAC5B,MAAM,qBAAqB;GAE/B;GAGA,IAAI,OAAO,KAAK,KAAK,CAAC,CAAC,SAAS,GAC9B,MAAM,YAAY;EAEtB;CAEJ;AACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createUnsafeCSSStyleNode.d.ts","names":[
|
|
1
|
+
{"version":3,"file":"createUnsafeCSSStyleNode.d.ts","names":[],"sources":["../../src/utils/createUnsafeCSSStyleNode.ts"],"mappings":";iBAEgB,wBAAA,IAA4B,gBAAgB"}
|
|
@@ -1,12 +1,11 @@
|
|
|
1
1
|
import { UNSAFE_CSS_ATTRIBUTE } from "../constants.js";
|
|
2
|
-
|
|
3
2
|
//#region src/utils/createUnsafeCSSStyleNode.ts
|
|
4
3
|
function createUnsafeCSSStyleNode() {
|
|
5
4
|
const node = document.createElement("style");
|
|
6
5
|
node.setAttribute(UNSAFE_CSS_ATTRIBUTE, "");
|
|
7
6
|
return node;
|
|
8
7
|
}
|
|
9
|
-
|
|
10
8
|
//#endregion
|
|
11
9
|
export { createUnsafeCSSStyleNode };
|
|
10
|
+
|
|
12
11
|
//# sourceMappingURL=createUnsafeCSSStyleNode.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createUnsafeCSSStyleNode.js","names":[],"sources":["../../src/utils/createUnsafeCSSStyleNode.ts"],"sourcesContent":["import { UNSAFE_CSS_ATTRIBUTE } from '../constants';\n\nexport function createUnsafeCSSStyleNode(): HTMLStyleElement {\n const node = document.createElement('style');\n node.setAttribute(UNSAFE_CSS_ATTRIBUTE, '');\n return node;\n}\n"],"mappings":"
|
|
1
|
+
{"version":3,"file":"createUnsafeCSSStyleNode.js","names":[],"sources":["../../src/utils/createUnsafeCSSStyleNode.ts"],"sourcesContent":["import { UNSAFE_CSS_ATTRIBUTE } from '../constants';\n\nexport function createUnsafeCSSStyleNode(): HTMLStyleElement {\n const node = document.createElement('style');\n node.setAttribute(UNSAFE_CSS_ATTRIBUTE, '');\n return node;\n}\n"],"mappings":";;AAEA,SAAgB,2BAA6C;CAC3D,MAAM,OAAO,SAAS,cAAc,OAAO;CAC3C,KAAK,aAAa,sBAAsB,EAAE;CAC1C,OAAO;AACT"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createWindowFromScrollPosition.d.ts","names":[
|
|
1
|
+
{"version":3,"file":"createWindowFromScrollPosition.d.ts","names":[],"sources":["../../src/utils/createWindowFromScrollPosition.ts"],"mappings":";;;UAEU,6BAAA;EACR,SAAA;EACA,MAAA;EACA,YAAA;EACA,YAAA;EACA,sBAAA;EACA,cAAA;AAAA;AAAA,iBAGc,8BAAA;EACd,SAAA;EACA,YAAA;EACA,MAAA;EACA,YAAA;EACA,sBAAA;EACA;AAAA,GACC,6BAAA,GAAgC,kBAAA"}
|
|
@@ -4,11 +4,11 @@ function createWindowFromScrollPosition({ scrollTop, scrollHeight, height, fitPe
|
|
|
4
4
|
const effectiveHeight = fitPerfectly ? height + fitPerfectlyOverscroll * 2 : windowHeight;
|
|
5
5
|
scrollHeight = Math.max(scrollHeight, effectiveHeight);
|
|
6
6
|
if (windowHeight >= scrollHeight || fitPerfectly) {
|
|
7
|
-
const top
|
|
8
|
-
const bottom
|
|
7
|
+
const top = Math.max(scrollTop - fitPerfectlyOverscroll, 0);
|
|
8
|
+
const bottom = Math.min(scrollTop + effectiveHeight, scrollHeight);
|
|
9
9
|
return {
|
|
10
|
-
top
|
|
11
|
-
bottom: Math.max(bottom
|
|
10
|
+
top,
|
|
11
|
+
bottom: Math.max(bottom, top)
|
|
12
12
|
};
|
|
13
13
|
}
|
|
14
14
|
let top = scrollTop + height / 2 - windowHeight / 2;
|
|
@@ -21,7 +21,7 @@ function createWindowFromScrollPosition({ scrollTop, scrollHeight, height, fitPe
|
|
|
21
21
|
bottom: Math.ceil(Math.max(Math.min(bottom, scrollHeight), top))
|
|
22
22
|
};
|
|
23
23
|
}
|
|
24
|
-
|
|
25
24
|
//#endregion
|
|
26
25
|
export { createWindowFromScrollPosition };
|
|
26
|
+
|
|
27
27
|
//# sourceMappingURL=createWindowFromScrollPosition.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createWindowFromScrollPosition.js","names":[
|
|
1
|
+
{"version":3,"file":"createWindowFromScrollPosition.js","names":[],"sources":["../../src/utils/createWindowFromScrollPosition.ts"],"sourcesContent":["import type { VirtualWindowSpecs } from '../types';\n\ninterface WindowFromScrollPositionProps {\n scrollTop: number;\n height: number;\n scrollHeight: number;\n fitPerfectly?: boolean;\n fitPerfectlyOverscroll?: number;\n overscrollSize: number;\n}\n\nexport function createWindowFromScrollPosition({\n scrollTop,\n scrollHeight,\n height,\n fitPerfectly = false,\n fitPerfectlyOverscroll = 0,\n overscrollSize,\n}: WindowFromScrollPositionProps): VirtualWindowSpecs {\n const windowHeight = height + overscrollSize * 2;\n const effectiveHeight = fitPerfectly\n ? height + fitPerfectlyOverscroll * 2\n : windowHeight;\n scrollHeight = Math.max(scrollHeight, effectiveHeight);\n\n if (windowHeight >= scrollHeight || fitPerfectly) {\n const top = Math.max(scrollTop - fitPerfectlyOverscroll, 0);\n const bottom = Math.min(scrollTop + effectiveHeight, scrollHeight);\n return {\n top,\n bottom: Math.max(bottom, top),\n };\n }\n\n const scrollCenter = scrollTop + height / 2;\n let top = scrollCenter - windowHeight / 2;\n let bottom = top + windowHeight;\n if (top < 0) {\n top = 0;\n }\n if (bottom > scrollHeight) {\n bottom = scrollHeight;\n }\n top = Math.floor(Math.max(top, 0));\n return {\n top,\n bottom: Math.ceil(Math.max(Math.min(bottom, scrollHeight), top)),\n };\n}\n"],"mappings":";AAWA,SAAgB,+BAA+B,EAC7C,WACA,cACA,QACA,eAAe,OACf,yBAAyB,GACzB,kBACoD;CACpD,MAAM,eAAe,SAAS,iBAAiB;CAC/C,MAAM,kBAAkB,eACpB,SAAS,yBAAyB,IAClC;CACJ,eAAe,KAAK,IAAI,cAAc,eAAe;CAErD,IAAI,gBAAgB,gBAAgB,cAAc;EAChD,MAAM,MAAM,KAAK,IAAI,YAAY,wBAAwB,CAAC;EAC1D,MAAM,SAAS,KAAK,IAAI,YAAY,iBAAiB,YAAY;EACjE,OAAO;GACL;GACA,QAAQ,KAAK,IAAI,QAAQ,GAAG;EAC9B;CACF;CAGA,IAAI,MADiB,YAAY,SAAS,IACjB,eAAe;CACxC,IAAI,SAAS,MAAM;CACnB,IAAI,MAAM,GACR,MAAM;CAER,IAAI,SAAS,cACX,SAAS;CAEX,MAAM,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,CAAC;CACjC,OAAO;EACL;EACA,QAAQ,KAAK,KAAK,KAAK,IAAI,KAAK,IAAI,QAAQ,YAAY,GAAG,GAAG,CAAC;CACjE;AACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cssWrappers.d.ts","names":[
|
|
1
|
+
{"version":3,"file":"cssWrappers.d.ts","names":[],"sources":["../../src/utils/cssWrappers.ts"],"mappings":";;;iBAUgB,WAAA,CAAY,OAAe;AAAA,iBAQ3B,aAAA,CAAc,SAAiB;AAAA,iBAO/B,YAAA,CACd,QAAA,UACA,SAAA,GAAW,UAAqB,EAChC,eAAA;AAAA,iBAmBc,wBAAA,CACd,QAAA,UACA,eAAmC"}
|
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
import { DIFFS_SCROLLBAR_GUTTER_MEASURED_PROPERTY } from "../constants.js";
|
|
2
2
|
import style_default from "../style.js";
|
|
3
3
|
import { createMeasuredScrollbarGutterDeclaration } from "./scrollbarGutter.js";
|
|
4
|
-
|
|
5
4
|
//#region src/utils/cssWrappers.ts
|
|
6
5
|
const LAYER_ORDER = `@layer base, theme, rendered, unsafe;`;
|
|
7
|
-
const SCROLLBAR_GUTTER_DECLARATION_PATTERN =
|
|
6
|
+
const SCROLLBAR_GUTTER_DECLARATION_PATTERN = new RegExp(`${escapeRegExp(DIFFS_SCROLLBAR_GUTTER_MEASURED_PROPERTY)}\\s*:\\s*[^;]+;`);
|
|
8
7
|
function wrapCoreCSS(mainCSS) {
|
|
9
8
|
return `${LAYER_ORDER}
|
|
10
9
|
${style_default}
|
|
@@ -35,7 +34,7 @@ function patchScrollbarGutterSize(themeCSS, scrollbarGutter) {
|
|
|
35
34
|
function escapeRegExp(value) {
|
|
36
35
|
return value.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
|
|
37
36
|
}
|
|
38
|
-
|
|
39
37
|
//#endregion
|
|
40
38
|
export { patchScrollbarGutterSize, wrapCoreCSS, wrapThemeCSS, wrapUnsafeCSS };
|
|
39
|
+
|
|
41
40
|
//# sourceMappingURL=cssWrappers.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cssWrappers.js","names":["rawStyles"],"sources":["../../src/utils/cssWrappers.ts"],"sourcesContent":["import { DIFFS_SCROLLBAR_GUTTER_MEASURED_PROPERTY } from '../constants';\nimport rawStyles from '../style.css';\nimport type { ThemeTypes } from '../types';\nimport { createMeasuredScrollbarGutterDeclaration } from './scrollbarGutter';\n\nconst LAYER_ORDER = `@layer base, theme, rendered, unsafe;`;\nconst SCROLLBAR_GUTTER_DECLARATION_PATTERN = new RegExp(\n `${escapeRegExp(DIFFS_SCROLLBAR_GUTTER_MEASURED_PROPERTY)}\\\\s*:\\\\s*[^;]+;`\n);\n\nexport function wrapCoreCSS(mainCSS: string) {\n return `${LAYER_ORDER}\n${rawStyles}\n@layer theme {\n ${mainCSS}\n}`;\n}\n\nexport function wrapUnsafeCSS(unsafeCSS: string) {\n return `${LAYER_ORDER}\n@layer unsafe {\n ${unsafeCSS}\n}`;\n}\n\nexport function wrapThemeCSS(\n themeCSS: string,\n themeType: ThemeTypes = 'system',\n scrollbarGutter?: number\n) {\n const colorSchemeRule =\n themeType === 'system'\n ? ''\n : `\n color-scheme: ${themeType};`;\n const scrollbarGutterVar =\n createMeasuredScrollbarGutterDeclaration(scrollbarGutter);\n\n return `${LAYER_ORDER}\n@layer rendered {\n :host {${colorSchemeRule}\n ${scrollbarGutterVar}\n ${themeCSS}\n }\n}`;\n}\n\nexport function patchScrollbarGutterSize(\n themeCSS: string,\n scrollbarGutter: number | undefined\n): string {\n const scrollbarGutterRule =\n createMeasuredScrollbarGutterDeclaration(scrollbarGutter);\n return themeCSS.replace(\n SCROLLBAR_GUTTER_DECLARATION_PATTERN,\n scrollbarGutterRule\n );\n}\n\nfunction escapeRegExp(value: string): string {\n return value.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\$&');\n}\n"],"mappings":"
|
|
1
|
+
{"version":3,"file":"cssWrappers.js","names":["rawStyles"],"sources":["../../src/utils/cssWrappers.ts"],"sourcesContent":["import { DIFFS_SCROLLBAR_GUTTER_MEASURED_PROPERTY } from '../constants';\nimport rawStyles from '../style.css?inline';\nimport type { ThemeTypes } from '../types';\nimport { createMeasuredScrollbarGutterDeclaration } from './scrollbarGutter';\n\nconst LAYER_ORDER = `@layer base, theme, rendered, unsafe;`;\nconst SCROLLBAR_GUTTER_DECLARATION_PATTERN = new RegExp(\n `${escapeRegExp(DIFFS_SCROLLBAR_GUTTER_MEASURED_PROPERTY)}\\\\s*:\\\\s*[^;]+;`\n);\n\nexport function wrapCoreCSS(mainCSS: string) {\n return `${LAYER_ORDER}\n${rawStyles}\n@layer theme {\n ${mainCSS}\n}`;\n}\n\nexport function wrapUnsafeCSS(unsafeCSS: string) {\n return `${LAYER_ORDER}\n@layer unsafe {\n ${unsafeCSS}\n}`;\n}\n\nexport function wrapThemeCSS(\n themeCSS: string,\n themeType: ThemeTypes = 'system',\n scrollbarGutter?: number\n) {\n const colorSchemeRule =\n themeType === 'system'\n ? ''\n : `\n color-scheme: ${themeType};`;\n const scrollbarGutterVar =\n createMeasuredScrollbarGutterDeclaration(scrollbarGutter);\n\n return `${LAYER_ORDER}\n@layer rendered {\n :host {${colorSchemeRule}\n ${scrollbarGutterVar}\n ${themeCSS}\n }\n}`;\n}\n\nexport function patchScrollbarGutterSize(\n themeCSS: string,\n scrollbarGutter: number | undefined\n): string {\n const scrollbarGutterRule =\n createMeasuredScrollbarGutterDeclaration(scrollbarGutter);\n return themeCSS.replace(\n SCROLLBAR_GUTTER_DECLARATION_PATTERN,\n scrollbarGutterRule\n );\n}\n\nfunction escapeRegExp(value: string): string {\n return value.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\$&');\n}\n"],"mappings":";;;;AAKA,MAAM,cAAc;AACpB,MAAM,uCAAuC,IAAI,OAC/C,GAAG,aAAa,wCAAwC,EAAE,gBAC5D;AAEA,SAAgB,YAAY,SAAiB;CAC3C,OAAO,GAAG,YAAY;EACtBA,cAAU;;IAER,QAAQ;;AAEZ;AAEA,SAAgB,cAAc,WAAmB;CAC/C,OAAO,GAAG,YAAY;;IAEpB,UAAU;;AAEd;AAEA,SAAgB,aACd,UACA,YAAwB,UACxB,iBACA;CASA,OAAO,GAAG,YAAY;;WAPpB,cAAc,WACV,KACA;kBACU,UAAU,GAMD;IAJvB,yCAAyC,eAKxB,EAAE;IACnB,SAAS;;;AAGb;AAEA,SAAgB,yBACd,UACA,iBACQ;CACR,MAAM,sBACJ,yCAAyC,eAAe;CAC1D,OAAO,SAAS,QACd,sCACA,mBACF;AACF;AAEA,SAAS,aAAa,OAAuB;CAC3C,OAAO,MAAM,QAAQ,uBAAuB,MAAM;AACpD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"detachString.d.ts","names":[
|
|
1
|
+
{"version":3,"file":"detachString.d.ts","names":[],"sources":["../../src/utils/detachString.ts"],"mappings":";iBAQgB,yBAAA;AAAA,iBAQA,YAAA,CAAa,KAAa"}
|
|
@@ -15,7 +15,7 @@ function detachString(value) {
|
|
|
15
15
|
const { written } = stringDetachEncoder.encodeInto(value, stringDetachBuffer);
|
|
16
16
|
return stringDetachDecoder.decode(stringDetachBuffer.subarray(0, written));
|
|
17
17
|
}
|
|
18
|
-
|
|
19
18
|
//#endregion
|
|
20
19
|
export { detachString, releaseStringDetachBuffer };
|
|
20
|
+
|
|
21
21
|
//# sourceMappingURL=detachString.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"detachString.js","names":[],"sources":["../../src/utils/detachString.ts"],"sourcesContent":["const stringDetachEncoder = new TextEncoder();\nconst stringDetachDecoder = new TextDecoder('utf-8', { ignoreBOM: true });\nconst SURROGATE_CODE_UNIT_PATTERN = /[\\uD800-\\uDFFF]/;\nconst STRING_DETACH_INITIAL_BUFFER_SIZE = 1024;\nlet stringDetachBuffer = new Uint8Array(STRING_DETACH_INITIAL_BUFFER_SIZE);\n\n// Drops the reusable scratch buffer after a parsing run so one unusually long\n// line does not pin that peak allocation for the lifetime of the process.\nexport function releaseStringDetachBuffer(): void {\n if (stringDetachBuffer.length !== STRING_DETACH_INITIAL_BUFFER_SIZE) {\n stringDetachBuffer = new Uint8Array(STRING_DETACH_INITIAL_BUFFER_SIZE);\n }\n}\n\n// Forces a fresh backing string so a retained substring does not keep the\n// original raw patch/file text alive.\nexport function detachString(value: string): string {\n if (value.length === 0) {\n return value;\n }\n\n // TextEncoder replaces lone surrogate code units with U+FFFD, but diff input\n // can contain arbitrary text. JSON round-tripping preserves those code units\n // while still forcing V8 to allocate a fresh backing string.\n if (SURROGATE_CODE_UNIT_PATTERN.test(value)) {\n return JSON.parse(JSON.stringify(value)) as string;\n }\n\n // Without surrogates, each UTF-16 code unit encodes to at most 3 UTF-8 bytes.\n // Reusing this scratch buffer avoids allocating a new Uint8Array for every\n // parsed line while keeping retained line strings detached from the raw patch.\n const requiredByteLength = value.length * 3;\n if (stringDetachBuffer.length < requiredByteLength) {\n stringDetachBuffer = new Uint8Array(requiredByteLength);\n }\n\n const { written } = stringDetachEncoder.encodeInto(value, stringDetachBuffer);\n // Decoding only the written bytes materializes a compact string, preserving\n // the low post-GC memory profile that the old TextEncoder/TextDecoder path had.\n return stringDetachDecoder.decode(stringDetachBuffer.subarray(0, written));\n}\n"],"mappings":";AAAA,MAAM,sBAAsB,IAAI,
|
|
1
|
+
{"version":3,"file":"detachString.js","names":[],"sources":["../../src/utils/detachString.ts"],"sourcesContent":["const stringDetachEncoder = new TextEncoder();\nconst stringDetachDecoder = new TextDecoder('utf-8', { ignoreBOM: true });\nconst SURROGATE_CODE_UNIT_PATTERN = /[\\uD800-\\uDFFF]/;\nconst STRING_DETACH_INITIAL_BUFFER_SIZE = 1024;\nlet stringDetachBuffer = new Uint8Array(STRING_DETACH_INITIAL_BUFFER_SIZE);\n\n// Drops the reusable scratch buffer after a parsing run so one unusually long\n// line does not pin that peak allocation for the lifetime of the process.\nexport function releaseStringDetachBuffer(): void {\n if (stringDetachBuffer.length !== STRING_DETACH_INITIAL_BUFFER_SIZE) {\n stringDetachBuffer = new Uint8Array(STRING_DETACH_INITIAL_BUFFER_SIZE);\n }\n}\n\n// Forces a fresh backing string so a retained substring does not keep the\n// original raw patch/file text alive.\nexport function detachString(value: string): string {\n if (value.length === 0) {\n return value;\n }\n\n // TextEncoder replaces lone surrogate code units with U+FFFD, but diff input\n // can contain arbitrary text. JSON round-tripping preserves those code units\n // while still forcing V8 to allocate a fresh backing string.\n if (SURROGATE_CODE_UNIT_PATTERN.test(value)) {\n return JSON.parse(JSON.stringify(value)) as string;\n }\n\n // Without surrogates, each UTF-16 code unit encodes to at most 3 UTF-8 bytes.\n // Reusing this scratch buffer avoids allocating a new Uint8Array for every\n // parsed line while keeping retained line strings detached from the raw patch.\n const requiredByteLength = value.length * 3;\n if (stringDetachBuffer.length < requiredByteLength) {\n stringDetachBuffer = new Uint8Array(requiredByteLength);\n }\n\n const { written } = stringDetachEncoder.encodeInto(value, stringDetachBuffer);\n // Decoding only the written bytes materializes a compact string, preserving\n // the low post-GC memory profile that the old TextEncoder/TextDecoder path had.\n return stringDetachDecoder.decode(stringDetachBuffer.subarray(0, written));\n}\n"],"mappings":";AAAA,MAAM,sBAAsB,IAAI,YAAY;AAC5C,MAAM,sBAAsB,IAAI,YAAY,SAAS,EAAE,WAAW,KAAK,CAAC;AACxE,MAAM,8BAA8B;AACpC,MAAM,oCAAoC;AAC1C,IAAI,qBAAqB,IAAI,WAAW,iCAAiC;AAIzE,SAAgB,4BAAkC;CAChD,IAAI,mBAAmB,WAAW,mCAChC,qBAAqB,IAAI,WAAW,iCAAiC;AAEzE;AAIA,SAAgB,aAAa,OAAuB;CAClD,IAAI,MAAM,WAAW,GACnB,OAAO;CAMT,IAAI,4BAA4B,KAAK,KAAK,GACxC,OAAO,KAAK,MAAM,KAAK,UAAU,KAAK,CAAC;CAMzC,MAAM,qBAAqB,MAAM,SAAS;CAC1C,IAAI,mBAAmB,SAAS,oBAC9B,qBAAqB,IAAI,WAAW,kBAAkB;CAGxD,MAAM,EAAE,YAAY,oBAAoB,WAAW,OAAO,kBAAkB;CAG5E,OAAO,oBAAoB,OAAO,mBAAmB,SAAS,GAAG,OAAO,CAAC;AAC3E"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"diffAcceptRejectHunk.d.ts","names":[
|
|
1
|
+
{"version":3,"file":"diffAcceptRejectHunk.d.ts","names":[],"sources":["../../src/utils/diffAcceptRejectHunk.ts"],"mappings":";;;KAQK,2BAAA,GACD,wBAAA,GACA,0BAA0B;AAAA,iBAEd,oBAAA,CACd,IAAA,EAAM,gBAAA,EACN,SAAA,UACA,OAAA,EAAS,2BAAA,GACR,gBAAA"}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { normalizeDiffResolution } from "./normalizeDiffResolution.js";
|
|
2
2
|
import { resolveRegion } from "./resolveRegion.js";
|
|
3
|
-
|
|
4
3
|
//#region src/utils/diffAcceptRejectHunk.ts
|
|
5
4
|
function diffAcceptRejectHunk(diff, hunkIndex, options) {
|
|
6
5
|
const hunk = diff.hunks[hunkIndex];
|
|
@@ -26,7 +25,7 @@ function diffAcceptRejectHunk(diff, hunkIndex, options) {
|
|
|
26
25
|
})()
|
|
27
26
|
});
|
|
28
27
|
}
|
|
29
|
-
|
|
30
28
|
//#endregion
|
|
31
29
|
export { diffAcceptRejectHunk };
|
|
30
|
+
|
|
32
31
|
//# sourceMappingURL=diffAcceptRejectHunk.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"diffAcceptRejectHunk.js","names":[],"sources":["../../src/utils/diffAcceptRejectHunk.ts"],"sourcesContent":["import type {\n DiffAcceptRejectHunkConfig,\n DiffAcceptRejectHunkType,\n FileDiffMetadata,\n} from '../types';\nimport { normalizeDiffResolution } from './normalizeDiffResolution';\nimport { resolveRegion } from './resolveRegion';\n\ntype DiffAcceptRejectHunkOptions =\n | DiffAcceptRejectHunkType\n | DiffAcceptRejectHunkConfig;\n\nexport function diffAcceptRejectHunk(\n diff: FileDiffMetadata,\n hunkIndex: number,\n options: DiffAcceptRejectHunkOptions\n): FileDiffMetadata {\n const hunk = diff.hunks[hunkIndex];\n if (hunk == null) {\n console.error({ hunkIndex, diff });\n throw new Error('diffAcceptRejectHunk: Invalid hunk index');\n }\n\n return resolveRegion(diff, {\n resolution: normalizeDiffResolution(options),\n hunkIndex,\n ...(() => {\n if (typeof options === 'object') {\n return {\n startContentIndex: options.changeIndex,\n endContentIndex: options.changeIndex,\n };\n }\n return {\n startContentIndex: 0,\n endContentIndex: Math.max(0, (hunk.hunkContent.length ?? 1) - 1),\n };\n })(),\n });\n}\n"],"mappings":"
|
|
1
|
+
{"version":3,"file":"diffAcceptRejectHunk.js","names":[],"sources":["../../src/utils/diffAcceptRejectHunk.ts"],"sourcesContent":["import type {\n DiffAcceptRejectHunkConfig,\n DiffAcceptRejectHunkType,\n FileDiffMetadata,\n} from '../types';\nimport { normalizeDiffResolution } from './normalizeDiffResolution';\nimport { resolveRegion } from './resolveRegion';\n\ntype DiffAcceptRejectHunkOptions =\n | DiffAcceptRejectHunkType\n | DiffAcceptRejectHunkConfig;\n\nexport function diffAcceptRejectHunk(\n diff: FileDiffMetadata,\n hunkIndex: number,\n options: DiffAcceptRejectHunkOptions\n): FileDiffMetadata {\n const hunk = diff.hunks[hunkIndex];\n if (hunk == null) {\n console.error({ hunkIndex, diff });\n throw new Error('diffAcceptRejectHunk: Invalid hunk index');\n }\n\n return resolveRegion(diff, {\n resolution: normalizeDiffResolution(options),\n hunkIndex,\n ...(() => {\n if (typeof options === 'object') {\n return {\n startContentIndex: options.changeIndex,\n endContentIndex: options.changeIndex,\n };\n }\n return {\n startContentIndex: 0,\n endContentIndex: Math.max(0, (hunk.hunkContent.length ?? 1) - 1),\n };\n })(),\n });\n}\n"],"mappings":";;;AAYA,SAAgB,qBACd,MACA,WACA,SACkB;CAClB,MAAM,OAAO,KAAK,MAAM;CACxB,IAAI,QAAQ,MAAM;EAChB,QAAQ,MAAM;GAAE;GAAW;EAAK,CAAC;EACjC,MAAM,IAAI,MAAM,0CAA0C;CAC5D;CAEA,OAAO,cAAc,MAAM;EACzB,YAAY,wBAAwB,OAAO;EAC3C;EACA,UAAU;GACR,IAAI,OAAO,YAAY,UACrB,OAAO;IACL,mBAAmB,QAAQ;IAC3B,iBAAiB,QAAQ;GAC3B;GAEF,OAAO;IACL,mBAAmB;IACnB,iBAAiB,KAAK,IAAI,IAAI,KAAK,YAAY,UAAU,KAAK,CAAC;GACjE;EACF,EAAA,CAAG;CACL,CAAC;AACH"}
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
import { FileDiffMetadata, HunkExpansionRegion } from "../types.js";
|
|
2
|
+
import { CreatePatchOptionsNonabortable } from "diff";
|
|
3
|
+
|
|
4
|
+
//#region src/utils/editSessionHunks.d.ts
|
|
5
|
+
/**
|
|
6
|
+
* The addition-line span an edit changed, from a common prefix/suffix scan.
|
|
7
|
+
* `start` is the first changed line (identical in pre/post-edit coordinates),
|
|
8
|
+
* `prevEnd`/`nextEnd` are the exclusive ends in pre/post-edit lines.
|
|
9
|
+
*/
|
|
10
|
+
interface ChangedLineWindow {
|
|
11
|
+
start: number;
|
|
12
|
+
prevEnd: number;
|
|
13
|
+
nextEnd: number;
|
|
14
|
+
}
|
|
15
|
+
/** A structural change to the region skeleton (rendered row set changed). */
|
|
16
|
+
type SessionRegionChange = {
|
|
17
|
+
type: 'merge';
|
|
18
|
+
firstIndex: number;
|
|
19
|
+
lastIndex: number;
|
|
20
|
+
previousHunkCount: number;
|
|
21
|
+
} | {
|
|
22
|
+
type: 'insert';
|
|
23
|
+
index: number;
|
|
24
|
+
previousHunkCount: number;
|
|
25
|
+
};
|
|
26
|
+
/**
|
|
27
|
+
* Drops the editor document's phantom trailing empty line (a document ending
|
|
28
|
+
* in a newline exposes one extra empty line the parsed diff never contains)
|
|
29
|
+
* so session line arrays compare like parse-derived ones.
|
|
30
|
+
*/
|
|
31
|
+
declare function normalizeEditorLines(lines: string[]): string[];
|
|
32
|
+
/**
|
|
33
|
+
* Common prefix/suffix scan between the last completed pass's lines and the
|
|
34
|
+
* rebuilt document lines. Returns undefined when nothing changed.
|
|
35
|
+
*/
|
|
36
|
+
declare function findChangedLineWindow(previousLines: string[], nextLines: string[]): ChangedLineWindow | undefined;
|
|
37
|
+
/**
|
|
38
|
+
* Applies one contiguous changed window to the session skeleton: regions the
|
|
39
|
+
* window touches merge/grow to cover it (absorbing unchanged gap lines in
|
|
40
|
+
* paired old/new correspondence), a window wholly inside a gap synthesizes a
|
|
41
|
+
* new region, and regions after the window shift by the line delta. The
|
|
42
|
+
* covered region is re-diffed in place. Returns the structural change when
|
|
43
|
+
* the region set itself changed shape (merge/growth/synthesis).
|
|
44
|
+
*/
|
|
45
|
+
declare function applySessionEditWindow(diff: FileDiffMetadata, window: ChangedLineWindow, parseDiffOptions?: CreatePatchOptionsNonabortable): SessionRegionChange | undefined;
|
|
46
|
+
/**
|
|
47
|
+
* Applies a set of changed addition-line indexes from a pass with no line
|
|
48
|
+
* count change: lines inside a region re-diff that region in place; lines in
|
|
49
|
+
* a gap synthesize a region per gap (one window spanning that gap's changed
|
|
50
|
+
* lines). Returns the structural changes, if any, for escalation/remapping.
|
|
51
|
+
*/
|
|
52
|
+
declare function applySessionChangedLines(diff: FileDiffMetadata, changedAdditionLineIndexes: Iterable<number>, parseDiffOptions?: CreatePatchOptionsNonabortable): SessionRegionChange[];
|
|
53
|
+
/**
|
|
54
|
+
* Rebuilds hunk-gap expansion keys after a structural region change so
|
|
55
|
+
* expansion state stays anchored to the same gaps. Merged-away gap keys drop;
|
|
56
|
+
* a synthesized region splits its gap's expansion across the two new gaps.
|
|
57
|
+
* The trailing pseudo-key (old hunk count) follows the same shift.
|
|
58
|
+
*/
|
|
59
|
+
declare function remapExpandedHunksForRegionChange(expandedHunks: Map<number, HunkExpansionRegion>, change: SessionRegionChange): Map<number, HunkExpansionRegion>;
|
|
60
|
+
/**
|
|
61
|
+
* An expanded gap-edge slice in old-side (deletion-line) coordinates as a
|
|
62
|
+
* `[start, end)` range. Old-side coordinates survive the exit recompute
|
|
63
|
+
* unchanged — edits only touch the new side — so these anchor best-effort
|
|
64
|
+
* expansion preservation across the recompute.
|
|
65
|
+
*/
|
|
66
|
+
type ExpansionAnchorRange = [start: number, end: number];
|
|
67
|
+
/** Snapshot the expanded gap-edge slices before the exit recompute. */
|
|
68
|
+
declare function captureExpansionAnchors(diff: FileDiffMetadata, expandedHunks: Map<number, HunkExpansionRegion>, collapsedContextThreshold: number): ExpansionAnchorRange[];
|
|
69
|
+
/**
|
|
70
|
+
* Rebuild gap expansion state against the recomputed hunks: for each new
|
|
71
|
+
* gap, an anchor touching the gap's start edge restores `fromStart`, one
|
|
72
|
+
* touching its end edge restores `fromEnd`, and anchors for gaps that no
|
|
73
|
+
* longer exist drop.
|
|
74
|
+
*/
|
|
75
|
+
declare function rebuildExpansionFromAnchors(diff: FileDiffMetadata, anchors: ExpansionAnchorRange[]): Map<number, HunkExpansionRegion>;
|
|
76
|
+
/**
|
|
77
|
+
* Genuine session exit: when session passes reshaped the hunks, run the real
|
|
78
|
+
* full recompute so exit state matches a non-session edit pipeline, and clear
|
|
79
|
+
* the marker. Returns true when a recompute ran.
|
|
80
|
+
*/
|
|
81
|
+
declare function finishEditSessionForDiff(diff: FileDiffMetadata, parseDiffOptions?: CreatePatchOptionsNonabortable): boolean;
|
|
82
|
+
//#endregion
|
|
83
|
+
export { ChangedLineWindow, ExpansionAnchorRange, SessionRegionChange, applySessionChangedLines, applySessionEditWindow, captureExpansionAnchors, findChangedLineWindow, finishEditSessionForDiff, normalizeEditorLines, rebuildExpansionFromAnchors, remapExpandedHunksForRegionChange };
|
|
84
|
+
//# sourceMappingURL=editSessionHunks.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"editSessionHunks.d.ts","names":[],"sources":["../../src/utils/editSessionHunks.ts"],"mappings":";;;;;;AAoCA;;;UAAiB,iBAAA;EACf,KAAA;EACA,OAAA;EACA,OAAA;AAAA;AAAO;AAAA,KAIG,mBAAA;EAEN,IAAA;EACA,UAAA;EACA,SAAA;EACA,iBAAA;AAAA;EAEA,IAAA;EAAgB,KAAA;EAAe,iBAAA;AAAA;;;AAAiB;AActD;;iBAAgB,oBAAA,CAAqB,KAAe;;AAAA;AAWpD;;iBAAgB,qBAAA,CACd,aAAA,YACA,SAAA,aACC,iBAAiB;;;;;;AAAA;AA8BpB;;iBAAgB,sBAAA,CACd,IAAA,EAAM,gBAAA,EACN,MAAA,EAAQ,iBAAA,EACR,gBAAA,GAAmB,8BAAA,GAClB,mBAAA;;;;;;;iBAoFa,wBAAA,CACd,IAAA,EAAM,gBAAA,EACN,0BAAA,EAA4B,QAAA,UAC5B,gBAAA,GAAmB,8BAAA,GAClB,mBAAA;;;;;;;iBA6Ea,iCAAA,CACd,aAAA,EAAe,GAAA,SAAY,mBAAA,GAC3B,MAAA,EAAQ,mBAAA,GACP,GAAA,SAAY,mBAAA;AAxKO;AAoFtB;;;;;AApFsB,KAgNV,oBAAA,IAAwB,KAAA,UAAe,GAAG;;iBAGtC,uBAAA,CACd,IAAA,EAAM,gBAAA,EACN,aAAA,EAAe,GAAA,SAAY,mBAAA,GAC3B,yBAAA,WACC,oBAAA;;;;;;;iBAoDa,2BAAA,CACd,IAAA,EAAM,gBAAA,EACN,OAAA,EAAS,oBAAA,KACR,GAAA,SAAY,mBAAA;;;AAtLO;AA6EtB;;iBA0JgB,wBAAA,CACd,IAAA,EAAM,gBAAA,EACN,gBAAA,GAAmB,8BAA8B"}
|