Skip to content

Commit 62e0321

Browse files
committed
Merge branch 'main' into lunny/add_last_commit_when
2 parents a5d87a3 + f0f1737 commit 62e0321

29 files changed

+203
-235
lines changed

templates/org/home.tmpl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
<div class="ui mobile reversed stackable grid">
77
<div class="ui {{if .ShowMemberAndTeamTab}}eleven wide{{end}} column">
88
{{if .ProfileReadmeContent}}
9-
<div id="readme_profile" class="markup" data-profile-view-as-member="{{.IsViewingOrgAsMember}}">{{.ProfileReadmeContent}}</div>
9+
<div id="readme_profile" class="render-content markup" data-profile-view-as-member="{{.IsViewingOrgAsMember}}">{{.ProfileReadmeContent}}</div>
1010
{{end}}
1111
{{template "shared/repo_search" .}}
1212
{{template "explore/repo_list" .}}

templates/projects/list.tmpl

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -74,9 +74,7 @@
7474
{{end}}
7575
</div>
7676
{{if .Description}}
77-
<div class="content">
78-
{{.RenderedContent}}
79-
</div>
77+
<div class="render-content markup">{{.RenderedContent}}</div>
8078
{{end}}
8179
</li>
8280
{{end}}

templates/repo/editor/edit.tmpl

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -45,10 +45,10 @@
4545
data-line-wrap-extensions="{{.LineWrapExtensions}}">{{.FileContent}}</textarea>
4646
<div class="editor-loading is-loading"></div>
4747
</div>
48-
<div class="ui tab markup tw-px-4 tw-py-3" data-tab="preview">
48+
<div class="ui tab tw-px-4 tw-py-3" data-tab="preview">
4949
{{ctx.Locale.Tr "loading"}}
5050
</div>
51-
<div class="ui tab diff edit-diff" data-tab="diff">
51+
<div class="ui tab" data-tab="diff">
5252
<div class="tw-p-16"></div>
5353
</div>
5454
</div>
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
<div class="field {{if not .item.VisibleOnForm}}tw-hidden{{end}}">
2-
<div class="markup">{{ctx.RenderUtils.MarkdownToHtml .item.Attributes.value}}</div>
2+
<div class="render-content markup">{{ctx.RenderUtils.MarkdownToHtml .item.Attributes.value}}</div>
33
</div>

templates/repo/issue/milestone_issues.tmpl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@
2222
{{end}}
2323
</div>
2424
{{if .Milestone.RenderedContent}}
25-
<div class="markup content tw-mb-4">
25+
<div class="render-content markup tw-mb-4">
2626
{{.Milestone.RenderedContent}}
2727
</div>
2828
{{end}}

templates/repo/issue/milestones.tmpl

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -81,9 +81,7 @@
8181
{{end}}
8282
</div>
8383
{{if .Content}}
84-
<div class="markup content">
85-
{{.RenderedContent}}
86-
</div>
84+
<div class="render-content markup">{{.RenderedContent}}</div>
8785
{{end}}
8886
</li>
8987
{{end}}

templates/repo/release/list.tmpl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@
6464
| <span class="ahead"><a href="{{$.RepoLink}}/compare/{{$release.TagName | PathEscapeSegments}}...{{$release.TargetBehind | PathEscapeSegments}}">{{ctx.Locale.Tr "repo.release.ahead.commits" $release.NumCommitsBehind}}</a> {{ctx.Locale.Tr "repo.release.ahead.target" $release.TargetBehind}}</span>
6565
{{end}}
6666
</p>
67-
<div class="markup desc">
67+
<div class="render-content markup">
6868
{{$release.RenderedNote}}
6969
</div>
7070
<div class="divider"></div>

templates/repo/settings/lfs_file.tmpl

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
</h4>
1414
<div class="ui bottom attached table unstackable segment">
1515
{{template "repo/unicode_escape_prompt" dict "EscapeStatus" .EscapeStatus "root" $}}
16-
<div class="file-view{{if .IsMarkup}} markup {{.MarkupType}}{{else if .IsPlainText}} plain-text{{else if .IsTextFile}} code-view{{end}}">
16+
<div class="file-view {{if .IsPlainText}}plain-text{{else if .IsTextFile}}code-view{{end}}">
1717
{{if .IsFileTooLarge}}
1818
{{template "shared/filetoolarge" dict "RawFileLink" .RawFileLink}}
1919
{{else if not .FileSize}}
@@ -31,7 +31,7 @@
3131
<strong>{{ctx.Locale.Tr "repo.audio_not_supported_in_browser"}}</strong>
3232
</audio>
3333
{{else if .IsPDFFile}}
34-
<div class="pdf-content is-loading" data-src="{{$.RawFileLink}}" data-fallback-button-text="{{ctx.Locale.Tr "diff.view_file"}}"></div>
34+
<div class="pdf-content is-loading" data-global-init="initPdfViewer" data-src="{{$.RawFileLink}}" data-fallback-button-text="{{ctx.Locale.Tr "diff.view_file"}}"></div>
3535
{{else}}
3636
<a href="{{$.RawFileLink}}" rel="nofollow" class="tw-p-4">{{ctx.Locale.Tr "repo.file_view_raw"}}</a>
3737
{{end}}

templates/repo/view_file.tmpl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -108,7 +108,7 @@
108108
<strong>{{ctx.Locale.Tr "repo.audio_not_supported_in_browser"}}</strong>
109109
</audio>
110110
{{else if .IsPDFFile}}
111-
<div class="pdf-content is-loading" data-src="{{$.RawFileLink}}" data-fallback-button-text="{{ctx.Locale.Tr "repo.diff.view_file"}}"></div>
111+
<div class="pdf-content is-loading" data-global-init="initPdfViewer" data-src="{{$.RawFileLink}}" data-fallback-button-text="{{ctx.Locale.Tr "repo.diff.view_file"}}"></div>
112112
{{else}}
113113
<a href="{{$.RawFileLink}}" rel="nofollow" class="tw-p-4">{{ctx.Locale.Tr "repo.file_view_raw"}}</a>
114114
{{end}}

templates/repo/wiki/view.tmpl

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -63,18 +63,18 @@
6363

6464
<div class="wiki-content-parts">
6565
{{if .sidebarTocContent}}
66-
<div class="markup wiki-content-sidebar wiki-content-toc">
66+
<div class="render-content markup wiki-content-sidebar wiki-content-toc">
6767
{{.sidebarTocContent | SafeHTML}}
6868
</div>
6969
{{end}}
7070

71-
<div class="markup wiki-content-main {{if or .sidebarTocContent .sidebarPresent}}with-sidebar{{end}}">
71+
<div class="render-content markup wiki-content-main {{if or .sidebarTocContent .sidebarPresent}}with-sidebar{{end}}">
7272
{{template "repo/unicode_escape_prompt" dict "EscapeStatus" .EscapeStatus "root" $}}
7373
{{.content | SafeHTML}}
7474
</div>
7575

7676
{{if .sidebarPresent}}
77-
<div class="markup wiki-content-sidebar">
77+
<div class="render-content markup wiki-content-sidebar">
7878
{{if and .CanWriteWiki (not .Repository.IsMirror)}}
7979
<a class="tw-float-right muted" href="{{.RepoLink}}/wiki/_Sidebar?action=_edit" aria-label="{{ctx.Locale.Tr "repo.wiki.edit_page_button"}}">{{svg "octicon-pencil"}}</a>
8080
{{end}}
@@ -86,7 +86,7 @@
8686
<div class="tw-clear-both"></div>
8787

8888
{{if .footerPresent}}
89-
<div class="markup wiki-content-footer">
89+
<div class="render-content markup wiki-content-footer">
9090
{{if and .CanWriteWiki (not .Repository.IsMirror)}}
9191
<a class="tw-float-right muted" href="{{.RepoLink}}/wiki/_Footer?action=_edit" aria-label="{{ctx.Locale.Tr "repo.wiki.edit_page_button"}}">{{svg "octicon-pencil"}}</a>
9292
{{end}}

templates/shared/combomarkdowneditor.tmpl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -81,7 +81,7 @@
8181
}
8282
</script>
8383
</div>
84-
<div class="ui tab markup" data-tab-panel="markdown-previewer">
84+
<div class="ui tab" data-tab-panel="markdown-previewer">
8585
{{ctx.Locale.Tr "loading"}}
8686
</div>
8787
<div class="markdown-add-table-panel tippy-target">

templates/user/dashboard/feeds.tmpl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -110,7 +110,7 @@
110110
<a href="{{.GetCommentLink ctx}}" class="text truncate issue title">{{(.GetIssueTitle ctx) | ctx.RenderUtils.RenderIssueSimpleTitle}}</a>
111111
{{$comment := index .GetIssueInfos 1}}
112112
{{if $comment}}
113-
<div class="markup tw-text-14">{{ctx.RenderUtils.MarkdownToHtml $comment}}</div>
113+
<div class="render-content markup tw-text-14">{{ctx.RenderUtils.MarkdownToHtml $comment}}</div>
114114
{{end}}
115115
{{else if .GetOpType.InActions "merge_pull_request"}}
116116
<div class="flex-item-body text black">{{index .GetIssueInfos 1}}</div>

templates/user/dashboard/milestones.tmpl

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@
3333
{{end}}
3434
</div>
3535
</div>
36-
<div class="flex-container-main content">
36+
<div class="flex-container-main">
3737
<div class="list-header">
3838
<div class="small-menu-items ui compact tiny menu list-header-toggle">
3939
<a class="item{{if not .IsShowClosed}} active{{end}}" href="?repos=[{{range $.RepoIDs}}{{.}}%2C{{end}}]&sort={{$.SortType}}&state=open&q={{$.Keyword}}">
@@ -140,9 +140,7 @@
140140
{{end}}
141141
</div>
142142
{{if .Content}}
143-
<div class="markup content">
144-
{{.RenderedContent}}
145-
</div>
143+
<div class="render-content markup">{{.RenderedContent}}</div>
146144
{{end}}
147145
</li>
148146
{{end}}

templates/user/profile.tmpl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@
2626
{{else if eq .TabName "followers"}}
2727
{{template "repo/user_cards" .}}
2828
{{else if eq .TabName "overview"}}
29-
<div id="readme_profile" class="markup">{{.ProfileReadmeContent}}</div>
29+
<div id="readme_profile" class="render-content markup">{{.ProfileReadmeContent}}</div>
3030
{{else if eq .TabName "organizations"}}
3131
{{template "repo/user_cards" .}}
3232
{{else}}

web_src/css/editor/fileeditor.css

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -74,12 +74,3 @@
7474
padding: 1rem;
7575
text-align: center;
7676
}
77-
78-
.edit-diff {
79-
padding: 0 !important;
80-
}
81-
82-
.edit-diff > div > .ui.table {
83-
border-top: none !important;
84-
border-bottom: none !important;
85-
}

web_src/css/markup/content.css

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -535,7 +535,7 @@
535535
user-select: none;
536536
}
537537

538-
.markup-render {
538+
.markup-content-iframe {
539539
display: block;
540540
border: none;
541541
width: 100%;

web_src/css/shared/milestone.css

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212
border-top: 1px solid var(--color-secondary);
1313
}
1414

15-
.milestone-card .content {
15+
.milestone-card .render-content {
1616
padding-top: 10px;
1717
}
1818

web_src/js/features/repo-editor.ts

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
import {htmlEscape} from 'escape-goat';
22
import {createCodeEditor} from './codeeditor.ts';
33
import {hideElem, queryElems, showElem, createElementFromHTML} from '../utils/dom.ts';
4-
import {initMarkupContent} from '../markup/content.ts';
54
import {attachRefIssueContextPopup} from './contextpopup.ts';
65
import {POST} from '../modules/fetch.ts';
76
import {initDropzone} from './dropzone.ts';
@@ -199,7 +198,6 @@ export function initRepoEditor() {
199198
}
200199

201200
export function renderPreviewPanelContent(previewPanel: Element, content: string) {
202-
previewPanel.innerHTML = content;
203-
initMarkupContent();
201+
previewPanel.innerHTML = `<div class="render-content markup">${content}</div>`;
204202
attachRefIssueContextPopup(previewPanel.querySelectorAll('p .ref-issue'));
205203
}

web_src/js/features/repo-issue-edit.ts

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@ import {POST} from '../modules/fetch.ts';
44
import {showErrorToast} from '../modules/toast.ts';
55
import {hideElem, querySingleVisibleElem, showElem, type DOMEvent} from '../utils/dom.ts';
66
import {attachRefIssueContextPopup} from './contextpopup.ts';
7-
import {initCommentContent, initMarkupContent} from '../markup/content.ts';
87
import {triggerUploadStateChanged} from './comp/EditorUpload.ts';
98
import {convertHtmlToMarkdown} from '../markup/html2markdown.ts';
109
import {applyAreYouSure, reinitializeAreYouSure} from '../vendor/jquery.are-you-sure.ts';
@@ -74,8 +73,6 @@ async function tryOnEditContent(e: DOMEvent<MouseEvent>) {
7473
content.querySelector('.dropzone-attachments').outerHTML = data.attachments;
7574
}
7675
comboMarkdownEditor.dropzoneSubmitReload();
77-
initMarkupContent();
78-
initCommentContent();
7976
} catch (error) {
8077
showErrorToast(`Failed to save the content: ${error}`);
8178
console.error(error);

web_src/js/features/repo-wiki.ts

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
import {initMarkupContent} from '../markup/content.ts';
21
import {validateTextareaNonEmpty, initComboMarkdownEditor} from './comp/ComboMarkdownEditor.ts';
32
import {fomanticMobileScreen} from '../modules/fomantic.ts';
43
import {POST} from '../modules/fetch.ts';
@@ -31,8 +30,7 @@ async function initRepoWikiFormEditor() {
3130
const response = await POST(editor.previewUrl, {data: formData});
3231
const data = await response.text();
3332
lastContent = newContent;
34-
previewTarget.innerHTML = `<div class="markup ui segment">${data}</div>`;
35-
initMarkupContent();
33+
previewTarget.innerHTML = `<div class="render-content markup ui segment">${data}</div>`;
3634
} catch (error) {
3735
console.error('Error rendering preview:', error);
3836
} finally {

web_src/js/index.ts

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ import {initNotificationCount, initNotificationsTable} from './features/notifica
1818
import {initRepoIssueContentHistory} from './features/repo-issue-content.ts';
1919
import {initStopwatch} from './features/stopwatch.ts';
2020
import {initFindFileInRepo} from './features/repo-findfile.ts';
21-
import {initCommentContent, initMarkupContent} from './markup/content.ts';
21+
import {initMarkupContent} from './markup/content.ts';
2222
import {initPdfViewer} from './render/pdf.ts';
2323

2424
import {initUserAuthOauth2, initUserCheckAppUrl} from './features/user-auth.ts';
@@ -102,7 +102,6 @@ onDomReady(() => {
102102
initHeadNavbarContentToggle,
103103
initFootLanguageMenu,
104104

105-
initCommentContent,
106105
initContextPopups,
107106
initHeatmap,
108107
initImageDiff,

web_src/js/markup/asciicast.ts

Lines changed: 8 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,16 @@
1-
export async function renderAsciicast() {
2-
const els = document.querySelectorAll('.asciinema-player-container');
3-
if (!els.length) return;
1+
export async function initMarkupRenderAsciicast(elMarkup: HTMLElement): Promise<void> {
2+
const el = elMarkup.querySelector('.asciinema-player-container');
3+
if (!el) return;
44

55
const [player] = await Promise.all([
66
// @ts-expect-error: module exports no types
77
import(/* webpackChunkName: "asciinema-player" */'asciinema-player'),
88
import(/* webpackChunkName: "asciinema-player" */'asciinema-player/dist/bundle/asciinema-player.css'),
99
]);
1010

11-
for (const el of els) {
12-
player.create(el.getAttribute('data-asciinema-player-src'), el, {
13-
// poster (a preview frame) to display until the playback is started.
14-
// Set it to 1 hour (also means the end if the video is shorter) to make the preview frame show more.
15-
poster: 'npt:1:0:0',
16-
});
17-
}
11+
player.create(el.getAttribute('data-asciinema-player-src'), el, {
12+
// poster (a preview frame) to display until the playback is started.
13+
// Set it to 1 hour (also means the end if the video is shorter) to make the preview frame show more.
14+
poster: 'npt:1:0:0',
15+
});
1816
}

web_src/js/markup/codecopy.ts

Lines changed: 7 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -7,15 +7,12 @@ export function makeCodeCopyButton(): HTMLButtonElement {
77
return button;
88
}
99

10-
export function renderCodeCopy(): void {
11-
const els = document.querySelectorAll('.markup .code-block code');
12-
if (!els.length) return;
10+
export function initMarkupCodeCopy(elMarkup: HTMLElement): void {
11+
const el = elMarkup.querySelector('.code-block code'); // .markup .code-block code
12+
if (!el || !el.textContent) return;
1313

14-
for (const el of els) {
15-
if (!el.textContent) continue;
16-
const btn = makeCodeCopyButton();
17-
// remove final trailing newline introduced during HTML rendering
18-
btn.setAttribute('data-clipboard-text', el.textContent.replace(/\r?\n$/, ''));
19-
el.after(btn);
20-
}
14+
const btn = makeCodeCopyButton();
15+
// remove final trailing newline introduced during HTML rendering
16+
btn.setAttribute('data-clipboard-text', el.textContent.replace(/\r?\n$/, ''));
17+
el.after(btn);
2118
}

web_src/js/markup/content.ts

Lines changed: 12 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,17 @@
1-
import {renderMermaid} from './mermaid.ts';
2-
import {renderMath} from './math.ts';
3-
import {renderCodeCopy} from './codecopy.ts';
4-
import {renderAsciicast} from './asciicast.ts';
1+
import {initMarkupCodeMermaid} from './mermaid.ts';
2+
import {initMarkupCodeMath} from './math.ts';
3+
import {initMarkupCodeCopy} from './codecopy.ts';
4+
import {initMarkupRenderAsciicast} from './asciicast.ts';
55
import {initMarkupTasklist} from './tasklist.ts';
6+
import {registerGlobalSelectorFunc} from '../modules/observer.ts';
67

78
// code that runs for all markup content
89
export function initMarkupContent(): void {
9-
renderMermaid();
10-
renderMath();
11-
renderCodeCopy();
12-
renderAsciicast();
13-
}
14-
15-
// code that only runs for comments
16-
export function initCommentContent(): void {
17-
initMarkupTasklist();
10+
registerGlobalSelectorFunc('.markup', (el: HTMLElement) => {
11+
initMarkupCodeCopy(el);
12+
initMarkupTasklist(el);
13+
initMarkupCodeMermaid(el);
14+
initMarkupCodeMath(el);
15+
initMarkupRenderAsciicast(el);
16+
});
1817
}

0 commit comments

Comments
 (0)