@ -94,110 +94,138 @@ import {
import { initGlobalDropzone } from './features/dropzone.js' ;
import { initGlobalDropzone } from './features/dropzone.js' ;
import { initGlobalEnterQuickSubmit , initGlobalFormDirtyLeaveConfirm } from './features/common-form.js' ;
import { initGlobalEnterQuickSubmit , initGlobalFormDirtyLeaveConfirm } from './features/common-form.js' ;
// Init Gitea's Fomantic settings
initGiteaFomantic ( ) ;
initGiteaFomantic ( ) ;
initDirAuto ( ) ;
initDirAuto ( ) ;
initSubmitEventPolyfill ( ) ;
initSubmitEventPolyfill ( ) ;
function callInitFunctions ( functions ) {
// Start performance trace by accessing a URL by "https://localhost/?_ui_performance_trace=1" or "https://localhost/?key=value&_ui_performance_trace=1"
// It is a quick check, no side effect so no need to do slow URL parsing.
const initStart = performance . now ( ) ;
if ( window . location . search . includes ( '_ui_performance_trace=1' ) ) {
let results = [ ] ;
for ( const func of functions ) {
const start = performance . now ( ) ;
func ( ) ;
results . push ( { name : func . name , dur : performance . now ( ) - start } ) ;
}
results = results . sort ( ( a , b ) => b . dur - a . dur ) ;
for ( let i = 0 ; i < 20 && i < results . length ; i ++ ) {
// eslint-disable-next-line no-console
console . log ( ` performance trace: ${ results [ i ] . name } ${ results [ i ] . dur . toFixed ( 3 ) } ` ) ;
}
} else {
for ( const func of functions ) {
func ( ) ;
}
}
const initDur = performance . now ( ) - initStart ;
if ( initDur > 500 ) {
console . error ( ` slow init functions took ${ initDur . toFixed ( 3 ) } ms ` ) ;
}
}
onDomReady ( ( ) => {
onDomReady ( ( ) => {
initGlobalDropdown ( ) ;
callInitFunctions ( [
initGlobalTabularMenu ( ) ;
initGlobalDropdown ,
initGlobalShowModal ( ) ;
initGlobalTabularMenu ,
initGlobalFetchAction ( ) ;
initGlobalShowModal ,
initGlobalTooltips ( ) ;
initGlobalFetchAction ,
initGlobalButtonClickOnEnter ( ) ;
initGlobalTooltips ,
initGlobalButtons ( ) ;
initGlobalButtonClickOnEnter ,
initGlobalCopyToClipboardListener ( ) ;
initGlobalButtons ,
initGlobalDropzone ( ) ;
initGlobalCopyToClipboardListener ,
initGlobalEnterQuickSubmit ( ) ;
initGlobalDropzone ,
initGlobalFormDirtyLeaveConfirm ( ) ;
initGlobalEnterQuickSubmit ,
initGlobalDeleteButton ( ) ;
initGlobalFormDirtyLeaveConfirm ,
initGlobalDeleteButton ,
initCommonOrganization ( ) ;
initCommonIssueListQuickGoto ( ) ;
initCommonOrganization ,
initCommonIssueListQuickGoto ,
initCompSearchUserBox ( ) ;
initCompWebHookEditor ( ) ;
initCompSearchUserBox ,
initCompWebHookEditor ,
initInstall ( ) ;
initInstall ,
initHeadNavbarContentToggle ( ) ;
initFootLanguageMenu ( ) ;
initHeadNavbarContentToggle ,
initFootLanguageMenu ,
initCommentContent ( ) ;
initContextPopups ( ) ;
initCommentContent ,
initHeatmap ( ) ;
initContextPopups ,
initImageDiff ( ) ;
initHeatmap ,
initMarkupAnchors ( ) ;
initImageDiff ,
initMarkupContent ( ) ;
initMarkupAnchors ,
initSshKeyFormParser ( ) ;
initMarkupContent ,
initStopwatch ( ) ;
initSshKeyFormParser ,
initTableSort ( ) ;
initStopwatch ,
initAutoFocusEnd ( ) ;
initTableSort ,
initFindFileInRepo ( ) ;
initAutoFocusEnd ,
initCopyContent ( ) ;
initFindFileInRepo ,
initCopyContent ,
initAdminCommon ( ) ;
initAdminEmails ( ) ;
initAdminCommon ,
initAdminUserListSearchForm ( ) ;
initAdminEmails ,
initAdminConfigs ( ) ;
initAdminUserListSearchForm ,
initAdminSelfCheck ( ) ;
initAdminConfigs ,
initAdminSelfCheck ,
initDashboardRepoList ( ) ;
initDashboardRepoList ,
initNotificationCount ( ) ;
initNotificationsTable ( ) ;
initNotificationCount ,
initNotificationsTable ,
initOrgTeamSearchRepoBox ( ) ;
initOrgTeamSettings ( ) ;
initOrgTeamSearchRepoBox ,
initOrgTeamSettings ,
initRepoActivityTopAuthorsChart ( ) ;
initRepoArchiveLinks ( ) ;
initRepoActivityTopAuthorsChart ,
initRepoBranchButton ( ) ;
initRepoArchiveLinks ,
initRepoCodeView ( ) ;
initRepoBranchButton ,
initRepoCommentForm ( ) ;
initRepoCodeView ,
initRepoEllipsisButton ( ) ;
initRepoCommentForm ,
initRepoDiffCommitBranchesAndTags ( ) ;
initRepoEllipsisButton ,
initRepoEditor ( ) ;
initRepoDiffCommitBranchesAndTags ,
initRepoGraphGit ( ) ;
initRepoEditor ,
initRepoIssueContentHistory ( ) ;
initRepoGraphGit ,
initRepoIssueDue ( ) ;
initRepoIssueContentHistory ,
initRepoIssueList ( ) ;
initRepoIssueDue ,
initRepoIssueSidebarList ( ) ;
initRepoIssueList ,
initArchivedLabelHandler ( ) ;
initRepoIssueSidebarList ,
initRepoIssueReferenceRepositorySearch ( ) ;
initArchivedLabelHandler ,
initRepoIssueTimeTracking ( ) ;
initRepoIssueReferenceRepositorySearch ,
initRepoIssueWipTitle ( ) ;
initRepoIssueTimeTracking ,
initRepoMigration ( ) ;
initRepoIssueWipTitle ,
initRepoMigrationStatusChecker ( ) ;
initRepoMigration ,
initRepoProject ( ) ;
initRepoMigrationStatusChecker ,
initRepoPullRequestMergeInstruction ( ) ;
initRepoProject ,
initRepoPullRequestAllowMaintainerEdit ( ) ;
initRepoPullRequestMergeInstruction ,
initRepoPullRequestReview ( ) ;
initRepoPullRequestAllowMaintainerEdit ,
initRepoRelease ( ) ;
initRepoPullRequestReview ,
initRepoReleaseNew ( ) ;
initRepoRelease ,
initRepoSettingGitHook ( ) ;
initRepoReleaseNew ,
initRepoSettingSearchTeamBox ( ) ;
initRepoSettingGitHook ,
initRepoSettingsCollaboration ( ) ;
initRepoSettingSearchTeamBox ,
initRepoTemplateSearch ( ) ;
initRepoSettingsCollaboration ,
initRepoTopicBar ( ) ;
initRepoTemplateSearch ,
initRepoWikiForm ( ) ;
initRepoTopicBar ,
initRepository ( ) ;
initRepoWikiForm ,
initRepositoryActionView ( ) ;
initRepository ,
initRepositorySearch ( ) ;
initRepositoryActionView ,
initRepoContributors ( ) ;
initRepositorySearch ,
initRepoCodeFrequency ( ) ;
initRepoContributors ,
initRepoRecentCommits ( ) ;
initRepoCodeFrequency ,
initRepoRecentCommits ,
initCommitStatuses ( ) ;
initCaptcha ( ) ;
initCommitStatuses ,
initCaptcha ,
initUserAuthOauth2 ( ) ;
initUserAuthWebAuthn ( ) ;
initUserAuthOauth2 ,
initUserAuthWebAuthnRegister ( ) ;
initUserAuthWebAuthn ,
initUserSettings ( ) ;
initUserAuthWebAuthnRegister ,
initRepoDiffView ( ) ;
initUserSettings ,
initPdfViewer ( ) ;
initRepoDiffView ,
initScopedAccessTokenCategories ( ) ;
initPdfViewer ,
initColorPickers ( ) ;
initScopedAccessTokenCategories ,
initColorPickers ,
] ) ;
} ) ;
} ) ;