Slide 1

Slide 1 text

2022/04/09 1 OpenLayers ext TypeScript declarationの開発 Taro Matsuzawa @smellman KoedoLUG 2022/04/09

Slide 2

Slide 2 text

2022/04/09 2 自己紹介 ● Georepublic Japan シニアデベロッパー兼CISO ● 日本UNIXユーザ会会長 ● OSGeo.JP理事 ● OpenStreetMap Foundation Japan メンバー ● Breakcoreクラスタ ● 最近のお気に入りはSynthamesk

Slide 3

Slide 3 text

2022/04/09 3 TypeScript declarationとは ● 既存のJavaScriptライブラリに追加で型情報などを付与する仕組 み ● よく yarn install –dev @types/hogehoge などとして追加 ● 型情報があるとコンパイル時にエラーなどを検出される ● プログラムの安全性が増す

Slide 4

Slide 4 text

2022/04/09 4 OpenLayers extとは ● https://github.com/Viglino/ol-ext ● OpenLayersにいろいろな機能を追加するプラグイン ● http://viglino.github.io/ol-ext/ ● デモを見ると何ができるかわかる ● 仕事上ではフォントアイコンを使いたい

Slide 5

Slide 5 text

2022/04/09 5 types-ol-ext ● OpenLayers extにTypeScriptの定義を追加するためのdeclaration ● OpenLayers 6.5.xまで対応 ● OpenLayers 6.14.1には対応されていない ● types-ol パッケージに依存 ● OpenLayers自体がTypeScript declarationを提供しているため不要のは ず ● とりあえず改修をしてみているという話

Slide 6

Slide 6 text

2022/04/09 6 何をしているのか? ● https://github.com/Siedlerchr/types-ol-ext/pull/84 ● types-olの依存性を削除、OpenLayersの持つdeclarationを利用 ● この段階で500件以上のエラー ● on/once/unイベントの型を改修 ● examplesの中身も改修

Slide 7

Slide 7 text

2022/04/09 7 今のところいい感じです

Slide 8

Slide 8 text

2022/04/09 8 残タスク ● types-ol-ext自体がまだ未実装のイベントがいくつかある ● ol-extの実装を読みながら未実装の部分を追加する ● examplesでまだ20件ほどのエラー ● だいたいはイベントの未実装部分なので実装をする ● OpenLayers自体を拡張している部分があるのでどう対応するか… ● examples自体を改修する ● 来週いっぱいには修正を終わらせたい