flet-web 0.1.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (48) hide show
  1. flet_web/__init__.py +9 -0
  2. flet_web/fastapi/README.md +146 -0
  3. flet_web/fastapi/__init__.py +6 -0
  4. flet_web/fastapi/app.py +121 -0
  5. flet_web/fastapi/flet_app.py +430 -0
  6. flet_web/fastapi/flet_app_manager.py +167 -0
  7. flet_web/fastapi/flet_fastapi.py +128 -0
  8. flet_web/fastapi/flet_oauth.py +66 -0
  9. flet_web/fastapi/flet_static_files.py +188 -0
  10. flet_web/fastapi/flet_upload.py +95 -0
  11. flet_web/fastapi/oauth_state.py +11 -0
  12. flet_web/fastapi/serve_fastapi_web_app.py +94 -0
  13. flet_web/patch_index.py +112 -0
  14. flet_web/uploads.py +54 -0
  15. flet_web/version.py +1 -0
  16. flet_web/web/.last_build_id +1 -0
  17. flet_web/web/assets/AssetManifest.bin +1 -0
  18. flet_web/web/assets/AssetManifest.bin.json +1 -0
  19. flet_web/web/assets/AssetManifest.json +1 -0
  20. flet_web/web/assets/FontManifest.json +1 -0
  21. flet_web/web/assets/NOTICES +37535 -0
  22. flet_web/web/assets/fonts/MaterialIcons-Regular.otf +0 -0
  23. flet_web/web/assets/packages/cupertino_icons/assets/CupertinoIcons.ttf +0 -0
  24. flet_web/web/assets/packages/flutter_map/lib/assets/flutter_map_logo.png +0 -0
  25. flet_web/web/assets/packages/media_kit/assets/web/hls1.4.10.js +2 -0
  26. flet_web/web/assets/packages/record_web/assets/js/record.fixwebmduration.js +507 -0
  27. flet_web/web/assets/packages/record_web/assets/js/record.worklet.js +400 -0
  28. flet_web/web/assets/packages/wakelock_plus/assets/no_sleep.js +230 -0
  29. flet_web/web/assets/shaders/ink_sparkle.frag +126 -0
  30. flet_web/web/favicon.png +0 -0
  31. flet_web/web/flutter.js +4 -0
  32. flet_web/web/flutter_bootstrap.js +31 -0
  33. flet_web/web/flutter_service_worker.js +214 -0
  34. flet_web/web/icons/apple-touch-icon-192.png +0 -0
  35. flet_web/web/icons/icon-192.png +0 -0
  36. flet_web/web/icons/icon-512.png +0 -0
  37. flet_web/web/icons/icon-maskable-192.png +0 -0
  38. flet_web/web/icons/icon-maskable-512.png +0 -0
  39. flet_web/web/icons/loading-animation.png +0 -0
  40. flet_web/web/index.html +99 -0
  41. flet_web/web/main.dart.js +234871 -0
  42. flet_web/web/manifest.json +35 -0
  43. flet_web/web/python-worker.js +47 -0
  44. flet_web/web/python.js +28 -0
  45. flet_web/web/version.json +1 -0
  46. flet_web-0.1.0.dist-info/METADATA +26 -0
  47. flet_web-0.1.0.dist-info/RECORD +48 -0
  48. flet_web-0.1.0.dist-info/WHEEL +4 -0
@@ -0,0 +1,35 @@
1
+ {
2
+ "name": "Flet",
3
+ "short_name": "Flet",
4
+ "start_url": ".",
5
+ "display": "standalone",
6
+ "background_color": "#FFFFFF",
7
+ "theme_color": "#0175C2",
8
+ "description": "Flet - the fastest way to build Flutter apps in Python",
9
+ "orientation": "natural",
10
+ "prefer_related_applications": false,
11
+ "icons": [
12
+ {
13
+ "src": "icons/icon-192.png",
14
+ "sizes": "192x192",
15
+ "type": "image/png"
16
+ },
17
+ {
18
+ "src": "icons/icon-512.png",
19
+ "sizes": "512x512",
20
+ "type": "image/png"
21
+ },
22
+ {
23
+ "src": "icons/icon-maskable-192.png",
24
+ "sizes": "192x192",
25
+ "type": "image/png",
26
+ "purpose": "maskable"
27
+ },
28
+ {
29
+ "src": "icons/icon-maskable-512.png",
30
+ "sizes": "512x512",
31
+ "type": "image/png",
32
+ "purpose": "maskable"
33
+ }
34
+ ]
35
+ }
@@ -0,0 +1,47 @@
1
+ importScripts("https://cdn.jsdelivr.net/pyodide/v0.24.1/full/pyodide.js");
2
+
3
+ self.micropipIncludePre = false;
4
+ self.pythonModuleName = null;
5
+ self.initialized = false;
6
+ self.flet_js = {}; // namespace for Python global functions
7
+
8
+ self.initPyodide = async function () {
9
+ self.pyodide = await loadPyodide();
10
+ self.pyodide.registerJsModule("flet_js", flet_js);
11
+ flet_js.documentUrl = documentUrl;
12
+ await self.pyodide.loadPackage("micropip");
13
+ let pre = self.micropipIncludePre ? "True" : "False";
14
+ await self.pyodide.runPythonAsync(`
15
+ import micropip
16
+ import os
17
+ from pyodide.http import pyfetch
18
+ response = await pyfetch("app.tar.gz")
19
+ await response.unpack_archive()
20
+ if os.path.exists("requirements.txt"):
21
+ with open("requirements.txt", "r") as f:
22
+ deps = [line.rstrip() for line in f]
23
+ print("Loading requirements.txt:", deps)
24
+ await micropip.install(deps, pre=${pre})
25
+ `);
26
+ pyodide.pyimport(self.pythonModuleName);
27
+ await self.flet_js.start_connection(self.receiveCallback);
28
+ self.postMessage("initialized");
29
+ };
30
+
31
+ self.receiveCallback = (message) => {
32
+ self.postMessage(message);
33
+ }
34
+
35
+ self.onmessage = async (event) => {
36
+ // run only once
37
+ if (!self.initialized) {
38
+ self.initialized = true;
39
+ self.documentUrl = event.data.documentUrl;
40
+ self.micropipIncludePre = event.data.micropipIncludePre;
41
+ self.pythonModuleName = event.data.pythonModuleName;
42
+ await self.initPyodide();
43
+ } else {
44
+ // message
45
+ flet_js.send(event.data);
46
+ }
47
+ };
flet_web/web/python.js ADDED
@@ -0,0 +1,28 @@
1
+ const pythonWorker = new Worker("python-worker.js");
2
+
3
+ let _onPythonInitialized = null;
4
+ let pythonInitialized = new Promise((onSuccess) => _onPythonInitialized = onSuccess);
5
+ let _onReceivedCallback = null;
6
+
7
+ pythonWorker.onmessage = (event) => {
8
+ if (event.data == "initialized") {
9
+ _onPythonInitialized();
10
+ } else {
11
+ _onReceivedCallback(event.data);
12
+ }
13
+ };
14
+
15
+ documentUrl = document.URL;
16
+
17
+ // initialize worker
18
+ pythonWorker.postMessage({ documentUrl, micropipIncludePre, pythonModuleName });
19
+
20
+ async function jsConnect(receiveCallback) {
21
+ _onReceivedCallback = receiveCallback;
22
+ await pythonInitialized;
23
+ console.log("Python engine initialized!");
24
+ }
25
+
26
+ async function jsSend(data) {
27
+ pythonWorker.postMessage(data);
28
+ }
@@ -0,0 +1 @@
1
+ {"app_name":"flet_client","version":"1.0.0","build_number":"1","package_name":"flet_client"}
@@ -0,0 +1,26 @@
1
+ Metadata-Version: 2.3
2
+ Name: flet-web
3
+ Version: 0.1.0
4
+ Summary: Flet web client in Flutter.
5
+ License: Apache-2.0
6
+ Author: Appveyor Systems Inc.
7
+ Author-email: hello@flet.dev
8
+ Requires-Python: >=3.9
9
+ Classifier: License :: OSI Approved :: Apache Software License
10
+ Classifier: Programming Language :: Python :: 3
11
+ Classifier: Programming Language :: Python :: 3.9
12
+ Classifier: Programming Language :: Python :: 3.10
13
+ Classifier: Programming Language :: Python :: 3.11
14
+ Classifier: Programming Language :: Python :: 3.12
15
+ Classifier: Programming Language :: Python :: 3.13
16
+ Requires-Dist: fastapi
17
+ Requires-Dist: flet (==0.26.0.dev4031)
18
+ Requires-Dist: uvicorn[standard]
19
+ Project-URL: Documentation, https://flet.dev/docs
20
+ Project-URL: Homepage, https://flet.dev
21
+ Project-URL: Repository, https://github.com/flet-dev/flet
22
+ Description-Content-Type: text/markdown
23
+
24
+ # Flet Web client in Flutter
25
+
26
+ This package contains a compiled Flutter Flet web client.
@@ -0,0 +1,48 @@
1
+ flet_web/__init__.py,sha256=Wyzpvf5VEXil2MRw_AjGLC1AgdvWvGlt8Wu9y6ceC8M,257
2
+ flet_web/fastapi/README.md,sha256=AxLfVlsTjhzTz6CEDtfI0uDf5Ka-pooq6xcGS-3lZ_U,4181
3
+ flet_web/fastapi/__init__.py,sha256=cQn3Xg5p9NEfLLt6j7uRpxfNz5h2vzDEpOFhIBufShk,306
4
+ flet_web/fastapi/app.py,sha256=g3Aup4ce932sbEUjbqkVZku4gt1NBv0UfH6sqGVe3eg,4883
5
+ flet_web/fastapi/flet_app.py,sha256=QLfPR3p5EYhpGVogxVHSbBHy1BU5YIAl5ryeBi8R_Gc,16961
6
+ flet_web/fastapi/flet_app_manager.py,sha256=q5zeL15UX6-v7UXRxTm8eNFH4q_-KF-rr4ebvAtpQKI,6140
7
+ flet_web/fastapi/flet_fastapi.py,sha256=WDryZ1W0mS4ugTJtxtZ7yNZ5eqqg8cF8aXO0nun8byY,4687
8
+ flet_web/fastapi/flet_oauth.py,sha256=5_8dGg-WdiUuxl2_ItXXDgAltStsdgcItDPSn5dHCos,2109
9
+ flet_web/fastapi/flet_static_files.py,sha256=KaUT2DTkH0vsTAMWb5fHfFQOmC4bhhk6O83MWeMOgzY,7313
10
+ flet_web/fastapi/flet_upload.py,sha256=6QqRIOuntJ3xUUlfDl47XI3Na2zeCqpZYm1ZFwoFbYM,3115
11
+ flet_web/fastapi/oauth_state.py,sha256=beIRx_JXnzAQIV3QHEroPjtjtO52dJYYctybX8poiSo,308
12
+ flet_web/fastapi/serve_fastapi_web_app.py,sha256=WAjbB3yE5JBaTUMeG2D3128_IHefg2GnGLMMqkCvsoM,2300
13
+ flet_web/patch_index.py,sha256=ClIkvsDB6nAQtLPsRvOts4eIujvyd93O5ka86AqjyDA,3434
14
+ flet_web/uploads.py,sha256=k2ZTFQo_MOXGcsJnKgH8m7_zpmcX-sOauarXbehEjNY,1579
15
+ flet_web/version.py,sha256=Lcb6Cb2bjjE-jqtgcotbPrF_sPkxvUOn3rMEV20k2TE,27
16
+ flet_web/web/.last_build_id,sha256=ZhX0ZUo3AcnmUl7X5DLQ2RjxtYSMFgTDcFjwWi1P4K8,32
17
+ flet_web/web/assets/AssetManifest.bin,sha256=Q4sJXhFAZx8wv3K0TWA-ljDQf7oE2dP8FHjE07QJYdo,666
18
+ flet_web/web/assets/AssetManifest.bin.json,sha256=rfGK2KxFI6MWfK3wvg0dHVnZ9q6zSrcorP5GKV_-uRY,890
19
+ flet_web/web/assets/AssetManifest.json,sha256=zaDhetvObV0uhQRUjT1QEpicnQ-0DtdveW3NT1WKaho,623
20
+ flet_web/web/assets/FontManifest.json,sha256=zX4DZFvESy3Ue3y2JvUcTsv1Whl6t3JBYotHrBZfviE,208
21
+ flet_web/web/assets/NOTICES,sha256=-dd1nKNHJPTosZxprsm20_EfQK-DqgPDhTUbXzz7260,1901986
22
+ flet_web/web/assets/fonts/MaterialIcons-Regular.otf,sha256=4tuSWFPhP4dSN4fMvJkmiM_smjOAWmxrcR4_ecMxEmg,1261120
23
+ flet_web/web/assets/packages/cupertino_icons/assets/CupertinoIcons.ttf,sha256=Wh0PHxeqyR6PZxIylQGfc2mazyMaV3On6z_rSeZeTlc,209160
24
+ flet_web/web/assets/packages/flutter_map/lib/assets/flutter_map_logo.png,sha256=YFGuQvtQWTGoM-WPkgmp-WZppNDks_BvbYLN4SoOBAE,2424
25
+ flet_web/web/assets/packages/media_kit/assets/web/hls1.4.10.js,sha256=2PZAcgFKmwUJxIP3UmG5pCfEGORfgsF7DDInesGDLgc,374692
26
+ flet_web/web/assets/packages/record_web/assets/js/record.fixwebmduration.js,sha256=w0WtXS__s1etpke5tpBpNFKiABvFkS8ekGaHbOAWOZs,23286
27
+ flet_web/web/assets/packages/record_web/assets/js/record.worklet.js,sha256=hkPdAg583tT9IxLhQaZnzx_6lErDQk7E4C4Xc6c35-c,11594
28
+ flet_web/web/assets/packages/wakelock_plus/assets/no_sleep.js,sha256=3OTu8LGXtkCtaqqyIo7h7n3M-L1ta13lSE3RvRZDCng,13344
29
+ flet_web/web/assets/shaders/ink_sparkle.frag,sha256=4Bths5TPZqZBvqh-O0_jeH03L2Nsi8iipnQ4zcKdpvY,8867
30
+ flet_web/web/favicon.png,sha256=83Y7iihRHIC1ALYXYVizrRs2MNRA2YbWGL3UD4LTvOI,1028
31
+ flet_web/web/flutter.js,sha256=YOtUUZAod6X7rmh2cOeTPkU3psjeTq7FSzAfyXqyl-4,7787
32
+ flet_web/web/flutter_bootstrap.js,sha256=gX4_Jkf3_nrZXfAWsosxsydofN05q6-KoPoEbbzMbgM,8601
33
+ flet_web/web/flutter_service_worker.js,sha256=NJmLsivS2yrlzUNJSyILnBLwlEFJ38IEw6arCioRjek,8859
34
+ flet_web/web/icons/apple-touch-icon-192.png,sha256=dIgpzAZUPynN5BlFNa3ix_VCW34Jl0vimki76Kb7Y5o,4699
35
+ flet_web/web/icons/icon-192.png,sha256=rpfj2H4BEMLPI5U8M6eO_boq73OxHYIlrHh1Up2Moro,6622
36
+ flet_web/web/icons/icon-512.png,sha256=LYsJAwoc1oRroLoakYbYHJJQN-cNtOjmj1QCooE71oo,18666
37
+ flet_web/web/icons/icon-maskable-192.png,sha256=JjQtcczM5M1ddM4W5EtJsNJR-kHO9iXzmC_TgWaqsxE,4128
38
+ flet_web/web/icons/icon-maskable-512.png,sha256=Iq5-TQS9BUn2U7T8ztgToh2EiWnLh9W4aTHIGja5c8o,11906
39
+ flet_web/web/icons/loading-animation.png,sha256=Zl6NT_QrVqNUatwcqmSZawFlMxWHsdm493XDBOE4gn4,17040
40
+ flet_web/web/index.html,sha256=3fh8yxyFyZXFDeS9co1DWQmz2Ri3SOD-Z2kzvTNMS9M,2162
41
+ flet_web/web/main.dart.js,sha256=NI0o2MRmWyE0DCtn9bA6OZ-acs1RXy7jHQS3fYz0BkI,8086858
42
+ flet_web/web/manifest.json,sha256=_GwcP9mT4sS_BwdYPcDEhnpejqe933LeYIytZIgDnr0,789
43
+ flet_web/web/python-worker.js,sha256=efDFK7FM9Y9KgBIZNpHLVvth-p0TDJ_y9OgpUQGGKnw,1573
44
+ flet_web/web/python.js,sha256=VzS78idquUNV_OcZOvFX-xf4ZErYIp-FSjv8u9fjWMI,744
45
+ flet_web/web/version.json,sha256=M3wyjx-6vkvcLftRE6e4ugK8oYoYlg19xEaZwbrgfHw,92
46
+ flet_web-0.1.0.dist-info/METADATA,sha256=gJ_ahIttXtOj7NRVaf2wiyUXx59d_14Jqq_o2F8RJHU,928
47
+ flet_web-0.1.0.dist-info/WHEEL,sha256=IYZQI976HJqqOpQU6PHkJ8fb3tMNBFjg-Cn-pwAbaFM,88
48
+ flet_web-0.1.0.dist-info/RECORD,,
@@ -0,0 +1,4 @@
1
+ Wheel-Version: 1.0
2
+ Generator: poetry-core 2.0.1
3
+ Root-Is-Purelib: true
4
+ Tag: py3-none-any