Introduce appPackageUrl
This commit is contained in:
parent
c8a8e5bd98
commit
5a4dd973d1
|
|
@ -26,6 +26,7 @@
|
|||
<script>
|
||||
var webRenderer = "{{ cookiecutter.web_renderer }}";
|
||||
var useColorEmoji = "{{ cookiecutter.use_color_emoji }}".toLowerCase() == "true";
|
||||
var appPackageUrl = "assets/app/app.zip";
|
||||
var pythonModuleName = "{{ cookiecutter.python_module_name }}";
|
||||
var noCdn = "{{ cookiecutter.no_cdn }}".toLowerCase() == "true";
|
||||
</script>
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
self.pyodideUrl = null;
|
||||
self.appPackageUrl = null;
|
||||
self.micropipIncludePre = false;
|
||||
self.pythonModuleName = null;
|
||||
self.documentUrl = null;
|
||||
|
|
@ -10,6 +11,7 @@ self.initPyodide = async function () {
|
|||
importScripts(self.pyodideUrl);
|
||||
self.pyodide = await loadPyodide();
|
||||
self.pyodide.registerJsModule("flet_js", flet_js);
|
||||
self.pyodide.globals.set("app_package_url", self.appPackageUrl);
|
||||
self.pyodide.globals.set("python_module_name", self.pythonModuleName);
|
||||
self.pyodide.globals.set("micropip_include_pre", self.micropipIncludePre);
|
||||
flet_js.documentUrl = documentUrl;
|
||||
|
|
@ -20,6 +22,12 @@ self.initPyodide = async function () {
|
|||
|
||||
py_args = flet_js.args.to_py() if flet_js.args else None
|
||||
|
||||
if "app_package_url" in py_args:
|
||||
app_package_url = py_args["app_package_url"]
|
||||
|
||||
if app_package_url is None:
|
||||
app_package_url = "assets/app/app.zip"
|
||||
|
||||
if "python_module_name" in py_args:
|
||||
python_module_name = py_args["python_module_name"]
|
||||
|
||||
|
|
@ -37,7 +45,7 @@ self.initPyodide = async function () {
|
|||
|
||||
if "script" not in py_args:
|
||||
print("Downloading app archive")
|
||||
response = await pyfetch("assets/app/app.zip")
|
||||
response = await pyfetch(app_package_url)
|
||||
await response.unpack_archive()
|
||||
else:
|
||||
print("Saving script to a file")
|
||||
|
|
@ -79,6 +87,7 @@ self.onmessage = async (event) => {
|
|||
self.pyodideUrl = event.data.pyodideUrl;
|
||||
self.flet_js.args = event.data.args;
|
||||
self.documentUrl = event.data.documentUrl;
|
||||
self.appPackageUrl = event.data.appPackageUrl;
|
||||
self.micropipIncludePre = event.data.micropipIncludePre;
|
||||
self.pythonModuleName = event.data.pythonModuleName;
|
||||
await self.initPyodide();
|
||||
|
|
|
|||
|
|
@ -33,6 +33,7 @@ globalThis.jsConnect = async function(appId, args, dartOnMessage) {
|
|||
pyodideUrl: globalThis.pyodideUrl ?? defaultPyodideUrl,
|
||||
args: args,
|
||||
documentUrl: _documentUrl,
|
||||
appPackageUrl: globalThis.appPackageUrl,
|
||||
micropipIncludePre: globalThis.micropipIncludePre,
|
||||
pythonModuleName: globalThis.pythonModuleName
|
||||
});
|
||||
|
|
|
|||
Loading…
Reference in New Issue