@fugood/bricks-cli 2.26.0-beta.12 → 2.26.0-beta.14
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/README.md +10 -0
- package/lib/1010.js +1 -1
- package/lib/1708.js +2 -2
- package/lib/2486.js +1 -1
- package/lib/6818.js +1 -1
- package/lib/9439.js +1 -1
- package/lib/9590.js +1 -1
- package/lib/devtools.js +1 -1
- package/lib/index.js +23 -23
- package/lib/lib.js +13 -13
- package/package.json +5 -5
package/lib/devtools.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{createRequire as e}from"node:module";let r=e(import.meta.url);var t,o,n,s,a,i,l,c={84361(e){e.exports=import("ws").then(function(e){return e})},41314(e){e.exports=r("node:dgram")},51455(e){e.exports=r("node:fs/promises")},48161(e){e.exports=r("node:os")},76760(e){e.exports=r("node:path")},66442(e){e.exports=function(e,r){(null==r||r>e.length)&&(r=e.length);for(var t=0,o=Array(r);t<r;t++)o[t]=e[t];return o},e.exports.__esModule=!0,e.exports.default=e.exports},3634(e){e.exports=function(e){if(Array.isArray(e))return e},e.exports.__esModule=!0,e.exports.default=e.exports},99436(e){function r(e,r,t,o,n,s,a){try{var i=e[s](a),l=i.value}catch(e){return void t(e)}i.done?r(l):Promise.resolve(l).then(o,n)}e.exports=function(e){return function(){var t=this,o=arguments;return new Promise(function(n,s){var a=e.apply(t,o);function i(e){r(a,n,s,i,l,"next",e)}function l(e){r(a,n,s,i,l,"throw",e)}i(void 0)})}},e.exports.__esModule=!0,e.exports.default=e.exports},96525(e){e.exports=function(e,r){var t=null==e?null:"u">typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=t){var o,n,s,a,i=[],l=!0,c=!1;try{if(s=(t=t.call(e)).next,0===r){if(Object(t)!==t)return;l=!1}else for(;!(l=(o=s.call(t)).done)&&(i.push(o.value),i.length!==r);l=!0);}catch(e){c=!0,n=e}finally{try{if(!l&&null!=t.return&&(a=t.return(),Object(a)!==a))return}finally{if(c)throw n}}return i}},e.exports.__esModule=!0,e.exports.default=e.exports},5523(e){e.exports=function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")},e.exports.__esModule=!0,e.exports.default=e.exports},68832(e,r,t){var o=t(3634),n=t(96525),s=t(78243),a=t(5523);e.exports=function(e,r){return o(e)||n(e,r)||s(e,r)||a()},e.exports.__esModule=!0,e.exports.default=e.exports},78243(e,r,t){var o=t(66442);e.exports=function(e,r){if(e){if("string"==typeof e)return o(e,r);var t=({}).toString.call(e).slice(8,-1);return"Object"===t&&e.constructor&&(t=e.constructor.name),"Map"===t||"Set"===t?Array.from(e):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?o(e,r):void 0}},e.exports.__esModule=!0,e.exports.default=e.exports},13346(e,r,t){t.a(e,async function(e,o){try{t.d(r,{f:()=>s.createCdpClient,l:()=>n.le});var n=t(38372),s=t(28193),a=e([s]);s=(a.then?(await a)():a)[0],o()}catch(e){o(e)}})},28193(e,r,t){t.a(e,async function(e,o){try{t.d(r,{createCdpClient:()=>d});var n,s=t(99436),a=t(84361),i=e([a]);a=(i.then?(await i)():i)[0];var l=15e3,c=({address:e,port:r,method:t,phase:o="request",closeCode:n,closeReason:s,local:a=!1})=>{var i=s?Buffer.isBuffer(s)?s.toString("utf8"):String(s):"",l="connect"===o?"before the CDP session opened":t?`while waiting for ${t}`:"during the CDP session",c=`${e}:${r}`,u=[];null!=n&&u.push(`code ${n}`),i&&u.push(`reason: ${i}`);var d=[a?`CDP client closed the connection to ${c} ${l}.`:`CDP connection to ${c} closed ${l}.`,u.length>0?`WebSocket close ${u.join(", ")}.`:null,a?null:"The DevTools server currently accepts one CDP client at a time. Another DevTools window or CLI command may have replaced this session. Retry the command, close the other inspector, or avoid running DevTools commands in parallel."].filter(Boolean).join("\n"),p=Error(d);return p.code="CDP_CONNECTION_CLOSED",p.method=t,p.phase=o,p.closeCode=n,p.closeReason=i,p},u=(n=s(function*(e,r,t){var o,n=t?"string"==typeof t?{passcode:t}:t:{},s=n.passcode,a=n.accessToken;if(a)return`ws://${e}:${r}/ws?access_token=${encodeURIComponent(a)}`;if(!s)try{var i=new AbortController;o=setTimeout(()=>i.abort(),3e3);var l=yield fetch(`http://${e}:${r}/json/list`,{signal:i.signal});if(l.ok){var c=yield l.json(),u=c?.[0]?.webSocketDebuggerUrl;if(u){var d=u.match(/\/ws(?:\/.*)?$/);if(d)return`ws://${e}:${r}${d[0]}`}}}catch{}finally{void 0!==o&&clearTimeout(o)}return s?`ws://${e}:${r}/ws/${encodeURIComponent(s)}`:`ws://${e}:${r}/ws`}),function(e,r,t){return n.apply(this,arguments)}),d=(e,r,t)=>{var o,n,i=0,d=new Map,p=new Map,f=null,v=0,h=e=>{for(var r of d.values()){var t=r.reject,o=r.timer,n=r.method;clearTimeout(o),t(e(n))}d.clear()};return{connect:(o=s(function*(){var o=++v,s=yield u(e,r,t);if(o!==v)throw c({address:e,port:r,phase:"connect",local:!0});return new Promise((t,o)=>{n=new a.WebSocket(s,{handshakeTimeout:l});var i=!1;n.once("open",()=>{i=!0,f=null,t()}),n.once("error",t=>{i||o(Error(t.message||`Cannot connect to ${e}:${r}`))}),n.on("message",e=>{try{var r=JSON.parse(e.toString());if(null!=r.id&&d.has(r.id)){var t=d.get(r.id),o=t.resolve,n=t.reject,s=t.timer;clearTimeout(s),d.delete(r.id),r.error?n(Error(r.error.message)):o(r.result);return}if(r.method){var a=p.get(r.method);if(a)for(var i of a)i(r.params)}}catch{}}),n.on("close",(t,n)=>{f={closeCode:t,closeReason:n},i||o(c({address:e,port:r,phase:"connect",closeCode:t,closeReason:n})),h(o=>c({address:e,port:r,method:o,closeCode:t,closeReason:n}))})})}),function(){return o.apply(this,arguments)}),send:(t,o={},s=l)=>new Promise((a,l)=>{if(!n||n.readyState!==n.OPEN)return f?void l(c({address:e,port:r,method:t,closeCode:f.closeCode,closeReason:f.closeReason})):void l(Error(`Not connected to CDP at ${e}:${r} while sending ${t}`));var u=++i,p=setTimeout(()=>{d.delete(u),l(Error(`Timeout: ${t}`))},s);d.set(u,{resolve:a,reject:l,timer:p,method:t}),n.send(JSON.stringify({id:u,method:t,params:o}))}),on:(e,r)=>{p.has(e)||p.set(e,[]),p.get(e).push(r)},off:(e,r)=>{var t=p.get(e);if(t){var o=t.indexOf(r);o>=0&&t.splice(o,1)}},close:()=>{v++,h(t=>c({address:e,port:r,method:t,local:!0})),n&&(n.terminate(),n=null)}}};o()}catch(e){o(e)}})},38372(e,r,t){t.d(r,{le:()=>f});var o,n,s,a=t(68832),i=t(99436),l=t(51455),c=t(76760),u=t(75646),d=(o=i(function*(e,r,t=3e3){var o;try{var n=new AbortController;o=setTimeout(()=>n.abort(),t);var s=yield fetch(`http://${e}:${r}/json/list`,{signal:n.signal});if(!s.ok)return null;return yield s.json()}catch{return null}finally{void 0!==o&&clearTimeout(o)}}),function(e,r){return o.apply(this,arguments)}),p=(n=i(function*(e,r=1e3){for(var t=[],o=e,n=0;n<10;n++){var s=c.join(o,".bricks","devtools.json");try{var a=yield l.readFile(s,"utf8"),i=JSON.parse(a),d=yield(0,u.verifyDevToolsServer)(i.address||"localhost",i.port,r);d&&t.push({name:i.name||"BRICKS Simulator",address:i.address||"localhost",port:i.port,protocols:["cdp"],hasPasscode:!1,source:"project",projectPath:o,...d})}catch{}var p=c.dirname(o);if(p===o)break;o=p}return t}),function(e){return n.apply(this,arguments)}),f=(s=i(function*({timeout:e=3e3,verify:r=!1,udpOnly:t=!1,project:o=!0,port:n=19851,cwd:s=process.cwd(),onStatus:l}={}){var c,f=(0,u.discoverDevToolsServers)({timeout:e,idleTimeout:800}),v=t?Promise.resolve([]):(l?.("Scanning via UDP + HTTP probe..."),(0,u.httpProbeSubnet)({port:n,timeout:e})),h=o?p(s,1e3):Promise.resolve([]),m=a((yield Promise.all([f,v,h])),3),y=(e=>{var r=new Map;for(var t of e){var o=t.deviceId||`${t.address}:${t.port}`,n=r.get(o);if(!n){r.set(o,{...t,addresses:[t.address],protocols:[...t.protocols||[]]});continue}for(var s of(n.addresses.includes(t.address)||n.addresses.push(t.address),"127.0.0.1"===n.address&&"127.0.0.1"!==t.address&&(n.address=t.address),t.protocols||[]))n.protocols.includes(s)||n.protocols.push(s);for(var i of Object.entries(t)){var l=a(i,2),c=l[0],u=l[1];null!=u&&"address"!==c&&"addresses"!==c&&"protocols"!==c&&(void 0===n[c]||null===n[c])&&(n[c]=u)}}return[...r.values()]})([...m[0],...m[1],...m[2]]);if(0===y.length)return[];if(r){l?.(`Verifying ${y.length} server(s)...`);var b,g=yield Promise.all(y.map((b=i(function*(e){var r=yield(0,u.verifyDevToolsServer)(e.address,e.port);return{...e,...r||{},address:e.address,port:e.port,verified:!!r,version:r?.version||e.version}}),function(e){return b.apply(this,arguments)})));y.splice(0,y.length,...g)}return l?.("Checking chrome://inspect support..."),yield Promise.all(y.map((c=i(function*(e){var r=yield d(e.address,e.port);if(r){e.chromeInspect=!0;var t=(e=>{if(!e)return null;var r=e.match(/\/ws\/(.+)$/);return r?decodeURIComponent(r[1]):null})(r[0]?.webSocketDebuggerUrl);t&&(e.passcode=t)}}),function(e){return c.apply(this,arguments)}))),y}),function(){return s.apply(this,arguments)})},75646(e,r,t){t.d(r,{discoverDevToolsServers:()=>l,httpProbeSubnet:()=>c,verifyDevToolsServer:()=>u});var o,n,s=t(99436),a=t(19557),i="bricks-devtools",l=({timeout:e=3e3,idleTimeout:r=0}={})=>(0,a.YH)({port:19900,timeout:e,idleTimeout:r,buildQuery:()=>Buffer.from(JSON.stringify({t:"QUERY",v:"1.0",s:i,d:{id:`cli-${(0,a.BW)()}`}})),parseMessage:(e,r)=>{var t=(0,a.nl)(e,e=>e?.s===i);if(!t)return null;var o=r.address;return{key:`${o}:${t.port}`,value:{...t,address:o}}}}),c=(o=s(function*({port:e=19851,connectTimeout:r=500,concurrency:t=50,timeout:o=0}={}){var n=(0,a.r9)();if(0===n.length)return[];var i=[],l=o>0?Date.now()+o:0,c=[],d=new Set;for(var p of n){var f=p.address.split(".").slice(0,3).join(".");if(!d.has(f)){d.add(f);for(var v=1;v<255;v++)c.push(`${f}.${v}`)}}for(var h=0;h<c.length&&!(l&&Date.now()>=l);h+=t){var m=c.slice(h,h+t);yield Promise.allSettled(m.map(function(){var t=s(function*(t){var o=yield u(t,e,r);o&&i.push({...o,address:t,port:e})});return function(e){return t.apply(this,arguments)}}()))}return i}),function(){return o.apply(this,arguments)}),u=(n=s(function*(e,r,t=3e3){return(0,a.uE)(`http://${e}:${r}/devtools/info`,t)}),function(e,r){return n.apply(this,arguments)})},19557(e,r,t){t.d(r,{BW:()=>i,YH:()=>d,nl:()=>c,r9:()=>u,uE:()=>p});var o,n=t(99436),s=t(41314),a=t(48161),i=()=>Math.random().toString(36).slice(2,9),l=new Set(["ANNOUNCE","RESPONSE"]),c=(e,r)=>{var t=JSON.parse(e.toString());return r(t)&&l.has(t.t)&&t.d?.info||null},u=()=>{var e=[];for(var r of Object.values(a.networkInterfaces()))for(var t of r)if(function(){if("IPv4"!==t.family||t.internal)return 1;var r=t.address.split(".").map(Number),o=t.netmask.split(".").map(Number),n=r.map((e,r)=>(e|255&~o[r]).toString()).join(".");e.push({address:t.address,broadcast:n})}())continue;return e},d=({port:e,timeout:r=3e3,idleTimeout:t=0,buildQuery:o,parseMessage:n})=>new Promise((a,i)=>{var l=new Map,c=s.createSocket("udp4"),d=null,p=null,f=!1,v=()=>{if(!f){f=!0,clearTimeout(d),clearTimeout(p);try{c.close()}catch{}a([...l.values()])}};c.on("error",e=>{if(!f){f=!0,clearTimeout(d),clearTimeout(p);try{c.close()}catch{}i(e)}}),c.on("message",(e,r)=>{try{var o=n(e,r);if(!o||l.has(o.key))return;l.set(o.key,o.value),t&&!f&&(clearTimeout(p),p=setTimeout(v,t))}catch{}}),c.bind(()=>{c.setBroadcast(!0);var t=o();for(var n of(()=>{var e=new Set(["255.255.255.255","127.0.0.1"]);for(var r of u())e.add(r.broadcast);return[...e]})())c.send(t,0,t.length,e,n);d=setTimeout(v,r)})}),p=(o=n(function*(e,r=3e3){var t;try{var o=new AbortController;t=setTimeout(()=>o.abort(),r);var n=yield fetch(e,{signal:o.signal});if(!n.ok)return null;return yield n.json()}catch{return null}finally{void 0!==t&&clearTimeout(t)}}),function(e){return o.apply(this,arguments)})}},u={};function d(e){var r=u[e];if(void 0!==r)return r.exports;var t=u[e]={exports:{}};return c[e](t,t.exports,d),t.exports}o=(t="function"==typeof Symbol)?Symbol("rspack queues"):"__rspack_queues",n=d.aE=t?Symbol("rspack exports"):"__webpack_exports__",s=t?Symbol("rspack error"):"__rspack_error",a=t?Symbol("rspack done"):"__rspack_done",i=d.zS=t?Symbol("rspack defer"):"__rspack_defer",d.zT=e=>{if(e.some(e=>{var r=u[e];return!r||!1===r[a]}))return{then:(r,t)=>Promise.all(e.map(d)).then(r,t)}},l=e=>{e&&e.d<1&&(e.d=1,e.forEach(e=>e.r--),e.forEach(e=>e.r--?e.r++:e()))},d.a=(e,r,t)=>{t&&((c=[]).d=-1);var c,u,p,f,v=new Set,h=e.exports,m=new Promise((e,r)=>{f=r,p=e});m[n]=h,m[o]=e=>{c&&e(c),v.forEach(e),m.catch(()=>{})},e.exports=m,r(e=>{u=e.map(e=>{if(null!==e&&"object"==typeof e){if(!e[o]&&e[i]){var r=d.zT(e[i]);if(!r)return e;var t=e;e={then(e,o){r.then(()=>e(t),o)}}}if(e[o])return e;if(e.then){var a=[];a.d=0,e.then(e=>{c[n]=e,l(a)},e=>{c[s]=e,l(a)});var c={};return c[i]=!1,c[o]=e=>e(a),c}}var u={};return u[o]=()=>{},u[n]=e,u});var r,t=()=>u.map(e=>{if(e[i])return e;if(e[s])throw e[s];return e[n]}),a=new Promise(e=>{(r=()=>e(t)).r=0;var n=e=>e!==c&&!v.has(e)&&(v.add(e),e&&!e.d&&(r.r++,e.push(r)));u.map(e=>e[i]||e[o](n))});return r.r?a:t()},e=>(e?f(m[s]=e):p(h),l(c),m[a]=!0)),c&&c.d<0&&(c.d=0)},d.d=(e,r)=>{for(var t in r)d.o(r,t)&&!d.o(e,t)&&Object.defineProperty(e,t,{enumerable:!0,get:r[t]})},d.o=(e,r)=>Object.prototype.hasOwnProperty.call(e,r);var p=d(13346),f=(p=await p).f,v=p.l;export{f as createCdpClient,v as scanDevToolsCore};
|
|
1
|
+
import{createRequire as e}from"node:module";let r=e(import.meta.url);var t,o,n,s,a,i,l,c={84361(e){e.exports=import("ws").then(function(e){return e})},41314(e){e.exports=r("node:dgram")},51455(e){e.exports=r("node:fs/promises")},48161(e){e.exports=r("node:os")},76760(e){e.exports=r("node:path")},66442(e){e.exports=function(e,r){(null==r||r>e.length)&&(r=e.length);for(var t=0,o=Array(r);t<r;t++)o[t]=e[t];return o},e.exports.__esModule=!0,e.exports.default=e.exports},3634(e){e.exports=function(e){if(Array.isArray(e))return e},e.exports.__esModule=!0,e.exports.default=e.exports},99436(e){function r(e,r,t,o,n,s,a){try{var i=e[s](a),l=i.value}catch(e){return void t(e)}i.done?r(l):Promise.resolve(l).then(o,n)}e.exports=function(e){return function(){var t=this,o=arguments;return new Promise(function(n,s){var a=e.apply(t,o);function i(e){r(a,n,s,i,l,"next",e)}function l(e){r(a,n,s,i,l,"throw",e)}i(void 0)})}},e.exports.__esModule=!0,e.exports.default=e.exports},96525(e){e.exports=function(e,r){var t=null==e?null:"u">typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=t){var o,n,s,a,i=[],l=!0,c=!1;try{if(s=(t=t.call(e)).next,0===r){if(Object(t)!==t)return;l=!1}else for(;!(l=(o=s.call(t)).done)&&(i.push(o.value),i.length!==r);l=!0);}catch(e){c=!0,n=e}finally{try{if(!l&&null!=t.return&&(a=t.return(),Object(a)!==a))return}finally{if(c)throw n}}return i}},e.exports.__esModule=!0,e.exports.default=e.exports},5523(e){e.exports=function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")},e.exports.__esModule=!0,e.exports.default=e.exports},68832(e,r,t){var o=t(3634),n=t(96525),s=t(78243),a=t(5523);e.exports=function(e,r){return o(e)||n(e,r)||s(e,r)||a()},e.exports.__esModule=!0,e.exports.default=e.exports},78243(e,r,t){var o=t(66442);e.exports=function(e,r){if(e){if("string"==typeof e)return o(e,r);var t=({}).toString.call(e).slice(8,-1);return"Object"===t&&e.constructor&&(t=e.constructor.name),"Map"===t||"Set"===t?Array.from(e):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?o(e,r):void 0}},e.exports.__esModule=!0,e.exports.default=e.exports},13346(e,r,t){t.a(e,async function(e,o){try{t.d(r,{TB:()=>a.verifyDevToolsServer,fl:()=>s.createCdpClient,le:()=>n.le});var n=t(38372),s=t(28193),a=t(75646),i=e([s]);s=(i.then?(await i)():i)[0],o()}catch(e){o(e)}})},28193(e,r,t){t.a(e,async function(e,o){try{t.d(r,{createCdpClient:()=>d});var n,s=t(99436),a=t(84361),i=e([a]);a=(i.then?(await i)():i)[0];var l=15e3,c=({address:e,port:r,method:t,phase:o="request",closeCode:n,closeReason:s,local:a=!1})=>{var i=s?Buffer.isBuffer(s)?s.toString("utf8"):String(s):"",l="connect"===o?"before the CDP session opened":t?`while waiting for ${t}`:"during the CDP session",c=`${e}:${r}`,u=[];null!=n&&u.push(`code ${n}`),i&&u.push(`reason: ${i}`);var d=[a?`CDP client closed the connection to ${c} ${l}.`:`CDP connection to ${c} closed ${l}.`,u.length>0?`WebSocket close ${u.join(", ")}.`:null,a?null:"The DevTools server currently accepts one CDP client at a time. Another DevTools window or CLI command may have replaced this session. Retry the command, close the other inspector, or avoid running DevTools commands in parallel."].filter(Boolean).join("\n"),p=Error(d);return p.code="CDP_CONNECTION_CLOSED",p.method=t,p.phase=o,p.closeCode=n,p.closeReason=i,p},u=(n=s(function*(e,r,t){var o,n=t?"string"==typeof t?{passcode:t}:t:{},s=n.passcode,a=n.accessToken;if(a)return`ws://${e}:${r}/ws?access_token=${encodeURIComponent(a)}`;if(!s)try{var i=new AbortController;o=setTimeout(()=>i.abort(),3e3);var l=yield fetch(`http://${e}:${r}/json/list`,{signal:i.signal});if(l.ok){var c=yield l.json(),u=c?.[0]?.webSocketDebuggerUrl;if(u){var d=u.match(/\/ws(?:\/.*)?$/);if(d)return`ws://${e}:${r}${d[0]}`}}}catch{}finally{void 0!==o&&clearTimeout(o)}return s?`ws://${e}:${r}/ws/${encodeURIComponent(s)}`:`ws://${e}:${r}/ws`}),function(e,r,t){return n.apply(this,arguments)}),d=(e,r,t)=>{var o,n,i=0,d=new Map,p=new Map,f=null,v=0,h=e=>{for(var r of d.values()){var t=r.reject,o=r.timer,n=r.method;clearTimeout(o),t(e(n))}d.clear()};return{connect:(o=s(function*(){var o=++v,s=yield u(e,r,t);if(o!==v)throw c({address:e,port:r,phase:"connect",local:!0});return new Promise((t,o)=>{n=new a.WebSocket(s,{handshakeTimeout:l});var i=!1;n.once("open",()=>{i=!0,f=null,t()}),n.once("error",t=>{i||o(Error(t.message||`Cannot connect to ${e}:${r}`))}),n.on("message",e=>{try{var r=JSON.parse(e.toString());if(null!=r.id&&d.has(r.id)){var t=d.get(r.id),o=t.resolve,n=t.reject,s=t.timer;clearTimeout(s),d.delete(r.id),r.error?n(Error(r.error.message)):o(r.result);return}if(r.method){var a=p.get(r.method);if(a)for(var i of a)i(r.params)}}catch{}}),n.on("close",(t,n)=>{f={closeCode:t,closeReason:n},i||o(c({address:e,port:r,phase:"connect",closeCode:t,closeReason:n})),h(o=>c({address:e,port:r,method:o,closeCode:t,closeReason:n}))})})}),function(){return o.apply(this,arguments)}),send:(t,o={},s=l)=>new Promise((a,l)=>{if(!n||n.readyState!==n.OPEN)return f?void l(c({address:e,port:r,method:t,closeCode:f.closeCode,closeReason:f.closeReason})):void l(Error(`Not connected to CDP at ${e}:${r} while sending ${t}`));var u=++i,p=setTimeout(()=>{d.delete(u),l(Error(`Timeout: ${t}`))},s);d.set(u,{resolve:a,reject:l,timer:p,method:t}),n.send(JSON.stringify({id:u,method:t,params:o}))}),on:(e,r)=>{p.has(e)||p.set(e,[]),p.get(e).push(r)},off:(e,r)=>{var t=p.get(e);if(t){var o=t.indexOf(r);o>=0&&t.splice(o,1)}},close:()=>{v++,h(t=>c({address:e,port:r,method:t,local:!0})),n&&(n.terminate(),n=null)}}};o()}catch(e){o(e)}})},38372(e,r,t){t.d(r,{le:()=>f});var o,n,s,a=t(68832),i=t(99436),l=t(51455),c=t(76760),u=t(75646),d=(o=i(function*(e,r,t=3e3){var o;try{var n=new AbortController;o=setTimeout(()=>n.abort(),t);var s=yield fetch(`http://${e}:${r}/json/list`,{signal:n.signal});if(!s.ok)return null;return yield s.json()}catch{return null}finally{void 0!==o&&clearTimeout(o)}}),function(e,r){return o.apply(this,arguments)}),p=(n=i(function*(e,r=1e3){for(var t=[],o=e,n=0;n<10;n++){var s=c.join(o,".bricks","devtools.json");try{var a=yield l.readFile(s,"utf8"),i=JSON.parse(a),d=yield(0,u.verifyDevToolsServer)(i.address||"localhost",i.port,r);d&&t.push({name:i.name||"BRICKS Simulator",address:i.address||"localhost",port:i.port,protocols:["cdp"],hasPasscode:!1,source:"project",projectPath:o,...d})}catch{}var p=c.dirname(o);if(p===o)break;o=p}return t}),function(e){return n.apply(this,arguments)}),f=(s=i(function*({timeout:e=3e3,verify:r=!1,udpOnly:t=!1,project:o=!0,port:n=19851,cwd:s=process.cwd(),onStatus:l}={}){var c,f=(0,u.discoverDevToolsServers)({timeout:e,idleTimeout:800}),v=t?Promise.resolve([]):(l?.("Scanning via UDP + HTTP probe..."),(0,u.httpProbeSubnet)({port:n,timeout:e})),h=o?p(s,1e3):Promise.resolve([]),m=a((yield Promise.all([f,v,h])),3),y=(e=>{var r=new Map;for(var t of e){var o=t.deviceId||`${t.address}:${t.port}`,n=r.get(o);if(!n){r.set(o,{...t,addresses:[t.address],protocols:[...t.protocols||[]]});continue}for(var s of(n.addresses.includes(t.address)||n.addresses.push(t.address),"127.0.0.1"===n.address&&"127.0.0.1"!==t.address&&(n.address=t.address),t.protocols||[]))n.protocols.includes(s)||n.protocols.push(s);for(var i of Object.entries(t)){var l=a(i,2),c=l[0],u=l[1];null!=u&&"address"!==c&&"addresses"!==c&&"protocols"!==c&&(void 0===n[c]||null===n[c])&&(n[c]=u)}}return[...r.values()]})([...m[0],...m[1],...m[2]]);if(0===y.length)return[];if(r){l?.(`Verifying ${y.length} server(s)...`);var b,w=yield Promise.all(y.map((b=i(function*(e){var r=yield(0,u.verifyDevToolsServer)(e.address,e.port);return{...e,...r||{},address:e.address,port:e.port,verified:!!r,version:r?.version||e.version}}),function(e){return b.apply(this,arguments)})));y.splice(0,y.length,...w)}return l?.("Checking chrome://inspect support..."),yield Promise.all(y.map((c=i(function*(e){var r=yield d(e.address,e.port);if(r){e.chromeInspect=!0;var t=(e=>{if(!e)return null;var r=e.match(/\/ws\/(.+)$/);return r?decodeURIComponent(r[1]):null})(r[0]?.webSocketDebuggerUrl);t&&(e.passcode=t)}}),function(e){return c.apply(this,arguments)}))),y}),function(){return s.apply(this,arguments)})},75646(e,r,t){t.d(r,{discoverDevToolsServers:()=>l,httpProbeSubnet:()=>c,verifyDevToolsServer:()=>u});var o,n,s=t(99436),a=t(19557),i="bricks-devtools",l=({timeout:e=3e3,idleTimeout:r=0}={})=>(0,a.YH)({port:19900,timeout:e,idleTimeout:r,buildQuery:()=>Buffer.from(JSON.stringify({t:"QUERY",v:"1.0",s:i,d:{id:`cli-${(0,a.BW)()}`}})),parseMessage:(e,r)=>{var t=(0,a.nl)(e,e=>e?.s===i);if(!t)return null;var o=r.address;return{key:`${o}:${t.port}`,value:{...t,address:o}}}}),c=(o=s(function*({port:e=19851,connectTimeout:r=500,concurrency:t=50,timeout:o=0}={}){var n=(0,a.r9)();if(0===n.length)return[];var i=[],l=o>0?Date.now()+o:0,c=[],d=new Set;for(var p of n){var f=p.address.split(".").slice(0,3).join(".");if(!d.has(f)){d.add(f);for(var v=1;v<255;v++)c.push(`${f}.${v}`)}}for(var h=0;h<c.length&&!(l&&Date.now()>=l);h+=t){var m=c.slice(h,h+t);yield Promise.allSettled(m.map(function(){var t=s(function*(t){var o=yield u(t,e,r);o&&i.push({...o,address:t,port:e})});return function(e){return t.apply(this,arguments)}}()))}return i}),function(){return o.apply(this,arguments)}),u=(n=s(function*(e,r,t=3e3){return(0,a.uE)(`http://${e}:${r}/devtools/info`,t)}),function(e,r){return n.apply(this,arguments)})},19557(e,r,t){t.d(r,{BW:()=>i,YH:()=>d,nl:()=>c,r9:()=>u,uE:()=>p});var o,n=t(99436),s=t(41314),a=t(48161),i=()=>Math.random().toString(36).slice(2,9),l=new Set(["ANNOUNCE","RESPONSE"]),c=(e,r)=>{var t=JSON.parse(e.toString());return r(t)&&l.has(t.t)&&t.d?.info||null},u=()=>{var e=[];for(var r of Object.values(a.networkInterfaces()))for(var t of r)if(function(){if("IPv4"!==t.family||t.internal)return 1;var r=t.address.split(".").map(Number),o=t.netmask.split(".").map(Number),n=r.map((e,r)=>(e|255&~o[r]).toString()).join(".");e.push({address:t.address,broadcast:n})}())continue;return e},d=({port:e,timeout:r=3e3,idleTimeout:t=0,buildQuery:o,parseMessage:n})=>new Promise((a,i)=>{var l=new Map,c=s.createSocket("udp4"),d=null,p=null,f=!1,v=()=>{if(!f){f=!0,clearTimeout(d),clearTimeout(p);try{c.close()}catch{}a([...l.values()])}};c.on("error",e=>{if(!f){f=!0,clearTimeout(d),clearTimeout(p);try{c.close()}catch{}i(e)}}),c.on("message",(e,r)=>{try{var o=n(e,r);if(!o||l.has(o.key))return;l.set(o.key,o.value),t&&!f&&(clearTimeout(p),p=setTimeout(v,t))}catch{}}),c.bind(()=>{c.setBroadcast(!0);var t=o();for(var n of(()=>{var e=new Set(["255.255.255.255","127.0.0.1"]);for(var r of u())e.add(r.broadcast);return[...e]})())c.send(t,0,t.length,e,n);d=setTimeout(v,r)})}),p=(o=n(function*(e,r=3e3){var t;try{var o=new AbortController;t=setTimeout(()=>o.abort(),r);var n=yield fetch(e,{signal:o.signal});if(!n.ok)return null;return yield n.json()}catch{return null}finally{void 0!==t&&clearTimeout(t)}}),function(e){return o.apply(this,arguments)})}},u={};function d(e){var r=u[e];if(void 0!==r)return r.exports;var t=u[e]={exports:{}};return c[e](t,t.exports,d),t.exports}o=(t="function"==typeof Symbol)?Symbol("rspack queues"):"__rspack_queues",n=d.aE=t?Symbol("rspack exports"):"__webpack_exports__",s=t?Symbol("rspack error"):"__rspack_error",a=t?Symbol("rspack done"):"__rspack_done",i=d.zS=t?Symbol("rspack defer"):"__rspack_defer",d.zT=e=>{if(e.some(e=>{var r=u[e];return!r||!1===r[a]}))return{then:(r,t)=>Promise.all(e.map(d)).then(r,t)}},l=e=>{e&&e.d<1&&(e.d=1,e.forEach(e=>e.r--),e.forEach(e=>e.r--?e.r++:e()))},d.a=(e,r,t)=>{t&&((c=[]).d=-1);var c,u,p,f,v=new Set,h=e.exports,m=new Promise((e,r)=>{f=r,p=e});m[n]=h,m[o]=e=>{c&&e(c),v.forEach(e),m.catch(()=>{})},e.exports=m,r(e=>{u=e.map(e=>{if(null!==e&&"object"==typeof e){if(!e[o]&&e[i]){var r=d.zT(e[i]);if(!r)return e;var t=e;e={then(e,o){r.then(()=>e(t),o)}}}if(e[o])return e;if(e.then){var a=[];a.d=0,e.then(e=>{c[n]=e,l(a)},e=>{c[s]=e,l(a)});var c={};return c[i]=!1,c[o]=e=>e(a),c}}var u={};return u[o]=()=>{},u[n]=e,u});var r,t=()=>u.map(e=>{if(e[i])return e;if(e[s])throw e[s];return e[n]}),a=new Promise(e=>{(r=()=>e(t)).r=0;var n=e=>e!==c&&!v.has(e)&&(v.add(e),e&&!e.d&&(r.r++,e.push(r)));u.map(e=>e[i]||e[o](n))});return r.r?a:t()},e=>(e?f(m[s]=e):p(h),l(c),m[a]=!0)),c&&c.d<0&&(c.d=0)},d.d=(e,r)=>{for(var t in r)d.o(r,t)&&!d.o(e,t)&&Object.defineProperty(e,t,{enumerable:!0,get:r[t]})},d.o=(e,r)=>Object.prototype.hasOwnProperty.call(e,r);var p=d(13346),f=(p=await p).fl,v=p.le,h=p.TB;export{f as createCdpClient,v as scanDevToolsCore,h as verifyDevToolsServer};
|