Stefan Oltmann
11/22/2024, 1:27 PMArtem Kobzar
11/22/2024, 2:18 PMStefan Oltmann
11/22/2024, 2:25 PMStefan Oltmann
11/22/2024, 2:25 PMjsBrowserDistribution
for exampleStefan Oltmann
11/22/2024, 2:28 PMStefan Oltmann
11/22/2024, 2:31 PMStefan Oltmann
11/22/2024, 2:35 PMexecutable
and library
Stefan Oltmann
11/22/2024, 2:35 PMStefan Oltmann
11/22/2024, 2:40 PMStefan Oltmann
11/22/2024, 2:43 PMshaktiman_droid
11/22/2024, 5:21 PMshaktiman_droid
11/22/2024, 5:24 PMStefan Oltmann
11/22/2024, 5:24 PMshaktiman_droid
11/22/2024, 5:25 PMStefan Oltmann
11/22/2024, 5:28 PMStefan Oltmann
11/22/2024, 5:28 PMshaktiman_droid
11/22/2024, 5:34 PMnormal JavaScript users
, what do you mean and how are you expecting them to use your library?
I'm asking because depending on that, your output would change.
Do you want to provide it as a NPM module? Do you want to provide a single JS file that user can for example use in their react
app?Stefan Oltmann
11/22/2024, 5:38 PMshaktiman_droid
11/22/2024, 5:41 PMjs {
browser()
binaries.executable()
}
and then calling jsBrowserDevelopmentExecutableDistribution
task?
That would give a webpack bundle fileshaktiman_droid
11/22/2024, 5:42 PMusing webpack
on my blog post
https://dev.to/touchlab/different-ways-to-distribute-and-integrate-kotlinjs-library-1hg3#webpack-executableshaktiman_droid
11/22/2024, 5:43 PMStefan Oltmann
11/22/2024, 5:43 PMStefan Oltmann
11/22/2024, 5:43 PMshaktiman_droid
11/22/2024, 5:43 PMshaktiman_droid
11/22/2024, 5:44 PMshaktiman_droid
11/22/2024, 5:44 PMjsBrowserDistribution
would production I thinkStefan Oltmann
11/22/2024, 5:44 PMStefan Oltmann
11/22/2024, 5:44 PMStefan Oltmann
11/22/2024, 5:44 PMshaktiman_droid
11/22/2024, 5:45 PMmap
file.shaktiman_droid
11/22/2024, 5:46 PMhow to use
on my blog post? Wouldn't that work for you?Stefan Oltmann
11/22/2024, 5:46 PMArtem Kobzar
11/22/2024, 5:46 PMshaktiman_droid
11/22/2024, 5:47 PMStefan Oltmann
11/22/2024, 5:47 PMjsBrowserDistribution
creates the production thing that has no logic in it.Stefan Oltmann
11/22/2024, 5:47 PMshaktiman_droid
11/22/2024, 5:48 PMStefan Oltmann
11/22/2024, 5:48 PMStefan Oltmann
11/22/2024, 5:49 PMStefan Oltmann
11/22/2024, 5:49 PMhave you tried any other version of Kotlin? Maybe it's a bug.Nope, not yet.
Stefan Oltmann
11/22/2024, 5:49 PMshaktiman_droid
11/22/2024, 5:49 PMjsBrowserProductionWebpack
task?shaktiman_droid
11/22/2024, 5:50 PMStefan Oltmann
11/22/2024, 5:51 PMStefan Oltmann
11/22/2024, 5:52 PMjsBrowserProductionWebpack
, but that may due to my config.Stefan Oltmann
11/22/2024, 5:52 PMshaktiman_droid
11/22/2024, 5:59 PMStefan Oltmann
11/22/2024, 6:00 PMshaktiman_droid
11/22/2024, 6:00 PM./gradlew :shared:jsBrowserProductionWebpack
./gradlew :shared:jsBrowserDevelopmentExecutableDistribution
these two would create two different foldersshaktiman_droid
11/22/2024, 6:01 PMtest.html
file and comment/uncomment the code depending on which file you're usingshaktiman_droid
11/22/2024, 6:01 PMhtml
file in browser and check console
shaktiman_droid
11/22/2024, 6:01 PMHello, JS!
printedshaktiman_droid
11/22/2024, 6:01 PMStefan Oltmann
11/22/2024, 6:19 PMshaktiman_droid
11/22/2024, 6:21 PMStefan Oltmann
11/22/2024, 6:21 PMshaktiman_droid
11/22/2024, 6:21 PMStefan Oltmann
11/22/2024, 6:21 PMshaktiman_droid
11/22/2024, 6:22 PMStefan Oltmann
11/22/2024, 6:22 PMStefan Oltmann
11/22/2024, 6:22 PMStefan Oltmann
11/22/2024, 6:22 PMshaktiman_droid
11/22/2024, 6:23 PMshaktiman_droid
11/22/2024, 6:24 PMStefan Oltmann
11/22/2024, 6:26 PMshaktiman_droid
11/22/2024, 6:26 PMshaktiman_droid
11/22/2024, 6:27 PMStefan Oltmann
11/22/2024, 6:29 PMStefan Oltmann
11/22/2024, 6:30 PMArtem Kobzar
11/22/2024, 6:45 PMshaktiman_droid
11/22/2024, 6:49 PMshaktiman_droid
11/22/2024, 6:50 PMktor
and kotlinx.serialization
due to sizing issues. So we parse manually on JS side and use fetch api
instead of ktor
just for JS. That also means creating some new classes with interface or actual/expect to allow using ktor on mobile side
and no ktor on js sideshaktiman_droid
11/22/2024, 6:51 PMJsExport
would cause you to re-think your public APIsStefan Oltmann
11/22/2024, 6:52 PM