(prevState?: State)
| 98 | } |
| 99 | |
| 100 | async function getPackageInfo(prevState?: State) { |
| 101 | const state = getState(); |
| 102 | const parsed = state.packageInfo.parsed; |
| 103 | if (parsed && (!prevState || !shallowEqual(prevState.packageInfo.parsed, parsed))) { |
| 104 | try { |
| 105 | const info = await fetchPackageInfo(parsed); |
| 106 | updateState((state) => { |
| 107 | state.packageInfo.info = info; |
| 108 | state.message = { |
| 109 | isError: false, |
| 110 | text: info.size |
| 111 | ? `Checking will stream whatever ${info.size} bytes gzipped is` |
| 112 | : "Checking will stream the tarball", |
| 113 | }; |
| 114 | }); |
| 115 | } catch (error) { |
| 116 | updateState((state) => { |
| 117 | state.packageInfo.info = undefined; |
| 118 | state.message = { |
| 119 | isError: true, |
| 120 | text: (error as Error).message, |
| 121 | }; |
| 122 | }); |
| 123 | } |
| 124 | } |
| 125 | } |
| 126 | |
| 127 | async function onCheck() { |
| 128 | if (!getState().packageInfo.parsed) { |
no test coverage detected