Current scope: kotmark-renderer-kotlinx-html| all classes
|
io.heapy.kotmark.renderer.kotlinxhtml.adapters
Coverage Summary for Class: TablesAdapterKt (io.heapy.kotmark.renderer.kotlinxhtml.adapters)
| Class | Method, % | Branch, % | Line, % | Instruction, % |
|---|---|---|---|---|
| TablesAdapterKt | 100% (3/3) | 66.7% (4/6) | 100% (10/10) | 100% (21/21) |
| TablesAdapterKt$tablesAdapter$1$1$1 | 100% (1/1) | 100% (1/1) | 100% (6/6) | |
| TablesAdapterKt$tablesAdapter$1$2$1 | 100% (1/1) | 100% (1/1) | 100% (6/6) | |
| TablesAdapterKt$tablesAdapter$1$3$1 | 100% (1/1) | 100% (1/1) | 100% (6/6) | |
| TablesAdapterKt$tablesAdapter$1$4$1 | 100% (1/1) | 100% (1/1) | 100% (6/6) | |
| TablesAdapterKt$tablesAdapter$1$5$1 | 100% (1/1) | 100% (1/1) | 100% (6/6) | |
| TablesAdapterKt$tablesAdapter$lambda$0$$inlined$nodeRenderer$1 | 0% (0/1) | |||
| TablesAdapterKt$tablesAdapter$lambda$0$$inlined$nodeRenderer$1$1 | 0% (0/2) | |||
| TablesAdapterKt$tablesAdapter$lambda$0$$inlined$nodeRenderer$2 | 0% (0/1) | |||
| TablesAdapterKt$tablesAdapter$lambda$0$$inlined$nodeRenderer$2$1 | 0% (0/2) | |||
| TablesAdapterKt$tablesAdapter$lambda$0$$inlined$nodeRenderer$3 | 0% (0/1) | |||
| TablesAdapterKt$tablesAdapter$lambda$0$$inlined$nodeRenderer$3$1 | 0% (0/2) | |||
| TablesAdapterKt$tablesAdapter$lambda$0$$inlined$nodeRenderer$4 | 0% (0/1) | |||
| TablesAdapterKt$tablesAdapter$lambda$0$$inlined$nodeRenderer$4$1 | 0% (0/2) | |||
| TablesAdapterKt$tablesAdapter$lambda$0$$inlined$nodeRenderer$5 | 0% (0/1) | |||
| TablesAdapterKt$tablesAdapter$lambda$0$$inlined$nodeRenderer$5$1 | 0% (0/2) | |||
| Total | 34.8% (8/23) | 66.7% (4/6) | 100% (15/15) | 100% (51/51) |
package io.heapy.kotmark.renderer.kotlinxhtml.adapters
import io.heapy.kotmark.ext.gfm.tables.*
import io.heapy.kotmark.renderer.kotlinxhtml.KotlinxHtmlAdapter
import io.heapy.kotmark.renderer.kotlinxhtml.nodeRenderer
fun tablesAdapter(): KotlinxHtmlAdapter = KotlinxHtmlAdapter { configuration ->
configuration.nodeRenderer<TableBlock> { node -> element(node, "table") { renderChildren(node) } }
configuration.nodeRenderer<TableHead> { node -> element(node, "thead") { renderChildren(node) } }
configuration.nodeRenderer<TableBody> { node -> element(node, "tbody") { renderChildren(node) } }
configuration.nodeRenderer<TableRow> { node -> element(node, "tr") { renderChildren(node) } }
configuration.nodeRenderer<TableCell> { node ->
val tag = if (node.isHeader) "th" else "td"
val attrs = node.alignment?.let { mapOf("align" to it.name.lowercase()) }.orEmpty()
element(node, tag, attrs) { renderChildren(node) }
}
}