@ycniuqton/devlens 0.1.8 → 0.1.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/init.js +44 -5
- package/dist/init.js.map +1 -1
- package/dist/services/git.js +1 -0
- package/dist/services/git.js.map +1 -1
- package/dist/types/index.d.ts +1 -0
- package/package.json +1 -1
- package/public/css/style.css +145 -1
- package/public/js/history.js +66 -8
package/dist/init.js
CHANGED
|
@@ -31,15 +31,50 @@ curl -s -X POST "\$DEVLENS_URL" \\
|
|
|
31
31
|
exit 0
|
|
32
32
|
`;
|
|
33
33
|
const SHUTDOWN_HOOK_SCRIPT = `#!/bin/bash
|
|
34
|
-
# Devlens — stop dashboard on Claude Code session end
|
|
35
|
-
|
|
36
|
-
cat > /dev/null 2>&1
|
|
34
|
+
# Devlens — stop dashboard on Claude Code session end (only if no other sessions remain in this folder)
|
|
35
|
+
INPUT=$(cat 2>/dev/null)
|
|
37
36
|
|
|
38
37
|
PROJECT_DIR="\${CLAUDE_PROJECT_DIR:-$PWD}"
|
|
39
38
|
RUNTIME_FILE="\$PROJECT_DIR/.devlens/runtime.json"
|
|
39
|
+
SESSIONS_DIR="\$HOME/.claude/sessions"
|
|
40
40
|
|
|
41
41
|
[ ! -f "\$RUNTIME_FILE" ] && exit 0
|
|
42
42
|
|
|
43
|
+
# Identify the exiting session so we can exclude it from the live-count
|
|
44
|
+
EXITING_SESSION_ID=$(echo "\$INPUT" | grep -oE '"session_id":"[^"]*"' | sed 's/"session_id":"//;s/"$//' | head -1)
|
|
45
|
+
EXITING_PID=""
|
|
46
|
+
if [ -n "\$EXITING_SESSION_ID" ] && [ -d "\$SESSIONS_DIR" ]; then
|
|
47
|
+
for f in "\$SESSIONS_DIR"/*.json; do
|
|
48
|
+
[ -f "\$f" ] || continue
|
|
49
|
+
if grep -q "\\"sessionId\\":\\"\$EXITING_SESSION_ID\\"" "\$f" 2>/dev/null; then
|
|
50
|
+
EXITING_PID=$(grep -oE '"pid":[0-9]+' "\$f" | grep -oE '[0-9]+' | head -1)
|
|
51
|
+
break
|
|
52
|
+
fi
|
|
53
|
+
done
|
|
54
|
+
fi
|
|
55
|
+
|
|
56
|
+
# Are there OTHER live Claude sessions for this same project directory?
|
|
57
|
+
OTHER_ALIVE=0
|
|
58
|
+
if [ -d "\$SESSIONS_DIR" ]; then
|
|
59
|
+
for f in "\$SESSIONS_DIR"/*.json; do
|
|
60
|
+
[ -f "\$f" ] || continue
|
|
61
|
+
SPID=$(grep -oE '"pid":[0-9]+' "\$f" | grep -oE '[0-9]+' | head -1)
|
|
62
|
+
SCWD=$(grep -oE '"cwd":"[^"]*"' "\$f" | sed 's/"cwd":"//;s/"$//' | head -1)
|
|
63
|
+
[ -z "\$SPID" ] && continue
|
|
64
|
+
[ "\$SCWD" != "\$PROJECT_DIR" ] && continue
|
|
65
|
+
[ -n "\$EXITING_PID" ] && [ "\$SPID" = "\$EXITING_PID" ] && continue
|
|
66
|
+
if kill -0 "\$SPID" 2>/dev/null; then
|
|
67
|
+
OTHER_ALIVE=1
|
|
68
|
+
break
|
|
69
|
+
fi
|
|
70
|
+
done
|
|
71
|
+
fi
|
|
72
|
+
|
|
73
|
+
# Other Claude sessions still running in this folder — keep devlens alive
|
|
74
|
+
if [ "\$OTHER_ALIVE" = "1" ]; then
|
|
75
|
+
exit 0
|
|
76
|
+
fi
|
|
77
|
+
|
|
43
78
|
PID=$(grep -oE '"pid"[[:space:]]*:[[:space:]]*[0-9]+' "\$RUNTIME_FILE" 2>/dev/null | grep -oE "[0-9]+" | head -1)
|
|
44
79
|
[ -z "\$PID" ] && exit 0
|
|
45
80
|
|
|
@@ -109,13 +144,15 @@ done
|
|
|
109
144
|
emit_context "starting-in-background"
|
|
110
145
|
exit 0
|
|
111
146
|
`;
|
|
112
|
-
// Find and kill any existing devlens process for this project dir
|
|
147
|
+
// Find and kill any existing devlens server process for this project dir
|
|
113
148
|
function killExistingDevlens(projectDir) {
|
|
114
149
|
try {
|
|
115
150
|
const ps = require('child_process').execSync('ps -eo pid,args', { encoding: 'utf-8' });
|
|
116
|
-
|
|
151
|
+
// Must contain "start" (the server subcommand) AND --dir <project>; excludes "init"/"uninstall"
|
|
152
|
+
const re = new RegExp(`node.*(devlens|dist/index\\.js)\\s+start\\s.*--dir[= ]?${projectDir.replace(/[.*+?^${}()|[\]\\]/g, '\\$&')}([ /]|$)`);
|
|
117
153
|
const lines = ps.split('\n');
|
|
118
154
|
let killed = false;
|
|
155
|
+
const selfPid = process.pid;
|
|
119
156
|
for (const line of lines) {
|
|
120
157
|
if (line.includes('grep'))
|
|
121
158
|
continue;
|
|
@@ -124,6 +161,8 @@ function killExistingDevlens(projectDir) {
|
|
|
124
161
|
const pid = parseInt(line.trim().split(/\s+/)[0], 10);
|
|
125
162
|
if (!pid)
|
|
126
163
|
continue;
|
|
164
|
+
if (pid === selfPid)
|
|
165
|
+
continue;
|
|
127
166
|
try {
|
|
128
167
|
process.kill(pid, 'SIGTERM');
|
|
129
168
|
killed = true;
|
package/dist/init.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.js","sourceRoot":"","sources":["../src/init.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"init.js","sourceRoot":"","sources":["../src/init.ts"],"names":[],"mappings":"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"}
|
package/dist/services/git.js
CHANGED
package/dist/services/git.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"git.js","sourceRoot":"","sources":["../../src/services/git.ts"],"names":[],"mappings":";;;;;AAeA,
|
|
1
|
+
{"version":3,"file":"git.js","sourceRoot":"","sources":["../../src/services/git.ts"],"names":[],"mappings":"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"}
|
package/dist/types/index.d.ts
CHANGED
package/package.json
CHANGED
package/public/css/style.css
CHANGED
|
@@ -1781,9 +1781,16 @@ body {
|
|
|
1781
1781
|
}
|
|
1782
1782
|
|
|
1783
1783
|
.commit-header-content {
|
|
1784
|
+
display: flex;
|
|
1785
|
+
flex-direction: column;
|
|
1786
|
+
gap: var(--sp-3);
|
|
1787
|
+
}
|
|
1788
|
+
|
|
1789
|
+
.commit-header-top {
|
|
1784
1790
|
display: flex;
|
|
1785
1791
|
align-items: center;
|
|
1786
1792
|
gap: var(--sp-3);
|
|
1793
|
+
flex-wrap: wrap;
|
|
1787
1794
|
}
|
|
1788
1795
|
|
|
1789
1796
|
.commit-header-hash {
|
|
@@ -1796,15 +1803,112 @@ body {
|
|
|
1796
1803
|
border-radius: var(--radius-sm);
|
|
1797
1804
|
}
|
|
1798
1805
|
|
|
1806
|
+
.commit-header-meta {
|
|
1807
|
+
display: flex;
|
|
1808
|
+
align-items: center;
|
|
1809
|
+
gap: var(--sp-2);
|
|
1810
|
+
font-size: var(--text-xs);
|
|
1811
|
+
color: var(--color-text-muted);
|
|
1812
|
+
}
|
|
1813
|
+
|
|
1799
1814
|
.commit-header-files {
|
|
1800
1815
|
font-size: var(--text-xs);
|
|
1801
1816
|
color: var(--color-text-muted);
|
|
1802
1817
|
}
|
|
1803
1818
|
|
|
1819
|
+
.commit-header-message {
|
|
1820
|
+
background: var(--color-bg);
|
|
1821
|
+
border: 1px solid var(--color-border-subtle);
|
|
1822
|
+
border-radius: var(--radius-md);
|
|
1823
|
+
padding: var(--sp-3) var(--sp-4);
|
|
1824
|
+
max-height: 240px;
|
|
1825
|
+
overflow-y: auto;
|
|
1826
|
+
}
|
|
1827
|
+
|
|
1828
|
+
.commit-header-subject {
|
|
1829
|
+
font-size: var(--text-base);
|
|
1830
|
+
font-weight: 600;
|
|
1831
|
+
color: var(--color-text);
|
|
1832
|
+
word-break: break-word;
|
|
1833
|
+
}
|
|
1834
|
+
|
|
1835
|
+
.commit-header-body {
|
|
1836
|
+
margin: var(--sp-2) 0 0;
|
|
1837
|
+
font-family: var(--font-mono);
|
|
1838
|
+
font-size: var(--text-xs);
|
|
1839
|
+
color: var(--color-text-secondary);
|
|
1840
|
+
white-space: pre-wrap;
|
|
1841
|
+
word-break: break-word;
|
|
1842
|
+
line-height: var(--leading-normal);
|
|
1843
|
+
}
|
|
1844
|
+
|
|
1804
1845
|
.commit-header-actions {
|
|
1805
|
-
margin-left: auto;
|
|
1806
1846
|
display: flex;
|
|
1807
1847
|
gap: var(--sp-2);
|
|
1848
|
+
flex-wrap: wrap;
|
|
1849
|
+
}
|
|
1850
|
+
|
|
1851
|
+
/* Hover tooltip on commit list items */
|
|
1852
|
+
.commit-item { position: relative; }
|
|
1853
|
+
|
|
1854
|
+
.commit-tooltip {
|
|
1855
|
+
position: absolute;
|
|
1856
|
+
left: calc(100% + 12px);
|
|
1857
|
+
top: 50%;
|
|
1858
|
+
transform: translateY(-50%);
|
|
1859
|
+
background: var(--color-surface-2);
|
|
1860
|
+
border: 1px solid var(--color-border);
|
|
1861
|
+
border-radius: var(--radius-md);
|
|
1862
|
+
padding: var(--sp-3) var(--sp-4);
|
|
1863
|
+
min-width: 320px;
|
|
1864
|
+
max-width: 480px;
|
|
1865
|
+
box-shadow: var(--shadow-lg);
|
|
1866
|
+
opacity: 0;
|
|
1867
|
+
pointer-events: none;
|
|
1868
|
+
transform-origin: left center;
|
|
1869
|
+
transform: translateY(-50%) scale(0.95);
|
|
1870
|
+
transition: opacity var(--duration-fast) var(--ease), transform var(--duration-fast) var(--ease);
|
|
1871
|
+
z-index: 50;
|
|
1872
|
+
}
|
|
1873
|
+
|
|
1874
|
+
.commit-item:hover .commit-tooltip {
|
|
1875
|
+
opacity: 1;
|
|
1876
|
+
transform: translateY(-50%) scale(1);
|
|
1877
|
+
transition-delay: 250ms;
|
|
1878
|
+
}
|
|
1879
|
+
|
|
1880
|
+
.commit-tooltip::before {
|
|
1881
|
+
content: '';
|
|
1882
|
+
position: absolute;
|
|
1883
|
+
left: -6px;
|
|
1884
|
+
top: 50%;
|
|
1885
|
+
transform: translateY(-50%);
|
|
1886
|
+
width: 0;
|
|
1887
|
+
height: 0;
|
|
1888
|
+
border-top: 6px solid transparent;
|
|
1889
|
+
border-bottom: 6px solid transparent;
|
|
1890
|
+
border-right: 6px solid var(--color-border);
|
|
1891
|
+
}
|
|
1892
|
+
|
|
1893
|
+
.commit-tooltip-message {
|
|
1894
|
+
font-family: var(--font-mono);
|
|
1895
|
+
font-size: var(--text-xs);
|
|
1896
|
+
color: var(--color-text);
|
|
1897
|
+
white-space: pre-wrap;
|
|
1898
|
+
word-break: break-word;
|
|
1899
|
+
line-height: var(--leading-normal);
|
|
1900
|
+
max-height: 240px;
|
|
1901
|
+
overflow-y: auto;
|
|
1902
|
+
}
|
|
1903
|
+
|
|
1904
|
+
.commit-tooltip-meta {
|
|
1905
|
+
display: flex;
|
|
1906
|
+
gap: var(--sp-2);
|
|
1907
|
+
margin-top: var(--sp-2);
|
|
1908
|
+
padding-top: var(--sp-2);
|
|
1909
|
+
border-top: 1px solid var(--color-border-subtle);
|
|
1910
|
+
font-size: 10px;
|
|
1911
|
+
color: var(--color-text-muted);
|
|
1808
1912
|
}
|
|
1809
1913
|
|
|
1810
1914
|
.commit-detail-diff {
|
|
@@ -1849,7 +1953,47 @@ body {
|
|
|
1849
1953
|
overflow: hidden;
|
|
1850
1954
|
text-overflow: ellipsis;
|
|
1851
1955
|
white-space: nowrap;
|
|
1956
|
+
flex: 1;
|
|
1957
|
+
min-width: 0;
|
|
1958
|
+
}
|
|
1959
|
+
|
|
1960
|
+
/* File status icon (left of filename) */
|
|
1961
|
+
.commit-file-status-icon {
|
|
1962
|
+
display: inline-flex;
|
|
1963
|
+
align-items: center;
|
|
1964
|
+
justify-content: center;
|
|
1965
|
+
width: 20px;
|
|
1966
|
+
height: 20px;
|
|
1967
|
+
border-radius: var(--radius-sm);
|
|
1968
|
+
flex-shrink: 0;
|
|
1969
|
+
}
|
|
1970
|
+
|
|
1971
|
+
.commit-file-status-icon.added { color: var(--color-success); background: var(--color-success-subtle); }
|
|
1972
|
+
.commit-file-status-icon.modified { color: var(--color-warning); background: var(--color-warning-subtle); }
|
|
1973
|
+
.commit-file-status-icon.deleted { color: var(--color-danger); background: var(--color-danger-subtle); }
|
|
1974
|
+
.commit-file-status-icon.renamed { color: var(--color-purple); background: var(--color-purple-subtle); }
|
|
1975
|
+
|
|
1976
|
+
/* File status text tag (right side) */
|
|
1977
|
+
.commit-file-status-tag {
|
|
1978
|
+
font-size: 10px;
|
|
1979
|
+
font-weight: 700;
|
|
1980
|
+
letter-spacing: 0.06em;
|
|
1981
|
+
padding: 2px 8px;
|
|
1982
|
+
border-radius: var(--radius-sm);
|
|
1983
|
+
flex-shrink: 0;
|
|
1984
|
+
}
|
|
1985
|
+
|
|
1986
|
+
.commit-file-status-tag.added { color: var(--color-success); background: var(--color-success-subtle); }
|
|
1987
|
+
.commit-file-status-tag.modified { color: var(--color-warning); background: var(--color-warning-subtle); }
|
|
1988
|
+
.commit-file-status-tag.deleted { color: var(--color-danger); background: var(--color-danger-subtle); }
|
|
1989
|
+
.commit-file-status-tag.renamed { color: var(--color-purple); background: var(--color-purple-subtle); }
|
|
1990
|
+
|
|
1991
|
+
/* Filename color hints based on status */
|
|
1992
|
+
.commit-file-header.file-status-deleted .commit-file-name {
|
|
1993
|
+
text-decoration: line-through;
|
|
1994
|
+
color: var(--color-text-muted);
|
|
1852
1995
|
}
|
|
1996
|
+
.commit-file-header.file-status-added .commit-file-name { color: var(--color-success); }
|
|
1853
1997
|
|
|
1854
1998
|
.commit-file-body {
|
|
1855
1999
|
display: none;
|
package/public/js/history.js
CHANGED
|
@@ -4,6 +4,7 @@ var historyLoaded = false;
|
|
|
4
4
|
var historySelectedHash = null;
|
|
5
5
|
var historyViewMode = localStorage.getItem('devlens-history-view') || 'side-by-side';
|
|
6
6
|
var historyCachedData = null; // last loaded commit { hash, files, diff }
|
|
7
|
+
var historyCommits = []; // last loaded commit list (for full message lookup)
|
|
7
8
|
|
|
8
9
|
async function loadBranchInfo() {
|
|
9
10
|
try {
|
|
@@ -20,6 +21,7 @@ async function loadCommits() {
|
|
|
20
21
|
try {
|
|
21
22
|
const res = await fetch('/api/browser/commits?limit=100');
|
|
22
23
|
const commits = await res.json();
|
|
24
|
+
historyCommits = commits;
|
|
23
25
|
document.getElementById('commit-count').textContent = commits.length;
|
|
24
26
|
|
|
25
27
|
if (!commits.length) {
|
|
@@ -27,7 +29,9 @@ async function loadCommits() {
|
|
|
27
29
|
return;
|
|
28
30
|
}
|
|
29
31
|
|
|
30
|
-
list.innerHTML = commits.map(c =>
|
|
32
|
+
list.innerHTML = commits.map(c => {
|
|
33
|
+
const fullMessage = c.body ? `${c.message}\n\n${c.body}` : c.message;
|
|
34
|
+
return `
|
|
31
35
|
<li class="commit-item" data-hash="${c.hash}">
|
|
32
36
|
<div class="commit-marker"></div>
|
|
33
37
|
<div class="commit-content">
|
|
@@ -38,8 +42,16 @@ async function loadCommits() {
|
|
|
38
42
|
<span class="commit-date">${formatRelativeDate(c.date)}</span>
|
|
39
43
|
</div>
|
|
40
44
|
</div>
|
|
41
|
-
|
|
42
|
-
|
|
45
|
+
<div class="commit-tooltip">
|
|
46
|
+
<div class="commit-tooltip-message">${escapeHtmlHistory(fullMessage)}</div>
|
|
47
|
+
<div class="commit-tooltip-meta">
|
|
48
|
+
<span>${escapeHtmlHistory(c.author)}</span>
|
|
49
|
+
<span>·</span>
|
|
50
|
+
<span>${new Date(c.date).toLocaleString()}</span>
|
|
51
|
+
</div>
|
|
52
|
+
</div>
|
|
53
|
+
</li>`;
|
|
54
|
+
}).join('');
|
|
43
55
|
|
|
44
56
|
list.querySelectorAll('.commit-item').forEach(item => {
|
|
45
57
|
item.addEventListener('click', () => {
|
|
@@ -99,11 +111,26 @@ function renderCommitDetails(hash, data) {
|
|
|
99
111
|
if (!headerEl || !diffEl) return;
|
|
100
112
|
|
|
101
113
|
const isUnified = historyViewMode === 'line-by-line';
|
|
114
|
+
const commit = historyCommits.find(c => c.hash === hash) || {};
|
|
115
|
+
const subject = commit.message || '';
|
|
116
|
+
const body = commit.body || '';
|
|
117
|
+
const author = commit.author || '';
|
|
118
|
+
const date = commit.date ? new Date(commit.date).toLocaleString() : '';
|
|
102
119
|
|
|
103
120
|
headerEl.innerHTML = `
|
|
104
121
|
<div class="commit-header-content">
|
|
105
|
-
<div class="commit-header-
|
|
106
|
-
|
|
122
|
+
<div class="commit-header-top">
|
|
123
|
+
<div class="commit-header-hash">${hash}</div>
|
|
124
|
+
<div class="commit-header-meta">
|
|
125
|
+
${author ? `<span>${escapeHtmlHistory(author)}</span>` : ''}
|
|
126
|
+
${date ? `<span>·</span><span>${date}</span>` : ''}
|
|
127
|
+
<span>·</span><span>${data.files.length} file(s)</span>
|
|
128
|
+
</div>
|
|
129
|
+
</div>
|
|
130
|
+
<div class="commit-header-message">
|
|
131
|
+
<div class="commit-header-subject">${escapeHtmlHistory(subject)}</div>
|
|
132
|
+
${body ? `<pre class="commit-header-body">${escapeHtmlHistory(body)}</pre>` : ''}
|
|
133
|
+
</div>
|
|
107
134
|
<div class="commit-header-actions">
|
|
108
135
|
<div class="btn-group">
|
|
109
136
|
<button class="btn btn-ghost btn-sm ${!isUnified ? 'active' : ''}" id="history-view-split" title="Side by side">
|
|
@@ -134,6 +161,10 @@ function renderCommitDetails(hash, data) {
|
|
|
134
161
|
|
|
135
162
|
const files = historySplitDiffByFile(data.diff);
|
|
136
163
|
|
|
164
|
+
// Build a path → status map from data.files (e.g. "added", "modified", "deleted", "renamed")
|
|
165
|
+
const statusByPath = {};
|
|
166
|
+
for (const f of (data.files || [])) statusByPath[f.path] = f.status;
|
|
167
|
+
|
|
137
168
|
// Stash raw diffs on a closure-accessible array indexed by data-idx
|
|
138
169
|
const renderCommitFileBody = (section) => {
|
|
139
170
|
const body = section.querySelector('.commit-file-body');
|
|
@@ -150,15 +181,20 @@ function renderCommitDetails(hash, data) {
|
|
|
150
181
|
body.dataset.rendered = 'true';
|
|
151
182
|
};
|
|
152
183
|
|
|
153
|
-
diffEl.innerHTML = files.map((file, i) =>
|
|
184
|
+
diffEl.innerHTML = files.map((file, i) => {
|
|
185
|
+
const status = statusByPath[file.name] || 'modified';
|
|
186
|
+
return `
|
|
154
187
|
<div class="commit-file-section" data-file="${escapeAttrHistory(file.name)}" data-idx="${i}">
|
|
155
|
-
<div class="commit-file-header">
|
|
188
|
+
<div class="commit-file-header file-status-${status}">
|
|
156
189
|
<svg class="commit-file-chevron" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><polyline points="9 18 15 12 9 6"/></svg>
|
|
190
|
+
<span class="commit-file-status-icon ${status}" title="${status}">${commitFileStatusIcon(status)}</span>
|
|
157
191
|
<span class="commit-file-name">${escapeHtmlHistory(file.name)}</span>
|
|
192
|
+
<span class="commit-file-status-tag ${status}">${commitFileStatusLabel(status)}</span>
|
|
158
193
|
</div>
|
|
159
194
|
<div class="commit-file-body" data-rendered="false"></div>
|
|
160
195
|
</div>
|
|
161
|
-
|
|
196
|
+
`;
|
|
197
|
+
}).join('');
|
|
162
198
|
|
|
163
199
|
// Wire collapse/expand with lazy render on first expand
|
|
164
200
|
diffEl.querySelectorAll('.commit-file-header').forEach(h => {
|
|
@@ -198,6 +234,28 @@ function escapeAttrHistory(str) {
|
|
|
198
234
|
return String(str).replace(/"/g, '"');
|
|
199
235
|
}
|
|
200
236
|
|
|
237
|
+
function commitFileStatusIcon(status) {
|
|
238
|
+
// SVG icons for each git status
|
|
239
|
+
const svg = (path) => `<svg width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round">${path}</svg>`;
|
|
240
|
+
switch (status) {
|
|
241
|
+
case 'added': return svg('<line x1="12" y1="5" x2="12" y2="19"/><line x1="5" y1="12" x2="19" y2="12"/>'); // +
|
|
242
|
+
case 'deleted': return svg('<line x1="5" y1="12" x2="19" y2="12"/>'); // —
|
|
243
|
+
case 'renamed': return svg('<polyline points="17 1 21 5 17 9"/><path d="M3 11V9a4 4 0 0 1 4-4h14"/><polyline points="7 23 3 19 7 15"/><path d="M21 13v2a4 4 0 0 1-4 4H3"/>'); // ↻
|
|
244
|
+
case 'modified':
|
|
245
|
+
default: return svg('<circle cx="12" cy="12" r="3"/>'); // •
|
|
246
|
+
}
|
|
247
|
+
}
|
|
248
|
+
|
|
249
|
+
function commitFileStatusLabel(status) {
|
|
250
|
+
switch (status) {
|
|
251
|
+
case 'added': return 'NEW';
|
|
252
|
+
case 'deleted': return 'DEL';
|
|
253
|
+
case 'renamed': return 'REN';
|
|
254
|
+
case 'modified': return 'MOD';
|
|
255
|
+
default: return status.toUpperCase();
|
|
256
|
+
}
|
|
257
|
+
}
|
|
258
|
+
|
|
201
259
|
function escapeHtmlHistory(str) {
|
|
202
260
|
if (str == null) return '';
|
|
203
261
|
const div = document.createElement('div');
|