about |
완료 |
통합 초기화 + 모달 타이틀/복사 피드백을 페이지 번들 키 조회로 통합(apps/about/index.html:324, apps/about/index.html:458, apps/about/index.html:630) |
astrolabe |
완료 |
apps/astrolabe/index.html:123, apps/astrolabe/js/i18n.js:5에서 페이지 번들 + I18N_PAGE_ASTROLABE_* 사용 |
character |
완료 |
도움말/QEVEL/스탯/영상/상세/무기/검색 카운트의 UI 노출 문자열·ARIA·툴팁을 페이지 번들 키 조회로 통합(assets/js/character/helpmodal.js:32, assets/js/character/QEVEL.js:502, assets/js/character/cha_stats.js:169, assets/js/character/cha_video.js:169, assets/js/character/cha_detail.js:574, apps/character/character.html:1490, apps/character/character-search.js:153, i18n/pages/character/kr.js:58) |
critical-calc |
완료(경미 초기값 잔존) |
통합 번들 사용(apps/critical-calc/index.html:180), 초기 하드코딩(apps/critical-calc/index.html:27)은 assets/js/defense/defense-i18n.js:236에서 런타임 치환 |
defense-calc |
완료(경미 초기값 잔존) |
통합 번들 사용(apps/defense-calc/index.html:363), 초기 하드코딩(apps/defense-calc/index.html:49)은 assets/js/defense/defense-i18n.js:236에서 런타임 치환 |
gallery |
완료 |
apps/gallery/index.html:104, apps/gallery/gallery-tags.js:30에서 initPageI18n('gallery') + window.t() 사용 |
guides |
완료 |
신규 페이지 번들 + 통합 초기화로 목록/동적상세/정적상세 진입점 통합(i18n/pages/guides/kr.js:1, apps/guides/index.html:41, apps/guides/view.html:40, apps/guides/pages/books.html:28, apps/guides/guides.js:28, apps/article-editor/editor.js:320) |
home |
완료 |
홈 전용 번들/헬퍼 신설 후 initPageI18n('home') 부트스트랩, 헤더/SEO/퀵그리드/가이드/택틱/보스/SOS/캐러셀 문구를 키 조회로 통합하고 cn/tw/sea 텍스트 KR 폴백 유지(i18n/pages/home/kr.js:1, i18n/pages/home/en.js:1, i18n/pages/home/jp.js:1, apps/home/js/home-i18n.js:1, apps/home/index.html:327, apps/home/js/quick-grid.js:7, apps/home/js/guides-home.js:59, apps/home/tactic-posts-home.js:121, apps/home/js/bosses.js:140, apps/home/js/sos.js:80, apps/home/js/carousel.js:1110) |
login |
완료 |
apps/login/index.html:133, apps/login/index.html:138에서 initPageI18n('login')/I18nService.init('login') 호출 |
maps |
완료 |
MapsI18n 경로를 유지하면서 언어 선택기/모바일 ARIA/백업 툴팁/에러 문구/적 정보 fallback을 페이지 번들 키 조회로 통합하고 KR direct 참조 제거(apps/maps/index.html:78, apps/maps/object-filter-panel.js:34, apps/maps/map-select-panel.js:21, apps/maps/maps-core.js:44, apps/maps/object-click-handler.js:33, i18n/pages/maps/kr.js:18) |
material-calc |
완료 |
페이지 번들 추가 + 통합 초기화 이후 window.t() 기반으로 모달/버튼/도움말/SEO를 통합하고 로컬 I18N 맵 제거(apps/material-calc/index.html:628, apps/material-calc/material-planner.js:123, apps/material-calc/material-planner-export.js:7, i18n/pages/material-calc/kr.js:1) |
persona |
완료 |
통합 초기화 이후 스킬 라벨/배지/접근성 ARIA/상세 SEO fallback을 페이지 번들·공통 키 조회로 통합(apps/persona/persona-list.js:49, apps/persona/persona-list.js:393, apps/persona/persona-list.js:710, apps/persona/persona-list.js:896, apps/persona/skillfrom.js:117, apps/persona/skillfrom.js:237, apps/persona/index.html:94, i18n/pages/persona/kr.js:18) |
pull-calc |
완료 |
initPageI18n('pull-calc') 이후 SEO는 SeoEngine + seo-meta.json 단일 경로로 적용하고 언어 변경 시 컨텍스트만 갱신(apps/pull-calc/pull-calc.js:1814, apps/pull-calc/pull-calc.js:276, assets/js/seo/engine.js:1, i18n/pages/pull-calc/seo-meta.json:1) |
pull-tracker |
완료 |
3개 진입점 + 연관 JS를 PullTrackerI18n 경유로 통합하고 FAQ fetch/인라인 로컬 맵 제거, 초기화 레이스/폴백 체인을 안정화(apps/pull-tracker/index.html:114, apps/pull-tracker/global-stats.html:103, apps/pull-tracker/url-guide.html:504, apps/pull-tracker/js/i18n-runtime.js:1, apps/pull-tracker/js/pull-tracker.js:4, apps/pull-tracker/js/global-stats.js:15, apps/pull-tracker/js/manual-editor.js:22, i18n/pages/pull-tracker/kr.js:1, i18n/pages/pull-tracker/en.js:1, i18n/pages/pull-tracker/jp.js:1) |
revelations |
완료 |
통합 초기화 + SEO/미출시 라벨/에러 메시지/아코디언 title/reset 버튼을 페이지 번들 키 조회로 통합(apps/revelations/index.html:615, apps/revelations/index.html:428, apps/revelations/index.html:837, apps/revelations/index.html:647, apps/revelations/index.html:687, apps/revelations/index.html:997, apps/revelations/index.html:1022, i18n/pages/revelation/kr.js:26) |
schedule |
완료 |
apps/schedule/index.html:203 initPageI18n('schedule'), apps/schedule/index.html:114 window.t() 사용 |
synergy |
완료 |
통합 초기화 이후 레거시 window.I18N fallback 제거 및 I18nService.cache 기반 KR 의미 폴백으로 통합(apps/synergy/synergy.js:60, apps/synergy/item_from.js:10, apps/synergy/soulmate.js:5) |
tactic |
완료 |
apps/tactic/index.html의 translateUI/uiMap 경로 제거 후 키 기반 정적 치환으로 통합, apps/tactic/tactics.html + assets/js/tactics-viewer.js를 tactics 페이지 번들로 통합, apps/tactic/tactic-upload.html의 언어 삼항 분기 제거(assets/js/tactic/createAction.js, assets/js/tactic/renderTurns.js, assets/js/tactic/import.js, assets/js/tactic/setparty.js, assets/js/tactic/setwonder.js, assets/js/tactic/share.js, i18n/pages/tactic/kr.js, i18n/pages/tactic/en.js, i18n/pages/tactic/jp.js, i18n/pages/tactics/kr.js, i18n/pages/tactics/en.js, i18n/pages/tactics/jp.js, i18n/pages/tactic-upload/kr.js, i18n/pages/tactic-upload/en.js, i18n/pages/tactic-upload/jp.js) |
tactic-maker |
완료 |
액션/리벨레이션/접근성/툴팁/에러 알림 하드코딩을 페이지 번들 키 조회로 통합(apps/tactic-maker/js/ui-tactic.js:207, apps/tactic-maker/js/ui-party.js:89, apps/tactic-maker/js/ui-critical-card.js:1592, apps/tactic-maker/js/import-export.js:224, apps/tactic-maker/js/capture.js:91, i18n/pages/tactic-maker/kr.js:61) |
tier |
완료 |
타이틀/소스 토글/SEO/모달·툴바 라벨을 페이지 번들 키 조회로 통합(apps/tier/position-tier.html:428, apps/tier/position-tier.html:473, apps/tier/position-tier.html:709, apps/tier/position-tiers.js:1711, apps/tier/capture.js:150) |
wonder-weapon |
완료 |
apps/wonder-weapon/wonder-weapon.js:1148 initPageI18n('wonder-weapon'), apps/wonder-weapon/wonder-weapon.js:86 window.t() 사용 |