// Copyright 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved. // SPDX-License-Identifier: Apache-2.0 package software.aws.toolkits.gradle.changelog import org.commonmark.node.AbstractVisitor import org.commonmark.node.Heading import org.commonmark.parser.Parser import org.commonmark.renderer.html.HtmlRenderer import java.io.File import java.lang.Math.max import java.lang.Math.min class JetBrainsWriter(private val changeNotesFile: File, issueUrl: String? = null) : ChangeLogWriter(issueUrl) { private val sb = StringBuilder() override fun append(line: String) { sb.append(line) } override fun close() { val renderer = HtmlRenderer.builder() .softbreak("
") .build() val parser = Parser.builder() .postProcessor { it.accept( object : AbstractVisitor() { override fun visit(heading: Heading) { heading.level = max(1, min(heading.level + 2, 6)) } } ) it } .build() val htmlVersionError = renderer.render(parser.parse(sb.toString())) changeNotesFile.writeText( """ """.trimIndent() ) } override fun toString(): String = "JetBrainsWriter(file=$changeNotesFile)" }