@midscene/computer-playground 1.2.3-beta-20260122071913.0 → 1.2.3-beta-20260123062401.0

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.
package/dist/es/bin.mjs CHANGED
@@ -1,33 +1,10 @@
1
- import { createServer } from "node:net";
2
1
  import node_os from "node:os";
3
2
  import node_path from "node:path";
4
3
  import { ComputerDevice, agentFromComputer } from "@midscene/computer";
5
4
  import { PlaygroundServer } from "@midscene/playground";
6
5
  import { PLAYGROUND_SERVER_PORT } from "@midscene/shared/constants";
6
+ import { findAvailablePort } from "@midscene/shared/node";
7
7
  import puppeteer from "puppeteer";
8
- async function isPortAvailable(port) {
9
- return new Promise((resolve)=>{
10
- const server = createServer();
11
- server.on('error', ()=>resolve(false));
12
- server.listen(port, ()=>{
13
- server.close(()=>resolve(true));
14
- });
15
- });
16
- }
17
- async function findAvailablePort(startPort) {
18
- let port = startPort;
19
- let attempts = 0;
20
- const maxAttempts = 15;
21
- while(!await isPortAvailable(port)){
22
- attempts++;
23
- if (attempts >= maxAttempts) {
24
- console.error(`❌ Unable to find available port after ${maxAttempts} attempts starting from ${startPort}`);
25
- process.exit(1);
26
- }
27
- port++;
28
- }
29
- return port;
30
- }
31
8
  const staticDir = node_path.join(__dirname, '../../static');
32
9
  const main = async ()=>{
33
10
  try {
package/dist/lib/bin.js CHANGED
@@ -21,7 +21,6 @@ var __webpack_require__ = {};
21
21
  __webpack_require__.o = (obj, prop)=>Object.prototype.hasOwnProperty.call(obj, prop);
22
22
  })();
23
23
  var __webpack_exports__ = {};
24
- const external_node_net_namespaceObject = require("node:net");
25
24
  const external_node_os_namespaceObject = require("node:os");
26
25
  var external_node_os_default = /*#__PURE__*/ __webpack_require__.n(external_node_os_namespaceObject);
27
26
  const external_node_path_namespaceObject = require("node:path");
@@ -29,31 +28,9 @@ var external_node_path_default = /*#__PURE__*/ __webpack_require__.n(external_no
29
28
  const computer_namespaceObject = require("@midscene/computer");
30
29
  const playground_namespaceObject = require("@midscene/playground");
31
30
  const constants_namespaceObject = require("@midscene/shared/constants");
31
+ const node_namespaceObject = require("@midscene/shared/node");
32
32
  const external_puppeteer_namespaceObject = require("puppeteer");
33
33
  var external_puppeteer_default = /*#__PURE__*/ __webpack_require__.n(external_puppeteer_namespaceObject);
34
- async function isPortAvailable(port) {
35
- return new Promise((resolve)=>{
36
- const server = (0, external_node_net_namespaceObject.createServer)();
37
- server.on('error', ()=>resolve(false));
38
- server.listen(port, ()=>{
39
- server.close(()=>resolve(true));
40
- });
41
- });
42
- }
43
- async function findAvailablePort(startPort) {
44
- let port = startPort;
45
- let attempts = 0;
46
- const maxAttempts = 15;
47
- while(!await isPortAvailable(port)){
48
- attempts++;
49
- if (attempts >= maxAttempts) {
50
- console.error(`❌ Unable to find available port after ${maxAttempts} attempts starting from ${startPort}`);
51
- process.exit(1);
52
- }
53
- port++;
54
- }
55
- return port;
56
- }
57
34
  const staticDir = external_node_path_default().join(__dirname, '../../static');
58
35
  const main = async ()=>{
59
36
  try {
@@ -103,7 +80,7 @@ const main = async ()=>{
103
80
  next();
104
81
  });
105
82
  console.log('🚀 Starting server...');
106
- const availablePort = await findAvailablePort(constants_namespaceObject.PLAYGROUND_SERVER_PORT);
83
+ const availablePort = await (0, node_namespaceObject.findAvailablePort)(constants_namespaceObject.PLAYGROUND_SERVER_PORT);
107
84
  if (availablePort !== constants_namespaceObject.PLAYGROUND_SERVER_PORT) console.log(`⚠️ Port ${constants_namespaceObject.PLAYGROUND_SERVER_PORT} is busy, using port ${availablePort} instead`);
108
85
  await playgroundServer.launch(availablePort);
109
86
  console.log('');
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@midscene/computer-playground",
3
- "version": "1.2.3-beta-20260122071913.0",
3
+ "version": "1.2.3-beta-20260123062401.0",
4
4
  "description": "Computer playground for Midscene - PC desktop automation",
5
5
  "main": "./dist/lib/index.js",
6
6
  "types": "./dist/types/index.d.ts",
@@ -19,10 +19,10 @@
19
19
  "cors": "^2.8.5",
20
20
  "express": "^4.21.2",
21
21
  "puppeteer": "24.6.0",
22
- "@midscene/computer": "1.2.3-beta-20260122071913.0",
23
- "@midscene/core": "1.2.3-beta-20260122071913.0",
24
- "@midscene/playground": "1.2.3-beta-20260122071913.0",
25
- "@midscene/shared": "1.2.3-beta-20260122071913.0"
22
+ "@midscene/computer": "1.2.3-beta-20260123062401.0",
23
+ "@midscene/core": "1.2.3-beta-20260123062401.0",
24
+ "@midscene/playground": "1.2.3-beta-20260123062401.0",
25
+ "@midscene/shared": "1.2.3-beta-20260123062401.0"
26
26
  },
27
27
  "devDependencies": {
28
28
  "@rslib/core": "^0.18.3",
package/static/index.html CHANGED
@@ -1 +1 @@
1
- <!doctype html><html><head><title>Midscene Computer Playground</title><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><script defer src="/static/js/lib-react.e13cc2e0.js"></script><script defer src="/static/js/119.b7e19680.js"></script><script defer src="/static/js/index.0b0ff088.js"></script><link href="/static/css/index.58f2c850.css" rel="stylesheet"></head><body><div id="root"></div></body></html>
1
+ <!doctype html><html><head><title>Midscene Computer Playground</title><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><script defer src="/static/js/lib-react.e13cc2e0.js"></script><script defer src="/static/js/119.b7e19680.js"></script><script defer src="/static/js/index.0b0a3014.js"></script><link href="/static/css/index.58f2c850.css" rel="stylesheet"></head><body><div id="root"></div></body></html>