1. Add `<overflow-menu>` web component 2. Rename `<gitea-origin-url>` to `<origin-url>` and make filenames match. <img width="439" alt="image" src="https://github.com/go-gitea/gitea/assets/115237/2fbe4ca4-110b-4ad2-8e17-c1e116ccbd74"> <img width="444" alt="Screenshot 2024-03-02 at 21 36 52" src="https://github.com/go-gitea/gitea/assets/115237/aa8f786e-dc8c-4030-b12d-7cfb74bdfd6e"> <img width="537" alt="Screenshot 2024-03-03 at 03 05 06" src="https://github.com/go-gitea/gitea/assets/115237/fddd50aa-adf1-4b4b-bd7f-caf30c7b2245">   TODO: - [x] Check if removal of `requestAnimationFrame` is possible to avoid flash of content. Likely needs a `MutationObserver`. - [x] Hide tippy when button is removed from DOM. - [x] ~~Implement right-aligned items (https://github.com/go-gitea/gitea/pull/28976)~~. Not going to do it. - [x] Clean up CSS so base element has no background and add background via tailwind instead. - [x] Use it for org and user page. --------- Co-authored-by: Giteabot <teabot@gitea.io> Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
		
			
				
	
	
		
			51 lines
		
	
	
		
			2.8 KiB
		
	
	
	
		
			Handlebars
		
	
	
	
	
	
			
		
		
	
	
			51 lines
		
	
	
		
			2.8 KiB
		
	
	
	
		
			Handlebars
		
	
	
	
	
	
| {{/*
 | |
| ==== DO NOT EDIT ====
 | |
| If you are customizing Gitea, please do not change this file.
 | |
| If you introduce mistakes in it, Gitea JavaScript code wouldn't run correctly.
 | |
| */}}
 | |
| <script>
 | |
| 	{{/* before our JS code gets loaded, use arrays to store errors, then the arrays will be switched to our error handler later */}}
 | |
| 	window.addEventListener('error', function(e) {window._globalHandlerErrors=window._globalHandlerErrors||[]; window._globalHandlerErrors.push(e);});
 | |
| 	window.addEventListener('unhandledrejection', function(e) {window._globalHandlerErrors=window._globalHandlerErrors||[]; window._globalHandlerErrors.push(e);});
 | |
| 	window.config = {
 | |
| 		appUrl: '{{AppUrl}}',
 | |
| 		appSubUrl: '{{AppSubUrl}}',
 | |
| 		assetVersionEncoded: encodeURIComponent('{{AssetVersion}}'), // will be used in URL construction directly
 | |
| 		assetUrlPrefix: '{{AssetUrlPrefix}}',
 | |
| 		runModeIsProd: {{.RunModeIsProd}},
 | |
| 		customEmojis: {{CustomEmojis}},
 | |
| 		csrfToken: '{{.CsrfToken}}',
 | |
| 		pageData: {{.PageData}},
 | |
| 		notificationSettings: {{NotificationSettings}}, {{/*a map provided by NewFuncMap in helper.go*/}}
 | |
| 		enableTimeTracking: {{EnableTimetracking}},
 | |
| 		{{if or .Participants .Assignees .MentionableTeams}}
 | |
| 		mentionValues: Array.from(new Map([
 | |
| 			{{- range .Participants -}}
 | |
| 				['{{.Name}}', {key: '{{.Name}} {{.FullName}}', value: '{{.Name}}', name: '{{.Name}}', fullname: '{{.FullName}}', avatar: '{{.AvatarLink $.Context}}'}],
 | |
| 			{{- end -}}
 | |
| 			{{- range .Assignees -}}
 | |
| 				['{{.Name}}', {key: '{{.Name}} {{.FullName}}', value: '{{.Name}}', name: '{{.Name}}', fullname: '{{.FullName}}', avatar: '{{.AvatarLink $.Context}}'}],
 | |
| 			{{- end -}}
 | |
| 			{{- range .MentionableTeams -}}
 | |
| 				['{{$.MentionableTeamsOrg}}/{{.Name}}', {key: '{{$.MentionableTeamsOrg}}/{{.Name}}', value: '{{$.MentionableTeamsOrg}}/{{.Name}}', name: '{{$.MentionableTeamsOrg}}/{{.Name}}', avatar: '{{$.MentionableTeamsOrgAvatar}}'}],
 | |
| 			{{- end -}}
 | |
| 		]).values()),
 | |
| 		{{end}}
 | |
| 		mermaidMaxSourceCharacters: {{MermaidMaxSourceCharacters}},
 | |
| 		{{/* this global i18n object should only contain general texts. for specialized texts, it should be provided inside the related modules by: (1) API response (2) HTML data-attribute (3) PageData */}}
 | |
| 		i18n: {
 | |
| 			copy_success: {{ctx.Locale.Tr "copy_success"}},
 | |
| 			copy_error: {{ctx.Locale.Tr "copy_error"}},
 | |
| 			error_occurred: {{ctx.Locale.Tr "error.occurred"}},
 | |
| 			network_error: {{ctx.Locale.Tr "error.network_error"}},
 | |
| 			remove_label_str: {{ctx.Locale.Tr "remove_label_str"}},
 | |
| 			modal_confirm: {{ctx.Locale.Tr "modal.confirm"}},
 | |
| 			modal_cancel: {{ctx.Locale.Tr "modal.cancel"}},
 | |
| 			more_items: {{ctx.Locale.Tr "more_items"}},
 | |
| 		},
 | |
| 	};
 | |
| 	{{/* in case some pages don't render the pageData, we make sure it is an object to prevent null access */}}
 | |
| 	window.config.pageData = window.config.pageData || {};
 | |
| </script>
 | |
| <script src="{{AssetUrlPrefix}}/js/webcomponents.js?v={{AssetVersion}}"></script>
 |