lecodes-cli 2.0.2 → 2.0.4
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/index.js +1013 -127
- package/package.json +13 -12
- package/runtime/sdk-types.json +1 -1
- package/runtime/web/VERSION.json +3 -3
- package/runtime/web/assets/{inspect-C7x78PNs.js → inspect-DdJ50Kun.js} +2 -2
- package/runtime/web/player.js +18 -18
- package/runtime/web-lite/assets/canvas-C6G_Pb2Q.js +1 -0
- package/runtime/web-lite/assets/pager-O712dZv9.js +1 -0
- package/runtime/web-lite/assets/roboto-cyrillic-DVBNKCCH.woff2 +0 -0
- package/runtime/web-lite/assets/roboto-cyrillic-ext-1gPz9dK9.woff2 +0 -0
- package/runtime/web-lite/assets/roboto-greek-DVLYEgdx.woff2 +0 -0
- package/runtime/web-lite/assets/roboto-greek-ext-D98D44EL.woff2 +0 -0
- package/runtime/web-lite/assets/roboto-latin-cAJwcdBQ.woff2 +0 -0
- package/runtime/web-lite/assets/roboto-latin-ext-t610Sqxq.woff2 +0 -0
- package/runtime/web-lite/assets/roboto-rest-C7JkyNHT.woff2 +0 -0
- package/runtime/web-lite/assets/roboto-vietnamese-w-p-nKZZ.woff2 +0 -0
- package/runtime/web-lite/assets/tween-t_XDy3Nd.js +1 -0
- package/runtime/web-lite/assets/vlist-gEB8Sn0S.js +1 -0
- package/runtime/web-lite/features.json +51 -0
- package/runtime/web-lite/index.html +23 -0
- package/runtime/web-lite/lite.js +249 -0
- package/src/commands/design/comments.ts +1 -1
- package/src/commands/design/context.ts +1 -1
- package/src/commands/design/index.ts +1 -1
- package/src/commands/dev.ts +17 -53
- package/src/commands/index.ts +2 -0
- package/src/commands/test.ts +55 -6
- package/src/commands/update/index.ts +8 -5
- package/src/commands/web.ts +171 -0
- package/src/compile/fonts.ts +5 -2
- package/src/dev/devServer.ts +20 -1
- package/src/dev/watchProject.ts +53 -0
- package/src/dev/webRunner.ts +10 -0
- package/src/hosts/archives.ts +66 -0
- package/src/hosts/liteBrowser.mjs +86 -0
- package/src/hosts/liteRunner.ts +386 -0
- package/src/hosts/peerInstall.ts +12 -8
- package/src/web/build.ts +194 -0
- package/src/web/preview.ts +50 -0
package/runtime/web/VERSION.json
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
const h=new Map,
|
|
2
|
-
`):t.text??t.value;return n?n.length>200?n.slice(0,200)+"…":n:void 0},S=t=>({x:a(t.rect.x),y:a(t.rect.y),width:a(t.rect.width),height:a(t.rect.height)}),$=t=>({id:t.id,type:t.type,rect:S(t),...t.name?{name:t.name}:{},...x(t)?{text:x(t).slice(0,40)}:{},children:t.children.map($)}),D=t=>{const n=t.ui;if(!n)return null;const i=()=>n.frame().filter(e=>!e.leaving),f=e=>{const r=(l,u)=>{const s=[...u,l];if(l.id===e)return s;for(const b of l.children){const d=r(b,s);if(d)return d}return null};for(const l of i()){const u=r(l.tree,[]);if(u)return u}return null},c=(e,r)=>{const l=s=>e>=s.rect.x&&e<s.rect.x+s.rect.width&&r>=s.rect.y&&r<s.rect.y+s.rect.height,u=i();for(let s=u.length-1;s>=0;s--){let b=null;const d=y=>{const m=l(y);if(m&&(b=y),!(y.clip&&!m))for(const g of y.children)d(g)};if(d(u[s].tree),b)return b;if(u[s].backdrop)return u[s].tree}return null},o=e=>{const r=e==null?void 0:e[e.length-1];if(!e||!r)return null;const[l,u,s,b]=n.paddingOf(r.id).map(a),d=h.get(r.id),y=d?t.locate(d.site).find(p=>!p.source.includes("__sdk")):void 0,m=k(d==null?void 0:d.element.deref()),g=r.state?Object.entries(r.state).filter(([,p])=>p===!0).map(([p])=>p):[];return{id:r.id,type:r.type,rect:S(r),...r.name?{name:r.name}:{},...x(r)!==void 0?{text:x(r)}:{},padding:{top:u,right:s,bottom:b,left:l},...m?{set:m}:{},style:
|
|
1
|
+
const h=new Map,P=t=>{h.clear();const n=t.ui;globalThis.__lecodesCaptureSites=n?(i,f,c)=>{h.set(n.lastCreated,{site:f,element:new WeakRef(c)})}:void 0},j=(t,n=0)=>{var i;return typeof t=="function"?"ƒ":t===null||typeof t!="object"?t:Array.isArray(t)?n<3?t.map(f=>j(f,n+1)):"[…]":Object.getPrototypeOf(t)!==Object.prototype?`${((i=t.constructor)==null?void 0:i.name)??"object"}`:n>=3?"{…}":Object.fromEntries(Object.entries(t).filter(([,f])=>f!==void 0).map(([f,c])=>[f,j(c,n+1)]))},k=t=>{const n=t==null?void 0:t._style;if(!n||typeof n!="object")return;const i=j(n);return Object.keys(i).length>0?i:void 0},w=t=>"#"+(t>>>0).toString(16).padStart(8,"0"),a=t=>Math.round(t*100)/100,A={opacity:1,dim:0,overflow:"visible",scrollAxis:"y",letterSpacing:0,lineClamp:0,textDecoration:"none",fontStyle:"normal",textAlign:"start",textOverflow:"ellipsis",backgroundSize:"cover",objectFit:"cover",inputType:"text"},_=new Set(["color","fontSize","fontFamily","fontWeight","fontStyle","lineHeight","letterSpacing","textAlign","textDecoration","lineClamp","textOverflow"]),C=new Set(["placeholder","placeholderColor","inputType"]),F=t=>{const n=t;return n.x===50&&n.y===50&&n.xPercent&&n.yPercent},O=t=>Array.isArray(t)?t.map(n=>typeof n=="object"&&n!==null?O(n):String(n)).join(" "):typeof t=="object"&&t!==null?Object.entries(t).map(([n,i])=>`${n}: ${typeof i=="object"&&i!==null?O(i):String(i)}`).join(", "):String(t),T=(t,n)=>{const i={},f=t==="text"||t==="input"||t==="textarea";for(const[c,o]of Object.entries(n))if(!(o==null||o==="")&&A[c]!==o&&!(_.has(c)&&!f)&&!(C.has(c)&&t!=="input"&&t!=="textarea")&&!(c==="objectFit"&&t!=="image"&&t!=="video")&&!(c==="transformOrigin"&&F(o))&&!(typeof o=="number"&&/color$/i.test(c)&&(o&255)===0))if(typeof o=="number"&&/color$/i.test(c))i[c]=w(o);else if(c==="border"&&typeof o=="object"){const e=Object.entries(o).filter(([,r])=>r&&r.width>0).map(([r,l])=>[r,`${a(l.width)}px ${w(l.color)}`]);if(e.length===4&&e.every(([,r])=>r===e[0][1]))i.border=e[0][1];else for(const[r,l]of e)i[`border${r[0].toUpperCase()}${r.slice(1)}`]=l}else if(c==="borderRadius"&&typeof o=="object"){const e=o;(e.tl||e.tr||e.br||e.bl)&&(i[c]=e.tl===e.tr&&e.tr===e.br&&e.br===e.bl?e.tl:[e.tl,e.tr,e.br,e.bl].map(a).join(" "))}else if(c==="backgroundGradients")Array.isArray(o)&&o.length>0&&(i[c]=`${o.length} gradient${o.length>1?"s":""}`);else if(c==="transform"&&Array.isArray(o))i[c]=`matrix(${o.map(e=>a(Number(e))).join(", ")})`;else if(c==="transformOrigin"&&typeof o=="object"){const e=o;i[c]=`${a(e.x)}${e.xPercent?"%":"px"} ${a(e.y)}${e.yPercent?"%":"px"}`}else typeof o=="object"?i[c]=O(o):i[c]=o;return i},x=t=>{const n=t.lines?t.lines.join(`
|
|
2
|
+
`):t.text??t.value;return n?n.length>200?n.slice(0,200)+"…":n:void 0},S=t=>({x:a(t.rect.x),y:a(t.rect.y),width:a(t.rect.width),height:a(t.rect.height)}),$=t=>({id:t.id,type:t.type,rect:S(t),...t.name?{name:t.name}:{},...x(t)?{text:x(t).slice(0,40)}:{},children:t.children.map($)}),D=t=>{const n=t.ui;if(!n)return null;const i=()=>n.frame().filter(e=>!e.leaving),f=e=>{const r=(l,u)=>{const s=[...u,l];if(l.id===e)return s;for(const b of l.children){const d=r(b,s);if(d)return d}return null};for(const l of i()){const u=r(l.tree,[]);if(u)return u}return null},c=(e,r)=>{const l=s=>e>=s.rect.x&&e<s.rect.x+s.rect.width&&r>=s.rect.y&&r<s.rect.y+s.rect.height,u=i();for(let s=u.length-1;s>=0;s--){let b=null;const d=y=>{const m=l(y);if(m&&(b=y),!(y.clip&&!m))for(const g of y.children)d(g)};if(d(u[s].tree),b)return b;if(u[s].backdrop)return u[s].tree}return null},o=e=>{const r=e==null?void 0:e[e.length-1];if(!e||!r)return null;const[l,u,s,b]=n.paddingOf(r.id).map(a),d=h.get(r.id),y=d?t.locate(d.site).find(p=>!p.source.includes("__sdk")):void 0,m=k(d==null?void 0:d.element.deref()),g=r.state?Object.entries(r.state).filter(([,p])=>p===!0).map(([p])=>p):[];return{id:r.id,type:r.type,rect:S(r),...r.name?{name:r.name}:{},...x(r)!==void 0?{text:x(r)}:{},padding:{top:u,right:s,bottom:b,left:l},...m?{set:m}:{},style:T(r.type,r.style),...g.length>0?{state:g}:{},...r.scroll?{scroll:{axis:r.scroll.axis,offset:a(r.scroll.offset),content:a(r.scroll.content)}}:{},...y?{source:{file:y.source.replace(/^\//,""),line:y.line,column:y.column}}:{},path:e.map(p=>({id:p.id,type:p.type,...p.name?{name:p.name}:{}}))}};return{answer(e){switch(e.ask){case"tree":return{ask:"tree",layers:i().map(r=>({kind:r.widget?"widget":"screen",tree:$(r.tree)}))};case"text":return{ask:"text",text:n.toText()};case"at":{const r=c(e.x,e.y);return{ask:"at",node:r?o(f(r.id)):null}}case"node":return{ask:"node",node:o(f(e.node))}}}}};export{D as createInspector,P as recordSites};
|