mirror of
				https://codeberg.org/forgejo/forgejo.git
				synced 2025-10-30 22:11:07 +00:00 
			
		
		
		
	- Prefer [window.location.assign](https://developer.mozilla.org/en-US/docs/Web/API/Location/assign) over assigning to [window.location](https://developer.mozilla.org/en-US/docs/Web/API/Window/location) which typescript does not like. This works in all browsers including PaleMoon. - Fix all typescript issues in `web_src/js/webcomponents`, no behaviour changes. - ~~Workaround bug in `@typescript-eslint/no-unnecessary-type-assertion` rule.~~ - Omit vendored file from type checks. - `tsc` error count is reduce by 53 with these changes. --- Conflict resolution: Choose our version. Done differently: Everything related to typescript types isn't ported. Use `window.location.href` instead of `String(window.location)`, thanks @viceice! (cherry picked from commit 810782302652d73c4f7249c4c3df8a7e85bae5f0)
		
			
				
	
	
		
			17 lines
		
	
	
	
		
			900 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			17 lines
		
	
	
	
		
			900 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
| import {toOriginUrl} from './origin-url.js';
 | |
| 
 | |
| test('toOriginUrl', () => {
 | |
|   const oldLocation = window.location.href;
 | |
|   for (const origin of ['https://example.com', 'https://example.com:3000']) {
 | |
|     window.location.assign(`${origin}/`);
 | |
|     expect(toOriginUrl('/')).toEqual(`${origin}/`);
 | |
|     expect(toOriginUrl('/org/repo.git')).toEqual(`${origin}/org/repo.git`);
 | |
|     expect(toOriginUrl('https://another.com')).toEqual(`${origin}/`);
 | |
|     expect(toOriginUrl('https://another.com/')).toEqual(`${origin}/`);
 | |
|     expect(toOriginUrl('https://another.com/org/repo.git')).toEqual(`${origin}/org/repo.git`);
 | |
|     expect(toOriginUrl('https://another.com:4000')).toEqual(`${origin}/`);
 | |
|     expect(toOriginUrl('https://another.com:4000/')).toEqual(`${origin}/`);
 | |
|     expect(toOriginUrl('https://another.com:4000/org/repo.git')).toEqual(`${origin}/org/repo.git`);
 | |
|   }
 | |
|   window.location.assign(oldLocation);
 | |
| });
 |