SpotiFlyer/common/dependency-injection/build.gradle.kts

99 lines
3.5 KiB
Plaintext
Raw Normal View History

2021-03-18 19:11:45 +01:00
/*
* * Copyright (c) 2021 Shabinder Singh
* * This program is free software: you can redistribute it and/or modify
* * it under the terms of the GNU General Public License as published by
* * the Free Software Foundation, either version 3 of the License, or
* * (at your option) any later version.
* *
* * This program is distributed in the hope that it will be useful,
* * but WITHOUT ANY WARRANTY; without even the implied warranty of
* * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* * GNU General Public License for more details.
* *
* * You should have received a copy of the GNU General Public License
* * along with this program. If not, see <https://www.gnu.org/licenses/>.
*/
2021-02-26 00:59:54 +01:00
import org.jetbrains.compose.compose
2021-01-26 13:54:28 +01:00
plugins {
2021-03-06 18:33:05 +01:00
id("multiplatform-setup")
2021-01-26 13:54:28 +01:00
id("android-setup")
kotlin("plugin.serialization")
kotlin("native.cocoapods") //version "1.4.32"
2021-01-26 13:54:28 +01:00
}
version = "1.0"
2021-01-26 13:54:28 +01:00
kotlin {
cocoapods {
// Configure fields required by CocoaPods.
summary = "SpotiFlyer Native Module"
homepage = "https://github.com/Shabinder/SpotiFlyer"
authors = "Shabinder Singh"
// You can change the name of the produced framework.
// By default, it is the name of the Gradle project.
frameworkName = "SpotiFlyer"
ios.deploymentTarget = "13.5"
// Dependencies
pod("TagLibIOS") {
version = "~> 0.3"
}
}
2021-01-26 13:54:28 +01:00
sourceSets {
2021-01-26 20:58:11 +01:00
commonMain {
2021-01-26 13:54:28 +01:00
dependencies {
implementation(project(":common:data-models"))
implementation(project(":common:database"))
implementation("org.jetbrains.kotlinx:atomicfu:0.15.2")
2021-03-05 20:50:24 +01:00
implementation("org.jetbrains.kotlinx:kotlinx-serialization-json:1.1.0")
2021-01-31 12:33:41 +01:00
implementation("org.jetbrains.kotlinx:kotlinx-datetime:0.1.1")
implementation("com.shabinder.fuzzywuzzy:fuzzywuzzy:1.0")
2021-01-26 13:54:28 +01:00
implementation(Ktor.clientCore)
implementation(Ktor.clientSerialization)
2021-01-29 18:53:17 +01:00
implementation(Ktor.clientLogging)
implementation(Ktor.clientJson)
2021-01-26 13:54:28 +01:00
implementation(Ktor.auth)
2021-04-16 19:13:45 +02:00
api(Extras.youtubeDownloader)
2021-01-29 18:53:17 +01:00
// koin
api(Koin.core)
api(Koin.test)
api(Extras.kermit)
2021-01-26 13:54:28 +01:00
}
}
2021-01-26 20:58:11 +01:00
androidMain {
2021-03-19 16:15:58 +01:00
dependencies {
implementation(compose.materialIconsExtended)
2021-03-09 13:15:22 +01:00
implementation(Koin.android)
2021-01-26 13:54:28 +01:00
implementation(Ktor.clientAndroid)
2021-02-22 18:38:33 +01:00
implementation(Extras.Android.fetch)
implementation(Extras.Android.razorpay)
2021-03-09 13:15:22 +01:00
api(Extras.mp3agic)
2021-04-19 12:50:26 +02:00
api(Extras.jaudioTagger)
2021-04-19 20:24:48 +02:00
api("com.github.shabinder:storage-chooser:2.0.4.45")
2021-03-19 16:15:58 +01:00
// api(files("$rootDir/libs/mobile-ffmpeg.aar"))
2021-01-26 13:54:28 +01:00
}
}
2021-01-26 20:58:11 +01:00
desktopMain {
2021-03-19 16:15:58 +01:00
dependencies {
implementation(compose.materialIconsExtended)
2021-01-29 18:53:17 +01:00
implementation(Ktor.clientApache)
implementation(Ktor.slf4j)
2021-03-09 13:15:22 +01:00
api(Extras.mp3agic)
2021-04-19 12:50:26 +02:00
api(Extras.jaudioTagger)
2021-01-26 13:54:28 +01:00
}
}
2021-03-06 18:33:05 +01:00
jsMain {
dependencies {
implementation(project(":common:data-models"))
2021-03-12 21:18:03 +01:00
implementation(Ktor.clientJs)
2021-03-19 16:15:58 +01:00
implementation(npm("browser-id3-writer", "4.4.0"))
implementation(npm("file-saver", "2.0.4"))
2021-03-06 18:33:05 +01:00
}
}
2021-01-26 13:54:28 +01:00
}
}