Skip to content

Commit 2b37b76

Browse files
authored
Adapt to Paradox to use code-tag (#71)
* Don't use `TextNode` to adapt to Paradox 0.6.6 * Update to Paradox 0.6.6 See lightbend/paradox#378
1 parent b82696f commit 2b37b76

File tree

7 files changed

+44
-46
lines changed

7 files changed

+44
-46
lines changed

project/Dependencies.scala

Lines changed: 4 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,8 @@
11
import sbt._
22

3-
object Version {
4-
val classgraph = "4.8.47"
5-
val jtidy = "r938"
6-
val sbtParadox = "0.6.5"
7-
val scalatest = "3.0.8"
8-
}
9-
103
object Library {
11-
val classgraph = "io.github.classgraph" % "classgraph" % Version.classgraph
12-
val jtidy = "net.sf.jtidy" % "jtidy" % Version.jtidy
13-
val sbtParadox = "com.lightbend.paradox" % "sbt-paradox" % Version.sbtParadox
14-
val scalatest = "org.scalatest" %% "scalatest" % Version.scalatest
4+
val classgraph = "io.github.classgraph" % "classgraph" % "4.8.47"
5+
val jtidy = "net.sf.jtidy" % "jtidy" % "r938"
6+
val sbtParadox = "com.lightbend.paradox" % "sbt-paradox" % "0.6.6"
7+
val scalatest = "org.scalatest" %% "scalatest" % "3.0.8"
158
}

src/main/scala/com/lightbend/paradox/apidoc/ApidocDirective.scala

Lines changed: 14 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ package com.lightbend.paradox.apidoc
1818

1919
import com.lightbend.paradox.markdown.InlineDirective
2020
import org.pegdown.Printer
21-
import org.pegdown.ast.{DirectiveNode, TextNode, Visitor}
21+
import org.pegdown.ast.{DirectiveNode, Visitor}
2222

2323
class ApidocDirective(allClassesAndObjects: IndexedSeq[String], properties: Map[String, String])
2424
extends InlineDirective("apidoc") {
@@ -35,8 +35,8 @@ class ApidocDirective(allClassesAndObjects: IndexedSeq[String], properties: Map[
3535
matched.split('.').last + generics
3636
def javaLabel(matched: String): String =
3737
scalaLabel(matched)
38-
.replaceAll("\\[", "<")
39-
.replaceAll("\\]", ">")
38+
.replaceAll("\\[", "<")
39+
.replaceAll("\\]", ">")
4040
.replaceAll("_", "?")
4141

4242
override def toString =
@@ -80,9 +80,14 @@ class ApidocDirective(allClassesAndObjects: IndexedSeq[String], properties: Map[
8080
}
8181
}
8282

83-
def syntheticNode(group: String, doctype: String, label: String, fqcn: String, node: DirectiveNode): DirectiveNode = {
84-
val syntheticSource = new DirectiveNode.Source.Direct(fqcn)
85-
val attributes = new org.pegdown.ast.DirectiveAttributes.AttributeMap()
83+
private def syntheticNode(
84+
group: String,
85+
doctype: String,
86+
label: String,
87+
fqcn: String,
88+
node: DirectiveNode
89+
): DirectiveNode = {
90+
val attributes = new org.pegdown.ast.DirectiveAttributes.AttributeMap()
8691
new DirectiveNode(
8792
DirectiveNode.Format.Inline,
8893
group,
@@ -94,10 +99,10 @@ class ApidocDirective(allClassesAndObjects: IndexedSeq[String], properties: Map[
9499
DirectiveNode.Format.Inline,
95100
doctype + "doc",
96101
label,
97-
syntheticSource,
102+
new DirectiveNode.Source.Direct(fqcn),
98103
node.attributes,
99-
fqcn,
100-
new TextNode(label)
104+
label, // contents
105+
null
101106
)
102107
)
103108
}

src/sbt-test/apidoc/multi-project/build.sbt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ val docs = project
99
"scaladoc.apidoc.base_url" -> "https://localhost:8000",
1010
"javadoc.apidoc.base_url" -> "https://localhost:8000"
1111
),
12-
apidocRootPackage := ""
12+
apidocRootPackage := "apidoc"
1313
)
1414

1515
val root = project
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
<p>Api link to sub-project <span class="group-scala"><a href="https://localhost:8000/apidoc/LibClass.html">LibClass</a></span><span class="group-java"><a href="https://localhost:8000/?apidoc/LibClass.html">LibClass</a></span></p>
1+
<p>Api link to sub-project <span class="group-scala"><a href="https://localhost:8000/apidoc/LibClass.html" title="apidoc.LibClass"><code>LibClass</code></a></span><span class="group-java"><a href="https://localhost:8000/?apidoc/LibClass.html" title="apidoc.LibClass"><code>LibClass</code></a></span></p>
Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
1-
<p>Api link to a class that is both in scaladsl and javadsl packages, but has no javadoc configured: <span class="group-java"><a href="akka-stream-scaladoc/akka/stream/javadsl/Flow.html">Flow</a></span><span class="group-scala"><a href="akka-stream-scaladoc/akka/stream/scaladsl/Flow.html">Flow</a></span></p>
2-
<p>Api link to a class that is in common package, but has no javadoc configured <span class="group-scala"><a href="akka-stream-scaladoc/akka/stream/stage/GraphStage.html">GraphStage</a></span><span class="group-java"><a href="akka-stream-scaladoc/akka/stream/stage/GraphStage.html">GraphStage</a></span></p>
3-
<p>Api link to a class that is both in scaladsl and javadsl packages, and has javadoc configured: <span class="group-java"><a href="akka-javadoc/?akka/actor/typed/javadsl/Behaviors.html">Behaviors</a></span><span class="group-scala"><a href="akka-scaladoc/akka/actor/typed/scaladsl/Behaviors.html">Behaviors</a></span></p>
1+
<p>Api link to a class that is both in scaladsl and javadsl packages, but has no javadoc configured: <span class="group-java"><a href="akka-stream-scaladoc/akka/stream/javadsl/Flow.html" title="akka.stream.javadsl.Flow"><code>Flow</code></a></span><span class="group-scala"><a href="akka-stream-scaladoc/akka/stream/scaladsl/Flow.html" title="akka.stream.scaladsl.Flow"><code>Flow</code></a></span></p>
2+
<p>Api link to a class that is in common package, but has no javadoc configured <span class="group-scala"><a href="akka-stream-scaladoc/akka/stream/stage/GraphStage.html" title="akka.stream.stage.GraphStage"><code>GraphStage</code></a></span><span class="group-java"><a href="akka-stream-scaladoc/akka/stream/stage/GraphStage.html" title="akka.stream.stage.GraphStage"><code>GraphStage</code></a></span></p>
3+
<p>Api link to a class that is both in scaladsl and javadsl packages, and has javadoc configured: <span class="group-java"><a href="akka-javadoc/?akka/actor/typed/javadsl/Behaviors.html" title="akka.actor.typed.javadsl.Behaviors"><code>Behaviors</code></a></span><span class="group-scala"><a href="akka-scaladoc/akka/actor/typed/scaladsl/Behaviors.html" title="akka.actor.typed.scaladsl.Behaviors"><code>Behaviors</code></a></span></p>
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
<p>Api link to Akka <span class="group-java"><a href="https://doc.akka.io/japi/akka/2.5/?akka/stream/javadsl/Flow.html">Flow</a></span><span class="group-scala"><a href="https://doc.akka.io/api/akka/2.5/akka/stream/scaladsl/Flow.html">Flow</a></span></p>
1+
<p>Api link to Akka <span class="group-java"><a href="https://doc.akka.io/japi/akka/2.5/?akka/stream/javadsl/Flow.html" title="akka.stream.javadsl.Flow"><code>Flow</code></a></span><span class="group-scala"><a href="https://doc.akka.io/api/akka/2.5/akka/stream/scaladsl/Flow.html" title="akka.stream.scaladsl.Flow"><code>Flow</code></a></span></p>

src/test/scala/com/lightbend/paradox/apidoc/ApidocDirectiveSpec.scala

Lines changed: 20 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -69,8 +69,8 @@ class ApidocDirectiveSpec extends MarkdownBaseSpec {
6969
markdown("@apidoc[Envelope]") shouldEqual
7070
html(
7171
"""<p><span class="group-scala">
72-
|<a href="https://doc.akka.io/api/akka/2.5/akka/dispatch/Envelope.html">Envelope</a></span><span class="group-java">
73-
|<a href="https://doc.akka.io/japi/akka/2.5/?akka/dispatch/Envelope.html">Envelope</a></span>
72+
|<a href="https://doc.akka.io/api/akka/2.5/akka/dispatch/Envelope.html" title="akka.dispatch.Envelope"><code>Envelope</code></a></span><span class="group-java">
73+
|<a href="https://doc.akka.io/japi/akka/2.5/?akka/dispatch/Envelope.html" title="akka.dispatch.Envelope"><code>Envelope</code></a></span>
7474
|</p>""".stripMargin
7575
)
7676
}
@@ -85,8 +85,8 @@ class ApidocDirectiveSpec extends MarkdownBaseSpec {
8585
markdown("@apidoc[Flow]") shouldEqual
8686
html(
8787
"""<p><span class="group-java">
88-
|<a href="https://doc.akka.io/japi/akka/2.5/?akka/stream/javadsl/Flow.html">Flow</a></span><span class="group-scala">
89-
|<a href="https://doc.akka.io/api/akka/2.5/akka/stream/scaladsl/Flow.html">Flow</a></span>
88+
|<a href="https://doc.akka.io/japi/akka/2.5/?akka/stream/javadsl/Flow.html" title="akka.stream.javadsl.Flow"><code>Flow</code></a></span><span class="group-scala">
89+
|<a href="https://doc.akka.io/api/akka/2.5/akka/stream/scaladsl/Flow.html" title="akka.stream.scaladsl.Flow"><code>Flow</code></a></span>
9090
|</p>""".stripMargin
9191
)
9292
}
@@ -95,8 +95,8 @@ class ApidocDirectiveSpec extends MarkdownBaseSpec {
9595
markdown("@apidoc[typed.*.Replicator$]") shouldEqual
9696
html(
9797
"""<p><span class="group-scala">
98-
|<a href="https://doc.akka.io/api/akka/2.5/akka/cluster/ddata/typed/scaladsl/Replicator$.html">Replicator</a></span><span class="group-java">
99-
|<a href="https://doc.akka.io/japi/akka/2.5/?akka/cluster/ddata/typed/javadsl/Replicator.html">Replicator</a></span>
98+
|<a href="https://doc.akka.io/api/akka/2.5/akka/cluster/ddata/typed/scaladsl/Replicator$.html" title="akka.cluster.ddata.typed.scaladsl.Replicator"><code>Replicator</code></a></span><span class="group-java">
99+
|<a href="https://doc.akka.io/japi/akka/2.5/?akka/cluster/ddata/typed/javadsl/Replicator.html" title="akka.cluster.ddata.typed.javadsl.Replicator"><code>Replicator</code></a></span>
100100
|</p>""".stripMargin
101101
)
102102
}
@@ -105,8 +105,8 @@ class ApidocDirectiveSpec extends MarkdownBaseSpec {
105105
markdown("@apidoc[ddata.Replicator$]") shouldEqual
106106
html(
107107
"""<p><span class="group-scala">
108-
|<a href="https://doc.akka.io/api/akka/2.5/akka/cluster/ddata/Replicator$.html">Replicator</a></span><span class="group-java">
109-
|<a href="https://doc.akka.io/japi/akka/2.5/?akka/cluster/ddata/Replicator.html">Replicator</a></span>
108+
|<a href="https://doc.akka.io/api/akka/2.5/akka/cluster/ddata/Replicator$.html" title="akka.cluster.ddata.Replicator"><code>Replicator</code></a></span><span class="group-java">
109+
|<a href="https://doc.akka.io/japi/akka/2.5/?akka/cluster/ddata/Replicator.html" title="akka.cluster.ddata.Replicator"><code>Replicator</code></a></span>
110110
|</p>""".stripMargin
111111
)
112112
}
@@ -121,8 +121,8 @@ class ApidocDirectiveSpec extends MarkdownBaseSpec {
121121
markdown("@apidoc[akka.actor.ActorRef]") shouldEqual
122122
html(
123123
"""<p><span class="group-scala">
124-
|<a href="https://doc.akka.io/api/akka/2.5/akka/actor/ActorRef.html">ActorRef</a></span><span class="group-java">
125-
|<a href="https://doc.akka.io/japi/akka/2.5/?akka/actor/ActorRef.html">ActorRef</a></span>
124+
|<a href="https://doc.akka.io/api/akka/2.5/akka/actor/ActorRef.html" title="akka.actor.ActorRef"><code>ActorRef</code></a></span><span class="group-java">
125+
|<a href="https://doc.akka.io/japi/akka/2.5/?akka/actor/ActorRef.html" title="akka.actor.ActorRef"><code>ActorRef</code></a></span>
126126
|</p>""".stripMargin
127127
)
128128
}
@@ -131,8 +131,8 @@ class ApidocDirectiveSpec extends MarkdownBaseSpec {
131131
markdown("@apidoc[actor.typed.ActorRef]") shouldEqual
132132
html(
133133
"""<p><span class="group-scala">
134-
|<a href="https://doc.akka.io/api/akka/2.5/akka/actor/typed/ActorRef.html">ActorRef</a></span><span class="group-java">
135-
|<a href="https://doc.akka.io/japi/akka/2.5/?akka/actor/typed/ActorRef.html">ActorRef</a></span>
134+
|<a href="https://doc.akka.io/api/akka/2.5/akka/actor/typed/ActorRef.html" title="akka.actor.typed.ActorRef"><code>ActorRef</code></a></span><span class="group-java">
135+
|<a href="https://doc.akka.io/japi/akka/2.5/?akka/actor/typed/ActorRef.html" title="akka.actor.typed.ActorRef"><code>ActorRef</code></a></span>
136136
|</p>""".stripMargin
137137
)
138138
}
@@ -141,8 +141,8 @@ class ApidocDirectiveSpec extends MarkdownBaseSpec {
141141
markdown("@apidoc[ClusterClient$]") shouldEqual
142142
html(
143143
"""<p><span class="group-scala">
144-
|<a href="https://doc.akka.io/api/akka/2.5/akka/cluster/client/ClusterClient$.html">ClusterClient</a></span><span class="group-java">
145-
|<a href="https://doc.akka.io/japi/akka/2.5/?akka/cluster/client/ClusterClient.html">ClusterClient</a></span>
144+
|<a href="https://doc.akka.io/api/akka/2.5/akka/cluster/client/ClusterClient$.html" title="akka.cluster.client.ClusterClient"><code>ClusterClient</code></a></span><span class="group-java">
145+
|<a href="https://doc.akka.io/japi/akka/2.5/?akka/cluster/client/ClusterClient.html" title="akka.cluster.client.ClusterClient"><code>ClusterClient</code></a></span>
146146
|</p>""".stripMargin
147147
)
148148
}
@@ -151,8 +151,8 @@ class ApidocDirectiveSpec extends MarkdownBaseSpec {
151151
markdown("@apidoc[Source[ServerSentEvent, \\_]]") shouldEqual
152152
html(
153153
"""<p><span class="group-java">
154-
|<a href="https://doc.akka.io/japi/akka/2.5/?akka/stream/javadsl/Source.html">Source&lt;ServerSentEvent, ?&gt;</a></span><span class="group-scala">
155-
|<a href="https://doc.akka.io/api/akka/2.5/akka/stream/scaladsl/Source.html">Source[ServerSentEvent, _]</a></span>
154+
|<a href="https://doc.akka.io/japi/akka/2.5/?akka/stream/javadsl/Source.html" title="akka.stream.javadsl.Source"><code>Source&lt;ServerSentEvent, ?&gt;</code></a></span><span class="group-scala">
155+
|<a href="https://doc.akka.io/api/akka/2.5/akka/stream/scaladsl/Source.html" title="akka.stream.scaladsl.Source"><code>Source[ServerSentEvent, _]</code></a></span>
156156
|</p>""".stripMargin
157157
)
158158
}
@@ -161,8 +161,8 @@ class ApidocDirectiveSpec extends MarkdownBaseSpec {
161161
markdown("@apidoc[Flow[Message, Message, Mat]]") shouldEqual
162162
html(
163163
"""<p><span class="group-java">
164-
|<a href="https://doc.akka.io/japi/akka/2.5/?akka/stream/javadsl/Flow.html">Flow&lt;Message, Message, Mat&gt;</a></span><span class="group-scala">
165-
|<a href="https://doc.akka.io/api/akka/2.5/akka/stream/scaladsl/Flow.html">Flow[Message, Message, Mat]</a></span>
164+
|<a href="https://doc.akka.io/japi/akka/2.5/?akka/stream/javadsl/Flow.html" title="akka.stream.javadsl.Flow"><code>Flow&lt;Message, Message, Mat&gt;</code></a></span><span class="group-scala">
165+
|<a href="https://doc.akka.io/api/akka/2.5/akka/stream/scaladsl/Flow.html" title="akka.stream.scaladsl.Flow"><code>Flow[Message, Message, Mat]</code></a></span>
166166
|</p>""".stripMargin
167167
)
168168
}
@@ -171,8 +171,8 @@ class ApidocDirectiveSpec extends MarkdownBaseSpec {
171171
markdown("@apidoc[Marshaller[Try[A], B]]") shouldEqual
172172
html(
173173
"""<p><span class="group-java">
174-
|<a href="https://doc.akka.io/japi/akka-http/current/?akka/http/javadsl/marshalling/Marshaller.html">Marshaller&lt;Try&lt;A&gt;, B&gt;</a></span><span class="group-scala">
175-
|<a href="https://doc.akka.io/api/akka-http/current/akka/http/scaladsl/marshalling/Marshaller.html">Marshaller[Try[A], B]</a></span>
174+
|<a href="https://doc.akka.io/japi/akka-http/current/?akka/http/javadsl/marshalling/Marshaller.html" title="akka.http.javadsl.marshalling.Marshaller"><code>Marshaller&lt;Try&lt;A&gt;, B&gt;</code></a></span><span class="group-scala">
175+
|<a href="https://doc.akka.io/api/akka-http/current/akka/http/scaladsl/marshalling/Marshaller.html" title="akka.http.scaladsl.marshalling.Marshaller"><code>Marshaller[Try[A], B]</code></a></span>
176176
|</p>""".stripMargin
177177
)
178178
}

0 commit comments

Comments
 (0)