Skip to content

Commit b6d925e

Browse files
committed
fix
1 parent 70685a9 commit b6d925e

File tree

5 files changed

+183
-187
lines changed

5 files changed

+183
-187
lines changed

templates/base/footer.tmpl

Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -5,16 +5,10 @@
55
<div>
66
{{end}}
77

8-
{{template "custom/body_inner_post" .}}
9-
8+
{{template "custom/body_inner_post" .}}
109
</div>
11-
1210
{{template "custom/body_outer_post" .}}
13-
1411
{{template "base/footer_content" .}}
15-
16-
<script src="{{AssetUrlPrefix}}/js/index.js?v={{AssetVersion}}" onerror="alert('Failed to load asset files from ' + this.src + '. Please make sure the asset files can be accessed.')"></script>
17-
1812
{{template "custom/footer" .}}
1913
</body>
2014
</html>

templates/base/head_script.tmpl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
If you are customizing Gitea, please do not change this file.
33
If you introduce mistakes in it, Gitea JavaScript code wouldn't run correctly.
44
*/}}
5+
<script src="{{AssetUrlPrefix}}/js/index.js?v={{AssetVersion}}" onerror="alert('Failed to load asset files from ' + this.src + '. Please make sure the asset files can be accessed.')"></script>
56
<script>
67
{{/* before our JS code gets loaded, use arrays to store errors, then the arrays will be switched to our error handler later */}}
78
window.addEventListener('error', function(e) {window._globalHandlerErrors=window._globalHandlerErrors||[]; window._globalHandlerErrors.push(e);});
@@ -46,4 +47,3 @@ If you introduce mistakes in it, Gitea JavaScript code wouldn't run correctly.
4647
{{/* in case some pages don't render the pageData, we make sure it is an object to prevent null access */}}
4748
window.config.pageData = window.config.pageData || {};
4849
</script>
49-
<script src="{{AssetUrlPrefix}}/js/webcomponents.js?v={{AssetVersion}}"></script>

web_src/js/index-domready.ts

Lines changed: 177 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,177 @@
1+
import './globals.ts';
2+
import './htmx.ts';
3+
import '../fomantic/build/fomantic.js';
4+
5+
import '../../node_modules/easymde/dist/easymde.min.css'; // TODO: lazy load in "switchToEasyMDE"
6+
7+
import {initDashboardRepoList} from './features/dashboard.ts';
8+
import {initGlobalCopyToClipboardListener} from './features/clipboard.ts';
9+
import {initContextPopups} from './features/contextpopup.ts';
10+
import {initRepoGraphGit} from './features/repo-graph.ts';
11+
import {initHeatmap} from './features/heatmap.ts';
12+
import {initImageDiff} from './features/imagediff.ts';
13+
import {initRepoMigration} from './features/repo-migration.ts';
14+
import {initRepoProject} from './features/repo-projects.ts';
15+
import {initTableSort} from './features/tablesort.ts';
16+
import {initAdminUserListSearchForm} from './features/admin/users.ts';
17+
import {initAdminConfigs} from './features/admin/config.ts';
18+
import {initMarkupAnchors} from './markup/anchors.ts';
19+
import {initNotificationCount, initNotificationsTable} from './features/notification.ts';
20+
import {initRepoIssueContentHistory} from './features/repo-issue-content.ts';
21+
import {initStopwatch} from './features/stopwatch.ts';
22+
import {initFindFileInRepo} from './features/repo-findfile.ts';
23+
import {initMarkupContent} from './markup/content.ts';
24+
import {initRepoFileView} from './features/file-view.ts';
25+
import {initUserAuthOauth2, initUserCheckAppUrl} from './features/user-auth.ts';
26+
import {initRepoPullRequestAllowMaintainerEdit, initRepoPullRequestReview, initRepoIssueSidebarDependency, initRepoIssueFilterItemLabel} from './features/repo-issue.ts';
27+
import {initRepoEllipsisButton, initCommitStatuses} from './features/repo-commit.ts';
28+
import {initRepoTopicBar} from './features/repo-home.ts';
29+
import {initAdminCommon} from './features/admin/common.ts';
30+
import {initRepoCodeView} from './features/repo-code.ts';
31+
import {initSshKeyFormParser} from './features/sshkey-helper.ts';
32+
import {initUserSettings} from './features/user-settings.ts';
33+
import {initRepoActivityTopAuthorsChart, initRepoArchiveLinks} from './features/repo-common.ts';
34+
import {initRepoMigrationStatusChecker} from './features/repo-migrate.ts';
35+
import {initRepoDiffView} from './features/repo-diff.ts';
36+
import {initOrgTeam} from './features/org-team.ts';
37+
import {initUserAuthWebAuthn, initUserAuthWebAuthnRegister} from './features/user-auth-webauthn.ts';
38+
import {initRepoRelease, initRepoReleaseNew} from './features/repo-release.ts';
39+
import {initRepoEditor} from './features/repo-editor.ts';
40+
import {initCompSearchUserBox} from './features/comp/SearchUserBox.ts';
41+
import {initInstall} from './features/install.ts';
42+
import {initCompWebHookEditor} from './features/comp/WebHookEditor.ts';
43+
import {initRepoBranchButton} from './features/repo-branch.ts';
44+
import {initCommonOrganization} from './features/common-organization.ts';
45+
import {initRepoWikiForm} from './features/repo-wiki.ts';
46+
import {initRepository, initBranchSelectorTabs} from './features/repo-legacy.ts';
47+
import {initCopyContent} from './features/copycontent.ts';
48+
import {initCaptcha} from './features/captcha.ts';
49+
import {initRepositoryActionView} from './features/repo-actions.ts';
50+
import {initGlobalTooltips} from './modules/tippy.ts';
51+
import {initGiteaFomantic} from './modules/fomantic.ts';
52+
import {initSubmitEventPolyfill} from './utils/dom.ts';
53+
import {initRepoIssueList} from './features/repo-issue-list.ts';
54+
import {initCommonIssueListQuickGoto} from './features/common-issue-list.ts';
55+
import {initRepoContributors} from './features/contributors.ts';
56+
import {initRepoCodeFrequency} from './features/code-frequency.ts';
57+
import {initRepoRecentCommits} from './features/recent-commits.ts';
58+
import {initRepoDiffCommitBranchesAndTags} from './features/repo-diff-commit.ts';
59+
import {initGlobalSelectorObserver} from './modules/observer.ts';
60+
import {initRepositorySearch} from './features/repo-search.ts';
61+
import {initColorPickers} from './features/colorpicker.ts';
62+
import {initAdminSelfCheck} from './features/admin/selfcheck.ts';
63+
import {initOAuth2SettingsDisableCheckbox} from './features/oauth2-settings.ts';
64+
import {initGlobalFetchAction} from './features/common-fetch-action.ts';
65+
import {initFootLanguageMenu, initGlobalAvatarUploader, initGlobalDropdown, initGlobalInput, initGlobalTabularMenu, initHeadNavbarContentToggle} from './features/common-page.ts';
66+
import {initGlobalButtonClickOnEnter, initGlobalButtons, initGlobalDeleteButton} from './features/common-button.ts';
67+
import {initGlobalComboMarkdownEditor, initGlobalEnterQuickSubmit, initGlobalFormDirtyLeaveConfirm} from './features/common-form.ts';
68+
import {callInitFunctions} from './modules/init.ts';
69+
import {initRepoViewFileTree} from './features/repo-view-file-tree.ts';
70+
71+
initGiteaFomantic();
72+
initSubmitEventPolyfill();
73+
74+
const initStartTime = performance.now();
75+
const initPerformanceTracer = callInitFunctions([
76+
initGlobalAvatarUploader,
77+
initGlobalDropdown,
78+
initGlobalTabularMenu,
79+
initGlobalFetchAction,
80+
initGlobalTooltips,
81+
initGlobalButtonClickOnEnter,
82+
initGlobalButtons,
83+
initGlobalCopyToClipboardListener,
84+
initGlobalEnterQuickSubmit,
85+
initGlobalFormDirtyLeaveConfirm,
86+
initGlobalComboMarkdownEditor,
87+
initGlobalDeleteButton,
88+
initGlobalInput,
89+
90+
initCommonOrganization,
91+
initCommonIssueListQuickGoto,
92+
93+
initCompSearchUserBox,
94+
initCompWebHookEditor,
95+
96+
initInstall,
97+
98+
initHeadNavbarContentToggle,
99+
initFootLanguageMenu,
100+
101+
initContextPopups,
102+
initHeatmap,
103+
initImageDiff,
104+
initMarkupAnchors,
105+
initMarkupContent,
106+
initSshKeyFormParser,
107+
initStopwatch,
108+
initTableSort,
109+
initFindFileInRepo,
110+
initCopyContent,
111+
112+
initAdminCommon,
113+
initAdminUserListSearchForm,
114+
initAdminConfigs,
115+
initAdminSelfCheck,
116+
117+
initDashboardRepoList,
118+
119+
initNotificationCount,
120+
initNotificationsTable,
121+
122+
initOrgTeam,
123+
124+
initRepoActivityTopAuthorsChart,
125+
initRepoArchiveLinks,
126+
initRepoBranchButton,
127+
initRepoCodeView,
128+
initBranchSelectorTabs,
129+
initRepoEllipsisButton,
130+
initRepoDiffCommitBranchesAndTags,
131+
initRepoEditor,
132+
initRepoGraphGit,
133+
initRepoIssueContentHistory,
134+
initRepoIssueList,
135+
initRepoIssueFilterItemLabel,
136+
initRepoIssueSidebarDependency,
137+
initRepoMigration,
138+
initRepoMigrationStatusChecker,
139+
initRepoProject,
140+
initRepoPullRequestAllowMaintainerEdit,
141+
initRepoPullRequestReview,
142+
initRepoRelease,
143+
initRepoReleaseNew,
144+
initRepoTopicBar,
145+
initRepoViewFileTree,
146+
initRepoWikiForm,
147+
initRepository,
148+
initRepositoryActionView,
149+
initRepositorySearch,
150+
initRepoContributors,
151+
initRepoCodeFrequency,
152+
initRepoRecentCommits,
153+
154+
initCommitStatuses,
155+
initCaptcha,
156+
157+
initUserCheckAppUrl,
158+
initUserAuthOauth2,
159+
initUserAuthWebAuthn,
160+
initUserAuthWebAuthnRegister,
161+
initUserSettings,
162+
initRepoDiffView,
163+
initColorPickers,
164+
165+
initOAuth2SettingsDisableCheckbox,
166+
167+
initRepoFileView,
168+
]);
169+
170+
// it must be the last one, then the "querySelectorAll" only needs to be executed once for global init functions.
171+
initGlobalSelectorObserver(initPerformanceTracer);
172+
if (initPerformanceTracer) initPerformanceTracer.printResults();
173+
174+
const initDur = performance.now() - initStartTime;
175+
if (initDur > 500) {
176+
console.error(`slow init functions took ${initDur.toFixed(3)}ms`);
177+
}

web_src/js/index.ts

Lines changed: 4 additions & 173 deletions
Original file line numberDiff line numberDiff line change
@@ -1,177 +1,8 @@
11
// bootstrap module must be the first one to be imported, it handles webpack lazy-loading and global errors
22
import './bootstrap.ts';
3-
import './htmx.ts';
3+
import './webcomponents/index.ts';
4+
import {onDomReady} from './utils/dom.ts';
45

5-
import {initDashboardRepoList} from './features/dashboard.ts';
6-
import {initGlobalCopyToClipboardListener} from './features/clipboard.ts';
7-
import {initContextPopups} from './features/contextpopup.ts';
8-
import {initRepoGraphGit} from './features/repo-graph.ts';
9-
import {initHeatmap} from './features/heatmap.ts';
10-
import {initImageDiff} from './features/imagediff.ts';
11-
import {initRepoMigration} from './features/repo-migration.ts';
12-
import {initRepoProject} from './features/repo-projects.ts';
13-
import {initTableSort} from './features/tablesort.ts';
14-
import {initAdminUserListSearchForm} from './features/admin/users.ts';
15-
import {initAdminConfigs} from './features/admin/config.ts';
16-
import {initMarkupAnchors} from './markup/anchors.ts';
17-
import {initNotificationCount, initNotificationsTable} from './features/notification.ts';
18-
import {initRepoIssueContentHistory} from './features/repo-issue-content.ts';
19-
import {initStopwatch} from './features/stopwatch.ts';
20-
import {initFindFileInRepo} from './features/repo-findfile.ts';
21-
import {initMarkupContent} from './markup/content.ts';
22-
import {initRepoFileView} from './features/file-view.ts';
23-
import {initUserAuthOauth2, initUserCheckAppUrl} from './features/user-auth.ts';
24-
import {initRepoPullRequestAllowMaintainerEdit, initRepoPullRequestReview, initRepoIssueSidebarDependency, initRepoIssueFilterItemLabel} from './features/repo-issue.ts';
25-
import {initRepoEllipsisButton, initCommitStatuses} from './features/repo-commit.ts';
26-
import {initRepoTopicBar} from './features/repo-home.ts';
27-
import {initAdminCommon} from './features/admin/common.ts';
28-
import {initRepoCodeView} from './features/repo-code.ts';
29-
import {initSshKeyFormParser} from './features/sshkey-helper.ts';
30-
import {initUserSettings} from './features/user-settings.ts';
31-
import {initRepoActivityTopAuthorsChart, initRepoArchiveLinks} from './features/repo-common.ts';
32-
import {initRepoMigrationStatusChecker} from './features/repo-migrate.ts';
33-
import {initRepoDiffView} from './features/repo-diff.ts';
34-
import {initOrgTeam} from './features/org-team.ts';
35-
import {initUserAuthWebAuthn, initUserAuthWebAuthnRegister} from './features/user-auth-webauthn.ts';
36-
import {initRepoRelease, initRepoReleaseNew} from './features/repo-release.ts';
37-
import {initRepoEditor} from './features/repo-editor.ts';
38-
import {initCompSearchUserBox} from './features/comp/SearchUserBox.ts';
39-
import {initInstall} from './features/install.ts';
40-
import {initCompWebHookEditor} from './features/comp/WebHookEditor.ts';
41-
import {initRepoBranchButton} from './features/repo-branch.ts';
42-
import {initCommonOrganization} from './features/common-organization.ts';
43-
import {initRepoWikiForm} from './features/repo-wiki.ts';
44-
import {initRepository, initBranchSelectorTabs} from './features/repo-legacy.ts';
45-
import {initCopyContent} from './features/copycontent.ts';
46-
import {initCaptcha} from './features/captcha.ts';
47-
import {initRepositoryActionView} from './features/repo-actions.ts';
48-
import {initGlobalTooltips} from './modules/tippy.ts';
49-
import {initGiteaFomantic} from './modules/fomantic.ts';
50-
import {initSubmitEventPolyfill, onDomReady} from './utils/dom.ts';
51-
import {initRepoIssueList} from './features/repo-issue-list.ts';
52-
import {initCommonIssueListQuickGoto} from './features/common-issue-list.ts';
53-
import {initRepoContributors} from './features/contributors.ts';
54-
import {initRepoCodeFrequency} from './features/code-frequency.ts';
55-
import {initRepoRecentCommits} from './features/recent-commits.ts';
56-
import {initRepoDiffCommitBranchesAndTags} from './features/repo-diff-commit.ts';
57-
import {initGlobalSelectorObserver} from './modules/observer.ts';
58-
import {initRepositorySearch} from './features/repo-search.ts';
59-
import {initColorPickers} from './features/colorpicker.ts';
60-
import {initAdminSelfCheck} from './features/admin/selfcheck.ts';
61-
import {initOAuth2SettingsDisableCheckbox} from './features/oauth2-settings.ts';
62-
import {initGlobalFetchAction} from './features/common-fetch-action.ts';
63-
import {initFootLanguageMenu, initGlobalAvatarUploader, initGlobalDropdown, initGlobalInput, initGlobalTabularMenu, initHeadNavbarContentToggle} from './features/common-page.ts';
64-
import {initGlobalButtonClickOnEnter, initGlobalButtons, initGlobalDeleteButton} from './features/common-button.ts';
65-
import {initGlobalComboMarkdownEditor, initGlobalEnterQuickSubmit, initGlobalFormDirtyLeaveConfirm} from './features/common-form.ts';
66-
import {callInitFunctions} from './modules/init.ts';
67-
import {initRepoViewFileTree} from './features/repo-view-file-tree.ts';
68-
69-
initGiteaFomantic();
70-
initSubmitEventPolyfill();
71-
72-
onDomReady(() => {
73-
const initStartTime = performance.now();
74-
const initPerformanceTracer = callInitFunctions([
75-
initGlobalAvatarUploader,
76-
initGlobalDropdown,
77-
initGlobalTabularMenu,
78-
initGlobalFetchAction,
79-
initGlobalTooltips,
80-
initGlobalButtonClickOnEnter,
81-
initGlobalButtons,
82-
initGlobalCopyToClipboardListener,
83-
initGlobalEnterQuickSubmit,
84-
initGlobalFormDirtyLeaveConfirm,
85-
initGlobalComboMarkdownEditor,
86-
initGlobalDeleteButton,
87-
initGlobalInput,
88-
89-
initCommonOrganization,
90-
initCommonIssueListQuickGoto,
91-
92-
initCompSearchUserBox,
93-
initCompWebHookEditor,
94-
95-
initInstall,
96-
97-
initHeadNavbarContentToggle,
98-
initFootLanguageMenu,
99-
100-
initContextPopups,
101-
initHeatmap,
102-
initImageDiff,
103-
initMarkupAnchors,
104-
initMarkupContent,
105-
initSshKeyFormParser,
106-
initStopwatch,
107-
initTableSort,
108-
initFindFileInRepo,
109-
initCopyContent,
110-
111-
initAdminCommon,
112-
initAdminUserListSearchForm,
113-
initAdminConfigs,
114-
initAdminSelfCheck,
115-
116-
initDashboardRepoList,
117-
118-
initNotificationCount,
119-
initNotificationsTable,
120-
121-
initOrgTeam,
122-
123-
initRepoActivityTopAuthorsChart,
124-
initRepoArchiveLinks,
125-
initRepoBranchButton,
126-
initRepoCodeView,
127-
initBranchSelectorTabs,
128-
initRepoEllipsisButton,
129-
initRepoDiffCommitBranchesAndTags,
130-
initRepoEditor,
131-
initRepoGraphGit,
132-
initRepoIssueContentHistory,
133-
initRepoIssueList,
134-
initRepoIssueFilterItemLabel,
135-
initRepoIssueSidebarDependency,
136-
initRepoMigration,
137-
initRepoMigrationStatusChecker,
138-
initRepoProject,
139-
initRepoPullRequestAllowMaintainerEdit,
140-
initRepoPullRequestReview,
141-
initRepoRelease,
142-
initRepoReleaseNew,
143-
initRepoTopicBar,
144-
initRepoViewFileTree,
145-
initRepoWikiForm,
146-
initRepository,
147-
initRepositoryActionView,
148-
initRepositorySearch,
149-
initRepoContributors,
150-
initRepoCodeFrequency,
151-
initRepoRecentCommits,
152-
153-
initCommitStatuses,
154-
initCaptcha,
155-
156-
initUserCheckAppUrl,
157-
initUserAuthOauth2,
158-
initUserAuthWebAuthn,
159-
initUserAuthWebAuthnRegister,
160-
initUserSettings,
161-
initRepoDiffView,
162-
initColorPickers,
163-
164-
initOAuth2SettingsDisableCheckbox,
165-
166-
initRepoFileView,
167-
]);
168-
169-
// it must be the last one, then the "querySelectorAll" only needs to be executed once for global init functions.
170-
initGlobalSelectorObserver(initPerformanceTracer);
171-
if (initPerformanceTracer) initPerformanceTracer.printResults();
172-
173-
const initDur = performance.now() - initStartTime;
174-
if (initDur > 500) {
175-
console.error(`slow init functions took ${initDur.toFixed(3)}ms`);
176-
}
6+
onDomReady(async () => {
7+
await import(/* webpackChunkName: "index-domready" */'./index-domready.ts');
1778
});

0 commit comments

Comments
 (0)