OpenUIは、言語モデルがテキストの代わりにアプリ側のコンポーネントを使ったUIを返すためのオープンソースのフレームワークで、Thesysが開発している。中核のOpenUI Lang 1.0では、defineFunctionでライブラリ独自の@関数を追加でき、モデルは組み込み関数と同じように呼び出す。引数はコンポーネントのpropsと同様に検証され、呼び出しに失敗しても画面全体は壊れずnullとして評価される。defineActionによる独自アクションも追加され、onActionハンドラーで型付きのparamsを受け取れる。アクションが1つだけならAction([...])で囲む必要がなくなった。library.extendでは既存ライブラリからコンポーネントの追加・上書き・削除や関数、アクションの追加を行える。エントリーはrootという名前の文に決まり、応答をopenui:のマーカー行で包んで保存・復元するメッセージ形式も加わった。1.0の言語機能は現時点ではReactレンダラーが必要で、Vue、Svelte、Angular向けのパッケージは0.4系にとどまる。
Thesys、生成UI言語OpenUI Lang 1.0を公開 独自関数・独自アクションとlibrary.extendを追加
## POINTS
- defineFunctionとdefineActionでライブラリ独自の@関数とアクションを追加でき、引数は型で検証
- library.extendで既存ライブラリから派生でき、応答を保存・復元するメッセージ形式も追加
- 1.0の新機能はReactレンダラーのみ対応。Vue、Svelte、Angular向けは0.4のまま