)
})?;
let parent = InscriptionId {
txid: entry.etching,
index: 0,
};
let parent = index.inscription_exists(parent)?.then_some(parent);
Ok(RuneHtml { id, entry, parent }.page(page_config))
}
async fn runes(
Extension(page_config): Extension<Arc<PageConfig>>,
Extension(index): Extension<Arc<Index>>,
) -> ServerResult<PageHtml<RunesHtml>> {
Ok(
RunesHtml {
entries: index.runes()?,
}
.page(page_config),
)
}
async fn home(
Extension(page_config): Extension<Arc<PageConfig>>,
Extension(index): Extension<Arc<Index>>,
) -> ServerResult<PageHtml<HomeHtml>> {
Ok(
HomeHtml {
inscriptions: index.get_home_inscriptions()?,
}
.page(page_config),
)
}
async fn blocks(
Extension(page_config): Extension<Arc<PageConfig>>,
Extension(index): Extension<Arc<Index>>,
) -> ServerResult<PageHtml<BlocksHtml>> {
let blocks = index.blocks(100)?;
let mut featured_blocks = BTreeMap::new();