11ThisBuild / versionScheme := Some (" early-semver" )
22// For all Sonatype accounts created on or after February 2021
33ThisBuild / sonatypeCredentialHost := " s01.oss.sonatype.org"
4+ ThisBuild / scalaVersion := " 3.3.0"
45
56inThisBuild(
67 List (
@@ -22,6 +23,7 @@ inThisBuild(
2223resolvers += Resolver .sonatypeRepo(" releases" )
2324
2425val playJson = " 2.10.0-RC5"
26+ val stMaterialUi = " 5.11.16"
2527
2628// Used only by the lib projects
2729lazy val baseLibSettings : Project => Project = _.settings(
@@ -30,24 +32,10 @@ lazy val baseLibSettings: Project => Project = _.settings(
3032 " -encoding" ,
3133 " UTF-8" ,
3234 " -feature" ,
33- " -language:implicitConversions"
34- // disabled during the migration
35- // "-Xfatal-warnings"
36- ) ++
37- (CrossVersion .partialVersion(scalaVersion.value) match {
38- case Some ((3 , _)) =>
39- Seq (
40- " -unchecked" ,
41- " -source:3.0-migration"
42- )
43- case _ =>
44- Seq (
45- " -deprecation" ,
46- " -Xfatal-warnings" ,
47- " -Wunused:imports,privates,locals" ,
48- " -Wvalue-discard"
49- )
50- })
35+ " -language:implicitConversions" ,
36+ " -unchecked" ,
37+ " -source:3.0-migration"
38+ )
5139 },
5240 libraryDependencies ++= Seq (
5341 " org.scalatest" %%% " scalatest" % " 3.2.15" % Test
@@ -63,76 +51,23 @@ lazy val baseWebSettings: Project => Project =
6351 " -encoding" ,
6452 " UTF-8" ,
6553 " -feature" ,
66- " -language:implicitConversions"
67- // disabled during the migration
68- // "-Xfatal-warnings"
69- ) ++
70- (CrossVersion .partialVersion(scalaVersion.value) match {
71- case Some ((3 , _)) =>
72- Seq (
73- " -unchecked" ,
74- " -source:3.0-migration"
75- )
76- case _ =>
77- Seq (
78- " -deprecation" ,
79- " -Xfatal-warnings" ,
80- " -Wunused:imports,privates,locals" ,
81- " -Wvalue-discard" ,
82- " -Ymacro-annotations"
83- )
84- })
54+ " -language:implicitConversions" ,
55+ " -unchecked" ,
56+ " -source:3.0-migration"
57+ )
8558 },
8659 libraryDependencies ++= Seq (
8760 " io.github.cquiroz" %%% " scala-java-time" % " 2.3.0" ,
8861 " org.scala-js" %%% " scala-js-macrotask-executor" % " 1.1.1" ,
89- " com.alexitc " %%% " sjs -material-ui-facade " % " 0.2.0 "
62+ " com.olvind.st-material-ui " %%% " st -material-ui-icons-slinky " % stMaterialUi
9063 )
9164 )
9265
93- lazy val scalablytypedFacades = (project in file(" scalablytyped-facades" ))
94- .configure(_.enablePlugins(ScalaJSPlugin , ScalaJSBundlerPlugin , ScalablyTypedConverterGenSourcePlugin ))
95- .settings(
96- scalaVersion := " 2.13.8" ,
97- crossScalaVersions := Seq (" 2.13.8" , " 3.2.2" ),
98- name := " scalablytyped-facades" ,
99- useYarn := true ,
100- Test / requireJsDomEnv := true ,
101- stTypescriptVersion := " 3.9.3" ,
102- stOutputPackage := " net.wiringbits.facades" ,
103- // material-ui is provided by a pre-packaged library
104- stIgnore ++= List (
105- " @material-ui/core" ,
106- " @material-ui/styles" ,
107- " @material-ui/icons" ,
108- " react-router" ,
109- " react-router-dom"
110- ),
111- Compile / npmDependencies ++= Seq (
112- " @material-ui/core" -> " 3.9.4" , // note: version 4 is not supported yet
113- " @material-ui/styles" -> " 3.0.0-alpha.10" , // note: version 4 is not supported yet
114- " @material-ui/icons" -> " 3.0.2" ,
115- " @types/classnames" -> " 2.2.10" ,
116- " react-router" -> " 5.1.2" ,
117- " react-router-dom" -> " 5.1.2"
118- ),
119- stFlavour := Flavour .Slinky ,
120- stReactEnableTreeShaking := Selection .All ,
121- stUseScalaJsDom := true ,
122- stMinimize := Selection .AllExcept (" @types/classnames" ),
123- // docs are huge and unnecessary
124- Compile / doc / sources := Nil ,
125- // disabled because it somehow triggers many warnings
126- scalaJSLinkerConfig ~= (_.withSourceMap(false ))
127- )
128-
12966/** The common stuff for the server/client modules
13067 */
13168lazy val webappCommon = (crossProject(JSPlatform , JVMPlatform ) in file(" webapp-common" ))
13269 .configure(baseLibSettings)
13370 .settings(
134- scalaVersion := " 2.13.8" ,
135- crossScalaVersions := Seq (" 2.13.8" , " 3.2.2" ),
13671 name := " webapp-common"
13772 )
13873 .jsConfigure(_.enablePlugins(ScalaJSPlugin , ScalaJSBundlerPlugin ))
@@ -156,18 +91,46 @@ lazy val webappCommon = (crossProject(JSPlatform, JVMPlatform) in file("webapp-c
15691 */
15792lazy val slinkyUtils = (project in file(" slinky-utils" ))
15893 .configure(baseLibSettings, baseWebSettings)
159- .configure(_.enablePlugins(ScalaJSPlugin , ScalaJSBundlerPlugin ))
160- .dependsOn(webappCommon.js, scalablytypedFacades )
94+ .configure(_.enablePlugins(ScalaJSPlugin , ScalaJSBundlerPlugin , ScalablyTypedConverterPlugin ))
95+ .dependsOn(webappCommon.js)
16196 .settings(
162- scalaVersion := " 2.13.8" ,
163- crossScalaVersions := Seq (" 2.13.8" , " 3.2.2" ),
16497 name := " slinky-utils" ,
165- Test / fork := false // sjs needs this to run tests
98+ Test / fork := false , // sjs needs this to run tests
99+ stTypescriptVersion := " 3.9.3" ,
100+ useYarn := true ,
101+ stFlavour := Flavour .Slinky ,
102+ Compile / stMinimize := Selection .All ,
103+ stIgnore ++= List (
104+ " react-proxy" ,
105+ " @mui/material" ,
106+ " @mui/icons-material" ,
107+ " @mui/joy" ,
108+ " @emotion/react" ,
109+ " @emotion/styled" ,
110+ " react-router" ,
111+ " react-router-dom"
112+ ),
113+ Compile / npmDependencies ++= Seq (
114+ " react" -> " 18.2.0" ,
115+ " react-dom" -> " 18.2.0" ,
116+ " csstype" -> " 2.6.11" ,
117+ " react-proxy" -> " 1.1.8" ,
118+ " @mui/material" -> " 5.11.16" ,
119+ " @mui/icons-material" -> " 5.11.16" ,
120+ " @mui/joy" -> " 5.0.0-alpha.74" ,
121+ " @emotion/react" -> " 11.10.6" ,
122+ " @emotion/styled" -> " 11.10.6" ,
123+ " react-router" -> " 5.1.2" ,
124+ " react-router-dom" -> " 5.1.2"
125+ ),
126+ Compile / npmDevDependencies ++= Seq (
127+ " @types/react" -> " 18.0.33" ,
128+ " @types/react-dom" -> " 18.0.11" ,
129+ )
166130 )
167131
168132lazy val root = (project in file(" ." ))
169133 .aggregate(
170- scalablytypedFacades,
171134 webappCommon.jvm,
172135 webappCommon.js,
173136 slinkyUtils
0 commit comments