fix: bumped swagger version + minor playground fix (#191)
This commit is contained in:
18
CHANGELOG.md
18
CHANGELOG.md
@ -2,6 +2,17 @@
|
|||||||
|
|
||||||
## Unreleased
|
## Unreleased
|
||||||
|
|
||||||
|
### Added
|
||||||
|
|
||||||
|
### Changed
|
||||||
|
|
||||||
|
### Remove
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Released
|
||||||
|
|
||||||
|
## [2.0.4] - February 10th, 2022
|
||||||
### Added
|
### Added
|
||||||
- Custom Type example to playground
|
- Custom Type example to playground
|
||||||
|
|
||||||
@ -9,12 +20,7 @@
|
|||||||
- Cleaned up and broke out handlers into separate classes
|
- Cleaned up and broke out handlers into separate classes
|
||||||
- Serializer cleanup
|
- Serializer cleanup
|
||||||
- Tests now run against Jackson, Gson and kotlinx on every run
|
- Tests now run against Jackson, Gson and kotlinx on every run
|
||||||
|
- Swagger UI bumped from v3 to v4
|
||||||
### Remove
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## Released
|
|
||||||
|
|
||||||
## [2.0.3] - February 7th, 2022
|
## [2.0.3] - February 7th, 2022
|
||||||
### Changed
|
### Changed
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
# Kompendium
|
# Kompendium
|
||||||
project.version=2.0.3
|
project.version=2.0.4
|
||||||
# Kotlin
|
# Kotlin
|
||||||
kotlin.code.style=official
|
kotlin.code.style=official
|
||||||
# Gradle
|
# Gradle
|
||||||
|
@ -36,7 +36,7 @@ fun Routing.swagger(pageTitle: String = "Docs", specUrl: String = "/openapi.json
|
|||||||
content = "width=device-width, initial-scale=1"
|
content = "width=device-width, initial-scale=1"
|
||||||
}
|
}
|
||||||
link {
|
link {
|
||||||
href = "https://unpkg.com/swagger-ui-dist@3.12.1/swagger-ui.css"
|
href = "https://unpkg.com/swagger-ui-dist@4.5.0/swagger-ui.css"
|
||||||
rel = "stylesheet"
|
rel = "stylesheet"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -45,10 +45,10 @@ fun Routing.swagger(pageTitle: String = "Docs", specUrl: String = "/openapi.json
|
|||||||
id = "swagger-ui"
|
id = "swagger-ui"
|
||||||
}
|
}
|
||||||
script {
|
script {
|
||||||
src = "https://unpkg.com/swagger-ui-dist@3.12.1/swagger-ui-standalone-preset.js"
|
src = "https://unpkg.com/swagger-ui-dist@4.5.0/swagger-ui-standalone-preset.js"
|
||||||
}
|
}
|
||||||
script {
|
script {
|
||||||
src = "https://unpkg.com/swagger-ui-dist@3.12.1/swagger-ui-bundle.js"
|
src = "https://unpkg.com/swagger-ui-dist@4.5.0/swagger-ui-bundle.js"
|
||||||
}
|
}
|
||||||
unsafe {
|
unsafe {
|
||||||
+"""
|
+"""
|
||||||
|
@ -7,6 +7,7 @@ import io.bkbn.kompendium.core.Notarized.notarizedGet
|
|||||||
import io.bkbn.kompendium.core.metadata.ResponseInfo
|
import io.bkbn.kompendium.core.metadata.ResponseInfo
|
||||||
import io.bkbn.kompendium.core.metadata.method.GetInfo
|
import io.bkbn.kompendium.core.metadata.method.GetInfo
|
||||||
import io.bkbn.kompendium.core.routes.redoc
|
import io.bkbn.kompendium.core.routes.redoc
|
||||||
|
import io.bkbn.kompendium.oas.serialization.KompendiumSerializersModule
|
||||||
import io.bkbn.kompendium.playground.AuthPlaygroundToC.simpleAuthenticatedGet
|
import io.bkbn.kompendium.playground.AuthPlaygroundToC.simpleAuthenticatedGet
|
||||||
import io.bkbn.kompendium.playground.util.Util
|
import io.bkbn.kompendium.playground.util.Util
|
||||||
import io.ktor.application.Application
|
import io.ktor.application.Application
|
||||||
@ -23,6 +24,7 @@ import io.ktor.serialization.json
|
|||||||
import io.ktor.server.engine.embeddedServer
|
import io.ktor.server.engine.embeddedServer
|
||||||
import io.ktor.server.netty.Netty
|
import io.ktor.server.netty.Netty
|
||||||
import kotlinx.serialization.Serializable
|
import kotlinx.serialization.Serializable
|
||||||
|
import kotlinx.serialization.json.Json
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Application entrypoint. Run this and head on over to `localhost:8081/docs`
|
* Application entrypoint. Run this and head on over to `localhost:8081/docs`
|
||||||
@ -39,7 +41,11 @@ fun main() {
|
|||||||
// Application Module
|
// Application Module
|
||||||
private fun Application.mainModule() {
|
private fun Application.mainModule() {
|
||||||
install(ContentNegotiation) {
|
install(ContentNegotiation) {
|
||||||
json()
|
json(Json {
|
||||||
|
serializersModule = KompendiumSerializersModule.module
|
||||||
|
encodeDefaults = true
|
||||||
|
explicitNulls = false
|
||||||
|
})
|
||||||
}
|
}
|
||||||
install(Kompendium) {
|
install(Kompendium) {
|
||||||
spec = Util.baseSpec
|
spec = Util.baseSpec
|
||||||
|
@ -15,6 +15,8 @@ import io.bkbn.kompendium.core.metadata.method.DeleteInfo
|
|||||||
import io.bkbn.kompendium.core.metadata.method.GetInfo
|
import io.bkbn.kompendium.core.metadata.method.GetInfo
|
||||||
import io.bkbn.kompendium.core.metadata.method.PostInfo
|
import io.bkbn.kompendium.core.metadata.method.PostInfo
|
||||||
import io.bkbn.kompendium.core.routes.redoc
|
import io.bkbn.kompendium.core.routes.redoc
|
||||||
|
import io.bkbn.kompendium.core.routes.swagger
|
||||||
|
import io.bkbn.kompendium.oas.serialization.KompendiumSerializersModule
|
||||||
import io.bkbn.kompendium.playground.BasicModels.BasicParameters
|
import io.bkbn.kompendium.playground.BasicModels.BasicParameters
|
||||||
import io.bkbn.kompendium.playground.BasicModels.BasicRequest
|
import io.bkbn.kompendium.playground.BasicModels.BasicRequest
|
||||||
import io.bkbn.kompendium.playground.BasicModels.BasicResponse
|
import io.bkbn.kompendium.playground.BasicModels.BasicResponse
|
||||||
@ -37,6 +39,7 @@ import io.ktor.server.engine.embeddedServer
|
|||||||
import io.ktor.server.netty.Netty
|
import io.ktor.server.netty.Netty
|
||||||
import kotlinx.serialization.SerialName
|
import kotlinx.serialization.SerialName
|
||||||
import kotlinx.serialization.Serializable
|
import kotlinx.serialization.Serializable
|
||||||
|
import kotlinx.serialization.json.Json
|
||||||
import java.util.UUID
|
import java.util.UUID
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -55,7 +58,11 @@ fun main() {
|
|||||||
private fun Application.mainModule() {
|
private fun Application.mainModule() {
|
||||||
// Installs Simple JSON Content Negotiation
|
// Installs Simple JSON Content Negotiation
|
||||||
install(ContentNegotiation) {
|
install(ContentNegotiation) {
|
||||||
json()
|
json(Json {
|
||||||
|
serializersModule = KompendiumSerializersModule.module
|
||||||
|
encodeDefaults = true
|
||||||
|
explicitNulls = false
|
||||||
|
})
|
||||||
}
|
}
|
||||||
// Installs the Kompendium Plugin and sets up baseline server metadata
|
// Installs the Kompendium Plugin and sets up baseline server metadata
|
||||||
install(Kompendium) {
|
install(Kompendium) {
|
||||||
@ -66,6 +73,8 @@ private fun Application.mainModule() {
|
|||||||
// This adds ReDoc support at the `/docs` endpoint.
|
// This adds ReDoc support at the `/docs` endpoint.
|
||||||
// By default, it will point at the `/openapi.json` created by Kompendium
|
// By default, it will point at the `/openapi.json` created by Kompendium
|
||||||
redoc(pageTitle = "Simple API Docs")
|
redoc(pageTitle = "Simple API Docs")
|
||||||
|
// You can also use swagger!
|
||||||
|
swagger(pageTitle = "Swaggerlicious")
|
||||||
// Kompendium infers the route path from the Ktor Route. This will show up as the root path `/`
|
// Kompendium infers the route path from the Ktor Route. This will show up as the root path `/`
|
||||||
notarizedGet(simpleGetExample) {
|
notarizedGet(simpleGetExample) {
|
||||||
call.respond(HttpStatusCode.OK, BasicResponse(c = UUID.randomUUID().toString()))
|
call.respond(HttpStatusCode.OK, BasicResponse(c = UUID.randomUUID().toString()))
|
||||||
|
@ -23,6 +23,7 @@ import io.bkbn.kompendium.core.metadata.ResponseInfo
|
|||||||
import io.bkbn.kompendium.core.metadata.method.GetInfo
|
import io.bkbn.kompendium.core.metadata.method.GetInfo
|
||||||
import io.bkbn.kompendium.core.metadata.method.PostInfo
|
import io.bkbn.kompendium.core.metadata.method.PostInfo
|
||||||
import io.bkbn.kompendium.core.routes.redoc
|
import io.bkbn.kompendium.core.routes.redoc
|
||||||
|
import io.bkbn.kompendium.oas.serialization.KompendiumSerializersModule
|
||||||
import io.bkbn.kompendium.playground.ConstrainedModels.ConstrainedParams
|
import io.bkbn.kompendium.playground.ConstrainedModels.ConstrainedParams
|
||||||
import io.bkbn.kompendium.playground.ConstrainedModels.ConstrainedRequest
|
import io.bkbn.kompendium.playground.ConstrainedModels.ConstrainedRequest
|
||||||
import io.bkbn.kompendium.playground.ConstrainedModels.ConstrainedResponse
|
import io.bkbn.kompendium.playground.ConstrainedModels.ConstrainedResponse
|
||||||
@ -40,6 +41,7 @@ import io.ktor.serialization.json
|
|||||||
import io.ktor.server.engine.embeddedServer
|
import io.ktor.server.engine.embeddedServer
|
||||||
import io.ktor.server.netty.Netty
|
import io.ktor.server.netty.Netty
|
||||||
import kotlinx.serialization.Serializable
|
import kotlinx.serialization.Serializable
|
||||||
|
import kotlinx.serialization.json.Json
|
||||||
import kotlinx.serialization.json.JsonElement
|
import kotlinx.serialization.json.JsonElement
|
||||||
|
|
||||||
fun main() {
|
fun main() {
|
||||||
@ -54,7 +56,11 @@ fun main() {
|
|||||||
private fun Application.mainModule() {
|
private fun Application.mainModule() {
|
||||||
// Installs Simple JSON Content Negotiation
|
// Installs Simple JSON Content Negotiation
|
||||||
install(ContentNegotiation) {
|
install(ContentNegotiation) {
|
||||||
json()
|
json(Json {
|
||||||
|
serializersModule = KompendiumSerializersModule.module
|
||||||
|
encodeDefaults = true
|
||||||
|
explicitNulls = false
|
||||||
|
})
|
||||||
}
|
}
|
||||||
// Installs the Kompendium Plugin and sets up baseline server metadata
|
// Installs the Kompendium Plugin and sets up baseline server metadata
|
||||||
install(Kompendium) {
|
install(Kompendium) {
|
||||||
|
@ -6,6 +6,7 @@ import io.bkbn.kompendium.core.metadata.ExceptionInfo
|
|||||||
import io.bkbn.kompendium.core.metadata.ResponseInfo
|
import io.bkbn.kompendium.core.metadata.ResponseInfo
|
||||||
import io.bkbn.kompendium.core.metadata.method.GetInfo
|
import io.bkbn.kompendium.core.metadata.method.GetInfo
|
||||||
import io.bkbn.kompendium.core.routes.redoc
|
import io.bkbn.kompendium.core.routes.redoc
|
||||||
|
import io.bkbn.kompendium.oas.serialization.KompendiumSerializersModule
|
||||||
import io.bkbn.kompendium.playground.ExceptionPlaygroundToC.simpleGetExample
|
import io.bkbn.kompendium.playground.ExceptionPlaygroundToC.simpleGetExample
|
||||||
import io.bkbn.kompendium.playground.util.Util
|
import io.bkbn.kompendium.playground.util.Util
|
||||||
import io.ktor.application.Application
|
import io.ktor.application.Application
|
||||||
@ -21,6 +22,7 @@ import io.ktor.server.engine.embeddedServer
|
|||||||
import io.ktor.server.netty.Netty
|
import io.ktor.server.netty.Netty
|
||||||
import kotlin.reflect.typeOf
|
import kotlin.reflect.typeOf
|
||||||
import kotlinx.serialization.Serializable
|
import kotlinx.serialization.Serializable
|
||||||
|
import kotlinx.serialization.json.Json
|
||||||
import java.time.LocalDateTime
|
import java.time.LocalDateTime
|
||||||
|
|
||||||
// Application Entrypoint
|
// Application Entrypoint
|
||||||
@ -36,7 +38,11 @@ fun main() {
|
|||||||
private fun Application.mainModule() {
|
private fun Application.mainModule() {
|
||||||
// Installs Simple JSON Content Negotiation
|
// Installs Simple JSON Content Negotiation
|
||||||
install(ContentNegotiation) {
|
install(ContentNegotiation) {
|
||||||
json()
|
json(Json {
|
||||||
|
serializersModule = KompendiumSerializersModule.module
|
||||||
|
encodeDefaults = true
|
||||||
|
explicitNulls = false
|
||||||
|
})
|
||||||
}
|
}
|
||||||
// Installs the Kompendium Plugin and sets up baseline server metadata
|
// Installs the Kompendium Plugin and sets up baseline server metadata
|
||||||
install(Kompendium) {
|
install(Kompendium) {
|
||||||
|
@ -5,6 +5,7 @@ import io.bkbn.kompendium.core.Notarized.notarizedGet
|
|||||||
import io.bkbn.kompendium.core.metadata.ResponseInfo
|
import io.bkbn.kompendium.core.metadata.ResponseInfo
|
||||||
import io.bkbn.kompendium.core.metadata.method.GetInfo
|
import io.bkbn.kompendium.core.metadata.method.GetInfo
|
||||||
import io.bkbn.kompendium.core.routes.redoc
|
import io.bkbn.kompendium.core.routes.redoc
|
||||||
|
import io.bkbn.kompendium.oas.serialization.KompendiumSerializersModule
|
||||||
import io.bkbn.kompendium.playground.GenericPlaygroundToC.simpleGenericGet
|
import io.bkbn.kompendium.playground.GenericPlaygroundToC.simpleGenericGet
|
||||||
import io.bkbn.kompendium.playground.util.Util
|
import io.bkbn.kompendium.playground.util.Util
|
||||||
import io.ktor.application.Application
|
import io.ktor.application.Application
|
||||||
@ -18,6 +19,7 @@ import io.ktor.serialization.json
|
|||||||
import io.ktor.server.engine.embeddedServer
|
import io.ktor.server.engine.embeddedServer
|
||||||
import io.ktor.server.netty.Netty
|
import io.ktor.server.netty.Netty
|
||||||
import kotlinx.serialization.Serializable
|
import kotlinx.serialization.Serializable
|
||||||
|
import kotlinx.serialization.json.Json
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Application entrypoint. Run this and head on over to `localhost:8081/docs`
|
* Application entrypoint. Run this and head on over to `localhost:8081/docs`
|
||||||
@ -35,7 +37,11 @@ fun main() {
|
|||||||
private fun Application.mainModule() {
|
private fun Application.mainModule() {
|
||||||
// Installs Simple JSON Content Negotiation
|
// Installs Simple JSON Content Negotiation
|
||||||
install(ContentNegotiation) {
|
install(ContentNegotiation) {
|
||||||
json()
|
json(Json {
|
||||||
|
serializersModule = KompendiumSerializersModule.module
|
||||||
|
encodeDefaults = true
|
||||||
|
explicitNulls = false
|
||||||
|
})
|
||||||
}
|
}
|
||||||
// Installs the Kompendium Plugin and sets up baseline server metadata
|
// Installs the Kompendium Plugin and sets up baseline server metadata
|
||||||
install(Kompendium) {
|
install(Kompendium) {
|
||||||
|
@ -7,6 +7,7 @@ import io.bkbn.kompendium.core.metadata.ResponseInfo
|
|||||||
import io.bkbn.kompendium.core.metadata.method.GetInfo
|
import io.bkbn.kompendium.core.metadata.method.GetInfo
|
||||||
import io.bkbn.kompendium.core.routes.redoc
|
import io.bkbn.kompendium.core.routes.redoc
|
||||||
import io.bkbn.kompendium.locations.NotarizedLocation.notarizedGet
|
import io.bkbn.kompendium.locations.NotarizedLocation.notarizedGet
|
||||||
|
import io.bkbn.kompendium.oas.serialization.KompendiumSerializersModule
|
||||||
import io.bkbn.kompendium.playground.LocationsToC.ohBoiUCrazy
|
import io.bkbn.kompendium.playground.LocationsToC.ohBoiUCrazy
|
||||||
import io.bkbn.kompendium.playground.LocationsToC.testLocation
|
import io.bkbn.kompendium.playground.LocationsToC.testLocation
|
||||||
import io.bkbn.kompendium.playground.LocationsToC.testNestLocation
|
import io.bkbn.kompendium.playground.LocationsToC.testNestLocation
|
||||||
@ -24,6 +25,7 @@ import io.ktor.serialization.json
|
|||||||
import io.ktor.server.engine.embeddedServer
|
import io.ktor.server.engine.embeddedServer
|
||||||
import io.ktor.server.netty.Netty
|
import io.ktor.server.netty.Netty
|
||||||
import kotlinx.serialization.Serializable
|
import kotlinx.serialization.Serializable
|
||||||
|
import kotlinx.serialization.json.Json
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Application entrypoint. Run this and head on over to `localhost:8081/docs`
|
* Application entrypoint. Run this and head on over to `localhost:8081/docs`
|
||||||
@ -39,7 +41,11 @@ fun main() {
|
|||||||
|
|
||||||
private fun Application.mainModule() {
|
private fun Application.mainModule() {
|
||||||
install(ContentNegotiation) {
|
install(ContentNegotiation) {
|
||||||
json()
|
json(Json {
|
||||||
|
serializersModule = KompendiumSerializersModule.module
|
||||||
|
encodeDefaults = true
|
||||||
|
explicitNulls = false
|
||||||
|
})
|
||||||
}
|
}
|
||||||
install(Kompendium) {
|
install(Kompendium) {
|
||||||
spec = Util.baseSpec
|
spec = Util.baseSpec
|
||||||
|
@ -5,6 +5,7 @@ import io.bkbn.kompendium.core.Notarized.notarizedGet
|
|||||||
import io.bkbn.kompendium.core.metadata.ResponseInfo
|
import io.bkbn.kompendium.core.metadata.ResponseInfo
|
||||||
import io.bkbn.kompendium.core.metadata.method.GetInfo
|
import io.bkbn.kompendium.core.metadata.method.GetInfo
|
||||||
import io.bkbn.kompendium.core.routes.redoc
|
import io.bkbn.kompendium.core.routes.redoc
|
||||||
|
import io.bkbn.kompendium.oas.serialization.KompendiumSerializersModule
|
||||||
import io.bkbn.kompendium.playground.PolymorphicPlaygroundToC.polymorphicExample
|
import io.bkbn.kompendium.playground.PolymorphicPlaygroundToC.polymorphicExample
|
||||||
import io.bkbn.kompendium.playground.util.Util
|
import io.bkbn.kompendium.playground.util.Util
|
||||||
import io.ktor.application.Application
|
import io.ktor.application.Application
|
||||||
@ -18,6 +19,7 @@ import io.ktor.serialization.json
|
|||||||
import io.ktor.server.engine.embeddedServer
|
import io.ktor.server.engine.embeddedServer
|
||||||
import io.ktor.server.netty.Netty
|
import io.ktor.server.netty.Netty
|
||||||
import kotlinx.serialization.Serializable
|
import kotlinx.serialization.Serializable
|
||||||
|
import kotlinx.serialization.json.Json
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Application entrypoint. Run this and head on over to `localhost:8081/docs`
|
* Application entrypoint. Run this and head on over to `localhost:8081/docs`
|
||||||
@ -34,7 +36,11 @@ fun main() {
|
|||||||
private fun Application.mainModule() {
|
private fun Application.mainModule() {
|
||||||
// Installs Simple JSON Content Negotiation
|
// Installs Simple JSON Content Negotiation
|
||||||
install(ContentNegotiation) {
|
install(ContentNegotiation) {
|
||||||
json()
|
json(Json {
|
||||||
|
serializersModule = KompendiumSerializersModule.module
|
||||||
|
encodeDefaults = true
|
||||||
|
explicitNulls = false
|
||||||
|
})
|
||||||
}
|
}
|
||||||
// Installs the Kompendium Plugin and sets up baseline server metadata
|
// Installs the Kompendium Plugin and sets up baseline server metadata
|
||||||
install(Kompendium) {
|
install(Kompendium) {
|
||||||
|
@ -6,6 +6,7 @@ import io.bkbn.kompendium.core.Notarized.notarizedGet
|
|||||||
import io.bkbn.kompendium.core.metadata.ResponseInfo
|
import io.bkbn.kompendium.core.metadata.ResponseInfo
|
||||||
import io.bkbn.kompendium.core.metadata.method.GetInfo
|
import io.bkbn.kompendium.core.metadata.method.GetInfo
|
||||||
import io.bkbn.kompendium.core.routes.redoc
|
import io.bkbn.kompendium.core.routes.redoc
|
||||||
|
import io.bkbn.kompendium.oas.serialization.KompendiumSerializersModule
|
||||||
import io.bkbn.kompendium.playground.util.Util
|
import io.bkbn.kompendium.playground.util.Util
|
||||||
import io.ktor.application.Application
|
import io.ktor.application.Application
|
||||||
import io.ktor.application.call
|
import io.ktor.application.call
|
||||||
@ -19,6 +20,7 @@ import io.ktor.serialization.json
|
|||||||
import io.ktor.server.engine.embeddedServer
|
import io.ktor.server.engine.embeddedServer
|
||||||
import io.ktor.server.netty.Netty
|
import io.ktor.server.netty.Netty
|
||||||
import kotlinx.serialization.Serializable
|
import kotlinx.serialization.Serializable
|
||||||
|
import kotlinx.serialization.json.Json
|
||||||
|
|
||||||
enum class ColumnMode {
|
enum class ColumnMode {
|
||||||
NULLABLE,
|
NULLABLE,
|
||||||
@ -58,7 +60,11 @@ fun main() {
|
|||||||
|
|
||||||
private fun Application.mainModule() {
|
private fun Application.mainModule() {
|
||||||
install(ContentNegotiation) {
|
install(ContentNegotiation) {
|
||||||
json()
|
json(Json {
|
||||||
|
serializersModule = KompendiumSerializersModule.module
|
||||||
|
encodeDefaults = true
|
||||||
|
explicitNulls = false
|
||||||
|
})
|
||||||
}
|
}
|
||||||
install(Kompendium) {
|
install(Kompendium) {
|
||||||
spec = Util.baseSpec
|
spec = Util.baseSpec
|
||||||
|
@ -3,6 +3,7 @@ package io.bkbn.kompendium.playground
|
|||||||
import io.bkbn.kompendium.core.Kompendium
|
import io.bkbn.kompendium.core.Kompendium
|
||||||
import io.bkbn.kompendium.core.Notarized.notarizedGet
|
import io.bkbn.kompendium.core.Notarized.notarizedGet
|
||||||
import io.bkbn.kompendium.core.routes.swagger
|
import io.bkbn.kompendium.core.routes.swagger
|
||||||
|
import io.bkbn.kompendium.oas.serialization.KompendiumSerializersModule
|
||||||
import io.bkbn.kompendium.playground.util.Util
|
import io.bkbn.kompendium.playground.util.Util
|
||||||
import io.ktor.application.Application
|
import io.ktor.application.Application
|
||||||
import io.ktor.application.call
|
import io.ktor.application.call
|
||||||
@ -15,6 +16,7 @@ import io.ktor.serialization.json
|
|||||||
import io.ktor.server.engine.embeddedServer
|
import io.ktor.server.engine.embeddedServer
|
||||||
import io.ktor.server.netty.Netty
|
import io.ktor.server.netty.Netty
|
||||||
import io.ktor.webjars.Webjars
|
import io.ktor.webjars.Webjars
|
||||||
|
import kotlinx.serialization.json.Json
|
||||||
import java.util.UUID
|
import java.util.UUID
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -33,7 +35,11 @@ fun main() {
|
|||||||
private fun Application.mainModule() {
|
private fun Application.mainModule() {
|
||||||
// Installs Simple JSON Content Negotiation
|
// Installs Simple JSON Content Negotiation
|
||||||
install(ContentNegotiation) {
|
install(ContentNegotiation) {
|
||||||
json()
|
json(Json {
|
||||||
|
serializersModule = KompendiumSerializersModule.module
|
||||||
|
encodeDefaults = true
|
||||||
|
explicitNulls = false
|
||||||
|
})
|
||||||
}
|
}
|
||||||
install(Webjars)
|
install(Webjars)
|
||||||
// Installs the Kompendium Plugin and sets up baseline server metadata
|
// Installs the Kompendium Plugin and sets up baseline server metadata
|
||||||
|
Reference in New Issue
Block a user