guardia-messenger/node_modules/expo-modules-core/android/ExpoModulesCorePlugin.gradle
DESKTOP-TKLFCPRython f29f525c77 refactor: 101.79.17.164 → zioinfo.co.kr 전체 도메인 변환 + Manager UI 배포
- 37개 파일 IP → zioinfo.co.kr 치환 (소스/매뉴얼/설정/하네스)
- Manager DrConsole/NetworkConsole/CsapConsole 빌드 + /var/www/manager/ 배포
- 테스트: Manager HTTP 200, ITSM 신규 API 7개 전체 200

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-31 10:09:17 +09:00

110 lines
2.9 KiB
Groovy

class KotlinExpoModulesCorePlugin implements Plugin<Project> {
void apply(Project project) {
// For compatibility reasons the plugin needs to declare that it provides common build.gradle
// options for the modules
project.rootProject.ext.expoProvidesDefaultConfig = {
true
}
project.ext.safeExtGet = { prop, fallback ->
project.rootProject.ext.has(prop) ? project.rootProject.ext.get(prop) : fallback
}
project.buildscript {
project.ext.kotlinVersion = {
project.rootProject.ext.has("kotlinVersion")
? project.rootProject.ext.get("kotlinVersion")
: "1.9.23"
}
project.ext.kspVersion = {
def kspVersionsMap = [
"1.6.10": "1.6.10-1.0.4",
"1.6.21": "1.6.21-1.0.6",
"1.7.22": "1.7.22-1.0.8",
"1.8.0": "1.8.0-1.0.9",
"1.8.10": "1.8.10-1.0.9",
"1.8.22": "1.8.22-1.0.11",
"1.9.23": "1.9.23-1.0.20"
]
project.rootProject.ext.has("kspVersion")
? project.rootProject.ext.get("kspVersion")
: kspVersionsMap.containsKey(project.ext.kotlinVersion())
? kspVersionsMap.get(project.ext.kotlinVersion())
: "1.9.23-1.0.20"
}
}
}
}
ext.applyKotlinExpoModulesCorePlugin = {
try {
// Tries to apply the kotlin-android plugin if the client project does not apply yet.
// On previous `applyKotlinExpoModulesCorePlugin`, it is inside the `project.buildscript` block.
// We cannot use `project.plugins.hasPlugin()` yet but only to try-catch instead.
apply plugin: 'kotlin-android'
} catch (e) {}
apply plugin: KotlinExpoModulesCorePlugin
}
// Setup build options that are common for all modules
ext.useDefaultAndroidSdkVersions = {
project.android {
compileSdkVersion project.ext.safeExtGet("compileSdkVersion", 34)
defaultConfig {
minSdkVersion project.ext.safeExtGet("minSdkVersion", 23)
targetSdkVersion project.ext.safeExtGet("targetSdkVersion", 34)
}
lintOptions {
abortOnError false
}
}
}
ext.useExpoPublishing = {
if (!project.plugins.hasPlugin('maven-publish')) {
apply plugin: 'maven-publish'
}
project.android {
publishing {
singleVariant("release") {
withSourcesJar()
}
}
}
project.afterEvaluate {
publishing {
publications {
release(MavenPublication) {
from components.release
}
}
repositories {
maven {
url = mavenLocal().url
}
}
}
}
}
ext.useCoreDependencies = {
dependencies {
// Avoids cyclic dependencies
if (!project.project.name.startsWith("expo-modules-core")) {
implementation project.project(':expo-modules-core')
}
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:${project.ext.kotlinVersion()}"
}
}
ext.boolish = { value ->
return value.toString().toBoolean()
}