kintoneのEffect Schemaを用いた型定義、ランタイム検証のライブラリを作成しました。

kintoneでTypeScriptを利用する際、型エラーとの戦いが多くなると思います。

その際に使えるかもしれない、型定義兼ランタイム検証が可能なEffectSchemaを利用したkintoneフィールド定義を作っておきました。

基本的にEffectTSのSchemaなのでEffectTSの公式を見ていただきたいですが、たとえば文字列一行フィールドの定義に郵便番号の形式の縛りを貸したPostalCode型等を作ることができ、関数の引数の型定義にしておくことで確実に郵便番号を引数に渡すことができる、等の使い道があります。型安全性が一段増すと思います。

また、JavaScriptAPIやREST APIで取得した空の値が場面によって異なる値を取る問題にも専用のdecodeラッパーを用意することで解決を図っています。

EffectTSを利用しないプロジェクトでも恩恵があると思いますので、もしよかったらお試しください。

サクッと作ったので間違ってたらすみません。githubのissueにでも書いておいてください。

Zenn記事はこちら。

「いいね!」 3

一昨日リリースしたkintone-effect-schemaライブラリですが、もうver0.2.0を出しました! 追加機能は、kintoneのform APIへの対応です!

kintone form APIがエクスポートしたJSONをdecodeしてEffect Schemaにすること、EffectSchemaをencodeしてJSON化しkintoneアプリに適用することができます。これにより、TypeScriptによる型安全なkintoneアプリ設定の管理を行うことができます。

まぁ元々JSONであればできたんですけど、kintoneアプリ設定をgit管理するようなInfrastructure as Code的なアプローチをTypeScriptで型安全に行うことができます。

「いいね!」 1