-
-
Notifications
You must be signed in to change notification settings - Fork 57
Open
Description
i18n/Weiwudi Migration Issue for MaplatUI
WHY
MaplatCoreの軽量化・疎結合化に伴い、削除された i18n (国際化) および weiwudi (オフラインキャッシュ) の機能をUI側で引き取り、アプリケーションとして正しく動作させるため。
WHAT
MaplatCoreから削除された機能をMaplatUI側に移植・再実装する。
CoreのAPI変更(createElementの挙動変更、オプション変更)に追従する。
HOW
以下の実装計画 (implementation_plan.md) に基づき実装を行う。
移植にあたっては、MaplatCoreの削除前の先行実装を参照し、「機能の再発明」を避けること。
参照元情報 (Reference Sources)
MaplatCore Commit Hash: 7d946cde3215e56dab53af63f353023b137b3062
具体的な変更点
-
package.json:i18next等が必要であれば追加(Coreから削除されたため)。
-
src/index.js(または適切なエントリポイント):- i18nセットアップ: Core初期化前に
i18nextを初期化し、UI要素の翻訳フローを確立する。 - Weiwudi初期化: UI側で
Weiwudiを初期化する。Coreから削除されたregisterMapToSW相当の処理を実装し、キャッシュ対応URLを取得してCoreに渡す。- 参照: Core
src/source_ex.tsL230-264 (registerMapToSW)
- 参照: Core
- オフラインUI: Coreから削除されたイベントリスナー処理(プログレスバー表示など)を移植する。
- 参照: Core
src/source/mixin.tsL197-218 (fetchAllTileCacheAsync周りのイベントハンドリング)
- 参照: Core
- i18nセットアップ: Core初期化前に
-
src/functions.js(新規または既存):- Coreから削除された
createElementの高機能版(短縮記法、din属性置換)を実装する。- 参照: Core
src/functions.tsL1-16 (createElement)
- 参照: Core
- 新しい
app.createElementメソッドを作成し、CoreのcreateElementをラップする形で利用する。
- Coreから削除された
Metadata
Metadata
Assignees
Labels
No labels