-
Notifications
You must be signed in to change notification settings - Fork 0
/
build.sbt
63 lines (54 loc) · 1.95 KB
/
build.sbt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
scalacOptions ++= Seq("-Xmx2G")
ThisBuild / tlBaseVersion := "0.5"
ThisBuild / tlUntaggedAreSnapshots := true
ThisBuild / organization := "io.github.cyz1901"
ThisBuild / organizationName := "cyz1901"
ThisBuild / startYear := Some(2024)
ThisBuild / developers := List(
tlGitHubDev("cyz1901", "cyz1901"),
)
ThisBuild / sonatypeCredentialHost := "s01.oss.sonatype.org"
ThisBuild / tlSonatypeUseLegacyHost := false
ThisBuild / crossScalaVersions := Seq("3.3.1")
ThisBuild / scalacOptions ++= Seq("-new-syntax", "-indent", "-source:future")
ThisBuild / githubWorkflowJavaVersions := Seq(JavaSpec.temurin("21"))
ThisBuild / tlJdkRelease := Some(8)
val CalicoVersion = "0.2.2"
lazy val root = tlCrossRootProject.aggregate(ionic, sandbox)
lazy val ionic = project
.in(file("ionic"))
.enablePlugins(ScalaJSPlugin)
.enablePlugins(ScalablyTypedConverterGenSourcePlugin)
.settings(
tlFatalWarnings := false,
scalacOptions := scalacOptions.value.filterNot(_ == "-Wunused:imports"),
name := "calico-ionic",
scalaJSLinkerConfig ~= (_.withSourceMap(false)),
libraryDependencies ++= Seq(
"com.armanbilge" %%% "calico" % CalicoVersion,
"org.scala-js" %%% "scalajs-dom" % "2.8.0",
),
Compile / npmDependencies ++= Seq(
"@ionic/core" -> "7.6.4",
),
Compile / stMinimize := Selection.AllExcept("@ionic/core"),
stMinimizeKeep ++= List(
"ionicCore.^",
),
stOutputPackage := "calico.ionic.scalablyTyped",
Compile / doc / sources := Nil,
stUseScalaJsDom := true,
)
lazy val sandbox = project
.in(file("sandbox"))
.enablePlugins(ScalaJSPlugin, NoPublishPlugin)
.dependsOn(ionic)
.settings(
tlFatalWarnings := false,
scalaJSUseMainModuleInitializer := true,
Compile / fastLinkJS / scalaJSLinkerConfig ~= {
import org.scalajs.linker.interface.ModuleSplitStyle
_.withModuleKind(ModuleKind.ESModule)
.withModuleSplitStyle(ModuleSplitStyle.SmallModulesFor(List("calico.ionic")))
},
)