@package-broker/dist 2.0.0-rc.3 → 2.0.0-rc.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/README.md +8 -0
- package/node/assets/access.62e9484517a0.js +1 -0
- package/node/assets/app.45b156168495.css +2 -0
- package/node/assets/{app.e8434f3343de.js → app.c064670cdc0d.js} +5 -5
- package/node/assets/audit.b7c40b9dc998.js +1 -0
- package/node/assets/{chunk.3704953b4a66.js → chunk.28a4d8aab337.js} +1 -1
- package/node/assets/chunk.3fcd6998795a.js +1 -0
- package/node/assets/chunk.51497edc7697.js +4 -0
- package/node/assets/chunk.56d473a1587d.js +1 -0
- package/node/assets/chunk.675b635d9462.js +1 -0
- package/node/assets/{chunk.bb25fc845269.js → chunk.6ea6bdcaa465.js} +1 -1
- package/node/assets/{chunk.f922af39a279.js → chunk.741aec8d1ff9.js} +1 -1
- package/node/assets/chunk.815f9a91c741.js +1 -0
- package/node/assets/chunk.8442124f6802.js +1 -0
- package/node/assets/{chunk.862544cf5835.js → chunk.965b76812604.js} +1 -1
- package/node/assets/{chunk.bf48b04e6a00.js → chunk.a6d755a9789f.js} +1 -1
- package/node/assets/chunk.d18497920e4d.js +1 -0
- package/node/assets/{chunk.ce96495b8b55.js → chunk.d813fefb410d.js} +1 -1
- package/node/assets/chunk.e3b0c44298fc.js +0 -0
- package/node/assets/{chunk.7cb6f6b4daaa.js → chunk.f54ea1378c8c.js} +1 -1
- package/node/assets/chunk.fd375c54b526.js +1 -0
- package/node/assets/import.e7a1e5834631.js +1 -0
- package/node/assets/index.html +9 -6
- package/node/assets/manifest.json +66 -38
- package/node/assets/notifications.19225fe12044.js +1 -0
- package/node/assets/npm-login.e059678af13d.js +1 -0
- package/node/assets/packages.ab5ab25b1c75.js +2 -0
- package/node/assets/projects.927fe18c785c.js +1 -0
- package/node/assets/setup.8e977608d413.js +1 -0
- package/node/assets/setup.html +2 -2
- package/node/assets/sources.ae50f239f80f.js +1 -0
- package/node/assets/tokens.6b86d8d97e07.js +4 -0
- package/node/assets.json +2 -2
- package/node/build-info.json +4 -4
- package/node/generated/manifest.json +53 -2
- package/node/migrations/core/0002_npm_publish.sql +88 -0
- package/node/migrations/core/0003_npm_identity.sql +96 -0
- package/node/migrations/core/0004_source_revision.sql +1 -0
- package/node/migrations/core/0005_package_settings_revision.sql +1 -0
- package/node/migrations/core/0006_npm_login_handoff.sql +39 -0
- package/node/migrations/core/0007_npm_vcs_build_outcomes.sql +10 -0
- package/node/migrations/core/0008_registry_policy.sql +49 -0
- package/node/migrations/core/0009_npm_notifications.sql +108 -0
- package/node/server.js +62532 -42978
- package/package.json +1 -1
- package/prebuilt.json +47 -32
- package/node/assets/access.6859f43998ca.js +0 -1
- package/node/assets/app.f15f8f21f88b.css +0 -2
- package/node/assets/audit.576009342714.js +0 -1
- package/node/assets/chunk.297a2d571f9c.js +0 -4
- package/node/assets/chunk.6e23a75a1324.js +0 -1
- package/node/assets/chunk.855a50f45830.js +0 -1
- package/node/assets/chunk.976a2ff4338e.js +0 -1
- package/node/assets/import.e2a1e35fcb8d.js +0 -1
- package/node/assets/packages.a8726e5144de.js +0 -1
- package/node/assets/projects.711deb86b7c9.js +0 -1
- package/node/assets/setup.dfed30ecfbad.js +0 -1
- package/node/assets/sources.d0ba0048bd96.js +0 -1
- package/node/assets/tokens.f48d235e8d25.js +0 -4
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a as k}from"./chunk.28a4d8aab337.js";import{a as L,b as g,c as h}from"./chunk.965b76812604.js";import"./chunk.3fcd6998795a.js";import{a as y}from"./chunk.d813fefb410d.js";import"./chunk.741aec8d1ff9.js";import{D as m,E as c,F as s,K as w,c as b,d as P,g as x,p as d}from"./chunk.fd375c54b526.js";var r=b(P(),1);var a=b(x(),1);function N(t){let e=new URLSearchParams(t.split("?")[1]??""),l=e.get("project");return{scope:l!==null&&/^[A-Za-z0-9._-]{1,64}$/.test(l)?l:null,filters:{actor:e.get("actor")??"",action:e.get("action")??"",project:e.get("filterProject")??"",limit:e.get("limit")??"50",after:e.get("after")??""}}}function p(t,e){let l=new URLSearchParams;e!==null&&l.set("project",e);for(let i of["actor","action","project","limit","after"])i==="project"&&e!==null||t[i]!==""&&l.set(i==="project"?"filterProject":i,t[i]);return`#/audit${l.size?`?${l}`:""}`}async function B(t,e,l){let i={actor:e.actor||void 0,action:e.action||void 0,limit:e.limit||void 0,after:e.after||void 0},[n,u]=await Promise.all([l===null?t.request("get","/_pb/audit",{query:{actor:i.actor,action:i.action,project:e.project||void 0,limit:i.limit,after:i.after}}):t.request("get","/_pb/projects/{project}/audit",{params:{project:l},query:i}),t.request("get","/_pb/audit/head")]);return{data:n.ok?n.data:null,head:u.ok?u.data:null,error:n.ok?u.ok?null:"Unable to load the chain head.":"Unable to load audit events."}}function C(t){return(0,a.jsxs)("section",{"aria-labelledby":"page-heading",className:"space-y-4",children:[(0,a.jsx)("h1",{tabIndex:-1,id:"page-heading",className:"text-2xl font-semibold",children:"Audit"}),t.head===null?null:(0,a.jsxs)("div",{className:"flex flex-wrap gap-2","aria-label":"Audit chain head",children:[(0,a.jsx)(g,{variant:"outline",children:`Head ${t.head.seq}`}),(0,a.jsx)(g,{variant:"secondary",children:t.head.lastVerifiedAt===null?"never verified":(0,a.jsxs)(a.Fragment,{children:["Last verified ",(0,a.jsx)(y,{value:t.head.lastVerifiedAt})]})}),t.head.pendingCount>0?(0,a.jsx)(g,{variant:"secondary",children:`${t.head.pendingCount} pending`}):null]}),(0,a.jsx)(k,{chips:["actor","action","project"].flatMap(e=>t.filters[e]&&(e!=="project"||t.scope===null)?[{label:{actor:"Actor",action:"Action",project:"Project"}[e],value:t.filters[e],onRemove:()=>t.onNavigate({...t.filters,[e]:"",after:""})}]:[]),children:(0,a.jsxs)("form",{className:"flex flex-wrap items-end gap-3",onSubmit:e=>{e.preventDefault();let l=new FormData(e.currentTarget),i=n=>String(l.get(n)??"");t.onNavigate({actor:i("actor"),action:i("action"),project:i("filterProject"),limit:i("limit"),after:""})},children:[(0,a.jsxs)("div",{children:[(0,a.jsx)(s,{htmlFor:"audit-actor",children:"Actor"}),(0,a.jsx)(c,{id:"audit-actor",name:"actor",maxLength:200,defaultValue:t.filters.actor})]}),(0,a.jsxs)("div",{children:[(0,a.jsx)(s,{htmlFor:"audit-action",children:"Action"}),(0,a.jsx)(c,{id:"audit-action",name:"action",maxLength:200,defaultValue:t.filters.action})]}),t.scope===null?(0,a.jsxs)("div",{children:[(0,a.jsx)(s,{htmlFor:"audit-project",children:"Project"}),(0,a.jsx)(c,{id:"audit-project",name:"filterProject",maxLength:200,defaultValue:t.filters.project})]}):null,(0,a.jsxs)("div",{children:[(0,a.jsx)(s,{htmlFor:"audit-limit",children:"Limit"}),(0,a.jsx)(c,{id:"audit-limit",name:"limit",type:"number",min:"1",max:"200",required:!0,defaultValue:t.filters.limit})]}),(0,a.jsx)(d,{type:"submit",children:"Filter"}),(0,a.jsx)(d,{type:"button",variant:"outline",onClick:()=>t.onNavigate({actor:"",action:"",project:"",limit:"50",after:""}),children:"Clear filters"})]},p(t.filters,t.scope))}),t.error===null?null:(0,a.jsx)(h,{kind:"error",title:t.error,children:(0,a.jsx)(d,{type:"button",variant:"outline",onClick:()=>t.onNavigate({...t.filters}),children:"Retry"})}),t.loading?(0,a.jsx)(h,{kind:"loading",title:"Loading audit events\u2026"}):null,t.data===null?null:(0,a.jsxs)(a.Fragment,{children:[t.data.items.length?(0,a.jsx)(L,{label:"Audit events",items:t.data.items,columns:[{key:"seq",label:"Sequence",value:e=>e.seq},{key:"time",label:"Time",value:e=>e.createdAt,render:e=>(0,a.jsx)(y,{value:e.createdAt})},{key:"action",label:"Action",value:e=>e.action},{key:"actor",label:"Actor",value:e=>e.actor.id??"",render:e=>(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)("span",{className:"block text-xs text-neutral-600",children:e.actor.type}),(0,a.jsx)(m,{value:e.actor.id,label:"actor ID"})]})},{key:"project",label:"Project",priority:2,value:e=>e.projectId??"",render:e=>(0,a.jsx)(m,{value:e.projectId,label:"project ID"})},{key:"targetType",label:"Target type",priority:2,value:e=>e.targetType},{key:"targetId",label:"Target ID",priority:3,value:e=>e.targetId??"",render:e=>(0,a.jsx)(m,{value:e.targetId,label:"target ID"})}]}):!t.loading&&!t.error?(0,a.jsx)(h,{kind:t.filters.actor||t.filters.action||t.filters.project||t.filters.after?"filtered-empty":"empty",title:t.filters.actor||t.filters.action||t.filters.project||t.filters.after?"No audit events match these filters":"No audit events."}):null,(0,a.jsxs)("div",{className:"flex gap-2",children:[t.filters.after?(0,a.jsx)(d,{type:"button",variant:"outline",onClick:()=>t.onNavigate({...t.filters,after:""}),children:"First page"}):null,(0,a.jsx)(d,{type:"button",disabled:t.data.next===null||t.loading,onClick:()=>{t.data?.next&&t.onNavigate({...t.filters,after:t.data.next})},children:"Next page"})]})]})]})}function M(){let{client:t}=w(),[e,l]=(0,r.useState)(()=>window.location.hash),[i,n]=(0,r.useState)({data:null,head:null,error:null}),[u,j]=(0,r.useState)(!0),[F,q]=(0,r.useState)(0);(0,r.useEffect)(()=>{let o=()=>l(window.location.hash);return window.addEventListener("hashchange",o),()=>window.removeEventListener("hashchange",o)},[]),(0,r.useEffect)(()=>{let o=!0;j(!0),n({data:null,head:null,error:null});let{filters:f,scope:v}=N(e);return B(t,f,v).then(T=>{o&&(n(T),j(!1))}),()=>{o=!1}},[t,e,F]);let{filters:I,scope:A}=N(e);return(0,a.jsx)(C,{...i,filters:I,scope:A,loading:u,onNavigate:o=>{let f=p(o,A);window.location.hash===f?q(v=>v+1):window.location.hash=f}})}export{M as AuditPage,C as AuditView,p as auditHash,B as loadAudit,N as readAuditHash};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a as u}from"./chunk.
|
|
1
|
+
import{a as u}from"./chunk.741aec8d1ff9.js";import{E as c,F as f,c as d,d as g,g as p,p as m}from"./chunk.fd375c54b526.js";var s=d(g(),1);var e=d(p(),1);function v({children:o,chips:r=[]}){let[l,a]=(0,s.useState)(()=>typeof window>"u"||!window.matchMedia?!0:window.matchMedia("(min-width: 768px)").matches);return(0,s.useEffect)(()=>{let t=window.matchMedia("(min-width: 768px)"),n=()=>a(t.matches);return n(),t.addEventListener("change",n),()=>t.removeEventListener("change",n)},[]),(0,e.jsxs)("div",{className:"my-4",children:[(0,e.jsxs)("details",{open:l,onToggle:t=>a(t.currentTarget.open),className:"filter-toolbar",children:[(0,e.jsxs)("summary",{className:"w-full cursor-pointer p-3 text-left font-medium md:hidden",children:["Filters",r.length?` (${r.length})`:""," ",(0,e.jsx)("span",{"aria-hidden":"true",children:"\u2304"})]}),(0,e.jsx)("div",{"data-panel":!0,children:o})]}),r.length?(0,e.jsx)("div",{"aria-label":"Active filters",className:"mt-2 flex flex-wrap gap-2",children:r.map(t=>(0,e.jsxs)("span",{className:"filter-chip",children:[(0,e.jsxs)("span",{className:"min-w-0 break-all",children:[t.label,": ",t.value]}),(0,e.jsx)(m,{variant:"ghost",size:"sm",type:"button","aria-label":`Remove ${t.label} filter`,onClick:t.onRemove,children:"\xD7"})]},t.label))}):null]})}function x({values:o,fields:r,onChange:l}){return(0,e.jsx)(v,{chips:r.filter(({key:a})=>o[a]).map(({key:a,label:t})=>({label:t,value:o[a],onRemove:()=>l({...o,[a]:""})})),children:(0,e.jsxs)("form",{className:"my-4",onSubmit:a=>{a.preventDefault();let t=new FormData(a.currentTarget),n={...o};for(let{key:i}of r)n[i]=String(t.get(i)??"");l(n)},children:[r.map(({key:a,label:t,options:n})=>(0,e.jsx)("div",{children:(0,e.jsxs)(f,{className:"grid gap-1",children:[t,n?(0,e.jsxs)(u,{name:a,defaultValue:o[a],children:[(0,e.jsx)("option",{value:"",children:"All"}),n.map(i=>(0,e.jsx)("option",{value:i,children:i},i))]}):(0,e.jsx)(c,{type:"search",name:a,defaultValue:o[a]})]})},`${a}:${o[a]}`)),(0,e.jsx)(m,{type:"submit",children:"Apply filters"}),(0,e.jsx)(m,{type:"button",variant:"outline",onClick:a=>{a.currentTarget.form?.reset();let t={...o};for(let{key:n}of r)t[n]="";l(t)},children:"Clear filters"})]})})}export{v as a,x as b};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a as d,d as p}from"./chunk.fd375c54b526.js";var w=d(V=>{"use strict";var f=p();function q(e,u){return e===u&&(e!==0||1/e===1/u)||e!==e&&u!==u}var z=typeof Object.is=="function"?Object.is:q,I=f.useState,M=f.useEffect,_=f.useLayoutEffect,g=f.useDebugValue;function G(e,u){var t=u(),s=I({inst:{value:t,getSnapshot:u}}),r=s[0].inst,n=s[1];return _(function(){r.value=t,r.getSnapshot=u,E(r)&&n({inst:r})},[e,t,u]),M(function(){return E(r)&&n({inst:r}),e(function(){E(r)&&n({inst:r})})},[e]),g(t),t}function E(e){var u=e.getSnapshot;e=e.value;try{var t=u();return!z(e,t)}catch{return!0}}function L(e,u){return u()}var $=typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"?L:G;V.useSyncExternalStore=f.useSyncExternalStore!==void 0?f.useSyncExternalStore:$});var D=d((P,h)=>{"use strict";h.exports=w()});var R=d(O=>{"use strict";var m=p(),k=D();function C(e,u){return e===u&&(e!==0||1/e===1/u)||e!==e&&u!==u}var U=typeof Object.is=="function"?Object.is:C,W=k.useSyncExternalStore,A=m.useRef,B=m.useEffect,F=m.useMemo,H=m.useDebugValue;O.useSyncExternalStoreWithSelector=function(e,u,t,s,r){var n=A(null);if(n.current===null){var i={hasValue:!1,value:null};n.current=i}else i=n.current;n=F(function(){function y(o){if(!j){if(j=!0,l=o,o=s(o),r!==void 0&&i.hasValue){var c=i.value;if(r(c,o))return v=c}return v=o}if(c=v,U(l,o))return c;var b=s(o);return r!==void 0&&r(c,b)?(l=o,c):(l=o,v=b)}var j=!1,l,v,S=t===void 0?null:t;return[function(){return y(u())},S===null?void 0:function(){return y(S())}]},[u,t,s,r]);var a=W(e,n[0],n[1]);return B(function(){i.hasValue=!0,i.value=a},[a]),H(a),a}});var J=d((T,N)=>{"use strict";N.exports=R()});export{D as a,J as b};
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import{a as Be}from"./chunk.675b635d9462.js";import{b as We}from"./chunk.28a4d8aab337.js";import{a as Xe,b as Je}from"./chunk.56d473a1587d.js";import{b as Ye}from"./chunk.8442124f6802.js";import{a as he}from"./chunk.a6d755a9789f.js";import{a as Ke,b as Ne,c as Q}from"./chunk.965b76812604.js";import{a as ue}from"./chunk.d813fefb410d.js";import{a as ie}from"./chunk.741aec8d1ff9.js";import{A as fe,B as X,C as J,D as U,E as $,F as H,K as Ge,c as B,d as Ve,g as ae,j as Ue,p as _,q as xe,r as _e,s as Ee,t as Pe,x as K,y as Y,z as W}from"./chunk.fd375c54b526.js";var Ae="Sync requested. Waiting for a worker. Sync continues in the background.";function Re(t,e,l){return t===200?`${e} is already available from ${l}.`:`${e}: ${Ae}`}function De(t){return t.status===202?{ok:!0,status:202,data:void 0}:t}var Qe="For proxy sources, packages appear when a client first requests them.";function mt(t,e){return t.sync?.generation!==e.sync?.generation||t.status!==e.status||t.lastPolledAt!==e.lastPolledAt||t.lastSuccessAt!==e.lastSuccessAt||t.lastError!==e.lastError}function Le(t,e){return e.sync&&(e.sync.listing||e.sync.queued+e.sync.running+(e.sync.retrying??0)>0)?"pending":mt(t,e)}function Ze(t,e=typeof document>"u"?void 0:document){let l=Date.now()+6e5,s=!1,a=0,m=!1,o=2e3,h,w=setTimeout(()=>b(),6e5),b=()=>{s=!0,clearTimeout(h),clearTimeout(w),e?.removeEventListener("visibilitychange",S)},S=()=>{e?.hidden&&b()},i=()=>{if(s||e?.hidden||Date.now()>=l||!m&&a>=15){b();return}h=setTimeout(()=>{if(s||e?.hidden||Date.now()>=l){b();return}a++,t().then(g=>{g==="pending"?(a=0,m=!0,o=Math.min(o*2,3e4)):(m=!1,o=2e3),g===!0?b():i()},b)},o)};return e?.addEventListener("visibilitychange",S),i(),b}var R=B(ae(),1);function et({source:t,busy:e,fieldError:l,alert:s,onSubmit:a,onClose:m}){return(0,R.jsx)(K,{open:!0,onOpenChange:o=>{!o&&!e&&m()},children:(0,R.jsxs)(Y,{onCancel:o=>{e&&o.preventDefault()},children:[(0,R.jsxs)(W,{children:[(0,R.jsx)(X,{children:"Add package"}),(0,R.jsxs)(J,{children:["Request a package from ",t.name," for this project."]})]}),(0,R.jsxs)("form",{className:"grid gap-3",onSubmit:o=>{o.preventDefault(),e||a(new FormData(o.currentTarget).get("name")?.toString()??"")},children:[(0,R.jsx)(H,{htmlFor:"add-package-name",children:"Package name"}),(0,R.jsx)($,{id:"add-package-name",name:"name",required:!0,maxLength:428,placeholder:t.ecosystem==="composer"?"vendor/package":"@scope/package",disabled:e,"aria-invalid":l?!0:void 0,"aria-describedby":l?"add-package-error":void 0}),l?(0,R.jsx)("p",{id:"add-package-error",role:"alert",children:l}):null,s?(0,R.jsx)("p",{role:"alert",children:s}):null,(0,R.jsxs)(fe,{children:[(0,R.jsx)(_,{type:"button",variant:"outline",disabled:e,onClick:m,children:"Cancel"}),(0,R.jsx)(_,{type:"submit",disabled:e,children:e?"Requesting\u2026":"Add package"})]})]})]})})}var D=B(Ve(),1);var q=B(Ve(),1);var u=B(ae(),1),tt={github:"GitHub",git:"Git over HTTP(S)",ssh:"Git over SSH"},ft=["github"];function ht(t){return Object.keys(tt).filter(e=>t.includes(e)).map(e=>[e,tt[e]])}var rt={composer:["packagist_proxy","composer_repository","vcs"],npm:["npmjs_proxy","npm_registry","hosted","vcs"]},Ie={packagist_proxy:"https://repo.packagist.org",npmjs_proxy:"https://registry.npmjs.org"},z={packagist_proxy:"Packagist proxy",composer_repository:"Composer repository",vcs:"Git repository",npmjs_proxy:"npmjs proxy",npm_registry:"Private npm registry",hosted:"Hosted repository"},bt={packagist_proxy:"Fetch public Composer packages on demand.",composer_repository:"Import selected packages from Satis, Private Packagist, or another Composer repository.",vcs:"Import a Composer or npm package from the root of a GitHub or Git repository.",npmjs_proxy:"Fetch public npm packages on demand.",npm_registry:"Fetch packages in selected scopes from another npm registry.",hosted:"Reserve private npm package names and publish packages to this broker."},Z={requirePublishApproval:"Require publish approval",name:"Source name",ecosystem:"Ecosystem",type:"Source type",url:"Repository URL",userAgent:"User-Agent override",pollIntervalSeconds:"Sync interval (seconds)",removalPolicy:"When a package disappears upstream",defaultVisibleToNewProjects:"Visible to new projects",retentionDaysOverride:"Archive retention (days)","config/provider":"Repository provider","config/repository":"GitHub repository","config/installationId":"GitHub App installation ID",githubAuthentication:"GitHub authentication","config/packageName":"Package name (optional)","config/refs/branches":"Branches to import","config/refs/tags":"Import tags","config/selection/packages":"Package names (one per line)","config/selection/patterns":"Package patterns (one per line)","config/selection/expandPatterns":"Expand patterns","config/distHosts":"Additional archive hosts","config/mirrorsFallback":"Try repository mirrors if an archive download fails","config/scopes":"Package scopes (one per line)","config/githubToken":"Use GitHub token"},oe={requirePublishApproval:"Choose whether new publishes require approval.",name:"Enter a source name.",ecosystem:"Choose an ecosystem.",type:"Choose a source type.",url:"Enter a valid HTTP or HTTPS URL without credentials, a query, or a fragment.",userAgent:"Enter a valid User-Agent header without line breaks.",pollIntervalSeconds:"Enter a whole number of seconds greater than 0.",removalPolicy:"Choose what happens when a package disappears upstream.",defaultVisibleToNewProjects:"Choose whether this source is visible to new projects.",retentionDaysOverride:"Enter a whole number of days that does not shorten organization retention.","config/provider":"Choose a repository provider this broker supports.","config/repository":"Enter a valid repository for the selected provider: owner/repository for GitHub, or a clone URL for Git.","config/installationId":"Enter a positive whole-number installation ID.",githubAuthentication:"Choose GitHub App or Personal access token.","config/packageName":"Enter a package name matching the source ecosystem.","config/refs/branches":"Enter valid branch names, one per line, without duplicates.","config/refs/tags":"Choose whether to import tags.","config/selection/packages":"Enter valid Composer package names, one per line, without duplicates.","config/selection/patterns":"Enter valid package patterns, such as acme/*, without duplicates.","config/selection/expandPatterns":"Choose whether to expand patterns.","config/distHosts":"Enter hostnames only, one per line, without schemes, paths, or duplicates.","config/mirrorsFallback":"Choose whether to try repository mirrors.","config/scopes":"Enter at least one scope, such as @acme, one per line without duplicates.","config/githubToken":"Save a bearer credential before enabling the GitHub token option."},je={requirePublishApproval:"New versions wait for approval before installation. Versions already held remain held when this setting is turned off.",pollIntervalSeconds:"How often to check for upstream changes. 300 seconds = 5 minutes.",retentionDaysOverride:"Leave blank to use the organization setting. An override can only lengthen retention.","config/distHosts":"One hostname per line. Archive downloads may come from these hosts; the source credential is also sent to them.","config/selection/packages":"Packages matching either list are selected. Empty lists select no packages.","config/scopes":"One scope per line, including @. Only these scopes use this registry. Register @scope/* for each scope before enabling the source.","config/packageName":"Leave blank to use the root manifest name (composer.json or package.json). For npm, this must match the name in package.json.","config/refs/branches":"One branch name per line. Leave blank to import no branches.","config/installationId":"Enter the numeric installation ID for the account that owns this repository."},yt={userAgent:"Use broker default",retentionDaysOverride:"Use organization default","config/selection/packages":"acme/payments","config/selection/patterns":"acme/*","config/scopes":"@acme","config/distHosts":"downloads.example.com","config/packageName":"acme/payments","config/refs/branches":"main","config/installationId":"12345678"};function it(t){let e={};for(let l of t){let s=l.path.replace(/^\/body\//,"").replace(/^\//,""),a=Object.keys(Z).find(m=>s===m||s.startsWith(`${m}/`));a&&(e[a]=oe[a]??"Review this setting.")}return e}function vt(t,e,l,s=null,a=s?ye(s):null){let m={},o=b=>String(t.get(b)??"").trim(),h=(b,S)=>{let i=Number(o(b));(!o(b)||!Number.isSafeInteger(i)||i<S)&&(m[b]=oe[b]??"Review this setting.")};!l&&!o("name")&&(m.name=oe.name),(e==="composer_repository"||e==="npm_registry")&&(!l||o("url")!==String(a?.get("url")??""))&&!o("url")&&(m.url=oe.url),h("pollIntervalSeconds",1),o("retentionDaysOverride")&&h("retentionDaysOverride",0);let w=!a||Object.keys(Z).some(b=>(b.startsWith("config/")||e==="vcs"&&b==="githubAuthentication")&&String(t.get(b)??"")!==String(a.get(b)??""));return ot(s,t)&&(w||t.has("replaceConfig"))&&(t.has("config/provider")||t.has("config/scopes")||t.has("config/selection/packages")||!l)&&(e==="composer_repository"&&!o("config/selection/packages")&&!o("config/selection/patterns")&&(m["config/selection/packages"]="Add at least one package name or pattern"),e==="npm_registry"&&!o("config/scopes")&&(m["config/scopes"]=oe["config/scopes"]),e==="vcs"&&!o("config/repository")&&(m["config/repository"]=oe["config/repository"]),e==="vcs"&&o("config/provider")==="github"&&o("githubAuthentication")!=="token"&&h("config/installationId",1)),m}function Te(t,e){let l=Number(t);if(!t.trim()||!Number.isSafeInteger(l)||l<e)throw new Error("Enter valid whole numbers for the numeric fields.");return l}function nt(t,e,l,s=!0){let a=w=>String(t.get(w)??""),m=w=>t.has(w),o=w=>a(w).split(/\r?\n/).map(b=>b.trim()).filter(Boolean),h={pollIntervalSeconds:Te(a("pollIntervalSeconds"),1),removalPolicy:a("removalPolicy")};if(e==="hosted"&&(h.requirePublishApproval=m("requirePublishApproval")),h.defaultVisibleToNewProjects=m("defaultVisibleToNewProjects"),h.retentionDaysOverride=a("retentionDaysOverride").trim()===""?null:Te(a("retentionDaysOverride"),0),h.userAgent=a("userAgent")||null,e!=="vcs"&&(h.url=a("url")||null),s&&(!l||t.has("config/provider")||t.has("config/scopes")||t.has("config/selection/packages")||e==="packagist_proxy"||e==="npmjs_proxy"))switch(e){case"vcs":h.config={provider:a("config/provider"),repository:a("config/repository"),...a("config/provider")==="github"&&a("githubAuthentication")!=="token"?{installationId:Te(a("config/installationId"),1)}:{},...a("config/packageName")?{packageName:a("config/packageName")}:{},refs:{branches:o("config/refs/branches"),tags:m("config/refs/tags")}};break;case"composer_repository":h.config={selection:{packages:o("config/selection/packages"),patterns:o("config/selection/patterns"),expandPatterns:m("config/selection/expandPatterns")},distHosts:o("config/distHosts"),mirrorsFallback:m("config/mirrorsFallback")};break;case"npm_registry":h.config={scopes:o("config/scopes"),distHosts:o("config/distHosts")};break;case"packagist_proxy":h.config={githubToken:l&&m("config/githubToken")};break;case"hosted":case"npmjs_proxy":h.config={};break}return h}function ot(t,e){return t===null||t.config!==void 0&&t.configComplete!==!1||e.has("replaceConfig")}function kt(t,e,l,s,a=s?ye(s):null){let m=nt(t,l,s!==null,ot(s,t));if(!s)return{name:String(t.get("name")??""),ecosystem:e,type:l,...m};let o=nt(a??ye(s),l,!0,s.config!==void 0&&s.configComplete!==!1);return Object.fromEntries(Object.entries(m).filter(([h,w])=>JSON.stringify(w)!==JSON.stringify(o[h])))}function be(t,e){let l=t?.config;for(let s of e.split("/")){if(typeof l!="object"||l===null)return;l=l[s]}return l}function ye(t){let e=new FormData;for(let l of Object.keys(Z)){let s=l.startsWith("config/")?be(t,l.slice(7)):t[l];typeof s=="boolean"?s&&e.set(l,"on"):Array.isArray(s)?e.set(l,s.join(`
|
|
2
|
+
`)):s!=null&&e.set(l,String(s))}return(t.type==="packagist_proxy"||t.type==="npmjs_proxy")&&e.set("url",Ie[t.type]),e.set("pollIntervalSeconds",String(t.pollIntervalSeconds)),e.set("removalPolicy",t.removalPolicy),e.set("githubAuthentication",t.githubAuthentication??(be(t,"installationId")?"app":"token")),e}function Oe(t){return[...new Set(t.split(/\r?\n/).map(e=>e.trim()).filter(e=>/^@[a-z0-9][a-z0-9._~-]*$/.test(e)))].map(e=>`${e}/*`)}function at(t,e){if(!t)return;let l=Array.from(t.elements).find(a=>(a.getAttribute("name")??"")in e);if(!l)return;let s=l.closest("details");s&&(s.open=!0),l.focus()}function st({source:t,busy:e,errors:l,alert:s,onSubmit:a,onClose:m,vcsProviders:o=ft,initialType:h,initialProvider:w,organization:b=!0}){let[S,i]=(0,q.useState)(t?.ecosystem??(h==="hosted"?"npm":"composer")),[g,L]=(0,q.useState)(t?.type??h??"packagist_proxy"),E=ht(o),C=E[0]?.[0]??"github",[T,ee]=(0,q.useState)(be(t,"provider")??w??C),te=E.some(([p])=>p===T),V=g==="vcs"&&(E.length===0||!te);(0,q.useEffect)(()=>{!t&&!te&&E.length>0&&ee(C)},[t,te,E.length,C]);let[I,n]=(0,q.useState)(t?.githubAuthentication??(t?be(t,"installationId")?"app":"token":"app")),[d,c]=(0,q.useState)(""),f=t?ye(t):null,y=t!==null&&(t.configComplete===!1||t.config===void 0),[v,N]=(0,q.useState)(!1),[re,M]=(0,q.useState)({}),F=(0,q.useRef)(null),P={...l,...re},j=t!==null,x=g==="packagist_proxy"||g==="npmjs_proxy",ge=!V&&(!y||v);(0,q.useEffect)(()=>{at(F.current,l)},[l]);function ne(p){return[je[p]&&`source-${p}-help`,P[p]&&`source-${p}-error`].filter(Boolean).join(" ")||void 0}function Se(p){return(0,u.jsxs)(u.Fragment,{children:[je[p]?(0,u.jsx)("p",{id:`source-${p}-help`,className:"text-sm text-neutral-600",children:je[p]}):null,P[p]?(0,u.jsx)("p",{id:`source-${p}-error`,className:"text-sm text-red-700",children:P[p]}):null]})}function le(p,k,A=Z[p]){return(0,u.jsxs)("div",{className:"grid gap-1",children:[(0,u.jsx)(H,{htmlFor:`source-${p}`,children:A}),k,Se(p)]},p)}function O(p,k={}){let A={id:`source-${p}`,name:p,required:k.required,defaultValue:k.value??f?.get(p)?.toString(),onChange:p==="config/scopes"?ce=>c(ce.currentTarget.value):void 0,placeholder:k.placeholder??yt[p],"aria-invalid":!!P[p],"aria-describedby":ne(p)};return le(p,k.multiline?(0,u.jsx)(Je,{...A,rows:3,className:"w-full rounded-md border border-neutral-300 bg-white px-3 py-2 text-base sm:text-sm"}):(0,u.jsx)($,{...A,className:"h-11 text-base sm:text-sm",type:k.number?"number":"text",inputMode:k.number?"numeric":void 0,min:k.minimum,max:k.number?Number.MAX_SAFE_INTEGER:void 0,step:k.number?1:void 0,maxLength:p==="url"?2048:void 0}),`${k.label??Z[p]}${k.required?" (required)":""}`)}function G(p,k=Z[p],A,ce){return(0,u.jsxs)("div",{className:"grid gap-1",children:[(0,u.jsxs)(H,{className:"flex min-h-11 items-center gap-2",htmlFor:`source-${p}`,children:[(0,u.jsx)("input",{type:"checkbox",id:`source-${p}`,name:p,defaultChecked:t?f?.has(p):ce,onChange:A?Ce=>A(Ce.currentTarget.checked):void 0,"aria-invalid":!!P[p],"aria-describedby":ne(p)}),k]}),Se(p)]},p)}function we(p,k,A,ce,Ce=!1){return(0,u.jsxs)("fieldset",{className:"grid gap-1","aria-describedby":ne(p),"aria-invalid":!!P[p],children:[(0,u.jsx)("legend",{className:"text-sm font-medium",children:Z[p]}),(0,u.jsx)("div",{className:Ce?"flex gap-4":"grid gap-1",children:A.map(([me,gt,ze])=>(0,u.jsxs)("label",{className:"flex min-h-11 cursor-pointer items-center gap-2 py-1",children:[(0,u.jsx)("input",{type:"radio",name:p,value:me,checked:k===me,onChange:()=>ce(me),"aria-invalid":!!P[p],"aria-describedby":ne(p)}),(0,u.jsxs)("span",{children:[(0,u.jsx)("span",{className:"text-sm font-medium",children:gt}),ze?(0,u.jsx)("span",{className:"block text-sm text-neutral-600",children:ze}):null]})]},me))}),Se(p)]})}let pt={packagist_proxy:"Packagist",npmjs_proxy:"npmjs",composer_repository:"Acme Composer",npm_registry:"Acme npm",vcs:"Acme payments",hosted:""}[g];return(0,u.jsx)(K,{open:!0,onOpenChange:p=>{!p&&!e&&m()},children:(0,u.jsxs)(Y,{variant:"source",onCancel:p=>{e&&p.preventDefault()},children:[(0,u.jsxs)(W,{className:"shrink-0 p-6 pr-16",children:[(0,u.jsx)(X,{children:j?"Edit source":"Add source"}),(0,u.jsx)(J,{children:j?`${t.name} \xB7 ${S==="composer"?"Composer":"npm"} \xB7 ${z[g]}. Name, ecosystem and source type cannot be changed.`:"Add an upstream source for this organization or project."})]}),(0,u.jsxs)("form",{noValidate:!0,ref:F,className:"flex min-h-0 min-w-0 flex-1 flex-col",onSubmit:p=>{if(p.preventDefault(),e)return;let k=new FormData(p.currentTarget),A=vt(k,g,j,t,f);if(M(A),Object.keys(A).length){at(F.current,A);return}a(kt(k,S,g,t,f))},onInvalidCapture:p=>{let A=p.target.closest("details");A&&(A.open=!0)},children:[(0,u.jsxs)("div",{className:"min-h-0 flex-1 overflow-y-auto px-6 pb-6",children:[s||Object.keys(P).length?(0,u.jsx)("p",{role:"alert",className:"mb-4 text-sm text-red-700",children:Object.keys(P).length?"Review the highlighted fields.":s}):null,t?(0,u.jsxs)("dl",{className:"detail-list mb-4","aria-label":"Source identity",children:[(0,u.jsx)("dt",{children:"Source ID"}),(0,u.jsx)("dd",{children:(0,u.jsx)(U,{value:t.id,label:"source ID"})}),(0,u.jsx)("dt",{children:"Source URL"}),(0,u.jsx)("dd",{className:"break-all",children:de(t.url)??"No displayable URL"}),(0,u.jsx)("dt",{children:"Credential"}),(0,u.jsx)("dd",{children:t.hasCredential?"credential set \xB7 write-only":"No credential set"}),"attached"in t?(0,u.jsxs)(u.Fragment,{children:[(0,u.jsx)("dt",{children:"Attached to this project"}),(0,u.jsx)("dd",{children:t.attached?"Yes":"No"})]}):null]}):null,(0,u.jsxs)("fieldset",{disabled:e,className:"grid min-w-0 gap-4",children:[j?(0,u.jsx)(u.Fragment,{children:V?(0,u.jsx)("p",{className:"text-sm",children:`Source type: ${z[g]}. This broker cannot change its repository settings.`}):null}):(0,u.jsxs)(u.Fragment,{children:[we("ecosystem",S,[["composer","Composer"],["npm","npm"]],p=>{let k=p;i(k),L(rt[k][0]),c(""),M({})},!0),we("type",g,rt[S].filter(p=>(p!=="vcs"||E.length>0)&&(p!=="hosted"||b)).map(p=>[p,z[p],bt[p]]),p=>{L(p),c(""),ee(C),n("app"),M({})}),O("name",{required:!0,placeholder:pt})]}),x?(0,u.jsxs)("p",{className:"break-words text-sm",children:["Upstream URL: ",Ie[g]]}):null,x?(0,u.jsx)("input",{type:"hidden",name:"url",value:Ie[g]}):null,!x&&g!=="vcs"&&g!=="hosted"?(0,u.jsx)("div",{children:O("url",{required:!j||t.url!==null,value:t?.url??"",label:g==="npm_registry"?"Registry URL":"Repository URL",placeholder:g==="npm_registry"?"https://npm.example.com":"https://composer.example.com"})},`network:${g}`):null,y&&!V?(0,u.jsxs)("div",{className:"grid gap-1",children:[(0,u.jsx)("p",{className:"text-sm text-neutral-600",children:"Some saved settings cannot be displayed. Replace the configuration only if you intend to overwrite all saved type-specific settings."}),G("replaceConfig","Replace type-specific configuration",N)]}):null,ge?(0,u.jsxs)("div",{className:"grid gap-4",children:[g==="vcs"?(0,u.jsxs)(u.Fragment,{children:[le("config/provider",(0,u.jsx)(ie,{id:"source-config/provider",name:"config/provider",value:T,className:"h-11 text-base sm:text-sm","aria-invalid":!!P["config/provider"],"aria-describedby":ne("config/provider"),onChange:p=>ee(p.currentTarget.value),children:E.map(([p,k])=>(0,u.jsx)("option",{value:p,children:k},p))})),(0,u.jsxs)("div",{children:[O("config/repository",{required:!0,label:T==="github"?"GitHub repository":T==="git"?"Git repository URL":"SSH repository",placeholder:T==="github"?"acme/payments":T==="git"?"https://git.example.com/acme/payments.git":"git@git.example.com:acme/payments.git"}),T==="github"?(0,u.jsx)("p",{className:"mt-1 text-sm text-neutral-600",children:"Use owner/repository for GitHub, such as acme/payments."}):null]},T),T==="github"?(0,u.jsxs)(u.Fragment,{children:[j?(0,u.jsxs)(u.Fragment,{children:[le("githubAuthentication",(0,u.jsx)($,{id:"source-githubAuthentication",name:"githubAuthenticationDisplay",className:"h-11 text-base sm:text-sm",value:I==="app"?"GitHub App":"Personal access token",readOnly:!0})),(0,u.jsx)("input",{type:"hidden",name:"githubAuthentication",value:I})]}):we("githubAuthentication",I,[["app","GitHub App","Use an app installation with access to this repository."],["token","Personal access token","Add your token after creating the source."]],p=>n(p)),I==="app"?O("config/installationId",{required:!0,number:!0,minimum:1}):null]}):null]}):null,g==="composer_repository"?(0,u.jsxs)(u.Fragment,{children:[O("config/selection/packages",{multiline:!0}),O("config/selection/patterns",{multiline:!0})]}):null,g==="npm_registry"?(0,u.jsxs)(u.Fragment,{children:[O("config/scopes",{multiline:!0}),j?null:le("registeredPatterns",(0,u.jsx)("textarea",{id:"source-registeredPatterns",name:"registeredPatterns",rows:3,readOnly:!0,value:Oe(d).join(`
|
|
3
|
+
`)}),"Names to register after adding this source")]}):null]},`primary:${g}`):null,g==="hosted"?(0,u.jsx)("p",{className:"text-sm text-neutral-600",children:"npm publishing is available. Register package names, then enable this source. A claim immediately stops the npmjs proxy from serving that name, even while this source is paused. Use an exact lowercase npm name or @scope/*. A scope claim hides public packages in that scope that are not yet cached."}):null,!j&&g!=="hosted"?(0,u.jsx)("p",{className:"text-sm text-neutral-600",children:x?"No credentials are needed to add this proxy.":g==="vcs"&&T==="github"?I==="app"?"After adding this source, save the GitHub App credentials.":"After adding this source, save your GitHub personal access token as a bearer credential.":g==="vcs"&&T==="ssh"?"After adding this source, save an SSH private key and known hosts.":"After adding this source, save its credentials to finish setup."}):null,g==="hosted"&&S==="npm"?G("requirePublishApproval"):null,(0,u.jsxs)("details",{className:"min-w-0",children:[(0,u.jsx)("summary",{className:"min-h-11 cursor-pointer py-3 text-sm font-medium",children:"Advanced settings"}),(0,u.jsxs)("div",{className:"grid gap-4 pt-2",children:[(0,u.jsx)("p",{className:"text-sm text-neutral-600",children:"Optional sync, visibility, retention, and connection settings."}),ge?(0,u.jsxs)("div",{className:"grid gap-4",children:[g==="composer_repository"||g==="npm_registry"?O("config/distHosts",{multiline:!0}):null,g==="composer_repository"?(0,u.jsxs)(u.Fragment,{children:[G("config/mirrorsFallback"),j?G("config/selection/expandPatterns"):null]}):null,g==="vcs"?(0,u.jsxs)(u.Fragment,{children:[O("config/packageName",{placeholder:S==="npm"?"@acme/payments":"acme/payments"}),O("config/refs/branches",{multiline:!0}),G("config/refs/tags",void 0,void 0,!0)]}):null,g==="packagist_proxy"&&j?G("config/githubToken"):null]},`advanced:${g}`):null,g==="packagist_proxy"&&j?(0,u.jsx)("p",{className:"text-sm text-neutral-600",children:"To enable Use GitHub token, save a bearer credential with your GitHub token, then select Use GitHub token and save the source."}):null,O("pollIntervalSeconds",{number:!0,minimum:1,value:t?.pollIntervalSeconds??300}),le("removalPolicy",(0,u.jsxs)(ie,{id:"source-removalPolicy",name:"removalPolicy",className:"h-11 text-base sm:text-sm","aria-invalid":!!P.removalPolicy,"aria-describedby":ne("removalPolicy"),defaultValue:t?.removalPolicy??"flag",children:[(0,u.jsx)("option",{value:"flag",children:"Keep available and mark removed"}),(0,u.jsx)("option",{value:"exclude",children:"Exclude from package resolution"})]})),G("defaultVisibleToNewProjects"),O("retentionDaysOverride",{number:!0,minimum:0}),O("userAgent")]})]})]})]}),(0,u.jsxs)(fe,{className:"shrink-0 border-t border-neutral-200 bg-white px-6 pt-4 pb-[max(1rem,env(safe-area-inset-bottom))]",children:[(0,u.jsx)(_,{className:"min-h-11",type:"button",variant:"outline",disabled:e,onClick:m,children:"Cancel"}),(0,u.jsx)(_,{type:"submit",className:"min-h-11",disabled:e,children:j?"Save source":"Add source"})]})]})]})})}var r=B(ae(),1),$e={http_basic:["username","password"],bearer:["token"],header:["name","value"],query:["param","value"],github_app:["appId","privateKeyPem","webhookSecret"],npm_token:["token"],ssh_key:["privateKeyPem","knownHosts"]},dt=Object.keys($e);function Fe(t,{scope:e,github:l,vcsProviders:s}){switch(t){case"packagist_proxy":return["bearer"];case"npmjs_proxy":case"hosted":return[];case"composer_repository":return["http_basic","bearer","header","query","npm_token"];case"npm_registry":return["npm_token","http_basic","bearer","header"];case"vcs":return l?e==="organization"?["bearer","github_app"]:["bearer"]:["bearer","http_basic","header","npm_token",...s?.includes("ssh")?["ssh_key"]:[]]}}function He(t,e){return{scope:t.projectId===null?"organization":"project",github:t.githubAuthentication!==void 0,vcsProviders:e}}function ve(t){return["packagist_proxy","npmjs_proxy","npm_registry"].includes(t.type)&&"attached"in t&&t.attached===!0}function St(t){if(t.type==="composer_repository")return"http_basic";if(t.type==="npm_registry")return"npm_token";if(t.type==="vcs"){let e=t.config;if(e?.provider==="ssh")return"ssh_key";if(e?.provider==="github"&&e.installationId!==void 0)return"github_app"}return"bearer"}function se(t){return["packagist_proxy","npmjs_proxy"].includes(t.type)}var ke="An organization admin must enable this source.",Me="Register package names, then enable the source.";function wt(t,e){let l=t?.config;return t?.type!=="npm_registry"||!Array.isArray(l?.scopes)?[]:Oe(l.scopes.join(`
|
|
4
|
+
`)).filter(s=>!e.includes(s))}function de(t){if(t===null)return null;try{let e=new URL(t);return["https:","http:","ssh:","git:"].includes(e.protocol)?(e.username="",e.password="",e.search="",e.hash="",e.toString()):null}catch{return null}}function Ct(t,e,l=()=>new Date().toISOString()){let{client:s}=t,a={ownership:"organization",editor:null,fieldErrors:{},formError:null,available:[],availableNext:null,availableLoading:!1,availableError:!1,items:[],next:null,loading:!0,listError:!1,settingsVersion:0,vcsProviders:void 0,busy:!1,error:null,notice:null,createdSource:null,credentialSource:null,credentialVersion:0,credentialKind:"bearer",credentialKinds:dt,packageSource:null,packageFieldError:null,packageAlert:null,savedCredential:null,names:null,preview:null,order:[],etag:null,canEnableProjectSource:!1,canWriteSources:!1,enableDenied:[],enableConflicts:[]},m=new Set,o=n=>{a={...a,...n};for(let d of m)d()},h,w=()=>{},b=0,S=0,i=0,g=0,L=0;function E(n,d=!1){return n.ok?!1:(n.code==="reauth_required"?(t.requireReauth(d?{method:n.request.method,path:n.request.path}:n.request,{credential:d,secretFields:[]}),o({enableDenied:[],error:d?"Reauthenticate, then enter the credential again.":"Reauthentication is required."})):n.code==="claim_overlap"?o({error:"Another source already claims this package name or scope."}):n.code==="name_public"?o({error:"This name is already available from a public registry."}):n.code==="name_public_unverified"?o({error:"The public registry could not be checked. Try registering the name again later."}):o({error:"The request could not be saved or loaded. Refresh and try again."}),!0)}async function C(n=!1){if(n&&(a.loading||a.next===null))return;let d=++S,c=n?a.next:null,f=a.etag;++L,o({loading:!0,listError:!1,error:null,etag:null,preview:null,order:[],enableDenied:[],enableConflicts:[],notice:null});let y={limit:"100",...c===null?{}:{after:c}},[v,N]=await Promise.all([e!==null||a.ownership!=="organization"?h??=s.request("get","/_pb/me/permissions").then(x=>(x.ok||(h=void 0),x)):null,e===null?s.request("get","/_pb/sources",{query:{...y,...a.ownership==="organization"?{}:{ownership:a.ownership}}}):s.request("get","/_pb/projects/{project}/sources",{params:{project:e},query:y})]);if(d!==S)return;let re=!N.ok&&N.code==="reauth_required";if(v&&!v.ok&&!re&&(v.status!==403||v.code==="reauth_required")&&E(v),E(N)||!N.ok){o({loading:!1,listError:!0});return}o({canEnableProjectSource:v?.ok===!0&&v.data.organization.includes("org:sources:write")});let M=Be(N,"etag")??null;if(e!==null&&n&&M!==f){await C();return}let F=N.data.items.map(x=>({...x,url:de(x.url)})),P=n?[...a.items,...F]:F,j=P.flatMap(x=>"attached"in x&&x.attached===!0&&"precedence"in x&&typeof x.precedence=="number"?[{id:x.id,precedence:x.precedence}]:[]);o({items:P,settingsVersion:a.settingsVersion+1,next:N.data.next,vcsProviders:N.data.vcsProviders,loading:!1,etag:M,order:j.sort((x,ge)=>x.precedence-ge.precedence).map(({id:x})=>x)})}async function T(n=!1){if(e===null||n&&(a.availableLoading||a.availableNext===null))return;let d=++i,c=n?a.availableNext:null;o({availableLoading:!0,availableError:!1});let f=await s.request("get","/_pb/sources",{query:{limit:"100",...c===null?{}:{after:c}}});if(d!==i)return;if(!f.ok){o({available:[],availableNext:null,availableLoading:!1,availableError:!0});return}let y=f.data.items.map(v=>({...v,attached:!1,url:de(v.url)}));o({available:n?[...a.available,...y]:y,availableNext:f.data.next,availableLoading:!1})}async function ee(n){for(;!a.items.some(d=>d.id===n)&&a.next!==null&&!a.listError;)await C(!0);return a.items.find(d=>d.id===n)}async function te(n,d){let c=await ee(n);if(c&&o({createdSource:n,notice:`Next steps for ${c.name}`}),c&&!se(c)&&c.type!=="hosted"){let f=Fe(c.type,He(c,a.vcsProviders)),y=d?St(d):c.githubAuthentication==="app"?"github_app":f[0];o({credentialSource:n,credentialVersion:a.credentialVersion+1,credentialKinds:f,credentialKind:y!==void 0&&f.includes(y)?y:f[0]})}}async function V(n,d=!1){let c=a.names;if(d||o({credentialSource:null,error:null}),d&&(c?.source!==n||c.next===null))return;let f=++g,y=d?c?.next:null,v=await s.request("get","/_pb/sources/{source}/names",{params:{source:n},query:{limit:"100",...y==null?{}:{after:y}}});f!==g||E(v)||!v.ok||o({names:{...v.data,source:n,items:d?[...c.items,...v.data.items]:v.data.items}})}async function I(n,d,c=()=>!1){if(!a.busy){o({busy:!0,error:null,notice:null});try{let f=await n();!c(f)&&!E(f)&&await d()}finally{o({busy:!1})}}}return{project:e,dispose(){++b,w()},snapshot:()=>a,enableNeedsAdmin(n){return n.projectId!==null&&(!a.canEnableProjectSource||a.enableDenied.includes(n.id))},subscribe(n){return m.add(n),()=>{m.delete(n)}},load:C,async setOwnership(n){e!==null||a.busy||(o({ownership:n,items:[],next:null}),await C())},loadAvailable:T,names:V,openEditor(n=null){a.busy||n&&e!==null&&n.projectId===null||o({editor:n??"create",fieldErrors:{},formError:null,error:null,credentialSource:null,savedCredential:null})},closeEditor(){a.busy||o({editor:null,fieldErrors:{},formError:null})},async saveSource(n){if(a.busy||a.editor===null)return;let d=a.editor;if(d!=="create"&&Object.keys(n).length===0){o({editor:null,fieldErrors:{},formError:null});return}o({busy:!0,error:null,formError:null,fieldErrors:{}});try{let c=d==="create"?e===null?await s.request("post","/_pb/sources",{body:n}):await s.request("post","/_pb/projects/{project}/sources",{params:{project:e},body:n}):e===null?await s.request("patch","/_pb/sources/{source}",{params:{source:d.id},headers:{"If-Match":`"r${d.revision}"`},body:n}):await s.request("patch","/_pb/projects/{project}/sources/{source}",{params:{project:e,source:d.id},headers:{"If-Match":`"r${d.revision}"`},body:n});if(!c.ok){E(c),c.status===412&&o({error:"This source changed while you were editing. Reload the latest settings before saving."}),o({fieldErrors:it(c.details),formError:a.error});return}o({editor:null,fieldErrors:{},formError:null,...d==="create"&&e===null&&a.ownership==="project"?{ownership:"organization"}:{}}),await C(),d==="create"&&c.data&&"id"in c.data&&await te(c.data.id,n)}finally{o({busy:!1})}},attachment(n,d){return e===null?Promise.resolve():I(()=>d?s.request("put","/_pb/projects/{project}/sources/{source}/attachment",{params:{project:e,source:n},body:{}}):s.request("delete","/_pb/projects/{project}/sources/{source}/attachment",{params:{project:e,source:n}}),()=>C())},async replayed(n){let d=e===null?"/_pb/sources":`/_pb/projects/${encodeURIComponent(e)}/sources`,c=/^\/_pb\/sources\/[^/]+\/names(?:\/[^/]+)?$/.test(n.path),f=/^\/_pb\/sources\/([^/]+)\/enable$/.exec(n.path);if(n.path!==d&&!n.path.startsWith(`${d}/`)&&!c&&!f)return;let y=a.names?.source;o({enableDenied:[],enableConflicts:[]}),n.ok&&o({editor:null,fieldErrors:{},formError:null,...n.createdSourceId&&e===null&&a.ownership==="project"?{ownership:"organization"}:{}}),await C(),f&&!n.ok&&(n.status===403&&n.code==="forbidden"&&a.items.some(v=>v.id===f[1]&&v.projectId!==null)?o({enableDenied:[f[1]],notice:ke}):n.status===409&&n.code==="conflict"?o({enableConflicts:[f[1]],notice:Me}):o({error:"The request could not be saved or loaded. Refresh and try again."})),n.ok&&n.createdSourceId&&await te(n.createdSourceId),y!==void 0&&await V(y)},moveSource(n,d){if(a.loading||a.busy||a.next!==null)return;let c=[...a.order],f=c.indexOf(n),y=f+d;f<0||y<0||y>=c.length||([c[f],c[y]]=[c[y],c[f]],o({order:c}))},async saveOrder(){if(e===null||a.loading||a.busy||a.next!==null||a.etag===null)return;let n=a.etag,d=[...a.order];o({busy:!0,error:null,preview:null}),++L;try{let c=await s.request("put","/_pb/projects/{project}/sources/order",{params:{project:e},headers:{"If-Match":n},body:{sourceIds:d}});!c.ok&&c.status===412?(await C(),o({error:"Source ordering changed. Review the reloaded list before saving again."})):E(c)||await C()}finally{o({busy:!1})}},closeCredential(){a.busy||o({credentialSource:null})},closeNames(){a.busy||(++g,o({names:null}))},chooseCredential(n){if(a.busy)return;let d=a.items.find(f=>f.id===n),c=d?Fe(d.type,He(d,a.vcsProviders)):["bearer"];c.length!==0&&(++g,o({credentialSource:n,names:null,savedCredential:null,credentialVersion:a.credentialVersion+1,credentialKind:d?.githubAuthentication==="app"&&c.includes("github_app")?"github_app":c[0],credentialKinds:c,error:null}))},openPackage(n){a.busy||e===null||!ve(n)||n.status==="paused"||o({packageSource:n,packageFieldError:null,packageAlert:null,notice:null})},closePackage(){a.busy||o({packageSource:null,packageFieldError:null,packageAlert:null})},async addPackage(n){let d=a.packageSource;if(!(a.busy||e===null||!d||!ve(d))){if(n=n.trim(),!n||n.length>428){o({packageFieldError:"Enter a package name of 1 to 428 characters."});return}o({busy:!0,packageFieldError:null,packageAlert:null,notice:null});try{let c=await s.request("post","/_pb/projects/{project}/sources/{source}/packages",{params:{project:e,source:d.id},body:{name:n}});c.ok?o({packageSource:null,notice:c.status===202?Re(202,c.data.name,d.name):Re(200,c.data.name,d.name)}):c.status===400&&c.code==="invalid_request"?o({packageFieldError:"Enter a valid package name for this source."}):c.code==="package_not_found"?o({packageAlert:"Not found upstream. Check the package name or use another source."}):c.status===400?o({packageFieldError:"This source does not support that package. Check the name or use another source."}):c.code==="forbidden"?o({packageAlert:"You do not have permission to add packages to this project."}):c.status===502?o({packageAlert:"The upstream registry refused or failed the request. Check the source credential or try again later."}):c.status===404?o({packageAlert:"The package or attached source could not be found. Check the name and refresh sources."}):c.status===503?o({packageAlert:"Package requests are temporarily unavailable. Try again shortly."}):c.status===409?o({packageAlert:"This source is paused. Enable it before adding a package."}):(E(c),o({packageAlert:a.error,error:null}))}finally{o({busy:!1})}}},async credential(n,d,c){if(!a.busy){o({busy:!0,error:null,credentialSource:n,credentialVersion:a.credentialVersion+1,savedCredential:null});try{let f=e===null?await s.request("put","/_pb/sources/{source}/credential",{params:{source:n},body:{kind:d,material:c}}):await s.request("put","/_pb/projects/{project}/sources/{source}/credential",{params:{project:e,source:n},body:{kind:d,material:c}});E(f,!0)||o({savedCredential:{source:n,at:l()},notice:"Credential set.",items:a.items.map(y=>y.id===n?{...y,hasCredential:!0}:y)})}finally{o({busy:!1})}}},edit(n,d,c){if(!Number.isSafeInteger(d)||d<=0)return o({error:"Polling interval must be a positive whole number."}),Promise.resolve();let f=a.items.find(N=>N.id===n)?.revision;if(f===void 0)return o({error:"Reload sources before saving."}),Promise.resolve();let y={"If-Match":`"r${f}"`},v={pollIntervalSeconds:d,removalPolicy:c};return I(()=>e===null?s.request("patch","/_pb/sources/{source}",{params:{source:n},body:v,headers:y}):s.request("patch","/_pb/projects/{project}/sources/{source}",{params:{project:e,source:n},body:v,headers:y}),()=>C())},async loadMutationPermissions(){let n=e===null?await s.request("get","/_pb/me/permissions"):await s.request("get","/_pb/projects/{project}/permissions",{params:{project:e}});o({canWriteSources:n.ok&&("organization"in n.data?n.data.organization.includes("org:sources:write"):n.data.project.includes("project:sources:write"))})},syncNow(n){if(a.busy||n.status==="paused"||e!==null&&n.projectId===null)return Promise.resolve();w();let d=++b;return I(()=>e===null?s.request("post","/_pb/sources/{source}/sync",{params:{source:n.id}}).then(De):s.request("post","/_pb/projects/{project}/sources/{source}/sync",{params:{project:e,source:n.id}}).then(De),async()=>{if(d!==b)return;let c=async()=>{let y=S,v=a.ownership,N=null;do{let re={limit:"100",...N===null?{}:{after:N}},M=e===null?await s.request("get","/_pb/sources",{query:{...re,...v==="organization"?{}:{ownership:v}}}):await s.request("get","/_pb/projects/{project}/sources",{params:{project:e},query:re});if(d!==b||y!==S||!M.ok)return!0;let F=M.data.items.find(P=>P.id===n.id);if(F)return o({items:a.items.map(P=>P.id===n.id?{...F,url:de(F.url)}:P)}),Le(n,F);N=M.data.next}while(N!==null);return!0},f;if(a.loading&&a.items.length===0){await C();let y=await ee(n.id);f=a.listError||!y||Le(n,y)}else f=await c();d===b&&(o({notice:Ae}),f!==!0&&d===b&&(w=Ze(c)))})},async togglePause(n){if(e!==null&&n.projectId===null)return;if(n.status==="paused"&&!se(n)){if(a.busy||n.projectId!==null&&(!a.canEnableProjectSource||a.enableDenied.includes(n.id)))return;o({enableConflicts:a.enableConflicts.filter(c=>c!==n.id)}),await I(()=>s.request("post","/_pb/sources/{source}/enable",{params:{source:n.id}}),()=>C(),c=>n.projectId!==null&&!c.ok&&c.status===403&&c.code==="forbidden"?(o({enableDenied:[...new Set([...a.enableDenied,n.id])],notice:ke}),!0):!c.ok&&c.status===409&&c.code==="conflict"?(o({enableConflicts:[...new Set([...a.enableConflicts,n.id])],notice:Me}),!0):!1);return}let d=n.status==="paused"?"resume":"pause";return I(()=>e===null?s.request("post",`/_pb/sources/{source}/${d}`,{params:{source:n.id}}):s.request("post",`/_pb/projects/{project}/sources/{source}/${d}`,{params:{project:e,source:n.id}}),()=>C())},addName(n,d){let c=a.items.find(f=>f.id===n)?.ecosystem==="npm"?214:50;return d.length===0||d.length>c||!/^[a-z0-9._~@!/*-]+$/.test(d)?(o({error:`Enter a registered pattern of 1 to ${c} supported characters.`}),Promise.resolve()):I(()=>s.request("post","/_pb/sources/{source}/names",{params:{source:n},body:{pattern:d}}),()=>V(n))},removeName(n,d){return I(()=>s.request("delete","/_pb/sources/{source}/names/{name}",{params:{source:n,name:d}}),async()=>{await V(n),await C()})},async resolve(n){let d=++L;if(o({preview:null,error:null}),e===null||n.length===0||n.length>214){o({error:`Choose a project and enter a package name of 1 to ${214} characters.`});return}let c=await s.request("get","/_pb/projects/{project}/resolve",{params:{project:e},query:{name:n}});d===L&&!E(c)&&c.ok&&o({preview:c.data})}}}function xt(t,e,l){let s=l.elements.namedItem("kind")?.value,a=dt.includes(s)?$e[s]:null,m=a===null?null:JSON.stringify(Object.fromEntries(a.map(o=>[o,l.elements.namedItem(o)?.value??""])));return l.reset(),m===null?Promise.resolve():t.credential(e,s,m)}function _t({kind:t,busy:e}){return(0,r.jsx)(r.Fragment,{children:$e[t].map(l=>(0,r.jsxs)("div",{children:[(0,r.jsx)(H,{htmlFor:`credential-${l}`,children:l}),(0,r.jsx)($,{id:`credential-${l}`,name:l,type:"password",autoComplete:"off",defaultValue:"",maxLength:16384,required:!0,disabled:e})]},l))})}function Et({model:t,source:e,busy:l,initialKind:s,kinds:a}){let[m,o]=(0,D.useState)(s);return(0,r.jsxs)("form",{className:"grid gap-3",autoComplete:"off",onSubmit:h=>{h.preventDefault(),!l&&xt(t,e,h.currentTarget)},children:[(0,r.jsx)(H,{htmlFor:"credential-kind",children:"Credential kind"}),(0,r.jsx)(ie,{id:"credential-kind",name:"kind",value:m,disabled:l,onChange:h=>o(h.currentTarget.value),children:a.map(h=>(0,r.jsx)("option",{value:h,children:h},h))}),(0,r.jsx)(_t,{kind:m,busy:l},m),(0,r.jsx)(_,{type:"submit",className:"w-fit",disabled:l,children:"Save credential"})]})}function lt(t,e){return new FormData(t).get(e)?.toString()??""}var qe={network:"Network failure",timeout:"Sync timed out",http_error:"HTTP error",unauthorized:"Authorization failed",rate_limited:"Rate limited",not_found:"Not found",invalid_response:"Invalid response",tag_limit_exceeded:"Tag limit exceeded",mass_absence:"Mass package absence",too_large:"Response too large",policy_denied:"Policy denied",credential_unavailable:"Credential unavailable",internal:"Internal error",name_mismatch:"Package name differs from configuration",version_mismatch:"Manifest version differs from tag",invalid_manifest:"Invalid package manifest",unsupported_files_pattern:"Unsupported package file pattern",invalid_packlist:"Package files could not be packed",invalid_tarball:"Invalid repository archive",archive_changed:"Repository archive changed during packing"};function Pt({source:t}){let e=t.lastError!==null&&Object.hasOwn(qe,t.lastError)?qe[t.lastError]:null;return(0,r.jsxs)("div",{className:"grid gap-1 text-sm",children:[(0,r.jsxs)("p",{children:["Last listing: ",(0,r.jsx)(ue,{value:t.lastSuccessAt,fallback:"Never"})]}),(0,r.jsxs)("p",{children:["Last listing error:"," ",t.lastError===null?"None":(0,r.jsxs)(r.Fragment,{children:[e&&`${e} \xB7 `,(0,r.jsx)("code",{children:t.lastError})]})]}),t.sync&&(0,r.jsxs)(r.Fragment,{children:[(0,r.jsxs)("p",{children:["Latest sync: ",t.sync.queued," queued \xB7 ",t.sync.running," running \xB7"," ",t.sync.retrying," retrying \xB7 ",t.sync.failed," failed \xB7 ",t.sync.completed," ","completed"]}),t.sync.errors.slice(0,3).map(({code:l,count:s})=>(0,r.jsxs)("p",{children:[qe[l]," \xB7 ",(0,r.jsx)("code",{children:l}),": ",s]},l))]}),se(t)?(0,r.jsx)("p",{children:Qe}):null,(0,r.jsxs)("p",{children:["Next poll: ",(0,r.jsx)(ue,{value:t.nextPollAt,fallback:"None"})]})]})}function Nt({source:t,model:e,busy:l}){let[s,a]=(0,D.useState)(null);(0,D.useEffect)(()=>{s&&(s.id!==t.id||s.status!==t.status)&&a(null)},[s,t.id,t.status]);let m=e.project===null?t.projectId===null:t.projectId!==null,o=e.project===null&&t.projectId!==null,h=(m||o)&&t.status==="paused"&&!se(t)&&e.enableNeedsAdmin(t),w=e.snapshot().enableConflicts.includes(t.id),b=`source-actions-note-${t.id}`,S=!m&&!o?"Manage this organization source in organization scope.":[h&&ke,w&&Me].filter(Boolean).join(" "),i=m?[{id:"edit",label:"Edit",disabled:l,onSelect:()=>e.openEditor(t)},...e.snapshot().canWriteSources&&t.type!=="hosted"?[{id:"sync",label:"Sync now",disabled:l||t.status==="paused",...t.status==="paused"?{describedBy:`sync-paused-${t.id}`}:{},onSelect:()=>{e.syncNow(t)}}]:[]]:[],g=[];return m||o?(o&&(t.status!=="paused"||se(t))||g.push(t.status==="paused"?{id:"enable",label:"Enable",disabled:l||h,...h||w?{describedBy:b}:{},onSelect:()=>{e.togglePause(t)}}:{id:"pause",label:"Pause source\u2026",disabled:l,onSelect:()=>a(t)}),m&&Fe(t.type,He(t,e.snapshot().vcsProviders)).length>0&&g.push({id:"credential",label:t.type==="packagist_proxy"?"Add GitHub token (optional)":"Set credential",disabled:l,onSelect:()=>e.chooseCredential(t.id)})):g.push({id:"manage",label:"Manage source",disabled:!0,describedBy:b,onSelect:()=>{}}),e.project!==null&&e.snapshot().canWriteSources&&ve(t)&&g.push({id:"add-package",label:"Add package",disabled:l||t.status==="paused",...t.status==="paused"?{describedBy:`add-package-paused-${t.id}`}:{},onSelect:()=>e.openPackage(t)}),g.push({id:"names",label:"Registered names",disabled:l,onSelect:()=>{e.names(t.id)}}),(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(Xe,{entityLabel:t.name,actions:i,overflow:g}),m&&t.status==="paused"?(0,r.jsx)("p",{id:`sync-paused-${t.id}`,children:"Enable before syncing."}):null,e.project!==null&&ve(t)&&t.status==="paused"?(0,r.jsx)("p",{id:`add-package-paused-${t.id}`,children:"Enable before adding a package."}):null,S?(0,r.jsx)("p",{id:b,children:S}):null,(0,r.jsx)(he,{action:"Pause",target:`${t.name} (${t.id})`,scope:e.project===null?"Organization":`Project: ${e.project}`,description:"Pausing this source stops it from resolving packages in this scope. You can enable it again later.",disabled:l,open:s?.id===t.id&&s.status===t.status&&t.status!=="paused",onOpenChange:L=>{L||a(null)},hideTrigger:!0,onConfirm:()=>{e.togglePause(t)}})]})}function At(t,e){return t.filter(l=>l.name.toLowerCase().includes(e.q.toLowerCase())&&(!e.type||l.type===e.type)&&(!e.scope||(e.scope==="organization"?l.projectId===null:l.projectId!==null)))}function Rt({model:t}){let e=(0,D.useSyncExternalStore)(t.subscribe,t.snapshot,t.snapshot),[l,s]=(0,D.useState)({q:"",type:"",scope:""}),a=!!(l.q||l.type||l.scope),m=e.items.find(i=>i.id===e.createdSource),o=(0,D.useMemo)(()=>{let i=e.names;return i===null?[]:wt(e.items.find(g=>g.id===i.source),i.items.map(g=>g.pattern))},[e.items,e.names]),h=!e.loading&&!e.listError&&e.next===null,w=e.items.find(i=>i.id===e.credentialSource)?.type==="packagist_proxy",b=[...e.items,...h?e.available.filter(i=>!e.items.some(g=>g.id===i.id)):[]],S=At(b,l).sort((i,g)=>{let L=E=>{let C=e.order.indexOf(E);return C<0?1/0:C};return L(i.id)-L(g.id)});return(0,r.jsxs)("section",{"aria-labelledby":"page-heading",className:"grid gap-6",children:[(0,r.jsxs)("div",{className:"flex flex-wrap items-center justify-between gap-3",children:[(0,r.jsx)("h1",{tabIndex:-1,id:"page-heading",className:"text-xl font-semibold",children:"Sources"}),(0,r.jsx)(_,{type:"button",disabled:e.busy,onClick:()=>t.openEditor(),children:"Add source"})]}),e.editor!==null?(0,r.jsx)(st,{organization:t.project===null,source:e.editor==="create"?null:e.editor,busy:e.busy,errors:e.fieldErrors,alert:e.formError,onSubmit:i=>{e.editor==="create"&&s({q:"",type:"",scope:""}),t.saveSource(i)},onClose:()=>t.closeEditor(),vcsProviders:e.vcsProviders,initialType:typeof window<"u"&&new URLSearchParams(window.location.hash.split("?")[1]).get("create")==="vcs"?"vcs":void 0,initialProvider:typeof window<"u"&&new URLSearchParams(window.location.hash.split("?")[1]).get("provider")==="github"?"github":void 0}):null,(0,r.jsx)("p",{className:"text-neutral-600",children:"Upstream registries and private repositories. Attached sources are tried in precedence order."}),t.project===null?(0,r.jsxs)(H,{children:["Ownership",(0,r.jsxs)(ie,{value:e.ownership,disabled:e.busy,onChange:i=>{t.setOwnership(i.target.value)},children:[(0,r.jsx)("option",{value:"organization",children:"Organization"}),(0,r.jsx)("option",{value:"project",children:"Project-owned"}),(0,r.jsx)("option",{value:"all",children:"All"})]})]}):null,(0,r.jsx)(We,{values:{...l,scope:l.scope==="organization"?"Organization":l.scope==="project"?"Project":"",type:z[l.type]??""},fields:[{key:"q",label:"Name (loaded sources)"},{key:"type",label:"Type",options:[...new Set(b.map(i=>z[i.type]))].sort()},...t.project===null?[]:[{key:"scope",label:"Source scope",options:["Organization","Project"]}]],onChange:i=>s({q:i.q??"",scope:t.project===null?"":i.scope==="Organization"?"organization":i.scope==="Project"?"project":"",type:Object.keys(z).find(g=>z[g]===i.type)??""})}),(0,r.jsx)("p",{role:"status","aria-live":"polite",children:e.notice}),m?.status==="paused"&&!se(m)?(0,r.jsxs)("p",{children:["Next steps for ",m.name,":"," ",t.enableNeedsAdmin(m)?ke:e.names?.source===m.id&&e.names.items.length>0?"Enable the source.":"Register names, then Enable the source."]}):null,e.error&&!e.listError?(0,r.jsx)(Q,{kind:"error",title:e.error}):null,e.listError?(0,r.jsxs)(Q,{kind:"error",title:"Sources could not be loaded.",children:[e.error?(0,r.jsx)("p",{children:e.error}):null,(0,r.jsx)(_,{type:"button",className:"w-fit",disabled:e.loading||e.busy,onClick:()=>{t.load()},children:"Retry sources"})]}):null,!e.listError&&!e.availableError?(0,r.jsx)(_,{type:"button",className:"w-fit",variant:"outline",disabled:e.loading||e.busy,onClick:()=>{t.load(),t.loadAvailable()},children:"Refresh sources"}):null,t.project!==null&&!h&&e.available.length>0?(0,r.jsx)("p",{className:"text-sm text-neutral-600",children:"Load all project sources before attaching organization sources."}):null,e.availableLoading?(0,r.jsx)(Q,{kind:"loading",title:"Loading organization sources\u2026"}):null,e.availableError?(0,r.jsx)(Q,{kind:"error",title:"Organization sources could not be loaded.",children:(0,r.jsx)(_,{type:"button",className:"w-fit",disabled:e.availableLoading||e.busy,onClick:()=>{t.loadAvailable()},children:"Retry organization sources"})}):null,e.loading?(0,r.jsx)(Q,{kind:"loading",title:"Loading sources\u2026"}):!e.listError&&S.length===0?(0,r.jsx)(Q,{kind:a?"filtered-empty":"empty",title:a?"No sources match these filters.":"No sources."}):null,!e.loading&&!e.listError&&S.length?(0,r.jsxs)(r.Fragment,{children:[(0,r.jsxs)("p",{className:"text-sm text-neutral-600",children:[S.length," sources loaded",a?" matching filters":""]}),(0,r.jsx)(Ke,{label:"Sources in precedence order",items:S,columns:[{key:"name",label:"Source",value:i=>i.name,render:i=>(0,r.jsxs)("div",{className:"grid gap-1",children:[(0,r.jsx)("strong",{children:i.name}),"projectName"in i&&i.projectName!==null?(0,r.jsx)("span",{children:`Project: ${i.projectName}`}):null,(0,r.jsxs)("span",{className:"text-xs text-neutral-600",children:[i.ecosystem==="composer"?"Composer":"npm"," \xB7"," ",z[i.type]]}),(0,r.jsx)(Ye,{status:i.status})]})},{key:"precedence",label:"Precedence",value:i=>e.order.indexOf(i.id)<0?"\u2014":e.order.indexOf(i.id)+1,render:i=>{let g=e.order.indexOf(i.id);return g<0?"\u2014":(0,r.jsxs)("div",{className:"flex flex-wrap items-center gap-1",children:[(0,r.jsx)("strong",{children:g+1}),(0,r.jsx)(_,{type:"button",size:"sm",variant:"ghost","aria-label":`Move up ${i.name}`,disabled:e.busy||e.next!==null||g===0,onClick:()=>t.moveSource(i.id,-1),children:"Move up"}),(0,r.jsx)(_,{type:"button",size:"sm",variant:"ghost","aria-label":`Move down ${i.name}`,disabled:e.busy||e.next!==null||g===e.order.length-1,onClick:()=>t.moveSource(i.id,1),children:"Move down"})]})}},{key:"scope",label:"Attached to",value:i=>i.projectId===null?"Organization source":"Project source",render:i=>(0,r.jsxs)("div",{className:"grid gap-1",children:[(0,r.jsx)("span",{children:i.projectId===null?"Organization source":"Project source"}),t.project===null&&"attachedProjectCount"in i?(0,r.jsx)(Ne,{variant:"secondary",children:`Attached to ${i.attachedProjectCount} projects`}):null,"attached"in i?(0,r.jsx)("span",{className:"text-xs text-neutral-600",children:i.attached?"Attached to this project":"Not attached to this project"}):null]})},{key:"credential",label:"Credentials",value:i=>i.hasCredential?"Set \xB7 write-only":"None",render:i=>i.hasCredential?(0,r.jsx)(Ne,{variant:"outline",children:"Set \xB7 write-only"}):"None"},{key:"sync",label:"Sync status",value:i=>i.lastSuccessAt??"",render:i=>(0,r.jsx)(Pt,{source:i})},{key:"id",label:"Source ID",value:i=>i.id,priority:3,render:i=>(0,r.jsx)(U,{value:i.id,label:"source ID"})},{key:"actions",label:"Actions",value:()=>"",sortable:!1,render:i=>(0,r.jsxs)("div",{className:"flex flex-wrap items-start gap-2",children:[t.project!==null&&"attached"in i?i.attached?(0,r.jsx)(he,{action:"Detach",target:`${i.name} (${i.id})`,scope:`Project: ${t.project}`,description:"Detaching this source stops this project from resolving packages through it. You can attach it again later.",disabled:e.busy,onConfirm:()=>{t.attachment(i.id,!1)}}):(0,r.jsx)(_,{type:"button",size:"sm",variant:"outline",disabled:e.busy,onClick:()=>{t.attachment(i.id,!0)},children:"Attach"}):null,(0,r.jsx)(Nt,{source:i,model:t,busy:e.busy})]})}]})]}):null,e.next!==null?(0,r.jsx)(_,{type:"button",className:"w-fit",disabled:e.loading||e.busy,onClick:()=>{t.load(!0)},children:"Load more sources"}):null,e.availableNext!==null?(0,r.jsx)(_,{type:"button",className:"w-fit",disabled:e.availableLoading||e.busy,onClick:()=>{t.loadAvailable(!0)},children:"Load more organization sources"}):null,e.packageSource!==null?(0,r.jsx)(et,{source:e.packageSource,busy:e.busy,fieldError:e.packageFieldError,alert:e.packageAlert,onSubmit:i=>{t.addPackage(i)},onClose:()=>t.closePackage()},e.packageSource.id):null,e.credentialSource!==null?(0,r.jsx)(K,{open:!0,onOpenChange:i=>{i||t.closeCredential()},children:(0,r.jsxs)(Y,{variant:"source",onCancel:i=>{e.busy&&i.preventDefault()},children:[(0,r.jsxs)(W,{className:"shrink-0 p-6 pr-16",children:[(0,r.jsx)(X,{children:w?"Add GitHub token (optional)":"Set credential"}),(0,r.jsxs)(J,{children:["Credentials are write-only. Save a new credential to rotate a secret.",w?" This optional bearer token is used only for GitHub archive downloads and their rate limits. Enable Use GitHub token in Edit after saving it.":""]})]}),(0,r.jsxs)("div",{className:"grid min-h-0 gap-3 overflow-y-auto px-6 pb-6",children:[(0,r.jsx)(U,{value:e.credentialSource,label:"source ID"}),(0,r.jsx)(Et,{model:t,source:e.credentialSource,initialKind:e.credentialKind,kinds:e.credentialKinds,busy:e.busy},e.credentialVersion),e.error?(0,r.jsx)("p",{role:"alert",children:e.error}):null,e.savedCredential?.source===e.credentialSource?(0,r.jsxs)("p",{children:["credential set \xB7 ",(0,r.jsx)(ue,{value:e.savedCredential.at})]}):null]})]})}):null,e.savedCredential&&e.credentialSource===null?(0,r.jsxs)("p",{children:["credential set \xB7 ",e.savedCredential.source," \xB7"," ",(0,r.jsx)(ue,{value:e.savedCredential.at})]}):null,e.names?(0,r.jsx)(K,{open:!0,onOpenChange:i=>{i||t.closeNames()},children:(0,r.jsxs)(Y,{variant:"source",onCancel:i=>{e.busy&&i.preventDefault()},children:[(0,r.jsxs)(W,{className:"shrink-0 p-6 pr-16",children:[(0,r.jsx)(X,{children:"Registered names"}),(0,r.jsx)(J,{children:"Manage the package patterns registered for this source. For npm, use an exact lowercase name or @scope/*. A scope claim hides public packages in that scope that are not yet cached."})]}),(0,r.jsxs)("div",{className:"grid min-h-0 gap-3 overflow-y-auto px-6 pb-6",children:[e.error?(0,r.jsx)("p",{role:"alert",children:e.error}):null,(0,r.jsx)(U,{value:e.names.source,label:"source ID"}),(0,r.jsx)("ul",{children:e.names.items.map(i=>(0,r.jsxs)("li",{className:"flex items-center gap-3",children:[(0,r.jsx)("span",{children:i.pattern}),(0,r.jsx)(he,{action:`Remove ${i.pattern}`,target:i.pattern,scope:t.project===null?"Organization":`Project: ${t.project}`,description:"Removing this registered pattern can stop the source from resolving matching packages. Add the pattern again to restore it.",disabled:e.busy,onConfirm:()=>{t.removeName(i.sourceId,i.id)}})]},i.id))}),e.names.next!==null?(0,r.jsx)(_,{type:"button",disabled:e.busy,onClick:()=>{t.names(e.names.source,!0)},children:"Load more names"}):null,(0,r.jsxs)("form",{className:"grid gap-3",onSubmit:i=>{if(i.preventDefault(),e.busy)return;let g=i.currentTarget,L=lt(g,"pattern");t.addName(e.names.source,L)},children:[(0,r.jsx)(H,{htmlFor:"registered-pattern",children:"Registered pattern"}),(0,r.jsx)($,{id:"registered-pattern",name:"pattern",maxLength:e.items.find(i=>i.id===e.names?.source)?.ecosystem==="npm"?214:50,required:!0,defaultValue:o[0]??""},`${e.names.source}:${e.names.items.map(i=>i.pattern).join(",")}`),o.map(i=>(0,r.jsxs)("p",{className:"text-sm",children:["Register ",i," before enabling this source."]},i)),(0,r.jsx)(_,{type:"submit",className:"w-fit",disabled:e.busy,children:"Add name"})]})]})]})}):null,t.project!==null&&!e.listError&&e.items.some(i=>"attached"in i&&i.attached)?(0,r.jsxs)(xe,{children:[(0,r.jsx)(_e,{children:(0,r.jsx)(Ee,{children:"Source order"})}),(0,r.jsxs)(Pe,{className:"grid gap-3",children:[(0,r.jsx)("p",{children:"Earlier sources take precedence. Only attached sources are ordered."}),e.next!==null?(0,r.jsx)("p",{children:"Load all sources before changing their order."}):null,(0,r.jsx)(_,{type:"button",className:"w-fit",disabled:e.loading||e.busy||e.next!==null||e.etag===null,onClick:()=>{t.saveOrder()},children:"Save source order"})]})]}):null,t.project!==null?(0,r.jsxs)(xe,{children:[(0,r.jsx)(_e,{children:(0,r.jsx)(Ee,{children:"Who wins"})}),(0,r.jsxs)(Pe,{className:"grid gap-3",children:[(0,r.jsxs)("form",{className:"grid gap-3",onSubmit:i=>{i.preventDefault(),!e.busy&&t.resolve(lt(i.currentTarget,"name"))},children:[(0,r.jsx)(H,{htmlFor:"resolve-name",children:"Package name"}),(0,r.jsx)($,{id:"resolve-name",name:"name",maxLength:214,required:!0}),(0,r.jsx)(_,{type:"submit",className:"w-fit",disabled:e.busy,children:"Preview"})]}),e.preview?(0,r.jsxs)("div",{"aria-live":"polite",children:[(0,r.jsx)("p",{children:e.preview.name}),(0,r.jsxs)("p",{children:["Winning source: ",(0,r.jsx)(U,{value:e.preview.winner,label:"winning source ID"})]}),(0,r.jsx)("ol",{children:e.preview.candidates.map(i=>(0,r.jsxs)("li",{children:[i.sourceName," \xB7"," ",(0,r.jsx)(U,{value:i.sourceId,label:"candidate source ID"})," \xB7"," ",i.eligible?"Eligible":"Ineligible"]},i.sourceId))})]}):null]})]}):null]})}function ct(){if(typeof window>"u")return null;let t=new URLSearchParams(window.location.hash.split("?")[1]??"").get("project");return new URLSearchParams(Ue("sources",{project:t}).split("?")[1]??"").get("project")}function yr(){let t=Ge(),[e,l]=(0,D.useState)(ct);(0,D.useEffect)(()=>{let a=()=>l(ct());return window.addEventListener("hashchange",a),()=>window.removeEventListener("hashchange",a)},[]);let s=(0,D.useMemo)(()=>Ct(t,e),[t,e]);return(0,D.useEffect)(()=>(s.load(),s.loadAvailable(),s.loadMutationPermissions().then(()=>{s.snapshot().canWriteSources&&new URLSearchParams(window.location.hash.split("?")[1]).get("create")==="vcs"&&s.openEditor()}),()=>s.dispose()),[s]),(0,D.useEffect)(()=>t.subscribeReplay?.(a=>{s.replayed(a)}),[t,s]),(0,r.jsx)(Rt,{model:s},e??"organization")}export{Ae as a,Re as b,De as c,Qe as d,z as e,Fe as f,St as g,wt as h,de as i,Ct as j,xt as k,_t as l,qe as m,Nt as n,At as o,Rt as p,yr as q};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{b as p,c as u,d as b,e as m}from"./chunk.d18497920e4d.js";import{c as o,g as i,l as d,o as l,p as s}from"./chunk.fd375c54b526.js";var n=o(i(),1),f="h-auto min-h-10 w-fit max-w-full shrink-0 whitespace-normal break-words py-2 sm:min-h-8 sm:py-1";function y({entityLabel:a}){return(0,n.jsx)(u,{"aria-label":`More actions for ${a}`,className:d(l({size:"sm",variant:"outline"}),f),children:"More"})}function x({entityLabel:a,actions:t,overflow:r=[]}){return(0,n.jsxs)("div",{role:"group","aria-label":`Actions for ${a}`,className:"flex flex-wrap items-center gap-2",children:[t.map(e=>(0,n.jsx)(s,{size:"sm",className:f,variant:e.variant??"outline",disabled:!!e.disabled,"aria-disabled":e.pending||void 0,"aria-busy":e.pending||void 0,"aria-describedby":e.describedBy,"aria-label":`${e.label} ${a}`,onClick:()=>{!e.disabled&&!e.pending&&e.onSelect()},children:e.label},e.id)),r.length>0?(0,n.jsxs)(p,{className:"max-w-full",children:[(0,n.jsx)(y,{entityLabel:a}),(0,n.jsx)(b,{children:r.map(e=>(0,n.jsx)(m,{"data-variant":e.variant??"outline",className:e.variant==="destructive"?"text-red-700":void 0,disabled:!!e.disabled,"aria-disabled":e.pending||void 0,"aria-busy":e.pending||void 0,"aria-describedby":e.describedBy,"aria-label":`${e.label} ${a}`,onClick:w=>{if(e.disabled||e.pending){w.preventDefault();return}e.onSelect()},children:e.label},e.id))})]}):null]})}var g=o(i(),1);function B({onKeyDown:a,...t}){return(0,g.jsx)("textarea",{...t,onKeyDown:r=>{a?.(r),!r.defaultPrevented&&!r.nativeEvent.isComposing&&r.key==="Enter"&&(r.metaKey||r.ctrlKey)&&(r.preventDefault(),r.currentTarget.form?.requestSubmit())}})}export{x as a,B as b};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var A="__Host-pb_csrf",h="/_pb/";var O=["github_credentials_required","ambiguous_trusted_publisher","name_not_claimed","claim_overlap","name_public","name_public_unverified","invalid_request","unauthorized","forbidden","local_auth_disabled","reauth_required","not_found","conflict","duplicate","last_holder","idempotency_mismatch","already_issued","not_approved","precondition_failed","precondition_required","payload_too_large","unsupported_media_type","unavailable","unsupported_package","unsupported_source_kind","package_not_found","source_paused","upstream_refused","bad_gateway","invalid_configuration","endpoint_limit","transport_unavailable"],b=["invalid_type","too_small","too_big","invalid_format","invalid_value","unrecognized_keys","invalid_union","invalid","invalid_json","invalid_encoding","too_deep"],k=["params","query","body"];function P(n,t){return n.ok?n.headers?.[t]:void 0}var R=new Set(["GET","HEAD","OPTIONS"]);function y(n){return n!==null&&typeof n=="object"&&!Array.isArray(n)}function _(n,t){return typeof t=="string"&&n.includes(t)}function K(n){return n.split("/").some(t=>{let e=t.replace(/%2e/gi,".");return e==="."||e===".."})}function D(n,t){if(!n.startsWith(h))return;let e;try{let i=!1;if(e=n.replace(/\{([A-Za-z_][A-Za-z0-9_]*)\}/g,(s,a)=>{let p=t.params?.[a];return p===void 0?(i=!0,""):encodeURIComponent(String(p))}),i)return}catch{return}if(!e.startsWith(h)||/[{}?#\\]/.test(e)||K(e))return;let u=new URLSearchParams;for(let[i,s]of Object.entries(t.query??{}))if(s!==void 0)for(let a of Array.isArray(s)?s:[s])u.append(i,String(a));let r=u.toString();return r===""?e:`${e}?${r}`}function T(n){if(!Array.isArray(n))return[];let t=[];for(let e of n){if(t.length===20)break;!y(e)||typeof e.path!="string"||!_(b,e.code)||t.push({path:e.path,code:e.code,..._(k,e.location)?{location:e.location}:{}})}return t}async function x(n){let t;try{t=await n.json()}catch{return{code:"unknown_error",details:[]}}let e=y(t)?t.error:void 0;return!y(e)||!_(O,e.code)?{code:"unknown_error",details:[]}:{code:e.code,details:T(e.details)}}function E(n){async function t(e,u,r){let i=e.toUpperCase(),s={method:i,path:u,...r.query===void 0?{}:{query:r.query},...r.headers===void 0?{}:{headers:{...r.headers}},...r.idempotencyKey===void 0?{}:{idempotencyKey:r.idempotencyKey},...r.body===void 0?{}:{body:r.body}},a=(d,l,f=[])=>({ok:!1,status:d,code:l,details:f,request:s}),p=D(u,r);if(p===void 0)return a(0,"refused_url");s.path=p.split("?")[0];let c={...r.headers};if(!R.has(i)){c["Content-Type"]="application/json";let d=n.readCookie(A);d!==void 0&&(c["X-CSRF-Token"]=d),r.idempotencyKey!==void 0&&(c["Idempotency-Key"]=r.idempotencyKey)}let o;try{o=await n.fetch(p,{method:i,headers:c,...r.body===void 0?{}:{body:JSON.stringify(r.body)},credentials:"same-origin",redirect:"error"})}catch{return a(0,"network_error")}if(o.ok){let d={};for(let f of["etag","location"]){let m=o.headers.get(f);m!==null&&(d[f]=m)}let l=Object.keys(d).length===0?{}:{headers:d};if(o.status===204)return{ok:!0,status:204,data:void 0,...l};try{return{ok:!0,status:o.status,data:await o.json(),...l}}catch{return a(o.status,"unknown_error")}}let g=await x(o);return a(o.status,g.code,g.details)}return{request:((e,u,r={})=>t(e,u,r))}}export{P as a,E as b};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a as w}from"./chunk.
|
|
1
|
+
import{a as w}from"./chunk.28a4d8aab337.js";import{c as f}from"./chunk.965b76812604.js";import{a as v}from"./chunk.741aec8d1ff9.js";import{E as m,F as c,G as b,c as d,d as S,g,j as h,m as y,n as q,p as l}from"./chunk.fd375c54b526.js";var u=d(S(),1);var r=d(g(),1),p=e=>[...e].some(t=>t.charCodeAt(0)<32||t.charCodeAt(0)===127);function E(e,t){let a=new URLSearchParams(b(e).split("?")[1]),n={project:a.get("project")},o=a.get("status");o!==null&&t.includes(o)&&(n.status=o);let s=a.get("q");s&&!p(s)&&(n.q=s);let i=a.get("after");return i&&!p(i)&&(n.after=i),n}function k(e){let t=e,a=new Set;return{snapshot:()=>t,set(n){t={...t,...n};for(let o of a)o()},subscribe(n){return a.add(n),()=>{a.delete(n)}}}}function C(e){if(e.status===412)return"Changed elsewhere. Reload before trying again.";switch(e.code){case"last_holder":return"The last holder of this role cannot be removed.";case"forbidden":return"You do not have permission for this action.";case"not_found":return"Not found. Reload the current data.";case"invalid_request":return"Check the entered values and try again.";case"duplicate":return"An item with these values already exists.";case"conflict":return"The action conflicts with the current data. Reload and review it.";default:return"The request could not be completed."}}function Q(e,t){return t.ok||t.code!=="reauth_required"?!1:(e.requireReauth(t.request,{credential:!1,secretFields:[]}),!0)}function D(e){return Number.isSafeInteger(e)&&e>0?`"r${e}"`:null}function H(e){e.preventDefault();let t=new FormData(e.currentTarget);return e.currentTarget.reset(),Object.fromEntries([...t].map(([a,n])=>[a,String(n)]))}function V(e){return(0,r.jsxs)(c,{className:"grid gap-1",children:[e.label,(0,r.jsx)(m,{name:e.name,defaultValue:e.value??"",required:e.required??!0})]})}function P(e){return(0,r.jsxs)(r.Fragment,{children:[e.listError?(0,r.jsx)(f,{kind:"error",title:e.notice??"Unable to load this list."}):e.notice?(0,r.jsx)(y,{className:"my-4",children:(0,r.jsx)(q,{children:e.notice})}):null,(0,r.jsx)(l,{type:"button",variant:"outline",className:"my-4",disabled:e.loading||e.busy,onClick:e.reload,children:"Reload"}),e.loading?(0,r.jsx)(f,{kind:"loading",title:"Loading\u2026"}):null]})}function B(e){let t=a=>{window.location.hash=h(e.route,a)};return(0,r.jsx)(w,{chips:[...e.query.q?[{label:"Name prefix",value:e.query.q,onRemove:()=>t({project:e.query.project,...e.query.status?{status:e.query.status}:{}})}]:[],...e.query.status?[{label:e.route==="projects"?"Status":"View",value:e.query.status,onRemove:()=>t({project:e.query.project,...e.query.q?{q:e.query.q}:{}})}]:[]],children:(0,r.jsxs)("form",{className:"my-4 flex flex-wrap items-end gap-3",onSubmit:a=>{a.preventDefault();let n=new FormData(a.currentTarget);t({project:e.query.project,status:String(n.get("status")??""),q:String(n.get("q")??"")})},children:[(0,r.jsx)("div",{children:(0,r.jsxs)(c,{className:"grid gap-1",children:[e.route==="projects"?"Name prefix (filtering loaded projects)":"Name prefix",(0,r.jsx)(m,{name:"q",maxLength:200,defaultValue:e.query.q??""})]})}),(0,r.jsx)("div",{children:(0,r.jsxs)(c,{className:"grid gap-1",children:[e.route==="projects"?"Status":"View",(0,r.jsxs)(v,{name:"status",defaultValue:e.query.status??(e.route==="projects"?"":e.statuses[0]),children:[e.route==="projects"?(0,r.jsx)("option",{value:"",children:"All statuses"}):null,e.statuses.map(a=>(0,r.jsx)("option",{value:a,children:a},a))]})]})}),(0,r.jsx)(l,{type:"submit",children:"Apply filters"}),(0,r.jsx)(l,{type:"button",variant:"outline",onClick:()=>t({project:e.query.project}),children:"Clear filters"}),e.children]})})}function _(e,t,a,n){let[o,s]=(0,u.useState)(()=>typeof window>"u"?`#/${n}`:window.location.hash);return(0,u.useEffect)(()=>{let i=()=>s(window.location.hash);return window.addEventListener("hashchange",i),()=>window.removeEventListener("hashchange",i)},[]),(0,u.useEffect)(()=>(t.load(a(o)),()=>t.dispose()),[t,o,a]),(0,u.useEffect)(()=>e.subscribeReplay?.(i=>{t.replayed(i)}),[e,t]),o}export{E as a,k as b,C as c,Q as d,D as e,H as f,V as g,P as h,B as i,_ as j};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{c as e,g as o,l as r}from"./chunk.
|
|
1
|
+
import{c as e,g as o,l as r}from"./chunk.fd375c54b526.js";var s=e(o(),1);function n({className:t,...l}){return(0,s.jsx)("select",{className:r("h-9 w-full rounded-md border border-neutral-300 bg-white px-3 py-2 text-sm shadow-sm focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-blue-600 disabled:cursor-not-allowed disabled:opacity-50",t),...l})}export{n as a};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var o="pb.notification-draft.v1";function s(){try{sessionStorage.removeItem(o)}catch{}}function r(i,n,t){try{sessionStorage.setItem(o,JSON.stringify({project:i,endpoint:n===null?null:{id:n.id,revision:n.revision},options:{name:t.name,method:t.method,events:[...t.events],packagePattern:t.packagePattern},savedAt:Date.now()}))}catch{}}function d(i){try{let n=sessionStorage.getItem(o);if(sessionStorage.removeItem(o),n===null)return null;let t=JSON.parse(n),e=t.options;return t.project!==i||!Number.isFinite(t.savedAt)||Date.now()<t.savedAt||Date.now()-t.savedAt>6e5||typeof e?.name!="string"||e.name.length>80||!["POST","PUT"].includes(e.method)||typeof e.packagePattern!="string"||e.packagePattern.length>50||!Array.isArray(e.events)||e.events.length===0||e.events.length>5||!e.events.every(a=>/^npm\.package\.(published|released|unpublished|deprecation_changed|dist_tag_changed)$/.test(a))||t.endpoint!==null&&(typeof t.endpoint?.id!="string"||!/^[0-9A-Za-z_-]{1,64}$/.test(t.endpoint.id)||!Number.isSafeInteger(t.endpoint.revision)||t.endpoint.revision<1)?null:{project:i,endpoint:t.endpoint===null?null:{id:t.endpoint.id,revision:t.endpoint.revision},options:{name:e.name,method:e.method,events:[...e.events],packagePattern:e.packagePattern},savedAt:t.savedAt}}catch{return null}}export{s as a,r as b,d as c};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{b as a}from"./chunk.965b76812604.js";import{c as r,g as d}from"./chunk.fd375c54b526.js";var t=r(d(),1),b={active:"Active",archived:"Archived",paused:"Paused",degraded:"Degraded",failing:"Failing",expired:"Expired",revoked:"Revoked",suspended:"Suspended",yanked:"Yanked",quarantined:"Quarantined",tombstoned:"Tombstoned",removed_upstream:"Removed upstream",planned:"Planned",applying:"Applying",failed:"Failed",applied:"Applied",verifying:"Verifying",verified:"Verified",rolled_back:"Rolled back",cancelled:"Cancelled",enabled:"Enabled",disabled:"Disabled",pending:"Waiting",sending:"Sending",delivered:"Delivered"},l={archived:"border-neutral-200 bg-neutral-100 text-neutral-700",paused:"border-neutral-200 bg-neutral-100 text-neutral-700",expired:"border-neutral-200 bg-neutral-100 text-neutral-700",revoked:"border-red-200 bg-red-50 text-red-800",suspended:"border-red-200 bg-red-50 text-red-800",degraded:"border-amber-300 bg-amber-50 text-amber-900",failing:"border-red-200 bg-red-50 text-red-800",yanked:"border-red-200 bg-red-50 text-red-800",active:"border-emerald-200 bg-emerald-50 text-emerald-800",applied:"border-emerald-200 bg-emerald-50 text-emerald-800",verified:"border-emerald-200 bg-emerald-50 text-emerald-800",quarantined:"border-amber-300 bg-amber-50 text-amber-900",removed_upstream:"border-amber-300 bg-amber-50 text-amber-900",applying:"border-amber-300 bg-amber-50 text-amber-900",verifying:"border-amber-300 bg-amber-50 text-amber-900",tombstoned:"border-red-200 bg-red-50 text-red-800",failed:"border-red-200 bg-red-50 text-red-800",planned:"border-blue-200 bg-blue-50 text-blue-800",rolled_back:"border-neutral-200 bg-neutral-100 text-neutral-700",cancelled:"border-neutral-200 bg-neutral-100 text-neutral-700",enabled:"border-emerald-200 bg-emerald-50 text-emerald-800",disabled:"border-neutral-200 bg-neutral-100 text-neutral-700",pending:"border-blue-200 bg-blue-50 text-blue-800",sending:"border-amber-300 bg-amber-50 text-amber-900",delivered:"border-emerald-200 bg-emerald-50 text-emerald-800"};function i({status:e}){return(0,t.jsx)(a,{variant:"outline",className:`w-fit whitespace-nowrap ${l[e]}`,children:b[e]})}export{b as a,i as b};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{
|
|
1
|
+
import{b as Ko}from"./chunk.3fcd6998795a.js";import{c as F,d as Y,g as L,k as We,l as D}from"./chunk.fd375c54b526.js";var qo=F(Y(),1);var Xe=F(Y(),1);function Wo(e){return Xo(e)||typeof e=="function"||Yo(e)}function Xo(e){return typeof e=="function"&&(()=>{let t=Object.getPrototypeOf(e);return t.prototype&&t.prototype.isReactComponent})()}function Yo(e){return typeof e=="object"&&typeof e.$$typeof=="symbol"&&["react.memo","react.forward_ref"].includes(e.$$typeof.description)}function J(e,t){return e==null?null:Wo(e)?Xe.default.createElement(e,t):e}function Ye(e){if("cell"in e&&e.cell){let t=e.cell,o=t.column.columnDef,n=t,r=o;return n.getIsAggregated?.()?J(r.aggregatedCell??o.cell,t.getContext()):n.getIsPlaceholder?.()?null:J(o.cell,t.getContext())}return"header"in e&&e.header?J(e.header.column.columnDef.header,e.header.getContext()):"footer"in e&&e.footer?J(e.footer.column.columnDef.footer,e.footer.getContext()):null}function Je({update:e,notify:t,unwatched:o}){return{link:n,unlink:r,propagate:l,checkDirty:s,shallowPropagate:u};function n(i,c,g){let d=c.depsTail;if(d!==void 0&&d.dep===i)return;let f=d!==void 0?d.nextDep:c.deps;if(f!==void 0&&f.dep===i){f.version=g,c.depsTail=f;return}let m=i.subsTail;if(m!==void 0&&m.version===g&&m.sub===c)return;let w=c.depsTail=i.subsTail={version:g,dep:i,sub:c,prevDep:d,nextDep:f,prevSub:m,nextSub:void 0};f!==void 0&&(f.prevDep=w),d!==void 0?d.nextDep=w:c.deps=w,m!==void 0?m.nextSub=w:i.subs=w}function r(i,c=i.sub){let g=i.dep,d=i.prevDep,f=i.nextDep,m=i.nextSub,w=i.prevSub;return f!==void 0?f.prevDep=d:c.depsTail=d,d!==void 0?d.nextDep=f:c.deps=f,m!==void 0?m.prevSub=w:g.subsTail=w,w!==void 0?w.nextSub=m:(g.subs=m)===void 0&&o(g),f}function l(i){let c=i.nextSub,g;e:do{let d=i.sub,f=d.flags;if(f&60?f&12?f&4?!(f&48)&&a(i,d)?(d.flags=f|40,f&=1):f=0:d.flags=f&-9|32:f=0:d.flags=f|32,f&2&&t(d),f&1){let m=d.subs;if(m!==void 0){let w=(i=m).nextSub;w!==void 0&&(g={value:c,prev:g},c=w);continue}}if((i=c)!==void 0){c=i.nextSub;continue}for(;g!==void 0;)if(i=g.value,g=g.prev,i!==void 0){c=i.nextSub;continue e}break}while(!0)}function s(i,c){let g,d=0,f=!1;e:do{let m=i.dep,w=m.flags;if(c.flags&16)f=!0;else if((w&17)===17){if(e(m)){let h=m.subs;h.nextSub!==void 0&&u(h),f=!0}}else if((w&33)===33){(i.nextSub!==void 0||i.prevSub!==void 0)&&(g={value:i,prev:g}),i=m.deps,c=m,++d;continue}if(!f){let h=i.nextDep;if(h!==void 0){i=h;continue}}for(;d--;){let h=c.subs,x=h.nextSub!==void 0;if(x?(i=g.value,g=g.prev):i=h,f){if(e(c)){x&&u(h),c=i.sub;continue}f=!1}else c.flags&=-33;c=i.sub;let b=i.nextDep;if(b!==void 0){i=b;continue e}}return f}while(!0)}function u(i){do{let c=i.sub,g=c.flags;(g&48)===32&&(c.flags=g|16,(g&6)===2&&t(c))}while((i=i.nextSub)!==void 0)}function a(i,c){let g=c.depsTail;for(;g!==void 0;){if(g===i)return!0;g=g.prevDep}return!1}}function et(e,t,o){let n=typeof e=="object",r=n?e:void 0;return{next:(n?e.next:e)?.bind(r),error:(n?e.error:t)?.bind(r),complete:(n?e.complete:o)?.bind(r)}}var _e=[],Z=0,{link:Qe,unlink:Jo,propagate:Qo,checkDirty:tt,shallowPropagate:Ze}=Je({update(e){return e._update()},notify(e){_e[be++]=e,e.flags&=-3},unwatched(e){e.depsTail!==void 0&&(e.depsTail=void 0,e.flags=17,ee(e))}}),Q=0,be=0,M,we=0;function Ce(e){try{++we,e()}finally{--we||Se()}}function ee(e){let t=e.depsTail,o=t!==void 0?t.nextDep:e.deps;for(;o!==void 0;)o=Jo(o,e)}function Se(){if(!(we>0)){for(;Q<be;){let e=_e[Q];_e[Q++]=void 0,e.notify()}Q=0,be=0}}function he(e,t){let o=typeof e=="function",n=e,r={_snapshot:o?void 0:e,subs:void 0,subsTail:void 0,deps:void 0,depsTail:void 0,flags:o?0:1,get(){return M!==void 0&&Qe(r,M,Z),r._snapshot},subscribe(l){let s=et(l),u={current:!1},a=Zo(()=>{r.get(),u.current?(M=void 0,s.next?.(r._snapshot)):u.current=!0});return{unsubscribe:()=>{a.stop()}}},_update(l){let s=M,u=t?.compare??Object.is;if(o)M=r,++Z,r.depsTail=void 0;else if(l===void 0)return!1;o&&(r.flags=5);try{let a=r._snapshot,i=typeof l=="function"?l(a):l===void 0&&o?n(a):l;return a===void 0||!u(a,i)?(r._snapshot=i,!0):!1}finally{M=s,o&&(r.flags&=-5),ee(r)}}};return o?(r.flags=17,r.get=function(){let l=r.flags;if(l&16||l&32&&tt(r.deps,r)){if(r._update()){let s=r.subs;s!==void 0&&Ze(s)}}else l&32&&(r.flags=l&-33);return M!==void 0&&Qe(r,M,Z),r._snapshot}):r.set=function(l){if(r._update(l)){let s=r.subs;s!==void 0&&(Qo(s),Ze(s),Se())}},r}function Zo(e){let t=()=>{let n=M;M=o,++Z,o.depsTail=void 0,o.flags=6;try{return e()}finally{M=n,o.flags&=-5,ee(o)}},o={deps:void 0,depsTail:void 0,subs:void 0,subsTail:void 0,flags:6,notify(){let n=this.flags;n&16||n&32&&tt(this.deps,this)?t():this.flags=2},stop(){this.flags=0,this.depsTail=void 0,ee(this)}};return t(),o}function T(e,t){if(Object.is(e,t))return!0;if(typeof e!="object"||e===null||typeof t!="object"||t===null)return!1;if(e instanceof Map&&t instanceof Map){if(e.size!==t.size)return!1;for(let[n,r]of e)if(!t.has(n)||!Object.is(r,t.get(n)))return!1;return!0}if(e instanceof Set&&t instanceof Set){if(e.size!==t.size)return!1;for(let n of e)if(!t.has(n))return!1;return!0}if(e instanceof Date&&t instanceof Date)return e.getTime()===t.getTime();let o=ot(e);if(o.length!==ot(t).length)return!1;for(let n=0;n<o.length;n++)if(!Object.prototype.hasOwnProperty.call(t,o[n])||!Object.is(e[o[n]],t[o[n]]))return!1;return!0}function ot(e){return Object.keys(e).concat(Object.getOwnPropertySymbols(e))}var ye=F(Y(),1),nt=F(Ko(),1);function en(e,t){return e===t}function $(e,t=n=>n,o){let n=o?.compare??en,r=(0,ye.useCallback)(s=>{let{unsubscribe:u}=e.subscribe(s);return u},[e]),l=(0,ye.useCallback)(()=>e.get(),[e]);return(0,nt.useSyncExternalStoreWithSelector)(r,l,l,t,n)}function rt(e){let t=$(e.source,e.selector,{compare:T});return typeof e.children=="function"?e.children(t):e.children}function lt(e){let t=e;return Object.defineProperty(e,"state",{get(){return e.get()}}),"set"in e&&(t.setState=e.set.bind(e)),t}function Re(e){let{createAtom:t,batch:o}=e,n=t(0);return{createOptionsStore:!1,wrapExternalAtoms:!1,addSubscription:()=>{throw new Error("Feature not supported in current reactivity implementation")},unmount:()=>{throw new Error("Feature not supported in current reactivity implementation")},schedule:e.schedule??(r=>queueMicrotask(r)),batch:o,untrack:r=>r(),createReadonlyAtom:(r,l)=>{let s=l?.compare??Object.is,u=!1,a,i=()=>{let g=r();return(!u||!s(a,g))&&(a=g,u=!0),a},c=t(()=>(n.get(),i()),{compare:s});return{get:i,subscribe:c.subscribe.bind(c)}},createWritableAtom:(r,l)=>t(r,{compare:l?.compare}),commit:()=>{n.set(r=>r+1)}}}function Fe(e,t=Object.is){let o=!1,n;return{get:e.get,markCommitted:r=>{n=r,o=!0},subscribe:r=>e.subscribe(l=>{(!o||!t(n,l))&&r(l)})}}function st(){return Re({createAtom:he,batch:Ce})}function te(e,t){return typeof e=="function"?e(t):e}function v(e){if(Array.isArray(e))return e.map(v);if(e&&typeof e=="object"){let t=Object.getPrototypeOf(e);if(t!==Object.prototype&&t!==null)return e;let o=t===null?S():{},n=Object.keys(e);for(let r=0;r<n.length;r++){let l=n[r];Object.defineProperty(o,l,{configurable:!0,enumerable:!0,value:v(e[l]),writable:!0})}return o}return e}function ut(e,t){let o=Object.keys(t),n=e;for(let r=0;r<o.length;r++){let l=o[r];!l.startsWith("_memo_")&&l!=="_cellsCache"&&(n[l]=t[l])}return e}function S(){return Object.create(null)}function H(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function oe(e,t){return o=>{(t.options.atoms?.[e]??t.baseAtoms[e]).set(n=>te(o,n))}}function it(e){if(typeof e!="object"||e===null)return!1;if(Array.isArray(e))return!0;let t=Object.getPrototypeOf(e);return t===Object.prototype||t===null}function at(e){return Reflect.ownKeys(e).filter(t=>Object.prototype.propertyIsEnumerable.call(e,t))}var tn=3;function on(e,t){return ct(e,t,tn)}function ct(e,t,o){if(Object.is(e,t))return!0;if(o<=0||!it(e)||!it(t)||(Array.isArray(e)||Array.isArray(t))&&(!Array.isArray(e)||!Array.isArray(t)||e.length!==t.length))return!1;let n=at(e),r=at(t);if(n.length!==r.length)return!1;let l=e,s=t;for(let u=0;u<n.length;u++){let a=n[u];if(!Object.prototype.propertyIsEnumerable.call(t,a)||!ct(l[a],s[a],o-1))return!1}return!0}function ne(e,t,o,n=on){let r=`on${t.charAt(0).toUpperCase()}${t.slice(1)}Change`,l=e.options[r];l&&l(s=>{let u=te(o,s);return n(s,u)?s:u})}function gt(e){return e instanceof Function}function dt(e,t){let o=[],n=r=>{r.forEach(l=>{o.push(l);let s=t(l);s.length&&n(s)})};return n(e),o}var nn=({fn:e,memoDeps:t,onAfterCompare:o,onAfterUpdate:n,onBeforeCompare:r,onBeforeUpdate:l})=>{let s=[],u;return i=>{r?.();let c=t?.(i),g=!c||c.length!==s?.length;if(!g&&c){for(let d=0;d<c.length;d++)if(c[d]!==s[d]){g=!0;break}}return o?.(g),g&&(s=c,l?.(),u=e(...c??[]),n?.(u)),u}};function re(e){let t=!1;return()=>{if(!t){t=!0;return}e()}}var rn=(e,t)=>{for(e=String(e);e.length<t;)e=" "+e;return e};function N({feature:e,fnName:t,objectId:o,onAfterUpdate:n,table:r,...l}){let s,u,a=0,i;function c(f,m){let w=a===0?"(1st run)":m?"(rerun #"+a+")":"(cache)";a++,console.groupCollapsed(`%c\u23F1 ${rn(`${f.toFixed(1)} ms`,12)} %c${w}%c ${t}%c ${o?`(${t.split(".")[0]}Id: ${o})`:""}`,`font-size: .6rem; font-weight: bold; ${m?`color: hsl(
|
|
2
2
|
${Math.max(0,Math.min(120-Math.log10(f)*60,120))}deg 100% 31%);`:""} `,`color: ${a<2?"#FF00FF":"#FF1493"}`,"color: #666","color: #87CEEB"),console.info({feature:e,state:r.store.state,deps:l.memoDeps?.toString()}),console.trace(),console.groupEnd()}return nn({...l,...{onAfterUpdate:n?()=>{let{schedule:f,untrack:m}=r._reactivity;f(()=>m(()=>n()))}:void 0}})}function ft(e,t="_"){let[o,n]=e.replace(t," ").split(" ");return{fnKey:n,fnName:`${o}.${n}`,parentName:o}}function y(e,t,o){for(let[n,{fn:r,memoDeps:l}]of Object.entries(o)){let{fnKey:s,fnName:u}=ft(n);t[s]=l?N({memoDeps:l,fn:r,fnName:u,table:t,feature:e}):r}}function R(e,t,o,n){for(let[r,{fn:l,memoDeps:s}]of Object.entries(n)){let{fnKey:u,fnName:a}=ft(r);if(s){let i=`_memo_${u}`;t[u]=function(...c){if(!this[i]){let g=this;this[i]=N({memoDeps:d=>s(g,d),fn:(...d)=>l(g,...d),fnName:a,objectId:g.id,table:o,feature:e})}return this[i](...c)}}else t[u]=function(...i){return l(this,...i)}}}function P(e,t,o,...n){return e[t]?.(...n)??o(e,...n)}function mt(e){return e.row.getValue(e.column.id)}function pt(e){return e.getValue()??e.table.options.renderFallbackValue}function _t(e){return{table:e.table,column:e.column,row:e.row,cell:e,getValue:()=>e.getValue(),renderValue:()=>e.renderValue()}}var bt={assignCellPrototype:(e,t)=>{R("coreCellsFeature",e,t,{cell_getValue:{fn:o=>mt(o)},cell_renderValue:{fn:o=>pt(o)},cell_getContext:{fn:o=>_t(o),memoDeps:o=>[o]}})}};function ln(e){if(!e._columnPrototype){e._columnPrototype={table:e};let t=Object.values(e._features);for(let o=0;o<t.length;o++)t[o].assignColumnPrototype?.(e._columnPrototype,e)}return e._columnPrototype}function wt(e,t,o,n){let r={...e.getDefaultColumnDef(),...t},l=r.accessorKey,s=l===void 0?void 0:String(l),u=r.id??s?.replaceAll(".","_")??(typeof r.header=="string"?r.header:void 0),a;if(r.accessorFn)a=r.accessorFn;else if(l!==void 0)if(typeof l=="string"&&l.includes(".")){let d=l.split(".");a=f=>{let m=f;for(let w=0;w<d.length;w++){let h=d[w];m=m?.[h]}return m}}else a=d=>d[r.accessorKey];if(!u)throw new Error;let i=ln(e),c=Object.create(i);c.accessorFn=a,c.columnDef=r,c.columns=[],c.depth=o,c.id=`${String(u)}`,c.parent=n;let g=e._columnInstanceInitFns;for(let d=0;d<g.length;d++)g[d](c);return c}function le(e){return e.getIsVisible?.()??!0}function Ct(e){return e.getVisibleLeafColumns?.()??e.getAllLeafColumns()}function Me(e,t){let o=e,n=t;return o.getOrderColumnsFn?.()(n)??o._orderGroupedColumns?.(n)??t}function se(e,t,o,n){return e._orderByColumnPinning?.(t,o,n)??t}function St(e,t){return e._expandRows?.(t)??t}function ht(e){e.autoResetExpanded?.()}function ie(e){e.autoResetPageIndex?.()}function yt(e){e.autoResetSorting?.()}function Rt(e){e.autoResetCellSelection?.()}function Ft(e){return[e,...e.columns.flatMap(t=>t.getFlatColumns())]}function Mt(e){if(e.columns.length){let t=e.columns.flatMap(o=>o.getLeafColumns());return Me(e.table,t)}return[e]}function xt(e){return{header:t=>{let o=t.header.column.columnDef;return o.accessorKey?o.accessorKey:o.accessorFn?o.id:null},cell:t=>t.renderValue()?.toString?.()??null,...Object.values(e._features).reduce((t,o)=>Object.assign(t,o.getDefaultColumnDef?.()),{}),...e.options.defaultColumn}}function It(e,t,o,n=0){let r=new Array(t.length);for(let l=0;l<t.length;l++){if(!(l in t))continue;let s=t[l],u=wt(e,s,n,o),a=s;u.columns=a.columns?It(e,a.columns,u,n+1):[],r[l]=u}return r}function vt(e){return It(e,e.options.columns)}function Pt(e){return e.getAllColumns().flatMap(t=>t.getFlatColumns())}function At(e){let t=S(),o=e.getAllFlatColumns();for(let n=0;n<o.length;n++){let r=o[n];t[r.id]=r}return t}function Vt(e){let t=e.getAllColumns().flatMap(o=>o.getLeafColumns());return Me(e,t)}function Dt(e){let t=S(),o=e.getAllLeafColumns();for(let n=0;n<o.length;n++){let r=o[n];t[r.id]=r}return t}function Tt(e,t){return e.getAllFlatColumnsById()[t]}var Ot={assignColumnPrototype:(e,t)=>{R("coreColumnsFeature",e,t,{column_getFlatColumns:{fn:o=>Ft(o),memoDeps:o=>[o.table.options.columns]},column_getLeafColumns:{fn:o=>Mt(o),memoDeps:o=>[o.table.atoms.columnOrder?.get(),o.table.atoms.grouping?.get(),o.table.options.columns,o.table.options.groupedColumnMode]}})},constructTableAPIs:e=>{y("coreColumnsFeature",e,{table_getDefaultColumnDef:{fn:()=>xt(e),memoDeps:()=>[e.options.defaultColumn]},table_getAllColumns:{fn:()=>vt(e),memoDeps:()=>[e.options.columns]},table_getAllFlatColumns:{fn:()=>Pt(e),memoDeps:()=>[e.options.columns]},table_getAllFlatColumnsById:{fn:()=>At(e),memoDeps:()=>[e.options.columns]},table_getAllLeafColumns:{fn:()=>Vt(e),memoDeps:()=>[e.atoms.columnOrder?.get(),e.atoms.grouping?.get(),e.options.columns,e.options.groupedColumnMode]},table_getAllLeafColumnsById:{fn:()=>Dt(e),memoDeps:()=>[e.getAllLeafColumns()]},table_getColumn:{fn:t=>Tt(e,t)}})}};function sn(e){if(!e._headerPrototype){e._headerPrototype={table:e};let t=Object.values(e._features);for(let o=0;o<t.length;o++)t[o].assignHeaderPrototype?.(e._headerPrototype,e)}return e._headerPrototype}function xe(e,t,o){let n=sn(e),r=Object.create(n);r.colSpan=0,r.column=t,r.depth=o.depth,r.headerGroup=null,r.id=o.id??t.id,r.index=o.index,r.isPlaceholder=!!o.isPlaceholder,r.placeholderId=o.placeholderId,r.rowSpan=0,r.subHeaders=[];let l=e._headerInstanceInitFns;for(let s=0;s<l.length;s++)l[s](r);return r}function Ht(e,t=1){let o=t;for(let n=0;n<e.length;n++){let r=e[n];le(r)&&r.columns.length&&(o=Math.max(o,Ht(r.columns,t+1)))}return o}function an(e,t){return e?`${e}_${t}`:String(t)}function un(e,t,o,n){let r=e??"";return t&&(r=r?`${r}_${t}`:String(t)),o&&(r=r?`${r}_${o}`:o),n&&(r=r?`${r}_${n}`:n),r}function cn(e,t){let o=0;for(let n=0;n<e.length;n++)e[n].column===t&&o++;return o}function Et(e,t,o,n,r,l){let s={depth:t,id:an(n,t),headers:[]},u=[];for(let a=0;a<e.length;a++){if(!(a in e))continue;let i=e[a],c=u[u.length-1],g=i.column.depth===s.depth,d,f=!1;if(g&&i.column.parent?d=i.column.parent:(d=i.column,f=!0),c&&c.column===d)c.subHeaders.push(i);else{let m=xe(o,d,{id:un(n,t,d.id,i.id),isPlaceholder:f,placeholderId:f?String(cn(u,d)):void 0,depth:t,index:u.length});m.subHeaders.push(i),u.push(m)}s.headers.push(i),i.headerGroup=s}for(let a=0;a<l.length;a++)l[a](s);r.push(s),t>0&&Et(u,t-1,o,n,r,l)}function Lt(e){for(let t=0;t<e.length;t++){let o=e[t];if(!le(o.column))continue;let n=0;if(o.subHeaders.length){Lt(o.subHeaders);for(let r=0;r<o.subHeaders.length;r++){let l=o.subHeaders[r];le(l.column)&&(n+=l.colSpan)}}else n=1;if(o.colSpan=n,o.isPlaceholder&&o.subHeaders.length===1&&o.subHeaders[0].column===o.column){let r=1,l=o.subHeaders[0];for(;l;)l.rowSpan=0,r++,l=l.subHeaders.length===1&&l.subHeaders[0].column===o.column?l.subHeaders[0]:void 0;o.rowSpan=r}else o.rowSpan=1}}function Nt(e,t,o,n){let r=Ht(e),l=[],s=o._headerGroupInstanceInitFns,u=new Array(t.length);for(let a=0;a<t.length;a++)a in t&&(u[a]=xe(o,t[a],{depth:r,index:a}));return Et(u,r-1,o,n,l,s),l.reverse(),Lt(l[0]?.headers??[]),l}function Gt(e,t){for(let o=0;o<e.subHeaders.length;o++)Gt(e.subHeaders[o],t);t.push(e)}function kt(e){let t=[];return Gt(e,t),t}function $t(e){return{column:e.column,header:e,table:e.column.table}}function jt(e){return Nt(e.getAllColumns(),se(e,Ct(e),t=>t.id),e)}function Ut(e){return[...e.getHeaderGroups()].reverse()}function Bt(e){let t=e.getHeaderGroups(),o=[];for(let n=0;n<t.length;n++){let r=t[n].headers;for(let l=0;l<r.length;l++)o.push(r[l])}return o}function qt(e){let t=e.getHeaderGroups()[0]?.headers??[],o=[];for(let n=0;n<t.length;n++){let r=t[n].getLeafHeaders();for(let l=0;l<r.length;l++)o.push(r[l])}return o}var zt={assignHeaderPrototype:(e,t)=>{R("coreHeadersFeature",e,t,{header_getLeafHeaders:{fn:o=>kt(o),memoDeps:o=>[o.column.table.options.columns]},header_getContext:{fn:o=>$t(o),memoDeps:o=>[o.column.table.options.columns]}})},constructTableAPIs:e=>{y("coreHeadersFeature",e,{table_getHeaderGroups:{fn:()=>jt(e),memoDeps:()=>[e.options.columns,e.atoms.columnOrder?.get(),e.atoms.grouping?.get(),e.atoms.columnPinning?.get(),e.atoms.columnVisibility?.get(),e.options.groupedColumnMode]},table_getFooterGroups:{fn:()=>Ut(e),memoDeps:()=>[e.getHeaderGroups()]},table_getFlatHeaders:{fn:()=>Bt(e),memoDeps:()=>[e.getHeaderGroups()]},table_getLeafHeaders:{fn:()=>qt(e),memoDeps:()=>[e.getHeaderGroups()]}})}};function gn(e){if(!e._rowPrototype){e._rowPrototype={table:e};let t=Object.values(e._features);for(let o=0;o<t.length;o++)t[o].assignRowPrototype?.(e._rowPrototype,e)}return e._rowPrototype}var Kt=(e,t,o,n,r,l,s)=>{let u=gn(e),a=Object.create(u);a._displayIndexCache=-1,a._uniqueValuesCache=S(),a._valuesCache=S(),a.depth=r,a.id=t,a.index=n,a.original=o,a.parentId=s,a.subRows=l??[];let i=e._rowInstanceInitFns;for(let c=0;c<i.length;c++)i[c](a);return a};function Wt(){return e=>N({feature:"coreRowModelsFeature",table:e,fnName:"table.getCoreRowModel",memoDeps:()=>[e.options.data],fn:()=>dn(e,e.options.data),onAfterUpdate:re(()=>{ht(e),ie(e),yt(e),Rt(e)})})}function Xt(e,t,o,n=0,r){let l=[];for(let s=0;s<o.length;s++){let u=o[s],a=Kt(e,e.getRowId(u,s,r),u,s,n,void 0,r?.id);t.flatRows.push(a),t.rowsById[a.id]=a,l.push(a),e.options.getSubRows&&(a.originalSubRows=e.options.getSubRows(u,s),a.originalSubRows?.length&&(a.subRows=Xt(e,t,a.originalSubRows,n+1,a)))}return l}function dn(e,t){let o={rows:[],flatRows:[],rowsById:S()};return o.rows=Xt(e,o,t),o}function Yt(e){return e._rowModels.coreRowModel||(e._rowModels.coreRowModel=e.options.features.coreRowModel?.(e)??Wt()(e)),e._rowModels.coreRowModel()}function Jt(e){return e.getCoreRowModel()}function Qt(e){return e._rowModels.filteredRowModel||(e._rowModels.filteredRowModel=e.options.features.filteredRowModel?.(e)),e.options.manualFiltering||!e._rowModels.filteredRowModel?e.getPreFilteredRowModel():e._rowModels.filteredRowModel()}function Zt(e){return e.getFilteredRowModel()}function eo(e){return e._rowModels.groupedRowModel||(e._rowModels.groupedRowModel=e.options.features.groupedRowModel?.(e)),e.options.manualGrouping||!e._rowModels.groupedRowModel?e.getPreGroupedRowModel():e._rowModels.groupedRowModel()}function to(e){return e.getGroupedRowModel()}function oo(e){return e._rowModels.sortedRowModel||(e._rowModels.sortedRowModel=e.options.features.sortedRowModel?.(e)),e.options.manualSorting||!e._rowModels.sortedRowModel?e.getPreSortedRowModel():e._rowModels.sortedRowModel()}function no(e){return e.getSortedRowModel()}function ro(e){return e._rowModels.expandedRowModel||(e._rowModels.expandedRowModel=e.options.features.expandedRowModel?.(e)),e.options.manualExpanding||!e._rowModels.expandedRowModel?e.getPreExpandedRowModel():e._rowModels.expandedRowModel()}function lo(e){return e.getExpandedRowModel()}function so(e){return e._rowModels.paginatedRowModel||(e._rowModels.paginatedRowModel=e.options.features.paginatedRowModel?.(e)),e.options.manualPagination||!e._rowModels.paginatedRowModel?e.getPrePaginatedRowModel():e._rowModels.paginatedRowModel()}function io(e){return e.getPaginatedRowModel()}var ao={constructTableAPIs:e=>{y("coreRowModelsFeature",e,{table_getCoreRowModel:{fn:()=>Yt(e)},table_getPreFilteredRowModel:{fn:()=>Jt(e)},table_getFilteredRowModel:{fn:()=>Qt(e)},table_getPreGroupedRowModel:{fn:()=>Zt(e)},table_getGroupedRowModel:{fn:()=>eo(e)},table_getPreSortedRowModel:{fn:()=>to(e)},table_getSortedRowModel:{fn:()=>oo(e)},table_getPreExpandedRowModel:{fn:()=>no(e)},table_getExpandedRowModel:{fn:()=>ro(e)},table_getPrePaginatedRowModel:{fn:()=>lo(e)},table_getPaginatedRowModel:{fn:()=>so(e)},table_getRowModel:{fn:()=>io(e)}})}};function fn(e){if(!e._cellPrototype){e._cellPrototype={table:e};let t=Object.values(e._features);for(let o=0;o<t.length;o++)t[o].assignCellPrototype?.(e._cellPrototype,e)}return e._cellPrototype}function uo(e,t,o){let n=fn(o),r=Object.create(n);r.column=e,r.id=`${t.id}_${e.id}`,r.row=t;let l=o._cellInstanceInitFns;for(let s=0;s<l.length;s++)l[s](r);return r}function co(e){let t=e.table.getRowsInDisplayOrder(),o=e._displayIndexCache;return t[o]===e?o:-1}function go(e){let t=e.getPrePaginatedRowModel(),o=e.options.paginateExpandedRows===!1?St(e,t).rows:t.rows;for(let n=0;n<o.length;n++)o[n]._displayIndexCache=n;return o}function fo(e,t){if(H(e._valuesCache,t))return e._valuesCache[t];let o=e.table.getColumn(t);if(o?.accessorFn)return e._valuesCache[t]=o.accessorFn(e.original,e.index),e._valuesCache[t]}function mo(e,t){if(H(e._uniqueValuesCache,t))return e._uniqueValuesCache[t];let o=e.table.getColumn(t);if(o?.accessorFn)return o.columnDef.getUniqueValues?(e._uniqueValuesCache[t]=o.columnDef.getUniqueValues(e.original,e.index),e._uniqueValuesCache[t]):(e._uniqueValuesCache[t]=[e.getValue(t)],e._uniqueValuesCache[t])}function po(e,t){return e.getValue(t)??e.table.options.renderFallbackValue}function _o(e){return dt(e.subRows,t=>t.subRows)}function bo(e){let t=e.getCoreRowModel().flatRows,o=0;for(let n=0;n<t.length;n++)o=Math.max(o,t[n].depth);return o}function wo(e){if(e.parentId)return e.table.getCoreRowModel().rowsById[e.parentId]??e.table.getRow(e.parentId,!0)}function Co(e){let t=[],o=e;for(;;){let n=o.getParentRow();if(!n)break;t.push(n),o=n}return t.reverse()}function So(e){let t=e.table.getAllLeafColumns(),o=e._cellsCache;o||(o=e._cellsCache=new WeakMap);let n=new Array(t.length);for(let r=0;r<t.length;r++){let l=t[r],s=o.get(l);s||(s=uo(l,e,e.table),o.set(l,s)),n[r]=s}return n}function ho(e){let t=S(),o=e.getAllCells();for(let n=0;n<o.length;n++){let r=o[n];t[r.column.id]=r}return t}function yo(e,t,o,n){return t.options.getRowId?.(e,o,n)??(n?`${n.id}.${o}`:String(o))}function Ro(e,t,o){let n=(o?e.getPrePaginatedRowModel():e.getRowModel()).rowsById[t];if(!n&&(n=e.getCoreRowModel().rowsById[t],!n))throw new Error;return n}var Fo={assignRowPrototype:(e,t)=>{R("coreRowsFeature",e,t,{row_getDisplayIndex:{fn:o=>co(o)},row_getAllCellsByColumnId:{fn:o=>ho(o),memoDeps:o=>[o.getAllCells()]},row_getAllCells:{fn:o=>So(o),memoDeps:o=>[o.table.getAllLeafColumns()]},row_getLeafRows:{fn:o=>_o(o),memoDeps:o=>[o.subRows]},row_getParentRow:{fn:o=>wo(o)},row_getParentRows:{fn:o=>Co(o)},row_getUniqueValues:{fn:(o,n)=>mo(o,n)},row_getValue:{fn:(o,n)=>fo(o,n)},row_renderValue:{fn:(o,n)=>po(o,n)}})},constructTableAPIs:e=>{y("coreRowsFeature",e,{table_getRowsInDisplayOrder:{fn:()=>go(e),memoDeps:()=>[e.getPrePaginatedRowModel().rows,e.options.paginateExpandedRows,e.options.paginateExpandedRows===!1?e.atoms.expanded?.get():void 0]},table_getRowId:{fn:(t,o,n)=>yo(t,e,o,n)},table_getRow:{fn:(t,o)=>Ro(e,t,o)},table_getMaxSubRowDepth:{fn:()=>bo(e),memoDeps:()=>[e.getCoreRowModel()]}})}};function ae(e,t,o=(n,r)=>n===r){let n=t===void 0?e.options.state:t;e._reactivity.batch(()=>{if(n)for(let r in n){let l=e.baseAtoms[r];if(!l)continue;let s=n[r],u=s===void 0?e.initialState[r]:s;o(e._reactivity.untrack(()=>l.get()),u)||l.set(()=>u)}})}function ue(e,t,o=(n,r)=>n===r){e._reactivity.batch(()=>{ae(e,t,o),e._reactivity.commit?.()})}function Ie(e){let t=v(e.initialState);e._reactivity.batch(()=>{let n=Object.keys(t);for(let r=0;r<n.length;r++){let l=n[r];e.baseAtoms[l].set(t[l])}});let o=Object.values(e._features);for(let n=0;n<o.length;n++)o[n].resetTableInstanceData?.(e)}function Mo(e,t){let{features:o,atoms:n,initialState:r}=e.options;if(!e.options.mergeOptions)return{...e.options,...t,features:o,atoms:n,initialState:r};let l=e.options.mergeOptions(e.options,t),s={...Object.getOwnPropertyDescriptors(l)};return Object.defineProperties(Object.create(Object.getPrototypeOf(l)),{...s,features:{value:o,enumerable:!0,configurable:!0,writable:!0},atoms:{value:n,enumerable:!0,configurable:!0,writable:!0},initialState:{value:r,enumerable:!0,configurable:!0,writable:!0}})}function j(e,t,o){let n=Mo(e,te(t,e.options));e.optionsStore?e.optionsStore.set(()=>n):e.options=n,o?.syncExternalState!==!1&&ue(e,n.state??null)}var xo={constructTableAPIs:e=>{y("coreTablesFeature",e,{table_reset:{fn:()=>Ie(e)},table_setOptions:{fn:t=>j(e,t)}})}};var Io={coreCellsFeature:bt,coreColumnsFeature:Ot,coreHeadersFeature:zt,coreRowModelsFeature:ao,coreRowsFeature:Fo,coreTablesFeature:xo};function vo(e,t={}){return Object.values(e).forEach(o=>{t=o.getInitialState?.(t)??t}),v(t)}function ve(e){let t=e.features.coreReactivityFeature,{aggregationFns:o,columnMeta:n,coreRowModel:r,expandedRowModel:l,facetedMinMaxValues:s,facetedRowModel:u,facetedUniqueValues:a,filterFns:i,filterMeta:c,filteredRowModel:g,groupedRowModel:d,paginatedRowModel:f,sortFns:m,sortedRowModel:w,tableMeta:h,...x}=e.features,b={_cellInstanceInitFns:[],_columnInstanceInitFns:[],_features:{...Io,...x},_headerGroupInstanceInitFns:[],_headerInstanceInitFns:[],_reactivity:t,_rowInstanceInitFns:[],_rowModelFns:{aggregationFns:o,filterFns:i,sortFns:m},_rowModels:{},atoms:{},baseAtoms:{}},me=Object.values(b._features),G={...me.reduce((C,p)=>Object.assign(C,p.getDefaultTableOptions?.(b)),{}),...e};if(t.wrapExternalAtoms&&G.atoms)for(let[C,p]of Object.entries(G.atoms)){let I=p,V=t.createWritableAtom(I.get(),{debugName:`externalAtom/${C}`});G.atoms[C]=V;let E=!1,k=I.subscribe(pe=>{E||V.set(pe)}),X=V.subscribe(pe=>{E=!0,I.set(pe),E=!1});t.addSubscription(k),t.addSubscription(X)}t.createOptionsStore?(b.optionsStore=t.createWritableAtom(G,{debugName:"table/optionsStore"}),Object.defineProperty(b,"options",{configurable:!0,enumerable:!0,get(){return b.optionsStore.get()},set(C){b.optionsStore.set(()=>C)}})):b.options=G,b.initialState=vo(b._features,b.options.initialState);let W=Object.keys(b.initialState);for(let C=0;C<W.length;C++){let p=W[C];b.baseAtoms[p]=t.createWritableAtom(b.initialState[p],{debugName:`table/baseAtoms/${p}`}),b.atoms[p]=t.createReadonlyAtom(()=>{let I=b.options,V=I.atoms?.[p],E=V?V.get():b.baseAtoms[p].get();if(V)return E;let k=I.state;if(k&&H(k,p)){let X=k[p];return X===void 0?b.initialState[p]:X}return E},{debugName:`table/atoms/${p}`})}ae(b),b.store=lt(t.createReadonlyAtom(()=>{let C={};for(let p=0;p<W.length;p++){let I=W[p];C[I]=b.atoms[I].get()}return C},{compare:T,debugName:"table/store"}));for(let C=0;C<me.length;C++){let p=me[C];p.initTableInstanceData?.(b),p.initCellInstanceData&&b._cellInstanceInitFns.push(p.initCellInstanceData.bind(p)),p.initColumnInstanceData&&b._columnInstanceInitFns.push(p.initColumnInstanceData.bind(p)),p.initHeaderGroupInstanceData&&b._headerGroupInstanceInitFns.push(p.initHeaderGroupInstanceData.bind(p)),p.initHeaderInstanceData&&b._headerInstanceInitFns.push(p.initHeaderInstanceData.bind(p)),p.initRowInstanceData&&b._rowInstanceInitFns.push(p.initRowInstanceData.bind(p)),p.constructTableAPIs?.(b)}return b}function Po(){return S()}function Pe(e,t){U(e)&&B(e.table,o=>{let n=Object.assign(S(),o),r=t??!P(e,"getIsVisible",A),l=e.getLeafColumns();for(let s=0;s<l.length;s++){let u=l[s];U(u)&&(n[u.id]=r)}return n})}function A(e){let t=e.table.atoms.columnVisibility?.get();if(!t)return!0;let o=e.columns;return o.length?o.some(n=>P(n,"getIsVisible",A)):(H(t,e.id)?t[e.id]:void 0)??!0}function U(e){return(e.columnDef.enableHiding??!0)&&(e.table.options.enableHiding??!0)}function Ao(e){return t=>{Pe(e,t.target.checked)}}function Vo(e){let t=e.getAllCells(),o=[];for(let n=0;n<t.length;n++){let r=t[n];P(r.column,"getIsVisible",A)&&o.push(r)}return se(e.table,o,n=>n.column.id,()=>P(e,"getVisibleCellsByColumnId",Ae))}function Ae(e){let t=S(),o=e.getAllCells();for(let n=0;n<o.length;n++){let r=o[n];P(r.column,"getIsVisible",A)&&(t[r.column.id]=r)}return t}function Do(e){return e.getAllFlatColumns().filter(t=>P(t,"getIsVisible",A))}function To(e){return e.getAllLeafColumns().filter(t=>P(t,"getIsVisible",A))}function B(e,t){ne(e,"columnVisibility",t)}function Oo(e,t){B(e,t?S():Object.assign(S(),v(e.initialState.columnVisibility??{})))}function Ve(e,t){t=t??!De(e);let o=S(),n=e.getAllLeafColumns();for(let r=0;r<n.length;r++){let l=n[r];o[l.id]=t||!U(l)}B(e,o)}function De(e){return!e.getAllLeafColumns().some(t=>!P(t,"getIsVisible",A))}function Ho(e){return e.getAllLeafColumns().some(t=>P(t,"getIsVisible",A))}function Eo(e){return t=>{Ve(e,t.target.checked)}}var Te={getInitialState:e=>({columnVisibility:Po(),...e}),getDefaultTableOptions:e=>({onColumnVisibilityChange:oe("columnVisibility",e)}),assignColumnPrototype:(e,t)=>{R("columnVisibilityFeature",e,t,{column_getIsVisible:{fn:o=>A(o),memoDeps:o=>[t.options.columns,t.atoms.columnVisibility?.get(),o.columns]},column_getCanHide:{fn:o=>U(o)},column_getToggleVisibilityHandler:{fn:o=>Ao(o)},column_toggleVisibility:{fn:(o,n)=>Pe(o,n)}})},assignRowPrototype:(e,t)=>{R("columnVisibilityFeature",e,t,{row_getVisibleCells:{fn:o=>Vo(o),memoDeps:o=>[o.getAllCells(),t.atoms.columnPinning?.get(),t.atoms.columnVisibility?.get()]},row_getVisibleCellsByColumnId:{fn:o=>Ae(o),memoDeps:o=>[o.getAllCells(),t.atoms.columnVisibility?.get()]}})},constructTableAPIs:e=>{y("columnVisibilityFeature",e,{table_getVisibleFlatColumns:{fn:()=>Do(e),memoDeps:()=>[e.atoms.columnVisibility?.get(),e.atoms.columnOrder?.get(),e.atoms.grouping?.get(),e.options.columns,e.options.groupedColumnMode]},table_getVisibleLeafColumns:{fn:()=>To(e),memoDeps:()=>[e.atoms.columnVisibility?.get(),e.atoms.columnOrder?.get(),e.atoms.grouping?.get(),e.options.columns,e.options.groupedColumnMode]},table_setColumnVisibility:{fn:t=>B(e,t)},table_resetColumnVisibility:{fn:t=>Oo(e,t)},table_toggleAllColumnsVisible:{fn:t=>Ve(e,t)},table_getIsAllColumnsVisible:{fn:()=>De(e)},table_getIsSomeColumnsVisible:{fn:()=>Ho(e)},table_getToggleAllColumnsVisibilityHandler:{fn:()=>Eo(e)}})}};var He=/([0-9]+)/gm;function Ee(e){let t=Object.assign((o,n,r)=>{let l=o.getValue(r),s=n.getValue(r),u=t.resolveDataValue;return u&&(l=u(l),s=u(s)),t.sort(l,s,o,n,r)},e);return t}var Le=Ee({resolveDataValue:e=>pn(e).toLowerCase(),sort:(e,t)=>_n(e,t)});var ge=Ee({sort:(e,t)=>mn(e,t)});function mn(e,t){return e===t?0:e>t?1:-1}function pn(e){return typeof e=="number"?isNaN(e)||e===1/0||e===-1/0?"":String(e):typeof e=="string"?e:""}function _n(e,t){let o=0,n=0,r=e.length,l=t.length;for(;o<r&&n<l;){let s=ce(e.charCodeAt(o)),u=ce(t.charCodeAt(n)),a=Oe(e,o,s),i=Oe(t,n,u);if(!s&&!u){let g=bn(e,o,a,t,n,i);if(g)return g;o=a,n=i;continue}if(s!==u)return s?1:-1;let c=wn(e,o,a,t,n,i);if(c)return c;o=a,n=i}return No(e,o)-No(t,n)}function ce(e){return e>=48&&e<=57}function Oe(e,t,o){let n=t+1;for(;n<e.length&&ce(e.charCodeAt(n))===o;)n++;return n}function bn(e,t,o,n,r,l){let s=o-t,u=l-r,a=s<u?s:u;for(let i=0;i<a;i++){let c=e.charCodeAt(t+i),g=n.charCodeAt(r+i);if(c>g)return 1;if(g>c)return-1}return s>u?1:u>s?-1:0}function wn(e,t,o,n,r,l){let s=t;for(;s<o&&e.charCodeAt(s)===48;)s++;let u=r;for(;u<l&&n.charCodeAt(u)===48;)u++;let a=o-s,i=l-u;if(a===0&&i===0)return 0;if(a<=15&&i<=15){let d=Lo(e,s,o),f=Lo(n,u,l);return d>f?1:f>d?-1:0}let c=parseInt(e.slice(t,o),10),g=parseInt(n.slice(r,l),10);return c>g?1:g>c?-1:0}function Lo(e,t,o){let n=0;for(let r=t;r<o;r++)n=n*10+e.charCodeAt(r)-48;return n}function No(e,t){let o=0,n=t;for(;n<e.length;)o++,n=Oe(e,n,ce(e.charCodeAt(n)));return o}function Go(){return[]}function z(e,t){ne(e,"sorting",t)}function Ne(e,t){z(e,t?[]:v(e.initialState.sorting??[]))}function ko(e){e.atoms.sorting&&(e.options.autoResetAll??e.options.autoResetSorting??!1)&&Ne(e)}function Ge(e){let t=e.table._rowModelFns.sortFns,o=e.table.getFilteredRowModel().flatRows.slice(0,10),n,r=!1;for(let l=0;l<o.length;l++){let s=o[l].getValue(e.id);if(Object.prototype.toString.call(s)==="[object Date]"){n="datetime";break}if(typeof s=="string"&&(r=!0,s.split(He).length>1)){n="alphanumeric";break}}if(!n&&r&&(n="text"),n){let l=t?.[n];if(l||n==="alphanumeric"&&(l=t?.text),l)return l}return ge}function ke(e){let t=e.table.getFilteredRowModel().flatRows.slice(0,10);for(let o=0;o<t.length;o++){let n=t[o].getValue(e.id);if(n!=null)return typeof n=="string"?"asc":"desc"}return"desc"}function de(e){let t=e.table._rowModelFns.sortFns;return gt(e.columnDef.sortFn)?e.columnDef.sortFn:e.columnDef.sortFn==="auto"?Ge(e):t?.[e.columnDef.sortFn]??ge}function $e(e,t,o){let n=Ue(e,o&&q(e)),r=typeof t<"u";z(e.table,l=>{let s=l.findIndex(d=>d.id===e.id),u=s===-1?void 0:l[s],a=[],i,c=r?t:n==="desc",g=!!(l.length&&q(e)&&o);return g?u?i="toggle":i="add":u?i="toggle":i="replace",i==="toggle"&&(r||n||(i="remove")),i==="add"?(a=[...l,{id:e.id,desc:c}],a.splice(0,a.length-(e.table.options.maxMultiSortColCount??Number.MAX_SAFE_INTEGER))):i==="toggle"?a=g?l.map(d=>d.id===e.id?{...d,desc:c}:d):[{id:e.id,desc:c}]:i==="remove"?a=g?l.filter(d=>d.id!==e.id):[]:a=[{id:e.id,desc:c}],a})}function je(e){return e.columnDef.sortDescFirst??e.table.options.sortDescFirst??ke(e)==="desc"?"desc":"asc"}function Ue(e,t){let o=je(e),n=Be(e);return n?n!==o&&(e.table.options.enableSortingRemoval??!0)&&(!t||(e.table.options.enableMultiRemove??!0))?!1:n==="desc"?"asc":"desc":o}function K(e){return(e.columnDef.enableSorting??!0)&&(e.table.options.enableSorting??!0)&&!!e.accessorFn}function q(e){return e.columnDef.enableMultiSort??e.table.options.enableMultiSort??!!e.accessorFn}function Be(e){let t=e.table.atoms.sorting?.get()?.find(o=>o.id===e.id);return t?t.desc?"desc":"asc":!1}function $o(e){return e.table.atoms.sorting?.get()?.findIndex(t=>t.id===e.id)??-1}function jo(e){z(e.table,t=>t.length?t.filter(o=>o.id!==e.id):[])}function Uo(e){let t=K(e);return o=>{t&&$e(e,void 0,q(e)?e.table.options.isMultiSortEvent?.(o):!1)}}var qe={getInitialState(e){return{sorting:Go(),...e}},getDefaultColumnDef(){return{sortFn:"auto",sortUndefined:1}},getDefaultTableOptions(e){return{autoResetSorting:!1,onSortingChange:oe("sorting",e),isMultiSortEvent:t=>t.shiftKey}},assignColumnPrototype(e,t){R("rowSortingFeature",e,t,{column_getAutoSortFn:{fn:o=>Ge(o)},column_getAutoSortDir:{fn:o=>ke(o)},column_getSortFn:{fn:o=>de(o)},column_toggleSorting:{fn:(o,n,r)=>$e(o,n,r)},column_getFirstSortDir:{fn:o=>je(o)},column_getNextSortingOrder:{fn:(o,n)=>Ue(o,n)},column_getCanSort:{fn:o=>K(o)},column_getCanMultiSort:{fn:o=>q(o)},column_getIsSorted:{fn:o=>Be(o)},column_getSortIndex:{fn:o=>$o(o)},column_clearSorting:{fn:o=>jo(o)},column_getToggleSortingHandler:{fn:o=>Uo(o)}})},constructTableAPIs(e){y("rowSortingFeature",e,{table_autoResetSorting:{fn:()=>ko(e)},table_setSorting:{fn:t=>z(e,t)},table_resetSorting:{fn:t=>Ne(e,t)}})}};function ze(){return e=>{let t=e;return N({feature:"rowSortingFeature",table:t,fnName:"table.getSortedRowModel",memoDeps:()=>[t.atoms.sorting?.get(),t.getPreSortedRowModel()],fn:()=>Cn(t),onAfterUpdate:re(()=>ie(t))})}}function Cn(e){let t=e.getPreSortedRowModel(),o=e.atoms.sorting?.get();if(!t.rows.length||!o?.length)return t;let n=[],r=o.filter(a=>{let i=e.getColumn(a.id);return i?K(i):!1});if(!r.length)return t;let l=[];for(let a=0;a<r.length;a++){let i=r[a],c=e.getColumn(i.id);c&&l.push({id:i.id,desc:i.desc,sortUndefined:c.columnDef.sortUndefined,invertSorting:c.columnDef.invertSorting,sortFn:de(c)})}let s=(a,i)=>{for(let c=0;c<l.length;c++){let g=l[c],d=g.sortUndefined,f=g.desc,m=0;if(d){let w=a.getValue(g.id),h=i.getValue(g.id),x=w===void 0,b=h===void 0;if(x&&b)continue;if(x||b){if(d==="first")return x?-1:1;if(d==="last")return x?1:-1;m=x?d:-d}}if(m===0&&(m=g.sortFn(a,i,g.id)),m!==0)return f&&(m*=-1),g.invertSorting&&(m*=-1),m}return a.index-i.index},u=a=>{let i=a.slice();i.sort(s);let c=!1;for(let g=0;g<i.length;g++){let d=i[g];d!==a[g]&&(c=!0);let f=n.length;if(n.push(d),d.subRows.length){let m=u(d.subRows);if(m.changed){let w=Object.create(Object.getPrototypeOf(d));ut(w,d),w.subRows=m.rows,i[g]=w,n[f]=w,c=!0}}}return{rows:i,changed:c}};return{rows:u(t.rows).rows,flatRows:n,rowsById:t.rowsById}}var O=F(Y(),1);var Sn=typeof window>"u"?O.useEffect:O.useLayoutEffect;function Ke(e,t){let[{table:o,rootSource:n}]=(0,O.useState)(()=>{let a=ve({...e,features:{coreReactivityFeature:st(),...e.features}});return a.Subscribe=(i=>rt({...i,source:i.source??a.store})),a.FlexRender=Ye,{table:a,rootSource:Fe(a.store,T)}}),r=o;j(r,a=>({...a,...e}),{syncExternalState:!1});let l=r.options.state,s=n.get(),u=$(n,t,{compare:T});return Sn(()=>{n.markCommitted(s),ue(r,l??null,T)}),(0,O.useMemo)(()=>({...o,options:e,state:u}),[o,e,u])}var _=F(L(),1);function hn({className:e,label:t,controls:o,...n}){let r=(0,qo.useId)();return(0,_.jsxs)("div",{className:t?"table-container":"relative w-full overflow-auto",children:[o,t?(0,_.jsx)("p",{id:r,className:"table-hint",children:"Scroll horizontally for more columns. On small screens, each row shows labelled values."}):null,(0,_.jsx)("div",{role:t?"region":void 0,"aria-label":t,"aria-describedby":t?r:void 0,tabIndex:t?0:void 0,className:t?"table-scroll":void 0,children:(0,_.jsx)("table",{className:D("w-full caption-bottom text-sm",t&&"responsive-table",e),...n})})]})}function yn({className:e,...t}){return(0,_.jsx)("thead",{className:D("[&_tr]:border-b",e),...t})}function Rn({className:e,...t}){return(0,_.jsx)("tbody",{className:D("[&_tr:last-child]:border-0",e),...t})}function Bo({className:e,...t}){return(0,_.jsx)("tr",{className:D("border-b border-neutral-200 hover:bg-neutral-50",e),...t})}function Fn({className:e,...t}){return(0,_.jsx)("th",{scope:"col",className:D("h-10 px-3 text-left align-middle font-medium text-neutral-600",e),...t})}function Mn({className:e,children:t,...o}){return(0,_.jsx)("td",{className:D("p-3 align-middle",e),...o,children:(0,_.jsx)("div",{className:"cell-value",children:t})})}var xn={columnVisibilityFeature:Te,rowSortingFeature:qe,sortedRowModel:ze(),sortFns:{alphanumeric:Le}};function Kl({label:e,items:t,columns:o,selectedId:n}){let r=Ke({features:xn,data:t,getRowId:l=>l.id,columns:o.map(l=>({id:l.key,accessorFn:l.value,sortFn:"alphanumeric",enableSorting:l.sortable!==!1}))});return(0,_.jsxs)("div",{className:"list-card",children:[(0,_.jsxs)("details",{className:"column-options",children:[(0,_.jsx)("summary",{children:"Columns \xB7 Sort this page"}),(0,_.jsx)("div",{className:"flex flex-wrap gap-3 p-3",children:r.getAllLeafColumns().slice(1).map((l,s)=>(0,_.jsxs)("label",{className:"inline-flex items-center gap-2",children:[o[s+1]?.label,(0,_.jsxs)("select",{"aria-label":`${o[s+1]?.label} visibility`,value:r.state.columnVisibility[l.id]===!0?"show":r.state.columnVisibility[l.id]===!1?"hide":"auto",onChange:u=>{let a=u.target.value;r.setColumnVisibility(i=>{let c={...i};return a==="auto"?delete c[l.id]:c[l.id]=a==="show",c})},children:[(0,_.jsx)("option",{value:"auto",children:"Automatic"}),(0,_.jsx)("option",{value:"show",children:"Show"}),(0,_.jsx)("option",{value:"hide",children:"Hide"})]})]},l.id))})]}),(0,_.jsxs)(hn,{label:e,controls:(0,_.jsxs)("label",{className:"card-sort",children:["Sort this page",(0,_.jsxs)("select",{"aria-label":`Sort ${e} on this page`,value:r.state.sorting[0]?`${r.state.sorting[0].id}:${r.state.sorting[0].desc?"desc":"asc"}`:"",onChange:l=>{let[s,u]=l.target.value.split(":");r.setSorting(s?[{id:s,desc:u==="desc"}]:[])},children:[(0,_.jsx)("option",{value:"",children:"Original order"}),o.filter(l=>l.sortable!==!1).map(l=>(0,_.jsxs)("optgroup",{label:l.label,children:[(0,_.jsxs)("option",{value:`${l.key}:asc`,children:[l.label," \u2191"]}),(0,_.jsxs)("option",{value:`${l.key}:desc`,children:[l.label," \u2193"]})]},l.key))]})]}),children:[(0,_.jsx)("caption",{className:"sr-only",children:e}),(0,_.jsx)(yn,{children:(0,_.jsx)(Bo,{children:r.getHeaderGroups()[0]?.headers.map(l=>{let s=o.find(a=>a.key===l.column.id),u=l.column.getIsSorted();return(0,_.jsx)(Fn,{className:s.priority?`priority-${s.priority}`:void 0,"data-visibility":r.state.columnVisibility[s.key]===!0?"visible":void 0,"aria-sort":s.sortable===!1?void 0:u==="asc"?"ascending":u==="desc"?"descending":"none",children:s.sortable===!1?s.label:(0,_.jsxs)("button",{type:"button",onClick:l.column.getToggleSortingHandler(),children:[s.label," ",(0,_.jsx)("span",{"aria-hidden":"true",children:u==="asc"?"\u2191":u==="desc"?"\u2193":"\u2195"})]})},l.id)})})}),(0,_.jsx)(Rn,{children:r.getRowModel().rows.map(l=>(0,_.jsx)(Bo,{"aria-selected":n?n===l.original.id:void 0,children:l.getVisibleCells().map(s=>{let u=o.find(a=>a.key===s.column.id);return(0,_.jsx)(Mn,{"data-label":u.label,"data-visibility":r.state.columnVisibility[u.key]===!0?"visible":void 0,className:u.priority?`priority-${u.priority}`:void 0,children:u.render?u.render(l.original):u.value(l.original)},s.id)})},l.id))})]})]})}var zo=F(L(),1),In=We("inline-flex items-center rounded-md border px-2.5 py-0.5 text-xs font-semibold",{variants:{variant:{default:"border-transparent bg-blue-700 text-white",secondary:"border-transparent bg-neutral-100 text-neutral-900",destructive:"border-transparent bg-red-700 text-white",outline:"border-neutral-300 text-neutral-900"}},defaultVariants:{variant:"default"}});function Jl({className:e,variant:t,...o}){return(0,zo.jsx)("div",{className:D(In({variant:t}),e),...o})}var fe=F(L(),1);function Zl({kind:e,title:t,children:o}){return(0,fe.jsxs)("div",{"data-list-state":e,role:e==="error"?"alert":"status","aria-busy":e==="loading",className:`list-state ${e==="error"?"list-state-error":""}`,children:[(0,fe.jsx)("strong",{children:t}),o]})}export{Kl as a,Jl as b,Zl as c};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{A as
|
|
1
|
+
import{A as p,B as c,C as u,c as a,d as y,g as r,p as t,x as s,y as d,z as g}from"./chunk.fd375c54b526.js";var D=a(y(),1);var o=a(r(),1);function L({action:n,target:f,scope:C,description:m,disabled:i=!1,onConfirm:b,open:v,onOpenChange:h,hideTrigger:O=!1}){let[B,T]=(0,D.useState)(!1),k=v??B,e=l=>{T(l),h?.(l)};return(0,o.jsxs)(o.Fragment,{children:[O?null:(0,o.jsx)(t,{type:"button",variant:"ghost",size:"sm",className:"text-red-700 hover:bg-red-50 hover:text-red-800",disabled:i,onClick:()=>e(!0),children:n}),k?(0,o.jsx)(s,{open:!0,onOpenChange:e,children:(0,o.jsxs)(d,{children:[(0,o.jsxs)(g,{children:[(0,o.jsxs)(c,{children:[n,"?"]}),(0,o.jsx)(u,{children:m})]}),(0,o.jsxs)("dl",{className:"detail-list",children:[(0,o.jsx)("dt",{children:"Target"}),(0,o.jsx)("dd",{children:f}),(0,o.jsx)("dt",{children:"Scope"}),(0,o.jsx)("dd",{children:C})]}),(0,o.jsxs)(p,{children:[(0,o.jsx)(t,{type:"button",variant:"outline",onClick:()=>e(!1),children:"Cancel"}),(0,o.jsxs)(t,{type:"button",variant:"destructive",disabled:i,onClick:()=>{i||(e(!1),b())},children:["Confirm ",n.toLowerCase()]})]})]})}):null]})}export{L as a};
|