yjs-widgets does not play well with Lumino widgets
まだ誰も着手していません。
評価
- 難易度
- 5/5
- 見積もり時間
- 1週間以上
- 初心者へのやさしさ
- 35/100
- issue の種類
- 機能追加
- 明瞭さ
- おおむね明確
- 活発さ
- 停滞
- 技術スタック
- typescript
- 領域
- frontend
調査の方向性
まず JupyterYWidget renderer と issue に示されている renderModel/createYWidget パスを特定し、その後、想定されている API についてコメントスレッドを確認します。ノードがどのように作成され、アタッチされるかを判断し、提案されたフローで Lumino ベースのウィジェットを構築してアタッチできることを検証します。
索引モデルが issue の本文から書いたものです。
説明
Issue
One cannot easily create a yjs-widgets based on Lumino. Because the node element that the Renderer provides is not yet attached:
class YJupyterCADWidget implements IJupyterYWidget {
constructor(yModel: JupyterYModel, node: HTMLElement) {
this.yModel = yModel;
this.node = node;
const widget = new LuminoWidget();
// The following does not work! Because this.node is not yet attached to the DOM
Widget.attach(widget, this.node);
}
yModel: JupyterYModel;
node: HTMLElement;
}
Fix proposition
I would like to suggest modifying the JupyterYWidget to get closer to the logic we have in ipywidgets. Basically, the Widget class would be expected to have a node element that would either be a Lumino Widget:
async renderModel(mimeModel: IRenderMime.IMimeModel): Promise<void> {
const modelId = mimeModel.data[this._mimeType]!['model_id'];
this._yModel = this._modelFactory.getYModel(modelId);
if (!this._yModel) {
return;
}
const widget = this._modelFactory.createYWidget(modelId);
this.addWidget(widget.node)
}
- 主要言語
- TypeScript
- スター
- 10
- フォーク
- 10
- PR マージ指標
- 30日以内にマージされた PR はありません
環境構築
- Dockerfile・Docker Compose ファイルなし
- プルリクエストのテンプレートなし
- コントリビューションガイドを読む
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
QuantStack/yjs-widgets のほかの issue
-
難易度 5/5 1週間以上 初心者へのやさしさ 35/100
QuantStack/yjs-widgets#31 ·
QuantStack/yjs-widgets の issue をすべて見る
似ている issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 85/100
Comfy-Org/ComfyUI_frontend#20346 ·
メンテナーはふだん 1 日以内に返信
-
難易度 1/5 1時間未満 初心者へのやさしさ 90/100
decentralized-identity/didwebvh-ts#203 ·
メンテナーはふだん 1 日以内に返信
-
community first-timers-only good first issue hacktoberfest help wanted low hanging fruit up-for-grabs
難易度 2/5 1〜3時間 初心者へのやさしさ 65/100
lingdojo/kana-dojo#31791 · コメント 1 件 · リアクション 5 件 ·
メンテナーはふだん 1 日以内に返信
-
Telegram webhook: line breaks lost since switch to rich messages対応中かも @Kshot3000 が今日担当しました。 オープン
難易度 2/5 1〜3時間 初心者へのやさしさ 82/100
メンテナーはふだん 1 日以内に返信
-
github_actions security
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
メンテナーはふだん 1 日以内に返信