[Bug] types of properties in group are inferred as unknown if results parameter is used
まだ誰も着手していません。
評価
- 難易度
- 3/5
- 見積もり時間
- 1〜2日
- 初心者へのやさしさ
- 55/100
- issue の種類
- バグ
- 明瞭さ
- おおむね明確
- 活発さ
- 静か
- 技術スタック
- node.js, typescript
- 領域
- cli
調査の方向性
StackBlitz の再現から始めて、p.group 関数の TypeScript typings を調べます。特に results パラメーターと cancel symbols の処理を確認してください。報告されている推論された型を確認し、その後、any を使わずに例で addNpmScriptsPrefix が boolean として推論されることを検証してください。
索引モデルが issue の本文から書いたものです。
説明
Environment
- OS: webcontainers
- Node Version: 18.20.3
- Package:
@clack/prompts - Package Version: v0.10.0
Describe the bug
const options = await p.group(
{
injectNpmScripts: async () => {
return p.confirm({
message: 'Add VitePress npm scripts to package.json?',
});
},
addNpmScriptsPrefix: async ({ results }) => {
if (!results.injectNpmScripts) return false;
return p.confirm({
message: 'Add a prefix for VitePress npm scripts?',
});
},
},
{
onCancel: () => {
p.cancel('Cancelled.');
process.exit(0);
},
}
);
options here is inferred as:
const options: {
injectNpmScripts: boolean;
addNpmScriptsPrefix: unknown;
}
To Reproduce
https://stackblitz.com/edit/node-1z7qkqdt?file=index.ts
Expected behavior
Return correct types:
const options: {
injectNpmScripts: boolean;
addNpmScriptsPrefix: boolean;
}
Additional Information
It works fine if we make it ({ results }: any). The generic parameter of group function doesn't work because the functions return cancel symbol too.
- 主要言語
- TypeScript
- スター
- 8.1k
- フォーク
- 218
- 平均マージ
- 1日 23時間
- マージ済み PR(30日)
- 6
環境構築
- Dockerfile・Docker Compose ファイルなし
- プルリクエストのテンプレートあり
- コントリビューションガイドを読む
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
bombshell-dev/clack のほかの issue
-
難易度 3/5 1〜2日 初心者へのやさしさ 70/100
bombshell-dev/clack#613 · コメント 4 件 ·
-
難易度 5/5 1週間以上 初心者へのやさしさ 30/100
bombshell-dev/clack#597 ·
-
rfc: accessible modeオープンenhancement
難易度 5/5 1週間以上 初心者へのやさしさ 35/100
bombshell-dev/clack#585 · コメント 1 件 · リアクション 1 件 ·
-
[Bug] Spinner does not run `onCancel` function on `Ctrl + C`対応中かも @cyphercodes が 103 日前に担当しました。 オープンbug
難易度 3/5 1〜2日 初心者へのやさしさ 68/100
bombshell-dev/clack#573 · コメント 1 件 · リアクション 2 件 ·
-
enhancement
難易度 3/5 1〜2日 初心者へのやさしさ 62/100
bombshell-dev/clack#565 · コメント 1 件 · リアクション 1 件 ·
bombshell-dev/clack の issue をすべて見る
似ている issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 82/100
openwatersio/slackwater-database#281 ·
メンテナーはふだん 1 日以内に返信
-
accepted bug via-triage
難易度 2/5 1〜3時間 初心者へのやさしさ 76/100
pingdotgg/t3code#18690 · コメント 1 件 ·
メンテナーはふだん 1 日以内に返信
-
Bayern feature:Application ready web
難易度 2/5 1〜3時間 初心者へのやさしさ 67/100
digitalfabrik/entitlementcard#3176 ·
メンテナーはふだん 7 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 82/100
NanmiCoder/cc-haha#1533 · コメント 1 件 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 76/100
メンテナーはふだん 1 日以内に返信