Minor Changes
-
#2020
0e9ee30Thanks @whitphx! - Add@stlite/cli(npm) andstlite-cli(PyPI / uv) — a unifiedstliteCLI with four conversion commands:stlite share <path>— convert a local Streamlit project into a Stlite Sharing URL (Node + Python; produce byte-identical URLs across runtimes).stlite html <path>— convert into a single self-contained HTML file that loads@stlite/browserfrom JSDelivr (Node + Python; byte-identical output).stlite web <path>— convert into a multi-file Stlite web app directory that runs offline on any HTTP server (Node only).stlite desktop <path>— convert into a Stlite Desktop project directory withstlite-manifest.json(Node only).
Supporting changes:
- New
@stlite/app-packagerlibrary extracts the dump-artifacts pipeline (Pyodide vendoring, site-packages snapshot) so bothstlite web/desktopand@stlite/desktop's existing bin can share it. @stlite/sharing-commonnow ownsexportAsHtml(moved from@stlite/sharing-editor) with a parameterized(appData, { runtimeVersion, debugComment? })signature, plus a stableBASE64_DECODER_JS_SOURCEconstant for the embedded HTML decoder. Bug fix:compress.tsnow uses.replaceAllso the URL hash is true base64url;buffer.tsuses globals so the package loads in Node.@stlite/desktop'sdump-stlite-desktop-artifactsbin is deprecated (emits aDeprecationWarningat startup) in favor ofstlite desktop. The bin keeps working for one release. Also exposesdumpManifestand the manifest schema viabuild/electron/manifest.js(ESM) so@stlite/clican reuse them.