Initial Kotlin setup and migrate YogaConstants #1829

Closed
mateoguzmana wants to merge 2 commits from feat/initial-setup-for-kotlin into main
5 changed files with 28 additions and 25 deletions

3
.gitignore vendored
View File

@@ -73,3 +73,6 @@ local.properties
# Docusarus build # Docusarus build
.docusaurus .docusaurus
# Android Studio
.idea

View File

@@ -9,6 +9,7 @@ plugins {
id("com.android.library") version "8.7.1" apply false id("com.android.library") version "8.7.1" apply false
cortinico commented 2025-08-04 02:39:37 -07:00 (Migrated from github.com)
Review

Can you use the same Kotlin version we use inside react-native here (2.1.20)?

Can you use the same Kotlin version we use inside react-native here (2.1.20)?
mateoguzmana commented 2025-08-04 09:10:40 -07:00 (Migrated from github.com)
Review

Changed it in a4286e3233

Changed it in a4286e3233e491175fa8d0599880dca97c05fe4a
id("com.android.application") version "8.7.1" apply false id("com.android.application") version "8.7.1" apply false
id("io.github.gradle-nexus.publish-plugin") version "1.3.0" id("io.github.gradle-nexus.publish-plugin") version "1.3.0"
id 'org.jetbrains.kotlin.android' version '2.1.20' apply false
} }
allprojects { allprojects {

View File

@@ -9,6 +9,7 @@ plugins {
id("com.android.library") id("com.android.library")
id("maven-publish") id("maven-publish")
id("signing") id("signing")
id("org.jetbrains.kotlin.android")
} }
group = "com.facebook.yoga" group = "com.facebook.yoga"
@@ -48,6 +49,10 @@ android {
} }
} }
kotlinOptions {
jvmTarget = "1.8"
}
publishing { publishing {
multipleVariants { multipleVariants {
withSourcesJar() withSourcesJar()
@@ -60,6 +65,7 @@ android {
dependencies { dependencies {
implementation("com.google.code.findbugs:jsr305:3.0.2") implementation("com.google.code.findbugs:jsr305:3.0.2")
implementation("com.facebook.soloader:soloader:0.10.5") implementation("com.facebook.soloader:soloader:0.10.5")
implementation("androidx.core:core-ktx:1.16.0")
testImplementation("junit:junit:4.12") testImplementation("junit:junit:4.12")
} }

View File

@@ -1,25 +0,0 @@
/*
* Copyright (c) Meta Platforms, Inc. and affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
package com.facebook.yoga;
public class YogaConstants {
public static final float UNDEFINED = Float.NaN;
public static boolean isUndefined(float value) {
return Float.compare(value, UNDEFINED) == 0;
}
public static boolean isUndefined(YogaValue value) {
return value.unit == YogaUnit.UNDEFINED;
}
public static float getUndefined() {
return UNDEFINED;
}
}

View File

@@ -0,0 +1,18 @@
/*
* Copyright (c) Meta Platforms, Inc. and affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
package com.facebook.yoga
public object YogaConstants {
@JvmField public val UNDEFINED: Float = Float.NaN
@JvmStatic public fun isUndefined(value: Float): Boolean = value.compareTo(UNDEFINED) == 0
@JvmStatic public fun isUndefined(value: YogaValue): Boolean = value.unit == YogaUnit.UNDEFINED
@JvmStatic public fun getUndefined(): Float = UNDEFINED
}