2 let breadcrumbs = await _require('/_lib/breadcrumbs.jst')
3 let get_navigation = await _require('/_lib/get_navigation.jst')
4 let navbar = await _require('/_lib/navbar.jst')
10 await breadcrumbs(env, _out)
12 let transaction = await env.site.database.Transaction()
14 let root = await transaction.get()
15 let p = await get_navigation(root, env.component_names)
16 let children = await p.get('children')
17 let menu = await p.get_json('menu')
20 for (let i = 0; i < menu.length; ++i) {
22 let q = await children.get(name)
25 a.nav-link(href=`${name}/index.html`) {
30 src=`${name}/${await q.get_json('thumbnail') || 'thumbnail.jpg'}`
35 `${await q.get_json('title')}`
39 `${await q.get_json('description')}—by ${await q.get_json('author')}`
50 transaction.rollback()