|
30 | 30 | <ul> |
31 | 31 | {# TODO: If there are no releases, then display a message that says so #} |
32 | 32 | {%- for release in releases -%} |
33 | | - {%- set release_version -%} |
34 | | - {%- set has_unyanked_releases = release.has_unyanked_releases.unwrap_or(true) -%} |
35 | | - {%- if release_type == "search" && has_unyanked_releases -%} |
36 | | - {%- set release_version = "latest" -%} |
37 | | - {%- else -%} |
38 | | - {%- set release_version = release.version -%} |
39 | | - {%- endif -%} |
40 | | - {% set link %} |
41 | | - {%- if release.rustdoc_status -%} |
42 | | - {% set link = "/{}/{}/{}/"|format(release.name, release_version, release.target_name.as_deref().unwrap_or_default()) -%} |
43 | | - {%- else -%} |
44 | | - {% set link = "/crate/{}/{}"|format(release.name, release_version) -%} |
45 | | - {%- endif -%} |
46 | 33 | <li> |
47 | | - <a href="{{ link|safe }}" class="release"> |
48 | | - <div class="pure-g"> |
49 | | - <div class="pure-u-1 pure-u-sm-6-24 pure-u-md-5-24 name"> |
50 | | - {{ release.name }}-{{ release.version }} |
51 | | - {% if !has_unyanked_releases %} |
52 | | - <span class="yanked" title="all releases of {{ release.name }} have been yanked"> |
53 | | - {{ crate::icons::IconTrash.render_solid(false, false, "") }} |
54 | | - Yanked |
55 | | - </span> |
56 | | - {% endif %} |
57 | | - </div> |
58 | | - |
59 | | - <div class="pure-u-1 pure-u-sm-14-24 pure-u-md-16-24 description"> |
60 | | - {{ release.description.as_deref().unwrap_or_default() }} |
| 34 | + {%- match release -%} |
| 35 | + {%- when ReleaseStatus::NotAvailable(name) -%} |
| 36 | + <div class="release"> |
| 37 | + <div class="pure-g"> |
| 38 | + <div class="pure-u-1 pure-u-sm-6-24 pure-u-md-5-24 name not-available">{{ name }}</div> |
| 39 | + <div class="pure-u-1 pure-u-sm-14-24 pure-u-md-16-24 description">Documentation not available on docs.rs</div> |
61 | 40 | </div> |
62 | | - |
63 | | - {% if release_type == "owner" -%} |
64 | | - <div class="pure-u-1 pure-u-sm-4-24 pure-u-md-3-24 date" {% if let Some(build_time) = release.build_time -%} |
65 | | - title="Published {{ build_time|timeformat }}" {%- endif -%}> |
66 | | - {{ release.stars }} |
67 | | - {{ crate::icons::IconStar.render_solid(false, false, "") }} |
68 | | - </div> |
69 | | - {%- elif let Some(build_time) = release.build_time -%} |
70 | | - <div class="pure-u-1 pure-u-sm-4-24 pure-u-md-3-24 date" |
71 | | - title="{{ build_time.format("%FT%TZ") }}"> |
72 | | - {{ build_time|timeformat }} |
| 41 | + </div> |
| 42 | + {%- when ReleaseStatus::Available(release) -%} |
| 43 | + {%- set release_version -%} |
| 44 | + {%- set has_unyanked_releases = release.has_unyanked_releases.unwrap_or(true) -%} |
| 45 | + {%- if release_type == "search" && has_unyanked_releases -%} |
| 46 | + {%- set release_version = "latest" -%} |
| 47 | + {%- else -%} |
| 48 | + {%- set release_version = release.version -%} |
| 49 | + {%- endif -%} |
| 50 | + {% set link %} |
| 51 | + {%- if release.rustdoc_status -%} |
| 52 | + {% set link = "/{}/{}/{}/"|format(release.name, release_version, release.target_name.as_deref().unwrap_or_default()) -%} |
| 53 | + {%- else -%} |
| 54 | + {% set link = "/crate/{}/{}"|format(release.name, release_version) -%} |
| 55 | + {%- endif -%} |
| 56 | + <a href="{{ link|safe }}" class="release"> |
| 57 | + <div class="pure-g"> |
| 58 | + <div class="pure-u-1 pure-u-sm-6-24 pure-u-md-5-24 name"> |
| 59 | + {{- release.name }}-{{ release.version }} |
| 60 | + {%+ if !has_unyanked_releases -%} |
| 61 | + <span class="yanked" title="all releases of {{ release.name }} have been yanked"> |
| 62 | + {{- crate::icons::IconTrash.render_solid(false, false, "") +}} |
| 63 | + Yanked |
| 64 | + </span> |
| 65 | + {%- endif -%} |
73 | 66 | </div> |
74 | | - {%- else -%} |
75 | | - <div class="pure-u-1 pure-u-sm-4-24 pure-u-md-3-24 date"> |
76 | | - — |
| 67 | + |
| 68 | + <div class="pure-u-1 pure-u-sm-14-24 pure-u-md-16-24 description"> |
| 69 | + {{- release.description.as_deref().unwrap_or_default() -}} |
77 | 70 | </div> |
78 | | - {%- endif %} |
79 | | - </div> |
80 | | - </a> |
| 71 | + |
| 72 | + {%- if release_type == "owner" -%} |
| 73 | + <div class="pure-u-1 pure-u-sm-4-24 pure-u-md-3-24 date" {% if let Some(build_time) = release.build_time -%} |
| 74 | + title="Published {{ build_time|timeformat }}" {%- endif -%}> |
| 75 | + {{- release.stars +}} |
| 76 | + {{ crate::icons::IconStar.render_solid(false, false, "") -}} |
| 77 | + </div> |
| 78 | + {%- elif let Some(build_time) = release.build_time -%} |
| 79 | + <div class="pure-u-1 pure-u-sm-4-24 pure-u-md-3-24 date" |
| 80 | + title="{{ build_time.format("%FT%TZ") }}"> |
| 81 | + {{- build_time|timeformat -}} |
| 82 | + </div> |
| 83 | + {%- else -%} |
| 84 | + <div class="pure-u-1 pure-u-sm-4-24 pure-u-md-3-24 date"> |
| 85 | + — |
| 86 | + </div> |
| 87 | + {%- endif %} |
| 88 | + </div> |
| 89 | + </a> |
| 90 | + {%- endmatch -%} |
81 | 91 | </li> |
82 | 92 | {%- endfor -%} |
83 | 93 | </ul> |
|
0 commit comments