Compare commits

..

3 Commits

Author SHA1 Message Date
Madhur Tandon
156c23d550 Update README.md (#1872) 2023-11-28 15:53:23 +05:30
Andrea Giammarchi
30396ba79a Fix #1861 - Use addon to fit lines instead of truncating (#1867) 2023-11-27 15:05:23 +01:00
Andrea Giammarchi
a4343c62ca Updated dev/dependencies w/ polyscript & coincident (#1864) 2023-11-22 15:21:57 +01:00
6 changed files with 127 additions and 99 deletions

View File

@@ -6,7 +6,7 @@
PyScript is a framework that allows users to create rich Python applications in the browser using HTML's interface and the power of [Pyodide](https://pyodide.org/en/stable/), [MicroPython](https://micropython.org/) and [WASM](https://webassembly.org/), and modern web technologies.
To get started see the [getting started tutorial](https://pyscript.github.io/docs/latest/beginning-pyscript/).
To get started see the [getting started tutorial](docs/tutorials/getting-started.md).
For examples see [here](examples).
@@ -43,7 +43,7 @@ You can then use PyScript components in your html page. PyScript currently offer
- `<script type="py">`: can be used to define python code that is executable within the web page.
- `<script type="py" src="hello.py">`: same as above, but the python source is fetched from the given URL.
- `<script type="py" terminal>`: same as above, but also creates a terminal where to display stdout and stderr (e.g., the output of `print()`); `input()` does not work.
- `<script type="py" terminal worker>`: run Python inside a web worker: the terminal if fully functional and `input()` works.
- `<script type="py" terminal worker>`: run Python inside a web worker: the terminal is fully functional and `input()` works.
- `<py-script>`: same as `<script type="py">`, but it is not recommended because if the code contains HTML tags, they could be parsed wrongly.
- `<script type="mpy">`: same as above but use MicroPython instead of Python.

View File

@@ -1,34 +1,35 @@
{
"name": "@pyscript/core",
"version": "0.3.4",
"version": "0.3.5",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "@pyscript/core",
"version": "0.3.4",
"version": "0.3.5",
"license": "APACHE-2.0",
"dependencies": {
"@ungap/with-resolvers": "^0.1.0",
"basic-devtools": "^0.1.6",
"polyscript": "^0.5.11",
"polyscript": "^0.6.0",
"sticky-module": "^0.1.1",
"to-json-callback": "^0.1.1",
"type-checked-collections": "^0.1.7"
},
"devDependencies": {
"@playwright/test": "^1.39.0",
"@playwright/test": "^1.40.0",
"@rollup/plugin-commonjs": "^25.0.7",
"@rollup/plugin-node-resolve": "^15.2.3",
"@rollup/plugin-terser": "^0.4.4",
"@webreflection/toml-j0.4": "^1.1.3",
"@xterm/addon-fit": "^0.9.0-beta.1",
"chokidar": "^3.5.3",
"eslint": "^8.53.0",
"rollup": "^4.3.0",
"eslint": "^8.54.0",
"rollup": "^4.5.1",
"rollup-plugin-postcss": "^4.0.2",
"rollup-plugin-string": "^3.0.0",
"static-handler": "^0.4.3",
"typescript": "^5.2.2",
"typescript": "^5.3.2",
"xterm": "^5.3.0",
"xterm-readline": "^1.1.1"
}
@@ -90,9 +91,9 @@
}
},
"node_modules/@eslint/js": {
"version": "8.53.0",
"resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.53.0.tgz",
"integrity": "sha512-Kn7K8dx/5U6+cT1yEhpX1w4PCSg0M+XyRILPgvwcEBjerFWCwQj5sbr3/VmxqV0JGHCBCzyd6LxypEuehypY1w==",
"version": "8.54.0",
"resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.54.0.tgz",
"integrity": "sha512-ut5V+D+fOoWPgGGNj83GGjnntO39xDy6DWxO0wb7Jp3DcMX0TfIqdzHF85VTQkerdyGmuuMD9AKAo5KiNlf/AQ==",
"dev": true,
"engines": {
"node": "^12.22.0 || ^14.17.0 || >=16.0.0"
@@ -225,12 +226,12 @@
}
},
"node_modules/@playwright/test": {
"version": "1.39.0",
"resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.39.0.tgz",
"integrity": "sha512-3u1iFqgzl7zr004bGPYiN/5EZpRUSFddQBra8Rqll5N0/vfpqlP9I9EXqAoGacuAbX6c9Ulg/Cjqglp5VkK6UQ==",
"version": "1.40.0",
"resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.40.0.tgz",
"integrity": "sha512-PdW+kn4eV99iP5gxWNSDQCbhMaDVej+RXL5xr6t04nbKLCBwYtA046t7ofoczHOm8u6c+45hpDKQVZqtqwkeQg==",
"dev": true,
"dependencies": {
"playwright": "1.39.0"
"playwright": "1.40.0"
},
"bin": {
"playwright": "cli.js"
@@ -374,9 +375,9 @@
}
},
"node_modules/@rollup/rollup-android-arm-eabi": {
"version": "4.3.0",
"resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.3.0.tgz",
"integrity": "sha512-/4pns6BYi8MXdwnXM44yoGAcFYVHL/BYlB2q1HXZ6AzH++LaiEVWFpBWQ/glXhbMbv3E3o09igrHFbP/snhAvA==",
"version": "4.5.1",
"resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.5.1.tgz",
"integrity": "sha512-YaN43wTyEBaMqLDYeze+gQ4ZrW5RbTEGtT5o1GVDkhpdNcsLTnLRcLccvwy3E9wiDKWg9RIhuoy3JQKDRBfaZA==",
"cpu": [
"arm"
],
@@ -387,9 +388,9 @@
]
},
"node_modules/@rollup/rollup-android-arm64": {
"version": "4.3.0",
"resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.3.0.tgz",
"integrity": "sha512-nLO/JsL9idr416vzi3lHm3Xm+QZh4qHij8k3Er13kZr5YhL7/+kBAx84kDmPc7HMexLmwisjDCeDIKNFp8mDlQ==",
"version": "4.5.1",
"resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.5.1.tgz",
"integrity": "sha512-n1bX+LCGlQVuPlCofO0zOKe1b2XkFozAVRoczT+yxWZPGnkEAKTTYVOGZz8N4sKuBnKMxDbfhUsB1uwYdup/sw==",
"cpu": [
"arm64"
],
@@ -400,9 +401,9 @@
]
},
"node_modules/@rollup/rollup-darwin-arm64": {
"version": "4.3.0",
"resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.3.0.tgz",
"integrity": "sha512-dGhVBlllt4iHwTGy21IEoMOTN5wZoid19zEIxsdY29xcEiOEHqzDa7Sqrkh5OE7LKCowL61eFJXxYe/+pYa7ZQ==",
"version": "4.5.1",
"resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.5.1.tgz",
"integrity": "sha512-QqJBumdvfBqBBmyGHlKxje+iowZwrHna7pokj/Go3dV1PJekSKfmjKrjKQ/e6ESTGhkfPNLq3VXdYLAc+UtAQw==",
"cpu": [
"arm64"
],
@@ -413,9 +414,9 @@
]
},
"node_modules/@rollup/rollup-darwin-x64": {
"version": "4.3.0",
"resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.3.0.tgz",
"integrity": "sha512-h8wRfHeLEbU3NzaP1Oku7BYXCJQiTRr+8U0lklyOQXxXiEpHLL8tk1hFl+tezoRKLcPJD7joKaK74ASsqt3Ekg==",
"version": "4.5.1",
"resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.5.1.tgz",
"integrity": "sha512-RrkDNkR/P5AEQSPkxQPmd2ri8WTjSl0RYmuFOiEABkEY/FSg0a4riihWQGKDJ4LnV9gigWZlTMx2DtFGzUrYQw==",
"cpu": [
"x64"
],
@@ -426,9 +427,9 @@
]
},
"node_modules/@rollup/rollup-linux-arm-gnueabihf": {
"version": "4.3.0",
"resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.3.0.tgz",
"integrity": "sha512-wP4VgR/gfV18sylTuym3sxRTkAgUR2vh6YLeX/GEznk5jCYcYSlx585XlcUcl0c8UffIZlRJ09raWSX3JDb4GA==",
"version": "4.5.1",
"resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.5.1.tgz",
"integrity": "sha512-ZFPxvUZmE+fkB/8D9y/SWl/XaDzNSaxd1TJUSE27XAKlRpQ2VNce/86bGd9mEUgL3qrvjJ9XTGwoX0BrJkYK/A==",
"cpu": [
"arm"
],
@@ -439,9 +440,9 @@
]
},
"node_modules/@rollup/rollup-linux-arm64-gnu": {
"version": "4.3.0",
"resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.3.0.tgz",
"integrity": "sha512-v/14JCYVkqRSJeQbxFx4oUkwVQQw6lFMN7bd4vuARBc3X2lmomkxBsc+BFiIDL/BK+CTx5AOh/k9XmqDnKWRVg==",
"version": "4.5.1",
"resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.5.1.tgz",
"integrity": "sha512-FEuAjzVIld5WVhu+M2OewLmjmbXWd3q7Zcx+Rwy4QObQCqfblriDMMS7p7+pwgjZoo9BLkP3wa9uglQXzsB9ww==",
"cpu": [
"arm64"
],
@@ -452,9 +453,9 @@
]
},
"node_modules/@rollup/rollup-linux-arm64-musl": {
"version": "4.3.0",
"resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.3.0.tgz",
"integrity": "sha512-tNhfYqFH5OxtRzfkTOKdgFYlPSZnlDLNW4+leNEvQZhwTJxoTwsZAAhR97l3qVry/kkLyJPBK+Q8EAJLPinDIg==",
"version": "4.5.1",
"resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.5.1.tgz",
"integrity": "sha512-f5Gs8WQixqGRtI0Iq/cMqvFYmgFzMinuJO24KRfnv7Ohi/HQclwrBCYkzQu1XfLEEt3DZyvveq9HWo4bLJf1Lw==",
"cpu": [
"arm64"
],
@@ -465,9 +466,9 @@
]
},
"node_modules/@rollup/rollup-linux-x64-gnu": {
"version": "4.3.0",
"resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.3.0.tgz",
"integrity": "sha512-pw77m8QywdsoFdFOgmc8roF1inBI0rciqzO8ffRUgLoq7+ee9o5eFqtEcS6hHOOplgifAUUisP8cAnwl9nUYPw==",
"version": "4.5.1",
"resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.5.1.tgz",
"integrity": "sha512-CWPkPGrFfN2vj3mw+S7A/4ZaU3rTV7AkXUr08W9lNP+UzOvKLVf34tWCqrKrfwQ0NTk5GFqUr2XGpeR2p6R4gw==",
"cpu": [
"x64"
],
@@ -478,9 +479,9 @@
]
},
"node_modules/@rollup/rollup-linux-x64-musl": {
"version": "4.3.0",
"resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.3.0.tgz",
"integrity": "sha512-tJs7v2MnV2F8w6X1UpPHl/43OfxjUy9SuJ2ZPoxn79v9vYteChVYO/ueLHCpRMmyTUIVML3N9z4azl9ENH8Xxg==",
"version": "4.5.1",
"resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.5.1.tgz",
"integrity": "sha512-ZRETMFA0uVukUC9u31Ed1nx++29073goCxZtmZARwk5aF/ltuENaeTtRVsSQzFlzdd4J6L3qUm+EW8cbGt0CKQ==",
"cpu": [
"x64"
],
@@ -491,9 +492,9 @@
]
},
"node_modules/@rollup/rollup-win32-arm64-msvc": {
"version": "4.3.0",
"resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.3.0.tgz",
"integrity": "sha512-OKGxp6kATQdTyI2DF+e9s+hB3/QZB45b6e+dzcfW1SUqiF6CviWyevhmT4USsMEdP3mlpC9zxLz3Oh+WaTMOSw==",
"version": "4.5.1",
"resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.5.1.tgz",
"integrity": "sha512-ihqfNJNb2XtoZMSCPeoo0cYMgU04ksyFIoOw5S0JUVbOhafLot+KD82vpKXOurE2+9o/awrqIxku9MRR9hozHQ==",
"cpu": [
"arm64"
],
@@ -504,9 +505,9 @@
]
},
"node_modules/@rollup/rollup-win32-ia32-msvc": {
"version": "4.3.0",
"resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.3.0.tgz",
"integrity": "sha512-DDZ5AH68JJ2ClQFEA1aNnfA7Ybqyeh0644rGbrLOdNehTmzfICHiWSn0OprzYi9HAshTPQvlwrM+bi2kuaIOjQ==",
"version": "4.5.1",
"resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.5.1.tgz",
"integrity": "sha512-zK9MRpC8946lQ9ypFn4gLpdwr5a01aQ/odiIJeL9EbgZDMgbZjjT/XzTqJvDfTmnE1kHdbG20sAeNlpc91/wbg==",
"cpu": [
"ia32"
],
@@ -517,9 +518,9 @@
]
},
"node_modules/@rollup/rollup-win32-x64-msvc": {
"version": "4.3.0",
"resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.3.0.tgz",
"integrity": "sha512-dMvGV8p92GQ8jhNlGIKpyhVZPzJlT258pPrM5q2F8lKcc9Iv9BbfdnhX1OfinYWnb9ms5zLw6MlaMnqLfUkKnQ==",
"version": "4.5.1",
"resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.5.1.tgz",
"integrity": "sha512-5I3Nz4Sb9TYOtkRwlH0ow+BhMH2vnh38tZ4J4mggE48M/YyJyp/0sPSxhw1UeS1+oBgQ8q7maFtSeKpeRJu41Q==",
"cpu": [
"x64"
],
@@ -566,6 +567,15 @@
"integrity": "sha512-ragv0U1Hy9JTyFpUqApu/UwF4Qhn0Y5GnQR4Bmy/+wYLKbHNS6hLN6bJR44v5DumaocJ4vpF6HVtYWeDJVs3qg==",
"dev": true
},
"node_modules/@xterm/addon-fit": {
"version": "0.9.0-beta.1",
"resolved": "https://registry.npmjs.org/@xterm/addon-fit/-/addon-fit-0.9.0-beta.1.tgz",
"integrity": "sha512-HmGRUMMamUpQYuQBF2VP1LJ0xzqF85LMFfpaNu84t1Tsrl1lPKJWtqX9FDZ22Rf5q6bnKdbj44TRVAUHgDRbLA==",
"dev": true,
"peerDependencies": {
"xterm": "^5.0.0"
}
},
"node_modules/acorn": {
"version": "8.10.0",
"resolved": "https://registry.npmjs.org/acorn/-/acorn-8.10.0.tgz",
@@ -849,13 +859,14 @@
}
},
"node_modules/coincident": {
"version": "0.14.4",
"resolved": "https://registry.npmjs.org/coincident/-/coincident-0.14.4.tgz",
"integrity": "sha512-XLZs1S0ToZb8jAngtJQa5uFfhOdF168f+jodvkMOVpZl/JI9J+B1WdxX2PwU1vERxmahEubHv9Gr+a3XWOnccw==",
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/coincident/-/coincident-1.0.0.tgz",
"integrity": "sha512-tSAuLMLMzAPOb2B8tAiANLZ3LeB7dbueYxSV6Y9l/2FNZ8loBIc0jS1jEkrQK0g8UAslxLTd7+NCtpDr8YxNDQ==",
"dependencies": {
"@ungap/structured-clone": "^1.2.0",
"@ungap/with-resolvers": "^0.1.0",
"gc-hook": "^0.2.4"
"gc-hook": "^0.2.5",
"proxy-target": "^2.0.4"
},
"optionalDependencies": {
"ws": "^8.14.2"
@@ -1224,15 +1235,15 @@
}
},
"node_modules/eslint": {
"version": "8.53.0",
"resolved": "https://registry.npmjs.org/eslint/-/eslint-8.53.0.tgz",
"integrity": "sha512-N4VuiPjXDUa4xVeV/GC/RV3hQW9Nw+Y463lkWaKKXKYMvmRiRDAtfpuPFLN+E1/6ZhyR8J2ig+eVREnYgUsiag==",
"version": "8.54.0",
"resolved": "https://registry.npmjs.org/eslint/-/eslint-8.54.0.tgz",
"integrity": "sha512-NY0DfAkM8BIZDVl6PgSa1ttZbx3xHgJzSNJKYcQglem6CppHyMhRIQkBVSSMaSRnLhig3jsDbEzOjwCVt4AmmA==",
"dev": true,
"dependencies": {
"@eslint-community/eslint-utils": "^4.2.0",
"@eslint-community/regexpp": "^4.6.1",
"@eslint/eslintrc": "^2.1.3",
"@eslint/js": "8.53.0",
"@eslint/js": "8.54.0",
"@humanwhocodes/config-array": "^0.11.13",
"@humanwhocodes/module-importer": "^1.0.1",
"@nodelib/fs.walk": "^1.2.8",
@@ -1485,9 +1496,9 @@
}
},
"node_modules/gc-hook": {
"version": "0.2.4",
"resolved": "https://registry.npmjs.org/gc-hook/-/gc-hook-0.2.4.tgz",
"integrity": "sha512-IP7xtJGpaqbzj7Jn3KMhvVPVp3W7LXGbtz/D1dd147ocWg/7nl9TT28TQ+/o+qmn1hI2oCrI86vUvv9WlIbGwQ=="
"version": "0.2.5",
"resolved": "https://registry.npmjs.org/gc-hook/-/gc-hook-0.2.5.tgz",
"integrity": "sha512-808B9hJ1T7ak4HRYdXgQjDaHexlaUOBuNFuqOnYotxfKjOHTDxAy8r1Oe7LI+KBeb/H6XUBKzuYi626DjxhxIg=="
},
"node_modules/generic-names": {
"version": "4.0.0",
@@ -2187,12 +2198,12 @@
"integrity": "sha512-yyVAOFKTAElc7KdLt2+UKGExNYwYb/Y/WE9i+1ezCQsJE8gbKSjewfpRqK2nQgZ4d4hhAAGgDCOcIZVilqE5UA=="
},
"node_modules/playwright": {
"version": "1.39.0",
"resolved": "https://registry.npmjs.org/playwright/-/playwright-1.39.0.tgz",
"integrity": "sha512-naE5QT11uC/Oiq0BwZ50gDmy8c8WLPRTEWuSSFVG2egBka/1qMoSqYQcROMT9zLwJ86oPofcTH2jBY/5wWOgIw==",
"version": "1.40.0",
"resolved": "https://registry.npmjs.org/playwright/-/playwright-1.40.0.tgz",
"integrity": "sha512-gyHAgQjiDf1m34Xpwzaqb76KgfzYrhK7iih+2IzcOCoZWr/8ZqmdBw+t0RU85ZmfJMgtgAiNtBQ/KS2325INXw==",
"dev": true,
"dependencies": {
"playwright-core": "1.39.0"
"playwright-core": "1.40.0"
},
"bin": {
"playwright": "cli.js"
@@ -2205,9 +2216,9 @@
}
},
"node_modules/playwright-core": {
"version": "1.39.0",
"resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.39.0.tgz",
"integrity": "sha512-+k4pdZgs1qiM+OUkSjx96YiKsXsmb59evFoqv8SKO067qBA+Z2s/dCzJij/ZhdQcs2zlTAgRKfeiiLm8PQ2qvw==",
"version": "1.40.0",
"resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.40.0.tgz",
"integrity": "sha512-fvKewVJpGeca8t0ipM56jkVSU6Eo0RmFvQ/MaCQNDYm+sdvKkMBBWTE1FdeMqIdumRaXXjZChWHvIzCGM/tA/Q==",
"dev": true,
"bin": {
"playwright-core": "cli.js"
@@ -2231,15 +2242,15 @@
}
},
"node_modules/polyscript": {
"version": "0.5.11",
"resolved": "https://registry.npmjs.org/polyscript/-/polyscript-0.5.11.tgz",
"integrity": "sha512-/QAp2qkvR9i3n1oSy2mo6DOdCQDRIeZnJhSLjhwghmoAflB0q2VPod21Bl4PS0mlNv50441/zutWix/pFNAsIg==",
"version": "0.6.0",
"resolved": "https://registry.npmjs.org/polyscript/-/polyscript-0.6.0.tgz",
"integrity": "sha512-e9nR1770DaJXMPV7fjhM7wh7sfeMAHfDIx16V1UtU3p1QoV2Z+jxZq+LuKumKlgsN82Yl56D1rP9qriie9omHQ==",
"dependencies": {
"@ungap/structured-clone": "^1.2.0",
"@ungap/with-resolvers": "^0.1.0",
"basic-devtools": "^0.1.6",
"codedent": "^0.1.2",
"coincident": "^0.14.4",
"coincident": "^1.0.0",
"html-escaper": "^3.0.3",
"sticky-module": "^0.1.1"
}
@@ -2822,6 +2833,11 @@
"node": ">=0.12"
}
},
"node_modules/proxy-target": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/proxy-target/-/proxy-target-2.1.0.tgz",
"integrity": "sha512-kgF20JQr+2uRX1024gAn/PV36IiOU1Rcmsphf6nHWh+d5XmkMOOMIoqYjLw7qe+iN0ix1lVMAYtJERlP3DQLiQ=="
},
"node_modules/punycode": {
"version": "2.3.1",
"resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz",
@@ -2924,9 +2940,9 @@
}
},
"node_modules/rollup": {
"version": "4.3.0",
"resolved": "https://registry.npmjs.org/rollup/-/rollup-4.3.0.tgz",
"integrity": "sha512-scIi1NrKLDIYSPK66jjECtII7vIgdAMFmFo8h6qm++I6nN9qDSV35Ku6erzGVqYjx+lj+j5wkusRMr++8SyDZg==",
"version": "4.5.1",
"resolved": "https://registry.npmjs.org/rollup/-/rollup-4.5.1.tgz",
"integrity": "sha512-0EQribZoPKpb5z1NW/QYm3XSR//Xr8BeEXU49Lc/mQmpmVVG5jPUVrpc2iptup/0WMrY9mzas0fxH+TjYvG2CA==",
"dev": true,
"bin": {
"rollup": "dist/bin/rollup"
@@ -2936,18 +2952,18 @@
"npm": ">=8.0.0"
},
"optionalDependencies": {
"@rollup/rollup-android-arm-eabi": "4.3.0",
"@rollup/rollup-android-arm64": "4.3.0",
"@rollup/rollup-darwin-arm64": "4.3.0",
"@rollup/rollup-darwin-x64": "4.3.0",
"@rollup/rollup-linux-arm-gnueabihf": "4.3.0",
"@rollup/rollup-linux-arm64-gnu": "4.3.0",
"@rollup/rollup-linux-arm64-musl": "4.3.0",
"@rollup/rollup-linux-x64-gnu": "4.3.0",
"@rollup/rollup-linux-x64-musl": "4.3.0",
"@rollup/rollup-win32-arm64-msvc": "4.3.0",
"@rollup/rollup-win32-ia32-msvc": "4.3.0",
"@rollup/rollup-win32-x64-msvc": "4.3.0",
"@rollup/rollup-android-arm-eabi": "4.5.1",
"@rollup/rollup-android-arm64": "4.5.1",
"@rollup/rollup-darwin-arm64": "4.5.1",
"@rollup/rollup-darwin-x64": "4.5.1",
"@rollup/rollup-linux-arm-gnueabihf": "4.5.1",
"@rollup/rollup-linux-arm64-gnu": "4.5.1",
"@rollup/rollup-linux-arm64-musl": "4.5.1",
"@rollup/rollup-linux-x64-gnu": "4.5.1",
"@rollup/rollup-linux-x64-musl": "4.5.1",
"@rollup/rollup-win32-arm64-msvc": "4.5.1",
"@rollup/rollup-win32-ia32-msvc": "4.5.1",
"@rollup/rollup-win32-x64-msvc": "4.5.1",
"fsevents": "~2.3.2"
}
},
@@ -3331,9 +3347,9 @@
}
},
"node_modules/typescript": {
"version": "5.2.2",
"resolved": "https://registry.npmjs.org/typescript/-/typescript-5.2.2.tgz",
"integrity": "sha512-mI4WrpHsbCIcwT9cF4FZvr80QUeKvsUsUvKDoR+X/7XHQH98xYD8YHZg7ANtz2GtZt/CBq2QJ0thkGJMHfqc1w==",
"version": "5.3.2",
"resolved": "https://registry.npmjs.org/typescript/-/typescript-5.3.2.tgz",
"integrity": "sha512-6l+RyNy7oAHDfxC4FzSJcz9vnjTKxrLpDG5M2Vu4SHRVNg6xzqZp6LYSR9zjqQTu8DU/f5xwxUdADOkbrIX2gQ==",
"dev": true,
"bin": {
"tsc": "bin/tsc",

View File

@@ -1,6 +1,6 @@
{
"name": "@pyscript/core",
"version": "0.3.4",
"version": "0.3.5",
"type": "module",
"description": "PyScript",
"module": "./index.js",
@@ -41,24 +41,25 @@
"dependencies": {
"@ungap/with-resolvers": "^0.1.0",
"basic-devtools": "^0.1.6",
"polyscript": "^0.5.11",
"polyscript": "^0.6.0",
"sticky-module": "^0.1.1",
"to-json-callback": "^0.1.1",
"type-checked-collections": "^0.1.7"
},
"devDependencies": {
"@playwright/test": "^1.39.0",
"@playwright/test": "^1.40.0",
"@rollup/plugin-commonjs": "^25.0.7",
"@rollup/plugin-node-resolve": "^15.2.3",
"@rollup/plugin-terser": "^0.4.4",
"@webreflection/toml-j0.4": "^1.1.3",
"@xterm/addon-fit": "^0.9.0-beta.1",
"chokidar": "^3.5.3",
"eslint": "^8.53.0",
"rollup": "^4.3.0",
"eslint": "^8.54.0",
"rollup": "^4.5.1",
"rollup-plugin-postcss": "^4.0.2",
"rollup-plugin-string": "^3.0.0",
"static-handler": "^0.4.3",
"typescript": "^5.2.2",
"typescript": "^5.3.2",
"xterm": "^5.3.0",
"xterm-readline": "^1.1.1"
},

View File

@@ -42,6 +42,9 @@ const modules = {
(b) => b.text(),
),
"xterm-readline.js": resolve("xterm-readline"),
"xterm_addon-fit.js": fetch(`${CDN}/@xterm/addon-fit/+esm`).then((b) =>
b.text(),
),
};
for (const [target, source] of Object.entries(modules)) {

View File

@@ -40,9 +40,10 @@ const pyTerminal = async () => {
);
// lazy load these only when a valid terminal is found
const [{ Terminal }, { Readline }] = await Promise.all([
const [{ Terminal }, { Readline }, { FitAddon }] = await Promise.all([
import(/* webpackIgnore: true */ "../3rd-party/xterm.js"),
import(/* webpackIgnore: true */ "../3rd-party/xterm-readline.js"),
import(/* webpackIgnore: true */ "../3rd-party/xterm_addon-fit.js"),
]);
const readline = new Readline();
@@ -69,8 +70,11 @@ const pyTerminal = async () => {
},
...options,
});
const fitAddon = new FitAddon();
terminal.loadAddon(fitAddon);
terminal.loadAddon(readline);
terminal.open(target);
fitAddon.fit();
terminal.focus();
};

View File

@@ -0,0 +1,4 @@
declare var i: any;
declare var o: any;
declare var s: {};
export { i as FitAddon, o as __esModule, s as default };