diff options
Diffstat (limited to 'source/features/no-unnecessary-split-diff-view.tsx')
-rw-r--r-- | source/features/no-unnecessary-split-diff-view.tsx | 65 |
1 files changed, 26 insertions, 39 deletions
diff --git a/source/features/no-unnecessary-split-diff-view.tsx b/source/features/no-unnecessary-split-diff-view.tsx index 4af30271..6cc667df 100644 --- a/source/features/no-unnecessary-split-diff-view.tsx +++ b/source/features/no-unnecessary-split-diff-view.tsx @@ -1,43 +1,30 @@ import './no-unnecessary-split-diff-view.css'; -import select from 'select-dom'; import * as pageDetect from 'github-url-detection'; import features from '../feature-manager'; -import {onDiffFileLoad} from '../github-events/on-fragment-load'; - -function isUnifiedDiff(): boolean { - return select.exists([ - '[value="unified"][checked]', // Form in PR - '.table-of-contents .selected[href*="diff=unified"]', // Link in single commit - ]); -} - -function init(): void { - for (const diffTable of select.all('.js-diff-table:not(.rgh-no-unnecessary-split-diff-view-visited)')) { - diffTable.classList.add('rgh-no-unnecessary-split-diff-view-visited'); - for (const side of ['left', 'right']) { - if (!select.exists(`[data-split-side="${side}"]:is(.blob-code-addition, .blob-code-deletion)`, diffTable)) { - diffTable.setAttribute('data-rgh-hide-empty-split-diff-side', side); - break; - } - } - } -} - -void features.add(import.meta.url, { - asLongAs: [ - // Make sure the class names we need exist on the page #4483 - () => select.exists('.js-diff-table :is([data-split-side="left"], [data-split-side="right"]):is(.blob-code-addition, .blob-code-deletion)'), - ], - include: [ - pageDetect.hasFiles, - ], - exclude: [ - isUnifiedDiff, - ], - additionalListeners: [ - onDiffFileLoad, - ], - deduplicate: 'has-rgh-inner', - init, -}); + +void features.addCssFeature(import.meta.url, [ + pageDetect.hasFiles, +]); + +/* + +## Test URLs + +### PR files + +https://github.com/refined-github/sandbox/pull/50/files?diff=split + +### PR files with annotations + +https://github.com/fregante/sandbox/pull/30/files + +### Compare page + +https://github.com/refined-github/sandbox/compare/no-unnecessary-split-diff-view?expand=1&diff=split + +### Single commit + +https://github.com/refined-github/sandbox/commit/c28cc8e5271452b5b4c347d46a63f717c29417d6?diff=split + +*/ |