diff --git a/build.gradle.kts b/build.gradle.kts index 94880c7..0f3330b 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -62,6 +62,11 @@ kotlin { sourceSets { + all { + languageSettings.apply { + optIn("kotlin.js.ExperimentalJsExport") + } + } val commonMain by getting { dependencies { implementation("org.jetbrains.kotlinx:kotlinx-datetime:0.4.1") diff --git a/src/commonMain/kotlin/org/hisp/dhis/lib/expression/ExpressionMode.kt b/src/commonMain/kotlin/org/hisp/dhis/lib/expression/ExpressionMode.kt index a248bac..df41a9f 100644 --- a/src/commonMain/kotlin/org/hisp/dhis/lib/expression/ExpressionMode.kt +++ b/src/commonMain/kotlin/org/hisp/dhis/lib/expression/ExpressionMode.kt @@ -4,10 +4,8 @@ import org.hisp.dhis.lib.expression.eval.NodeValidator import org.hisp.dhis.lib.expression.spi.ValueType import org.hisp.dhis.lib.expression.syntax.ExpressionGrammar import org.hisp.dhis.lib.expression.syntax.Fragment -import kotlin.js.ExperimentalJsExport import kotlin.js.JsExport -@OptIn(ExperimentalJsExport::class) @JsExport enum class ExpressionMode( internal val fragments: List, diff --git a/src/commonMain/kotlin/org/hisp/dhis/lib/expression/ast/Node.kt b/src/commonMain/kotlin/org/hisp/dhis/lib/expression/ast/Node.kt index 202ec81..1879ee9 100644 --- a/src/commonMain/kotlin/org/hisp/dhis/lib/expression/ast/Node.kt +++ b/src/commonMain/kotlin/org/hisp/dhis/lib/expression/ast/Node.kt @@ -1,6 +1,6 @@ package org.hisp.dhis.lib.expression.ast -import org.hisp.dhis.lib.expression.ast.BinaryOperator +import org.hisp.dhis.lib.expression.ast.Node.Factory import org.hisp.dhis.lib.expression.spi.DataItem import org.hisp.dhis.lib.expression.spi.ID import org.hisp.dhis.lib.expression.spi.Variable diff --git a/src/commonMain/kotlin/org/hisp/dhis/lib/expression/ast/Nodes.kt b/src/commonMain/kotlin/org/hisp/dhis/lib/expression/ast/Nodes.kt index dd36967..06a6bc3 100644 --- a/src/commonMain/kotlin/org/hisp/dhis/lib/expression/ast/Nodes.kt +++ b/src/commonMain/kotlin/org/hisp/dhis/lib/expression/ast/Nodes.kt @@ -2,7 +2,6 @@ package org.hisp.dhis.lib.expression.ast import kotlinx.datetime.LocalDate import org.hisp.dhis.lib.expression.ast.NodeAnnotations.Whitespace -import org.hisp.dhis.lib.expression.spi.AggregationType import org.hisp.dhis.lib.expression.spi.* /** diff --git a/src/commonMain/kotlin/org/hisp/dhis/lib/expression/eval/Api.kt b/src/commonMain/kotlin/org/hisp/dhis/lib/expression/eval/Api.kt index de73640..153b586 100644 --- a/src/commonMain/kotlin/org/hisp/dhis/lib/expression/eval/Api.kt +++ b/src/commonMain/kotlin/org/hisp/dhis/lib/expression/eval/Api.kt @@ -5,7 +5,6 @@ import org.hisp.dhis.lib.expression.ast.NodeType import org.hisp.dhis.lib.expression.ast.Nodes.VariableNode import org.hisp.dhis.lib.expression.ast.VariableType import org.hisp.dhis.lib.expression.spi.* -import kotlin.collections.LinkedHashSet /** * This is the exposed API of the evaluation package. It contains all high level functions to turn a [Node]-tree diff --git a/src/commonMain/kotlin/org/hisp/dhis/lib/expression/math/NormalDistribution.kt b/src/commonMain/kotlin/org/hisp/dhis/lib/expression/math/NormalDistribution.kt index 10c69df..8ab0b1b 100644 --- a/src/commonMain/kotlin/org/hisp/dhis/lib/expression/math/NormalDistribution.kt +++ b/src/commonMain/kotlin/org/hisp/dhis/lib/expression/math/NormalDistribution.kt @@ -1,7 +1,5 @@ package org.hisp.dhis.lib.expression.math -import kotlin.math.abs - /** * Uses z-tables as found on https://en.wikipedia.org/wiki/Standard_normal_table * diff --git a/src/commonMain/kotlin/org/hisp/dhis/lib/expression/spi/AggregationType.kt b/src/commonMain/kotlin/org/hisp/dhis/lib/expression/spi/AggregationType.kt index f8134ea..82400cd 100644 --- a/src/commonMain/kotlin/org/hisp/dhis/lib/expression/spi/AggregationType.kt +++ b/src/commonMain/kotlin/org/hisp/dhis/lib/expression/spi/AggregationType.kt @@ -1,9 +1,7 @@ package org.hisp.dhis.lib.expression.spi -import kotlin.js.ExperimentalJsExport import kotlin.js.JsExport -@OptIn(ExperimentalJsExport::class) @JsExport enum class AggregationType { sum, diff --git a/src/commonMain/kotlin/org/hisp/dhis/lib/expression/spi/DataItemType.kt b/src/commonMain/kotlin/org/hisp/dhis/lib/expression/spi/DataItemType.kt index a319841..4df89b1 100644 --- a/src/commonMain/kotlin/org/hisp/dhis/lib/expression/spi/DataItemType.kt +++ b/src/commonMain/kotlin/org/hisp/dhis/lib/expression/spi/DataItemType.kt @@ -1,6 +1,5 @@ package org.hisp.dhis.lib.expression.spi -import kotlin.js.ExperimentalJsExport import kotlin.js.JsExport /** @@ -8,7 +7,6 @@ import kotlin.js.JsExport * * @author Jan Bernitt */ -@OptIn(ExperimentalJsExport::class) @JsExport enum class DataItemType(internal val symbol: String, private val parameterTypes: List>) { diff --git a/src/commonMain/kotlin/org/hisp/dhis/lib/expression/spi/ExpressionFunctions.kt b/src/commonMain/kotlin/org/hisp/dhis/lib/expression/spi/ExpressionFunctions.kt index 42300ed..4fbd7d0 100644 --- a/src/commonMain/kotlin/org/hisp/dhis/lib/expression/spi/ExpressionFunctions.kt +++ b/src/commonMain/kotlin/org/hisp/dhis/lib/expression/spi/ExpressionFunctions.kt @@ -3,12 +3,10 @@ package org.hisp.dhis.lib.expression.spi import com.ionspin.kotlin.bignum.decimal.BigDecimal import kotlinx.datetime.* import org.hisp.dhis.lib.expression.ast.BinaryOperator.Companion.modulo -import org.hisp.dhis.lib.expression.math.VectorAggregation import org.hisp.dhis.lib.expression.math.GS1Elements.Companion.fromKey import org.hisp.dhis.lib.expression.math.NormalDistribution +import org.hisp.dhis.lib.expression.math.VectorAggregation import org.hisp.dhis.lib.expression.math.ZScore -import kotlin.js.ExperimentalJsExport -import kotlin.js.JsExport import kotlin.math.ceil import kotlin.math.floor import kotlin.math.ln diff --git a/src/commonMain/kotlin/org/hisp/dhis/lib/expression/spi/ID.kt b/src/commonMain/kotlin/org/hisp/dhis/lib/expression/spi/ID.kt index b410dea..9dc0972 100644 --- a/src/commonMain/kotlin/org/hisp/dhis/lib/expression/spi/ID.kt +++ b/src/commonMain/kotlin/org/hisp/dhis/lib/expression/spi/ID.kt @@ -1,6 +1,5 @@ package org.hisp.dhis.lib.expression.spi -import kotlin.js.ExperimentalJsExport import kotlin.js.JsExport /** @@ -10,7 +9,6 @@ import kotlin.js.JsExport * * @author Jan Bernitt */ -@OptIn(ExperimentalJsExport::class) @JsExport data class ID( val type: IDType, diff --git a/src/commonMain/kotlin/org/hisp/dhis/lib/expression/spi/IDType.kt b/src/commonMain/kotlin/org/hisp/dhis/lib/expression/spi/IDType.kt index d276472..3e5f189 100644 --- a/src/commonMain/kotlin/org/hisp/dhis/lib/expression/spi/IDType.kt +++ b/src/commonMain/kotlin/org/hisp/dhis/lib/expression/spi/IDType.kt @@ -1,9 +1,7 @@ package org.hisp.dhis.lib.expression.spi -import kotlin.js.ExperimentalJsExport import kotlin.js.JsExport -@OptIn(ExperimentalJsExport::class) @JsExport enum class IDType { AttributeUID, diff --git a/src/commonMain/kotlin/org/hisp/dhis/lib/expression/spi/ProgramVariable.kt b/src/commonMain/kotlin/org/hisp/dhis/lib/expression/spi/ProgramVariable.kt index 30e51b5..8fc2266 100644 --- a/src/commonMain/kotlin/org/hisp/dhis/lib/expression/spi/ProgramVariable.kt +++ b/src/commonMain/kotlin/org/hisp/dhis/lib/expression/spi/ProgramVariable.kt @@ -1,9 +1,7 @@ package org.hisp.dhis.lib.expression.spi -import kotlin.js.ExperimentalJsExport import kotlin.js.JsExport -@OptIn(ExperimentalJsExport::class) @JsExport enum class ProgramVariable { /* diff --git a/src/commonMain/kotlin/org/hisp/dhis/lib/expression/spi/ValueType.kt b/src/commonMain/kotlin/org/hisp/dhis/lib/expression/spi/ValueType.kt index ab40615..20fd5ae 100644 --- a/src/commonMain/kotlin/org/hisp/dhis/lib/expression/spi/ValueType.kt +++ b/src/commonMain/kotlin/org/hisp/dhis/lib/expression/spi/ValueType.kt @@ -2,7 +2,6 @@ package org.hisp.dhis.lib.expression.spi import kotlinx.datetime.Instant import kotlinx.datetime.LocalDate -import kotlin.js.ExperimentalJsExport import kotlin.js.JsExport /** @@ -13,7 +12,6 @@ import kotlin.js.JsExport * * @author Jan Bernitt */ -@OptIn(ExperimentalJsExport::class) @JsExport enum class ValueType(internal val default: Any) { /** diff --git a/src/commonMain/kotlin/org/hisp/dhis/lib/expression/syntax/ExpressionGrammar.kt b/src/commonMain/kotlin/org/hisp/dhis/lib/expression/syntax/ExpressionGrammar.kt index 571d481..0aeaba6 100644 --- a/src/commonMain/kotlin/org/hisp/dhis/lib/expression/syntax/ExpressionGrammar.kt +++ b/src/commonMain/kotlin/org/hisp/dhis/lib/expression/syntax/ExpressionGrammar.kt @@ -1,6 +1,9 @@ package org.hisp.dhis.lib.expression.syntax -import org.hisp.dhis.lib.expression.ast.* +import org.hisp.dhis.lib.expression.ast.DataItemModifier +import org.hisp.dhis.lib.expression.ast.NamedFunction +import org.hisp.dhis.lib.expression.ast.Node +import org.hisp.dhis.lib.expression.ast.NodeType import org.hisp.dhis.lib.expression.ast.Nodes.AggregationTypeNode import org.hisp.dhis.lib.expression.ast.Nodes.ProgramVariableNode import org.hisp.dhis.lib.expression.ast.Nodes.ReportingRateTypeNode diff --git a/src/jsMain/kotlin/org.hisp.dhis.lib.expression.js/DataItemJs.kt b/src/jsMain/kotlin/org.hisp.dhis.lib.expression.js/DataItemJs.kt index 3be8ba3..e6e9f72 100644 --- a/src/jsMain/kotlin/org.hisp.dhis.lib.expression.js/DataItemJs.kt +++ b/src/jsMain/kotlin/org.hisp.dhis.lib.expression.js/DataItemJs.kt @@ -3,7 +3,6 @@ package org.hisp.dhis.lib.expression.js import org.hisp.dhis.lib.expression.spi.DataItemType import org.hisp.dhis.lib.expression.spi.ID -@OptIn(ExperimentalJsExport::class) @JsExport data class DataItemJs( val type: DataItemType, diff --git a/src/jsMain/kotlin/org.hisp.dhis.lib.expression.js/ExpressionDataJs.kt b/src/jsMain/kotlin/org.hisp.dhis.lib.expression.js/ExpressionDataJs.kt index befb9c2..bbcc8d1 100644 --- a/src/jsMain/kotlin/org.hisp.dhis.lib.expression.js/ExpressionDataJs.kt +++ b/src/jsMain/kotlin/org.hisp.dhis.lib.expression.js/ExpressionDataJs.kt @@ -2,7 +2,6 @@ package org.hisp.dhis.lib.expression.js import js.collections.JsMap -@OptIn(ExperimentalJsExport::class) @JsExport data class ExpressionDataJs( val programRuleVariableValues: JsMap = JsMap(), diff --git a/src/jsMain/kotlin/org.hisp.dhis.lib.expression.js/ExpressionJs.kt b/src/jsMain/kotlin/org.hisp.dhis.lib.expression.js/ExpressionJs.kt index f4b1c24..ca036fa 100644 --- a/src/jsMain/kotlin/org.hisp.dhis.lib.expression.js/ExpressionJs.kt +++ b/src/jsMain/kotlin/org.hisp.dhis.lib.expression.js/ExpressionJs.kt @@ -7,7 +7,6 @@ import org.hisp.dhis.lib.expression.ExpressionMode import org.hisp.dhis.lib.expression.spi.ID import org.hisp.dhis.lib.expression.spi.ValueType -@OptIn(ExperimentalJsExport::class) @JsExport class ExpressionJs(expression: String, mode: ExpressionMode) { diff --git a/src/jsMain/kotlin/org.hisp.dhis.lib.expression.js/QueryModifiersJs.kt b/src/jsMain/kotlin/org.hisp.dhis.lib.expression.js/QueryModifiersJs.kt index cecd2b3..17fe11e 100644 --- a/src/jsMain/kotlin/org.hisp.dhis.lib.expression.js/QueryModifiersJs.kt +++ b/src/jsMain/kotlin/org.hisp.dhis.lib.expression.js/QueryModifiersJs.kt @@ -3,7 +3,6 @@ package org.hisp.dhis.lib.expression.js import kotlinx.datetime.LocalDate import org.hisp.dhis.lib.expression.spi.AggregationType -@OptIn(ExperimentalJsExport::class) @JsExport data class QueryModifiersJs( val periodAggregation: Boolean, diff --git a/src/jsMain/kotlin/org.hisp.dhis.lib.expression.js/VariableJs.kt b/src/jsMain/kotlin/org.hisp.dhis.lib.expression.js/VariableJs.kt index d517113..c315f7b 100644 --- a/src/jsMain/kotlin/org.hisp.dhis.lib.expression.js/VariableJs.kt +++ b/src/jsMain/kotlin/org.hisp.dhis.lib.expression.js/VariableJs.kt @@ -2,7 +2,6 @@ package org.hisp.dhis.lib.expression.js import org.hisp.dhis.lib.expression.spi.ProgramVariable -@OptIn(ExperimentalJsExport::class) @JsExport data class VariableJs( val name: ProgramVariable, diff --git a/src/jsMain/kotlin/org.hisp.dhis.lib.expression.js/VariableValueJs.kt b/src/jsMain/kotlin/org.hisp.dhis.lib.expression.js/VariableValueJs.kt index 0d9a28c..e0e3d5d 100644 --- a/src/jsMain/kotlin/org.hisp.dhis.lib.expression.js/VariableValueJs.kt +++ b/src/jsMain/kotlin/org.hisp.dhis.lib.expression.js/VariableValueJs.kt @@ -2,7 +2,6 @@ package org.hisp.dhis.lib.expression.js import org.hisp.dhis.lib.expression.spi.ValueType -@OptIn(ExperimentalJsExport::class) @JsExport data class VariableValueJs( val valueType: ValueType,