@visulima/vis 6.1.0 → 6.1.2
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/CHANGELOG.md +49 -0
- package/dist/bin.js +1 -1
- package/dist/binx.js +1 -1
- package/dist/config/index.d.ts +1226 -1216
- package/dist/packem_chunks/bloom-sync.js +1 -1
- package/dist/packem_chunks/cargo-lock.js +5 -0
- package/dist/packem_chunks/cargo-plan.js +3 -3
- package/dist/packem_chunks/catalog-detector.js +1 -1
- package/dist/packem_chunks/catalog.js +1 -94
- package/dist/packem_chunks/catalog2.js +11 -0
- package/dist/packem_chunks/cli-exec.js +1 -1
- package/dist/packem_chunks/cli-main.js +156 -174
- package/dist/packem_chunks/context.js +8 -0
- package/dist/packem_chunks/fix.js +1 -1
- package/dist/packem_chunks/handler10.js +1 -1
- package/dist/packem_chunks/handler12.js +1 -1
- package/dist/packem_chunks/handler13.js +1 -1
- package/dist/packem_chunks/handler14.js +1 -1
- package/dist/packem_chunks/handler15.js +1 -1
- package/dist/packem_chunks/handler19.js +5 -5
- package/dist/packem_chunks/handler2.js +1 -1
- package/dist/packem_chunks/handler20.js +1 -1
- package/dist/packem_chunks/handler21.js +1 -1
- package/dist/packem_chunks/handler23.js +1 -1
- package/dist/packem_chunks/handler24.js +1 -1
- package/dist/packem_chunks/handler25.js +1 -1
- package/dist/packem_chunks/handler28.js +1 -1
- package/dist/packem_chunks/handler3.js +1 -1
- package/dist/packem_chunks/handler31.js +1 -1
- package/dist/packem_chunks/handler32.js +1 -1
- package/dist/packem_chunks/handler33.js +1 -1
- package/dist/packem_chunks/handler34.js +3 -3
- package/dist/packem_chunks/handler35.js +1 -1
- package/dist/packem_chunks/handler36.js +1 -1
- package/dist/packem_chunks/handler38.js +2 -2
- package/dist/packem_chunks/handler39.js +5 -5
- package/dist/packem_chunks/handler4.js +4 -4
- package/dist/packem_chunks/handler40.js +1 -1
- package/dist/packem_chunks/handler41.js +1 -1
- package/dist/packem_chunks/handler42.js +1 -1
- package/dist/packem_chunks/handler43.js +1 -1
- package/dist/packem_chunks/handler44.js +1 -1
- package/dist/packem_chunks/handler45.js +1 -1
- package/dist/packem_chunks/handler46.js +1 -1
- package/dist/packem_chunks/handler47.js +1 -1
- package/dist/packem_chunks/handler48.js +1 -1
- package/dist/packem_chunks/handler49.js +1 -1
- package/dist/packem_chunks/handler5.js +4 -4
- package/dist/packem_chunks/handler50.js +5 -5
- package/dist/packem_chunks/handler52.js +1 -1
- package/dist/packem_chunks/handler54.js +2 -2
- package/dist/packem_chunks/handler55.js +1 -1
- package/dist/packem_chunks/handler56.js +3 -3
- package/dist/packem_chunks/handler57.js +4 -4
- package/dist/packem_chunks/handler58.js +4 -4
- package/dist/packem_chunks/handler59.js +2 -2
- package/dist/packem_chunks/handler6.js +7 -7
- package/dist/packem_chunks/handler60.js +1 -1
- package/dist/packem_chunks/handler61.js +2 -2
- package/dist/packem_chunks/handler62.js +1 -1
- package/dist/packem_chunks/handler63.js +3 -3
- package/dist/packem_chunks/handler64.js +3 -3
- package/dist/packem_chunks/handler65.js +2 -2
- package/dist/packem_chunks/handler66.js +2 -2
- package/dist/packem_chunks/handler67.js +5 -5
- package/dist/packem_chunks/handler68.js +12 -25
- package/dist/packem_chunks/handler69.js +25 -22
- package/dist/packem_chunks/handler70.js +22 -10
- package/dist/packem_chunks/handler71.js +10 -133
- package/dist/packem_chunks/handler72.js +133 -23
- package/dist/packem_chunks/handler73.js +23 -323
- package/dist/packem_chunks/handler74.js +274 -659
- package/dist/packem_chunks/handler75.js +708 -48
- package/dist/packem_chunks/handler76.js +48 -27
- package/dist/packem_chunks/handler77.js +27 -3
- package/dist/packem_chunks/handler78.js +3 -191
- package/dist/packem_chunks/handler79.js +191 -0
- package/dist/packem_chunks/handler8.js +1 -1
- package/dist/packem_chunks/heal.js +2 -2
- package/dist/packem_chunks/help-command.js +1 -1
- package/dist/packem_chunks/index2.js +3 -58
- package/dist/packem_chunks/index3.js +40 -3
- package/dist/packem_chunks/index6.js +135 -7
- package/dist/packem_chunks/index7.js +7 -135
- package/dist/packem_chunks/keys-refresh.js +1 -1
- package/dist/packem_chunks/list.js +2 -2
- package/dist/packem_chunks/prune.js +1 -1
- package/dist/packem_chunks/python-plan.js +3 -3
- package/dist/packem_chunks/python-projects.js +1 -1
- package/dist/packem_chunks/python.js +1 -0
- package/dist/packem_chunks/run.js +1 -1
- package/dist/packem_chunks/snapshot.js +2 -2
- package/dist/packem_chunks/state.js +2 -2
- package/dist/packem_chunks/status.js +1 -1
- package/dist/packem_chunks/sync.js +1 -1
- package/dist/packem_chunks/verify-lockfile.js +1 -1
- package/dist/packem_chunks/version-resolver.js +1 -1
- package/dist/packem_chunks/workspace.js +2 -2
- package/dist/packem_shared/ReleaseClient-CWD9BC5w.js +1 -0
- package/dist/packem_shared/advisories-DO-P0V1_.js +1 -0
- package/dist/packem_shared/{affected-selection-DGb6Xu5K.js → affected-selection-CeeZo7Uy.js} +1 -1
- package/dist/packem_shared/{ai-analysis-pldoS_N4.js → ai-analysis-BCJ1kuDM.js} +3 -3
- package/dist/packem_shared/ai-cache-iSIyY3So.js +1 -0
- package/dist/packem_shared/{ai-fix-D9MxigBQ.js → ai-fix-DIMErSws.js} +6 -6
- package/dist/packem_shared/apply-DoeQAAGm.js +6 -0
- package/dist/packem_shared/apply-release-plan-BalHtK-g.js +15 -0
- package/dist/packem_shared/{bin-AZQv95jh.js → bin-BcLTer1k.js} +1 -1
- package/dist/packem_shared/clean-package-json-rutwkKl-.js +1 -0
- package/dist/packem_shared/createAdapter-DMK4bBET.js +1 -0
- package/dist/packem_shared/createVersionActions-DXo4z8VN.js +1 -0
- package/dist/packem_shared/dependency-scan-D_v3KM59.js +1 -0
- package/dist/packem_shared/{ecosystem-gate-DiqQj0LJ.js → ecosystem-gate-CwsTc7YW.js} +1 -1
- package/dist/packem_shared/env-BSXG3QKH.js +4 -0
- package/dist/packem_shared/failure-log-DIsKBKaI.js +2 -0
- package/dist/packem_shared/formatBytes-_HvjOy8a-iHCer6uX.js +1 -0
- package/dist/packem_shared/glob-Cyk1H9ZL-CL9optrn.js +1 -0
- package/dist/packem_shared/{index-JRb5wabN.js → index-9Ot7jTd4.js} +1 -1
- package/dist/packem_shared/index-BS6A9QR_.js +1 -0
- package/dist/packem_shared/lifecycle-CQjeMPY0.js +2 -0
- package/dist/packem_shared/missing-package-json-1BIoWQq0.js +1 -0
- package/dist/packem_shared/multi-eco-lockfiles-fgkpeHJv.js +1 -0
- package/dist/packem_shared/npmrc-CHsOyMvA.js +2 -0
- package/dist/packem_shared/osv-Do9PMOea.js +1 -0
- package/dist/packem_shared/{package-version-KLwH0Ivy.js → package-version-Bq6Cne_7.js} +1 -1
- package/dist/packem_shared/packument-CbTmbHU4.js +1 -0
- package/dist/packem_shared/{project-name-filter-B1ZCsbOW.js → project-name-filter-ZQaLgytG.js} +1 -1
- package/dist/packem_shared/{provenance-L1M2FPy_.js → provenance-SX1MxPUZ.js} +1 -1
- package/dist/packem_shared/publish-Dc0XGH3K.js +34 -0
- package/dist/packem_shared/registry-Dg9XI6RT.js +81 -0
- package/dist/packem_shared/registry-keys-z038Ecb4.js +1 -0
- package/dist/packem_shared/removeSync-g1D5kONg-LbjATA8v.js +1 -0
- package/dist/packem_shared/renderToString-DR0zDUjh-DXppT6AM.js +3 -0
- package/dist/packem_shared/{resolve-explicit-CQa37JSq.js → resolve-explicit-D9kdTNvl.js} +1 -1
- package/dist/packem_shared/{run-D-uVGHQ4.js → run-DLvd3RIZ.js} +1 -1
- package/dist/packem_shared/run-summary-utils-CMeURYtS.js +1 -0
- package/dist/packem_shared/s1ngularity-BuU9Cxpy.js +1 -0
- package/dist/packem_shared/{scaffold-files-DVyfB0yz.js → scaffold-files-DJlz36Mu.js} +1 -1
- package/dist/packem_shared/scan-progress-DymX71_5.js +2 -0
- package/dist/packem_shared/{signatures-DIqFUOfs.js → signatures-CeL0bOEo.js} +1 -1
- package/dist/packem_shared/spinner-CPoBymcv.js +1 -0
- package/dist/packem_shared/table-oA7p7-yP.js +1 -0
- package/dist/packem_shared/tabs-BiSifphV.js +1 -0
- package/dist/packem_shared/{task-env-DzR4RkOj.js → task-env-C2lmxvzA.js} +1 -1
- package/dist/packem_shared/typosquats-BFKus_aM.js +1 -0
- package/dist/packem_shared/use-measured-height-BHm-HiSF.js +1 -0
- package/dist/packem_shared/vis-update-app-6QOYxnNx.js +1 -0
- package/dist/packem_shared/{vis-user-error-CRmrBaD1.js → vis-user-error-3YS7sPYy.js} +1 -1
- package/dist/packem_shared/{watch-loop-D1_e-qIl.js → watch-loop-CGi66Fs0.js} +1 -1
- package/dist/packem_shared/xxh3-BLHlvhgT.js +1 -0
- package/dist/release/core/package-managers/index.js +1 -1
- package/dist/release/core/version-actions/index.js +1 -1
- package/dist/release/index.js +1 -1
- package/index.js +26 -26
- package/package.json +9 -9
- package/dist/packem_chunks/orchestrator.js +0 -46
- package/dist/packem_shared/ReleaseClient-DAvbxCdo.js +0 -1
- package/dist/packem_shared/createAdapter-F7GidOzU.js +0 -1
- package/dist/packem_shared/createVersionActions-ByaJ1Nbv.js +0 -1
- package/dist/packem_shared/dependency-scan-CawAKoU_.js +0 -1
- package/dist/packem_shared/failure-log-BP-gCUb5.js +0 -2
- package/dist/packem_shared/formatBytes-_HvjOy8a-B_qQr4Hw.js +0 -4
- package/dist/packem_shared/glob-Cyk1H9ZL-Dxlf9Swz.js +0 -1
- package/dist/packem_shared/index-CDHP1kby.js +0 -1
- package/dist/packem_shared/lifecycle-DvmDIRbb.js +0 -2
- package/dist/packem_shared/missing-package-json-Cu5YVAot.js +0 -1
- package/dist/packem_shared/multi-eco-lockfiles-B2X3yhyo.js +0 -1
- package/dist/packem_shared/packument-zb18Jnlw.js +0 -1
- package/dist/packem_shared/registry-keys-DxdqMzyp.js +0 -1
- package/dist/packem_shared/s1ngularity-CO5GkkqX.js +0 -1
- package/dist/packem_shared/scan-progress-RwCRxJdX.js +0 -2
- package/dist/packem_shared/spinner-BJjbNl1F.js +0 -1
- package/dist/packem_shared/tabs--uxJGL8N.js +0 -1
- package/dist/packem_shared/typosquats-D4DEHhFy.js +0 -1
- package/dist/packem_shared/use-measured-height-DUZyyias.js +0 -1
- package/dist/packem_shared/vis-update-app-9b2kSk9f.js +0 -1
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import{createRequire as je}from"node:module";import{z as E,e as g,$ as _e,m as V}from"../packem_shared/index-BzhrR_iC.js";import{L as De,q as oe,R as C,O as W,X as Re,e as X,p as P,g as ce,D as I,f as Oe,E as ie,F as J,h as le,i as R}from"../packem_shared/registry-Dg9XI6RT.js";import{L as pe,T as H}from"../packem_shared/target-merge-DVJl-7Qz.js";import{y as h}from"../packem_shared/isAccessibleSync-DYKTrrvc-C-_5cgwu.js";import{U as A,h as O}from"../packem_shared/writeFileSync-DJoHk3Ks-BPRoepNw.js";import{f as Le}from"../packem_shared/removeSync-g1D5kONg-LbjATA8v.js";import{p as b}from"../packem_shared/readJsonSync-CbryXYxN-EWl7_7KX.js";import{g as ue,T as fe,l as Wt}from"../packem_shared/npmrc-CHsOyMvA.js";import{p as ln}from"../packem_shared/npmrc-CHsOyMvA.js";import{O as ge}from"../packem_shared/renderToString-DR0zDUjh-DXppT6AM.js";import{q as Me}from"../packem_shared/table-oA7p7-yP.js";import{D as Ue,f as We}from"../packem_shared/env-BSXG3QKH.js";import{f as Ie}from"../packem_shared/osv-Do9PMOea.js";import{s as Be}from"../packem_shared/index-B4AjSxHU.js";import{a as Z}from"../packem_shared/advisories-DO-P0V1_.js";let Ce;const Ae=t=>(Ce??=je(import.meta.url))(t),j=typeof globalThis<"u"&&typeof globalThis.process<"u"?globalThis.process:process,xe=t=>{if(typeof j<"u"&&j.versions&&j.versions.node){const[e,n]=j.versions.node.split(".").map(Number);if(e>22||e===22&&n>=3||e===20&&n>=16)return j.getBuiltinModule(t)}return Ae(t)},{createInterface:Fe}=xe("node:readline"),G=["dependencies","devDependencies","optionalDependencies"],Ge=new Set([...G,"overrides","peerDependencies","pnpm.overrides","resolutions"]),x=t=>{const e=t.lastIndexOf(":");if(e===-1)return;const n=t.slice(e+1);if(Ge.has(n))return{depType:n,relativePath:t.slice(0,e)}},L=t=>{const e=pe("vis",{create:!0,cwd:t});if(!e)throw new Error("Cannot resolve cache directory. Ensure node_modules exists in your workspace. Run your package manager's install command first.");return g(e,"backup")},Y=(t,e)=>e==="bun"?g(t,"package.json"):g(t,"pnpm-workspace.yaml"),K=(t,e)=>{const n=L(t),s=new Set;for(const a of e){const r=x(a.catalogName);r&&s.add(r.relativePath==="."?"package.json":g(r.relativePath,"package.json"))}if(s.size!==0){O(n);for(const a of s){const r=g(t,a);if(h(r)){const o=g(n,a),c=V(o);O(c),A(o,E(r))}}return n}},q=(t,e)=>{const n=Y(t,e),s=L(t);return g(s,`${_e(n)}.bak`)},Ve=(t,e,n)=>{if((e==="npm"||e==="yarn")&&n)return K(t,n);let s;const a=Y(t,e);if(h(a)&&(s=q(t,e),O(V(s)),A(s,E(a))),n){const r=n.filter(o=>x(o.catalogName));r.length>0&&K(t,r)}return s},Xe=t=>{const e=L(t);if(!h(e))return!1;for(const n of De(e,{includeDirs:!1})){const s=n.path.slice(e.length+1),a=g(t,s);A(a,E(n.path))}return Le(e),!0},Jt=(t,e)=>{if(e==="npm"||e==="yarn")return Xe(t);const n=Y(t,e),s=q(t,e);if(!h(s))return!1;const a=E(s);return A(n,a),!0},Ht=(t,e)=>{if(e==="npm"||e==="yarn")try{const n=L(t);return h(n)}catch{return!1}try{return h(q(t,e))}catch{return!1}},de=t=>{if(h(t))try{return b(t)}catch{return}},Je=t=>{const e=de(g(t,"package.json"));return!!(e?.workspaces?.catalog||e?.workspaces?.catalogs)},He=t=>{const e=new Map;if(t.workspaces?.catalog&&typeof t.workspaces.catalog=="object"&&e.set("default",new Map(Object.entries(t.workspaces.catalog))),t.workspaces?.catalogs&&typeof t.workspaces.catalogs=="object")for(const[n,s]of Object.entries(t.workspaces.catalogs))s&&typeof s=="object"&&e.set(n,new Map(Object.entries(s)));return e},Ye=t=>{const e=de(g(t,"package.json"));return e?He(e):new Map},qe=(t,e,n)=>{const s=g(t,"package.json"),a=b(s);for(const r of e)if(r.catalogName==="default")a.workspaces?.catalog&&(a.workspaces.catalog[r.packageName]=r.newRange);else{const o=a.workspaces?.catalogs?.[r.catalogName];o&&(o[r.packageName]=r.newRange)}H(s,a,{indent:oe(s,{useEditorconfig:n}),overwrite:!0})},ze=/\*+/g,Qe=/[.+^${}()|[\]\\]/g,ee=new Map,N=(t,e)=>{let n=ee.get(e);if(!n){const a=e.replaceAll(ze,"*").replaceAll(Qe,String.raw`\$&`);n=new RegExp(`^${a.replaceAll("*",".*").replaceAll("?",".")}$`),ee.set(e,n)}return n.test(t)},me=(t,e,n)=>n.some(s=>N(t,s))?!1:e.length>0?e.some(s=>N(t,s)):!0,te=new Map,he=(t,e,n)=>{if(!n)return e;const s=n[t];if(s!==void 0)return s;for(const[a,r]of Object.entries(n))if(a!==t){if(a.startsWith("/")&&a.endsWith("/")){let o=te.get(a);if(o||(o=new RegExp(a.slice(1,-1)),te.set(a,o)),o.test(t))return r}else if(N(t,a))return r}return e},Ze=/^(?:'([^']+)'|"([^"]+)"|([^:\s]+)):\s*(?:'([^']+)'|"([^"]+)"|(\S+))/,Ke=/^catalog:/m,et=/^catalogs:/m,ke=/^['"]|['"]$/g,we=t=>{const e=Ze.exec(t);if(!e)return;const n=e[1]??e[2]??e[3],s=e[4]??e[5]??e[6];if(!(!n||!s))return[n,s]},ye=(t,e,n,s)=>{t.has(e)||t.set(e,new Map);const a=t.get(e);a&&a.set(n,s)},tt=(t,e,n)=>{if(n<2)return;const s=we(e);s&&ye(t,"default",s[0],s[1])},nt=(t,e,n,s)=>{if(n===2&&e.endsWith(":"))return e.slice(0,-1).trim().replaceAll(ke,"");if(n>=4&&s){const a=we(e);a&&ye(t,s,a[0],a[1])}return s},$e=t=>t==="catalog:"||t.startsWith("catalog:")?"catalog":t==="catalogs:"||t.startsWith("catalogs:")?"catalogs":"none",st=t=>{const e=new Map;let n="none",s="";for(const a of t.split(`
|
|
2
|
+
`)){const r=a.trimStart(),o=a.length-r.length;if(o===0&&r.length>0&&!r.startsWith("#")){n=$e(r),n==="catalogs"&&(s="");continue}r.length===0||r.startsWith("#")||(n==="catalog"&&tt(e,r,o),n==="catalogs"&&(s=nt(e,r,o,s)))}return e},at=t=>{const e=g(t,"pnpm-workspace.yaml");if(!h(e))return!1;const n=E(e);return Ke.test(n)||et.test(n)},rt=t=>{const e=g(t,"pnpm-workspace.yaml");if(!h(e))return new Map;const n=E(e);return st(n)},ne=/[.*+?^${}()|[\]\\]/g,ot=(t,e)=>{const n=t.replaceAll(ne,String.raw`\$&`),s=e.replaceAll(ne,String.raw`\$&`);return new RegExp(String.raw`^(?:'${n}'|"${n}"|${n}):\s*['"]?${s}['"]?`)},ct=(t,e,n)=>ot(e,n).test(t),it=t=>{const e=new Map;for(const n of t){e.has(n.catalogName)||e.set(n.catalogName,new Map);const s=e.get(n.catalogName);s&&s.set(n.packageName,{newRange:n.newRange,oldRange:n.currentRange})}return e},se=(t,e,n)=>{if(!n)return t;for(const[s,{newRange:a,oldRange:r}]of n)if(ct(e,s,r))return t.replace(r,a);return t},lt=(t,e,n,s)=>{const a=t.trimStart(),r=t.length-a.length;return a.length===0||a.startsWith("#")?t:e==="catalog"&&r>=2?se(t,a,s.get("default")):e==="catalogs"&&r>=4&&n?se(t,a,s.get(n)):t},pt=(t,e)=>{const n=g(t,"pnpm-workspace.yaml"),a=E(n).split(`
|
|
3
|
+
`),r=it(e);let o="none",c="";const i=[];for(const l of a){const p=l.trimStart(),u=l.length-p.length;u===0&&p.length>0&&!p.startsWith("#")&&(o=$e(p),o==="catalogs"&&(c="")),o==="catalogs"&&u===2&&p.endsWith(":")&&(c=p.slice(0,-1).trim().replaceAll(ke,"")),i.push(lt(l,o,c,r))}A(n,i.join(`
|
|
4
|
+
`))},ut=/github\.com[/:]([\w.-]+)\/([\w.-]+?)(?:\.git|\/|$)/,Yt=async(t,e=1e4,n)=>{const s=[],a=new AbortController,r=setTimeout(()=>{a.abort()},e),o=async p=>{const u=`https://www.npmjs.com/package/${p.packageName}`;try{const f=n?ue(p.packageName,n):{url:"https://registry.npmjs.org"},w=f.url.replace(fe,""),y={Accept:"application/json"};f.token&&(y.Authorization=`Bearer ${f.token}`);const m=await fetch(`${w}/${p.packageName}/latest`,{headers:y,signal:a.signal});if(!m.ok)return{npmUrl:u,packageName:p.packageName};const $=(await m.json()).repository?.url;if(!$)return{npmUrl:u,packageName:p.packageName};const d=ut.exec($);if(!d)return{npmUrl:u,packageName:p.packageName,repoUrl:$};const v=d[1],T=d[2],k=`https://github.com/${v}/${T}/releases/tag/v${p.targetVersion}`;return{npmUrl:u,packageName:p.packageName,releaseUrl:k,repoUrl:`https://github.com/${v}/${T}`}}catch{return{npmUrl:u,packageName:p.packageName}}},c=Math.min(8,t.length);let i=0;const l=async()=>{for(;i<t.length;){const p=i;i+=1,s[p]=await o(t[p])}};try{await Promise.all(Array.from({length:c},()=>l()))}finally{clearTimeout(r)}return s},qt=t=>JSON.stringify(t,void 0,2),zt=t=>t.map(e=>`${e.packageName} ${e.currentRange} → ${e.newRange}`).join(`
|
|
5
|
+
`),ft=t=>{const e=new Map;for(const n of t){e.has(n.catalogName)||e.set(n.catalogName,[]);const s=e.get(n.catalogName);s&&s.push(n)}return e},gt=t=>{const e=x(t);return e?`${e.relativePath==="."?"root":e.relativePath} (${e.depType})`:`Catalog: ${t}`},Qt=(t,e)=>{const n=ft(t),s=process.stdout.columns||80,a=t.some(r=>r.socketReport);for(const[r,o]of n){const c=o.flatMap(p=>{const u=p.vulnerabilities&&p.vulnerabilities.length>0,f=p.socketReport&&p.socketReport.alerts.length>0,y=`${u||f?"[SEC] ":""}${p.packageName}`,m=p.socketReport?`${String(Math.round(p.socketReport.score.overall*100))}%`:"",S={current:p.currentRange,package:y,target:p.newRange,type:p.updateType};a&&(S.score=m);const $=[S];if(p.vulnerabilities)for(const d of p.vulnerabilities){const v={current:d.summary,package:` ${d.severity} ${d.id}`,target:"",type:""};a&&(v.score=""),$.push(v)}if(p.socketReport)for(const d of p.socketReport.alerts){const v={current:d.category,package:` [${d.severity.toUpperCase()}] ${d.type}`,target:"",type:""};a&&(v.score=""),$.push(v)}return $}),i=gt(r),l=ge(C.createElement(Me,{data:c}),{columns:s});e.info(`${i}
|
|
6
|
+
${l}
|
|
7
|
+
`)}},Zt=(t,e=Ue)=>{let n=0,s=0,a=0,r=0,o=0,c=0;for(const f of t)f.updateType==="major"?n++:f.updateType==="minor"?s++:a++,f.vulnerabilities&&f.vulnerabilities.length>0&&r++,f.socketReport?.alerts.length&&o++,f.socketReport&&f.socketReport.score.overall<e&&c++;const i=[];n&&i.push(`${String(n)} major`),s&&i.push(`${String(s)} minor`),a&&i.push(`${String(a)} patch`),r&&i.push(`${String(r)} with vulnerabilities`),o&&i.push(`${String(o)} with Socket.dev alerts`);const l=`Found ${String(t.length)} outdated (${i.join(", ")})`,p=process.stdout.columns||80,u=[C.createElement(W,{bold:!0},"─ Summary"),C.createElement(W,null,` ${l}`)];return c>0&&u.push(C.createElement(W,{color:"yellow"},` ${String(c)} package${c===1?"":"s"} with low Socket.dev score (<${String(Math.round(e*100))}%)`)),ge(C.createElement(Re,{flexDirection:"column",paddingX:1},...u),{columns:p})},ve=15e3,dt=async(t,e,n=ve,s=!1)=>{const r=`${(e?.url??"https://registry.npmjs.org").replace(fe,"")}/${t}`,o=s?{Accept:"application/json"}:{Accept:"application/vnd.npm.install-v1+json"};e?.authToken&&(o.Authorization=`Bearer ${e.authToken}`);const c=new AbortController,i=setTimeout(()=>{c.abort()},n);try{const l=await fetch(r,{headers:o,signal:c.signal});if(!l.ok)throw new Error(`Failed to fetch ${t}: ${String(l.status)} ${l.statusText}`);const p=await l.json(),u={latest:p["dist-tags"]?.latest??"",versions:Object.keys(p.versions??{})};return s&&p.time&&(u.publishTimes=new Map(Object.entries(p.time))),u}finally{clearTimeout(i)}},mt=async(t,e,n,s=!1,a)=>{const r=new Map,o=[],c=Math.max(1,Math.min(64,Math.floor(a??8)||8));let i=0,l=0;const p=async w=>{try{const y=e?ue(w,e):void 0,m=await dt(w,y?{authToken:y.token,url:y.url}:void 0,ve,s);r.set(w,m)}catch{o.push(w)}finally{i+=1,n&&n(i,t.length)}},u=async()=>{for(;l<t.length;){const w=t[l];l+=1,await p(w)}},f=Math.min(c,t.length);return await Promise.all(Array.from({length:f},()=>u())),{failed:o,versionCache:r}},Se=(t,e,n)=>{const s=e?.get(t);return s?Date.now()-new Date(s).getTime()<n:!1},ht=t=>t?.minimumReleaseAge?t.packageName&&t.minimumReleaseAgeExclude?.some(n=>N(t.packageName,n))?0:t.minimumReleaseAge*60*1e3:0,be=(t,e)=>e??(t?"any":"stable"),B=(t,e,n,s,a,r,o)=>{const c=be(n,o);return t.map(l=>({parsed:P(l),raw:l})).filter(l=>!l.parsed||!ie(l.parsed,e,c)||!J(e,l.parsed)||s&&Se(l.raw,a,s)?!1:r?r(l.parsed):!0).toSorted((l,p)=>Be.rcompare(l.raw,p.raw))[0]?.raw},kt=(t,e,n,s,a,r,o)=>{const c=P(n);if(!c)return;const i=ht(r),l=be(a,o);if(s==="latest"){const u=P(e);return u?ie(u,c,l)?J(c,u)?!i||!Se(e,r?.publishTimes,i)?e:B(t,c,a,i,r?.publishTimes,void 0,l):void 0:B(t,c,a,i,r?.publishTimes,void 0,l):void 0}const p=s==="patch"?u=>u.major===c.major&&u.minor===c.minor:u=>u.major===c.major;return B(t,c,a,i,r?.publishTimes,p,l)},wt=(t,e)=>{const n=[],s=new Set;for(const[a,r]of t)for(const[o,c]of r)if(!(c.startsWith("workspace:")||c.startsWith("file:")||c.startsWith("link:")||c==="*")&&!(!e.includeLocked&&!X(c))){if(e.ignore.some(i=>N(o,i))){s.add(o);continue}me(o,e.include,e.exclude)&&n.push({catalogName:a,packageName:o,range:c})}return{entries:n,ignored:[...s]}},ae=(t,e,n)=>{const s=[];for(const a of t){const r=e.get(a.packageName);if(!r)continue;const o=he(a.packageName,n.target,n.packageMode),c=kt(r.versions,r.latest,a.range,o,n.includePrerelease,{minimumReleaseAge:n.minimumReleaseAge,minimumReleaseAgeExclude:n.minimumReleaseAgeExclude,packageName:a.packageName,publishTimes:r.publishTimes},n.releaseChannel);if(!c)continue;const i=P(a.range),l=P(c);if(!i||!l)continue;const p=ce(i,l);if(p==="none")continue;const u=X(a.range);s.push({catalogName:a.catalogName,currentRange:a.range,newRange:`${u}${c}`,packageName:a.packageName,targetVersion:c,updateType:p})}return s},yt=async(t,e,n,s)=>{const a=[...new Map(e.map(i=>{const l=I(P(i.range));return[Z(i.packageName,l),{name:i.packageName,version:l}]})).values()].filter(i=>i.version),r=n&&n.length>0?Oe(n,a):void 0,[o,c]=await Promise.all([Ie(a),r]);for(const i of t){const l=o.get(Z(i.packageName,I(P(i.currentRange))));l&&l.length>0&&(i.vulnerabilities=l);const p=P(i.currentRange),u=I(p);if(c){const f=c.get(`${i.packageName}@${u}`);f&&(i.socketReport={alerts:f.alerts,license:f.license,score:f.score})}if(s){const f=We(i.packageName,u,s);f&&(i.acceptedRisk=f)}}},$t=6e4,vt=(t,e,n,s)=>{const a=[];for(const[c,i]of t)for(const[l,p]of i)a.push(`${c}:${l}=${p}`);if(a.push(`target=${e.target},pre=${String(e.includePrerelease)},chan=${e.releaseChannel??"_"},sec=${String(e.security??!1)}`),a.push(`in=${e.include.join(",")},ex=${e.exclude.join(",")},ig=${e.ignore.join(",")}`),a.push(`locked=${String(e.includeLocked)}`),a.push(`mra=${String(e.minimumReleaseAge??0)}`),e.packageMode){const c=Object.entries(e.packageMode).map(([i,l])=>`${i}=${l}`).toSorted().join(",");a.push(`pkgMode=${c}`)}a.push(`socket=${String(n??!1)}`),s&&s.length>0&&a.push(`risks=${s.toSorted().join(",")}`);let r=5381;const o=a.join("|");for(let c=0;c<o.length;c++)r=(r<<5)+r+o.charCodeAt(c)|0;return String(r)},Te=t=>{const e=pe("vis",{create:!0,cwd:t});return e?g(e,"outdated-cache.json"):void 0},St=(t,e)=>{const n=Te(t);if(!(!n||!h(n)))try{const s=b(n);if(s.hash===e&&Date.now()-s.timestamp<$t)return s.result}catch{}},bt=(t,e,n)=>{const s=Te(t);if(s)try{O(V(s)),H(s,{hash:e,result:n,timestamp:Date.now()})}catch{}},Kt=async(t,e,n,s,a,r,o)=>{const c=!!(r&&r.length>0),i=vt(t,e,c,o?Object.keys(o):void 0);if(a){const d=St(a,i);if(d)return d}const{entries:l,ignored:p}=wt(t,e),u=[...new Set(l.map(d=>d.packageName))],f=!!(e.minimumReleaseAge&&e.minimumReleaseAge>0),{failed:w,versionCache:y}=await mt(u,n,s,f,e.maxConcurrentRequests),m=ae(l,y,e);let S=[];if(e.target!=="latest"){const d=new Set(m.map(k=>k.packageName)),v={...e,packageMode:void 0,target:"latest"};S=ae(l,y,v).filter(k=>!d.has(k.packageName))}(e.security||c)&&m.length>0&&await yt(m,l,r,o);const $={checkedCount:u.length,failed:w,filteredByTarget:S,ignored:p,outdated:m};return a&&bt(a,i,$),$},en=async t=>{const e=Fe({input:process.stdin,output:process.stdout}),n=a=>new Promise(r=>{e.question(a,o=>{r(o.trim())})});process.stdout.write(`
|
|
8
|
+
Outdated catalog dependencies:
|
|
9
|
+
`);for(const[a,r]of t.entries())r&&process.stdout.write(` ${String(a+1)}. ${r.packageName}: ${r.currentRange} → ${r.newRange} (${r.updateType})
|
|
10
|
+
`);process.stdout.write(`
|
|
11
|
+
`);const s=await n("Apply updates? [a]ll / [n]one / [s]elect: ");if(s.toLowerCase()==="a"||s.toLowerCase()==="all")return e.close(),t;if(s.toLowerCase()==="n"||s.toLowerCase()==="none")return e.close(),[];if(s.toLowerCase()==="s"||s.toLowerCase()==="select"){const a=await n("Enter numbers to apply (comma-separated): ");return e.close(),a.split(",").map(o=>Number.parseInt(o.trim(),10)-1).filter(o=>o>=0&&o<t.length).map(o=>t[o]).filter(o=>o!==void 0)}return e.close(),[]},Pe=t=>t?.dev?["devDependencies"]:t?.prod?["dependencies"]:t?.depFields&&t.depFields.length>0?t.depFields:t?.peer?[...G,"peerDependencies"]:G,Tt=(t,e,n)=>{const s=new Set;e&&s.add(e);for(const a of n){const r=g(t,a,"package.json");if(h(r))try{const o=b(r);o.name&&s.add(o.name)}catch{}}return s},z=(t,e)=>{const n=e.split(".");let s=t;for(const a of n)if(s&&typeof s=="object")s=s[a];else return;return typeof s=="object"&&s!==null?s:void 0},Pt=(t,e,n,s)=>{const a=e.split(".");let r=t;for(const c of a.slice(0,-1))(!r[c]||typeof r[c]!="object")&&(r[c]={}),r=r[c];const o=a.at(-1);(!r[o]||typeof r[o]!="object")&&(r[o]={}),r[o][n]=s},Et=(t,e)=>{const n=new Map;for(const[s,a]of Object.entries(t))e.has(s)||a.startsWith("workspace:")||a.startsWith("file:")||a.startsWith("link:")||a.startsWith("catalog:")||a.startsWith("$")||n.set(s,a);return n},Nt=(t,e,n,s,a,r)=>{const o=e==="."?n:g(t,e,"package.json");if(!h(o))return;let c;try{c=b(o)}catch{return}for(const i of s){const l=i.includes(".")?z(c,i):c[i];if(!l||typeof l!="object")continue;const p=Et(l,a);p.size>0&&r.set(`${e}:${i}`,p)}},jt=(t,e)=>{const n=new Map,s=g(t,"package.json");if(!h(s))return n;const a=b(s);let r=[];const o=le(t);if(o)r=R(t,o);else{const p=a.workspaces;if(p){const u=Array.isArray(p)?p:p.packages;u&&(r=R(t,u))}}const c=e?.includeInternal?new Set:Tt(t,a.name,r),i=Pe(e),l=[".",...r];for(const p of l)Nt(t,p,s,i,c,n);return n},F=t=>{const e=g(t,"package.json");if(!h(e))return!1;try{const n=b(e);return!!(n.dependencies||n.devDependencies||n.peerDependencies||n.optionalDependencies||n.overrides||n.resolutions||z(n,"pnpm.overrides"))}catch{return!1}},re=(t,e,n)=>{const s=new Map;for(const a of e){const r=x(a.catalogName);if(!r)continue;const o=r.relativePath==="."?g(t,"package.json"):g(t,r.relativePath,"package.json");s.has(o)||s.set(o,[]);const c=s.get(o);c&&c.push({depType:r.depType,newRange:a.newRange,packageName:a.packageName})}for(const[a,r]of s){const o=b(a);for(const{depType:c,newRange:i,packageName:l}of r)c.includes(".")?Pt(o,c,l,i):o[c]&&(o[c][l]=i);H(a,o,{indent:oe(a,{useEditorconfig:n}),overwrite:!0})}},tn=(t,e)=>e==="bun"?Je(t)||F(t):e==="npm"||e==="yarn"?F(t):at(t)||F(t),nn=(t,e,n)=>{let s;e==="bun"?s=Ye(t):e==="npm"||e==="yarn"?s=new Map:s=rt(t);const a=jt(t,n);for(const[r,o]of a)s.has(r)||s.set(r,o);return s},Ct=(t,e)=>{const n=new Map;for(const s of e){const a=g(t,s,"package.json");if(h(a))try{const r=b(a);r.name&&r.version&&n.set(r.name,r.version)}catch{}}return n},sn=(t,e)=>{const n=g(t,"package.json");if(!h(n))return{ignored:[],outdated:[]};const s=b(n);let a=[];const r=le(t);if(r)a=R(t,r);else{const m=s.workspaces;if(m){const S=Array.isArray(m)?m:m.packages;S&&(a=R(t,S))}}const o=Ct(t,a);if(o.size===0)return{ignored:[],outdated:[]};const c=Pe(e),i=[".",...a],l=e?.include??[],p=e?.exclude??[],u=e?.ignore??[],f=e?.target??"latest",w=new Set,y=[];for(const m of i){const S=m==="."?n:g(t,m,"package.json");if(!h(S))continue;let $;try{$=b(S)}catch{continue}for(const d of c){const v=d.includes(".")?z($,d):$[d];if(!(!v||typeof v!="object"))for(const[T,k]of Object.entries(v)){const _=o.get(T);if(!_||k.startsWith("workspace:")||k.startsWith("file:")||k.startsWith("link:")||k.startsWith("catalog:")||k.startsWith("$")||k==="*")continue;if(u.some(Ne=>N(T,Ne))){w.add(T);continue}if(!me(T,l,p))continue;const M=P(k),U=P(_);if(!M||!U||!J(M,U))continue;const D=ce(M,U);if(D==="none")continue;const Q=he(T,f,e?.packageMode);if(Q==="patch"&&D!=="patch"||Q==="minor"&&D==="major")continue;const Ee=X(k);y.push({catalogName:`${m}:${d}`,currentRange:k,newRange:`${Ee}${_}`,packageName:T,targetVersion:_,updateType:D})}}}return{ignored:[...w],outdated:y}},an=t=>t?Array.isArray(t)?t:[t]:[],rn=(t,e,n,s=!0,a={})=>{const{useEditorconfig:r}=a;let o;s&&(o=Ve(t,n,e));const c=[],i=[];for(const l of e)x(l.catalogName)?i.push(l):c.push(l);return c.length>0&&(n==="npm"||n==="yarn"?re(t,c,r):n==="bun"?qe(t,c,r):pt(t,c)),i.length>0&&re(t,i,r),o};export{rn as applyCatalogUpdates,re as applyPackageJsonUpdates,Kt as checkOutdated,sn as collectInternalOutdated,Ve as createBackup,X as extractPrefix,Yt as fetchChangelogInfo,dt as fetchPackageVersions,Ie as fetchVulnerabilities,kt as findTargetVersion,qt as formatOutdatedJson,zt as formatOutdatedMinimal,Qt as formatOutdatedTable,Zt as formatSummary,ue as getRegistryForPackage,ce as getUpdateType,ft as groupByCatalog,Ht as hasBackup,tn as hasCatalogs,F as hasPackageJsonDeps,J as isNewer,Wt as loadNpmrc,me as matchesFilters,N as matchesPattern,He as parseBunCatalogs,st as parseCatalogsFromYaml,x as parseCompositeCatalogName,ln as parseNpmrc,P as parseVersion,en as promptPackageSelection,nn as readCatalogs,jt as readPackageJsonDeps,he as resolvePackageTarget,Jt as restoreFromBackup,an as toFilterArray};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a as r,x as o,d as i,r as n,i as s}from"../packem_shared/vis-user-error-
|
|
1
|
+
import{a as r,x as o,d as i,r as n,i as s}from"../packem_shared/vis-user-error-3YS7sPYy.js";import{e as t}from"../packem_shared/index-9Ot7jTd4.js";import{g as d}from"../packem_shared/package-version-Bq6Cne_7.js";const g=async()=>{const e=r("vis",{packageName:"vis",packageVersion:d()}),a=process.argv.includes("--debug")||!!process.env.DEBUG;e.addPlugin(o({concise:s,detailed:a,exitOnError:!1})),e.addGlobalOption({description:"Target JS runtime: node (default) or bun. Overrides VIS_RUNTIME; falls back to lockfile detection.",name:"runtime",type:String}),e.addCommand(t),e.addCommand(i),await n(e)};export{g as runExecCli};
|