oyvindberg on v1.0.0-beta41
oyvindberg on gh-pages
Deploy website Deploy website … (compare)
oyvindberg on master
Update coursier to 2.1.0-RC4 (#… (compare)
oyvindberg on master
Update scalatest to 3.2.15 (#51… (compare)
oyvindberg on master
Update sbt-tpolecat to 0.4.2 (#… (compare)
oyvindberg on master
release snapshots disable extension methods - in… ImportTypingsGenSources: Add `o… (compare)
oyvindberg on mui5-support
ImportTypingsGenSources: Add `o… (compare)
oyvindberg on mui5-support
tree shaking: mui forbids diggi… (compare)
oyvindberg on master
Update sbt-assembly to 2.1.0 (#… (compare)
oyvindberg on master
Update coursier to 2.1.0-RC3-1 … (compare)
oyvindberg on master
Update sbt-bloop to 1.5.6 (#507) (compare)
oyvindberg on mui5-support
ignore `OverridableStringUnion`… (compare)
oyvindberg on mui5-support
improve component variant naming (compare)
oyvindberg on mui5-support
trim code release snapshots (compare)
oyvindberg on master
scalajs-react: don't overload `… (compare)
oyvindberg on master
Avoid superfluous `T & Object` react: add a `Props` type alias scalajs-react: add syntax to ap… and 3 more (compare)
oyvindberg on mui5-support
limit mangled objects to 5k mem… mapped indices in type mappings… remove a source of irritating t… and 4 more (compare)
oyvindberg on master
Update sbt-scalafmt to 2.5.0 (#… (compare)
oyvindberg on master
Update coursier to 2.1.0-RC2 (#… (compare)
oyvindberg on true-literal-and-union-types
True literal types and union ty… (compare)
@mn98 I hope your experiments are going well. A while back, I also wanted scala to do more with vega / lite. This is off topic - but after a while playing with them in scalably typed and learning, I went my own way and did something slightly different. I would note in general, it's worth knowing scalably typed, because it's amazing. In the very specific case of vega / lite, I ended up writing my own much more custom wrapper around it, leaning into it's JSON-ness, rather than it's typescript-ness.
https://quafadas.github.io/dedav4s/
If you do give it a go any feedback would be welcomed... but either way wishing you luck with whatever works!
VisualizationSpec
, I'm still stumped on the "encoding" piece!Partial
, so you end up with monstrosities like js.UndefOr[Partial[js.UndefOr[LatLongDef[F]]]]
encoding
thing you're missing, note that typings.vegaEmbed.mod.default
takes a spec which can have one of many shapes. one of them is TopLevelLayerSpecField
, which has an encoding
member. maybe some of the other have that as well
Architecturally speaking. Should it possible to:
1) develop a Scala.JS React component which uses some NPM packages with types generated using ScalablyTyped
2) publish this component in a package repository (e.g. an Artifactory Maven repository) as a Scala.JS JAR
3) use this Scala.JS component in a project which doesn't integrate with or use the ScalablyTyped plugin
I executed step no. 1 and no. 2., but it seems that on step no. 3. i.e. when I'm attempting to build the project sbt seems to be trying to read ScalablyTyped definitions. E.g. my component uses Fuse.JS and even though it was compiled and published to a repo, the non-ScalablyTyped project is still trying to once again find and use ScalablyTyped definitions.
[2022-09-23T06:53:38.671Z] [error] Error downloading org.scalablytyped:fuse_dot_js_sjs1_2.13:6.6.2-5a0c84
[2022-09-23T06:53:38.671Z] [error] Not found
[2022-09-23T06:53:38.671Z] [error] Not found
[2022-09-23T06:53:38.671Z] [error] not found: /home/<BUILD_USER>/.ivy2/local/org.scalablytyped/fuse_dot_js_sjs1_2.13/6.6.2-5a0c84/ivys/ivy.xml
[2022-09-23T06:53:38.671Z] [error] not found: https://<PRIVATE_REPO_1>/org/scalablytyped/fuse_dot_js_sjs1_2.13/6.6.2-5a0c84/fuse_dot_js_sjs1_2.13-6.6.2-5a0c84.pom
[2022-09-23T06:53:38.671Z] [error] not found: https://<PRIVATE_REPO_2>/org.scalablytyped/fuse_dot_js_sjs1_2.13/6.6.2-5a0c84/ivys/ivy.xml
TL;DR - Is it possible to somehow export a ScalablyTyped Scala.JS package and have it be standalone i.e. independant of ScalablyTyped?
Ah. I see that the published ScalablyTyped Scala.js React component artifact consists of an SJS JAR and a POM file referring to dependencies on org.scalablytyped...
. I guess the solution to my problem might be to also publish these ScalablyTyped
-generated packages from the cache into the Maven repository alongside my component. That way whomever imports my component would have everything ready and available and wouldn't need to depend on ScalablyTyped - thereby making my component standalone.
P.S. Sorry for the rubber duck debugging :D
"react-dnd" -> "11.1.3"
with addSbtPlugin("org.scalablytyped.converter" % "sbt-converter" % "1.0.0-beta39")
but it gives me the error [error] (hicpBasicComponentsJS / stImport) TsHelperFile(InFile(/home/asaunix/git/hicp-sales-tool/hicp-basic-components/js/target/scala-2.13/scalajs-bundler/main/node_modules/redux/index.d.ts),FromFolder(InFolder(/home/asaunix/git/hicp-sales-tool/hicp-basic-components/js/target/scala-2.13/scalajs-bundler/main/node_modules/redux),TsIdentLibrarySimple(redux)),IArray(TsIdentModule(None,List(redux)), TsIdentModule(None,List(redux)))) -> Right(Parse error at 402.32 end of input expected)
common
appears to be available in typings.vscodeLanguageclient
, but everything under the node
folder is missing. Is there some way to point ST at those files and work its magic there too?
Hi. First thanks for this nice setup instructions for ScalablyTyped. I'm new to JS and Scala.js and got a bit overwhelmed by the instructions for React-Native, Expo, Slinky, with templates here and there etc., and how it all fits together. I now tried to set up ScalablyTyped for a React-Native project that I did set up according to the integration with existing app instructions. The whole project is in Scala 3. I have a configured ScalablyTyped into my SBT project as follows
lazy val root = (project in file("."))
.enablePlugins(ScalablyTypedConverterPlugin)
.settings(
name := "my-app",
version := "0.0.1",
scalaVersion := "3.0.2",
organization := "de.myapp",
Compile / npmDependencies ++= Seq(
"react-router-dom" -> "5.3.3",
"@types/react-router-dom" -> "5.3.3",
),
stFlavour := Flavour.SlinkyNative,
useYarn := true,
// This is an application with a main method
scalaJSUseMainModuleInitializer := true,
libraryDependencies ++= Seq(
// Application libraries
"org.scalatest" %%% "scalatest" % "3.2.14" % Test,
),
)
But when I run sbt test
(which shouldn't do anything, as there are no tests or code yet) I do get
[error] stack trace is suppressed; run last update for the full output
[error] (update) sbt.librarymanagement.ResolveException: Error downloading org.scala-js:scalajs-library_3:1.3.0
[error] Not found
[error] Not found
[error] not found: /home/devel/.ivy2/local/org.scala-js/scalajs-library_3/1.3.0/ivys/ivy.xml
[error] not found: https://repo1.maven.org/maven2/org/scala-js/scalajs-library_3/1.3.0/scalajs-library_3-1.3.0.pom
A check on search.maven.org reveals that there is no Scala 3 version for the scalajs-library. What confuses me is that I could actually compile with Scala.js on Scala 3 another part of the project without problems. So I guess this library variant does not exist because it is not needed, but still with the ScalablyTyped setup it is requested. Can anybody give me a hint what is wrong?
Hello folks!
I'm trying to port https://github.com/microsoft/vscode-extension-samples/blob/main/lsp-sample/client/package.json to scala.js, I've got scalably typed set up (along with sjs bundler) and I've got the dependencies in my build.sbt to match:
Compile / npmDependencies ++= List(
"vscode-languageclient" -> "8.0.2",
),
Compile / npmDevDependencies ++= List(
"@types/vscode" -> "1.73.1"
),
stIncludeDev := true,
However, I'm failing to replicate this import https://github.com/microsoft/vscode-extension-samples/blob/main/lsp-sample/client/src/extension.ts#L9-L14
import {
LanguageClient,
LanguageClientOptions,
ServerOptions,
TransportKind
} from 'vscode-languageclient/node';
I don't really understand what the /node
is at the import there, and browsing symbols generated by scalably-typed I don't see a LanguageClient
. Does anyone know what I need to do here to get those /node
symbols available?