gitea源码

repo-search.ts 807B

1234567891011121314151617181920212223242526
  1. import type {DOMEvent} from '../utils/dom.ts';
  2. export function initRepositorySearch() {
  3. const repositorySearchForm = document.querySelector<HTMLFormElement>('#repo-search-form');
  4. if (!repositorySearchForm) return;
  5. repositorySearchForm.addEventListener('change', (e: DOMEvent<Event, HTMLInputElement>) => {
  6. e.preventDefault();
  7. const params = new URLSearchParams();
  8. for (const [key, value] of new FormData(repositorySearchForm).entries()) {
  9. params.set(key, value.toString());
  10. }
  11. if (e.target.name === 'clear-filter') {
  12. params.delete('archived');
  13. params.delete('fork');
  14. params.delete('mirror');
  15. params.delete('template');
  16. params.delete('private');
  17. }
  18. params.delete('clear-filter');
  19. window.location.search = params.toString();
  20. });
  21. }