@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,3 +1,3 @@
1
- import{r as e}from"./rolldown-runtime-hePW80VL.js";import{n as 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{n as a,o,t as s}from"./button-pa1bq9b85hawg41a-CmOCuL-1.js";import{S as c,_ as l,d as u,h as d}from"./tanstack-BRxyYm4G.js";import{t as f}from"./ArrowClockwise.es-BA0pzb0Y.js";import{r as p}from"./DirectionalIcon-UZJFXGY_.js";import{t as m}from"./BookOpenText.es-BfXzf_Vn.js";import{m as h,n as g,t as _}from"./skeleton-line-m9dyh126t9k07jvg-BFlcthbF.js";import{r as v}from"./House.es-BQyZgbwu.js";import{t as y}from"./inline-copy-text-gbd7jhwpor27l4rq-BGh10UAA.js";import{t as b}from"./DotsThree.es-C-pT5SgE.js";import{t as x}from"./Eye.es-DqovdtPt.js";import{t as S}from"./EyeSlash.es-YoqigHIr.js";import{a as C}from"./MediaUpload-DnGt_uIK.js";import{t as w}from"./FolderSimple.es-CbGWmBJc.js";import{t as T}from"./LinkSimple.es-BB_3GfFO.js";import{t as E}from"./checkbox-lbo436duy7krxcsk-HiD6vTuC.js";import{t as D}from"./Plus.es-XNm1OB5Q.js";import{t as O}from"./ShieldCheck.es-BOXTHH7h.js";import{t as k}from"./ShieldWarning.es-DPxoDMpT.js";import{t as A}from"./Sparkle.es-OfyfGCDe.js";import{t as j}from"./Star.es-DhrrAurR.js";import{t as ee}from"./Trash.es-CxKLVMOQ.js";import{t as te}from"./Warning.es-LZXqwHRF.js";import{n as M,t as N}from"./banner-msnmqm7of2lck01x-D6cADEpP.js";import{a as P,s as ne}from"./useMe-BkBpEyf5.js";import{t as F}from"./Toast-BsM5w6Jh.js";import{i as re,o as ie,r as ae,t as I}from"./input-c8lv9ulv0kortliq-Be2cm12J.js";import{t as L}from"./input-h5ox92gf13ge04hp-CDAaOl0A.js";import{t as R}from"./input-group-fjr4r5ax0x78ppax-Bip4khk1.js";import{t as oe}from"./clipboard-text-gd6s3n1bqse9zgt8-C151k1zC.js";import{t as z}from"./combobox-hdxtsm2gqcxxgfju-0KV94PHy.js";import{a as B,c as V,l as se,o as ce,p as H,t as U}from"./api-CHeogUo-.js";import{t as le}from"./dropdown-m53ji1d66mws89wh-BTaT-o14.js";import{t as ue}from"./collapsible-l8g94on4w7qfosmn-BXHVBN0d.js";import{t as de}from"./meter-majprsslwmpbmkzg-Bio9f57s.js";import{t as W}from"./select-futox5zqr3r80y9a-FumEl51u.js";import{t as fe}from"./switch-cqsvolm7h69z7vgg-DkSvRVQF.js";import{t as pe}from"./tabs-gf57qqf1wcclaejq-CirIVMnq.js";import{t as G}from"./table-yf8ul2e5nbemioi1-KGRDj7XO.js";import{t as me}from"./radio-35dx7y6rjrezbjsp-2D7MXAy3.js";import{n as he}from"./Crumbs-B3lDes5a.js";import{n as ge,r as K,t as q}from"./Settings-SLtgVs8u.js";import{t as _e}from"./tag-input-ohfybx5dbxy3houy-CSOSIyf4.js";import{t as J}from"./layer-dialog-j5ywmzs46ccg6oqy-nvLQiI4N.js";import{i as ve,o as ye,r as be}from"./intl-C22KAx_l.js";import{r as xe}from"./format-DGE2c-4V.js";import{L as Se,m as Ce,o as we,u as Te}from"./schedules-BHug03zB.js";import{a as Ee}from"./blocks-CvH3xqPj.js";import{t as De}from"./InsetPanel-CHSg953_.js";import{t as Oe}from"./BlockPropsForm-BoZ_Rz4z.js";import{a as ke,c as Y,i as Ae,l as je,m as Me,p as Ne,s as Pe,u as X}from"./i18n-CCHry74V.js";import{n as Fe,t as Z}from"./api-errors-c5QRmg0g.js";import{a as Ie}from"./activity-C0we9-m8.js";import{a as Le,c as Re,d as ze,i as Be,l as Ve,n as He,o as Ue,r as We,s as Ge,t as Ke,u as qe}from"./site-settings-Cmq0DkaT.js";import{C as Je,E as Ye,F as Xe,K as Ze,Q as Qe,S as $e,X as et,at as tt,ft as nt,ot as rt,z as it}from"./index-B3isvl8R.js";import{t as at}from"./schedules-api-DIiVlJET.js";import{n as ot,r as st,t as ct}from"./permalinks-CNYgOPCo.js";import{t as lt}from"./ConfirmDialog-B2yAK7lR.js";import{o as ut}from"./account-BXWuYNDB.js";import{C as dt,D as ft,E as pt,O as mt,S as ht,T as gt,_ as _t,a as vt,c as yt,f as bt,g as xt,h as St,i as Ct,k as wt,l as Tt,m as Et,n as Dt,o as Ot,p as kt,r as At,s as jt,t as Mt,u as Nt,v as Pt,w as Ft,x as It,y as Lt}from"./comment-settings-M6JXROM1.js";import{f as Rt,l as zt}from"./comments-B1PIozwq.js";import{n as Bt,r as Vt,t as Ht}from"./languages-CbQ722uB.js";import{r as Ut}from"./BlockSection-D3AuU_96.js";import{t as Wt}from"./MediaPicker-vYgMLoYO.js";import{n as Gt,t as Kt}from"./Gating-CB6Agrha.js";import{t as qt}from"./NewSiteDialog-C5ouXl1H.js";var Q=e(n(),1),$=r(),Jt={size:`base`,variant:`default`},Yt=(0,Q.forwardRef)(({value:e,defaultValue:n=``,onChange:r,onValueChange:i,onCopy:a,size:o=Jt.size,variant:s,disabled:c=!1,readOnly:l=!1,id:u,autoComplete:d=`off`,className:f,label:p,labelTooltip:m,description:h,error:g,required:_,...v},y)=>{s===`error`&&console.warn('[Kumo SensitiveInput]: variant="error" is deprecated. Error styling is now automatically applied when the `error` prop is truthy. Simply remove the variant prop and pass an error message instead.');let b=s??(g?`error`:`default`),C=typeof p==`string`?p:`Sensitive value`,w=e!==void 0,[T,E]=(0,Q.useState)(n),D=w?e:T,O=D.length>0,[k,A]=(0,Q.useState)(()=>O?`masked`:`empty`),[j,ee]=(0,Q.useState)(!1),te=(0,Q.useRef)(null),M=(0,Q.useRef)(null),N=(0,Q.useId)(),P=(0,Q.useId)(),ne=u??P,F=(0,Q.useId)(),I=(0,Q.useCallback)(e=>{te.current=e,typeof y==`function`?y(e):y&&(y.current=e)},[y]);(0,Q.useEffect)(()=>{if(j){let e=setTimeout(()=>ee(!1),2e3);return()=>clearTimeout(e)}},[j]);let L=(0,Q.useCallback)(async e=>{e.stopPropagation();try{if(typeof navigator<`u`&&navigator.clipboard&&typeof navigator.clipboard.writeText==`function`){await navigator.clipboard.writeText(D),ee(!0),a?.();return}}catch{}if(typeof document<`u`){let e=document.createElement(`textarea`);e.value=D,e.setAttribute(`readonly`,``),e.style.position=`absolute`,e.style.left=`-9999px`,document.body.appendChild(e);let t=document.getSelection(),n=t?.rangeCount?t.getRangeAt(0):null;e.select();try{document.execCommand(`copy`),ee(!0),a?.()}catch(e){console.warn(`Clipboard copy failed`,e)}finally{document.body.removeChild(e),n&&(t?.removeAllRanges(),t?.addRange(n))}}},[D,a]),R=(0,Q.useRef)(O);R.current!==O&&(R.current=O,!O&&k===`masked`&&A(`empty`));let oe=(0,Q.useCallback)(e=>{if(!c){if(M.current){let t=M.current.getBoundingClientRect();if(!(e.clientX>=t.left&&e.clientX<=t.right&&e.clientY>=t.top&&e.clientY<=t.bottom))return}k===`masked`&&O&&(A(`revealed`),l||setTimeout(()=>te.current?.focus(),0))}},[k,O,c,l]),z=(0,Q.useCallback)(e=>{e.stopPropagation(),k===`revealed`?A(`masked`):k===`empty`&&O&&A(`revealed`)},[k,O]),B=(0,Q.useCallback)(e=>{let t=e.target.value;w||E(t),k===`empty`&&t.length>0&&A(`revealed`),r?.(e),i?.(t)},[w,r,i,k]),V=(0,Q.useCallback)(e=>{M.current&&e.relatedTarget instanceof Node&&M.current.contains(e.relatedTarget)||O&&A(`masked`)},[O]),se=(0,Q.useCallback)(e=>{c||k===`masked`&&O&&(e.key===`Enter`||e.key===` `)&&(e.preventDefault(),A(`revealed`),l||setTimeout(()=>te.current?.focus(),0))},[k,O,c,l]),ce=(0,Q.useCallback)(e=>{k===`revealed`&&e.key===`Escape`&&(A(`masked`),setTimeout(()=>M.current?.focus(),0))},[k]),H=k===`masked`&&O,U=!c&&(k===`revealed`||k===`empty`&&O),le=o===`xs`||o===`sm`?`size-3`:`size-4`,ue=t(ae({size:o,variant:b,parentFocusIndicator:!0}),`group/container relative flex w-full items-center`,`focus-within:outline-2 focus-within:outline-kumo-focus`,H&&!c&&`cursor-pointer`,c&&`cursor-not-allowed`,f),de=(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(re,{ref:I,id:ne,type:k===`revealed`?`text`:`password`,value:D,onChange:B,onBlur:V,onKeyDown:ce,disabled:c,readOnly:l||H,autoComplete:d,tabIndex:H?-1:0,className:t(`kumo-input-placeholder w-full border-0 bg-transparent p-0 text-kumo-default ring-0 outline-none disabled:cursor-not-allowed disabled:text-kumo-subtle`,o===`xs`&&`pe-5`,o===`sm`&&`pe-6`,o===`base`&&`pe-8`,o===`lg`&&`pe-10`,H&&`pointer-events-none text-transparent`),"aria-hidden":H,...v}),(0,$.jsx)(`span`,{className:t(`pointer-events-none absolute inset-y-0 start-0 flex items-center overflow-hidden select-none`,o===`xs`&&`end-5`,o===`sm`&&`end-6`,o===`base`&&`end-8`,o===`lg`&&`end-10`,o===`xs`&&`px-1.5`,o===`sm`&&`px-2`,o===`base`&&`px-3`,o===`lg`&&`px-4`,!H&&`invisible`,H&&`pointer-events-auto`,`text-kumo-default`,`group/mask`),"aria-hidden":`true`,children:(0,$.jsxs)(`span`,{className:`relative`,children:[(0,$.jsx)(`span`,{className:t(H&&!c&&`group-focus-within/container:invisible group-hover/mask:invisible`),children:`••••••••`}),H&&!c&&(0,$.jsx)(`span`,{className:`invisible absolute top-0 start-0 whitespace-nowrap text-kumo-subtle group-focus-within/container:visible group-hover/mask:visible`,children:`Click to reveal`})]})}),(0,$.jsx)(`button`,{type:`button`,"data-kumo-component":`SensitiveInput`,"data-kumo-part":`toggle-visibility`,onClick:z,onKeyDown:e=>e.stopPropagation(),"aria-label":k===`revealed`?`Hide value`:`Reveal value`,tabIndex:U?0:-1,className:t(`absolute top-1/2 end-0 -translate-y-1/2 cursor-pointer text-kumo-subtle hover:text-kumo-default focus:text-kumo-default focus:ring-kumo-focus/50 focus-visible:rounded-sm focus-visible:ring-2 focus-visible:ring-kumo-brand`,`m-0 inline-flex h-auto min-h-0 items-center justify-center border-none bg-transparent p-0 shadow-none`,o===`xs`&&`end-1.5`,o===`sm`&&`end-2`,o===`base`&&`end-3`,o===`lg`&&`end-4`,le,!U&&`pointer-events-none opacity-0`),children:k===`revealed`?(0,$.jsx)(S,{className:`size-full`}):(0,$.jsx)(x,{className:`size-full`})}),O&&!c&&(0,$.jsx)(`button`,{type:`button`,"data-kumo-component":`SensitiveInput`,"data-kumo-part":`copy`,onClick:L,onKeyDown:e=>e.stopPropagation(),"aria-label":j?`Copied`:`Copy to clipboard`,className:t(`absolute -top-px end-2 -translate-y-full cursor-pointer rounded-t-md bg-kumo-brand px-2 py-0.5 text-xs text-white opacity-0 transition-opacity group-focus-within/container:opacity-100 group-hover/container:opacity-100 hover:brightness-120 focus:ring-kumo-focus/50 focus:outline-none focus-visible:ring-2 focus-visible:ring-kumo-brand`,`m-0 h-auto min-h-0 border-none shadow-none`),children:j?`Copied`:`Copy`})]}),W=(0,$.jsxs)(`div`,{children:[H?(0,$.jsx)(`div`,{ref:M,role:`button`,"data-kumo-component":`SensitiveInput`,"data-kumo-part":`masked-container`,tabIndex:c?-1:0,className:ue,onClick:oe,onKeyDown:se,"aria-label":`${C}, masked.`,"aria-describedby":`${F} ${N}`,"aria-disabled":c,children:de}):(0,$.jsx)(`div`,{ref:M,className:ue,children:de}),H&&(0,$.jsx)(`span`,{id:F,className:`sr-only`,children:`Click or press Enter to reveal.`}),(0,$.jsxs)(`span`,{id:N,className:`sr-only`,"aria-live":`polite`,children:[k===`masked`&&O&&`Value hidden`,j&&`Copied to clipboard`]})]});return p?(0,$.jsx)(ie,{label:p,required:_,labelTooltip:m,description:h,error:g?typeof g==`string`?{message:g,match:!0}:g:void 0,children:W}):W});Yt.displayName=`SensitiveInput`;function Xt({schemes:e,roles:n,notes:r=[],labels:i,className:a}){return(0,$.jsxs)(`section`,{"aria-label":i.preview,className:t(`@container grid min-w-0 gap-3`,a),children:[(0,$.jsx)(`div`,{className:t(`grid min-w-0 gap-3`,e.length>1&&`@2xl:grid-cols-2`),children:e.map(e=>{let t=t=>e.roles[t];return(0,$.jsxs)(De,{label:e.label,className:`grid gap-3`,children:[(0,$.jsx)(g,{as:`span`,bold:!0,children:e.label}),(0,$.jsxs)(`div`,{"aria-hidden":`true`,"data-scheme-sample":e.id,className:`grid gap-1.5 rounded-md px-4 py-3 ring ring-kumo-hairline`,style:{background:t(`surface`),color:t(`text`)},children:[(0,$.jsx)(`span`,{className:`text-base font-semibold`,children:i.heading}),(0,$.jsxs)(`span`,{className:`text-sm`,style:{color:t(`text-muted`)},children:[i.body,` `,(0,$.jsx)(`span`,{className:`underline`,style:{color:t(`link`)},children:i.link})]}),(0,$.jsxs)(`span`,{className:`flex flex-wrap items-center gap-2 pt-1`,children:[(0,$.jsx)(`span`,{className:`rounded-md px-3 py-1 text-sm font-medium`,style:{background:t(`brand`),color:t(`on-brand`)},children:i.button}),(0,$.jsx)(`span`,{className:`rounded-full px-2 py-0.5 text-xs font-medium`,style:{background:t(`accent`),color:t(`on-accent`)},children:i.accent}),(0,$.jsx)(`span`,{className:`rounded-md px-3 py-1 text-sm`,style:{background:t(`surface-muted`),color:t(`text`),boxShadow:`inset 0 0 0 1px ${t(`border`)}`},children:i.link})]})]}),(0,$.jsx)(`ul`,{className:`m-0 grid list-none grid-cols-1 gap-x-4 gap-y-2 p-0 @md:grid-cols-2`,children:n.map(({role:e,label:n})=>(0,$.jsxs)(`li`,{className:`flex min-w-0 items-center gap-2`,children:[(0,$.jsx)(`span`,{"aria-hidden":`true`,className:`size-4 shrink-0 rounded-sm ring ring-kumo-hairline`,style:{background:t(e)}}),(0,$.jsx)(g,{as:`span`,size:`sm`,children:n}),(0,$.jsx)(g,{as:`span`,size:`sm`,variant:`secondary`,children:(0,$.jsx)(`span`,{className:`font-mono`,children:t(e)})})]},e))})]},e.id)})}),r.length>0&&(0,$.jsxs)(`div`,{className:`grid gap-1.5`,children:[(0,$.jsx)(g,{as:`span`,size:`sm`,bold:!0,children:i.notes}),(0,$.jsx)(`ul`,{className:`m-0 grid list-disc gap-1 ps-5`,children:r.map(e=>(0,$.jsx)(`li`,{children:(0,$.jsx)(g,{as:`span`,size:`sm`,variant:`secondary`,children:e})},e))})]})]})}var Zt=/^@(cf|hf)\/[A-Za-z0-9._-]+\/[A-Za-z0-9._:-]+$/,Qt=/^[a-z0-9][a-z0-9-]{0,40}\/[A-Za-z0-9._:/-]{1,120}$/,$t=/^[a-z0-9][a-z0-9-]{0,63}$/,en=1e4,tn=e=>e instanceof B&&e.status===409,nn=e=>({enabled:e.enabled,model:Zt.test(e.model)?e.model:``,provider:Zt.test(e.model)?``:e.model,gateway:e.gateway??``,limit:String(e.dailyLimit)});function rn({siteId:e}){let{t,locale:n}=Y(`aiSettings`),r=`aiSettings`,a=c(),o=F(),u=P(`ai.settings`),p=l({queryKey:[`ai`,e,`settings`],queryFn:()=>U.ai.settings(e)}),m=p.data?.transport,h=l({queryKey:[`ai`,e,`models`],queryFn:()=>U.ai.models(e),enabled:u.allowed&&m!==void 0&&m!==`none`,staleTime:6e5,retry:!1}),v=p.data?.settings,[y,b]=(0,Q.useState)();(0,Q.useEffect)(()=>{v&&b(nn(v))},[v]);let[x,S]=(0,Q.useState)(!1);(0,Q.useEffect)(()=>{v&&(v.gateway||!Zt.test(v.model))&&S(!0)},[v]);let C=(0,Q.useMemo)(()=>{let e=h.data?.models??[];return(y?.model&&!e.some(e=>e.id===y.model)?[...e,{id:y.model,listed:!1}]:e).map(e=>({value:e.id,label:e.recommended?`${e.id} · ${t(`${r}.model.recommended`)}`:e.id,model:e}))},[h.data,y?.model,t]),w=d({mutationFn:t=>{let n=t.provider.trim();return U.ai.save(e,{enabled:t.enabled,model:n||t.model,...t.gateway.trim()?{gateway:t.gateway.trim()}:{},dailyLimit:Number(t.limit),rev:v?.rev??0})},onSuccess:async()=>{await a.invalidateQueries({queryKey:[`ai`,e]}),o.success(t(`${r}.saved`))}}),T=m===`none`,E=(0,$.jsx)($.Fragment,{children:T&&(0,$.jsx)(N,{variant:`secondary`,icon:(0,$.jsx)(M,{weight:`fill`}),title:t(`${r}.unavailable.title`),description:t(`${r}.unavailable.description`)})});if(!y||!v)return(0,$.jsx)(K,{id:`ai`,title:t(`${r}.title`),children:(0,$.jsxs)(`div`,{className:`grid gap-3`,role:`status`,children:[(0,$.jsx)(`span`,{className:`sr-only`,children:t(`common.loading`)}),(0,$.jsx)(_,{minWidth:30,maxWidth:45}),(0,$.jsx)(_,{minWidth:60,maxWidth:85})]})});let D=Number(y.limit),O=y.limit.trim()!==``&&Number.isInteger(D)&&D>=0&&D<=en,k=y.gateway.trim()===``||$t.test(y.gateway.trim()),j=y.provider.trim(),ee=j===``||Qt.test(j)&&!j.startsWith(`@`),te=j!==``&&y.gateway.trim()===``,ne=j||y.model,re=O&&k&&ee&&!te&&ne!==``,ie=nn(v),ae=JSON.stringify(y)!==JSON.stringify(ie),L=C.find(e=>e.value===y.model)??null,R=h.data?.catalog===`live`&&!j&&y.model!==``&&!(h.data.models??[]).some(e=>e.id===y.model&&e.listed),oe=e=>b({...y,...e}),B=p.data?.usage,V=!u.allowed;return(0,$.jsxs)(K,{id:`ai`,title:t(`${r}.title`),description:t(`${r}.description`),aside:v.enabled?(0,$.jsx)(i,{variant:`success`,icon:(0,$.jsx)(A,{}),children:t(`common.on`)}):void 0,footer:(0,$.jsxs)($.Fragment,{children:[ae&&(0,$.jsx)(s,{variant:`ghost`,onClick:()=>b(ie),children:t(`common.discard`)}),(0,$.jsx)(s,{variant:`primary`,disabled:!ae||!re||V,title:u.reason,loading:w.isPending,onClick:()=>w.mutate(y),children:t(`common.saveChanges`)})]}),children:[E,w.error&&(0,$.jsx)(N,{variant:tn(w.error)?`alert`:`error`,icon:(0,$.jsx)(M,{weight:`fill`}),title:t(`${r}.failed`),description:tn(w.error)?t(`${r}.conflict`):Z(t,w.error),action:tn(w.error)?(0,$.jsx)(N.Action,{variant:`secondary`,icon:(0,$.jsx)(f,{}),onClick:()=>{w.reset(),p.refetch()},children:t(`${r}.reload`)}):void 0}),R&&(0,$.jsx)(N,{variant:`alert`,icon:(0,$.jsx)(M,{weight:`fill`}),description:t(`${r}.model.gone`,{model:y.model})}),(0,$.jsxs)(`dl`,{className:`-my-3 divide-y divide-kumo-hairline`,"data-testid":`ai-settings`,children:[(0,$.jsx)(q,{label:t(`${r}.enabled.label`),hint:t(`${r}.enabled.hint`),children:(0,$.jsx)(fe,{"aria-label":t(`${r}.enabled.label`),checked:y.enabled,disabled:V,title:u.reason,onCheckedChange:e=>oe({enabled:e})})}),(0,$.jsx)(q,{label:t(`${r}.model.label`),hint:(0,$.jsxs)($.Fragment,{children:[t(`${r}.model.hint`),` `,j?t(`${r}.model.privacyProvider`,{provider:j.split(`/`)[0]??``}):t(`${r}.model.privacyWorkers`)]}),children:(0,$.jsxs)(`span`,{className:`grid w-80 max-w-full gap-1.5`,"data-testid":`ai-model`,children:[V||T||h.isError?(0,$.jsx)(g,{as:`span`,children:(0,$.jsx)(`span`,{className:`font-mono text-[0.9em]`,children:ne})}):h.isPending?(0,$.jsx)(_,{minWidth:60,maxWidth:90}):(0,$.jsxs)(z,{items:C,value:L,onValueChange:e=>oe({model:e?.value??``}),isItemEqualToValue:(e,t)=>e.value===t.value,itemToStringLabel:e=>e.label,"aria-label":t(`${r}.model.label`),disabled:j!==``,children:[(0,$.jsx)(z.TriggerInput,{placeholder:t(`${r}.model.placeholder`),clearLabel:t(`${r}.model.clear`),showOptionsLabel:t(`${r}.model.show`)}),(0,$.jsxs)(z.Content,{children:[(0,$.jsx)(z.Empty,{children:t(`${r}.model.empty`)}),(0,$.jsx)(z.List,{children:e=>(0,$.jsx)(z.Item,{value:e,children:e.label},e.value)})]})]}),L?.model.recommended&&!j&&(0,$.jsx)(g,{variant:`secondary`,size:`sm`,as:`span`,children:t(`${r}.model.notes.${L.model.recommended}`)}),L?.model.contextWindow&&!j?(0,$.jsx)(g,{variant:`secondary`,size:`sm`,as:`span`,children:t(`${r}.model.context`,{tokens:xe(n,L.model.contextWindow)})}):null,h.data?.catalog===`unavailable`&&(0,$.jsx)(g,{variant:`secondary`,size:`sm`,as:`span`,children:t(`${r}.model.catalogUnavailable`)})]})}),(0,$.jsx)(q,{label:t(`${r}.limit.label`),hint:t(`${r}.limit.hint`),children:(0,$.jsxs)(`span`,{className:`grid w-56 max-w-full gap-2`,children:[(0,$.jsx)(I,{type:`number`,inputMode:`numeric`,"aria-label":t(`${r}.limit.label`),value:y.limit,onValueChange:e=>oe({limit:e}),disabled:V,title:u.reason,error:O?void 0:t(`${r}.limit.error`),className:`w-full`}),B&&(0,$.jsx)(de,{label:t(`${r}.limit.used`,{used:xe(n,B.requests),limit:xe(n,v.dailyLimit)}),value:B.requests,max:Math.max(1,v.dailyLimit)})]})})]}),(0,$.jsxs)(ue.Root,{open:x,onOpenChange:S,children:[(0,$.jsx)(ue.DefaultTrigger,{children:t(`${r}.advanced`)}),(0,$.jsx)(ue.DefaultPanel,{children:(0,$.jsxs)(`div`,{className:`grid gap-4 pt-2`,"data-testid":`ai-advanced`,children:[(0,$.jsx)(I,{label:t(`${r}.gateway.label`),description:t(`${r}.gateway.hint`),placeholder:t(`${r}.gateway.placeholder`),value:y.gateway,onValueChange:e=>oe({gateway:e}),disabled:V,error:k?void 0:t(`${r}.gateway.error`),className:`w-full max-w-sm`}),(0,$.jsx)(I,{label:t(`${r}.provider.label`),description:t(`${r}.provider.hint`),placeholder:t(`${r}.provider.placeholder`),value:y.provider,onValueChange:e=>oe({provider:e}),disabled:V,error:ee?te?t(`${r}.provider.needsGateway`):void 0:t(`${r}.provider.error`),className:`w-full max-w-sm`})]})})]})]})}var an=`analytics`,on=e=>[`analytics`,e,`settings`],sn=e=>e instanceof B&&e.status===409,cn=e=>e instanceof B&&e.status===403;function ln({label:e,hint:t,checked:n,onChange:r,disabled:i,title:a,testId:o}){return(0,$.jsxs)(`div`,{className:`grid gap-1.5`,"data-testid":o,"data-checked":n?`on`:`off`,children:[(0,$.jsx)(fe,{label:e,checked:n,disabled:i,title:a,onCheckedChange:r}),(0,$.jsx)(g,{variant:`secondary`,size:`sm`,children:t})]})}function un(){let{t:e}=Y(`analyticsSettings`);return(0,$.jsxs)(`div`,{className:`grid gap-3`,role:`status`,children:[(0,$.jsx)(`span`,{className:`sr-only`,children:e(`common.loading`)}),(0,$.jsx)(_,{minWidth:30,maxWidth:45}),(0,$.jsx)(_,{minWidth:60,maxWidth:85}),(0,$.jsx)(_,{minWidth:50,maxWidth:70})]})}function dn({feature:e}){let{t}=Y(`analyticsSettings`),n=_t(e);return n===`ready`?null:(0,$.jsx)(`div`,{"data-analytics-deployment":n,children:(0,$.jsx)(N,{variant:`secondary`,icon:(0,$.jsx)(h,{weight:`fill`}),title:t(n===`off`?`analyticsSettings.deployment.offTitle`:`analyticsSettings.deployment.cantReadTitle`),description:t(n===`off`?`analyticsSettings.deployment.offDescription`:`analyticsSettings.deployment.cantReadDescription`)})})}function fn({feature:e}){let{t}=Y(`analyticsSettings`),n=e.enabled&&e.store!==`none`;return(0,$.jsxs)(`dl`,{className:`-mb-3 divide-y divide-kumo-hairline border-kumo-hairline border-t`,"aria-label":t(`analyticsSettings.deployment.title`),"data-testid":`analytics-deployment`,children:[(0,$.jsx)(q,{label:t(`analyticsSettings.deployment.store`),children:(0,$.jsx)(i,{variant:n?`success`:`neutral`,appearance:`dot`,children:t(`analyticsSettings.deployment.stores.${n?e.store:`none`}`)})}),n&&(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(q,{label:t(`analyticsSettings.deployment.reader`),children:(0,$.jsx)(i,{variant:e.reader===`none`?`warning`:`success`,appearance:`dot`,children:t(`analyticsSettings.deployment.readers.${e.reader}`)})}),(0,$.jsx)(q,{label:t(`analyticsSettings.deployment.rollups`),hint:t(`analyticsSettings.deployment.rollupHints.${e.rollups}`),children:(0,$.jsx)(g,{as:`span`,children:t(`analyticsSettings.deployment.rollupModes.${e.rollups}`)})}),(0,$.jsx)(q,{label:t(`analyticsSettings.deployment.liveDays`),hint:t(`analyticsSettings.deployment.liveDaysHint`),children:(0,$.jsx)(g,{as:`span`,children:t(`analyticsSettings.deployment.liveDaysValue`,{days:e.liveDays})})})]})]})}function pn({uniqueVisitors:e,unsaved:t}){let{t:n,locale:r}=Y(`analyticsSettings`);je([`analyticsSettings`],Me);let i=F(),[a,o]=(0,Q.useState)(r),c=Pe(a,`analyticsSettings.notice.heading`),l=[Pe(a,`analyticsSettings.notice.base`),...e?[Pe(a,`analyticsSettings.notice.unique`)]:[]],u=async()=>{try{await navigator.clipboard.writeText(It(c,l)),i.success(n(`analyticsSettings.notice.copied`))}catch(e){i.error(n(`errors.title`),e?Z(n,e):void 0)}};return(0,$.jsxs)(`div`,{className:`grid gap-3 border-kumo-hairline border-t pt-5`,"data-testid":`privacy-notice`,"data-variant":e?`unique`:`base`,children:[(0,$.jsxs)(`div`,{className:`flex flex-wrap items-start justify-between gap-3`,children:[(0,$.jsxs)(`div`,{className:`grid min-w-0 flex-[1_1_16rem] gap-1.5`,children:[(0,$.jsx)(g,{bold:!0,as:`h3`,children:n(`analyticsSettings.notice.title`)}),(0,$.jsx)(g,{variant:`secondary`,size:`sm`,children:n(t?`analyticsSettings.notice.hintUnsaved`:`analyticsSettings.notice.hint`)})]}),(0,$.jsxs)(`fieldset`,{className:`min-w-0 overflow-x-auto`,children:[(0,$.jsx)(`legend`,{className:`sr-only`,children:n(`analyticsSettings.notice.languages`)}),(0,$.jsx)(pe,{variant:`segmented`,size:`sm`,value:a,onValueChange:e=>o(e),tabs:Object.keys(Ne).map(e=>({value:e,label:Ne[e]}))})]})]}),(0,$.jsx)(De,{variant:`recessed`,label:n(`analyticsSettings.notice.title`),children:(0,$.jsxs)(`div`,{lang:a,className:`grid gap-1.5`,children:[(0,$.jsx)(g,{bold:!0,children:c}),l.map(e=>(0,$.jsx)(g,{children:e},e))]})}),(0,$.jsxs)(`div`,{className:`flex flex-wrap items-center justify-between gap-3`,children:[(0,$.jsx)(g,{variant:`secondary`,size:`sm`,children:n(`analyticsSettings.notice.legal`)}),(0,$.jsx)(s,{variant:`secondary`,size:`sm`,icon:(0,$.jsx)(v,{}),onClick:()=>void u(),children:n(`analyticsSettings.notice.copy`)})]})]})}function mn({open:e,onOpenChange:t,onConfirm:n}){let{t:r}=Y(`analyticsSettings`);return(0,$.jsx)(J.Alert,{open:e,onOpenChange:t,children:(0,$.jsxs)(J.Content,{size:`base`,closeLabel:r(`common.close`),children:[(0,$.jsx)(J.Title,{children:r(`analyticsSettings.unique.confirmTitle`)}),(0,$.jsx)(J.Description,{children:r(`analyticsSettings.unique.confirmDescription`)}),(0,$.jsx)(J.Body,{children:(0,$.jsxs)(`div`,{className:`grid gap-4`,children:[(0,$.jsx)(N,{variant:`alert`,icon:(0,$.jsx)(k,{weight:`fill`}),title:r(`analyticsSettings.unique.confirmBannerTitle`),description:r(`analyticsSettings.unique.confirmBanner`)}),(0,$.jsxs)(`div`,{className:`grid gap-1.5`,children:[(0,$.jsx)(g,{bold:!0,as:`span`,children:r(`analyticsSettings.unique.confirmNotice`)}),(0,$.jsx)(De,{variant:`recessed`,children:(0,$.jsx)(g,{children:r(`analyticsSettings.notice.unique`)})})]})]})}),(0,$.jsx)(J.Actions,{dismissLabel:r(`common.cancel`),children:(0,$.jsx)(J.Actions.Primary,{variant:`primary`,onClick:n,children:r(`analyticsSettings.unique.confirm`)})})]})})}function hn({siteId:e}){let{t}=Y(`analyticsSettings`),n=F(),r=c(),a=ne(),o=P(`analytics.read`),u=P(`analytics.settings`),p=l({queryKey:[`instance`],queryFn:U.instance}),m=l({queryKey:on(e),queryFn:()=>U.analytics.settings(e),enabled:!a.isPending&&o.allowed,retry:(e,t)=>!V(t)&&!cn(t)&&e<1}),h=p.data?.features.analytics??m.data?.feature,[g,_]=(0,Q.useState)(),[v,y]=(0,Q.useState)(!1),b=m.data?.settings;(0,Q.useEffect)(()=>{if(!b)return;let e=Pt(b);_(t=>t?{base:e,form:gt(t.base,t.form,e)}:{base:e,form:e})},[b]);let x=d({mutationFn:t=>U.analytics.updateSettings(e,b?.rev??0,t),onSuccess:async(i,a)=>{r.setQueryData(on(e),e=>e&&{...e,settings:i.settings}),await r.invalidateQueries({queryKey:[`analytics`,e],predicate:e=>e.queryKey[2]!==`settings`});let o=`enabled`in a||`vitalsOneIn`in a;n.success(t(`analyticsSettings.saved`),i.saltDeleted?t(`analyticsSettings.savedSaltDeleted`):o?t(i.purged?`analyticsSettings.savedPurged`:`analyticsSettings.savedNotPurged`):void 0)}}),S=(e,t)=>_(n=>n&&{...n,form:{...n.form,[e]:t}}),C=g?Lt(g.base,g.form):!1,w=()=>{g&&C&&u.allowed&&x.mutate(ht(g.base,g.form))},T=()=>{_(e=>e&&{...e,form:e.base}),x.reset()},E=()=>{x.reset(),m.refetch()},D=_t(h),O=g?D===`off`?(0,$.jsx)(i,{variant:`neutral`,appearance:`dot`,children:t(`analyticsSettings.status.notRunning`)}):g.base.enabled?(0,$.jsx)(i,{variant:`success`,appearance:`dot`,children:t(`analyticsSettings.status.on`)}):(0,$.jsx)(i,{variant:`neutral`,appearance:`dot`,children:t(`analyticsSettings.status.off`)}):null,k=(()=>{if(!o.allowed)return(0,$.jsx)(N,{variant:`secondary`,icon:(0,$.jsx)(et,{weight:`fill`}),title:t(`analyticsSettings.noAccessTitle`),description:o.reason});if(V(m.error))return(0,$.jsx)(N,{variant:`secondary`,icon:(0,$.jsx)(rt,{weight:`fill`}),title:t(`analyticsSettings.notAvailableTitle`),description:t(`analyticsSettings.notAvailableDescription`)});if(m.error&&!g)return(0,$.jsx)($e,{error:m.error,onRetry:()=>void m.refetch(),retrying:m.isFetching});if(!g)return(0,$.jsx)(un,{});let{base:e,form:n}=g,r=mt(n.vitalsOneIn),i=St.includes(n.rollupRetentionDays)?St:[...St,n.rollupRetentionDays];return(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(dn,{feature:h}),x.error&&(sn(x.error)?(0,$.jsx)(`div`,{role:`alert`,children:(0,$.jsx)(N,{variant:`alert`,icon:(0,$.jsx)(te,{weight:`fill`}),title:t(`analyticsSettings.conflictTitle`),description:t(`analyticsSettings.conflictDescription`),action:(0,$.jsx)(N.Action,{variant:`secondary`,icon:(0,$.jsx)(f,{}),onClick:E,loading:m.isFetching,children:t(`analyticsSettings.loadLatest`)})})}):(0,$.jsx)(N,{variant:`error`,size:`sm`,icon:(0,$.jsx)(M,{weight:`fill`}),title:t(`analyticsSettings.failed`),description:Z(t,x.error)})),(0,$.jsxs)(Kt,{reason:u.reason,className:`grid min-w-0 gap-5`,children:[(0,$.jsx)(ln,{testId:`analytics-enabled`,label:t(`analyticsSettings.enabled.label`),hint:t(`analyticsSettings.enabled.hint`),checked:n.enabled,onChange:e=>S(`enabled`,e),disabled:!u.allowed,title:u.reason}),(0,$.jsxs)(`div`,{className:`grid gap-3`,children:[(0,$.jsx)(ln,{testId:`analytics-unique`,label:t(`analyticsSettings.unique.label`),hint:n.enabled?t(`analyticsSettings.unique.hint`):t(`analyticsSettings.unique.hintNeedsVisits`),checked:n.uniqueVisitors,onChange:t=>{t&&!e.uniqueVisitors?y(!0):S(`uniqueVisitors`,t)},disabled:!u.allowed||!n.enabled,title:u.reason}),e.uniqueVisitors&&!n.uniqueVisitors&&(0,$.jsx)(`div`,{"data-testid":`salt-warning`,children:(0,$.jsx)(N,{variant:`alert`,size:`sm`,icon:(0,$.jsx)(te,{weight:`fill`}),title:t(`analyticsSettings.unique.offWarningTitle`),description:t(`analyticsSettings.unique.offWarning`)})})]}),(0,$.jsx)(`div`,{className:`@container`,children:(0,$.jsxs)(`div`,{className:`grid items-start gap-5 @lg:grid-cols-2`,children:[(0,$.jsx)(W,{label:t(`analyticsSettings.vitals.label`),description:`${t(`analyticsSettings.vitals.hint`)} ${r===0?t(`analyticsSettings.vitals.costOff`):t(`analyticsSettings.vitals.cost`,{percent:r})}`,value:String(n.vitalsOneIn),onValueChange:e=>S(`vitalsOneIn`,wt(String(e))),items:xt.map(e=>({value:String(e),label:t(`analyticsSettings.vitals.options.${e}`)}))}),(0,$.jsx)(W,{label:t(`analyticsSettings.retention.label`),description:t(`analyticsSettings.retention.hint`),value:ft(n.rollupRetentionDays),onValueChange:e=>S(`rollupRetentionDays`,pt(String(e))),items:i.map(e=>({value:ft(e),label:e===null?t(`analyticsSettings.retention.options.forever`):St.includes(e)?t(`analyticsSettings.retention.options.${String(e)}`):t(`analyticsSettings.retention.days`,{days:e})}))}),(0,$.jsx)(W,{label:t(`analyticsSettings.plan.label`),description:t(`analyticsSettings.plan.hint`),value:Ft(n.planHint),onValueChange:e=>S(`planHint`,dt(String(e))),items:Et.map(e=>({value:e,label:t(`analyticsSettings.plan.options.${e}`)}))})]})})]}),(0,$.jsx)(pn,{uniqueVisitors:n.uniqueVisitors,unsaved:C}),h&&(0,$.jsx)(fn,{feature:h})]})})();return(0,$.jsxs)(K,{id:an,title:t(`analyticsSettings.title`),description:t(`analyticsSettings.description`),aside:O,footer:g?(0,$.jsxs)($.Fragment,{children:[C&&(0,$.jsx)(s,{variant:`ghost`,onClick:T,disabled:x.isPending,children:t(`common.discard`)}),(0,$.jsx)(s,{variant:`primary`,onClick:w,loading:x.isPending,disabled:!u.allowed||!C,title:u.reason,children:t(`common.saveChanges`)})]}):void 0,children:[k,(0,$.jsx)(mn,{open:v,onOpenChange:y,onConfirm:()=>{S(`uniqueVisitors`,!0),y(!1)}})]})}var gn=[`surface`,`surface-muted`,`surface-raised`,`surface-inverse`,`text`,`text-muted`,`text-subtle`,`text-inverse`,`border`,`border-strong`,`brand`,`on-brand`,`accent`,`on-accent`,`link`,`focus`,`gradient`],_n=[`tonal`,`vibrant`,`neutral`,`mono`],vn=[`standard`,`high`],yn=[`light`,`dark`,`auto`];function bn(e){return e.kind===`pair`?`${e.scheme}: ${e.role} on ${e.against} ${e.direction} ${e.steps} step(s) to reach ${e.ratio}:1`:`${e.scheme}: ${e.role} ${e.direction} ${e.steps} step(s) so ${e.against} text reaches ${e.ratio}:1`}var xn=e=>e<=.04045?e/12.92:((e+.055)/1.055)**2.4,Sn=e=>e<=.0031308?12.92*e:1.055*e**(1/2.4)-.055;function Cn(e){let t=/^#?([0-9a-f]{6})$/i.exec(e.trim());if(!t)return;let n=Number.parseInt(t[1],16);return[(n>>16&255)/255,(n>>8&255)/255,(n&255)/255]}function wn([e,t,n]){let r=e=>Math.round(Math.min(1,Math.max(0,e))*255).toString(16).padStart(2,`0`);return`#${r(e)}${r(t)}${r(n)}`}function Tn(e){let[t,n,r]=e.map(xn),i=Math.cbrt(.4122214708*t+.5363325363*n+.0514459929*r),a=Math.cbrt(.2119034982*t+.6806995451*n+.1073969566*r),o=Math.cbrt(.0883024619*t+.2817188376*n+.6299787005*r),s=.2104542553*i+.793617785*a-.0040720468*o,c=1.9779984951*i-2.428592205*a+.4505937099*o,l=.0259040371*i+.7827717662*a-.808675766*o;return[s,Math.sqrt(c*c+l*l),(Math.atan2(l,c)*180/Math.PI+360)%360]}function En([e,t,n]){let r=t*Math.cos(n*Math.PI/180),i=t*Math.sin(n*Math.PI/180),a=(e+.3963377774*r+.2158037573*i)**3,o=(e-.1055613458*r-.0638541728*i)**3,s=(e-.0894841775*r-1.291485548*i)**3;return[4.0767416621*a-3.3077115913*o+.2309699292*s,-1.2684380046*a+2.6097574011*o-.3413193965*s,-.0041960863*a-.7034186147*o+1.707614701*s]}function Dn(e){let[t,n]=e,r=e[2];t=Math.min(1,Math.max(0,t));for(let e=0;e<40;e++){let e=En([t,n,r]);if(e.every(e=>e>=-5e-4&&e<=1.0005))return wn(e.map(Sn));n*=.92}return wn(En([t,0,r]).map(Sn))}function On(e,t){let n=e=>{let[t,n,r]=(Cn(e)??[0,0,0]).map(xn);return .2126*t+.7152*n+.0722*r},[r,i]=[n(e),n(t)].sort((e,t)=>t-e);return(r+.05)/(i+.05)}var kn={tonal:{primary:.09,neutral:.012},vibrant:{primary:.17,neutral:.02},neutral:{primary:.05,neutral:.006},mono:{primary:0,neutral:0}},An=[[`text`,`surface`,4.5,7],[`text`,`surface-muted`,4.5,7],[`text`,`surface-raised`,4.5,7],[`text-muted`,`surface`,4.5,7],[`text-muted`,`surface-muted`,4.5,7],[`text-subtle`,`surface`,4.5,4.5],[`text-inverse`,`surface-inverse`,4.5,7],[`link`,`surface`,4.5,7],[`brand`,`surface`,3,3],[`focus`,`surface`,3,3],[`border-strong`,`surface`,3,3]];function jn(e,t,n,r,i,a){let o=()=>On(Dn(e[t]),Dn(e[n]))>=r;if(o())return;let s=e[t][0]>=e[n][0],c=0,l=!1;for(let n=0;n<200&&!o();n++){let n=e[t];if(s&&n[0]>=1||!s&&n[0]<=0){if(l)break;s=!s,l=!0}e[t]=[Math.min(1,Math.max(0,n[0]+(s?.01:-.01))),n[1],n[2]],c++}i.push({scheme:a,kind:`pair`,role:t,against:n,direction:s?`lightened`:`darkened`,steps:c,ratio:r})}function Mn(e){let t=e.scheme??`tonal`,n=e.contrast??`standard`,r=e.mode??`light`,[i,a,o]=Tn(Cn(e.seed)??[.094,.094,.106]),{primary:s,neutral:c}=kn[t],l=a,u=(o+60)%360,d=u>=50&&u<=115?(o+150)%360:u,f=e=>[e,c,o],p=(e,t=s)=>[e,t,o],m=[],h=e=>{let t=e?{surface:f(.17),"surface-muted":f(.21),"surface-raised":f(.3),"surface-inverse":f(.95),text:f(.95),"text-muted":f(.8),"text-subtle":f(.7),"text-inverse":f(.2),border:f(.3),"border-strong":f(.5),brand:[Math.max(.7,i),l,o],"on-brand":f(.16),accent:[.74,Math.max(s,.06),d],"on-accent":f(.16),link:p(.8,Math.max(s,.06)),focus:p(.75,Math.max(s,.08))}:{surface:f(.995),"surface-muted":f(.965),"surface-raised":[1,0,o],"surface-inverse":f(.21),text:f(.21),"text-muted":f(.44),"text-subtle":f(.55),"text-inverse":f(.98),border:f(.92),"border-strong":f(.65),brand:[i,l,o],"on-brand":[1,0,o],accent:[.55,Math.max(s,.06),d],"on-accent":[1,0,o],link:p(.45,Math.max(s,.06)),focus:p(.55,Math.max(s,.08))};for(let r=0;r<2;r++)for(let[r,i,a,o]of An)jn(t,r,i,n===`high`?o:a,m,e?`dark`:`light`);let r=n===`high`?7:4.5,a=[1,0,o],c=f(.16);for(let[n,i]of[[`on-brand`,`brand`],[`on-accent`,`accent`]]){let o=e=>On(Dn(e),Dn(t[i]));if(t[n]=o(a)>=o(c)?a:c,o(t[n])>=r)continue;t[n]=e?c:a;let s=0;for(;o(t[n])<r&&s<100;){let n=t[i];t[i]=[Math.min(1,Math.max(0,n[0]+(e?.01:-.01))),n[1],n[2]],s++}m.push({scheme:e?`dark`:`light`,kind:`fill`,role:i,against:n,direction:e?`lightened`:`darkened`,steps:s,ratio:r})}let u=Object.fromEntries(gn.filter(e=>e!==`gradient`).map(e=>[e,Dn(t[e])]));return u.gradient=Pn(u.brand,u[`on-brand`],r),u};return{light:h(!1),dark:h(!0),mode:r,notes:m.map(bn),repairs:m}}function Nn(e){let t=e.brand??`#18181b`,n=On(`#ffffff`,t)>=On(`#18181b`,t)?`#ffffff`:`#18181b`;return{surface:e.surface??`#ffffff`,"surface-muted":`#f4f4f5`,"surface-raised":`#ffffff`,"surface-inverse":`#18181b`,text:e.text??`#18181b`,"text-muted":`#52525b`,"text-subtle":`#71717a`,"text-inverse":`#ffffff`,border:`#e4e4e7`,"border-strong":`#d4d4d8`,brand:t,"on-brand":n,accent:e.link??`#0369a1`,"on-accent":`#ffffff`,link:e.link??`#0369a1`,focus:t,gradient:Pn(t,n,4.5)}}function Pn(e,t,n){let[r,i,a]=Tn(Cn(e)??[0,0,0]),o=On(t,`#000000`)>On(t,`#ffffff`)?-.01:.01,s=(a+40)%360,c=s>=50&&s<=115?(a+320)%360:s,l=[Math.min(1,Math.max(0,r+o*8)),i,c];for(let e=0;e<100&&On(t,Dn(l))<n;e++)l=[Math.min(1,Math.max(0,l[0]+o)),l[1],l[2]];return Dn(l)}var Fn=/^#[0-9a-fA-F]{6}$/;function In(e,t){let n=n=>{let r=e[n];if(typeof r==`string`&&Fn.test(r))return r.toLowerCase();let i=t[n]?.default;return typeof i==`string`&&Fn.test(i)?i.toLowerCase():void 0},r=(t,n,r)=>{let i=e[t];return typeof i==`string`&&n.includes(i)?i:r},i=r(`mode`,yn,`light`),a=r(`contrast`,vn,`standard`),o=typeof e.seed==`string`&&Fn.test(e.seed)?e.seed.toLowerCase():void 0;if(`seed`in t&&(o||i!==`light`)){let e={seed:o??n(`brand`)??`#18181b`,scheme:r(`scheme`,_n,`tonal`),contrast:a,mode:i},t=Mn(e);return{...t,source:`seed`,settings:e,seedAvailable:!0,pairs:Ln(t,a)}}let s=Nn({brand:n(`brand`),link:n(`link`),surface:n(`surface`),text:n(`text`)}),c={light:s,dark:s,mode:`light`,notes:[],repairs:[]};return{...c,source:`legacy`,settings:null,seedAvailable:`seed`in t,pairs:Ln(c,`standard`)}}function Ln(e,t=`standard`){let n=e=>Math.round(e*100)/100,r=t===`high`?7:4.5;return[...An.map(([e,n,r,i])=>({foreground:e,background:n,needs:t===`high`?i:r})),{foreground:`on-brand`,background:`brand`,needs:r},{foreground:`on-accent`,background:`accent`,needs:r},{foreground:`on-brand`,background:`gradient`,needs:r}].map(t=>({...t,light:n(On(e.light[t.foreground],e.light[t.background])),dark:n(On(e.dark[t.foreground],e.dark[t.background]))}))}function Rn({properties:e,values:t}){let n=X(`appearance`),r=(0,Q.useMemo)(()=>In(t,e),[t,e]);return(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(Xt,{schemes:[{id:`light`,label:n(`appearance.light`),roles:r.light},...r.source===`seed`?[{id:`dark`,label:n(`appearance.dark`),roles:r.dark}]:[]],roles:gn.map(e=>({role:e,label:n(`appearance.roles.${e}`)})),notes:r.repairs.map(e=>n(e.kind===`pair`?`appearance.repairPair`:`appearance.repairFill`,{scheme:n(`appearance.${e.scheme}`),role:n(`appearance.roles.${e.role}`),against:n(`appearance.roles.${e.against}`),direction:n(`appearance.${e.direction}`),steps:String(e.steps),ratio:String(e.ratio)})),labels:{preview:n(`appearance.preview`),heading:n(`appearance.heading`),body:n(`appearance.body`),link:n(`appearance.link`),button:n(`appearance.button`),accent:n(`appearance.accent`),notes:n(`appearance.notes`)}}),r.source===`legacy`&&r.seedAvailable&&(0,$.jsx)(g,{variant:`secondary`,size:`sm`,children:n(`appearance.legacy`)})]})}var zn=`appearance`,Bn=e=>e instanceof B&&e.status===409;function Vn({siteId:e}){let{t,locale:n}=Y(),r=c(),i=F(),a=P(`settings.write`),o=Ut(),u=[`theme-settings`,e],f=l({queryKey:u,queryFn:()=>U.themeSettings.get(e)}).data,[p,m]=(0,Q.useState)();(0,Q.useEffect)(()=>{f&&m(f.values)},[f]);let h=(0,Q.useMemo)(()=>f?.schema&&p?Ee(f.schema,p):[],[f,p]),v=d({mutationFn:t=>U.themeSettings.save(e,{rev:f?.rev??0,values:t}),onSuccess:async()=>{i.success(t(`siteSettings.appearance.saved`)),await r.invalidateQueries({queryKey:u}),await r.invalidateQueries({queryKey:[`site`,e]})}}),y=t(`siteSettings.sections.appearance`);if(!f||!p)return(0,$.jsx)(K,{id:zn,title:y,children:(0,$.jsx)(_,{})});if(!f.schema)return(0,$.jsx)(K,{id:zn,title:y,description:t(`siteSettings.appearance.none`,{theme:f.theme})});let b=f.schema.properties,x=`seed`in b||`brand`in b,S=JSON.stringify(p)!==JSON.stringify(f.values),C=!a.allowed;return(0,$.jsxs)(K,{id:zn,title:y,description:t(`siteSettings.appearance.description`,{theme:f.theme}),footer:(0,$.jsxs)($.Fragment,{children:[S&&(0,$.jsx)(s,{variant:`ghost`,onClick:()=>m(f.values),children:t(`common.discard`)}),(0,$.jsx)(s,{variant:`primary`,disabled:!S||h.length>0||C,title:a.reason,loading:v.isPending,onClick:()=>v.mutate(p),children:t(`common.saveChanges`)})]}),children:[v.error&&(0,$.jsx)(N,{variant:Bn(v.error)?`alert`:`error`,icon:(0,$.jsx)(M,{weight:`fill`}),title:t(`siteSettings.appearance.failed`),description:Bn(v.error)?t(`siteSettings.conflictDescription`):v.error instanceof Error?Z(t,v.error):String(v.error)}),(0,$.jsxs)(`div`,{className:`grid min-w-0 gap-4`,"data-appearance-form":``,children:[(0,$.jsx)(Oe,{schema:f.schema,value:p,onChange:m,issues:h,locale:n,disabled:C,enumLabel:o,labels:{item:t(`editor.blocks.item`,Ae(`n`)),addItem:t(`editor.blocks.addItem`),removeItem:t(`editor.blocks.removeItem`),moveUp:t(`editor.blocks.moveUp`),moveDown:t(`editor.blocks.moveDown`)}}),x&&(0,$.jsx)(Q.Suspense,{fallback:(0,$.jsx)(_,{}),children:(0,$.jsx)(Rn,{properties:b,values:p})}),(0,$.jsx)(g,{variant:`secondary`,size:`sm`,children:C&&a.reason?a.reason:t(`siteSettings.appearance.publishHint`)})]})]})}var Hn=`chrome`,Un={get:e=>H(`/api/sites/${e}/chrome`),save:(e,t)=>H(`/api/sites/${e}/chrome`,{method:`PUT`,...se(t)})},Wn={header:[`header`],footer:[`footer`],bars:[`announcement`,`consent`],brand:[`brand`]},Gn=[`logo`,`logoDark`],Kn=/^asset:(.+)$/,qn=e=>e instanceof B&&e.status===409;function Jn(e,t){let n={...e.properties};for(let e of t)delete n[e];return{...e,properties:n}}function Yn({siteId:e,defaultLocale:t,label:n,value:r,onChange:i,disabled:a}){let{t:o}=Y(`appearance`),[c,u]=(0,Q.useState)(!1),d=typeof r==`string`?Kn.exec(r)?.[1]:void 0,f=l({queryKey:[`asset`,e,d],queryFn:()=>U.assets.get(e,d),enabled:d!==void 0});return(0,$.jsxs)(`div`,{className:`grid gap-2`,"data-logo-field":``,children:[(0,$.jsx)(g,{bold:!0,as:`span`,children:n}),(0,$.jsxs)(`div`,{className:`flex flex-wrap items-center gap-3`,children:[d&&f.data?(0,$.jsx)(`div`,{className:`w-32`,children:(0,$.jsx)(C,{siteId:e,asset:f.data.asset,size:`thumb`})}):d?(0,$.jsx)(_,{}):(0,$.jsx)(g,{variant:`secondary`,size:`sm`,children:o(`appearance.chrome.noLogo`)}),(0,$.jsx)(s,{variant:`secondary`,disabled:a,onClick:()=>u(!0),children:o(d?`appearance.chrome.replaceLogo`:`appearance.chrome.chooseLogo`)}),d&&(0,$.jsx)(s,{variant:`ghost`,disabled:a,onClick:()=>i(void 0),children:o(`appearance.chrome.removeLogo`)})]}),(0,$.jsx)(Wt,{siteId:e,defaultLocale:t,open:c,onOpenChange:u,currentId:d,onPick:e=>i(`asset:${e.asset.id}`)})]})}function Xn({siteId:e,defaultLocale:t}){let{t:n,locale:r}=Y(`appearance`),i=c(),a=F(),o=P(`settings.write`),u=Ut(),f=[`chrome`,e],p=l({queryKey:f,queryFn:()=>Un.get(e)}).data,m=(0,Q.useMemo)(()=>p?{brand:p.brand,header:p.header,footer:p.footer,announcement:p.announcement,consent:p.consent}:void 0,[p]),[h,v]=(0,Q.useState)(),[y,b]=(0,Q.useState)(`header`);(0,Q.useEffect)(()=>{m&&v(m)},[m]);let x=(0,Q.useMemo)(()=>!p||!h?{brand:[],header:[],footer:[],announcement:[],consent:[]}:{brand:Ee(Jn(p.schemas.brand,Gn),h.brand),header:Ee(p.schemas.header,h.header),footer:Ee(p.schemas.footer,h.footer),announcement:Ee(p.schemas.announcement,h.announcement),consent:Ee(p.schemas.consent,h.consent)},[p,h]),S=d({mutationFn:t=>Un.save(e,{rev:p?.rev??0,...t}),onSuccess:async()=>{a.success(n(`appearance.chrome.saved`)),await i.invalidateQueries({queryKey:f}),await i.invalidateQueries({queryKey:[`site`,e]})}}),C=n(`appearance.chrome.title`);if(!p||!h)return(0,$.jsx)(K,{id:Hn,title:C,children:(0,$.jsx)(_,{})});let w=JSON.stringify(h)!==JSON.stringify(m),T=Object.values(x).some(e=>e.length>0),E=!o.allowed,D=e=>t=>v(n=>n&&{...n,[e]:t}),O={item:n(`editor.blocks.item`,Ae(`n`)),addItem:n(`editor.blocks.addItem`),removeItem:n(`editor.blocks.removeItem`),moveUp:n(`editor.blocks.moveUp`),moveDown:n(`editor.blocks.moveDown`)},k=e=>{let t=p.schemas.brand.properties[e]?.title;return typeof t==`string`?t:t?.[r]??t?.en??e};return(0,$.jsxs)(K,{id:Hn,title:C,description:n(`appearance.chrome.description`),footer:(0,$.jsxs)($.Fragment,{children:[w&&m&&(0,$.jsx)(s,{variant:`ghost`,onClick:()=>v(m),children:n(`common.discard`)}),(0,$.jsx)(s,{variant:`primary`,disabled:!w||T||E,title:o.reason,loading:S.isPending,onClick:()=>S.mutate(h),children:n(`common.saveChanges`)})]}),children:[S.error&&(0,$.jsx)(N,{variant:qn(S.error)?`alert`:`error`,icon:(0,$.jsx)(M,{weight:`fill`}),title:n(`appearance.chrome.failed`),description:qn(S.error)?n(`siteSettings.conflictDescription`):S.error instanceof Error?Z(n,S.error):String(S.error)}),(0,$.jsxs)(`div`,{className:`grid min-w-0 gap-4`,"data-chrome-form":``,children:[(0,$.jsx)(pe,{variant:`segmented`,value:y,onValueChange:e=>b(e),tabs:[{value:`header`,label:n(`appearance.chrome.header`)},{value:`footer`,label:n(`appearance.chrome.footer`)},{value:`bars`,label:n(`appearance.chrome.bars`)},{value:`brand`,label:n(`appearance.chrome.brand`)}]}),y===`brand`&&Gn.map(n=>(0,$.jsx)(Yn,{siteId:e,defaultLocale:t,label:k(n),value:h.brand[n],disabled:E,onChange:e=>{let t={...h.brand};e?t[n]=e:delete t[n],D(`brand`)(t)}},n)),Wn[y].map(e=>(0,$.jsxs)(`div`,{className:`grid min-w-0 gap-4`,children:[y===`bars`&&(0,$.jsx)(g,{bold:!0,as:`h3`,children:n(e===`announcement`?`appearance.chrome.announcement`:`appearance.chrome.consent`)}),(0,$.jsx)(Oe,{schema:e===`brand`?Jn(p.schemas.brand,Gn):p.schemas[e],value:h[e],onChange:D(e),issues:x[e],locale:r,disabled:E,enumLabel:u,labels:O})]},e)),(0,$.jsx)(g,{variant:`secondary`,size:`sm`,children:E&&o.reason?o.reason:n(`appearance.chrome.menusPublish`,{menus:ke(p.menus)})})]})]})}var Zn=/^(\/[a-z0-9]+(?:-[a-z0-9]+)*)+$/;function Qn(e,t){return[...new Set([...Object.keys(e.collections??{}),...t.map(e=>e.collection)])].sort()}function $n(e,t){return Object.fromEntries(t.map(t=>{let n=e.collections?.[t]?.permalink;return[t,n?st(n):``]}))}function er(e){let t=e.trim();if(t!==``)return t.startsWith(`/`)?t.length>1&&t.endsWith(`/`)?`trailingSlash`:Zn.test(t)?void 0:`invalid`:`slash`}function tr(e,t){let n={...e.collections};for(let[e,r]of Object.entries(t)){let t=r.trim(),{permalink:i,...a}=n[e]??{};t&&t!==`/${e}`?n[e]={...a,permalink:`${t}/{slug}`}:Object.keys(a).length?n[e]=a:delete n[e]}let{collections:r,...i}=e;return Object.keys(n).length?{...i,collections:n}:i}function nr(e,t){let n=tr(e,t);return Object.keys(t).filter(t=>ct(e,t)!==ct(n,t))}function rr(e,t,n){let r=e=>(e.status===`published`?0:2)+(e.locale===n?0:1);return e.filter(e=>e.collection===t).sort((e,t)=>r(e)-r(t)||t.updatedAt.localeCompare(e.updatedAt))[0]}function ir(e,t,n){return{now:ot(e,n),next:ot(tr(e,t),n)}}function ar(e){return e instanceof B&&(e.body?.error===`path_conflict`||e.body?.error===`reserved_path`)}function or(e,t){if(!ar(e))return;let n=/collection "([a-z0-9-]+)"/.exec(e.body?.message??``);return n?.[1]&&t.includes(n[1])?n[1]:t[0]}function sr({onReload:e,reloading:t}){let n=X();return(0,$.jsx)(`div`,{role:`alert`,children:(0,$.jsx)(N,{variant:`alert`,icon:(0,$.jsx)(te,{weight:`fill`}),title:n(`siteSettings.conflictTitle`),description:n(`siteSettings.conflictDescription`),action:(0,$.jsx)(N.Action,{variant:`secondary`,icon:(0,$.jsx)(f,{}),onClick:e,loading:t,children:n(`siteSettings.loadLatest`)})})})}var cr=`collections`;function lr({siteId:e}){let t=X(),n=c(),r=F(),i=P(`settings.write`),a=l({queryKey:[`site`,e],queryFn:()=>U.sites.get(e)}),o=l({queryKey:[`entries`,e,`all`],queryFn:()=>U.entries.list(e)}),u=a.data?Qn(a.data,o.data??[]):[],f=u.join(`,`),[p,m]=(0,Q.useState)({}),[h,g]=(0,Q.useState)(!1);(0,Q.useEffect)(()=>{a.data&&m($n(a.data,f?f.split(`,`):[]))},[a.data,f]);let v=d({mutationFn:e=>U.sites.update(tr(a.data,e)),onSuccess:async i=>{g(!1),n.setQueryData([`site`,e],i),await n.invalidateQueries({queryKey:[`sites`]}),r.success(t(`siteSettings.collections.saved`),t(`common.rev`,{rev:i.rev}))}}),y=t(`siteSettings.sections.collections`);if(!a.data||o.isPending)return(0,$.jsx)(K,{id:cr,title:y,children:(0,$.jsx)(_,{})});let b=a.data,x=nr(b,p),S=x.length>0,C=u.some(e=>er(p[e]??``)),T=or(v.error,x),E=()=>{g(!0),S&&!C&&v.mutate(p)};return(0,$.jsxs)(K,{id:cr,title:y,description:t(`siteSettings.collections.description`),footer:(0,$.jsxs)($.Fragment,{children:[S&&(0,$.jsx)(s,{variant:`ghost`,onClick:()=>{m($n(b,u)),g(!1),v.reset()},disabled:v.isPending,children:t(`common.discard`)}),(0,$.jsx)(s,{variant:`primary`,disabled:!S||!i.allowed,title:i.reason,loading:v.isPending,onClick:E,children:t(`common.saveChanges`)})]}),children:[(0,$.jsx)(ur,{error:ar(v.error)?void 0:v.error,onReload:()=>{v.reset(),a.refetch()},reloading:a.isFetching}),u.length===0?(0,$.jsx)(Ye,{icon:(0,$.jsx)(w,{size:32,className:`text-kumo-inactive`}),title:t(`siteSettings.collections.empty`),description:t(`siteSettings.collections.emptyDescription`)}):u.map(e=>(0,$.jsx)(dr,{collection:e,site:b,form:p,entries:o.data??[],disabled:!i.allowed||v.isPending,title:i.reason,showInvalid:h||(p[e]??``)!==$n(b,[e])[e],serverError:T===e?Z(t,v.error):void 0,onChange:t=>{T&&v.reset(),m(n=>({...n,[e]:t}))},onSubmit:E},e))]})}function ur({error:e,onReload:t,reloading:n}){let r=X();return e?Fe(e)?(0,$.jsx)(sr,{onReload:t,reloading:n}):(0,$.jsx)(N,{variant:`error`,size:`sm`,icon:(0,$.jsx)(M,{weight:`fill`}),title:r(`siteSettings.collections.failed`),description:Z(r,e)}):null}function dr({collection:e,site:t,form:n,entries:r,disabled:i,title:a,showInvalid:o,serverError:s,onChange:c,onSubmit:l}){let u=X(),d=n[e]??``,f=o?er(d):void 0,p=f?u(`siteSettings.collections.errors.${f}`):s,m=rr(r,e,t.defaultLocale)??{collection:e,slug:u(`siteSettings.collections.exampleSlug`)},h=ir(t,f?{...n,[e]:``}:n,m),g=h.now===h.next?u(`siteSettings.collections.preview`,{url:h.next}):u(`siteSettings.collections.previewMoved`,{url:h.next,old:h.now});return(0,$.jsxs)(R,{label:e,description:g,error:p?{message:p,match:!0}:void 0,disabled:i,title:a,children:[(0,$.jsx)(R.Input,{value:d,placeholder:`/${e}`,spellCheck:!1,autoComplete:`off`,"aria-invalid":p?!0:void 0,onChange:e=>c(e.target.value),onKeyDown:e=>{e.key===`Enter`&&(e.preventDefault(),l())}}),(0,$.jsx)(R.Addon,{align:`end`,children:`/{slug}`})]})}var fr=`comments`;function pr({label:e,hint:t,checked:n,onChange:r,disabled:i,title:a,testId:o}){return(0,$.jsxs)(`div`,{className:`grid gap-1.5`,"data-testid":o,"data-checked":n?`on`:`off`,children:[(0,$.jsx)(fe,{label:e,checked:n,disabled:i,title:a,onCheckedChange:r}),(0,$.jsx)(g,{variant:`secondary`,size:`sm`,children:t})]})}function mr({form:e,unsaved:t}){let{t:n,locale:r}=Y(`commentsSettings`);je([`commentsSettings`],Me);let i=F(),[a,o]=(0,Q.useState)(r),c=Pe(a,`commentsSettings.notice.heading`),l=[Pe(a,`commentsSettings.notice.base`),...e.protection===`turnstile`?[Pe(a,`commentsSettings.notice.turnstile`)]:[],...e.aiLabels===`workers-ai`?[Pe(a,`commentsSettings.notice.ai`)]:[]],u=async()=>{try{await navigator.clipboard.writeText(`${c}\n\n${l.join(` `)}`),i.success(n(`commentsSettings.notice.copied`))}catch(e){i.error(n(`errors.title`),e?Z(n,e):void 0)}};return(0,$.jsxs)(`div`,{className:`grid gap-3 border-kumo-hairline border-t pt-5`,"data-testid":`comments-notice`,children:[(0,$.jsxs)(`div`,{className:`flex flex-wrap items-start justify-between gap-3`,children:[(0,$.jsxs)(`div`,{className:`grid min-w-0 flex-[1_1_16rem] gap-1.5`,children:[(0,$.jsx)(g,{bold:!0,as:`h3`,children:n(`commentsSettings.notice.title`)}),(0,$.jsx)(g,{variant:`secondary`,size:`sm`,children:n(t?`commentsSettings.notice.hintUnsaved`:`commentsSettings.notice.hint`)})]}),(0,$.jsxs)(`fieldset`,{className:`min-w-0 overflow-x-auto`,children:[(0,$.jsx)(`legend`,{className:`sr-only`,children:n(`commentsSettings.notice.languages`)}),(0,$.jsx)(pe,{variant:`segmented`,size:`sm`,value:a,onValueChange:e=>o(e),tabs:Object.keys(Ne).map(e=>({value:e,label:Ne[e]}))})]})]}),(0,$.jsx)(De,{variant:`recessed`,label:n(`commentsSettings.notice.title`),children:(0,$.jsxs)(`div`,{lang:a,className:`grid gap-1.5`,children:[(0,$.jsx)(g,{bold:!0,children:c}),l.map(e=>(0,$.jsx)(g,{children:e},e))]})}),(0,$.jsxs)(`div`,{className:`flex flex-wrap items-center justify-between gap-3`,children:[(0,$.jsx)(g,{variant:`secondary`,size:`sm`,children:n(`commentsSettings.notice.legal`)}),(0,$.jsx)(s,{variant:`secondary`,size:`sm`,icon:(0,$.jsx)(v,{}),onClick:()=>void u(),children:n(`commentsSettings.notice.copy`)})]})]})}function hr({open:e,onOpenChange:t,onConfirm:n}){let{t:r}=Y(`commentsSettings`);return(0,$.jsx)(J.Alert,{open:e,onOpenChange:t,children:(0,$.jsxs)(J.Content,{size:`base`,closeLabel:r(`common.close`),children:[(0,$.jsx)(J.Title,{children:r(`commentsSettings.ai.confirmTitle`)}),(0,$.jsx)(J.Description,{children:r(`commentsSettings.ai.confirmDescription`)}),(0,$.jsx)(J.Body,{children:(0,$.jsx)(N,{variant:`alert`,icon:(0,$.jsx)(k,{weight:`fill`}),title:r(`commentsSettings.ai.label`),description:r(`commentsSettings.ai.confirmBanner`)})}),(0,$.jsx)(J.Actions,{dismissLabel:r(`common.cancel`),children:(0,$.jsx)(J.Actions.Primary,{variant:`primary`,onClick:n,children:r(`commentsSettings.ai.confirm`)})})]})})}function gr({siteId:e,info:t,canStore:n,disabled:r,title:a}){let{t:o,locale:l}=Y(`commentsSettings`),u=F(),f=c(),[p,m]=(0,Q.useState)(!1),[_,v]=(0,Q.useState)(``),y=d({mutationFn:()=>U.comments.setSecret(e,`turnstile-secret`,_.trim()),onSuccess:async()=>{v(``),m(!1),u.success(o(`commentsSettings.protection.secretSavedToast`)),await f.invalidateQueries({queryKey:zt(e)})},onError:e=>u.error(o(`commentsSettings.protection.secretFailed`),e.message)}),b=d({mutationFn:()=>U.comments.deleteSecret(e,`turnstile-secret`),onSuccess:async()=>{u.success(o(`commentsSettings.protection.secretRemovedToast`)),await f.invalidateQueries({queryKey:zt(e)})},onError:e=>u.error(o(`commentsSettings.protection.secretFailed`),e.message)});return n?t&&!p?(0,$.jsxs)(`div`,{className:`grid gap-1.5`,"data-testid":`turnstile-secret`,"data-state":`saved`,children:[(0,$.jsx)(g,{bold:!0,as:`span`,children:o(`commentsSettings.protection.secret`)}),(0,$.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,$.jsx)(i,{variant:`success`,appearance:`dot`,children:o(`commentsSettings.protection.secretSavedOn`,{date:ve(l,{dateStyle:`medium`}).format(new Date(t.updatedAt))})}),(0,$.jsx)(s,{variant:`ghost`,size:`sm`,disabled:r,title:a,onClick:()=>m(!0),children:o(`commentsSettings.protection.secretReplace`)}),(0,$.jsx)(s,{variant:`ghost`,size:`sm`,icon:(0,$.jsx)(ee,{}),loading:b.isPending,disabled:r,title:a,onClick:()=>b.mutate(),children:o(`commentsSettings.protection.secretRemove`)})]})]}):(0,$.jsxs)(`div`,{className:`grid gap-2`,"data-testid":`turnstile-secret`,"data-state":`empty`,children:[(0,$.jsx)(Yt,{label:o(`commentsSettings.protection.secret`),description:o(t?`commentsSettings.protection.secretHint`:`commentsSettings.protection.needsSecret`),value:_,onValueChange:v,autoComplete:`off`,className:`w-full`,disabled:r}),(0,$.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,$.jsx)(s,{variant:`secondary`,size:`sm`,loading:y.isPending,disabled:r||_.trim()===``,title:a,onClick:()=>y.mutate(),"data-testid":`turnstile-secret-save`,children:o(`commentsSettings.protection.secretSave`)}),t&&(0,$.jsx)(s,{variant:`ghost`,size:`sm`,onClick:()=>m(!1),children:o(`common.cancel`)})]})]}):(0,$.jsx)(N,{variant:`secondary`,size:`sm`,icon:(0,$.jsx)(h,{weight:`fill`}),title:o(`commentsSettings.protection.secret`),description:o(`commentsSettings.protection.keysMissing`)})}function _r({siteId:e}){let{t,locale:n}=Y(`commentsSettings`),r=F(),a=c(),o=ne(),u=P(`comments.read`),p=P(`comments.settings`),m=l({queryKey:[`instance`],queryFn:U.instance,retry:!1}).data?.features.comments,h=l({queryKey:zt(e),queryFn:()=>U.comments.settings(e),enabled:!o.isPending&&u.allowed&&m?.available!==!1,retry:(e,t)=>!V(t)&&e<1}),v=l({queryKey:[...Rt(e),`summary`,`today`],queryFn:()=>U.comments.summary(e,`today`),enabled:h.isSuccess,retry:!1}),y=l({queryKey:[`entries`,e,`collections`],queryFn:()=>U.entries.list(e),enabled:h.isSuccess}),[b,x]=(0,Q.useState)(),[S,C]=(0,Q.useState)(!1),[w,T]=(0,Q.useState)(!1),D=h.data?.settings;(0,Q.useEffect)(()=>{if(!D)return;let e=yt(D);x(t=>t?{base:e,form:kt(t.base,t.form,e)}:{base:e,form:e})},[D]);let k=d({mutationFn:t=>U.comments.updateSettings(e,D?.rev??0,t),onSuccess:async n=>{T(!1),a.setQueryData(zt(e),e=>e&&{...e,settings:n.settings}),r.success(t(`commentsSettings.saved`),n.purge===`none`?void 0:t(`commentsSettings.savedPurged`)),await a.invalidateQueries({queryKey:Rt(e),predicate:e=>e.queryKey[2]!==`settings`})}}),A=(e,t)=>x(n=>n&&{...n,form:{...n.form,[e]:t}}),j=b?Nt(b.base,b.form):!1,ee=b?Tt(b.form):{},re=()=>{T(!0),!(!b||!j||!p.allowed||Object.keys(ee).length>0)&&k.mutate(bt(b.base,b.form))},ie=()=>{T(!1),x(e=>e&&{...e,form:e.base}),k.reset()},ae=()=>{k.reset(),h.refetch()},L=m?.available===!1||V(h.error),R=L?(0,$.jsx)(i,{variant:`neutral`,appearance:`dot`,children:t(`commentsSettings.status.unavailable`)}):b?(0,$.jsx)(i,{variant:b.base.enabled?`success`:`neutral`,appearance:`dot`,children:t(b.base.enabled?`commentsSettings.status.on`:`commentsSettings.status.off`)}):null,oe=e=>e===null?t(`commentsSettings.closeAfter.never`):e===365?t(`commentsSettings.closeAfter.year`):t(`commentsSettings.closeAfter.days`,{days:e}),z=(e,n)=>{let r=Mt.includes(e)?Mt:[...Mt,e];return[...n?[{value:`site`,label:t(`commentsSettings.collections.sameAsSite`)}]:[],...r.map(e=>({value:jt(e),label:oe(e)}))]},B=e=>e===null?t(`commentsSettings.retention.keep`):e===183?t(`commentsSettings.retention.sixMonths`):e===365?t(`commentsSettings.retention.year`):t(`commentsSettings.retention.days`,{days:e}),se=(()=>{if(!u.allowed)return(0,$.jsx)(N,{variant:`secondary`,icon:(0,$.jsx)(et,{weight:`fill`}),title:t(`commentsSettings.noAccessTitle`),description:u.reason});if(L)return(0,$.jsx)(N,{variant:`secondary`,icon:(0,$.jsx)(tt,{weight:`fill`}),title:t(`commentsSettings.unavailableTitle`),description:t(`commentsSettings.unavailableDescription`)});if(h.error&&!b)return(0,$.jsx)($e,{error:h.error,onRetry:()=>void h.refetch(),retrying:h.isFetching});if(!b||!h.data)return(0,$.jsxs)(`div`,{className:`grid gap-3`,role:`status`,children:[(0,$.jsx)(`span`,{className:`sr-only`,children:t(`common.loading`)}),(0,$.jsx)(_,{minWidth:30,maxWidth:45}),(0,$.jsx)(_,{minWidth:60,maxWidth:85}),(0,$.jsx)(_,{minWidth:50,maxWidth:70})]});let{form:r}=b,a=!p.allowed,o=vt(r,[...new Set((y.data??[]).map(e=>e.collection))]),s=v.data?.dailyCap.used,c=e=>w&&ee[e]===!0;return(0,$.jsxs)($.Fragment,{children:[k.error&&(Fe(k.error)?(0,$.jsx)(`div`,{role:`alert`,children:(0,$.jsx)(N,{variant:`alert`,icon:(0,$.jsx)(te,{weight:`fill`}),title:t(`commentsSettings.conflictTitle`),description:t(`commentsSettings.conflictDescription`),action:(0,$.jsx)(N.Action,{variant:`secondary`,icon:(0,$.jsx)(f,{}),onClick:ae,loading:h.isFetching,children:t(`commentsSettings.loadLatest`)})})}):(0,$.jsx)(N,{variant:`error`,size:`sm`,icon:(0,$.jsx)(M,{weight:`fill`}),title:t(`commentsSettings.failed`),description:Z(t,k.error)})),(0,$.jsxs)(Kt,{reason:p.reason,className:`grid min-w-0 gap-5`,children:[(0,$.jsx)(pr,{testId:`comments-enabled`,label:t(`commentsSettings.enabled.label`),hint:t(`commentsSettings.enabled.hint`),checked:r.enabled,onChange:e=>A(`enabled`,e),disabled:a,title:p.reason}),(0,$.jsxs)(`div`,{className:`grid gap-3`,"data-testid":`comments-collections`,children:[(0,$.jsxs)(`div`,{className:`grid gap-1.5`,children:[(0,$.jsx)(g,{bold:!0,as:`span`,children:t(`commentsSettings.collections.label`)}),(0,$.jsx)(g,{variant:`secondary`,size:`sm`,children:t(`commentsSettings.collections.hint`)})]}),o.map(e=>{let n=r.collections[e];return(0,$.jsxs)(`div`,{className:`flex flex-wrap items-center justify-between gap-x-4 gap-y-2`,"data-collection":e,children:[(0,$.jsx)(E,{label:(0,$.jsxs)(`span`,{className:`font-mono text-[0.9em]`,children:[`/`,e]}),checked:n?.enabled===!0,disabled:a,onCheckedChange:t=>A(`collections`,{...r.collections,[e]:{...n??{},enabled:t}})}),n?.enabled&&(0,$.jsx)(W,{"aria-label":t(`commentsSettings.collections.closeAfter`,{collection:`/${e}`}),value:jt(n.closeAfterDays),onValueChange:t=>{let i=Ot(String(t)),{closeAfterDays:a,...o}=n;A(`collections`,{...r.collections,[e]:i===void 0?o:{...o,closeAfterDays:i}})},items:z(n.closeAfterDays??null,!0),disabled:a})]},e)})]}),(0,$.jsx)(pr,{testId:`comments-show-when-off`,label:t(`commentsSettings.showWhenOff.label`),hint:t(`commentsSettings.showWhenOff.hint`),checked:r.showWhenOff,onChange:e=>A(`showWhenOff`,e),disabled:a,title:p.reason}),(0,$.jsx)(W,{label:t(`commentsSettings.closeAfter.label`),description:t(`commentsSettings.closeAfter.hint`),value:jt(r.closeAfterDays),onValueChange:e=>A(`closeAfterDays`,Ot(String(e))??null),items:z(r.closeAfterDays,!1),disabled:a,"data-testid":`comments-close-after`}),(0,$.jsxs)(`div`,{className:`grid gap-3`,children:[(0,$.jsxs)(me.Group,{appearance:`card`,legend:t(`commentsSettings.protection.legend`),value:r.protection,onValueChange:e=>A(`protection`,e===`turnstile`?`turnstile`:`pow`),disabled:a,children:[(0,$.jsx)(me.Item,{value:`pow`,label:(0,$.jsxs)(`span`,{className:`inline-flex flex-wrap items-center gap-2`,children:[t(`commentsSettings.protection.pow`),(0,$.jsx)(i,{variant:`success`,icon:(0,$.jsx)(O,{size:16}),children:t(`commentsSettings.protection.powBadge`)})]}),description:t(`commentsSettings.protection.powHint`)}),(0,$.jsx)(me.Item,{value:`turnstile`,label:t(`commentsSettings.protection.turnstile`),description:t(`commentsSettings.protection.turnstileHint`)})]}),r.protection===`turnstile`&&(0,$.jsxs)(`div`,{className:`grid gap-4`,"data-testid":`turnstile-fields`,children:[(0,$.jsx)(I,{label:t(`commentsSettings.protection.siteKey`),description:t(`commentsSettings.protection.siteKeyHint`),value:r.turnstileSiteKey,onValueChange:e=>A(`turnstileSiteKey`,e),error:c(`turnstileSiteKey`)?t(`commentsSettings.protection.siteKeyInvalid`):void 0,spellCheck:!1,autoComplete:`off`,className:`w-full font-mono`,disabled:a}),(0,$.jsx)(gr,{siteId:e,info:h.data.secrets[`turnstile-secret`],canStore:h.data.canStoreSecrets,disabled:a,title:p.reason}),(0,$.jsx)(g,{variant:`secondary`,size:`sm`,children:t(`commentsSettings.protection.csp`)})]})]}),(0,$.jsx)(pr,{testId:`comments-no-script`,label:t(`commentsSettings.noScript.label`),hint:t(`commentsSettings.noScript.hint`),checked:r.allowWithoutScript,onChange:e=>A(`allowWithoutScript`,e),disabled:a,title:p.reason}),(0,$.jsx)(`div`,{className:`@container`,children:(0,$.jsxs)(`div`,{className:`grid items-start gap-5 @lg:grid-cols-2`,children:[(0,$.jsx)(I,{type:`number`,inputMode:`numeric`,min:0,max:10,label:t(`commentsSettings.linkLimit.label`),description:t(`commentsSettings.linkLimit.hint`),value:String(r.linkLimit),onValueChange:e=>A(`linkLimit`,e===``?NaN:Number(e)),error:c(`linkLimit`)?t(`commentsSettings.linkLimit.invalid`):void 0,className:`w-full`,disabled:a,"data-testid":`comments-link-limit`}),(0,$.jsxs)(`div`,{className:`grid gap-3`,children:[(0,$.jsx)(I,{type:`number`,inputMode:`numeric`,min:1,max:1e5,label:t(`commentsSettings.dailyCap.label`),description:t(`commentsSettings.dailyCap.hint`,{rows:3,cap:Number.isFinite(r.dailyCap)?xe(n,r.dailyCap):`—`,writes:Number.isFinite(r.dailyCap)?xe(n,r.dailyCap*3):`—`}),value:String(r.dailyCap),onValueChange:e=>A(`dailyCap`,e===``?NaN:Number(e)),error:c(`dailyCap`)?t(`commentsSettings.dailyCap.invalid`):void 0,className:`w-full`,disabled:a,"data-testid":`comments-daily-cap`}),s!==void 0&&(0,$.jsx)(de,{label:t(`commentsSettings.dailyCap.today`),value:s,max:Math.max(1,b.base.dailyCap),customValue:t(`commentsSettings.dailyCap.todayValue`,{used:xe(n,s),cap:xe(n,b.base.dailyCap)})})]}),(0,$.jsx)(_e,{label:t(`commentsSettings.words.watch`),description:t(`commentsSettings.words.watchHint`),value:r.watchWords,onValueChange:e=>A(`watchWords`,Ct(e)),error:c(`watchWords`)?t(`commentsSettings.words.invalid`):void 0,className:`w-full`,disabled:a}),(0,$.jsx)(_e,{label:t(`commentsSettings.words.blocked`),description:t(`commentsSettings.words.blockedHint`),value:r.blockedWords,onValueChange:e=>A(`blockedWords`,Ct(e)),error:c(`blockedWords`)?t(`commentsSettings.words.invalid`):void 0,className:`w-full`,disabled:a})]})}),(0,$.jsx)(pr,{testId:`comments-ai`,label:t(`commentsSettings.ai.label`),hint:m?.aiLabels?t(`commentsSettings.ai.hint`):t(`commentsSettings.ai.hintUnavailable`),checked:r.aiLabels===`workers-ai`,onChange:e=>{e&&b.base.aiLabels!==`workers-ai`?C(!0):A(`aiLabels`,e?`workers-ai`:`off`)},disabled:a||!m?.aiLabels&&r.aiLabels!==`workers-ai`,title:p.reason}),(0,$.jsxs)(`div`,{className:`grid gap-3 border-kumo-hairline border-t pt-5`,"data-testid":`comments-retention`,children:[(0,$.jsxs)(`div`,{className:`grid gap-1.5`,children:[(0,$.jsx)(g,{bold:!0,as:`h3`,children:t(`commentsSettings.retention.title`)}),(0,$.jsx)(g,{variant:`secondary`,size:`sm`,children:t(`commentsSettings.retention.hint`)})]}),(0,$.jsx)(`div`,{className:`@container`,children:(0,$.jsx)(`div`,{className:`grid items-start gap-5 @lg:grid-cols-2`,children:Dt.map(e=>{let n=r.retention[e],i=At[e].includes(n)?At[e]:[...At[e],n];return(0,$.jsx)(W,{label:t(`commentsSettings.retention.${e}`),value:jt(n),onValueChange:t=>{let i=Ot(String(t));A(`retention`,{...r.retention,[e]:i===void 0?n:i})},items:i.map(e=>({value:jt(e),label:B(e)})),className:`w-full`,disabled:a},e)})})})]})]}),(0,$.jsx)(mr,{form:r,unsaved:j})]})})();return(0,$.jsxs)(K,{id:fr,title:t(`commentsSettings.title`),description:t(`commentsSettings.description`),aside:R,footer:b&&!L?(0,$.jsxs)($.Fragment,{children:[j&&(0,$.jsx)(s,{variant:`ghost`,onClick:ie,disabled:k.isPending,children:t(`common.discard`)}),(0,$.jsx)(s,{variant:`primary`,onClick:re,loading:k.isPending,disabled:!p.allowed||!j,title:p.reason,"data-testid":`comments-settings-save`,children:t(`common.saveChanges`)})]}):void 0,children:[se,(0,$.jsx)(hr,{open:S,onOpenChange:C,onConfirm:()=>{A(`aiLabels`,`workers-ai`),C(!1)}})]})}var vr=`design`,yr=24e3,br=[`## Brand`,``,`## Colors`,``,`## Typography`,``,`## Layout`,``,`## Components`,``,`## Imagery`,``,`## Pages`,``,`## Do`,``,`## Don't`,``].join(`
1
+ import{r as e}from"./rolldown-runtime-hePW80VL.js";import{n as 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{n as a,o,t as s}from"./button-pa1bq9b85hawg41a-CmOCuL-1.js";import{S as c,_ as l,d as u,h as d}from"./tanstack-BRxyYm4G.js";import{t as f}from"./ArrowClockwise.es-BA0pzb0Y.js";import{r as p}from"./DirectionalIcon-UZJFXGY_.js";import{t as m}from"./BookOpenText.es-BfXzf_Vn.js";import{m as h,n as g,t as _}from"./skeleton-line-m9dyh126t9k07jvg-BFlcthbF.js";import{r as v}from"./House.es-BQyZgbwu.js";import{t as y}from"./inline-copy-text-gbd7jhwpor27l4rq-BGh10UAA.js";import{t as b}from"./DotsThree.es-C-pT5SgE.js";import{t as x}from"./Eye.es-DqovdtPt.js";import{t as S}from"./EyeSlash.es-YoqigHIr.js";import{a as C}from"./MediaUpload-DzoYV1Ni.js";import{t as w}from"./FolderSimple.es-CbGWmBJc.js";import{t as T}from"./LinkSimple.es-BB_3GfFO.js";import{t as E}from"./checkbox-lbo436duy7krxcsk-HiD6vTuC.js";import{t as D}from"./Plus.es-XNm1OB5Q.js";import{t as O}from"./ShieldCheck.es-BOXTHH7h.js";import{t as k}from"./ShieldWarning.es-DPxoDMpT.js";import{t as A}from"./Sparkle.es-OfyfGCDe.js";import{t as j}from"./Star.es-DhrrAurR.js";import{t as ee}from"./Trash.es-CxKLVMOQ.js";import{t as te}from"./Warning.es-LZXqwHRF.js";import{n as M,t as N}from"./banner-msnmqm7of2lck01x-D6cADEpP.js";import{a as P,s as ne}from"./useMe-BkBpEyf5.js";import{t as F}from"./Toast-BsM5w6Jh.js";import{i as re,o as ie,r as ae,t as I}from"./input-c8lv9ulv0kortliq-Be2cm12J.js";import{t as L}from"./input-h5ox92gf13ge04hp-CDAaOl0A.js";import{t as R}from"./input-group-fjr4r5ax0x78ppax-Bip4khk1.js";import{t as oe}from"./clipboard-text-gd6s3n1bqse9zgt8-C151k1zC.js";import{t as z}from"./combobox-hdxtsm2gqcxxgfju-DEsFIzc-.js";import{a as B,c as V,l as se,o as ce,p as H,t as U}from"./api-CHeogUo-.js";import{t as le}from"./dropdown-m53ji1d66mws89wh-BTaT-o14.js";import{t as ue}from"./collapsible-l8g94on4w7qfosmn-De4SMvUy.js";import{t as de}from"./meter-majprsslwmpbmkzg-Bio9f57s.js";import{t as W}from"./select-futox5zqr3r80y9a-FumEl51u.js";import{t as fe}from"./switch-cqsvolm7h69z7vgg-DkSvRVQF.js";import{t as pe}from"./tabs-gf57qqf1wcclaejq-CirIVMnq.js";import{t as G}from"./table-yf8ul2e5nbemioi1-KGRDj7XO.js";import{t as me}from"./radio-35dx7y6rjrezbjsp-2D7MXAy3.js";import{n as he}from"./Crumbs-B3lDes5a.js";import{n as ge,r as K,t as q}from"./Settings-CRS_oj46.js";import{t as _e}from"./tag-input-ohfybx5dbxy3houy-sHF6otfN.js";import{t as J}from"./layer-dialog-j5ywmzs46ccg6oqy-uKC-1DCk.js";import{i as ve,o as ye,r as be}from"./intl-C22KAx_l.js";import{r as xe}from"./format-DGE2c-4V.js";import{L as Se,m as Ce,o as we,u as Te}from"./schedules-BHug03zB.js";import{a as Ee}from"./blocks-CvH3xqPj.js";import{t as De}from"./InsetPanel-CHSg953_.js";import{t as Oe}from"./BlockPropsForm-BoZ_Rz4z.js";import{a as ke,c as Y,i as Ae,l as je,m as Me,p as Ne,s as Pe,u as X}from"./i18n-CCHry74V.js";import{n as Fe,t as Z}from"./api-errors-c5QRmg0g.js";import{a as Ie}from"./activity-C0we9-m8.js";import{a as Le,c as Re,d as ze,i as Be,l as Ve,n as He,o as Ue,r as We,s as Ge,t as Ke,u as qe}from"./site-settings-Cmq0DkaT.js";import{C as Je,E as Ye,F as Xe,K as Ze,Q as Qe,S as $e,X as et,at as tt,ft as nt,ot as rt,z as it}from"./index-OjH3NEOH.js";import{t as at}from"./schedules-api-DIiVlJET.js";import{n as ot,r as st,t as ct}from"./permalinks-XTIdpYm2.js";import{t as lt}from"./ConfirmDialog-DDDZap6y.js";import{o as ut}from"./account-BXWuYNDB.js";import{C as dt,D as ft,E as pt,O as mt,S as ht,T as gt,_ as _t,a as vt,c as yt,f as bt,g as xt,h as St,i as Ct,k as wt,l as Tt,m as Et,n as Dt,o as Ot,p as kt,r as At,s as jt,t as Mt,u as Nt,v as Pt,w as Ft,x as It,y as Lt}from"./comment-settings-M6JXROM1.js";import{f as Rt,l as zt}from"./comments-B1PIozwq.js";import{n as Bt,r as Vt,t as Ht}from"./languages-CbQ722uB.js";import{r as Ut}from"./BlockSection-D3AuU_96.js";import{t as Wt}from"./MediaPicker-BrpNGScc.js";import{n as Gt,t as Kt}from"./Gating-BBlmTEBr.js";import{t as qt}from"./NewSiteDialog-kpjWtalR.js";var Q=e(n(),1),$=r(),Jt={size:`base`,variant:`default`},Yt=(0,Q.forwardRef)(({value:e,defaultValue:n=``,onChange:r,onValueChange:i,onCopy:a,size:o=Jt.size,variant:s,disabled:c=!1,readOnly:l=!1,id:u,autoComplete:d=`off`,className:f,label:p,labelTooltip:m,description:h,error:g,required:_,...v},y)=>{s===`error`&&console.warn('[Kumo SensitiveInput]: variant="error" is deprecated. Error styling is now automatically applied when the `error` prop is truthy. Simply remove the variant prop and pass an error message instead.');let b=s??(g?`error`:`default`),C=typeof p==`string`?p:`Sensitive value`,w=e!==void 0,[T,E]=(0,Q.useState)(n),D=w?e:T,O=D.length>0,[k,A]=(0,Q.useState)(()=>O?`masked`:`empty`),[j,ee]=(0,Q.useState)(!1),te=(0,Q.useRef)(null),M=(0,Q.useRef)(null),N=(0,Q.useId)(),P=(0,Q.useId)(),ne=u??P,F=(0,Q.useId)(),I=(0,Q.useCallback)(e=>{te.current=e,typeof y==`function`?y(e):y&&(y.current=e)},[y]);(0,Q.useEffect)(()=>{if(j){let e=setTimeout(()=>ee(!1),2e3);return()=>clearTimeout(e)}},[j]);let L=(0,Q.useCallback)(async e=>{e.stopPropagation();try{if(typeof navigator<`u`&&navigator.clipboard&&typeof navigator.clipboard.writeText==`function`){await navigator.clipboard.writeText(D),ee(!0),a?.();return}}catch{}if(typeof document<`u`){let e=document.createElement(`textarea`);e.value=D,e.setAttribute(`readonly`,``),e.style.position=`absolute`,e.style.left=`-9999px`,document.body.appendChild(e);let t=document.getSelection(),n=t?.rangeCount?t.getRangeAt(0):null;e.select();try{document.execCommand(`copy`),ee(!0),a?.()}catch(e){console.warn(`Clipboard copy failed`,e)}finally{document.body.removeChild(e),n&&(t?.removeAllRanges(),t?.addRange(n))}}},[D,a]),R=(0,Q.useRef)(O);R.current!==O&&(R.current=O,!O&&k===`masked`&&A(`empty`));let oe=(0,Q.useCallback)(e=>{if(!c){if(M.current){let t=M.current.getBoundingClientRect();if(!(e.clientX>=t.left&&e.clientX<=t.right&&e.clientY>=t.top&&e.clientY<=t.bottom))return}k===`masked`&&O&&(A(`revealed`),l||setTimeout(()=>te.current?.focus(),0))}},[k,O,c,l]),z=(0,Q.useCallback)(e=>{e.stopPropagation(),k===`revealed`?A(`masked`):k===`empty`&&O&&A(`revealed`)},[k,O]),B=(0,Q.useCallback)(e=>{let t=e.target.value;w||E(t),k===`empty`&&t.length>0&&A(`revealed`),r?.(e),i?.(t)},[w,r,i,k]),V=(0,Q.useCallback)(e=>{M.current&&e.relatedTarget instanceof Node&&M.current.contains(e.relatedTarget)||O&&A(`masked`)},[O]),se=(0,Q.useCallback)(e=>{c||k===`masked`&&O&&(e.key===`Enter`||e.key===` `)&&(e.preventDefault(),A(`revealed`),l||setTimeout(()=>te.current?.focus(),0))},[k,O,c,l]),ce=(0,Q.useCallback)(e=>{k===`revealed`&&e.key===`Escape`&&(A(`masked`),setTimeout(()=>M.current?.focus(),0))},[k]),H=k===`masked`&&O,U=!c&&(k===`revealed`||k===`empty`&&O),le=o===`xs`||o===`sm`?`size-3`:`size-4`,ue=t(ae({size:o,variant:b,parentFocusIndicator:!0}),`group/container relative flex w-full items-center`,`focus-within:outline-2 focus-within:outline-kumo-focus`,H&&!c&&`cursor-pointer`,c&&`cursor-not-allowed`,f),de=(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(re,{ref:I,id:ne,type:k===`revealed`?`text`:`password`,value:D,onChange:B,onBlur:V,onKeyDown:ce,disabled:c,readOnly:l||H,autoComplete:d,tabIndex:H?-1:0,className:t(`kumo-input-placeholder w-full border-0 bg-transparent p-0 text-kumo-default ring-0 outline-none disabled:cursor-not-allowed disabled:text-kumo-subtle`,o===`xs`&&`pe-5`,o===`sm`&&`pe-6`,o===`base`&&`pe-8`,o===`lg`&&`pe-10`,H&&`pointer-events-none text-transparent`),"aria-hidden":H,...v}),(0,$.jsx)(`span`,{className:t(`pointer-events-none absolute inset-y-0 start-0 flex items-center overflow-hidden select-none`,o===`xs`&&`end-5`,o===`sm`&&`end-6`,o===`base`&&`end-8`,o===`lg`&&`end-10`,o===`xs`&&`px-1.5`,o===`sm`&&`px-2`,o===`base`&&`px-3`,o===`lg`&&`px-4`,!H&&`invisible`,H&&`pointer-events-auto`,`text-kumo-default`,`group/mask`),"aria-hidden":`true`,children:(0,$.jsxs)(`span`,{className:`relative`,children:[(0,$.jsx)(`span`,{className:t(H&&!c&&`group-focus-within/container:invisible group-hover/mask:invisible`),children:`••••••••`}),H&&!c&&(0,$.jsx)(`span`,{className:`invisible absolute top-0 start-0 whitespace-nowrap text-kumo-subtle group-focus-within/container:visible group-hover/mask:visible`,children:`Click to reveal`})]})}),(0,$.jsx)(`button`,{type:`button`,"data-kumo-component":`SensitiveInput`,"data-kumo-part":`toggle-visibility`,onClick:z,onKeyDown:e=>e.stopPropagation(),"aria-label":k===`revealed`?`Hide value`:`Reveal value`,tabIndex:U?0:-1,className:t(`absolute top-1/2 end-0 -translate-y-1/2 cursor-pointer text-kumo-subtle hover:text-kumo-default focus:text-kumo-default focus:ring-kumo-focus/50 focus-visible:rounded-sm focus-visible:ring-2 focus-visible:ring-kumo-brand`,`m-0 inline-flex h-auto min-h-0 items-center justify-center border-none bg-transparent p-0 shadow-none`,o===`xs`&&`end-1.5`,o===`sm`&&`end-2`,o===`base`&&`end-3`,o===`lg`&&`end-4`,le,!U&&`pointer-events-none opacity-0`),children:k===`revealed`?(0,$.jsx)(S,{className:`size-full`}):(0,$.jsx)(x,{className:`size-full`})}),O&&!c&&(0,$.jsx)(`button`,{type:`button`,"data-kumo-component":`SensitiveInput`,"data-kumo-part":`copy`,onClick:L,onKeyDown:e=>e.stopPropagation(),"aria-label":j?`Copied`:`Copy to clipboard`,className:t(`absolute -top-px end-2 -translate-y-full cursor-pointer rounded-t-md bg-kumo-brand px-2 py-0.5 text-xs text-white opacity-0 transition-opacity group-focus-within/container:opacity-100 group-hover/container:opacity-100 hover:brightness-120 focus:ring-kumo-focus/50 focus:outline-none focus-visible:ring-2 focus-visible:ring-kumo-brand`,`m-0 h-auto min-h-0 border-none shadow-none`),children:j?`Copied`:`Copy`})]}),W=(0,$.jsxs)(`div`,{children:[H?(0,$.jsx)(`div`,{ref:M,role:`button`,"data-kumo-component":`SensitiveInput`,"data-kumo-part":`masked-container`,tabIndex:c?-1:0,className:ue,onClick:oe,onKeyDown:se,"aria-label":`${C}, masked.`,"aria-describedby":`${F} ${N}`,"aria-disabled":c,children:de}):(0,$.jsx)(`div`,{ref:M,className:ue,children:de}),H&&(0,$.jsx)(`span`,{id:F,className:`sr-only`,children:`Click or press Enter to reveal.`}),(0,$.jsxs)(`span`,{id:N,className:`sr-only`,"aria-live":`polite`,children:[k===`masked`&&O&&`Value hidden`,j&&`Copied to clipboard`]})]});return p?(0,$.jsx)(ie,{label:p,required:_,labelTooltip:m,description:h,error:g?typeof g==`string`?{message:g,match:!0}:g:void 0,children:W}):W});Yt.displayName=`SensitiveInput`;function Xt({schemes:e,roles:n,notes:r=[],labels:i,className:a}){return(0,$.jsxs)(`section`,{"aria-label":i.preview,className:t(`@container grid min-w-0 gap-3`,a),children:[(0,$.jsx)(`div`,{className:t(`grid min-w-0 gap-3`,e.length>1&&`@2xl:grid-cols-2`),children:e.map(e=>{let t=t=>e.roles[t];return(0,$.jsxs)(De,{label:e.label,className:`grid gap-3`,children:[(0,$.jsx)(g,{as:`span`,bold:!0,children:e.label}),(0,$.jsxs)(`div`,{"aria-hidden":`true`,"data-scheme-sample":e.id,className:`grid gap-1.5 rounded-md px-4 py-3 ring ring-kumo-hairline`,style:{background:t(`surface`),color:t(`text`)},children:[(0,$.jsx)(`span`,{className:`text-base font-semibold`,children:i.heading}),(0,$.jsxs)(`span`,{className:`text-sm`,style:{color:t(`text-muted`)},children:[i.body,` `,(0,$.jsx)(`span`,{className:`underline`,style:{color:t(`link`)},children:i.link})]}),(0,$.jsxs)(`span`,{className:`flex flex-wrap items-center gap-2 pt-1`,children:[(0,$.jsx)(`span`,{className:`rounded-md px-3 py-1 text-sm font-medium`,style:{background:t(`brand`),color:t(`on-brand`)},children:i.button}),(0,$.jsx)(`span`,{className:`rounded-full px-2 py-0.5 text-xs font-medium`,style:{background:t(`accent`),color:t(`on-accent`)},children:i.accent}),(0,$.jsx)(`span`,{className:`rounded-md px-3 py-1 text-sm`,style:{background:t(`surface-muted`),color:t(`text`),boxShadow:`inset 0 0 0 1px ${t(`border`)}`},children:i.link})]})]}),(0,$.jsx)(`ul`,{className:`m-0 grid list-none grid-cols-1 gap-x-4 gap-y-2 p-0 @md:grid-cols-2`,children:n.map(({role:e,label:n})=>(0,$.jsxs)(`li`,{className:`flex min-w-0 items-center gap-2`,children:[(0,$.jsx)(`span`,{"aria-hidden":`true`,className:`size-4 shrink-0 rounded-sm ring ring-kumo-hairline`,style:{background:t(e)}}),(0,$.jsx)(g,{as:`span`,size:`sm`,children:n}),(0,$.jsx)(g,{as:`span`,size:`sm`,variant:`secondary`,children:(0,$.jsx)(`span`,{className:`font-mono`,children:t(e)})})]},e))})]},e.id)})}),r.length>0&&(0,$.jsxs)(`div`,{className:`grid gap-1.5`,children:[(0,$.jsx)(g,{as:`span`,size:`sm`,bold:!0,children:i.notes}),(0,$.jsx)(`ul`,{className:`m-0 grid list-disc gap-1 ps-5`,children:r.map(e=>(0,$.jsx)(`li`,{children:(0,$.jsx)(g,{as:`span`,size:`sm`,variant:`secondary`,children:e})},e))})]})]})}var Zt=/^@(cf|hf)\/[A-Za-z0-9._-]+\/[A-Za-z0-9._:-]+$/,Qt=/^[a-z0-9][a-z0-9-]{0,40}\/[A-Za-z0-9._:/-]{1,120}$/,$t=/^[a-z0-9][a-z0-9-]{0,63}$/,en=1e4,tn=e=>e instanceof B&&e.status===409,nn=e=>({enabled:e.enabled,model:Zt.test(e.model)?e.model:``,provider:Zt.test(e.model)?``:e.model,gateway:e.gateway??``,limit:String(e.dailyLimit)});function rn({siteId:e}){let{t,locale:n}=Y(`aiSettings`),r=`aiSettings`,a=c(),o=F(),u=P(`ai.settings`),p=l({queryKey:[`ai`,e,`settings`],queryFn:()=>U.ai.settings(e)}),m=p.data?.transport,h=l({queryKey:[`ai`,e,`models`],queryFn:()=>U.ai.models(e),enabled:u.allowed&&m!==void 0&&m!==`none`,staleTime:6e5,retry:!1}),v=p.data?.settings,[y,b]=(0,Q.useState)();(0,Q.useEffect)(()=>{v&&b(nn(v))},[v]);let[x,S]=(0,Q.useState)(!1);(0,Q.useEffect)(()=>{v&&(v.gateway||!Zt.test(v.model))&&S(!0)},[v]);let C=(0,Q.useMemo)(()=>{let e=h.data?.models??[];return(y?.model&&!e.some(e=>e.id===y.model)?[...e,{id:y.model,listed:!1}]:e).map(e=>({value:e.id,label:e.recommended?`${e.id} · ${t(`${r}.model.recommended`)}`:e.id,model:e}))},[h.data,y?.model,t]),w=d({mutationFn:t=>{let n=t.provider.trim();return U.ai.save(e,{enabled:t.enabled,model:n||t.model,...t.gateway.trim()?{gateway:t.gateway.trim()}:{},dailyLimit:Number(t.limit),rev:v?.rev??0})},onSuccess:async()=>{await a.invalidateQueries({queryKey:[`ai`,e]}),o.success(t(`${r}.saved`))}}),T=m===`none`,E=(0,$.jsx)($.Fragment,{children:T&&(0,$.jsx)(N,{variant:`secondary`,icon:(0,$.jsx)(M,{weight:`fill`}),title:t(`${r}.unavailable.title`),description:t(`${r}.unavailable.description`)})});if(!y||!v)return(0,$.jsx)(K,{id:`ai`,title:t(`${r}.title`),children:(0,$.jsxs)(`div`,{className:`grid gap-3`,role:`status`,children:[(0,$.jsx)(`span`,{className:`sr-only`,children:t(`common.loading`)}),(0,$.jsx)(_,{minWidth:30,maxWidth:45}),(0,$.jsx)(_,{minWidth:60,maxWidth:85})]})});let D=Number(y.limit),O=y.limit.trim()!==``&&Number.isInteger(D)&&D>=0&&D<=en,k=y.gateway.trim()===``||$t.test(y.gateway.trim()),j=y.provider.trim(),ee=j===``||Qt.test(j)&&!j.startsWith(`@`),te=j!==``&&y.gateway.trim()===``,ne=j||y.model,re=O&&k&&ee&&!te&&ne!==``,ie=nn(v),ae=JSON.stringify(y)!==JSON.stringify(ie),L=C.find(e=>e.value===y.model)??null,R=h.data?.catalog===`live`&&!j&&y.model!==``&&!(h.data.models??[]).some(e=>e.id===y.model&&e.listed),oe=e=>b({...y,...e}),B=p.data?.usage,V=!u.allowed;return(0,$.jsxs)(K,{id:`ai`,title:t(`${r}.title`),description:t(`${r}.description`),aside:v.enabled?(0,$.jsx)(i,{variant:`success`,icon:(0,$.jsx)(A,{}),children:t(`common.on`)}):void 0,footer:(0,$.jsxs)($.Fragment,{children:[ae&&(0,$.jsx)(s,{variant:`ghost`,onClick:()=>b(ie),children:t(`common.discard`)}),(0,$.jsx)(s,{variant:`primary`,disabled:!ae||!re||V,title:u.reason,loading:w.isPending,onClick:()=>w.mutate(y),children:t(`common.saveChanges`)})]}),children:[E,w.error&&(0,$.jsx)(N,{variant:tn(w.error)?`alert`:`error`,icon:(0,$.jsx)(M,{weight:`fill`}),title:t(`${r}.failed`),description:tn(w.error)?t(`${r}.conflict`):Z(t,w.error),action:tn(w.error)?(0,$.jsx)(N.Action,{variant:`secondary`,icon:(0,$.jsx)(f,{}),onClick:()=>{w.reset(),p.refetch()},children:t(`${r}.reload`)}):void 0}),R&&(0,$.jsx)(N,{variant:`alert`,icon:(0,$.jsx)(M,{weight:`fill`}),description:t(`${r}.model.gone`,{model:y.model})}),(0,$.jsxs)(`dl`,{className:`-my-3 divide-y divide-kumo-hairline`,"data-testid":`ai-settings`,children:[(0,$.jsx)(q,{label:t(`${r}.enabled.label`),hint:t(`${r}.enabled.hint`),children:(0,$.jsx)(fe,{"aria-label":t(`${r}.enabled.label`),checked:y.enabled,disabled:V,title:u.reason,onCheckedChange:e=>oe({enabled:e})})}),(0,$.jsx)(q,{label:t(`${r}.model.label`),hint:(0,$.jsxs)($.Fragment,{children:[t(`${r}.model.hint`),` `,j?t(`${r}.model.privacyProvider`,{provider:j.split(`/`)[0]??``}):t(`${r}.model.privacyWorkers`)]}),children:(0,$.jsxs)(`span`,{className:`grid w-80 max-w-full gap-1.5`,"data-testid":`ai-model`,children:[V||T||h.isError?(0,$.jsx)(g,{as:`span`,children:(0,$.jsx)(`span`,{className:`font-mono text-[0.9em]`,children:ne})}):h.isPending?(0,$.jsx)(_,{minWidth:60,maxWidth:90}):(0,$.jsxs)(z,{items:C,value:L,onValueChange:e=>oe({model:e?.value??``}),isItemEqualToValue:(e,t)=>e.value===t.value,itemToStringLabel:e=>e.label,"aria-label":t(`${r}.model.label`),disabled:j!==``,children:[(0,$.jsx)(z.TriggerInput,{placeholder:t(`${r}.model.placeholder`),clearLabel:t(`${r}.model.clear`),showOptionsLabel:t(`${r}.model.show`)}),(0,$.jsxs)(z.Content,{children:[(0,$.jsx)(z.Empty,{children:t(`${r}.model.empty`)}),(0,$.jsx)(z.List,{children:e=>(0,$.jsx)(z.Item,{value:e,children:e.label},e.value)})]})]}),L?.model.recommended&&!j&&(0,$.jsx)(g,{variant:`secondary`,size:`sm`,as:`span`,children:t(`${r}.model.notes.${L.model.recommended}`)}),L?.model.contextWindow&&!j?(0,$.jsx)(g,{variant:`secondary`,size:`sm`,as:`span`,children:t(`${r}.model.context`,{tokens:xe(n,L.model.contextWindow)})}):null,h.data?.catalog===`unavailable`&&(0,$.jsx)(g,{variant:`secondary`,size:`sm`,as:`span`,children:t(`${r}.model.catalogUnavailable`)})]})}),(0,$.jsx)(q,{label:t(`${r}.limit.label`),hint:t(`${r}.limit.hint`),children:(0,$.jsxs)(`span`,{className:`grid w-56 max-w-full gap-2`,children:[(0,$.jsx)(I,{type:`number`,inputMode:`numeric`,"aria-label":t(`${r}.limit.label`),value:y.limit,onValueChange:e=>oe({limit:e}),disabled:V,title:u.reason,error:O?void 0:t(`${r}.limit.error`),className:`w-full`}),B&&(0,$.jsx)(de,{label:t(`${r}.limit.used`,{used:xe(n,B.requests),limit:xe(n,v.dailyLimit)}),value:B.requests,max:Math.max(1,v.dailyLimit)})]})})]}),(0,$.jsxs)(ue.Root,{open:x,onOpenChange:S,children:[(0,$.jsx)(ue.DefaultTrigger,{children:t(`${r}.advanced`)}),(0,$.jsx)(ue.DefaultPanel,{children:(0,$.jsxs)(`div`,{className:`grid gap-4 pt-2`,"data-testid":`ai-advanced`,children:[(0,$.jsx)(I,{label:t(`${r}.gateway.label`),description:t(`${r}.gateway.hint`),placeholder:t(`${r}.gateway.placeholder`),value:y.gateway,onValueChange:e=>oe({gateway:e}),disabled:V,error:k?void 0:t(`${r}.gateway.error`),className:`w-full max-w-sm`}),(0,$.jsx)(I,{label:t(`${r}.provider.label`),description:t(`${r}.provider.hint`),placeholder:t(`${r}.provider.placeholder`),value:y.provider,onValueChange:e=>oe({provider:e}),disabled:V,error:ee?te?t(`${r}.provider.needsGateway`):void 0:t(`${r}.provider.error`),className:`w-full max-w-sm`})]})})]})]})}var an=`analytics`,on=e=>[`analytics`,e,`settings`],sn=e=>e instanceof B&&e.status===409,cn=e=>e instanceof B&&e.status===403;function ln({label:e,hint:t,checked:n,onChange:r,disabled:i,title:a,testId:o}){return(0,$.jsxs)(`div`,{className:`grid gap-1.5`,"data-testid":o,"data-checked":n?`on`:`off`,children:[(0,$.jsx)(fe,{label:e,checked:n,disabled:i,title:a,onCheckedChange:r}),(0,$.jsx)(g,{variant:`secondary`,size:`sm`,children:t})]})}function un(){let{t:e}=Y(`analyticsSettings`);return(0,$.jsxs)(`div`,{className:`grid gap-3`,role:`status`,children:[(0,$.jsx)(`span`,{className:`sr-only`,children:e(`common.loading`)}),(0,$.jsx)(_,{minWidth:30,maxWidth:45}),(0,$.jsx)(_,{minWidth:60,maxWidth:85}),(0,$.jsx)(_,{minWidth:50,maxWidth:70})]})}function dn({feature:e}){let{t}=Y(`analyticsSettings`),n=_t(e);return n===`ready`?null:(0,$.jsx)(`div`,{"data-analytics-deployment":n,children:(0,$.jsx)(N,{variant:`secondary`,icon:(0,$.jsx)(h,{weight:`fill`}),title:t(n===`off`?`analyticsSettings.deployment.offTitle`:`analyticsSettings.deployment.cantReadTitle`),description:t(n===`off`?`analyticsSettings.deployment.offDescription`:`analyticsSettings.deployment.cantReadDescription`)})})}function fn({feature:e}){let{t}=Y(`analyticsSettings`),n=e.enabled&&e.store!==`none`;return(0,$.jsxs)(`dl`,{className:`-mb-3 divide-y divide-kumo-hairline border-kumo-hairline border-t`,"aria-label":t(`analyticsSettings.deployment.title`),"data-testid":`analytics-deployment`,children:[(0,$.jsx)(q,{label:t(`analyticsSettings.deployment.store`),children:(0,$.jsx)(i,{variant:n?`success`:`neutral`,appearance:`dot`,children:t(`analyticsSettings.deployment.stores.${n?e.store:`none`}`)})}),n&&(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(q,{label:t(`analyticsSettings.deployment.reader`),children:(0,$.jsx)(i,{variant:e.reader===`none`?`warning`:`success`,appearance:`dot`,children:t(`analyticsSettings.deployment.readers.${e.reader}`)})}),(0,$.jsx)(q,{label:t(`analyticsSettings.deployment.rollups`),hint:t(`analyticsSettings.deployment.rollupHints.${e.rollups}`),children:(0,$.jsx)(g,{as:`span`,children:t(`analyticsSettings.deployment.rollupModes.${e.rollups}`)})}),(0,$.jsx)(q,{label:t(`analyticsSettings.deployment.liveDays`),hint:t(`analyticsSettings.deployment.liveDaysHint`),children:(0,$.jsx)(g,{as:`span`,children:t(`analyticsSettings.deployment.liveDaysValue`,{days:e.liveDays})})})]})]})}function pn({uniqueVisitors:e,unsaved:t}){let{t:n,locale:r}=Y(`analyticsSettings`);je([`analyticsSettings`],Me);let i=F(),[a,o]=(0,Q.useState)(r),c=Pe(a,`analyticsSettings.notice.heading`),l=[Pe(a,`analyticsSettings.notice.base`),...e?[Pe(a,`analyticsSettings.notice.unique`)]:[]],u=async()=>{try{await navigator.clipboard.writeText(It(c,l)),i.success(n(`analyticsSettings.notice.copied`))}catch(e){i.error(n(`errors.title`),e?Z(n,e):void 0)}};return(0,$.jsxs)(`div`,{className:`grid gap-3 border-kumo-hairline border-t pt-5`,"data-testid":`privacy-notice`,"data-variant":e?`unique`:`base`,children:[(0,$.jsxs)(`div`,{className:`flex flex-wrap items-start justify-between gap-3`,children:[(0,$.jsxs)(`div`,{className:`grid min-w-0 flex-[1_1_16rem] gap-1.5`,children:[(0,$.jsx)(g,{bold:!0,as:`h3`,children:n(`analyticsSettings.notice.title`)}),(0,$.jsx)(g,{variant:`secondary`,size:`sm`,children:n(t?`analyticsSettings.notice.hintUnsaved`:`analyticsSettings.notice.hint`)})]}),(0,$.jsxs)(`fieldset`,{className:`min-w-0 overflow-x-auto`,children:[(0,$.jsx)(`legend`,{className:`sr-only`,children:n(`analyticsSettings.notice.languages`)}),(0,$.jsx)(pe,{variant:`segmented`,size:`sm`,value:a,onValueChange:e=>o(e),tabs:Object.keys(Ne).map(e=>({value:e,label:Ne[e]}))})]})]}),(0,$.jsx)(De,{variant:`recessed`,label:n(`analyticsSettings.notice.title`),children:(0,$.jsxs)(`div`,{lang:a,className:`grid gap-1.5`,children:[(0,$.jsx)(g,{bold:!0,children:c}),l.map(e=>(0,$.jsx)(g,{children:e},e))]})}),(0,$.jsxs)(`div`,{className:`flex flex-wrap items-center justify-between gap-3`,children:[(0,$.jsx)(g,{variant:`secondary`,size:`sm`,children:n(`analyticsSettings.notice.legal`)}),(0,$.jsx)(s,{variant:`secondary`,size:`sm`,icon:(0,$.jsx)(v,{}),onClick:()=>void u(),children:n(`analyticsSettings.notice.copy`)})]})]})}function mn({open:e,onOpenChange:t,onConfirm:n}){let{t:r}=Y(`analyticsSettings`);return(0,$.jsx)(J.Alert,{open:e,onOpenChange:t,children:(0,$.jsxs)(J.Content,{size:`base`,closeLabel:r(`common.close`),children:[(0,$.jsx)(J.Title,{children:r(`analyticsSettings.unique.confirmTitle`)}),(0,$.jsx)(J.Description,{children:r(`analyticsSettings.unique.confirmDescription`)}),(0,$.jsx)(J.Body,{children:(0,$.jsxs)(`div`,{className:`grid gap-4`,children:[(0,$.jsx)(N,{variant:`alert`,icon:(0,$.jsx)(k,{weight:`fill`}),title:r(`analyticsSettings.unique.confirmBannerTitle`),description:r(`analyticsSettings.unique.confirmBanner`)}),(0,$.jsxs)(`div`,{className:`grid gap-1.5`,children:[(0,$.jsx)(g,{bold:!0,as:`span`,children:r(`analyticsSettings.unique.confirmNotice`)}),(0,$.jsx)(De,{variant:`recessed`,children:(0,$.jsx)(g,{children:r(`analyticsSettings.notice.unique`)})})]})]})}),(0,$.jsx)(J.Actions,{dismissLabel:r(`common.cancel`),children:(0,$.jsx)(J.Actions.Primary,{variant:`primary`,onClick:n,children:r(`analyticsSettings.unique.confirm`)})})]})})}function hn({siteId:e}){let{t}=Y(`analyticsSettings`),n=F(),r=c(),a=ne(),o=P(`analytics.read`),u=P(`analytics.settings`),p=l({queryKey:[`instance`],queryFn:U.instance}),m=l({queryKey:on(e),queryFn:()=>U.analytics.settings(e),enabled:!a.isPending&&o.allowed,retry:(e,t)=>!V(t)&&!cn(t)&&e<1}),h=p.data?.features.analytics??m.data?.feature,[g,_]=(0,Q.useState)(),[v,y]=(0,Q.useState)(!1),b=m.data?.settings;(0,Q.useEffect)(()=>{if(!b)return;let e=Pt(b);_(t=>t?{base:e,form:gt(t.base,t.form,e)}:{base:e,form:e})},[b]);let x=d({mutationFn:t=>U.analytics.updateSettings(e,b?.rev??0,t),onSuccess:async(i,a)=>{r.setQueryData(on(e),e=>e&&{...e,settings:i.settings}),await r.invalidateQueries({queryKey:[`analytics`,e],predicate:e=>e.queryKey[2]!==`settings`});let o=`enabled`in a||`vitalsOneIn`in a;n.success(t(`analyticsSettings.saved`),i.saltDeleted?t(`analyticsSettings.savedSaltDeleted`):o?t(i.purged?`analyticsSettings.savedPurged`:`analyticsSettings.savedNotPurged`):void 0)}}),S=(e,t)=>_(n=>n&&{...n,form:{...n.form,[e]:t}}),C=g?Lt(g.base,g.form):!1,w=()=>{g&&C&&u.allowed&&x.mutate(ht(g.base,g.form))},T=()=>{_(e=>e&&{...e,form:e.base}),x.reset()},E=()=>{x.reset(),m.refetch()},D=_t(h),O=g?D===`off`?(0,$.jsx)(i,{variant:`neutral`,appearance:`dot`,children:t(`analyticsSettings.status.notRunning`)}):g.base.enabled?(0,$.jsx)(i,{variant:`success`,appearance:`dot`,children:t(`analyticsSettings.status.on`)}):(0,$.jsx)(i,{variant:`neutral`,appearance:`dot`,children:t(`analyticsSettings.status.off`)}):null,k=(()=>{if(!o.allowed)return(0,$.jsx)(N,{variant:`secondary`,icon:(0,$.jsx)(et,{weight:`fill`}),title:t(`analyticsSettings.noAccessTitle`),description:o.reason});if(V(m.error))return(0,$.jsx)(N,{variant:`secondary`,icon:(0,$.jsx)(rt,{weight:`fill`}),title:t(`analyticsSettings.notAvailableTitle`),description:t(`analyticsSettings.notAvailableDescription`)});if(m.error&&!g)return(0,$.jsx)($e,{error:m.error,onRetry:()=>void m.refetch(),retrying:m.isFetching});if(!g)return(0,$.jsx)(un,{});let{base:e,form:n}=g,r=mt(n.vitalsOneIn),i=St.includes(n.rollupRetentionDays)?St:[...St,n.rollupRetentionDays];return(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(dn,{feature:h}),x.error&&(sn(x.error)?(0,$.jsx)(`div`,{role:`alert`,children:(0,$.jsx)(N,{variant:`alert`,icon:(0,$.jsx)(te,{weight:`fill`}),title:t(`analyticsSettings.conflictTitle`),description:t(`analyticsSettings.conflictDescription`),action:(0,$.jsx)(N.Action,{variant:`secondary`,icon:(0,$.jsx)(f,{}),onClick:E,loading:m.isFetching,children:t(`analyticsSettings.loadLatest`)})})}):(0,$.jsx)(N,{variant:`error`,size:`sm`,icon:(0,$.jsx)(M,{weight:`fill`}),title:t(`analyticsSettings.failed`),description:Z(t,x.error)})),(0,$.jsxs)(Kt,{reason:u.reason,className:`grid min-w-0 gap-5`,children:[(0,$.jsx)(ln,{testId:`analytics-enabled`,label:t(`analyticsSettings.enabled.label`),hint:t(`analyticsSettings.enabled.hint`),checked:n.enabled,onChange:e=>S(`enabled`,e),disabled:!u.allowed,title:u.reason}),(0,$.jsxs)(`div`,{className:`grid gap-3`,children:[(0,$.jsx)(ln,{testId:`analytics-unique`,label:t(`analyticsSettings.unique.label`),hint:n.enabled?t(`analyticsSettings.unique.hint`):t(`analyticsSettings.unique.hintNeedsVisits`),checked:n.uniqueVisitors,onChange:t=>{t&&!e.uniqueVisitors?y(!0):S(`uniqueVisitors`,t)},disabled:!u.allowed||!n.enabled,title:u.reason}),e.uniqueVisitors&&!n.uniqueVisitors&&(0,$.jsx)(`div`,{"data-testid":`salt-warning`,children:(0,$.jsx)(N,{variant:`alert`,size:`sm`,icon:(0,$.jsx)(te,{weight:`fill`}),title:t(`analyticsSettings.unique.offWarningTitle`),description:t(`analyticsSettings.unique.offWarning`)})})]}),(0,$.jsx)(`div`,{className:`@container`,children:(0,$.jsxs)(`div`,{className:`grid items-start gap-5 @lg:grid-cols-2`,children:[(0,$.jsx)(W,{label:t(`analyticsSettings.vitals.label`),description:`${t(`analyticsSettings.vitals.hint`)} ${r===0?t(`analyticsSettings.vitals.costOff`):t(`analyticsSettings.vitals.cost`,{percent:r})}`,value:String(n.vitalsOneIn),onValueChange:e=>S(`vitalsOneIn`,wt(String(e))),items:xt.map(e=>({value:String(e),label:t(`analyticsSettings.vitals.options.${e}`)}))}),(0,$.jsx)(W,{label:t(`analyticsSettings.retention.label`),description:t(`analyticsSettings.retention.hint`),value:ft(n.rollupRetentionDays),onValueChange:e=>S(`rollupRetentionDays`,pt(String(e))),items:i.map(e=>({value:ft(e),label:e===null?t(`analyticsSettings.retention.options.forever`):St.includes(e)?t(`analyticsSettings.retention.options.${String(e)}`):t(`analyticsSettings.retention.days`,{days:e})}))}),(0,$.jsx)(W,{label:t(`analyticsSettings.plan.label`),description:t(`analyticsSettings.plan.hint`),value:Ft(n.planHint),onValueChange:e=>S(`planHint`,dt(String(e))),items:Et.map(e=>({value:e,label:t(`analyticsSettings.plan.options.${e}`)}))})]})})]}),(0,$.jsx)(pn,{uniqueVisitors:n.uniqueVisitors,unsaved:C}),h&&(0,$.jsx)(fn,{feature:h})]})})();return(0,$.jsxs)(K,{id:an,title:t(`analyticsSettings.title`),description:t(`analyticsSettings.description`),aside:O,footer:g?(0,$.jsxs)($.Fragment,{children:[C&&(0,$.jsx)(s,{variant:`ghost`,onClick:T,disabled:x.isPending,children:t(`common.discard`)}),(0,$.jsx)(s,{variant:`primary`,onClick:w,loading:x.isPending,disabled:!u.allowed||!C,title:u.reason,children:t(`common.saveChanges`)})]}):void 0,children:[k,(0,$.jsx)(mn,{open:v,onOpenChange:y,onConfirm:()=>{S(`uniqueVisitors`,!0),y(!1)}})]})}var gn=[`surface`,`surface-muted`,`surface-raised`,`surface-inverse`,`text`,`text-muted`,`text-subtle`,`text-inverse`,`border`,`border-strong`,`brand`,`on-brand`,`accent`,`on-accent`,`link`,`focus`,`gradient`],_n=[`tonal`,`vibrant`,`neutral`,`mono`],vn=[`standard`,`high`],yn=[`light`,`dark`,`auto`];function bn(e){return e.kind===`pair`?`${e.scheme}: ${e.role} on ${e.against} ${e.direction} ${e.steps} step(s) to reach ${e.ratio}:1`:`${e.scheme}: ${e.role} ${e.direction} ${e.steps} step(s) so ${e.against} text reaches ${e.ratio}:1`}var xn=e=>e<=.04045?e/12.92:((e+.055)/1.055)**2.4,Sn=e=>e<=.0031308?12.92*e:1.055*e**(1/2.4)-.055;function Cn(e){let t=/^#?([0-9a-f]{6})$/i.exec(e.trim());if(!t)return;let n=Number.parseInt(t[1],16);return[(n>>16&255)/255,(n>>8&255)/255,(n&255)/255]}function wn([e,t,n]){let r=e=>Math.round(Math.min(1,Math.max(0,e))*255).toString(16).padStart(2,`0`);return`#${r(e)}${r(t)}${r(n)}`}function Tn(e){let[t,n,r]=e.map(xn),i=Math.cbrt(.4122214708*t+.5363325363*n+.0514459929*r),a=Math.cbrt(.2119034982*t+.6806995451*n+.1073969566*r),o=Math.cbrt(.0883024619*t+.2817188376*n+.6299787005*r),s=.2104542553*i+.793617785*a-.0040720468*o,c=1.9779984951*i-2.428592205*a+.4505937099*o,l=.0259040371*i+.7827717662*a-.808675766*o;return[s,Math.sqrt(c*c+l*l),(Math.atan2(l,c)*180/Math.PI+360)%360]}function En([e,t,n]){let r=t*Math.cos(n*Math.PI/180),i=t*Math.sin(n*Math.PI/180),a=(e+.3963377774*r+.2158037573*i)**3,o=(e-.1055613458*r-.0638541728*i)**3,s=(e-.0894841775*r-1.291485548*i)**3;return[4.0767416621*a-3.3077115913*o+.2309699292*s,-1.2684380046*a+2.6097574011*o-.3413193965*s,-.0041960863*a-.7034186147*o+1.707614701*s]}function Dn(e){let[t,n]=e,r=e[2];t=Math.min(1,Math.max(0,t));for(let e=0;e<40;e++){let e=En([t,n,r]);if(e.every(e=>e>=-5e-4&&e<=1.0005))return wn(e.map(Sn));n*=.92}return wn(En([t,0,r]).map(Sn))}function On(e,t){let n=e=>{let[t,n,r]=(Cn(e)??[0,0,0]).map(xn);return .2126*t+.7152*n+.0722*r},[r,i]=[n(e),n(t)].sort((e,t)=>t-e);return(r+.05)/(i+.05)}var kn={tonal:{primary:.09,neutral:.012},vibrant:{primary:.17,neutral:.02},neutral:{primary:.05,neutral:.006},mono:{primary:0,neutral:0}},An=[[`text`,`surface`,4.5,7],[`text`,`surface-muted`,4.5,7],[`text`,`surface-raised`,4.5,7],[`text-muted`,`surface`,4.5,7],[`text-muted`,`surface-muted`,4.5,7],[`text-subtle`,`surface`,4.5,4.5],[`text-inverse`,`surface-inverse`,4.5,7],[`link`,`surface`,4.5,7],[`brand`,`surface`,3,3],[`focus`,`surface`,3,3],[`border-strong`,`surface`,3,3]];function jn(e,t,n,r,i,a){let o=()=>On(Dn(e[t]),Dn(e[n]))>=r;if(o())return;let s=e[t][0]>=e[n][0],c=0,l=!1;for(let n=0;n<200&&!o();n++){let n=e[t];if(s&&n[0]>=1||!s&&n[0]<=0){if(l)break;s=!s,l=!0}e[t]=[Math.min(1,Math.max(0,n[0]+(s?.01:-.01))),n[1],n[2]],c++}i.push({scheme:a,kind:`pair`,role:t,against:n,direction:s?`lightened`:`darkened`,steps:c,ratio:r})}function Mn(e){let t=e.scheme??`tonal`,n=e.contrast??`standard`,r=e.mode??`light`,[i,a,o]=Tn(Cn(e.seed)??[.094,.094,.106]),{primary:s,neutral:c}=kn[t],l=a,u=(o+60)%360,d=u>=50&&u<=115?(o+150)%360:u,f=e=>[e,c,o],p=(e,t=s)=>[e,t,o],m=[],h=e=>{let t=e?{surface:f(.17),"surface-muted":f(.21),"surface-raised":f(.3),"surface-inverse":f(.95),text:f(.95),"text-muted":f(.8),"text-subtle":f(.7),"text-inverse":f(.2),border:f(.3),"border-strong":f(.5),brand:[Math.max(.7,i),l,o],"on-brand":f(.16),accent:[.74,Math.max(s,.06),d],"on-accent":f(.16),link:p(.8,Math.max(s,.06)),focus:p(.75,Math.max(s,.08))}:{surface:f(.995),"surface-muted":f(.965),"surface-raised":[1,0,o],"surface-inverse":f(.21),text:f(.21),"text-muted":f(.44),"text-subtle":f(.55),"text-inverse":f(.98),border:f(.92),"border-strong":f(.65),brand:[i,l,o],"on-brand":[1,0,o],accent:[.55,Math.max(s,.06),d],"on-accent":[1,0,o],link:p(.45,Math.max(s,.06)),focus:p(.55,Math.max(s,.08))};for(let r=0;r<2;r++)for(let[r,i,a,o]of An)jn(t,r,i,n===`high`?o:a,m,e?`dark`:`light`);let r=n===`high`?7:4.5,a=[1,0,o],c=f(.16);for(let[n,i]of[[`on-brand`,`brand`],[`on-accent`,`accent`]]){let o=e=>On(Dn(e),Dn(t[i]));if(t[n]=o(a)>=o(c)?a:c,o(t[n])>=r)continue;t[n]=e?c:a;let s=0;for(;o(t[n])<r&&s<100;){let n=t[i];t[i]=[Math.min(1,Math.max(0,n[0]+(e?.01:-.01))),n[1],n[2]],s++}m.push({scheme:e?`dark`:`light`,kind:`fill`,role:i,against:n,direction:e?`lightened`:`darkened`,steps:s,ratio:r})}let u=Object.fromEntries(gn.filter(e=>e!==`gradient`).map(e=>[e,Dn(t[e])]));return u.gradient=Pn(u.brand,u[`on-brand`],r),u};return{light:h(!1),dark:h(!0),mode:r,notes:m.map(bn),repairs:m}}function Nn(e){let t=e.brand??`#18181b`,n=On(`#ffffff`,t)>=On(`#18181b`,t)?`#ffffff`:`#18181b`;return{surface:e.surface??`#ffffff`,"surface-muted":`#f4f4f5`,"surface-raised":`#ffffff`,"surface-inverse":`#18181b`,text:e.text??`#18181b`,"text-muted":`#52525b`,"text-subtle":`#71717a`,"text-inverse":`#ffffff`,border:`#e4e4e7`,"border-strong":`#d4d4d8`,brand:t,"on-brand":n,accent:e.link??`#0369a1`,"on-accent":`#ffffff`,link:e.link??`#0369a1`,focus:t,gradient:Pn(t,n,4.5)}}function Pn(e,t,n){let[r,i,a]=Tn(Cn(e)??[0,0,0]),o=On(t,`#000000`)>On(t,`#ffffff`)?-.01:.01,s=(a+40)%360,c=s>=50&&s<=115?(a+320)%360:s,l=[Math.min(1,Math.max(0,r+o*8)),i,c];for(let e=0;e<100&&On(t,Dn(l))<n;e++)l=[Math.min(1,Math.max(0,l[0]+o)),l[1],l[2]];return Dn(l)}var Fn=/^#[0-9a-fA-F]{6}$/;function In(e,t){let n=n=>{let r=e[n];if(typeof r==`string`&&Fn.test(r))return r.toLowerCase();let i=t[n]?.default;return typeof i==`string`&&Fn.test(i)?i.toLowerCase():void 0},r=(t,n,r)=>{let i=e[t];return typeof i==`string`&&n.includes(i)?i:r},i=r(`mode`,yn,`light`),a=r(`contrast`,vn,`standard`),o=typeof e.seed==`string`&&Fn.test(e.seed)?e.seed.toLowerCase():void 0;if(`seed`in t&&(o||i!==`light`)){let e={seed:o??n(`brand`)??`#18181b`,scheme:r(`scheme`,_n,`tonal`),contrast:a,mode:i},t=Mn(e);return{...t,source:`seed`,settings:e,seedAvailable:!0,pairs:Ln(t,a)}}let s=Nn({brand:n(`brand`),link:n(`link`),surface:n(`surface`),text:n(`text`)}),c={light:s,dark:s,mode:`light`,notes:[],repairs:[]};return{...c,source:`legacy`,settings:null,seedAvailable:`seed`in t,pairs:Ln(c,`standard`)}}function Ln(e,t=`standard`){let n=e=>Math.round(e*100)/100,r=t===`high`?7:4.5;return[...An.map(([e,n,r,i])=>({foreground:e,background:n,needs:t===`high`?i:r})),{foreground:`on-brand`,background:`brand`,needs:r},{foreground:`on-accent`,background:`accent`,needs:r},{foreground:`on-brand`,background:`gradient`,needs:r}].map(t=>({...t,light:n(On(e.light[t.foreground],e.light[t.background])),dark:n(On(e.dark[t.foreground],e.dark[t.background]))}))}function Rn({properties:e,values:t}){let n=X(`appearance`),r=(0,Q.useMemo)(()=>In(t,e),[t,e]);return(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(Xt,{schemes:[{id:`light`,label:n(`appearance.light`),roles:r.light},...r.source===`seed`?[{id:`dark`,label:n(`appearance.dark`),roles:r.dark}]:[]],roles:gn.map(e=>({role:e,label:n(`appearance.roles.${e}`)})),notes:r.repairs.map(e=>n(e.kind===`pair`?`appearance.repairPair`:`appearance.repairFill`,{scheme:n(`appearance.${e.scheme}`),role:n(`appearance.roles.${e.role}`),against:n(`appearance.roles.${e.against}`),direction:n(`appearance.${e.direction}`),steps:String(e.steps),ratio:String(e.ratio)})),labels:{preview:n(`appearance.preview`),heading:n(`appearance.heading`),body:n(`appearance.body`),link:n(`appearance.link`),button:n(`appearance.button`),accent:n(`appearance.accent`),notes:n(`appearance.notes`)}}),r.source===`legacy`&&r.seedAvailable&&(0,$.jsx)(g,{variant:`secondary`,size:`sm`,children:n(`appearance.legacy`)})]})}var zn=`appearance`,Bn=e=>e instanceof B&&e.status===409;function Vn({siteId:e}){let{t,locale:n}=Y(),r=c(),i=F(),a=P(`settings.write`),o=Ut(),u=[`theme-settings`,e],f=l({queryKey:u,queryFn:()=>U.themeSettings.get(e)}).data,[p,m]=(0,Q.useState)();(0,Q.useEffect)(()=>{f&&m(f.values)},[f]);let h=(0,Q.useMemo)(()=>f?.schema&&p?Ee(f.schema,p):[],[f,p]),v=d({mutationFn:t=>U.themeSettings.save(e,{rev:f?.rev??0,values:t}),onSuccess:async()=>{i.success(t(`siteSettings.appearance.saved`)),await r.invalidateQueries({queryKey:u}),await r.invalidateQueries({queryKey:[`site`,e]})}}),y=t(`siteSettings.sections.appearance`);if(!f||!p)return(0,$.jsx)(K,{id:zn,title:y,children:(0,$.jsx)(_,{})});if(!f.schema)return(0,$.jsx)(K,{id:zn,title:y,description:t(`siteSettings.appearance.none`,{theme:f.theme})});let b=f.schema.properties,x=`seed`in b||`brand`in b,S=JSON.stringify(p)!==JSON.stringify(f.values),C=!a.allowed;return(0,$.jsxs)(K,{id:zn,title:y,description:t(`siteSettings.appearance.description`,{theme:f.theme}),footer:(0,$.jsxs)($.Fragment,{children:[S&&(0,$.jsx)(s,{variant:`ghost`,onClick:()=>m(f.values),children:t(`common.discard`)}),(0,$.jsx)(s,{variant:`primary`,disabled:!S||h.length>0||C,title:a.reason,loading:v.isPending,onClick:()=>v.mutate(p),children:t(`common.saveChanges`)})]}),children:[v.error&&(0,$.jsx)(N,{variant:Bn(v.error)?`alert`:`error`,icon:(0,$.jsx)(M,{weight:`fill`}),title:t(`siteSettings.appearance.failed`),description:Bn(v.error)?t(`siteSettings.conflictDescription`):v.error instanceof Error?Z(t,v.error):String(v.error)}),(0,$.jsxs)(`div`,{className:`grid min-w-0 gap-4`,"data-appearance-form":``,children:[(0,$.jsx)(Oe,{schema:f.schema,value:p,onChange:m,issues:h,locale:n,disabled:C,enumLabel:o,labels:{item:t(`editor.blocks.item`,Ae(`n`)),addItem:t(`editor.blocks.addItem`),removeItem:t(`editor.blocks.removeItem`),moveUp:t(`editor.blocks.moveUp`),moveDown:t(`editor.blocks.moveDown`)}}),x&&(0,$.jsx)(Q.Suspense,{fallback:(0,$.jsx)(_,{}),children:(0,$.jsx)(Rn,{properties:b,values:p})}),(0,$.jsx)(g,{variant:`secondary`,size:`sm`,children:C&&a.reason?a.reason:t(`siteSettings.appearance.publishHint`)})]})]})}var Hn=`chrome`,Un={get:e=>H(`/api/sites/${e}/chrome`),save:(e,t)=>H(`/api/sites/${e}/chrome`,{method:`PUT`,...se(t)})},Wn={header:[`header`],footer:[`footer`],bars:[`announcement`,`consent`],brand:[`brand`]},Gn=[`logo`,`logoDark`],Kn=/^asset:(.+)$/,qn=e=>e instanceof B&&e.status===409;function Jn(e,t){let n={...e.properties};for(let e of t)delete n[e];return{...e,properties:n}}function Yn({siteId:e,defaultLocale:t,label:n,value:r,onChange:i,disabled:a}){let{t:o}=Y(`appearance`),[c,u]=(0,Q.useState)(!1),d=typeof r==`string`?Kn.exec(r)?.[1]:void 0,f=l({queryKey:[`asset`,e,d],queryFn:()=>U.assets.get(e,d),enabled:d!==void 0});return(0,$.jsxs)(`div`,{className:`grid gap-2`,"data-logo-field":``,children:[(0,$.jsx)(g,{bold:!0,as:`span`,children:n}),(0,$.jsxs)(`div`,{className:`flex flex-wrap items-center gap-3`,children:[d&&f.data?(0,$.jsx)(`div`,{className:`w-32`,children:(0,$.jsx)(C,{siteId:e,asset:f.data.asset,size:`thumb`})}):d?(0,$.jsx)(_,{}):(0,$.jsx)(g,{variant:`secondary`,size:`sm`,children:o(`appearance.chrome.noLogo`)}),(0,$.jsx)(s,{variant:`secondary`,disabled:a,onClick:()=>u(!0),children:o(d?`appearance.chrome.replaceLogo`:`appearance.chrome.chooseLogo`)}),d&&(0,$.jsx)(s,{variant:`ghost`,disabled:a,onClick:()=>i(void 0),children:o(`appearance.chrome.removeLogo`)})]}),(0,$.jsx)(Wt,{siteId:e,defaultLocale:t,open:c,onOpenChange:u,currentId:d,onPick:e=>i(`asset:${e.asset.id}`)})]})}function Xn({siteId:e,defaultLocale:t}){let{t:n,locale:r}=Y(`appearance`),i=c(),a=F(),o=P(`settings.write`),u=Ut(),f=[`chrome`,e],p=l({queryKey:f,queryFn:()=>Un.get(e)}).data,m=(0,Q.useMemo)(()=>p?{brand:p.brand,header:p.header,footer:p.footer,announcement:p.announcement,consent:p.consent}:void 0,[p]),[h,v]=(0,Q.useState)(),[y,b]=(0,Q.useState)(`header`);(0,Q.useEffect)(()=>{m&&v(m)},[m]);let x=(0,Q.useMemo)(()=>!p||!h?{brand:[],header:[],footer:[],announcement:[],consent:[]}:{brand:Ee(Jn(p.schemas.brand,Gn),h.brand),header:Ee(p.schemas.header,h.header),footer:Ee(p.schemas.footer,h.footer),announcement:Ee(p.schemas.announcement,h.announcement),consent:Ee(p.schemas.consent,h.consent)},[p,h]),S=d({mutationFn:t=>Un.save(e,{rev:p?.rev??0,...t}),onSuccess:async()=>{a.success(n(`appearance.chrome.saved`)),await i.invalidateQueries({queryKey:f}),await i.invalidateQueries({queryKey:[`site`,e]})}}),C=n(`appearance.chrome.title`);if(!p||!h)return(0,$.jsx)(K,{id:Hn,title:C,children:(0,$.jsx)(_,{})});let w=JSON.stringify(h)!==JSON.stringify(m),T=Object.values(x).some(e=>e.length>0),E=!o.allowed,D=e=>t=>v(n=>n&&{...n,[e]:t}),O={item:n(`editor.blocks.item`,Ae(`n`)),addItem:n(`editor.blocks.addItem`),removeItem:n(`editor.blocks.removeItem`),moveUp:n(`editor.blocks.moveUp`),moveDown:n(`editor.blocks.moveDown`)},k=e=>{let t=p.schemas.brand.properties[e]?.title;return typeof t==`string`?t:t?.[r]??t?.en??e};return(0,$.jsxs)(K,{id:Hn,title:C,description:n(`appearance.chrome.description`),footer:(0,$.jsxs)($.Fragment,{children:[w&&m&&(0,$.jsx)(s,{variant:`ghost`,onClick:()=>v(m),children:n(`common.discard`)}),(0,$.jsx)(s,{variant:`primary`,disabled:!w||T||E,title:o.reason,loading:S.isPending,onClick:()=>S.mutate(h),children:n(`common.saveChanges`)})]}),children:[S.error&&(0,$.jsx)(N,{variant:qn(S.error)?`alert`:`error`,icon:(0,$.jsx)(M,{weight:`fill`}),title:n(`appearance.chrome.failed`),description:qn(S.error)?n(`siteSettings.conflictDescription`):S.error instanceof Error?Z(n,S.error):String(S.error)}),(0,$.jsxs)(`div`,{className:`grid min-w-0 gap-4`,"data-chrome-form":``,children:[(0,$.jsx)(pe,{variant:`segmented`,value:y,onValueChange:e=>b(e),tabs:[{value:`header`,label:n(`appearance.chrome.header`)},{value:`footer`,label:n(`appearance.chrome.footer`)},{value:`bars`,label:n(`appearance.chrome.bars`)},{value:`brand`,label:n(`appearance.chrome.brand`)}]}),y===`brand`&&Gn.map(n=>(0,$.jsx)(Yn,{siteId:e,defaultLocale:t,label:k(n),value:h.brand[n],disabled:E,onChange:e=>{let t={...h.brand};e?t[n]=e:delete t[n],D(`brand`)(t)}},n)),Wn[y].map(e=>(0,$.jsxs)(`div`,{className:`grid min-w-0 gap-4`,children:[y===`bars`&&(0,$.jsx)(g,{bold:!0,as:`h3`,children:n(e===`announcement`?`appearance.chrome.announcement`:`appearance.chrome.consent`)}),(0,$.jsx)(Oe,{schema:e===`brand`?Jn(p.schemas.brand,Gn):p.schemas[e],value:h[e],onChange:D(e),issues:x[e],locale:r,disabled:E,enumLabel:u,labels:O})]},e)),(0,$.jsx)(g,{variant:`secondary`,size:`sm`,children:E&&o.reason?o.reason:n(`appearance.chrome.menusPublish`,{menus:ke(p.menus)})})]})]})}var Zn=/^(\/[a-z0-9]+(?:-[a-z0-9]+)*)+$/;function Qn(e,t){return[...new Set([...Object.keys(e.collections??{}),...t.map(e=>e.collection)])].sort()}function $n(e,t){return Object.fromEntries(t.map(t=>{let n=e.collections?.[t]?.permalink;return[t,n?st(n):``]}))}function er(e){let t=e.trim();if(t!==``)return t.startsWith(`/`)?t.length>1&&t.endsWith(`/`)?`trailingSlash`:Zn.test(t)?void 0:`invalid`:`slash`}function tr(e,t){let n={...e.collections};for(let[e,r]of Object.entries(t)){let t=r.trim(),{permalink:i,...a}=n[e]??{};t&&t!==`/${e}`?n[e]={...a,permalink:`${t}/{slug}`}:Object.keys(a).length?n[e]=a:delete n[e]}let{collections:r,...i}=e;return Object.keys(n).length?{...i,collections:n}:i}function nr(e,t){let n=tr(e,t);return Object.keys(t).filter(t=>ct(e,t)!==ct(n,t))}function rr(e,t,n){let r=e=>(e.status===`published`?0:2)+(e.locale===n?0:1);return e.filter(e=>e.collection===t).sort((e,t)=>r(e)-r(t)||t.updatedAt.localeCompare(e.updatedAt))[0]}function ir(e,t,n){return{now:ot(e,n),next:ot(tr(e,t),n)}}function ar(e){return e instanceof B&&(e.body?.error===`path_conflict`||e.body?.error===`reserved_path`)}function or(e,t){if(!ar(e))return;let n=/collection "([a-z0-9-]+)"/.exec(e.body?.message??``);return n?.[1]&&t.includes(n[1])?n[1]:t[0]}function sr({onReload:e,reloading:t}){let n=X();return(0,$.jsx)(`div`,{role:`alert`,children:(0,$.jsx)(N,{variant:`alert`,icon:(0,$.jsx)(te,{weight:`fill`}),title:n(`siteSettings.conflictTitle`),description:n(`siteSettings.conflictDescription`),action:(0,$.jsx)(N.Action,{variant:`secondary`,icon:(0,$.jsx)(f,{}),onClick:e,loading:t,children:n(`siteSettings.loadLatest`)})})})}var cr=`collections`;function lr({siteId:e}){let t=X(),n=c(),r=F(),i=P(`settings.write`),a=l({queryKey:[`site`,e],queryFn:()=>U.sites.get(e)}),o=l({queryKey:[`entries`,e,`all`],queryFn:()=>U.entries.list(e)}),u=a.data?Qn(a.data,o.data??[]):[],f=u.join(`,`),[p,m]=(0,Q.useState)({}),[h,g]=(0,Q.useState)(!1);(0,Q.useEffect)(()=>{a.data&&m($n(a.data,f?f.split(`,`):[]))},[a.data,f]);let v=d({mutationFn:e=>U.sites.update(tr(a.data,e)),onSuccess:async i=>{g(!1),n.setQueryData([`site`,e],i),await n.invalidateQueries({queryKey:[`sites`]}),r.success(t(`siteSettings.collections.saved`),t(`common.rev`,{rev:i.rev}))}}),y=t(`siteSettings.sections.collections`);if(!a.data||o.isPending)return(0,$.jsx)(K,{id:cr,title:y,children:(0,$.jsx)(_,{})});let b=a.data,x=nr(b,p),S=x.length>0,C=u.some(e=>er(p[e]??``)),T=or(v.error,x),E=()=>{g(!0),S&&!C&&v.mutate(p)};return(0,$.jsxs)(K,{id:cr,title:y,description:t(`siteSettings.collections.description`),footer:(0,$.jsxs)($.Fragment,{children:[S&&(0,$.jsx)(s,{variant:`ghost`,onClick:()=>{m($n(b,u)),g(!1),v.reset()},disabled:v.isPending,children:t(`common.discard`)}),(0,$.jsx)(s,{variant:`primary`,disabled:!S||!i.allowed,title:i.reason,loading:v.isPending,onClick:E,children:t(`common.saveChanges`)})]}),children:[(0,$.jsx)(ur,{error:ar(v.error)?void 0:v.error,onReload:()=>{v.reset(),a.refetch()},reloading:a.isFetching}),u.length===0?(0,$.jsx)(Ye,{icon:(0,$.jsx)(w,{size:32,className:`text-kumo-inactive`}),title:t(`siteSettings.collections.empty`),description:t(`siteSettings.collections.emptyDescription`)}):u.map(e=>(0,$.jsx)(dr,{collection:e,site:b,form:p,entries:o.data??[],disabled:!i.allowed||v.isPending,title:i.reason,showInvalid:h||(p[e]??``)!==$n(b,[e])[e],serverError:T===e?Z(t,v.error):void 0,onChange:t=>{T&&v.reset(),m(n=>({...n,[e]:t}))},onSubmit:E},e))]})}function ur({error:e,onReload:t,reloading:n}){let r=X();return e?Fe(e)?(0,$.jsx)(sr,{onReload:t,reloading:n}):(0,$.jsx)(N,{variant:`error`,size:`sm`,icon:(0,$.jsx)(M,{weight:`fill`}),title:r(`siteSettings.collections.failed`),description:Z(r,e)}):null}function dr({collection:e,site:t,form:n,entries:r,disabled:i,title:a,showInvalid:o,serverError:s,onChange:c,onSubmit:l}){let u=X(),d=n[e]??``,f=o?er(d):void 0,p=f?u(`siteSettings.collections.errors.${f}`):s,m=rr(r,e,t.defaultLocale)??{collection:e,slug:u(`siteSettings.collections.exampleSlug`)},h=ir(t,f?{...n,[e]:``}:n,m),g=h.now===h.next?u(`siteSettings.collections.preview`,{url:h.next}):u(`siteSettings.collections.previewMoved`,{url:h.next,old:h.now});return(0,$.jsxs)(R,{label:e,description:g,error:p?{message:p,match:!0}:void 0,disabled:i,title:a,children:[(0,$.jsx)(R.Input,{value:d,placeholder:`/${e}`,spellCheck:!1,autoComplete:`off`,"aria-invalid":p?!0:void 0,onChange:e=>c(e.target.value),onKeyDown:e=>{e.key===`Enter`&&(e.preventDefault(),l())}}),(0,$.jsx)(R.Addon,{align:`end`,children:`/{slug}`})]})}var fr=`comments`;function pr({label:e,hint:t,checked:n,onChange:r,disabled:i,title:a,testId:o}){return(0,$.jsxs)(`div`,{className:`grid gap-1.5`,"data-testid":o,"data-checked":n?`on`:`off`,children:[(0,$.jsx)(fe,{label:e,checked:n,disabled:i,title:a,onCheckedChange:r}),(0,$.jsx)(g,{variant:`secondary`,size:`sm`,children:t})]})}function mr({form:e,unsaved:t}){let{t:n,locale:r}=Y(`commentsSettings`);je([`commentsSettings`],Me);let i=F(),[a,o]=(0,Q.useState)(r),c=Pe(a,`commentsSettings.notice.heading`),l=[Pe(a,`commentsSettings.notice.base`),...e.protection===`turnstile`?[Pe(a,`commentsSettings.notice.turnstile`)]:[],...e.aiLabels===`workers-ai`?[Pe(a,`commentsSettings.notice.ai`)]:[]],u=async()=>{try{await navigator.clipboard.writeText(`${c}\n\n${l.join(` `)}`),i.success(n(`commentsSettings.notice.copied`))}catch(e){i.error(n(`errors.title`),e?Z(n,e):void 0)}};return(0,$.jsxs)(`div`,{className:`grid gap-3 border-kumo-hairline border-t pt-5`,"data-testid":`comments-notice`,children:[(0,$.jsxs)(`div`,{className:`flex flex-wrap items-start justify-between gap-3`,children:[(0,$.jsxs)(`div`,{className:`grid min-w-0 flex-[1_1_16rem] gap-1.5`,children:[(0,$.jsx)(g,{bold:!0,as:`h3`,children:n(`commentsSettings.notice.title`)}),(0,$.jsx)(g,{variant:`secondary`,size:`sm`,children:n(t?`commentsSettings.notice.hintUnsaved`:`commentsSettings.notice.hint`)})]}),(0,$.jsxs)(`fieldset`,{className:`min-w-0 overflow-x-auto`,children:[(0,$.jsx)(`legend`,{className:`sr-only`,children:n(`commentsSettings.notice.languages`)}),(0,$.jsx)(pe,{variant:`segmented`,size:`sm`,value:a,onValueChange:e=>o(e),tabs:Object.keys(Ne).map(e=>({value:e,label:Ne[e]}))})]})]}),(0,$.jsx)(De,{variant:`recessed`,label:n(`commentsSettings.notice.title`),children:(0,$.jsxs)(`div`,{lang:a,className:`grid gap-1.5`,children:[(0,$.jsx)(g,{bold:!0,children:c}),l.map(e=>(0,$.jsx)(g,{children:e},e))]})}),(0,$.jsxs)(`div`,{className:`flex flex-wrap items-center justify-between gap-3`,children:[(0,$.jsx)(g,{variant:`secondary`,size:`sm`,children:n(`commentsSettings.notice.legal`)}),(0,$.jsx)(s,{variant:`secondary`,size:`sm`,icon:(0,$.jsx)(v,{}),onClick:()=>void u(),children:n(`commentsSettings.notice.copy`)})]})]})}function hr({open:e,onOpenChange:t,onConfirm:n}){let{t:r}=Y(`commentsSettings`);return(0,$.jsx)(J.Alert,{open:e,onOpenChange:t,children:(0,$.jsxs)(J.Content,{size:`base`,closeLabel:r(`common.close`),children:[(0,$.jsx)(J.Title,{children:r(`commentsSettings.ai.confirmTitle`)}),(0,$.jsx)(J.Description,{children:r(`commentsSettings.ai.confirmDescription`)}),(0,$.jsx)(J.Body,{children:(0,$.jsx)(N,{variant:`alert`,icon:(0,$.jsx)(k,{weight:`fill`}),title:r(`commentsSettings.ai.label`),description:r(`commentsSettings.ai.confirmBanner`)})}),(0,$.jsx)(J.Actions,{dismissLabel:r(`common.cancel`),children:(0,$.jsx)(J.Actions.Primary,{variant:`primary`,onClick:n,children:r(`commentsSettings.ai.confirm`)})})]})})}function gr({siteId:e,info:t,canStore:n,disabled:r,title:a}){let{t:o,locale:l}=Y(`commentsSettings`),u=F(),f=c(),[p,m]=(0,Q.useState)(!1),[_,v]=(0,Q.useState)(``),y=d({mutationFn:()=>U.comments.setSecret(e,`turnstile-secret`,_.trim()),onSuccess:async()=>{v(``),m(!1),u.success(o(`commentsSettings.protection.secretSavedToast`)),await f.invalidateQueries({queryKey:zt(e)})},onError:e=>u.error(o(`commentsSettings.protection.secretFailed`),e.message)}),b=d({mutationFn:()=>U.comments.deleteSecret(e,`turnstile-secret`),onSuccess:async()=>{u.success(o(`commentsSettings.protection.secretRemovedToast`)),await f.invalidateQueries({queryKey:zt(e)})},onError:e=>u.error(o(`commentsSettings.protection.secretFailed`),e.message)});return n?t&&!p?(0,$.jsxs)(`div`,{className:`grid gap-1.5`,"data-testid":`turnstile-secret`,"data-state":`saved`,children:[(0,$.jsx)(g,{bold:!0,as:`span`,children:o(`commentsSettings.protection.secret`)}),(0,$.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,$.jsx)(i,{variant:`success`,appearance:`dot`,children:o(`commentsSettings.protection.secretSavedOn`,{date:ve(l,{dateStyle:`medium`}).format(new Date(t.updatedAt))})}),(0,$.jsx)(s,{variant:`ghost`,size:`sm`,disabled:r,title:a,onClick:()=>m(!0),children:o(`commentsSettings.protection.secretReplace`)}),(0,$.jsx)(s,{variant:`ghost`,size:`sm`,icon:(0,$.jsx)(ee,{}),loading:b.isPending,disabled:r,title:a,onClick:()=>b.mutate(),children:o(`commentsSettings.protection.secretRemove`)})]})]}):(0,$.jsxs)(`div`,{className:`grid gap-2`,"data-testid":`turnstile-secret`,"data-state":`empty`,children:[(0,$.jsx)(Yt,{label:o(`commentsSettings.protection.secret`),description:o(t?`commentsSettings.protection.secretHint`:`commentsSettings.protection.needsSecret`),value:_,onValueChange:v,autoComplete:`off`,className:`w-full`,disabled:r}),(0,$.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,$.jsx)(s,{variant:`secondary`,size:`sm`,loading:y.isPending,disabled:r||_.trim()===``,title:a,onClick:()=>y.mutate(),"data-testid":`turnstile-secret-save`,children:o(`commentsSettings.protection.secretSave`)}),t&&(0,$.jsx)(s,{variant:`ghost`,size:`sm`,onClick:()=>m(!1),children:o(`common.cancel`)})]})]}):(0,$.jsx)(N,{variant:`secondary`,size:`sm`,icon:(0,$.jsx)(h,{weight:`fill`}),title:o(`commentsSettings.protection.secret`),description:o(`commentsSettings.protection.keysMissing`)})}function _r({siteId:e}){let{t,locale:n}=Y(`commentsSettings`),r=F(),a=c(),o=ne(),u=P(`comments.read`),p=P(`comments.settings`),m=l({queryKey:[`instance`],queryFn:U.instance,retry:!1}).data?.features.comments,h=l({queryKey:zt(e),queryFn:()=>U.comments.settings(e),enabled:!o.isPending&&u.allowed&&m?.available!==!1,retry:(e,t)=>!V(t)&&e<1}),v=l({queryKey:[...Rt(e),`summary`,`today`],queryFn:()=>U.comments.summary(e,`today`),enabled:h.isSuccess,retry:!1}),y=l({queryKey:[`entries`,e,`collections`],queryFn:()=>U.entries.list(e),enabled:h.isSuccess}),[b,x]=(0,Q.useState)(),[S,C]=(0,Q.useState)(!1),[w,T]=(0,Q.useState)(!1),D=h.data?.settings;(0,Q.useEffect)(()=>{if(!D)return;let e=yt(D);x(t=>t?{base:e,form:kt(t.base,t.form,e)}:{base:e,form:e})},[D]);let k=d({mutationFn:t=>U.comments.updateSettings(e,D?.rev??0,t),onSuccess:async n=>{T(!1),a.setQueryData(zt(e),e=>e&&{...e,settings:n.settings}),r.success(t(`commentsSettings.saved`),n.purge===`none`?void 0:t(`commentsSettings.savedPurged`)),await a.invalidateQueries({queryKey:Rt(e),predicate:e=>e.queryKey[2]!==`settings`})}}),A=(e,t)=>x(n=>n&&{...n,form:{...n.form,[e]:t}}),j=b?Nt(b.base,b.form):!1,ee=b?Tt(b.form):{},re=()=>{T(!0),!(!b||!j||!p.allowed||Object.keys(ee).length>0)&&k.mutate(bt(b.base,b.form))},ie=()=>{T(!1),x(e=>e&&{...e,form:e.base}),k.reset()},ae=()=>{k.reset(),h.refetch()},L=m?.available===!1||V(h.error),R=L?(0,$.jsx)(i,{variant:`neutral`,appearance:`dot`,children:t(`commentsSettings.status.unavailable`)}):b?(0,$.jsx)(i,{variant:b.base.enabled?`success`:`neutral`,appearance:`dot`,children:t(b.base.enabled?`commentsSettings.status.on`:`commentsSettings.status.off`)}):null,oe=e=>e===null?t(`commentsSettings.closeAfter.never`):e===365?t(`commentsSettings.closeAfter.year`):t(`commentsSettings.closeAfter.days`,{days:e}),z=(e,n)=>{let r=Mt.includes(e)?Mt:[...Mt,e];return[...n?[{value:`site`,label:t(`commentsSettings.collections.sameAsSite`)}]:[],...r.map(e=>({value:jt(e),label:oe(e)}))]},B=e=>e===null?t(`commentsSettings.retention.keep`):e===183?t(`commentsSettings.retention.sixMonths`):e===365?t(`commentsSettings.retention.year`):t(`commentsSettings.retention.days`,{days:e}),se=(()=>{if(!u.allowed)return(0,$.jsx)(N,{variant:`secondary`,icon:(0,$.jsx)(et,{weight:`fill`}),title:t(`commentsSettings.noAccessTitle`),description:u.reason});if(L)return(0,$.jsx)(N,{variant:`secondary`,icon:(0,$.jsx)(tt,{weight:`fill`}),title:t(`commentsSettings.unavailableTitle`),description:t(`commentsSettings.unavailableDescription`)});if(h.error&&!b)return(0,$.jsx)($e,{error:h.error,onRetry:()=>void h.refetch(),retrying:h.isFetching});if(!b||!h.data)return(0,$.jsxs)(`div`,{className:`grid gap-3`,role:`status`,children:[(0,$.jsx)(`span`,{className:`sr-only`,children:t(`common.loading`)}),(0,$.jsx)(_,{minWidth:30,maxWidth:45}),(0,$.jsx)(_,{minWidth:60,maxWidth:85}),(0,$.jsx)(_,{minWidth:50,maxWidth:70})]});let{form:r}=b,a=!p.allowed,o=vt(r,[...new Set((y.data??[]).map(e=>e.collection))]),s=v.data?.dailyCap.used,c=e=>w&&ee[e]===!0;return(0,$.jsxs)($.Fragment,{children:[k.error&&(Fe(k.error)?(0,$.jsx)(`div`,{role:`alert`,children:(0,$.jsx)(N,{variant:`alert`,icon:(0,$.jsx)(te,{weight:`fill`}),title:t(`commentsSettings.conflictTitle`),description:t(`commentsSettings.conflictDescription`),action:(0,$.jsx)(N.Action,{variant:`secondary`,icon:(0,$.jsx)(f,{}),onClick:ae,loading:h.isFetching,children:t(`commentsSettings.loadLatest`)})})}):(0,$.jsx)(N,{variant:`error`,size:`sm`,icon:(0,$.jsx)(M,{weight:`fill`}),title:t(`commentsSettings.failed`),description:Z(t,k.error)})),(0,$.jsxs)(Kt,{reason:p.reason,className:`grid min-w-0 gap-5`,children:[(0,$.jsx)(pr,{testId:`comments-enabled`,label:t(`commentsSettings.enabled.label`),hint:t(`commentsSettings.enabled.hint`),checked:r.enabled,onChange:e=>A(`enabled`,e),disabled:a,title:p.reason}),(0,$.jsxs)(`div`,{className:`grid gap-3`,"data-testid":`comments-collections`,children:[(0,$.jsxs)(`div`,{className:`grid gap-1.5`,children:[(0,$.jsx)(g,{bold:!0,as:`span`,children:t(`commentsSettings.collections.label`)}),(0,$.jsx)(g,{variant:`secondary`,size:`sm`,children:t(`commentsSettings.collections.hint`)})]}),o.map(e=>{let n=r.collections[e];return(0,$.jsxs)(`div`,{className:`flex flex-wrap items-center justify-between gap-x-4 gap-y-2`,"data-collection":e,children:[(0,$.jsx)(E,{label:(0,$.jsxs)(`span`,{className:`font-mono text-[0.9em]`,children:[`/`,e]}),checked:n?.enabled===!0,disabled:a,onCheckedChange:t=>A(`collections`,{...r.collections,[e]:{...n??{},enabled:t}})}),n?.enabled&&(0,$.jsx)(W,{"aria-label":t(`commentsSettings.collections.closeAfter`,{collection:`/${e}`}),value:jt(n.closeAfterDays),onValueChange:t=>{let i=Ot(String(t)),{closeAfterDays:a,...o}=n;A(`collections`,{...r.collections,[e]:i===void 0?o:{...o,closeAfterDays:i}})},items:z(n.closeAfterDays??null,!0),disabled:a})]},e)})]}),(0,$.jsx)(pr,{testId:`comments-show-when-off`,label:t(`commentsSettings.showWhenOff.label`),hint:t(`commentsSettings.showWhenOff.hint`),checked:r.showWhenOff,onChange:e=>A(`showWhenOff`,e),disabled:a,title:p.reason}),(0,$.jsx)(W,{label:t(`commentsSettings.closeAfter.label`),description:t(`commentsSettings.closeAfter.hint`),value:jt(r.closeAfterDays),onValueChange:e=>A(`closeAfterDays`,Ot(String(e))??null),items:z(r.closeAfterDays,!1),disabled:a,"data-testid":`comments-close-after`}),(0,$.jsxs)(`div`,{className:`grid gap-3`,children:[(0,$.jsxs)(me.Group,{appearance:`card`,legend:t(`commentsSettings.protection.legend`),value:r.protection,onValueChange:e=>A(`protection`,e===`turnstile`?`turnstile`:`pow`),disabled:a,children:[(0,$.jsx)(me.Item,{value:`pow`,label:(0,$.jsxs)(`span`,{className:`inline-flex flex-wrap items-center gap-2`,children:[t(`commentsSettings.protection.pow`),(0,$.jsx)(i,{variant:`success`,icon:(0,$.jsx)(O,{size:16}),children:t(`commentsSettings.protection.powBadge`)})]}),description:t(`commentsSettings.protection.powHint`)}),(0,$.jsx)(me.Item,{value:`turnstile`,label:t(`commentsSettings.protection.turnstile`),description:t(`commentsSettings.protection.turnstileHint`)})]}),r.protection===`turnstile`&&(0,$.jsxs)(`div`,{className:`grid gap-4`,"data-testid":`turnstile-fields`,children:[(0,$.jsx)(I,{label:t(`commentsSettings.protection.siteKey`),description:t(`commentsSettings.protection.siteKeyHint`),value:r.turnstileSiteKey,onValueChange:e=>A(`turnstileSiteKey`,e),error:c(`turnstileSiteKey`)?t(`commentsSettings.protection.siteKeyInvalid`):void 0,spellCheck:!1,autoComplete:`off`,className:`w-full font-mono`,disabled:a}),(0,$.jsx)(gr,{siteId:e,info:h.data.secrets[`turnstile-secret`],canStore:h.data.canStoreSecrets,disabled:a,title:p.reason}),(0,$.jsx)(g,{variant:`secondary`,size:`sm`,children:t(`commentsSettings.protection.csp`)})]})]}),(0,$.jsx)(pr,{testId:`comments-no-script`,label:t(`commentsSettings.noScript.label`),hint:t(`commentsSettings.noScript.hint`),checked:r.allowWithoutScript,onChange:e=>A(`allowWithoutScript`,e),disabled:a,title:p.reason}),(0,$.jsx)(`div`,{className:`@container`,children:(0,$.jsxs)(`div`,{className:`grid items-start gap-5 @lg:grid-cols-2`,children:[(0,$.jsx)(I,{type:`number`,inputMode:`numeric`,min:0,max:10,label:t(`commentsSettings.linkLimit.label`),description:t(`commentsSettings.linkLimit.hint`),value:String(r.linkLimit),onValueChange:e=>A(`linkLimit`,e===``?NaN:Number(e)),error:c(`linkLimit`)?t(`commentsSettings.linkLimit.invalid`):void 0,className:`w-full`,disabled:a,"data-testid":`comments-link-limit`}),(0,$.jsxs)(`div`,{className:`grid gap-3`,children:[(0,$.jsx)(I,{type:`number`,inputMode:`numeric`,min:1,max:1e5,label:t(`commentsSettings.dailyCap.label`),description:t(`commentsSettings.dailyCap.hint`,{rows:3,cap:Number.isFinite(r.dailyCap)?xe(n,r.dailyCap):`—`,writes:Number.isFinite(r.dailyCap)?xe(n,r.dailyCap*3):`—`}),value:String(r.dailyCap),onValueChange:e=>A(`dailyCap`,e===``?NaN:Number(e)),error:c(`dailyCap`)?t(`commentsSettings.dailyCap.invalid`):void 0,className:`w-full`,disabled:a,"data-testid":`comments-daily-cap`}),s!==void 0&&(0,$.jsx)(de,{label:t(`commentsSettings.dailyCap.today`),value:s,max:Math.max(1,b.base.dailyCap),customValue:t(`commentsSettings.dailyCap.todayValue`,{used:xe(n,s),cap:xe(n,b.base.dailyCap)})})]}),(0,$.jsx)(_e,{label:t(`commentsSettings.words.watch`),description:t(`commentsSettings.words.watchHint`),value:r.watchWords,onValueChange:e=>A(`watchWords`,Ct(e)),error:c(`watchWords`)?t(`commentsSettings.words.invalid`):void 0,className:`w-full`,disabled:a}),(0,$.jsx)(_e,{label:t(`commentsSettings.words.blocked`),description:t(`commentsSettings.words.blockedHint`),value:r.blockedWords,onValueChange:e=>A(`blockedWords`,Ct(e)),error:c(`blockedWords`)?t(`commentsSettings.words.invalid`):void 0,className:`w-full`,disabled:a})]})}),(0,$.jsx)(pr,{testId:`comments-ai`,label:t(`commentsSettings.ai.label`),hint:m?.aiLabels?t(`commentsSettings.ai.hint`):t(`commentsSettings.ai.hintUnavailable`),checked:r.aiLabels===`workers-ai`,onChange:e=>{e&&b.base.aiLabels!==`workers-ai`?C(!0):A(`aiLabels`,e?`workers-ai`:`off`)},disabled:a||!m?.aiLabels&&r.aiLabels!==`workers-ai`,title:p.reason}),(0,$.jsxs)(`div`,{className:`grid gap-3 border-kumo-hairline border-t pt-5`,"data-testid":`comments-retention`,children:[(0,$.jsxs)(`div`,{className:`grid gap-1.5`,children:[(0,$.jsx)(g,{bold:!0,as:`h3`,children:t(`commentsSettings.retention.title`)}),(0,$.jsx)(g,{variant:`secondary`,size:`sm`,children:t(`commentsSettings.retention.hint`)})]}),(0,$.jsx)(`div`,{className:`@container`,children:(0,$.jsx)(`div`,{className:`grid items-start gap-5 @lg:grid-cols-2`,children:Dt.map(e=>{let n=r.retention[e],i=At[e].includes(n)?At[e]:[...At[e],n];return(0,$.jsx)(W,{label:t(`commentsSettings.retention.${e}`),value:jt(n),onValueChange:t=>{let i=Ot(String(t));A(`retention`,{...r.retention,[e]:i===void 0?n:i})},items:i.map(e=>({value:jt(e),label:B(e)})),className:`w-full`,disabled:a},e)})})})]})]}),(0,$.jsx)(mr,{form:r,unsaved:j})]})})();return(0,$.jsxs)(K,{id:fr,title:t(`commentsSettings.title`),description:t(`commentsSettings.description`),aside:R,footer:b&&!L?(0,$.jsxs)($.Fragment,{children:[j&&(0,$.jsx)(s,{variant:`ghost`,onClick:ie,disabled:k.isPending,children:t(`common.discard`)}),(0,$.jsx)(s,{variant:`primary`,onClick:re,loading:k.isPending,disabled:!p.allowed||!j,title:p.reason,"data-testid":`comments-settings-save`,children:t(`common.saveChanges`)})]}):void 0,children:[se,(0,$.jsx)(hr,{open:S,onOpenChange:C,onConfirm:()=>{A(`aiLabels`,`workers-ai`),C(!1)}})]})}var vr=`design`,yr=24e3,br=[`## Brand`,``,`## Colors`,``,`## Typography`,``,`## Layout`,``,`## Components`,``,`## Imagery`,``,`## Pages`,``,`## Do`,``,`## Don't`,``].join(`
2
2
  `),xr=e=>e instanceof B&&e.status===409;function Sr({siteId:e,theme:t}){let{t:n,locale:r}=Y(),i=c(),a=F(),o=P(`settings.write`),u=[`design-rules`,e],f=l({queryKey:u,queryFn:()=>U.design.get(e)}).data,[p,m]=(0,Q.useState)(),[h,v]=(0,Q.useState)([]);(0,Q.useEffect)(()=>{f&&(m(f.site??``),v(f.warnings))},[f]);let y=d({mutationFn:t=>U.design.save(e,{rev:f?.rev??0,markdown:t.trim()||null}),onSuccess:async t=>{v(t.warnings),a.success(n(`siteSettings.design.saved`)),await i.invalidateQueries({queryKey:u}),await i.invalidateQueries({queryKey:[`site`,e]})}}),b=n(`siteSettings.sections.design`);if(!f||p===void 0)return(0,$.jsx)(K,{id:vr,title:b,children:(0,$.jsx)(_,{})});let x=p.trim()!==(f.site??``).trim(),S=!o.allowed,C=e=>xe(r,e);return(0,$.jsxs)(K,{id:vr,title:b,description:n(`siteSettings.design.description`),footer:(0,$.jsxs)($.Fragment,{children:[x&&(0,$.jsx)(s,{variant:`ghost`,onClick:()=>m(f.site??``),children:n(`common.discard`)}),(0,$.jsx)(s,{variant:`primary`,disabled:!x||p.length>yr||S,title:o.reason,loading:y.isPending,onClick:()=>y.mutate(p),children:n(`common.saveChanges`)})]}),children:[y.error&&(0,$.jsx)(N,{variant:xr(y.error)?`alert`:`error`,icon:(0,$.jsx)(M,{weight:`fill`}),title:n(`siteSettings.design.failed`),description:xr(y.error)?n(`siteSettings.conflictDescription`):y.error instanceof Error?Z(n,y.error):String(y.error)}),h.length>0&&(0,$.jsx)(N,{variant:`alert`,icon:(0,$.jsx)(M,{weight:`fill`}),title:n(`siteSettings.design.warnings`),description:h.join(` `),"data-testid":`design-warnings`}),(0,$.jsxs)(`div`,{className:`grid min-w-0 gap-4`,children:[(0,$.jsx)(L,{className:`w-full font-mono`,label:n(`siteSettings.design.label`),placeholder:n(`siteSettings.design.placeholder`),value:p,onValueChange:m,disabled:S,autoResize:!0,minRows:10,maxRows:30,description:n(`siteSettings.design.count`,{count:C(p.length),max:C(yr)}),"data-testid":`design-rules`}),!p.trim()&&!S&&(0,$.jsx)(`div`,{children:(0,$.jsx)(s,{variant:`secondary`,onClick:()=>m(br),children:n(`siteSettings.design.template`)})}),f.theme?(0,$.jsxs)(ue.Root,{children:[(0,$.jsx)(ue.DefaultTrigger,{children:n(`siteSettings.design.theme`,{theme:t})}),(0,$.jsx)(ue.Panel,{children:(0,$.jsxs)(`div`,{className:`grid gap-1.5 pt-3`,children:[(0,$.jsx)(g,{variant:`secondary`,size:`sm`,children:n(`siteSettings.design.themeHint`)}),(0,$.jsx)(L,{"aria-label":n(`siteSettings.design.theme`,{theme:t}),className:`w-full font-mono`,value:f.theme,readOnly:!0,autoResize:!0,minRows:6,maxRows:20})]})})]}):(0,$.jsx)(g,{variant:`secondary`,size:`sm`,children:n(`siteSettings.design.noTheme`,{theme:t})}),(0,$.jsx)(g,{variant:`secondary`,size:`sm`,children:S&&o.reason?o.reason:n(`siteSettings.design.agentHint`)})]})]})}var Cr=`glossary`;function wr(e){let t=Object.fromEntries(Object.entries(e.translations??{}).filter(([,e])=>e?.text.trim())),{translations:n,...r}=e;return{...r,term:e.term.trim(),...!e.doNotTranslate&&Object.keys(t).length?{translations:t}:{}}}function Tr({siteId:e}){let{t,locale:n}=Y(),r=c(),i=F(),a=P(`settings.write`),o=l({queryKey:[`site`,e],queryFn:()=>U.sites.get(e)}),u=[`glossary`,e],f=l({queryKey:u,queryFn:()=>U.translations.glossary(e)}),[p,h]=(0,Q.useState)();(0,Q.useEffect)(()=>{f.data&&h(f.data.entries)},[f.data]);let v=d({mutationFn:t=>U.translations.saveGlossary(e,{...`rev`in(f.data??{})?{id:f.data.id,rev:f.data.rev}:{},entries:t.map(wr).filter(e=>e.term)}),onSuccess:e=>{r.setQueryData(u,e),i.success(t(`glossary.saved`))}}),y=t(`glossary.title`);if(!o.data||!p)return(0,$.jsx)(K,{id:Cr,title:y,children:(0,$.jsx)(_,{})});let b=o.data.locales.filter(e=>e!==o.data?.defaultLocale),x=e=>Bt(n,e),S=JSON.stringify(p)!==JSON.stringify(f.data?.entries??[]),C=!a.allowed,w=(e,t)=>h(p.map((n,r)=>r===e?t:n));return(0,$.jsxs)(K,{id:Cr,title:y,description:t(`glossary.description`),footer:(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(s,{variant:`ghost`,icon:(0,$.jsx)(D,{}),disabled:C,onClick:()=>h([...p,{term:``}]),children:t(`glossary.add`)}),(0,$.jsx)(s,{variant:`primary`,disabled:!S||C,title:a.reason,loading:v.isPending,onClick:()=>v.mutate(p),children:t(`common.saveChanges`)})]}),children:[v.error&&(0,$.jsx)(N,{variant:`error`,icon:(0,$.jsx)(M,{weight:`fill`}),title:t(`glossary.failed`),description:Z(t,v.error)}),b.length===0&&(0,$.jsx)(g,{variant:`secondary`,size:`sm`,children:t(`glossary.oneLanguage`)}),p.length===0?(0,$.jsx)(Ye,{icon:(0,$.jsx)(m,{size:32,className:`text-kumo-inactive`}),title:t(`glossary.empty`),description:t(`glossary.emptyDescription`)}):(0,$.jsxs)(G,{children:[(0,$.jsx)(G.Header,{children:(0,$.jsxs)(G.Row,{children:[(0,$.jsx)(G.Head,{children:t(`glossary.term`)}),(0,$.jsx)(G.Head,{children:t(`glossary.neverTranslate`)}),b.map(e=>(0,$.jsx)(G.Head,{children:x(e)},e)),(0,$.jsx)(G.Head,{sticky:`right`})]})}),(0,$.jsx)(G.Body,{children:p.map((e,n)=>(0,$.jsxs)(G.Row,{"data-term":e.term,children:[(0,$.jsx)(G.Cell,{children:(0,$.jsx)(I,{"aria-label":t(`glossary.term`),value:e.term,onValueChange:t=>w(n,{...e,term:t}),disabled:C})}),(0,$.jsx)(G.Cell,{children:(0,$.jsx)(E,{"aria-label":t(`glossary.neverTranslate`),checked:e.doNotTranslate===!0,disabled:C,onCheckedChange:t=>{let{doNotTranslate:r,...i}=e;w(n,t===!0?{...i,doNotTranslate:!0}:i)}})}),b.map(r=>(0,$.jsx)(G.Cell,{children:(0,$.jsx)(I,{"aria-label":t(`glossary.translationIn`,{language:x(r)}),value:e.translations?.[r]?.text??``,disabled:C||e.doNotTranslate===!0,onValueChange:t=>w(n,{...e,translations:{...e.translations,[r]:{text:t}}})})},r)),(0,$.jsx)(G.Cell,{sticky:`right`,className:`text-end`,children:(0,$.jsx)(s,{variant:`ghost`,shape:`square`,icon:(0,$.jsx)(Xe,{}),"aria-label":t(`glossary.remove`,{term:e.term||`…`}),disabled:C,onClick:()=>h(p.filter((e,t)=>t!==n))})})]},n))})]})]})}function Er({icon:e,title:t,children:n}){return(0,$.jsxs)(`div`,{className:`flex items-start gap-2`,children:[(0,$.jsx)(`span`,{className:`flex h-lh items-center text-kumo-subtle`,children:e}),(0,$.jsxs)(`span`,{className:`grid gap-0.5`,children:[(0,$.jsx)(g,{as:`span`,bold:!0,children:t}),(0,$.jsx)(g,{as:`span`,variant:`secondary`,size:`sm`,children:n})]})]})}function Dr({siteId:e}){let t=X(),n=P(`sites.create`),[r,i]=(0,Q.useState)(!1);return(0,$.jsxs)(De,{label:t(`editionGuide.title`),children:[(0,$.jsxs)(`div`,{className:`grid gap-3`,"data-testid":`edition-guide`,children:[(0,$.jsx)(Er,{icon:(0,$.jsx)(it,{size:16}),title:t(`editionGuide.hereTitle`),children:t(`editionGuide.here`)}),(0,$.jsx)(Er,{icon:(0,$.jsx)(Qe,{size:16}),title:t(`editionGuide.editionTitle`),children:t(`editionGuide.edition`)}),(0,$.jsx)(`div`,{children:(0,$.jsx)(s,{variant:`secondary`,icon:(0,$.jsx)(v,{size:16}),disabled:!n.allowed,title:n.reason,onClick:()=>i(!0),children:t(`editionGuide.create`)})})]}),(0,$.jsx)(qt,{open:r,onOpenChange:i,from:e})]})}var Or=/^[a-z]{2,3}(?:-[A-Za-z0-9]{2,8})*$/;function kr({taken:e,onPick:t,disabled:n}){let{t:r,locale:i}=Y(),[a,o]=(0,Q.useState)(``),s=(0,Q.useMemo)(()=>{let t=be(i),n=Ht.filter(t=>!e.includes(t)).map(e=>({tag:e,label:Vt(i,e)})).sort((e,n)=>t.compare(e.label,n.label)),o=a.trim();return[...Or.test(o)&&!e.includes(o)&&!Ht.includes(o)?[{tag:o,label:r(`languages.useTag`,{tag:o})}]:[],...n]},[i,e,a,r]);return(0,$.jsxs)(z,{items:s,value:null,onValueChange:e=>{let n=e;n&&(t(n.tag),o(``))},inputValue:a,onInputValueChange:e=>o(e),isItemEqualToValue:(e,t)=>e.tag===t.tag,itemToStringLabel:e=>e.label,label:r(`languages.add`),description:r(`languages.addHint`),disabled:n,children:[(0,$.jsx)(z.TriggerInput,{placeholder:r(`languages.addPlaceholder`),clearLabel:r(`languages.clear`),showOptionsLabel:r(`languages.showOptions`)}),(0,$.jsxs)(z.Content,{children:[(0,$.jsx)(z.Empty,{children:r(`languages.noMatch`)}),(0,$.jsx)(z.List,{children:e=>(0,$.jsx)(z.Item,{value:e,children:e.label},e.tag)})]})]})}var Ar=`languages`;function jr(e){let t=e.localization??{};return{locales:e.locales,routing:t.routing??`prefix-except-default`,fallback:t.fallback??`none`,label:t.label??`unreviewed`,review:t.review?.required??[]}}function Mr(e,t){let n={...e.localization?.domains?{domains:e.localization.domains}:{},...t.routing===`prefix-except-default`?{}:{routing:t.routing},...t.fallback===`none`?{}:{fallback:t.fallback},...t.label===`unreviewed`?{}:{label:t.label},...t.review.length?{review:{required:t.review}}:{}},{localization:r,...i}=e;return{...i,locales:t.locales,...Object.keys(n).length?{localization:n}:{}}}var Nr=[`pages`,`posts`];function Pr({siteId:e}){let{t,locale:n}=Y(),r=c(),i=F(),a=P(`settings.write`),o=l({queryKey:[`site`,e],queryFn:()=>U.sites.get(e)}),[u,f]=(0,Q.useState)();(0,Q.useEffect)(()=>{o.data&&f(jr(o.data))},[o.data]);let p=d({mutationFn:e=>U.sites.update(Mr(o.data,e)),onSuccess:n=>{r.setQueryData([`site`,e],n),i.success(t(`languages.saved`))}}),m=t(`languages.title`);if(!o.data||!u)return(0,$.jsx)(K,{id:Ar,title:m,children:(0,$.jsx)(_,{})});let h=o.data.defaultLocale,g=e=>Bt(n,e),v=JSON.stringify(u)!==JSON.stringify(jr(o.data)),y=e=>f({...u,...e}),b=!a.allowed;return(0,$.jsxs)(K,{id:Ar,title:m,description:t(`languages.description`),footer:(0,$.jsxs)($.Fragment,{children:[v&&(0,$.jsx)(s,{variant:`ghost`,onClick:()=>f(jr(o.data)),children:t(`common.discard`)}),(0,$.jsx)(s,{variant:`primary`,disabled:!v||b,title:a.reason,loading:p.isPending,onClick:()=>p.mutate(u),children:t(`common.saveChanges`)})]}),children:[p.error&&(0,$.jsx)(N,{variant:`error`,icon:(0,$.jsx)(M,{weight:`fill`}),title:t(`languages.failed`),description:p.error instanceof B&&p.error.status===409?t(`siteSettings.conflictDescription`):Z(t,p.error)}),(0,$.jsx)(Fr,{form:u,set:y,def:h,name:g,disabled:b}),(0,$.jsx)(Dr,{siteId:e}),(0,$.jsx)(Ir,{form:u,set:y,disabled:b})]})}function Fr({form:e,set:t,def:n,name:r,disabled:a}){let{t:o}=Y();return(0,$.jsxs)($.Fragment,{children:[(0,$.jsxs)(G,{children:[(0,$.jsx)(G.Header,{children:(0,$.jsxs)(G.Row,{children:[(0,$.jsx)(G.Head,{children:o(`languages.language`)}),(0,$.jsx)(G.Head,{children:o(`languages.tag`)}),(0,$.jsx)(G.Head,{sticky:`right`})]})}),(0,$.jsx)(G.Body,{children:e.locales.map(c=>(0,$.jsxs)(G.Row,{"data-locale":c,children:[(0,$.jsx)(G.Cell,{children:(0,$.jsxs)(`span`,{className:`flex items-center gap-2`,children:[r(c),c===n&&(0,$.jsx)(i,{variant:`info`,children:o(`languages.default`)})]})}),(0,$.jsx)(G.Cell,{children:(0,$.jsx)(g,{variant:`mono`,as:`span`,children:c})}),(0,$.jsx)(G.Cell,{sticky:`right`,className:`text-end`,children:c!==n&&(0,$.jsx)(s,{variant:`ghost`,shape:`square`,icon:(0,$.jsx)(Xe,{}),"aria-label":o(`languages.remove`,{language:r(c)}),disabled:a,onClick:()=>t({locales:e.locales.filter(e=>e!==c)})})})]},c))})]}),(0,$.jsx)(kr,{taken:e.locales,disabled:a,onPick:n=>t({locales:[...e.locales,n]})})]})}function Ir({form:e,set:t,disabled:n}){let{t:r}=Y();return(0,$.jsxs)(`dl`,{className:`-mb-3 divide-y divide-kumo-hairline border-kumo-hairline border-t`,children:[(0,$.jsx)(q,{label:r(`languages.routing`),hint:r(`languages.routingHint`),children:(0,$.jsx)(W,{"aria-label":r(`languages.routing`),value:e.routing,onValueChange:e=>t({routing:e}),items:{"prefix-except-default":r(`languages.routingOptions.prefixExceptDefault`),"prefix-all":r(`languages.routingOptions.prefixAll`)},disabled:n})}),(0,$.jsx)(q,{label:r(`languages.fallback`),hint:r(`languages.fallbackHint`),children:(0,$.jsx)(W,{"aria-label":r(`languages.fallback`),value:e.fallback,onValueChange:e=>t({fallback:e}),items:{none:r(`languages.fallbackOptions.none`),"default-with-notice":r(`languages.fallbackOptions.defaultWithNotice`)},disabled:n})}),(0,$.jsx)(q,{label:r(`languages.review`),hint:r(`languages.reviewHint`),children:(0,$.jsx)(`span`,{className:`grid gap-2`,children:Nr.map(i=>(0,$.jsx)(E,{label:r(`languages.reviewOptions.${i}`),checked:e.review.includes(i),disabled:n,onCheckedChange:n=>t({review:n===!0?[...e.review,i]:e.review.filter(e=>e!==i)})},i))})}),(0,$.jsx)(q,{label:r(`languages.label`),hint:r(`languages.labelHint`),children:(0,$.jsx)(W,{"aria-label":r(`languages.label`),value:e.label,onValueChange:e=>t({label:e}),items:{unreviewed:r(`languages.labelOptions.unreviewed`),always:r(`languages.labelOptions.always`)},disabled:n})})]})}var Lr=`schedules`;function Rr({value:e,onChange:t,disabled:n,invalid:r}){let{t:i}=Y(`scheduleSettings`),a=`scheduleSettings.timeZone`,o=we(),c=(0,Q.useMemo)(()=>{let e=Date.now(),t=Ce();return[o,...t.filter(e=>e!==o)].map(t=>({value:t,label:`${Se(t,e)} · ${t}`}))},[o]),l=c.find(t=>t.value===(e||`UTC`))??null;return(0,$.jsxs)(`div`,{className:`grid gap-1.5`,"data-testid":`time-zone`,children:[(0,$.jsxs)(z,{items:c,value:l,onValueChange:e=>t(e?.value??``),isItemEqualToValue:(e,t)=>e.value===t.value,itemToStringLabel:e=>e.label,label:i(`${a}.label`),description:i(`${a}.description`),error:r?i(`${a}.invalid`):void 0,disabled:n,children:[(0,$.jsx)(z.TriggerInput,{placeholder:i(`${a}.placeholder`),clearLabel:i(`${a}.clear`),showOptionsLabel:i(`${a}.show`)}),(0,$.jsxs)(z.Content,{children:[(0,$.jsx)(z.Empty,{children:i(`${a}.empty`)}),(0,$.jsx)(z.List,{children:e=>(0,$.jsx)(z.Item,{value:e,children:e.label},e.value)})]})]}),o!==(e||`UTC`)&&(0,$.jsx)(`div`,{children:(0,$.jsx)(s,{variant:`ghost`,size:`sm`,disabled:n,onClick:()=>t(o),children:i(`${a}.useBrowser`,{zone:Se(o)})})})]})}var zr=e=>e instanceof B&&e.status===409;function Br({siteId:e}){let{t,locale:n}=Y(`scheduleSettings`),r=c(),a=F(),o=P(`schedules.settings`),u=`scheduleSettings`,p=[`schedules`,e,`settings`],m=l({queryKey:p,queryFn:()=>at.settings.get(e),retry:(e,t)=>!V(t)&&e<1}),h=l({queryKey:[`scheduler`],queryFn:U.scheduler,retry:!1}),[v,y]=(0,Q.useState)(``),[b,x]=(0,Q.useState)(),[S,C]=(0,Q.useState)(``),w=m.data?.dailyWriteCap;(0,Q.useEffect)(()=>{w!==void 0&&y(String(w))},[w]);let T=d({mutationFn:t=>at.settings.put(e,t),onSuccess:async(n,i)=>{r.setQueryData(p,e=>({...e,...n})),await r.invalidateQueries({queryKey:[`schedules`,e]}),x(void 0),a.success(i.paused===!0?t(`${u}.killSwitch.pausedToast`):i.paused===!1?t(`${u}.killSwitch.resumedToast`):t(`${u}.cap.saved`))}});if(V(m.error))return(0,$.jsx)(K,{id:Lr,title:t(`${u}.title`),children:(0,$.jsx)(N,{variant:`secondary`,icon:(0,$.jsx)(M,{weight:`fill`}),description:t(`${u}.unavailable`)})});let E=m.data,D=Number(v),O=Number.isInteger(D)&&D>=1&&D<=1e5,k=E!==void 0&&O&&D!==E.dailyWriteCap,A=h.data,j=A?.state===`running`?`success`:A?.state===`unknown`?`secondary`:`error`;return(0,$.jsxs)(K,{id:Lr,title:t(`${u}.title`),description:t(`${u}.description`),aside:E?.paused?(0,$.jsx)(i,{variant:`warning`,icon:(0,$.jsx)(Ze,{}),children:t(`${u}.health.state.stopped`)}):void 0,footer:(0,$.jsxs)($.Fragment,{children:[v!==String(E?.dailyWriteCap??``)&&(0,$.jsx)(s,{variant:`ghost`,onClick:()=>y(String(E?.dailyWriteCap??``)),children:t(`common.discard`)}),(0,$.jsx)(s,{variant:`primary`,disabled:!k||!o.allowed,title:o.reason,loading:T.isPending&&T.variables?.dailyWriteCap!==void 0,onClick:()=>E&&T.mutate({rev:E.rev,dailyWriteCap:D}),children:t(`common.saveChanges`)})]}),children:[E?(0,$.jsxs)($.Fragment,{children:[T.error&&(0,$.jsx)(N,{variant:zr(T.error)?`alert`:`error`,icon:(0,$.jsx)(M,{weight:`fill`}),title:t(`${u}.failed`),description:zr(T.error)?t(`${u}.conflict`):Z(t,T.error),action:zr(T.error)?(0,$.jsx)(N.Action,{variant:`secondary`,icon:(0,$.jsx)(f,{}),onClick:()=>{T.reset(),m.refetch()},children:t(`${u}.reload`)}):void 0}),(0,$.jsxs)(`dl`,{className:`-my-3 divide-y divide-kumo-hairline`,"data-testid":`schedule-settings`,children:[(0,$.jsx)(q,{label:t(`${u}.health.label`),hint:t(`${u}.health.hint`),children:A?(0,$.jsxs)(`span`,{className:`flex flex-wrap items-center gap-2`,children:[(0,$.jsx)(i,{variant:j,appearance:`dot`,children:t(`${u}.health.state.${A.state}`)}),(0,$.jsx)(g,{variant:`secondary`,size:`sm`,as:`span`,children:A.lastTickAt?t(`${u}.health.lastTick`,{time:Te(A.lastTickAt,n)}):t(`${u}.health.never`)}),(0,$.jsx)(g,{variant:`secondary`,size:`sm`,as:`span`,children:t(`${u}.health.modes.${A.mode??`unknown`}`)})]}):(0,$.jsx)(_,{minWidth:20,maxWidth:30})}),(0,$.jsx)(q,{label:t(`${u}.killSwitch.label`),hint:E.paused&&E.pausedAt?`${t(`${u}.killSwitch.paused`,{time:Te(E.pausedAt,n),name:E.pausedBy?.name??E.pausedBy?.id??`—`})}${E.pausedReason?` ${t(`${u}.killSwitch.reasonShown`,{reason:E.pausedReason})}`:``}`:t(`${u}.killSwitch.hint`),children:(0,$.jsx)(fe,{"aria-label":t(`${u}.killSwitch.label`),checked:E.paused,disabled:!o.allowed||T.isPending,title:o.reason,onCheckedChange:e=>{C(``),x(e?`pause`:`resume`)}})}),(0,$.jsx)(q,{label:t(`${u}.cap.label`),hint:t(`${u}.cap.hint`),children:(0,$.jsxs)(`span`,{className:`grid w-56 max-w-full gap-2`,children:[(0,$.jsx)(I,{type:`number`,inputMode:`numeric`,"aria-label":t(`${u}.cap.label`),value:v,onValueChange:y,disabled:!o.allowed,title:o.reason,error:v&&!O?t(`${u}.cap.error`):void 0,className:`w-full`}),(0,$.jsx)(de,{label:t(`${u}.cap.used`,{used:xe(n,E.writesToday??0),cap:xe(n,E.dailyWriteCap)}),value:E.writesToday??0,max:Math.max(1,E.dailyWriteCap)})]})})]})]}):(0,$.jsxs)(`div`,{className:`grid gap-3`,role:`status`,children:[(0,$.jsx)(`span`,{className:`sr-only`,children:t(`common.loading`)}),(0,$.jsx)(_,{minWidth:30,maxWidth:45}),(0,$.jsx)(_,{minWidth:60,maxWidth:85})]}),(0,$.jsx)(J.Alert,{open:b!==void 0,onOpenChange:e=>{e||x(void 0)},dismissDisabled:T.isPending,children:(0,$.jsxs)(J.Content,{size:`sm`,closeLabel:t(`common.close`),children:[(0,$.jsx)(J.Title,{children:t(b===`pause`?`${u}.killSwitch.confirmTitle`:`${u}.killSwitch.resumeTitle`)}),(0,$.jsx)(J.Description,{children:t(b===`pause`?`${u}.killSwitch.confirmDescription`:`${u}.killSwitch.resumeDescription`)}),(0,$.jsx)(J.Body,{children:b===`pause`?(0,$.jsx)(L,{className:`w-full`,label:t(`${u}.killSwitch.reason`),description:t(`${u}.killSwitch.reasonHint`),placeholder:t(`${u}.killSwitch.reasonPlaceholder`),value:S,maxLength:500,onValueChange:C}):(0,$.jsx)(`span`,{})}),(0,$.jsx)(J.Actions,{dismissLabel:t(`common.cancel`),children:(0,$.jsx)(J.Actions.Primary,{variant:b===`pause`?`destructive`:`primary`,loading:T.isPending,onClick:()=>E&&T.mutate({rev:E.rev,paused:b===`pause`,...b===`pause`&&S.trim()?{reason:S.trim()}:{}}),children:t(b===`pause`?`${u}.killSwitch.pause`:`${u}.killSwitch.resume`)})})]})})]})}var Vr=[`general`,`domains`,cr,zn,Hn,vr,an,fr,Lr,`ai`,Ar,Cr,`previews`],Hr={[an]:`analyticsSettings.title`,[fr]:`commentsSettings.title`,[Lr]:`scheduleSettings.title`,ai:`aiSettings.title`,[Hn]:`appearance.chrome.title`,[Ar]:`languages.title`,[Cr]:`glossary.title`};function Ur(e){return e in Hr?Hr[e]:`siteSettings.sections.${e}`}function Wr(e){let t=c();return d({mutationFn:e=>U.sites.update(e),onSuccess:async n=>{t.setQueryData([`site`,e],n),await t.invalidateQueries({queryKey:[`sites`]})}})}function Gr({error:e,title:t,onReload:n,reloading:r}){let i=X();return e?Fe(e)?(0,$.jsx)(sr,{onReload:n,reloading:r}):(0,$.jsx)(N,{variant:`error`,size:`sm`,icon:(0,$.jsx)(M,{weight:`fill`}),title:t,description:Z(i,e)}):null}function Kr(){let e=X();return(0,$.jsxs)(`div`,{className:`grid gap-3`,role:`status`,children:[(0,$.jsx)(`span`,{className:`sr-only`,children:e(`common.loading`)}),(0,$.jsx)(_,{minWidth:30,maxWidth:45}),(0,$.jsx)(_,{minWidth:60,maxWidth:85}),(0,$.jsx)(_,{minWidth:50,maxWidth:70})]})}function qr({children:e}){return(0,$.jsxs)(`div`,{className:`flex items-start gap-2`,children:[(0,$.jsx)(`span`,{className:`flex h-lh items-center text-kumo-subtle`,children:(0,$.jsx)(h,{size:16})}),(0,$.jsx)(g,{variant:`secondary`,size:`sm`,children:e})]})}function Jr({site:e,onReload:t,reloading:n}){let r=X(),a=F(),o=Wr(e?.id??``),[c,u]=(0,Q.useState)(e?.name??``),[d,f]=(0,Q.useState)(e?.defaultLocale??``),p=l({queryKey:[`instance`],queryFn:U.instance,retry:!1}).data?.features.schedules?.available,[m,h]=(0,Q.useState)(e?.timeZone??``),[g,_]=(0,Q.useState)(!1),v=e?.name,b=e?.defaultLocale,x=e?.timeZone??``;(0,Q.useEffect)(()=>{v!==void 0&&u(v),b!==void 0&&f(b),h(x)},[v,b,x]);let S=!!e&&(c.trim()!==e.name||d!==e.defaultLocale||m!==(e.timeZone??``)),C=g?ut(c):void 0,w=()=>{e&&(_(!0),S&&!ut(c)&&o.mutate(We(e,{name:c,defaultLocale:d,timeZone:m}),{onSuccess:e=>{_(!1),a.success(r(`siteSettings.general.saved`),r(`common.rev`,{rev:e.rev}))}}))},T=()=>{e&&(u(e.name),f(e.defaultLocale),h(e.timeZone??``),_(!1),o.reset())},E=e?Array.from(new Set([e.defaultLocale,...e.locales])):[];return(0,$.jsx)(K,{id:`general`,title:r(`siteSettings.sections.general`),description:r(`siteSettings.general.description`),footer:(0,$.jsxs)($.Fragment,{children:[S&&(0,$.jsx)(s,{variant:`ghost`,onClick:T,disabled:o.isPending,children:r(`common.discard`)}),(0,$.jsx)(s,{variant:`primary`,onClick:w,loading:o.isPending,disabled:!S,children:r(`common.saveChanges`)})]}),children:e?(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(Gr,{error:ce(o.error)===`invalid_time_zone`?void 0:o.error,title:r(`siteSettings.general.failed`),onReload:()=>{o.reset(),t()},reloading:n}),(0,$.jsx)(I,{className:`w-full`,label:r(`siteSettings.general.name`),description:r(`siteSettings.general.nameHint`),value:c,onValueChange:u,maxLength:250,error:C?r(`siteSettings.general.errors.${C}`,{max:200}):void 0,onKeyDown:e=>{e.key===`Enter`&&(e.preventDefault(),w())}}),(0,$.jsx)(`div`,{className:`@container`,children:(0,$.jsxs)(`div`,{className:`grid items-start gap-5 @lg:grid-cols-2`,children:[(0,$.jsxs)(R,{label:r(`siteSettings.general.slug`),description:r(`siteSettings.general.slugHint`),children:[(0,$.jsx)(R.Addon,{children:`/`}),(0,$.jsx)(R.Input,{value:e.slug,readOnly:!0,className:`text-kumo-subtle`})]}),(0,$.jsx)(W,{label:r(`siteSettings.general.defaultLocale`),description:r(`siteSettings.general.defaultLocaleHint`),value:d,onValueChange:e=>f(String(e)),items:Object.fromEntries(E.map(e=>[e,e]))})]})}),p&&(0,$.jsx)(Rr,{value:m,onChange:h,invalid:ce(o.error)===`invalid_time_zone`}),(0,$.jsxs)(`dl`,{className:`-mb-3 divide-y divide-kumo-hairline border-kumo-hairline border-t`,children:[(0,$.jsx)(q,{label:r(`siteSettings.general.locales`),hint:r(`siteSettings.general.localesHint`),children:e.locales.map(e=>(0,$.jsx)(i,{variant:`outline`,children:(0,$.jsx)(`span`,{className:`font-mono text-[0.9em]`,children:e})},e))}),(0,$.jsx)(q,{label:r(`siteSettings.general.siteId`),children:(0,$.jsx)(y,{children:e.id})})]})]}):(0,$.jsx)(Kr,{})})}function Yr({domain:e,onMakePrimary:t,onRemove:n}){let r=X();return(0,$.jsxs)(le,{children:[(0,$.jsx)(le.Trigger,{render:(0,$.jsx)(s,{variant:`ghost`,size:`xs`,shape:`square`,icon:(0,$.jsx)(b,{weight:`bold`}),"aria-label":r(`site.rowMenu`)})}),(0,$.jsxs)(le.Content,{align:`end`,children:[(0,$.jsx)(le.Item,{icon:p(nt),onClick:()=>window.open(`https://${e.hostname}`,`_blank`,`noopener`),children:r(`siteSettings.domains.visit`)}),!e.primary&&(0,$.jsx)(le.Item,{icon:j,onClick:t,children:r(`siteSettings.domains.makePrimary`)}),(0,$.jsx)(le.Item,{icon:ee,variant:`danger`,onClick:n,children:r(`siteSettings.domains.remove`)})]})]})}function Xr({site:e,onReload:t,reloading:n}){let r=X(),a=F(),o=Wr(e?.id??``),[s,c]=(0,Q.useState)(``),[l,u]=(0,Q.useState)(!1),[d,f]=(0,Q.useState)(),p=e?.domains??[],m=Le(s),h=l?ze(m,p):void 0,_=(t,n)=>{e&&o.mutate({...e,domains:t},{onSuccess:n})},v=()=>{if(u(!0),ze(m,p)||o.isPending)return;let e=!p.some(e=>e.primary);_(He(p,m),()=>{c(``),u(!1),a.success(r(`siteSettings.domains.added`),r(e?`siteSettings.domains.addedPrimaryDescription`:`siteSettings.domains.addedDescription`,{hostname:m}))})},y=d?.primary?Ge(Re(p,d.hostname)):void 0;return(0,$.jsxs)(K,{id:`domains`,title:r(`siteSettings.sections.domains`),description:r(`siteSettings.domains.description`),aside:e&&(0,$.jsx)(i,{variant:`secondary`,children:(0,$.jsx)(`span`,{className:`tabular-nums`,children:p.length})}),flush:!0,children:[e?(0,$.jsxs)($.Fragment,{children:[o.error&&!d&&(0,$.jsx)(`div`,{className:`px-5 pt-4`,children:(0,$.jsx)(Gr,{error:o.error,title:r(`siteSettings.domains.failed`),onReload:()=>{o.reset(),t()},reloading:n})}),p.length===0?(0,$.jsx)(Ye,{icon:(0,$.jsx)(Qe,{size:48,className:`text-kumo-inactive`}),title:r(`siteSettings.domains.empty`),description:r(`siteSettings.domains.emptyDescription`)}):(0,$.jsxs)(G,{children:[(0,$.jsx)(G.Header,{children:(0,$.jsxs)(G.Row,{children:[(0,$.jsx)(G.Head,{children:r(`siteSettings.domains.columns.hostname`)}),(0,$.jsx)(G.Head,{children:r(`siteSettings.domains.columns.role`)}),(0,$.jsx)(G.Head,{sticky:`right`})]})}),(0,$.jsx)(G.Body,{children:Ve(p).map(e=>(0,$.jsxs)(G.Row,{"data-hostname":e.hostname,children:[(0,$.jsx)(G.Cell,{className:`whitespace-nowrap`,children:(0,$.jsx)(g,{variant:`mono`,as:`span`,children:e.hostname})}),(0,$.jsx)(G.Cell,{className:`whitespace-nowrap`,children:e.primary?(0,$.jsx)(i,{variant:`info`,icon:(0,$.jsx)(j,{weight:`fill`}),children:r(`siteSettings.domains.primary`)}):(0,$.jsx)(i,{variant:`outline`,children:r(`siteSettings.domains.alias`)})}),(0,$.jsx)(G.Cell,{sticky:`right`,className:`text-end`,children:(0,$.jsx)(Yr,{domain:e,onMakePrimary:()=>_(Be(p,e.hostname),()=>a.success(r(`siteSettings.domains.primaryChanged`),r(`siteSettings.domains.primaryChangedDescription`,{hostname:e.hostname}))),onRemove:()=>{o.reset(),f(e)}})})]},e.hostname))})]}),(0,$.jsxs)(`div`,{className:`grid grid-cols-1 gap-3 border-kumo-hairline border-t px-5 pt-4 pb-5`,children:[(0,$.jsxs)(R,{label:r(`siteSettings.domains.hostname`),error:h?{message:r(`siteSettings.domains.errors.${h}`),match:!0}:void 0,children:[(0,$.jsx)(R.Addon,{children:`https://`}),(0,$.jsx)(R.Input,{value:s,placeholder:r(`siteSettings.domains.placeholder`),className:`w-0`,autoComplete:`off`,spellCheck:!1,"aria-invalid":h?!0:void 0,onChange:e=>{c(e.target.value),u(!1)},onKeyDown:e=>{e.key===`Enter`&&(e.preventDefault(),v())}}),(0,$.jsx)(R.Button,{variant:`secondary`,icon:(0,$.jsx)(D,{}),onClick:v,loading:o.isPending&&!d,children:r(`siteSettings.domains.add`)})]}),(0,$.jsx)(qr,{children:r(`siteSettings.domains.dnsHint`)})]})]}):(0,$.jsx)(`div`,{className:`px-5 py-4`,children:(0,$.jsx)(Kr,{})}),(0,$.jsx)(lt,{open:d!==void 0,onOpenChange:e=>{e||(f(void 0),o.reset())},title:r(`siteSettings.domains.removeTitle`,{hostname:d?.hostname??``}),description:r(`siteSettings.domains.removeDescription`),detail:d&&p.length===1?r(`siteSettings.domains.removeLastDetail`):y?r(`siteSettings.domains.removePrimaryDetail`,{next:y}):void 0,confirmLabel:r(`siteSettings.domains.remove`),busy:o.isPending,error:o.error?Fe(o.error)?r(`siteSettings.conflictDescription`):Z(r,o.error):void 0,onConfirm:()=>{if(!d)return;let e=d.hostname;_(Re(p,e),()=>{f(void 0),a.success(r(`siteSettings.domains.removed`),e)})}})]})}function Zr(e,t,n,r){let i=Ie(e.createdAt,n);return`${e.label??e.id} · ${i}${t?` · ${r}`:``}`}function Qr({link:e}){let{t,locale:n}=Y(),r=e.target===`live`?`live`:`snapshot`;return(0,$.jsx)(`div`,{"data-testid":`preview-link`,"aria-live":`polite`,children:(0,$.jsxs)(De,{className:`gap-3`,children:[(0,$.jsxs)(`div`,{className:`flex flex-wrap items-center justify-between gap-2`,children:[(0,$.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,$.jsx)(g,{bold:!0,as:`span`,children:t(`siteSettings.previews.result`)}),(0,$.jsx)(i,{variant:r===`live`?`info`:`secondary`,children:t(`siteSettings.previews.showing.${r}`)})]}),e.url&&(0,$.jsx)(a,{href:e.url,external:!0,variant:`secondary`,size:`sm`,children:t(`siteSettings.previews.openLink`)})]}),e.url?(0,$.jsx)(oe,{size:`base`,text:e.url,tooltip:{text:t(`common.copy`),copiedText:t(`common.copied`)}}):(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(N,{variant:`alert`,size:`sm`,icon:(0,$.jsx)(te,{weight:`fill`}),title:t(`siteSettings.previews.noDomainTitle`),description:t(`siteSettings.previews.noDomainDescription`)}),(0,$.jsxs)(`div`,{className:`grid gap-1.5`,children:[(0,$.jsx)(g,{size:`sm`,bold:!0,as:`span`,children:t(`siteSettings.previews.token`)}),(0,$.jsx)(oe,{size:`base`,text:e.token,tooltip:{text:t(`common.copy`),copiedText:t(`common.copied`)}})]})]}),(0,$.jsxs)(`div`,{className:`flex flex-wrap items-center gap-x-4 gap-y-1`,children:[(0,$.jsx)(o,{content:Ie(e.expiresAt,n),children:(0,$.jsx)(g,{variant:`secondary`,size:`sm`,as:`span`,children:t(`siteSettings.previews.expires`,{when:ye(n,e.expiresAt,{dateStyle:`medium`,timeStyle:`short`})})})}),(0,$.jsx)(g,{variant:`secondary`,size:`sm`,as:`span`,children:t(`siteSettings.previews.opens`,{path:e.path})})]})]})})}function $r({site:e,enabled:t}){let{t:n,locale:r}=Y(),i=F(),a=e?.id??``,o=l({queryKey:[`snapshots`,a],queryFn:()=>U.snapshots.list(a),enabled:!!e}),[c,u]=(0,Q.useState)(`live`),[f,p]=(0,Q.useState)(),[m,g]=(0,Q.useState)(``),[_,v]=(0,Q.useState)(`1d`),[y,b]=(0,Q.useState)(!1),[x,S]=(0,Q.useState)(),C=d({mutationFn:e=>U.previewLinks.create(a,e),onSuccess:e=>{S(e),b(!1),i.success(n(`siteSettings.previews.created`))}}),w=t===!1||V(C.error),E=Ue(m),D=`error`in E?n(`siteSettings.previews.pathInvalid`):void 0,O=y&&c===`snapshot`&&!f?n(`siteSettings.previews.snapshotRequired`):void 0,k=Ge(e?.domains??[]),A=()=>{b(!0),!(`error`in E||c===`snapshot`&&!f||!e)&&C.mutate({target:c===`live`?`live`:{snapshot:f},path:E.path,ttlSeconds:qe(_)})},j=Object.fromEntries((o.data??[]).map(t=>[t.id,Zr(t,t.id===e?.publishedSnapshotId,r,n(`siteSettings.previews.live`))]));return(0,$.jsx)(K,{id:`previews`,title:n(`siteSettings.sections.previews`),description:n(`siteSettings.previews.description`),footer:w?void 0:(0,$.jsx)(s,{variant:`primary`,icon:(0,$.jsx)(T,{}),onClick:A,loading:C.isPending,disabled:!e,children:n(`siteSettings.previews.create`)}),children:e?w?(0,$.jsx)(N,{variant:`secondary`,icon:(0,$.jsx)(h,{weight:`fill`}),title:n(`siteSettings.previews.notEnabledTitle`),description:n(`siteSettings.previews.notEnabledDescription`)}):(0,$.jsxs)($.Fragment,{children:[C.error&&(0,$.jsx)(N,{variant:`error`,size:`sm`,icon:(0,$.jsx)(M,{weight:`fill`}),title:n(`siteSettings.previews.failed`),description:Z(n,C.error)}),(0,$.jsx)(me.Group,{legend:n(`siteSettings.previews.target`),appearance:`card`,orientation:`horizontal`,value:c,onValueChange:e=>u(e),children:[`live`,`snapshot`].map(e=>(0,$.jsx)(me.Item,{value:e,label:n(`siteSettings.previews.targets.${e}`),description:n(`siteSettings.previews.targetHints.${e}`)},e))}),c===`snapshot`&&(0,$.jsx)(W,{label:n(`siteSettings.previews.snapshot`),placeholder:n(`siteSettings.previews.snapshotPlaceholder`),value:f??null,onValueChange:e=>p(e?String(e):void 0),items:j,loading:o.isPending,disabled:o.data?.length===0,description:o.data?.length===0?n(`siteSettings.previews.noSnapshots`):void 0,error:O}),(0,$.jsx)(`div`,{className:`@container`,children:(0,$.jsxs)(`div`,{className:`grid items-start gap-5 @lg:grid-cols-[2fr_1fr]`,children:[(0,$.jsxs)(R,{label:n(`siteSettings.previews.path`),description:n(`siteSettings.previews.pathHint`),error:D?{message:D,match:!0}:void 0,children:[(0,$.jsx)(R.Addon,{children:k?`${k}/`:`/`}),(0,$.jsx)(R.Input,{value:m,placeholder:n(`siteSettings.previews.pathPlaceholder`),spellCheck:!1,autoComplete:`off`,"aria-invalid":D?!0:void 0,onChange:e=>g(e.target.value),onKeyDown:e=>{e.key===`Enter`&&(e.preventDefault(),A())}})]}),(0,$.jsx)(W,{label:n(`siteSettings.previews.ttl`),value:_,onValueChange:e=>v(e),items:Object.fromEntries(Ke.map(e=>[e.id,n(`siteSettings.previews.ttls.${e.id}`)]))})]})}),x&&(0,$.jsx)(Qr,{link:x}),(0,$.jsx)(qr,{children:n(`siteSettings.previews.revokeHint`)})]}):(0,$.jsx)(Kr,{})})}function ei(){let e=X(`analyticsSettings`,`commentsSettings`,`scheduleSettings`,`aiSettings`,`appearance`),{siteId:t}=u({from:`/sites/$siteId`}),n=l({queryKey:[`site`,t],queryFn:()=>U.sites.get(t)}),r=l({queryKey:[`instance`],queryFn:U.instance}),i=()=>void n.refetch(),a=P(`settings.write`);return(0,$.jsxs)(Je,{crumbs:(0,$.jsx)(he,{siteId:t,trail:[{label:e(`pageHeaders.settings.title`)}]}),title:e(`pageHeaders.settings.title`),description:e(`pageHeaders.settings.description`),children:[(0,$.jsx)($e,{error:n.error,onRetry:i,retrying:n.isFetching}),(0,$.jsx)(Gt,{reason:a.reason}),(0,$.jsxs)(ge,{title:e(`common.onThisPage`),sections:Vr.map(t=>({id:t,label:e(Ur(t))})),children:[(0,$.jsxs)(Kt,{reason:a.reason,className:`grid min-w-0 content-start gap-6`,children:[(0,$.jsx)(Jr,{site:n.data,onReload:i,reloading:n.isFetching}),(0,$.jsx)(Xr,{site:n.data,onReload:i,reloading:n.isFetching})]}),(0,$.jsx)(lr,{siteId:t}),(0,$.jsx)(Vn,{siteId:t}),(0,$.jsx)(Xn,{siteId:t,defaultLocale:n.data?.defaultLocale??`en`}),(0,$.jsx)(Sr,{siteId:t,theme:n.data?.theme.name??``}),(0,$.jsx)(hn,{siteId:t}),(0,$.jsx)(_r,{siteId:t}),(0,$.jsx)(Br,{siteId:t}),(0,$.jsx)(rn,{siteId:t}),(0,$.jsx)(Pr,{siteId:t}),(0,$.jsx)(Tr,{siteId:t}),(0,$.jsx)($r,{site:n.data,enabled:r.data?.features.previewLinks})]})]})}export{ei as SiteSettingsPage};
3
- //# sourceMappingURL=SiteSettingsPage-D6LR9ixn.js.map
3
+ //# sourceMappingURL=SiteSettingsPage-C9KidHjf.js.map
@@ -1,4 +1,4 @@
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"./badge-dq8bx752b9dp7dst--rpq8QXS.js";import{t as i}from"./button-pa1bq9b85hawg41a-CmOCuL-1.js";import{t as a}from"./link-cqyfjezntvr53rh7-3eczR57J.js";import{_ as o,l as s}from"./tanstack-BRxyYm4G.js";import{t as c}from"./DirectionalIcon-UZJFXGY_.js";import{t as l}from"./pagination-oaenm9t7ou3lmcgw-CjvX77_7.js";import{n as u}from"./CaretRight.es-D_coqYai.js";import{n as d}from"./skeleton-line-m9dyh126t9k07jvg-BFlcthbF.js";import{t as f}from"./Plus.es-XNm1OB5Q.js";import{t as p}from"./TerminalWindow.es-DRFBT_Ie.js";import{a as m}from"./useMe-BkBpEyf5.js";import{t as h}from"./code-eu8kzwqnlhoyin24-6ko8eUbh.js";import{g,t as _}from"./api-CHeogUo-.js";import{t as v}from"./table-yf8ul2e5nbemioi1-KGRDj7XO.js";import{t as y}from"./Crumbs-B3lDes5a.js";import{t as b}from"./empty-hkvg3is3uc6dj1at-Cen9KfIy.js";import{t as x}from"./SectionCard-Bqvz-NiL.js";import{u as S}from"./i18n-CCHry74V.js";import{C,Q as w,S as T}from"./index-B3isvl8R.js";import{t as E}from"./TableSkeleton-DWrf88UN.js";import{t as D}from"./ListToolbar-DUEM5tkX.js";import{t as O}from"./usePaging-D37ddXyL.js";import{t as k}from"./NewSiteDialog-C5ouXl1H.js";var A=e(t(),1),j=n();function M(){let e=S(),t=s(),n=o({queryKey:[`sites`],queryFn:_.sites.list}),M=o({queryKey:[`projects`],queryFn:_.projects.list}),P=m(`sites.create`),[F,I]=(0,A.useState)(!1),L=new Map((M.data??[]).flatMap(e=>e.sites.map(t=>[t.id,e]))),R=(M.data?.length??0)>1,z=O(n.data,(e,t,n)=>n(e.name).includes(t)||e.slug.includes(t)),B=e=>t({to:`/sites/$siteId`,params:{siteId:e}});return(0,j.jsxs)(C,{crumbs:(0,j.jsx)(y,{trail:[{label:e(`sites.title`)}]}),icon:(0,j.jsx)(w,{size:24}),title:e(`sites.title`),description:e(`sites.description`),actions:(0,j.jsx)(i,{variant:`primary`,icon:(0,j.jsx)(f,{size:16}),disabled:!P.allowed,title:P.reason,onClick:()=>I(!0),children:e(`newSite.open`)}),aside:(0,j.jsx)(x,{title:e(`sites.usageTitle`),icon:(0,j.jsx)(p,{size:16}),description:e(`sites.usageDescription`),children:(0,j.jsx)(h,{lang:`bash`,code:`cloudhal init my-site
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"./badge-dq8bx752b9dp7dst--rpq8QXS.js";import{t as i}from"./button-pa1bq9b85hawg41a-CmOCuL-1.js";import{t as a}from"./link-cqyfjezntvr53rh7-3eczR57J.js";import{_ as o,l as s}from"./tanstack-BRxyYm4G.js";import{t as c}from"./DirectionalIcon-UZJFXGY_.js";import{t as l}from"./pagination-oaenm9t7ou3lmcgw-CjvX77_7.js";import{n as u}from"./CaretRight.es-D_coqYai.js";import{n as d}from"./skeleton-line-m9dyh126t9k07jvg-BFlcthbF.js";import{t as f}from"./Plus.es-XNm1OB5Q.js";import{t as p}from"./TerminalWindow.es-DRFBT_Ie.js";import{a as m}from"./useMe-BkBpEyf5.js";import{t as h}from"./code-eu8kzwqnlhoyin24-6ko8eUbh.js";import{g,t as _}from"./api-CHeogUo-.js";import{t as v}from"./table-yf8ul2e5nbemioi1-KGRDj7XO.js";import{t as y}from"./Crumbs-B3lDes5a.js";import{t as b}from"./empty-hkvg3is3uc6dj1at-Cen9KfIy.js";import{t as x}from"./SectionCard-Bqvz-NiL.js";import{u as S}from"./i18n-CCHry74V.js";import{C,Q as w,S as T}from"./index-OjH3NEOH.js";import{t as E}from"./TableSkeleton-DWrf88UN.js";import{t as D}from"./ListToolbar-BHXRGWj_.js";import{t as O}from"./usePaging-D37ddXyL.js";import{t as k}from"./NewSiteDialog-kpjWtalR.js";var A=e(t(),1),j=n();function M(){let e=S(),t=s(),n=o({queryKey:[`sites`],queryFn:_.sites.list}),M=o({queryKey:[`projects`],queryFn:_.projects.list}),P=m(`sites.create`),[F,I]=(0,A.useState)(!1),L=new Map((M.data??[]).flatMap(e=>e.sites.map(t=>[t.id,e]))),R=(M.data?.length??0)>1,z=O(n.data,(e,t,n)=>n(e.name).includes(t)||e.slug.includes(t)),B=e=>t({to:`/sites/$siteId`,params:{siteId:e}});return(0,j.jsxs)(C,{crumbs:(0,j.jsx)(y,{trail:[{label:e(`sites.title`)}]}),icon:(0,j.jsx)(w,{size:24}),title:e(`sites.title`),description:e(`sites.description`),actions:(0,j.jsx)(i,{variant:`primary`,icon:(0,j.jsx)(f,{size:16}),disabled:!P.allowed,title:P.reason,onClick:()=>I(!0),children:e(`newSite.open`)}),aside:(0,j.jsx)(x,{title:e(`sites.usageTitle`),icon:(0,j.jsx)(p,{size:16}),description:e(`sites.usageDescription`),children:(0,j.jsx)(h,{lang:`bash`,code:`cloudhal init my-site
2
2
  cloudhal dev
3
3
  cloudhal studio`})}),children:[(0,j.jsx)(T,{error:n.error}),(0,j.jsx)(D,{search:z.search,onSearch:z.setSearch,placeholder:e(`sites.search`)}),n.data?.length===0?(0,j.jsx)(b,{icon:(0,j.jsx)(w,{size:48,className:`text-kumo-inactive`}),title:e(`sites.empty`),description:e(`sites.emptyDescription`),commandLine:`cloudhal init my-site`}):(0,j.jsx)(g,{className:`overflow-x-auto p-0`,children:(0,j.jsxs)(v,{children:[(0,j.jsx)(v.Header,{children:(0,j.jsxs)(v.Row,{children:[(0,j.jsx)(v.Head,{children:e(`sites.columns.name`)}),(0,j.jsx)(v.Head,{children:e(`sites.columns.slug`)}),R&&(0,j.jsx)(v.Head,{children:e(`sites.columns.project`)}),(0,j.jsx)(v.Head,{children:e(`sites.columns.pages`)}),(0,j.jsx)(v.Head,{children:e(`sites.columns.status`)}),(0,j.jsx)(v.Head,{sticky:`right`})]})}),n.isPending?(0,j.jsx)(E,{columns:R?6:5}):(0,j.jsx)(v.Body,{children:z.pageItems.map(t=>(0,j.jsxs)(v.Row,{className:`cursor-pointer`,onClick:()=>B(t.id),children:[(0,j.jsx)(v.Cell,{children:(0,j.jsx)(a,{href:`/sites/${t.id}`,variant:`plain`,children:(0,j.jsx)(d,{bold:!0,as:`span`,children:t.name})})}),(0,j.jsx)(v.Cell,{children:(0,j.jsxs)(d,{variant:`mono-secondary`,as:`span`,children:[`/`,t.slug]})}),R&&(0,j.jsx)(v.Cell,{children:(0,j.jsx)(N,{project:L.get(t.id)})}),(0,j.jsx)(v.Cell,{children:t.pageIds.length}),(0,j.jsx)(v.Cell,{children:t.publishedSnapshotId?(0,j.jsx)(r,{variant:`success`,appearance:`dot`,children:e(`common.live`)}):(0,j.jsx)(r,{variant:`secondary`,appearance:`dot`,children:e(`sites.notPublished`)})}),(0,j.jsx)(v.Cell,{sticky:`right`,className:`w-12 text-end`,children:(0,j.jsx)(c,{icon:u,size:16,className:`text-kumo-subtle`,"aria-hidden":!0})})]},t.id))})]})}),z.total>z.perPage&&(0,j.jsx)(l,{page:z.page,perPage:z.perPage,totalCount:z.total,setPage:z.setPage,controls:`simple`}),(0,j.jsx)(k,{open:F,onOpenChange:I})]})}function N({project:e}){return e?(0,j.jsx)(`span`,{onClickCapture:e=>e.stopPropagation(),children:(0,j.jsx)(a,{href:`/projects/${e.id}`,children:e.name})}):null}export{M as SitesPage};
4
- //# sourceMappingURL=SitesPage-DVVVSYPS.js.map
4
+ //# sourceMappingURL=SitesPage-BWeCjl6F.js.map
@@ -1,3 +1,3 @@
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{_ as s}from"./tanstack-BRxyYm4G.js";import{t as c}from"./DirectionalIcon-UZJFXGY_.js";import{t as l}from"./BookOpenText.es-BfXzf_Vn.js";import{t as u}from"./pagination-oaenm9t7ou3lmcgw-CjvX77_7.js";import{n as d}from"./CaretRight.es-D_coqYai.js";import{m as f,n as p}from"./skeleton-line-m9dyh126t9k07jvg-BFlcthbF.js";import{t as m}from"./inline-copy-text-gbd7jhwpor27l4rq-BGh10UAA.js";import{t as h}from"./FolderSimplePlus.es-C9Fl6ewY.js";import{t as g}from"./HandPalm.es-CB5OlkOg.js";import{t as _}from"./banner-msnmqm7of2lck01x-D6cADEpP.js";import{t as v}from"./clipboard-text-gd6s3n1bqse9zgt8-C151k1zC.js";import{t as y}from"./code-eu8kzwqnlhoyin24-6ko8eUbh.js";import{g as b,t as x}from"./api-CHeogUo-.js";import{t as S}from"./collapsible-l8g94on4w7qfosmn-BXHVBN0d.js";import{t as C}from"./table-yf8ul2e5nbemioi1-KGRDj7XO.js";import{t as w}from"./Crumbs-B3lDes5a.js";import{t as T}from"./empty-hkvg3is3uc6dj1at-Cen9KfIy.js";import{t as E}from"./layer-dialog-j5ywmzs46ccg6oqy-nvLQiI4N.js";import{t as D}from"./SectionCard-Bqvz-NiL.js";import{a as ee,u as O}from"./i18n-CCHry74V.js";import{t as k,x as A}from"./agents-DGWn1WXw.js";import{C as j,E as M,S as N,tt as P}from"./index-B3isvl8R.js";import{t as F}from"./TableSkeleton-DWrf88UN.js";import{o as I}from"./Audit-CBohWXfl.js";import{t as L}from"./CodeHighlighted-BIWFodJr.js";import{t as R}from"./ListToolbar-DUEM5tkX.js";import{t as z}from"./ScopeBadge-8ftEPI5M.js";import{t as B}from"./usePaging-D37ddXyL.js";var V=e(n(),1),H=new Map([[`bold`,V.createElement(V.Fragment,null,V.createElement(`path`,{d:`M180,232a12,12,0,0,1-12,12H88a12,12,0,0,1,0-24h80A12,12,0,0,1,180,232Zm40-128a91.51,91.51,0,0,1-35.17,72.35A12.26,12.26,0,0,0,180,186v2a20,20,0,0,1-20,20H96a20,20,0,0,1-20-20v-2a12,12,0,0,0-4.7-9.51A91.57,91.57,0,0,1,36,104.52C35.73,54.69,76,13.2,125.79,12A92,92,0,0,1,220,104Zm-24,0a68,68,0,0,0-69.65-68C89.56,36.88,59.8,67.55,60,104.38a67.71,67.71,0,0,0,26.1,53.19A35.87,35.87,0,0,1,100,184h56.1A36.13,36.13,0,0,1,170,157.49,67.68,67.68,0,0,0,196,104Zm-20.07-5.32a48.5,48.5,0,0,0-31.91-40,12,12,0,0,0-8,22.62,24.31,24.31,0,0,1,16.09,20,12,12,0,0,0,23.86-2.64Z`}))],[`fill`,V.createElement(V.Fragment,null,V.createElement(`path`,{d:`M176,232a8,8,0,0,1-8,8H88a8,8,0,0,1,0-16h80A8,8,0,0,1,176,232Zm40-128a87.55,87.55,0,0,1-33.64,69.21A16.24,16.24,0,0,0,176,186v6a16,16,0,0,1-16,16H96a16,16,0,0,1-16-16v-6a16,16,0,0,0-6.23-12.66A87.59,87.59,0,0,1,40,104.49C39.74,56.83,78.26,17.14,125.88,16A88,88,0,0,1,216,104Zm-32.11-9.34a57.6,57.6,0,0,0-46.56-46.55,8,8,0,0,0-2.66,15.78c16.57,2.79,30.63,16.85,33.44,33.45A8,8,0,0,0,176,104a9,9,0,0,0,1.35-.11A8,8,0,0,0,183.89,94.66Z`}))],[`regular`,V.createElement(V.Fragment,null,V.createElement(`path`,{d:`M176,232a8,8,0,0,1-8,8H88a8,8,0,0,1,0-16h80A8,8,0,0,1,176,232Zm40-128a87.55,87.55,0,0,1-33.64,69.21A16.24,16.24,0,0,0,176,186v6a16,16,0,0,1-16,16H96a16,16,0,0,1-16-16v-6a16,16,0,0,0-6.23-12.66A87.59,87.59,0,0,1,40,104.49C39.74,56.83,78.26,17.14,125.88,16A88,88,0,0,1,216,104Zm-16,0a72,72,0,0,0-73.74-72c-39,.92-70.47,33.39-70.26,72.39a71.65,71.65,0,0,0,27.64,56.3A32,32,0,0,1,96,186v6h64v-6a32.15,32.15,0,0,1,12.47-25.35A71.65,71.65,0,0,0,200,104Zm-16.11-9.34a57.6,57.6,0,0,0-46.56-46.55,8,8,0,0,0-2.66,15.78c16.57,2.79,30.63,16.85,33.44,33.45A8,8,0,0,0,176,104a9,9,0,0,0,1.35-.11A8,8,0,0,0,183.89,94.66Z`}))]]),U=V.forwardRef((e,n)=>V.createElement(t,{ref:n,...e,weights:H}));U.displayName=`LightbulbIcon`;var W=U,G=`cloudhal.skill`;function K(e){return e===`*`||k.includes(e)}function q(e){return[...A(e.filter(K)),...e.filter(e=>!K(e))]}function J(e,t,n){return!t||n(e.name).includes(t)||n(e.description).includes(t)||e.scopes.some(e=>n(e).includes(t))||e.approval.some(e=>n(e).includes(t))}function Y(e){let t=e.approval[0]??`get_site`;return JSON.stringify({jsonrpc:`2.0`,id:1,method:`tools/call`,params:{name:t,arguments:{siteId:`<site id>`},_meta:{[G]:e.name}}},null,2)}var X=r();function Z({label:e,hint:t,children:n}){return(0,X.jsxs)(`div`,{className:`grid gap-1.5 py-3 sm:grid-cols-[10rem_minmax(0,1fr)] sm:gap-4`,children:[(0,X.jsx)(`dt`,{className:`grid content-start gap-0.5`,children:(0,X.jsx)(p,{variant:`secondary`,size:`sm`,as:`span`,children:e})}),(0,X.jsxs)(`dd`,{className:`grid min-w-0 gap-1.5`,children:[n,t&&(0,X.jsx)(p,{variant:`secondary`,size:`sm`,children:t})]})]})}function Q({scope:e}){return K(e)?(0,X.jsx)(z,{scope:e}):(0,X.jsx)(i,{variant:`outline`,children:(0,X.jsx)(`span`,{className:`font-mono text-[0.9em]`,children:e})})}function $({tool:e}){let t=I();return(0,X.jsx)(i,{variant:`warning`,icon:(0,X.jsx)(g,{}),children:t(e)===e?(0,X.jsx)(`span`,{className:`font-mono text-[0.9em]`,children:e}):t(e)})}function te({skill:e,onOpenChange:t}){let n=O(),r=(0,V.useRef)(e);e&&(r.current=e);let a=e??r.current;return(0,X.jsx)(E.Root,{open:e!==void 0,onOpenChange:t,children:(0,X.jsxs)(E.Content,{size:`lg`,closeLabel:n(`common.close`),children:[(0,X.jsx)(E.Title,{children:a?.name??``}),(0,X.jsx)(E.Description,{children:a?.description??``}),(0,X.jsx)(E.Body,{children:a&&(0,X.jsxs)(`div`,{className:`grid gap-5`,"data-testid":`skill-detail`,children:[(0,X.jsxs)(`dl`,{className:`grid divide-y divide-kumo-hairline`,children:[(0,X.jsx)(Z,{label:n(`skills.detail.scopes`),hint:n(`skills.detail.scopesHint`),children:(0,X.jsx)(`div`,{className:`flex flex-wrap gap-1`,children:q(a.scopes).map(e=>(0,X.jsx)(Q,{scope:e},e))})}),(0,X.jsx)(Z,{label:n(`skills.detail.approval`),hint:a.approval.length>0?n(`skills.detail.approvalHint`):void 0,children:a.approval.length>0?(0,X.jsx)(`div`,{className:`flex flex-wrap gap-1`,children:a.approval.map(e=>(0,X.jsx)($,{tool:e},e))}):(0,X.jsx)(p,{variant:`secondary`,children:n(`skills.detail.noApproval`)})}),a.requiresCapabilities.length>0&&(0,X.jsx)(Z,{label:n(`skills.detail.requires`),children:(0,X.jsx)(`div`,{className:`flex flex-wrap gap-1`,children:a.requiresCapabilities.map(e=>(0,X.jsx)(i,{variant:`outline`,children:(0,X.jsx)(`span`,{className:`font-mono text-[0.9em]`,children:e})},e))})}),(0,X.jsx)(Z,{label:n(`skills.detail.references`),children:a.references.length>0?(0,X.jsx)(`div`,{className:`grid gap-1`,children:a.references.map(e=>(0,X.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,X.jsx)(P,{size:16,className:`shrink-0 text-kumo-subtle`}),(0,X.jsx)(p,{variant:`mono`,as:`span`,children:e})]},e))}):(0,X.jsx)(p,{variant:`secondary`,children:n(`skills.detail.noReferences`)})}),(0,X.jsx)(Z,{label:n(`skills.detail.resource`),children:(0,X.jsx)(v,{size:`sm`,text:a.resource,tooltip:{text:n(`common.copy`),copiedText:n(`common.copied`)}})})]}),(0,X.jsxs)(`div`,{className:`grid min-w-0 gap-2`,children:[(0,X.jsx)(p,{bold:!0,as:`span`,children:n(`skills.detail.call`)}),(0,X.jsx)(`div`,{className:`min-w-0 overflow-x-auto`,children:(0,X.jsx)(L,{code:Y(a),lang:`json`,showCopyButton:!0})})]})]})})]})})}var ne=[`read`,`declare`,`narrow`,`approve`];function re(){let e=O();return(0,X.jsxs)(D,{title:e(`skills.how.title`),icon:(0,X.jsx)(W,{size:16}),children:[(0,X.jsx)(`div`,{className:`grid gap-3`,children:ne.map((t,n)=>(0,X.jsxs)(`div`,{className:`flex items-start gap-3`,"data-step":t,children:[(0,X.jsx)(`span`,{className:`flex h-lh shrink-0 items-center`,children:(0,X.jsx)(`span`,{"aria-hidden":!0,className:`flex size-5 items-center justify-center rounded-full bg-kumo-tint text-kumo-subtle text-xs tabular-nums ring ring-kumo-hairline`,children:n+1})}),(0,X.jsxs)(p,{as:`span`,children:[e(`skills.how.steps.${t}`),t===`declare`&&(0,X.jsxs)(X.Fragment,{children:[` `,(0,X.jsx)(`span`,{className:`font-mono text-[0.9em]`,children:`_meta["cloudhal.skill"]`})]})]})]},t))}),(0,X.jsxs)(S.Root,{children:[(0,X.jsx)(S.DefaultTrigger,{children:e(`skills.how.example`)}),(0,X.jsx)(S.DefaultPanel,{children:(0,X.jsx)(`div`,{className:`min-w-0 overflow-x-auto`,children:(0,X.jsx)(L,{code:Y({name:`safe-edit`,approval:[]}),lang:`json`,showCopyButton:!0})})})]})]})}function ie(){let e=O();return(0,X.jsx)(D,{title:e(`skills.add.title`),icon:(0,X.jsx)(h,{size:16}),description:e(`skills.add.description`),children:(0,X.jsx)(y,{lang:`bash`,code:`skills/<name>/SKILL.md
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{_ as s}from"./tanstack-BRxyYm4G.js";import{t as c}from"./DirectionalIcon-UZJFXGY_.js";import{t as l}from"./BookOpenText.es-BfXzf_Vn.js";import{t as u}from"./pagination-oaenm9t7ou3lmcgw-CjvX77_7.js";import{n as d}from"./CaretRight.es-D_coqYai.js";import{m as f,n as p}from"./skeleton-line-m9dyh126t9k07jvg-BFlcthbF.js";import{t as m}from"./inline-copy-text-gbd7jhwpor27l4rq-BGh10UAA.js";import{t as h}from"./FolderSimplePlus.es-C9Fl6ewY.js";import{t as g}from"./HandPalm.es-CB5OlkOg.js";import{t as _}from"./banner-msnmqm7of2lck01x-D6cADEpP.js";import{t as v}from"./clipboard-text-gd6s3n1bqse9zgt8-C151k1zC.js";import{t as y}from"./code-eu8kzwqnlhoyin24-6ko8eUbh.js";import{g as b,t as x}from"./api-CHeogUo-.js";import{t as S}from"./collapsible-l8g94on4w7qfosmn-De4SMvUy.js";import{t as C}from"./table-yf8ul2e5nbemioi1-KGRDj7XO.js";import{t as w}from"./Crumbs-B3lDes5a.js";import{t as T}from"./empty-hkvg3is3uc6dj1at-Cen9KfIy.js";import{t as E}from"./layer-dialog-j5ywmzs46ccg6oqy-uKC-1DCk.js";import{t as D}from"./SectionCard-Bqvz-NiL.js";import{a as ee,u as O}from"./i18n-CCHry74V.js";import{t as k,x as A}from"./agents-DGWn1WXw.js";import{C as j,E as M,S as N,tt as P}from"./index-OjH3NEOH.js";import{t as F}from"./TableSkeleton-DWrf88UN.js";import{o as I}from"./Audit-OmE16Gp0.js";import{t as L}from"./CodeHighlighted-BIWFodJr.js";import{t as R}from"./ListToolbar-BHXRGWj_.js";import{t as z}from"./ScopeBadge-8ftEPI5M.js";import{t as B}from"./usePaging-D37ddXyL.js";var V=e(n(),1),H=new Map([[`bold`,V.createElement(V.Fragment,null,V.createElement(`path`,{d:`M180,232a12,12,0,0,1-12,12H88a12,12,0,0,1,0-24h80A12,12,0,0,1,180,232Zm40-128a91.51,91.51,0,0,1-35.17,72.35A12.26,12.26,0,0,0,180,186v2a20,20,0,0,1-20,20H96a20,20,0,0,1-20-20v-2a12,12,0,0,0-4.7-9.51A91.57,91.57,0,0,1,36,104.52C35.73,54.69,76,13.2,125.79,12A92,92,0,0,1,220,104Zm-24,0a68,68,0,0,0-69.65-68C89.56,36.88,59.8,67.55,60,104.38a67.71,67.71,0,0,0,26.1,53.19A35.87,35.87,0,0,1,100,184h56.1A36.13,36.13,0,0,1,170,157.49,67.68,67.68,0,0,0,196,104Zm-20.07-5.32a48.5,48.5,0,0,0-31.91-40,12,12,0,0,0-8,22.62,24.31,24.31,0,0,1,16.09,20,12,12,0,0,0,23.86-2.64Z`}))],[`fill`,V.createElement(V.Fragment,null,V.createElement(`path`,{d:`M176,232a8,8,0,0,1-8,8H88a8,8,0,0,1,0-16h80A8,8,0,0,1,176,232Zm40-128a87.55,87.55,0,0,1-33.64,69.21A16.24,16.24,0,0,0,176,186v6a16,16,0,0,1-16,16H96a16,16,0,0,1-16-16v-6a16,16,0,0,0-6.23-12.66A87.59,87.59,0,0,1,40,104.49C39.74,56.83,78.26,17.14,125.88,16A88,88,0,0,1,216,104Zm-32.11-9.34a57.6,57.6,0,0,0-46.56-46.55,8,8,0,0,0-2.66,15.78c16.57,2.79,30.63,16.85,33.44,33.45A8,8,0,0,0,176,104a9,9,0,0,0,1.35-.11A8,8,0,0,0,183.89,94.66Z`}))],[`regular`,V.createElement(V.Fragment,null,V.createElement(`path`,{d:`M176,232a8,8,0,0,1-8,8H88a8,8,0,0,1,0-16h80A8,8,0,0,1,176,232Zm40-128a87.55,87.55,0,0,1-33.64,69.21A16.24,16.24,0,0,0,176,186v6a16,16,0,0,1-16,16H96a16,16,0,0,1-16-16v-6a16,16,0,0,0-6.23-12.66A87.59,87.59,0,0,1,40,104.49C39.74,56.83,78.26,17.14,125.88,16A88,88,0,0,1,216,104Zm-16,0a72,72,0,0,0-73.74-72c-39,.92-70.47,33.39-70.26,72.39a71.65,71.65,0,0,0,27.64,56.3A32,32,0,0,1,96,186v6h64v-6a32.15,32.15,0,0,1,12.47-25.35A71.65,71.65,0,0,0,200,104Zm-16.11-9.34a57.6,57.6,0,0,0-46.56-46.55,8,8,0,0,0-2.66,15.78c16.57,2.79,30.63,16.85,33.44,33.45A8,8,0,0,0,176,104a9,9,0,0,0,1.35-.11A8,8,0,0,0,183.89,94.66Z`}))]]),U=V.forwardRef((e,n)=>V.createElement(t,{ref:n,...e,weights:H}));U.displayName=`LightbulbIcon`;var W=U,G=`cloudhal.skill`;function K(e){return e===`*`||k.includes(e)}function q(e){return[...A(e.filter(K)),...e.filter(e=>!K(e))]}function J(e,t,n){return!t||n(e.name).includes(t)||n(e.description).includes(t)||e.scopes.some(e=>n(e).includes(t))||e.approval.some(e=>n(e).includes(t))}function Y(e){let t=e.approval[0]??`get_site`;return JSON.stringify({jsonrpc:`2.0`,id:1,method:`tools/call`,params:{name:t,arguments:{siteId:`<site id>`},_meta:{[G]:e.name}}},null,2)}var X=r();function Z({label:e,hint:t,children:n}){return(0,X.jsxs)(`div`,{className:`grid gap-1.5 py-3 sm:grid-cols-[10rem_minmax(0,1fr)] sm:gap-4`,children:[(0,X.jsx)(`dt`,{className:`grid content-start gap-0.5`,children:(0,X.jsx)(p,{variant:`secondary`,size:`sm`,as:`span`,children:e})}),(0,X.jsxs)(`dd`,{className:`grid min-w-0 gap-1.5`,children:[n,t&&(0,X.jsx)(p,{variant:`secondary`,size:`sm`,children:t})]})]})}function Q({scope:e}){return K(e)?(0,X.jsx)(z,{scope:e}):(0,X.jsx)(i,{variant:`outline`,children:(0,X.jsx)(`span`,{className:`font-mono text-[0.9em]`,children:e})})}function $({tool:e}){let t=I();return(0,X.jsx)(i,{variant:`warning`,icon:(0,X.jsx)(g,{}),children:t(e)===e?(0,X.jsx)(`span`,{className:`font-mono text-[0.9em]`,children:e}):t(e)})}function te({skill:e,onOpenChange:t}){let n=O(),r=(0,V.useRef)(e);e&&(r.current=e);let a=e??r.current;return(0,X.jsx)(E.Root,{open:e!==void 0,onOpenChange:t,children:(0,X.jsxs)(E.Content,{size:`lg`,closeLabel:n(`common.close`),children:[(0,X.jsx)(E.Title,{children:a?.name??``}),(0,X.jsx)(E.Description,{children:a?.description??``}),(0,X.jsx)(E.Body,{children:a&&(0,X.jsxs)(`div`,{className:`grid gap-5`,"data-testid":`skill-detail`,children:[(0,X.jsxs)(`dl`,{className:`grid divide-y divide-kumo-hairline`,children:[(0,X.jsx)(Z,{label:n(`skills.detail.scopes`),hint:n(`skills.detail.scopesHint`),children:(0,X.jsx)(`div`,{className:`flex flex-wrap gap-1`,children:q(a.scopes).map(e=>(0,X.jsx)(Q,{scope:e},e))})}),(0,X.jsx)(Z,{label:n(`skills.detail.approval`),hint:a.approval.length>0?n(`skills.detail.approvalHint`):void 0,children:a.approval.length>0?(0,X.jsx)(`div`,{className:`flex flex-wrap gap-1`,children:a.approval.map(e=>(0,X.jsx)($,{tool:e},e))}):(0,X.jsx)(p,{variant:`secondary`,children:n(`skills.detail.noApproval`)})}),a.requiresCapabilities.length>0&&(0,X.jsx)(Z,{label:n(`skills.detail.requires`),children:(0,X.jsx)(`div`,{className:`flex flex-wrap gap-1`,children:a.requiresCapabilities.map(e=>(0,X.jsx)(i,{variant:`outline`,children:(0,X.jsx)(`span`,{className:`font-mono text-[0.9em]`,children:e})},e))})}),(0,X.jsx)(Z,{label:n(`skills.detail.references`),children:a.references.length>0?(0,X.jsx)(`div`,{className:`grid gap-1`,children:a.references.map(e=>(0,X.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,X.jsx)(P,{size:16,className:`shrink-0 text-kumo-subtle`}),(0,X.jsx)(p,{variant:`mono`,as:`span`,children:e})]},e))}):(0,X.jsx)(p,{variant:`secondary`,children:n(`skills.detail.noReferences`)})}),(0,X.jsx)(Z,{label:n(`skills.detail.resource`),children:(0,X.jsx)(v,{size:`sm`,text:a.resource,tooltip:{text:n(`common.copy`),copiedText:n(`common.copied`)}})})]}),(0,X.jsxs)(`div`,{className:`grid min-w-0 gap-2`,children:[(0,X.jsx)(p,{bold:!0,as:`span`,children:n(`skills.detail.call`)}),(0,X.jsx)(`div`,{className:`min-w-0 overflow-x-auto`,children:(0,X.jsx)(L,{code:Y(a),lang:`json`,showCopyButton:!0})})]})]})})]})})}var ne=[`read`,`declare`,`narrow`,`approve`];function re(){let e=O();return(0,X.jsxs)(D,{title:e(`skills.how.title`),icon:(0,X.jsx)(W,{size:16}),children:[(0,X.jsx)(`div`,{className:`grid gap-3`,children:ne.map((t,n)=>(0,X.jsxs)(`div`,{className:`flex items-start gap-3`,"data-step":t,children:[(0,X.jsx)(`span`,{className:`flex h-lh shrink-0 items-center`,children:(0,X.jsx)(`span`,{"aria-hidden":!0,className:`flex size-5 items-center justify-center rounded-full bg-kumo-tint text-kumo-subtle text-xs tabular-nums ring ring-kumo-hairline`,children:n+1})}),(0,X.jsxs)(p,{as:`span`,children:[e(`skills.how.steps.${t}`),t===`declare`&&(0,X.jsxs)(X.Fragment,{children:[` `,(0,X.jsx)(`span`,{className:`font-mono text-[0.9em]`,children:`_meta["cloudhal.skill"]`})]})]})]},t))}),(0,X.jsxs)(S.Root,{children:[(0,X.jsx)(S.DefaultTrigger,{children:e(`skills.how.example`)}),(0,X.jsx)(S.DefaultPanel,{children:(0,X.jsx)(`div`,{className:`min-w-0 overflow-x-auto`,children:(0,X.jsx)(L,{code:Y({name:`safe-edit`,approval:[]}),lang:`json`,showCopyButton:!0})})})]})]})}function ie(){let e=O();return(0,X.jsx)(D,{title:e(`skills.add.title`),icon:(0,X.jsx)(h,{size:16}),description:e(`skills.add.description`),children:(0,X.jsx)(y,{lang:`bash`,code:`skills/<name>/SKILL.md
2
2
  skills/<name>/references/*.md`})})}function ae(e,t){return t===0?e(`skills.none`):e(`skills.referenceCount`,{count:t})}function oe(){let e=O(),t=s({queryKey:[`skills`],queryFn:x.skills.list}),n=s({queryKey:[`instance`],queryFn:x.instance}),r=(0,V.useCallback)(J,[]),i=B(t.data,r),[h,g]=(0,V.useState)(),v=n.data?.features.mcp===!1;return(0,X.jsxs)(j,{crumbs:(0,X.jsx)(w,{trail:[{label:e(`pageHeaders.agents.title`),href:`/agents`},{label:e(`pageHeaders.skills.title`)}]}),icon:(0,X.jsx)(l,{size:24}),title:e(`pageHeaders.skills.title`),description:e(`pageHeaders.skills.description`),aside:(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(re,{}),(0,X.jsx)(ie,{})]}),children:[v&&(0,X.jsx)(_,{variant:`secondary`,icon:(0,X.jsx)(f,{weight:`fill`}),title:e(`skills.notEnabledTitle`),description:e(`skills.notEnabledDescription`)}),(0,X.jsx)(N,{error:t.error,onRetry:()=>t.refetch(),retrying:t.isFetching}),(0,X.jsx)(R,{search:i.search,onSearch:i.setSearch,placeholder:e(`skills.search`)}),t.data?.length===0?(0,X.jsx)(T,{icon:(0,X.jsx)(l,{size:48,className:`text-kumo-inactive`}),title:e(`skills.empty`),description:e(`skills.emptyDescription`),commandLine:`mkdir -p skills/my-skill && $EDITOR skills/my-skill/SKILL.md`}):(0,X.jsx)(b,{className:`overflow-x-auto p-0`,children:(0,X.jsxs)(C,{children:[(0,X.jsx)(C.Header,{children:(0,X.jsxs)(C.Row,{children:[(0,X.jsx)(C.Head,{children:e(`skills.columns.skill`)}),(0,X.jsx)(C.Head,{children:e(`skills.columns.scopes`)}),(0,X.jsx)(C.Head,{children:e(`skills.columns.approval`)}),(0,X.jsx)(C.Head,{children:e(`skills.columns.references`)}),(0,X.jsx)(C.Head,{sticky:`right`,className:`w-12`,children:(0,X.jsx)(`span`,{className:`sr-only`,children:e(`skills.view`)})})]})}),t.isPending?(0,X.jsx)(F,{columns:5,rows:4}):i.pageItems.length===0?(0,X.jsx)(C.Body,{children:(0,X.jsx)(C.Row,{children:(0,X.jsx)(C.Cell,{colSpan:5,children:(0,X.jsx)(M,{icon:(0,X.jsx)(l,{size:32,className:`text-kumo-inactive`}),title:e(`skills.noMatches`,{query:i.search})})})})}):(0,X.jsx)(C.Body,{children:i.pageItems.map(t=>(0,X.jsxs)(C.Row,{"data-skill":t.name,onClick:()=>g(t),className:`cursor-pointer`,children:[(0,X.jsx)(C.Cell,{className:`align-top`,children:(0,X.jsxs)(`div`,{className:`flex min-w-56 max-w-96 flex-col gap-1`,children:[(0,X.jsx)(p,{bold:!0,as:`span`,children:t.name}),(0,X.jsx)(p,{variant:`secondary`,size:`sm`,as:`span`,children:(0,X.jsx)(`span`,{className:`line-clamp-2`,children:t.description})}),(0,X.jsx)(`span`,{className:`w-fit pt-0.5`,onClick:e=>e.stopPropagation(),children:(0,X.jsx)(m,{children:t.resource})})]})}),(0,X.jsx)(C.Cell,{className:`align-top`,children:(0,X.jsx)(`div`,{className:`flex flex-wrap gap-1`,children:q(t.scopes).map(e=>(0,X.jsx)(Q,{scope:e},e))})}),(0,X.jsx)(C.Cell,{className:`align-top`,children:t.approval.length>0?(0,X.jsx)(`div`,{className:`flex flex-wrap gap-1`,children:t.approval.map(e=>(0,X.jsx)($,{tool:e},e))}):(0,X.jsx)(p,{variant:`secondary`,as:`span`,children:e(`skills.none`)})}),(0,X.jsx)(C.Cell,{className:`whitespace-nowrap align-top`,children:t.references.length>0?(0,X.jsx)(a,{content:ee(t.references),children:(0,X.jsx)(p,{as:`span`,children:ae(e,t.references.length)})}):(0,X.jsx)(p,{variant:`secondary`,as:`span`,children:e(`skills.none`)})}),(0,X.jsx)(C.Cell,{sticky:`right`,className:`w-12 text-end align-top`,children:(0,X.jsx)(o,{variant:`ghost`,size:`xs`,shape:`square`,icon:(0,X.jsx)(c,{icon:d}),"aria-label":`${e(`skills.view`)}: ${t.name}`,onClick:e=>{e.stopPropagation(),g(t)}})})]},t.name))})]})}),i.total>i.perPage&&(0,X.jsx)(u,{page:i.page,perPage:i.perPage,totalCount:i.total,setPage:i.setPage,controls:`simple`}),(0,X.jsx)(te,{skill:h,onOpenChange:e=>!e&&g(void 0)})]})}export{oe as SkillsPage};
3
- //# sourceMappingURL=SkillsPage-DN6HS7QU.js.map
3
+ //# sourceMappingURL=SkillsPage-C4Qx2Q0r.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{t as a}from"./button-pa1bq9b85hawg41a-CmOCuL-1.js";import{t as o}from"./link-cqyfjezntvr53rh7-3eczR57J.js";import{S as s,_ as c,d as l,h as u,l as d,u as f}from"./tanstack-BRxyYm4G.js";import{c as p,l as m,s as h}from"./Taxonomy-BGflQo3a.js";import{d as g}from"./Menus-C5xbqFeO.js";import{t as _}from"./pagination-oaenm9t7ou3lmcgw-CjvX77_7.js";import{n as v,t as y}from"./skeleton-line-m9dyh126t9k07jvg-BFlcthbF.js";import{t as b}from"./inline-copy-text-gbd7jhwpor27l4rq-BGh10UAA.js";import{t as x}from"./GitDiff.es-fB1csyEF.js";import{n as S}from"./checkbox-lbo436duy7krxcsk-HiD6vTuC.js";import{t as C}from"./PencilSimple.es-CsZ-k9wK.js";import{t as w}from"./Plus.es-XNm1OB5Q.js";import{t as T}from"./Star.es-DhrrAurR.js";import{t as E}from"./User.es-BLqDj7XT.js";import{a as ee}from"./useMe-BkBpEyf5.js";import{t as D}from"./Toast-BsM5w6Jh.js";import{t as O}from"./input-c8lv9ulv0kortliq-Be2cm12J.js";import{g as k,r as A,t as j}from"./api-CHeogUo-.js";import{t as M}from"./tabs-gf57qqf1wcclaejq-CirIVMnq.js";import{t as N}from"./table-yf8ul2e5nbemioi1-KGRDj7XO.js";import{t as P}from"./radio-35dx7y6rjrezbjsp-2D7MXAy3.js";import{n as F}from"./Crumbs-B3lDes5a.js";import{t as te}from"./empty-hkvg3is3uc6dj1at-Cen9KfIy.js";import{t as I}from"./layer-dialog-j5ywmzs46ccg6oqy-nvLQiI4N.js";import{t as ne}from"./ApprovalDialog-BM4Lzw-L.js";import{t as re}from"./InsetPanel-CHSg953_.js";import{t as L}from"./BodyChanges-BIdCQnRW.js";import{c as R,u as z}from"./i18n-CCHry74V.js";import{t as ie}from"./api-errors-c5QRmg0g.js";import{a as ae}from"./useLiveSite-CUn2kbrj.js";import{s as B}from"./taxonomy-S-y5xbUa.js";import{t as oe}from"./usePendingApprovals-B_xkVaSu.js";import{$ as V,C as se,E as H,J as ce,S as U,W,d as le,lt as G,n as ue,r as de}from"./index-B3isvl8R.js";import{n as K}from"./permalinks-CNYgOPCo.js";import{t as fe}from"./TableSkeleton-DWrf88UN.js";import{t as pe}from"./ListToolbar-DUEM5tkX.js";import{t as me}from"./usePaging-D37ddXyL.js";import{b as q,f as J,u as he}from"./media-DdL6ngu5.js";var Y=e(n(),1),ge=new Map([[`bold`,Y.createElement(Y.Fragment,null,Y.createElement(`path`,{d:`M228,160a12,12,0,0,1-12,12H40a12,12,0,0,1,0-24H216A12,12,0,0,1,228,160ZM40,108H216a12,12,0,0,0,0-24H40a12,12,0,0,0,0,24Z`}))],[`fill`,Y.createElement(Y.Fragment,null,Y.createElement(`path`,{d:`M208,32H48A16,16,0,0,0,32,48V208a16,16,0,0,0,16,16H208a16,16,0,0,0,16-16V48A16,16,0,0,0,208,32ZM184,160H72a8,8,0,0,1,0-16H184a8,8,0,0,1,0,16Zm0-48H72a8,8,0,0,1,0-16H184a8,8,0,0,1,0,16Z`}))],[`regular`,Y.createElement(Y.Fragment,null,Y.createElement(`path`,{d:`M224,160a8,8,0,0,1-8,8H40a8,8,0,0,1,0-16H216A8,8,0,0,1,224,160ZM40,104H216a8,8,0,0,0,0-16H40a8,8,0,0,0,0,16Z`}))]]),_e=new Map([[`bold`,Y.createElement(Y.Fragment,null,Y.createElement(`path`,{d:`M128,20A108,108,0,1,0,236,128,108.12,108.12,0,0,0,128,20Zm0,192a84,84,0,1,1,84-84A84.09,84.09,0,0,1,128,212Zm52-84a12,12,0,0,1-12,12H140v28a12,12,0,0,1-24,0V140H88a12,12,0,0,1,0-24h28V88a12,12,0,0,1,24,0v28h28A12,12,0,0,1,180,128Z`}))],[`fill`,Y.createElement(Y.Fragment,null,Y.createElement(`path`,{d:`M128,24A104,104,0,1,0,232,128,104.13,104.13,0,0,0,128,24Zm40,112H136v32a8,8,0,0,1-16,0V136H88a8,8,0,0,1,0-16h32V88a8,8,0,0,1,16,0v32h32a8,8,0,0,1,0,16Z`}))],[`regular`,Y.createElement(Y.Fragment,null,Y.createElement(`path`,{d:`M128,24A104,104,0,1,0,232,128,104.11,104.11,0,0,0,128,24Zm0,192a88,88,0,1,1,88-88A88.1,88.1,0,0,1,128,216Zm48-88a8,8,0,0,1-8,8H136v32a8,8,0,0,1-16,0V136H88a8,8,0,0,1,0-16h32V88a8,8,0,0,1,16,0v32h32A8,8,0,0,1,176,128Z`}))]]),X=Y.forwardRef((e,n)=>Y.createElement(t,{ref:n,...e,weights:ge}));X.displayName=`EqualsIcon`;var ve=X,Z=Y.forwardRef((e,n)=>Y.createElement(t,{ref:n,...e,weights:_e}));Z.displayName=`PlusCircleIcon`;var ye=Z,Q=r(),be={human:E,agent:W,system:V};function xe({snapshots:e,publishedSnapshotId:t,onPublish:n,onRollback:r,onCompare:o,publishDisabledReason:s,rollbackDisabledReason:c,labels:l,emptyIcon:u,emptyContents:d,renderTime:f}){if(e.length===0)return(0,Q.jsx)(H,{icon:u,title:l.empty,description:l.emptyDescription,contents:d});let p=e.findIndex(e=>e.id===t),m=o!==void 0;return(0,Q.jsxs)(N,{"data-testid":`snapshot-timeline`,children:[(0,Q.jsx)(N.Header,{children:(0,Q.jsxs)(N.Row,{children:[(0,Q.jsx)(N.Head,{children:l.columns.snapshot}),(0,Q.jsx)(N.Head,{children:l.columns.actor}),(0,Q.jsx)(N.Head,{children:l.columns.changes}),(0,Q.jsx)(N.Head,{children:l.columns.when}),m&&(0,Q.jsx)(N.Head,{className:`w-0`}),(0,Q.jsx)(N.Head,{sticky:`right`,className:`w-0`,children:(0,Q.jsx)(`span`,{className:`sr-only`,children:l.actions})})]})}),(0,Q.jsx)(N.Body,{children:e.map((e,u)=>{let d=e.id===t,h=p!==-1&&u>p,g=!!e.parentId||!!t&&!d,_=be[e.actor.kind];return(0,Q.jsxs)(N.Row,{"data-snapshot-id":e.id,"data-live":d||void 0,children:[(0,Q.jsx)(N.Cell,{children:(0,Q.jsxs)(`div`,{className:`grid min-w-48 gap-1`,children:[(0,Q.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Q.jsx)(v,{bold:!0,as:`span`,children:e.label??l.reasons[e.reason]}),d&&(0,Q.jsx)(i,{variant:`success`,appearance:`dot`,children:l.live})]}),(0,Q.jsxs)(`div`,{className:`flex flex-wrap items-center gap-x-2 gap-y-0.5`,children:[e.label&&(0,Q.jsx)(v,{variant:`secondary`,size:`sm`,as:`span`,children:l.reasons[e.reason]}),(0,Q.jsx)(b,{children:e.id})]})]})}),(0,Q.jsx)(N.Cell,{children:(0,Q.jsxs)(`span`,{className:`flex items-center gap-2 whitespace-nowrap`,children:[(0,Q.jsx)(_,{size:16,className:`shrink-0 text-kumo-subtle`,"aria-hidden":!0}),(0,Q.jsx)(v,{as:`span`,children:e.actor.name??e.actor.id})]})}),(0,Q.jsx)(N.Cell,{className:`whitespace-nowrap`,children:(0,Q.jsxs)(v,{variant:`mono-secondary`,as:`span`,children:[`+`,e.summary.added,` ~`,e.summary.changed,` −`,e.summary.removed]})}),(0,Q.jsx)(N.Cell,{className:`whitespace-nowrap`,children:f(e.createdAt)}),m&&(0,Q.jsx)(N.Cell,{className:`w-0 whitespace-nowrap`,children:g&&(0,Q.jsx)(a,{variant:`ghost`,size:`sm`,icon:(0,Q.jsx)(x,{}),onClick:()=>o(e),children:l.compare})}),(0,Q.jsxs)(N.Cell,{sticky:`right`,className:`w-0 whitespace-nowrap text-end`,children:[!d&&n&&!h&&(0,Q.jsx)(a,{variant:`secondary`,size:`sm`,onClick:()=>n(e),disabled:s!==void 0,title:s,children:l.publish}),!d&&r&&h&&(0,Q.jsx)(a,{variant:`secondary-destructive`,size:`sm`,onClick:()=>r(e),disabled:c!==void 0,title:c,children:l.rollBack})]})]},e.id)})})]})}var $=[`added`,`changed`,`removed`],Se={site:0,menu:1,taxonomy:2,term:3,asset:4,page:5,contentEntry:6,redirect:7,glossary:8};function Ce(e){let t=e=>e.sort((e,t)=>Se[e.kind]-Se[t.kind]||e.id.localeCompare(t.id));return{added:t(e.added.map(e=>({change:`added`,id:e.id,kind:e.kind,to:e.rev}))),changed:t(e.changed.map(({before:e,after:t})=>({change:`changed`,id:t.id,kind:t.kind,from:e.rev,to:t.rev}))),removed:t(e.removed.map(e=>({change:`removed`,id:e.id,kind:e.kind,from:e.rev})))}}function we(e,t){let n={};return e.parentId&&(n.previous=e.parentId),t&&t!==e.id&&(n.live=t),n}function Te({deltas:e,data:t}){let n=z(`menus`),r=e=>{if(!e)return n(`diff.assignments.none`);let r=t.byId.get(e)?.term;return r?t.name(r):e},a=e=>{let n=t.taxonomies.data?.find(t=>t.key===e);return(n?t.label(n,`singular`):e).toLocaleLowerCase()};return(0,Q.jsx)(`span`,{className:`flex min-w-0 flex-wrap items-center gap-1`,"data-testid":`assignment-deltas`,children:e.flatMap(e=>[...e.added.map(t=>(0,Q.jsx)(i,{variant:`outline`,icon:(0,Q.jsx)(w,{}),children:n(`diff.assignments.added`,{taxonomy:a(e.taxonomy),name:r(t)})},`+${e.taxonomy}${t}`)),...e.removed.map(t=>(0,Q.jsx)(i,{variant:`outline`,icon:(0,Q.jsx)(S,{}),children:n(`diff.assignments.removed`,{taxonomy:a(e.taxonomy),name:r(t)})},`-${e.taxonomy}${t}`)),...e.primary?[(0,Q.jsx)(i,{variant:`outline`,icon:(0,Q.jsx)(T,{}),children:n(`diff.assignments.primary`,{taxonomy:a(e.taxonomy),name:r(e.primary.to)})},`*${e.taxonomy}`)]:[]])})}function Ee({summary:e}){let t=z(`menus`);return(0,Q.jsxs)(`span`,{className:`flex min-w-0 flex-wrap items-center gap-1`,"data-testid":`menu-delta-summary`,children:[(0,Q.jsx)(i,{variant:`outline`,children:t(`menus.diff.summary`,{added:e.added,removed:e.removed,moved:e.moved,changed:e.changed})}),(0,Q.jsx)(i,{variant:`outline`,children:t(`menus.diff.items`,{before:e.before,after:e.after})})]})}var De={added:{variant:`success`,icon:ye},changed:{variant:`warning`,icon:C},removed:{variant:`error`,icon:m}};function Oe(e,t){let{locale:n}=R(),r=c({queryKey:[`site`,e],queryFn:()=>j.sites.get(e),enabled:t}),i=c({queryKey:[`pages`,e],queryFn:()=>j.pages.list(e),enabled:t}),a=c({queryKey:[`entries`,e,`all`],queryFn:()=>j.entries.list(e),enabled:t}),o=p(e,t),s=c({queryKey:h.redirects(e),queryFn:()=>j.redirects.list(e),enabled:t}),l=c({queryKey:[`assets`,e,`diff`],queryFn:()=>j.assets.list(e,{limit:200}),enabled:t});return t=>{if(t.kind===`site`)return r.data?.id===t.id?{title:r.data.name,detail:`/${r.data.slug}`}:{};if(t.kind===`page`){let n=i.data?.find(e=>e.id===t.id);return n?{title:n.title,detail:n.path,href:`/sites/${e}/pages/${n.id}`}:{}}if(t.kind===`taxonomy`){let n=o.taxonomies.data?.find(e=>e.id===t.id);return n?{title:o.label(n),detail:n.archive.basePath,href:`/sites/${e}/taxonomy?taxonomy=${n.key}`}:{}}if(t.kind===`term`){let n=o.byId.get(t.id)?.term,r=n&&o.taxonomies.data?.find(e=>e.id===n.taxonomyId);return n?{title:o.name(n),...r?{detail:B(r,n.slug)}:{},href:`/sites/${e}/taxonomy/${n.id}`}:{}}if(t.kind===`redirect`){let n=s.data?.find(e=>e.id===t.id);return n?{title:`${n.from} → ${n.to}`,href:`/sites/${e}/redirects`}:{}}if(t.kind===`asset`){let i=l.data?.assets.find(e=>e.asset.id===t.id);return i?{title:he(i.asset,n,r.data?.defaultLocale),detail:`${q(i.asset.mediaType)} · ${J(i.asset.bytes,n)}`,href:`/sites/${e}/media/${i.asset.id}`}:{}}let c=a.data?.find(e=>e.id===t.id);return c?{title:c.title,detail:K(r.data,c),href:`/sites/${e}/articles/${c.id}`}:{}}}function ke({siteId:e,snapshot:t,publishedSnapshotId:n,onOpenChange:r}){let a=z(`menus`),s=t!==void 0,l=(0,Y.useRef)(t);t&&(l.current=t);let u=t??l.current,d=u?we(u,n):{},f=[`previous`,`live`].filter(e=>d[e]),[m,h]=(0,Y.useState)(`previous`);(0,Y.useEffect)(()=>{u&&h(d.previous?`previous`:`live`)},[u?.id]);let _=d[m]?m:f[0]??`previous`,S=d[_],C=c({queryKey:[`snapshot-diff`,e,S,u?.id],queryFn:()=>j.snapshots.diff(e,S,u.id,{assignments:!0,menus:!0}),enabled:s&&!!S&&!!u,staleTime:1/0}),w=Oe(e,s),T=g(),E=e=>C.data?.menus?.find(t=>t.menuId===e),ee=t=>{if(t.kind!==`menu`)return w(t);let n=E(t.id);return n?{title:T(n.key),...n.change===`removed`?{}:{href:`/sites/${e}/navigation?menu=${encodeURIComponent(n.key)}`}}:{}},D=p(e,s),O=e=>(C.data?.assignments??[]).filter(t=>t.entryId===e),A=C.data?Ce(C.data):void 0,P=A?$.reduce((e,t)=>e+A[t].length,0):0,F=u?.label??u?.id??``;return(0,Q.jsx)(I.Root,{open:s,onOpenChange:r,children:(0,Q.jsxs)(I.Content,{size:`xl`,closeLabel:a(`common.close`),children:[(0,Q.jsx)(I.Title,{children:a(`diff.title`,{name:F})}),(0,Q.jsx)(I.Description,{children:a(S?`diff.descriptions.${_}`:`diff.nothingToCompare`)}),(0,Q.jsx)(I.Body,{children:(0,Q.jsxs)(`div`,{className:`grid gap-5`,"data-testid":`snapshot-diff`,children:[f.length>0&&(0,Q.jsxs)(`div`,{className:`flex flex-wrap items-center justify-between gap-3`,children:[f.length>1?(0,Q.jsx)(M,{variant:`segmented`,size:`sm`,value:_,onValueChange:e=>h(e),tabs:f.map(e=>({value:e,label:a(e===`live`?`diff.live`:`diff.previous`)}))}):(0,Q.jsxs)(v,{variant:`secondary`,size:`sm`,as:`span`,children:[a(`diff.against`),`:`,` `,a(_===`live`?`diff.live`:`diff.previous`)]}),A&&(0,Q.jsx)(`div`,{className:`flex flex-wrap items-center gap-1.5`,"data-testid":`diff-counts`,children:$.map(e=>{let t=De[e].icon,n=A[e].length;return(0,Q.jsx)(`span`,{"data-change-count":e,className:`inline-flex`,children:(0,Q.jsx)(i,{variant:n>0?De[e].variant:`secondary`,icon:(0,Q.jsx)(t,{}),children:a(`diff.counts.${e}`,{count:n})})},e)})})]}),f.length===0?(0,Q.jsx)(H,{icon:(0,Q.jsx)(x,{size:32,className:`text-kumo-inactive`}),title:a(`diff.nothingToCompare`),description:a(`diff.nothingToCompareDescription`)}):C.error?(0,Q.jsx)(U,{error:C.error,onRetry:()=>C.refetch()}):A?P===0?(0,Q.jsx)(H,{icon:(0,Q.jsx)(ve,{size:32,className:`text-kumo-inactive`}),title:a(`diff.none`),description:a(`diff.noneDescription`)}):$.filter(e=>A[e].length>0).map(t=>(0,Q.jsxs)(`section`,{className:`grid gap-2`,"data-change":t,children:[(0,Q.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Q.jsx)(v,{bold:!0,as:`h3`,children:a(`diff.${t}`)}),(0,Q.jsx)(i,{variant:`secondary`,children:A[t].length})]}),(0,Q.jsx)(k,{className:`overflow-x-auto p-0`,children:(0,Q.jsxs)(N,{layout:`fixed`,children:[(0,Q.jsxs)(`colgroup`,{children:[(0,Q.jsx)(`col`,{}),(0,Q.jsx)(`col`,{className:`w-32`})]}),(0,Q.jsx)(N.Header,{variant:`compact`,children:(0,Q.jsxs)(N.Row,{children:[(0,Q.jsx)(N.Head,{children:a(`diff.columns.item`)}),(0,Q.jsx)(N.Head,{children:a(`diff.columns.revision`)})]})}),(0,Q.jsx)(N.Body,{children:A[t].map(t=>{let n=ee(t);return(0,Q.jsxs)(N.Row,{"data-node-id":t.id,children:[(0,Q.jsx)(N.Cell,{children:(0,Q.jsxs)(`div`,{className:`grid min-w-0 gap-1`,children:[(0,Q.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2`,children:[(0,Q.jsx)(`span`,{className:`block min-w-0 truncate`,children:n.title?n.href?(0,Q.jsx)(o,{href:n.href,variant:`plain`,children:(0,Q.jsx)(v,{bold:!0,as:`span`,children:n.title})}):(0,Q.jsx)(v,{bold:!0,as:`span`,children:n.title}):(0,Q.jsx)(v,{variant:`secondary`,as:`span`,children:a(`diff.gone`)})}),(0,Q.jsx)(`span`,{className:`shrink-0`,children:(0,Q.jsx)(i,{variant:`outline`,children:a(`diff.kinds.${t.kind}`)})})]}),(0,Q.jsxs)(`div`,{className:`flex min-w-0 flex-wrap items-center gap-x-2 gap-y-0.5`,children:[n.detail&&(0,Q.jsx)(v,{variant:`mono-secondary`,as:`span`,truncate:!0,children:n.detail}),(0,Q.jsx)(b,{children:t.id})]}),t.kind===`menu`&&E(t.id)&&(0,Q.jsx)(Ee,{summary:E(t.id)}),t.kind===`contentEntry`&&O(t.id).length>0&&(0,Q.jsx)(Te,{deltas:O(t.id),data:D}),t.change===`changed`&&(t.kind===`contentEntry`||t.kind===`page`)&&S&&u&&(0,Q.jsx)(L,{siteId:e,nodeId:t.id,fromSnapshot:S,toSnapshot:u.id})]})}),(0,Q.jsx)(N.Cell,{className:`align-top`,children:(0,Q.jsx)(v,{variant:`mono-secondary`,as:`span`,children:t.from!==void 0&&t.to!==void 0?a(`diff.revs`,{from:t.from,to:t.to}):a(`diff.rev`,{rev:t.to??t.from??0})})})]},t.id)})})]})})]},t)):(0,Q.jsxs)(re,{className:`gap-3`,children:[(0,Q.jsx)(y,{}),(0,Q.jsx)(y,{}),(0,Q.jsx)(y,{})]})]})})]})})}function Ae(){let e=z(),{siteId:t}=l({from:`/sites/$siteId`}),n=s(),r=D(),i=ae(t),o=de(t),p=c({queryKey:[`site`,t],queryFn:()=>j.sites.get(t)}),m=c({queryKey:[`snapshots`,t],queryFn:()=>j.snapshots.list(t)}),h=me(m.data,(e,t,n)=>n(e.label??``).includes(t)||n(e.id).includes(t)),[g,v]=(0,Y.useState)(!1),[y,b]=(0,Y.useState)(``),[x,S]=(0,Y.useState)(`keep`),[C,w]=(0,Y.useState)(),T=ue(t),E=ee(`rollback`),M=T.mode===`request`,re=d(),{diff:L}=f({strict:!1}),R=e=>re({to:`/sites/$siteId/snapshots`,params:{siteId:t},search:e?{diff:e}:{},replace:!e}),B=m.data?.find(e=>e.id===L),V=c({queryKey:[`snapshot`,t,L],queryFn:()=>j.snapshots.get(t,L),enabled:!!L&&m.isSuccess&&!B}),H=L?B??V.data:void 0,W=u({mutationFn:async e=>{let n=y.trim();if(e.kind===`create`){let r=await j.snapshots.create(t,{...n?{label:n}:{},publish:e.publish});return e.publish?A(r):void 0}if(e.kind===`publish`)return j.snapshots.publish(t,e.snapshot.id);await j.snapshots.rollback(t,e.snapshot.id)},onSuccess:async(a,s)=>{if(await n.invalidateQueries({queryKey:[`snapshots`,t]}),await n.invalidateQueries({queryKey:[`site`,t]}),w(void 0),v(!1),s.kind===`create`&&(b(``),S(`keep`)),a?.kind===`requested`){await n.invalidateQueries({queryKey:oe(t)}),o(a.request.id);return}r.success(s.kind===`create`?s.publish?e(`snapshots.publishedSnapshot`):e(`snapshots.created`):s.kind===`publish`?e(`snapshots.published`):e(`snapshots.rolledBack`),void 0,s.kind===`rollback`?i.view:a?i.viewAndCopy:void 0)},onError:t=>r.error(e(`snapshots.failed`),ie(e,t))}),K=()=>{x===`publish`?(v(!1),w({kind:`create`,publish:!0})):W.mutate({kind:`create`,publish:!1})},q=(0,Q.jsx)(a,{variant:`primary`,icon:(0,Q.jsx)(G,{}),onClick:()=>v(!0),"data-testid":`create-snapshot`,children:e(`snapshots.create`)}),J=h.search.trim()!==``;return(0,Q.jsxs)(se,{crumbs:(0,Q.jsx)(F,{siteId:t,trail:[{label:e(`pageHeaders.snapshots.title`)}]}),icon:(0,Q.jsx)(G,{size:24}),title:e(`pageHeaders.snapshots.title`),description:e(`pageHeaders.snapshots.description`),actions:q,children:[(0,Q.jsx)(U,{error:m.error??W.error??V.error}),(0,Q.jsx)(pe,{search:h.search,onSearch:h.setSearch,placeholder:e(`snapshots.search`)}),m.data?.length===0?(0,Q.jsx)(te,{icon:(0,Q.jsx)(G,{size:48,className:`text-kumo-inactive`}),title:e(`snapshots.empty`),description:e(`snapshots.emptyDescription`),contents:q}):(0,Q.jsx)(k,{className:`overflow-x-auto p-0`,children:m.isPending?(0,Q.jsx)(N,{children:(0,Q.jsx)(fe,{columns:6,rows:4})}):(0,Q.jsx)(xe,{snapshots:h.pageItems,publishedSnapshotId:p.data?.publishedSnapshotId,onPublish:e=>w({kind:`publish`,snapshot:e}),onRollback:e=>w({kind:`rollback`,snapshot:e}),publishDisabledReason:T.mode===`none`?T.reason:void 0,rollbackDisabledReason:E.reason,onCompare:e=>R(e.id),emptyIcon:(0,Q.jsx)(ce,{size:48,className:`text-kumo-inactive`}),renderTime:e=>(0,Q.jsx)(le,{iso:e}),labels:{empty:e(J?`snapshots.noMatches`:`snapshots.empty`),emptyDescription:e(J?`snapshots.noMatchesDescription`:`snapshots.emptyDescription`),live:e(`common.live`),publish:e(M?`publishing.request`:`common.publish`),rollBack:e(`common.rollBack`),compare:e(`snapshots.compare`),actions:e(`snapshots.actions`),columns:{snapshot:e(`snapshots.columns.snapshot`),actor:e(`snapshots.columns.actor`),changes:e(`snapshots.columns.changes`),when:e(`snapshots.columns.when`)},reasons:{manual:e(`snapshots.reasons.manual`),agentMutation:e(`snapshots.reasons.agentMutation`),publish:e(`snapshots.reasons.publish`),rollback:e(`snapshots.reasons.rollback`),scheduled:e(`snapshots.reasons.scheduled`),import:e(`snapshots.reasons.import`)}}})}),h.total>h.perPage&&(0,Q.jsx)(_,{page:h.page,perPage:h.perPage,totalCount:h.total,setPage:h.setPage}),(0,Q.jsx)(I.Root,{open:g,onOpenChange:v,dismissDisabled:W.isPending,children:(0,Q.jsxs)(I.Content,{size:`base`,closeLabel:e(`common.close`),children:[(0,Q.jsx)(I.Title,{children:e(`snapshots.createTitle`)}),(0,Q.jsx)(I.Description,{children:e(`snapshots.createIntro`)}),(0,Q.jsx)(I.Body,{children:(0,Q.jsxs)(`div`,{className:`grid gap-6`,"data-testid":`create-snapshot-dialog`,children:[(0,Q.jsx)(O,{label:e(`snapshots.label`),placeholder:e(`snapshots.labelPlaceholder`),description:e(`snapshots.labelDescription`),value:y,onValueChange:b,onKeyDown:e=>{e.key===`Enter`&&(e.preventDefault(),K())},maxLength:200,className:`w-full`,autoFocus:!0}),(0,Q.jsxs)(P.Group,{appearance:`card`,legend:e(`snapshots.afterCreate`),value:x,onValueChange:e=>S(e),children:[(0,Q.jsx)(P.Item,{value:`keep`,label:e(`snapshots.keepOption`),description:e(`snapshots.keepOptionDescription`)}),(0,Q.jsx)(P.Item,{value:`publish`,label:e(M?`publishing.requestOption`:`snapshots.publishOption`),description:T.mode===`none`?T.reason??e(`snapshots.publishOptionDescription`):e(M?`publishing.requestOptionDescription`:`snapshots.publishOptionDescription`),disabled:T.mode===`none`})]})]})}),(0,Q.jsx)(I.Actions,{dismissLabel:e(`common.cancel`),children:(0,Q.jsx)(I.Actions.Primary,{onClick:K,loading:W.isPending&&C===void 0,"data-testid":`create-snapshot-submit`,children:e(x===`publish`?`snapshots.continueToPublish`:`snapshots.create`)})})]})}),(0,Q.jsx)(ke,{siteId:t,snapshot:H,publishedSnapshotId:p.data?.publishedSnapshotId,onOpenChange:e=>!e&&R(void 0)}),(0,Q.jsx)(ne,{open:C!==void 0,onOpenChange:e=>!e&&w(void 0),title:C?.kind===`rollback`?e(`snapshots.rollbackTitle`):e(M?`publishing.requestTitle`:`snapshots.publishTitle`),description:C?.kind!==`rollback`&&M?e(`publishing.requestDescription`):C?.kind===`create`?e(`snapshots.createDescription`):C?e(`snapshots.becomesLive`,{name:C.snapshot.label??C.snapshot.id}):void 0,confirmLabel:C?.kind===`rollback`?e(`common.rollBack`):e(M?`publishing.sendRequest`:`common.publish`),cancelLabel:e(`common.cancel`),destructive:C?.kind===`rollback`,busy:W.isPending,onConfirm:()=>C&&W.mutate(C)})]})}export{Ae as SnapshotsPage};
2
- //# sourceMappingURL=SnapshotsPage-BVr8P-Pg.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{t as a}from"./button-pa1bq9b85hawg41a-CmOCuL-1.js";import{t as o}from"./link-cqyfjezntvr53rh7-3eczR57J.js";import{S as s,_ as c,d as l,h as u,l as d,u as f}from"./tanstack-BRxyYm4G.js";import{c as p,l as m,s as h}from"./Taxonomy-BGflQo3a.js";import{d as g}from"./Menus-LUcwCsPd.js";import{t as _}from"./pagination-oaenm9t7ou3lmcgw-CjvX77_7.js";import{n as v,t as y}from"./skeleton-line-m9dyh126t9k07jvg-BFlcthbF.js";import{t as b}from"./inline-copy-text-gbd7jhwpor27l4rq-BGh10UAA.js";import{t as x}from"./GitDiff.es-fB1csyEF.js";import{n as S}from"./checkbox-lbo436duy7krxcsk-HiD6vTuC.js";import{t as C}from"./PencilSimple.es-CsZ-k9wK.js";import{t as w}from"./Plus.es-XNm1OB5Q.js";import{t as T}from"./Star.es-DhrrAurR.js";import{t as E}from"./User.es-BLqDj7XT.js";import{a as ee}from"./useMe-BkBpEyf5.js";import{t as D}from"./Toast-BsM5w6Jh.js";import{t as O}from"./input-c8lv9ulv0kortliq-Be2cm12J.js";import{g as k,r as A,t as j}from"./api-CHeogUo-.js";import{t as M}from"./tabs-gf57qqf1wcclaejq-CirIVMnq.js";import{t as N}from"./table-yf8ul2e5nbemioi1-KGRDj7XO.js";import{t as P}from"./radio-35dx7y6rjrezbjsp-2D7MXAy3.js";import{n as F}from"./Crumbs-B3lDes5a.js";import{t as te}from"./empty-hkvg3is3uc6dj1at-Cen9KfIy.js";import{t as I}from"./layer-dialog-j5ywmzs46ccg6oqy-uKC-1DCk.js";import{t as ne}from"./ApprovalDialog-BM4Lzw-L.js";import{t as re}from"./InsetPanel-CHSg953_.js";import{t as L}from"./BodyChanges-C67-tSy-.js";import{c as R,u as z}from"./i18n-CCHry74V.js";import{t as ie}from"./api-errors-c5QRmg0g.js";import{a as ae}from"./useLiveSite-CUn2kbrj.js";import{s as B}from"./taxonomy-S-y5xbUa.js";import{t as oe}from"./usePendingApprovals-B_xkVaSu.js";import{$ as V,C as se,E as H,J as ce,S as U,W,d as le,lt as G,n as ue,r as de}from"./index-OjH3NEOH.js";import{n as K}from"./permalinks-XTIdpYm2.js";import{t as fe}from"./TableSkeleton-DWrf88UN.js";import{t as pe}from"./ListToolbar-BHXRGWj_.js";import{t as me}from"./usePaging-D37ddXyL.js";import{b as q,f as J,u as he}from"./media-DdL6ngu5.js";var Y=e(n(),1),ge=new Map([[`bold`,Y.createElement(Y.Fragment,null,Y.createElement(`path`,{d:`M228,160a12,12,0,0,1-12,12H40a12,12,0,0,1,0-24H216A12,12,0,0,1,228,160ZM40,108H216a12,12,0,0,0,0-24H40a12,12,0,0,0,0,24Z`}))],[`fill`,Y.createElement(Y.Fragment,null,Y.createElement(`path`,{d:`M208,32H48A16,16,0,0,0,32,48V208a16,16,0,0,0,16,16H208a16,16,0,0,0,16-16V48A16,16,0,0,0,208,32ZM184,160H72a8,8,0,0,1,0-16H184a8,8,0,0,1,0,16Zm0-48H72a8,8,0,0,1,0-16H184a8,8,0,0,1,0,16Z`}))],[`regular`,Y.createElement(Y.Fragment,null,Y.createElement(`path`,{d:`M224,160a8,8,0,0,1-8,8H40a8,8,0,0,1,0-16H216A8,8,0,0,1,224,160ZM40,104H216a8,8,0,0,0,0-16H40a8,8,0,0,0,0,16Z`}))]]),_e=new Map([[`bold`,Y.createElement(Y.Fragment,null,Y.createElement(`path`,{d:`M128,20A108,108,0,1,0,236,128,108.12,108.12,0,0,0,128,20Zm0,192a84,84,0,1,1,84-84A84.09,84.09,0,0,1,128,212Zm52-84a12,12,0,0,1-12,12H140v28a12,12,0,0,1-24,0V140H88a12,12,0,0,1,0-24h28V88a12,12,0,0,1,24,0v28h28A12,12,0,0,1,180,128Z`}))],[`fill`,Y.createElement(Y.Fragment,null,Y.createElement(`path`,{d:`M128,24A104,104,0,1,0,232,128,104.13,104.13,0,0,0,128,24Zm40,112H136v32a8,8,0,0,1-16,0V136H88a8,8,0,0,1,0-16h32V88a8,8,0,0,1,16,0v32h32a8,8,0,0,1,0,16Z`}))],[`regular`,Y.createElement(Y.Fragment,null,Y.createElement(`path`,{d:`M128,24A104,104,0,1,0,232,128,104.11,104.11,0,0,0,128,24Zm0,192a88,88,0,1,1,88-88A88.1,88.1,0,0,1,128,216Zm48-88a8,8,0,0,1-8,8H136v32a8,8,0,0,1-16,0V136H88a8,8,0,0,1,0-16h32V88a8,8,0,0,1,16,0v32h32A8,8,0,0,1,176,128Z`}))]]),X=Y.forwardRef((e,n)=>Y.createElement(t,{ref:n,...e,weights:ge}));X.displayName=`EqualsIcon`;var ve=X,Z=Y.forwardRef((e,n)=>Y.createElement(t,{ref:n,...e,weights:_e}));Z.displayName=`PlusCircleIcon`;var ye=Z,Q=r(),be={human:E,agent:W,system:V};function xe({snapshots:e,publishedSnapshotId:t,onPublish:n,onRollback:r,onCompare:o,publishDisabledReason:s,rollbackDisabledReason:c,labels:l,emptyIcon:u,emptyContents:d,renderTime:f}){if(e.length===0)return(0,Q.jsx)(H,{icon:u,title:l.empty,description:l.emptyDescription,contents:d});let p=e.findIndex(e=>e.id===t),m=o!==void 0;return(0,Q.jsxs)(N,{"data-testid":`snapshot-timeline`,children:[(0,Q.jsx)(N.Header,{children:(0,Q.jsxs)(N.Row,{children:[(0,Q.jsx)(N.Head,{children:l.columns.snapshot}),(0,Q.jsx)(N.Head,{children:l.columns.actor}),(0,Q.jsx)(N.Head,{children:l.columns.changes}),(0,Q.jsx)(N.Head,{children:l.columns.when}),m&&(0,Q.jsx)(N.Head,{className:`w-0`}),(0,Q.jsx)(N.Head,{sticky:`right`,className:`w-0`,children:(0,Q.jsx)(`span`,{className:`sr-only`,children:l.actions})})]})}),(0,Q.jsx)(N.Body,{children:e.map((e,u)=>{let d=e.id===t,h=p!==-1&&u>p,g=!!e.parentId||!!t&&!d,_=be[e.actor.kind];return(0,Q.jsxs)(N.Row,{"data-snapshot-id":e.id,"data-live":d||void 0,children:[(0,Q.jsx)(N.Cell,{children:(0,Q.jsxs)(`div`,{className:`grid min-w-48 gap-1`,children:[(0,Q.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Q.jsx)(v,{bold:!0,as:`span`,children:e.label??l.reasons[e.reason]}),d&&(0,Q.jsx)(i,{variant:`success`,appearance:`dot`,children:l.live})]}),(0,Q.jsxs)(`div`,{className:`flex flex-wrap items-center gap-x-2 gap-y-0.5`,children:[e.label&&(0,Q.jsx)(v,{variant:`secondary`,size:`sm`,as:`span`,children:l.reasons[e.reason]}),(0,Q.jsx)(b,{children:e.id})]})]})}),(0,Q.jsx)(N.Cell,{children:(0,Q.jsxs)(`span`,{className:`flex items-center gap-2 whitespace-nowrap`,children:[(0,Q.jsx)(_,{size:16,className:`shrink-0 text-kumo-subtle`,"aria-hidden":!0}),(0,Q.jsx)(v,{as:`span`,children:e.actor.name??e.actor.id})]})}),(0,Q.jsx)(N.Cell,{className:`whitespace-nowrap`,children:(0,Q.jsxs)(v,{variant:`mono-secondary`,as:`span`,children:[`+`,e.summary.added,` ~`,e.summary.changed,` −`,e.summary.removed]})}),(0,Q.jsx)(N.Cell,{className:`whitespace-nowrap`,children:f(e.createdAt)}),m&&(0,Q.jsx)(N.Cell,{className:`w-0 whitespace-nowrap`,children:g&&(0,Q.jsx)(a,{variant:`ghost`,size:`sm`,icon:(0,Q.jsx)(x,{}),onClick:()=>o(e),children:l.compare})}),(0,Q.jsxs)(N.Cell,{sticky:`right`,className:`w-0 whitespace-nowrap text-end`,children:[!d&&n&&!h&&(0,Q.jsx)(a,{variant:`secondary`,size:`sm`,onClick:()=>n(e),disabled:s!==void 0,title:s,children:l.publish}),!d&&r&&h&&(0,Q.jsx)(a,{variant:`secondary-destructive`,size:`sm`,onClick:()=>r(e),disabled:c!==void 0,title:c,children:l.rollBack})]})]},e.id)})})]})}var $=[`added`,`changed`,`removed`],Se={site:0,menu:1,taxonomy:2,term:3,asset:4,page:5,contentEntry:6,redirect:7,glossary:8};function Ce(e){let t=e=>e.sort((e,t)=>Se[e.kind]-Se[t.kind]||e.id.localeCompare(t.id));return{added:t(e.added.map(e=>({change:`added`,id:e.id,kind:e.kind,to:e.rev}))),changed:t(e.changed.map(({before:e,after:t})=>({change:`changed`,id:t.id,kind:t.kind,from:e.rev,to:t.rev}))),removed:t(e.removed.map(e=>({change:`removed`,id:e.id,kind:e.kind,from:e.rev})))}}function we(e,t){let n={};return e.parentId&&(n.previous=e.parentId),t&&t!==e.id&&(n.live=t),n}function Te({deltas:e,data:t}){let n=z(`menus`),r=e=>{if(!e)return n(`diff.assignments.none`);let r=t.byId.get(e)?.term;return r?t.name(r):e},a=e=>{let n=t.taxonomies.data?.find(t=>t.key===e);return(n?t.label(n,`singular`):e).toLocaleLowerCase()};return(0,Q.jsx)(`span`,{className:`flex min-w-0 flex-wrap items-center gap-1`,"data-testid":`assignment-deltas`,children:e.flatMap(e=>[...e.added.map(t=>(0,Q.jsx)(i,{variant:`outline`,icon:(0,Q.jsx)(w,{}),children:n(`diff.assignments.added`,{taxonomy:a(e.taxonomy),name:r(t)})},`+${e.taxonomy}${t}`)),...e.removed.map(t=>(0,Q.jsx)(i,{variant:`outline`,icon:(0,Q.jsx)(S,{}),children:n(`diff.assignments.removed`,{taxonomy:a(e.taxonomy),name:r(t)})},`-${e.taxonomy}${t}`)),...e.primary?[(0,Q.jsx)(i,{variant:`outline`,icon:(0,Q.jsx)(T,{}),children:n(`diff.assignments.primary`,{taxonomy:a(e.taxonomy),name:r(e.primary.to)})},`*${e.taxonomy}`)]:[]])})}function Ee({summary:e}){let t=z(`menus`);return(0,Q.jsxs)(`span`,{className:`flex min-w-0 flex-wrap items-center gap-1`,"data-testid":`menu-delta-summary`,children:[(0,Q.jsx)(i,{variant:`outline`,children:t(`menus.diff.summary`,{added:e.added,removed:e.removed,moved:e.moved,changed:e.changed})}),(0,Q.jsx)(i,{variant:`outline`,children:t(`menus.diff.items`,{before:e.before,after:e.after})})]})}var De={added:{variant:`success`,icon:ye},changed:{variant:`warning`,icon:C},removed:{variant:`error`,icon:m}};function Oe(e,t){let{locale:n}=R(),r=c({queryKey:[`site`,e],queryFn:()=>j.sites.get(e),enabled:t}),i=c({queryKey:[`pages`,e],queryFn:()=>j.pages.list(e),enabled:t}),a=c({queryKey:[`entries`,e,`all`],queryFn:()=>j.entries.list(e),enabled:t}),o=p(e,t),s=c({queryKey:h.redirects(e),queryFn:()=>j.redirects.list(e),enabled:t}),l=c({queryKey:[`assets`,e,`diff`],queryFn:()=>j.assets.list(e,{limit:200}),enabled:t});return t=>{if(t.kind===`site`)return r.data?.id===t.id?{title:r.data.name,detail:`/${r.data.slug}`}:{};if(t.kind===`page`){let n=i.data?.find(e=>e.id===t.id);return n?{title:n.title,detail:n.path,href:`/sites/${e}/pages/${n.id}`}:{}}if(t.kind===`taxonomy`){let n=o.taxonomies.data?.find(e=>e.id===t.id);return n?{title:o.label(n),detail:n.archive.basePath,href:`/sites/${e}/taxonomy?taxonomy=${n.key}`}:{}}if(t.kind===`term`){let n=o.byId.get(t.id)?.term,r=n&&o.taxonomies.data?.find(e=>e.id===n.taxonomyId);return n?{title:o.name(n),...r?{detail:B(r,n.slug)}:{},href:`/sites/${e}/taxonomy/${n.id}`}:{}}if(t.kind===`redirect`){let n=s.data?.find(e=>e.id===t.id);return n?{title:`${n.from} → ${n.to}`,href:`/sites/${e}/redirects`}:{}}if(t.kind===`asset`){let i=l.data?.assets.find(e=>e.asset.id===t.id);return i?{title:he(i.asset,n,r.data?.defaultLocale),detail:`${q(i.asset.mediaType)} · ${J(i.asset.bytes,n)}`,href:`/sites/${e}/media/${i.asset.id}`}:{}}let c=a.data?.find(e=>e.id===t.id);return c?{title:c.title,detail:K(r.data,c),href:`/sites/${e}/articles/${c.id}`}:{}}}function ke({siteId:e,snapshot:t,publishedSnapshotId:n,onOpenChange:r}){let a=z(`menus`),s=t!==void 0,l=(0,Y.useRef)(t);t&&(l.current=t);let u=t??l.current,d=u?we(u,n):{},f=[`previous`,`live`].filter(e=>d[e]),[m,h]=(0,Y.useState)(`previous`);(0,Y.useEffect)(()=>{u&&h(d.previous?`previous`:`live`)},[u?.id]);let _=d[m]?m:f[0]??`previous`,S=d[_],C=c({queryKey:[`snapshot-diff`,e,S,u?.id],queryFn:()=>j.snapshots.diff(e,S,u.id,{assignments:!0,menus:!0}),enabled:s&&!!S&&!!u,staleTime:1/0}),w=Oe(e,s),T=g(),E=e=>C.data?.menus?.find(t=>t.menuId===e),ee=t=>{if(t.kind!==`menu`)return w(t);let n=E(t.id);return n?{title:T(n.key),...n.change===`removed`?{}:{href:`/sites/${e}/navigation?menu=${encodeURIComponent(n.key)}`}}:{}},D=p(e,s),O=e=>(C.data?.assignments??[]).filter(t=>t.entryId===e),A=C.data?Ce(C.data):void 0,P=A?$.reduce((e,t)=>e+A[t].length,0):0,F=u?.label??u?.id??``;return(0,Q.jsx)(I.Root,{open:s,onOpenChange:r,children:(0,Q.jsxs)(I.Content,{size:`xl`,closeLabel:a(`common.close`),children:[(0,Q.jsx)(I.Title,{children:a(`diff.title`,{name:F})}),(0,Q.jsx)(I.Description,{children:a(S?`diff.descriptions.${_}`:`diff.nothingToCompare`)}),(0,Q.jsx)(I.Body,{children:(0,Q.jsxs)(`div`,{className:`grid gap-5`,"data-testid":`snapshot-diff`,children:[f.length>0&&(0,Q.jsxs)(`div`,{className:`flex flex-wrap items-center justify-between gap-3`,children:[f.length>1?(0,Q.jsx)(M,{variant:`segmented`,size:`sm`,value:_,onValueChange:e=>h(e),tabs:f.map(e=>({value:e,label:a(e===`live`?`diff.live`:`diff.previous`)}))}):(0,Q.jsxs)(v,{variant:`secondary`,size:`sm`,as:`span`,children:[a(`diff.against`),`:`,` `,a(_===`live`?`diff.live`:`diff.previous`)]}),A&&(0,Q.jsx)(`div`,{className:`flex flex-wrap items-center gap-1.5`,"data-testid":`diff-counts`,children:$.map(e=>{let t=De[e].icon,n=A[e].length;return(0,Q.jsx)(`span`,{"data-change-count":e,className:`inline-flex`,children:(0,Q.jsx)(i,{variant:n>0?De[e].variant:`secondary`,icon:(0,Q.jsx)(t,{}),children:a(`diff.counts.${e}`,{count:n})})},e)})})]}),f.length===0?(0,Q.jsx)(H,{icon:(0,Q.jsx)(x,{size:32,className:`text-kumo-inactive`}),title:a(`diff.nothingToCompare`),description:a(`diff.nothingToCompareDescription`)}):C.error?(0,Q.jsx)(U,{error:C.error,onRetry:()=>C.refetch()}):A?P===0?(0,Q.jsx)(H,{icon:(0,Q.jsx)(ve,{size:32,className:`text-kumo-inactive`}),title:a(`diff.none`),description:a(`diff.noneDescription`)}):$.filter(e=>A[e].length>0).map(t=>(0,Q.jsxs)(`section`,{className:`grid gap-2`,"data-change":t,children:[(0,Q.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Q.jsx)(v,{bold:!0,as:`h3`,children:a(`diff.${t}`)}),(0,Q.jsx)(i,{variant:`secondary`,children:A[t].length})]}),(0,Q.jsx)(k,{className:`overflow-x-auto p-0`,children:(0,Q.jsxs)(N,{layout:`fixed`,children:[(0,Q.jsxs)(`colgroup`,{children:[(0,Q.jsx)(`col`,{}),(0,Q.jsx)(`col`,{className:`w-32`})]}),(0,Q.jsx)(N.Header,{variant:`compact`,children:(0,Q.jsxs)(N.Row,{children:[(0,Q.jsx)(N.Head,{children:a(`diff.columns.item`)}),(0,Q.jsx)(N.Head,{children:a(`diff.columns.revision`)})]})}),(0,Q.jsx)(N.Body,{children:A[t].map(t=>{let n=ee(t);return(0,Q.jsxs)(N.Row,{"data-node-id":t.id,children:[(0,Q.jsx)(N.Cell,{children:(0,Q.jsxs)(`div`,{className:`grid min-w-0 gap-1`,children:[(0,Q.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2`,children:[(0,Q.jsx)(`span`,{className:`block min-w-0 truncate`,children:n.title?n.href?(0,Q.jsx)(o,{href:n.href,variant:`plain`,children:(0,Q.jsx)(v,{bold:!0,as:`span`,children:n.title})}):(0,Q.jsx)(v,{bold:!0,as:`span`,children:n.title}):(0,Q.jsx)(v,{variant:`secondary`,as:`span`,children:a(`diff.gone`)})}),(0,Q.jsx)(`span`,{className:`shrink-0`,children:(0,Q.jsx)(i,{variant:`outline`,children:a(`diff.kinds.${t.kind}`)})})]}),(0,Q.jsxs)(`div`,{className:`flex min-w-0 flex-wrap items-center gap-x-2 gap-y-0.5`,children:[n.detail&&(0,Q.jsx)(v,{variant:`mono-secondary`,as:`span`,truncate:!0,children:n.detail}),(0,Q.jsx)(b,{children:t.id})]}),t.kind===`menu`&&E(t.id)&&(0,Q.jsx)(Ee,{summary:E(t.id)}),t.kind===`contentEntry`&&O(t.id).length>0&&(0,Q.jsx)(Te,{deltas:O(t.id),data:D}),t.change===`changed`&&(t.kind===`contentEntry`||t.kind===`page`)&&S&&u&&(0,Q.jsx)(L,{siteId:e,nodeId:t.id,fromSnapshot:S,toSnapshot:u.id})]})}),(0,Q.jsx)(N.Cell,{className:`align-top`,children:(0,Q.jsx)(v,{variant:`mono-secondary`,as:`span`,children:t.from!==void 0&&t.to!==void 0?a(`diff.revs`,{from:t.from,to:t.to}):a(`diff.rev`,{rev:t.to??t.from??0})})})]},t.id)})})]})})]},t)):(0,Q.jsxs)(re,{className:`gap-3`,children:[(0,Q.jsx)(y,{}),(0,Q.jsx)(y,{}),(0,Q.jsx)(y,{})]})]})})]})})}function Ae(){let e=z(),{siteId:t}=l({from:`/sites/$siteId`}),n=s(),r=D(),i=ae(t),o=de(t),p=c({queryKey:[`site`,t],queryFn:()=>j.sites.get(t)}),m=c({queryKey:[`snapshots`,t],queryFn:()=>j.snapshots.list(t)}),h=me(m.data,(e,t,n)=>n(e.label??``).includes(t)||n(e.id).includes(t)),[g,v]=(0,Y.useState)(!1),[y,b]=(0,Y.useState)(``),[x,S]=(0,Y.useState)(`keep`),[C,w]=(0,Y.useState)(),T=ue(t),E=ee(`rollback`),M=T.mode===`request`,re=d(),{diff:L}=f({strict:!1}),R=e=>re({to:`/sites/$siteId/snapshots`,params:{siteId:t},search:e?{diff:e}:{},replace:!e}),B=m.data?.find(e=>e.id===L),V=c({queryKey:[`snapshot`,t,L],queryFn:()=>j.snapshots.get(t,L),enabled:!!L&&m.isSuccess&&!B}),H=L?B??V.data:void 0,W=u({mutationFn:async e=>{let n=y.trim();if(e.kind===`create`){let r=await j.snapshots.create(t,{...n?{label:n}:{},publish:e.publish});return e.publish?A(r):void 0}if(e.kind===`publish`)return j.snapshots.publish(t,e.snapshot.id);await j.snapshots.rollback(t,e.snapshot.id)},onSuccess:async(a,s)=>{if(await n.invalidateQueries({queryKey:[`snapshots`,t]}),await n.invalidateQueries({queryKey:[`site`,t]}),w(void 0),v(!1),s.kind===`create`&&(b(``),S(`keep`)),a?.kind===`requested`){await n.invalidateQueries({queryKey:oe(t)}),o(a.request.id);return}r.success(s.kind===`create`?s.publish?e(`snapshots.publishedSnapshot`):e(`snapshots.created`):s.kind===`publish`?e(`snapshots.published`):e(`snapshots.rolledBack`),void 0,s.kind===`rollback`?i.view:a?i.viewAndCopy:void 0)},onError:t=>r.error(e(`snapshots.failed`),ie(e,t))}),K=()=>{x===`publish`?(v(!1),w({kind:`create`,publish:!0})):W.mutate({kind:`create`,publish:!1})},q=(0,Q.jsx)(a,{variant:`primary`,icon:(0,Q.jsx)(G,{}),onClick:()=>v(!0),"data-testid":`create-snapshot`,children:e(`snapshots.create`)}),J=h.search.trim()!==``;return(0,Q.jsxs)(se,{crumbs:(0,Q.jsx)(F,{siteId:t,trail:[{label:e(`pageHeaders.snapshots.title`)}]}),icon:(0,Q.jsx)(G,{size:24}),title:e(`pageHeaders.snapshots.title`),description:e(`pageHeaders.snapshots.description`),actions:q,children:[(0,Q.jsx)(U,{error:m.error??W.error??V.error}),(0,Q.jsx)(pe,{search:h.search,onSearch:h.setSearch,placeholder:e(`snapshots.search`)}),m.data?.length===0?(0,Q.jsx)(te,{icon:(0,Q.jsx)(G,{size:48,className:`text-kumo-inactive`}),title:e(`snapshots.empty`),description:e(`snapshots.emptyDescription`),contents:q}):(0,Q.jsx)(k,{className:`overflow-x-auto p-0`,children:m.isPending?(0,Q.jsx)(N,{children:(0,Q.jsx)(fe,{columns:6,rows:4})}):(0,Q.jsx)(xe,{snapshots:h.pageItems,publishedSnapshotId:p.data?.publishedSnapshotId,onPublish:e=>w({kind:`publish`,snapshot:e}),onRollback:e=>w({kind:`rollback`,snapshot:e}),publishDisabledReason:T.mode===`none`?T.reason:void 0,rollbackDisabledReason:E.reason,onCompare:e=>R(e.id),emptyIcon:(0,Q.jsx)(ce,{size:48,className:`text-kumo-inactive`}),renderTime:e=>(0,Q.jsx)(le,{iso:e}),labels:{empty:e(J?`snapshots.noMatches`:`snapshots.empty`),emptyDescription:e(J?`snapshots.noMatchesDescription`:`snapshots.emptyDescription`),live:e(`common.live`),publish:e(M?`publishing.request`:`common.publish`),rollBack:e(`common.rollBack`),compare:e(`snapshots.compare`),actions:e(`snapshots.actions`),columns:{snapshot:e(`snapshots.columns.snapshot`),actor:e(`snapshots.columns.actor`),changes:e(`snapshots.columns.changes`),when:e(`snapshots.columns.when`)},reasons:{manual:e(`snapshots.reasons.manual`),agentMutation:e(`snapshots.reasons.agentMutation`),publish:e(`snapshots.reasons.publish`),rollback:e(`snapshots.reasons.rollback`),scheduled:e(`snapshots.reasons.scheduled`),import:e(`snapshots.reasons.import`)}}})}),h.total>h.perPage&&(0,Q.jsx)(_,{page:h.page,perPage:h.perPage,totalCount:h.total,setPage:h.setPage}),(0,Q.jsx)(I.Root,{open:g,onOpenChange:v,dismissDisabled:W.isPending,children:(0,Q.jsxs)(I.Content,{size:`base`,closeLabel:e(`common.close`),children:[(0,Q.jsx)(I.Title,{children:e(`snapshots.createTitle`)}),(0,Q.jsx)(I.Description,{children:e(`snapshots.createIntro`)}),(0,Q.jsx)(I.Body,{children:(0,Q.jsxs)(`div`,{className:`grid gap-6`,"data-testid":`create-snapshot-dialog`,children:[(0,Q.jsx)(O,{label:e(`snapshots.label`),placeholder:e(`snapshots.labelPlaceholder`),description:e(`snapshots.labelDescription`),value:y,onValueChange:b,onKeyDown:e=>{e.key===`Enter`&&(e.preventDefault(),K())},maxLength:200,className:`w-full`,autoFocus:!0}),(0,Q.jsxs)(P.Group,{appearance:`card`,legend:e(`snapshots.afterCreate`),value:x,onValueChange:e=>S(e),children:[(0,Q.jsx)(P.Item,{value:`keep`,label:e(`snapshots.keepOption`),description:e(`snapshots.keepOptionDescription`)}),(0,Q.jsx)(P.Item,{value:`publish`,label:e(M?`publishing.requestOption`:`snapshots.publishOption`),description:T.mode===`none`?T.reason??e(`snapshots.publishOptionDescription`):e(M?`publishing.requestOptionDescription`:`snapshots.publishOptionDescription`),disabled:T.mode===`none`})]})]})}),(0,Q.jsx)(I.Actions,{dismissLabel:e(`common.cancel`),children:(0,Q.jsx)(I.Actions.Primary,{onClick:K,loading:W.isPending&&C===void 0,"data-testid":`create-snapshot-submit`,children:e(x===`publish`?`snapshots.continueToPublish`:`snapshots.create`)})})]})}),(0,Q.jsx)(ke,{siteId:t,snapshot:H,publishedSnapshotId:p.data?.publishedSnapshotId,onOpenChange:e=>!e&&R(void 0)}),(0,Q.jsx)(ne,{open:C!==void 0,onOpenChange:e=>!e&&w(void 0),title:C?.kind===`rollback`?e(`snapshots.rollbackTitle`):e(M?`publishing.requestTitle`:`snapshots.publishTitle`),description:C?.kind!==`rollback`&&M?e(`publishing.requestDescription`):C?.kind===`create`?e(`snapshots.createDescription`):C?e(`snapshots.becomesLive`,{name:C.snapshot.label??C.snapshot.id}):void 0,confirmLabel:C?.kind===`rollback`?e(`common.rollBack`):e(M?`publishing.sendRequest`:`common.publish`),cancelLabel:e(`common.cancel`),destructive:C?.kind===`rollback`,busy:W.isPending,onConfirm:()=>C&&W.mutate(C)})]})}export{Ae as SnapshotsPage};
2
+ //# sourceMappingURL=SnapshotsPage-BpDI47Nb.js.map