@preventive/triage 1.0.0-alpha.50 → 1.0.0-alpha.51
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/common/managed/finding-detail.d.ts +2 -1
- package/common/managed/finding-detail.js +43 -9
- package/common/managed/npm-packages.d.ts +2 -0
- package/common/managed/npm-packages.js +18 -1
- package/common/managed/routes.js +19 -7
- package/common/managed/team-app.d.ts +1 -0
- package/common/managed/team-app.js +17 -1
- package/out/activity.js +4 -4
- package/out/{chunk-75YLHBCM.js → chunk-2K6UN3PC.js} +1 -1
- package/out/{chunk-2WDZPXVL.js → chunk-7JBSSRD7.js} +1 -1
- package/out/{chunk-4XMP7YVH.js → chunk-FMXWXDR4.js} +1 -1
- package/out/chunk-HT2SSA3V.js +1 -0
- package/out/chunk-IPAH4LKF.js +232 -0
- package/out/{chunk-FKBXNUW4.js → chunk-KOGNQDSJ.js} +1 -1
- package/out/{chunk-UK7RGJT6.js → chunk-VDRXHIHN.js} +2 -2
- package/out/{chunk-HTBYHSPG.js → chunk-WRAJVD35.js} +1 -1
- package/out/client-managed-import.js +1 -1
- package/out/client-managed.js +25 -25
- package/out/compare.js +14 -14
- package/out/dialogs.js +41 -41
- package/out/graph.js +1 -1
- package/out/index.html +6 -6
- package/out/scan.js +2 -2
- package/out/view.css +1 -1
- package/out/view.js +7 -7
- package/package.json +3 -1
- package/server-managed/agent-merges.ts +1 -1
- package/server-managed/app-agents.ts +4 -2
- package/server-managed/commit-lockfiles.ts +7 -4
- package/server-managed/comparison.ts +13 -2
- package/server-managed/db-neon.ts +13 -3
- package/server-managed/db.ts +2 -1
- package/server-managed/dependency-review-comments.ts +16 -18
- package/server-managed/dependency-reviews.ts +45 -27
- package/server-managed/github-app.ts +3 -42
- package/server-managed/github-requests.ts +97 -0
- package/server-managed/http.ts +249 -75
- package/server-managed/listed-activity.ts +39 -0
- package/server-managed/locked-packages.ts +28 -5
- package/server-managed/npm-kept.ts +14 -4
- package/server-managed/npm-patch.ts +325 -0
- package/server-managed/pull-dependencies.ts +9 -6
- package/server-managed/pull-dependency-reviews.ts +19 -13
- package/server-managed/repository-agents.ts +162 -69
- package/server-managed/repository-dependency-reviews.ts +6 -5
- package/server-managed/repository-pulls.ts +114 -58
- package/server-managed/repository-pulse.ts +1 -1
- package/server-managed/reviewed-dependencies.ts +4 -5
- package/server-managed/team-reports.ts +19 -7
- package/out/chunk-6S2U2UYG.js +0 -232
- package/out/chunk-FC65TPUB.js +0 -1
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import{Jb as e,Kb as t,Lb as n,Nb as r,Ob as i,Pb as a,Ub as o,jc as s,pc as c,w as l}from"./chunk-
|
|
1
|
+
import{Jb as e,Kb as t,Lb as n,Nb as r,Ob as i,Pb as a,Ub as o,jc as s,pc as c,w as l}from"./chunk-IPAH4LKF.js";import{h as u,i as d}from"./chunk-FMXWXDR4.js";import{e as f,f as p,g as m,j as h}from"./chunk-SXV2T5C4.js";import{c as g}from"./chunk-2XUEZHIP.js";var _=`.token.comment,.token.prolog,.token.cdata{color:var(--code-comment);font-style:italic}.token.punctuation{color:var(--muted)}.token.string,.token.attr-value,.token.char,.token.regex{color:var(--code-string)}.token.number,.token.boolean,.token.constant,.token.symbol{color:var(--code-number)}.token.keyword,.token.builtin,.token.important,.token.atrule{color:var(--code-keyword)}.token.function,.token.class-name,.token.tag{color:var(--code-function)}.token.operator,.token.entity,.token.url,.token.attr-name,.token.selector{color:var(--code-operator)}.token.variable,.token.property,.token.parameter{color:var(--code-variable)}.token.annotation{color:var(--code-function)}.token.deleted{color:var(--code-deleted)}.token.inserted{color:var(--code-inserted)}.token.italic{font-style:italic}.token.bold{font-weight:700}.code-control{padding:0 .3em;margin:0 .1em;border-radius:3px;font-size:.8em;line-height:0;font-style:normal;font-weight:400;color:var(--warning);background:rgb(from var(--warning) r g b / .14);box-shadow:inset 0 0 0 1px rgb(from var(--warning) r g b / .45);white-space:nowrap;user-select:none}
|
|
2
2
|
`,v=g`<svg viewBox="0 0 24 24" width="14" height="14" fill="none" stroke="currentColor" stroke-width="2" aria-hidden="true"><path d="M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4"/><polyline points="7 10 12 15 17 10"/><line x1="12" x2="12" y1="15" y2="3"/></svg>`,y=g`<svg viewBox="0 0 24 24" width="14" height="14" fill="none" stroke="currentColor" stroke-width="1.6" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><rect x="1.8" y="5" width="20.4" height="14" rx="2"/><path d="M5.6 15.6V8.4l3.1 3.6 3.1-3.6v7.2"/><path d="M16.9 8.4v7.2m-2.6-2.9 2.6 2.9 2.6-2.9"/></svg>`,b=g`<svg viewBox="0 0 24 24" width="14" height="14" fill="none" stroke="currentColor" stroke-width="2" aria-hidden="true"><path d="M6 9V2h12v7"/><path d="M6 18H4a2 2 0 0 1-2-2v-5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2v5a2 2 0 0 1-2 2h-2"/><rect x="6" y="14" width="12" height="8"/></svg>`;function x(e,t){let n=u.find(t=>t.value===e)?.label??e;return d(e)?.includes(`partial`)?t===`exclude`?`${n} (full only)`:t===`only`?`${n} (partial only)`:n:n}function S(e){return h.filter(t=>e.has(t)).map(e=>f[e]??e).join(`, `)}function C(r=l){let i=[];if(r.filterSeverities.size>0&&i.push({key:`severity`,label:`Severity`,value:S(r.filterSeverities),clear:{filterSeverities:new Set}}),r.filterColors.size>0&&i.push({key:`marks`,label:`Marks`,value:[...r.filterColors].map(e=>m[e]??e).join(`, `),clear:{filterColors:new Set}}),r.filterSources.size===1&&i.push({key:`source`,label:`Source`,value:r.filterSources.has(`own`)?`Sources only`:`Dependencies only`,clear:{filterSources:new Set}}),r.filterAnalyzer&&i.push({key:`analyzer`,label:`Analyzer`,value:r.filterAnalyzer===e?`(none)`:r.filterAnalyzer,clear:{filterAnalyzer:``}}),r.filterModel&&i.push({key:`model`,label:`Model`,value:r.filterModel===n?`(none)`:r.filterModel,clear:{filterModel:``}}),r.filterRepo&&i.push({key:`repo`,label:`Repository`,value:r.filterRepo===t?`(no repo)`:r.filterRepo,clear:{filterRepo:``}}),d(r.filterRevalidate)&&i.push({key:`revalidate`,label:`Revalidation`,value:x(r.filterRevalidate,r.filterPartial),clear:{filterRevalidate:``,filterPartial:``}}),!r.filterRevalidate&&(r.filterConfMin>0||r.filterConfMax<10)){let e;e=r.filterConfMin>0&&r.filterConfMax<10?`${r.filterConfMin}\u2013${r.filterConfMax}`:r.filterConfMin>0?`\u2265 ${r.filterConfMin}`:`\u2264 ${r.filterConfMax}`,i.push({key:`confidence`,label:`Confidence`,value:e,clear:{filterConfMin:0,filterConfMax:10}})}r.filterInclude&&i.push({key:`search`,label:r.filterIncludeNegate?`Excluding`:`Search`,value:`"${r.filterInclude}"`,clear:{filterInclude:``,filterIncludeNegate:!1}});for(let[e,t]of[[`filterComment`,`comment`],[`filterFix`,`fix`],[`filterFlagged`,`flag`]]){let n=r[e];n&&i.push({key:`annotation:${t}`,label:`Annotation`,value:`${n===`with`?`With`:`Without`} ${t}`,clear:{[e]:``}})}return!l.currentWorkspace&&r.filterDuplicates&&i.push({key:`duplicates`,label:`Duplicates`,value:r.filterDuplicates===`with`?`Only rows linked to other reports`:`Exclude rows linked to other reports`,clear:{filterDuplicates:``}}),r.filterCrossContext&&i.push({key:`cross-context`,label:`Context`,value:r.filterCrossContext===`with`?`Only rows across multiple repos or packages`:`Exclude rows across multiple repos or packages`,clear:{filterCrossContext:``}}),r.filterAppStacked&&i.push({key:`app-stacked`,label:`App stack`,value:r.filterAppStacked===`with`?`Only rows with multiple App findings`:`Exclude rows with multiple App findings`,clear:{filterAppStacked:``}}),r.filterSecurity&&i.push({key:`security`,label:`Security`,value:r.filterSecurity===`with`?`Only security-related rows`:`Exclude security-related rows`,clear:{filterSecurity:``}}),i}function w(){return c().filter(e=>s(e).commonTriage===l.shownTriage)}function T(){return l.shownTriage?p[l.shownTriage]??l.shownTriage:null}function E(e,t=r()){let n=w(),s=n.length;i(t);let c;try{c=o(n).length}finally{a()}return{included:c,total:s,excluded:s-c,fields:t,filters:C(t),bucketLabel:T(),focusedOnly:e===`print`&&l.viewMode===`focus`}}var D=`.managed-comment{container:managed-comment / inline-size;white-space:normal}.managed-comment-row{display:grid;grid-template-columns:minmax(0,max-content) minmax(0,1fr) auto;align-items:start;gap:.35rem .65rem;line-height:1.5}.managed-comment-author{grid-column:1;grid-row:1;display:flex;align-items:center;gap:.45rem;min-width:0;max-width:14rem;& strong{overflow:hidden;text-overflow:ellipsis;font-weight:600}}.managed-comment-avatar{position:relative;display:inline-flex;align-items:center;justify-content:center;flex:none;width:1.3rem;height:1.3rem;overflow:hidden;border-radius:50%;background:rgb(from var(--muted) r g b / .15);color:var(--muted);font-size:.65rem;font-weight:600;& img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}& img[hidden]{display:none}}.managed-comment-body{grid-column:2;grid-row:1;min-width:0;white-space:pre-wrap;overflow-wrap:anywhere;& a{color:var(--accent);text-decoration:none}& a:hover{text-decoration:underline}& a.comment-self-ref{text-decoration:underline dotted;text-underline-offset:2px}& a.comment-self-ref:hover{text-decoration:underline solid}}.managed-comment-time{color:var(--muted);font-size:.7rem;font-weight:400;white-space:nowrap;text-align:right}.managed-comment-meta{grid-column:3;grid-row:1;justify-self:end;display:flex;align-items:center;gap:.5rem;min-height:1.3rem}.managed-comment-actions{display:flex;align-items:center;gap:.15rem}.managed-comment-row:not(:has(.managed-comment-author)){grid-template-columns:minmax(0,1fr) auto;.managed-comment-body{grid-column:1}.managed-comment-meta{grid-column:2}}@container managed-comment (max-width: 28rem){.managed-comment-row:has(.managed-comment-meta){grid-template-columns:minmax(0,max-content) minmax(0,1fr);.managed-comment-meta{grid-column:1 / -1;grid-row:1}.managed-comment-author,.managed-comment-body{grid-row:2}}.managed-comment-row:not(:has(.managed-comment-author)){grid-template-columns:minmax(0,1fr)}.managed-comment-author{max-width:9rem}}
|
|
3
3
|
`;export{_ as a,v as b,y as c,b as d,C as e,w as f,T as g,E as h,D as i};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{b as e,h as t}from"./chunk-
|
|
1
|
+
import{b as e,h as t}from"./chunk-2K6UN3PC.js";import{a as n}from"./chunk-WCPJDAYA.js";import{a as r,b as i,e as a}from"./chunk-IYPY47MC.js";import{A as o,B as s,E as c,b as l,c as u,d,j as f,m as p,p as m,s as h,t as g,w as _,z as v}from"./chunk-SXV2T5C4.js";import{A as ee,b as y,c as b,i as te,w as x,y as S}from"./chunk-WFYLMF6Z.js";import{a as C,b as w,c as T}from"./chunk-C4Z6ZBXV.js";import{c as E,f as D,g as O,i as ne}from"./chunk-2XUEZHIP.js";var re=w(class extends T{constructor(e){if(super(e),e.type!==C.ATTRIBUTE||e.name!==`class`||e.strings?.length>2)throw Error("`classMap()` can only be used in the `class` attribute and must be the only part in the attribute.")}render(e){return` `+Object.keys(e).filter(t=>e[t]).join(` `)+` `}update(e,[t]){if(this.st===void 0){this.st=new Set,e.strings!==void 0&&(this.nt=new Set(e.strings.join(` `).split(/\s/).filter(e=>e!==``)));for(let e in t)t[e]&&!this.nt?.has(e)&&this.st.add(e);return this.render(t)}let n=e.element.classList;for(let e of this.st)e in t||(n.remove(e),this.st.delete(e));for(let e in t){let r=!!t[e];r===this.st.has(e)||this.nt?.has(e)||(r?(n.add(e),this.st.add(e)):(n.remove(e),this.st.delete(e)))}return D}}),ie=e=>e.replaceAll(`&`,`&`).replaceAll(`<`,`<`).replaceAll(`>`,`>`),ae=e=>y(e)?e:ie(b(String(e))),k=globalThis.trustedTypes?.createPolicy(`deepview`,{createHTML:ae,createScriptURL:e=>{let t=new URL(e,globalThis.location.href);if(t.origin!==globalThis.location.origin)throw TypeError(`Not a same-origin script: ${t.href}`);return t.href}}),A=e=>k?k.createHTML(e):ae(e),oe=e=>k?k.createScriptURL(String(e)):e,j={showAll:!1,packagesView:!1,dependencyPackagesView:!1,flowPackagesView:!1,bundleIssues:!1,bundleLayout:`graph`,lockfileLayout:`dependencies`,bundleReason:null,bundleReasonFor:null,selected:null,focusedPkg:null,topPkgsTab:`issues`,edgeOpacity:.22,nodeSize:1,showLabels:!1,selectedSeverities:new Set,selectedColors:new Set,pathFilter:``,hidden:new Set,solo:null,graphState:null,layoutCache:null,keptViewport:null};function se({keepViewport:e=!1}={}){j.graphState?._cleanup?j.graphState._cleanup({keepViewport:e}):e||(j.keptViewport=null),j.graphState=null}function M(e){return e.id??String(e._id)}function ce(e){let t=m(e);return t!==``&&t!==`revalidation`}var N=[{value:`confirmed`,label:`Confirmed`,kinds:[`confirmed`,`partial`,`revalidation`]},{value:`unreachable`,label:`Unreachable`,kinds:[`unreachable`]},{value:`refuted`,label:`Refuted`,kinds:[`refuted`]}];function le(e){return N.find(t=>t.value===e)?.kinds??null}var ue=[``,`exclude`,`only`];function de(e,t){let n=le(e);return n?.includes(`partial`)?t===`only`?[`partial`]:t===`exclude`?[`confirmed`]:n:n}function P(e){if(e.confidence!==void 0)return e.confidence;if(e.critical===!0||e._source)return 10}var fe=e=>e.confidence!==void 0||e.critical===!0;function pe(e){return e.every(e=>e.every(e=>P(e)!==void 0))&&e.some(e=>e.some(fe))}function me(e,t,n){return e.some(e=>{let r=[`refuted`,`unreachable`].includes(n(e))?0:P(e);return r===void 0?t===0:r>=t})}function he(e,t){let n=e.map(t).filter(e=>e.length>0);if(!n.some(e=>e.some(e=>P(e)!==void 0)))return 0;let r=e=>n.reduce((t,n)=>t+ +!!n.some(t=>(P(t)??-1)>=e),0),i;for(i=r(6)<=25?6:r(7)<=25?7:8;i>0&&r(i-1)===r(i);)i--;return i}function ge(e,t){return pe(e)?t:0}function _e(e,t,n){let r=new Set(e.ruledOutIds??[]);for(let t of e)for(let e of t)[`refuted`,`unreachable`].includes(n(e))&&r.add(M(e));for(let i of e){let e=t(i);if(e.length!==0&&e.some(e=>de(`confirmed`,``).includes(n(e)||(e._source&&!e._sourcePass?`revalidation`:``)))){for(let e of i)if(r.add(M(e)),e.isApp&&Array.isArray(e.revalidateInputs))for(let t of e.revalidateInputs)t&&r.add(t)}}return r}function ve(e,t,n,r){let i=ge(e,t),a=e.filter(e=>me(e,i,r));if(a.length===0)return!1;let o=new Set(de(`confirmed`,``));return e.some(e=>e.some(e=>o.has(r(e))))?a.every(e=>e.every(e=>n.has(M(e)))):!1}function ye(e,{tabs:t,kindOf:n,severityMode:r}){let i=e.map(t).filter(e=>e.length>0),a=_e(e,t,n);if(!ve(i,he(e,t),a,n))return!1;let o=ge(i,6);return i.every(e=>!me(e,o,n)||!e.some(e=>p(e,r)!==`low`)||e.every(e=>a.has(M(e))))}var F=!0;function be(e,t=!1){F=e!==!1&&!t}function xe(){return F}function I(e){return F?m(e):``}function Se(e){return m(e)!==``}function Ce(e){return e.some(e=>(e.groups??[]).some(e=>e.some(ce)))}function we(e){let t=I(e);return t&&t!==`revalidation`?t:null}function Te(e){return I(e)===`revalidation`}var Ee=new Set([`refuted`,`unreachable`]);function De(e){return Ee.has(I(e))}function Oe(e){return Ee.has(I(e))}function ke(e){let t=new Set(e);return N.filter(e=>e.kinds.some(e=>t.has(e)))}function L(e){return RegExp(`(^|/)${e}/`,`u`)}function Ae(e){return RegExp(`^(?:.*/)?${e}/(?:@[^/]+/[^/]+|[^/]+)/(.*)$`,`u`)}var je=L(`node_modules`),Me=L(`vendor`),R=`node_modules`,Ne=L(R),Pe=Ae(R);function Fe(e){e!==R&&(R=e,Ne=L(e),Pe=Ae(e))}var Ie=null;function Le(t){Ie?.length===t.length&&Ie.every((e,n)=>e===t[n])||(Ie=[...t],Fe(e(t)))}function Re(){return R}function z(e){return Ne.test(e)}var B=new WeakSet;function ze(e){let t=!1;for(let n of e??[])for(let e of n.groups??[])for(let n of e){if(n.isApp!==!1)continue;let e=B.has(n);`isUpstream`in n&&!e||(z(n.file)?(n.isUpstream!==!0&&(t=!0),n.isUpstream=!0,B.add(n)):e&&(t=!0,delete n.isUpstream,B.delete(n)))}return t}function Be(e){let t=typeof e==`string`?e:``;return je.test(t)||Me.test(t)||Ne.test(t)}var Ve=/^(.*(?:^|\/)node_modules\/(?:@[^/]+\/[^/]+|[^/]+))(?:\/|$)/u;function He(e){return Ve.exec(typeof e==`string`?e:``)?.[1]??null}function Ue(e){return typeof e!=`number`||!Number.isFinite(e)?null:n(e)}function We(e){if(e.length<=1)return{prefix:``,stripped:[...e]};let t=e.map(e=>e.split(`/`)),n=Math.min(...t.map(e=>e.length)),r=0;for(let e=0;e<n-1&&t.every(n=>n[e]===t[0][e]);e++)r=e+1;return r>0&&t[0][r-1].startsWith(`@`)&&r--,r>0&&t[0][r-1]===`node_modules`&&r--,r===0?{prefix:``,stripped:[...e]}:{prefix:`${t[0].slice(0,r).join(`/`)}/`,stripped:t.map(e=>e.slice(r).join(`/`))}}function Ge(e){return e.match(Pe)?.[1]??e}var V={on:new WeakMap,off:new WeakMap};function Ke(e){let t=F?V.on:V.off,n=t.get(e);if(n===void 0){let r=F?[we(e),e.revalidateVerdict,e.revalidateRecommendation]:[];n=[e.file,e.title,e.description,e.impact,e.reproduction,Ot(e),e.recommendation,e.confidenceReason,...r,e.discoveredIn,e.repo?.github].filter(Boolean).join(`
|
|
2
2
|
`).toLowerCase(),t.set(e,n)}return n}function qe(e){V.on.delete(e),V.off.delete(e)}function Je(e){return[typeof e?.category==`string`?e.category.trim():``,h(e,F)].filter(Boolean).join(` · `)}function Ye(e){if(e.length===0)return``;let t=e[0];for(let n=1;n<e.length;n++){for(;t&&!e[n].startsWith(t);)t=t.slice(0,-1);if(!t)return``}return t}function Xe(e){if(!e)return``;let t=e.match(/github\.com\/([^/?#]+\/[^/?#]+?)(?:\.git)?(?:[/?#]|$)/iu);return t?t[1]:e}function Ze(e){if(!e)return null;let t=e.trim().replace(/\/$/u,``);return t?/^https?:\/\//iu.test(t)?t:/^github\.com\//iu.test(t)?`https://${t}`:`https://github.com/${t}`:null}var Qe=/^(?:@[\w.-]+\/)?[\w.-]+@[^/\s@]+$/u;function $e(e){return Qe.test(e||``)}function et(e){if(e==null||typeof e==`string`)return{id:e??``,prefix:``};let t=c(e);return{id:typeof e.github==`string`?e.github:``,prefix:t?`${t}/`:``}}function tt(e,t,n){if($e(e))return null;let r=et(t);if(r.id)return`https://github.com/${r.id}/blob/HEAD/${r.prefix}${Ge(e)}`;if(z(e))return null;let i=et(n),a=Ze(i.id);return a?`${a}/blob/HEAD/${i.prefix}${e}`:null}function nt(e,t){let n=e?.file??``,r=H(e,t);return r?E`<a href="${rt(r)}" target="_blank" rel="noopener">${n}</a>`:n}function rt(e){return e.replace(/#L\d+(?:-L?\d+)?$/u,``)}function H(e,t){if(!e)return null;if(s(e.location))return e.location;let n=tt(e.file,e.repo,t);if(!n)return null;let r=parseInt(e.line,10);return Number.isFinite(r)?`${n}#L${r}`:n}var it=/^https?:\/\/(?:www\.)?github\.com\/([^/\s]+\/[^/\s]+)\/(?:blob|tree|blame)\/[^/\s]+\/(\S+)$/u,at=/#L(\d+)(?:-L?(\d+))?$/u;function ot(e){let t=typeof e==`string`?it.exec(e):null;if(!t)return``;let n=t[2],r=at.exec(n);if(!r)return`${t[1]}/${n}`;n=n.slice(0,r.index);let i=r[2]?`${r[1]}-${r[2]}`:r[1];return`${t[1]}/${n}:${i}`}var st=/^(?:\s+\S|[-*+] |\d+[.)] |>|#{1,6}(?:[ \t]|$)|\||`{3}|~{3})/u;function ct(e){return e.split(/(\n{2,})/u).map(e=>{if(/^\n+$/u.test(e))return e;let t=e.split(`
|
|
3
3
|
`);return t.some(e=>st.test(e)||W.test(e))?e:t.map(e=>e.trim()).filter(Boolean).join(` `)}).join(``)}function lt(e,t,n){let r=t?/^\n*/u.exec(e)[0]:``,i=e.slice(r.length),a=n?/\n*$/u.exec(i)[0]:``;return r+ct(i.slice(0,i.length-a.length))+a}function ut(e){if(!e)return e;let t=e.replaceAll(`\r
|
|
4
4
|
`,`
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var e=new Set([`overview`,`graph`,`treemap`,`compare`,`advisories`,`issues`,`code`,`search`,`terminal`]),t=/^\d+$/u;function n(e){for(let t=0;t<e.length;t++){let n=e.codePointAt(t);if(n<32||n===127)return!0}return!1}var r=512;function i(e){return typeof e==`string`&&e.length>0&&e.length<=r&&!n(e)}function a(e){return i(e)&&!t.test(e)}var o=/^(?=.{1,214}$)(?:@[\w.-]+\/[\w-]|[\dA-Za-z])[\w.-]*$/u,s=/^(?=.{1,256}$)[\dA-Za-z][\w.+-]*$/u,c=/^@[\da-z~-][\w.~-]*$/u,l=/^(?:[\da-f]{64}|[2-7a-z]{26})$/u;function u(e){return typeof e==`string`&&o.test(e)}function d(e){return typeof e==`string`&&s.test(e)}function f(e){return typeof e==`string`&&l.test(e)}function p(e){return typeof e==`string`&&e.length>0&&e.length<=1024&&!/[\p{Cc}\\]/u.test(e)&&e.split(`/`).every(e=>e!==``&&e!==`.`&&e!==`..`)}function m(e){if(typeof e!=`string`)return null;let t=e.trim().toLowerCase(),n=t.startsWith(`@`)?t:`@${t}`;return n.length<=214&&c.test(n)?n:null}var h=new Set([`code`,`diff`]),g=e=>h.has(e)?`code`:`overview`,_=e=>h.has(e)?{compareMode:`code`}:{},v=e=>h.has(e)?`/code`:``,y=Object.freeze({manage:`/manage`,"manage-bundles":`/manage/bundle`,"manage-scans":`/manage/scans`,"manage-reports":`/manage/report`,"manage-repos":`/manage/repositories`,"manage-repo-risk":`/manage/repositories/risk`,"admin-users":`/manage/users`,"manage-teams":`/manage/team`,"manage-import":`/manage/import`,"manage-links":`/manage/links`,"manage-deduplication":`/manage/deduplication`,"manage-history":`/manage/history`}),b=new Set([`workspace-reports`,`workspace-bundles`,`workspace-repositories`,`workspace-dependencies`]),x=new Set([`pulls`,`versions`,`branch`,`reviews`]),S=e=>e.view===`workspace-dependencies`&&e.dependencyTab!=null?{dependencyTab:e.dependencyTab}:{};function C(e){if(!a(e)||e===`.`||e===`..`)return null;try{return`/finding/${encodeURIComponent(e)}`}catch{return null}}function w(t){if(!t)return null;if(t.view===`home`)return`/`;if(t.view===`reviews`)return`/my/reviews`;if(t.view===`profile`)return`/my/profile`;if(t.view===`npm`)return D(t);if(t.view===`repository-code`)return R(t);if(b.has(t.view)){let e=S(t).dependencyTab??`pulls`;return!/^[A-Za-z0-9_-]+$/u.test(t.teamSlug??``)||!x.has(e)?null:`/team/${t.teamSlug}/${t.view.slice(10)}${e===`pulls`?``:`/${e}`}`}if(t.view===`bundles`){if(!/^[A-Za-z0-9_-]+$/u.test(t.bundleSlug??``)||[t.teamSlug,t.compareSlug].some(e=>e!=null&&!/^[A-Za-z0-9_-]+$/u.test(e)))return null;let n=t.bundleTab??`overview`;if(!e.has(n))return null;let r=t.teamSlug?`/team/${t.teamSlug}`:`/manage`,i=n===`code`&&B(t.file)?`/${t.file}`:``,a=i&&B(t.line)?`#L${t.line}${B(t.endLine)&&t.endLine>t.line?`-L${t.endLine}`:``}`:``,o=n===`compare`&&t.compareSlug!=null?`/${t.compareSlug}${v(t.compareMode)}`:``;return`${r}/bundle/${t.bundleSlug}${n===`overview`?``:`/${n}`}${i}${o}${a}`}if(Object.hasOwn(y,t.view)){let e=y[t.view];return t.view===`manage-deduplication`&&t.linkId?`${e}?report=${encodeURIComponent(t.linkId)}`:t.view===`manage-bundles`&&Number.isSafeInteger(t.createRepoId)&&t.createRepoId>0?`${e}?createRepo=${t.createRepoId}`:t.view===`manage-scans`&&t.scanMode===`link`?`${e}?mode=link`:t.view===`manage-scans`&&t.bundleId?`${e}?bundle=${encodeURIComponent(t.bundleId)}${t.scanMode===`dependencies`?`&mode=dependencies`:``}`:t.view===`manage-history`&&t.actor?`${e}?actor=${encodeURIComponent(t.actor)}`:e}if(![`findings`,`files`].includes(t.view)||!t.teamSlug||[t.teamSlug,t.reportSlug].some(e=>e!=null&&!/^[A-Za-z0-9_-]+$/u.test(e)))return null;let n=`/team/${encodeURIComponent(t.teamSlug)}`,r=t.reportSlug?`/report/${encodeURIComponent(t.reportSlug)}`:``;if(t.finding){let e=C(t.finding.id);return t.view===`findings`&&e?`${n}${r}${e}`:null}return`${n}${r}${t.view===`files`?`/files`:``}`}var T=new Set([`overview`,`code`,`search`,`compare`,`review`,`treemap`]),E=e=>f(e?.hash)&&I(e.repoId)&&P.test(e.commit??``)&&p(e.path);function D(e){if(e.packageName==null)return`/npm`;let t=e.bundleTab??`overview`;if(!u(e.packageName)||e.packageSpec!=null&&!d(e.packageSpec)||!T.has(t)||e.compareSpec!=null&&!d(e.compareSpec))return null;if(t===`review`){if(e.reviewPackage!=null&&!u(e.reviewPackage)||e.reviewSpec!=null&&!d(e.reviewSpec)||e.patch!=null&&!E(e.patch))return null;let t=e.reviewPackage==null?``:`/${e.reviewPackage}${e.reviewSpec==null?``:`@${e.reviewSpec}`}`,n=e.patch==null?``:`?patch=${e.patch.hash}&repo=${e.patch.repoId}&commit=${e.patch.commit}&path=${e.patch.path.split(`/`).map(encodeURIComponent).join(`/`)}`;return`/npm/${e.packageName}${e.packageSpec==null?``:`@${e.packageSpec}`}/review${t}${n}`}let n=t===`code`&&B(e.file)?`/${e.file}`:``,r=n&&B(e.line)?`#L${e.line}${B(e.endLine)&&e.endLine>e.line?`-L${e.endLine}`:``}`:``,i=t===`compare`&&e.compareSpec!=null?`/${e.compareSpec}${v(e.compareMode)}`:``;return`/npm/${e.packageName}${e.packageSpec==null?``:`@${e.packageSpec}`}${t===`overview`?``:`/${t}`}${n}${i}${r}`}function O(e,t,n){let r=/^\/npm\/((?:@[^/@]+\/)?[^/@]+)(?:@([^/]+))?\/review(?:\/((?:@[^/@]+\/)?[^/@]+)(?:@([^/]+))?)?$/u.exec(e);if(r){if(!u(r[1])||r[2]!=null&&!d(r[2])||r[3]!=null&&!u(r[3])||r[4]!=null&&!d(r[4]))return null;let e=r[3]&&/^\d+\.\d+\.\d+(?:[-+].*)?$/u.test(r[3])&&r[4]==null,t=n.has(`patch`)?{hash:n.get(`patch`),repoId:/^[1-9]\d*$/u.test(n.get(`repo`)??``)?Number(n.get(`repo`)):null,commit:n.get(`commit`),path:n.get(`path`)}:null;return t&&!E(t)?null:{view:`npm`,packageName:r[1],packageSpec:r[2]??null,bundleTab:`review`,...r[3]?{reviewPackage:e?r[1]:r[3],reviewSpec:e?r[3]:r[4]??null}:{},...t?{patch:t}:{}}}let i=/^\/npm(?:\/((?:@[^/@]+\/)?[^/@]+)(?:@([^/]+))?(?:\/(code|search|compare|treemap)(?:\/([^/]+)(?:\/([a-z]+))?)?)?)?$/u.exec(e);if(!i)return;if(i[1]==null)return{view:`npm`};if(!u(i[1])||i[2]!=null&&!d(i[2]))return null;let a={view:`npm`,packageName:i[1],packageSpec:i[2]??null,bundleTab:i[3]??`overview`};if(i[4]==null)return a;if(a.bundleTab===`compare`)return d(i[4])&&(i[5]==null||h.has(i[5]))?{...a,compareSpec:i[4],..._(i[5])}:null;if(a.bundleTab!==`code`)return null;let o=Number(i[4]);return!i[5]&&/^[1-9]\d*$/u.test(i[4])&&Number.isSafeInteger(o)?{...a,file:o,...V(t)}:null}var k=new Set([`code`,`search`,`treemap`,`compare`,`commits`,`issues`,`pulls`,`agents`,`pulse`,`replay`]),A=new Set([`commits`,`issues`,`pulls`,`agents`,`pulse`,`replay`]),j=new Map([[`issues`,new Set([`closed`])],[`pulls`,new Set([`closed`])],[`pulse`,new Set([`week`,`quarter`,`year`])],[`replay`,new Set([`100`,`1000`])]]),M=/^[a-z][a-z\d-]{0,31}$/u,N=(e,t)=>e===`agents`?typeof t==`string`&&M.test(t)&&t!==`all`:j.get(e)?.has(t)===!0,P=/^[a-f\d]{40}$/u,F=500,I=e=>Number.isSafeInteger(e)&&e>0;function L(e){return typeof e==`string`&&(e===``||e.length<=F&&!/[\p{Cc}\\]/u.test(e)&&e.split(`/`).every(e=>e!==``&&e!==`.`&&e!==`..`&&e===e.trim()))}function R(e){let t=e.bundleTab??`code`,n=e.path??``;if(!I(e.repoId)||e.commit!=null&&!P.test(e.commit)||!L(n)||!k.has(t)||e.compareCommit!=null&&!P.test(e.compareCommit))return null;let r=n?`?path=${n.split(`/`).map(encodeURIComponent).join(`/`)}`:``;if(e.commit==null)return`/repo/${e.repoId}${r}`;let i=t===`code`&&B(e.file)?`/code/${e.file}`:t===`code`?``:`/${t}`,a=t===`compare`&&e.compareCommit!=null?`/${e.compareCommit}${v(e.compareMode)}`:``,o=N(t,e.subtab)?`/${e.subtab}`:``,s=t===`code`&&B(e.file)&&B(e.line)?`#L${e.line}${B(e.endLine)&&e.endLine>e.line?`-L${e.endLine}`:``}`:``;return`/repo/${e.repoId}/${e.commit}${i}${a}${o}${r}${s}`}function z(e){let t=/^\/(?:repo|manage\/code)\/([1-9]\d*)(?:\/([a-f\d]{40})(?:\/(code|search|treemap|compare|commits|history|issues|pulls|agents|pulse|replay)(?:\/([^/]+)(?:\/([a-z]+))?)?)?)?$/u.exec(e.pathname.replace(/\/$/u,``));if(!t)return;let n=Number(t[1]),r=e.searchParams.get(`path`)??``,i=t[3]===`history`?`commits`:t[3]??`code`;if(!I(n)||!L(r))return null;let a={view:`repository-code`,repoId:n,commit:t[2]??null,path:r,bundleTab:i};if(t[4]==null)return a;if(i===`compare`)return P.test(t[4])&&(t[5]==null||h.has(t[5]))?{...a,compareCommit:t[4],..._(t[5])}:null;if(A.has(i))return t[5]==null&&N(i,t[4])?{...a,subtab:t[4]}:null;let o=Number(t[4]);return i===`code`&&t[5]==null&&/^[1-9]\d*$/u.test(t[4])&&Number.isSafeInteger(o)?{...a,file:o,...V(e.hash)}:null}function B(e){return Number.isSafeInteger(e)&&e>0}function V(e){let t=/^#L([1-9]\d*)(?:-L([1-9]\d*))?$/u.exec(e),[n,r]=t?[Number(t[1]),Number(t[2]??t[1])]:[];return!B(n)||!B(r)?{}:n===r?{line:n}:{line:Math.min(n,r),endLine:Math.max(n,r)}}function H(t){let n=t.pathname.replace(/\/$/u,``)||`/`;if(n===`/`||n===`/index.html`)return{view:`home`};if(n===`/my/reviews`)return{view:`reviews`};if(n===`/my/profile`){let e=t.searchParams.get(`link-error`);return{view:`profile`,...e&&/^[a-z-]{1,64}$/u.test(e)?{linkError:e}:{}}}let i=Object.keys(y).find(e=>y[e]===n);if(i){let e=Number(t.searchParams.get(`createRepo`));return{view:i,...i===`manage-deduplication`&&t.searchParams.get(`report`)?{linkId:t.searchParams.get(`report`)}:{},...i===`manage-bundles`&&Number.isSafeInteger(e)&&e>0?{createRepoId:e}:{},...i===`manage-history`&&t.searchParams.get(`actor`)?{actor:t.searchParams.get(`actor`)}:{},...i===`manage-scans`?t.searchParams.get(`mode`)===`link`?{scanMode:`link`}:t.searchParams.get(`bundle`)?{bundleId:t.searchParams.get(`bundle`),...t.searchParams.get(`mode`)===`dependencies`?{scanMode:`dependencies`}:{}}:{}:{}}}let a=/^(?:\/team\/([A-Za-z0-9_-]+)|\/manage)\/bundle\/([A-Za-z0-9_-]+)(?:\/([a-z]+)(?:\/([A-Za-z0-9_-]+)(?:\/([a-z]+))?)?)?$/u.exec(n);if(a){let n=a[3]??`overview`;if(!e.has(n))return null;let r={view:`bundles`,teamSlug:a[1]??null,bundleSlug:a[2],bundleTab:n};if(a[4]==null)return r;if(n===`compare`)return a[5]==null||h.has(a[5])?{...r,compareSlug:a[4],..._(a[5])}:null;let i=Number(a[4]);return n!==`code`||a[5]||!/^[1-9]\d*$/u.test(a[4])||!Number.isSafeInteger(i)?null:{...r,file:i,...V(t.hash)}}let o=O(n,t.hash,t.searchParams);if(o!==void 0)return o;let s=z(t);if(s!==void 0)return s;let c=/^\/team\/([A-Za-z0-9_-]+)\/(reports|bundles|repositories|dependencies)$/u.exec(n);if(c)return{view:`workspace-${c[2]}`,teamSlug:c[1]};let l=/^\/team\/([A-Za-z0-9_-]+)\/dependencies\/([a-z]+)$/u.exec(n);if(l)return x.has(l[2])?{view:`workspace-dependencies`,teamSlug:l[1],dependencyTab:l[2]}:null;let u=/^\/team\/([^/]+)(?:\/report\/([^/]+))?(?:\/(files)|\/finding\/([^/]+))?$/u.exec(n);if(!u)return null;try{let e=decodeURIComponent(u[1]),t=u[2]?decodeURIComponent(u[2]):null;if([e,t].some(e=>e!=null&&!/^[A-Za-z0-9_-]+$/u.test(e))||u[4]?.length>r*9)return null;let n=u[4]?decodeURIComponent(u[4]):null;return n!=null&&!C(n)?null:{view:u[3]?`files`:`findings`,teamSlug:e,reportSlug:t,...n==null?{}:{finding:{id:n}}}}catch{return null}}function U(e,t,n=[]){if(b.has(e.view)){let n=t.filter(t=>t.slug===e.teamSlug);return n.length===1?{view:e.view,teamId:n[0].id,...S(e)}:null}if(e.view===`bundles`){let{teamSlug:r,bundleSlug:i,compareSlug:a,compareMode:o,...s}=e,c=r==null?[]:t.filter(e=>e.slug===r);if(r!=null&&c.length!==1)return null;let l=c[0],u=r==null?n:t.flatMap(e=>e.bundles??[]),d=e=>new Set(u.filter(t=>t.slug===e).map(e=>e.id)),f=d(i),p=(l?.bundles??n).find(e=>e.slug===i);if(!i||!p||f.size!==1)return null;let m=a==null?null:d(a),h=m?.size===1?{compareId:[...m][0],..._(o)}:{};return{...s,teamId:l?.id??null,bundleId:p.id,...h}}if(![`findings`,`files`].includes(e.view))return e;let{teamSlug:r,reportSlug:i,...a}=e,o=t.filter(e=>e.slug===r);if(!r||o.length!==1)return null;let s=o[0];if(i==null)return{...a,teamId:s.id,reportId:null};let c=t.flatMap(e=>e.reports??[]).filter(e=>e.slug===i),l=new Set(c.map(e=>e.id)),u=(s.reports??[]).find(e=>e.slug===i);return u&&l.size===1?{...a,teamId:s.id,reportId:u.id}:null}function W(e,t,n=[]){if(b.has(e.view)){let n=t.find(t=>t.id===e.teamId),r={view:e.view,teamSlug:n?.slug,...S(e)};return n?.slug&&U(r,t)?r:null}if(e.view===`bundles`){let{teamId:r,bundleId:i,compareId:a,compareMode:o,...s}=e,c=t.find(e=>e.id===r);if(r!=null&&!c?.slug)return null;let l=(c?.bundles??n).find(e=>e.id===i);if(!l?.slug)return null;let u=a==null?null:(r==null?n:t.flatMap(e=>e.bundles??[])).find(e=>e.id===a),d={...s,teamSlug:c?.slug??null,bundleSlug:l.slug,...u?.slug?{compareSlug:u.slug,..._(o)}:{}},f=U(d,t,n);if(!f)return null;if(d.compareSlug!=null&&f.compareId!==a){let{compareSlug:e,compareMode:t,...n}=d;return n}return d}if(![`findings`,`files`].includes(e.view))return e;let{teamId:r,reportId:i,...a}=e,o=t.find(e=>e.id===r),s=i==null?null:o?.reports?.find(e=>e.id===i);if(!o?.slug||i!=null&&!s?.slug)return null;let c={...a,teamSlug:o.slug,reportSlug:s?.slug??null};return U(c,t)?c:null}export{e as a,r as b,a as c,u as d,d as e,f,p as g,m as h,g as i,_ as j,y as k,x as l,w as m,T as n,k as o,A as p,N as q,H as r,U as s,W as t};
|