()
| 552 | } |
| 553 | |
| 554 | async function loadSourceOptions() { |
| 555 | if (state.sourceOptionsLoaded) return; |
| 556 | const data = await api("/api/source-options"); |
| 557 | renderChoiceList("arxivCategories", data.arxiv_categories || [], "arxiv"); |
| 558 | renderChoiceList("conferenceSources", data.conferences || [], "conference"); |
| 559 | renderChoiceList("journalSources", data.journals || [], "journal"); |
| 560 | state.sourceOptionsLoaded = true; |
| 561 | } |
| 562 | |
| 563 | function renderChoiceList(targetId, items, groupName) { |
| 564 | const target = $(targetId); |
no test coverage detected