commonMain.com.atproto.label.LabelValueDefinition.kt Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of bluesky-jvm Show documentation
Show all versions of bluesky-jvm Show documentation
Bluesky Social API bindings for Kotlin.
The newest version!
@file:Suppress("DEPRECATION")
package com.atproto.label
import kotlin.Boolean
import kotlin.String
import kotlin.Suppress
import kotlinx.serialization.Serializable
import sh.christian.ozone.api.model.ReadOnlyList
/**
* Declares a label value and its expected interpretations and behaviors.
*
* @param identifier The value of the label being defined. Must only include lowercase ascii and the
* '-' character ([a-z-]+).
* @param severity How should a client visually convey this label? 'inform' means neutral and
* informational; 'alert' means negative and warning; 'none' means show nothing.
* @param blurs What should this label hide in the UI, if applied? 'content' hides all of the
* target; 'media' hides the images/video/audio; 'none' hides nothing.
* @param defaultSetting The default setting for this label.
* @param adultOnly Does the user need to have adult content enabled in order to configure this
* label?
*/
@Serializable
public data class LabelValueDefinition(
/**
* The value of the label being defined. Must only include lowercase ascii and the '-' character
* ([a-z-]+).
*/
public val identifier: String,
/**
* How should a client visually convey this label? 'inform' means neutral and informational;
* 'alert' means negative and warning; 'none' means show nothing.
*/
public val severity: Severity,
/**
* What should this label hide in the UI, if applied? 'content' hides all of the target; 'media'
* hides the images/video/audio; 'none' hides nothing.
*/
public val blurs: Blurs,
/**
* The default setting for this label.
*/
public val defaultSetting: DefaultSetting? = DefaultSetting.Warn,
/**
* Does the user need to have adult content enabled in order to configure this label?
*/
public val adultOnly: Boolean? = null,
public val locales: ReadOnlyList,
) {
init {
require(identifier.count() <= 100) {
"identifier.count() must be <= 100, but was ${identifier.count()}"
}
}
}