|
21 | 21 | <MultiSelect v-model="selected.kinds" display="chip" :options="kinds" filter :maxSelectedLabels="4" |
22 | 22 | placeholder="Select Crate Kinds" /> |
23 | 23 |
|
24 | | - <MultiSelect v-model="selected.columns" display="chip" :options="columns" :optionLabel="o => C.option(o)" filter |
25 | | - :maxSelectedLabels="4" placeholder="Select Columns" /> |
| 24 | + <MultiSelect v-model="selected.columns" display="chip" :options="columns" :optionLabel="o => C.option(o)" |
| 25 | + filter :maxSelectedLabels="4" placeholder="Select Columns" /> |
26 | 26 | </div> |
27 | 27 |
|
28 | 28 | <div> |
|
48 | 48 |
|
49 | 49 | <Column frozen sortable field="pkg" header="Package" style="min-width: 200px;" /> |
50 | 50 |
|
| 51 | + <Column v-if="C.display('last_commit_time')" sortable field="last_commit_time" |
| 52 | + :header="C.name('last_commit_time')" style="text-align: center;" /> |
| 53 | + |
51 | 54 | <Column v-if="C.display('version')" sortable field="version" :header="C.name('version')" |
52 | 55 | style="text-align: center;" /> |
53 | 56 |
|
|
60 | 63 | </template> |
61 | 64 | </Column> |
62 | 65 |
|
| 66 | + <Column v-if="C.display('last_release_time')" sortable field="last_release_time" |
| 67 | + :header="C.name('last_release_time')" style="text-align: center; min-width: 120px;" /> |
| 68 | + |
| 69 | + <Column v-if="C.display('last_release_size')" sortable field="last_release_size" |
| 70 | + :header="C.name('last_release_size')" style="text-align: center" /> |
| 71 | + |
63 | 72 | <Column v-if="C.display('diag_total_count')" sortable field="diag_total_count" |
64 | 73 | :header="C.name('diag_total_count')" style="text-align: center;"> |
65 | 74 | <template #body="{ data }"> |
|
229 | 238 | <script setup lang="ts"> |
230 | 239 | import type { Pkg, PkgInfo, Test } from '~/shared/info'; |
231 | 240 | import { unique_field, unique_field_bool, InfoCols } from '~/shared/info'; |
| 241 | +import { formatBytes } from '~/shared/columns-select'; |
232 | 242 | import { FilterMatchMode } from '@primevue/core/api'; |
233 | 243 | import type { DataTableSortMeta } from 'primevue/datatable'; |
234 | 244 |
|
@@ -269,8 +279,11 @@ const summaryTable = computed<SummaryTable[]>(() => { |
269 | 279 | user: val.user, |
270 | 280 | repo: val.repo, |
271 | 281 | pkg: name, |
| 282 | + last_commit_time: fmtDateTime(pkg.last_commit_time), |
272 | 283 | version: pkg.version, |
273 | 284 | release_count: pkg.release_count, |
| 285 | + last_release_time: fmtDateTime(pkg.last_release_time), |
| 286 | + last_release_size: pkg.last_release_size ? formatBytes(pkg.last_release_size): null, |
274 | 287 | diag_total_count: pkg.diag_total_count, |
275 | 288 | testcases: pkg.testcases?.pkg_tests_count ?? null, |
276 | 289 | testcases_color, |
@@ -325,7 +338,8 @@ type SummaryTable = { |
325 | 338 | tests: number | null; examples: number | null; benches: number | null; keywords: string[] | null; |
326 | 339 | authors: string[] | null; description: string; categories: string[] | null; |
327 | 340 | documentation: string | null; readme: string | null; homepage: string | null; latest_doc: string | null; |
328 | | - diag_total_count: number | null; release_count: number | null; |
| 341 | + diag_total_count: number | null; last_commit_time: string; release_count: number | null; |
| 342 | + last_release_size: string | null; last_release_time: string; |
329 | 343 | }; |
330 | 344 | const data = ref<SummaryTable[]>([]); |
331 | 345 | watch(summaryTable, (val) => data.value = val); |
|
0 commit comments