@cloudhal/cli 0.3.12 → 0.3.13

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.
Files changed (82) hide show
  1. package/dist/assets/starters/blog/package.json +4 -4
  2. package/dist/assets/studio/assets/{AccountPage-DXynwFov.js → AccountPage-BEFaryjs.js} +2 -2
  3. package/dist/assets/studio/assets/{ActivityPage-kfiDbxhj.js → ActivityPage-CaRSJHlv.js} +2 -2
  4. package/dist/assets/studio/assets/{AgentsPage-CJLD8s-v.js → AgentsPage-DR6s7zaQ.js} +2 -2
  5. package/dist/assets/studio/assets/{AnalyticsPage-eF1Wz6Eg.js → AnalyticsPage-_JSpo8nQ.js} +2 -2
  6. package/dist/assets/studio/assets/{ApprovalsPage-CcrfrMb0.js → ApprovalsPage-DdPevaLZ.js} +3 -3
  7. package/dist/assets/studio/assets/{ArticleEditorPage-DLgo19cs.js → ArticleEditorPage-C2asHmlW.js} +2 -2
  8. package/dist/assets/studio/assets/{ArticlesPage-ChvqmnEc.js → ArticlesPage-bT85JG5s.js} +2 -2
  9. package/dist/assets/studio/assets/{AssetPage-BQ1Cw2f8.js → AssetPage-Ddy0luOH.js} +2 -2
  10. package/dist/assets/studio/assets/{Audit-CBohWXfl.js → Audit-OmE16Gp0.js} +2 -2
  11. package/dist/assets/studio/assets/{AuditBadges--tfPYadK.js → AuditBadges-CjoKFkMy.js} +2 -2
  12. package/dist/assets/studio/assets/{AutomationsPage-CdfdSrBB.js → AutomationsPage-BBkyTUDa.js} +2 -2
  13. package/dist/assets/studio/assets/{BodyChanges-BIdCQnRW.js → BodyChanges-C67-tSy-.js} +2 -2
  14. package/dist/assets/studio/assets/{BuildPage-DPp1TeY5.js → BuildPage-F-NRLJNl.js} +2 -2
  15. package/dist/assets/studio/assets/{CommandMenu-9SvRcwMS.js → CommandMenu-CMs1qRHL.js} +2 -2
  16. package/dist/assets/studio/assets/{CommentThreadControls-Bej4Ju8r.js → CommentThreadControls-rHn51ZCS.js} +2 -2
  17. package/dist/assets/studio/assets/{CommentThreadPage-FvEyW9kh.js → CommentThreadPage-C8jUBgDF.js} +2 -2
  18. package/dist/assets/studio/assets/{CommenterPage-C08vpD0o.js → CommenterPage-DreEY6Mr.js} +2 -2
  19. package/dist/assets/studio/assets/{Comments-CTsEJlsH.js → Comments-DANnAEfG.js} +2 -2
  20. package/dist/assets/studio/assets/{CommentsPage-D9fvmJzX.js → CommentsPage-Cra9ji9T.js} +2 -2
  21. package/dist/assets/studio/assets/{ConfirmDialog-B2yAK7lR.js → ConfirmDialog-DDDZap6y.js} +2 -2
  22. package/dist/assets/studio/assets/{EditorPreview-Do3uvSEw.js → EditorPreview-BZygug8K.js} +2 -2
  23. package/dist/assets/studio/assets/{EntryPath-DaQQNbH_.js → EntryPath-CCoF3bbW.js} +2 -2
  24. package/dist/assets/studio/assets/{ForgotPasswordPage-Cr4qquES.js → ForgotPasswordPage-DYWhKwe7.js} +2 -2
  25. package/dist/assets/studio/assets/{Gating-CB6Agrha.js → Gating-BBlmTEBr.js} +2 -2
  26. package/dist/assets/studio/assets/{GovernanceDialog-DJXeICb7.js → GovernanceDialog-YzAT6s-u.js} +2 -2
  27. package/dist/assets/studio/assets/{InvitePage-BfSNOlkR.js → InvitePage-C7316q26.js} +2 -2
  28. package/dist/assets/studio/assets/{ListToolbar-DUEM5tkX.js → ListToolbar-BHXRGWj_.js} +2 -2
  29. package/dist/assets/studio/assets/{LoginPage-BHIsJNt3.js → LoginPage-D-hw4Y4b.js} +2 -2
  30. package/dist/assets/studio/assets/{MediaPage-8KBSBMCs.js → MediaPage-BSoK0VVR.js} +2 -2
  31. package/dist/assets/studio/assets/{MediaPicker-vYgMLoYO.js → MediaPicker-BrpNGScc.js} +2 -2
  32. package/dist/assets/studio/assets/{MediaUpload-DnGt_uIK.js → MediaUpload-DzoYV1Ni.js} +2 -2
  33. package/dist/assets/studio/assets/{MembersPage-cF7mAr68.js → MembersPage-C0SMkEg9.js} +2 -2
  34. package/dist/assets/studio/assets/{Menus-C5xbqFeO.js → Menus-LUcwCsPd.js} +2 -2
  35. package/dist/assets/studio/assets/{NavigationPage-BOoeHMyu.js → NavigationPage-DIIVJdj_.js} +2 -2
  36. package/dist/assets/studio/assets/{NewSiteDialog-C5ouXl1H.js → NewSiteDialog-kpjWtalR.js} +2 -2
  37. package/dist/assets/studio/assets/{PageEditorPage-CU8kkIkJ.js → PageEditorPage-B2f31JCV.js} +2 -2
  38. package/dist/assets/studio/assets/{PagesPage-DrJpmbio.js → PagesPage-CIohsG0C.js} +2 -2
  39. package/dist/assets/studio/assets/{PreviewPanel-B1ZffSer.js → PreviewPanel-D4f46wMP.js} +2 -2
  40. package/dist/assets/studio/assets/{ProjectPage-CYUNQMGK.js → ProjectPage-CZJ81679.js} +2 -2
  41. package/dist/assets/studio/assets/{Readers-DZ54Pl3o.js → Readers-hc0Z6jdr.js} +3 -3
  42. package/dist/assets/studio/assets/{RedirectDialog-CCihuEbN.js → RedirectDialog-RW_zqu_Q.js} +2 -2
  43. package/dist/assets/studio/assets/{RedirectsPage-CHX1m9LB.js → RedirectsPage-BWRlVePU.js} +2 -2
  44. package/dist/assets/studio/assets/{ReleaseApproval-DktV74hd.js → ReleaseApproval-CKy6ADv1.js} +2 -2
  45. package/dist/assets/studio/assets/{ReleasePage-Dw_XSlhM.js → ReleasePage-C7luZWA1.js} +2 -2
  46. package/dist/assets/studio/assets/{ReleaseParts-C8YgT5Gx.js → ReleaseParts-DvmejDuf.js} +2 -2
  47. package/dist/assets/studio/assets/{ResetPasswordPage-gF92RfLg.js → ResetPasswordPage-COU-1Tr-.js} +2 -2
  48. package/dist/assets/studio/assets/{RowMenu-CFE5AHLz.js → RowMenu-CgotKf_E.js} +2 -2
  49. package/dist/assets/studio/assets/{ScheduleCard-CeTqH2ne.js → ScheduleCard-BtnJ_Bzg.js} +2 -2
  50. package/dist/assets/studio/assets/{ScheduleDialog-VOpbR7ph.js → ScheduleDialog-BScv2CDJ.js} +2 -2
  51. package/dist/assets/studio/assets/{ScheduleHistoryPage-C-6q2RWW.js → ScheduleHistoryPage-vEL4E2Gv.js} +2 -2
  52. package/dist/assets/studio/assets/{ScheduleStatusBadge-CWMQx3jR.js → ScheduleStatusBadge-8n3clv2h.js} +2 -2
  53. package/dist/assets/studio/assets/{Schedules-BmMq2hT-.js → Schedules-CczPJWrl.js} +2 -2
  54. package/dist/assets/studio/assets/{SchedulesPage-D2_iIwj_.js → SchedulesPage-CPRSdvZG.js} +2 -2
  55. package/dist/assets/studio/assets/{Seo-CYRxTxto.js → Seo-C8dMpUy1.js} +2 -2
  56. package/dist/assets/studio/assets/{SeoPreview-bkyTnztF.js → SeoPreview-B0gV3OO-.js} +2 -2
  57. package/dist/assets/studio/assets/{Settings-SLtgVs8u.js → Settings-CRS_oj46.js} +2 -2
  58. package/dist/assets/studio/assets/{SiteOverviewPage-DC_ZvMF-.js → SiteOverviewPage-A_YwaATE.js} +2 -2
  59. package/dist/assets/studio/assets/{SiteSettingsPage-D6LR9ixn.js → SiteSettingsPage-C9KidHjf.js} +2 -2
  60. package/dist/assets/studio/assets/{SitesPage-DVVVSYPS.js → SitesPage-BWeCjl6F.js} +2 -2
  61. package/dist/assets/studio/assets/{SkillsPage-DN6HS7QU.js → SkillsPage-C4Qx2Q0r.js} +2 -2
  62. package/dist/assets/studio/assets/{SnapshotsPage-BVr8P-Pg.js → SnapshotsPage-BpDI47Nb.js} +2 -2
  63. package/dist/assets/studio/assets/{StatusActions-PQeUfJWJ.js → StatusActions-CTs-zXTk.js} +3 -3
  64. package/dist/assets/studio/assets/{TagsMigration-gtPPEimv.js → TagsMigration-CRv_2FkT.js} +2 -2
  65. package/dist/assets/studio/assets/{TaxonomyPage-i2zSxPw4.js → TaxonomyPage-1NKiEnue.js} +2 -2
  66. package/dist/assets/studio/assets/{TermEditorPage-BfYWeq23.js → TermEditorPage-zHbvzgtO.js} +2 -2
  67. package/dist/assets/studio/assets/{TermPickers-1CS2mhBG.js → TermPickers-BlyDJChj.js} +2 -2
  68. package/dist/assets/studio/assets/{TranslationList-Ch56yMyZ.js → TranslationList-DRCdjbvf.js} +2 -2
  69. package/dist/assets/studio/assets/{TranslationsPage--mEL1Eou.js → TranslationsPage-BFg-PQAG.js} +2 -2
  70. package/dist/assets/studio/assets/{charts-DHcCY1ZQ.js → charts-B9H-5dY6.js} +2 -2
  71. package/dist/assets/studio/assets/{collapsible-l8g94on4w7qfosmn-BXHVBN0d.js → collapsible-l8g94on4w7qfosmn-De4SMvUy.js} +2 -2
  72. package/dist/assets/studio/assets/{combobox-hdxtsm2gqcxxgfju-0KV94PHy.js → combobox-hdxtsm2gqcxxgfju-DEsFIzc-.js} +2 -2
  73. package/dist/assets/studio/assets/{deleteLabels-55auQImo.js → deleteLabels-ZHt19si-.js} +2 -2
  74. package/dist/assets/studio/assets/{editor-CyuepBzJ.js → editor-DCU0_kqg.js} +2 -2
  75. package/dist/assets/studio/assets/{index-B3isvl8R.js → index-OjH3NEOH.js} +3 -3
  76. package/dist/assets/studio/assets/{item-url-1NlGiKuj.js → item-url-Bn_COg0I.js} +2 -2
  77. package/dist/assets/studio/assets/{layer-dialog-j5ywmzs46ccg6oqy-nvLQiI4N.js → layer-dialog-j5ywmzs46ccg6oqy-uKC-1DCk.js} +2 -2
  78. package/dist/assets/studio/assets/permalinks-XTIdpYm2.js +2 -0
  79. package/dist/assets/studio/assets/{tag-input-ohfybx5dbxy3houy-CSOSIyf4.js → tag-input-ohfybx5dbxy3houy-sHF6otfN.js} +2 -2
  80. package/dist/assets/studio/index.html +1 -1
  81. package/package.json +11 -11
  82. package/dist/assets/studio/assets/permalinks-CNYgOPCo.js +0 -2
@@ -1,2 +1,2 @@
1
- import{r as e}from"./rolldown-runtime-hePW80VL.js";import{i as t,r as n}from"./react-CDCuUAOg.js";import{t as r}from"./button-pa1bq9b85hawg41a-CmOCuL-1.js";import{t as i}from"./link-cqyfjezntvr53rh7-3eczR57J.js";import{l as a}from"./tanstack-BRxyYm4G.js";import{n as o}from"./skeleton-line-m9dyh126t9k07jvg-BFlcthbF.js";import{t as s}from"./Key.es-DE551dL3.js";import{t as c}from"./banner-msnmqm7of2lck01x-D6cADEpP.js";import{t as l}from"./input-c8lv9ulv0kortliq-Be2cm12J.js";import{t as u}from"./AuthLayout-HIkVpHM-.js";import{t as d}from"./tabs-gf57qqf1wcclaejq-CirIVMnq.js";import{u as f}from"./i18n-CCHry74V.js";import{S as p,V as m,p as h,v as g}from"./index-B3isvl8R.js";import{t as _}from"./PasswordField-BgSYGdR_.js";var v=e(t(),1),y=n(),b=`cloudhal.setupToken`;function x(){try{let e=new URL(window.location.href),t=new URLSearchParams(e.hash.replace(/^#/,``)).get(`setup`),n=e.searchParams.get(`setup`),r=t||n;return r?(sessionStorage.setItem(b,r),e.searchParams.delete(`setup`),window.history.replaceState(null,``,`${e.pathname}${e.search}${t?``:e.hash}`),r):sessionStorage.getItem(b)??void 0}catch{return}}function S(){let e=f(),t=a(),[n]=(0,v.useState)(x),[S,C]=(0,v.useState)(n?`signup`:`signin`);(0,v.useEffect)(()=>{n&&C(`signup`)},[n]);let[w,T]=(0,v.useState)(``),[E,D]=(0,v.useState)(``),[O,k]=(0,v.useState)(``),[A,j]=(0,v.useState)(),[M,N]=(0,v.useState)(!1);async function P(r){r.preventDefault(),N(!0),j(void 0);let i=S===`signup`?await g.signUp.email({name:w,email:E,password:O},n?{headers:{"x-cloudhal-setup-token":n}}:void 0):await g.signIn.email({email:E,password:O});if(N(!1),i.error){j(i.error.message??e(`auth.failed`));return}try{sessionStorage.removeItem(b)}catch{}await t({to:`/sites`})}return(0,y.jsx)(u,{brand:(0,y.jsx)(m,{size:20,weight:`fill`}),product:e(`app.name`),title:e(S===`signup`?`auth.signUpTitle`:`auth.signInTitle`),description:e(S===`signup`?`auth.signUpDescription`:`app.tagline`),footer:(0,y.jsxs)(y.Fragment,{children:[(0,y.jsx)(o,{variant:`secondary`,size:`sm`,as:`span`,children:e(`auth.footer`)}),(0,y.jsx)(h,{size:`sm`})]}),children:(0,y.jsxs)(`form`,{onSubmit:P,className:`grid gap-4`,"data-testid":`login-form`,children:[n&&S===`signup`&&(0,y.jsx)(c,{variant:`default`,icon:(0,y.jsx)(s,{weight:`fill`}),title:e(`auth.setupTitle`),description:e(`auth.setupDescription`)}),(0,y.jsx)(d,{tabs:[{value:`signin`,label:e(`auth.signIn`)},{value:`signup`,label:e(`auth.createAccount`)}],value:S,onValueChange:e=>{C(e),j(void 0)},variant:`segmented`,className:`w-full`}),S===`signup`&&(0,y.jsx)(l,{label:e(`auth.name`),name:`name`,value:w,onValueChange:T,required:!0,autoComplete:`name`,className:`w-full`}),(0,y.jsx)(l,{label:e(`auth.email`),name:`email`,type:`email`,value:E,onValueChange:D,required:!0,autoComplete:`email`,className:`w-full`}),(0,y.jsx)(_,{label:e(`auth.password`),value:O,onValueChange:k,description:S===`signup`?e(`auth.passwordHint`):void 0,autoComplete:S===`signup`?`new-password`:`current-password`}),S===`signin`&&(0,y.jsx)(o,{size:`sm`,as:`span`,children:(0,y.jsx)(i,{href:`/forgot-password`,children:e(`forgotPassword.link`)})}),(0,y.jsx)(p,{error:A}),(0,y.jsx)(r,{type:`submit`,variant:`primary`,loading:M,className:`w-full`,children:e(S===`signup`?`auth.createAccount`:`auth.signIn`)})]})})}export{S as LoginPage,x as takeSetupToken};
2
- //# sourceMappingURL=LoginPage-BHIsJNt3.js.map
1
+ import{r as e}from"./rolldown-runtime-hePW80VL.js";import{i as t,r as n}from"./react-CDCuUAOg.js";import{t as r}from"./button-pa1bq9b85hawg41a-CmOCuL-1.js";import{t as i}from"./link-cqyfjezntvr53rh7-3eczR57J.js";import{l as a}from"./tanstack-BRxyYm4G.js";import{n as o}from"./skeleton-line-m9dyh126t9k07jvg-BFlcthbF.js";import{t as s}from"./Key.es-DE551dL3.js";import{t as c}from"./banner-msnmqm7of2lck01x-D6cADEpP.js";import{t as l}from"./input-c8lv9ulv0kortliq-Be2cm12J.js";import{t as u}from"./AuthLayout-HIkVpHM-.js";import{t as d}from"./tabs-gf57qqf1wcclaejq-CirIVMnq.js";import{u as f}from"./i18n-CCHry74V.js";import{S as p,V as m,p as h,v as g}from"./index-OjH3NEOH.js";import{t as _}from"./PasswordField-BgSYGdR_.js";var v=e(t(),1),y=n(),b=`cloudhal.setupToken`;function x(){try{let e=new URL(window.location.href),t=new URLSearchParams(e.hash.replace(/^#/,``)).get(`setup`),n=e.searchParams.get(`setup`),r=t||n;return r?(sessionStorage.setItem(b,r),e.searchParams.delete(`setup`),window.history.replaceState(null,``,`${e.pathname}${e.search}${t?``:e.hash}`),r):sessionStorage.getItem(b)??void 0}catch{return}}function S(){let e=f(),t=a(),[n]=(0,v.useState)(x),[S,C]=(0,v.useState)(n?`signup`:`signin`);(0,v.useEffect)(()=>{n&&C(`signup`)},[n]);let[w,T]=(0,v.useState)(``),[E,D]=(0,v.useState)(``),[O,k]=(0,v.useState)(``),[A,j]=(0,v.useState)(),[M,N]=(0,v.useState)(!1);async function P(r){r.preventDefault(),N(!0),j(void 0);let i=S===`signup`?await g.signUp.email({name:w,email:E,password:O},n?{headers:{"x-cloudhal-setup-token":n}}:void 0):await g.signIn.email({email:E,password:O});if(N(!1),i.error){j(i.error.message??e(`auth.failed`));return}try{sessionStorage.removeItem(b)}catch{}await t({to:`/sites`})}return(0,y.jsx)(u,{brand:(0,y.jsx)(m,{size:20,weight:`fill`}),product:e(`app.name`),title:e(S===`signup`?`auth.signUpTitle`:`auth.signInTitle`),description:e(S===`signup`?`auth.signUpDescription`:`app.tagline`),footer:(0,y.jsxs)(y.Fragment,{children:[(0,y.jsx)(o,{variant:`secondary`,size:`sm`,as:`span`,children:e(`auth.footer`)}),(0,y.jsx)(h,{size:`sm`})]}),children:(0,y.jsxs)(`form`,{onSubmit:P,className:`grid gap-4`,"data-testid":`login-form`,children:[n&&S===`signup`&&(0,y.jsx)(c,{variant:`default`,icon:(0,y.jsx)(s,{weight:`fill`}),title:e(`auth.setupTitle`),description:e(`auth.setupDescription`)}),(0,y.jsx)(d,{tabs:[{value:`signin`,label:e(`auth.signIn`)},{value:`signup`,label:e(`auth.createAccount`)}],value:S,onValueChange:e=>{C(e),j(void 0)},variant:`segmented`,className:`w-full`}),S===`signup`&&(0,y.jsx)(l,{label:e(`auth.name`),name:`name`,value:w,onValueChange:T,required:!0,autoComplete:`name`,className:`w-full`}),(0,y.jsx)(l,{label:e(`auth.email`),name:`email`,type:`email`,value:E,onValueChange:D,required:!0,autoComplete:`email`,className:`w-full`}),(0,y.jsx)(_,{label:e(`auth.password`),value:O,onValueChange:k,description:S===`signup`?e(`auth.passwordHint`):void 0,autoComplete:S===`signup`?`new-password`:`current-password`}),S===`signin`&&(0,y.jsx)(o,{size:`sm`,as:`span`,children:(0,y.jsx)(i,{href:`/forgot-password`,children:e(`forgotPassword.link`)})}),(0,y.jsx)(p,{error:A}),(0,y.jsx)(r,{type:`submit`,variant:`primary`,loading:M,className:`w-full`,children:e(S===`signup`?`auth.createAccount`:`auth.signIn`)})]})})}export{S as LoginPage,x as takeSetupToken};
2
+ //# sourceMappingURL=LoginPage-D-hw4Y4b.js.map
@@ -1,2 +1,2 @@
1
- import{r as e}from"./rolldown-runtime-hePW80VL.js";import{i as t,r as n}from"./react-CDCuUAOg.js";import{t as r}from"./button-pa1bq9b85hawg41a-CmOCuL-1.js";import{t as i}from"./link-cqyfjezntvr53rh7-3eczR57J.js";import{_ as a,d as ee,l as te,m as ne}from"./tanstack-BRxyYm4G.js";import{n as o,t as s}from"./skeleton-line-m9dyh126t9k07jvg-BFlcthbF.js";import{a as c,c as l,d as u,i as d,l as re,o as f,s as ie,t as ae,u as oe}from"./MediaUpload-DnGt_uIK.js";import{t as p}from"./ListBullets.es-DzSyoNA1.js";import{a as m}from"./useMe-BkBpEyf5.js";import{t as h}from"./toolbar-h213d8e22yjh5cwq-DxfVlUi9.js";import{g as se,t as g}from"./api-CHeogUo-.js";import{t as _}from"./select-futox5zqr3r80y9a-FumEl51u.js";import{t as ce}from"./tabs-gf57qqf1wcclaejq-CirIVMnq.js";import{t as v}from"./table-yf8ul2e5nbemioi1-KGRDj7XO.js";import{n as y}from"./Crumbs-B3lDes5a.js";import{t as b}from"./empty-hkvg3is3uc6dj1at-Cen9KfIy.js";import{c as x,u as S}from"./i18n-CCHry74V.js";import{C as le,S as ue,V as de,Z as C,d as fe}from"./index-B3isvl8R.js";import{t as pe}from"./TableSkeleton-DWrf88UN.js";import{t as me}from"./ListToolbar-DUEM5tkX.js";import{b as w,f as T,r as he,t as E,u as D}from"./media-DdL6ngu5.js";import{t as O}from"./RowMenu-CFE5AHLz.js";var k=e(t(),1),A=n(),j=`cloudhal.studio.media.view`;function M(e,t,n){return{...e===`all`?{}:{kind:[e]},status:t===`retired`?[`retired`]:[`active`],...t===`unused`?{unused:!0}:{},...t===`missingAlt`?{missingAlt:!0}:{},...t===`agents`?{uploadedBy:`agent`}:{},...n.trim()?{q:n.trim()}:{}}}function N(){let[e,t]=(0,k.useState)(()=>{try{return localStorage.getItem(j)===`list`?`list`:`grid`}catch{return`grid`}});return[e,e=>{t(e);try{localStorage.setItem(j,e)}catch{}}]}function P(){let e=S(`media`),{locale:t}=x(`media`),{siteId:n}=ee({from:`/sites/$siteId`}),j=te(),P=a({queryKey:[`site`,n],queryFn:()=>g.sites.get(n)}).data?.defaultLocale??`en`,F=m(`assets.upload`),[I,L]=(0,k.useState)(`all`),[R,z]=(0,k.useState)(`active`),[B,V]=(0,k.useState)(``),[H,ge]=(0,k.useState)(``),[U,_e]=N(),[W,G]=(0,k.useState)({open:!1,files:[]});(0,k.useEffect)(()=>{let e=setTimeout(()=>ge(B),250);return()=>clearTimeout(e)},[B]);let K=M(I,R,H),q=ne({queryKey:[`assets`,n,`library`,K],queryFn:({pageParam:e})=>g.assets.list(n,{...K,cursor:e,limit:48}),initialPageParam:void 0,getNextPageParam:e=>e.nextCursor}),J=q.data?.pages.flatMap(e=>e.assets)??[],Y=I!==`all`||R!==`active`||H.trim()!==``,X=e=>G({open:!0,files:e}),Z=oe(X,{accept:E}),Q=e=>`/sites/${n}/media/${e}`,$=(0,A.jsx)(r,{variant:`primary`,icon:(0,A.jsx)(u,{}),onClick:Z.open,disabled:!F.allowed,title:F.reason,"data-testid":`media-upload`,children:e(`media.upload.button`)});return(0,A.jsxs)(le,{crumbs:(0,A.jsx)(y,{siteId:n,trail:[{label:e(`pageHeaders.media.title`)}]}),icon:(0,A.jsx)(C,{size:24}),title:e(`pageHeaders.media.title`),description:e(`pageHeaders.media.description`),actions:(0,A.jsxs)(A.Fragment,{children:[Z.input,$]}),children:[(0,A.jsx)(ue,{error:q.error,onRetry:()=>void q.refetch()}),(0,A.jsx)(me,{search:B,onSearch:V,placeholder:e(`media.search`),actions:(0,A.jsxs)(A.Fragment,{children:[Y&&(0,A.jsx)(r,{variant:`ghost`,onClick:()=>{L(`all`),z(`active`),V(``)},children:e(`media.filters.clear`)}),(0,A.jsxs)(h,{"aria-label":e(`media.filters.label`),children:[(0,A.jsx)(_,{"aria-label":e(`media.filters.kind`),value:I,onValueChange:e=>L(e),items:{all:e(`media.filters.allKinds`),...Object.fromEntries(he.map(t=>[t,e(`media.kindsPlural.${t}`)]))},render:(0,A.jsx)(h.Button,{}),"data-testid":`media-kind`}),(0,A.jsx)(_,{"aria-label":e(`media.filters.show`),value:R,onValueChange:e=>z(e),items:{active:e(`media.filters.active`),unused:e(`media.filters.unused`),missingAlt:e(`media.filters.missingAlt`),agents:e(`media.filters.agents`),retired:e(`media.filters.retired`)},render:(0,A.jsx)(h.Button,{}),"data-testid":`media-show`})]}),(0,A.jsx)(ce,{variant:`segmented`,value:U,onValueChange:e=>_e(e),tabs:[{value:`grid`,label:(0,A.jsxs)(`span`,{className:`flex items-center gap-1.5`,title:e(`media.views.grid`),children:[(0,A.jsx)(de,{size:16,"aria-hidden":!0}),(0,A.jsx)(`span`,{className:`sr-only sm:not-sr-only`,children:e(`media.views.grid`)})]})},{value:`list`,label:(0,A.jsxs)(`span`,{className:`flex items-center gap-1.5`,title:e(`media.views.list`),children:[(0,A.jsx)(p,{size:16,"aria-hidden":!0}),(0,A.jsx)(`span`,{className:`sr-only sm:not-sr-only`,children:e(`media.views.list`)})]})}]})]})}),(0,A.jsx)(ie,{variant:`overlay`,onFiles:X,disabledReason:F.reason,labels:{title:e(`media.drop.title`),choose:e(`media.drop.choose`),release:e(`media.drop.release`)},"data-testid":`media-library`,children:q.data&&J.length===0?(0,A.jsx)(b,{icon:(0,A.jsx)(C,{size:48,className:`text-kumo-inactive`}),title:e(Y?`media.empty.filteredTitle`:`media.empty.title`),description:e(Y?`media.empty.filteredDescription`:`media.empty.description`),contents:Y?void 0:$}):U===`grid`?q.isPending?(0,A.jsxs)(`div`,{className:`grid gap-3`,role:`status`,"aria-label":e(`common.loading`),children:[(0,A.jsx)(s,{}),(0,A.jsx)(s,{}),(0,A.jsx)(s,{})]}):(0,A.jsx)(l,{label:e(`pageHeaders.media.title`),children:J.map(({asset:e,usage:r})=>(0,A.jsx)(re,{href:Q(e.id),preview:(0,A.jsx)(c,{siteId:n,asset:e,size:`tile`}),title:D(e,t,P),meta:`${w(e.mediaType)} · ${T(e.bytes,t)}`,badges:(0,A.jsxs)(A.Fragment,{children:[(0,A.jsx)(f,{count:r,overlay:!0}),(0,A.jsx)(d,{asset:e,defaultLocale:P,compact:!0})]}),"data-testid":`media-tile`},e.id))}):(0,A.jsx)(se,{className:`overflow-x-auto p-0`,children:(0,A.jsxs)(v,{children:[(0,A.jsx)(v.Header,{children:(0,A.jsxs)(v.Row,{children:[(0,A.jsx)(v.Head,{children:e(`media.columns.file`)}),(0,A.jsx)(v.Head,{children:e(`media.columns.type`)}),(0,A.jsx)(v.Head,{children:e(`media.columns.size`)}),(0,A.jsx)(v.Head,{children:e(`media.columns.usage`)}),(0,A.jsx)(v.Head,{children:e(`media.columns.added`)}),(0,A.jsx)(v.Head,{sticky:`right`,className:`w-0`,children:(0,A.jsx)(`span`,{className:`sr-only`,children:e(`site.rowMenu`)})})]})}),q.isPending?(0,A.jsx)(pe,{columns:6}):(0,A.jsx)(v.Body,{children:J.map(({asset:e,usage:r})=>(0,A.jsxs)(v.Row,{"data-asset-id":e.id,children:[(0,A.jsx)(v.Cell,{children:(0,A.jsxs)(`span`,{className:`flex min-w-64 items-center gap-3`,children:[(0,A.jsx)(c,{siteId:n,asset:e,size:`thumb`}),(0,A.jsxs)(`span`,{className:`grid min-w-0 gap-1`,children:[(0,A.jsx)(i,{href:Q(e.id),variant:`plain`,children:(0,A.jsx)(o,{as:`span`,truncate:!0,children:D(e,t,P)})}),(0,A.jsx)(`span`,{className:`flex flex-wrap items-center gap-1`,children:(0,A.jsx)(d,{asset:e,defaultLocale:P})})]})]})}),(0,A.jsxs)(v.Cell,{className:`whitespace-nowrap`,children:[(0,A.jsx)(o,{as:`span`,children:w(e.mediaType)}),e.image&&(0,A.jsx)(o,{as:`span`,variant:`secondary`,size:`sm`,children:` · ${e.image.width} × ${e.image.height}`})]}),(0,A.jsx)(v.Cell,{className:`whitespace-nowrap`,children:(0,A.jsx)(o,{as:`span`,children:T(e.bytes,t)})}),(0,A.jsx)(v.Cell,{children:(0,A.jsx)(f,{count:r})}),(0,A.jsx)(v.Cell,{children:(0,A.jsxs)(`span`,{className:`grid min-w-32 gap-0.5`,children:[(0,A.jsx)(o,{as:`span`,truncate:!0,children:e.uploadedBy.name??e.uploadedBy.id}),(0,A.jsx)(fe,{iso:e.createdAt})]})}),(0,A.jsx)(v.Cell,{sticky:`right`,className:`w-0 text-end`,children:(0,A.jsx)(O,{onOpen:()=>j({to:`/sites/$siteId/media/$assetId`,params:{siteId:n,assetId:e.id}})})})]},e.id))})]})})}),J.length>0&&(0,A.jsxs)(`div`,{className:`flex flex-wrap items-center justify-between gap-3`,children:[(0,A.jsx)(o,{variant:`secondary`,size:`sm`,as:`span`,children:e(`media.loaded`,{count:J.length})}),q.hasNextPage?(0,A.jsx)(r,{variant:`secondary`,loading:q.isFetchingNextPage,onClick:()=>void q.fetchNextPage(),children:e(`media.loadMore`)}):(0,A.jsx)(o,{variant:`secondary`,size:`sm`,as:`span`,children:e(`media.allLoaded`)})]}),(0,A.jsx)(ae,{siteId:n,open:W.open,onOpenChange:e=>G(t=>({open:e,files:e?t.files:[]})),initialFiles:W.files,accept:E,disabledReason:F.reason})]})}export{P as MediaPage,M as libraryQuery};
2
- //# sourceMappingURL=MediaPage-8KBSBMCs.js.map
1
+ import{r as e}from"./rolldown-runtime-hePW80VL.js";import{i as t,r as n}from"./react-CDCuUAOg.js";import{t as r}from"./button-pa1bq9b85hawg41a-CmOCuL-1.js";import{t as i}from"./link-cqyfjezntvr53rh7-3eczR57J.js";import{_ as a,d as ee,l as te,m as ne}from"./tanstack-BRxyYm4G.js";import{n as o,t as s}from"./skeleton-line-m9dyh126t9k07jvg-BFlcthbF.js";import{a as c,c as l,d as u,i as d,l as re,o as f,s as ie,t as ae,u as oe}from"./MediaUpload-DzoYV1Ni.js";import{t as p}from"./ListBullets.es-DzSyoNA1.js";import{a as m}from"./useMe-BkBpEyf5.js";import{t as h}from"./toolbar-h213d8e22yjh5cwq-DxfVlUi9.js";import{g as se,t as g}from"./api-CHeogUo-.js";import{t as _}from"./select-futox5zqr3r80y9a-FumEl51u.js";import{t as ce}from"./tabs-gf57qqf1wcclaejq-CirIVMnq.js";import{t as v}from"./table-yf8ul2e5nbemioi1-KGRDj7XO.js";import{n as y}from"./Crumbs-B3lDes5a.js";import{t as b}from"./empty-hkvg3is3uc6dj1at-Cen9KfIy.js";import{c as x,u as S}from"./i18n-CCHry74V.js";import{C as le,S as ue,V as de,Z as C,d as fe}from"./index-OjH3NEOH.js";import{t as pe}from"./TableSkeleton-DWrf88UN.js";import{t as me}from"./ListToolbar-BHXRGWj_.js";import{b as w,f as T,r as he,t as E,u as D}from"./media-DdL6ngu5.js";import{t as O}from"./RowMenu-CgotKf_E.js";var k=e(t(),1),A=n(),j=`cloudhal.studio.media.view`;function M(e,t,n){return{...e===`all`?{}:{kind:[e]},status:t===`retired`?[`retired`]:[`active`],...t===`unused`?{unused:!0}:{},...t===`missingAlt`?{missingAlt:!0}:{},...t===`agents`?{uploadedBy:`agent`}:{},...n.trim()?{q:n.trim()}:{}}}function N(){let[e,t]=(0,k.useState)(()=>{try{return localStorage.getItem(j)===`list`?`list`:`grid`}catch{return`grid`}});return[e,e=>{t(e);try{localStorage.setItem(j,e)}catch{}}]}function P(){let e=S(`media`),{locale:t}=x(`media`),{siteId:n}=ee({from:`/sites/$siteId`}),j=te(),P=a({queryKey:[`site`,n],queryFn:()=>g.sites.get(n)}).data?.defaultLocale??`en`,F=m(`assets.upload`),[I,L]=(0,k.useState)(`all`),[R,z]=(0,k.useState)(`active`),[B,V]=(0,k.useState)(``),[H,ge]=(0,k.useState)(``),[U,_e]=N(),[W,G]=(0,k.useState)({open:!1,files:[]});(0,k.useEffect)(()=>{let e=setTimeout(()=>ge(B),250);return()=>clearTimeout(e)},[B]);let K=M(I,R,H),q=ne({queryKey:[`assets`,n,`library`,K],queryFn:({pageParam:e})=>g.assets.list(n,{...K,cursor:e,limit:48}),initialPageParam:void 0,getNextPageParam:e=>e.nextCursor}),J=q.data?.pages.flatMap(e=>e.assets)??[],Y=I!==`all`||R!==`active`||H.trim()!==``,X=e=>G({open:!0,files:e}),Z=oe(X,{accept:E}),Q=e=>`/sites/${n}/media/${e}`,$=(0,A.jsx)(r,{variant:`primary`,icon:(0,A.jsx)(u,{}),onClick:Z.open,disabled:!F.allowed,title:F.reason,"data-testid":`media-upload`,children:e(`media.upload.button`)});return(0,A.jsxs)(le,{crumbs:(0,A.jsx)(y,{siteId:n,trail:[{label:e(`pageHeaders.media.title`)}]}),icon:(0,A.jsx)(C,{size:24}),title:e(`pageHeaders.media.title`),description:e(`pageHeaders.media.description`),actions:(0,A.jsxs)(A.Fragment,{children:[Z.input,$]}),children:[(0,A.jsx)(ue,{error:q.error,onRetry:()=>void q.refetch()}),(0,A.jsx)(me,{search:B,onSearch:V,placeholder:e(`media.search`),actions:(0,A.jsxs)(A.Fragment,{children:[Y&&(0,A.jsx)(r,{variant:`ghost`,onClick:()=>{L(`all`),z(`active`),V(``)},children:e(`media.filters.clear`)}),(0,A.jsxs)(h,{"aria-label":e(`media.filters.label`),children:[(0,A.jsx)(_,{"aria-label":e(`media.filters.kind`),value:I,onValueChange:e=>L(e),items:{all:e(`media.filters.allKinds`),...Object.fromEntries(he.map(t=>[t,e(`media.kindsPlural.${t}`)]))},render:(0,A.jsx)(h.Button,{}),"data-testid":`media-kind`}),(0,A.jsx)(_,{"aria-label":e(`media.filters.show`),value:R,onValueChange:e=>z(e),items:{active:e(`media.filters.active`),unused:e(`media.filters.unused`),missingAlt:e(`media.filters.missingAlt`),agents:e(`media.filters.agents`),retired:e(`media.filters.retired`)},render:(0,A.jsx)(h.Button,{}),"data-testid":`media-show`})]}),(0,A.jsx)(ce,{variant:`segmented`,value:U,onValueChange:e=>_e(e),tabs:[{value:`grid`,label:(0,A.jsxs)(`span`,{className:`flex items-center gap-1.5`,title:e(`media.views.grid`),children:[(0,A.jsx)(de,{size:16,"aria-hidden":!0}),(0,A.jsx)(`span`,{className:`sr-only sm:not-sr-only`,children:e(`media.views.grid`)})]})},{value:`list`,label:(0,A.jsxs)(`span`,{className:`flex items-center gap-1.5`,title:e(`media.views.list`),children:[(0,A.jsx)(p,{size:16,"aria-hidden":!0}),(0,A.jsx)(`span`,{className:`sr-only sm:not-sr-only`,children:e(`media.views.list`)})]})}]})]})}),(0,A.jsx)(ie,{variant:`overlay`,onFiles:X,disabledReason:F.reason,labels:{title:e(`media.drop.title`),choose:e(`media.drop.choose`),release:e(`media.drop.release`)},"data-testid":`media-library`,children:q.data&&J.length===0?(0,A.jsx)(b,{icon:(0,A.jsx)(C,{size:48,className:`text-kumo-inactive`}),title:e(Y?`media.empty.filteredTitle`:`media.empty.title`),description:e(Y?`media.empty.filteredDescription`:`media.empty.description`),contents:Y?void 0:$}):U===`grid`?q.isPending?(0,A.jsxs)(`div`,{className:`grid gap-3`,role:`status`,"aria-label":e(`common.loading`),children:[(0,A.jsx)(s,{}),(0,A.jsx)(s,{}),(0,A.jsx)(s,{})]}):(0,A.jsx)(l,{label:e(`pageHeaders.media.title`),children:J.map(({asset:e,usage:r})=>(0,A.jsx)(re,{href:Q(e.id),preview:(0,A.jsx)(c,{siteId:n,asset:e,size:`tile`}),title:D(e,t,P),meta:`${w(e.mediaType)} · ${T(e.bytes,t)}`,badges:(0,A.jsxs)(A.Fragment,{children:[(0,A.jsx)(f,{count:r,overlay:!0}),(0,A.jsx)(d,{asset:e,defaultLocale:P,compact:!0})]}),"data-testid":`media-tile`},e.id))}):(0,A.jsx)(se,{className:`overflow-x-auto p-0`,children:(0,A.jsxs)(v,{children:[(0,A.jsx)(v.Header,{children:(0,A.jsxs)(v.Row,{children:[(0,A.jsx)(v.Head,{children:e(`media.columns.file`)}),(0,A.jsx)(v.Head,{children:e(`media.columns.type`)}),(0,A.jsx)(v.Head,{children:e(`media.columns.size`)}),(0,A.jsx)(v.Head,{children:e(`media.columns.usage`)}),(0,A.jsx)(v.Head,{children:e(`media.columns.added`)}),(0,A.jsx)(v.Head,{sticky:`right`,className:`w-0`,children:(0,A.jsx)(`span`,{className:`sr-only`,children:e(`site.rowMenu`)})})]})}),q.isPending?(0,A.jsx)(pe,{columns:6}):(0,A.jsx)(v.Body,{children:J.map(({asset:e,usage:r})=>(0,A.jsxs)(v.Row,{"data-asset-id":e.id,children:[(0,A.jsx)(v.Cell,{children:(0,A.jsxs)(`span`,{className:`flex min-w-64 items-center gap-3`,children:[(0,A.jsx)(c,{siteId:n,asset:e,size:`thumb`}),(0,A.jsxs)(`span`,{className:`grid min-w-0 gap-1`,children:[(0,A.jsx)(i,{href:Q(e.id),variant:`plain`,children:(0,A.jsx)(o,{as:`span`,truncate:!0,children:D(e,t,P)})}),(0,A.jsx)(`span`,{className:`flex flex-wrap items-center gap-1`,children:(0,A.jsx)(d,{asset:e,defaultLocale:P})})]})]})}),(0,A.jsxs)(v.Cell,{className:`whitespace-nowrap`,children:[(0,A.jsx)(o,{as:`span`,children:w(e.mediaType)}),e.image&&(0,A.jsx)(o,{as:`span`,variant:`secondary`,size:`sm`,children:` · ${e.image.width} × ${e.image.height}`})]}),(0,A.jsx)(v.Cell,{className:`whitespace-nowrap`,children:(0,A.jsx)(o,{as:`span`,children:T(e.bytes,t)})}),(0,A.jsx)(v.Cell,{children:(0,A.jsx)(f,{count:r})}),(0,A.jsx)(v.Cell,{children:(0,A.jsxs)(`span`,{className:`grid min-w-32 gap-0.5`,children:[(0,A.jsx)(o,{as:`span`,truncate:!0,children:e.uploadedBy.name??e.uploadedBy.id}),(0,A.jsx)(fe,{iso:e.createdAt})]})}),(0,A.jsx)(v.Cell,{sticky:`right`,className:`w-0 text-end`,children:(0,A.jsx)(O,{onOpen:()=>j({to:`/sites/$siteId/media/$assetId`,params:{siteId:n,assetId:e.id}})})})]},e.id))})]})})}),J.length>0&&(0,A.jsxs)(`div`,{className:`flex flex-wrap items-center justify-between gap-3`,children:[(0,A.jsx)(o,{variant:`secondary`,size:`sm`,as:`span`,children:e(`media.loaded`,{count:J.length})}),q.hasNextPage?(0,A.jsx)(r,{variant:`secondary`,loading:q.isFetchingNextPage,onClick:()=>void q.fetchNextPage(),children:e(`media.loadMore`)}):(0,A.jsx)(o,{variant:`secondary`,size:`sm`,as:`span`,children:e(`media.allLoaded`)})]}),(0,A.jsx)(ae,{siteId:n,open:W.open,onOpenChange:e=>G(t=>({open:e,files:e?t.files:[]})),initialFiles:W.files,accept:E,disabledReason:F.reason})]})}export{P as MediaPage,M as libraryQuery};
2
+ //# sourceMappingURL=MediaPage-BSoK0VVR.js.map
@@ -1,2 +1,2 @@
1
- import{r as e}from"./rolldown-runtime-hePW80VL.js";import{i as t,r as n}from"./react-CDCuUAOg.js";import{a as r,t as i}from"./button-pa1bq9b85hawg41a-CmOCuL-1.js";import{_ as a,m as o}from"./tanstack-BRxyYm4G.js";import{n as s,t as c}from"./skeleton-line-m9dyh126t9k07jvg-BFlcthbF.js";import{a as l,c as u,i as d,l as f,n as p,r as m}from"./MediaUpload-DnGt_uIK.js";import{t as h}from"./SeoPreview-bkyTnztF.js";import{t as g}from"./LinkSimple.es-BB_3GfFO.js";import{a as _}from"./useMe-BkBpEyf5.js";import{t as v}from"./input-c8lv9ulv0kortliq-Be2cm12J.js";import{t as y}from"./input-h5ox92gf13ge04hp-CDAaOl0A.js";import{t as b}from"./api-CHeogUo-.js";import{t as x}from"./collapsible-l8g94on4w7qfosmn-BXHVBN0d.js";import{t as S}from"./tabs-gf57qqf1wcclaejq-CirIVMnq.js";import{t as C}from"./layer-dialog-j5ywmzs46ccg6oqy-nvLQiI4N.js";import{t as w}from"./InsetPanel-CHSg953_.js";import{c as T,u as E}from"./i18n-CCHry74V.js";import{a as D,c as O,t as k}from"./seo-C-YSZ4mD.js";import{E as A,Z as j}from"./index-B3isvl8R.js";import{l as M,n as N,p as P,s as F,u as I}from"./media-DdL6ngu5.js";var L=e(t(),1),R=n();function z({siteId:e,defaultLocale:t,open:n,onOpenChange:r,onPick:a,currentId:s}){let h=E(`media`),{locale:g}=T(`media`),y=_(`assets.upload`),[x,w]=(0,L.useState)(`library`),[D,O]=(0,L.useState)(``),[k,M]=(0,L.useState)(),P=m(e,{onUploaded:e=>{let t=e.find(e=>e.asset.kind===`image`);t&&M(t)}});(0,L.useEffect)(()=>{n&&(w(`library`),O(``),M(void 0))},[n]);let z=o({queryKey:[`assets`,e,`picker`,D.trim()],queryFn:({pageParam:t})=>b.assets.list(e,{kind:[`image`],status:[`active`],q:D,cursor:t,limit:48}),initialPageParam:void 0,getNextPageParam:e=>e.nextCursor,enabled:n}),B=z.data?.pages.flatMap(e=>e.assets)??[],V=k?.asset.id??s,H=k??B.find(e=>e.asset.id===V),U=e=>{r(e),e||P.reset()};return(0,R.jsx)(C.Root,{open:n,onOpenChange:U,dismissDisabled:P.busy,children:(0,R.jsxs)(C.Content,{size:`lg`,closeLabel:h(`common.close`),children:[(0,R.jsx)(C.Title,{children:h(`media.picker.title`)}),(0,R.jsx)(C.Description,{children:h(`media.picker.description`)}),(0,R.jsx)(C.Body,{children:(0,R.jsxs)(`div`,{className:`grid min-w-0 gap-4`,"data-testid":`asset-picker`,children:[(0,R.jsx)(S,{variant:`segmented`,value:x,onValueChange:e=>w(e),tabs:[{value:`library`,label:h(`media.picker.library`)},{value:`upload`,label:h(`media.picker.upload`)}]}),x===`library`?(0,R.jsxs)(`div`,{className:`grid min-w-0 gap-4`,children:[(0,R.jsx)(v,{"aria-label":h(`media.picker.search`),placeholder:h(`media.picker.search`),value:D,onValueChange:O,className:`w-full`,"data-testid":`picker-search`}),z.isPending?(0,R.jsxs)(`div`,{className:`grid gap-2`,role:`status`,"aria-label":h(`common.loading`),children:[(0,R.jsx)(c,{}),(0,R.jsx)(c,{}),(0,R.jsx)(c,{})]}):B.length===0?(0,R.jsx)(A,{icon:(0,R.jsx)(j,{size:32,className:`text-kumo-inactive`}),title:D.trim()?h(`media.picker.noMatch`):h(`media.picker.empty`),description:h(`media.picker.emptyDescription`),contents:(0,R.jsx)(i,{variant:`secondary`,onClick:()=>w(`upload`),disabled:!y.allowed,title:y.reason,children:h(`media.picker.upload`)})}):(0,R.jsxs)(R.Fragment,{children:[(0,R.jsx)(u,{label:h(`media.picker.library`),children:B.map(n=>(0,R.jsx)(f,{preview:(0,R.jsx)(l,{siteId:e,asset:n.asset,size:`tile`}),title:I(n.asset,g,t),meta:F(n.asset,g),badges:(0,R.jsx)(d,{asset:n.asset,defaultLocale:t,compact:!0}),selected:n.asset.id===V,onSelect:()=>M(n),"data-testid":`picker-tile`},n.asset.id))}),z.hasNextPage&&(0,R.jsx)(`div`,{className:`flex justify-center`,children:(0,R.jsx)(i,{variant:`secondary`,loading:z.isFetchingNextPage,onClick:()=>void z.fetchNextPage(),children:h(`media.loadMore`)})})]})]}):(0,R.jsx)(p,{upload:P,accept:N,multiple:!1,disabledReason:y.reason,description:h(`media.drop.imageDescription`),inlineStart:!0})]})}),(0,R.jsx)(C.Actions,{dismissLabel:h(`common.cancel`),children:(0,R.jsx)(C.Actions.Primary,{disabled:H?.asset.kind!==`image`,onClick:()=>{H&&(a(H),U(!1))},"data-testid":`picker-use`,children:h(`media.picker.use`)})})]})})}var B={required:`seo.cover.errors.required`,insecure:`seo.cover.errors.insecure`,invalid:`seo.cover.errors.invalid`,tooLong:`seo.cover.errors.tooLong`},V={required:`seo.cover.errors.altRequired`,tooLong:`seo.cover.errors.altTooLong`};function H({siteId:e,defaultLocale:t,image:n,savedSrc:o,host:l,errors:u,showErrors:d,onChange:f,onStatusChange:p,testId:m=`image`,labels:_}){let S=E(`media`),{locale:C}=T(`media`),[A,N]=(0,L.useState)(!1),[H,U]=(0,L.useState)({src:!1,alt:!1}),W=n?.assetId,G=!!(n&&!W&&n.src.trim()),[K,q]=(0,L.useState)(G);(0,L.useEffect)(()=>{G&&q(!0)},[G]);let J=a({queryKey:[`asset`,e,W],queryFn:()=>b.assets.get(e,W),enabled:!!W}),Y=J.data?.asset,X=n?.src??``,Z=n?.alt??``,Q=W?Y?M(e,Y):void 0:O(X,l),ee=!W&&X.trim().startsWith(`/`),te=!W&&(d||H.src)&&u.src?S(B[u.src]):void 0,ne=(d||H.alt)&&u.alt?S(V[u.alt]):void 0,$=Y?.alt?.[t];return(0,R.jsxs)(`div`,{className:`@container`,children:[(0,R.jsxs)(`div`,{className:`grid items-start gap-5 @md:grid-cols-5`,children:[(0,R.jsx)(`div`,{className:`min-w-0 @md:col-span-2`,"data-testid":`${m}-preview`,children:(0,R.jsx)(h,{src:Q,alt:Z||$||``,labels:{empty:_?.empty??S(`seo.cover.empty`),loading:S(`seo.cover.loading`),error:S(`seo.cover.broken`)},caption:n?.width&&n.height?S(`seo.cover.size`,{width:n.width,height:n.height}):void 0,errorHint:W?S(`media.field.brokenAsset`):ee?l?S(`seo.cover.brokenPathHost`,{host:l}):S(`seo.cover.brokenPathNoDomain`):S(`seo.cover.brokenHint`),onStatusChange:p,onLoad:e=>{n&&!W&&n.src!==o&&(n.width!==e.width||n.height!==e.height)&&f({...n,...e})}})}),(0,R.jsxs)(`div`,{className:`grid min-w-0 gap-5 @md:col-span-3`,children:[W?(0,R.jsxs)(w,{layout:`row`,label:S(`media.field.fromLibrary`),children:[(0,R.jsxs)(`span`,{className:`grid min-w-0 gap-0.5`,"data-testid":`${m}-asset`,children:[(0,R.jsx)(s,{as:`span`,variant:`secondary`,size:`sm`,children:S(`media.field.fromLibrary`)}),Y?(0,R.jsxs)(R.Fragment,{children:[(0,R.jsx)(s,{as:`span`,bold:!0,truncate:!0,children:I(Y,C,t)}),(0,R.jsx)(s,{as:`span`,variant:`secondary`,size:`sm`,children:F(Y,C)})]}):J.isError?(0,R.jsx)(s,{as:`span`,variant:`error`,size:`sm`,children:S(`media.field.missing`)}):(0,R.jsx)(c,{})]}),(0,R.jsx)(i,{variant:`secondary`,size:`sm`,icon:(0,R.jsx)(r,{}),onClick:()=>N(!0),"data-testid":`${m}-change`,children:S(`media.field.change`)})]}):(0,R.jsxs)(`div`,{className:`flex flex-wrap items-center gap-3`,children:[(0,R.jsx)(i,{variant:`secondary`,icon:(0,R.jsx)(j,{}),onClick:()=>N(!0),"data-testid":`${m}-choose`,children:S(`media.field.choose`)}),(0,R.jsx)(s,{as:`span`,variant:`secondary`,size:`sm`,children:S(`media.field.chooseHint`)})]}),(0,R.jsx)(y,{label:S(W?`media.field.altForUse`:`seo.cover.alt`),value:Z,placeholder:W?$??S(`seo.cover.altPlaceholder`):S(`seo.cover.altPlaceholder`),onValueChange:e=>f(n?{...n,alt:e}:D(n,{alt:e})),onBlur:()=>U(e=>({...e,alt:!0})),description:W?$?S(`media.field.altForUseHint`,{alt:$}):Y?.decorative?S(`media.field.altDecorativeHint`):S(`media.field.altNoneHint`):S(`seo.cover.altHint`),error:ne,maxLength:k.altMax,autoResize:!0,minRows:2,maxRows:4,required:!W&&n!==void 0&&void 0,className:`w-full`,"data-testid":`${m}-alt`}),(0,R.jsxs)(x.Root,{open:K,onOpenChange:q,children:[(0,R.jsx)(x.DefaultTrigger,{children:(0,R.jsxs)(`span`,{className:`flex items-center gap-2`,"data-testid":`${m}-address-toggle`,children:[(0,R.jsx)(g,{size:16,"aria-hidden":!0}),S(`media.field.useAddress`)]})}),(0,R.jsx)(x.DefaultPanel,{children:(0,R.jsx)(`div`,{className:`pt-1`,children:(0,R.jsx)(v,{label:S(`seo.cover.url`),value:W?``:X,placeholder:S(`seo.cover.urlPlaceholder`),onValueChange:e=>f(D(n,{src:e})),onBlur:()=>U(e=>({...e,src:!0})),description:S(W?`media.field.addressReplaces`:`seo.cover.urlHint`),error:te,maxLength:k.srcMax,inputMode:`url`,spellCheck:!1,required:!1,className:`w-full font-mono`,"data-testid":`${m}-src`})})})]})]})]}),(0,R.jsx)(z,{siteId:e,defaultLocale:t,open:A,onOpenChange:N,currentId:W,onPick:e=>{U({src:!1,alt:!1}),f(P(e,Z))}})]})}export{H as n,z as t};
2
- //# sourceMappingURL=MediaPicker-vYgMLoYO.js.map
1
+ import{r as e}from"./rolldown-runtime-hePW80VL.js";import{i as t,r as n}from"./react-CDCuUAOg.js";import{a as r,t as i}from"./button-pa1bq9b85hawg41a-CmOCuL-1.js";import{_ as a,m as o}from"./tanstack-BRxyYm4G.js";import{n as s,t as c}from"./skeleton-line-m9dyh126t9k07jvg-BFlcthbF.js";import{a as l,c as u,i as d,l as f,n as p,r as m}from"./MediaUpload-DzoYV1Ni.js";import{t as h}from"./SeoPreview-B0gV3OO-.js";import{t as g}from"./LinkSimple.es-BB_3GfFO.js";import{a as _}from"./useMe-BkBpEyf5.js";import{t as v}from"./input-c8lv9ulv0kortliq-Be2cm12J.js";import{t as y}from"./input-h5ox92gf13ge04hp-CDAaOl0A.js";import{t as b}from"./api-CHeogUo-.js";import{t as x}from"./collapsible-l8g94on4w7qfosmn-De4SMvUy.js";import{t as S}from"./tabs-gf57qqf1wcclaejq-CirIVMnq.js";import{t as C}from"./layer-dialog-j5ywmzs46ccg6oqy-uKC-1DCk.js";import{t as w}from"./InsetPanel-CHSg953_.js";import{c as T,u as E}from"./i18n-CCHry74V.js";import{a as D,c as O,t as k}from"./seo-C-YSZ4mD.js";import{E as A,Z as j}from"./index-OjH3NEOH.js";import{l as M,n as N,p as P,s as F,u as I}from"./media-DdL6ngu5.js";var L=e(t(),1),R=n();function z({siteId:e,defaultLocale:t,open:n,onOpenChange:r,onPick:a,currentId:s}){let h=E(`media`),{locale:g}=T(`media`),y=_(`assets.upload`),[x,w]=(0,L.useState)(`library`),[D,O]=(0,L.useState)(``),[k,M]=(0,L.useState)(),P=m(e,{onUploaded:e=>{let t=e.find(e=>e.asset.kind===`image`);t&&M(t)}});(0,L.useEffect)(()=>{n&&(w(`library`),O(``),M(void 0))},[n]);let z=o({queryKey:[`assets`,e,`picker`,D.trim()],queryFn:({pageParam:t})=>b.assets.list(e,{kind:[`image`],status:[`active`],q:D,cursor:t,limit:48}),initialPageParam:void 0,getNextPageParam:e=>e.nextCursor,enabled:n}),B=z.data?.pages.flatMap(e=>e.assets)??[],V=k?.asset.id??s,H=k??B.find(e=>e.asset.id===V),U=e=>{r(e),e||P.reset()};return(0,R.jsx)(C.Root,{open:n,onOpenChange:U,dismissDisabled:P.busy,children:(0,R.jsxs)(C.Content,{size:`lg`,closeLabel:h(`common.close`),children:[(0,R.jsx)(C.Title,{children:h(`media.picker.title`)}),(0,R.jsx)(C.Description,{children:h(`media.picker.description`)}),(0,R.jsx)(C.Body,{children:(0,R.jsxs)(`div`,{className:`grid min-w-0 gap-4`,"data-testid":`asset-picker`,children:[(0,R.jsx)(S,{variant:`segmented`,value:x,onValueChange:e=>w(e),tabs:[{value:`library`,label:h(`media.picker.library`)},{value:`upload`,label:h(`media.picker.upload`)}]}),x===`library`?(0,R.jsxs)(`div`,{className:`grid min-w-0 gap-4`,children:[(0,R.jsx)(v,{"aria-label":h(`media.picker.search`),placeholder:h(`media.picker.search`),value:D,onValueChange:O,className:`w-full`,"data-testid":`picker-search`}),z.isPending?(0,R.jsxs)(`div`,{className:`grid gap-2`,role:`status`,"aria-label":h(`common.loading`),children:[(0,R.jsx)(c,{}),(0,R.jsx)(c,{}),(0,R.jsx)(c,{})]}):B.length===0?(0,R.jsx)(A,{icon:(0,R.jsx)(j,{size:32,className:`text-kumo-inactive`}),title:D.trim()?h(`media.picker.noMatch`):h(`media.picker.empty`),description:h(`media.picker.emptyDescription`),contents:(0,R.jsx)(i,{variant:`secondary`,onClick:()=>w(`upload`),disabled:!y.allowed,title:y.reason,children:h(`media.picker.upload`)})}):(0,R.jsxs)(R.Fragment,{children:[(0,R.jsx)(u,{label:h(`media.picker.library`),children:B.map(n=>(0,R.jsx)(f,{preview:(0,R.jsx)(l,{siteId:e,asset:n.asset,size:`tile`}),title:I(n.asset,g,t),meta:F(n.asset,g),badges:(0,R.jsx)(d,{asset:n.asset,defaultLocale:t,compact:!0}),selected:n.asset.id===V,onSelect:()=>M(n),"data-testid":`picker-tile`},n.asset.id))}),z.hasNextPage&&(0,R.jsx)(`div`,{className:`flex justify-center`,children:(0,R.jsx)(i,{variant:`secondary`,loading:z.isFetchingNextPage,onClick:()=>void z.fetchNextPage(),children:h(`media.loadMore`)})})]})]}):(0,R.jsx)(p,{upload:P,accept:N,multiple:!1,disabledReason:y.reason,description:h(`media.drop.imageDescription`),inlineStart:!0})]})}),(0,R.jsx)(C.Actions,{dismissLabel:h(`common.cancel`),children:(0,R.jsx)(C.Actions.Primary,{disabled:H?.asset.kind!==`image`,onClick:()=>{H&&(a(H),U(!1))},"data-testid":`picker-use`,children:h(`media.picker.use`)})})]})})}var B={required:`seo.cover.errors.required`,insecure:`seo.cover.errors.insecure`,invalid:`seo.cover.errors.invalid`,tooLong:`seo.cover.errors.tooLong`},V={required:`seo.cover.errors.altRequired`,tooLong:`seo.cover.errors.altTooLong`};function H({siteId:e,defaultLocale:t,image:n,savedSrc:o,host:l,errors:u,showErrors:d,onChange:f,onStatusChange:p,testId:m=`image`,labels:_}){let S=E(`media`),{locale:C}=T(`media`),[A,N]=(0,L.useState)(!1),[H,U]=(0,L.useState)({src:!1,alt:!1}),W=n?.assetId,G=!!(n&&!W&&n.src.trim()),[K,q]=(0,L.useState)(G);(0,L.useEffect)(()=>{G&&q(!0)},[G]);let J=a({queryKey:[`asset`,e,W],queryFn:()=>b.assets.get(e,W),enabled:!!W}),Y=J.data?.asset,X=n?.src??``,Z=n?.alt??``,Q=W?Y?M(e,Y):void 0:O(X,l),ee=!W&&X.trim().startsWith(`/`),te=!W&&(d||H.src)&&u.src?S(B[u.src]):void 0,ne=(d||H.alt)&&u.alt?S(V[u.alt]):void 0,$=Y?.alt?.[t];return(0,R.jsxs)(`div`,{className:`@container`,children:[(0,R.jsxs)(`div`,{className:`grid items-start gap-5 @md:grid-cols-5`,children:[(0,R.jsx)(`div`,{className:`min-w-0 @md:col-span-2`,"data-testid":`${m}-preview`,children:(0,R.jsx)(h,{src:Q,alt:Z||$||``,labels:{empty:_?.empty??S(`seo.cover.empty`),loading:S(`seo.cover.loading`),error:S(`seo.cover.broken`)},caption:n?.width&&n.height?S(`seo.cover.size`,{width:n.width,height:n.height}):void 0,errorHint:W?S(`media.field.brokenAsset`):ee?l?S(`seo.cover.brokenPathHost`,{host:l}):S(`seo.cover.brokenPathNoDomain`):S(`seo.cover.brokenHint`),onStatusChange:p,onLoad:e=>{n&&!W&&n.src!==o&&(n.width!==e.width||n.height!==e.height)&&f({...n,...e})}})}),(0,R.jsxs)(`div`,{className:`grid min-w-0 gap-5 @md:col-span-3`,children:[W?(0,R.jsxs)(w,{layout:`row`,label:S(`media.field.fromLibrary`),children:[(0,R.jsxs)(`span`,{className:`grid min-w-0 gap-0.5`,"data-testid":`${m}-asset`,children:[(0,R.jsx)(s,{as:`span`,variant:`secondary`,size:`sm`,children:S(`media.field.fromLibrary`)}),Y?(0,R.jsxs)(R.Fragment,{children:[(0,R.jsx)(s,{as:`span`,bold:!0,truncate:!0,children:I(Y,C,t)}),(0,R.jsx)(s,{as:`span`,variant:`secondary`,size:`sm`,children:F(Y,C)})]}):J.isError?(0,R.jsx)(s,{as:`span`,variant:`error`,size:`sm`,children:S(`media.field.missing`)}):(0,R.jsx)(c,{})]}),(0,R.jsx)(i,{variant:`secondary`,size:`sm`,icon:(0,R.jsx)(r,{}),onClick:()=>N(!0),"data-testid":`${m}-change`,children:S(`media.field.change`)})]}):(0,R.jsxs)(`div`,{className:`flex flex-wrap items-center gap-3`,children:[(0,R.jsx)(i,{variant:`secondary`,icon:(0,R.jsx)(j,{}),onClick:()=>N(!0),"data-testid":`${m}-choose`,children:S(`media.field.choose`)}),(0,R.jsx)(s,{as:`span`,variant:`secondary`,size:`sm`,children:S(`media.field.chooseHint`)})]}),(0,R.jsx)(y,{label:S(W?`media.field.altForUse`:`seo.cover.alt`),value:Z,placeholder:W?$??S(`seo.cover.altPlaceholder`):S(`seo.cover.altPlaceholder`),onValueChange:e=>f(n?{...n,alt:e}:D(n,{alt:e})),onBlur:()=>U(e=>({...e,alt:!0})),description:W?$?S(`media.field.altForUseHint`,{alt:$}):Y?.decorative?S(`media.field.altDecorativeHint`):S(`media.field.altNoneHint`):S(`seo.cover.altHint`),error:ne,maxLength:k.altMax,autoResize:!0,minRows:2,maxRows:4,required:!W&&n!==void 0&&void 0,className:`w-full`,"data-testid":`${m}-alt`}),(0,R.jsxs)(x.Root,{open:K,onOpenChange:q,children:[(0,R.jsx)(x.DefaultTrigger,{children:(0,R.jsxs)(`span`,{className:`flex items-center gap-2`,"data-testid":`${m}-address-toggle`,children:[(0,R.jsx)(g,{size:16,"aria-hidden":!0}),S(`media.field.useAddress`)]})}),(0,R.jsx)(x.DefaultPanel,{children:(0,R.jsx)(`div`,{className:`pt-1`,children:(0,R.jsx)(v,{label:S(`seo.cover.url`),value:W?``:X,placeholder:S(`seo.cover.urlPlaceholder`),onValueChange:e=>f(D(n,{src:e})),onBlur:()=>U(e=>({...e,src:!0})),description:S(W?`media.field.addressReplaces`:`seo.cover.urlHint`),error:te,maxLength:k.srcMax,inputMode:`url`,spellCheck:!1,required:!1,className:`w-full font-mono`,"data-testid":`${m}-src`})})})]})]})]}),(0,R.jsx)(z,{siteId:e,defaultLocale:t,open:A,onOpenChange:N,currentId:W,onPick:e=>{U({src:!1,alt:!1}),f(P(e,Z))}})]})}export{H as n,z as t};
2
+ //# sourceMappingURL=MediaPicker-BrpNGScc.js.map
@@ -1,2 +1,2 @@
1
- import{r as e}from"./rolldown-runtime-hePW80VL.js";import{n as t,t as n}from"./IconBase.es-BZDpYMnj.js";import{i as r,r as i}from"./react-CDCuUAOg.js";import{t as a}from"./badge-dq8bx752b9dp7dst--rpq8QXS.js";import{o,t as s,w as c}from"./button-pa1bq9b85hawg41a-CmOCuL-1.js";import{S as l}from"./tanstack-BRxyYm4G.js";import{t as u}from"./Archive.es-C0uhxndN.js";import{h as d,n as f}from"./skeleton-line-m9dyh126t9k07jvg-BFlcthbF.js";import{t as p}from"./CheckCircle.es-XJ9Tr9Tu.js";import{t as m}from"./File.es-VYp_u8mn.js";import{t as h}from"./Image.es-BcOUS77O.js";import{t as g}from"./SeoPreview-bkyTnztF.js";import{t as _}from"./checkbox-lbo436duy7krxcsk-HiD6vTuC.js";import{t as v}from"./TextAa.es-CuNv62rI.js";import{n as y,t as b}from"./banner-msnmqm7of2lck01x-D6cADEpP.js";import{t as ee}from"./input-c8lv9ulv0kortliq-Be2cm12J.js";import{a as x,t as te}from"./api-CHeogUo-.js";import{t as ne}from"./meter-majprsslwmpbmkzg-Bio9f57s.js";import{t as S}from"./layer-dialog-j5ywmzs46ccg6oqy-nvLQiI4N.js";import{t as re}from"./InsetPanel-CHSg953_.js";import{c as C,u as w}from"./i18n-CCHry74V.js";import{F as T,W as ie}from"./index-B3isvl8R.js";import{_ as ae,b as E,d as oe,f as se,g as ce,h as D,l as O,v as k,x as A}from"./media-DdL6ngu5.js";var j=e(r(),1),le=new Map([[`bold`,j.createElement(j.Fragment,null,j.createElement(`path`,{d:`M96.59,124.91a12,12,0,0,0-13.08,2.6L63,148H44a12,12,0,0,0-12,12v40a12,12,0,0,0,12,12H63l20.48,20.48A12,12,0,0,0,104,224V136A12,12,0,0,0,96.59,124.91ZM80,195l-3.51-3.52A12,12,0,0,0,68,188H56V172H68a12,12,0,0,0,8.49-3.51L80,165Zm80-15a44.55,44.55,0,0,1-21.95,38.36A12,12,0,1,1,126,197.64a20.51,20.51,0,0,0,0-35.28,12,12,0,1,1,12.1-20.72A44.55,44.55,0,0,1,160,180ZM216.49,79.51l-56-56A12,12,0,0,0,152,20H56A20,20,0,0,0,36,40v72a12,12,0,0,0,24,0V44h76V92a12,12,0,0,0,12,12h48V212H180a12,12,0,0,0,0,24h20a20,20,0,0,0,20-20V88A12,12,0,0,0,216.49,79.51ZM160,57l23,23H160Z`}))],[`fill`,j.createElement(j.Fragment,null,j.createElement(`path`,{d:`M152,180a40.55,40.55,0,0,1-20,34.91A8,8,0,0,1,124,201.09a24.49,24.49,0,0,0,0-42.18A8,8,0,0,1,132,145.09,40.55,40.55,0,0,1,152,180ZM99.06,128.61a8,8,0,0,0-8.72,1.73L68.69,152H48a8,8,0,0,0-8,8v40a8,8,0,0,0,8,8H68.69l21.65,21.66A8,8,0,0,0,104,224V136A8,8,0,0,0,99.06,128.61ZM216,88V216a16,16,0,0,1-16,16H168a8,8,0,0,1,0-16h32V96H152a8,8,0,0,1-8-8V40H56v80a8,8,0,0,1-16,0V40A16,16,0,0,1,56,24h96a8,8,0,0,1,5.66,2.34l56,56A8,8,0,0,1,216,88Zm-56-8h28.69L160,51.31Z`}))],[`regular`,j.createElement(j.Fragment,null,j.createElement(`path`,{d:`M99.06,128.61a8,8,0,0,0-8.72,1.73L68.69,152H48a8,8,0,0,0-8,8v40a8,8,0,0,0,8,8H68.69l21.65,21.66A8,8,0,0,0,104,224V136A8,8,0,0,0,99.06,128.61ZM88,204.69,77.66,194.34A8,8,0,0,0,72,192H56V168H72a8,8,0,0,0,5.66-2.34L88,155.31ZM152,180a40.55,40.55,0,0,1-20,34.91A8,8,0,0,1,124,201.09a24.49,24.49,0,0,0,0-42.18A8,8,0,0,1,132,145.09,40.55,40.55,0,0,1,152,180Zm61.66-97.66-56-56A8,8,0,0,0,152,24H56A16,16,0,0,0,40,40v80a8,8,0,0,0,16,0V40h88V88a8,8,0,0,0,8,8h48V216H168a8,8,0,0,0,0,16h32a16,16,0,0,0,16-16V88A8,8,0,0,0,213.66,82.34ZM160,51.31,188.69,80H160Z`}))]]),ue=new Map([[`bold`,j.createElement(j.Fragment,null,j.createElement(`path`,{d:`M48,180c0,8.67,5.49,16,12,16a10.27,10.27,0,0,0,7.33-3.43,12,12,0,1,1,17.34,16.6A34,34,0,0,1,60,220C40.15,220,24,202,24,180s16.15-40,36-40a34,34,0,0,1,24.67,10.83,12,12,0,1,1-17.34,16.6A10.27,10.27,0,0,0,60,164C53.49,164,48,171.31,48,180Zm97.51-5.71c-5.13-3.45-11.33-5.24-16.8-6.82a79.5,79.5,0,0,1-7.91-2.59c2.45-1.18,9.71-1.3,16.07.33A12,12,0,0,0,143,142a69.24,69.24,0,0,0-12-1.86c-9.93-.66-18,1.08-24.1,5.17a24.45,24.45,0,0,0-10.69,17.76c-1.1,8.74,2.48,16.27,10.11,21.19,4.78,3.09,10.36,4.7,15.75,6.26,3,.89,7.94,2.3,9.88,3.53a2,2,0,0,1-.22.71c-1.36,1.55-9.57,1.79-16.39-.06a12,12,0,0,0-6.45,23.11A63.73,63.73,0,0,0,125.09,220c6.47,0,13.74-1.17,19.74-5.15a24.73,24.73,0,0,0,10.95-18C157,187.53,153.32,179.53,145.51,174.27ZM216,140.68A12,12,0,0,0,200.7,148L192,172.3,183.3,148A12,12,0,1,0,160.7,156l20,56a12,12,0,0,0,22.6,0l20-56A12,12,0,0,0,216,140.68ZM36,108V40A20,20,0,0,1,56,20h96a12,12,0,0,1,8.49,3.51l56,56A12,12,0,0,1,220,88v20a12,12,0,1,1-24,0v-4H148a12,12,0,0,1-12-12V44H60v64a12,12,0,1,1-24,0ZM160,80h23L160,57Z`}))],[`fill`,j.createElement(j.Fragment,null,j.createElement(`path`,{d:`M213.66,82.34l-56-56A8,8,0,0,0,152,24H56A16,16,0,0,0,40,40v76a4,4,0,0,0,4,4H212a4,4,0,0,0,4-4V88A8,8,0,0,0,213.66,82.34ZM152,88V44l44,44ZM48,180c0,11,7.18,20,16,20a14.18,14.18,0,0,0,10.06-4.5,8.21,8.21,0,0,1,10.9-.91,8,8,0,0,1,.82,11.81A30.06,30.06,0,0,1,64,216c-17.64,0-32-16.15-32-36s14.36-36,32-36a30,30,0,0,1,21.39,9.19,8.26,8.26,0,0,1,.73,11.09,8,8,0,0,1-11.9.38A14.17,14.17,0,0,0,64,160C55.18,160,48,169,48,180Zm103.81,16.31a20.82,20.82,0,0,1-9.19,15.23C137.43,215,131,216,125.13,216A61.14,61.14,0,0,1,110,214a8,8,0,1,1,4.3-15.41c4.38,1.2,14.95,2.7,19.55-.36.88-.59,1.83-1.52,2.14-3.93.35-2.67-.71-4.1-12.78-7.59-9.35-2.7-25-7.23-23-23.11a20.56,20.56,0,0,1,9-14.95c11.84-8,30.71-3.31,32.83-2.76a8,8,0,0,1-4.07,15.48c-4.49-1.17-15.23-2.56-19.83.56a4.54,4.54,0,0,0-2,3.67c-.12.9-.14,1.09,1.11,1.9,2.31,1.49,6.45,2.68,10.45,3.84C137.49,174.17,154.05,179,151.81,196.31ZM215.42,155l-19.89,55.68a8,8,0,0,1-15.06,0L160.58,155a8.21,8.21,0,0,1,4.5-10.45,8,8,0,0,1,10.45,4.76L188,184.21l12.47-34.9a8,8,0,0,1,10.45-4.76A8.23,8.23,0,0,1,215.42,155Z`}))],[`regular`,j.createElement(j.Fragment,null,j.createElement(`path`,{d:`M48,180c0,11,7.18,20,16,20a14.24,14.24,0,0,0,10.22-4.66A8,8,0,0,1,85.78,206.4,30.06,30.06,0,0,1,64,216c-17.65,0-32-16.15-32-36s14.35-36,32-36a30.06,30.06,0,0,1,21.78,9.6,8,8,0,0,1-11.56,11.06A14.24,14.24,0,0,0,64,160C55.18,160,48,169,48,180Zm79.6-8.69c-4-1.16-8.14-2.35-10.45-3.84-1.25-.81-1.23-1-1.12-1.9a4.57,4.57,0,0,1,2-3.67c4.6-3.12,15.34-1.73,19.82-.56A8,8,0,0,0,142,145.86c-2.12-.55-21-5.22-32.84,2.76a20.58,20.58,0,0,0-9,14.95c-2,15.88,13.65,20.41,23,23.11,12.06,3.49,13.12,4.92,12.78,7.59-.31,2.41-1.26,3.34-2.14,3.93-4.6,3.06-15.17,1.56-19.55.36A8,8,0,0,0,109.94,214a61.34,61.34,0,0,0,15.19,2c5.82,0,12.3-1,17.49-4.46a20.82,20.82,0,0,0,9.19-15.23C154,179,137.49,174.17,127.6,171.31Zm83.09-26.84a8,8,0,0,0-10.23,4.84L188,184.21l-12.47-34.9a8,8,0,0,0-15.07,5.38l20,56a8,8,0,0,0,15.07,0l20-56A8,8,0,0,0,210.69,144.47ZM216,88v24a8,8,0,0,1-16,0V96H152a8,8,0,0,1-8-8V40H56v72a8,8,0,0,1-16,0V40A16,16,0,0,1,56,24h96a8,8,0,0,1,5.66,2.34l56,56A8,8,0,0,1,216,88Zm-27.31-8L160,51.31V80Z`}))]]),de=new Map([[`bold`,j.createElement(j.Fragment,null,j.createElement(`path`,{d:`M200,164v8h12a12,12,0,0,1,0,24H200v12a12,12,0,0,1-24,0V152a12,12,0,0,1,12-12h32a12,12,0,0,1,0,24ZM92,172a32,32,0,0,1-32,32H56v4a12,12,0,0,1-24,0V152a12,12,0,0,1,12-12H60A32,32,0,0,1,92,172Zm-24,0a8,8,0,0,0-8-8H56v16h4A8,8,0,0,0,68,172Zm100,8a40,40,0,0,1-40,40H112a12,12,0,0,1-12-12V152a12,12,0,0,1,12-12h16A40,40,0,0,1,168,180Zm-24,0a16,16,0,0,0-16-16h-4v32h4A16,16,0,0,0,144,180ZM36,108V40A20,20,0,0,1,56,20h96a12,12,0,0,1,8.49,3.52l56,56A12,12,0,0,1,220,88v20a12,12,0,0,1-24,0v-4H148a12,12,0,0,1-12-12V44H60v64a12,12,0,0,1-24,0ZM160,57V80h23Z`}))],[`fill`,j.createElement(j.Fragment,null,j.createElement(`path`,{d:`M44,120H212a4,4,0,0,0,4-4V88a8,8,0,0,0-2.34-5.66l-56-56A8,8,0,0,0,152,24H56A16,16,0,0,0,40,40v76A4,4,0,0,0,44,120ZM152,44l44,44H152Zm72,108.53a8.18,8.18,0,0,1-8.25,7.47H192v16h15.73a8.17,8.17,0,0,1,8.25,7.47,8,8,0,0,1-8,8.53H192v15.73a8.17,8.17,0,0,1-7.47,8.25,8,8,0,0,1-8.53-8V152a8,8,0,0,1,8-8h32A8,8,0,0,1,224,152.53ZM64,144H48a8,8,0,0,0-8,8v55.73A8.17,8.17,0,0,0,47.47,216,8,8,0,0,0,56,208v-8h7.4c15.24,0,28.14-11.92,28.59-27.15A28,28,0,0,0,64,144Zm-.35,40H56V160h8a12,12,0,0,1,12,13.16A12.25,12.25,0,0,1,63.65,184ZM128,144H112a8,8,0,0,0-8,8v56a8,8,0,0,0,8,8h15.32c19.66,0,36.21-15.48,36.67-35.13A36,36,0,0,0,128,144Zm-.49,56H120V160h8a20,20,0,0,1,20,20.77C147.58,191.59,138.34,200,127.51,200Z`}))],[`regular`,j.createElement(j.Fragment,null,j.createElement(`path`,{d:`M224,152a8,8,0,0,1-8,8H192v16h16a8,8,0,0,1,0,16H192v16a8,8,0,0,1-16,0V152a8,8,0,0,1,8-8h32A8,8,0,0,1,224,152ZM92,172a28,28,0,0,1-28,28H56v8a8,8,0,0,1-16,0V152a8,8,0,0,1,8-8H64A28,28,0,0,1,92,172Zm-16,0a12,12,0,0,0-12-12H56v24h8A12,12,0,0,0,76,172Zm88,8a36,36,0,0,1-36,36H112a8,8,0,0,1-8-8V152a8,8,0,0,1,8-8h16A36,36,0,0,1,164,180Zm-16,0a20,20,0,0,0-20-20h-8v40h8A20,20,0,0,0,148,180ZM40,112V40A16,16,0,0,1,56,24h96a8,8,0,0,1,5.66,2.34l56,56A8,8,0,0,1,216,88v24a8,8,0,0,1-16,0V96H152a8,8,0,0,1-8-8V40H56v72a8,8,0,0,1-16,0ZM160,80h28.69L160,51.31Z`}))]]),fe=new Map([[`bold`,j.createElement(j.Fragment,null,j.createElement(`path`,{d:`M216.49,79.51l-56-56A12,12,0,0,0,152,20H56A20,20,0,0,0,36,40v68a12,12,0,0,0,24,0V44h76V92a12,12,0,0,0,12,12h48V212a12,12,0,0,0,0,24h4a20,20,0,0,0,20-20V88A12,12,0,0,0,216.49,79.51ZM160,57l23,23H160Zm-1.91,84.69a12,12,0,0,0-11.92-.15L126.5,152.44A20,20,0,0,0,108,140H48a20,20,0,0,0-20,20v48a20,20,0,0,0,20,20h60a20,20,0,0,0,18.5-12.44l19.67,10.93A12,12,0,0,0,164,216V152A12,12,0,0,0,158.09,141.66ZM104,204H52V164h52Zm36-8.39-12-6.67v-9.88l12-6.67Z`}))],[`fill`,j.createElement(j.Fragment,null,j.createElement(`path`,{d:`M213.66,82.34l-56-56A8,8,0,0,0,152,24H56A16,16,0,0,0,40,40v72a8,8,0,0,0,16,0V40h88V88a8,8,0,0,0,8,8h48V216h-8a8,8,0,0,0,0,16h8a16,16,0,0,0,16-16V88A8,8,0,0,0,213.66,82.34ZM160,51.31,188.69,80H160ZM155.88,145a8,8,0,0,0-8.12.22l-19.95,12.46A16,16,0,0,0,112,144H48a16,16,0,0,0-16,16v48a16,16,0,0,0,16,16h64a16,16,0,0,0,15.81-13.68l19.95,12.46A8,8,0,0,0,160,216V152A8,8,0,0,0,155.88,145ZM144,201.57l-16-10V176.43l16-10Z`}))],[`regular`,j.createElement(j.Fragment,null,j.createElement(`path`,{d:`M213.66,82.34l-56-56A8,8,0,0,0,152,24H56A16,16,0,0,0,40,40v72a8,8,0,0,0,16,0V40h88V88a8,8,0,0,0,8,8h48V216h-8a8,8,0,0,0,0,16h8a16,16,0,0,0,16-16V88A8,8,0,0,0,213.66,82.34ZM160,51.31,188.69,80H160ZM155.88,145a8,8,0,0,0-8.12.22l-19.95,12.46A16,16,0,0,0,112,144H48a16,16,0,0,0-16,16v48a16,16,0,0,0,16,16h64a16,16,0,0,0,15.81-13.68l19.95,12.46A8,8,0,0,0,160,216V152A8,8,0,0,0,155.88,145ZM112,208H48V160h64v48Zm32-6.43-16-10V176.43l16-10Z`}))]]),pe=new Map([[`bold`,j.createElement(j.Fragment,null,j.createElement(`path`,{d:`M128,60a44,44,0,1,0,44,44A44.05,44.05,0,0,0,128,60Zm0,64a20,20,0,1,1,20-20A20,20,0,0,1,128,124Zm0-112a92.1,92.1,0,0,0-92,92c0,77.36,81.64,135.4,85.12,137.83a12,12,0,0,0,13.76,0,259,259,0,0,0,42.18-39C205.15,170.57,220,136.37,220,104A92.1,92.1,0,0,0,128,12Zm31.3,174.71A249.35,249.35,0,0,1,128,216.89a249.35,249.35,0,0,1-31.3-30.18C80,167.37,60,137.31,60,104a68,68,0,0,1,136,0C196,137.31,176,167.37,159.3,186.71Z`}))],[`fill`,j.createElement(j.Fragment,null,j.createElement(`path`,{d:`M128,16a88.1,88.1,0,0,0-88,88c0,75.3,80,132.17,83.41,134.55a8,8,0,0,0,9.18,0C136,236.17,216,179.3,216,104A88.1,88.1,0,0,0,128,16Zm0,56a32,32,0,1,1-32,32A32,32,0,0,1,128,72Z`}))],[`regular`,j.createElement(j.Fragment,null,j.createElement(`path`,{d:`M128,64a40,40,0,1,0,40,40A40,40,0,0,0,128,64Zm0,64a24,24,0,1,1,24-24A24,24,0,0,1,128,128Zm0-112a88.1,88.1,0,0,0-88,88c0,31.4,14.51,64.68,42,96.25a254.19,254.19,0,0,0,41.45,38.3,8,8,0,0,0,9.18,0A254.19,254.19,0,0,0,174,200.25c27.45-31.57,42-64.85,42-96.25A88.1,88.1,0,0,0,128,16Zm0,206c-16.53-13-72-60.75-72-118a72,72,0,0,1,144,0C200,161.23,144.53,209,128,222Z`}))]]),me=new Map([[`bold`,j.createElement(j.Fragment,null,j.createElement(`path`,{d:`M228,144v64a12,12,0,0,1-12,12H40a12,12,0,0,1-12-12V144a12,12,0,0,1,24,0v52H204V144a12,12,0,0,1,24,0ZM96.49,80.49,116,61v83a12,12,0,0,0,24,0V61l19.51,19.52a12,12,0,1,0,17-17l-40-40a12,12,0,0,0-17,0l-40,40a12,12,0,1,0,17,17Z`}))],[`fill`,j.createElement(j.Fragment,null,j.createElement(`path`,{d:`M224,144v64a8,8,0,0,1-8,8H40a8,8,0,0,1-8-8V144a8,8,0,0,1,16,0v56H208V144a8,8,0,0,1,16,0ZM88,80h32v64a8,8,0,0,0,16,0V80h32a8,8,0,0,0,5.66-13.66l-40-40a8,8,0,0,0-11.32,0l-40,40A8,8,0,0,0,88,80Z`}))],[`regular`,j.createElement(j.Fragment,null,j.createElement(`path`,{d:`M224,144v64a8,8,0,0,1-8,8H40a8,8,0,0,1-8-8V144a8,8,0,0,1,16,0v56H208V144a8,8,0,0,1,16,0ZM93.66,77.66,120,51.31V144a8,8,0,0,0,16,0V51.31l26.34,26.35a8,8,0,0,0,11.32-11.32l-40-40a8,8,0,0,0-11.32,0l-40,40A8,8,0,0,0,93.66,77.66Z`}))]]),M=j.forwardRef((e,t)=>j.createElement(n,{ref:t,...e,weights:le}));M.displayName=`FileAudioIcon`;var N=M,P=j.forwardRef((e,t)=>j.createElement(n,{ref:t,...e,weights:ue}));P.displayName=`FileCsvIcon`;var F=P,I=j.forwardRef((e,t)=>j.createElement(n,{ref:t,...e,weights:de}));I.displayName=`FilePdfIcon`;var L=I,R=j.forwardRef((e,t)=>j.createElement(n,{ref:t,...e,weights:fe}));R.displayName=`FileVideoIcon`;var z=R,B=j.forwardRef((e,t)=>j.createElement(n,{ref:t,...e,weights:pe}));B.displayName=`MapPinIcon`;var he=B,V=j.forwardRef((e,t)=>j.createElement(n,{ref:t,...e,weights:me}));V.displayName=`UploadSimpleIcon`;var H=V,U=i();function W(e){return e?Array.from(e):[]}var G=e=>Array.from(e.dataTransfer?.types??[]).includes(`Files`);function K({onFiles:e,labels:n,accept:r,multiple:i=!0,disabledReason:a,variant:o=`area`,children:c,className:l,"data-testid":u}){let d=(0,j.useRef)(null),p=(0,j.useRef)(0),[m,h]=(0,j.useState)(!1),g=(0,j.useId)(),_=a!==void 0,v=t=>{_||t.length===0||e(i?t:t.slice(0,1))},y={onDragEnter:e=>{!_&&G(e)&&(e.preventDefault(),p.current+=1,h(!0))},onDragOver:e=>{!_&&G(e)&&(e.preventDefault(),e.dataTransfer&&(e.dataTransfer.dropEffect=`copy`))},onDragLeave:()=>{p.current=Math.max(0,p.current-1),p.current===0&&h(!1)},onDrop:e=>{!_&&G(e)&&(e.preventDefault(),p.current=0,h(!1),v(W(e.dataTransfer?.files)))},onPaste:e=>{let t=W(e.clipboardData?.files);t.length!==0&&(e.preventDefault(),v(t))}},b=(0,U.jsx)(`input`,{ref:d,type:`file`,className:`sr-only`,tabIndex:-1,"aria-hidden":!0,accept:r,multiple:i,onChange:e=>{v(W(e.currentTarget.files)),e.currentTarget.value=``}});return o===`overlay`?(0,U.jsxs)(`div`,{...y,className:t(`relative min-w-0`,l),"data-dragging":m||void 0,"data-testid":u,children:[c,m&&(0,U.jsx)(`div`,{"aria-hidden":!0,className:`pointer-events-none absolute inset-0 z-10 flex items-center justify-center rounded-xl border-2 border-dashed border-kumo-brand bg-kumo-tint/90`,children:(0,U.jsxs)(`span`,{className:`flex items-center gap-2 text-kumo-default`,children:[(0,U.jsx)(H,{size:20}),(0,U.jsx)(f,{as:`span`,bold:!0,children:n.release})]})})]}):(0,U.jsxs)(`div`,{...y,role:`group`,"aria-labelledby":g,tabIndex:0,"data-dragging":m||void 0,"data-testid":u,className:t(`flex min-w-0 flex-col items-center justify-center gap-3 rounded-xl border border-dashed px-5 py-6 text-center outline-none focus-visible:ring-2 focus-visible:ring-kumo-focus`,m?`border-kumo-brand bg-kumo-tint`:`border-kumo-line bg-kumo-base`,l),children:[(0,U.jsx)(`span`,{className:`flex size-10 items-center justify-center rounded-full bg-kumo-recessed text-kumo-subtle`,children:(0,U.jsx)(H,{size:20,"aria-hidden":!0})}),(0,U.jsxs)(`span`,{className:`grid gap-1.5`,children:[(0,U.jsx)(`span`,{id:g,children:(0,U.jsx)(f,{as:`span`,bold:!0,children:m?n.release:n.title})}),n.description&&(0,U.jsx)(f,{as:`span`,variant:`secondary`,size:`sm`,children:n.description})]}),b,(0,U.jsx)(s,{variant:`secondary`,icon:(0,U.jsx)(H,{}),onClick:()=>d.current?.click(),disabled:_,title:a,children:n.choose})]})}function ge(e,t={}){let n=(0,j.useRef)(null);return{open:()=>n.current?.click(),input:(0,U.jsx)(`input`,{ref:n,type:`file`,className:`sr-only`,tabIndex:-1,"aria-hidden":!0,accept:t.accept,multiple:t.multiple??!0,onChange:t=>{let n=W(t.currentTarget.files);t.currentTarget.value=``,n.length&&e(n)}})}}function _e({children:e,label:n,className:r}){return(0,U.jsx)(`ul`,{"aria-label":n,className:t(`grid grid-cols-[repeat(auto-fill,minmax(10rem,1fr))] gap-4`,r),children:e})}function ve({preview:e,title:n,meta:r,badges:i,href:a,onSelect:s,selected:l=!1,disabledReason:u,"data-testid":p}){let m=c(),h=(0,U.jsxs)(U.Fragment,{children:[(0,U.jsxs)(`span`,{className:`relative block`,children:[e,i&&(0,U.jsx)(`span`,{className:`absolute top-1.5 start-1.5 flex max-w-[calc(100%-0.75rem)] flex-wrap gap-1`,children:i}),l&&(0,U.jsx)(`span`,{className:`absolute top-1.5 end-1.5 flex size-6 items-center justify-center rounded-full bg-kumo-brand text-kumo-inverse`,children:(0,U.jsx)(d,{size:14,weight:`bold`,"aria-hidden":!0})})]}),(0,U.jsxs)(`span`,{className:`grid min-w-0 gap-0.5 px-1 pt-2 pb-1 text-start`,children:[(0,U.jsx)(f,{as:`span`,truncate:!0,children:n}),r&&(0,U.jsx)(f,{as:`span`,variant:`secondary`,size:`xs`,truncate:!0,children:r})]})]}),g=t(`block min-w-0 rounded-lg p-1.5 outline-none focus-visible:ring-2 focus-visible:ring-kumo-focus`,l?`bg-kumo-tint ring-2 ring-kumo-brand`:`hover:bg-kumo-tint`),_;if(a)_=(0,U.jsx)(m,{href:a,className:g,"data-testid":p,children:h});else{let e=u!==void 0,n=(0,U.jsx)(`button`,{type:`button`,"aria-pressed":l,"aria-disabled":e||void 0,onClick:()=>!e&&s?.(),className:t(g,`w-full`,e&&`cursor-not-allowed opacity-60`),"data-testid":p,children:h});_=u?(0,U.jsx)(o,{content:u,render:n}):n}return(0,U.jsx)(`li`,{className:`min-w-0`,children:_})}function q({icon:e,label:n,size:r=`tile`}){return(0,U.jsxs)(`span`,{className:t(`flex min-w-0 flex-col items-center justify-center gap-1 bg-kumo-recessed text-kumo-subtle ring ring-kumo-hairline`,r===`thumb`?`aspect-video w-14 shrink-0 rounded-md`:r===`card`?`aspect-[1.91/1] w-full rounded-lg`:`aspect-[4/3] w-full rounded-md`),children:[e,r!==`thumb`&&(0,U.jsx)(f,{as:`span`,variant:`secondary`,size:`xs`,children:n})]})}function J({kind:e,size:t=24}){return(0,U.jsx)(e===`image`?h:e===`video`?z:e===`audio`?N:e===`document`?L:e===`data`?F:m,{size:t,"aria-hidden":!0})}function ye({siteId:e,asset:t,size:n,alt:r}){let i=w(`media`),a=O(e,t);return t.kind===`image`?(0,U.jsx)(g,{size:n,fit:n===`card`?`contain`:`cover`,src:a,alt:r??``,...t.image?{placeholder:t.image}:{},labels:{empty:i(`media.preview.empty`),loading:i(`media.preview.loading`),error:i(`media.preview.broken`)}}):(0,U.jsx)(q,{size:n,icon:(0,U.jsx)(J,{kind:t.kind,size:n===`thumb`?16:n===`card`?40:28}),label:E(t.mediaType)})}function be({asset:e,defaultLocale:t,compact:n=!1}){let r=w(`media`),i=[];return e.status===`retired`&&i.push((0,U.jsx)(o,{content:r(`media.badges.retiredHint`),children:(0,U.jsx)(`span`,{className:`inline-flex`,"data-badge":`retired`,children:(0,U.jsx)(a,{variant:`secondary`,icon:(0,U.jsx)(u,{}),children:r(`media.badges.retired`)})})},`retired`)),D(e,t)&&i.push((0,U.jsx)(o,{content:r(`media.badges.missingAltHint`),children:(0,U.jsx)(`span`,{className:`inline-flex`,"data-badge":`missing-alt`,children:(0,U.jsx)(a,{variant:`warning`,icon:(0,U.jsx)(v,{}),children:r(n?`media.badges.missingAltShort`:`media.badges.missingAlt`)})})},`alt`)),e.uploadedBy.kind===`agent`&&!n&&i.push((0,U.jsx)(o,{content:r(`media.badges.agentHint`,{name:e.uploadedBy.name??e.uploadedBy.id}),children:(0,U.jsx)(`span`,{className:`inline-flex`,"data-badge":`agent`,children:(0,U.jsx)(a,{variant:`outline`,icon:(0,U.jsx)(ie,{}),children:r(`media.badges.agent`)})})},`agent`)),i.length?i:null}function xe({count:e,overlay:t=!1}){let n=w(`media`);return(0,U.jsx)(`span`,{className:`inline-flex`,"data-usage":e,children:(0,U.jsx)(a,{variant:t?`secondary`:e>0?`info`:`outline`,children:e===0?n(`media.usage.none`):n(`media.usage.used`,{count:e})})})}function Se(e){return`uploadId`in e}var Y=class extends Error{name=`UploadTransportError`;code;constructor(e){super(e),this.code=e}};function Ce(e,t,n={}){return new Promise((r,i)=>{if(!/^\/api\/sites\/[^/]+\/assets\/uploads\/upl_[A-Za-z0-9]+\?sig=/.test(e.url)){i(new Y(`network`));return}let a=new XMLHttpRequest;a.open(e.method,e.url),a.withCredentials=!0;for(let[t,n]of Object.entries(e.headers))a.setRequestHeader(t,n);if(a.upload.onprogress=e=>{e.lengthComputable&&n.onProgress?.(e.loaded,e.total)},a.onload=()=>{let e;try{e=JSON.parse(a.responseText)}catch{e={error:`unknown`,message:a.statusText}}a.status>=200&&a.status<300?r(e):i(new x(a.status,e))},a.onerror=()=>i(new Y(`network`)),a.onabort=()=>i(new Y(`aborted`)),n.signal){if(n.signal.aborted){i(new Y(`aborted`));return}n.signal.addEventListener(`abort`,()=>a.abort(),{once:!0})}a.send(t)})}var X=e=>e.kind===`image`,Z=e=>!X(e)||e.decorative||e.alt.trim().length>0,we=0,Te=()=>`upload-${Date.now().toString(36)}-${(we++).toString(36)}`,Ee=3;function Q(e,t={}){let n=l(),[r,i]=(0,j.useState)([]),a=(0,j.useRef)(new Map),o=(0,j.useRef)(t.onUploaded);o.current=t.onUploaded;let s=(0,j.useCallback)((e,t)=>{i(n=>n.map(n=>n.id===e?{...n,...t}:n))},[]),c=(0,j.useRef)(r);c.current=r;let u=(0,j.useCallback)(async e=>{try{let[t,n]=await Promise.all([k(e.file),X(e)?e.file.arrayBuffer():Promise.resolve(void 0)]),r=n&&e.mediaType?ae(new Uint8Array(n),e.mediaType):void 0,{lqip:i,color:a}=r?await ce(e.file):{};s(e.id,{state:`ready`,sha256:t,...r?{image:r}:{},...i?{lqip:i}:{},...a?{color:a}:{}})}catch{s(e.id,{state:`error`,error:`unknown`})}},[s]),d=(0,j.useCallback)(e=>{let t=c.current.filter(e=>e.state===`ready`||e.state===`preparing`).length,n=Math.max(0,20-t),r=e.map((e,t)=>{let r=oe(e),i={id:Te(),file:e,state:`preparing`,alt:``,decorative:!1,keepMetadata:!1,progress:0,...r.mediaType?{mediaType:r.mediaType}:{},...r.kind?{kind:r.kind}:{}};return t>=n?{...i,state:`error`,error:`too_many_files`}:r.problem?{...i,state:`error`,error:r.problem}:i});i(e=>[...e,...r]);for(let e of r)e.state===`preparing`&&u(e)},[u]),f=(0,j.useCallback)(e=>{a.current.get(e)?.abort(),i(t=>t.filter(t=>t.id!==e))},[]),p=(0,j.useCallback)(e=>{a.current.get(e)?.abort(),s(e,{state:`canceled`})},[s]),m=(0,j.useCallback)(()=>{for(let e of a.current.values())e.abort();a.current.clear(),i([])},[]),h=r.filter(e=>e.state===`ready`),g=h.length>0&&h.every(Z),_=r.some(e=>e.state===`uploading`||e.state===`preparing`),v=(0,j.useCallback)(async()=>{let t=r.filter(e=>e.state===`ready`&&Z(e));if(t.length===0)return;for(let e of t)s(e.id,{state:`uploading`,progress:0});let i=t.map(e=>({filename:e.file.name,bytes:e.file.size,mediaType:e.mediaType??e.file.type,...e.sha256?{sha256:e.sha256}:{},...X(e)&&e.alt.trim()&&!e.decorative?{alt:e.alt.trim()}:{},...X(e)&&e.decorative?{decorative:!0}:{},...e.image?.gps&&e.keepMetadata?{keepMetadata:!0}:{},...e.lqip||e.color?{image:{...e.lqip?{lqip:e.lqip}:{},...e.color?{color:e.color}:{}}}:{}})),c;try{c=(await te.assets.requestUploads(e,i)).files}catch(e){let n=e instanceof x?A(e.body.error):`network`;for(let e of t)s(e.id,{state:`error`,error:n});return}let l=[],u=c.map((e,n)=>({ticket:e,item:t[n]}));await Promise.all(Array.from({length:Math.min(Ee,u.length)},async()=>{for(;;){let e=u.shift();if(!e)return;let{ticket:t,item:n}=e;if(`existing`in t){s(n.id,{state:`existing`,progress:100,result:t.existing}),l.push(t.existing);continue}if(!Se(t)){s(n.id,{state:`error`,error:A(t.error.code)});continue}let r=new AbortController;a.current.set(n.id,r);try{let e=await Ce(t,n.file,{signal:r.signal,onProgress:(e,t)=>s(n.id,{progress:Math.min(99,Math.round(e/t*100))})});s(n.id,{state:e.existing?`existing`:`done`,progress:100,result:e}),l.push(e)}catch(e){e instanceof Y&&e.code===`aborted`?s(n.id,{state:`canceled`}):s(n.id,{state:`error`,error:e instanceof x?A(e.body.error):e instanceof Y?`network`:`unknown`})}finally{a.current.delete(n.id)}}})),l.length&&(await n.invalidateQueries({queryKey:[`assets`,e]}),o.current?.(l))},[r,s,n,e]);return(0,j.useEffect)(()=>()=>{for(let e of a.current.values())e.abort()},[]),{items:r,add:d,remove:f,cancel:p,reset:m,start:v,patch:s,canStart:g,busy:_,ready:h.length}}function De(e,t){let n=(0,j.useMemo)(()=>t&&typeof URL.createObjectURL==`function`?URL.createObjectURL(e):void 0,[e,t]);return(0,j.useEffect)(()=>()=>{n&&URL.revokeObjectURL?.(n)},[n]),n}function Oe({item:e}){let t=w(`media`);return e.state===`uploading`?(0,U.jsx)(ne,{label:t(`media.upload.progress`),value:e.progress,customValue:t(`media.upload.percent`,{percent:e.progress})}):e.state===`error`?(0,U.jsxs)(`span`,{className:`flex items-start gap-1.5 text-kumo-danger`,"data-upload-error":e.error,children:[(0,U.jsx)(`span`,{className:`flex h-lh items-center`,children:(0,U.jsx)(y,{size:14,weight:`fill`,"aria-hidden":!0})}),(0,U.jsx)(f,{as:`span`,size:`sm`,variant:`error`,children:t(`media.upload.errors.${e.error??`unknown`}`)})]}):e.state===`done`||e.state===`existing`?(0,U.jsxs)(`span`,{className:`flex items-center gap-1.5`,children:[(0,U.jsx)(p,{size:14,weight:`fill`,className:`text-kumo-success`,"aria-hidden":!0}),(0,U.jsx)(f,{as:`span`,size:`sm`,variant:`secondary`,children:t(`media.upload.status.${e.state}`)})]}):(0,U.jsx)(f,{as:`span`,size:`sm`,variant:`secondary`,children:t(`media.upload.status.${e.state}`)})}function ke({item:e,upload:t}){let n=w(`media`),{locale:r}=C(`media`),i=X(e),o=De(e.file,i&&e.state!==`error`),c=e.state===`ready`||e.state===`preparing`,l=e.state===`ready`&&!Z(e);return(0,U.jsxs)(`div`,{className:`grid min-w-0 gap-3 py-3 first:pt-0 last:pb-0`,"data-testid":`upload-row`,"data-state":e.state,children:[(0,U.jsxs)(`div`,{className:`flex min-w-0 items-start gap-3`,children:[i&&o?(0,U.jsx)(g,{size:`thumb`,src:o,alt:``,labels:{empty:n(`media.preview.empty`),loading:n(`media.preview.loading`),error:n(`media.preview.broken`)}}):(0,U.jsx)(q,{size:`thumb`,icon:(0,U.jsx)(J,{kind:e.kind,size:16}),label:e.mediaType?E(e.mediaType):``}),(0,U.jsxs)(`div`,{className:`grid min-w-0 flex-1 gap-1`,children:[(0,U.jsxs)(`span`,{className:`flex min-w-0 items-center gap-2`,children:[(0,U.jsx)(f,{as:`span`,truncate:!0,children:e.file.name}),e.mediaType&&(0,U.jsx)(`span`,{className:`inline-flex shrink-0`,children:(0,U.jsx)(a,{variant:`outline`,children:E(e.mediaType)})})]}),(0,U.jsxs)(f,{as:`span`,variant:`secondary`,size:`sm`,children:[se(e.file.size,r),e.image?` · ${e.image.width} × ${e.image.height}`:``]}),(0,U.jsx)(Oe,{item:e})]}),e.state===`uploading`?(0,U.jsx)(s,{variant:`ghost`,size:`sm`,shape:`square`,icon:(0,U.jsx)(T,{}),"aria-label":n(`media.upload.cancel`,{name:e.file.name}),title:n(`media.upload.cancel`,{name:e.file.name}),onClick:()=>t.cancel(e.id)}):(0,U.jsx)(s,{variant:`ghost`,size:`sm`,shape:`square`,icon:(0,U.jsx)(T,{}),"aria-label":n(`media.upload.remove`,{name:e.file.name}),title:n(`media.upload.remove`,{name:e.file.name}),onClick:()=>t.remove(e.id)})]}),i&&c&&(0,U.jsxs)(`div`,{className:`grid min-w-0 gap-3`,children:[(0,U.jsx)(ee,{label:n(`media.upload.alt`),value:e.alt,placeholder:n(`media.upload.altPlaceholder`),onValueChange:n=>t.patch(e.id,{alt:n}),description:n(`media.upload.altHint`),error:l?n(`media.upload.altRequired`):void 0,disabled:e.decorative,maxLength:500,className:`w-full`,"data-testid":`upload-alt`}),(0,U.jsx)(_,{label:n(`media.upload.decorative`),checked:e.decorative,onCheckedChange:n=>t.patch(e.id,{decorative:n})}),e.image?.gps&&(0,U.jsxs)(`div`,{className:`grid gap-2`,"data-testid":`upload-gps`,children:[(0,U.jsx)(b,{variant:`alert`,size:`sm`,icon:(0,U.jsx)(he,{weight:`fill`}),title:n(`media.upload.gpsTitle`),description:n(`media.upload.gpsDescription`)}),(0,U.jsx)(_,{label:n(`media.upload.keepMetadata`),checked:e.keepMetadata,onCheckedChange:n=>t.patch(e.id,{keepMetadata:n})})]})]})]})}function $({upload:e,accept:t,multiple:n=!0,disabledReason:r,description:i,inlineStart:a=!1}){let o=w(`media`),{items:c}=e,l=c.filter(e=>e.state===`done`||e.state===`existing`).length;return(0,U.jsxs)(`div`,{className:`grid min-w-0 gap-4`,children:[(0,U.jsx)(K,{onFiles:e.add,accept:t,multiple:n,disabledReason:r,labels:{title:o(`media.drop.title`),description:i,choose:o(`media.drop.choose`),release:o(`media.drop.release`)},"data-testid":`media-drop`}),c.length>0&&(0,U.jsxs)(re,{label:o(`media.upload.queueLabel`),children:[(0,U.jsxs)(`div`,{className:`flex flex-wrap items-center justify-between gap-2`,children:[(0,U.jsx)(f,{as:`span`,bold:!0,children:o(`media.upload.queueLabel`)}),(0,U.jsx)(f,{as:`span`,variant:`secondary`,size:`sm`,children:o(`media.upload.summary`,{done:l,total:c.length})})]}),(0,U.jsx)(`div`,{className:`grid divide-y divide-kumo-hairline`,"data-testid":`upload-queue`,children:c.map(t=>(0,U.jsx)(ke,{item:t,upload:e},t.id))}),a&&e.ready>0&&(0,U.jsx)(`div`,{className:`flex justify-end`,children:(0,U.jsx)(s,{variant:`secondary`,icon:(0,U.jsx)(H,{}),disabled:!e.canStart,loading:e.busy,onClick:()=>void e.start(),"data-testid":`upload-start`,children:o(`media.upload.inlineStart`)})})]})]})}function Ae({siteId:e,open:t,onOpenChange:n,initialFiles:r,accept:i,disabledReason:a}){let o=w(`media`),s=Q(e),c=(0,j.useRef)(void 0);(0,j.useEffect)(()=>{t&&r.length&&c.current!==r&&(c.current=r,s.add(r))},[t,r,s.add]);let l=s.items.some(e=>e.state!==`ready`&&e.state!==`preparing`),u=s.ready>0,d=e=>{if(e)return n(!0);n(!1),s.reset(),c.current=void 0};return(0,U.jsx)(S.Root,{open:t,onOpenChange:d,dismissDisabled:s.busy,children:(0,U.jsxs)(S.Content,{size:`lg`,closeLabel:o(`common.close`),children:[(0,U.jsx)(S.Title,{children:o(`media.upload.title`)}),(0,U.jsx)(S.Description,{children:o(`media.upload.description`)}),(0,U.jsx)(S.Body,{children:(0,U.jsx)($,{upload:s,accept:i,disabledReason:a,description:o(`media.drop.description`)})}),(0,U.jsx)(S.Actions,{dismissLabel:o(`common.cancel`),children:(0,U.jsx)(S.Actions.Primary,{disabled:u?!s.canStart:!l||s.busy,loading:s.busy,onClick:()=>u?void s.start():d(!1),"data-testid":`upload-primary`,children:u?o(`media.upload.start`,{count:s.ready}):o(`media.upload.done`)})})]})})}export{ye as a,_e as c,H as d,be as i,ve as l,$ as n,xe as o,Q as r,K as s,Ae as t,ge as u};
2
- //# sourceMappingURL=MediaUpload-DnGt_uIK.js.map
1
+ import{r as e}from"./rolldown-runtime-hePW80VL.js";import{n as t,t as n}from"./IconBase.es-BZDpYMnj.js";import{i as r,r as i}from"./react-CDCuUAOg.js";import{t as a}from"./badge-dq8bx752b9dp7dst--rpq8QXS.js";import{o,t as s,w as c}from"./button-pa1bq9b85hawg41a-CmOCuL-1.js";import{S as l}from"./tanstack-BRxyYm4G.js";import{t as u}from"./Archive.es-C0uhxndN.js";import{h as d,n as f}from"./skeleton-line-m9dyh126t9k07jvg-BFlcthbF.js";import{t as p}from"./CheckCircle.es-XJ9Tr9Tu.js";import{t as m}from"./File.es-VYp_u8mn.js";import{t as h}from"./Image.es-BcOUS77O.js";import{t as g}from"./SeoPreview-B0gV3OO-.js";import{t as _}from"./checkbox-lbo436duy7krxcsk-HiD6vTuC.js";import{t as v}from"./TextAa.es-CuNv62rI.js";import{n as y,t as b}from"./banner-msnmqm7of2lck01x-D6cADEpP.js";import{t as ee}from"./input-c8lv9ulv0kortliq-Be2cm12J.js";import{a as x,t as te}from"./api-CHeogUo-.js";import{t as ne}from"./meter-majprsslwmpbmkzg-Bio9f57s.js";import{t as S}from"./layer-dialog-j5ywmzs46ccg6oqy-uKC-1DCk.js";import{t as re}from"./InsetPanel-CHSg953_.js";import{c as C,u as w}from"./i18n-CCHry74V.js";import{F as T,W as ie}from"./index-OjH3NEOH.js";import{_ as ae,b as E,d as oe,f as se,g as ce,h as D,l as O,v as k,x as A}from"./media-DdL6ngu5.js";var j=e(r(),1),le=new Map([[`bold`,j.createElement(j.Fragment,null,j.createElement(`path`,{d:`M96.59,124.91a12,12,0,0,0-13.08,2.6L63,148H44a12,12,0,0,0-12,12v40a12,12,0,0,0,12,12H63l20.48,20.48A12,12,0,0,0,104,224V136A12,12,0,0,0,96.59,124.91ZM80,195l-3.51-3.52A12,12,0,0,0,68,188H56V172H68a12,12,0,0,0,8.49-3.51L80,165Zm80-15a44.55,44.55,0,0,1-21.95,38.36A12,12,0,1,1,126,197.64a20.51,20.51,0,0,0,0-35.28,12,12,0,1,1,12.1-20.72A44.55,44.55,0,0,1,160,180ZM216.49,79.51l-56-56A12,12,0,0,0,152,20H56A20,20,0,0,0,36,40v72a12,12,0,0,0,24,0V44h76V92a12,12,0,0,0,12,12h48V212H180a12,12,0,0,0,0,24h20a20,20,0,0,0,20-20V88A12,12,0,0,0,216.49,79.51ZM160,57l23,23H160Z`}))],[`fill`,j.createElement(j.Fragment,null,j.createElement(`path`,{d:`M152,180a40.55,40.55,0,0,1-20,34.91A8,8,0,0,1,124,201.09a24.49,24.49,0,0,0,0-42.18A8,8,0,0,1,132,145.09,40.55,40.55,0,0,1,152,180ZM99.06,128.61a8,8,0,0,0-8.72,1.73L68.69,152H48a8,8,0,0,0-8,8v40a8,8,0,0,0,8,8H68.69l21.65,21.66A8,8,0,0,0,104,224V136A8,8,0,0,0,99.06,128.61ZM216,88V216a16,16,0,0,1-16,16H168a8,8,0,0,1,0-16h32V96H152a8,8,0,0,1-8-8V40H56v80a8,8,0,0,1-16,0V40A16,16,0,0,1,56,24h96a8,8,0,0,1,5.66,2.34l56,56A8,8,0,0,1,216,88Zm-56-8h28.69L160,51.31Z`}))],[`regular`,j.createElement(j.Fragment,null,j.createElement(`path`,{d:`M99.06,128.61a8,8,0,0,0-8.72,1.73L68.69,152H48a8,8,0,0,0-8,8v40a8,8,0,0,0,8,8H68.69l21.65,21.66A8,8,0,0,0,104,224V136A8,8,0,0,0,99.06,128.61ZM88,204.69,77.66,194.34A8,8,0,0,0,72,192H56V168H72a8,8,0,0,0,5.66-2.34L88,155.31ZM152,180a40.55,40.55,0,0,1-20,34.91A8,8,0,0,1,124,201.09a24.49,24.49,0,0,0,0-42.18A8,8,0,0,1,132,145.09,40.55,40.55,0,0,1,152,180Zm61.66-97.66-56-56A8,8,0,0,0,152,24H56A16,16,0,0,0,40,40v80a8,8,0,0,0,16,0V40h88V88a8,8,0,0,0,8,8h48V216H168a8,8,0,0,0,0,16h32a16,16,0,0,0,16-16V88A8,8,0,0,0,213.66,82.34ZM160,51.31,188.69,80H160Z`}))]]),ue=new Map([[`bold`,j.createElement(j.Fragment,null,j.createElement(`path`,{d:`M48,180c0,8.67,5.49,16,12,16a10.27,10.27,0,0,0,7.33-3.43,12,12,0,1,1,17.34,16.6A34,34,0,0,1,60,220C40.15,220,24,202,24,180s16.15-40,36-40a34,34,0,0,1,24.67,10.83,12,12,0,1,1-17.34,16.6A10.27,10.27,0,0,0,60,164C53.49,164,48,171.31,48,180Zm97.51-5.71c-5.13-3.45-11.33-5.24-16.8-6.82a79.5,79.5,0,0,1-7.91-2.59c2.45-1.18,9.71-1.3,16.07.33A12,12,0,0,0,143,142a69.24,69.24,0,0,0-12-1.86c-9.93-.66-18,1.08-24.1,5.17a24.45,24.45,0,0,0-10.69,17.76c-1.1,8.74,2.48,16.27,10.11,21.19,4.78,3.09,10.36,4.7,15.75,6.26,3,.89,7.94,2.3,9.88,3.53a2,2,0,0,1-.22.71c-1.36,1.55-9.57,1.79-16.39-.06a12,12,0,0,0-6.45,23.11A63.73,63.73,0,0,0,125.09,220c6.47,0,13.74-1.17,19.74-5.15a24.73,24.73,0,0,0,10.95-18C157,187.53,153.32,179.53,145.51,174.27ZM216,140.68A12,12,0,0,0,200.7,148L192,172.3,183.3,148A12,12,0,1,0,160.7,156l20,56a12,12,0,0,0,22.6,0l20-56A12,12,0,0,0,216,140.68ZM36,108V40A20,20,0,0,1,56,20h96a12,12,0,0,1,8.49,3.51l56,56A12,12,0,0,1,220,88v20a12,12,0,1,1-24,0v-4H148a12,12,0,0,1-12-12V44H60v64a12,12,0,1,1-24,0ZM160,80h23L160,57Z`}))],[`fill`,j.createElement(j.Fragment,null,j.createElement(`path`,{d:`M213.66,82.34l-56-56A8,8,0,0,0,152,24H56A16,16,0,0,0,40,40v76a4,4,0,0,0,4,4H212a4,4,0,0,0,4-4V88A8,8,0,0,0,213.66,82.34ZM152,88V44l44,44ZM48,180c0,11,7.18,20,16,20a14.18,14.18,0,0,0,10.06-4.5,8.21,8.21,0,0,1,10.9-.91,8,8,0,0,1,.82,11.81A30.06,30.06,0,0,1,64,216c-17.64,0-32-16.15-32-36s14.36-36,32-36a30,30,0,0,1,21.39,9.19,8.26,8.26,0,0,1,.73,11.09,8,8,0,0,1-11.9.38A14.17,14.17,0,0,0,64,160C55.18,160,48,169,48,180Zm103.81,16.31a20.82,20.82,0,0,1-9.19,15.23C137.43,215,131,216,125.13,216A61.14,61.14,0,0,1,110,214a8,8,0,1,1,4.3-15.41c4.38,1.2,14.95,2.7,19.55-.36.88-.59,1.83-1.52,2.14-3.93.35-2.67-.71-4.1-12.78-7.59-9.35-2.7-25-7.23-23-23.11a20.56,20.56,0,0,1,9-14.95c11.84-8,30.71-3.31,32.83-2.76a8,8,0,0,1-4.07,15.48c-4.49-1.17-15.23-2.56-19.83.56a4.54,4.54,0,0,0-2,3.67c-.12.9-.14,1.09,1.11,1.9,2.31,1.49,6.45,2.68,10.45,3.84C137.49,174.17,154.05,179,151.81,196.31ZM215.42,155l-19.89,55.68a8,8,0,0,1-15.06,0L160.58,155a8.21,8.21,0,0,1,4.5-10.45,8,8,0,0,1,10.45,4.76L188,184.21l12.47-34.9a8,8,0,0,1,10.45-4.76A8.23,8.23,0,0,1,215.42,155Z`}))],[`regular`,j.createElement(j.Fragment,null,j.createElement(`path`,{d:`M48,180c0,11,7.18,20,16,20a14.24,14.24,0,0,0,10.22-4.66A8,8,0,0,1,85.78,206.4,30.06,30.06,0,0,1,64,216c-17.65,0-32-16.15-32-36s14.35-36,32-36a30.06,30.06,0,0,1,21.78,9.6,8,8,0,0,1-11.56,11.06A14.24,14.24,0,0,0,64,160C55.18,160,48,169,48,180Zm79.6-8.69c-4-1.16-8.14-2.35-10.45-3.84-1.25-.81-1.23-1-1.12-1.9a4.57,4.57,0,0,1,2-3.67c4.6-3.12,15.34-1.73,19.82-.56A8,8,0,0,0,142,145.86c-2.12-.55-21-5.22-32.84,2.76a20.58,20.58,0,0,0-9,14.95c-2,15.88,13.65,20.41,23,23.11,12.06,3.49,13.12,4.92,12.78,7.59-.31,2.41-1.26,3.34-2.14,3.93-4.6,3.06-15.17,1.56-19.55.36A8,8,0,0,0,109.94,214a61.34,61.34,0,0,0,15.19,2c5.82,0,12.3-1,17.49-4.46a20.82,20.82,0,0,0,9.19-15.23C154,179,137.49,174.17,127.6,171.31Zm83.09-26.84a8,8,0,0,0-10.23,4.84L188,184.21l-12.47-34.9a8,8,0,0,0-15.07,5.38l20,56a8,8,0,0,0,15.07,0l20-56A8,8,0,0,0,210.69,144.47ZM216,88v24a8,8,0,0,1-16,0V96H152a8,8,0,0,1-8-8V40H56v72a8,8,0,0,1-16,0V40A16,16,0,0,1,56,24h96a8,8,0,0,1,5.66,2.34l56,56A8,8,0,0,1,216,88Zm-27.31-8L160,51.31V80Z`}))]]),de=new Map([[`bold`,j.createElement(j.Fragment,null,j.createElement(`path`,{d:`M200,164v8h12a12,12,0,0,1,0,24H200v12a12,12,0,0,1-24,0V152a12,12,0,0,1,12-12h32a12,12,0,0,1,0,24ZM92,172a32,32,0,0,1-32,32H56v4a12,12,0,0,1-24,0V152a12,12,0,0,1,12-12H60A32,32,0,0,1,92,172Zm-24,0a8,8,0,0,0-8-8H56v16h4A8,8,0,0,0,68,172Zm100,8a40,40,0,0,1-40,40H112a12,12,0,0,1-12-12V152a12,12,0,0,1,12-12h16A40,40,0,0,1,168,180Zm-24,0a16,16,0,0,0-16-16h-4v32h4A16,16,0,0,0,144,180ZM36,108V40A20,20,0,0,1,56,20h96a12,12,0,0,1,8.49,3.52l56,56A12,12,0,0,1,220,88v20a12,12,0,0,1-24,0v-4H148a12,12,0,0,1-12-12V44H60v64a12,12,0,0,1-24,0ZM160,57V80h23Z`}))],[`fill`,j.createElement(j.Fragment,null,j.createElement(`path`,{d:`M44,120H212a4,4,0,0,0,4-4V88a8,8,0,0,0-2.34-5.66l-56-56A8,8,0,0,0,152,24H56A16,16,0,0,0,40,40v76A4,4,0,0,0,44,120ZM152,44l44,44H152Zm72,108.53a8.18,8.18,0,0,1-8.25,7.47H192v16h15.73a8.17,8.17,0,0,1,8.25,7.47,8,8,0,0,1-8,8.53H192v15.73a8.17,8.17,0,0,1-7.47,8.25,8,8,0,0,1-8.53-8V152a8,8,0,0,1,8-8h32A8,8,0,0,1,224,152.53ZM64,144H48a8,8,0,0,0-8,8v55.73A8.17,8.17,0,0,0,47.47,216,8,8,0,0,0,56,208v-8h7.4c15.24,0,28.14-11.92,28.59-27.15A28,28,0,0,0,64,144Zm-.35,40H56V160h8a12,12,0,0,1,12,13.16A12.25,12.25,0,0,1,63.65,184ZM128,144H112a8,8,0,0,0-8,8v56a8,8,0,0,0,8,8h15.32c19.66,0,36.21-15.48,36.67-35.13A36,36,0,0,0,128,144Zm-.49,56H120V160h8a20,20,0,0,1,20,20.77C147.58,191.59,138.34,200,127.51,200Z`}))],[`regular`,j.createElement(j.Fragment,null,j.createElement(`path`,{d:`M224,152a8,8,0,0,1-8,8H192v16h16a8,8,0,0,1,0,16H192v16a8,8,0,0,1-16,0V152a8,8,0,0,1,8-8h32A8,8,0,0,1,224,152ZM92,172a28,28,0,0,1-28,28H56v8a8,8,0,0,1-16,0V152a8,8,0,0,1,8-8H64A28,28,0,0,1,92,172Zm-16,0a12,12,0,0,0-12-12H56v24h8A12,12,0,0,0,76,172Zm88,8a36,36,0,0,1-36,36H112a8,8,0,0,1-8-8V152a8,8,0,0,1,8-8h16A36,36,0,0,1,164,180Zm-16,0a20,20,0,0,0-20-20h-8v40h8A20,20,0,0,0,148,180ZM40,112V40A16,16,0,0,1,56,24h96a8,8,0,0,1,5.66,2.34l56,56A8,8,0,0,1,216,88v24a8,8,0,0,1-16,0V96H152a8,8,0,0,1-8-8V40H56v72a8,8,0,0,1-16,0ZM160,80h28.69L160,51.31Z`}))]]),fe=new Map([[`bold`,j.createElement(j.Fragment,null,j.createElement(`path`,{d:`M216.49,79.51l-56-56A12,12,0,0,0,152,20H56A20,20,0,0,0,36,40v68a12,12,0,0,0,24,0V44h76V92a12,12,0,0,0,12,12h48V212a12,12,0,0,0,0,24h4a20,20,0,0,0,20-20V88A12,12,0,0,0,216.49,79.51ZM160,57l23,23H160Zm-1.91,84.69a12,12,0,0,0-11.92-.15L126.5,152.44A20,20,0,0,0,108,140H48a20,20,0,0,0-20,20v48a20,20,0,0,0,20,20h60a20,20,0,0,0,18.5-12.44l19.67,10.93A12,12,0,0,0,164,216V152A12,12,0,0,0,158.09,141.66ZM104,204H52V164h52Zm36-8.39-12-6.67v-9.88l12-6.67Z`}))],[`fill`,j.createElement(j.Fragment,null,j.createElement(`path`,{d:`M213.66,82.34l-56-56A8,8,0,0,0,152,24H56A16,16,0,0,0,40,40v72a8,8,0,0,0,16,0V40h88V88a8,8,0,0,0,8,8h48V216h-8a8,8,0,0,0,0,16h8a16,16,0,0,0,16-16V88A8,8,0,0,0,213.66,82.34ZM160,51.31,188.69,80H160ZM155.88,145a8,8,0,0,0-8.12.22l-19.95,12.46A16,16,0,0,0,112,144H48a16,16,0,0,0-16,16v48a16,16,0,0,0,16,16h64a16,16,0,0,0,15.81-13.68l19.95,12.46A8,8,0,0,0,160,216V152A8,8,0,0,0,155.88,145ZM144,201.57l-16-10V176.43l16-10Z`}))],[`regular`,j.createElement(j.Fragment,null,j.createElement(`path`,{d:`M213.66,82.34l-56-56A8,8,0,0,0,152,24H56A16,16,0,0,0,40,40v72a8,8,0,0,0,16,0V40h88V88a8,8,0,0,0,8,8h48V216h-8a8,8,0,0,0,0,16h8a16,16,0,0,0,16-16V88A8,8,0,0,0,213.66,82.34ZM160,51.31,188.69,80H160ZM155.88,145a8,8,0,0,0-8.12.22l-19.95,12.46A16,16,0,0,0,112,144H48a16,16,0,0,0-16,16v48a16,16,0,0,0,16,16h64a16,16,0,0,0,15.81-13.68l19.95,12.46A8,8,0,0,0,160,216V152A8,8,0,0,0,155.88,145ZM112,208H48V160h64v48Zm32-6.43-16-10V176.43l16-10Z`}))]]),pe=new Map([[`bold`,j.createElement(j.Fragment,null,j.createElement(`path`,{d:`M128,60a44,44,0,1,0,44,44A44.05,44.05,0,0,0,128,60Zm0,64a20,20,0,1,1,20-20A20,20,0,0,1,128,124Zm0-112a92.1,92.1,0,0,0-92,92c0,77.36,81.64,135.4,85.12,137.83a12,12,0,0,0,13.76,0,259,259,0,0,0,42.18-39C205.15,170.57,220,136.37,220,104A92.1,92.1,0,0,0,128,12Zm31.3,174.71A249.35,249.35,0,0,1,128,216.89a249.35,249.35,0,0,1-31.3-30.18C80,167.37,60,137.31,60,104a68,68,0,0,1,136,0C196,137.31,176,167.37,159.3,186.71Z`}))],[`fill`,j.createElement(j.Fragment,null,j.createElement(`path`,{d:`M128,16a88.1,88.1,0,0,0-88,88c0,75.3,80,132.17,83.41,134.55a8,8,0,0,0,9.18,0C136,236.17,216,179.3,216,104A88.1,88.1,0,0,0,128,16Zm0,56a32,32,0,1,1-32,32A32,32,0,0,1,128,72Z`}))],[`regular`,j.createElement(j.Fragment,null,j.createElement(`path`,{d:`M128,64a40,40,0,1,0,40,40A40,40,0,0,0,128,64Zm0,64a24,24,0,1,1,24-24A24,24,0,0,1,128,128Zm0-112a88.1,88.1,0,0,0-88,88c0,31.4,14.51,64.68,42,96.25a254.19,254.19,0,0,0,41.45,38.3,8,8,0,0,0,9.18,0A254.19,254.19,0,0,0,174,200.25c27.45-31.57,42-64.85,42-96.25A88.1,88.1,0,0,0,128,16Zm0,206c-16.53-13-72-60.75-72-118a72,72,0,0,1,144,0C200,161.23,144.53,209,128,222Z`}))]]),me=new Map([[`bold`,j.createElement(j.Fragment,null,j.createElement(`path`,{d:`M228,144v64a12,12,0,0,1-12,12H40a12,12,0,0,1-12-12V144a12,12,0,0,1,24,0v52H204V144a12,12,0,0,1,24,0ZM96.49,80.49,116,61v83a12,12,0,0,0,24,0V61l19.51,19.52a12,12,0,1,0,17-17l-40-40a12,12,0,0,0-17,0l-40,40a12,12,0,1,0,17,17Z`}))],[`fill`,j.createElement(j.Fragment,null,j.createElement(`path`,{d:`M224,144v64a8,8,0,0,1-8,8H40a8,8,0,0,1-8-8V144a8,8,0,0,1,16,0v56H208V144a8,8,0,0,1,16,0ZM88,80h32v64a8,8,0,0,0,16,0V80h32a8,8,0,0,0,5.66-13.66l-40-40a8,8,0,0,0-11.32,0l-40,40A8,8,0,0,0,88,80Z`}))],[`regular`,j.createElement(j.Fragment,null,j.createElement(`path`,{d:`M224,144v64a8,8,0,0,1-8,8H40a8,8,0,0,1-8-8V144a8,8,0,0,1,16,0v56H208V144a8,8,0,0,1,16,0ZM93.66,77.66,120,51.31V144a8,8,0,0,0,16,0V51.31l26.34,26.35a8,8,0,0,0,11.32-11.32l-40-40a8,8,0,0,0-11.32,0l-40,40A8,8,0,0,0,93.66,77.66Z`}))]]),M=j.forwardRef((e,t)=>j.createElement(n,{ref:t,...e,weights:le}));M.displayName=`FileAudioIcon`;var N=M,P=j.forwardRef((e,t)=>j.createElement(n,{ref:t,...e,weights:ue}));P.displayName=`FileCsvIcon`;var F=P,I=j.forwardRef((e,t)=>j.createElement(n,{ref:t,...e,weights:de}));I.displayName=`FilePdfIcon`;var L=I,R=j.forwardRef((e,t)=>j.createElement(n,{ref:t,...e,weights:fe}));R.displayName=`FileVideoIcon`;var z=R,B=j.forwardRef((e,t)=>j.createElement(n,{ref:t,...e,weights:pe}));B.displayName=`MapPinIcon`;var he=B,V=j.forwardRef((e,t)=>j.createElement(n,{ref:t,...e,weights:me}));V.displayName=`UploadSimpleIcon`;var H=V,U=i();function W(e){return e?Array.from(e):[]}var G=e=>Array.from(e.dataTransfer?.types??[]).includes(`Files`);function K({onFiles:e,labels:n,accept:r,multiple:i=!0,disabledReason:a,variant:o=`area`,children:c,className:l,"data-testid":u}){let d=(0,j.useRef)(null),p=(0,j.useRef)(0),[m,h]=(0,j.useState)(!1),g=(0,j.useId)(),_=a!==void 0,v=t=>{_||t.length===0||e(i?t:t.slice(0,1))},y={onDragEnter:e=>{!_&&G(e)&&(e.preventDefault(),p.current+=1,h(!0))},onDragOver:e=>{!_&&G(e)&&(e.preventDefault(),e.dataTransfer&&(e.dataTransfer.dropEffect=`copy`))},onDragLeave:()=>{p.current=Math.max(0,p.current-1),p.current===0&&h(!1)},onDrop:e=>{!_&&G(e)&&(e.preventDefault(),p.current=0,h(!1),v(W(e.dataTransfer?.files)))},onPaste:e=>{let t=W(e.clipboardData?.files);t.length!==0&&(e.preventDefault(),v(t))}},b=(0,U.jsx)(`input`,{ref:d,type:`file`,className:`sr-only`,tabIndex:-1,"aria-hidden":!0,accept:r,multiple:i,onChange:e=>{v(W(e.currentTarget.files)),e.currentTarget.value=``}});return o===`overlay`?(0,U.jsxs)(`div`,{...y,className:t(`relative min-w-0`,l),"data-dragging":m||void 0,"data-testid":u,children:[c,m&&(0,U.jsx)(`div`,{"aria-hidden":!0,className:`pointer-events-none absolute inset-0 z-10 flex items-center justify-center rounded-xl border-2 border-dashed border-kumo-brand bg-kumo-tint/90`,children:(0,U.jsxs)(`span`,{className:`flex items-center gap-2 text-kumo-default`,children:[(0,U.jsx)(H,{size:20}),(0,U.jsx)(f,{as:`span`,bold:!0,children:n.release})]})})]}):(0,U.jsxs)(`div`,{...y,role:`group`,"aria-labelledby":g,tabIndex:0,"data-dragging":m||void 0,"data-testid":u,className:t(`flex min-w-0 flex-col items-center justify-center gap-3 rounded-xl border border-dashed px-5 py-6 text-center outline-none focus-visible:ring-2 focus-visible:ring-kumo-focus`,m?`border-kumo-brand bg-kumo-tint`:`border-kumo-line bg-kumo-base`,l),children:[(0,U.jsx)(`span`,{className:`flex size-10 items-center justify-center rounded-full bg-kumo-recessed text-kumo-subtle`,children:(0,U.jsx)(H,{size:20,"aria-hidden":!0})}),(0,U.jsxs)(`span`,{className:`grid gap-1.5`,children:[(0,U.jsx)(`span`,{id:g,children:(0,U.jsx)(f,{as:`span`,bold:!0,children:m?n.release:n.title})}),n.description&&(0,U.jsx)(f,{as:`span`,variant:`secondary`,size:`sm`,children:n.description})]}),b,(0,U.jsx)(s,{variant:`secondary`,icon:(0,U.jsx)(H,{}),onClick:()=>d.current?.click(),disabled:_,title:a,children:n.choose})]})}function ge(e,t={}){let n=(0,j.useRef)(null);return{open:()=>n.current?.click(),input:(0,U.jsx)(`input`,{ref:n,type:`file`,className:`sr-only`,tabIndex:-1,"aria-hidden":!0,accept:t.accept,multiple:t.multiple??!0,onChange:t=>{let n=W(t.currentTarget.files);t.currentTarget.value=``,n.length&&e(n)}})}}function _e({children:e,label:n,className:r}){return(0,U.jsx)(`ul`,{"aria-label":n,className:t(`grid grid-cols-[repeat(auto-fill,minmax(10rem,1fr))] gap-4`,r),children:e})}function ve({preview:e,title:n,meta:r,badges:i,href:a,onSelect:s,selected:l=!1,disabledReason:u,"data-testid":p}){let m=c(),h=(0,U.jsxs)(U.Fragment,{children:[(0,U.jsxs)(`span`,{className:`relative block`,children:[e,i&&(0,U.jsx)(`span`,{className:`absolute top-1.5 start-1.5 flex max-w-[calc(100%-0.75rem)] flex-wrap gap-1`,children:i}),l&&(0,U.jsx)(`span`,{className:`absolute top-1.5 end-1.5 flex size-6 items-center justify-center rounded-full bg-kumo-brand text-kumo-inverse`,children:(0,U.jsx)(d,{size:14,weight:`bold`,"aria-hidden":!0})})]}),(0,U.jsxs)(`span`,{className:`grid min-w-0 gap-0.5 px-1 pt-2 pb-1 text-start`,children:[(0,U.jsx)(f,{as:`span`,truncate:!0,children:n}),r&&(0,U.jsx)(f,{as:`span`,variant:`secondary`,size:`xs`,truncate:!0,children:r})]})]}),g=t(`block min-w-0 rounded-lg p-1.5 outline-none focus-visible:ring-2 focus-visible:ring-kumo-focus`,l?`bg-kumo-tint ring-2 ring-kumo-brand`:`hover:bg-kumo-tint`),_;if(a)_=(0,U.jsx)(m,{href:a,className:g,"data-testid":p,children:h});else{let e=u!==void 0,n=(0,U.jsx)(`button`,{type:`button`,"aria-pressed":l,"aria-disabled":e||void 0,onClick:()=>!e&&s?.(),className:t(g,`w-full`,e&&`cursor-not-allowed opacity-60`),"data-testid":p,children:h});_=u?(0,U.jsx)(o,{content:u,render:n}):n}return(0,U.jsx)(`li`,{className:`min-w-0`,children:_})}function q({icon:e,label:n,size:r=`tile`}){return(0,U.jsxs)(`span`,{className:t(`flex min-w-0 flex-col items-center justify-center gap-1 bg-kumo-recessed text-kumo-subtle ring ring-kumo-hairline`,r===`thumb`?`aspect-video w-14 shrink-0 rounded-md`:r===`card`?`aspect-[1.91/1] w-full rounded-lg`:`aspect-[4/3] w-full rounded-md`),children:[e,r!==`thumb`&&(0,U.jsx)(f,{as:`span`,variant:`secondary`,size:`xs`,children:n})]})}function J({kind:e,size:t=24}){return(0,U.jsx)(e===`image`?h:e===`video`?z:e===`audio`?N:e===`document`?L:e===`data`?F:m,{size:t,"aria-hidden":!0})}function ye({siteId:e,asset:t,size:n,alt:r}){let i=w(`media`),a=O(e,t);return t.kind===`image`?(0,U.jsx)(g,{size:n,fit:n===`card`?`contain`:`cover`,src:a,alt:r??``,...t.image?{placeholder:t.image}:{},labels:{empty:i(`media.preview.empty`),loading:i(`media.preview.loading`),error:i(`media.preview.broken`)}}):(0,U.jsx)(q,{size:n,icon:(0,U.jsx)(J,{kind:t.kind,size:n===`thumb`?16:n===`card`?40:28}),label:E(t.mediaType)})}function be({asset:e,defaultLocale:t,compact:n=!1}){let r=w(`media`),i=[];return e.status===`retired`&&i.push((0,U.jsx)(o,{content:r(`media.badges.retiredHint`),children:(0,U.jsx)(`span`,{className:`inline-flex`,"data-badge":`retired`,children:(0,U.jsx)(a,{variant:`secondary`,icon:(0,U.jsx)(u,{}),children:r(`media.badges.retired`)})})},`retired`)),D(e,t)&&i.push((0,U.jsx)(o,{content:r(`media.badges.missingAltHint`),children:(0,U.jsx)(`span`,{className:`inline-flex`,"data-badge":`missing-alt`,children:(0,U.jsx)(a,{variant:`warning`,icon:(0,U.jsx)(v,{}),children:r(n?`media.badges.missingAltShort`:`media.badges.missingAlt`)})})},`alt`)),e.uploadedBy.kind===`agent`&&!n&&i.push((0,U.jsx)(o,{content:r(`media.badges.agentHint`,{name:e.uploadedBy.name??e.uploadedBy.id}),children:(0,U.jsx)(`span`,{className:`inline-flex`,"data-badge":`agent`,children:(0,U.jsx)(a,{variant:`outline`,icon:(0,U.jsx)(ie,{}),children:r(`media.badges.agent`)})})},`agent`)),i.length?i:null}function xe({count:e,overlay:t=!1}){let n=w(`media`);return(0,U.jsx)(`span`,{className:`inline-flex`,"data-usage":e,children:(0,U.jsx)(a,{variant:t?`secondary`:e>0?`info`:`outline`,children:e===0?n(`media.usage.none`):n(`media.usage.used`,{count:e})})})}function Se(e){return`uploadId`in e}var Y=class extends Error{name=`UploadTransportError`;code;constructor(e){super(e),this.code=e}};function Ce(e,t,n={}){return new Promise((r,i)=>{if(!/^\/api\/sites\/[^/]+\/assets\/uploads\/upl_[A-Za-z0-9]+\?sig=/.test(e.url)){i(new Y(`network`));return}let a=new XMLHttpRequest;a.open(e.method,e.url),a.withCredentials=!0;for(let[t,n]of Object.entries(e.headers))a.setRequestHeader(t,n);if(a.upload.onprogress=e=>{e.lengthComputable&&n.onProgress?.(e.loaded,e.total)},a.onload=()=>{let e;try{e=JSON.parse(a.responseText)}catch{e={error:`unknown`,message:a.statusText}}a.status>=200&&a.status<300?r(e):i(new x(a.status,e))},a.onerror=()=>i(new Y(`network`)),a.onabort=()=>i(new Y(`aborted`)),n.signal){if(n.signal.aborted){i(new Y(`aborted`));return}n.signal.addEventListener(`abort`,()=>a.abort(),{once:!0})}a.send(t)})}var X=e=>e.kind===`image`,Z=e=>!X(e)||e.decorative||e.alt.trim().length>0,we=0,Te=()=>`upload-${Date.now().toString(36)}-${(we++).toString(36)}`,Ee=3;function Q(e,t={}){let n=l(),[r,i]=(0,j.useState)([]),a=(0,j.useRef)(new Map),o=(0,j.useRef)(t.onUploaded);o.current=t.onUploaded;let s=(0,j.useCallback)((e,t)=>{i(n=>n.map(n=>n.id===e?{...n,...t}:n))},[]),c=(0,j.useRef)(r);c.current=r;let u=(0,j.useCallback)(async e=>{try{let[t,n]=await Promise.all([k(e.file),X(e)?e.file.arrayBuffer():Promise.resolve(void 0)]),r=n&&e.mediaType?ae(new Uint8Array(n),e.mediaType):void 0,{lqip:i,color:a}=r?await ce(e.file):{};s(e.id,{state:`ready`,sha256:t,...r?{image:r}:{},...i?{lqip:i}:{},...a?{color:a}:{}})}catch{s(e.id,{state:`error`,error:`unknown`})}},[s]),d=(0,j.useCallback)(e=>{let t=c.current.filter(e=>e.state===`ready`||e.state===`preparing`).length,n=Math.max(0,20-t),r=e.map((e,t)=>{let r=oe(e),i={id:Te(),file:e,state:`preparing`,alt:``,decorative:!1,keepMetadata:!1,progress:0,...r.mediaType?{mediaType:r.mediaType}:{},...r.kind?{kind:r.kind}:{}};return t>=n?{...i,state:`error`,error:`too_many_files`}:r.problem?{...i,state:`error`,error:r.problem}:i});i(e=>[...e,...r]);for(let e of r)e.state===`preparing`&&u(e)},[u]),f=(0,j.useCallback)(e=>{a.current.get(e)?.abort(),i(t=>t.filter(t=>t.id!==e))},[]),p=(0,j.useCallback)(e=>{a.current.get(e)?.abort(),s(e,{state:`canceled`})},[s]),m=(0,j.useCallback)(()=>{for(let e of a.current.values())e.abort();a.current.clear(),i([])},[]),h=r.filter(e=>e.state===`ready`),g=h.length>0&&h.every(Z),_=r.some(e=>e.state===`uploading`||e.state===`preparing`),v=(0,j.useCallback)(async()=>{let t=r.filter(e=>e.state===`ready`&&Z(e));if(t.length===0)return;for(let e of t)s(e.id,{state:`uploading`,progress:0});let i=t.map(e=>({filename:e.file.name,bytes:e.file.size,mediaType:e.mediaType??e.file.type,...e.sha256?{sha256:e.sha256}:{},...X(e)&&e.alt.trim()&&!e.decorative?{alt:e.alt.trim()}:{},...X(e)&&e.decorative?{decorative:!0}:{},...e.image?.gps&&e.keepMetadata?{keepMetadata:!0}:{},...e.lqip||e.color?{image:{...e.lqip?{lqip:e.lqip}:{},...e.color?{color:e.color}:{}}}:{}})),c;try{c=(await te.assets.requestUploads(e,i)).files}catch(e){let n=e instanceof x?A(e.body.error):`network`;for(let e of t)s(e.id,{state:`error`,error:n});return}let l=[],u=c.map((e,n)=>({ticket:e,item:t[n]}));await Promise.all(Array.from({length:Math.min(Ee,u.length)},async()=>{for(;;){let e=u.shift();if(!e)return;let{ticket:t,item:n}=e;if(`existing`in t){s(n.id,{state:`existing`,progress:100,result:t.existing}),l.push(t.existing);continue}if(!Se(t)){s(n.id,{state:`error`,error:A(t.error.code)});continue}let r=new AbortController;a.current.set(n.id,r);try{let e=await Ce(t,n.file,{signal:r.signal,onProgress:(e,t)=>s(n.id,{progress:Math.min(99,Math.round(e/t*100))})});s(n.id,{state:e.existing?`existing`:`done`,progress:100,result:e}),l.push(e)}catch(e){e instanceof Y&&e.code===`aborted`?s(n.id,{state:`canceled`}):s(n.id,{state:`error`,error:e instanceof x?A(e.body.error):e instanceof Y?`network`:`unknown`})}finally{a.current.delete(n.id)}}})),l.length&&(await n.invalidateQueries({queryKey:[`assets`,e]}),o.current?.(l))},[r,s,n,e]);return(0,j.useEffect)(()=>()=>{for(let e of a.current.values())e.abort()},[]),{items:r,add:d,remove:f,cancel:p,reset:m,start:v,patch:s,canStart:g,busy:_,ready:h.length}}function De(e,t){let n=(0,j.useMemo)(()=>t&&typeof URL.createObjectURL==`function`?URL.createObjectURL(e):void 0,[e,t]);return(0,j.useEffect)(()=>()=>{n&&URL.revokeObjectURL?.(n)},[n]),n}function Oe({item:e}){let t=w(`media`);return e.state===`uploading`?(0,U.jsx)(ne,{label:t(`media.upload.progress`),value:e.progress,customValue:t(`media.upload.percent`,{percent:e.progress})}):e.state===`error`?(0,U.jsxs)(`span`,{className:`flex items-start gap-1.5 text-kumo-danger`,"data-upload-error":e.error,children:[(0,U.jsx)(`span`,{className:`flex h-lh items-center`,children:(0,U.jsx)(y,{size:14,weight:`fill`,"aria-hidden":!0})}),(0,U.jsx)(f,{as:`span`,size:`sm`,variant:`error`,children:t(`media.upload.errors.${e.error??`unknown`}`)})]}):e.state===`done`||e.state===`existing`?(0,U.jsxs)(`span`,{className:`flex items-center gap-1.5`,children:[(0,U.jsx)(p,{size:14,weight:`fill`,className:`text-kumo-success`,"aria-hidden":!0}),(0,U.jsx)(f,{as:`span`,size:`sm`,variant:`secondary`,children:t(`media.upload.status.${e.state}`)})]}):(0,U.jsx)(f,{as:`span`,size:`sm`,variant:`secondary`,children:t(`media.upload.status.${e.state}`)})}function ke({item:e,upload:t}){let n=w(`media`),{locale:r}=C(`media`),i=X(e),o=De(e.file,i&&e.state!==`error`),c=e.state===`ready`||e.state===`preparing`,l=e.state===`ready`&&!Z(e);return(0,U.jsxs)(`div`,{className:`grid min-w-0 gap-3 py-3 first:pt-0 last:pb-0`,"data-testid":`upload-row`,"data-state":e.state,children:[(0,U.jsxs)(`div`,{className:`flex min-w-0 items-start gap-3`,children:[i&&o?(0,U.jsx)(g,{size:`thumb`,src:o,alt:``,labels:{empty:n(`media.preview.empty`),loading:n(`media.preview.loading`),error:n(`media.preview.broken`)}}):(0,U.jsx)(q,{size:`thumb`,icon:(0,U.jsx)(J,{kind:e.kind,size:16}),label:e.mediaType?E(e.mediaType):``}),(0,U.jsxs)(`div`,{className:`grid min-w-0 flex-1 gap-1`,children:[(0,U.jsxs)(`span`,{className:`flex min-w-0 items-center gap-2`,children:[(0,U.jsx)(f,{as:`span`,truncate:!0,children:e.file.name}),e.mediaType&&(0,U.jsx)(`span`,{className:`inline-flex shrink-0`,children:(0,U.jsx)(a,{variant:`outline`,children:E(e.mediaType)})})]}),(0,U.jsxs)(f,{as:`span`,variant:`secondary`,size:`sm`,children:[se(e.file.size,r),e.image?` · ${e.image.width} × ${e.image.height}`:``]}),(0,U.jsx)(Oe,{item:e})]}),e.state===`uploading`?(0,U.jsx)(s,{variant:`ghost`,size:`sm`,shape:`square`,icon:(0,U.jsx)(T,{}),"aria-label":n(`media.upload.cancel`,{name:e.file.name}),title:n(`media.upload.cancel`,{name:e.file.name}),onClick:()=>t.cancel(e.id)}):(0,U.jsx)(s,{variant:`ghost`,size:`sm`,shape:`square`,icon:(0,U.jsx)(T,{}),"aria-label":n(`media.upload.remove`,{name:e.file.name}),title:n(`media.upload.remove`,{name:e.file.name}),onClick:()=>t.remove(e.id)})]}),i&&c&&(0,U.jsxs)(`div`,{className:`grid min-w-0 gap-3`,children:[(0,U.jsx)(ee,{label:n(`media.upload.alt`),value:e.alt,placeholder:n(`media.upload.altPlaceholder`),onValueChange:n=>t.patch(e.id,{alt:n}),description:n(`media.upload.altHint`),error:l?n(`media.upload.altRequired`):void 0,disabled:e.decorative,maxLength:500,className:`w-full`,"data-testid":`upload-alt`}),(0,U.jsx)(_,{label:n(`media.upload.decorative`),checked:e.decorative,onCheckedChange:n=>t.patch(e.id,{decorative:n})}),e.image?.gps&&(0,U.jsxs)(`div`,{className:`grid gap-2`,"data-testid":`upload-gps`,children:[(0,U.jsx)(b,{variant:`alert`,size:`sm`,icon:(0,U.jsx)(he,{weight:`fill`}),title:n(`media.upload.gpsTitle`),description:n(`media.upload.gpsDescription`)}),(0,U.jsx)(_,{label:n(`media.upload.keepMetadata`),checked:e.keepMetadata,onCheckedChange:n=>t.patch(e.id,{keepMetadata:n})})]})]})]})}function $({upload:e,accept:t,multiple:n=!0,disabledReason:r,description:i,inlineStart:a=!1}){let o=w(`media`),{items:c}=e,l=c.filter(e=>e.state===`done`||e.state===`existing`).length;return(0,U.jsxs)(`div`,{className:`grid min-w-0 gap-4`,children:[(0,U.jsx)(K,{onFiles:e.add,accept:t,multiple:n,disabledReason:r,labels:{title:o(`media.drop.title`),description:i,choose:o(`media.drop.choose`),release:o(`media.drop.release`)},"data-testid":`media-drop`}),c.length>0&&(0,U.jsxs)(re,{label:o(`media.upload.queueLabel`),children:[(0,U.jsxs)(`div`,{className:`flex flex-wrap items-center justify-between gap-2`,children:[(0,U.jsx)(f,{as:`span`,bold:!0,children:o(`media.upload.queueLabel`)}),(0,U.jsx)(f,{as:`span`,variant:`secondary`,size:`sm`,children:o(`media.upload.summary`,{done:l,total:c.length})})]}),(0,U.jsx)(`div`,{className:`grid divide-y divide-kumo-hairline`,"data-testid":`upload-queue`,children:c.map(t=>(0,U.jsx)(ke,{item:t,upload:e},t.id))}),a&&e.ready>0&&(0,U.jsx)(`div`,{className:`flex justify-end`,children:(0,U.jsx)(s,{variant:`secondary`,icon:(0,U.jsx)(H,{}),disabled:!e.canStart,loading:e.busy,onClick:()=>void e.start(),"data-testid":`upload-start`,children:o(`media.upload.inlineStart`)})})]})]})}function Ae({siteId:e,open:t,onOpenChange:n,initialFiles:r,accept:i,disabledReason:a}){let o=w(`media`),s=Q(e),c=(0,j.useRef)(void 0);(0,j.useEffect)(()=>{t&&r.length&&c.current!==r&&(c.current=r,s.add(r))},[t,r,s.add]);let l=s.items.some(e=>e.state!==`ready`&&e.state!==`preparing`),u=s.ready>0,d=e=>{if(e)return n(!0);n(!1),s.reset(),c.current=void 0};return(0,U.jsx)(S.Root,{open:t,onOpenChange:d,dismissDisabled:s.busy,children:(0,U.jsxs)(S.Content,{size:`lg`,closeLabel:o(`common.close`),children:[(0,U.jsx)(S.Title,{children:o(`media.upload.title`)}),(0,U.jsx)(S.Description,{children:o(`media.upload.description`)}),(0,U.jsx)(S.Body,{children:(0,U.jsx)($,{upload:s,accept:i,disabledReason:a,description:o(`media.drop.description`)})}),(0,U.jsx)(S.Actions,{dismissLabel:o(`common.cancel`),children:(0,U.jsx)(S.Actions.Primary,{disabled:u?!s.canStart:!l||s.busy,loading:s.busy,onClick:()=>u?void s.start():d(!1),"data-testid":`upload-primary`,children:u?o(`media.upload.start`,{count:s.ready}):o(`media.upload.done`)})})]})})}export{ye as a,_e as c,H as d,be as i,ve as l,$ as n,xe as o,Q as r,K as s,Ae as t,ge as u};
2
+ //# sourceMappingURL=MediaUpload-DzoYV1Ni.js.map
@@ -1,2 +1,2 @@
1
- import{r as e}from"./rolldown-runtime-hePW80VL.js";import{t}from"./IconBase.es-BZDpYMnj.js";import{i as n,r}from"./react-CDCuUAOg.js";import{t as i}from"./badge-dq8bx752b9dp7dst--rpq8QXS.js";import{o as a,t as o}from"./button-pa1bq9b85hawg41a-CmOCuL-1.js";import{S as s,_ as c,h as l,l as u,u as d}from"./tanstack-BRxyYm4G.js";import{t as f}from"./ArrowClockwise.es-BA0pzb0Y.js";import{n as p,t as m}from"./DirectionalIcon-UZJFXGY_.js";import{t as h}from"./pagination-oaenm9t7ou3lmcgw-CjvX77_7.js";import{m as g,n as _}from"./skeleton-line-m9dyh126t9k07jvg-BFlcthbF.js";import{t as v}from"./CheckCircle.es-XJ9Tr9Tu.js";import{t as y}from"./ClockCountdown.es-BR_zz6vi.js";import{t as b}from"./DotsThree.es-C-pT5SgE.js";import{t as x}from"./EnvelopeSimple.es-g-hlqV74.js";import{t as S}from"./Key.es-DE551dL3.js";import{t as ee}from"./LinkSimple.es-BB_3GfFO.js";import{a as C}from"./AgentModes-758a2e8F.js";import{t as w}from"./ShieldCheck.es-BOXTHH7h.js";import{t as T}from"./ShieldWarning.es-DPxoDMpT.js";import{t as E}from"./Trash.es-CxKLVMOQ.js";import{t as D}from"./Warning.es-LZXqwHRF.js";import{n as O,t as k}from"./banner-msnmqm7of2lck01x-D6cADEpP.js";import{t as A}from"./XCircle.es-3fJHkmwA.js";import{a as j,i as te,l as ne,o as re,s as ie,t as M,u as N}from"./useMe-BkBpEyf5.js";import{t as P}from"./Toast-BsM5w6Jh.js";import{t as ae}from"./input-c8lv9ulv0kortliq-Be2cm12J.js";import{t as F}from"./clipboard-text-gd6s3n1bqse9zgt8-C151k1zC.js";import{c as oe,g as se,o as I,s as ce,t as L}from"./api-CHeogUo-.js";import{t as R}from"./dropdown-m53ji1d66mws89wh-BTaT-o14.js";import{t as z}from"./select-futox5zqr3r80y9a-FumEl51u.js";import{t as B}from"./table-yf8ul2e5nbemioi1-KGRDj7XO.js";import{t as le}from"./radio-35dx7y6rjrezbjsp-2D7MXAy3.js";import{t as ue}from"./Crumbs-B3lDes5a.js";import{t as de}from"./empty-hkvg3is3uc6dj1at-Cen9KfIy.js";import{t as V}from"./layer-dialog-j5ywmzs46ccg6oqy-nvLQiI4N.js";import{t as H}from"./InsetPanel-CHSg953_.js";import{t as fe}from"./SectionCard-Bqvz-NiL.js";import{c as U,u as W}from"./i18n-CCHry74V.js";import{t as G}from"./api-errors-c5QRmg0g.js";import{T as K,x as pe}from"./agents-DGWn1WXw.js";import{S as me,a as he,b as ge,c as _e,d as ve,l as ye,r as be,u as xe,v as Se,w as Ce}from"./roles-B7USahqW.js";import{a as we}from"./activity-C0we9-m8.js";import{C as Te,E as Ee,F as De,I as Oe,L as ke,Q as Ae,S as je,T as Me,U as Ne,a as Pe,c as q,d as Fe,f as Ie,l as Le,rt as Re,u as ze}from"./index-B3isvl8R.js";import{t as Be}from"./ConfirmDialog-B2yAK7lR.js";import{t as Ve}from"./PasswordField-BgSYGdR_.js";import{t as He}from"./TableSkeleton-DWrf88UN.js";import{t as Ue}from"./ListToolbar-DUEM5tkX.js";import{ActivityList as We}from"./ActivityPage-kfiDbxhj.js";import{t as Ge}from"./ScopeBadge-8ftEPI5M.js";import{t as Ke}from"./usePaging-D37ddXyL.js";import{a as qe,i as J,n as Je,r as Ye,t as Xe}from"./SiteAccessField-DzJ30NV0.js";var Y=e(n(),1),Ze=new Map([[`bold`,Y.createElement(Y.Fragment,null,Y.createElement(`path`,{d:`M48,56V200a12,12,0,0,1-24,0V56a12,12,0,0,1,24,0Zm86.73,50.7L120,111.48V96a12,12,0,0,0-24,0v15.48L81.27,106.7a12,12,0,1,0-7.41,22.82l14.72,4.79-9.1,12.52A12,12,0,1,0,98.9,160.94l9.1-12.52,9.1,12.52a12,12,0,1,0,19.42-14.11l-9.1-12.52,14.72-4.79a12,12,0,1,0-7.41-22.82Zm115.12,7.7a12,12,0,0,0-15.12-7.7L220,111.48V96a12,12,0,0,0-24,0v15.48l-14.73-4.78a12,12,0,1,0-7.41,22.82l14.72,4.79-9.1,12.52a12,12,0,1,0,19.42,14.11l9.1-12.52,9.1,12.52a12,12,0,1,0,19.42-14.11l-9.1-12.52,14.72-4.79A12,12,0,0,0,249.85,114.4Z`}))],[`fill`,Y.createElement(Y.Fragment,null,Y.createElement(`path`,{d:`M224,48H32A16,16,0,0,0,16,64V192a16,16,0,0,0,16,16H224a16,16,0,0,0,16-16V64A16,16,0,0,0,224,48Zm-19.42,94.71a8,8,0,1,1-13,9.41L184,141.61l-7.63,10.51a8,8,0,1,1-13-9.41l7.64-10.5-12.36-4a8,8,0,1,1,5-15.21L176,117V104a8,8,0,0,1,16,0v13l12.35-4a8,8,0,0,1,5,15.21l-12.36,4Zm-72,0a8,8,0,1,1-13,9.41L112,141.61l-7.63,10.51a8,8,0,1,1-13-9.41l7.64-10.5-12.36-4a8,8,0,1,1,5-15.21L104,117V104a8,8,0,0,1,16,0v13l12.35-4a8,8,0,1,1,5,15.21l-12.36,4ZM64,88v80a8,8,0,0,1-16,0V88a8,8,0,0,1,16,0Z`}))],[`regular`,Y.createElement(Y.Fragment,null,Y.createElement(`path`,{d:`M48,56V200a8,8,0,0,1-16,0V56a8,8,0,0,1,16,0Zm92,54.5L120,117V96a8,8,0,0,0-16,0v21L84,110.5a8,8,0,0,0-5,15.22l20,6.49-12.34,17a8,8,0,1,0,12.94,9.4l12.34-17,12.34,17a8,8,0,1,0,12.94-9.4l-12.34-17,20-6.49A8,8,0,0,0,140,110.5ZM246,115.64A8,8,0,0,0,236,110.5L216,117V96a8,8,0,0,0-16,0v21l-20-6.49a8,8,0,0,0-4.95,15.22l20,6.49-12.34,17a8,8,0,1,0,12.94,9.4l12.34-17,12.34,17a8,8,0,1,0,12.94-9.4l-12.34-17,20-6.49A8,8,0,0,0,246,115.64Z`}))]]),Qe=new Map([[`bold`,Y.createElement(Y.Fragment,null,Y.createElement(`path`,{d:`M169.57,46.11a12,12,0,0,1,15.12-7.7L188,39.48V36a12,12,0,0,1,24,0v3.48l3.31-1.07a12,12,0,1,1,7.42,22.82l-3.31,1.08,2,2.82a12,12,0,1,1-19.41,14.1L200,76.42,198,79.23a12,12,0,1,1-19.41-14.1l2-2.82-3.31-1.08A12,12,0,0,1,169.57,46.11ZM236,128A108,108,0,1,1,128,20a109.19,109.19,0,0,1,18,1.49,12,12,0,0,1-4,23.67A85,85,0,0,0,128,44,83.94,83.94,0,0,0,62.05,179.94a83.48,83.48,0,0,1,29-23.42,52,52,0,1,1,74,0,83.48,83.48,0,0,1,29,23.42A83.57,83.57,0,0,0,212,128a85.2,85.2,0,0,0-1.16-14,12,12,0,0,1,23.67-4A109,109,0,0,1,236,128ZM128,148a28,28,0,1,0-28-28A28,28,0,0,0,128,148Zm0,64a83.53,83.53,0,0,0,48.43-15.43,60,60,0,0,0-96.86,0A83.53,83.53,0,0,0,128,212Z`}))],[`fill`,Y.createElement(Y.Fragment,null,Y.createElement(`path`,{d:`M228.25,63.07l-4.66-2.69a23.6,23.6,0,0,0,0-8.76l4.66-2.69a8,8,0,0,0-8-13.86l-4.67,2.7A23.92,23.92,0,0,0,208,33.38V28a8,8,0,0,0-16,0v5.38a23.92,23.92,0,0,0-7.58,4.39l-4.67-2.7a8,8,0,1,0-8,13.86l4.66,2.69a23.6,23.6,0,0,0,0,8.76l-4.66,2.69a8,8,0,0,0,4,14.93,7.92,7.92,0,0,0,4-1.07l4.67-2.7A23.92,23.92,0,0,0,192,78.62V84a8,8,0,0,0,16,0V78.62a23.92,23.92,0,0,0,7.58-4.39l4.67,2.7a7.92,7.92,0,0,0,4,1.07,8,8,0,0,0,4-14.93ZM200,64a8,8,0,1,1,8-8A8,8,0,0,1,200,64ZM128,76a44,44,0,1,1-44,44A44,44,0,0,1,128,76Zm102.56,34.68a103.92,103.92,0,1,1-85.24-85.24,8,8,0,0,1-2.64,15.78A88.07,88.07,0,0,0,40,128a87.62,87.62,0,0,0,22.24,58.41A79.71,79.71,0,0,1,84,165.1a4,4,0,0,1,4.83.32,59.81,59.81,0,0,0,78.27,0,4,4,0,0,1,4.84-.32,79.86,79.86,0,0,1,21.79,21.31A87.62,87.62,0,0,0,216,128a88.85,88.85,0,0,0-1.22-14.68,8,8,0,1,1,15.78-2.64Z`}))],[`regular`,Y.createElement(Y.Fragment,null,Y.createElement(`path`,{d:`M228.25,63.07l-4.66-2.69a23.6,23.6,0,0,0,0-8.76l4.66-2.69a8,8,0,0,0-8-13.86l-4.67,2.7A23.92,23.92,0,0,0,208,33.38V28a8,8,0,0,0-16,0v5.38a23.92,23.92,0,0,0-7.58,4.39l-4.67-2.7a8,8,0,1,0-8,13.86l4.66,2.69a23.6,23.6,0,0,0,0,8.76l-4.66,2.69a8,8,0,0,0,4,14.93,7.92,7.92,0,0,0,4-1.07l4.67-2.7A23.92,23.92,0,0,0,192,78.62V84a8,8,0,0,0,16,0V78.62a23.92,23.92,0,0,0,7.58-4.39l4.67,2.7a7.92,7.92,0,0,0,4,1.07,8,8,0,0,0,4-14.93ZM192,56a8,8,0,1,1,8,8A8,8,0,0,1,192,56Zm29.35,48.11a8,8,0,0,0-6.57,9.21A88.85,88.85,0,0,1,216,128a87.62,87.62,0,0,1-22.24,58.41,79.66,79.66,0,0,0-36.06-28.75,48,48,0,1,0-59.4,0,79.66,79.66,0,0,0-36.06,28.75A88,88,0,0,1,128,40a88.76,88.76,0,0,1,14.68,1.22,8,8,0,0,0,2.64-15.78,103.92,103.92,0,1,0,85.24,85.24A8,8,0,0,0,221.35,104.11ZM96,120a32,32,0,1,1,32,32A32,32,0,0,1,96,120ZM74.08,197.5a64,64,0,0,1,107.84,0,87.83,87.83,0,0,1-107.84,0Z`}))]]),$e=Y.forwardRef((e,n)=>Y.createElement(t,{ref:n,...e,weights:Ze}));$e.displayName=`PasswordIcon`;var et=$e,tt=Y.forwardRef((e,n)=>Y.createElement(t,{ref:n,...e,weights:Qe}));tt.displayName=`UserCircleGearIcon`;var nt=tt,X=r(),rt=[`rank`,`invalid_expiry`,`delivery_unavailable`,`delivery_failed`,`already_member`,`too_many_invites`,`rate_limited`];function it(e){let t=I(e);return rt.includes(t??``)?t:void 0}function at({open:e,onOpenChange:t,draft:n}){let{t:r,locale:i}=U(),a=s(),o=ie().data,c=re(),u=o?.invitableRoles??[],d=u.includes(`author`)?`author`:u.at(-1)??`contributor`,[f,p]=(0,Y.useState)(``),[m,h]=(0,Y.useState)(d),[g,v]=(0,Y.useState)(()=>_e(c,d)),[y,b]=(0,Y.useState)(`link`),[S,C]=(0,Y.useState)(!1),[w,T]=(0,Y.useState)(),[E,D]=(0,Y.useState)(),A=l({mutationFn:()=>L.invites.create({email:f.trim().toLowerCase(),role:m,expiresInHours:g,...y===`email`?{delivery:y}:{},...E&&Ye(m)?{sites:Je(E,m)}:{}}),onSuccess:async e=>{T(e),await a.invalidateQueries({queryKey:[`invites`]})}});(0,Y.useEffect)(()=>{if(e){let e=n&&u.includes(n.role)?n.role:d;p(n?.email??``),h(e),v(_e(c,e)),b(`link`),D(void 0),C(!1),A.reset()}else T(void 0)},[e]);let j=ve(c,m),te=e=>{h(e),ve(c,e).includes(g)||v(_e(c,e))},ne=S&&!Ce(f)?f.trim()?r(`invites.errors.emailInvalid`):r(`invites.errors.emailRequired`):void 0,M=()=>{C(!0),!A.isPending&&Ce(f)&&u.includes(m)&&(Ye(m)&&J(E)||A.mutate())},N=it(A.error),P=r(`roles.names.${m}`),F=c.delivery.includes(`email`);return(0,X.jsx)(V.Root,{open:e,onOpenChange:t,dismissDisabled:A.isPending,children:(0,X.jsxs)(V.Content,{size:`base`,closeLabel:r(`common.close`),children:[(0,X.jsx)(V.Title,{children:w?w.url?r(`invites.reveal.title`):r(`invites.reveal.sentTitle`):r(n?`invites.create.reinviteTitle`:`invites.create.title`)}),(0,X.jsx)(V.Description,{children:w?r(`invites.reveal.description`,{email:w.invite.email,role:r(`roles.names.${w.invite.role}`)}):r(`invites.create.description`)}),(0,X.jsx)(V.Body,{children:w?(0,X.jsx)(ot,{created:w}):(0,X.jsxs)(`div`,{className:`grid gap-5`,"data-testid":`invite-step-details`,children:[(0,X.jsx)(_,{variant:`secondary`,size:`sm`,children:r(`invites.create.step`)}),A.error&&(0,X.jsx)(k,{variant:`error`,size:`sm`,icon:(0,X.jsx)(O,{weight:`fill`}),title:r(`invites.create.failed`),description:N?r(`invites.errors.${N}`,{email:f.trim(),role:P}):G(r,A.error)}),(0,X.jsx)(ae,{className:`w-full`,label:r(`invites.create.email`),description:r(`invites.create.emailHint`),placeholder:r(`invites.create.emailPlaceholder`),type:`email`,inputMode:`email`,autoComplete:`off`,value:f,onValueChange:p,error:ne,autoFocus:!0,maxLength:254,onKeyDown:e=>{e.key===`Enter`&&(e.preventDefault(),M())}}),(0,X.jsx)(`div`,{className:`@container`,children:(0,X.jsxs)(`div`,{className:`grid items-start gap-5 @md:grid-cols-2`,children:[(0,X.jsx)(z,{className:`w-full`,label:r(`invites.create.role`),description:r(`invites.create.roleHint`),value:m,onValueChange:e=>te(e),items:Object.fromEntries(u.map(e=>[e,r(`roles.names.${e}`)]))}),(0,X.jsx)(z,{className:`w-full`,label:r(`invites.create.expiry`),description:m===`administrator`?r(`invites.create.expiryAdmin`,{max:K(xe(c,m)*60,i,`long`)}):r(`invites.create.expiryHint`),value:String(g),onValueChange:e=>v(Number(e)),items:Object.fromEntries(j.map(e=>[String(e),K(e*60,i,`long`)]))})]})}),(0,X.jsx)(Xe,{role:m,value:E,onChange:D,error:S&&J(E)?r(`siteAccess.required`):void 0}),(0,X.jsxs)(`div`,{className:`grid min-w-0 gap-2`,"data-testid":`role-explainer`,children:[(0,X.jsx)(_,{size:`sm`,bold:!0,as:`span`,children:r(`invites.create.explainer`)}),(0,X.jsx)(`div`,{className:`-mx-1 min-w-0 overflow-x-auto`,children:(0,X.jsx)(Le,{roles:u,selected:m})})]}),F&&(0,X.jsxs)(le.Group,{appearance:`card`,value:y,onValueChange:e=>b(e),children:[(0,X.jsx)(le.Legend,{children:r(`invites.create.delivery`)}),(0,X.jsx)(le.Item,{value:`link`,label:(0,X.jsxs)(`span`,{className:`flex items-center gap-2`,children:[(0,X.jsx)(ee,{size:16,className:`text-kumo-subtle`}),r(`invites.create.deliveryLink`)]}),description:r(`invites.create.deliveryLinkHint`)}),(0,X.jsx)(le.Item,{value:`email`,label:(0,X.jsxs)(`span`,{className:`flex items-center gap-2`,children:[(0,X.jsx)(x,{size:16,className:`text-kumo-subtle`}),r(`invites.create.deliveryEmail`)]}),description:r(`invites.create.deliveryEmailHint`)})]})]})}),(0,X.jsx)(V.Actions,{dismissLabel:r(w?`common.close`:`common.cancel`),children:w?(0,X.jsx)(V.Actions.Primary,{onClick:()=>t(!1),children:w.url?r(`invites.reveal.done`):r(`common.close`)}):(0,X.jsx)(V.Actions.Primary,{onClick:M,loading:A.isPending,children:r(y===`email`?`invites.create.send`:`invites.create.submit`)})})]})})}function ot({created:e}){let{t,locale:n}=U(),r=e.invite.expiresAt;return(0,X.jsxs)(`div`,{className:`grid gap-5`,"data-testid":`invite-reveal`,children:[e.url?(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(k,{variant:`alert`,icon:(0,X.jsx)(D,{weight:`fill`}),title:t(`invites.reveal.warningTitle`),description:t(`invites.reveal.warning`,{role:t(`roles.names.${e.invite.role}`)})}),(0,X.jsxs)(`div`,{className:`grid min-w-0 gap-1.5`,children:[(0,X.jsx)(_,{size:`sm`,bold:!0,as:`span`,children:t(`invites.reveal.link`)}),(0,X.jsx)(F,{size:`lg`,text:e.url,tooltip:{text:t(`common.copy`),copiedText:t(`common.copied`)}})]})]}):(0,X.jsx)(k,{variant:`default`,icon:(0,X.jsx)(v,{weight:`fill`}),title:t(`invites.reveal.sent`,{email:e.invite.email}),description:t(`invites.reveal.sentDescription`)}),(0,X.jsxs)(H,{label:t(`invites.reveal.summary`),children:[(0,X.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,X.jsx)(q,{value:e.invite.role}),(0,X.jsx)(_,{as:`span`,truncate:!0,children:e.invite.email})]}),r&&(0,X.jsxs)(`div`,{className:`flex items-start gap-2`,children:[(0,X.jsx)(`span`,{className:`flex h-lh items-center text-kumo-subtle`,children:(0,X.jsx)(y,{size:16})}),(0,X.jsx)(_,{variant:`secondary`,size:`sm`,children:t(`invites.reveal.expires`,{relative:he(r,n),absolute:we(r,n)})})]}),(0,X.jsxs)(`div`,{className:`flex items-start gap-2`,children:[(0,X.jsx)(`span`,{className:`flex h-lh items-center text-kumo-subtle`,children:(0,X.jsx)(T,{size:16})}),(0,X.jsx)(_,{variant:`secondary`,size:`sm`,children:t(`invites.reveal.private`)})]})]})]})}function st(e){let t=(0,Y.useRef)(e);return e!==void 0&&(t.current=e),e??t.current}function Z({member:e,you:t=!1,size:n=`base`}){let r=W();return(0,X.jsxs)(`div`,{className:`flex min-w-0 items-center gap-3`,children:[(0,X.jsx)(Me,{initials:Pe(e.name,e.email),size:n}),(0,X.jsxs)(`div`,{className:`grid min-w-0 gap-0.5`,children:[(0,X.jsxs)(`span`,{className:`flex min-w-0 items-center gap-2`,children:[(0,X.jsx)(_,{bold:!0,as:`span`,truncate:!0,children:e.name||e.email||`—`}),t&&(0,X.jsx)(i,{variant:`outline`,children:r(`members.you`)})]}),e.email&&(0,X.jsx)(_,{variant:`secondary`,size:`sm`,as:`span`,truncate:!0,children:e.email})]})]})}function ct(){let e=W();return t=>{if(I(t)!==`rank`)return;let n=ce(t,`problem`);return e(n?`members.rank.${n}`:`members.rank.not_allowed`)}}function lt({change:e}){let t=W(),n=e.mode.from!==e.mode.to;return(0,X.jsxs)(`div`,{className:`grid gap-2 py-3 first:pt-0 last:pb-0`,"data-narrowed-key":e.keyId,children:[(0,X.jsxs)(`span`,{className:`flex items-center gap-2`,children:[(0,X.jsx)(S,{size:16,className:`shrink-0 text-kumo-subtle`}),(0,X.jsx)(_,{bold:!0,as:`span`,children:e.name??t(`agents.unnamed`)})]}),n&&(0,X.jsxs)(`span`,{className:`flex flex-wrap items-center gap-1.5`,children:[(0,X.jsx)(_,{variant:`secondary`,size:`sm`,as:`span`,children:t(`members.role.narrowedMode`)}),(0,X.jsx)(C,{mode:e.mode.from,subtle:!0}),(0,X.jsx)(p,{size:12}),(0,X.jsx)(C,{mode:e.mode.to})]}),(0,X.jsxs)(`div`,{className:`flex flex-wrap items-center gap-1`,children:[(0,X.jsx)(_,{variant:`secondary`,size:`sm`,as:`span`,children:t(`members.role.narrowedScopes`)}),pe(e.scopes.to).map(e=>(0,X.jsx)(Ge,{scope:e},e))]}),e.elevationEnded&&(0,X.jsx)(_,{variant:`secondary`,size:`sm`,children:t(`members.role.elevationEnded`)})]})}function ut({member:e,onOpenChange:t}){let n=W(),r=s(),i=P(),a=N(),o=ct(),c=st(e),[u,d]=(0,Y.useState)(e?.role??`contributor`),[f,m]=(0,Y.useState)(),h=l({mutationFn:({userId:e,to:t})=>L.members.setRole(e,t),onSuccess:async e=>{await Promise.all([r.invalidateQueries({queryKey:M}),r.invalidateQueries({queryKey:[`agent-keys`]})]);let a=e.member.name,o=n(`roles.names.${e.member.role}`);e.keysNarrowed.length>0?m(e.keysNarrowed):t(!1),i.success(n(`members.role.changed`),n(`members.role.changedDescription`,{name:a,to:o}))}});(0,Y.useEffect)(()=>{e&&(d(e.role),m(void 0),h.reset())},[e?.userId]);let v=c?.role??`contributor`,y=Se(u)<Se(v),b=u===v,x=h.error?o(h.error)??G(n,h.error):``;return(0,X.jsx)(V.Root,{open:e!==void 0,onOpenChange:t,dismissDisabled:h.isPending,children:(0,X.jsxs)(V.Content,{size:`base`,closeLabel:n(`common.close`),children:[(0,X.jsx)(V.Title,{children:f?n(`members.role.narrowedTitle`):n(`members.role.title`,{name:c?.name??``})}),(0,X.jsx)(V.Description,{children:f?n(`members.role.narrowedDescription`,{count:f.length}):n(`members.role.description`)}),(0,X.jsx)(V.Body,{children:f?(0,X.jsxs)(`div`,{className:`grid gap-4`,"data-testid":`keys-narrowed`,children:[(0,X.jsx)(k,{variant:`default`,icon:(0,X.jsx)(g,{weight:`fill`}),title:n(`members.role.narrowedBanner`,{count:f.length}),description:n(`members.role.narrowedBannerDescription`)}),(0,X.jsx)(H,{label:n(`members.role.narrowedTitle`),children:(0,X.jsx)(`div`,{className:`divide-y divide-kumo-hairline`,children:f.map(e=>(0,X.jsx)(lt,{change:e},e.keyId))})})]}):(0,X.jsxs)(`div`,{className:`grid gap-5`,children:[c&&(0,X.jsxs)(H,{layout:`row`,label:n(`members.role.member`),children:[(0,X.jsx)(Z,{member:c}),(0,X.jsx)(q,{value:c.role})]}),h.error&&(0,X.jsx)(k,{variant:`error`,size:`sm`,icon:(0,X.jsx)(O,{weight:`fill`}),title:n(`members.role.failed`),description:x}),(0,X.jsx)(z,{className:`w-full`,label:n(`members.role.newRole`),value:u,onValueChange:e=>d(e),items:Object.fromEntries(be(a).map(e=>[e,n(`roles.names.${e}`)])),description:n(`roles.summaries.${u}`)}),!b&&(0,X.jsxs)(H,{layout:`row`,label:n(`members.role.change`),children:[(0,X.jsxs)(`span`,{className:`flex flex-wrap items-center gap-2`,children:[(0,X.jsx)(_,{variant:`secondary`,size:`sm`,as:`span`,children:n(`members.role.now`)}),(0,X.jsx)(q,{value:v,tooltip:!1}),(0,X.jsx)(p,{size:14}),(0,X.jsx)(q,{value:u,tooltip:!1})]}),(0,X.jsx)(_,{variant:`secondary`,size:`sm`,as:`span`,children:n(`members.role.immediate`)})]}),y&&(0,X.jsx)(k,{variant:`alert`,size:`sm`,icon:(0,X.jsx)(S,{weight:`fill`}),title:n(`members.role.demotionTitle`),description:n(`members.role.demotion`,{role:n(`roles.names.${u}`)})})]})}),(0,X.jsx)(V.Actions,{dismissLabel:n(f?`common.close`:`common.cancel`),children:f?(0,X.jsx)(V.Actions.Primary,{onClick:()=>t(!1),children:n(`members.role.done`)}):(0,X.jsx)(V.Actions.Primary,{onClick:()=>c&&h.mutate({userId:c.userId,to:u}),loading:h.isPending,disabled:b,children:n(`members.role.submit`)})})]})})}function Q({icon:e,children:t}){return(0,X.jsxs)(`div`,{className:`flex items-start gap-2`,children:[(0,X.jsx)(`span`,{className:`flex h-lh items-center text-kumo-subtle`,children:e}),(0,X.jsx)(_,{size:`sm`,children:t})]})}function dt({member:e,keyCount:t,inviteCount:n,onOpenChange:r}){let i=W(),a=s(),o=P(),c=ct(),u=st(e),d=l({mutationFn:e=>L.members.remove(e),onSuccess:async e=>{r(!1),o.success(i(`members.remove.done`,{name:u?.name??``}),i(`members.remove.doneDescription`,{keys:e.keysDisabled,invites:e.invitesCanceled,requests:e.requestsDenied})),await Promise.all([a.invalidateQueries({queryKey:M}),a.invalidateQueries({queryKey:[`invites`]}),a.invalidateQueries({queryKey:[`agent-keys`]}),a.invalidateQueries({queryKey:[`approvals`]})])}});return(0,Y.useEffect)(()=>{e&&d.reset()},[e?.userId]),(0,X.jsx)(V.Alert,{open:e!==void 0,onOpenChange:r,dismissDisabled:d.isPending,children:(0,X.jsxs)(V.Content,{size:`sm`,closeLabel:i(`common.close`),children:[(0,X.jsx)(V.Title,{children:i(`members.remove.title`,{name:u?.name??``})}),(0,X.jsx)(V.Description,{children:i(`members.remove.description`)}),(0,X.jsx)(V.Body,{children:(0,X.jsxs)(`div`,{className:`grid gap-4`,"data-testid":`remove-member`,children:[u&&(0,X.jsxs)(H,{layout:`row`,label:i(`members.role.member`),children:[(0,X.jsx)(Z,{member:u,size:`sm`}),(0,X.jsx)(q,{value:u.role,tooltip:!1})]}),(0,X.jsxs)(`div`,{className:`grid gap-2`,children:[(0,X.jsx)(Q,{icon:(0,X.jsx)(m,{icon:Ne,size:16}),children:i(`members.remove.signOut`)}),(0,X.jsx)(Q,{icon:(0,X.jsx)(S,{size:16}),children:t===void 0?i(`members.remove.keys`):i(`members.remove.keysCount`,{count:t})}),(0,X.jsx)(Q,{icon:(0,X.jsx)(A,{size:16}),children:n===void 0?i(`members.remove.invites`):i(`members.remove.invitesCount`,{count:n})}),(0,X.jsx)(Q,{icon:(0,X.jsx)(y,{size:16}),children:i(`members.remove.requests`)}),(0,X.jsx)(Q,{icon:(0,X.jsx)(g,{size:16}),children:i(`members.remove.kept`)})]}),d.error&&(0,X.jsx)(k,{variant:`error`,size:`sm`,icon:(0,X.jsx)(O,{weight:`fill`}),title:i(`members.remove.failed`),description:c(d.error)??G(i,d.error)})]})}),(0,X.jsx)(V.Actions,{dismissLabel:i(`common.cancel`),children:(0,X.jsx)(V.Actions.Primary,{variant:`destructive`,loading:d.isPending,onClick:()=>u&&d.mutate(u.userId),children:i(`members.remove.submit`)})})]})})}function ft({member:e,onOpenChange:t}){let{t:n,locale:r}=U(),i=ct(),a=st(e),[o,s]=(0,Y.useState)(),c=l({mutationFn:e=>L.members.passwordReset(e),onSuccess:e=>s(e)});return(0,Y.useEffect)(()=>{e?(s(void 0),c.reset()):s(void 0)},[e?.userId]),(0,X.jsx)(V.Root,{open:e!==void 0,onOpenChange:t,dismissDisabled:c.isPending,children:(0,X.jsxs)(V.Content,{size:`base`,closeLabel:n(`common.close`),children:[(0,X.jsx)(V.Title,{children:n(o?`members.reset.revealTitle`:`members.reset.title`)}),(0,X.jsx)(V.Description,{children:n(o?`members.reset.revealDescription`:`members.reset.description`,{name:a?.name??``})}),(0,X.jsx)(V.Body,{children:o?(0,X.jsxs)(`div`,{className:`grid gap-5`,"data-testid":`reset-reveal`,children:[(0,X.jsx)(k,{variant:`alert`,icon:(0,X.jsx)(D,{weight:`fill`}),title:n(`members.reset.warningTitle`),description:n(`members.reset.warning`)}),(0,X.jsxs)(`div`,{className:`grid min-w-0 gap-1.5`,children:[(0,X.jsx)(_,{size:`sm`,bold:!0,as:`span`,children:n(`members.reset.link`)}),(0,X.jsx)(F,{size:`lg`,text:o.url,tooltip:{text:n(`common.copy`),copiedText:n(`common.copied`)}})]}),(0,X.jsx)(H,{children:(0,X.jsxs)(`div`,{className:`flex items-start gap-2`,children:[(0,X.jsx)(`span`,{className:`flex h-lh items-center text-kumo-subtle`,children:(0,X.jsx)(y,{size:16})}),(0,X.jsx)(_,{variant:`secondary`,size:`sm`,children:n(`members.reset.expires`,{relative:he(o.expiresAt,r),absolute:we(o.expiresAt,r)})})]})})]}):(0,X.jsxs)(`div`,{className:`grid gap-4`,children:[a&&(0,X.jsxs)(H,{layout:`row`,label:n(`members.role.member`),children:[(0,X.jsx)(Z,{member:a,size:`sm`}),(0,X.jsx)(q,{value:a.role,tooltip:!1})]}),(0,X.jsxs)(`div`,{className:`grid gap-2`,children:[(0,X.jsx)(Q,{icon:(0,X.jsx)(y,{size:16}),children:n(`members.reset.once`)}),(0,X.jsx)(Q,{icon:(0,X.jsx)(m,{icon:Ne,size:16}),children:n(`members.reset.signsOut`)}),(0,X.jsx)(Q,{icon:(0,X.jsx)(T,{size:16}),children:n(`members.reset.replaces`)})]}),c.error&&(0,X.jsx)(k,{variant:`error`,size:`sm`,icon:(0,X.jsx)(O,{weight:`fill`}),title:n(`members.reset.failed`),description:i(c.error)??G(n,c.error)})]})}),(0,X.jsx)(V.Actions,{dismissLabel:n(o?`common.close`:`common.cancel`),children:o?(0,X.jsx)(V.Actions.Primary,{onClick:()=>t(!1),children:n(`members.reset.done`)}):(0,X.jsx)(V.Actions.Primary,{loading:c.isPending,onClick:()=>a&&c.mutate(a.userId),children:n(`members.reset.submit`)})})]})})}function pt({member:e,onOpenChange:t}){let n=W(),r=s(),i=P(),a=ct(),o=st(e),[c,u]=(0,Y.useState)(``),[d,f]=(0,Y.useState)(!1),m=l({mutationFn:({userId:e,pw:t})=>L.members.transferOwnership(e,t),onSuccess:async()=>{t(!1),i.success(n(`members.transfer.done`),n(`members.transfer.doneDescription`,{name:o?.name??``})),await Promise.all([r.invalidateQueries({queryKey:M}),r.invalidateQueries({queryKey:[`me`]}),r.invalidateQueries({queryKey:[`agent-keys`]})])}});(0,Y.useEffect)(()=>{e?(u(``),f(!1),m.reset()):u(``)},[e?.userId]);let h=I(m.error),g=h===`wrong_password`?n(`members.transfer.wrongPassword`):d&&!c?n(`members.transfer.passwordRequired`):void 0,_=()=>{f(!0),o&&c&&!m.isPending&&m.mutate({userId:o.userId,pw:c})},v=m.error&&h!==`wrong_password`?h===`not_administrator`?n(`members.transfer.notAdministrator`):a(m.error)??G(n,m.error):void 0;return(0,X.jsx)(V.Alert,{open:e!==void 0,onOpenChange:t,dismissDisabled:m.isPending,children:(0,X.jsxs)(V.Content,{size:`base`,closeLabel:n(`common.close`),children:[(0,X.jsx)(V.Title,{children:n(`members.transfer.title`,{name:o?.name??``})}),(0,X.jsx)(V.Description,{children:n(`members.transfer.description`)}),(0,X.jsx)(V.Body,{children:(0,X.jsxs)(`div`,{className:`grid gap-5`,"data-testid":`transfer-ownership`,children:[(0,X.jsx)(k,{variant:`alert`,icon:(0,X.jsx)(Re,{weight:`fill`}),title:n(`members.transfer.warningTitle`),description:n(`members.transfer.warning`,{name:o?.name??``})}),o&&(0,X.jsxs)(H,{layout:`row`,label:n(`members.transfer.to`),children:[(0,X.jsx)(Z,{member:o,size:`sm`}),(0,X.jsxs)(`span`,{className:`flex items-center gap-1.5`,children:[(0,X.jsx)(q,{value:o.role,tooltip:!1}),(0,X.jsx)(p,{size:12}),(0,X.jsx)(q,{value:`owner`,tooltip:!1})]})]}),(0,X.jsxs)(`div`,{className:`grid gap-2`,children:[(0,X.jsx)(Q,{icon:(0,X.jsx)(Re,{size:16}),children:n(`members.transfer.youBecome`)}),(0,X.jsx)(Q,{icon:(0,X.jsx)(S,{size:16}),children:n(`members.transfer.keys`)}),(0,X.jsx)(Q,{icon:(0,X.jsx)(T,{size:16}),children:n(`members.transfer.onlyThey`)})]}),v&&(0,X.jsx)(k,{variant:`error`,size:`sm`,icon:(0,X.jsx)(O,{weight:`fill`}),title:n(`members.transfer.failed`),description:v}),(0,X.jsx)(Ve,{label:n(`members.transfer.password`),description:n(`members.transfer.passwordHint`),value:c,onValueChange:u,error:g,autoComplete:`current-password`,onEnter:_})]})}),(0,X.jsx)(V.Actions,{dismissLabel:n(`common.cancel`),children:(0,X.jsx)(V.Actions.Primary,{variant:`destructive`,loading:m.isPending,onClick:_,children:n(`members.transfer.submit`)})})]})})}function mt({member:e,onOpenChange:t}){let n=W(),r=s(),i=P(),a=(0,Y.useRef)(e);e&&(a.current=e);let o=e??a.current,[c,u]=(0,Y.useState)(o?.sites),[d,f]=(0,Y.useState)(!1),p=l({mutationFn:({userId:e,next:t})=>L.members.setSites(e,t),onSuccess:async e=>{await r.invalidateQueries({queryKey:M}),t(!1),i.success(n(`siteAccess.saved`),n(`siteAccess.savedDescription`,{name:e.member.name}))}});return(0,Y.useEffect)(()=>{e&&(u(e.sites),f(!1),p.reset())},[e?.userId]),(0,X.jsx)(V.Root,{open:e!==void 0,onOpenChange:t,dismissDisabled:p.isPending,children:(0,X.jsxs)(V.Content,{size:`base`,closeLabel:n(`common.close`),children:[(0,X.jsx)(V.Title,{children:n(`siteAccess.title`,{name:o?.name??``})}),(0,X.jsx)(V.Description,{children:n(`siteAccess.description`)}),(0,X.jsx)(V.Body,{children:(0,X.jsxs)(`div`,{className:`grid gap-5`,children:[o&&(0,X.jsxs)(H,{layout:`row`,label:n(`members.role.member`),children:[(0,X.jsx)(Z,{member:o}),(0,X.jsx)(q,{value:o.role})]}),p.error&&(0,X.jsx)(k,{variant:`error`,size:`sm`,icon:(0,X.jsx)(O,{weight:`fill`}),title:n(`siteAccess.failed`),description:G(n,p.error)}),o&&(0,X.jsx)(Xe,{role:o.role,value:c,onChange:u,error:d&&J(c)?n(`siteAccess.required`):void 0})]})}),(0,X.jsx)(V.Actions,{dismissLabel:n(`common.cancel`),children:(0,X.jsx)(V.Actions.Primary,{onClick:()=>{f(!0),o&&!J(c)&&p.mutate({userId:o.userId,next:Je(c??{},o.role)})},loading:p.isPending,children:n(`siteAccess.submit`)})})]})})}var ht=(e,t,n)=>n(e.name).includes(t)||n(e.email??``).includes(t)||e.role.includes(t);function $({icon:e,reason:t,onClick:n,variant:r,children:i}){return t?(0,X.jsx)(a,{content:t,side:`left`,render:(0,X.jsx)(`div`,{}),children:(0,X.jsx)(R.Item,{icon:e,disabled:!0,variant:r,children:i})}):(0,X.jsx)(R.Item,{icon:e,onClick:n,variant:r,children:i})}function gt({member:e,problem:t,isOwner:n,onRole:r,onSites:i,onReset:a,onTransfer:s,onRemove:c}){let l=W(),u=j(`members.manage`),d=t?u.reason??l(`members.rank.${t}`):void 0,f=l(`members.menu`,{name:e.name});if(t===`not_allowed`)return(0,X.jsx)(o,{variant:`ghost`,size:`xs`,shape:`square`,icon:(0,X.jsx)(b,{weight:`bold`}),"aria-label":f,disabled:!0,title:d});let p=e.role===`administrator`?d:l(`members.transfer.needsAdministrator`);return(0,X.jsxs)(R,{children:[(0,X.jsx)(R.Trigger,{render:(0,X.jsx)(o,{variant:`ghost`,size:`xs`,shape:`square`,icon:(0,X.jsx)(b,{weight:`bold`}),"aria-label":f})}),(0,X.jsxs)(R.Content,{align:`end`,children:[(0,X.jsx)($,{icon:nt,reason:d,onClick:r,children:l(`members.changeRole`)}),i&&(0,X.jsx)($,{icon:Ae,reason:d,onClick:i,children:l(`siteAccess.menu`)}),(0,X.jsx)($,{icon:et,reason:d,onClick:a,children:l(`members.resetLink`)}),n&&(0,X.jsx)($,{icon:Re,reason:p,onClick:s,children:l(`members.transferOwnership`)}),(0,X.jsx)(R.Separator,{}),(0,X.jsx)($,{icon:E,reason:d,onClick:c,variant:`danger`,children:l(`members.remove.menu`)})]})]})}function _t({invite:e,now:t}){let{t:n,locale:r}=U();return ye(e,t)?(0,X.jsx)(`span`,{"data-expired":!0,className:`inline-flex`,children:(0,X.jsx)(i,{variant:`warning`,appearance:`dot`,children:n(`members.invites.expired`)})}):(0,X.jsx)(_,{variant:`secondary`,size:`sm`,as:`span`,children:he(e.expiresAt,r,t)})}function vt({invite:e,reason:t,onReinvite:n,onRevoke:r}){let i=W();return(0,X.jsxs)(R,{children:[(0,X.jsx)(R.Trigger,{render:(0,X.jsx)(o,{variant:`ghost`,size:`xs`,shape:`square`,icon:(0,X.jsx)(b,{weight:`bold`}),"aria-label":i(`members.invites.menu`,{email:e.email})})}),(0,X.jsxs)(R.Content,{align:`end`,children:[(0,X.jsx)($,{icon:f,reason:t,onClick:n,children:i(`members.invites.reinvite`)}),e.status===`pending`&&(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(R.Separator,{}),(0,X.jsx)($,{icon:De,reason:t,onClick:r,variant:`danger`,children:i(`members.invites.revoke`)})]})]})]})}function yt({onReinvite:e,onInvite:t}){let{t:n,locale:r}=U(),u=s(),d=P(),f=Ie(),p=ie().data,m=c({queryKey:[`invites`],queryFn:L.invites.list,retry:(e,t)=>!oe(t)&&e<1}),[h,g]=(0,Y.useState)(),v=l({mutationFn:e=>L.invites.revoke(e.id),onSuccess:async(e,t)=>{g(void 0),d.success(n(`members.invites.revoked`),n(`members.invites.revokedDescription`,{email:t.email})),await u.invalidateQueries({queryKey:[`invites`]})}}),y=m.data??[],b=e=>p?.invitableRoles?.includes(e.role)!==!1;return(0,X.jsxs)(fe,{id:`invites`,title:n(`members.invites.title`),icon:(0,X.jsx)(x,{size:16}),description:n(`members.invites.description`),actions:y.length>0?(0,X.jsx)(i,{variant:`secondary`,children:y.length}):void 0,flush:!0,children:[m.error?(0,X.jsx)(`div`,{className:`px-5 py-4`,children:(0,X.jsx)(je,{error:m.error,onRetry:()=>m.refetch()})}):!m.isPending&&y.length===0?(0,X.jsx)(Ee,{icon:(0,X.jsx)(x,{size:32,className:`text-kumo-inactive`}),title:n(`members.invites.empty`),description:n(`members.invites.emptyDescription`),contents:(0,X.jsx)(o,{variant:`secondary`,icon:(0,X.jsx)(ke,{}),onClick:t,children:n(`members.invite`)})}):(0,X.jsx)(`div`,{className:`overflow-x-auto`,children:(0,X.jsxs)(B,{children:[(0,X.jsx)(B.Header,{children:(0,X.jsxs)(B.Row,{children:[(0,X.jsx)(B.Head,{children:n(`members.invites.columns.email`)}),(0,X.jsx)(B.Head,{children:n(`members.invites.columns.role`)}),(0,X.jsx)(B.Head,{children:n(`members.invites.columns.expires`)}),(0,X.jsx)(B.Head,{children:n(`members.invites.columns.inviter`)}),(0,X.jsx)(B.Head,{sticky:`right`,children:(0,X.jsx)(`span`,{className:`sr-only`,children:n(`members.invites.columns.actions`)})})]})}),m.isPending?(0,X.jsx)(He,{columns:5,rows:2}):(0,X.jsx)(B.Body,{children:y.map(t=>{let o=t.status===`accepted`&&!t.acceptedUserId,s=b(t),c=s?void 0:n(`members.rank.role_too_high`);return(0,X.jsxs)(B.Row,{"data-invite-id":t.id,children:[(0,X.jsx)(B.Cell,{children:(0,X.jsxs)(`div`,{className:`grid min-w-48 gap-0.5`,children:[(0,X.jsx)(_,{bold:!0,as:`span`,truncate:!0,children:t.email}),(0,X.jsxs)(`span`,{className:`flex flex-wrap items-center gap-1.5`,children:[t.delivery===`email`?(0,X.jsx)(_,{variant:`secondary`,size:`sm`,as:`span`,children:n(`members.invites.byEmail`)}):(0,X.jsx)(_,{variant:`secondary`,size:`sm`,as:`span`,children:n(`members.invites.byLink`)}),o&&(0,X.jsx)(a,{content:n(`members.invites.incompleteHint`),children:(0,X.jsx)(i,{variant:`warning`,icon:(0,X.jsx)(D,{}),children:n(`members.invites.incomplete`)})})]})]})}),(0,X.jsx)(B.Cell,{className:`whitespace-nowrap`,children:(0,X.jsx)(q,{value:t.role})}),(0,X.jsx)(B.Cell,{className:`whitespace-nowrap`,children:(0,X.jsxs)(`div`,{className:`grid gap-0.5`,children:[(0,X.jsx)(_t,{invite:t,now:f}),(0,X.jsx)(_,{variant:`secondary`,size:`xs`,as:`span`,children:we(t.expiresAt,r)})]})}),(0,X.jsx)(B.Cell,{className:`whitespace-nowrap`,children:(0,X.jsxs)(`div`,{className:`grid gap-0.5`,children:[(0,X.jsx)(_,{as:`span`,children:t.inviter.userId===p?.userId?n(`members.invites.you`):t.inviter.name??n(`members.invites.someone`)}),(0,X.jsx)(Fe,{iso:t.createdAt,size:`xs`})]})}),(0,X.jsx)(B.Cell,{sticky:`right`,className:`w-12 text-end`,children:(0,X.jsx)(vt,{invite:t,reason:s?void 0:c,onReinvite:()=>e({email:t.email,role:t.role}),onRevoke:()=>g(t)})})]},t.id)})})]})}),(0,X.jsx)(Be,{open:h!==void 0,onOpenChange:e=>{e||(g(void 0),v.reset())},title:n(`members.invites.revokeTitle`),description:n(`members.invites.revokeDescription`,{email:h?.email??``}),confirmLabel:n(`members.invites.revoke`),busy:v.isPending,error:v.error,onConfirm:()=>h&&v.mutate(h)})]})}function bt(){let{t:e,locale:t}=U(),n=re(),r=[{icon:(0,X.jsx)(ee,{size:16}),text:e(`members.how.single`)},{icon:(0,X.jsx)(x,{size:16}),text:e(`members.how.bound`)},{icon:(0,X.jsx)(S,{size:16}),text:e(`members.how.expiry`,{default:K(n.defaultHours*60,t,`long`),admin:K(xe(n,`administrator`)*60,t,`long`)})},{icon:(0,X.jsx)(w,{size:16}),text:e(`members.how.keys`)},{icon:(0,X.jsx)(Re,{size:16}),text:e(`members.how.owner`)}];return(0,X.jsx)(fe,{title:e(`members.how.title`),icon:(0,X.jsx)(g,{size:16}),children:(0,X.jsx)(`div`,{className:`grid gap-3`,children:r.map(e=>(0,X.jsxs)(`div`,{className:`flex items-start gap-2`,children:[(0,X.jsx)(`span`,{className:`flex h-lh items-center text-kumo-subtle`,children:e.icon}),(0,X.jsx)(_,{variant:`secondary`,size:`sm`,children:e.text})]},e.text))})})}function xt({member:e,you:t,problem:n,isOwner:r,multiSite:a,on:o}){let s=W(),c=e.sites?Object.keys(e.sites).length:0,l=(0,X.jsxs)(`span`,{className:`inline-flex flex-wrap items-center gap-1.5`,children:[(0,X.jsx)(q,{value:e.role}),c>0&&(0,X.jsx)(`span`,{"data-site-limited":!0,children:(0,X.jsx)(i,{variant:`secondary`,children:s(`siteAccess.count`,{count:c})})})]});return(0,X.jsxs)(B.Row,{"data-member-id":e.userId,"data-role":e.role,children:[(0,X.jsx)(B.Cell,{children:(0,X.jsxs)(`div`,{className:`grid min-w-0 gap-1.5 sm:min-w-56`,children:[(0,X.jsx)(Z,{member:e,you:t}),(0,X.jsx)(`span`,{className:`ps-11 sm:hidden`,children:l})]})}),(0,X.jsx)(B.Cell,{className:`hidden whitespace-nowrap sm:table-cell`,children:l}),(0,X.jsx)(B.Cell,{className:`hidden whitespace-nowrap sm:table-cell`,children:(0,X.jsx)(Fe,{iso:e.joinedAt})}),(0,X.jsx)(B.Cell,{sticky:`right`,className:`w-12 text-end`,children:(0,X.jsx)(gt,{member:e,problem:n,isOwner:r,onRole:()=>o.setToRole(e),onSites:a&&Ye(e.role)?()=>o.setToSites(e):void 0,onReset:()=>o.setToReset(e),onTransfer:()=>o.setToTransfer(e),onRemove:()=>o.setToRemove(e)})})]})}function St(){let e=W(),t=u(),{view:n=`members`}=d({strict:!1}),r=ie().data,i=ne(),a=N(),s=j(`members.invite`),l=te(`members.manage`),f=j(`activity.all`),p=te(`agents.manage`)&&r?.can!==void 0,m=c({queryKey:[`agent-keys`,`all`],queryFn:L.agentKeys.listAll,enabled:p,retry:!1}),_=(0,Y.useMemo)(()=>me(i.data??[]),[i.data]),v=Ke(_,ht),[y,b]=(0,Y.useState)(!1),[x,S]=(0,Y.useState)(),[ee,C]=(0,Y.useState)(),[T,E]=(0,Y.useState)(),D=(qe().data?.length??0)>1,[O,A]=(0,Y.useState)(),[re,M]=(0,Y.useState)(),[P,ae]=(0,Y.useState)(),F=c({queryKey:[`invites`],queryFn:L.invites.list,enabled:s.allowed&&r?.can!==void 0,retry:!1}),I=oe(i.error),ce={userId:r?.userId,canManage:l},R=r?.role===`owner`,z=e=>{S(e),b(!0)};return(0,X.jsxs)(Te,{crumbs:(0,X.jsx)(ue,{trail:[{label:e(`pageHeaders.team.title`)}]}),icon:(0,X.jsx)(Oe,{size:24}),title:e(`pageHeaders.team.title`),description:e(`pageHeaders.team.description`),tabs:[{value:`members`,label:e(`members.tabs.members`)},{value:`activity`,label:e(`members.tabs.activity`)}],tab:n,onTabChange:e=>t({to:`/team`,search:e===`activity`?{view:`activity`}:{}}),actions:(0,X.jsx)(o,{variant:`primary`,icon:(0,X.jsx)(ke,{}),onClick:()=>z(),disabled:!s.allowed||I,title:s.reason,children:e(`members.invite`)}),aside:n===`members`?(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(fe,{title:e(`members.roles.title`),icon:(0,X.jsx)(w,{size:16}),description:e(`members.roles.description`),flush:!0,children:(0,X.jsx)(ze,{roles:a.names,current:r?.role??void 0})}),(0,X.jsx)(bt,{})]}):void 0,children:[I?(0,X.jsx)(k,{variant:`secondary`,icon:(0,X.jsx)(g,{weight:`fill`}),title:e(`members.notEnabledTitle`),description:e(`members.notEnabledDescription`)}):n===`activity`?f.allowed?(0,X.jsx)(We,{source:{kind:`deployment`}}):(0,X.jsx)(k,{variant:`secondary`,icon:(0,X.jsx)(g,{weight:`fill`}),title:e(`members.activity.restrictedTitle`),description:f.reason??``}):(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(je,{error:i.error,onRetry:()=>i.refetch(),retrying:i.isFetching}),(0,X.jsx)(Ue,{search:v.search,onSearch:v.setSearch,placeholder:e(`members.search`)}),i.isSuccess&&_.length===0?(0,X.jsx)(de,{icon:(0,X.jsx)(Oe,{size:48,className:`text-kumo-inactive`}),title:e(`members.empty`),description:e(`members.emptyDescription`)}):(0,X.jsx)(se,{className:`overflow-x-auto p-0`,children:(0,X.jsxs)(B,{children:[(0,X.jsx)(B.Header,{children:(0,X.jsxs)(B.Row,{children:[(0,X.jsx)(B.Head,{children:e(`members.columns.member`)}),(0,X.jsx)(B.Head,{className:`hidden sm:table-cell`,children:e(`members.columns.role`)}),(0,X.jsx)(B.Head,{className:`hidden sm:table-cell`,children:e(`members.columns.joined`)}),(0,X.jsx)(B.Head,{sticky:`right`,className:`w-12`,children:(0,X.jsx)(`span`,{className:`sr-only`,children:e(`members.columns.actions`)})})]})}),i.isPending?(0,X.jsx)(He,{columns:4,rows:3}):v.pageItems.length===0?(0,X.jsx)(B.Body,{children:(0,X.jsx)(B.Row,{children:(0,X.jsx)(B.Cell,{colSpan:4,children:(0,X.jsx)(Ee,{icon:(0,X.jsx)(Oe,{size:32,className:`text-kumo-inactive`}),title:e(`members.noMatches`,{query:v.search})})})})}):(0,X.jsx)(B.Body,{children:v.pageItems.map(e=>(0,X.jsx)(xt,{member:e,you:e.userId===r?.userId,problem:ge(ce,e),isOwner:R,multiSite:D,on:{setToRole:C,setToSites:E,setToReset:M,setToTransfer:ae,setToRemove:A}},e.userId))})]})}),v.total>v.perPage&&(0,X.jsx)(h,{page:v.page,perPage:v.perPage,totalCount:v.total,setPage:v.setPage,controls:`simple`}),s.allowed&&r&&(0,X.jsx)(yt,{onReinvite:e=>z(e),onInvite:()=>z()})]}),(0,X.jsx)(at,{open:y,onOpenChange:e=>{b(e),e||S(void 0)},draft:x}),(0,X.jsx)(ut,{member:ee,onOpenChange:e=>!e&&C(void 0)}),(0,X.jsx)(mt,{member:T,onOpenChange:e=>!e&&E(void 0)}),(0,X.jsx)(dt,{member:O,keyCount:O&&m.data?m.data.filter(e=>e.owner?.userId===O.userId&&e.enabled).length:void 0,inviteCount:O&&F.data?F.data.filter(e=>e.inviter.userId===O.userId&&e.status===`pending`).length:void 0,onOpenChange:e=>!e&&A(void 0)}),(0,X.jsx)(ft,{member:re,onOpenChange:e=>!e&&M(void 0)}),(0,X.jsx)(pt,{member:P,onOpenChange:e=>!e&&ae(void 0)})]})}export{St as MembersPage};
2
- //# sourceMappingURL=MembersPage-cF7mAr68.js.map
1
+ import{r as e}from"./rolldown-runtime-hePW80VL.js";import{t}from"./IconBase.es-BZDpYMnj.js";import{i as n,r}from"./react-CDCuUAOg.js";import{t as i}from"./badge-dq8bx752b9dp7dst--rpq8QXS.js";import{o as a,t as o}from"./button-pa1bq9b85hawg41a-CmOCuL-1.js";import{S as s,_ as c,h as l,l as u,u as d}from"./tanstack-BRxyYm4G.js";import{t as f}from"./ArrowClockwise.es-BA0pzb0Y.js";import{n as p,t as m}from"./DirectionalIcon-UZJFXGY_.js";import{t as h}from"./pagination-oaenm9t7ou3lmcgw-CjvX77_7.js";import{m as g,n as _}from"./skeleton-line-m9dyh126t9k07jvg-BFlcthbF.js";import{t as v}from"./CheckCircle.es-XJ9Tr9Tu.js";import{t as y}from"./ClockCountdown.es-BR_zz6vi.js";import{t as b}from"./DotsThree.es-C-pT5SgE.js";import{t as x}from"./EnvelopeSimple.es-g-hlqV74.js";import{t as S}from"./Key.es-DE551dL3.js";import{t as ee}from"./LinkSimple.es-BB_3GfFO.js";import{a as C}from"./AgentModes-758a2e8F.js";import{t as w}from"./ShieldCheck.es-BOXTHH7h.js";import{t as T}from"./ShieldWarning.es-DPxoDMpT.js";import{t as E}from"./Trash.es-CxKLVMOQ.js";import{t as D}from"./Warning.es-LZXqwHRF.js";import{n as O,t as k}from"./banner-msnmqm7of2lck01x-D6cADEpP.js";import{t as A}from"./XCircle.es-3fJHkmwA.js";import{a as j,i as te,l as ne,o as re,s as ie,t as M,u as N}from"./useMe-BkBpEyf5.js";import{t as P}from"./Toast-BsM5w6Jh.js";import{t as ae}from"./input-c8lv9ulv0kortliq-Be2cm12J.js";import{t as F}from"./clipboard-text-gd6s3n1bqse9zgt8-C151k1zC.js";import{c as oe,g as se,o as I,s as ce,t as L}from"./api-CHeogUo-.js";import{t as R}from"./dropdown-m53ji1d66mws89wh-BTaT-o14.js";import{t as z}from"./select-futox5zqr3r80y9a-FumEl51u.js";import{t as B}from"./table-yf8ul2e5nbemioi1-KGRDj7XO.js";import{t as le}from"./radio-35dx7y6rjrezbjsp-2D7MXAy3.js";import{t as ue}from"./Crumbs-B3lDes5a.js";import{t as de}from"./empty-hkvg3is3uc6dj1at-Cen9KfIy.js";import{t as V}from"./layer-dialog-j5ywmzs46ccg6oqy-uKC-1DCk.js";import{t as H}from"./InsetPanel-CHSg953_.js";import{t as fe}from"./SectionCard-Bqvz-NiL.js";import{c as U,u as W}from"./i18n-CCHry74V.js";import{t as G}from"./api-errors-c5QRmg0g.js";import{T as K,x as pe}from"./agents-DGWn1WXw.js";import{S as me,a as he,b as ge,c as _e,d as ve,l as ye,r as be,u as xe,v as Se,w as Ce}from"./roles-B7USahqW.js";import{a as we}from"./activity-C0we9-m8.js";import{C as Te,E as Ee,F as De,I as Oe,L as ke,Q as Ae,S as je,T as Me,U as Ne,a as Pe,c as q,d as Fe,f as Ie,l as Le,rt as Re,u as ze}from"./index-OjH3NEOH.js";import{t as Be}from"./ConfirmDialog-DDDZap6y.js";import{t as Ve}from"./PasswordField-BgSYGdR_.js";import{t as He}from"./TableSkeleton-DWrf88UN.js";import{t as Ue}from"./ListToolbar-BHXRGWj_.js";import{ActivityList as We}from"./ActivityPage-CaRSJHlv.js";import{t as Ge}from"./ScopeBadge-8ftEPI5M.js";import{t as Ke}from"./usePaging-D37ddXyL.js";import{a as qe,i as J,n as Je,r as Ye,t as Xe}from"./SiteAccessField-DzJ30NV0.js";var Y=e(n(),1),Ze=new Map([[`bold`,Y.createElement(Y.Fragment,null,Y.createElement(`path`,{d:`M48,56V200a12,12,0,0,1-24,0V56a12,12,0,0,1,24,0Zm86.73,50.7L120,111.48V96a12,12,0,0,0-24,0v15.48L81.27,106.7a12,12,0,1,0-7.41,22.82l14.72,4.79-9.1,12.52A12,12,0,1,0,98.9,160.94l9.1-12.52,9.1,12.52a12,12,0,1,0,19.42-14.11l-9.1-12.52,14.72-4.79a12,12,0,1,0-7.41-22.82Zm115.12,7.7a12,12,0,0,0-15.12-7.7L220,111.48V96a12,12,0,0,0-24,0v15.48l-14.73-4.78a12,12,0,1,0-7.41,22.82l14.72,4.79-9.1,12.52a12,12,0,1,0,19.42,14.11l9.1-12.52,9.1,12.52a12,12,0,1,0,19.42-14.11l-9.1-12.52,14.72-4.79A12,12,0,0,0,249.85,114.4Z`}))],[`fill`,Y.createElement(Y.Fragment,null,Y.createElement(`path`,{d:`M224,48H32A16,16,0,0,0,16,64V192a16,16,0,0,0,16,16H224a16,16,0,0,0,16-16V64A16,16,0,0,0,224,48Zm-19.42,94.71a8,8,0,1,1-13,9.41L184,141.61l-7.63,10.51a8,8,0,1,1-13-9.41l7.64-10.5-12.36-4a8,8,0,1,1,5-15.21L176,117V104a8,8,0,0,1,16,0v13l12.35-4a8,8,0,0,1,5,15.21l-12.36,4Zm-72,0a8,8,0,1,1-13,9.41L112,141.61l-7.63,10.51a8,8,0,1,1-13-9.41l7.64-10.5-12.36-4a8,8,0,1,1,5-15.21L104,117V104a8,8,0,0,1,16,0v13l12.35-4a8,8,0,1,1,5,15.21l-12.36,4ZM64,88v80a8,8,0,0,1-16,0V88a8,8,0,0,1,16,0Z`}))],[`regular`,Y.createElement(Y.Fragment,null,Y.createElement(`path`,{d:`M48,56V200a8,8,0,0,1-16,0V56a8,8,0,0,1,16,0Zm92,54.5L120,117V96a8,8,0,0,0-16,0v21L84,110.5a8,8,0,0,0-5,15.22l20,6.49-12.34,17a8,8,0,1,0,12.94,9.4l12.34-17,12.34,17a8,8,0,1,0,12.94-9.4l-12.34-17,20-6.49A8,8,0,0,0,140,110.5ZM246,115.64A8,8,0,0,0,236,110.5L216,117V96a8,8,0,0,0-16,0v21l-20-6.49a8,8,0,0,0-4.95,15.22l20,6.49-12.34,17a8,8,0,1,0,12.94,9.4l12.34-17,12.34,17a8,8,0,1,0,12.94-9.4l-12.34-17,20-6.49A8,8,0,0,0,246,115.64Z`}))]]),Qe=new Map([[`bold`,Y.createElement(Y.Fragment,null,Y.createElement(`path`,{d:`M169.57,46.11a12,12,0,0,1,15.12-7.7L188,39.48V36a12,12,0,0,1,24,0v3.48l3.31-1.07a12,12,0,1,1,7.42,22.82l-3.31,1.08,2,2.82a12,12,0,1,1-19.41,14.1L200,76.42,198,79.23a12,12,0,1,1-19.41-14.1l2-2.82-3.31-1.08A12,12,0,0,1,169.57,46.11ZM236,128A108,108,0,1,1,128,20a109.19,109.19,0,0,1,18,1.49,12,12,0,0,1-4,23.67A85,85,0,0,0,128,44,83.94,83.94,0,0,0,62.05,179.94a83.48,83.48,0,0,1,29-23.42,52,52,0,1,1,74,0,83.48,83.48,0,0,1,29,23.42A83.57,83.57,0,0,0,212,128a85.2,85.2,0,0,0-1.16-14,12,12,0,0,1,23.67-4A109,109,0,0,1,236,128ZM128,148a28,28,0,1,0-28-28A28,28,0,0,0,128,148Zm0,64a83.53,83.53,0,0,0,48.43-15.43,60,60,0,0,0-96.86,0A83.53,83.53,0,0,0,128,212Z`}))],[`fill`,Y.createElement(Y.Fragment,null,Y.createElement(`path`,{d:`M228.25,63.07l-4.66-2.69a23.6,23.6,0,0,0,0-8.76l4.66-2.69a8,8,0,0,0-8-13.86l-4.67,2.7A23.92,23.92,0,0,0,208,33.38V28a8,8,0,0,0-16,0v5.38a23.92,23.92,0,0,0-7.58,4.39l-4.67-2.7a8,8,0,1,0-8,13.86l4.66,2.69a23.6,23.6,0,0,0,0,8.76l-4.66,2.69a8,8,0,0,0,4,14.93,7.92,7.92,0,0,0,4-1.07l4.67-2.7A23.92,23.92,0,0,0,192,78.62V84a8,8,0,0,0,16,0V78.62a23.92,23.92,0,0,0,7.58-4.39l4.67,2.7a7.92,7.92,0,0,0,4,1.07,8,8,0,0,0,4-14.93ZM200,64a8,8,0,1,1,8-8A8,8,0,0,1,200,64ZM128,76a44,44,0,1,1-44,44A44,44,0,0,1,128,76Zm102.56,34.68a103.92,103.92,0,1,1-85.24-85.24,8,8,0,0,1-2.64,15.78A88.07,88.07,0,0,0,40,128a87.62,87.62,0,0,0,22.24,58.41A79.71,79.71,0,0,1,84,165.1a4,4,0,0,1,4.83.32,59.81,59.81,0,0,0,78.27,0,4,4,0,0,1,4.84-.32,79.86,79.86,0,0,1,21.79,21.31A87.62,87.62,0,0,0,216,128a88.85,88.85,0,0,0-1.22-14.68,8,8,0,1,1,15.78-2.64Z`}))],[`regular`,Y.createElement(Y.Fragment,null,Y.createElement(`path`,{d:`M228.25,63.07l-4.66-2.69a23.6,23.6,0,0,0,0-8.76l4.66-2.69a8,8,0,0,0-8-13.86l-4.67,2.7A23.92,23.92,0,0,0,208,33.38V28a8,8,0,0,0-16,0v5.38a23.92,23.92,0,0,0-7.58,4.39l-4.67-2.7a8,8,0,1,0-8,13.86l4.66,2.69a23.6,23.6,0,0,0,0,8.76l-4.66,2.69a8,8,0,0,0,4,14.93,7.92,7.92,0,0,0,4-1.07l4.67-2.7A23.92,23.92,0,0,0,192,78.62V84a8,8,0,0,0,16,0V78.62a23.92,23.92,0,0,0,7.58-4.39l4.67,2.7a7.92,7.92,0,0,0,4,1.07,8,8,0,0,0,4-14.93ZM192,56a8,8,0,1,1,8,8A8,8,0,0,1,192,56Zm29.35,48.11a8,8,0,0,0-6.57,9.21A88.85,88.85,0,0,1,216,128a87.62,87.62,0,0,1-22.24,58.41,79.66,79.66,0,0,0-36.06-28.75,48,48,0,1,0-59.4,0,79.66,79.66,0,0,0-36.06,28.75A88,88,0,0,1,128,40a88.76,88.76,0,0,1,14.68,1.22,8,8,0,0,0,2.64-15.78,103.92,103.92,0,1,0,85.24,85.24A8,8,0,0,0,221.35,104.11ZM96,120a32,32,0,1,1,32,32A32,32,0,0,1,96,120ZM74.08,197.5a64,64,0,0,1,107.84,0,87.83,87.83,0,0,1-107.84,0Z`}))]]),$e=Y.forwardRef((e,n)=>Y.createElement(t,{ref:n,...e,weights:Ze}));$e.displayName=`PasswordIcon`;var et=$e,tt=Y.forwardRef((e,n)=>Y.createElement(t,{ref:n,...e,weights:Qe}));tt.displayName=`UserCircleGearIcon`;var nt=tt,X=r(),rt=[`rank`,`invalid_expiry`,`delivery_unavailable`,`delivery_failed`,`already_member`,`too_many_invites`,`rate_limited`];function it(e){let t=I(e);return rt.includes(t??``)?t:void 0}function at({open:e,onOpenChange:t,draft:n}){let{t:r,locale:i}=U(),a=s(),o=ie().data,c=re(),u=o?.invitableRoles??[],d=u.includes(`author`)?`author`:u.at(-1)??`contributor`,[f,p]=(0,Y.useState)(``),[m,h]=(0,Y.useState)(d),[g,v]=(0,Y.useState)(()=>_e(c,d)),[y,b]=(0,Y.useState)(`link`),[S,C]=(0,Y.useState)(!1),[w,T]=(0,Y.useState)(),[E,D]=(0,Y.useState)(),A=l({mutationFn:()=>L.invites.create({email:f.trim().toLowerCase(),role:m,expiresInHours:g,...y===`email`?{delivery:y}:{},...E&&Ye(m)?{sites:Je(E,m)}:{}}),onSuccess:async e=>{T(e),await a.invalidateQueries({queryKey:[`invites`]})}});(0,Y.useEffect)(()=>{if(e){let e=n&&u.includes(n.role)?n.role:d;p(n?.email??``),h(e),v(_e(c,e)),b(`link`),D(void 0),C(!1),A.reset()}else T(void 0)},[e]);let j=ve(c,m),te=e=>{h(e),ve(c,e).includes(g)||v(_e(c,e))},ne=S&&!Ce(f)?f.trim()?r(`invites.errors.emailInvalid`):r(`invites.errors.emailRequired`):void 0,M=()=>{C(!0),!A.isPending&&Ce(f)&&u.includes(m)&&(Ye(m)&&J(E)||A.mutate())},N=it(A.error),P=r(`roles.names.${m}`),F=c.delivery.includes(`email`);return(0,X.jsx)(V.Root,{open:e,onOpenChange:t,dismissDisabled:A.isPending,children:(0,X.jsxs)(V.Content,{size:`base`,closeLabel:r(`common.close`),children:[(0,X.jsx)(V.Title,{children:w?w.url?r(`invites.reveal.title`):r(`invites.reveal.sentTitle`):r(n?`invites.create.reinviteTitle`:`invites.create.title`)}),(0,X.jsx)(V.Description,{children:w?r(`invites.reveal.description`,{email:w.invite.email,role:r(`roles.names.${w.invite.role}`)}):r(`invites.create.description`)}),(0,X.jsx)(V.Body,{children:w?(0,X.jsx)(ot,{created:w}):(0,X.jsxs)(`div`,{className:`grid gap-5`,"data-testid":`invite-step-details`,children:[(0,X.jsx)(_,{variant:`secondary`,size:`sm`,children:r(`invites.create.step`)}),A.error&&(0,X.jsx)(k,{variant:`error`,size:`sm`,icon:(0,X.jsx)(O,{weight:`fill`}),title:r(`invites.create.failed`),description:N?r(`invites.errors.${N}`,{email:f.trim(),role:P}):G(r,A.error)}),(0,X.jsx)(ae,{className:`w-full`,label:r(`invites.create.email`),description:r(`invites.create.emailHint`),placeholder:r(`invites.create.emailPlaceholder`),type:`email`,inputMode:`email`,autoComplete:`off`,value:f,onValueChange:p,error:ne,autoFocus:!0,maxLength:254,onKeyDown:e=>{e.key===`Enter`&&(e.preventDefault(),M())}}),(0,X.jsx)(`div`,{className:`@container`,children:(0,X.jsxs)(`div`,{className:`grid items-start gap-5 @md:grid-cols-2`,children:[(0,X.jsx)(z,{className:`w-full`,label:r(`invites.create.role`),description:r(`invites.create.roleHint`),value:m,onValueChange:e=>te(e),items:Object.fromEntries(u.map(e=>[e,r(`roles.names.${e}`)]))}),(0,X.jsx)(z,{className:`w-full`,label:r(`invites.create.expiry`),description:m===`administrator`?r(`invites.create.expiryAdmin`,{max:K(xe(c,m)*60,i,`long`)}):r(`invites.create.expiryHint`),value:String(g),onValueChange:e=>v(Number(e)),items:Object.fromEntries(j.map(e=>[String(e),K(e*60,i,`long`)]))})]})}),(0,X.jsx)(Xe,{role:m,value:E,onChange:D,error:S&&J(E)?r(`siteAccess.required`):void 0}),(0,X.jsxs)(`div`,{className:`grid min-w-0 gap-2`,"data-testid":`role-explainer`,children:[(0,X.jsx)(_,{size:`sm`,bold:!0,as:`span`,children:r(`invites.create.explainer`)}),(0,X.jsx)(`div`,{className:`-mx-1 min-w-0 overflow-x-auto`,children:(0,X.jsx)(Le,{roles:u,selected:m})})]}),F&&(0,X.jsxs)(le.Group,{appearance:`card`,value:y,onValueChange:e=>b(e),children:[(0,X.jsx)(le.Legend,{children:r(`invites.create.delivery`)}),(0,X.jsx)(le.Item,{value:`link`,label:(0,X.jsxs)(`span`,{className:`flex items-center gap-2`,children:[(0,X.jsx)(ee,{size:16,className:`text-kumo-subtle`}),r(`invites.create.deliveryLink`)]}),description:r(`invites.create.deliveryLinkHint`)}),(0,X.jsx)(le.Item,{value:`email`,label:(0,X.jsxs)(`span`,{className:`flex items-center gap-2`,children:[(0,X.jsx)(x,{size:16,className:`text-kumo-subtle`}),r(`invites.create.deliveryEmail`)]}),description:r(`invites.create.deliveryEmailHint`)})]})]})}),(0,X.jsx)(V.Actions,{dismissLabel:r(w?`common.close`:`common.cancel`),children:w?(0,X.jsx)(V.Actions.Primary,{onClick:()=>t(!1),children:w.url?r(`invites.reveal.done`):r(`common.close`)}):(0,X.jsx)(V.Actions.Primary,{onClick:M,loading:A.isPending,children:r(y===`email`?`invites.create.send`:`invites.create.submit`)})})]})})}function ot({created:e}){let{t,locale:n}=U(),r=e.invite.expiresAt;return(0,X.jsxs)(`div`,{className:`grid gap-5`,"data-testid":`invite-reveal`,children:[e.url?(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(k,{variant:`alert`,icon:(0,X.jsx)(D,{weight:`fill`}),title:t(`invites.reveal.warningTitle`),description:t(`invites.reveal.warning`,{role:t(`roles.names.${e.invite.role}`)})}),(0,X.jsxs)(`div`,{className:`grid min-w-0 gap-1.5`,children:[(0,X.jsx)(_,{size:`sm`,bold:!0,as:`span`,children:t(`invites.reveal.link`)}),(0,X.jsx)(F,{size:`lg`,text:e.url,tooltip:{text:t(`common.copy`),copiedText:t(`common.copied`)}})]})]}):(0,X.jsx)(k,{variant:`default`,icon:(0,X.jsx)(v,{weight:`fill`}),title:t(`invites.reveal.sent`,{email:e.invite.email}),description:t(`invites.reveal.sentDescription`)}),(0,X.jsxs)(H,{label:t(`invites.reveal.summary`),children:[(0,X.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,X.jsx)(q,{value:e.invite.role}),(0,X.jsx)(_,{as:`span`,truncate:!0,children:e.invite.email})]}),r&&(0,X.jsxs)(`div`,{className:`flex items-start gap-2`,children:[(0,X.jsx)(`span`,{className:`flex h-lh items-center text-kumo-subtle`,children:(0,X.jsx)(y,{size:16})}),(0,X.jsx)(_,{variant:`secondary`,size:`sm`,children:t(`invites.reveal.expires`,{relative:he(r,n),absolute:we(r,n)})})]}),(0,X.jsxs)(`div`,{className:`flex items-start gap-2`,children:[(0,X.jsx)(`span`,{className:`flex h-lh items-center text-kumo-subtle`,children:(0,X.jsx)(T,{size:16})}),(0,X.jsx)(_,{variant:`secondary`,size:`sm`,children:t(`invites.reveal.private`)})]})]})]})}function st(e){let t=(0,Y.useRef)(e);return e!==void 0&&(t.current=e),e??t.current}function Z({member:e,you:t=!1,size:n=`base`}){let r=W();return(0,X.jsxs)(`div`,{className:`flex min-w-0 items-center gap-3`,children:[(0,X.jsx)(Me,{initials:Pe(e.name,e.email),size:n}),(0,X.jsxs)(`div`,{className:`grid min-w-0 gap-0.5`,children:[(0,X.jsxs)(`span`,{className:`flex min-w-0 items-center gap-2`,children:[(0,X.jsx)(_,{bold:!0,as:`span`,truncate:!0,children:e.name||e.email||`—`}),t&&(0,X.jsx)(i,{variant:`outline`,children:r(`members.you`)})]}),e.email&&(0,X.jsx)(_,{variant:`secondary`,size:`sm`,as:`span`,truncate:!0,children:e.email})]})]})}function ct(){let e=W();return t=>{if(I(t)!==`rank`)return;let n=ce(t,`problem`);return e(n?`members.rank.${n}`:`members.rank.not_allowed`)}}function lt({change:e}){let t=W(),n=e.mode.from!==e.mode.to;return(0,X.jsxs)(`div`,{className:`grid gap-2 py-3 first:pt-0 last:pb-0`,"data-narrowed-key":e.keyId,children:[(0,X.jsxs)(`span`,{className:`flex items-center gap-2`,children:[(0,X.jsx)(S,{size:16,className:`shrink-0 text-kumo-subtle`}),(0,X.jsx)(_,{bold:!0,as:`span`,children:e.name??t(`agents.unnamed`)})]}),n&&(0,X.jsxs)(`span`,{className:`flex flex-wrap items-center gap-1.5`,children:[(0,X.jsx)(_,{variant:`secondary`,size:`sm`,as:`span`,children:t(`members.role.narrowedMode`)}),(0,X.jsx)(C,{mode:e.mode.from,subtle:!0}),(0,X.jsx)(p,{size:12}),(0,X.jsx)(C,{mode:e.mode.to})]}),(0,X.jsxs)(`div`,{className:`flex flex-wrap items-center gap-1`,children:[(0,X.jsx)(_,{variant:`secondary`,size:`sm`,as:`span`,children:t(`members.role.narrowedScopes`)}),pe(e.scopes.to).map(e=>(0,X.jsx)(Ge,{scope:e},e))]}),e.elevationEnded&&(0,X.jsx)(_,{variant:`secondary`,size:`sm`,children:t(`members.role.elevationEnded`)})]})}function ut({member:e,onOpenChange:t}){let n=W(),r=s(),i=P(),a=N(),o=ct(),c=st(e),[u,d]=(0,Y.useState)(e?.role??`contributor`),[f,m]=(0,Y.useState)(),h=l({mutationFn:({userId:e,to:t})=>L.members.setRole(e,t),onSuccess:async e=>{await Promise.all([r.invalidateQueries({queryKey:M}),r.invalidateQueries({queryKey:[`agent-keys`]})]);let a=e.member.name,o=n(`roles.names.${e.member.role}`);e.keysNarrowed.length>0?m(e.keysNarrowed):t(!1),i.success(n(`members.role.changed`),n(`members.role.changedDescription`,{name:a,to:o}))}});(0,Y.useEffect)(()=>{e&&(d(e.role),m(void 0),h.reset())},[e?.userId]);let v=c?.role??`contributor`,y=Se(u)<Se(v),b=u===v,x=h.error?o(h.error)??G(n,h.error):``;return(0,X.jsx)(V.Root,{open:e!==void 0,onOpenChange:t,dismissDisabled:h.isPending,children:(0,X.jsxs)(V.Content,{size:`base`,closeLabel:n(`common.close`),children:[(0,X.jsx)(V.Title,{children:f?n(`members.role.narrowedTitle`):n(`members.role.title`,{name:c?.name??``})}),(0,X.jsx)(V.Description,{children:f?n(`members.role.narrowedDescription`,{count:f.length}):n(`members.role.description`)}),(0,X.jsx)(V.Body,{children:f?(0,X.jsxs)(`div`,{className:`grid gap-4`,"data-testid":`keys-narrowed`,children:[(0,X.jsx)(k,{variant:`default`,icon:(0,X.jsx)(g,{weight:`fill`}),title:n(`members.role.narrowedBanner`,{count:f.length}),description:n(`members.role.narrowedBannerDescription`)}),(0,X.jsx)(H,{label:n(`members.role.narrowedTitle`),children:(0,X.jsx)(`div`,{className:`divide-y divide-kumo-hairline`,children:f.map(e=>(0,X.jsx)(lt,{change:e},e.keyId))})})]}):(0,X.jsxs)(`div`,{className:`grid gap-5`,children:[c&&(0,X.jsxs)(H,{layout:`row`,label:n(`members.role.member`),children:[(0,X.jsx)(Z,{member:c}),(0,X.jsx)(q,{value:c.role})]}),h.error&&(0,X.jsx)(k,{variant:`error`,size:`sm`,icon:(0,X.jsx)(O,{weight:`fill`}),title:n(`members.role.failed`),description:x}),(0,X.jsx)(z,{className:`w-full`,label:n(`members.role.newRole`),value:u,onValueChange:e=>d(e),items:Object.fromEntries(be(a).map(e=>[e,n(`roles.names.${e}`)])),description:n(`roles.summaries.${u}`)}),!b&&(0,X.jsxs)(H,{layout:`row`,label:n(`members.role.change`),children:[(0,X.jsxs)(`span`,{className:`flex flex-wrap items-center gap-2`,children:[(0,X.jsx)(_,{variant:`secondary`,size:`sm`,as:`span`,children:n(`members.role.now`)}),(0,X.jsx)(q,{value:v,tooltip:!1}),(0,X.jsx)(p,{size:14}),(0,X.jsx)(q,{value:u,tooltip:!1})]}),(0,X.jsx)(_,{variant:`secondary`,size:`sm`,as:`span`,children:n(`members.role.immediate`)})]}),y&&(0,X.jsx)(k,{variant:`alert`,size:`sm`,icon:(0,X.jsx)(S,{weight:`fill`}),title:n(`members.role.demotionTitle`),description:n(`members.role.demotion`,{role:n(`roles.names.${u}`)})})]})}),(0,X.jsx)(V.Actions,{dismissLabel:n(f?`common.close`:`common.cancel`),children:f?(0,X.jsx)(V.Actions.Primary,{onClick:()=>t(!1),children:n(`members.role.done`)}):(0,X.jsx)(V.Actions.Primary,{onClick:()=>c&&h.mutate({userId:c.userId,to:u}),loading:h.isPending,disabled:b,children:n(`members.role.submit`)})})]})})}function Q({icon:e,children:t}){return(0,X.jsxs)(`div`,{className:`flex items-start gap-2`,children:[(0,X.jsx)(`span`,{className:`flex h-lh items-center text-kumo-subtle`,children:e}),(0,X.jsx)(_,{size:`sm`,children:t})]})}function dt({member:e,keyCount:t,inviteCount:n,onOpenChange:r}){let i=W(),a=s(),o=P(),c=ct(),u=st(e),d=l({mutationFn:e=>L.members.remove(e),onSuccess:async e=>{r(!1),o.success(i(`members.remove.done`,{name:u?.name??``}),i(`members.remove.doneDescription`,{keys:e.keysDisabled,invites:e.invitesCanceled,requests:e.requestsDenied})),await Promise.all([a.invalidateQueries({queryKey:M}),a.invalidateQueries({queryKey:[`invites`]}),a.invalidateQueries({queryKey:[`agent-keys`]}),a.invalidateQueries({queryKey:[`approvals`]})])}});return(0,Y.useEffect)(()=>{e&&d.reset()},[e?.userId]),(0,X.jsx)(V.Alert,{open:e!==void 0,onOpenChange:r,dismissDisabled:d.isPending,children:(0,X.jsxs)(V.Content,{size:`sm`,closeLabel:i(`common.close`),children:[(0,X.jsx)(V.Title,{children:i(`members.remove.title`,{name:u?.name??``})}),(0,X.jsx)(V.Description,{children:i(`members.remove.description`)}),(0,X.jsx)(V.Body,{children:(0,X.jsxs)(`div`,{className:`grid gap-4`,"data-testid":`remove-member`,children:[u&&(0,X.jsxs)(H,{layout:`row`,label:i(`members.role.member`),children:[(0,X.jsx)(Z,{member:u,size:`sm`}),(0,X.jsx)(q,{value:u.role,tooltip:!1})]}),(0,X.jsxs)(`div`,{className:`grid gap-2`,children:[(0,X.jsx)(Q,{icon:(0,X.jsx)(m,{icon:Ne,size:16}),children:i(`members.remove.signOut`)}),(0,X.jsx)(Q,{icon:(0,X.jsx)(S,{size:16}),children:t===void 0?i(`members.remove.keys`):i(`members.remove.keysCount`,{count:t})}),(0,X.jsx)(Q,{icon:(0,X.jsx)(A,{size:16}),children:n===void 0?i(`members.remove.invites`):i(`members.remove.invitesCount`,{count:n})}),(0,X.jsx)(Q,{icon:(0,X.jsx)(y,{size:16}),children:i(`members.remove.requests`)}),(0,X.jsx)(Q,{icon:(0,X.jsx)(g,{size:16}),children:i(`members.remove.kept`)})]}),d.error&&(0,X.jsx)(k,{variant:`error`,size:`sm`,icon:(0,X.jsx)(O,{weight:`fill`}),title:i(`members.remove.failed`),description:c(d.error)??G(i,d.error)})]})}),(0,X.jsx)(V.Actions,{dismissLabel:i(`common.cancel`),children:(0,X.jsx)(V.Actions.Primary,{variant:`destructive`,loading:d.isPending,onClick:()=>u&&d.mutate(u.userId),children:i(`members.remove.submit`)})})]})})}function ft({member:e,onOpenChange:t}){let{t:n,locale:r}=U(),i=ct(),a=st(e),[o,s]=(0,Y.useState)(),c=l({mutationFn:e=>L.members.passwordReset(e),onSuccess:e=>s(e)});return(0,Y.useEffect)(()=>{e?(s(void 0),c.reset()):s(void 0)},[e?.userId]),(0,X.jsx)(V.Root,{open:e!==void 0,onOpenChange:t,dismissDisabled:c.isPending,children:(0,X.jsxs)(V.Content,{size:`base`,closeLabel:n(`common.close`),children:[(0,X.jsx)(V.Title,{children:n(o?`members.reset.revealTitle`:`members.reset.title`)}),(0,X.jsx)(V.Description,{children:n(o?`members.reset.revealDescription`:`members.reset.description`,{name:a?.name??``})}),(0,X.jsx)(V.Body,{children:o?(0,X.jsxs)(`div`,{className:`grid gap-5`,"data-testid":`reset-reveal`,children:[(0,X.jsx)(k,{variant:`alert`,icon:(0,X.jsx)(D,{weight:`fill`}),title:n(`members.reset.warningTitle`),description:n(`members.reset.warning`)}),(0,X.jsxs)(`div`,{className:`grid min-w-0 gap-1.5`,children:[(0,X.jsx)(_,{size:`sm`,bold:!0,as:`span`,children:n(`members.reset.link`)}),(0,X.jsx)(F,{size:`lg`,text:o.url,tooltip:{text:n(`common.copy`),copiedText:n(`common.copied`)}})]}),(0,X.jsx)(H,{children:(0,X.jsxs)(`div`,{className:`flex items-start gap-2`,children:[(0,X.jsx)(`span`,{className:`flex h-lh items-center text-kumo-subtle`,children:(0,X.jsx)(y,{size:16})}),(0,X.jsx)(_,{variant:`secondary`,size:`sm`,children:n(`members.reset.expires`,{relative:he(o.expiresAt,r),absolute:we(o.expiresAt,r)})})]})})]}):(0,X.jsxs)(`div`,{className:`grid gap-4`,children:[a&&(0,X.jsxs)(H,{layout:`row`,label:n(`members.role.member`),children:[(0,X.jsx)(Z,{member:a,size:`sm`}),(0,X.jsx)(q,{value:a.role,tooltip:!1})]}),(0,X.jsxs)(`div`,{className:`grid gap-2`,children:[(0,X.jsx)(Q,{icon:(0,X.jsx)(y,{size:16}),children:n(`members.reset.once`)}),(0,X.jsx)(Q,{icon:(0,X.jsx)(m,{icon:Ne,size:16}),children:n(`members.reset.signsOut`)}),(0,X.jsx)(Q,{icon:(0,X.jsx)(T,{size:16}),children:n(`members.reset.replaces`)})]}),c.error&&(0,X.jsx)(k,{variant:`error`,size:`sm`,icon:(0,X.jsx)(O,{weight:`fill`}),title:n(`members.reset.failed`),description:i(c.error)??G(n,c.error)})]})}),(0,X.jsx)(V.Actions,{dismissLabel:n(o?`common.close`:`common.cancel`),children:o?(0,X.jsx)(V.Actions.Primary,{onClick:()=>t(!1),children:n(`members.reset.done`)}):(0,X.jsx)(V.Actions.Primary,{loading:c.isPending,onClick:()=>a&&c.mutate(a.userId),children:n(`members.reset.submit`)})})]})})}function pt({member:e,onOpenChange:t}){let n=W(),r=s(),i=P(),a=ct(),o=st(e),[c,u]=(0,Y.useState)(``),[d,f]=(0,Y.useState)(!1),m=l({mutationFn:({userId:e,pw:t})=>L.members.transferOwnership(e,t),onSuccess:async()=>{t(!1),i.success(n(`members.transfer.done`),n(`members.transfer.doneDescription`,{name:o?.name??``})),await Promise.all([r.invalidateQueries({queryKey:M}),r.invalidateQueries({queryKey:[`me`]}),r.invalidateQueries({queryKey:[`agent-keys`]})])}});(0,Y.useEffect)(()=>{e?(u(``),f(!1),m.reset()):u(``)},[e?.userId]);let h=I(m.error),g=h===`wrong_password`?n(`members.transfer.wrongPassword`):d&&!c?n(`members.transfer.passwordRequired`):void 0,_=()=>{f(!0),o&&c&&!m.isPending&&m.mutate({userId:o.userId,pw:c})},v=m.error&&h!==`wrong_password`?h===`not_administrator`?n(`members.transfer.notAdministrator`):a(m.error)??G(n,m.error):void 0;return(0,X.jsx)(V.Alert,{open:e!==void 0,onOpenChange:t,dismissDisabled:m.isPending,children:(0,X.jsxs)(V.Content,{size:`base`,closeLabel:n(`common.close`),children:[(0,X.jsx)(V.Title,{children:n(`members.transfer.title`,{name:o?.name??``})}),(0,X.jsx)(V.Description,{children:n(`members.transfer.description`)}),(0,X.jsx)(V.Body,{children:(0,X.jsxs)(`div`,{className:`grid gap-5`,"data-testid":`transfer-ownership`,children:[(0,X.jsx)(k,{variant:`alert`,icon:(0,X.jsx)(Re,{weight:`fill`}),title:n(`members.transfer.warningTitle`),description:n(`members.transfer.warning`,{name:o?.name??``})}),o&&(0,X.jsxs)(H,{layout:`row`,label:n(`members.transfer.to`),children:[(0,X.jsx)(Z,{member:o,size:`sm`}),(0,X.jsxs)(`span`,{className:`flex items-center gap-1.5`,children:[(0,X.jsx)(q,{value:o.role,tooltip:!1}),(0,X.jsx)(p,{size:12}),(0,X.jsx)(q,{value:`owner`,tooltip:!1})]})]}),(0,X.jsxs)(`div`,{className:`grid gap-2`,children:[(0,X.jsx)(Q,{icon:(0,X.jsx)(Re,{size:16}),children:n(`members.transfer.youBecome`)}),(0,X.jsx)(Q,{icon:(0,X.jsx)(S,{size:16}),children:n(`members.transfer.keys`)}),(0,X.jsx)(Q,{icon:(0,X.jsx)(T,{size:16}),children:n(`members.transfer.onlyThey`)})]}),v&&(0,X.jsx)(k,{variant:`error`,size:`sm`,icon:(0,X.jsx)(O,{weight:`fill`}),title:n(`members.transfer.failed`),description:v}),(0,X.jsx)(Ve,{label:n(`members.transfer.password`),description:n(`members.transfer.passwordHint`),value:c,onValueChange:u,error:g,autoComplete:`current-password`,onEnter:_})]})}),(0,X.jsx)(V.Actions,{dismissLabel:n(`common.cancel`),children:(0,X.jsx)(V.Actions.Primary,{variant:`destructive`,loading:m.isPending,onClick:_,children:n(`members.transfer.submit`)})})]})})}function mt({member:e,onOpenChange:t}){let n=W(),r=s(),i=P(),a=(0,Y.useRef)(e);e&&(a.current=e);let o=e??a.current,[c,u]=(0,Y.useState)(o?.sites),[d,f]=(0,Y.useState)(!1),p=l({mutationFn:({userId:e,next:t})=>L.members.setSites(e,t),onSuccess:async e=>{await r.invalidateQueries({queryKey:M}),t(!1),i.success(n(`siteAccess.saved`),n(`siteAccess.savedDescription`,{name:e.member.name}))}});return(0,Y.useEffect)(()=>{e&&(u(e.sites),f(!1),p.reset())},[e?.userId]),(0,X.jsx)(V.Root,{open:e!==void 0,onOpenChange:t,dismissDisabled:p.isPending,children:(0,X.jsxs)(V.Content,{size:`base`,closeLabel:n(`common.close`),children:[(0,X.jsx)(V.Title,{children:n(`siteAccess.title`,{name:o?.name??``})}),(0,X.jsx)(V.Description,{children:n(`siteAccess.description`)}),(0,X.jsx)(V.Body,{children:(0,X.jsxs)(`div`,{className:`grid gap-5`,children:[o&&(0,X.jsxs)(H,{layout:`row`,label:n(`members.role.member`),children:[(0,X.jsx)(Z,{member:o}),(0,X.jsx)(q,{value:o.role})]}),p.error&&(0,X.jsx)(k,{variant:`error`,size:`sm`,icon:(0,X.jsx)(O,{weight:`fill`}),title:n(`siteAccess.failed`),description:G(n,p.error)}),o&&(0,X.jsx)(Xe,{role:o.role,value:c,onChange:u,error:d&&J(c)?n(`siteAccess.required`):void 0})]})}),(0,X.jsx)(V.Actions,{dismissLabel:n(`common.cancel`),children:(0,X.jsx)(V.Actions.Primary,{onClick:()=>{f(!0),o&&!J(c)&&p.mutate({userId:o.userId,next:Je(c??{},o.role)})},loading:p.isPending,children:n(`siteAccess.submit`)})})]})})}var ht=(e,t,n)=>n(e.name).includes(t)||n(e.email??``).includes(t)||e.role.includes(t);function $({icon:e,reason:t,onClick:n,variant:r,children:i}){return t?(0,X.jsx)(a,{content:t,side:`left`,render:(0,X.jsx)(`div`,{}),children:(0,X.jsx)(R.Item,{icon:e,disabled:!0,variant:r,children:i})}):(0,X.jsx)(R.Item,{icon:e,onClick:n,variant:r,children:i})}function gt({member:e,problem:t,isOwner:n,onRole:r,onSites:i,onReset:a,onTransfer:s,onRemove:c}){let l=W(),u=j(`members.manage`),d=t?u.reason??l(`members.rank.${t}`):void 0,f=l(`members.menu`,{name:e.name});if(t===`not_allowed`)return(0,X.jsx)(o,{variant:`ghost`,size:`xs`,shape:`square`,icon:(0,X.jsx)(b,{weight:`bold`}),"aria-label":f,disabled:!0,title:d});let p=e.role===`administrator`?d:l(`members.transfer.needsAdministrator`);return(0,X.jsxs)(R,{children:[(0,X.jsx)(R.Trigger,{render:(0,X.jsx)(o,{variant:`ghost`,size:`xs`,shape:`square`,icon:(0,X.jsx)(b,{weight:`bold`}),"aria-label":f})}),(0,X.jsxs)(R.Content,{align:`end`,children:[(0,X.jsx)($,{icon:nt,reason:d,onClick:r,children:l(`members.changeRole`)}),i&&(0,X.jsx)($,{icon:Ae,reason:d,onClick:i,children:l(`siteAccess.menu`)}),(0,X.jsx)($,{icon:et,reason:d,onClick:a,children:l(`members.resetLink`)}),n&&(0,X.jsx)($,{icon:Re,reason:p,onClick:s,children:l(`members.transferOwnership`)}),(0,X.jsx)(R.Separator,{}),(0,X.jsx)($,{icon:E,reason:d,onClick:c,variant:`danger`,children:l(`members.remove.menu`)})]})]})}function _t({invite:e,now:t}){let{t:n,locale:r}=U();return ye(e,t)?(0,X.jsx)(`span`,{"data-expired":!0,className:`inline-flex`,children:(0,X.jsx)(i,{variant:`warning`,appearance:`dot`,children:n(`members.invites.expired`)})}):(0,X.jsx)(_,{variant:`secondary`,size:`sm`,as:`span`,children:he(e.expiresAt,r,t)})}function vt({invite:e,reason:t,onReinvite:n,onRevoke:r}){let i=W();return(0,X.jsxs)(R,{children:[(0,X.jsx)(R.Trigger,{render:(0,X.jsx)(o,{variant:`ghost`,size:`xs`,shape:`square`,icon:(0,X.jsx)(b,{weight:`bold`}),"aria-label":i(`members.invites.menu`,{email:e.email})})}),(0,X.jsxs)(R.Content,{align:`end`,children:[(0,X.jsx)($,{icon:f,reason:t,onClick:n,children:i(`members.invites.reinvite`)}),e.status===`pending`&&(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(R.Separator,{}),(0,X.jsx)($,{icon:De,reason:t,onClick:r,variant:`danger`,children:i(`members.invites.revoke`)})]})]})]})}function yt({onReinvite:e,onInvite:t}){let{t:n,locale:r}=U(),u=s(),d=P(),f=Ie(),p=ie().data,m=c({queryKey:[`invites`],queryFn:L.invites.list,retry:(e,t)=>!oe(t)&&e<1}),[h,g]=(0,Y.useState)(),v=l({mutationFn:e=>L.invites.revoke(e.id),onSuccess:async(e,t)=>{g(void 0),d.success(n(`members.invites.revoked`),n(`members.invites.revokedDescription`,{email:t.email})),await u.invalidateQueries({queryKey:[`invites`]})}}),y=m.data??[],b=e=>p?.invitableRoles?.includes(e.role)!==!1;return(0,X.jsxs)(fe,{id:`invites`,title:n(`members.invites.title`),icon:(0,X.jsx)(x,{size:16}),description:n(`members.invites.description`),actions:y.length>0?(0,X.jsx)(i,{variant:`secondary`,children:y.length}):void 0,flush:!0,children:[m.error?(0,X.jsx)(`div`,{className:`px-5 py-4`,children:(0,X.jsx)(je,{error:m.error,onRetry:()=>m.refetch()})}):!m.isPending&&y.length===0?(0,X.jsx)(Ee,{icon:(0,X.jsx)(x,{size:32,className:`text-kumo-inactive`}),title:n(`members.invites.empty`),description:n(`members.invites.emptyDescription`),contents:(0,X.jsx)(o,{variant:`secondary`,icon:(0,X.jsx)(ke,{}),onClick:t,children:n(`members.invite`)})}):(0,X.jsx)(`div`,{className:`overflow-x-auto`,children:(0,X.jsxs)(B,{children:[(0,X.jsx)(B.Header,{children:(0,X.jsxs)(B.Row,{children:[(0,X.jsx)(B.Head,{children:n(`members.invites.columns.email`)}),(0,X.jsx)(B.Head,{children:n(`members.invites.columns.role`)}),(0,X.jsx)(B.Head,{children:n(`members.invites.columns.expires`)}),(0,X.jsx)(B.Head,{children:n(`members.invites.columns.inviter`)}),(0,X.jsx)(B.Head,{sticky:`right`,children:(0,X.jsx)(`span`,{className:`sr-only`,children:n(`members.invites.columns.actions`)})})]})}),m.isPending?(0,X.jsx)(He,{columns:5,rows:2}):(0,X.jsx)(B.Body,{children:y.map(t=>{let o=t.status===`accepted`&&!t.acceptedUserId,s=b(t),c=s?void 0:n(`members.rank.role_too_high`);return(0,X.jsxs)(B.Row,{"data-invite-id":t.id,children:[(0,X.jsx)(B.Cell,{children:(0,X.jsxs)(`div`,{className:`grid min-w-48 gap-0.5`,children:[(0,X.jsx)(_,{bold:!0,as:`span`,truncate:!0,children:t.email}),(0,X.jsxs)(`span`,{className:`flex flex-wrap items-center gap-1.5`,children:[t.delivery===`email`?(0,X.jsx)(_,{variant:`secondary`,size:`sm`,as:`span`,children:n(`members.invites.byEmail`)}):(0,X.jsx)(_,{variant:`secondary`,size:`sm`,as:`span`,children:n(`members.invites.byLink`)}),o&&(0,X.jsx)(a,{content:n(`members.invites.incompleteHint`),children:(0,X.jsx)(i,{variant:`warning`,icon:(0,X.jsx)(D,{}),children:n(`members.invites.incomplete`)})})]})]})}),(0,X.jsx)(B.Cell,{className:`whitespace-nowrap`,children:(0,X.jsx)(q,{value:t.role})}),(0,X.jsx)(B.Cell,{className:`whitespace-nowrap`,children:(0,X.jsxs)(`div`,{className:`grid gap-0.5`,children:[(0,X.jsx)(_t,{invite:t,now:f}),(0,X.jsx)(_,{variant:`secondary`,size:`xs`,as:`span`,children:we(t.expiresAt,r)})]})}),(0,X.jsx)(B.Cell,{className:`whitespace-nowrap`,children:(0,X.jsxs)(`div`,{className:`grid gap-0.5`,children:[(0,X.jsx)(_,{as:`span`,children:t.inviter.userId===p?.userId?n(`members.invites.you`):t.inviter.name??n(`members.invites.someone`)}),(0,X.jsx)(Fe,{iso:t.createdAt,size:`xs`})]})}),(0,X.jsx)(B.Cell,{sticky:`right`,className:`w-12 text-end`,children:(0,X.jsx)(vt,{invite:t,reason:s?void 0:c,onReinvite:()=>e({email:t.email,role:t.role}),onRevoke:()=>g(t)})})]},t.id)})})]})}),(0,X.jsx)(Be,{open:h!==void 0,onOpenChange:e=>{e||(g(void 0),v.reset())},title:n(`members.invites.revokeTitle`),description:n(`members.invites.revokeDescription`,{email:h?.email??``}),confirmLabel:n(`members.invites.revoke`),busy:v.isPending,error:v.error,onConfirm:()=>h&&v.mutate(h)})]})}function bt(){let{t:e,locale:t}=U(),n=re(),r=[{icon:(0,X.jsx)(ee,{size:16}),text:e(`members.how.single`)},{icon:(0,X.jsx)(x,{size:16}),text:e(`members.how.bound`)},{icon:(0,X.jsx)(S,{size:16}),text:e(`members.how.expiry`,{default:K(n.defaultHours*60,t,`long`),admin:K(xe(n,`administrator`)*60,t,`long`)})},{icon:(0,X.jsx)(w,{size:16}),text:e(`members.how.keys`)},{icon:(0,X.jsx)(Re,{size:16}),text:e(`members.how.owner`)}];return(0,X.jsx)(fe,{title:e(`members.how.title`),icon:(0,X.jsx)(g,{size:16}),children:(0,X.jsx)(`div`,{className:`grid gap-3`,children:r.map(e=>(0,X.jsxs)(`div`,{className:`flex items-start gap-2`,children:[(0,X.jsx)(`span`,{className:`flex h-lh items-center text-kumo-subtle`,children:e.icon}),(0,X.jsx)(_,{variant:`secondary`,size:`sm`,children:e.text})]},e.text))})})}function xt({member:e,you:t,problem:n,isOwner:r,multiSite:a,on:o}){let s=W(),c=e.sites?Object.keys(e.sites).length:0,l=(0,X.jsxs)(`span`,{className:`inline-flex flex-wrap items-center gap-1.5`,children:[(0,X.jsx)(q,{value:e.role}),c>0&&(0,X.jsx)(`span`,{"data-site-limited":!0,children:(0,X.jsx)(i,{variant:`secondary`,children:s(`siteAccess.count`,{count:c})})})]});return(0,X.jsxs)(B.Row,{"data-member-id":e.userId,"data-role":e.role,children:[(0,X.jsx)(B.Cell,{children:(0,X.jsxs)(`div`,{className:`grid min-w-0 gap-1.5 sm:min-w-56`,children:[(0,X.jsx)(Z,{member:e,you:t}),(0,X.jsx)(`span`,{className:`ps-11 sm:hidden`,children:l})]})}),(0,X.jsx)(B.Cell,{className:`hidden whitespace-nowrap sm:table-cell`,children:l}),(0,X.jsx)(B.Cell,{className:`hidden whitespace-nowrap sm:table-cell`,children:(0,X.jsx)(Fe,{iso:e.joinedAt})}),(0,X.jsx)(B.Cell,{sticky:`right`,className:`w-12 text-end`,children:(0,X.jsx)(gt,{member:e,problem:n,isOwner:r,onRole:()=>o.setToRole(e),onSites:a&&Ye(e.role)?()=>o.setToSites(e):void 0,onReset:()=>o.setToReset(e),onTransfer:()=>o.setToTransfer(e),onRemove:()=>o.setToRemove(e)})})]})}function St(){let e=W(),t=u(),{view:n=`members`}=d({strict:!1}),r=ie().data,i=ne(),a=N(),s=j(`members.invite`),l=te(`members.manage`),f=j(`activity.all`),p=te(`agents.manage`)&&r?.can!==void 0,m=c({queryKey:[`agent-keys`,`all`],queryFn:L.agentKeys.listAll,enabled:p,retry:!1}),_=(0,Y.useMemo)(()=>me(i.data??[]),[i.data]),v=Ke(_,ht),[y,b]=(0,Y.useState)(!1),[x,S]=(0,Y.useState)(),[ee,C]=(0,Y.useState)(),[T,E]=(0,Y.useState)(),D=(qe().data?.length??0)>1,[O,A]=(0,Y.useState)(),[re,M]=(0,Y.useState)(),[P,ae]=(0,Y.useState)(),F=c({queryKey:[`invites`],queryFn:L.invites.list,enabled:s.allowed&&r?.can!==void 0,retry:!1}),I=oe(i.error),ce={userId:r?.userId,canManage:l},R=r?.role===`owner`,z=e=>{S(e),b(!0)};return(0,X.jsxs)(Te,{crumbs:(0,X.jsx)(ue,{trail:[{label:e(`pageHeaders.team.title`)}]}),icon:(0,X.jsx)(Oe,{size:24}),title:e(`pageHeaders.team.title`),description:e(`pageHeaders.team.description`),tabs:[{value:`members`,label:e(`members.tabs.members`)},{value:`activity`,label:e(`members.tabs.activity`)}],tab:n,onTabChange:e=>t({to:`/team`,search:e===`activity`?{view:`activity`}:{}}),actions:(0,X.jsx)(o,{variant:`primary`,icon:(0,X.jsx)(ke,{}),onClick:()=>z(),disabled:!s.allowed||I,title:s.reason,children:e(`members.invite`)}),aside:n===`members`?(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(fe,{title:e(`members.roles.title`),icon:(0,X.jsx)(w,{size:16}),description:e(`members.roles.description`),flush:!0,children:(0,X.jsx)(ze,{roles:a.names,current:r?.role??void 0})}),(0,X.jsx)(bt,{})]}):void 0,children:[I?(0,X.jsx)(k,{variant:`secondary`,icon:(0,X.jsx)(g,{weight:`fill`}),title:e(`members.notEnabledTitle`),description:e(`members.notEnabledDescription`)}):n===`activity`?f.allowed?(0,X.jsx)(We,{source:{kind:`deployment`}}):(0,X.jsx)(k,{variant:`secondary`,icon:(0,X.jsx)(g,{weight:`fill`}),title:e(`members.activity.restrictedTitle`),description:f.reason??``}):(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(je,{error:i.error,onRetry:()=>i.refetch(),retrying:i.isFetching}),(0,X.jsx)(Ue,{search:v.search,onSearch:v.setSearch,placeholder:e(`members.search`)}),i.isSuccess&&_.length===0?(0,X.jsx)(de,{icon:(0,X.jsx)(Oe,{size:48,className:`text-kumo-inactive`}),title:e(`members.empty`),description:e(`members.emptyDescription`)}):(0,X.jsx)(se,{className:`overflow-x-auto p-0`,children:(0,X.jsxs)(B,{children:[(0,X.jsx)(B.Header,{children:(0,X.jsxs)(B.Row,{children:[(0,X.jsx)(B.Head,{children:e(`members.columns.member`)}),(0,X.jsx)(B.Head,{className:`hidden sm:table-cell`,children:e(`members.columns.role`)}),(0,X.jsx)(B.Head,{className:`hidden sm:table-cell`,children:e(`members.columns.joined`)}),(0,X.jsx)(B.Head,{sticky:`right`,className:`w-12`,children:(0,X.jsx)(`span`,{className:`sr-only`,children:e(`members.columns.actions`)})})]})}),i.isPending?(0,X.jsx)(He,{columns:4,rows:3}):v.pageItems.length===0?(0,X.jsx)(B.Body,{children:(0,X.jsx)(B.Row,{children:(0,X.jsx)(B.Cell,{colSpan:4,children:(0,X.jsx)(Ee,{icon:(0,X.jsx)(Oe,{size:32,className:`text-kumo-inactive`}),title:e(`members.noMatches`,{query:v.search})})})})}):(0,X.jsx)(B.Body,{children:v.pageItems.map(e=>(0,X.jsx)(xt,{member:e,you:e.userId===r?.userId,problem:ge(ce,e),isOwner:R,multiSite:D,on:{setToRole:C,setToSites:E,setToReset:M,setToTransfer:ae,setToRemove:A}},e.userId))})]})}),v.total>v.perPage&&(0,X.jsx)(h,{page:v.page,perPage:v.perPage,totalCount:v.total,setPage:v.setPage,controls:`simple`}),s.allowed&&r&&(0,X.jsx)(yt,{onReinvite:e=>z(e),onInvite:()=>z()})]}),(0,X.jsx)(at,{open:y,onOpenChange:e=>{b(e),e||S(void 0)},draft:x}),(0,X.jsx)(ut,{member:ee,onOpenChange:e=>!e&&C(void 0)}),(0,X.jsx)(mt,{member:T,onOpenChange:e=>!e&&E(void 0)}),(0,X.jsx)(dt,{member:O,keyCount:O&&m.data?m.data.filter(e=>e.owner?.userId===O.userId&&e.enabled).length:void 0,inviteCount:O&&F.data?F.data.filter(e=>e.inviter.userId===O.userId&&e.status===`pending`).length:void 0,onOpenChange:e=>!e&&A(void 0)}),(0,X.jsx)(ft,{member:re,onOpenChange:e=>!e&&M(void 0)}),(0,X.jsx)(pt,{member:P,onOpenChange:e=>!e&&ae(void 0)})]})}export{St as MembersPage};
2
+ //# sourceMappingURL=MembersPage-C0SMkEg9.js.map
@@ -1,2 +1,2 @@
1
- import{r as e}from"./rolldown-runtime-hePW80VL.js";import{t}from"./IconBase.es-BZDpYMnj.js";import{i as n,r}from"./react-CDCuUAOg.js";import{t as i}from"./badge-dq8bx752b9dp7dst--rpq8QXS.js";import{o as a}from"./button-pa1bq9b85hawg41a-CmOCuL-1.js";import{t as o}from"./link-cqyfjezntvr53rh7-3eczR57J.js";import{_ as s}from"./tanstack-BRxyYm4G.js";import{r as c}from"./DirectionalIcon-UZJFXGY_.js";import{n as l}from"./skeleton-line-m9dyh126t9k07jvg-BFlcthbF.js";import{t as u}from"./EyeSlash.es-YoqigHIr.js";import{t as d}from"./FolderSimple.es-CbGWmBJc.js";import{n as f,t as p}from"./banner-msnmqm7of2lck01x-D6cADEpP.js";import{t as m}from"./api-CHeogUo-.js";import{t as h}from"./SectionCard-Bqvz-NiL.js";import{a as g,c as ee,r as te,u as _}from"./i18n-CCHry74V.js";import{s as v,w as y}from"./taxonomy-S-y5xbUa.js";import{B as ne,E as re,R as b,dt as ie,ft as ae,tt as oe}from"./index-B3isvl8R.js";import{n as x}from"./permalinks-CNYgOPCo.js";import{t as S}from"./errors-svQ83Q62.js";var C=e(n(),1),se=new Map([[`bold`,C.createElement(C.Fragment,null,C.createElement(`path`,{d:`M180,72H36A20,20,0,0,0,16,92V204a20,20,0,0,0,20,20H180a20,20,0,0,0,20-20V92A20,20,0,0,0,180,72Zm-4,128H40V96H176ZM240,52V176a12,12,0,0,1-24,0V56H64a12,12,0,0,1,0-24H220A20,20,0,0,1,240,52Z`}))],[`fill`,C.createElement(C.Fragment,null,C.createElement(`path`,{d:`M200,88V200a16,16,0,0,1-16,16H40a16,16,0,0,1-16-16V88A16,16,0,0,1,40,72H184A16,16,0,0,1,200,88Zm16-48H64a8,8,0,0,0,0,16H216V176a8,8,0,0,0,16,0V56A16,16,0,0,0,216,40Z`}))],[`regular`,C.createElement(C.Fragment,null,C.createElement(`path`,{d:`M184,72H40A16,16,0,0,0,24,88V200a16,16,0,0,0,16,16H184a16,16,0,0,0,16-16V88A16,16,0,0,0,184,72Zm0,128H40V88H184V200ZM232,56V176a8,8,0,0,1-16,0V56H64a8,8,0,0,1,0-16H216A16,16,0,0,1,232,56Z`}))]]),w=C.forwardRef((e,n)=>C.createElement(t,{ref:n,...e,weights:se}));w.displayName=`CardsIcon`;var ce=w,le=`0123456789ABCDEFGHJKMNPQRSTVWXYZ`;function ue(e,t=20){if(!/^[a-z]+$/.test(e))throw Error(`invalid id prefix "${e}"`);let n=new Uint8Array(t);crypto.getRandomValues(n);let r=``;for(let e of n)r+=le[e%32];return`${e}_${r}`}var de={project:`proj`,site:`site`,page:`page`,section:`sec`,contentEntry:`entry`,taxonomy:`tax`,term:`term`,redirect:`redir`,menu:`menu`,menuItem:`item`,asset:`asset`,glossary:`gloss`,upload:`upl`,snapshot:`snap`,user:`user`,agent:`agent`,system:`sys`,operation:`op`,block:`blk`,correction:`crx`,proposal:`prop`},T={maxDepth:6,perLevel:100,total:500,labelLength:100};function E(){return ue(de.menuItem)}var fe=/^item_[A-Za-z0-9]{6,32}$/,pe=/^[a-z]+_[A-Za-z0-9]{6,32}$/,me=/^[a-z0-9]+(?:-[a-z0-9]+)*$/,he=/^[a-z]{2,3}(?:-[A-Za-z0-9]{2,8})*$/,ge=/^https:\/\/[A-Za-z0-9](?:[A-Za-z0-9.-]*[A-Za-z0-9])?(?::[0-9]{1,5})?(?:[/?#][^\s\\\x00-\x1F\x7F]*)?$/,_e=/^[^\s\x00-\x1F\x7F](?:[^\x00-\x1F\x7F]*[^\s\x00-\x1F\x7F])?$/;function D(e,t){let n=(e,r,i)=>{for(let a of e)t(a,r,i),a.children&&n(a.children,r+1,a)};n(e,1)}function O(e){let t=0;return D(e,()=>t++),t}function ve(e){let t=0;return D(e,(e,n)=>{n>t&&(t=n)}),t}function ye(e){switch(e.kind){case`page`:return{kind:`page`,id:e.pageId};case`contentEntry`:return{kind:`contentEntry`,id:e.entryId};case`term`:return{kind:`term`,id:e.termId};default:return}}function k(e){let t=new Map,n=(e,r,i)=>{e.forEach((e,a)=>{t.set(e.id,{item:e,parentId:i,index:a,depth:r}),e.children&&n(e.children,r+1,e.id)})};return n(e,1),t}function be(e){if(e.length===0)return`is empty`;if(e.length>T.labelLength)return`is longer than ${T.labelLength} characters`;if(!_e.test(e))return`has control characters or surrounding whitespace`}function A(e){return e.length<=2048&&ge.test(e)}var xe=new Set([`collection`,`url`,`group`]);function Se(e,t,n,r={}){if(e.siteId!==t.id)throw new S(`invalid_menu`,`menu.siteId must match the site`);if(!Number.isInteger(e.maxDepth)||e.maxDepth<1||e.maxDepth>T.maxDepth)throw new S(`too_deep`,`maxDepth must be between 1 and ${T.maxDepth} (got ${e.maxDepth})`,{maxDepth:T.maxDepth});let i=n?k(n.items):new Map,a=new Set([t.defaultLocale,...t.locales]),o=new Set,s=0,c=(n,l)=>{if(n.length>T.perLevel)throw new S(`too_large`,`a menu level holds at most ${T.perLevel} items (got ${n.length})`,{perLevel:T.perLevel});for(let u of n){let n=`menu item ${u.id}`;if(typeof u.id!=`string`||!fe.test(u.id))throw new S(`invalid_menu`,`${n}: item ids look like item_01HZX8K3Q9`,{itemId:u.id});if(o.has(u.id))throw new S(`invalid_menu`,`${n} appears twice; item ids are unique`,{itemId:u.id});if(o.add(u.id),++s>T.total)throw new S(`too_large`,`a menu holds at most ${T.total} items in total`,{total:T.total});if(l>e.maxDepth)throw new S(`too_deep`,`${n} sits at level ${l}, deeper than this menu's maxDepth ${e.maxDepth}`,{itemId:u.id,depth:l,maxDepth:e.maxDepth});if(u.display===`mega`&&(l!==1||!u.children?.length))throw new S(`invalid_menu`,`${n}: display mega belongs to a top-level item with children (its columns)`,{itemId:u.id});let d=ye(u);if(d&&!pe.test(d.id))throw new S(`invalid_menu`,`${n}: ${d.id} is not a node id`,{itemId:u.id});if(u.kind===`collection`&&!me.test(u.collection))throw new S(`invalid_menu`,`${n}: "${u.collection}" is not a slug`,{itemId:u.id});if(u.kind===`url`&&!A(u.href))throw new S(`invalid_menu`,`${n}: external links must be https:// with an ASCII host (punycode for international names), no user-info, whitespace or backslashes, at most 2,048 characters; link pages, articles and terms by id instead of a site path`,{itemId:u.id});let f=u.labels??void 0;if(f){let e=Object.entries(f).filter(([,e])=>e!==void 0);if(e.length===0)throw new S(`invalid_label`,`${n}: omit labels rather than send an empty map`,{itemId:u.id});let t=i.get(u.id)?.item.labels;for(let[r,i]of e){if(!he.test(r))throw new S(`invalid_label`,`${n}: "${r}" is not a locale`,{itemId:u.id,locale:r});let e=be(i);if(e)throw new S(`invalid_label`,`${n}: the ${r} label ${e}`,{itemId:u.id,locale:r});if(!a.has(r)&&t?.[r]===void 0)throw new S(`invalid_label`,`${n}: ${r} is not a locale of this site (${[...a].join(`, `)})`,{itemId:u.id,locale:r})}}if(xe.has(u.kind)&&!f?.[t.defaultLocale])throw new S(`invalid_label`,`${n}: ${u.kind} items need a label in the site's default locale (${t.defaultLocale}); they have no title to fall back to`,{itemId:u.id,locale:t.defaultLocale});if(u.kind!==`url`&&`newTab`in u&&u.newTab!==void 0)throw new S(`invalid_menu`,`${n}: only external links open in a new tab`,{itemId:u.id});let p=u.children;if(!r.partial){if(p&&p.length===0)throw new S(`invalid_menu`,`${n}: omit children rather than send []`,{itemId:u.id});if(u.kind===`group`&&!p?.length)throw new S(`invalid_menu`,`${n}: a group needs at least one item`,{itemId:u.id})}p&&c(p,l+1)}};c(e.items,1)}function Ce(e){return JSON.parse(JSON.stringify(e))}function j(e){for(let t of e){t.children&&(t.children.length===0?delete t.children:j(t.children));let e=t.labels;e&&Object.keys(e).length===0&&delete t.labels}return e}function M(e,t){for(let t of[`pageId`,`entryId`,`termId`,`collection`,`href`])delete e[t];switch(e.kind=t.kind,t.kind){case`page`:e.pageId=t.ref;break;case`contentEntry`:e.entryId=t.ref;break;case`term`:e.termId=t.ref;break;case`collection`:e.collection=t.collection;break;case`url`:e.href=t.href}t.kind!==`url`&&delete e.newTab}function N(e,t){let n={id:e.id??t(),kind:e.target.kind};if(M(n,e.target),e.newTab!==void 0){if(e.target.kind!==`url`)throw new S(`invalid_menu`,`only external links open in a new tab`);n.newTab=e.newTab}return e.labels&&Object.keys(e.labels).length>0&&(n.labels={...e.labels}),e.display===`mega`&&(n.display=`mega`),e.children&&e.children.length>0&&(n.children=e.children.map(e=>N(e,t))),n}function P(e,t){for(let n=0;n<e.length;n++){let r=e[n];if(r.id===t)return{item:r,list:e,index:n};if(r.children){let e=P(r.children,t);if(e)return e}}}function F(e,t){return(e.children??[]).some(e=>e.id===t||F(e,t))}function I(e,t,n,r){if(t.length>50)throw new S(`too_large`,`at most 50 operations per call (got ${t.length})`);let i=Ce(e.items),a=(e,t)=>{if(e==null)return i;let n=P(i,e);if(!n)throw new S(`unknown_item`,`operation ${t}: no item ${e}`,{opIndex:t,itemId:e});return n.item.children??=[],n.item.children},o=(e,t,n)=>{let r=n===void 0?e.length:Math.max(0,Math.min(e.length,Math.trunc(n)));e.splice(r,0,t)};return t.forEach((t,s)=>{try{switch(t.op){case`add`:{let e=N(t.item,n);o(a(t.parent,s),e,t.index);break}case`remove`:{let e=P(i,t.itemId);if(!e)throw new S(`unknown_item`,`operation ${s}: no item ${t.itemId}`,{itemId:t.itemId});e.list.splice(e.index,1);break}case`move`:{let e=P(i,t.itemId);if(!e)throw new S(`unknown_item`,`operation ${s}: no item ${t.itemId}`,{itemId:t.itemId});if(t.parent&&(t.parent===t.itemId||F(e.item,t.parent)))throw new S(`cycle`,`operation ${s}: cannot move ${t.itemId} under itself or one of its own items`,{itemId:t.itemId});e.list.splice(e.index,1),o(a(t.parent,s),e.item,t.index);break}case`update`:{let e=P(i,t.itemId);if(!e)throw new S(`unknown_item`,`operation ${s}: no item ${t.itemId}`,{itemId:t.itemId});let n=e.item;if(t.target&&M(n,t.target),t.labels){let e={...n.labels??{}};for(let[n,r]of Object.entries(t.labels))r===null?delete e[n]:e[n]=r;Object.keys(e).length>0?n.labels=e:delete n.labels}if(t.newTab!==void 0){if(t.newTab===null)delete n.newTab;else if(n.kind!==`url`)throw new S(`invalid_menu`,`operation ${s}: only external links open in a new tab`,{itemId:t.itemId});else n.newTab=t.newTab}t.display!==void 0&&(t.display===null?delete n.display:n.display=t.display);break}default:throw new S(`invalid_menu`,`operation ${s}: unknown operation`)}r&&Se({...e,items:i},r,e,{partial:!0})}catch(e){throw e instanceof S&&e.details.opIndex===void 0?new S(e.code,e.message.startsWith(`operation `)?e.message:`operation ${s}: ${e.message}`,{...e.details,opIndex:s}):e}}),{...e,items:j(i)}}function we(e,t){let n=e.length,r=t.length,i=Array.from({length:n+1},()=>Array(r+1).fill(0));for(let a=n-1;a>=0;a--)for(let n=r-1;n>=0;n--)i[a][n]=e[a]===t[n]?i[a+1][n+1]+1:Math.max(i[a+1][n],i[a][n+1]);let a=new Set,o=0,s=0;for(;o<n&&s<r;)e[o]===t[s]?(a.add(e[o]),o++,s++):i[o+1][s]>=i[o][s+1]?o++:s++;return a}var L=e=>{switch(e.kind){case`page`:return`page:${e.pageId}`;case`contentEntry`:return`contentEntry:${e.entryId}`;case`term`:return`term:${e.termId}`;case`collection`:return`collection:${e.collection}`;case`url`:return`url:${e.href}`;case`group`:return`group`}};function Te(e,t){let n=k(e?.items??[]),r=k(t.items),i=e=>O(e.children??[]),a=[],o=[],s=[],c=[];for(let[e,t]of r)n.has(e)||(!t.parentId||n.has(t.parentId))&&a.push({id:e,...t.parentId?{parentId:t.parentId}:{},index:t.index,descendants:[...r.values()].filter(t=>Ee(r,t.item.id,e)&&!n.has(t.item.id)).length});for(let[e,t]of n)r.has(e)||(!t.parentId||r.has(t.parentId))&&o.push({id:e,...t.parentId?{parentId:t.parentId}:{},descendants:i(t.item)});let l=(e,t)=>[...e.values()].filter(e=>e.parentId===t).sort((e,t)=>e.index-t.index).map(e=>e.item.id),u=new Map,d=e=>{let t=u.get(e);if(!t){let i=t=>t.filter(t=>n.get(t)?.parentId===e&&r.get(t)?.parentId===e);t=we(i(l(n,e)),i(l(r,e))),u.set(e,t)}return t};for(let[e,t]of r){let r=n.get(e);if(!r)continue;let i={...r.parentId?{parentId:r.parentId}:{},index:r.index},a={...t.parentId?{parentId:t.parentId}:{},index:t.index};r.parentId===t.parentId?d(t.parentId).has(e)||s.push({id:e,reparented:!1,from:i,to:a}):s.push({id:e,reparented:!0,from:i,to:a});let o=r.item,l=t.item,u=o.labels??{},f=l.labels??{},p=[...new Set([...Object.keys(u),...Object.keys(f)])].sort().filter(e=>u[e]!==f[e]).map(e=>({locale:e,...u[e]===void 0?{}:{from:u[e]},...f[e]===void 0?{}:{to:f[e]}})),m=o.kind===`url`&&o.newTab===!0,h=l.kind===`url`&&l.newTab===!0,g=L(o)!==L(l);(p.length>0||g||m!==h&&!g)&&c.push({id:e,...p.length>0?{labels:p}:{},...g?{target:{from:o,to:l}}:{},...m!==h&&!g?{newTab:{from:m,to:h}}:{}})}return{before:n.size,after:r.size,added:a,removed:o,moved:s,changed:c,changes:a.length+o.length+s.length+c.length}}function Ee(e,t,n){let r=e.get(t)?.parentId;for(;r;){if(r===n)return!0;r=e.get(r)?.parentId}return!1}var R=[`primary`,`footer`,`sidebar`];function z(e){return R.includes(e)}function De(e){let t=e=>{let t=R.indexOf(e);return t<0?R.length:t};return[...new Set(e)].sort((e,n)=>t(e)-t(n)||e.localeCompare(n))}var Oe=/^[a-z0-9]+(?:-[a-z0-9]+)*$/;function ke(e,t){if(!e)return`required`;if(e.length>128)return`tooLong`;if(!Oe.test(e))return`invalid`;if(t.includes(e))return`taken`}function Ae(e,t){let n=I({siteId:``,maxDepth:e.maxDepth,items:e.items},[{op:`move`,itemId:t.itemId,parent:t.parentId,index:t.index}],E);return{...e,items:n.items}}function je(e,t){let n=I({siteId:``,maxDepth:e.maxDepth,items:e.items},[{op:`remove`,itemId:t}],E);return{...e,items:n.items}}function Me(e,t,n,r){let i=e=>{let n=[...e];return n.splice(r??n.length,0,t),n};if(n===null)return{...e,items:i(e.items)};let a=e=>e.map(e=>e.id===n?{...e,children:i(e.children??[])}:e.children?{...e,children:a(e.children)}:e);return{...e,items:a(e.items)}}function Ne(e,t,n){let r=e=>e.map(e=>{if(e.id===t){let t=e.children,{children:r,...i}=n;return t?.length?{...i,children:t}:i}return e.children?{...e,children:r(e.children)}:e});return{...e,items:r(e.items)}}function Pe(e,t){return k(e).get(t)?.item}function Fe(e,t){return k(e).get(t)?.depth??0}function Ie(e,t){return{rev:e.rev,maxDepth:t.maxDepth,items:t.items}}function B(e,t){return e.maxDepth===t.maxDepth&&JSON.stringify(e.items)===JSON.stringify(t.items)}function V(e){let t=new Map([[``,e.length]]);D(e,e=>{e.children?.length&&t.set(e.id,e.children.length)});let n={parentId:null,count:e.length};for(let[e,r]of t)r>n.count&&(n={parentId:e||null,count:r});return{total:O(e),depth:ve(e),fullest:n,perParent:t}}function Le(e,t){return e>=Math.floor(t*.8)}function Re(){return{target:void 0,href:``,newTab:!1,labels:{}}}function ze(e){let t={...e.labels??{}};switch(e.kind){case`page`:return{target:{kind:`page`,id:e.pageId},href:``,newTab:!1,labels:t};case`contentEntry`:return{target:{kind:`contentEntry`,id:e.entryId},href:``,newTab:!1,labels:t};case`term`:return{target:{kind:`term`,id:e.termId},href:``,newTab:!1,labels:t};case`collection`:return{target:{kind:`collection`,collection:e.collection},href:``,newTab:!1,labels:t};case`url`:return{target:{kind:`url`},href:e.href,newTab:e.newTab===!0,labels:t};case`group`:return{target:{kind:`group`},href:``,newTab:!1,labels:t}}}function H(e){return e?.kind===`collection`||e?.kind===`url`||e?.kind===`group`}function Be(e,t){let n={};for(let[t,r]of Object.entries(e.labels))r.trim()&&(n[t]=r.trim());let r=Object.keys(n).length>0?{labels:n}:{},i=e.target;switch(i.kind){case`page`:return{id:t,kind:`page`,pageId:i.id,...r};case`contentEntry`:return{id:t,kind:`contentEntry`,entryId:i.id,...r};case`term`:return{id:t,kind:`term`,termId:i.id,...r};case`collection`:return{id:t,kind:`collection`,collection:i.collection,labels:n};case`url`:return{id:t,kind:`url`,href:e.href.trim(),...e.newTab?{newTab:!0}:{},labels:n};case`group`:return{id:t,kind:`group`,labels:n}}}var Ve=/[\x00-\x1F\x7F]/;function He(e){let t=e.trim();if(t){if(t.length>T.labelLength)return`tooLong`;if(Ve.test(t))return`invalid`}}function Ue(e){let t=e.trim();if(!t)return`required`;if(/^http:\/\//i.test(t))return`insecure`;if(!A(t))return`invalid`}function We(e,t){let n={labels:{}};if(e.target||(n.target=`required`),e.target?.kind===`url`){let t=Ue(e.href);t&&(n.href=t)}for(let[t,r]of Object.entries(e.labels)){let e=He(r);e&&(n.labels[t]=e)}return H(e.target)&&!e.labels[t.defaultLocale]?.trim()&&(n.labels[t.defaultLocale]=`required`),n}function Ge(e){return!!(e.target||e.href||Object.keys(e.labels).length>0)}function U(e){try{return new URL(e).host}catch{return}}function Ke(e){let t=new Set(e.entries.map(e=>e.collection));for(let n of e.pages)for(let e of n.sections)e.kind===`contentList`&&t.add(e.collection);return[...t].sort()}function qe(e){if(!e)return null;switch(e.kind){case`page`:case`contentEntry`:case`term`:return`${e.kind}:${e.id}`;case`collection`:return`collection:${e.collection}`;default:return e.kind}}function Je(e){if(e===`url`||e===`group`)return{kind:e};let t=e.indexOf(`:`),n=e.slice(0,t),r=e.slice(t+1);if(n===`page`||n===`contentEntry`||n===`term`)return{kind:n,id:r};if(n===`collection`)return{kind:n,collection:r}}function Ye(e){let t=e.site.defaultLocale,n=[...e.pages].filter(e=>e.locale===t).sort((e,t)=>e.path.localeCompare(t.path)).map(e=>({value:`page:${e.id}`,group:`pages`,label:e.title,detail:e.path,...e.status===`published`?{}:{status:e.status}})),r=[...e.entries].filter(e=>e.locale===t).sort((e,t)=>e.title.localeCompare(t.title)).map(t=>({value:`contentEntry:${t.id}`,group:`articles`,label:t.title,detail:x(e.site,t),...t.status===`published`?{}:{status:t.status}})),i=[];for(let n of e.taxonomies){let r=e.terms.filter(e=>e.taxonomyId===n.id&&e.status!==`retired`),a=new Map;for(let e of r){let t=e.parentId??``;a.set(t,[...a.get(t)??[],e])}let o=(r,s)=>{let c=[...a.get(r)??[]].sort((e,n)=>(e.position??1e9)-(n.position??1e9)||y(e,t).localeCompare(y(n,t)));for(let r of c)i.push({value:`term:${r.id}`,group:`terms`,taxonomy:n.key,label:y(r,t,...e.site.locales),...n.archive.enabled?{detail:v(n,r.slug)}:{},...r.status===`proposed`?{status:`proposed`}:r.visibility===`internal`?{status:`internal`}:{},depth:s}),s<16&&o(r.id,s+1)};o(``,0)}let a=Ke(e).map(e=>({value:`collection:${e}`,group:`collections`,label:e,detail:e}));return[...n,...r,...i,...a,{value:`url`,group:`other`,label:`url`},{value:`group`,group:`other`,label:`group`}]}function Xe(e,t,n){if(e)switch(e.kind){case`page`:return t.pages.find(t=>t.id===e.id)?.title;case`contentEntry`:return t.entries.find(t=>t.id===e.id)?.title;case`term`:{let r=t.terms.find(t=>t.id===e.id);return r?y(r,n,t.site.defaultLocale):void 0}default:return}}function W(e,t){switch(e.kind){case`page`:{let n=t.pages.find(t=>t.id===e.pageId);return n?{kind:`page`,where:n.path,title:n.title}:{kind:`page`,missing:!0}}case`contentEntry`:{let n=t.entries.find(t=>t.id===e.entryId);return n?{kind:`contentEntry`,where:x(t.site,n),title:n.title}:{kind:`contentEntry`,missing:!0}}case`term`:{let n=t.terms.find(t=>t.id===e.termId),r=n&&t.taxonomies.find(e=>e.id===n.taxonomyId);return n?{kind:`term`,title:y(n,t.site.defaultLocale),...r?{taxonomy:r.key}:{},...r?.archive.enabled?{where:v(r,n.slug)}:{}}:{kind:`term`,missing:!0}}case`collection`:return{kind:`collection`,where:e.collection};case`url`:{let t=U(e.href);return{kind:`url`,...t?{where:t}:{},newTab:e.newTab===!0}}case`group`:return{kind:`group`}}}function G(e,t){let n=e.labels??{},r=n[t.site.defaultLocale]??Object.values(n).find(Boolean);return r?{text:r,fallback:!1}:{text:W(e,t).title??``,fallback:!0}}function K(e){let t=new Map,n=e=>{for(let r of e)t.set(r.id,r),n(r.children)};return e&&n(e.items),t}function q(e){return[...K(e).values()].filter(e=>e.state===`hidden`&&e.reason!==`parent-hidden`)}function Ze(e,t,n,r){let i=Te(e,t),a=k(e.items),o=k(t.items),s=e=>{let t=o.get(e)?.item??a.get(e)?.item,r=t?G(t,n):{text:e,fallback:!1};return{label:r.text||e,fallback:r.fallback}},c=[];for(let e of i.added){let t=o.get(e.id)?.item;c.push({sign:`+`,id:e.id,...s(e.id),target:W(t,n),...e.parentId?{parent:s(e.parentId).label}:{},position:e.index+1,below:e.descendants})}for(let e of i.removed){let t=a.get(e.id)?.item;c.push({sign:`−`,id:e.id,...s(e.id),target:W(t,n),below:e.descendants})}for(let e of i.moved)c.push(e.reparented?{sign:`↳`,id:e.id,...s(e.id),...e.to.parentId?{parent:s(e.to.parentId).label}:{},...e.from.parentId?{was:s(e.from.parentId).label}:{}}:{sign:`↕`,id:e.id,...s(e.id),from:e.from.index+1,to:e.to.index+1});for(let e of i.changed){for(let t of e.labels??[])c.push({sign:`~`,id:e.id,...s(e.id),change:`label`,locale:t.locale,...t.from===void 0?{}:{from:t.from},...t.to===void 0?{}:{to:t.to}});e.target&&c.push({sign:`~`,id:e.id,...s(e.id),change:`target`,from:W(e.target.from,n),to:W(e.target.to,n)}),e.newTab&&c.push({sign:`~`,id:e.id,...s(e.id),change:`newTab`,to:e.newTab.to})}if(r){let e=new Set([...i.added.map(e=>e.id),...i.changed.map(e=>e.id)]);for(let t of q(r))e.has(t.id)&&t.reason&&c.push({sign:`!`,id:t.id,...s(t.id),reason:t.reason,kind:t.kind})}return{delta:i,lines:c}}function Qe(e,t){let n;if(D(e.items,(r,i)=>{n||(r.kind===`group`&&!r.children?.length?n={code:`emptyGroup`,itemId:r.id}:(r.kind===`group`||r.kind===`url`||r.kind===`collection`)&&!r.labels?.[t.defaultLocale]?n={code:`label`,itemId:r.id}:i>e.maxDepth&&(n={code:`depth`,itemId:r.id,max:e.maxDepth}))}),n)return n;let r=V(e.items);if(r.total>T.total)return{code:`total`,max:T.total};if(r.fullest.count>T.perLevel)return{code:`perLevel`,max:T.perLevel}}var J=r(),Y={overview:e=>[`menus`,e],references:(e,t,n)=>[`menu-references`,e,t,n]};function X(){let e=_(`menus`);return t=>z(t)?e(`menus.places.${t}`):t}function Z(){let e=_(`menus`),t=X();return n=>z(n)?e(`menus.placeWithKey`,{place:t(n),key:n}):n}function $e(){let{t:e,locale:t}=ee(`menus`),n=te(t)===`rtl`;return{description:(t,r)=>t?e(n?`menus.items.descriptionRtl`:`menus.items.description`,{max:r}):e(`menus.items.descriptionReadOnly`),instructions:e(n?`menus.tree.instructionsRtl`:`menus.tree.instructions`)}}var et={page:oe,contentEntry:ie,term:ne,collection:ce,url:c(ae),group:d};function tt({target:e,taxonomyName:t}){let n=_(`menus`),r=et[e.kind],a=e.missing?n(`menus.chips.missing.${e.kind}`):e.kind===`term`?n(`menus.chips.term`,{taxonomy:t??n(`menus.chips.termFallback`),name:e.title??``}):e.kind===`group`?n(`menus.chips.group`):n(`menus.chips.${e.kind}`,{where:e.where??``});return(0,J.jsx)(`span`,{className:`inline-flex max-w-full min-w-0`,"data-target-kind":e.kind,children:(0,J.jsxs)(i,{variant:`outline`,icon:(0,J.jsx)(r,{}),children:[(0,J.jsx)(`span`,{className:`min-w-0 truncate`,children:a}),e.kind===`url`&&e.newTab&&(0,J.jsx)(`span`,{className:`sr-only`,children:n(`menus.chips.newTab`)})]})})}var nt={missing:!0,unpublished:!0};function Q(){let e=_(`menus`);return(t,n,r)=>{let i=n===`page`||n===`contentEntry`||n===`term`?n:`page`,a=r===`badge`?`reasons`:`explain`,o=nt[t]?`menus.hidden.${a}.${t}.${i}`:`menus.hidden.${a}.${t}`;return e(o)}}function rt({reason:e,kind:t}){let n=_(`menus`),r=Q();return(0,J.jsx)(a,{content:r(e,t,`explain`),render:(0,J.jsx)(`span`,{className:`inline-flex`,"data-hidden-reason":e,tabIndex:-1,children:(0,J.jsx)(i,{variant:e===`parent-hidden`?`secondary`:`warning`,icon:(0,J.jsx)(u,{}),children:n(`menus.hidden.badge`,{reason:r(e,t,`badge`)})})})})}function it(e){let t=s({queryKey:Y.overview(e),queryFn:()=>m.menus.list(e)}),n=new Map;for(let{menu:e}of t.data?.menus??[]){let t=r=>{for(let i of r){if(i.kind===`page`){let t=n.get(i.pageId)??[];t.includes(e.key)||n.set(i.pageId,[...t,e.key])}i.children&&t(i.children)}};t(e.items)}return n}function at({keys:e}){let t=_(`menus`),n=Z();return e?.length?(0,J.jsx)(a,{content:t(`menus.inMenu.hint`,{menus:g(e.map(n))}),render:(0,J.jsx)(`span`,{className:`inline-flex`,"data-testid":`in-menu-badge`,children:(0,J.jsx)(i,{variant:`outline`,icon:(0,J.jsx)(b,{}),children:t(`menus.inMenu.badge`)})})}):null}function $(e,t){return s({queryKey:Y.references(e,t?.kind??``,t?.id??``),queryFn:()=>m.menus.references(e,t?.kind??`page`,t?.id??``),enabled:t!==void 0})}function ot(e,t,n){return`/sites/${e}/navigation?menu=${encodeURIComponent(t.key)}&item=${encodeURIComponent(n)}`}function st({siteId:e,kind:t,id:n}){let r=_(`menus`),a=Z(),s=$(e,{kind:t,id:n}),c=(s.data??[]).reduce((e,t)=>e+t.items.length,0);return(0,J.jsx)(h,{title:r(`menus.usedIn.title`),icon:(0,J.jsx)(b,{size:16}),actions:c>0?(0,J.jsx)(i,{variant:`secondary`,children:c}):void 0,id:`used-in-menus`,children:s.data===void 0?(0,J.jsx)(l,{variant:`secondary`,size:`sm`,children:r(`common.loading`)}):s.data.length===0?(0,J.jsx)(re,{icon:(0,J.jsx)(b,{size:32,className:`text-kumo-inactive`}),title:r(`menus.usedIn.none`),description:r(`menus.usedIn.noneDescription.${t}`),contents:(0,J.jsx)(o,{href:`/sites/${e}/navigation`,variant:`inline`,children:r(`menus.usedIn.open`)})}):(0,J.jsxs)(`div`,{className:`grid gap-3`,children:[(0,J.jsx)(`dl`,{className:`grid divide-y divide-kumo-hairline`,children:s.data.flatMap(t=>t.items.map(n=>(0,J.jsxs)(`div`,{className:`flex min-w-0 items-center justify-between gap-4 py-2 first:pt-0 last:pb-0`,"data-menu-item":n.id,children:[(0,J.jsx)(l,{as:`dt`,variant:`secondary`,children:a(t.key)}),(0,J.jsx)(`dd`,{className:`min-w-0`,children:(0,J.jsx)(o,{href:ot(e,t,n.id),variant:`inline`,children:(0,J.jsx)(`span`,{className:`block truncate`,children:n.label||r(`menus.row.noLabel`)})})})]},`${t.menuId}:${n.id}`)))}),(0,J.jsx)(l,{variant:`secondary`,size:`sm`,children:r(`menus.usedIn.description.${t}`)})]})})}function ct({refs:e,kind:t}){let n=_(`menus`),r=Z(),i=(e??[]).flatMap(e=>e.items.map(t=>`${r(e.key)}: “${t.label||n(`menus.row.noLabel`)}”`));return i.length===0?null:(0,J.jsx)(`div`,{"data-testid":`menu-delete-notice`,children:(0,J.jsx)(p,{variant:`alert`,icon:(0,J.jsx)(f,{weight:`fill`}),title:n(`menus.deleteNotice.title.${t}`,{count:i.length}),description:`${i.join(` · `)}. ${n(`menus.deleteNotice.description`)}`})})}export{De as A,We as B,Me as C,Ae as D,V as E,Ie as F,T as H,G as I,W as L,Ne as M,K as N,Le as O,B as P,Ye as R,U as S,Be as T,E as U,ke as V,Re as _,st as a,Ge as b,$e as c,Z as d,it as f,Qe as g,Ze as h,tt as i,je as j,H as k,X as l,qe as m,at as n,Y as o,Je as p,ct as r,Q as s,rt as t,$ as u,Pe as v,Fe as w,q as x,ze as y,Xe as z};
2
- //# sourceMappingURL=Menus-C5xbqFeO.js.map
1
+ import{r as e}from"./rolldown-runtime-hePW80VL.js";import{t}from"./IconBase.es-BZDpYMnj.js";import{i as n,r}from"./react-CDCuUAOg.js";import{t as i}from"./badge-dq8bx752b9dp7dst--rpq8QXS.js";import{o as a}from"./button-pa1bq9b85hawg41a-CmOCuL-1.js";import{t as o}from"./link-cqyfjezntvr53rh7-3eczR57J.js";import{_ as s}from"./tanstack-BRxyYm4G.js";import{r as c}from"./DirectionalIcon-UZJFXGY_.js";import{n as l}from"./skeleton-line-m9dyh126t9k07jvg-BFlcthbF.js";import{t as u}from"./EyeSlash.es-YoqigHIr.js";import{t as d}from"./FolderSimple.es-CbGWmBJc.js";import{n as f,t as p}from"./banner-msnmqm7of2lck01x-D6cADEpP.js";import{t as m}from"./api-CHeogUo-.js";import{t as h}from"./SectionCard-Bqvz-NiL.js";import{a as g,c as ee,r as te,u as _}from"./i18n-CCHry74V.js";import{s as v,w as y}from"./taxonomy-S-y5xbUa.js";import{B as ne,E as re,R as b,dt as ie,ft as ae,tt as oe}from"./index-OjH3NEOH.js";import{n as x}from"./permalinks-XTIdpYm2.js";import{t as S}from"./errors-svQ83Q62.js";var C=e(n(),1),se=new Map([[`bold`,C.createElement(C.Fragment,null,C.createElement(`path`,{d:`M180,72H36A20,20,0,0,0,16,92V204a20,20,0,0,0,20,20H180a20,20,0,0,0,20-20V92A20,20,0,0,0,180,72Zm-4,128H40V96H176ZM240,52V176a12,12,0,0,1-24,0V56H64a12,12,0,0,1,0-24H220A20,20,0,0,1,240,52Z`}))],[`fill`,C.createElement(C.Fragment,null,C.createElement(`path`,{d:`M200,88V200a16,16,0,0,1-16,16H40a16,16,0,0,1-16-16V88A16,16,0,0,1,40,72H184A16,16,0,0,1,200,88Zm16-48H64a8,8,0,0,0,0,16H216V176a8,8,0,0,0,16,0V56A16,16,0,0,0,216,40Z`}))],[`regular`,C.createElement(C.Fragment,null,C.createElement(`path`,{d:`M184,72H40A16,16,0,0,0,24,88V200a16,16,0,0,0,16,16H184a16,16,0,0,0,16-16V88A16,16,0,0,0,184,72Zm0,128H40V88H184V200ZM232,56V176a8,8,0,0,1-16,0V56H64a8,8,0,0,1,0-16H216A16,16,0,0,1,232,56Z`}))]]),w=C.forwardRef((e,n)=>C.createElement(t,{ref:n,...e,weights:se}));w.displayName=`CardsIcon`;var ce=w,le=`0123456789ABCDEFGHJKMNPQRSTVWXYZ`;function ue(e,t=20){if(!/^[a-z]+$/.test(e))throw Error(`invalid id prefix "${e}"`);let n=new Uint8Array(t);crypto.getRandomValues(n);let r=``;for(let e of n)r+=le[e%32];return`${e}_${r}`}var de={project:`proj`,site:`site`,page:`page`,section:`sec`,contentEntry:`entry`,taxonomy:`tax`,term:`term`,redirect:`redir`,menu:`menu`,menuItem:`item`,asset:`asset`,glossary:`gloss`,upload:`upl`,snapshot:`snap`,user:`user`,agent:`agent`,system:`sys`,operation:`op`,block:`blk`,correction:`crx`,proposal:`prop`},T={maxDepth:6,perLevel:100,total:500,labelLength:100};function E(){return ue(de.menuItem)}var fe=/^item_[A-Za-z0-9]{6,32}$/,pe=/^[a-z]+_[A-Za-z0-9]{6,32}$/,me=/^[a-z0-9]+(?:-[a-z0-9]+)*$/,he=/^[a-z]{2,3}(?:-[A-Za-z0-9]{2,8})*$/,ge=/^https:\/\/[A-Za-z0-9](?:[A-Za-z0-9.-]*[A-Za-z0-9])?(?::[0-9]{1,5})?(?:[/?#][^\s\\\x00-\x1F\x7F]*)?$/,_e=/^[^\s\x00-\x1F\x7F](?:[^\x00-\x1F\x7F]*[^\s\x00-\x1F\x7F])?$/;function D(e,t){let n=(e,r,i)=>{for(let a of e)t(a,r,i),a.children&&n(a.children,r+1,a)};n(e,1)}function O(e){let t=0;return D(e,()=>t++),t}function ve(e){let t=0;return D(e,(e,n)=>{n>t&&(t=n)}),t}function ye(e){switch(e.kind){case`page`:return{kind:`page`,id:e.pageId};case`contentEntry`:return{kind:`contentEntry`,id:e.entryId};case`term`:return{kind:`term`,id:e.termId};default:return}}function k(e){let t=new Map,n=(e,r,i)=>{e.forEach((e,a)=>{t.set(e.id,{item:e,parentId:i,index:a,depth:r}),e.children&&n(e.children,r+1,e.id)})};return n(e,1),t}function be(e){if(e.length===0)return`is empty`;if(e.length>T.labelLength)return`is longer than ${T.labelLength} characters`;if(!_e.test(e))return`has control characters or surrounding whitespace`}function A(e){return e.length<=2048&&ge.test(e)}var xe=new Set([`collection`,`url`,`group`]);function Se(e,t,n,r={}){if(e.siteId!==t.id)throw new S(`invalid_menu`,`menu.siteId must match the site`);if(!Number.isInteger(e.maxDepth)||e.maxDepth<1||e.maxDepth>T.maxDepth)throw new S(`too_deep`,`maxDepth must be between 1 and ${T.maxDepth} (got ${e.maxDepth})`,{maxDepth:T.maxDepth});let i=n?k(n.items):new Map,a=new Set([t.defaultLocale,...t.locales]),o=new Set,s=0,c=(n,l)=>{if(n.length>T.perLevel)throw new S(`too_large`,`a menu level holds at most ${T.perLevel} items (got ${n.length})`,{perLevel:T.perLevel});for(let u of n){let n=`menu item ${u.id}`;if(typeof u.id!=`string`||!fe.test(u.id))throw new S(`invalid_menu`,`${n}: item ids look like item_01HZX8K3Q9`,{itemId:u.id});if(o.has(u.id))throw new S(`invalid_menu`,`${n} appears twice; item ids are unique`,{itemId:u.id});if(o.add(u.id),++s>T.total)throw new S(`too_large`,`a menu holds at most ${T.total} items in total`,{total:T.total});if(l>e.maxDepth)throw new S(`too_deep`,`${n} sits at level ${l}, deeper than this menu's maxDepth ${e.maxDepth}`,{itemId:u.id,depth:l,maxDepth:e.maxDepth});if(u.display===`mega`&&(l!==1||!u.children?.length))throw new S(`invalid_menu`,`${n}: display mega belongs to a top-level item with children (its columns)`,{itemId:u.id});let d=ye(u);if(d&&!pe.test(d.id))throw new S(`invalid_menu`,`${n}: ${d.id} is not a node id`,{itemId:u.id});if(u.kind===`collection`&&!me.test(u.collection))throw new S(`invalid_menu`,`${n}: "${u.collection}" is not a slug`,{itemId:u.id});if(u.kind===`url`&&!A(u.href))throw new S(`invalid_menu`,`${n}: external links must be https:// with an ASCII host (punycode for international names), no user-info, whitespace or backslashes, at most 2,048 characters; link pages, articles and terms by id instead of a site path`,{itemId:u.id});let f=u.labels??void 0;if(f){let e=Object.entries(f).filter(([,e])=>e!==void 0);if(e.length===0)throw new S(`invalid_label`,`${n}: omit labels rather than send an empty map`,{itemId:u.id});let t=i.get(u.id)?.item.labels;for(let[r,i]of e){if(!he.test(r))throw new S(`invalid_label`,`${n}: "${r}" is not a locale`,{itemId:u.id,locale:r});let e=be(i);if(e)throw new S(`invalid_label`,`${n}: the ${r} label ${e}`,{itemId:u.id,locale:r});if(!a.has(r)&&t?.[r]===void 0)throw new S(`invalid_label`,`${n}: ${r} is not a locale of this site (${[...a].join(`, `)})`,{itemId:u.id,locale:r})}}if(xe.has(u.kind)&&!f?.[t.defaultLocale])throw new S(`invalid_label`,`${n}: ${u.kind} items need a label in the site's default locale (${t.defaultLocale}); they have no title to fall back to`,{itemId:u.id,locale:t.defaultLocale});if(u.kind!==`url`&&`newTab`in u&&u.newTab!==void 0)throw new S(`invalid_menu`,`${n}: only external links open in a new tab`,{itemId:u.id});let p=u.children;if(!r.partial){if(p&&p.length===0)throw new S(`invalid_menu`,`${n}: omit children rather than send []`,{itemId:u.id});if(u.kind===`group`&&!p?.length)throw new S(`invalid_menu`,`${n}: a group needs at least one item`,{itemId:u.id})}p&&c(p,l+1)}};c(e.items,1)}function Ce(e){return JSON.parse(JSON.stringify(e))}function j(e){for(let t of e){t.children&&(t.children.length===0?delete t.children:j(t.children));let e=t.labels;e&&Object.keys(e).length===0&&delete t.labels}return e}function M(e,t){for(let t of[`pageId`,`entryId`,`termId`,`collection`,`href`])delete e[t];switch(e.kind=t.kind,t.kind){case`page`:e.pageId=t.ref;break;case`contentEntry`:e.entryId=t.ref;break;case`term`:e.termId=t.ref;break;case`collection`:e.collection=t.collection;break;case`url`:e.href=t.href}t.kind!==`url`&&delete e.newTab}function N(e,t){let n={id:e.id??t(),kind:e.target.kind};if(M(n,e.target),e.newTab!==void 0){if(e.target.kind!==`url`)throw new S(`invalid_menu`,`only external links open in a new tab`);n.newTab=e.newTab}return e.labels&&Object.keys(e.labels).length>0&&(n.labels={...e.labels}),e.display===`mega`&&(n.display=`mega`),e.children&&e.children.length>0&&(n.children=e.children.map(e=>N(e,t))),n}function P(e,t){for(let n=0;n<e.length;n++){let r=e[n];if(r.id===t)return{item:r,list:e,index:n};if(r.children){let e=P(r.children,t);if(e)return e}}}function F(e,t){return(e.children??[]).some(e=>e.id===t||F(e,t))}function I(e,t,n,r){if(t.length>50)throw new S(`too_large`,`at most 50 operations per call (got ${t.length})`);let i=Ce(e.items),a=(e,t)=>{if(e==null)return i;let n=P(i,e);if(!n)throw new S(`unknown_item`,`operation ${t}: no item ${e}`,{opIndex:t,itemId:e});return n.item.children??=[],n.item.children},o=(e,t,n)=>{let r=n===void 0?e.length:Math.max(0,Math.min(e.length,Math.trunc(n)));e.splice(r,0,t)};return t.forEach((t,s)=>{try{switch(t.op){case`add`:{let e=N(t.item,n);o(a(t.parent,s),e,t.index);break}case`remove`:{let e=P(i,t.itemId);if(!e)throw new S(`unknown_item`,`operation ${s}: no item ${t.itemId}`,{itemId:t.itemId});e.list.splice(e.index,1);break}case`move`:{let e=P(i,t.itemId);if(!e)throw new S(`unknown_item`,`operation ${s}: no item ${t.itemId}`,{itemId:t.itemId});if(t.parent&&(t.parent===t.itemId||F(e.item,t.parent)))throw new S(`cycle`,`operation ${s}: cannot move ${t.itemId} under itself or one of its own items`,{itemId:t.itemId});e.list.splice(e.index,1),o(a(t.parent,s),e.item,t.index);break}case`update`:{let e=P(i,t.itemId);if(!e)throw new S(`unknown_item`,`operation ${s}: no item ${t.itemId}`,{itemId:t.itemId});let n=e.item;if(t.target&&M(n,t.target),t.labels){let e={...n.labels??{}};for(let[n,r]of Object.entries(t.labels))r===null?delete e[n]:e[n]=r;Object.keys(e).length>0?n.labels=e:delete n.labels}if(t.newTab!==void 0){if(t.newTab===null)delete n.newTab;else if(n.kind!==`url`)throw new S(`invalid_menu`,`operation ${s}: only external links open in a new tab`,{itemId:t.itemId});else n.newTab=t.newTab}t.display!==void 0&&(t.display===null?delete n.display:n.display=t.display);break}default:throw new S(`invalid_menu`,`operation ${s}: unknown operation`)}r&&Se({...e,items:i},r,e,{partial:!0})}catch(e){throw e instanceof S&&e.details.opIndex===void 0?new S(e.code,e.message.startsWith(`operation `)?e.message:`operation ${s}: ${e.message}`,{...e.details,opIndex:s}):e}}),{...e,items:j(i)}}function we(e,t){let n=e.length,r=t.length,i=Array.from({length:n+1},()=>Array(r+1).fill(0));for(let a=n-1;a>=0;a--)for(let n=r-1;n>=0;n--)i[a][n]=e[a]===t[n]?i[a+1][n+1]+1:Math.max(i[a+1][n],i[a][n+1]);let a=new Set,o=0,s=0;for(;o<n&&s<r;)e[o]===t[s]?(a.add(e[o]),o++,s++):i[o+1][s]>=i[o][s+1]?o++:s++;return a}var L=e=>{switch(e.kind){case`page`:return`page:${e.pageId}`;case`contentEntry`:return`contentEntry:${e.entryId}`;case`term`:return`term:${e.termId}`;case`collection`:return`collection:${e.collection}`;case`url`:return`url:${e.href}`;case`group`:return`group`}};function Te(e,t){let n=k(e?.items??[]),r=k(t.items),i=e=>O(e.children??[]),a=[],o=[],s=[],c=[];for(let[e,t]of r)n.has(e)||(!t.parentId||n.has(t.parentId))&&a.push({id:e,...t.parentId?{parentId:t.parentId}:{},index:t.index,descendants:[...r.values()].filter(t=>Ee(r,t.item.id,e)&&!n.has(t.item.id)).length});for(let[e,t]of n)r.has(e)||(!t.parentId||r.has(t.parentId))&&o.push({id:e,...t.parentId?{parentId:t.parentId}:{},descendants:i(t.item)});let l=(e,t)=>[...e.values()].filter(e=>e.parentId===t).sort((e,t)=>e.index-t.index).map(e=>e.item.id),u=new Map,d=e=>{let t=u.get(e);if(!t){let i=t=>t.filter(t=>n.get(t)?.parentId===e&&r.get(t)?.parentId===e);t=we(i(l(n,e)),i(l(r,e))),u.set(e,t)}return t};for(let[e,t]of r){let r=n.get(e);if(!r)continue;let i={...r.parentId?{parentId:r.parentId}:{},index:r.index},a={...t.parentId?{parentId:t.parentId}:{},index:t.index};r.parentId===t.parentId?d(t.parentId).has(e)||s.push({id:e,reparented:!1,from:i,to:a}):s.push({id:e,reparented:!0,from:i,to:a});let o=r.item,l=t.item,u=o.labels??{},f=l.labels??{},p=[...new Set([...Object.keys(u),...Object.keys(f)])].sort().filter(e=>u[e]!==f[e]).map(e=>({locale:e,...u[e]===void 0?{}:{from:u[e]},...f[e]===void 0?{}:{to:f[e]}})),m=o.kind===`url`&&o.newTab===!0,h=l.kind===`url`&&l.newTab===!0,g=L(o)!==L(l);(p.length>0||g||m!==h&&!g)&&c.push({id:e,...p.length>0?{labels:p}:{},...g?{target:{from:o,to:l}}:{},...m!==h&&!g?{newTab:{from:m,to:h}}:{}})}return{before:n.size,after:r.size,added:a,removed:o,moved:s,changed:c,changes:a.length+o.length+s.length+c.length}}function Ee(e,t,n){let r=e.get(t)?.parentId;for(;r;){if(r===n)return!0;r=e.get(r)?.parentId}return!1}var R=[`primary`,`footer`,`sidebar`];function z(e){return R.includes(e)}function De(e){let t=e=>{let t=R.indexOf(e);return t<0?R.length:t};return[...new Set(e)].sort((e,n)=>t(e)-t(n)||e.localeCompare(n))}var Oe=/^[a-z0-9]+(?:-[a-z0-9]+)*$/;function ke(e,t){if(!e)return`required`;if(e.length>128)return`tooLong`;if(!Oe.test(e))return`invalid`;if(t.includes(e))return`taken`}function Ae(e,t){let n=I({siteId:``,maxDepth:e.maxDepth,items:e.items},[{op:`move`,itemId:t.itemId,parent:t.parentId,index:t.index}],E);return{...e,items:n.items}}function je(e,t){let n=I({siteId:``,maxDepth:e.maxDepth,items:e.items},[{op:`remove`,itemId:t}],E);return{...e,items:n.items}}function Me(e,t,n,r){let i=e=>{let n=[...e];return n.splice(r??n.length,0,t),n};if(n===null)return{...e,items:i(e.items)};let a=e=>e.map(e=>e.id===n?{...e,children:i(e.children??[])}:e.children?{...e,children:a(e.children)}:e);return{...e,items:a(e.items)}}function Ne(e,t,n){let r=e=>e.map(e=>{if(e.id===t){let t=e.children,{children:r,...i}=n;return t?.length?{...i,children:t}:i}return e.children?{...e,children:r(e.children)}:e});return{...e,items:r(e.items)}}function Pe(e,t){return k(e).get(t)?.item}function Fe(e,t){return k(e).get(t)?.depth??0}function Ie(e,t){return{rev:e.rev,maxDepth:t.maxDepth,items:t.items}}function B(e,t){return e.maxDepth===t.maxDepth&&JSON.stringify(e.items)===JSON.stringify(t.items)}function V(e){let t=new Map([[``,e.length]]);D(e,e=>{e.children?.length&&t.set(e.id,e.children.length)});let n={parentId:null,count:e.length};for(let[e,r]of t)r>n.count&&(n={parentId:e||null,count:r});return{total:O(e),depth:ve(e),fullest:n,perParent:t}}function Le(e,t){return e>=Math.floor(t*.8)}function Re(){return{target:void 0,href:``,newTab:!1,labels:{}}}function ze(e){let t={...e.labels??{}};switch(e.kind){case`page`:return{target:{kind:`page`,id:e.pageId},href:``,newTab:!1,labels:t};case`contentEntry`:return{target:{kind:`contentEntry`,id:e.entryId},href:``,newTab:!1,labels:t};case`term`:return{target:{kind:`term`,id:e.termId},href:``,newTab:!1,labels:t};case`collection`:return{target:{kind:`collection`,collection:e.collection},href:``,newTab:!1,labels:t};case`url`:return{target:{kind:`url`},href:e.href,newTab:e.newTab===!0,labels:t};case`group`:return{target:{kind:`group`},href:``,newTab:!1,labels:t}}}function H(e){return e?.kind===`collection`||e?.kind===`url`||e?.kind===`group`}function Be(e,t){let n={};for(let[t,r]of Object.entries(e.labels))r.trim()&&(n[t]=r.trim());let r=Object.keys(n).length>0?{labels:n}:{},i=e.target;switch(i.kind){case`page`:return{id:t,kind:`page`,pageId:i.id,...r};case`contentEntry`:return{id:t,kind:`contentEntry`,entryId:i.id,...r};case`term`:return{id:t,kind:`term`,termId:i.id,...r};case`collection`:return{id:t,kind:`collection`,collection:i.collection,labels:n};case`url`:return{id:t,kind:`url`,href:e.href.trim(),...e.newTab?{newTab:!0}:{},labels:n};case`group`:return{id:t,kind:`group`,labels:n}}}var Ve=/[\x00-\x1F\x7F]/;function He(e){let t=e.trim();if(t){if(t.length>T.labelLength)return`tooLong`;if(Ve.test(t))return`invalid`}}function Ue(e){let t=e.trim();if(!t)return`required`;if(/^http:\/\//i.test(t))return`insecure`;if(!A(t))return`invalid`}function We(e,t){let n={labels:{}};if(e.target||(n.target=`required`),e.target?.kind===`url`){let t=Ue(e.href);t&&(n.href=t)}for(let[t,r]of Object.entries(e.labels)){let e=He(r);e&&(n.labels[t]=e)}return H(e.target)&&!e.labels[t.defaultLocale]?.trim()&&(n.labels[t.defaultLocale]=`required`),n}function Ge(e){return!!(e.target||e.href||Object.keys(e.labels).length>0)}function U(e){try{return new URL(e).host}catch{return}}function Ke(e){let t=new Set(e.entries.map(e=>e.collection));for(let n of e.pages)for(let e of n.sections)e.kind===`contentList`&&t.add(e.collection);return[...t].sort()}function qe(e){if(!e)return null;switch(e.kind){case`page`:case`contentEntry`:case`term`:return`${e.kind}:${e.id}`;case`collection`:return`collection:${e.collection}`;default:return e.kind}}function Je(e){if(e===`url`||e===`group`)return{kind:e};let t=e.indexOf(`:`),n=e.slice(0,t),r=e.slice(t+1);if(n===`page`||n===`contentEntry`||n===`term`)return{kind:n,id:r};if(n===`collection`)return{kind:n,collection:r}}function Ye(e){let t=e.site.defaultLocale,n=[...e.pages].filter(e=>e.locale===t).sort((e,t)=>e.path.localeCompare(t.path)).map(e=>({value:`page:${e.id}`,group:`pages`,label:e.title,detail:e.path,...e.status===`published`?{}:{status:e.status}})),r=[...e.entries].filter(e=>e.locale===t).sort((e,t)=>e.title.localeCompare(t.title)).map(t=>({value:`contentEntry:${t.id}`,group:`articles`,label:t.title,detail:x(e.site,t),...t.status===`published`?{}:{status:t.status}})),i=[];for(let n of e.taxonomies){let r=e.terms.filter(e=>e.taxonomyId===n.id&&e.status!==`retired`),a=new Map;for(let e of r){let t=e.parentId??``;a.set(t,[...a.get(t)??[],e])}let o=(r,s)=>{let c=[...a.get(r)??[]].sort((e,n)=>(e.position??1e9)-(n.position??1e9)||y(e,t).localeCompare(y(n,t)));for(let r of c)i.push({value:`term:${r.id}`,group:`terms`,taxonomy:n.key,label:y(r,t,...e.site.locales),...n.archive.enabled?{detail:v(n,r.slug)}:{},...r.status===`proposed`?{status:`proposed`}:r.visibility===`internal`?{status:`internal`}:{},depth:s}),s<16&&o(r.id,s+1)};o(``,0)}let a=Ke(e).map(e=>({value:`collection:${e}`,group:`collections`,label:e,detail:e}));return[...n,...r,...i,...a,{value:`url`,group:`other`,label:`url`},{value:`group`,group:`other`,label:`group`}]}function Xe(e,t,n){if(e)switch(e.kind){case`page`:return t.pages.find(t=>t.id===e.id)?.title;case`contentEntry`:return t.entries.find(t=>t.id===e.id)?.title;case`term`:{let r=t.terms.find(t=>t.id===e.id);return r?y(r,n,t.site.defaultLocale):void 0}default:return}}function W(e,t){switch(e.kind){case`page`:{let n=t.pages.find(t=>t.id===e.pageId);return n?{kind:`page`,where:n.path,title:n.title}:{kind:`page`,missing:!0}}case`contentEntry`:{let n=t.entries.find(t=>t.id===e.entryId);return n?{kind:`contentEntry`,where:x(t.site,n),title:n.title}:{kind:`contentEntry`,missing:!0}}case`term`:{let n=t.terms.find(t=>t.id===e.termId),r=n&&t.taxonomies.find(e=>e.id===n.taxonomyId);return n?{kind:`term`,title:y(n,t.site.defaultLocale),...r?{taxonomy:r.key}:{},...r?.archive.enabled?{where:v(r,n.slug)}:{}}:{kind:`term`,missing:!0}}case`collection`:return{kind:`collection`,where:e.collection};case`url`:{let t=U(e.href);return{kind:`url`,...t?{where:t}:{},newTab:e.newTab===!0}}case`group`:return{kind:`group`}}}function G(e,t){let n=e.labels??{},r=n[t.site.defaultLocale]??Object.values(n).find(Boolean);return r?{text:r,fallback:!1}:{text:W(e,t).title??``,fallback:!0}}function K(e){let t=new Map,n=e=>{for(let r of e)t.set(r.id,r),n(r.children)};return e&&n(e.items),t}function q(e){return[...K(e).values()].filter(e=>e.state===`hidden`&&e.reason!==`parent-hidden`)}function Ze(e,t,n,r){let i=Te(e,t),a=k(e.items),o=k(t.items),s=e=>{let t=o.get(e)?.item??a.get(e)?.item,r=t?G(t,n):{text:e,fallback:!1};return{label:r.text||e,fallback:r.fallback}},c=[];for(let e of i.added){let t=o.get(e.id)?.item;c.push({sign:`+`,id:e.id,...s(e.id),target:W(t,n),...e.parentId?{parent:s(e.parentId).label}:{},position:e.index+1,below:e.descendants})}for(let e of i.removed){let t=a.get(e.id)?.item;c.push({sign:`−`,id:e.id,...s(e.id),target:W(t,n),below:e.descendants})}for(let e of i.moved)c.push(e.reparented?{sign:`↳`,id:e.id,...s(e.id),...e.to.parentId?{parent:s(e.to.parentId).label}:{},...e.from.parentId?{was:s(e.from.parentId).label}:{}}:{sign:`↕`,id:e.id,...s(e.id),from:e.from.index+1,to:e.to.index+1});for(let e of i.changed){for(let t of e.labels??[])c.push({sign:`~`,id:e.id,...s(e.id),change:`label`,locale:t.locale,...t.from===void 0?{}:{from:t.from},...t.to===void 0?{}:{to:t.to}});e.target&&c.push({sign:`~`,id:e.id,...s(e.id),change:`target`,from:W(e.target.from,n),to:W(e.target.to,n)}),e.newTab&&c.push({sign:`~`,id:e.id,...s(e.id),change:`newTab`,to:e.newTab.to})}if(r){let e=new Set([...i.added.map(e=>e.id),...i.changed.map(e=>e.id)]);for(let t of q(r))e.has(t.id)&&t.reason&&c.push({sign:`!`,id:t.id,...s(t.id),reason:t.reason,kind:t.kind})}return{delta:i,lines:c}}function Qe(e,t){let n;if(D(e.items,(r,i)=>{n||(r.kind===`group`&&!r.children?.length?n={code:`emptyGroup`,itemId:r.id}:(r.kind===`group`||r.kind===`url`||r.kind===`collection`)&&!r.labels?.[t.defaultLocale]?n={code:`label`,itemId:r.id}:i>e.maxDepth&&(n={code:`depth`,itemId:r.id,max:e.maxDepth}))}),n)return n;let r=V(e.items);if(r.total>T.total)return{code:`total`,max:T.total};if(r.fullest.count>T.perLevel)return{code:`perLevel`,max:T.perLevel}}var J=r(),Y={overview:e=>[`menus`,e],references:(e,t,n)=>[`menu-references`,e,t,n]};function X(){let e=_(`menus`);return t=>z(t)?e(`menus.places.${t}`):t}function Z(){let e=_(`menus`),t=X();return n=>z(n)?e(`menus.placeWithKey`,{place:t(n),key:n}):n}function $e(){let{t:e,locale:t}=ee(`menus`),n=te(t)===`rtl`;return{description:(t,r)=>t?e(n?`menus.items.descriptionRtl`:`menus.items.description`,{max:r}):e(`menus.items.descriptionReadOnly`),instructions:e(n?`menus.tree.instructionsRtl`:`menus.tree.instructions`)}}var et={page:oe,contentEntry:ie,term:ne,collection:ce,url:c(ae),group:d};function tt({target:e,taxonomyName:t}){let n=_(`menus`),r=et[e.kind],a=e.missing?n(`menus.chips.missing.${e.kind}`):e.kind===`term`?n(`menus.chips.term`,{taxonomy:t??n(`menus.chips.termFallback`),name:e.title??``}):e.kind===`group`?n(`menus.chips.group`):n(`menus.chips.${e.kind}`,{where:e.where??``});return(0,J.jsx)(`span`,{className:`inline-flex max-w-full min-w-0`,"data-target-kind":e.kind,children:(0,J.jsxs)(i,{variant:`outline`,icon:(0,J.jsx)(r,{}),children:[(0,J.jsx)(`span`,{className:`min-w-0 truncate`,children:a}),e.kind===`url`&&e.newTab&&(0,J.jsx)(`span`,{className:`sr-only`,children:n(`menus.chips.newTab`)})]})})}var nt={missing:!0,unpublished:!0};function Q(){let e=_(`menus`);return(t,n,r)=>{let i=n===`page`||n===`contentEntry`||n===`term`?n:`page`,a=r===`badge`?`reasons`:`explain`,o=nt[t]?`menus.hidden.${a}.${t}.${i}`:`menus.hidden.${a}.${t}`;return e(o)}}function rt({reason:e,kind:t}){let n=_(`menus`),r=Q();return(0,J.jsx)(a,{content:r(e,t,`explain`),render:(0,J.jsx)(`span`,{className:`inline-flex`,"data-hidden-reason":e,tabIndex:-1,children:(0,J.jsx)(i,{variant:e===`parent-hidden`?`secondary`:`warning`,icon:(0,J.jsx)(u,{}),children:n(`menus.hidden.badge`,{reason:r(e,t,`badge`)})})})})}function it(e){let t=s({queryKey:Y.overview(e),queryFn:()=>m.menus.list(e)}),n=new Map;for(let{menu:e}of t.data?.menus??[]){let t=r=>{for(let i of r){if(i.kind===`page`){let t=n.get(i.pageId)??[];t.includes(e.key)||n.set(i.pageId,[...t,e.key])}i.children&&t(i.children)}};t(e.items)}return n}function at({keys:e}){let t=_(`menus`),n=Z();return e?.length?(0,J.jsx)(a,{content:t(`menus.inMenu.hint`,{menus:g(e.map(n))}),render:(0,J.jsx)(`span`,{className:`inline-flex`,"data-testid":`in-menu-badge`,children:(0,J.jsx)(i,{variant:`outline`,icon:(0,J.jsx)(b,{}),children:t(`menus.inMenu.badge`)})})}):null}function $(e,t){return s({queryKey:Y.references(e,t?.kind??``,t?.id??``),queryFn:()=>m.menus.references(e,t?.kind??`page`,t?.id??``),enabled:t!==void 0})}function ot(e,t,n){return`/sites/${e}/navigation?menu=${encodeURIComponent(t.key)}&item=${encodeURIComponent(n)}`}function st({siteId:e,kind:t,id:n}){let r=_(`menus`),a=Z(),s=$(e,{kind:t,id:n}),c=(s.data??[]).reduce((e,t)=>e+t.items.length,0);return(0,J.jsx)(h,{title:r(`menus.usedIn.title`),icon:(0,J.jsx)(b,{size:16}),actions:c>0?(0,J.jsx)(i,{variant:`secondary`,children:c}):void 0,id:`used-in-menus`,children:s.data===void 0?(0,J.jsx)(l,{variant:`secondary`,size:`sm`,children:r(`common.loading`)}):s.data.length===0?(0,J.jsx)(re,{icon:(0,J.jsx)(b,{size:32,className:`text-kumo-inactive`}),title:r(`menus.usedIn.none`),description:r(`menus.usedIn.noneDescription.${t}`),contents:(0,J.jsx)(o,{href:`/sites/${e}/navigation`,variant:`inline`,children:r(`menus.usedIn.open`)})}):(0,J.jsxs)(`div`,{className:`grid gap-3`,children:[(0,J.jsx)(`dl`,{className:`grid divide-y divide-kumo-hairline`,children:s.data.flatMap(t=>t.items.map(n=>(0,J.jsxs)(`div`,{className:`flex min-w-0 items-center justify-between gap-4 py-2 first:pt-0 last:pb-0`,"data-menu-item":n.id,children:[(0,J.jsx)(l,{as:`dt`,variant:`secondary`,children:a(t.key)}),(0,J.jsx)(`dd`,{className:`min-w-0`,children:(0,J.jsx)(o,{href:ot(e,t,n.id),variant:`inline`,children:(0,J.jsx)(`span`,{className:`block truncate`,children:n.label||r(`menus.row.noLabel`)})})})]},`${t.menuId}:${n.id}`)))}),(0,J.jsx)(l,{variant:`secondary`,size:`sm`,children:r(`menus.usedIn.description.${t}`)})]})})}function ct({refs:e,kind:t}){let n=_(`menus`),r=Z(),i=(e??[]).flatMap(e=>e.items.map(t=>`${r(e.key)}: “${t.label||n(`menus.row.noLabel`)}”`));return i.length===0?null:(0,J.jsx)(`div`,{"data-testid":`menu-delete-notice`,children:(0,J.jsx)(p,{variant:`alert`,icon:(0,J.jsx)(f,{weight:`fill`}),title:n(`menus.deleteNotice.title.${t}`,{count:i.length}),description:`${i.join(` · `)}. ${n(`menus.deleteNotice.description`)}`})})}export{De as A,We as B,Me as C,Ae as D,V as E,Ie as F,T as H,G as I,W as L,Ne as M,K as N,Le as O,B as P,Ye as R,U as S,Be as T,E as U,ke as V,Re as _,st as a,Ge as b,$e as c,Z as d,it as f,Qe as g,Ze as h,tt as i,je as j,H as k,X as l,qe as m,at as n,Y as o,Je as p,ct as r,Q as s,rt as t,$ as u,Pe as v,Fe as w,q as x,ze as y,Xe as z};
2
+ //# sourceMappingURL=Menus-LUcwCsPd.js.map