refactor(ui): unify 14 list views into a single ListFactory component

- ListFactory.ts를 생성하여 중복되는 테이블 생성, 정렬, 필터 로직을 공통 컴포넌트화

- 14개의 ListView.ts 파일들을 ListFactory를 호출하는 설정 객체 형태로 리팩토링

- TypeScript 컴파일 에러(타입 불일치 및 누락된 속성) 수정 완료
This commit is contained in:
2026-05-26 19:47:01 +09:00
parent 2c67037fc4
commit bf7fb0ffe6
19 changed files with 617 additions and 1589 deletions

View File

@@ -43,7 +43,7 @@ export function renderNavigation(onTabChange: (tab: string) => void) {
trigger.addEventListener('click', () => {
if (state.activeCategory !== catKey) {
state.activeCategory = catKey;
state.activeCategory = catKey as any;
const firstTab = config.tabs[0];
state.activeSubTab = firstTab;
render();
@@ -55,14 +55,14 @@ export function renderNavigation(onTabChange: (tab: string) => void) {
const shelf = document.createElement('div');
shelf.className = 'lnb-shelf';
config.tabs.forEach(tab => {
config.tabs.forEach((tab: string) => {
const item = document.createElement('div');
item.className = `lnb-item ${isActive && state.activeSubTab === tab ? 'active' : ''}`;
item.textContent = tab;
item.addEventListener('click', (e) => {
e.stopPropagation();
state.activeCategory = catKey;
state.activeCategory = catKey as any;
state.activeSubTab = tab;
render();
onTabChange(tab);