|
1 |
| -{%- import "macros.html" as macros -%} |
2 |
| - |
3 |
| -{# The url of the current release, `/crate/:name/:version` #} |
4 |
| -{%- set crate_url = "/crate/" ~ krate.name ~ "/" ~ krate.version -%} |
5 |
| - |
6 |
| -<div class="nav-container nav-container-rustdoc"> |
7 |
| - <div class="container-rustdoc rustdoc-navigation"> |
8 |
| - <div class="pure-menu pure-menu-horizontal"> |
9 |
| - <form action="/releases/search" method="GET" class="landing-search-form-nav"> |
10 |
| - <div id="search-input-nav"> |
11 |
| - <label for="nav-search"> |
12 |
| - {{ "search" | fas(fw=true) }} |
13 |
| - </label> |
14 |
| - |
15 |
| - <input id="nav-search" name="query" tabindex="-1" type="text" |
16 |
| - aria-label="Find crate by search query" placeholder="Find crate"> |
17 |
| - </div> |
18 |
| - |
19 |
| - <a href="/" class="pure-menu-heading pure-menu-link"> |
20 |
| - {{ "cube" | fas(fw=true) }} <span class="title">Docs.rs</span> |
21 |
| - </a> |
22 |
| - |
23 |
| - <ul class="pure-menu-list"> |
24 |
| - <li class="pure-menu-item pure-menu-has-children pure-menu-allow-hover"> |
25 |
| - <a href="{{ crate_url | safe }}" class="pure-menu-link" title="{{ krate.description }}"> |
26 |
| - {{ "cube" | fas(fw=true) }} |
27 |
| - <span class="title"> {{ krate.name }}-{{ krate.version }}</span> |
28 |
| - </a> |
29 |
| - |
30 |
| - {# Crate details #} |
31 |
| - <div class="pure-menu-children package-details-menu"> |
32 |
| - {# Crate name, description and license #} |
33 |
| - <ul class="pure-menu-list menu-item-divided"> |
34 |
| - <li class="pure-menu-heading" id="crate-title"> |
35 |
| - {{ krate.name }} {{ krate.version }} |
36 |
| - {{ "copy" | far(id="clipboard", aria_label="Copy crate name and version information", fw=true) }} |
37 |
| - </li> |
38 |
| - |
39 |
| - <li class="pure-menu-item"> |
40 |
| - <a href="{{ crate_url | safe }}" class="pure-menu-link" class="description"> |
41 |
| - {{ "cube" | fas(fw=true) }} {{ krate.description }} |
42 |
| - </a> |
43 |
| - </li> |
44 |
| - |
45 |
| - <li class="pure-menu-item"> |
46 |
| - <a href="{{ crate_url | safe }}" class="pure-menu-link"> |
47 |
| - {{ "balance-scale-right" | fas(fw=true) }} {{ krate.license }} |
48 |
| - </a> |
49 |
| - </li> |
50 |
| - </ul> |
51 |
| - |
52 |
| - <div class="pure-g menu-item-divided"> |
53 |
| - <div class="pure-u-1-2 right-border"> |
54 |
| - <ul class="pure-menu-list"> |
55 |
| - <li class="pure-menu-heading">Links</li> |
56 |
| - |
57 |
| - {# If the crate has a homepage, show a link to it #} |
58 |
| - {%- if krate.homepage_url -%} |
59 |
| - <li class="pure-menu-item"> |
60 |
| - <a href="{{ krate.homepage_url }}" class="pure-menu-link"> |
61 |
| - {{ "home" | fas(fw=true) }} Homepage |
62 |
| - </a> |
63 |
| - </li> |
64 |
| - {%- endif -%} |
65 |
| - |
66 |
| - {# If the crate has external docs, show a link #} |
67 |
| - {%- if krate.documentation_url -%} |
68 |
| - <li class="pure-menu-item"> |
69 |
| - <a href="{{ krate.documentation_url }}" title="Canonical documentation" class="pure-menu-link"> |
70 |
| - {{ "file-alt" | far(fw=true) }} Documentation |
71 |
| - </a> |
72 |
| - </li> |
73 |
| - {%- endif -%} |
74 |
| - |
75 |
| - {# If the crate is hosted on GitHub, show some stats #} |
76 |
| - {%- if krate.github -%} |
77 |
| - <li class="pure-menu-item"> |
78 |
| - <a href="{{ krate.repository_url }}" class="pure-menu-link"> |
79 |
| - {{ "github" | fab(fw=true) }} |
80 |
| - {{ "star" | fas(fw=true) }} {{ krate.github_stars }} |
81 |
| - {{ "code-branch" | fas(fw=true) }} {{ krate.github_forks }} |
82 |
| - {{ "exclamation-circle" | fas(fw=true) }} {{ krate.github_issues }} |
83 |
| - </a> |
84 |
| - </li> |
85 |
| - |
86 |
| - {# If all the crate has is a repo url, show it #} |
87 |
| - {%- elif repository_url -%} |
88 |
| - <li class="pure-menu-item"> |
89 |
| - <a href="{{ krate.repository_url }}" class="pure-menu-link"> |
90 |
| - {{ "code-branch" | fas(fw=true) }} Repository |
91 |
| - </a> |
92 |
| - </li> |
93 |
| - {%- endif -%} |
94 |
| - |
95 |
| - <li class="pure-menu-item"> |
96 |
| - <a href="https://crates.io/crates/{{ krate.name }}" class="pure-menu-link" title="See {{ krate.name }} in crates.io"> |
97 |
| - {{ "cube" | fas(fw=true) }} Crates.io |
98 |
| - </a> |
99 |
| - </li> |
100 |
| - </ul> |
101 |
| - </div> |
102 |
| - |
103 |
| - {# Show the crate authors #} |
104 |
| - <div class="pure-u-1-2"> |
105 |
| - <ul class="pure-menu-list"> |
106 |
| - <li class="pure-menu-heading">Authors</li> |
107 |
| - |
108 |
| - {%- for author in krate.authors -%} |
109 |
| - <li class="pure-menu-item"> |
110 |
| - <a href="/releases/{{ author[1] }}" class="pure-menu-link"> |
111 |
| - {{ "user" | fas(fw=true) }} {{ author[0] }} |
112 |
| - </a> |
113 |
| - </li> |
114 |
| - {%- endfor -%} |
115 |
| - </ul> |
116 |
| - </div> |
117 |
| - </div> |
118 |
| - |
119 |
| - <div class="pure-g menu-item-divided"> |
120 |
| - <div class="pure-u-1-2 right-border"> |
121 |
| - <ul class="pure-menu-list"> |
122 |
| - <li class="pure-menu-heading">Dependencies</li> |
123 |
| - |
124 |
| - {# Display all dependencies that the crate has #} |
125 |
| - <li class="pure-menu-item"> |
126 |
| - <div class="pure-menu pure-menu-scrollable sub-menu"> |
127 |
| - <ul class="pure-menu-list"> |
128 |
| - {%- for dep in krate.dependencies -%} |
129 |
| - <li class="pure-menu-item"> |
130 |
| - <a href="/{{ dep[0] }}/{{ dep[1] }}" class="pure-menu-link"> |
131 |
| - {{ dep[0] }} {{ dep[1] }} |
132 |
| - <i class="dependencies {{ dep[2] | default(value='') }}">{{ dep[2] | default(value="") }}</i> |
133 |
| - </a> |
134 |
| - </li> |
135 |
| - {%- endfor -%} |
136 |
| - </ul> |
137 |
| - </div> |
138 |
| - </li> |
139 |
| - </ul> |
140 |
| - </div> |
141 |
| - |
142 |
| - <div class="pure-u-1-2"> |
143 |
| - <ul class="pure-menu-list"> |
144 |
| - <li class="pure-menu-heading">Versions</li> |
145 |
| - |
146 |
| - <li class="pure-menu-item"> |
147 |
| - <div class="pure-menu pure-menu-scrollable sub-menu"> |
148 |
| - <ul class="pure-menu-list"> |
149 |
| - {# Display all releases of this crate #} |
150 |
| - {{ macros::releases_list(name=krate.name, releases=krate.releases) }} |
151 |
| - </ul> |
152 |
| - </div> |
153 |
| - </li> |
154 |
| - </ul> |
155 |
| - </div> |
156 |
| - </div> |
157 |
| - {%- if krate.documented_items and krate.total_items -%} |
158 |
| - {% set percent = krate.documented_items * 100 / krate.total_items %} |
159 |
| - <div class="pure-g"> |
160 |
| - <div class="pure-u-1"> |
161 |
| - <ul class="pure-menu-list"> |
162 |
| - <li> |
163 |
| - <a href="{{ crate_url | safe }}" class="pure-menu-link"> |
164 |
| - <b>{{ percent | round(precision=2) }}%</b> |
165 |
| - of the crate is documented |
166 |
| - </a> |
167 |
| - </li> |
168 |
| - </ul> |
169 |
| - </div> |
170 |
| - </div> |
171 |
| - {%- endif -%} |
172 |
| - </div> |
173 |
| - </li> |
174 |
| - |
175 |
| - {# If this is the latest release and it's been yanked, just display a warning #} |
176 |
| - {%- if is_latest_version and krate.yanked -%} |
177 |
| - <li class="pure-menu-item"> |
178 |
| - <span class="pure-menu-link warn"> |
179 |
| - {{ "exclamation-triangle" | fas(fw=true) }} |
180 |
| - <span class="title"> This release has been yanked</span> |
181 |
| - </span> |
182 |
| - </li> |
183 |
| - |
184 |
| - {# If the crate isn't the latest & is yanked, display a warning and offer a link to the latest release #} |
185 |
| - {%- elif not is_latest_version and krate.yanked -%} |
186 |
| - <li class="pure-menu-item"> |
187 |
| - <a href="{{ latest_path | safe }}" class="pure-menu-link warn" |
188 |
| - title="You are seeing a yanked version of {{ krate.name }} crate. Click here to go to latest version."> |
189 |
| - {{ "exclamation-triangle" | fas(fw=true) }} |
190 |
| - <span class="title"> This release has been yanked, go to latest version</span> |
191 |
| - </a> |
192 |
| - </li> |
193 |
| - |
194 |
| - {# If this isn't the most recent release, offer a link to the latest #} |
195 |
| - {%- elif not is_latest_version -%} |
196 |
| - <li class="pure-menu-item"> |
197 |
| - <a href="{{ latest_path | safe }}" class="pure-menu-link warn" |
198 |
| - title="You are seeing an outdated version of {{ krate.name }} crate. Click here to go to latest version."> |
199 |
| - {{ "exclamation-triangle" | fas(fw=true) }} |
200 |
| - <span class="title"> Go to latest version</span> |
201 |
| - </a> |
202 |
| - </li> |
203 |
| - {%- endif -%} |
204 |
| - |
205 |
| - {# A link to the release's source view #} |
206 |
| - <li class="pure-menu-item"> |
207 |
| - <a href="{{ crate_url | safe }}/source/" title="Browse source of {{ krate.name }}-{{ krate.version }}" class="pure-menu-link"> |
208 |
| - {{ "folder-open" | far(fw=true) }} |
209 |
| - <span class="title"> Source</span> |
210 |
| - </a> |
211 |
| - </li> |
212 |
| - |
213 |
| - {# Display the platforms that the release has been built for #} |
214 |
| - <li class="pure-menu-item pure-menu-has-children pure-menu-allow-hover"> |
215 |
| - <a href="#" class="pure-menu-link" aria-label="Platform"> |
216 |
| - {{ "cogs" | fas(fw=true) }} |
217 |
| - <span class="title"> Platform</span> |
218 |
| - </a> |
219 |
| - |
220 |
| - {# Build the dropdown list showing available targets #} |
221 |
| - <ul class="pure-menu-children"> |
222 |
| - {%- for target in krate.doc_targets -%} |
223 |
| - {%- set target_url = "/crate/" ~ krate.name ~ "/" ~ krate.version ~ "/target-redirect/" ~ target ~ "/" ~ inner_path -%} |
224 |
| - |
225 |
| - <li class="pure-menu-item"> |
226 |
| - <a href="{{ target_url | safe }}" class="pure-menu-link">{{ target }}</a> |
227 |
| - </li> |
228 |
| - {%- endfor -%} |
229 |
| - </ul> |
230 |
| - </li> |
231 |
| - |
232 |
| - {%- include "header/global_alert.html" -%} |
233 |
| - </ul> |
234 |
| - </form> |
235 |
| - </div> |
236 |
| - </div> |
237 |
| -</div> |
238 |
| - |
239 | 1 | <script type="text/javascript" src="/menu.js?{{ docsrs_version() | slugify }}"></script>
|
240 | 2 | <script type="text/javascript" src="/index.js?{{ docsrs_version() | slugify }}"></script>
|
241 | 3 | <script>
|
|
0 commit comments