Skip to content

Apply refactoring #20

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 14 commits into from
Nov 8, 2021
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// 395
// 401
<!-- <image src="https://raw.githubusercontent.com/GitMessengerBot/GitMessengerBot-Android/stable/app/src/main/res/mipmap-xxhdpi/ic_launcher.png" align="right" /> -->

# GitMessengerBot [![wakatime](https://wakatime.com/badge/github/GitMessengerBot/GitMessengerBot-Android.svg)](https://wakatime.com/badge/github/GitMessengerBot/GitMessengerBot-Android) ![ci](https://github.com/GitMessengerBot/GitMessengerBot-Android/actions/workflows/android-ci.yml/badge.svg)
Expand Down
78 changes: 33 additions & 45 deletions buildSrc/src/main/kotlin/Dependencies.kt
Original file line number Diff line number Diff line change
Expand Up @@ -22,11 +22,13 @@ object Application {
}

object Versions {
const val Orbit = "4.2.0"

object Essential {
const val Kotlin = "1.5.21"
const val Kotlin = "1.5.31"
const val CoreKtx = "1.6.0"
const val Coroutines = "1.5.1"
const val Gradle = "7.1.0-alpha05"
const val Gradle = "7.1.0-beta02"
}

object Bot {
Expand All @@ -41,34 +43,34 @@ object Versions {
}

object Util {
const val Pluto = "1.0.8"
const val Timber = "5.0.1"
const val LiveData = "2.3.1"
const val Jackson = "2.12.5"
const val Pluto = "1.1.1"
const val Erratum = "1.0.1"
const val Logeukes = "1.0.0"
const val Jackson = "2.13.0"
const val LeakCanary = "2.7"
const val KeyboardObserver = "1.0.1"
const val CheckDependencyUpdates = "1.5.0"
}

object Network {
const val Jsoup = "1.14.2"
const val OkHttp = "4.9.1"
const val Jsoup = "1.14.3"
const val OkHttp = "4.9.2"
const val Retrofit = "2.9.0"
}

object Jetpack {
const val Room = "2.3.0"
const val Hilt = "2.38.1"
const val Hilt = "2.40"
}

object Compose {
const val Lottie = "4.1.0"
const val Master = "1.0.2"
const val Activity = "1.3.1"
const val Lottie = "4.2.0"
const val Master = "1.0.5"
const val Activity = "1.4.0"
const val Lifecycle = "2.4.0"
const val TimeLineView = "1.0.2"
const val FancyBottomBar = "1.0.1"
const val LandscapistCoil = "1.3.6"
const val Lifecycle = "1.0.0-alpha07"
const val LandscapistCoil = "1.4.1"
const val Navigation = "2.4.0-alpha09"
const val ConstraintLayout = "1.0.0-beta01"
}
Expand All @@ -77,93 +79,79 @@ object Versions {
const val Master = "17.0.0"
const val Classpath = "0.10.4"
}

object Mvi {
const val Orbit = "4.2.0"
}
}

object Dependencies {
const val jsoup = "org.jsoup:jsoup:${Versions.Network.Jsoup}"

const val Jsoup = "org.jsoup:jsoup:${Versions.Network.Jsoup}"
const val Orbit = "org.orbit-mvi:orbit-viewmodel:${Versions.Orbit}"
const val browser = "androidx.browser:browser:${Versions.Ui.Browser}"
const val LandscapistCoil =
"com.github.skydoves:landscapist-coil:${Versions.Compose.LandscapistCoil}"

const val hilt = "com.google.dagger:hilt-android:${Versions.Jetpack.Hilt}"
const val hiltCompiler = "com.google.dagger:hilt-android-compiler:${Versions.Jetpack.Hilt}"
const val Hilt = "com.google.dagger:hilt-android:${Versions.Jetpack.Hilt}"
const val HiltCompiler = "com.google.dagger:hilt-android-compiler:${Versions.Jetpack.Hilt}"

const val roomCompiler = "androidx.room:room-compiler:${Versions.Jetpack.Room}"
const val RoomCompiler = "androidx.room:room-compiler:${Versions.Jetpack.Room}"

const val livedata =
"androidx.lifecycle:lifecycle-livedata-core-ktx:${Versions.Util.LiveData}"

val essential = listOf(
val Essential = listOf(
"androidx.core:core-ktx:${Versions.Essential.CoreKtx}",
"org.jetbrains.kotlinx:kotlinx-coroutines-core:${Versions.Essential.Coroutines}"
)

val bot = listOf(
val Bot = listOf(
"org.mozilla:rhino:${Versions.Bot.Rhino}",
"com.eclipsesource.j2v8:j2v8:${Versions.Bot.J2V8}"
)

val ui = listOf(
val Ui = listOf(
"com.google.android.material:material:${Versions.Ui.Material}",
"com.google.android.gms:play-services-oss-licenses:${Versions.OssLicense.Master}"
)

val jackson = listOf(
val Jackson = listOf(
"com.fasterxml.jackson.core:jackson-core:${Versions.Util.Jackson}",
"com.fasterxml.jackson.core:jackson-databind:${Versions.Util.Jackson}",
"com.fasterxml.jackson.core:jackson-annotations:${Versions.Util.Jackson}",
"com.fasterxml.jackson.module:jackson-module-kotlin:${Versions.Util.Jackson}"
)

val retrofit = listOf(
val Retrofit = listOf(
"com.squareup.okhttp3:okhttp:${Versions.Network.OkHttp}",
"com.squareup.retrofit2:retrofit:${Versions.Network.Retrofit}"
)

val retrofitutil = listOf(
val RetrofitUtil = listOf(
"com.squareup.okhttp3:logging-interceptor:${Versions.Network.OkHttp}",
"com.squareup.retrofit2:converter-jackson:${Versions.Network.Retrofit}"
)

val util = listOf(
"com.jakewharton.timber:timber:${Versions.Util.Timber}",
val Util = listOf(
"io.github.jisungbin:erratum:${Versions.Util.Erratum}",
"io.github.jisungbin:logeukes:${Versions.Util.Logeukes}",
"io.github.ParkSangGwon:tedkeyboardobserver:${Versions.Util.KeyboardObserver}"
)

val room = listOf(
val Room = listOf(
"androidx.room:room-ktx:${Versions.Jetpack.Room}",
"androidx.room:room-runtime:${Versions.Jetpack.Room}"
)

val compose = listOf(
val Compose = listOf(
"androidx.compose.ui:ui:${Versions.Compose.Master}",
"androidx.compose.ui:ui-tooling:${Versions.Compose.Master}",
"com.airbnb.android:lottie-compose:${Versions.Compose.Lottie}",
"androidx.compose.compiler:compiler:${Versions.Compose.Master}",
"androidx.compose.material:material:${Versions.Compose.Master}",
"androidx.activity:activity-compose:${Versions.Compose.Activity}",
"io.github.jisungbin:timelineview:${Versions.Compose.TimeLineView}",
"androidx.compose.runtime:runtime-livedata:${Versions.Compose.Master}",
"io.github.jisungbin:fancybottombar:${Versions.Compose.FancyBottomBar}",
"androidx.navigation:navigation-compose:${Versions.Compose.Navigation}",
"androidx.lifecycle:lifecycle-viewmodel-compose:${Versions.Compose.Lifecycle}",
"androidx.constraintlayout:constraintlayout-compose:${Versions.Compose.ConstraintLayout}"
)

val mvi = listOf(
"org.orbit-mvi:orbit-core:${Versions.Mvi.Orbit}",
"org.orbit-mvi:orbit-viewmodel:${Versions.Mvi.Orbit}"
)

val debug = listOf(
val Debug = listOf(
"com.mocklets:pluto:${Versions.Util.Pluto}",
"com.squareup.leakcanary:leakcanary-android:${Versions.Util.LeakCanary}"
)

val release = listOf("com.mocklets:pluto-no-op:${Versions.Util.Pluto}")
}
7 changes: 3 additions & 4 deletions common/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -38,10 +38,9 @@ android {
}

dependencies {
implementation(Dependencies.jsoup)
implementation(Dependencies.Jsoup)
implementation(Dependencies.browser)
implementation(Dependencies.livedata)

Dependencies.essential.forEach(::api)
Dependencies.jackson.forEach(::implementation)
Dependencies.Essential.forEach(::api)
Dependencies.Jackson.forEach(::implementation)
}
6 changes: 2 additions & 4 deletions common/src/main/AndroidManifest.xml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
<!--
<?xml version="1.0" encoding="utf-8"?><!--
~ GitMessengerBot © 2021 지성빈 & 구환. all rights reserved.
~ GitMessengerBot license is under the GPL-3.0.
~
Expand All @@ -7,6 +7,4 @@
~ Please see: https://github.com/GitMessengerBot/GitMessengerBot-Android/blob/master/LICENSE.
-->

<manifest package="io.github.jisungbin.gitmessengerbot.util">

</manifest>
<manifest package="io.github.jisungbin.gitmessengerbot.util" />
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,8 @@
* Please see: https://github.com/GitMessengerBot/GitMessengerBot-Android/blob/master/LICENSE.
*/

package io.github.jisungbin.gitmessengerbot.common.config
package io.github.jisungbin.gitmessengerbot.common.constant

object Config {
object BotConstant {
const val KakaoTalkDefaultPackageName = "com.kakao.talk"
}
Original file line number Diff line number Diff line change
Expand Up @@ -7,9 +7,9 @@
* Please see: https://github.com/GitMessengerBot/GitMessengerBot-Android/blob/master/LICENSE.
*/

package io.github.jisungbin.gitmessengerbot.common.config
package io.github.jisungbin.gitmessengerbot.common.constant

object EditorConfig {
object EditorConstant {
const val HorizontalScroll = true
const val FontName = "" // TODO
const val FontSize = 13
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,13 +7,13 @@
* Please see: https://github.com/GitMessengerBot/GitMessengerBot-Android/blob/master/LICENSE.
*/

package io.github.jisungbin.gitmessengerbot.common.config
package io.github.jisungbin.gitmessengerbot.common.constant

object GithubConfig {
object GithubConstant {
const val BaseUrl = "https://github.com"
const val BaseApiUrl = "https://api.github.com"

const val DataPath = "${PathConfig.AppStorage}/github-data.json"
const val DataPath = "${PathConstant.AppStorage}/github-data.json"

const val DefaultBranch = "main"
const val DefaultRepoDescription = "Created by GitMessengerBot"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,9 +7,9 @@
* Please see: https://github.com/GitMessengerBot/GitMessengerBot-Android/blob/master/LICENSE.
*/

package io.github.jisungbin.gitmessengerbot.common.config
package io.github.jisungbin.gitmessengerbot.common.constant

object IntentConfig {
object IntentConstant {
const val ScriptId = "intent-script-id"
const val DebugScriptId = "intent-debug-script-id"

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,9 +7,9 @@
* Please see: https://github.com/GitMessengerBot/GitMessengerBot-Android/blob/master/LICENSE.
*/

package io.github.jisungbin.gitmessengerbot.common.config
package io.github.jisungbin.gitmessengerbot.common.constant

object PathConfig {
object PathConstant {
internal const val AppStorage = "GitMessengerBot/data"
const val AppData = "$AppStorage/app.json"
}
Original file line number Diff line number Diff line change
Expand Up @@ -7,28 +7,28 @@
* Please see: https://github.com/GitMessengerBot/GitMessengerBot-Android/blob/master/LICENSE.
*/

package io.github.jisungbin.gitmessengerbot.common.config
package io.github.jisungbin.gitmessengerbot.common.constant

import io.github.jisungbin.gitmessengerbot.common.script.getScriptSuffix
import io.github.jisungbin.gitmessengerbot.common.script.toScriptLangName
import kotlin.random.Random

@Suppress("FunctionName")
object ScriptConfig {
object ScriptConstant {
const val DebugAllBot = -1
const val EvalId = -2

const val DefaultResponseFunctionName = "onMessage"
const val DebugAllPath = "${PathConfig.AppStorage}/debug"
const val DebugAllPath = "${PathConstant.AppStorage}/debug"

fun DebugDataPath(scriptId: Int) =
"${PathConfig.AppStorage}/debug/$scriptId/${Random.nextInt()}.json"
"${PathConstant.AppStorage}/debug/$scriptId/${Random.nextInt()}.json"

fun ScriptPath(name: String, lang: Int) =
"${PathConfig.AppStorage}/scripts/${lang.toScriptLangName()}/$name.${lang.getScriptSuffix()}"
"${PathConstant.AppStorage}/scripts/${lang.toScriptLangName()}/$name.${lang.getScriptSuffix()}"

fun ScriptListPath(lang: Int) = "${PathConfig.AppStorage}/scripts/${lang.toScriptLangName()}"
fun ScriptListPath(lang: Int) = "${PathConstant.AppStorage}/scripts/${lang.toScriptLangName()}"

fun ScriptDataPath(name: String, lang: Int) =
"${PathConfig.AppStorage}/scripts/${lang.toScriptLangName()}/$name-data.json"
"${PathConstant.AppStorage}/scripts/${lang.toScriptLangName()}/$name-data.json"
}
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,8 @@

package io.github.jisungbin.gitmessengerbot.common.exception

class TodoException(where: String) : Exception("$where 은 아직 개발되지 않은 기능입니다.")

class CoreException(override val message: String?) : Exception()

class DataGithubException(override val message: String?) : Exception()
Expand Down

This file was deleted.

Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
/*
* GitMessengerBot © 2021 지성빈 & 구환. all rights reserved.
* GitMessengerBot license is under the GPL-3.0.
*
* [Result.kt] created by Ji Sungbin on 21. 11. 7. 오후 8:33
*
* Please see: https://github.com/GitMessengerBot/GitMessengerBot-Android/blob/master/LICENSE.
*/

package io.github.jisungbin.gitmessengerbot.common.extension

inline fun <T> Result<T>.doWhen(
onSuccess: (result: T) -> Unit,
onFailure: (throwable: Throwable) -> Unit
) {
if (isSuccess) {
onSuccess(getOrNull()!!)
} else {
onFailure(exceptionOrNull()!!)
}
}
Loading