Skip to content

Commit 89958bc

Browse files
authored
Chore/update prefixes (#219)
2 parents cc3575a + 71b71d1 commit 89958bc

6 files changed

Lines changed: 32 additions & 29 deletions

File tree

surf-api-core/surf-api-core-api/src/main/kotlin/dev/slne/surf/surfapi/core/api/messages/Colors.kt

Lines changed: 22 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -112,68 +112,61 @@ interface Colors {
112112
@JvmField
113113
val DARK_SPACER: NamedTextColor = NamedTextColor.DARK_GRAY
114114

115+
// -------------------- Prefix -------------------- //
116+
115117
/**
116118
* The default prefix color (#3b92d1).
117119
* Applied to all prefixes for consistency across Surf plugins.
118120
*/
119121
@JvmField
120122
val PREFIX_COLOR: TextColor = PRIMARY
121123

122-
// -------------------- Default Colors -------------------- //
124+
/**
125+
* The default prefix character ('»').
126+
*/
127+
@Suppress("MayBeConstant")
128+
@JvmField
129+
val PREFIX_CHARACTER = '»'
130+
131+
private fun buildPrefix(color: TextColor) = buildText {
132+
text(PREFIX_CHARACTER, color)
133+
appendSpace()
134+
darkSpacer("|")
135+
appendSpace()
136+
}
123137

124138
/**
125139
* The default prefix used across all Surf plugins, ensuring a recognizable and uniform
126140
* identifier in messages.
127141
*/
128142
@JvmField
129-
val PREFIX: Component = buildText {
130-
spacer("»")
131-
appendSpace()
132-
}
143+
val PREFIX: Component = buildPrefix(PREFIX_COLOR)
133144

134145
/**
135146
* The default info prefix used in informational messages.
136147
*/
137148
@JvmField
138-
val INFO_PREFIX: Component = buildText {
139-
spacer("[")
140-
info("")
141-
spacer("]")
142-
appendSpace()
143-
}
149+
val INFO_PREFIX: Component = buildPrefix(INFO)
144150

145151
/**
146152
* The default success prefix used in success messages.
147153
*/
148154
@JvmField
149-
val SUCCESS_PREFIX: Component = buildText {
150-
spacer("[")
151-
success("")
152-
spacer("]")
153-
appendSpace()
154-
}
155+
val SUCCESS_PREFIX: Component = buildPrefix(SUCCESS)
155156

156157
/**
157158
* The default warning prefix used in warning messages.
158159
*/
159160
@JvmField
160-
val WARNING_PREFIX: Component = buildText {
161-
spacer("[")
162-
warning("")
163-
spacer("]")
164-
appendSpace()
165-
}
161+
val WARNING_PREFIX: Component = buildPrefix(WARNING)
166162

167163
/**
168164
* The default error prefix used in error messages.
169165
*/
170166
@JvmField
171-
val ERROR_PREFIX: Component = buildText {
172-
spacer("[")
173-
error("")
174-
spacer("]")
175-
appendSpace()
176-
}
167+
val ERROR_PREFIX: Component = buildPrefix(ERROR)
168+
169+
// -------------------- Default Colors -------------------- //
177170

178171
/**
179172
* Represents the color black.

surf-api-core/surf-api-core-api/src/main/kotlin/dev/slne/surf/surfapi/core/api/messages/builder/SurfComponentBuilder.kt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -54,9 +54,11 @@ interface SurfComponentBuilder : TextComponent.Builder, ComponentBuilderColors {
5454
suspend fun appendNewlineAsync(block: suspend SurfComponentBuilder.() -> Unit) =
5555
appendNewline().appendAsync(block)
5656

57+
@Deprecated("Use TYPE specific functions")
5758
fun appendNewPrefixedLine(block: SurfComponentBuilder.() -> Unit) =
5859
appendNewPrefixedLine().append(block)
5960

61+
@Deprecated("Use TYPE specific functions")
6062
suspend fun appendNewPrefixedLineAsync(block: suspend SurfComponentBuilder.() -> Unit) =
6163
appendNewPrefixedLine().appendAsync(block)
6264

surf-api-core/surf-api-core-api/src/main/kotlin/dev/slne/surf/surfapi/core/api/messages/builder/colors/ErrorComponentBuilderColor.kt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,8 @@ import net.kyori.adventure.text.format.TextDecoration
88
interface ErrorComponentBuilderColor : ComponentBuilderColor {
99
fun SurfComponentBuilder.appendErrorPrefix() = append(Colors.ERROR_PREFIX)
1010
fun SurfComponentBuilder.appendNewErrorPrefixedLine() = appendNewline().appendErrorPrefix()
11+
suspend fun SurfComponentBuilder.appendNewErrorPrefixedLineAsync(block: suspend SurfComponentBuilder.() -> Unit) =
12+
appendNewline().appendErrorPrefix().appendAsync(block)
1113

1214
fun SurfComponentBuilder.error(text: String, vararg decoration: TextDecoration) =
1315
coloredComponent(text, Colors.ERROR, *decoration)

surf-api-core/surf-api-core-api/src/main/kotlin/dev/slne/surf/surfapi/core/api/messages/builder/colors/InfoComponentBuilderColor.kt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,8 @@ import net.kyori.adventure.text.format.TextDecoration
88
interface InfoComponentBuilderColor : ComponentBuilderColor {
99
fun SurfComponentBuilder.appendInfoPrefix() = append(Colors.INFO_PREFIX)
1010
fun SurfComponentBuilder.appendNewInfoPrefixedLine() = appendNewline().appendInfoPrefix()
11+
suspend fun SurfComponentBuilder.appendNewInfoPrefixedLineAsync(block: suspend SurfComponentBuilder.() -> Unit) =
12+
appendNewline().appendInfoPrefix().appendAsync(block)
1113

1214
fun SurfComponentBuilder.info(text: String, vararg decoration: TextDecoration) =
1315
coloredComponent(text, Colors.INFO, *decoration)

surf-api-core/surf-api-core-api/src/main/kotlin/dev/slne/surf/surfapi/core/api/messages/builder/colors/SuccessComponentBuilderColor.kt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,8 @@ import net.kyori.adventure.text.format.TextDecoration
88
interface SuccessComponentBuilderColor : ComponentBuilderColor {
99
fun SurfComponentBuilder.appendSuccessPrefix() = append(Colors.SUCCESS_PREFIX)
1010
fun SurfComponentBuilder.appendNewSuccessPrefixedLine() = appendNewline().appendSuccessPrefix()
11+
suspend fun SurfComponentBuilder.appendNewSuccessPrefixedLineAsync(block: suspend SurfComponentBuilder.() -> Unit) =
12+
appendNewline().appendSuccessPrefix().appendAsync(block)
1113

1214
fun SurfComponentBuilder.success(text: String, vararg decoration: TextDecoration) =
1315
coloredComponent(text, Colors.SUCCESS, *decoration)

surf-api-core/surf-api-core-api/src/main/kotlin/dev/slne/surf/surfapi/core/api/messages/builder/colors/WarningComponentBuilderColor.kt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,8 @@ import net.kyori.adventure.text.format.TextDecoration
88
interface WarningComponentBuilderColor : ComponentBuilderColor {
99
fun SurfComponentBuilder.appendWarningPrefix() = append(Colors.WARNING_PREFIX)
1010
fun SurfComponentBuilder.appendNewWarningPrefixedLine() = appendNewline().appendWarningPrefix()
11+
suspend fun SurfComponentBuilder.appendNewWarningPrefixedLineAsync(block: suspend SurfComponentBuilder.() -> Unit) =
12+
appendNewline().appendWarningPrefix().appendAsync(block)
1113

1214
fun SurfComponentBuilder.warning(text: String, vararg decoration: TextDecoration) =
1315
coloredComponent(text, Colors.WARNING, *decoration)

0 commit comments

Comments
 (0)