@cloudhal/cli 0.3.0 → 0.3.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/assets/starters/blog/package.json +4 -4
- package/dist/assets/studio/assets/AccountPage-Bm5BeHWl.js +2 -0
- package/dist/assets/studio/assets/{ActivityPage-C0HlgSI5.js → ActivityPage-D8RUaugX.js} +2 -2
- package/dist/assets/studio/assets/{AgentModes-B81a2nUo.js → AgentModes-CP8u-uXl.js} +2 -2
- package/dist/assets/studio/assets/AgentsPage-CaH_5r7Z.js +2 -0
- package/dist/assets/studio/assets/AnalyticsPage-BmO0u8xD.js +3 -0
- package/dist/assets/studio/assets/ApprovalDialog-DXKCyEdf.js +2 -0
- package/dist/assets/studio/assets/ApprovalsPage-q-birvZ1.js +3 -0
- package/dist/assets/studio/assets/ArticleEditorPage-lHoUmERU.js +2 -0
- package/dist/assets/studio/assets/ArticlesPage-C4HQcyMZ.js +2 -0
- package/dist/assets/studio/assets/{AssetPage-ddWJt0hs.js → AssetPage-b0erj1AI.js} +2 -2
- package/dist/assets/studio/assets/{Audit-BCzf5vBq.js → Audit-DgbpP_nz.js} +2 -2
- package/dist/assets/studio/assets/AuditBadges-BEqBnWoz.js +2 -0
- package/dist/assets/studio/assets/{AuthLayout-Cidy_2Lu.js → AuthLayout-CXAGkrx9.js} +2 -2
- package/dist/assets/studio/assets/AutomationsPage-C4pRmT5O.js +2 -0
- package/dist/assets/studio/assets/{BlockSection-CnUXl5Sg.js → BlockSection-TZc72IgX.js} +2 -2
- package/dist/assets/studio/assets/{BodyChanges-M0zcsivC.js → BodyChanges-WuQnhlDk.js} +3 -3
- package/dist/assets/studio/assets/BuildPage-CtH9Zwbu.js +2 -0
- package/dist/assets/studio/assets/{CommandMenu-CH5CJ8Kg.js → CommandMenu-BVT-HHW0.js} +2 -2
- package/dist/assets/studio/assets/{CommentThreadControls-D04pICZT.js → CommentThreadControls-CXNj8JY7.js} +2 -2
- package/dist/assets/studio/assets/{CommentThreadPage-BP0N9T4z.js → CommentThreadPage-DyXjmoOu.js} +2 -2
- package/dist/assets/studio/assets/{CommenterPage-CeFR4pn4.js → CommenterPage-ClHD0q_d.js} +2 -2
- package/dist/assets/studio/assets/Comments-sU22Wp1j.js +2 -0
- package/dist/assets/studio/assets/CommentsPage-C7tWqq_I.js +2 -0
- package/dist/assets/studio/assets/{ConfirmDialog-DEHkMoTj.js → ConfirmDialog-DKmz4y5Q.js} +2 -2
- package/dist/assets/studio/assets/{Crumbs-Ci_RdgHU.js → Crumbs-DOM6tT0l.js} +2 -2
- package/dist/assets/studio/assets/{EditorLayout-DVegYcZT.js → EditorLayout-ieqpWD3O.js} +2 -2
- package/dist/assets/studio/assets/{EditorPreview-DsZG4-oJ.js → EditorPreview-BMn8JFyR.js} +2 -2
- package/dist/assets/studio/assets/{Elevation-Ca3Q8sk-.js → Elevation-B3H1KYdW.js} +2 -2
- package/dist/assets/studio/assets/{ElevationRequest-B0_Q_gVT.js → ElevationRequest-DiCnHA-N.js} +2 -2
- package/dist/assets/studio/assets/{ForgotPasswordPage-LNtBXfC8.js → ForgotPasswordPage-ClPZ6VQ0.js} +2 -2
- package/dist/assets/studio/assets/Gating-mRuy0Aw6.js +2 -0
- package/dist/assets/studio/assets/{GovernanceDialog-DR0m4Bhp.js → GovernanceDialog-BOsmZ9sA.js} +2 -2
- package/dist/assets/studio/assets/{InvitePage-CZ-4Clg6.js → InvitePage-DHe4I49a.js} +2 -2
- package/dist/assets/studio/assets/{ListToolbar-CE70usqf.js → ListToolbar-D0cz9A9i.js} +2 -2
- package/dist/assets/studio/assets/LoginPage-CaYvxxAx.js +2 -0
- package/dist/assets/studio/assets/{MediaPage-D7h4RBbB.js → MediaPage-cRqqqjDj.js} +2 -2
- package/dist/assets/studio/assets/{MediaPicker-DlJLkaGR.js → MediaPicker-zwukL6LF.js} +2 -2
- package/dist/assets/studio/assets/{MediaUpload-BpTyBTHG.js → MediaUpload-D_NqJMLl.js} +2 -2
- package/dist/assets/studio/assets/MembersPage-nFZuQGQj.js +2 -0
- package/dist/assets/studio/assets/{Menus-ChmyHrPc.js → Menus-DiSEzHBI.js} +2 -2
- package/dist/assets/studio/assets/NavigationPage-CnDJF3N5.js +2 -0
- package/dist/assets/studio/assets/{NewSiteDialog-D7SUMMY3.js → NewSiteDialog-B5ogDopi.js} +2 -2
- package/dist/assets/studio/assets/PageEditorPage-CWb1gYnd.js +5 -0
- package/dist/assets/studio/assets/PagesPage-B0efBfNw.js +2 -0
- package/dist/assets/studio/assets/{PasswordField-Cn0g88_l.js → PasswordField-CQUUxc5O.js} +2 -2
- package/dist/assets/studio/assets/{PreviewPanel-ChFoJD1H.js → PreviewPanel-DJfEXxjT.js} +2 -2
- package/dist/assets/studio/assets/{ProjectPage-e5BSkkda.js → ProjectPage-Bkk5B7Kk.js} +2 -2
- package/dist/assets/studio/assets/Readers-D8WTNlW_.js +3 -0
- package/dist/assets/studio/assets/RedirectDialog-CmFr73CR.js +2 -0
- package/dist/assets/studio/assets/RedirectsPage-CiYRLydI.js +2 -0
- package/dist/assets/studio/assets/{ReleaseApproval-gkciKrWx.js → ReleaseApproval-Cr8kHN7B.js} +2 -2
- package/dist/assets/studio/assets/ReleasePage-qOzPM_1T.js +2 -0
- package/dist/assets/studio/assets/ReleaseParts-BJCwLv3d.js +2 -0
- package/dist/assets/studio/assets/{ResetPasswordPage-DLpZlh7i.js → ResetPasswordPage-Bga7XJxi.js} +2 -2
- package/dist/assets/studio/assets/RocketLaunch.es-BTDML1jE.js +2 -0
- package/dist/assets/studio/assets/RowMenu-jMjMjIez.js +2 -0
- package/dist/assets/studio/assets/ScheduleCard-DzvtvUrB.js +2 -0
- package/dist/assets/studio/assets/{ScheduleDialog-B-QQ_Z3F.js → ScheduleDialog-BEIBEgNY.js} +2 -2
- package/dist/assets/studio/assets/{ScheduleHistoryPage-wv3pKfaZ.js → ScheduleHistoryPage-Cqvbso0N.js} +2 -2
- package/dist/assets/studio/assets/{ScheduleStatusBadge-DHGmEyDv.js → ScheduleStatusBadge-CvtbjKcE.js} +2 -2
- package/dist/assets/studio/assets/{SchedulerStalled-DUmZxbV4.js → SchedulerStalled-v8egx5_5.js} +2 -2
- package/dist/assets/studio/assets/Schedules-Bi_9IGap.js +3 -0
- package/dist/assets/studio/assets/SchedulesPage-AVUyMVLN.js +2 -0
- package/dist/assets/studio/assets/{ScopeBadge-DM2PO5Xk.js → ScopeBadge-CXRIKJV-.js} +2 -2
- package/dist/assets/studio/assets/{SectionCard-SzT8t6oM.js → SectionCard-253RWE03.js} +2 -2
- package/dist/assets/studio/assets/{Seo-CYyFHl3G.js → Seo-BAmAoHie.js} +2 -2
- package/dist/assets/studio/assets/{SeoPreview-tarmyT2Y.js → SeoPreview-BD_qXwU3.js} +2 -2
- package/dist/assets/studio/assets/{Settings-C407Vxml.js → Settings-PNFH1Q2d.js} +2 -2
- package/dist/assets/studio/assets/{SiteAccessField-D34vIaAo.js → SiteAccessField-B6rXWqPA.js} +2 -2
- package/dist/assets/studio/assets/SiteOverviewPage-BHlgtKxn.js +4 -0
- package/dist/assets/studio/assets/SiteSettingsPage-CK5oODPR.js +3 -0
- package/dist/assets/studio/assets/{SitesPage-B2QS2zaq.js → SitesPage-Bv9wYnBR.js} +3 -3
- package/dist/assets/studio/assets/{SkillsPage-BtFk0bBw.js → SkillsPage-CzzFsQCY.js} +3 -3
- package/dist/assets/studio/assets/SnapshotsPage-B38WZn18.js +2 -0
- package/dist/assets/studio/assets/{Status-BgB2wP8j.js → Status-Ck8cp5VU.js} +2 -2
- package/dist/assets/studio/assets/StatusActions-ClWdGpev.js +3 -0
- package/dist/assets/studio/assets/{TagsMigration-BggsWH7A.js → TagsMigration-DHPq_z7b.js} +2 -2
- package/dist/assets/studio/assets/{Taxonomy-CeQUBEeZ.js → Taxonomy-CDd52lEj.js} +2 -2
- package/dist/assets/studio/assets/TaxonomyPage-hmMDxUPP.js +2 -0
- package/dist/assets/studio/assets/TermEditorPage-rhF98Ssd.js +2 -0
- package/dist/assets/studio/assets/{TermPickers-cZIwRG5t.js → TermPickers-DzlmKYS_.js} +2 -2
- package/dist/assets/studio/assets/{Toast-BHyBhGXI.js → Toast-MSfrCjAr.js} +2 -2
- package/dist/assets/studio/assets/TranslationList-BOWeWTue.js +2 -0
- package/dist/assets/studio/assets/{TranslationsPage-MFJsWMgX.js → TranslationsPage-B0DP9mDX.js} +2 -2
- package/dist/assets/studio/assets/{api-Sbz4Rbu7.js → api-K4ZsoxSR.js} +2 -2
- package/dist/assets/studio/assets/{api-errors-FBnZYqCy.js → api-errors-MOGC4Qux.js} +2 -2
- package/dist/assets/studio/assets/{approvals-BB74ogKx.js → approvals-0AbtJUeH.js} +2 -2
- package/dist/assets/studio/assets/{ar-6o5tS7uI.js → ar-B7Q-Tnf1.js} +2 -2
- package/dist/assets/studio/assets/{charts-DL9SbRU8.js → charts-CcTdxwHf.js} +2 -2
- package/dist/assets/studio/assets/{clipboard-text-gd6s3n1bqse9zgt8-DXnAaY6R.js → clipboard-text-gd6s3n1bqse9zgt8-8cLlgBwE.js} +2 -2
- package/dist/assets/studio/assets/{collapsible-l8g94on4w7qfosmn-udgP1bfF.js → collapsible-l8g94on4w7qfosmn-B4g2i1uh.js} +2 -2
- package/dist/assets/studio/assets/{combobox-hdxtsm2gqcxxgfju-BzzDlvd3.js → combobox-hdxtsm2gqcxxgfju-DXYGsrSK.js} +2 -2
- package/dist/assets/studio/assets/{createToastManager-onmoqrmr8zo02rif-DtEv4lxV.js → createToastManager-onmoqrmr8zo02rif-DFnQWIYL.js} +2 -2
- package/dist/assets/studio/assets/{de-BN-GS_nX.js → de-DLXuL-X-.js} +2 -2
- package/dist/assets/studio/assets/{deleteLabels-DwQes2_M.js → deleteLabels-QAHG4PeV.js} +2 -2
- package/dist/assets/studio/assets/{dialog-glpnivujociqs9lh-BefDeRGC.js → dialog-glpnivujociqs9lh-B2sB0Q83.js} +2 -2
- package/dist/assets/studio/assets/dropdown-m53ji1d66mws89wh-CX3moquw.js +2 -0
- package/dist/assets/studio/assets/{editor-C9MhZu7g.js → editor-Bq67msVD.js} +2 -2
- package/dist/assets/studio/assets/{es-C1E3agwU.js → es-BygirbfZ.js} +2 -2
- package/dist/assets/studio/assets/{fa-VZyv0VcS.js → fa-CYekV1Xs.js} +2 -2
- package/dist/assets/studio/assets/{fr-IaaUvy1z.js → fr-D-Y48Px4.js} +2 -2
- package/dist/assets/studio/assets/{he-Ca3dnXtb.js → he-CfuQu8tf.js} +2 -2
- package/dist/assets/studio/assets/{hi-BXkaH5dy.js → hi-HzeORH2z.js} +2 -2
- package/dist/assets/studio/assets/{i18n-Cjiv6Esx.js → i18n-B-06kDA4.js} +3 -3
- package/dist/assets/studio/assets/{id-BuNEmn7g.js → id-AW4tXw9G.js} +2 -2
- package/dist/assets/studio/assets/index-BLFwX4Tg.css +2 -0
- package/dist/assets/studio/assets/index-DWzjnrnl.js +4 -0
- package/dist/assets/studio/assets/{it-DEB0m7yM.js → it-EGuJa8fC.js} +2 -2
- package/dist/assets/studio/assets/{ja-BJv09PXI.js → ja-JiIbNjTZ.js} +2 -2
- package/dist/assets/studio/assets/{ko-Cikp2ojH.js → ko-yEoxGMly.js} +2 -2
- package/dist/assets/studio/assets/{layer-dialog-j5ywmzs46ccg6oqy-DyWF5y24.js → layer-dialog-j5ywmzs46ccg6oqy-Dg9cqt2A.js} +2 -2
- package/dist/assets/studio/assets/{media-DqHiLqTz.js → media-BnpTZ1vj.js} +2 -2
- package/dist/assets/studio/assets/{nl-BiYEXj4B.js → nl-s9UiFHkp.js} +2 -2
- package/dist/assets/studio/assets/{pl-Iaem81Jv.js → pl-B9qa5oln.js} +2 -2
- package/dist/assets/studio/assets/{pt-BR-CM8N0OoK.js → pt-BR-B2hZUyrW.js} +2 -2
- package/dist/assets/studio/assets/{ru-2qsjd_Gm.js → ru-DYmqB5PL.js} +2 -2
- package/dist/assets/studio/assets/{schedules-api-B7c4AXSw.js → schedules-api-CZRkol2x.js} +2 -2
- package/dist/assets/studio/assets/{tag-input-ohfybx5dbxy3houy-DhZt3VBi.js → tag-input-ohfybx5dbxy3houy-0qdjxuFW.js} +2 -2
- package/dist/assets/studio/assets/{tr-BK-gVqHj.js → tr-COm1KgYY.js} +2 -2
- package/dist/assets/studio/assets/{uk-PoqqfkaM.js → uk-DdtNKfpf.js} +2 -2
- package/dist/assets/studio/assets/{useAnalyticsCard-MXajmsui.js → useAnalyticsCard-k_xTTAyd.js} +2 -2
- package/dist/assets/studio/assets/{useMe-z-wff5FW.js → useMe-Cx8D2_vf.js} +2 -2
- package/dist/assets/studio/assets/{usePaging-BiNrjkE2.js → usePaging-pE8aE7JW.js} +2 -2
- package/dist/assets/studio/assets/usePendingApprovals-B6g17X7P.js +2 -0
- package/dist/assets/studio/assets/{zh-Hans-BYiQm8Cr.js → zh-Hans-DCvEU7yR.js} +2 -2
- package/dist/assets/studio/index.html +24 -20
- package/dist/src/cloudflare/wrangler.js +11 -1
- package/package.json +11 -11
- package/dist/assets/studio/assets/AccountPage-Dzr5d8sk.js +0 -2
- package/dist/assets/studio/assets/AgentsPage-BzCOyX4g.js +0 -2
- package/dist/assets/studio/assets/AnalyticsPage-7yb7DBOH.js +0 -3
- package/dist/assets/studio/assets/ApprovalsPage-_tqc02mk.js +0 -3
- package/dist/assets/studio/assets/ArticleEditorPage-Bcb81dXC.js +0 -2
- package/dist/assets/studio/assets/ArticlesPage-152INxny.js +0 -2
- package/dist/assets/studio/assets/AuditBadges-C4sNtzf9.js +0 -2
- package/dist/assets/studio/assets/AutomationsPage-Dc6g5v_v.js +0 -2
- package/dist/assets/studio/assets/BuildPage-C1Nwy4dt.js +0 -2
- package/dist/assets/studio/assets/Comments-CnfKPS2z.js +0 -2
- package/dist/assets/studio/assets/CommentsPage-BlP_knlf.js +0 -2
- package/dist/assets/studio/assets/Gating-BdY3KxOv.js +0 -2
- package/dist/assets/studio/assets/LockSimple.es-D3HQqnoN.js +0 -2
- package/dist/assets/studio/assets/LoginPage-BfUjD7n3.js +0 -2
- package/dist/assets/studio/assets/MembersPage-BNu1FOBL.js +0 -2
- package/dist/assets/studio/assets/NavigationPage-C10U827y.js +0 -2
- package/dist/assets/studio/assets/PageEditorPage-DBJUAqjk.js +0 -5
- package/dist/assets/studio/assets/PagesPage-Bwm8b58m.js +0 -2
- package/dist/assets/studio/assets/Readers-CvhU7wCy.js +0 -3
- package/dist/assets/studio/assets/RedirectDialog-DCNKLV43.js +0 -2
- package/dist/assets/studio/assets/RedirectsPage-CR1Di-T6.js +0 -2
- package/dist/assets/studio/assets/ReleasePage-BRa167d9.js +0 -2
- package/dist/assets/studio/assets/ReleaseParts-BEMf510p.js +0 -2
- package/dist/assets/studio/assets/RowMenu-BTHdea9k.js +0 -2
- package/dist/assets/studio/assets/ScheduleCard-BQWUIwPX.js +0 -2
- package/dist/assets/studio/assets/Schedules-R6HfROIM.js +0 -3
- package/dist/assets/studio/assets/SchedulesPage-CIbzmMag.js +0 -2
- package/dist/assets/studio/assets/SiteOverviewPage-Bm0-f1bp.js +0 -4
- package/dist/assets/studio/assets/SiteSettingsPage-tq4SzyMQ.js +0 -3
- package/dist/assets/studio/assets/SnapshotsPage-cltqpJLv.js +0 -2
- package/dist/assets/studio/assets/StatusActions-tY-DY4Wa.js +0 -3
- package/dist/assets/studio/assets/TaxonomyPage-hm0h5Ug5.js +0 -2
- package/dist/assets/studio/assets/TermEditorPage-tRUgbC0f.js +0 -2
- package/dist/assets/studio/assets/TranslationList-Cc4K8uy_.js +0 -2
- package/dist/assets/studio/assets/index-Boved2Nz.js +0 -4
- package/dist/assets/studio/assets/index-DaI1wvdp.css +0 -2
- package/dist/assets/studio/assets/usePendingApprovals-BRHKM3-1.js +0 -2
package/dist/assets/studio/assets/{CommentThreadPage-BP0N9T4z.js → CommentThreadPage-DyXjmoOu.js}
RENAMED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{r as e}from"./rolldown-runtime-hePW80VL.js";import{n as t,t as n}from"./IconBase.es-BZDpYMnj.js";import{i as r,r as i}from"./react-CDCuUAOg.js";import{t as a}from"./badge-dq8bx752b9dp7dst-D1xrG37q.js";import{n as o,t as s}from"./button-pa1bq9b85hawg41a-BcGpLLER.js";import{S as c,_ as l,d as u,h as d,l as f,m as p,u as m}from"./tanstack-BiJ_7SEB.js";import{_ as h,a as g,b as _,d as v,f as y,g as b,h as x,i as ee,l as S,m as te,o as C,p as w,s as ne,t as re,u as ie,v as T}from"./Comments-CnfKPS2z.js";import{r as ae,t as oe}from"./DirectionalIcon-BKKMj3KT.js";import{t as se}from"./ArrowSquareOut.es-BWeH9CSw.js";import{r as ce}from"./calendar-locale-D4aJYygH.js";import{t as E}from"./CaretUp.es-DBg3pdpL.js";import{m as le,n as D,t as O}from"./skeleton-line-m9dyh126t9k07jvg-CHsT8Hs3.js";import{n as k,t as ue}from"./banner-msnmqm7of2lck01x-DRzQHuca.js";import{i as A,o as de,u as fe}from"./useMe-z-wff5FW.js";import{t as pe}from"./Toast-BHyBhGXI.js";import{t as j}from"./input-h5ox92gf13ge04hp-jfy1uD8s.js";import{c as M,t as N}from"./api-Sbz4Rbu7.js";import{t as P}from"./collapsible-l8g94on4w7qfosmn-udgP1bfF.js";import{t as me}from"./tabs-gf57qqf1wcclaejq-Cay-6qhK.js";import{n as he}from"./Crumbs-Ci_RdgHU.js";import{n as F}from"./useChartPalette-DXG2lo2x.js";import{t as ge}from"./Settings-C407Vxml.js";import{t as I}from"./layer-dialog-j5ywmzs46ccg6oqy-DyWF5y24.js";import{c as _e}from"./intl-C22KAx_l.js";import{r as ve}from"./format-DGE2c-4V.js";import{a as L,l as R,n as z,o as B,s as V}from"./comment-model-CArtcrfg.js";import{t as H}from"./AuditBadges-C4sNtzf9.js";import{t as ye}from"./InsetPanel-CHSg953_.js";import{t as be}from"./SectionCard-SzT8t6oM.js";import{p as xe}from"./roles-B7USahqW.js";import{E as Se,S as Ce,at as we,b as Te,lt as Ee,ot as De,tt as Oe}from"./index-Boved2Nz.js";import{b as ke,f as Ae,n as je,u as Me,v as U,x as Ne}from"./comments-B1PIozwq.js";import{i as Pe,n as Fe,r as Ie,t as Le}from"./CommentThreadControls-D04pICZT.js";import{n as Re,r as ze}from"./EditorLayout-DVegYcZT.js";var W=e(r(),1),Be=new Map([[`bold`,W.createElement(W.Fragment,null,W.createElement(`path`,{d:`M233.86,110.48,65.8,14.58A20,20,0,0,0,37.15,38.64L67.33,128,37.15,217.36A20,20,0,0,0,56,244a20.1,20.1,0,0,0,9.81-2.58l.09-.06,168-96.07a20,20,0,0,0,0-34.81ZM63.19,215.26,88.61,140H144a12,12,0,0,0,0-24H88.61L63.18,40.72l152.76,87.17Z`}))],[`fill`,W.createElement(W.Fragment,null,W.createElement(`path`,{d:`M240,127.89a16,16,0,0,1-8.18,14L63.9,237.9A16.15,16.15,0,0,1,56,240a16,16,0,0,1-15-21.33l27-79.95A4,4,0,0,1,71.72,136H144a8,8,0,0,0,8-8.53,8.19,8.19,0,0,0-8.26-7.47h-72a4,4,0,0,1-3.79-2.72l-27-79.94A16,16,0,0,1,63.84,18.07l168,95.89A16,16,0,0,1,240,127.89Z`}))],[`regular`,W.createElement(W.Fragment,null,W.createElement(`path`,{d:`M231.87,114l-168-95.89A16,16,0,0,0,40.92,37.34L71.55,128,40.92,218.67A16,16,0,0,0,56,240a16.15,16.15,0,0,0,7.93-2.1l167.92-96.05a16,16,0,0,0,.05-27.89ZM56,224a.56.56,0,0,0,0-.12L85.74,136H144a8,8,0,0,0,0-16H85.74L56.06,32.16A.46.46,0,0,0,56,32l168,95.83Z`}))]]),G=W.forwardRef((e,t)=>W.createElement(n,{ref:t,...e,weights:Be}));G.displayName=`PaperPlaneRightIcon`;var Ve=G,K=i();function q({label:e,children:t}){return(0,K.jsxs)(`div`,{className:`grid min-w-0 gap-0.5 @md:grid-cols-[minmax(0,12rem)_minmax(0,1fr)] @md:gap-4`,children:[(0,K.jsx)(`dt`,{children:(0,K.jsx)(D,{as:`span`,variant:`secondary`,size:`sm`,children:e})}),(0,K.jsx)(`dd`,{className:`m-0 min-w-0`,children:t})]})}function J({actor:e,words:t,approvedBy:n}){let r=e.name??e.id;return(0,K.jsxs)(`span`,{className:`flex min-w-0 flex-wrap items-center gap-x-2 gap-y-1`,children:[(0,K.jsx)(H,{kind:e.kind,label:t.actorKind[e.kind]}),(0,K.jsx)(`span`,{dir:`auto`,className:`min-w-0 wrap-anywhere`,children:(0,K.jsx)(D,{as:`span`,children:r})}),n&&(0,K.jsx)(D,{as:`span`,variant:`secondary`,size:`sm`,children:t.approvedFor(n,r)})]})}function Y({moderation:e,locale:t,labels:n,words:r,approvedBy:i}){let a=R(e.at,t).absolute,o=r.effect[e.action];return(0,K.jsxs)(ye,{label:n.title,className:`@container`,children:[(0,K.jsx)(D,{as:`span`,bold:!0,children:n.title}),(0,K.jsxs)(`dl`,{className:`m-0 grid gap-3`,"data-statement-of-reasons":e.action,children:[(0,K.jsx)(q,{label:n.decision,children:(0,K.jsxs)(`span`,{className:`grid gap-0.5`,children:[(0,K.jsx)(D,{as:`span`,children:r.action[e.action]}),o&&(0,K.jsx)(D,{as:`span`,variant:`secondary`,size:`sm`,children:o})]})}),(0,K.jsx)(q,{label:n.grounds,children:(0,K.jsx)(D,{as:`span`,variant:e.reasonCode?`body`:`secondary`,children:e.reasonCode?r.reason[e.reasonCode]:n.noGrounds})}),(0,K.jsx)(q,{label:n.facts,children:e.note?(0,K.jsx)(`span`,{dir:`auto`,className:`block min-w-0 whitespace-pre-line wrap-anywhere`,children:(0,K.jsx)(D,{as:`span`,children:e.note})}):(0,K.jsx)(D,{as:`span`,variant:`secondary`,children:n.noFacts})}),(0,K.jsx)(q,{label:n.automated,children:(0,K.jsx)(D,{as:`span`,children:e.automated?n.automatedYes:n.automatedNo})}),(0,K.jsx)(q,{label:n.decidedBy,children:(0,K.jsx)(J,{actor:e.actor,words:r,approvedBy:i})}),(0,K.jsx)(q,{label:n.decidedAt,children:(0,K.jsx)(`time`,{dateTime:e.at,children:(0,K.jsx)(D,{as:`span`,children:a})})}),n.redress&&n.redressLabel&&(0,K.jsx)(q,{label:n.redressLabel,children:(0,K.jsx)(D,{as:`span`,children:n.redress})})]})]})}function X({events:e,locale:t,now:n,labels:r,words:i,defaultOpen:a=!1}){let[o,s]=(0,W.useState)(a),c=[...e].sort((e,t)=>t.at.localeCompare(e.at));return(0,K.jsxs)(P.Root,{open:o,onOpenChange:s,children:[(0,K.jsx)(P.DefaultTrigger,{children:r.title(e.length)}),(0,K.jsx)(P.DefaultPanel,{children:c.length===0?(0,K.jsx)(D,{variant:`secondary`,children:r.empty}):(0,K.jsx)(`ol`,{className:`m-0 grid list-none gap-3 p-0`,"data-testid":`comment-history`,children:c.map(e=>{let r=R(e.at,t,n);return(0,K.jsxs)(`li`,{className:`grid min-w-0 gap-1`,"data-event-action":e.action,children:[(0,K.jsxs)(`span`,{className:`flex min-w-0 flex-wrap items-center gap-x-2 gap-y-1`,children:[(0,K.jsx)(D,{as:`span`,bold:!0,children:i.action[e.action]}),e.reasonCode&&(0,K.jsxs)(D,{as:`span`,variant:`secondary`,children:[`· `,i.reason[e.reasonCode]]}),(0,K.jsx)(`time`,{dateTime:e.at,title:r.absolute,children:(0,K.jsxs)(D,{as:`span`,variant:`secondary`,size:`sm`,children:[`· `,r.relative]})})]}),(0,K.jsx)(J,{actor:e.actor,words:i,approvedBy:e.approvedBy}),e.note&&(0,K.jsx)(`span`,{dir:`auto`,className:`block min-w-0 whitespace-pre-line wrap-anywhere`,children:(0,K.jsx)(D,{as:`span`,variant:`secondary`,children:e.note})})]},e.id)})})})]})}function Z({reports:e,locale:t,now:n,labels:r,renderActions:i}){if(e.length===0)return null;let o=e.filter(e=>!e.resolvedAt).length,s=z.map(t=>[t,e.filter(e=>e.reason===t).length]).filter(([,e])=>e>0),c=_e(t),l=[...e].sort((e,t)=>Number(!!e.resolvedAt)-Number(!!t.resolvedAt)||t.createdAt.localeCompare(e.createdAt));return(0,K.jsxs)(`section`,{"aria-label":r.title,className:`grid min-w-0 gap-3`,"data-testid":`comment-reports`,children:[(0,K.jsxs)(`div`,{className:`flex min-w-0 flex-wrap items-center gap-2`,children:[(0,K.jsx)(`span`,{className:`flex h-lh items-center text-kumo-danger`,"aria-hidden":!0,children:(0,K.jsx)(Oe,{size:16,weight:`fill`})}),(0,K.jsx)(D,{as:`span`,bold:!0,children:r.summary(o,e.length)}),s.map(([e,t])=>(0,K.jsxs)(a,{variant:`outline`,children:[r.reason[e],` · `,(0,K.jsx)(`span`,{className:`tabular-nums`,children:c.format(t)})]},e))]}),(0,K.jsx)(`ol`,{className:`m-0 grid list-none gap-3 p-0`,children:l.map(e=>(0,K.jsxs)(`li`,{className:`grid min-w-0 gap-2`,"data-report-reason":e.reason,children:[(0,K.jsxs)(`div`,{className:`flex min-w-0 flex-wrap items-center justify-between gap-2`,children:[(0,K.jsxs)(`span`,{className:`flex min-w-0 flex-wrap items-center gap-2`,children:[(0,K.jsx)(a,{variant:e.reason===`illegal-content`?`error`:`warning`,children:r.reason[e.reason]}),(0,K.jsx)(`span`,{className:`inline-flex`,"data-report-state":e.resolvedAt?`resolved`:`open`,children:(0,K.jsx)(a,{variant:e.resolvedAt?`neutral`:`warning`,appearance:`dot`,children:e.resolvedAt?r.resolved:r.open})}),(0,K.jsx)(_,{at:e.createdAt,locale:t,...n?{now:n}:{}})]}),!e.resolvedAt&&i&&(0,K.jsx)(`span`,{className:`flex items-center gap-2`,children:i(e)})]}),e.details?(0,K.jsx)(ye,{variant:`recessed`,label:r.details,children:(0,K.jsx)(`span`,{dir:`auto`,className:`block min-w-0 whitespace-pre-line wrap-anywhere`,"data-report-details":!0,children:(0,K.jsx)(D,{as:`span`,children:e.details})})}):(0,K.jsx)(D,{variant:`secondary`,size:`sm`,children:r.noDetails}),e.resolution&&(0,K.jsx)(D,{variant:`secondary`,size:`sm`,children:e.resolution})]},e.id))})]})}function He({label:e}){return(0,K.jsxs)(`div`,{className:`grid gap-0 divide-y divide-kumo-hairline`,"data-testid":`comment-thread-loading`,children:[(0,K.jsx)(`span`,{role:`status`,className:`sr-only`,children:e}),[0,1,2].map(e=>(0,K.jsxs)(`div`,{"aria-hidden":!0,className:t(`grid gap-2 px-4 py-3 sm:px-5`,e===1&&`ms-6 sm:ms-10`),children:[(0,K.jsx)(O,{minWidth:20,maxWidth:35}),(0,K.jsx)(O,{minWidth:60,maxWidth:95}),(0,K.jsx)(O,{minWidth:40,maxWidth:70})]},e))]})}function Ue({comments:e,words:n,labels:r,locale:i,now:a,collapseAfter:o=3,renderActions:s,renderDetails:c,renderReply:l,selection:u,loading:d,empty:f,error:p,className:m}){let h=(0,W.useMemo)(()=>L(e),[e]),g=(0,W.useMemo)(()=>new Map(e.map(e=>[e.id,e])),[e]),[_,v]=(0,W.useState)(()=>new Set),[y,x]=(0,W.useState)(null),ee=F(),S=(0,W.useRef)(null);(0,W.useEffect)(()=>()=>{S.current&&clearTimeout(S.current)},[]);let te=(0,W.useCallback)(e=>{let t=g.get(e)?.parentId??e,n=h.find(e=>e.id===t)?.replies.findIndex(t=>t.id===e)??-1,r=()=>{let t=document.getElementById(B(e));t&&(t.scrollIntoView?.({behavior:ee?`auto`:`smooth`,block:`center`}),t.focus({preventScroll:!0}),x(e),S.current&&clearTimeout(S.current),S.current=setTimeout(()=>x(null),2e3))};n>=o&&!_.has(t)?(v(e=>new Set(e).add(t)),requestAnimationFrame(r)):r()},[g,h,o,_,ee]);if(p)return(0,K.jsx)(K.Fragment,{children:p});if(d)return(0,K.jsx)(He,{label:r.loading});if(h.length===0)return(0,K.jsx)(K.Fragment,{children:f});let C=(e,t)=>{let r=t&&e.inReplyToId&&e.inReplyToId!==e.parentId?g.get(e.inReplyToId):void 0;return(0,K.jsx)(b,{comment:e,words:n,locale:i,showEntry:!1,highlighted:y===e.id,onJump:te,...a?{now:a}:{},...r?{inReplyTo:{id:r.id,name:V(r.author)??n.author.anonymous}}:{},...u?{selection:{checked:u.selected.has(e.id),onCheckedChange:t=>u.onToggle(e.id,t),label:u.label(e)}}:{},actions:s?.(e),children:c?.(e)})};return(0,K.jsx)(`ol`,{"aria-label":r.thread,className:t(`m-0 grid list-none divide-y divide-kumo-hairline p-0`,m),"data-testid":`comment-thread`,children:h.map(e=>(0,K.jsx)(Q,{node:e,row:C,words:n,labels:r,collapseAfter:o,expanded:_.has(e.id),onExpandedChange:t=>v(n=>{let r=new Set(n);return t?r.add(e.id):r.delete(e.id),r}),renderReply:l},e.id))})}function Q({node:e,row:t,words:n,labels:r,collapseAfter:i,expanded:a,onExpandedChange:o,renderReply:c}){let l=e.comment?c?.(e.comment):void 0,u=(0,W.useId)(),d=Math.max(0,e.replies.length-i),f=a?e.replies:e.replies.slice(0,i),p=e.comment?V(e.comment.author)??n.author.anonymous:n.removed;return(0,K.jsxs)(`li`,{className:`min-w-0`,"data-thread-root":e.id,children:[e.comment?t(e.comment,!1):(0,K.jsx)(`div`,{id:B(e.id),tabIndex:-1,className:`px-4 py-3 focus:outline-none sm:px-5`,"data-comment-placeholder":!0,children:(0,K.jsx)(D,{variant:`secondary`,children:n.removed})}),e.replies.length>0&&(0,K.jsxs)(`div`,{className:`ms-4 border-kumo-hairline border-s pb-2 sm:ms-8`,children:[(0,K.jsx)(`ol`,{id:u,"aria-label":r.replies(p),className:`m-0 grid list-none divide-y divide-kumo-hairline p-0`,children:f.map(e=>(0,K.jsxs)(`li`,{className:`min-w-0`,children:[t(e,!0),(0,K.jsx)($,{children:c?.(e)})]},e.id))}),d>0&&(0,K.jsx)(`div`,{className:`px-4 pt-1 sm:px-5`,children:(0,K.jsx)(s,{variant:`ghost`,size:`sm`,"aria-expanded":a,"aria-controls":u,icon:a?(0,K.jsx)(E,{size:16}):(0,K.jsx)(Ee,{size:16}),onClick:()=>o(!a),children:a?r.showFewer:r.showMore(d)})})]}),(0,K.jsx)($,{children:l})]})}function $({children:e}){return e==null||e===!1?null:(0,K.jsx)(`div`,{className:`px-4 pb-4 sm:px-5`,children:e})}var We={open:`success`,closed:`neutral`,hidden:`warning`,off:`neutral`};function Ge({siteId:e,comment:t,badge:n,onDone:r}){let{t:i,locale:a,words:o}=w(),l=pe(),u=c(),f=de().data,p=f?.actor.name??f?.actor.id??``,[m,g]=(0,W.useState)(``),[_,v]=(0,W.useState)(!1),y=U(m),b=d({mutationFn:()=>N.comments.reply(e,t.id,m.trim()),onSuccess:async()=>{l.success(i(`comments.reply.published`),i(`comments.reply.publishedDescription`)),g(``),r(),await u.invalidateQueries({queryKey:Ae(e)})}}),x=[...m].length;return(0,K.jsxs)(`form`,{className:`grid gap-4`,"data-testid":`reply-form`,onSubmit:e=>{e.preventDefault(),v(!0),y||b.mutate()},children:[(0,K.jsx)(j,{label:i(`comments.reply.title`,{name:p}),description:(0,K.jsxs)(`span`,{className:`flex items-start justify-between gap-3`,children:[(0,K.jsx)(`span`,{className:`min-w-0`,children:i(`comments.reply.hint`)}),(0,K.jsx)(`span`,{className:x>5e3?`shrink-0 text-kumo-danger tabular-nums`:`shrink-0 tabular-nums`,"data-testid":`reply-count`,children:i(`comments.reply.counter`,{count:x,max:ve(a,je)})})]}),value:m,onValueChange:g,error:_&&y?i(y===`short`?`comments.reply.tooShort`:`comments.reply.tooLong`):void 0,autoResize:!0,minRows:3,maxRows:12,className:`w-full`,"data-testid":`reply-text`}),(0,K.jsxs)(ye,{variant:`recessed`,label:i(`comments.reply.preview`),children:[(0,K.jsx)(D,{as:`span`,variant:`secondary`,size:`sm`,children:i(`comments.reply.preview`)}),(0,K.jsxs)(`div`,{className:`grid gap-2`,"data-testid":`reply-preview`,children:[(0,K.jsx)(T,{author:{kind:`staff`,personId:``,name:p,badge:n},words:o}),m.trim()?(0,K.jsx)(h,{text:m,newTabLabel:o.newTab}):(0,K.jsx)(D,{variant:`secondary`,children:i(`comments.reply.previewEmpty`)})]})]}),(0,K.jsx)(Te,{error:b.error,title:i(`comments.reply.failed`),size:`sm`}),(0,K.jsxs)(`div`,{className:`flex flex-wrap items-center justify-between gap-3`,children:[(0,K.jsx)(D,{variant:`secondary`,size:`sm`,as:`span`,children:i(`comments.reply.badgeLine`,{badge:o.author[n]})}),(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(s,{variant:`ghost`,onClick:r,disabled:b.isPending,children:i(`comments.reply.cancel`)}),(0,K.jsx)(s,{type:`submit`,variant:`primary`,icon:(0,K.jsx)(oe,{icon:Ve}),loading:b.isPending,"data-testid":`reply-publish`,children:i(`comments.reply.publish`)})]})]})]})}function Ke({report:e,onOpenChange:t,busy:n,error:r,onConfirm:i}){let{t:a}=w(),[o,s]=(0,W.useState)(``),[c,l]=(0,W.useState)(!1);(0,W.useEffect)(()=>{e&&(s(``),l(!1))},[e]);let u=o.trim()===``;return(0,K.jsx)(I.Root,{open:e!==void 0,onOpenChange:t,dismissDisabled:n,children:(0,K.jsxs)(I.Content,{size:`sm`,closeLabel:a(`common.close`),children:[(0,K.jsx)(I.Title,{children:a(`comments.reports.resolveTitle`)}),(0,K.jsx)(I.Description,{children:a(`comments.reports.resolveDescription`)}),(0,K.jsx)(I.Body,{children:(0,K.jsxs)(`div`,{className:`grid gap-4`,"data-testid":`resolve-dialog`,children:[(0,K.jsx)(j,{label:a(`comments.reports.resolution`),description:a(`comments.reports.resolutionHint`),value:o,onValueChange:s,error:c&&u?a(`comments.reports.resolutionRequired`):void 0,maxLength:500,autoResize:!0,minRows:2,maxRows:5,className:`w-full`}),r&&(0,K.jsx)(ue,{variant:`error`,size:`sm`,icon:(0,K.jsx)(k,{weight:`fill`}),title:a(`comments.reports.failed`),description:r})]})}),(0,K.jsx)(I.Actions,{dismissLabel:a(`common.cancel`),children:(0,K.jsx)(I.Actions.Primary,{loading:n,onClick:()=>{l(!0),u||i(o.trim())},children:a(`comments.reports.resolveConfirm`)})})]})})}function qe({siteId:e,comment:t,focused:n,canResolve:r,onResolve:i}){let{t:a,locale:o}=w(),c=t.status===`hidden`||t.status===`spam`||t.status===`deleted`,u=(t.reports?.count??0)>0,[d,f]=(0,W.useState)(!1),p=n||u||c||d,m=l({queryKey:[...Ae(e),`comment`,t.id],queryFn:()=>N.comments.get(e,t.id),enabled:p}),h=ne(a);if(!p)return(0,K.jsx)(`span`,{children:(0,K.jsx)(s,{variant:`ghost`,size:`sm`,icon:(0,K.jsx)(we,{}),onClick:()=>f(!0),"data-testid":`comment-history-open`,children:a(`comments.history.show`)})});if(m.isPending)return(0,K.jsxs)(`div`,{className:`grid gap-2`,role:`status`,children:[(0,K.jsx)(`span`,{className:`sr-only`,children:a(`common.loading`)}),(0,K.jsx)(O,{minWidth:30,maxWidth:50})]});if(!m.data)return(0,K.jsx)(Te,{error:m.error,onRetry:()=>void m.refetch()});let{history:_,reports:y}=m.data;return(0,K.jsxs)(`div`,{className:`grid gap-3`,"data-testid":`comment-details`,children:[c&&t.moderation&&(0,K.jsx)(Y,{moderation:t.moderation,locale:o,labels:v(a),words:h}),y.length>0&&(0,K.jsx)(Z,{reports:y.map(e=>({id:e.id,reason:e.reason,createdAt:e.createdAt,...e.details?{details:e.details}:{},...e.resolvedAt?{resolvedAt:e.resolvedAt}:{},...e.resolution?{resolution:e.resolution}:{}})),locale:o,labels:S(a),renderActions:e=>e.resolvedAt?null:(0,K.jsx)(s,{variant:`secondary`,size:`sm`,disabled:!r,onClick:()=>{let t=y.find(t=>t.id===e.id);t&&i(t)},children:a(`comments.reports.resolve`)})}),(0,K.jsx)(X,{events:_.map(g),locale:o,labels:C(a),words:h,defaultOpen:n||d})]})}function Je(){let{t:e,locale:t,words:n}=w(),{siteId:r,nodeId:i}=u({from:`/sites/$siteId/comments/$nodeId`}),h=m({from:`/sites/$siteId/comments/$nodeId`}),g=f(),_=pe(),v=c(),b=fe(),S=!de().isPending,C=A(`comments.read`),ne=A(`comments.moderateAny`),T=A(`comments.moderate`),oe=A(`comments.reply`),E=l({queryKey:[`entry`,r,i],queryFn:()=>N.entries.get(r,i),enabled:S&&C.allowed,retry:!1}),k=l({queryKey:Me(r,i),queryFn:()=>N.comments.thread(r,i),enabled:S&&C.allowed,retry:(e,t)=>!M(t)&&e<1}),j=p({queryKey:[...Ae(r),`list`,`thread`,i],queryFn:({pageParam:e})=>N.comments.list(r,{node:i,order:`oldest`,limit:50,...e?{cursor:e}:{}}),initialPageParam:void 0,getNextPageParam:e=>e.nextCursor,enabled:S&&C.allowed,retry:(e,t)=>!M(t)&&e<1}),P=j.data?.pages.flatMap(e=>e.items)??[],F=new Map(P.map(e=>[e.id,e])),[I,_e]=(0,W.useState)(h.reply),[L,R]=(0,W.useState)({open:!1,action:`hide`,ids:[]}),[z,B]=(0,W.useState)(),[V,H]=(0,W.useState)(),[ye,we]=(0,W.useState)(!1),[Ee,Oe]=(0,W.useState)(!1),je=E.data?xe(E.data,b):!1,U=ne.allowed||je?void 0:ne.reason,Be=oe.allowed||je?void 0:oe.reason,G=T.allowed&&!U,Ve=E.data?.title??``,q=x(r,()=>R(e=>({...e,open:!1}))),J=te(r),Y=Pe(r,i),X=d({mutationFn:e=>N.comments.resolveReport(r,e.report.id,e.resolution),onSuccess:async()=>{H(void 0),_.success(e(`comments.reports.resolvedToast`)),await v.invalidateQueries({queryKey:Ae(r)})}}),Z=h.comment??h.reply;(0,W.useEffect)(()=>{if(!Z||!F.has(Z))return;let e=document.getElementById(`comment-${Z}`);e?.scrollIntoView?.({block:`center`}),e?.focus({preventScroll:!0})},[Z,F.size]);let He=(t,n)=>{n===`reply`?_e(t.id):n===`delete`?(J.reset(),B(t)):n===`resolve`?g({to:`/sites/$siteId/comments/$nodeId`,params:{siteId:r,nodeId:i},search:{comment:t.id}}):n===`commenter`?N.comments.findCommenter(r,{commentId:t.id}).then(async({commenter:t})=>{t?await g({to:`/sites/$siteId/commenters/$commenterId`,params:{siteId:r,commenterId:t.id}}):_.error(e(`comments.commenter.title`),e(`comments.commenter.noEmail`))}).catch(t=>_.error(e(`comments.commenter.title`),t.message)):n===`hide`||n===`spam`?(q.reset(),R({open:!0,action:n,ids:[t.id]})):n!==`openThread`&&q.mutate({ids:[t.id],action:n,revs:ke(P,[t.id])})},Q=k.data?.thread,$=k.data?.counts,Je=M(k.error)&&M(j.error),Ye=M(k.error)&&!Je,Xe=Q?.mode??`default`,Ze=e=>{Q&&e!==Xe&&(e===`hidden`?Oe(!0):Y.mutate({rev:Q.rev,mode:e}))},Qe=(0,K.jsxs)(be,{title:e(`comments.title`),icon:(0,K.jsx)(De,{size:16}),description:e(`comments.thread.description`),actions:$?(0,K.jsx)(a,{variant:`secondary`,children:ve(t,$.approved)}):void 0,flush:!0,children:[(0,K.jsx)(Ue,{comments:P.map(e=>ie(r,e)),words:n,labels:y(e,Ve),locale:t,loading:j.isPending,error:j.error&&!M(j.error)?(0,K.jsx)(`div`,{className:`px-5 py-4`,children:(0,K.jsx)(Te,{error:j.error,onRetry:()=>void j.refetch()})}):void 0,empty:(0,K.jsx)(Se,{icon:(0,K.jsx)(De,{size:32,className:`text-kumo-inactive`}),title:e(`comments.thread.empty`),description:e(`comments.thread.emptyDescription`)}),renderActions:e=>{let t=F.get(e.id);return t?(0,K.jsx)(re,{comment:t,onAction:e=>He(t,e),hide:[`openThread`],notOwnReason:U??Be}):null},renderDetails:e=>(0,K.jsx)(qe,{siteId:r,comment:e,focused:Z===e.id,canResolve:G,onResolve:e=>{X.reset(),H(e)}}),renderReply:t=>{let n=F.get(t.id);return!n||I!==t.id?null:n.status===`approved`?(0,K.jsx)(Ge,{siteId:r,comment:n,badge:je?`author`:`team`,onDone:()=>_e(void 0)}):(0,K.jsx)(D,{variant:`secondary`,size:`sm`,children:e(`comments.reply.notApproved`)})}}),j.hasNextPage&&(0,K.jsx)(`div`,{className:`border-kumo-hairline border-t px-5 py-3`,children:(0,K.jsx)(s,{variant:`secondary`,size:`sm`,loading:j.isFetchingNextPage,onClick:()=>void j.fetchNextPage(),children:e(`comments.thread.loadMore`)})})]}),$e=(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(be,{title:e(`comments.thread.cardTitle`),icon:(0,K.jsx)(ce,{size:16}),children:Q?(0,K.jsxs)(`div`,{className:`grid gap-4`,"data-testid":`thread-controls`,children:[(0,K.jsxs)(`div`,{className:`grid gap-1.5`,children:[(0,K.jsx)(D,{bold:!0,as:`span`,children:e(`comments.thread.mode`)}),(0,K.jsx)(`span`,{className:`inline-flex`,title:U??T.reason,children:(0,K.jsx)(me,{variant:`segmented`,size:`sm`,value:Xe,onValueChange:e=>G&&Ze(Ne(e)),tabs:[`default`,`open`,`closed`,`hidden`].map(t=>({value:t,label:e(`comments.thread.modes.${t}`),...G?{}:{disabled:!0}}))})}),(0,K.jsx)(D,{variant:`secondary`,size:`sm`,children:e(`comments.thread.modeHints.${Xe}`)})]}),(0,K.jsxs)(`dl`,{className:`-mb-3 divide-y divide-kumo-hairline border-kumo-hairline border-t`,children:[(0,K.jsx)(ge,{label:e(`comments.thread.readersSee`),children:(0,K.jsx)(a,{variant:We[Q.state],appearance:`dot`,children:e(`comments.thread.state.${Q.state}`)})}),(0,K.jsx)(ge,{label:e(`comments.thread.closeOn`),hint:Ie(e,Q,t),children:(0,K.jsx)(s,{variant:`ghost`,size:`sm`,icon:(0,K.jsx)(ce,{}),disabled:!G,title:U??T.reason,onClick:()=>{Y.reset(),we(!0)},"data-testid":`thread-close-change`,children:e(`comments.thread.changeClose`)})})]})]}):(0,K.jsxs)(`div`,{className:`grid gap-2`,role:`status`,children:[(0,K.jsx)(`span`,{className:`sr-only`,children:e(`common.loading`)}),(0,K.jsx)(O,{minWidth:50,maxWidth:80}),(0,K.jsx)(O,{minWidth:30,maxWidth:60})]})}),(0,K.jsx)(Re,{rows:[{label:e(`comments.thread.entryId`),value:(0,K.jsx)(D,{variant:`mono-secondary`,children:i})},...E.data?[{label:e(`comments.thread.path`),value:(0,K.jsx)(D,{variant:`mono-secondary`,children:`/${E.data.collection}/${E.data.slug}`})}]:[],...$?[`approved`,`pending`,`reported`,`hidden`,`spam`].map(n=>({label:e(`comments.thread.${n}Count`),value:(0,K.jsx)(D,{as:`span`,children:ve(t,$[n])})})):[]]})]});return(0,K.jsxs)(Ce,{crumbs:(0,K.jsx)(he,{siteId:r,trail:[{label:e(`comments.title`),href:`/sites/${r}/comments`},{label:Ve||i}],copy:i}),title:Ve||void 0,loading:E.isPending&&C.allowed,description:Q?(0,K.jsxs)(`span`,{className:`flex flex-wrap items-center gap-2`,children:[(0,K.jsx)(a,{variant:We[Q.state],appearance:`dot`,children:e(`comments.thread.state.${Q.state}`)}),(0,K.jsx)(`span`,{children:Ie(e,Q,t)})]}):void 0,actions:E.data?(0,K.jsx)(o,{href:`/sites/${r}/articles/${i}`,variant:`secondary`,icon:ae(se),children:e(`comments.thread.openArticle`)}):void 0,children:[C.allowed?Je?(0,K.jsx)(ue,{variant:`secondary`,icon:(0,K.jsx)(le,{weight:`fill`}),title:e(`comments.unavailable.title`),description:e(`comments.unavailable.description`)}):Ye?(0,K.jsx)(ue,{variant:`secondary`,icon:(0,K.jsx)(le,{weight:`fill`}),title:e(`comments.thread.notFoundTitle`),description:e(`comments.thread.notFoundDescription`)}):(0,K.jsx)(ze,{main:Qe,aside:$e}):(0,K.jsx)(ue,{variant:`secondary`,icon:(0,K.jsx)(le,{weight:`fill`}),title:e(`comments.noAccessTitle`),description:C.reason}),(0,K.jsx)(ee,{open:L.open,onOpenChange:e=>R(t=>({...t,open:e})),action:L.action,count:L.ids.length,busy:q.isPending,error:q.error?.message,onConfirm:e=>q.mutate({ids:L.ids,action:L.action,revs:ke(P,L.ids),...e})}),(0,K.jsx)(ee,{open:z!==void 0,onOpenChange:e=>!e&&B(void 0),action:`delete`,count:1,busy:J.isPending,error:J.error?.message,onConfirm:e=>{z&&J.mutate({comment:z,...e},{onSettled:()=>B(void 0)})}}),(0,K.jsx)(Ke,{report:V,onOpenChange:e=>!e&&H(void 0),busy:X.isPending,error:X.error?.message,onConfirm:e=>V&&X.mutate({report:V,resolution:e})}),(0,K.jsx)(Le,{open:ye,onOpenChange:we,current:Q?.closesAt??null,busy:Y.isPending,error:Y.error?.message,onSave:e=>Q&&Y.mutate({rev:Q.rev,mode:Q.mode,closesAt:e},{onSuccess:()=>we(!1)})}),(0,K.jsx)(Fe,{open:Ee,onOpenChange:Oe,busy:Y.isPending,onConfirm:()=>Q&&Y.mutate({rev:Q.rev,mode:`hidden`},{onSuccess:()=>Oe(!1)})})]})}export{Je as CommentThreadPage};
|
|
2
|
-
//# sourceMappingURL=CommentThreadPage-
|
|
1
|
+
import{r as e}from"./rolldown-runtime-hePW80VL.js";import{n as t,t as n}from"./IconBase.es-BZDpYMnj.js";import{i as r,r as i}from"./react-CDCuUAOg.js";import{t as a}from"./badge-dq8bx752b9dp7dst-D1xrG37q.js";import{n as o,t as s}from"./button-pa1bq9b85hawg41a-BcGpLLER.js";import{S as c,_ as l,d as u,h as d,l as f,m as p,u as m}from"./tanstack-BiJ_7SEB.js";import{_ as h,a as g,b as _,d as v,f as y,g as b,h as x,i as ee,l as S,m as te,o as C,p as w,s as ne,t as re,u as ie,v as T}from"./Comments-sU22Wp1j.js";import{r as ae,t as oe}from"./DirectionalIcon-BKKMj3KT.js";import{t as se}from"./ArrowSquareOut.es-BWeH9CSw.js";import{r as ce}from"./calendar-locale-D4aJYygH.js";import{t as E}from"./CaretUp.es-DBg3pdpL.js";import{m as le,n as D,t as O}from"./skeleton-line-m9dyh126t9k07jvg-CHsT8Hs3.js";import{n as k,t as ue}from"./banner-msnmqm7of2lck01x-DRzQHuca.js";import{i as A,o as de,u as fe}from"./useMe-Cx8D2_vf.js";import{t as pe}from"./Toast-MSfrCjAr.js";import{t as j}from"./input-h5ox92gf13ge04hp-jfy1uD8s.js";import{c as M,t as N}from"./api-K4ZsoxSR.js";import{t as P}from"./collapsible-l8g94on4w7qfosmn-B4g2i1uh.js";import{t as me}from"./tabs-gf57qqf1wcclaejq-Cay-6qhK.js";import{n as he}from"./Crumbs-DOM6tT0l.js";import{n as F}from"./useChartPalette-DXG2lo2x.js";import{t as ge}from"./Settings-PNFH1Q2d.js";import{t as I}from"./layer-dialog-j5ywmzs46ccg6oqy-Dg9cqt2A.js";import{c as _e}from"./intl-C22KAx_l.js";import{r as ve}from"./format-DGE2c-4V.js";import{a as L,l as R,n as z,o as B,s as V}from"./comment-model-CArtcrfg.js";import{t as H}from"./AuditBadges-BEqBnWoz.js";import{t as ye}from"./InsetPanel-CHSg953_.js";import{t as be}from"./SectionCard-253RWE03.js";import{p as xe}from"./roles-B7USahqW.js";import{C as Se,E as Ce,at as we,ct as Te,et as Ee,it as De,x as Oe}from"./index-DWzjnrnl.js";import{b as ke,f as Ae,n as je,u as Me,v as U,x as Ne}from"./comments-B1PIozwq.js";import{i as Pe,n as Fe,r as Ie,t as Le}from"./CommentThreadControls-CXNj8JY7.js";import{n as Re,r as ze}from"./EditorLayout-ieqpWD3O.js";var W=e(r(),1),Be=new Map([[`bold`,W.createElement(W.Fragment,null,W.createElement(`path`,{d:`M233.86,110.48,65.8,14.58A20,20,0,0,0,37.15,38.64L67.33,128,37.15,217.36A20,20,0,0,0,56,244a20.1,20.1,0,0,0,9.81-2.58l.09-.06,168-96.07a20,20,0,0,0,0-34.81ZM63.19,215.26,88.61,140H144a12,12,0,0,0,0-24H88.61L63.18,40.72l152.76,87.17Z`}))],[`fill`,W.createElement(W.Fragment,null,W.createElement(`path`,{d:`M240,127.89a16,16,0,0,1-8.18,14L63.9,237.9A16.15,16.15,0,0,1,56,240a16,16,0,0,1-15-21.33l27-79.95A4,4,0,0,1,71.72,136H144a8,8,0,0,0,8-8.53,8.19,8.19,0,0,0-8.26-7.47h-72a4,4,0,0,1-3.79-2.72l-27-79.94A16,16,0,0,1,63.84,18.07l168,95.89A16,16,0,0,1,240,127.89Z`}))],[`regular`,W.createElement(W.Fragment,null,W.createElement(`path`,{d:`M231.87,114l-168-95.89A16,16,0,0,0,40.92,37.34L71.55,128,40.92,218.67A16,16,0,0,0,56,240a16.15,16.15,0,0,0,7.93-2.1l167.92-96.05a16,16,0,0,0,.05-27.89ZM56,224a.56.56,0,0,0,0-.12L85.74,136H144a8,8,0,0,0,0-16H85.74L56.06,32.16A.46.46,0,0,0,56,32l168,95.83Z`}))]]),G=W.forwardRef((e,t)=>W.createElement(n,{ref:t,...e,weights:Be}));G.displayName=`PaperPlaneRightIcon`;var Ve=G,K=i();function q({label:e,children:t}){return(0,K.jsxs)(`div`,{className:`grid min-w-0 gap-0.5 @md:grid-cols-[minmax(0,12rem)_minmax(0,1fr)] @md:gap-4`,children:[(0,K.jsx)(`dt`,{children:(0,K.jsx)(D,{as:`span`,variant:`secondary`,size:`sm`,children:e})}),(0,K.jsx)(`dd`,{className:`m-0 min-w-0`,children:t})]})}function J({actor:e,words:t,approvedBy:n}){let r=e.name??e.id;return(0,K.jsxs)(`span`,{className:`flex min-w-0 flex-wrap items-center gap-x-2 gap-y-1`,children:[(0,K.jsx)(H,{kind:e.kind,label:t.actorKind[e.kind]}),(0,K.jsx)(`span`,{dir:`auto`,className:`min-w-0 wrap-anywhere`,children:(0,K.jsx)(D,{as:`span`,children:r})}),n&&(0,K.jsx)(D,{as:`span`,variant:`secondary`,size:`sm`,children:t.approvedFor(n,r)})]})}function Y({moderation:e,locale:t,labels:n,words:r,approvedBy:i}){let a=R(e.at,t).absolute,o=r.effect[e.action];return(0,K.jsxs)(ye,{label:n.title,className:`@container`,children:[(0,K.jsx)(D,{as:`span`,bold:!0,children:n.title}),(0,K.jsxs)(`dl`,{className:`m-0 grid gap-3`,"data-statement-of-reasons":e.action,children:[(0,K.jsx)(q,{label:n.decision,children:(0,K.jsxs)(`span`,{className:`grid gap-0.5`,children:[(0,K.jsx)(D,{as:`span`,children:r.action[e.action]}),o&&(0,K.jsx)(D,{as:`span`,variant:`secondary`,size:`sm`,children:o})]})}),(0,K.jsx)(q,{label:n.grounds,children:(0,K.jsx)(D,{as:`span`,variant:e.reasonCode?`body`:`secondary`,children:e.reasonCode?r.reason[e.reasonCode]:n.noGrounds})}),(0,K.jsx)(q,{label:n.facts,children:e.note?(0,K.jsx)(`span`,{dir:`auto`,className:`block min-w-0 whitespace-pre-line wrap-anywhere`,children:(0,K.jsx)(D,{as:`span`,children:e.note})}):(0,K.jsx)(D,{as:`span`,variant:`secondary`,children:n.noFacts})}),(0,K.jsx)(q,{label:n.automated,children:(0,K.jsx)(D,{as:`span`,children:e.automated?n.automatedYes:n.automatedNo})}),(0,K.jsx)(q,{label:n.decidedBy,children:(0,K.jsx)(J,{actor:e.actor,words:r,approvedBy:i})}),(0,K.jsx)(q,{label:n.decidedAt,children:(0,K.jsx)(`time`,{dateTime:e.at,children:(0,K.jsx)(D,{as:`span`,children:a})})}),n.redress&&n.redressLabel&&(0,K.jsx)(q,{label:n.redressLabel,children:(0,K.jsx)(D,{as:`span`,children:n.redress})})]})]})}function X({events:e,locale:t,now:n,labels:r,words:i,defaultOpen:a=!1}){let[o,s]=(0,W.useState)(a),c=[...e].sort((e,t)=>t.at.localeCompare(e.at));return(0,K.jsxs)(P.Root,{open:o,onOpenChange:s,children:[(0,K.jsx)(P.DefaultTrigger,{children:r.title(e.length)}),(0,K.jsx)(P.DefaultPanel,{children:c.length===0?(0,K.jsx)(D,{variant:`secondary`,children:r.empty}):(0,K.jsx)(`ol`,{className:`m-0 grid list-none gap-3 p-0`,"data-testid":`comment-history`,children:c.map(e=>{let r=R(e.at,t,n);return(0,K.jsxs)(`li`,{className:`grid min-w-0 gap-1`,"data-event-action":e.action,children:[(0,K.jsxs)(`span`,{className:`flex min-w-0 flex-wrap items-center gap-x-2 gap-y-1`,children:[(0,K.jsx)(D,{as:`span`,bold:!0,children:i.action[e.action]}),e.reasonCode&&(0,K.jsxs)(D,{as:`span`,variant:`secondary`,children:[`· `,i.reason[e.reasonCode]]}),(0,K.jsx)(`time`,{dateTime:e.at,title:r.absolute,children:(0,K.jsxs)(D,{as:`span`,variant:`secondary`,size:`sm`,children:[`· `,r.relative]})})]}),(0,K.jsx)(J,{actor:e.actor,words:i,approvedBy:e.approvedBy}),e.note&&(0,K.jsx)(`span`,{dir:`auto`,className:`block min-w-0 whitespace-pre-line wrap-anywhere`,children:(0,K.jsx)(D,{as:`span`,variant:`secondary`,children:e.note})})]},e.id)})})})]})}function Z({reports:e,locale:t,now:n,labels:r,renderActions:i}){if(e.length===0)return null;let o=e.filter(e=>!e.resolvedAt).length,s=z.map(t=>[t,e.filter(e=>e.reason===t).length]).filter(([,e])=>e>0),c=_e(t),l=[...e].sort((e,t)=>Number(!!e.resolvedAt)-Number(!!t.resolvedAt)||t.createdAt.localeCompare(e.createdAt));return(0,K.jsxs)(`section`,{"aria-label":r.title,className:`grid min-w-0 gap-3`,"data-testid":`comment-reports`,children:[(0,K.jsxs)(`div`,{className:`flex min-w-0 flex-wrap items-center gap-2`,children:[(0,K.jsx)(`span`,{className:`flex h-lh items-center text-kumo-danger`,"aria-hidden":!0,children:(0,K.jsx)(Ee,{size:16,weight:`fill`})}),(0,K.jsx)(D,{as:`span`,bold:!0,children:r.summary(o,e.length)}),s.map(([e,t])=>(0,K.jsxs)(a,{variant:`outline`,children:[r.reason[e],` · `,(0,K.jsx)(`span`,{className:`tabular-nums`,children:c.format(t)})]},e))]}),(0,K.jsx)(`ol`,{className:`m-0 grid list-none gap-3 p-0`,children:l.map(e=>(0,K.jsxs)(`li`,{className:`grid min-w-0 gap-2`,"data-report-reason":e.reason,children:[(0,K.jsxs)(`div`,{className:`flex min-w-0 flex-wrap items-center justify-between gap-2`,children:[(0,K.jsxs)(`span`,{className:`flex min-w-0 flex-wrap items-center gap-2`,children:[(0,K.jsx)(a,{variant:e.reason===`illegal-content`?`error`:`warning`,children:r.reason[e.reason]}),(0,K.jsx)(`span`,{className:`inline-flex`,"data-report-state":e.resolvedAt?`resolved`:`open`,children:(0,K.jsx)(a,{variant:e.resolvedAt?`neutral`:`warning`,appearance:`dot`,children:e.resolvedAt?r.resolved:r.open})}),(0,K.jsx)(_,{at:e.createdAt,locale:t,...n?{now:n}:{}})]}),!e.resolvedAt&&i&&(0,K.jsx)(`span`,{className:`flex items-center gap-2`,children:i(e)})]}),e.details?(0,K.jsx)(ye,{variant:`recessed`,label:r.details,children:(0,K.jsx)(`span`,{dir:`auto`,className:`block min-w-0 whitespace-pre-line wrap-anywhere`,"data-report-details":!0,children:(0,K.jsx)(D,{as:`span`,children:e.details})})}):(0,K.jsx)(D,{variant:`secondary`,size:`sm`,children:r.noDetails}),e.resolution&&(0,K.jsx)(D,{variant:`secondary`,size:`sm`,children:e.resolution})]},e.id))})]})}function He({label:e}){return(0,K.jsxs)(`div`,{className:`grid gap-0 divide-y divide-kumo-hairline`,"data-testid":`comment-thread-loading`,children:[(0,K.jsx)(`span`,{role:`status`,className:`sr-only`,children:e}),[0,1,2].map(e=>(0,K.jsxs)(`div`,{"aria-hidden":!0,className:t(`grid gap-2 px-4 py-3 sm:px-5`,e===1&&`ms-6 sm:ms-10`),children:[(0,K.jsx)(O,{minWidth:20,maxWidth:35}),(0,K.jsx)(O,{minWidth:60,maxWidth:95}),(0,K.jsx)(O,{minWidth:40,maxWidth:70})]},e))]})}function Ue({comments:e,words:n,labels:r,locale:i,now:a,collapseAfter:o=3,renderActions:s,renderDetails:c,renderReply:l,selection:u,loading:d,empty:f,error:p,className:m}){let h=(0,W.useMemo)(()=>L(e),[e]),g=(0,W.useMemo)(()=>new Map(e.map(e=>[e.id,e])),[e]),[_,v]=(0,W.useState)(()=>new Set),[y,x]=(0,W.useState)(null),ee=F(),S=(0,W.useRef)(null);(0,W.useEffect)(()=>()=>{S.current&&clearTimeout(S.current)},[]);let te=(0,W.useCallback)(e=>{let t=g.get(e)?.parentId??e,n=h.find(e=>e.id===t)?.replies.findIndex(t=>t.id===e)??-1,r=()=>{let t=document.getElementById(B(e));t&&(t.scrollIntoView?.({behavior:ee?`auto`:`smooth`,block:`center`}),t.focus({preventScroll:!0}),x(e),S.current&&clearTimeout(S.current),S.current=setTimeout(()=>x(null),2e3))};n>=o&&!_.has(t)?(v(e=>new Set(e).add(t)),requestAnimationFrame(r)):r()},[g,h,o,_,ee]);if(p)return(0,K.jsx)(K.Fragment,{children:p});if(d)return(0,K.jsx)(He,{label:r.loading});if(h.length===0)return(0,K.jsx)(K.Fragment,{children:f});let C=(e,t)=>{let r=t&&e.inReplyToId&&e.inReplyToId!==e.parentId?g.get(e.inReplyToId):void 0;return(0,K.jsx)(b,{comment:e,words:n,locale:i,showEntry:!1,highlighted:y===e.id,onJump:te,...a?{now:a}:{},...r?{inReplyTo:{id:r.id,name:V(r.author)??n.author.anonymous}}:{},...u?{selection:{checked:u.selected.has(e.id),onCheckedChange:t=>u.onToggle(e.id,t),label:u.label(e)}}:{},actions:s?.(e),children:c?.(e)})};return(0,K.jsx)(`ol`,{"aria-label":r.thread,className:t(`m-0 grid list-none divide-y divide-kumo-hairline p-0`,m),"data-testid":`comment-thread`,children:h.map(e=>(0,K.jsx)(Q,{node:e,row:C,words:n,labels:r,collapseAfter:o,expanded:_.has(e.id),onExpandedChange:t=>v(n=>{let r=new Set(n);return t?r.add(e.id):r.delete(e.id),r}),renderReply:l},e.id))})}function Q({node:e,row:t,words:n,labels:r,collapseAfter:i,expanded:a,onExpandedChange:o,renderReply:c}){let l=e.comment?c?.(e.comment):void 0,u=(0,W.useId)(),d=Math.max(0,e.replies.length-i),f=a?e.replies:e.replies.slice(0,i),p=e.comment?V(e.comment.author)??n.author.anonymous:n.removed;return(0,K.jsxs)(`li`,{className:`min-w-0`,"data-thread-root":e.id,children:[e.comment?t(e.comment,!1):(0,K.jsx)(`div`,{id:B(e.id),tabIndex:-1,className:`px-4 py-3 focus:outline-none sm:px-5`,"data-comment-placeholder":!0,children:(0,K.jsx)(D,{variant:`secondary`,children:n.removed})}),e.replies.length>0&&(0,K.jsxs)(`div`,{className:`ms-4 border-kumo-hairline border-s pb-2 sm:ms-8`,children:[(0,K.jsx)(`ol`,{id:u,"aria-label":r.replies(p),className:`m-0 grid list-none divide-y divide-kumo-hairline p-0`,children:f.map(e=>(0,K.jsxs)(`li`,{className:`min-w-0`,children:[t(e,!0),(0,K.jsx)($,{children:c?.(e)})]},e.id))}),d>0&&(0,K.jsx)(`div`,{className:`px-4 pt-1 sm:px-5`,children:(0,K.jsx)(s,{variant:`ghost`,size:`sm`,"aria-expanded":a,"aria-controls":u,icon:a?(0,K.jsx)(E,{size:16}):(0,K.jsx)(Te,{size:16}),onClick:()=>o(!a),children:a?r.showFewer:r.showMore(d)})})]}),(0,K.jsx)($,{children:l})]})}function $({children:e}){return e==null||e===!1?null:(0,K.jsx)(`div`,{className:`px-4 pb-4 sm:px-5`,children:e})}var We={open:`success`,closed:`neutral`,hidden:`warning`,off:`neutral`};function Ge({siteId:e,comment:t,badge:n,onDone:r}){let{t:i,locale:a,words:o}=w(),l=pe(),u=c(),f=de().data,p=f?.actor.name??f?.actor.id??``,[m,g]=(0,W.useState)(``),[_,v]=(0,W.useState)(!1),y=U(m),b=d({mutationFn:()=>N.comments.reply(e,t.id,m.trim()),onSuccess:async()=>{l.success(i(`comments.reply.published`),i(`comments.reply.publishedDescription`)),g(``),r(),await u.invalidateQueries({queryKey:Ae(e)})}}),x=[...m].length;return(0,K.jsxs)(`form`,{className:`grid gap-4`,"data-testid":`reply-form`,onSubmit:e=>{e.preventDefault(),v(!0),y||b.mutate()},children:[(0,K.jsx)(j,{label:i(`comments.reply.title`,{name:p}),description:(0,K.jsxs)(`span`,{className:`flex items-start justify-between gap-3`,children:[(0,K.jsx)(`span`,{className:`min-w-0`,children:i(`comments.reply.hint`)}),(0,K.jsx)(`span`,{className:x>5e3?`shrink-0 text-kumo-danger tabular-nums`:`shrink-0 tabular-nums`,"data-testid":`reply-count`,children:i(`comments.reply.counter`,{count:x,max:ve(a,je)})})]}),value:m,onValueChange:g,error:_&&y?i(y===`short`?`comments.reply.tooShort`:`comments.reply.tooLong`):void 0,autoResize:!0,minRows:3,maxRows:12,className:`w-full`,"data-testid":`reply-text`}),(0,K.jsxs)(ye,{variant:`recessed`,label:i(`comments.reply.preview`),children:[(0,K.jsx)(D,{as:`span`,variant:`secondary`,size:`sm`,children:i(`comments.reply.preview`)}),(0,K.jsxs)(`div`,{className:`grid gap-2`,"data-testid":`reply-preview`,children:[(0,K.jsx)(T,{author:{kind:`staff`,personId:``,name:p,badge:n},words:o}),m.trim()?(0,K.jsx)(h,{text:m,newTabLabel:o.newTab}):(0,K.jsx)(D,{variant:`secondary`,children:i(`comments.reply.previewEmpty`)})]})]}),(0,K.jsx)(Oe,{error:b.error,title:i(`comments.reply.failed`),size:`sm`}),(0,K.jsxs)(`div`,{className:`flex flex-wrap items-center justify-between gap-3`,children:[(0,K.jsx)(D,{variant:`secondary`,size:`sm`,as:`span`,children:i(`comments.reply.badgeLine`,{badge:o.author[n]})}),(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(s,{variant:`ghost`,onClick:r,disabled:b.isPending,children:i(`comments.reply.cancel`)}),(0,K.jsx)(s,{type:`submit`,variant:`primary`,icon:(0,K.jsx)(oe,{icon:Ve}),loading:b.isPending,"data-testid":`reply-publish`,children:i(`comments.reply.publish`)})]})]})]})}function Ke({report:e,onOpenChange:t,busy:n,error:r,onConfirm:i}){let{t:a}=w(),[o,s]=(0,W.useState)(``),[c,l]=(0,W.useState)(!1);(0,W.useEffect)(()=>{e&&(s(``),l(!1))},[e]);let u=o.trim()===``;return(0,K.jsx)(I.Root,{open:e!==void 0,onOpenChange:t,dismissDisabled:n,children:(0,K.jsxs)(I.Content,{size:`sm`,closeLabel:a(`common.close`),children:[(0,K.jsx)(I.Title,{children:a(`comments.reports.resolveTitle`)}),(0,K.jsx)(I.Description,{children:a(`comments.reports.resolveDescription`)}),(0,K.jsx)(I.Body,{children:(0,K.jsxs)(`div`,{className:`grid gap-4`,"data-testid":`resolve-dialog`,children:[(0,K.jsx)(j,{label:a(`comments.reports.resolution`),description:a(`comments.reports.resolutionHint`),value:o,onValueChange:s,error:c&&u?a(`comments.reports.resolutionRequired`):void 0,maxLength:500,autoResize:!0,minRows:2,maxRows:5,className:`w-full`}),r&&(0,K.jsx)(ue,{variant:`error`,size:`sm`,icon:(0,K.jsx)(k,{weight:`fill`}),title:a(`comments.reports.failed`),description:r})]})}),(0,K.jsx)(I.Actions,{dismissLabel:a(`common.cancel`),children:(0,K.jsx)(I.Actions.Primary,{loading:n,onClick:()=>{l(!0),u||i(o.trim())},children:a(`comments.reports.resolveConfirm`)})})]})})}function qe({siteId:e,comment:t,focused:n,canResolve:r,onResolve:i}){let{t:a,locale:o}=w(),c=t.status===`hidden`||t.status===`spam`||t.status===`deleted`,u=(t.reports?.count??0)>0,[d,f]=(0,W.useState)(!1),p=n||u||c||d,m=l({queryKey:[...Ae(e),`comment`,t.id],queryFn:()=>N.comments.get(e,t.id),enabled:p}),h=ne(a);if(!p)return(0,K.jsx)(`span`,{children:(0,K.jsx)(s,{variant:`ghost`,size:`sm`,icon:(0,K.jsx)(De,{}),onClick:()=>f(!0),"data-testid":`comment-history-open`,children:a(`comments.history.show`)})});if(m.isPending)return(0,K.jsxs)(`div`,{className:`grid gap-2`,role:`status`,children:[(0,K.jsx)(`span`,{className:`sr-only`,children:a(`common.loading`)}),(0,K.jsx)(O,{minWidth:30,maxWidth:50})]});if(!m.data)return(0,K.jsx)(Oe,{error:m.error,onRetry:()=>void m.refetch()});let{history:_,reports:y}=m.data;return(0,K.jsxs)(`div`,{className:`grid gap-3`,"data-testid":`comment-details`,children:[c&&t.moderation&&(0,K.jsx)(Y,{moderation:t.moderation,locale:o,labels:v(a),words:h}),y.length>0&&(0,K.jsx)(Z,{reports:y.map(e=>({id:e.id,reason:e.reason,createdAt:e.createdAt,...e.details?{details:e.details}:{},...e.resolvedAt?{resolvedAt:e.resolvedAt}:{},...e.resolution?{resolution:e.resolution}:{}})),locale:o,labels:S(a),renderActions:e=>e.resolvedAt?null:(0,K.jsx)(s,{variant:`secondary`,size:`sm`,disabled:!r,onClick:()=>{let t=y.find(t=>t.id===e.id);t&&i(t)},children:a(`comments.reports.resolve`)})}),(0,K.jsx)(X,{events:_.map(g),locale:o,labels:C(a),words:h,defaultOpen:n||d})]})}function Je(){let{t:e,locale:t,words:n}=w(),{siteId:r,nodeId:i}=u({from:`/sites/$siteId/comments/$nodeId`}),h=m({from:`/sites/$siteId/comments/$nodeId`}),g=f(),_=pe(),v=c(),b=fe(),S=!de().isPending,C=A(`comments.read`),ne=A(`comments.moderateAny`),T=A(`comments.moderate`),oe=A(`comments.reply`),E=l({queryKey:[`entry`,r,i],queryFn:()=>N.entries.get(r,i),enabled:S&&C.allowed,retry:!1}),k=l({queryKey:Me(r,i),queryFn:()=>N.comments.thread(r,i),enabled:S&&C.allowed,retry:(e,t)=>!M(t)&&e<1}),j=p({queryKey:[...Ae(r),`list`,`thread`,i],queryFn:({pageParam:e})=>N.comments.list(r,{node:i,order:`oldest`,limit:50,...e?{cursor:e}:{}}),initialPageParam:void 0,getNextPageParam:e=>e.nextCursor,enabled:S&&C.allowed,retry:(e,t)=>!M(t)&&e<1}),P=j.data?.pages.flatMap(e=>e.items)??[],F=new Map(P.map(e=>[e.id,e])),[I,_e]=(0,W.useState)(h.reply),[L,R]=(0,W.useState)({open:!1,action:`hide`,ids:[]}),[z,B]=(0,W.useState)(),[V,H]=(0,W.useState)(),[ye,Te]=(0,W.useState)(!1),[Ee,De]=(0,W.useState)(!1),je=E.data?xe(E.data,b):!1,U=ne.allowed||je?void 0:ne.reason,Be=oe.allowed||je?void 0:oe.reason,G=T.allowed&&!U,Ve=E.data?.title??``,q=x(r,()=>R(e=>({...e,open:!1}))),J=te(r),Y=Pe(r,i),X=d({mutationFn:e=>N.comments.resolveReport(r,e.report.id,e.resolution),onSuccess:async()=>{H(void 0),_.success(e(`comments.reports.resolvedToast`)),await v.invalidateQueries({queryKey:Ae(r)})}}),Z=h.comment??h.reply;(0,W.useEffect)(()=>{if(!Z||!F.has(Z))return;let e=document.getElementById(`comment-${Z}`);e?.scrollIntoView?.({block:`center`}),e?.focus({preventScroll:!0})},[Z,F.size]);let He=(t,n)=>{n===`reply`?_e(t.id):n===`delete`?(J.reset(),B(t)):n===`resolve`?g({to:`/sites/$siteId/comments/$nodeId`,params:{siteId:r,nodeId:i},search:{comment:t.id}}):n===`commenter`?N.comments.findCommenter(r,{commentId:t.id}).then(async({commenter:t})=>{t?await g({to:`/sites/$siteId/commenters/$commenterId`,params:{siteId:r,commenterId:t.id}}):_.error(e(`comments.commenter.title`),e(`comments.commenter.noEmail`))}).catch(t=>_.error(e(`comments.commenter.title`),t.message)):n===`hide`||n===`spam`?(q.reset(),R({open:!0,action:n,ids:[t.id]})):n!==`openThread`&&q.mutate({ids:[t.id],action:n,revs:ke(P,[t.id])})},Q=k.data?.thread,$=k.data?.counts,Je=M(k.error)&&M(j.error),Ye=M(k.error)&&!Je,Xe=Q?.mode??`default`,Ze=e=>{Q&&e!==Xe&&(e===`hidden`?De(!0):Y.mutate({rev:Q.rev,mode:e}))},Qe=(0,K.jsxs)(be,{title:e(`comments.title`),icon:(0,K.jsx)(we,{size:16}),description:e(`comments.thread.description`),actions:$?(0,K.jsx)(a,{variant:`secondary`,children:ve(t,$.approved)}):void 0,flush:!0,children:[(0,K.jsx)(Ue,{comments:P.map(e=>ie(r,e)),words:n,labels:y(e,Ve),locale:t,loading:j.isPending,error:j.error&&!M(j.error)?(0,K.jsx)(`div`,{className:`px-5 py-4`,children:(0,K.jsx)(Oe,{error:j.error,onRetry:()=>void j.refetch()})}):void 0,empty:(0,K.jsx)(Ce,{icon:(0,K.jsx)(we,{size:32,className:`text-kumo-inactive`}),title:e(`comments.thread.empty`),description:e(`comments.thread.emptyDescription`)}),renderActions:e=>{let t=F.get(e.id);return t?(0,K.jsx)(re,{comment:t,onAction:e=>He(t,e),hide:[`openThread`],notOwnReason:U??Be}):null},renderDetails:e=>(0,K.jsx)(qe,{siteId:r,comment:e,focused:Z===e.id,canResolve:G,onResolve:e=>{X.reset(),H(e)}}),renderReply:t=>{let n=F.get(t.id);return!n||I!==t.id?null:n.status===`approved`?(0,K.jsx)(Ge,{siteId:r,comment:n,badge:je?`author`:`team`,onDone:()=>_e(void 0)}):(0,K.jsx)(D,{variant:`secondary`,size:`sm`,children:e(`comments.reply.notApproved`)})}}),j.hasNextPage&&(0,K.jsx)(`div`,{className:`border-kumo-hairline border-t px-5 py-3`,children:(0,K.jsx)(s,{variant:`secondary`,size:`sm`,loading:j.isFetchingNextPage,onClick:()=>void j.fetchNextPage(),children:e(`comments.thread.loadMore`)})})]}),$e=(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(be,{title:e(`comments.thread.cardTitle`),icon:(0,K.jsx)(ce,{size:16}),children:Q?(0,K.jsxs)(`div`,{className:`grid gap-4`,"data-testid":`thread-controls`,children:[(0,K.jsxs)(`div`,{className:`grid gap-1.5`,children:[(0,K.jsx)(D,{bold:!0,as:`span`,children:e(`comments.thread.mode`)}),(0,K.jsx)(`span`,{className:`inline-flex`,title:U??T.reason,children:(0,K.jsx)(me,{variant:`segmented`,size:`sm`,value:Xe,onValueChange:e=>G&&Ze(Ne(e)),tabs:[`default`,`open`,`closed`,`hidden`].map(t=>({value:t,label:e(`comments.thread.modes.${t}`),...G?{}:{disabled:!0}}))})}),(0,K.jsx)(D,{variant:`secondary`,size:`sm`,children:e(`comments.thread.modeHints.${Xe}`)})]}),(0,K.jsxs)(`dl`,{className:`-mb-3 divide-y divide-kumo-hairline border-kumo-hairline border-t`,children:[(0,K.jsx)(ge,{label:e(`comments.thread.readersSee`),children:(0,K.jsx)(a,{variant:We[Q.state],appearance:`dot`,children:e(`comments.thread.state.${Q.state}`)})}),(0,K.jsx)(ge,{label:e(`comments.thread.closeOn`),hint:Ie(e,Q,t),children:(0,K.jsx)(s,{variant:`ghost`,size:`sm`,icon:(0,K.jsx)(ce,{}),disabled:!G,title:U??T.reason,onClick:()=>{Y.reset(),Te(!0)},"data-testid":`thread-close-change`,children:e(`comments.thread.changeClose`)})})]})]}):(0,K.jsxs)(`div`,{className:`grid gap-2`,role:`status`,children:[(0,K.jsx)(`span`,{className:`sr-only`,children:e(`common.loading`)}),(0,K.jsx)(O,{minWidth:50,maxWidth:80}),(0,K.jsx)(O,{minWidth:30,maxWidth:60})]})}),(0,K.jsx)(Re,{rows:[{label:e(`comments.thread.entryId`),value:(0,K.jsx)(D,{variant:`mono-secondary`,children:i})},...E.data?[{label:e(`comments.thread.path`),value:(0,K.jsx)(D,{variant:`mono-secondary`,children:`/${E.data.collection}/${E.data.slug}`})}]:[],...$?[`approved`,`pending`,`reported`,`hidden`,`spam`].map(n=>({label:e(`comments.thread.${n}Count`),value:(0,K.jsx)(D,{as:`span`,children:ve(t,$[n])})})):[]]})]});return(0,K.jsxs)(Se,{crumbs:(0,K.jsx)(he,{siteId:r,trail:[{label:e(`comments.title`),href:`/sites/${r}/comments`},{label:Ve||i}],copy:i}),title:Ve||void 0,loading:E.isPending&&C.allowed,description:Q?(0,K.jsxs)(`span`,{className:`flex flex-wrap items-center gap-2`,children:[(0,K.jsx)(a,{variant:We[Q.state],appearance:`dot`,children:e(`comments.thread.state.${Q.state}`)}),(0,K.jsx)(`span`,{children:Ie(e,Q,t)})]}):void 0,actions:E.data?(0,K.jsx)(o,{href:`/sites/${r}/articles/${i}`,variant:`secondary`,icon:ae(se),children:e(`comments.thread.openArticle`)}):void 0,children:[C.allowed?Je?(0,K.jsx)(ue,{variant:`secondary`,icon:(0,K.jsx)(le,{weight:`fill`}),title:e(`comments.unavailable.title`),description:e(`comments.unavailable.description`)}):Ye?(0,K.jsx)(ue,{variant:`secondary`,icon:(0,K.jsx)(le,{weight:`fill`}),title:e(`comments.thread.notFoundTitle`),description:e(`comments.thread.notFoundDescription`)}):(0,K.jsx)(ze,{main:Qe,aside:$e}):(0,K.jsx)(ue,{variant:`secondary`,icon:(0,K.jsx)(le,{weight:`fill`}),title:e(`comments.noAccessTitle`),description:C.reason}),(0,K.jsx)(ee,{open:L.open,onOpenChange:e=>R(t=>({...t,open:e})),action:L.action,count:L.ids.length,busy:q.isPending,error:q.error?.message,onConfirm:e=>q.mutate({ids:L.ids,action:L.action,revs:ke(P,L.ids),...e})}),(0,K.jsx)(ee,{open:z!==void 0,onOpenChange:e=>!e&&B(void 0),action:`delete`,count:1,busy:J.isPending,error:J.error?.message,onConfirm:e=>{z&&J.mutate({comment:z,...e},{onSettled:()=>B(void 0)})}}),(0,K.jsx)(Ke,{report:V,onOpenChange:e=>!e&&H(void 0),busy:X.isPending,error:X.error?.message,onConfirm:e=>V&&X.mutate({report:V,resolution:e})}),(0,K.jsx)(Le,{open:ye,onOpenChange:Te,current:Q?.closesAt??null,busy:Y.isPending,error:Y.error?.message,onSave:e=>Q&&Y.mutate({rev:Q.rev,mode:Q.mode,closesAt:e},{onSuccess:()=>Te(!1)})}),(0,K.jsx)(Fe,{open:Ee,onOpenChange:De,busy:Y.isPending,onConfirm:()=>Q&&Y.mutate({rev:Q.rev,mode:`hidden`},{onSuccess:()=>De(!1)})})]})}export{Je as CommentThreadPage};
|
|
2
|
+
//# sourceMappingURL=CommentThreadPage-DyXjmoOu.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-D1xrG37q.js";import{t as a}from"./button-pa1bq9b85hawg41a-BcGpLLER.js";import{S as o,_ as s,d as c,h as l,l as u}from"./tanstack-BiJ_7SEB.js";import{c as d,g as f,p,t as m,u as h,y as g}from"./Comments-CnfKPS2z.js";import{m as _,n as v,t as y}from"./skeleton-line-m9dyh126t9k07jvg-CHsT8Hs3.js";import{t as b}from"./DownloadSimple.es-Cq4-UK-k.js";import{t as x}from"./checkbox-lbo436duy7krxcsk-BmusNS83.js";import{t as S}from"./Prohibit.es-CAvPLn3v.js";import{t as C}from"./UserCircle.es-D4ZFhshn.js";import{n as w,t as T}from"./banner-msnmqm7of2lck01x-DRzQHuca.js";import{i as E,o as D}from"./useMe-z-wff5FW.js";import{t as ee}from"./Toast-BHyBhGXI.js";import{t as O}from"./input-h5ox92gf13ge04hp-jfy1uD8s.js";import{a as k,c as A,o as te,t as j}from"./api-Sbz4Rbu7.js";import{t as M}from"./select-futox5zqr3r80y9a-5U5PtwHa.js";import{t as N}from"./radio-35dx7y6rjrezbjsp-DY9M1ouC.js";import{n as ne}from"./Crumbs-Ci_RdgHU.js";import{t as P}from"./layer-dialog-j5ywmzs46ccg6oqy-DyWF5y24.js";import{c as F}from"./intl-C22KAx_l.js";import{c as I,l as L,r as R}from"./comment-model-CArtcrfg.js";import{t as z}from"./InsetPanel-CHSg953_.js";import{t as B}from"./SectionCard-SzT8t6oM.js";import{E as re,S as ie,b as ae,ot as V}from"./index-Boved2Nz.js";import{a as H,d as U,f as W,i as oe,t as G}from"./comments-B1PIozwq.js";import{r as se}from"./EditorLayout-DVegYcZT.js";import{n as ce}from"./Gating-BdY3KxOv.js";var K=e(n(),1),q=new Map([[`bold`,K.createElement(K.Fragment,null,K.createElement(`path`,{d:`M216,204H141l86.84-86.84a28,28,0,0,0,0-39.6L186.43,36.19a28,28,0,0,0-39.6,0L28.19,154.82a28,28,0,0,0,0,39.6l30.06,30.07A12,12,0,0,0,66.74,228H216a12,12,0,0,0,0-24ZM163.8,53.16a4,4,0,0,1,5.66,0l41.38,41.38a4,4,0,0,1,0,5.65L160,151l-47-47ZM71.71,204,45.16,177.45a4,4,0,0,1,0-5.65L96,121l47,47-36,36Z`}))],[`fill`,K.createElement(K.Fragment,null,K.createElement(`path`,{d:`M225,80.4,183.6,39a24,24,0,0,0-33.94,0L31,157.66a24,24,0,0,0,0,33.94l30.06,30.06A8,8,0,0,0,66.74,224H216a8,8,0,0,0,0-16h-84.7L225,114.34A24,24,0,0,0,225,80.4ZM213.67,103,160,156.69,107.31,104,161,50.34a8,8,0,0,1,11.32,0l41.38,41.38a8,8,0,0,1,0,11.31Z`}))],[`regular`,K.createElement(K.Fragment,null,K.createElement(`path`,{d:`M225,80.4,183.6,39a24,24,0,0,0-33.94,0L31,157.66a24,24,0,0,0,0,33.94l30.06,30.06A8,8,0,0,0,66.74,224H216a8,8,0,0,0,0-16h-84.7L225,114.34A24,24,0,0,0,225,80.4ZM108.68,208H70.05L42.33,180.28a8,8,0,0,1,0-11.31L96,115.31,148.69,168Zm105-105L160,156.69,107.31,104,161,50.34a8,8,0,0,1,11.32,0l41.38,41.38a8,8,0,0,1,0,11.31Z`}))]]),J=K.forwardRef((e,n)=>K.createElement(t,{ref:n,...e,weights:q}));J.displayName=`EraserIcon`;var le=J,Y=r();function X({label:e,children:t}){return(0,Y.jsxs)(`div`,{className:`flex flex-wrap items-start justify-between gap-x-6 gap-y-1 py-3 first:pt-0`,children:[(0,Y.jsx)(`dt`,{className:`min-w-0 flex-[1_1_10rem]`,children:(0,Y.jsx)(v,{bold:!0,as:`span`,children:e})}),(0,Y.jsx)(`dd`,{className:`m-0 flex min-w-0 flex-[2_1_14rem] flex-wrap items-center gap-2`,children:t})]})}function ue({locale:e,now:t,words:n,labels:r,names:a,counts:o,firstSeen:s,lastSeen:c,ban:l,email:u,canSeeEmail:d=!1,actions:f,loading:p,error:m}){if(m)return(0,Y.jsx)(Y.Fragment,{children:m});if(p)return(0,Y.jsxs)(`div`,{className:`grid gap-3`,"data-testid":`commenter-summary-loading`,children:[(0,Y.jsx)(`span`,{role:`status`,className:`sr-only`,children:r.loading}),[0,1,2,3].map(e=>(0,Y.jsxs)(`div`,{"aria-hidden":!0,className:`grid gap-1.5`,children:[(0,Y.jsx)(y,{minWidth:20,maxWidth:30}),(0,Y.jsx)(y,{minWidth:40,maxWidth:70})]},e))]});let h=n=>{let r=L(n,e,t);return(0,Y.jsxs)(v,{as:`span`,children:[(0,Y.jsx)(`time`,{dateTime:n,title:r.absolute,children:I(n,e)}),` `,(0,Y.jsxs)(v,{as:`span`,variant:`secondary`,size:`sm`,children:[`(`,r.relative,`)`]})]})},_=F(e);return(0,Y.jsxs)(`div`,{className:`grid min-w-0 gap-4`,"data-testid":`commenter-summary`,children:[(0,Y.jsxs)(`dl`,{className:`m-0 grid divide-y divide-kumo-hairline`,children:[(0,Y.jsx)(X,{label:r.names,children:a.map(e=>(0,Y.jsx)(`span`,{dir:`auto`,className:`min-w-0 wrap-anywhere`,children:(0,Y.jsx)(i,{variant:`outline`,children:e})},e))}),d&&u&&(0,Y.jsx)(X,{label:r.email,children:(0,Y.jsx)(`span`,{className:`min-w-0 wrap-anywhere`,"data-commenter-email":!0,children:(0,Y.jsx)(v,{as:`span`,variant:`mono`,children:u})})}),s&&(0,Y.jsx)(X,{label:r.firstSeen,children:h(s)}),c&&(0,Y.jsx)(X,{label:r.lastSeen,children:h(c)}),(0,Y.jsx)(X,{label:r.ban,children:l?(0,Y.jsxs)(`span`,{className:`grid min-w-0 gap-1`,"data-ban":`active`,children:[(0,Y.jsx)(`span`,{className:`inline-flex`,children:(0,Y.jsx)(i,{variant:`error`,children:l.until?r.bannedUntil(I(l.until,e)):r.bannedForever})}),(0,Y.jsx)(v,{as:`span`,variant:`secondary`,size:`sm`,children:[...l.subjects.map(e=>r.banSubject[e]),l.reason].filter(Boolean).join(` · `)})]}):(0,Y.jsx)(`span`,{className:`inline-flex`,"data-ban":`none`,children:(0,Y.jsx)(i,{variant:`neutral`,appearance:`dot`,children:r.notBanned})})})]}),(0,Y.jsx)(z,{label:r.counts,className:`@container`,children:(0,Y.jsx)(`dl`,{className:`m-0 grid grid-cols-2 gap-x-4 gap-y-3 @md:grid-cols-5`,children:R.map(e=>(0,Y.jsxs)(`div`,{className:`grid min-w-0 justify-items-start gap-1`,"data-count":e,children:[(0,Y.jsx)(`dt`,{children:(0,Y.jsx)(g,{status:e,words:n})}),(0,Y.jsx)(`dd`,{className:`m-0`,children:(0,Y.jsx)(v,{as:`span`,variant:`heading`,children:(0,Y.jsx)(`span`,{className:`tabular-nums`,children:_.format(o[e]??0)})})})]},e))})}),f&&(0,Y.jsx)(`div`,{className:`flex flex-wrap items-center gap-2`,children:f})]})}function de(e,t){let n=URL.createObjectURL(new Blob([JSON.stringify(t,null,2)],{type:`application/json`})),r=document.createElement(`a`);r.href=n,r.download=e,r.click(),setTimeout(()=>URL.revokeObjectURL(n),1e3)}function fe({open:e,onOpenChange:t,busy:n,error:r,onConfirm:i}){let{t:a}=p(),[o,s]=(0,K.useState)(`30`),[c,l]=(0,K.useState)(!0),[u,f]=(0,K.useState)(!1),[m,h]=(0,K.useState)(`abuse`),[g,_]=(0,K.useState)(``),[y,b]=(0,K.useState)(!1),[S,C]=(0,K.useState)(!1);(0,K.useEffect)(()=>{e&&(s(`30`),l(!0),f(!1),h(`abuse`),_(``),b(!1),C(!1))},[e]);let E=`comments.commenter.banDialog`,D=!c&&!u;return(0,Y.jsx)(P.Root,{open:e,onOpenChange:t,dismissDisabled:n,children:(0,Y.jsxs)(P.Content,{size:`base`,closeLabel:a(`common.close`),children:[(0,Y.jsx)(P.Title,{children:a(`${E}.title`)}),(0,Y.jsx)(P.Description,{children:a(`${E}.description`)}),(0,Y.jsx)(P.Body,{children:(0,Y.jsxs)(`div`,{className:`grid gap-4`,"data-testid":`ban-dialog`,children:[(0,Y.jsx)(`div`,{className:`@container`,children:(0,Y.jsxs)(`div`,{className:`grid items-start gap-4 @md:grid-cols-2`,children:[(0,Y.jsx)(M,{label:a(`${E}.duration`),value:o,onValueChange:e=>s(e??`30`),items:Object.fromEntries(G.map(e=>[e,a(`${E}.durations.${e}`)])),className:`w-full`,"data-testid":`ban-duration`}),(0,Y.jsx)(M,{label:a(`${E}.reason`),value:m,onValueChange:e=>h(e??`abuse`),items:d(a),className:`w-full`})]})}),(0,Y.jsxs)(`fieldset`,{className:`m-0 grid gap-2 p-0`,"data-testid":`ban-subjects`,children:[(0,Y.jsx)(v,{bold:!0,as:`span`,children:a(`${E}.subjects`)}),(0,Y.jsxs)(`div`,{className:`grid gap-0.5`,children:[(0,Y.jsx)(x,{label:a(`${E}.subjectEmail`),checked:c,onCheckedChange:e=>l(e)}),(0,Y.jsx)(v,{variant:`secondary`,size:`sm`,children:a(`${E}.subjectEmailHint`)})]}),(0,Y.jsxs)(`div`,{className:`grid gap-0.5`,children:[(0,Y.jsx)(x,{label:a(`${E}.subjectIp`),checked:u,onCheckedChange:e=>f(e)}),(0,Y.jsx)(v,{variant:`secondary`,size:`sm`,children:a(`${E}.subjectIpHint`)})]}),S&&D&&(0,Y.jsx)(v,{variant:`error`,size:`sm`,children:a(`${E}.subjectsRequired`)})]}),(0,Y.jsx)(O,{label:a(`${E}.note`),description:a(`${E}.noteHint`),value:g,onValueChange:_,maxLength:500,autoResize:!0,minRows:2,maxRows:4,className:`w-full`}),(0,Y.jsxs)(`div`,{className:`grid gap-0.5`,children:[(0,Y.jsx)(x,{label:a(`${E}.hidePast`),checked:y,onCheckedChange:e=>b(e)}),(0,Y.jsx)(v,{variant:`secondary`,size:`sm`,children:a(`${E}.hidePastHint`)})]}),r&&(0,Y.jsx)(T,{variant:`error`,size:`sm`,icon:(0,Y.jsx)(w,{weight:`fill`}),title:a(`comments.commenter.banFailed`),description:r})]})}),(0,Y.jsx)(P.Actions,{dismissLabel:a(`common.cancel`),children:(0,Y.jsx)(P.Actions.Primary,{variant:`destructive`,loading:n,onClick:()=>{C(!0),!D&&i({until:H(o),subjects:[...c?[`email`]:[],...u?[`ip`]:[]],reasonCode:m,...g.trim()?{note:g.trim()}:{},hidePast:y})},"data-testid":`ban-confirm`,children:a(`${E}.confirm`)})})]})})}function pe({open:e,onOpenChange:t,busy:n,error:r,onConfirm:i}){let{t:a}=p(),[o,s]=(0,K.useState)(`anonymise`),[c,l]=(0,K.useState)(``),[u,d]=(0,K.useState)(!1);(0,K.useEffect)(()=>{e&&(s(`anonymise`),l(``),d(!1))},[e]);let f=`comments.commenter.eraseDialog`,m=c.trim()===``,h=[`name`,`email`,...o===`delete-text`?[`text`]:[],`live`,`audit`];return(0,Y.jsx)(P.Alert,{open:e,onOpenChange:t,dismissDisabled:n,children:(0,Y.jsxs)(P.Content,{size:`base`,closeLabel:a(`common.close`),children:[(0,Y.jsx)(P.Title,{children:a(`${f}.title`)}),(0,Y.jsx)(P.Description,{children:a(`${f}.description`)}),(0,Y.jsx)(P.Body,{children:(0,Y.jsxs)(`div`,{className:`grid gap-4`,"data-testid":`erase-dialog`,children:[(0,Y.jsxs)(N.Group,{appearance:`card`,legend:a(`${f}.title`),value:o,onValueChange:e=>s(e===`delete-text`?`delete-text`:`anonymise`),children:[(0,Y.jsx)(N.Item,{value:`anonymise`,label:a(`${f}.anonymise`),description:a(`${f}.anonymiseHint`)}),(0,Y.jsx)(N.Item,{value:`delete-text`,label:a(`${f}.deleteText`),description:a(`${f}.deleteTextHint`)})]}),(0,Y.jsxs)(z,{label:a(`${f}.consequences`),children:[(0,Y.jsx)(v,{as:`span`,bold:!0,children:a(`${f}.consequences`)}),(0,Y.jsx)(`div`,{className:`grid gap-1.5`,"data-testid":`erase-points`,children:h.map(e=>(0,Y.jsx)(v,{as:`span`,variant:`secondary`,size:`sm`,children:a(`${f}.points.${e}`)},e))})]}),(0,Y.jsx)(O,{label:a(`${f}.reason`),description:a(`${f}.reasonHint`),value:c,onValueChange:l,error:u&&m?a(`${f}.reasonRequired`):void 0,maxLength:500,autoResize:!0,minRows:2,maxRows:5,className:`w-full`,"data-testid":`erase-reason`}),r&&(0,Y.jsx)(T,{variant:`error`,size:`sm`,icon:(0,Y.jsx)(w,{weight:`fill`}),title:a(`comments.commenter.eraseFailed`),description:r})]})}),(0,Y.jsx)(P.Actions,{dismissLabel:a(`common.cancel`),children:(0,Y.jsx)(P.Actions.Primary,{variant:`destructive`,loading:n,onClick:()=>{d(!0),m||i({mode:o,reason:c.trim()})},"data-testid":`erase-confirm`,children:a(`${f}.confirm`)})})]})})}function Z(){let{t:e,locale:t,words:n}=p(),{siteId:r,commenterId:i}=c({from:`/sites/$siteId/commenters/$commenterId`}),g=u(),v=ee(),y=o(),x=!D().isPending,w=E(`commenters.data`),O=E(`comments.moderateAny`),[M,N]=(0,K.useState)(!1),[P,F]=(0,K.useState)(!1),I=s({queryKey:U(r,i),queryFn:()=>j.comments.commenter(r,i),enabled:x&&w.allowed,retry:(e,t)=>!A(t)&&e<1}),L=[...I.data?.comments??[]].sort((e,t)=>t.createdAt.localeCompare(e.createdAt)),R=L[0],z=s({queryKey:[...U(r,i),`bans`,R?.id??``],queryFn:()=>j.comments.bans(r,R?.id),enabled:x&&w.allowed&&O.allowed&&R!==void 0}),H=oe(z.data?.items??[]),G=()=>y.invalidateQueries({queryKey:W(r)}),q=l({mutationFn:e=>j.comments.ban(r,e),onSuccess:async t=>{N(!1),v.success(e(`comments.commenter.banned`),t.hidden>0?e(`comments.commenter.bannedHidden`,{count:t.hidden}):void 0),await G()}}),J=l({mutationFn:async()=>{for(let e of z.data?.items??[])await j.comments.liftBan(r,e.id)},onSuccess:async()=>{v.success(e(`comments.commenter.unbanned`)),await G()},onError:t=>v.error(e(`comments.commenter.unbanFailed`),t.message)}),X=l({mutationFn:()=>j.comments.exportCommenter(r,i),onSuccess:t=>{de(`commenter-${i}.json`,t),v.success(e(`comments.commenter.exported`))},onError:t=>v.error(e(`comments.commenter.exportFailed`),t.message)}),Z=l({mutationFn:e=>j.comments.eraseCommenter(r,i,e.mode,e.reason),onSuccess:async t=>{F(!1),v.success(e(`comments.commenter.erased`),e(`comments.commenter.erasedDescription`,{count:t.comments})),await G()}}),Q=[...new Set(L.flatMap(e=>e.author.kind===`erased`?[]:[e.author.name]))],$={};for(let e of L)$[e.status]=($[e.status]??0)+1;let me=te(I.error)===`comments_key_missing`||I.error instanceof k&&I.error.status===503,he=A(I.error),ge=(e,t)=>{(t=>g({to:`/sites/$siteId/comments/$nodeId`,params:{siteId:r,nodeId:e.nodeId},search:t}))(t===`reply`?{reply:e.id}:{comment:e.id})},_e=(0,Y.jsx)(ue,{locale:t,words:n,labels:{names:e(`comments.commenter.names`),email:e(`comments.commenter.email`),firstSeen:e(`comments.commenter.firstSeen`),lastSeen:e(`comments.commenter.lastSeen`),ban:e(`comments.commenter.ban`),counts:e(`comments.commenter.counts`),notBanned:e(`comments.commenter.notBanned`),bannedUntil:t=>e(`comments.commenter.bannedUntil`,{date:t}),bannedForever:e(`comments.commenter.bannedForever`),banSubject:{email:e(`comments.commenter.banSubject.email`),ip:e(`comments.commenter.banSubject.ip`)},loading:e(`common.loading`)},names:Q,counts:$,...I.data?{firstSeen:I.data.commenter.firstSeen}:{},...R?{lastSeen:R.createdAt}:{},ban:H?{until:H.until,subjects:(z.data?.items??[]).map(e=>e.subject),reason:d(e)[H.reasonCode]}:null,...I.data?{email:I.data.commenter.email}:{},canSeeEmail:w.allowed,loading:I.isPending,actions:(0,Y.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,"data-testid":`commenter-actions`,children:[H?(0,Y.jsx)(a,{variant:`secondary`,icon:(0,Y.jsx)(S,{}),loading:J.isPending,disabled:!O.allowed,title:O.reason,onClick:()=>J.mutate(),children:e(`comments.commenter.actions.unban`)}):(0,Y.jsx)(a,{variant:`secondary`,icon:(0,Y.jsx)(S,{}),disabled:!O.allowed||!R,title:O.reason,onClick:()=>{q.reset(),N(!0)},"data-testid":`commenter-ban`,children:e(`comments.commenter.actions.ban`)}),(0,Y.jsx)(a,{variant:`secondary`,icon:(0,Y.jsx)(b,{}),loading:X.isPending,onClick:()=>X.mutate(),"data-testid":`commenter-export`,children:e(`comments.commenter.actions.export`)}),(0,Y.jsx)(a,{variant:`secondary-destructive`,icon:(0,Y.jsx)(le,{}),onClick:()=>{Z.reset(),F(!0)},"data-testid":`commenter-erase`,children:e(`comments.commenter.actions.erase`)})]})});return(0,Y.jsxs)(ie,{crumbs:(0,Y.jsx)(ne,{siteId:r,trail:[{label:e(`comments.title`),href:`/sites/${r}/comments`},{label:e(`comments.commenter.title`)}],copy:i}),title:Q[0]??e(`comments.commenter.title`),loading:I.isPending&&w.allowed,description:e(`comments.commenter.description`),children:[w.allowed?me?(0,Y.jsx)(T,{variant:`secondary`,icon:(0,Y.jsx)(_,{weight:`fill`}),title:e(`comments.commenter.title`),description:e(`comments.commenter.keysMissing`)}):he?(0,Y.jsx)(T,{variant:`secondary`,icon:(0,Y.jsx)(_,{weight:`fill`}),title:e(`comments.commenter.notFoundTitle`),description:e(`comments.commenter.notFoundDescription`)}):(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(ae,{error:I.error,onRetry:()=>void I.refetch()}),(0,Y.jsx)(se,{main:(0,Y.jsx)(B,{title:e(`comments.commenter.theirComments`),icon:(0,Y.jsx)(V,{size:16}),description:e(`comments.commenter.theirCommentsDescription`),flush:!0,children:I.data&&L.length===0?(0,Y.jsx)(re,{icon:(0,Y.jsx)(V,{size:32,className:`text-kumo-inactive`}),title:e(`comments.commenter.noComments`),description:e(`comments.commenter.noCommentsDescription`)}):(0,Y.jsx)(`div`,{className:`divide-y divide-kumo-hairline`,"data-testid":`commenter-comments`,children:L.map(e=>(0,Y.jsx)(f,{comment:h(r,e),words:n,locale:t,actions:(0,Y.jsx)(m,{comment:e,onAction:t=>ge(e,t),hide:[`approve`,`restore`,`hide`,`spam`,`hold`,`delete`,`resolve`,`commenter`]})},e.id))})}),aside:(0,Y.jsx)(B,{title:e(`comments.commenter.identity`),icon:(0,Y.jsx)(C,{size:16}),children:_e})})]}):(0,Y.jsx)(ce,{reason:w.reason}),(0,Y.jsx)(fe,{open:M,onOpenChange:N,busy:q.isPending,error:q.error?.message,onConfirm:e=>R&&q.mutate({commentId:R.id,...e})}),(0,Y.jsx)(pe,{open:P,onOpenChange:F,busy:Z.isPending,error:Z.error?.message,onConfirm:e=>Z.mutate(e)})]})}export{Z as CommenterPage};
|
|
2
|
-
//# sourceMappingURL=CommenterPage-
|
|
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-D1xrG37q.js";import{t as a}from"./button-pa1bq9b85hawg41a-BcGpLLER.js";import{S as o,_ as s,d as c,h as l,l as u}from"./tanstack-BiJ_7SEB.js";import{c as d,g as f,p,t as m,u as h,y as g}from"./Comments-sU22Wp1j.js";import{m as _,n as v,t as y}from"./skeleton-line-m9dyh126t9k07jvg-CHsT8Hs3.js";import{t as b}from"./DownloadSimple.es-Cq4-UK-k.js";import{t as x}from"./checkbox-lbo436duy7krxcsk-BmusNS83.js";import{t as S}from"./Prohibit.es-CAvPLn3v.js";import{t as C}from"./UserCircle.es-D4ZFhshn.js";import{n as w,t as T}from"./banner-msnmqm7of2lck01x-DRzQHuca.js";import{i as E,o as D}from"./useMe-Cx8D2_vf.js";import{t as ee}from"./Toast-MSfrCjAr.js";import{t as O}from"./input-h5ox92gf13ge04hp-jfy1uD8s.js";import{a as k,c as A,o as te,t as j}from"./api-K4ZsoxSR.js";import{t as M}from"./select-futox5zqr3r80y9a-5U5PtwHa.js";import{t as N}from"./radio-35dx7y6rjrezbjsp-DY9M1ouC.js";import{n as ne}from"./Crumbs-DOM6tT0l.js";import{t as P}from"./layer-dialog-j5ywmzs46ccg6oqy-Dg9cqt2A.js";import{c as F}from"./intl-C22KAx_l.js";import{c as I,l as L,r as R}from"./comment-model-CArtcrfg.js";import{t as z}from"./InsetPanel-CHSg953_.js";import{t as B}from"./SectionCard-253RWE03.js";import{C as re,E as ie,at as V,x as ae}from"./index-DWzjnrnl.js";import{a as H,d as U,f as W,i as oe,t as G}from"./comments-B1PIozwq.js";import{r as se}from"./EditorLayout-ieqpWD3O.js";import{n as ce}from"./Gating-mRuy0Aw6.js";var K=e(n(),1),q=new Map([[`bold`,K.createElement(K.Fragment,null,K.createElement(`path`,{d:`M216,204H141l86.84-86.84a28,28,0,0,0,0-39.6L186.43,36.19a28,28,0,0,0-39.6,0L28.19,154.82a28,28,0,0,0,0,39.6l30.06,30.07A12,12,0,0,0,66.74,228H216a12,12,0,0,0,0-24ZM163.8,53.16a4,4,0,0,1,5.66,0l41.38,41.38a4,4,0,0,1,0,5.65L160,151l-47-47ZM71.71,204,45.16,177.45a4,4,0,0,1,0-5.65L96,121l47,47-36,36Z`}))],[`fill`,K.createElement(K.Fragment,null,K.createElement(`path`,{d:`M225,80.4,183.6,39a24,24,0,0,0-33.94,0L31,157.66a24,24,0,0,0,0,33.94l30.06,30.06A8,8,0,0,0,66.74,224H216a8,8,0,0,0,0-16h-84.7L225,114.34A24,24,0,0,0,225,80.4ZM213.67,103,160,156.69,107.31,104,161,50.34a8,8,0,0,1,11.32,0l41.38,41.38a8,8,0,0,1,0,11.31Z`}))],[`regular`,K.createElement(K.Fragment,null,K.createElement(`path`,{d:`M225,80.4,183.6,39a24,24,0,0,0-33.94,0L31,157.66a24,24,0,0,0,0,33.94l30.06,30.06A8,8,0,0,0,66.74,224H216a8,8,0,0,0,0-16h-84.7L225,114.34A24,24,0,0,0,225,80.4ZM108.68,208H70.05L42.33,180.28a8,8,0,0,1,0-11.31L96,115.31,148.69,168Zm105-105L160,156.69,107.31,104,161,50.34a8,8,0,0,1,11.32,0l41.38,41.38a8,8,0,0,1,0,11.31Z`}))]]),J=K.forwardRef((e,n)=>K.createElement(t,{ref:n,...e,weights:q}));J.displayName=`EraserIcon`;var le=J,Y=r();function X({label:e,children:t}){return(0,Y.jsxs)(`div`,{className:`flex flex-wrap items-start justify-between gap-x-6 gap-y-1 py-3 first:pt-0`,children:[(0,Y.jsx)(`dt`,{className:`min-w-0 flex-[1_1_10rem]`,children:(0,Y.jsx)(v,{bold:!0,as:`span`,children:e})}),(0,Y.jsx)(`dd`,{className:`m-0 flex min-w-0 flex-[2_1_14rem] flex-wrap items-center gap-2`,children:t})]})}function ue({locale:e,now:t,words:n,labels:r,names:a,counts:o,firstSeen:s,lastSeen:c,ban:l,email:u,canSeeEmail:d=!1,actions:f,loading:p,error:m}){if(m)return(0,Y.jsx)(Y.Fragment,{children:m});if(p)return(0,Y.jsxs)(`div`,{className:`grid gap-3`,"data-testid":`commenter-summary-loading`,children:[(0,Y.jsx)(`span`,{role:`status`,className:`sr-only`,children:r.loading}),[0,1,2,3].map(e=>(0,Y.jsxs)(`div`,{"aria-hidden":!0,className:`grid gap-1.5`,children:[(0,Y.jsx)(y,{minWidth:20,maxWidth:30}),(0,Y.jsx)(y,{minWidth:40,maxWidth:70})]},e))]});let h=n=>{let r=L(n,e,t);return(0,Y.jsxs)(v,{as:`span`,children:[(0,Y.jsx)(`time`,{dateTime:n,title:r.absolute,children:I(n,e)}),` `,(0,Y.jsxs)(v,{as:`span`,variant:`secondary`,size:`sm`,children:[`(`,r.relative,`)`]})]})},_=F(e);return(0,Y.jsxs)(`div`,{className:`grid min-w-0 gap-4`,"data-testid":`commenter-summary`,children:[(0,Y.jsxs)(`dl`,{className:`m-0 grid divide-y divide-kumo-hairline`,children:[(0,Y.jsx)(X,{label:r.names,children:a.map(e=>(0,Y.jsx)(`span`,{dir:`auto`,className:`min-w-0 wrap-anywhere`,children:(0,Y.jsx)(i,{variant:`outline`,children:e})},e))}),d&&u&&(0,Y.jsx)(X,{label:r.email,children:(0,Y.jsx)(`span`,{className:`min-w-0 wrap-anywhere`,"data-commenter-email":!0,children:(0,Y.jsx)(v,{as:`span`,variant:`mono`,children:u})})}),s&&(0,Y.jsx)(X,{label:r.firstSeen,children:h(s)}),c&&(0,Y.jsx)(X,{label:r.lastSeen,children:h(c)}),(0,Y.jsx)(X,{label:r.ban,children:l?(0,Y.jsxs)(`span`,{className:`grid min-w-0 gap-1`,"data-ban":`active`,children:[(0,Y.jsx)(`span`,{className:`inline-flex`,children:(0,Y.jsx)(i,{variant:`error`,children:l.until?r.bannedUntil(I(l.until,e)):r.bannedForever})}),(0,Y.jsx)(v,{as:`span`,variant:`secondary`,size:`sm`,children:[...l.subjects.map(e=>r.banSubject[e]),l.reason].filter(Boolean).join(` · `)})]}):(0,Y.jsx)(`span`,{className:`inline-flex`,"data-ban":`none`,children:(0,Y.jsx)(i,{variant:`neutral`,appearance:`dot`,children:r.notBanned})})})]}),(0,Y.jsx)(z,{label:r.counts,className:`@container`,children:(0,Y.jsx)(`dl`,{className:`m-0 grid grid-cols-2 gap-x-4 gap-y-3 @md:grid-cols-5`,children:R.map(e=>(0,Y.jsxs)(`div`,{className:`grid min-w-0 justify-items-start gap-1`,"data-count":e,children:[(0,Y.jsx)(`dt`,{children:(0,Y.jsx)(g,{status:e,words:n})}),(0,Y.jsx)(`dd`,{className:`m-0`,children:(0,Y.jsx)(v,{as:`span`,variant:`heading`,children:(0,Y.jsx)(`span`,{className:`tabular-nums`,children:_.format(o[e]??0)})})})]},e))})}),f&&(0,Y.jsx)(`div`,{className:`flex flex-wrap items-center gap-2`,children:f})]})}function de(e,t){let n=URL.createObjectURL(new Blob([JSON.stringify(t,null,2)],{type:`application/json`})),r=document.createElement(`a`);r.href=n,r.download=e,r.click(),setTimeout(()=>URL.revokeObjectURL(n),1e3)}function fe({open:e,onOpenChange:t,busy:n,error:r,onConfirm:i}){let{t:a}=p(),[o,s]=(0,K.useState)(`30`),[c,l]=(0,K.useState)(!0),[u,f]=(0,K.useState)(!1),[m,h]=(0,K.useState)(`abuse`),[g,_]=(0,K.useState)(``),[y,b]=(0,K.useState)(!1),[S,C]=(0,K.useState)(!1);(0,K.useEffect)(()=>{e&&(s(`30`),l(!0),f(!1),h(`abuse`),_(``),b(!1),C(!1))},[e]);let E=`comments.commenter.banDialog`,D=!c&&!u;return(0,Y.jsx)(P.Root,{open:e,onOpenChange:t,dismissDisabled:n,children:(0,Y.jsxs)(P.Content,{size:`base`,closeLabel:a(`common.close`),children:[(0,Y.jsx)(P.Title,{children:a(`${E}.title`)}),(0,Y.jsx)(P.Description,{children:a(`${E}.description`)}),(0,Y.jsx)(P.Body,{children:(0,Y.jsxs)(`div`,{className:`grid gap-4`,"data-testid":`ban-dialog`,children:[(0,Y.jsx)(`div`,{className:`@container`,children:(0,Y.jsxs)(`div`,{className:`grid items-start gap-4 @md:grid-cols-2`,children:[(0,Y.jsx)(M,{label:a(`${E}.duration`),value:o,onValueChange:e=>s(e??`30`),items:Object.fromEntries(G.map(e=>[e,a(`${E}.durations.${e}`)])),className:`w-full`,"data-testid":`ban-duration`}),(0,Y.jsx)(M,{label:a(`${E}.reason`),value:m,onValueChange:e=>h(e??`abuse`),items:d(a),className:`w-full`})]})}),(0,Y.jsxs)(`fieldset`,{className:`m-0 grid gap-2 p-0`,"data-testid":`ban-subjects`,children:[(0,Y.jsx)(v,{bold:!0,as:`span`,children:a(`${E}.subjects`)}),(0,Y.jsxs)(`div`,{className:`grid gap-0.5`,children:[(0,Y.jsx)(x,{label:a(`${E}.subjectEmail`),checked:c,onCheckedChange:e=>l(e)}),(0,Y.jsx)(v,{variant:`secondary`,size:`sm`,children:a(`${E}.subjectEmailHint`)})]}),(0,Y.jsxs)(`div`,{className:`grid gap-0.5`,children:[(0,Y.jsx)(x,{label:a(`${E}.subjectIp`),checked:u,onCheckedChange:e=>f(e)}),(0,Y.jsx)(v,{variant:`secondary`,size:`sm`,children:a(`${E}.subjectIpHint`)})]}),S&&D&&(0,Y.jsx)(v,{variant:`error`,size:`sm`,children:a(`${E}.subjectsRequired`)})]}),(0,Y.jsx)(O,{label:a(`${E}.note`),description:a(`${E}.noteHint`),value:g,onValueChange:_,maxLength:500,autoResize:!0,minRows:2,maxRows:4,className:`w-full`}),(0,Y.jsxs)(`div`,{className:`grid gap-0.5`,children:[(0,Y.jsx)(x,{label:a(`${E}.hidePast`),checked:y,onCheckedChange:e=>b(e)}),(0,Y.jsx)(v,{variant:`secondary`,size:`sm`,children:a(`${E}.hidePastHint`)})]}),r&&(0,Y.jsx)(T,{variant:`error`,size:`sm`,icon:(0,Y.jsx)(w,{weight:`fill`}),title:a(`comments.commenter.banFailed`),description:r})]})}),(0,Y.jsx)(P.Actions,{dismissLabel:a(`common.cancel`),children:(0,Y.jsx)(P.Actions.Primary,{variant:`destructive`,loading:n,onClick:()=>{C(!0),!D&&i({until:H(o),subjects:[...c?[`email`]:[],...u?[`ip`]:[]],reasonCode:m,...g.trim()?{note:g.trim()}:{},hidePast:y})},"data-testid":`ban-confirm`,children:a(`${E}.confirm`)})})]})})}function pe({open:e,onOpenChange:t,busy:n,error:r,onConfirm:i}){let{t:a}=p(),[o,s]=(0,K.useState)(`anonymise`),[c,l]=(0,K.useState)(``),[u,d]=(0,K.useState)(!1);(0,K.useEffect)(()=>{e&&(s(`anonymise`),l(``),d(!1))},[e]);let f=`comments.commenter.eraseDialog`,m=c.trim()===``,h=[`name`,`email`,...o===`delete-text`?[`text`]:[],`live`,`audit`];return(0,Y.jsx)(P.Alert,{open:e,onOpenChange:t,dismissDisabled:n,children:(0,Y.jsxs)(P.Content,{size:`base`,closeLabel:a(`common.close`),children:[(0,Y.jsx)(P.Title,{children:a(`${f}.title`)}),(0,Y.jsx)(P.Description,{children:a(`${f}.description`)}),(0,Y.jsx)(P.Body,{children:(0,Y.jsxs)(`div`,{className:`grid gap-4`,"data-testid":`erase-dialog`,children:[(0,Y.jsxs)(N.Group,{appearance:`card`,legend:a(`${f}.title`),value:o,onValueChange:e=>s(e===`delete-text`?`delete-text`:`anonymise`),children:[(0,Y.jsx)(N.Item,{value:`anonymise`,label:a(`${f}.anonymise`),description:a(`${f}.anonymiseHint`)}),(0,Y.jsx)(N.Item,{value:`delete-text`,label:a(`${f}.deleteText`),description:a(`${f}.deleteTextHint`)})]}),(0,Y.jsxs)(z,{label:a(`${f}.consequences`),children:[(0,Y.jsx)(v,{as:`span`,bold:!0,children:a(`${f}.consequences`)}),(0,Y.jsx)(`div`,{className:`grid gap-1.5`,"data-testid":`erase-points`,children:h.map(e=>(0,Y.jsx)(v,{as:`span`,variant:`secondary`,size:`sm`,children:a(`${f}.points.${e}`)},e))})]}),(0,Y.jsx)(O,{label:a(`${f}.reason`),description:a(`${f}.reasonHint`),value:c,onValueChange:l,error:u&&m?a(`${f}.reasonRequired`):void 0,maxLength:500,autoResize:!0,minRows:2,maxRows:5,className:`w-full`,"data-testid":`erase-reason`}),r&&(0,Y.jsx)(T,{variant:`error`,size:`sm`,icon:(0,Y.jsx)(w,{weight:`fill`}),title:a(`comments.commenter.eraseFailed`),description:r})]})}),(0,Y.jsx)(P.Actions,{dismissLabel:a(`common.cancel`),children:(0,Y.jsx)(P.Actions.Primary,{variant:`destructive`,loading:n,onClick:()=>{d(!0),m||i({mode:o,reason:c.trim()})},"data-testid":`erase-confirm`,children:a(`${f}.confirm`)})})]})})}function Z(){let{t:e,locale:t,words:n}=p(),{siteId:r,commenterId:i}=c({from:`/sites/$siteId/commenters/$commenterId`}),g=u(),v=ee(),y=o(),x=!D().isPending,w=E(`commenters.data`),O=E(`comments.moderateAny`),[M,N]=(0,K.useState)(!1),[P,F]=(0,K.useState)(!1),I=s({queryKey:U(r,i),queryFn:()=>j.comments.commenter(r,i),enabled:x&&w.allowed,retry:(e,t)=>!A(t)&&e<1}),L=[...I.data?.comments??[]].sort((e,t)=>t.createdAt.localeCompare(e.createdAt)),R=L[0],z=s({queryKey:[...U(r,i),`bans`,R?.id??``],queryFn:()=>j.comments.bans(r,R?.id),enabled:x&&w.allowed&&O.allowed&&R!==void 0}),H=oe(z.data?.items??[]),G=()=>y.invalidateQueries({queryKey:W(r)}),q=l({mutationFn:e=>j.comments.ban(r,e),onSuccess:async t=>{N(!1),v.success(e(`comments.commenter.banned`),t.hidden>0?e(`comments.commenter.bannedHidden`,{count:t.hidden}):void 0),await G()}}),J=l({mutationFn:async()=>{for(let e of z.data?.items??[])await j.comments.liftBan(r,e.id)},onSuccess:async()=>{v.success(e(`comments.commenter.unbanned`)),await G()},onError:t=>v.error(e(`comments.commenter.unbanFailed`),t.message)}),X=l({mutationFn:()=>j.comments.exportCommenter(r,i),onSuccess:t=>{de(`commenter-${i}.json`,t),v.success(e(`comments.commenter.exported`))},onError:t=>v.error(e(`comments.commenter.exportFailed`),t.message)}),Z=l({mutationFn:e=>j.comments.eraseCommenter(r,i,e.mode,e.reason),onSuccess:async t=>{F(!1),v.success(e(`comments.commenter.erased`),e(`comments.commenter.erasedDescription`,{count:t.comments})),await G()}}),Q=[...new Set(L.flatMap(e=>e.author.kind===`erased`?[]:[e.author.name]))],$={};for(let e of L)$[e.status]=($[e.status]??0)+1;let me=te(I.error)===`comments_key_missing`||I.error instanceof k&&I.error.status===503,he=A(I.error),ge=(e,t)=>{(t=>g({to:`/sites/$siteId/comments/$nodeId`,params:{siteId:r,nodeId:e.nodeId},search:t}))(t===`reply`?{reply:e.id}:{comment:e.id})},_e=(0,Y.jsx)(ue,{locale:t,words:n,labels:{names:e(`comments.commenter.names`),email:e(`comments.commenter.email`),firstSeen:e(`comments.commenter.firstSeen`),lastSeen:e(`comments.commenter.lastSeen`),ban:e(`comments.commenter.ban`),counts:e(`comments.commenter.counts`),notBanned:e(`comments.commenter.notBanned`),bannedUntil:t=>e(`comments.commenter.bannedUntil`,{date:t}),bannedForever:e(`comments.commenter.bannedForever`),banSubject:{email:e(`comments.commenter.banSubject.email`),ip:e(`comments.commenter.banSubject.ip`)},loading:e(`common.loading`)},names:Q,counts:$,...I.data?{firstSeen:I.data.commenter.firstSeen}:{},...R?{lastSeen:R.createdAt}:{},ban:H?{until:H.until,subjects:(z.data?.items??[]).map(e=>e.subject),reason:d(e)[H.reasonCode]}:null,...I.data?{email:I.data.commenter.email}:{},canSeeEmail:w.allowed,loading:I.isPending,actions:(0,Y.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,"data-testid":`commenter-actions`,children:[H?(0,Y.jsx)(a,{variant:`secondary`,icon:(0,Y.jsx)(S,{}),loading:J.isPending,disabled:!O.allowed,title:O.reason,onClick:()=>J.mutate(),children:e(`comments.commenter.actions.unban`)}):(0,Y.jsx)(a,{variant:`secondary`,icon:(0,Y.jsx)(S,{}),disabled:!O.allowed||!R,title:O.reason,onClick:()=>{q.reset(),N(!0)},"data-testid":`commenter-ban`,children:e(`comments.commenter.actions.ban`)}),(0,Y.jsx)(a,{variant:`secondary`,icon:(0,Y.jsx)(b,{}),loading:X.isPending,onClick:()=>X.mutate(),"data-testid":`commenter-export`,children:e(`comments.commenter.actions.export`)}),(0,Y.jsx)(a,{variant:`secondary-destructive`,icon:(0,Y.jsx)(le,{}),onClick:()=>{Z.reset(),F(!0)},"data-testid":`commenter-erase`,children:e(`comments.commenter.actions.erase`)})]})});return(0,Y.jsxs)(re,{crumbs:(0,Y.jsx)(ne,{siteId:r,trail:[{label:e(`comments.title`),href:`/sites/${r}/comments`},{label:e(`comments.commenter.title`)}],copy:i}),title:Q[0]??e(`comments.commenter.title`),loading:I.isPending&&w.allowed,description:e(`comments.commenter.description`),children:[w.allowed?me?(0,Y.jsx)(T,{variant:`secondary`,icon:(0,Y.jsx)(_,{weight:`fill`}),title:e(`comments.commenter.title`),description:e(`comments.commenter.keysMissing`)}):he?(0,Y.jsx)(T,{variant:`secondary`,icon:(0,Y.jsx)(_,{weight:`fill`}),title:e(`comments.commenter.notFoundTitle`),description:e(`comments.commenter.notFoundDescription`)}):(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(ae,{error:I.error,onRetry:()=>void I.refetch()}),(0,Y.jsx)(se,{main:(0,Y.jsx)(B,{title:e(`comments.commenter.theirComments`),icon:(0,Y.jsx)(V,{size:16}),description:e(`comments.commenter.theirCommentsDescription`),flush:!0,children:I.data&&L.length===0?(0,Y.jsx)(ie,{icon:(0,Y.jsx)(V,{size:32,className:`text-kumo-inactive`}),title:e(`comments.commenter.noComments`),description:e(`comments.commenter.noCommentsDescription`)}):(0,Y.jsx)(`div`,{className:`divide-y divide-kumo-hairline`,"data-testid":`commenter-comments`,children:L.map(e=>(0,Y.jsx)(f,{comment:h(r,e),words:n,locale:t,actions:(0,Y.jsx)(m,{comment:e,onAction:t=>ge(e,t),hide:[`approve`,`restore`,`hide`,`spam`,`hold`,`delete`,`resolve`,`commenter`]})},e.id))})}),aside:(0,Y.jsx)(B,{title:e(`comments.commenter.identity`),icon:(0,Y.jsx)(C,{size:16}),children:_e})})]}):(0,Y.jsx)(ce,{reason:w.reason}),(0,Y.jsx)(fe,{open:M,onOpenChange:N,busy:q.isPending,error:q.error?.message,onConfirm:e=>R&&q.mutate({commentId:R.id,...e})}),(0,Y.jsx)(pe,{open:P,onOpenChange:F,busy:Z.isPending,error:Z.error?.message,onConfirm:e=>Z.mutate(e)})]})}export{Z as CommenterPage};
|
|
2
|
+
//# sourceMappingURL=CommenterPage-ClHD0q_d.js.map
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{r as e}from"./rolldown-runtime-hePW80VL.js";import{n as t,t as n}from"./IconBase.es-BZDpYMnj.js";import{i as r,r as i}from"./react-CDCuUAOg.js";import{t as a}from"./badge-dq8bx752b9dp7dst-D1xrG37q.js";import{o,t as s}from"./button-pa1bq9b85hawg41a-BcGpLLER.js";import{t as c}from"./link-cqyfjezntvr53rh7-CwZJ95XT.js";import{S as l,h as u}from"./tanstack-BiJ_7SEB.js";import{t as d}from"./ArrowClockwise.es-BA0pzb0Y.js";import{t as f}from"./ArrowCounterClockwise.es-Bn2jikgp.js";import{r as p,t as m}from"./DirectionalIcon-BKKMj3KT.js";import{n as h}from"./skeleton-line-m9dyh126t9k07jvg-CHsT8Hs3.js";import{t as g}from"./CheckCircle.es-XJ9Tr9Tu.js";import{t as _}from"./DotsThree.es-C-pT5SgE.js";import{t as v}from"./EyeSlash.es-YoqigHIr.js";import{t as y}from"./checkbox-lbo436duy7krxcsk-BmusNS83.js";import{t as b}from"./Prohibit.es-CAvPLn3v.js";import{t as x}from"./ShieldWarning.es-DPxoDMpT.js";import{t as S}from"./Trash.es-CxKLVMOQ.js";import{t as C}from"./UserCircle.es-D4ZFhshn.js";import{t as w}from"./Warning.es-LZXqwHRF.js";import{n as T,t as E}from"./banner-msnmqm7of2lck01x-DRzQHuca.js";import{i as D}from"./useMe-Cx8D2_vf.js";import{t as O}from"./Toast-MSfrCjAr.js";import{t as ee}from"./input-h5ox92gf13ge04hp-jfy1uD8s.js";import{a as te,t as k}from"./api-K4ZsoxSR.js";import{t as A}from"./dropdown-m53ji1d66mws89wh-CX3moquw.js";import{t as ne}from"./select-futox5zqr3r80y9a-5U5PtwHa.js";import{t as j}from"./layer-dialog-j5ywmzs46ccg6oqy-Dg9cqt2A.js";import{c as re}from"./intl-C22KAx_l.js";import{d as ie,l as ae,o as M,u as N}from"./comment-model-CArtcrfg.js";import{t as P}from"./InsetPanel-CHSg953_.js";import{c as F,u as I}from"./i18n-B-06kDA4.js";import{t as L}from"./api-errors-MOGC4Qux.js";import{W as R,at as oe}from"./index-DWzjnrnl.js";import{f as z,g as se,p as B,r as ce}from"./comments-B1PIozwq.js";var V=e(r(),1),H=new Map([[`bold`,V.createElement(V.Fragment,null,V.createElement(`path`,{d:`M236,200a12,12,0,0,1-24,0,84.09,84.09,0,0,0-84-84H61l27.52,27.51a12,12,0,0,1-17,17l-48-48a12,12,0,0,1,0-17l48-48a12,12,0,0,1,17,17L61,92h67A108.12,108.12,0,0,1,236,200Z`}))],[`fill`,V.createElement(V.Fragment,null,V.createElement(`path`,{d:`M232,200a8,8,0,0,1-16,0,88.1,88.1,0,0,0-88-88H88v40a8,8,0,0,1-13.66,5.66l-48-48a8,8,0,0,1,0-11.32l48-48A8,8,0,0,1,88,56V96h40A104.11,104.11,0,0,1,232,200Z`}))],[`regular`,V.createElement(V.Fragment,null,V.createElement(`path`,{d:`M232,200a8,8,0,0,1-16,0,88.1,88.1,0,0,0-88-88H51.31l34.35,34.34a8,8,0,0,1-11.32,11.32l-48-48a8,8,0,0,1,0-11.32l48-48A8,8,0,0,1,85.66,61.66L51.31,96H128A104.11,104.11,0,0,1,232,200Z`}))]]),U=V.forwardRef((e,t)=>V.createElement(n,{ref:t,...e,weights:H}));U.displayName=`ArrowBendUpLeftIcon`;var W=U,G=i(),le={pending:`warning`,approved:`success`,hidden:`secondary`,spam:`error`,deleted:`outline`};function K({status:e,words:t}){return(0,G.jsx)(`span`,{"data-comment-status":e,className:`inline-flex shrink-0`,children:(0,G.jsx)(a,{variant:le[e],children:t.status[e]})})}var ue={"spam-suspect":`warning`,toxic:`error`,"off-topic":`outline`,question:`info`,"needs-reply":`info`,praise:`outline`,"personal-data":`warning`,links:`outline`,"watch-word":`warning`,"instruction-like":`warning`};function de({label:e,words:n,locale:r}){let i=e.confidence===void 0?void 0:re(r,{style:`percent`}).format(e.confidence/100),s=`${n.labelHint[e.label]} ${n.labelSource(e,i)}`;return(0,G.jsx)(o,{content:s,render:n=>(0,G.jsx)(`button`,{...n,type:`button`,"data-comment-label":e.label,"data-label-source":e.source,className:t(n.className,`inline-flex shrink-0 cursor-default rounded-full focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-kumo-brand`)}),children:(0,G.jsxs)(a,{variant:ue[e.label],icon:e.source===`agent`?(0,G.jsx)(R,{size:16}):void 0,children:[n.label[e.label],(0,G.jsxs)(`span`,{className:`sr-only`,children:[`. `,s]})]})})}function fe({labels:e,words:t,locale:n}){return!e||e.length===0?null:(0,G.jsx)(`ul`,{"aria-label":t.labels,className:`m-0 flex list-none flex-wrap items-center gap-1.5 p-0`,children:e.map(e=>(0,G.jsx)(`li`,{className:`flex`,children:(0,G.jsx)(de,{label:e,words:t,locale:n})},`${e.label}:${e.source}`))})}function q({author:e,words:t,hideKind:n,id:r}){if(e.kind===`erased`)return(0,G.jsx)(`span`,{id:r,className:`inline-flex min-w-0`,"data-author-kind":`erased`,children:(0,G.jsx)(h,{as:`span`,variant:`secondary`,children:t.author.anonymous})});let i=e.kind===`staff`?t.author[e.badge]:e.kind===`reader`?t.author.reader:t.author.guest;return(0,G.jsxs)(`span`,{className:`inline-flex min-w-0 flex-wrap items-center gap-x-2 gap-y-1`,"data-author-kind":e.kind,children:[(0,G.jsx)(`span`,{id:r,dir:`auto`,className:`min-w-0 wrap-anywhere`,children:(0,G.jsx)(h,{as:`span`,bold:!0,children:e.name})}),!n&&(0,G.jsx)(a,{variant:e.kind===`staff`?`info`:`outline`,children:i})]})}function J({at:e,locale:n,now:r}){let{relative:i,absolute:a}=ae(e,n,r);return(0,G.jsx)(o,{content:a,render:n=>(0,G.jsx)(`time`,{...n,dateTime:e,className:t(n.className,`inline-flex shrink-0`)}),children:(0,G.jsx)(h,{as:`span`,variant:`secondary`,size:`sm`,children:i})})}function pe({words:e,children:t}){let n=(0,V.useId)();return(0,G.jsx)(`section`,{"aria-labelledby":n,"data-untrusted":!0,className:`min-w-0`,children:(0,G.jsxs)(P,{variant:`recessed`,children:[(0,G.jsxs)(`div`,{className:`flex min-w-0 items-start gap-2`,children:[(0,G.jsx)(`span`,{className:`flex h-lh shrink-0 items-center text-kumo-warning`,"aria-hidden":!0,children:(0,G.jsx)(x,{size:16,weight:`fill`})}),(0,G.jsxs)(`span`,{className:`grid min-w-0 gap-0.5`,children:[(0,G.jsx)(`span`,{id:n,children:(0,G.jsx)(h,{as:`span`,bold:!0,size:`sm`,children:e.untrusted.title})}),(0,G.jsx)(h,{as:`span`,variant:`secondary`,size:`sm`,children:e.untrusted.description})]})]}),t]})})}var me={1:`line-clamp-1`,2:`line-clamp-2`,3:`line-clamp-3`,4:`line-clamp-4`};function Y({s:e,newTabLabel:t}){return e.kind===`text`?e.text:(0,G.jsxs)(c,{render:t=>(0,G.jsx)(`a`,{...t,href:e.href}),target:`_blank`,rel:`ugc nofollow noopener noreferrer`,className:`inline wrap-anywhere`,"data-comment-link":!0,children:[e.text,t&&(0,G.jsxs)(`span`,{className:`sr-only`,children:[` (`,t,`)`]})]})}function X({text:e,clamp:n,newTabLabel:r,muted:i,className:a}){let o=(0,V.useMemo)(()=>ie(e),[e]),s=n?me[n]??`line-clamp-4`:void 0,c=e=>e.map((e,t)=>(0,G.jsxs)(`span`,{children:[t>0&&(0,G.jsx)(`br`,{}),e.map((e,t)=>(0,G.jsx)(Y,{s:e,newTabLabel:r},t))]},t));return s?(0,G.jsx)(`div`,{dir:`auto`,"data-comment-text":!0,className:t(`min-w-0 wrap-anywhere`,s,a),children:(0,G.jsx)(h,{as:`span`,variant:i?`secondary`:`body`,children:o.flat().map((e,t)=>(0,G.jsxs)(`span`,{children:[t>0&&` `,e.map((e,t)=>(0,G.jsx)(Y,{s:e,newTabLabel:r},t))]},t))})}):(0,G.jsx)(`div`,{dir:`auto`,"data-comment-text":!0,className:t(`grid min-w-0 gap-2 wrap-anywhere`,a),children:o.map((e,t)=>(0,G.jsx)(h,{as:`p`,variant:i?`secondary`:`body`,children:c(e)},t))})}function he({comment:e,words:n,locale:r,now:i,showEntry:o,inReplyTo:s,onJump:l,selection:u,actions:d,children:f,highlighted:p,className:g}){let _=(0,V.useId)(),v=e.body?.text,b=e.status===`deleted`||!v,x=e.status===`hidden`||e.status===`spam`,S=o??!0?e.entry:void 0,C=e.author.kind===`staff`?e.author.draftedBy:void 0,w=e.reports?.count??0,T=b?(0,G.jsx)(h,{variant:`secondary`,children:n.removed}):(0,G.jsx)(X,{text:v,muted:x,newTabLabel:n.newTab}),E=S||s||w>0||C;return(0,G.jsxs)(`article`,{id:M(e.id),tabIndex:-1,"aria-labelledby":_,"data-comment-id":e.id,"data-status":e.status,className:t(`flex min-w-0 scroll-mt-20 items-start gap-3 px-4 py-3 focus:outline-none sm:px-5`,p&&`bg-kumo-tint`,g),children:[u&&(0,G.jsx)(`span`,{className:`flex h-lh shrink-0 items-center`,children:(0,G.jsx)(y,{checked:u.checked,onCheckedChange:e=>u.onCheckedChange(e===!0),"aria-label":u.label})}),(0,G.jsxs)(`div`,{className:`grid min-w-0 flex-1 gap-2`,children:[(0,G.jsxs)(`header`,{className:`flex min-w-0 items-start justify-between gap-3`,children:[(0,G.jsxs)(`div`,{className:`flex min-w-0 flex-1 flex-wrap items-center gap-x-2 gap-y-1`,children:[(0,G.jsx)(q,{author:e.author,words:n,id:_}),(0,G.jsx)(J,{at:e.createdAt,locale:r,...i?{now:i}:{}}),e.editedAt&&(0,G.jsxs)(h,{as:`span`,variant:`secondary`,size:`sm`,children:[`· `,n.edited]}),e.proof===`none`&&(0,G.jsxs)(h,{as:`span`,variant:`secondary`,size:`sm`,children:[`· `,n.noScript]})]}),(0,G.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2`,children:[(0,G.jsx)(K,{status:e.status,words:n}),d]})]}),E&&(0,G.jsxs)(`div`,{className:`flex min-w-0 flex-wrap items-center gap-x-3 gap-y-1`,children:[S&&(0,G.jsxs)(`span`,{className:`inline-flex min-w-0 flex-wrap items-baseline gap-x-2`,children:[(0,G.jsx)(h,{as:`span`,variant:`secondary`,size:`sm`,children:S.href?(0,G.jsx)(c,{href:S.href,variant:`current`,children:n.onEntry(S.title)}):n.onEntry(S.title)}),S.path&&(0,G.jsx)(h,{as:`span`,variant:`mono-secondary`,children:S.path})]}),s&&(0,G.jsxs)(`span`,{className:`inline-flex min-w-0 items-center gap-1 text-kumo-subtle`,children:[(0,G.jsx)(m,{icon:W,size:16,"aria-hidden":!0}),(0,G.jsx)(h,{as:`span`,variant:`secondary`,size:`sm`,children:(0,G.jsx)(c,{render:e=>(0,G.jsx)(`a`,{...e,href:`#${M(s.id)}`}),variant:`current`,onClick:e=>{l&&(e.preventDefault(),l(s.id))},"data-in-reply-to":s.id,children:n.inReplyTo(s.name)})})]}),w>0&&(0,G.jsx)(a,{variant:`error`,children:n.reports(w)}),C&&(0,G.jsxs)(`span`,{className:`inline-flex min-w-0 items-center gap-1 text-kumo-subtle`,children:[(0,G.jsx)(R,{size:16,"aria-hidden":!0}),(0,G.jsx)(h,{as:`span`,variant:`secondary`,size:`sm`,children:n.draftedBy(C.name??C.id)})]})]}),!b&&N(e.labels)?(0,G.jsx)(pe,{words:n,children:T}):T,(0,G.jsx)(fe,{labels:e.labels,words:n,locale:r}),f]})]})}function ge(e){let t=`comments.words`;return{status:{pending:e(`${t}.status.pending`),approved:e(`${t}.status.approved`),hidden:e(`${t}.status.hidden`),spam:e(`${t}.status.spam`),deleted:e(`${t}.status.deleted`)},label:{"spam-suspect":e(`${t}.label.spam-suspect`),toxic:e(`${t}.label.toxic`),"off-topic":e(`${t}.label.off-topic`),question:e(`${t}.label.question`),"needs-reply":e(`${t}.label.needs-reply`),praise:e(`${t}.label.praise`),"personal-data":e(`${t}.label.personal-data`),links:e(`${t}.label.links`),"watch-word":e(`${t}.label.watch-word`),"instruction-like":e(`${t}.label.instruction-like`)},labelHint:{"spam-suspect":e(`${t}.labelHint.spam-suspect`),toxic:e(`${t}.labelHint.toxic`),"off-topic":e(`${t}.labelHint.off-topic`),question:e(`${t}.labelHint.question`),"needs-reply":e(`${t}.labelHint.needs-reply`),praise:e(`${t}.labelHint.praise`),"personal-data":e(`${t}.labelHint.personal-data`),links:e(`${t}.labelHint.links`),"watch-word":e(`${t}.labelHint.watch-word`),"instruction-like":e(`${t}.labelHint.instruction-like`)},labelSource:(n,r)=>{if(n.source===`rule`)return e(`${t}.source.rule`);if(n.source===`classifier`)return r?e(`${t}.source.classifierSure`,{confidence:r}):e(`${t}.source.classifier`);if(n.source===`agent`){let i=n.by?.name??e(`${t}.source.anAgent`);return r?e(`${t}.source.agentSure`,{name:i,confidence:r}):e(`${t}.source.agent`,{name:i})}return e(`${t}.source.person`,{name:n.by?.name??e(`${t}.source.someone`)})},author:{guest:e(`${t}.author.guest`),reader:e(`${t}.author.reader`),author:e(`${t}.author.author`),team:e(`${t}.author.team`),anonymous:e(`${t}.author.anonymous`)},draftedBy:n=>e(`${t}.draftedBy`,{agent:n}),inReplyTo:n=>e(`${t}.inReplyTo`,{name:n}),onEntry:n=>e(`${t}.onEntry`,{title:n}),removed:e(`${t}.removed`),edited:e(`${t}.edited`),noScript:e(`${t}.noScript`),reports:n=>e(`${t}.reports`,{count:n}),labels:e(`${t}.labels`),newTab:e(`${t}.newTab`),untrusted:{title:e(`${t}.untrustedTitle`),description:e(`${t}.untrustedDescription`)}}}function _e(e){let t=`comments.moderation`;return{action:{approve:e(`${t}.action.approve`),hide:e(`${t}.action.hide`),spam:e(`${t}.action.spam`),hold:e(`${t}.action.hold`),restore:e(`${t}.action.restore`),delete:e(`${t}.action.delete`),erase:e(`${t}.action.erase`),label:e(`${t}.action.label`),reply:e(`${t}.action.reply`)},effect:{approve:e(`${t}.effect.approve`),hide:e(`${t}.effect.hide`),spam:e(`${t}.effect.spam`),hold:e(`${t}.effect.hold`),restore:e(`${t}.effect.restore`),delete:e(`${t}.effect.delete`),erase:e(`${t}.effect.erase`)},reason:Z(e),actorKind:{human:e(`${t}.actorKind.human`),agent:e(`${t}.actorKind.agent`),system:e(`${t}.actorKind.system`)},approvedFor:(n,r)=>e(`${t}.approvedFor`,{person:n,agent:r})}}function Z(e){let t=`comments.moderation.reason`;return{spam:e(`${t}.spam`),abuse:e(`${t}.abuse`),"off-topic":e(`${t}.off-topic`),"personal-data":e(`${t}.personal-data`),"illegal-content":e(`${t}.illegal-content`),"legal-order":e(`${t}.legal-order`),"author-request":e(`${t}.author-request`),"erasure-request":e(`${t}.erasure-request`),duplicate:e(`${t}.duplicate`),other:e(`${t}.other`)}}function ve(e){let t=`comments.statement`;return{title:e(`${t}.title`),decision:e(`${t}.decision`),grounds:e(`${t}.grounds`),facts:e(`${t}.facts`),noFacts:e(`${t}.noFacts`),automated:e(`${t}.automated`),automatedYes:e(`${t}.automatedYes`),automatedNo:e(`${t}.automatedNo`),decidedBy:e(`${t}.decidedBy`),decidedAt:e(`${t}.decidedAt`),noGrounds:e(`${t}.noGrounds`)}}function ye(e){return{title:t=>e(`comments.history.title`,{count:t}),empty:e(`comments.history.empty`)}}function be(e){let t=`comments.reports`;return{title:e(`${t}.title`),summary:(n,r)=>e(`${t}.summary`,{open:n,total:r}),reason:{spam:e(`${t}.reason.spam`),abuse:e(`${t}.reason.abuse`),"personal-data":e(`${t}.reason.personal-data`),"illegal-content":e(`${t}.reason.illegal-content`),other:e(`${t}.reason.other`)},open:e(`${t}.open`),resolved:e(`${t}.resolved`),noDetails:e(`${t}.noDetails`),details:e(`${t}.details`)}}function xe(e,t){return{thread:e(`comments.thread.listLabel`,{title:t}),replies:t=>e(`comments.thread.replies`,{name:t}),showMore:t=>e(`comments.thread.showMore`,{count:t}),showFewer:e(`comments.thread.showFewer`),loading:e(`comments.loading`)}}function Q(){let{t:e,locale:t}=F(`comments`);return{t:e,locale:t,words:ge(e)}}function Se(e,t){let{entry:n,...r}=t;return{...r,...t.entry?{entry:{title:t.entry.title,path:t.entry.path,href:`/sites/${e}/comments/${encodeURIComponent(t.nodeId)}`}}:{}}}function Ce(e){let t=[`approve`,`hide`,`spam`,`hold`,`restore`,`delete`,`erase`,`label`,`reply`].includes(e.action)?e.action:`label`;return{id:e.id,action:t,actor:e.actor,at:e.at,automated:e.automated,...e.reasonCode?{reasonCode:e.reasonCode}:{},...e.note?{note:e.note}:{}}}var $=e=>e instanceof te&&e.status===409;function we(e,t){let n=I(`comments`),r=O(),i=l();return u({mutationFn:t=>k.comments.moderate(e,t),onSuccess:async(a,o)=>{let s=se(a.results),c=o.action,l=a.results.length;if(s.failed.length===0)r.success(n(`comments.results.done`,{count:l,action:c}),a.purge===`queued`?n(`comments.results.purgeQueued`):void 0);else{let e=Object.entries(s.byError).map(([e,t])=>n(`comments.results.errors.${e}`,{count:t}));r.error(n(`comments.results.partialTitle`,{done:s.done.length,total:l,action:c}),`${n(`comments.results.partialDescription`)} ${e.join(` · `)}`)}t?.(s,o.action),await Promise.all([i.invalidateQueries({queryKey:z(e)}),i.invalidateQueries({queryKey:[`notifications`]})])},onError:e=>r.error($(e)?n(`comments.results.conflictTitle`):n(`comments.results.failed`),$(e)?n(`comments.results.conflictDescription`):L(n,e))})}function Te(e){let t=I(`comments`),n=O(),r=l();return u({mutationFn:t=>k.comments.remove(e,t.comment.id,t.comment.rev,t.reasonCode,t.note),onSuccess:async()=>{n.success(t(`comments.moderation.action.delete`),t(`comments.results.purgeQueued`)),await r.invalidateQueries({queryKey:z(e)})},onError:e=>n.error($(e)?t(`comments.results.conflictTitle`):t(`comments.results.failed`),$(e)?t(`comments.results.conflictDescription`):L(t,e))})}function Ee({error:e}){let t=I(`comments`);return e?(0,G.jsx)(`span`,{className:`inline-flex`,"data-moderation-error":e,children:(0,G.jsx)(a,{variant:`error`,icon:(0,G.jsx)(T,{size:16}),children:t(`comments.results.failedBadge.${e}`)})}):null}function De({open:e,onOpenChange:t,action:n,count:r,busy:i,error:a,onConfirm:o}){let s=I(`comments`),c=Z(s),[l,u]=(0,V.useState)(B(n)),[d,f]=(0,V.useState)(``);(0,V.useEffect)(()=>{e&&(u(B(n)),f(``))},[e,n]);let p=n===`delete`?s(`comments.dialog.deleteTitle`):s(n===`spam`?`comments.dialog.spamTitle`:`comments.dialog.hideTitle`,{count:r}),m=s(n===`delete`?`comments.dialog.deleteDescription`:n===`spam`?`comments.dialog.spamDescription`:`comments.dialog.hideDescription`),h=s(n===`delete`?`comments.dialog.deleteConfirm`:n===`spam`?`comments.dialog.spamConfirm`:`comments.dialog.hideConfirm`),g=n===`delete`?j.Alert:j.Root;return(0,G.jsx)(g,{open:e,onOpenChange:t,dismissDisabled:i,children:(0,G.jsxs)(j.Content,{size:`sm`,closeLabel:s(`common.close`),children:[(0,G.jsx)(j.Title,{children:p}),(0,G.jsx)(j.Description,{children:m}),(0,G.jsx)(j.Body,{children:(0,G.jsxs)(`div`,{className:`grid gap-4`,"data-testid":`moderate-dialog`,"data-action":n,children:[(0,G.jsx)(ne,{label:s(`comments.dialog.reason`),description:s(`comments.dialog.reasonHint`),value:l,onValueChange:e=>u(e??B(n)),items:c,className:`w-full`,"data-testid":`moderate-reason`}),(0,G.jsx)(ee,{label:s(`comments.dialog.note`),description:s(`comments.dialog.noteHint`),value:d,onValueChange:f,maxLength:500,autoResize:!0,minRows:2,maxRows:5,className:`w-full`,"data-testid":`moderate-note`}),a&&(0,G.jsx)(E,{variant:`error`,size:`sm`,icon:(0,G.jsx)(T,{weight:`fill`}),title:s(`comments.results.failed`),description:a})]})}),(0,G.jsx)(j.Actions,{dismissLabel:s(`common.cancel`),children:(0,G.jsx)(j.Actions.Primary,{variant:n===`delete`?`destructive`:`primary`,loading:i,onClick:()=>o({reasonCode:l,...d.trim()?{note:d.trim()}:{}}),"data-testid":`moderate-confirm`,children:h})})]})})}function Oe({comment:e,onAction:t,hide:n=[],notOwnReason:r}){let i=I(`comments`),a=D(`comments.moderate`),c=D(`comments.moderateAny`),l=D(`comments.reply`),u={reason:a.reason??r},m={reason:l.reason??r},h=D(`commenters.data`),y=ce(e.status),x={approve:g,restore:f,hide:v,spam:b,hold:d},T={approve:i(`comments.actions.approve`),restore:i(`comments.actions.restore`),hide:i(`comments.actions.hide`),spam:i(`comments.actions.spam`),hold:i(`comments.actions.hold`)},E=(e,r,i,a,s)=>n.includes(e)?null:a?(0,G.jsx)(o,{content:a,side:`left`,render:(0,G.jsx)(`div`,{}),children:(0,G.jsx)(A.Item,{icon:i,disabled:!0,...s?{variant:s}:{},children:r})},e):(0,G.jsx)(A.Item,{icon:i,onClick:()=>t(e),"data-comment-action":e,...s?{variant:s}:{},children:r},e);return(0,G.jsxs)(A,{children:[(0,G.jsx)(o,{content:i(`comments.actions.menu`),render:(0,G.jsx)(A.Trigger,{render:(0,G.jsx)(s,{variant:`ghost`,size:`sm`,shape:`square`,icon:(0,G.jsx)(_,{weight:`bold`}),"aria-label":i(`comments.actions.menu`),"data-testid":`comment-menu`})})}),(0,G.jsxs)(A.Content,{align:`end`,children:[y.map(e=>E(e,T[e],x[e],u.reason)),e.status!==`deleted`&&E(`delete`,i(`comments.actions.delete`),S,c.reason,`danger`),(e.reports?.count??0)>0&&E(`resolve`,i(`comments.actions.resolve`),w,u.reason),(0,G.jsx)(A.Separator,{}),e.status===`approved`&&E(`reply`,i(`comments.actions.reply`),p(W),m.reason),E(`openThread`,i(`comments.actions.openThread`),oe,void 0),E(`commenter`,i(`comments.actions.commenter`),C,h.reason)]})]})}function ke({title:e,description:t,onReload:n,reloading:r}){let i=I(`comments`);return(0,G.jsx)(`div`,{role:`alert`,"data-testid":`comment-conflict`,children:(0,G.jsx)(E,{variant:`alert`,icon:(0,G.jsx)(w,{weight:`fill`}),title:e,description:t,action:(0,G.jsx)(E.Action,{variant:`secondary`,icon:(0,G.jsx)(d,{}),onClick:n,loading:r,children:i(`comments.results.reload`)})})})}export{X as _,Ce as a,J as b,Z as c,ve as d,xe as f,he as g,we as h,De as i,be as l,Te as m,ke as n,ye as o,Q as p,Ee as r,_e as s,Oe as t,Se as u,q as v,K as y};
|
|
2
|
+
//# sourceMappingURL=Comments-sU22Wp1j.js.map
|
|
@@ -0,0 +1,2 @@
|
|
|
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{n as i,r as a,t as o}from"./button-pa1bq9b85hawg41a-BcGpLLER.js";import{S as s,_ as c,d as l,h as u,l as d,u as f}from"./tanstack-BiJ_7SEB.js";import{g as p,h as m,i as h,m as g,n as _,p as v,r as ee,t as te,u as ne}from"./Comments-sU22Wp1j.js";import{t as y}from"./ArrowCounterClockwise.es-Bn2jikgp.js";import{a as re,r as ie}from"./DirectionalIcon-BKKMj3KT.js";import{t as ae}from"./pagination-oaenm9t7ou3lmcgw-DjC4Zsp5.js";import{m as oe,n as b,t as x}from"./skeleton-line-m9dyh126t9k07jvg-CHsT8Hs3.js";import{t as S}from"./CheckCircle.es-XJ9Tr9Tu.js";import{t as C}from"./ClockCountdown.es-BR_zz6vi.js";import{t as w}from"./DownloadSimple.es-Cq4-UK-k.js";import{t as T}from"./EyeSlash.es-YoqigHIr.js";import{t as E}from"./checkbox-lbo436duy7krxcsk-BmusNS83.js";import{t as D}from"./Prohibit.es-CAvPLn3v.js";import{t as O}from"./Question.es-BqQtQle2.js";import{t as k}from"./Warning.es-LZXqwHRF.js";import{t as A}from"./banner-msnmqm7of2lck01x-DRzQHuca.js";import{i as j,o as se}from"./useMe-Cx8D2_vf.js";import{t as ce}from"./Toast-MSfrCjAr.js";import{t as M}from"./toolbar-h213d8e22yjh5cwq-CipG_KSA.js";import{c as le,p as ue,t as N}from"./api-K4ZsoxSR.js";import{t as P}from"./meter-majprsslwmpbmkzg-DBo7nISC.js";import{t as F}from"./select-futox5zqr3r80y9a-5U5PtwHa.js";import{n as de}from"./Crumbs-DOM6tT0l.js";import{t as fe}from"./empty-hkvg3is3uc6dj1at-BGNUzomN.js";import{t as I}from"./Settings-PNFH1Q2d.js";import{r as pe}from"./format-DGE2c-4V.js";import{r as L,t as R}from"./comment-model-CArtcrfg.js";import{t as z}from"./SectionCard-253RWE03.js";import{t as me}from"./api-errors-MOGC4Qux.js";import{n as he}from"./usePendingApprovals-B6g17X7P.js";import{$ as B,C as ge,F as V,W as _e,X as ve,at as ye,p as be,x as xe}from"./index-DWzjnrnl.js";import{t as Se}from"./ListToolbar-D0cz9A9i.js";import{S as Ce,_ as we,b as Te,f as H,h as Ee,m as De,o as Oe}from"./comments-B1PIozwq.js";var U=e(n(),1),W=r();function ke({selected:e,total:n,onSelectAll:r,onClear:i,actions:a,labels:s,className:c}){let l=(0,U.useId)(),u=n>0&&e>=n,d=e>0&&!u;return(0,W.jsxs)(`fieldset`,{"aria-label":s.bar,onKeyDown:t=>{t.key===`Escape`&&e>0&&(t.stopPropagation(),i())},"data-testid":`bulk-action-bar`,className:t(`m-0 flex min-h-9 min-w-0 flex-wrap items-center justify-between gap-x-4 gap-y-2 rounded-lg bg-kumo-tint px-3 py-1 ring ring-kumo-line`,c),children:[(0,W.jsxs)(`div`,{className:`flex min-w-0 items-center gap-3`,children:[(0,W.jsx)(E,{checked:u,indeterminate:d,disabled:n===0,onCheckedChange:e=>r(e===!0),"aria-label":s.selectAll}),(0,W.jsx)(`span`,{"aria-live":`polite`,"aria-atomic":`true`,className:`min-w-0`,children:(0,W.jsx)(b,{as:`span`,bold:!0,children:s.selected(e)})})]}),(0,W.jsxs)(`div`,{className:`flex min-w-0 flex-wrap items-center gap-2`,children:[a.map(t=>{let n=t.disabled?t.disabledReason:void 0;return(0,W.jsxs)(`span`,{className:`inline-flex`,"data-bulk-action":t.id,children:[(0,W.jsx)(o,{variant:t.variant??`secondary`,size:`sm`,icon:t.icon,disabled:t.disabled||e===0,loading:t.loading,onClick:t.onClick,...n?{title:n,"aria-describedby":`${l}-${t.id}`}:{},children:t.label}),n&&(0,W.jsx)(`span`,{id:`${l}-${t.id}`,className:`sr-only`,children:n})]},t.id)}),(0,W.jsx)(o,{variant:`ghost`,size:`sm`,icon:(0,W.jsx)(V,{size:16}),onClick:i,children:s.clear})]})]})}var Ae={status:`all`,entry:`all`,label:`all`,actor:`all`,date:`all`},G=[`all`,`24h`,`7d`,`30d`,`90d`];function K(e,t=[`status`,`entry`,`label`,`actor`,`date`]){return t.some(t=>e[t]!==`all`)}function je(e,t=Date.now()){let n={all:0,"24h":24,"7d":168,"30d":720,"90d":2160}[e];return n?new Date(t-n*36e5).toISOString():void 0}function Me({value:e,onChange:n,labels:r,facets:i=[`entry`,`label`,`actor`,`date`],entries:a=[],entriesLoading:s,className:c}){let l=(t,r)=>n({...e,[t]:r}),u={status:Object.fromEntries([`all`,...L,`reported`].map(e=>[e,r.status[e]])),entry:{all:r.allEntries,...Object.fromEntries(a.map(e=>[e.value,e.label]))},label:{all:r.allLabels,...Object.fromEntries(R.map(e=>[e,r.label[e]]))},actor:{all:r.actor.all,agents:r.actor.agents},date:Object.fromEntries(G.map(e=>[e,r.date[e]]))},d=K(e,i);return(0,W.jsxs)(`div`,{className:t(`flex min-w-0 flex-wrap items-center gap-2`,c),"data-testid":`comment-filters`,children:[d&&(0,W.jsx)(o,{variant:`ghost`,onClick:()=>n({...e,...Object.fromEntries(i.map(e=>[e,`all`]))}),children:r.clear}),(0,W.jsx)(M,{"aria-label":r.toolbar,className:`min-w-0 max-w-full overflow-x-auto [scrollbar-width:none]`,children:i.map(t=>(0,W.jsx)(F,{"aria-label":r.facet[t],value:e[t],onValueChange:e=>l(t,e??`all`),items:u[t],loading:t===`entry`&&s,render:(0,W.jsx)(M.Button,{}),"data-comment-filter":t},t))})]})}function Ne(e,t){let n=`comments.filters`;return{toolbar:e(`${n}.toolbar`),facet:{status:e(`${n}.facet.status`),entry:e(`${n}.facet.entry`),label:e(`${n}.facet.label`),actor:e(`${n}.facet.actor`),date:e(`${n}.facet.date`)},status:{all:e(`${n}.status.all`),pending:e(`${n}.status.pending`),approved:e(`${n}.status.approved`),hidden:e(`${n}.status.hidden`),spam:e(`${n}.status.spam`),deleted:e(`${n}.status.deleted`),reported:e(`${n}.status.reported`)},allEntries:e(`${n}.allEntries`),allLabels:e(`${n}.allLabels`),label:t.label,actor:{all:e(`${n}.actor.all`),agents:e(`${n}.actor.agents`)},date:{all:e(`${n}.date.all`),"24h":e(`${n}.date.24h`),"7d":e(`${n}.date.7d`),"30d":e(`${n}.date.30d`),"90d":e(`${n}.date.90d`)},clear:e(`${n}.clear`)}}var Pe={approve:S,restore:y,hide:T,spam:D,hold:C};function Fe({siteId:e,t}){let n=s(),r=ce(),a=j(`comments.settings`),l=j(`comments.moderateAny`),d=j(`commenters.data`),[f,p]=(0,U.useState)(),m=async n=>{p(n?`personal`:`plain`);try{let t=await N.comments.exportFile(e,n),r=URL.createObjectURL(t),i=document.createElement(`a`);i.href=r,i.download=`comments-${e}${n?`-personal`:``}.jsonl`,i.click(),setTimeout(()=>URL.revokeObjectURL(r),1e3)}catch(e){r.error(t(n?`comments.aside.exportPersonal`:`comments.aside.export`),me(t,e))}finally{p(void 0)}},h=c({queryKey:[...H(e),`summary`,`today`],queryFn:()=>N.comments.summary(e,`today`),retry:!1}),g=u({mutationFn:()=>N.comments.purgeSiteCache(e),onSuccess:async()=>{r.success(t(`comments.aside.purged`)),await n.invalidateQueries({queryKey:H(e)})},onError:e=>r.error(t(`comments.aside.purgeFailed`),e.message)}),_=h.data?.dailyCap,v=h.data?.purge.pending??0;return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(z,{title:t(`comments.aside.howTitle`),icon:(0,W.jsx)(O,{size:16}),children:(0,W.jsxs)(`dl`,{className:`-my-3 divide-y divide-kumo-hairline`,children:[(0,W.jsx)(I,{label:t(`comments.aside.how.wait`),hint:t(`comments.aside.how.waitHint`),children:null}),(0,W.jsx)(I,{label:t(`comments.aside.how.agents`),hint:t(`comments.aside.how.agentsHint`),children:null}),(0,W.jsx)(I,{label:t(`comments.aside.how.reports`),hint:t(`comments.aside.how.reportsHint`),children:null})]})}),(0,W.jsx)(z,{title:t(`comments.aside.todayTitle`),icon:(0,W.jsx)(C,{size:16}),footer:(0,W.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,W.jsx)(i,{href:`/sites/${e}/settings#comments`,variant:`secondary`,size:`sm`,icon:B,disabled:!a.allowed,title:a.reason,children:t(`comments.aside.settings`)}),l.allowed&&(0,W.jsx)(o,{variant:`ghost`,size:`sm`,icon:w,loading:f===`plain`,onClick:()=>void m(!1),"data-testid":`comments-export`,children:t(`comments.aside.export`)}),l.allowed&&d.allowed&&(0,W.jsx)(o,{variant:`ghost`,size:`sm`,icon:w,loading:f===`personal`,onClick:()=>void m(!0),children:t(`comments.aside.exportPersonal`)})]}),children:_?(0,W.jsxs)(`div`,{className:`grid gap-3`,"data-testid":`comments-today`,children:[(0,W.jsx)(P,{label:t(`comments.aside.cap`),value:_.used,max:Math.max(_.cap,1),customValue:t(`comments.aside.capValue`,{used:_.used,cap:_.cap})}),_.paused&&(0,W.jsx)(A,{variant:`alert`,size:`sm`,icon:(0,W.jsx)(k,{weight:`fill`}),title:t(`comments.aside.paused`)}),v>0&&(0,W.jsxs)(`div`,{className:`grid gap-2`,"data-testid":`comments-purging`,children:[(0,W.jsxs)(`div`,{className:`grid gap-0.5`,children:[(0,W.jsx)(b,{bold:!0,as:`span`,children:t(`comments.aside.purging`)}),(0,W.jsx)(b,{variant:`secondary`,size:`sm`,as:`span`,children:t(`comments.aside.purgingHint`,{count:v})})]}),l.allowed&&(0,W.jsx)(`span`,{children:(0,W.jsx)(o,{variant:`secondary`,size:`sm`,loading:g.isPending,onClick:()=>g.mutate(),children:t(`comments.aside.purgeNow`)})})]})]}):(0,W.jsxs)(`div`,{className:`grid gap-2`,role:`status`,children:[(0,W.jsx)(`span`,{className:`sr-only`,children:t(`common.loading`)}),(0,W.jsx)(x,{minWidth:40,maxWidth:60}),(0,W.jsx)(x,{minWidth:80,maxWidth:100})]})})]})}function Ie({label:e}){return(0,W.jsxs)(`div`,{className:`divide-y divide-kumo-hairline`,"data-testid":`comments-loading`,children:[(0,W.jsx)(`span`,{role:`status`,className:`sr-only`,children:e}),[0,1,2,3].map(e=>(0,W.jsxs)(`div`,{"aria-hidden":!0,className:`grid gap-2 px-4 py-3 sm:px-5`,children:[(0,W.jsx)(x,{minWidth:20,maxWidth:35}),(0,W.jsx)(x,{minWidth:60,maxWidth:95}),(0,W.jsx)(x,{minWidth:30,maxWidth:60})]},e))]})}function q(){let{t:e,locale:t,words:n}=v(),{siteId:r}=l({from:`/sites/$siteId`}),o=f({from:`/sites/$siteId/comments`}),s=d(),u=ce(),y=!se().isPending,b=j(`comments.read`),x=j(`comments.moderate`),S=o.tab??`pending`,[C,w]=(0,U.useState)(Ae),[T,E]=(0,U.useState)(``),[D,O]=(0,U.useState)([void 0]),[k,M]=(0,U.useState)(1),[P,F]=(0,U.useState)(()=>new Set),[I,L]=(0,U.useState)(()=>new Map),[R,z]=(0,U.useState)({open:!1,action:`hide`,ids:[]}),[B,V]=(0,U.useState)(),G=(0,U.useMemo)(()=>je(C.date),[C.date]),K=D[k-1],q=c({queryKey:[...H(r),`list`,S,C.entry,C.label,G??``,K??``],queryFn:()=>N.comments.list(r,{status:S,...C.entry===`all`?{}:{node:C.entry},...C.label===`all`?{}:{label:C.label},...G?{since:G}:{},...K?{cursor:K}:{},limit:25}),enabled:y&&b.allowed,retry:(e,t)=>!le(t)&&e<1}),Re=c({queryKey:[`entries`,r,`posts`],queryFn:()=>N.entries.list(r,`posts`),enabled:y&&b.allowed}),ze=he(r),J=we(ze.data),Be=()=>{O([void 0]),M(1),F(new Set),L(new Map)},Ve=e=>{Be(),s({to:`/sites/$siteId/comments`,params:{siteId:r},search:e===`pending`?{}:{tab:e}})},He=q.data?.items??[],Y=He.filter(e=>Ee(e,T,t)&&(C.actor!==`agents`||Ce(e))),X=Y.filter(e=>P.has(e.id)),Ue=q.data?.counts,We=T.trim()!==``||C.entry!==`all`||C.label!==`all`||C.actor!==`all`||C.date!==`all`,Z=m(r,e=>{L(new Map(e.failed.map(e=>[e.id,e.error]))),F(new Set(e.failed.map(e=>e.id))),z(e=>({...e,open:!1}))}),Q=g(r),Ge=(e,t,n={})=>Z.mutate({ids:t,action:e,revs:Te(He,t),...n}),Ke=(e,t)=>{let n=De(e,t);n.length!==0&&(Z.reset(),e===`hide`||e===`spam`?z({open:!0,action:e,ids:n}):Ge(e,n))},qe=async(t,n)=>{let i=(e={})=>s({to:`/sites/$siteId/comments/$nodeId`,params:{siteId:r,nodeId:t.nodeId},search:e});if(n===`delete`)Q.reset(),V(t);else if(n===`reply`)await i({reply:t.id});else if(n===`openThread`||n===`resolve`)await i({comment:t.id});else if(n===`commenter`)try{let{commenter:n}=await N.comments.findCommenter(r,{commentId:t.id});n?await s({to:`/sites/$siteId/commenters/$commenterId`,params:{siteId:r,commenterId:n.id}}):u.error(e(`comments.commenter.title`),e(`comments.commenter.noEmail`))}catch(t){u.error(e(`comments.commenter.title`),me(e,t))}else Ke(n,[t])},Je={approve:e(`comments.actions.approve`),restore:e(`comments.actions.restore`),hide:e(`comments.actions.hide`),spam:e(`comments.actions.spam`),hold:e(`comments.actions.hold`)},Ye=Oe(S).map((t,n)=>{let r=De(t,X).length,i=x.allowed?r===0?e(`comments.bulk.notFor`,{action:t}):void 0:x.reason,a=Pe[t];return{id:t,label:Je[t],icon:(0,W.jsx)(a,{}),variant:n===0&&(t===`approve`||t===`restore`)?`primary`:`secondary`,onClick:()=>Ke(t,X),disabled:i!==void 0,...i?{disabledReason:i}:{},loading:Z.isPending&&Z.variables?.action===t}}),Xe=n=>{let r=e(`comments.tabs.${n}`),i=n===`pending`||n===`reported`?Ue?.[n]:void 0;return i?e(`comments.tabCount`,{label:r,count:pe(t,i)}):r},$=le(q.error),Ze=[...I.values()].filter(e=>e===`conflict`).length,Qe=b.allowed?$?(0,W.jsx)(A,{variant:`secondary`,icon:(0,W.jsx)(oe,{weight:`fill`}),title:e(`comments.unavailable.title`),description:e(`comments.unavailable.description`)}):(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(xe,{error:q.error,onRetry:()=>void q.refetch()}),J.length>0&&(0,W.jsx)(`div`,{"data-testid":`comment-requests`,children:(0,W.jsx)(A,{variant:`default`,icon:(0,W.jsx)(_e,{weight:`fill`}),title:J.length===1?Le(e,J[0]):e(`comments.agentRequests.titleSeveral`,{count:J.length}),description:e(`comments.agentRequests.description`),action:(0,W.jsx)(i,{href:`/sites/${r}/approvals`,variant:`secondary`,size:`sm`,icon:ie(re),children:e(`comments.agentRequests.review`)})})}),Ze>0&&(0,W.jsx)(_,{title:e(`comments.results.conflictTitle`),description:e(`comments.results.errors.conflict`,{count:Ze}),onReload:()=>{L(new Map),q.refetch()},reloading:q.isFetching}),P.size>0?(0,W.jsx)(ke,{selected:X.length,total:Y.length,onSelectAll:e=>F(e?new Set(Y.map(e=>e.id)):new Set),onClear:()=>F(new Set),actions:Ye,labels:{bar:e(`comments.bulk.bar`),selectAll:e(`comments.bulk.selectAll`),selected:t=>e(`comments.bulk.selected`,{count:t}),clear:e(`comments.bulk.clear`)}}):(0,W.jsx)(Se,{search:T,onSearch:E,placeholder:e(`comments.search`),actions:(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(Me,{value:C,onChange:e=>{Be(),w(e)},labels:Ne(e,n),entries:(Re.data??[]).map(e=>({value:e.id,label:e.title})),entriesLoading:Re.isPending}),(0,W.jsx)(a,{variant:`secondary`,"aria-label":e(`comments.refresh`),loading:q.isRefetching,onClick:()=>void q.refetch()})]})}),q.data&&Y.length===0?(0,W.jsx)(fe,{icon:(0,W.jsx)(ye,{size:48,className:`text-kumo-inactive`}),title:e(We?`comments.empty.filtered.title`:`comments.empty.${S}.title`),description:e(We?`comments.empty.filtered.description`:`comments.empty.${S}.description`)}):(0,W.jsx)(ue,{className:`p-0`,"data-testid":`comment-queue`,children:q.isPending?(0,W.jsx)(Ie,{label:e(`comments.loading`)}):(0,W.jsx)(`div`,{className:`divide-y divide-kumo-hairline`,children:Y.map(i=>(0,W.jsx)(p,{comment:ne(r,i),words:n,locale:t,selection:{checked:P.has(i.id),onCheckedChange:e=>F(t=>{let n=new Set(t);return e?n.add(i.id):n.delete(i.id),n}),label:e(`comments.bulk.select`,{name:i.author.kind===`erased`?n.author.anonymous:i.author.name})},actions:(0,W.jsx)(te,{comment:i,onAction:e=>void qe(i,e)}),children:I.has(i.id)&&(0,W.jsx)(`span`,{children:(0,W.jsx)(ee,{error:I.get(i.id)})})},i.id))})}),(k>1||q.data?.nextCursor)&&(0,W.jsx)(ae,{page:k,perPage:25,hasNextPage:!!q.data?.nextCursor,text:()=>e(`comments.page`,{page:k}),setPage:e=>{if(e>k&&q.data?.nextCursor){let e=q.data.nextCursor;O(t=>{let n=t.slice(0,k);return n[k]=e,n})}F(new Set),L(new Map),M(Math.max(1,e))}})]}):(0,W.jsx)(A,{variant:`secondary`,icon:(0,W.jsx)(ve,{weight:`fill`}),title:e(`comments.noAccessTitle`),description:b.reason});return(0,W.jsxs)(ge,{crumbs:(0,W.jsx)(de,{siteId:r,trail:[{label:e(`comments.title`)}]}),icon:(0,W.jsx)(ye,{size:24}),title:e(`comments.title`),description:e(`comments.description`),...b.allowed&&!$?{tabs:be.map(e=>({value:e,label:Xe(e)})),tab:S,onTabChange:Ve}:{},aside:b.allowed&&!$?(0,W.jsx)(Fe,{siteId:r,t:e}):void 0,children:[Qe,(0,W.jsx)(h,{open:R.open,onOpenChange:e=>z(t=>({...t,open:e})),action:R.action,count:R.ids.length,busy:Z.isPending,error:Z.error?.message,onConfirm:e=>Ge(R.action,R.ids,e)}),(0,W.jsx)(h,{open:B!==void 0,onOpenChange:e=>!e&&V(void 0),action:`delete`,count:1,busy:Q.isPending,error:Q.error?.message,onConfirm:e=>{B&&Q.mutate({comment:B,...e},{onSuccess:()=>V(void 0),onError:()=>{V(void 0),q.refetch()}})}})]})}function Le(e,t){let n=t.actor.name??t.actor.id,r=t.input?.ids;return e(`comments.agentRequests.title`,{count:Array.isArray(r)?r.length:1,agent:n})}export{q as CommentsPage};
|
|
2
|
+
//# sourceMappingURL=CommentsPage-C7tWqq_I.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{r as e}from"./react-CDCuUAOg.js";import{n as t}from"./skeleton-line-m9dyh126t9k07jvg-CHsT8Hs3.js";import{n,t as r}from"./banner-msnmqm7of2lck01x-DRzQHuca.js";import{t as i}from"./layer-dialog-j5ywmzs46ccg6oqy-
|
|
2
|
-
//# sourceMappingURL=ConfirmDialog-
|
|
1
|
+
import{r as e}from"./react-CDCuUAOg.js";import{n as t}from"./skeleton-line-m9dyh126t9k07jvg-CHsT8Hs3.js";import{n,t as r}from"./banner-msnmqm7of2lck01x-DRzQHuca.js";import{t as i}from"./layer-dialog-j5ywmzs46ccg6oqy-Dg9cqt2A.js";import{u as a}from"./i18n-B-06kDA4.js";import{t as o}from"./api-errors-MOGC4Qux.js";var s=e();function c({open:e,onOpenChange:c,title:l,description:u,detail:d,confirmLabel:f,busy:p=!1,error:m,onConfirm:h}){let g=a();return(0,s.jsx)(i.Alert,{open:e,onOpenChange:c,dismissDisabled:p,children:(0,s.jsxs)(i.Content,{size:`sm`,closeLabel:g(`common.close`),children:[(0,s.jsx)(i.Title,{children:l}),(0,s.jsx)(i.Description,{children:u}),(0,s.jsx)(i.Body,{children:(0,s.jsxs)(`div`,{className:`grid gap-4`,children:[d&&(0,s.jsx)(t,{variant:`secondary`,children:d}),!!m&&(0,s.jsx)(r,{variant:`error`,size:`sm`,icon:(0,s.jsx)(n,{weight:`fill`}),title:g(`errors.title`),description:typeof m==`string`?m:o(g,m)})]})}),(0,s.jsx)(i.Actions,{dismissLabel:g(`common.cancel`),children:(0,s.jsx)(i.Actions.Primary,{variant:`destructive`,loading:p,onClick:h,children:f})})]})})}export{c as t};
|
|
2
|
+
//# sourceMappingURL=ConfirmDialog-DKmz4y5Q.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{r as e}from"./rolldown-runtime-hePW80VL.js";import{n as t}from"./IconBase.es-BZDpYMnj.js";import{vr as n}from"./useBaseUiId-lg1teubxudgin0w2-CrAc3DRu.js";import{i as r,r as i}from"./react-CDCuUAOg.js";import{t as a,w as o}from"./button-pa1bq9b85hawg41a-BcGpLLER.js";import{_ as s}from"./tanstack-BiJ_7SEB.js";import{g as c,t as l}from"./skeleton-line-m9dyh126t9k07jvg-CHsT8Hs3.js";import{n as u,t as d}from"./House.es-BQyZgbwu.js";import{t as f}from"./api-
|
|
2
|
-
//# sourceMappingURL=Crumbs-
|
|
1
|
+
import{r as e}from"./rolldown-runtime-hePW80VL.js";import{n as t}from"./IconBase.es-BZDpYMnj.js";import{vr as n}from"./useBaseUiId-lg1teubxudgin0w2-CrAc3DRu.js";import{i as r,r as i}from"./react-CDCuUAOg.js";import{t as a,w as o}from"./button-pa1bq9b85hawg41a-BcGpLLER.js";import{_ as s}from"./tanstack-BiJ_7SEB.js";import{g as c,t as l}from"./skeleton-line-m9dyh126t9k07jvg-CHsT8Hs3.js";import{n as u,t as d}from"./House.es-BQyZgbwu.js";import{t as f}from"./api-K4ZsoxSR.js";import{u as p}from"./i18n-B-06kDA4.js";var m=e(r(),1),h=i(),g={size:{sm:{classes:`text-sm h-10 gap-0.5`,description:`Compact breadcrumbs for dense UIs`},base:{classes:`text-base h-12 gap-1`,description:`Default breadcrumbs size`}}},_={size:`base`};function v({size:e=_.size}={}){return t(`group me-4 flex min-w-0 grow items-center overflow-hidden whitespace-nowrap`,n(g.size,e,_.size).classes)}var y=({href:e,icon:t,children:n})=>{let r=o();return(0,h.jsxs)(r,{"data-kumo-component":`Breadcrumbs`,"data-kumo-part":`link`,to:e,className:`flex shrink-0 items-center gap-1 whitespace-nowrap text-kumo-subtle no-underline`,children:[!!t&&(0,h.jsx)(`span`,{className:`flex shrink-0 items-center`,children:t}),(0,h.jsx)(`span`,{children:n})]})};function b({children:e,icon:t,loading:n}){return n?(0,h.jsxs)(`div`,{className:`flex w-[125px] min-w-0 items-center gap-1`,children:[t&&(0,h.jsx)(`span`,{className:`flex shrink-0 items-center`,children:t}),(0,h.jsx)(l,{})]}):(0,h.jsxs)(`div`,{className:`flex max-w-full min-w-0 items-center gap-1 font-medium`,"aria-current":`page`,children:[t&&(0,h.jsx)(`span`,{className:`flex shrink-0 items-center`,children:t}),(0,h.jsx)(`span`,{className:`truncate`,children:e})]})}function x(){return(0,h.jsx)(`span`,{className:`flex shrink-0 items-center text-kumo-inactive`,"aria-hidden":`true`,children:(0,h.jsx)(`svg`,{className:`rtl:-scale-x-100`,width:`24`,height:`24`,fill:`none`,viewBox:`0 0 24 24`,children:(0,h.jsx)(`path`,{stroke:`currentColor`,strokeLinecap:`round`,strokeLinejoin:`round`,strokeWidth:`1.5`,d:`M10.75 8.75L14.25 12L10.75 15.25`})})})}function S(){return(0,h.jsx)(`span`,{className:`flex shrink-0 items-center text-kumo-subtle`,"aria-hidden":!0,children:`...`})}function C({text:e}){let[t,n]=(0,m.useState)(!1);return(0,m.useEffect)(()=>{if(!t)return;let e=setTimeout(()=>n(!1),2e3);return()=>clearTimeout(e)},[t]),(0,h.jsx)(a,{variant:`ghost`,shape:`square`,size:`sm`,className:`opacity-0 transition-[opacity] group-hover:opacity-100`,onClick:async()=>{if(e)try{await navigator.clipboard.writeText(e),n(!0)}catch(e){console.error(`Failed to copy deeplink:`,e)}},title:`Click to copy`,"aria-label":`Copy`,children:t?(0,h.jsx)(c,{weight:`bold`,className:`text-kumo-success`}):(0,h.jsx)(u,{weight:`regular`})})}function w({children:e,size:n=`base`,className:r}){let i=m.Children.toArray(e),a=E(i);return(0,h.jsxs)(`nav`,{className:t(v({size:n}),r),"aria-label":`breadcrumb`,children:[(0,h.jsx)(`div`,{className:`contents sm:hidden`,children:a}),(0,h.jsx)(`div`,{className:`hidden sm:contents`,children:i})]})}function T(e,t){return(0,m.isValidElement)(e)&&e.type===t}function E(e){let t=e.filter(e=>T(e,y)||T(e,b));if(t.length<=2)return e;let[n,r]=t.slice(-2),i=[(0,h.jsx)(S,{},`kumo-breadcrumb-mobile-ellipsis`),(0,h.jsx)(x,{},`kumo-breadcrumb-mobile-separator-leading`),(0,m.cloneElement)(n,{key:`kumo-breadcrumb-mobile-parent`}),(0,h.jsx)(x,{},`kumo-breadcrumb-mobile-separator-trailing`),(0,m.cloneElement)(r,{key:`kumo-breadcrumb-mobile-current`})],a=e.filter(e=>!T(e,y)&&!T(e,b)&&!T(e,x));return[...i,...a]}w.Link=y,w.Current=b,w.Separator=x,w.Clipboard=C;function D({trail:e,copy:t}){let n=p(),r=e.at(-1);return(0,h.jsxs)(w,{children:[(0,h.jsx)(w.Link,{href:`/sites`,icon:(0,h.jsx)(d,{size:16}),children:n(`app.name`)}),e.slice(0,-1).map((e,t)=>(0,h.jsxs)(m.Fragment,{children:[(0,h.jsx)(w.Separator,{}),(0,h.jsx)(w.Link,{href:e.href??`/sites`,children:e.label??`…`})]},t)),r&&(0,h.jsxs)(h.Fragment,{children:[(0,h.jsx)(w.Separator,{}),(0,h.jsx)(w.Current,{loading:r.label===void 0,children:r.label})]}),t&&(0,h.jsx)(w.Clipboard,{text:t})]})}function O({siteId:e,trail:t=[],copy:n}){let r=s({queryKey:[`site`,e],queryFn:()=>f.sites.get(e)});return(0,h.jsx)(D,{trail:[{label:r.data?.name,href:`/sites/${e}`},...t],copy:n??(t.length===0?e:void 0)})}export{O as n,D as t};
|
|
2
|
+
//# sourceMappingURL=Crumbs-DOM6tT0l.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
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{o as i,t as a}from"./button-pa1bq9b85hawg41a-BcGpLLER.js";import{n as o}from"./skeleton-line-m9dyh126t9k07jvg-CHsT8Hs3.js";import{t as s}from"./Eye.es-DqovdtPt.js";import{t as c}from"./EyeSlash.es-YoqigHIr.js";import{t as l}from"./Trash.es-CxKLVMOQ.js";import{t as u}from"./tabs-gf57qqf1wcclaejq-Cay-6qhK.js";import{t as d}from"./Columns-DGrju-Ia.js";import{t as f}from"./SectionCard-
|
|
2
|
-
//# sourceMappingURL=EditorLayout-
|
|
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{o as i,t as a}from"./button-pa1bq9b85hawg41a-BcGpLLER.js";import{n as o}from"./skeleton-line-m9dyh126t9k07jvg-CHsT8Hs3.js";import{t as s}from"./Eye.es-DqovdtPt.js";import{t as c}from"./EyeSlash.es-YoqigHIr.js";import{t as l}from"./Trash.es-CxKLVMOQ.js";import{t as u}from"./tabs-gf57qqf1wcclaejq-Cay-6qhK.js";import{t as d}from"./Columns-DGrju-Ia.js";import{t as f}from"./SectionCard-253RWE03.js";import{u as p}from"./i18n-B-06kDA4.js";var m=e(n(),1),h=r(),g=`cloudhal.studio.preview`;function _(){let[e,t]=(0,m.useState)(()=>{try{return localStorage.getItem(g)!==`hidden`}catch{return!0}});return[e,(0,m.useCallback)(e=>{t(e);try{localStorage.setItem(g,e?`shown`:`hidden`)}catch{}},[])]}function v({visible:e,onChange:t,live:n=!1}){let r=p(),o=r(e?`preview.hide`:`preview.show`);return(0,h.jsx)(`span`,{className:`hidden @5xl/page:inline-flex`,children:(0,h.jsx)(i,{content:r(n?`preview.toggleHintLive`:`preview.toggleHint`),render:(0,h.jsx)(a,{variant:`secondary`,icon:e?(0,h.jsx)(c,{}):(0,h.jsx)(s,{}),"aria-pressed":e,onClick:()=>t(!e),children:o})})})}function y({main:e,aside:n,preview:r,previewVisible:i}){let a=p(),[o,s]=(0,m.useState)(`edit`);return r===void 0?(0,h.jsxs)(d,{variant:`2-1`,children:[(0,h.jsx)(`div`,{className:`grid min-w-0 content-start gap-6`,children:e}),(0,h.jsx)(`div`,{className:`grid min-w-0 content-start gap-6`,children:n})]}):(0,h.jsxs)(`div`,{className:`grid min-w-0 gap-6`,children:[(0,h.jsx)(u,{variant:`underline`,className:`@5xl/page:hidden`,value:o,onValueChange:e=>s(e),tabs:[{value:`edit`,label:a(`preview.edit`)},{value:`preview`,label:a(`preview.title`)}]}),(0,h.jsxs)(`div`,{className:t(`grid min-w-0 grid-cols-1 items-start gap-6`,i&&`@5xl/page:grid-cols-2`),children:[(0,h.jsx)(`div`,{className:t(`min-w-0`,o===`preview`&&`hidden @5xl/page:block`),children:(0,h.jsxs)(d,{variant:`2-1`,className:t(i&&`@5xl/page:grid-cols-1`),children:[(0,h.jsx)(`div`,{className:`grid min-w-0 content-start gap-6`,children:e}),(0,h.jsx)(`div`,{className:`grid min-w-0 content-start gap-6`,children:n})]})}),(0,h.jsx)(`div`,{"data-testid":`preview-column`,className:t(`h-[70svh] min-w-0`,o===`edit`&&`hidden`,i?`@5xl/page:sticky @5xl/page:top-16 @5xl/page:block @5xl/page:h-[calc(100svh-6rem)]`:`@5xl/page:hidden`),children:r})]})]})}function b({rows:e}){let t=p();return(0,h.jsx)(f,{title:t(`editor.metadata`),children:(0,h.jsx)(`dl`,{className:`grid divide-y divide-kumo-hairline`,children:e.map(e=>(0,h.jsxs)(`div`,{className:`flex min-w-0 items-center justify-between gap-4 py-2 first:pt-0 last:pb-0`,children:[(0,h.jsx)(o,{as:`dt`,variant:`secondary`,children:e.label}),(0,h.jsx)(`dd`,{className:`flex min-w-0 items-center justify-end`,children:e.value})]},e.label))})})}function x({action:e}){return(0,h.jsxs)(`div`,{className:`flex flex-wrap items-center justify-between gap-x-6 gap-y-3 py-3 first:pt-0 last:pb-0`,children:[(0,h.jsxs)(`div`,{className:`grid min-w-0 flex-[1_1_14rem] gap-1.5`,children:[(0,h.jsx)(o,{bold:!0,as:`span`,children:e.title}),(0,h.jsx)(o,{variant:`secondary`,size:`sm`,as:`span`,children:e.description})]}),(0,h.jsx)(a,{variant:e.variant??`secondary-destructive`,icon:e.icon??(0,h.jsx)(l,{}),onClick:e.onAction,disabled:e.disabledReason!==void 0,title:e.disabledReason,"data-testid":e[`data-testid`],children:e.actionLabel})]})}function S(e){let t=p(),n=`items`in e?e.items:[e];return(0,h.jsx)(f,{title:t(`editor.dangerZone`),children:(0,h.jsx)(`div`,{className:`grid divide-y divide-kumo-hairline`,children:n.map(e=>(0,h.jsx)(x,{action:e},e.title))})})}export{_ as a,v as i,b as n,y as r,S as t};
|
|
2
|
+
//# sourceMappingURL=EditorLayout-ieqpWD3O.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{r as e}from"./react-CDCuUAOg.js";import{t}from"./badge-dq8bx752b9dp7dst-D1xrG37q.js";import{o as n}from"./button-pa1bq9b85hawg41a-BcGpLLER.js";import{t as r}from"./PreviewPanel-
|
|
2
|
-
//# sourceMappingURL=EditorPreview-
|
|
1
|
+
import{r as e}from"./react-CDCuUAOg.js";import{t}from"./badge-dq8bx752b9dp7dst-D1xrG37q.js";import{o as n}from"./button-pa1bq9b85hawg41a-BcGpLLER.js";import{t as r}from"./PreviewPanel-DJfEXxjT.js";import{u as i}from"./i18n-B-06kDA4.js";var a=e();function o({src:e,rev:o,name:s,dirty:c,draft:l,srcDoc:u,stale:d,status:f}){let p=i(),m=u!==void 0||l===!0;return(0,a.jsx)(r,{src:e,...m?{live:!0,srcDoc:u,stale:d===!0}:{},version:o,fill:!0,labels:{title:p(`preview.title`),frameTitle:p(`preview.frameTitle`,{name:s}),device:p(`preview.device`),desktop:p(`preview.desktop`),tablet:p(`preview.tablet`),mobile:p(`preview.mobile`),reload:p(`preview.reload`),openInNewTab:p(m?`preview.openSaved`:`preview.openInNewTab`),loading:p(`preview.loading`)},status:f??(c?(0,a.jsx)(n,{content:p(`preview.unsavedHint`),children:(0,a.jsx)(t,{variant:`warning`,appearance:`dot`,children:p(`preview.unsaved`)})}):void 0)})}export{o as t};
|
|
2
|
+
//# sourceMappingURL=EditorPreview-BMn8JFyR.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-D1xrG37q.js";import{o as a}from"./button-pa1bq9b85hawg41a-BcGpLLER.js";import{S as o,_ as s,h as c}from"./tanstack-BiJ_7SEB.js";import{n as l}from"./skeleton-line-m9dyh126t9k07jvg-CHsT8Hs3.js";import{t as u}from"./ClockClockwise.es-1egHMnBk.js";import{t as d}from"./ClockCountdown.es-BR_zz6vi.js";import{a as f,s as p}from"./AgentModes-B81a2nUo.js";import{t as m}from"./banner-msnmqm7of2lck01x-DRzQHuca.js";import{t as h}from"./Toast-BHyBhGXI.js";import{c as g,n as _,t as v}from"./api-Sbz4Rbu7.js";import{r as ee}from"./format-DGE2c-4V.js";import{c as y}from"./i18n-Cjiv6Esx.js";import{t as b}from"./api-errors-FBnZYqCy.js";import{A as x,C as S,D as te,h as C,k as ne,u as w,w as T,x as E}from"./agents-BBsojpg9.js";import{n as D}from"./ElevationRequest-B0_Q_gVT.js";var O=e(n(),1),re=new Map([[`bold`,O.createElement(O.Fragment,null,O.createElement(`path`,{d:`M200,36H56A20,20,0,0,0,36,56V200a20,20,0,0,0,20,20H200a20,20,0,0,0,20-20V56A20,20,0,0,0,200,36Zm-4,160H60V60H196Z`}))],[`fill`,O.createElement(O.Fragment,null,O.createElement(`path`,{d:`M216,56V200a16,16,0,0,1-16,16H56a16,16,0,0,1-16-16V56A16,16,0,0,1,56,40H200A16,16,0,0,1,216,56Z`}))],[`regular`,O.createElement(O.Fragment,null,O.createElement(`path`,{d:`M200,40H56A16,16,0,0,0,40,56V200a16,16,0,0,0,16,16H200a16,16,0,0,0,16-16V56A16,16,0,0,0,200,40Zm0,160H56V56H200V200Z`}))]]),k=O.forwardRef((e,n)=>O.createElement(t,{ref:n,...e,weights:re}));k.displayName=`StopIcon`;var A=k,j=6e4,ie=15e3,ae=[30,60,240];function oe(e,t){return g(t)?!1:e?.items.some(e=>e.kind===`elevation-ending`)?ie:j}function se(e,t=Date.now()){return(e??[]).filter(e=>e.kind===`elevation-ending`?Date.parse(e.until)>t:e.kind===`elevation-request`||e.kind===`comments-approval`?Date.parse(e.expiresAt)>t:!0)}function M(e,t,n=Date.now()){let r=Date.parse(e)-n;return Number.isFinite(r)&&r>0&&r<=t*6e4}function ce(e,t){return e.filter(e=>!t.has(e.id))}function le(e){if(w(e.mode))return{keyId:e.keyId,name:e.keyName,mode:e.mode,from:w(e.from)?e.from:void 0,until:e.until}}function N(e,t=Date.now()){let n=w(e.mode)?e.mode:void 0,r=n?E({mode:n,elevation:e.elevation},t):void 0;if(r)return{keyId:e.id,name:e.name,mode:r.mode,from:n,until:r.until}}function P(e,t=Date.now()){return Date.parse(e.until)>t}function F(e,t){return Math.min(t.maxMinutes,Math.max(t.minMinutes,Math.round(e)))}function I(e,t,n){return{mode:e.mode,minutes:F(t,n)}}function L(e){if(R(e)){if(e.kind===`scheduler-stalled`)return`/sites`;let t=`/sites/${encodeURIComponent(e.siteId)}/schedules`;return`releaseId`in e?`${t}/releases/${encodeURIComponent(e.releaseId)}`:e.kind===`automation-paused`?`${t}/automations`:`${t}/history?automation=${encodeURIComponent(e.automationId)}`}return e.kind===`elevation-ending`?`/agents`:e.kind===`elevation-request`||e.kind===`comments-approval`?`/sites/${encodeURIComponent(e.siteId)}/approvals`:e.kind===`comments-pending`||e.kind===`comments-purge-waiting`?`/sites/${encodeURIComponent(e.siteId)}/comments`:e.kind===`comments-reported`?`/sites/${encodeURIComponent(e.siteId)}/comments?tab=reported`:e.kind===`comments-paused`?`/sites/${encodeURIComponent(e.siteId)}/settings#comments`:`/team`}function R(e){return _.includes(e.kind)}function z(e){return e.kind.startsWith(`comments-`)}function B(e,t,n=Date.now()){let r=Math.max(1,Math.round((n-Date.parse(e))/6e4));return Number.isFinite(r)?S(r>=1440?Math.floor(r/1440)*1440:r>=60?Math.floor(r/60)*60:r,t,`long`):``}var V={moderate_comments:`moderate`,draft_comment_reply:`reply`,set_comment_thread:`thread`,label_comments:`label`};function H(e,t,n,r=Date.now()){let i=e=>ee(t,e);switch(n.kind){case`comments-pending`:return{title:e(`notifications.comments.pending.title`,{count:n.count}),body:n.oldestAt?e(`notifications.comments.pending.body`,{age:B(n.oldestAt,t,r)}):e(`notifications.comments.pending.bodyNew`)};case`comments-reported`:return{title:e(`notifications.comments.reported.title`,{count:n.count}),body:e(`notifications.comments.reported.body`)};case`comments-paused`:return{title:e(`notifications.comments.paused.title`),body:e(`notifications.comments.paused.body`,{cap:i(n.cap)})};case`comments-purge-waiting`:return{title:e(`notifications.comments.purgeWaiting.title`),body:e(`notifications.comments.purgeWaiting.body`,{count:i(n.tags)})};default:return{title:e(`notifications.comments.approval.title`,{agent:n.agent.name??n.agent.id}),body:e(`notifications.comments.approval.tools.${V[n.tool]??`moderate`}`)}}}function U(e,t,n,r=Date.now()){return{name:n.keyName??e(`agents.unnamed`),mode:e(`agents.modes.names.${n.mode}`),from:e(`agents.modes.names.${n.from}`),left:S(Math.max(1,x(n.until,r)),t,`short`),time:T(n.until,t,{now:r})}}function W(e,t,n){return{agent:t.agent.name??t.agent.id,mode:e(`agents.modes.names.${t.mode}`),duration:n(t.minutes)}}var G=`cloudhal.studio.notifications.shown`,K=`cloudhal.studio.notifications.browser`;function q(){try{return typeof localStorage>`u`?void 0:localStorage}catch{return}}function J(){try{let e=q()?.getItem(G),t=e?JSON.parse(e):[];return new Set(Array.isArray(t)?t.filter(e=>typeof e==`string`):[])}catch{return new Set}}function ue(e){let t=J();for(let n of e)t.delete(n),t.add(n);let n=[...t].slice(-200);try{q()?.setItem(G,JSON.stringify(n))}catch{}return new Set(n)}function de(){try{return q()?.getItem(K)===`on`}catch{return!1}}function fe(e){try{e?q()?.setItem(K,`on`):q()?.removeItem(K)}catch{}}function pe(){try{return typeof window>`u`||!(`Notification`in window)?`unsupported`:window.Notification.permission}catch{return`unsupported`}}function me(e){return e.enabled&&e.permission===`granted`&&e.visibility!==`visible`}var Y=r();function he(e,t){return(e??[]).flatMap(e=>{let n=E({mode:C(e),elevation:e.elevation},t);return n?[{key:e,elevation:n}]:[]})}function ge(){let{t:e}=y(),t=s({queryKey:[`me`],queryFn:v.me,staleTime:3e5});return n=>n&&n===t.data?.actor.id?e(`agents.elevation.byYou`):n||`—`}function _e({agentKey:e,now:t,asks:n}){let{t:r,locale:o}=y(),s=ge(),{noticeMinutes:c}=p(),u=C(e),m=E({mode:u,elevation:e.elevation},t);if(!m)return n?(0,Y.jsxs)(`div`,{className:`grid justify-items-start gap-1.5`,children:[(0,Y.jsx)(f,{mode:u}),(0,Y.jsx)(D,{pending:n})]}):(0,Y.jsx)(f,{mode:u});let h=r(`agents.modes.names.${u}`);return(0,Y.jsxs)(`div`,{className:`grid justify-items-start gap-1`,"data-elevated-to":m.mode,children:[(0,Y.jsxs)(`div`,{className:`flex items-center gap-1.5 whitespace-nowrap`,children:[(0,Y.jsx)(f,{mode:m.mode}),(0,Y.jsx)(`span`,{className:`inline-flex`,"data-testid":`elevation-remaining`,children:(0,Y.jsx)(a,{content:(0,Y.jsxs)(`span`,{className:`grid max-w-72 gap-1`,children:[(0,Y.jsx)(`span`,{children:r(`agents.elevation.tooltip`,{from:h,time:T(m.until,o,{now:t}),who:s(m.grantedBy)})}),m.reason&&(0,Y.jsx)(`span`,{className:`text-kumo-subtle`,children:X(m.reason)?r(`agents.elevation.requestedReason`,{reason:X(m.reason)??``}):`“${m.reason}”`})]}),children:(0,Y.jsx)(i,{variant:M(m.until,c,t)?`warning`:`outline`,icon:(0,Y.jsx)(d,{}),children:ne(r,o,m.until,t)})})})]}),(0,Y.jsx)(l,{variant:`secondary`,size:`xs`,as:`span`,"data-own-mode":u,children:r(`agents.elevation.ownMode`,{mode:h})}),n&&(0,Y.jsx)(D,{pending:n})]})}function X(e){let t=/^requested by the agent:\s*(.*)$/s.exec(e);return t?(t[1]??``).trim()||`…`:void 0}async function Z(e){await Promise.all([e.invalidateQueries({queryKey:[`agent-keys`]}),e.invalidateQueries({queryKey:[`notifications`]}),e.invalidateQueries({queryKey:[`approvals`]})])}function Q(e,t){e.setQueryData([`agent-keys`],e=>e?.map(e=>t.find(t=>t.id===e.id)??e))}function ve(){let{t:e}=y(),t=o(),n=h();return c({mutationFn:e=>Promise.all(e.map(e=>v.agentKeys.endElevation(e.id))),onSuccess:async r=>{Q(t,r),n.success(e(`agents.elevation.ended`),r.map(t=>e(`agents.elevation.endedDescription`,{name:t.name??e(`agents.unnamed`),mode:e(`agents.modes.names.${C(t)}`)})).join(` `)),await Z(t)},onError:t=>n.error(e(`agents.elevation.endFailed`),b(e,t))})}var $=class extends Error{name=`ElevationGoneError`};function ye(){let{t:e,locale:t}=y(),n=o(),r=h(),i=p();return c({mutationFn:async({targets:e,minutes:t=60})=>{let n=await v.agentKeys.list(),r=Date.now();for(let t of e){let e=n.find(e=>e.id===t.keyId),i=e?N(e,r):void 0;if(!P(t,r)||i?.mode!==t.mode)throw new $(t.name??t.keyId)}return Promise.all(e.map(e=>v.agentKeys.elevate(e.keyId,I(e,t,i.elevation))))},onSuccess:async i=>{Q(n,i),r.success(e(`notifications.extend.done`),i.flatMap(n=>n.elevation?[e(`agents.elevate.doneDescription`,{name:n.name??e(`agents.unnamed`),mode:e(`agents.modes.names.${n.elevation.mode}`),time:T(n.elevation.until,t),from:e(`agents.modes.names.${C(n)}`)})]:[]).join(` `)),await Z(n)},onError:async t=>{t instanceof $?(r.error(e(`notifications.extend.gone`),e(`notifications.extend.goneDescription`)),await Z(n)):r.error(e(`notifications.extend.failed`),b(e,t))}})}function be(e){let t=o();(0,O.useEffect)(()=>{let n=te((e??[]).map(e=>({mode:C(e),elevation:e.elevation})));if(n===void 0)return;let r=setTimeout(()=>t.invalidateQueries({queryKey:[`agent-keys`]}),Math.min(n+1e3,2147483647));return()=>clearTimeout(r)},[e,t])}function xe({keys:e,now:t,noticeMinutes:n,onEnd:r,ending:a,onExtend:o,extending:s}){let{t:c,locale:l}=y(),f=he(e,t);if(f.length===0)return null;let p=f.length,h=f.flatMap(({key:e,elevation:r})=>{let i=M(r.until,n,t)?N(e,t):void 0;return i?[i]:[]}),g=c(`notifications.extend.presets.60`);return(0,Y.jsx)(`div`,{role:`status`,"data-testid":`elevated-keys-banner`,children:(0,Y.jsx)(m,{variant:f.some(e=>e.elevation.mode===`auto`)?`alert`:`default`,className:`[&>div]:flex-wrap`,icon:(0,Y.jsx)(d,{weight:`fill`}),title:c(`agents.elevation.bannerTitle`,{count:p}),description:(0,Y.jsx)(`span`,{className:`grid gap-1`,children:f.map(({key:e,elevation:n})=>(0,Y.jsxs)(`span`,{className:`flex flex-wrap items-center gap-x-2 gap-y-1`,children:[(0,Y.jsx)(`span`,{"data-elevated-key":e.id,children:c(`agents.elevation.bannerItem`,{name:e.name??c(`agents.unnamed`),from:c(`agents.modes.names.${C(e)}`),to:c(`agents.modes.names.${n.mode}`),time:T(n.until,l,{now:t})})}),h.some(t=>t.keyId===e.id)&&(0,Y.jsx)(`span`,{className:`inline-flex`,"data-ending-soon":e.id,children:(0,Y.jsx)(i,{variant:`warning`,icon:(0,Y.jsx)(d,{}),children:c(`agents.elevation.endsIn`,{time:S(Math.max(1,x(n.until,t)),l,`short`)})})})]},e.id))}),action:(0,Y.jsxs)(Y.Fragment,{children:[h.length>0&&(0,Y.jsx)(m.Action,{icon:(0,Y.jsx)(u,{}),loading:s,onClick:()=>o(h),children:h.length===1?c(`notifications.extend.button`,{duration:g}):c(`agents.elevation.extendAll`,{duration:g})}),(0,Y.jsx)(m.Action,{icon:(0,Y.jsx)(A,{}),loading:a,onClick:()=>r(f.map(e=>e.key)),children:c(p===1?`agents.elevation.endNow`:`agents.elevation.endAll`)})]})})})}export{A as C,fe as S,de as _,ye as a,W as b,H as c,ce as d,z as f,oe as g,L as h,ve as i,U as l,se as m,_e as n,ae as o,R as p,be as r,pe as s,xe as t,le as u,J as v,me as x,ue as y};
|
|
2
|
-
//# sourceMappingURL=Elevation-
|
|
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-D1xrG37q.js";import{o as a}from"./button-pa1bq9b85hawg41a-BcGpLLER.js";import{S as o,_ as s,h as c}from"./tanstack-BiJ_7SEB.js";import{n as l}from"./skeleton-line-m9dyh126t9k07jvg-CHsT8Hs3.js";import{t as u}from"./ClockClockwise.es-1egHMnBk.js";import{t as d}from"./ClockCountdown.es-BR_zz6vi.js";import{a as f,s as p}from"./AgentModes-CP8u-uXl.js";import{t as m}from"./banner-msnmqm7of2lck01x-DRzQHuca.js";import{t as h}from"./Toast-MSfrCjAr.js";import{c as g,n as _,t as v}from"./api-K4ZsoxSR.js";import{r as ee}from"./format-DGE2c-4V.js";import{c as y}from"./i18n-B-06kDA4.js";import{t as b}from"./api-errors-MOGC4Qux.js";import{A as x,C as S,D as te,h as C,k as ne,u as w,w as T,x as E}from"./agents-BBsojpg9.js";import{n as D}from"./ElevationRequest-DiCnHA-N.js";var O=e(n(),1),re=new Map([[`bold`,O.createElement(O.Fragment,null,O.createElement(`path`,{d:`M200,36H56A20,20,0,0,0,36,56V200a20,20,0,0,0,20,20H200a20,20,0,0,0,20-20V56A20,20,0,0,0,200,36Zm-4,160H60V60H196Z`}))],[`fill`,O.createElement(O.Fragment,null,O.createElement(`path`,{d:`M216,56V200a16,16,0,0,1-16,16H56a16,16,0,0,1-16-16V56A16,16,0,0,1,56,40H200A16,16,0,0,1,216,56Z`}))],[`regular`,O.createElement(O.Fragment,null,O.createElement(`path`,{d:`M200,40H56A16,16,0,0,0,40,56V200a16,16,0,0,0,16,16H200a16,16,0,0,0,16-16V56A16,16,0,0,0,200,40Zm0,160H56V56H200V200Z`}))]]),k=O.forwardRef((e,n)=>O.createElement(t,{ref:n,...e,weights:re}));k.displayName=`StopIcon`;var A=k,j=6e4,ie=15e3,ae=[30,60,240];function oe(e,t){return g(t)?!1:e?.items.some(e=>e.kind===`elevation-ending`)?ie:j}function se(e,t=Date.now()){return(e??[]).filter(e=>e.kind===`elevation-ending`?Date.parse(e.until)>t:e.kind===`elevation-request`||e.kind===`comments-approval`?Date.parse(e.expiresAt)>t:!0)}function M(e,t,n=Date.now()){let r=Date.parse(e)-n;return Number.isFinite(r)&&r>0&&r<=t*6e4}function ce(e,t){return e.filter(e=>!t.has(e.id))}function le(e){if(w(e.mode))return{keyId:e.keyId,name:e.keyName,mode:e.mode,from:w(e.from)?e.from:void 0,until:e.until}}function N(e,t=Date.now()){let n=w(e.mode)?e.mode:void 0,r=n?E({mode:n,elevation:e.elevation},t):void 0;if(r)return{keyId:e.id,name:e.name,mode:r.mode,from:n,until:r.until}}function P(e,t=Date.now()){return Date.parse(e.until)>t}function F(e,t){return Math.min(t.maxMinutes,Math.max(t.minMinutes,Math.round(e)))}function I(e,t,n){return{mode:e.mode,minutes:F(t,n)}}function L(e){if(R(e)){if(e.kind===`scheduler-stalled`)return`/sites`;let t=`/sites/${encodeURIComponent(e.siteId)}/schedules`;return`releaseId`in e?`${t}/releases/${encodeURIComponent(e.releaseId)}`:e.kind===`automation-paused`?`${t}/automations`:`${t}/history?automation=${encodeURIComponent(e.automationId)}`}return e.kind===`elevation-ending`?`/agents`:e.kind===`elevation-request`||e.kind===`comments-approval`?`/sites/${encodeURIComponent(e.siteId)}/approvals`:e.kind===`comments-pending`||e.kind===`comments-purge-waiting`?`/sites/${encodeURIComponent(e.siteId)}/comments`:e.kind===`comments-reported`?`/sites/${encodeURIComponent(e.siteId)}/comments?tab=reported`:e.kind===`comments-paused`?`/sites/${encodeURIComponent(e.siteId)}/settings#comments`:`/team`}function R(e){return _.includes(e.kind)}function z(e){return e.kind.startsWith(`comments-`)}function B(e,t,n=Date.now()){let r=Math.max(1,Math.round((n-Date.parse(e))/6e4));return Number.isFinite(r)?S(r>=1440?Math.floor(r/1440)*1440:r>=60?Math.floor(r/60)*60:r,t,`long`):``}var V={moderate_comments:`moderate`,draft_comment_reply:`reply`,set_comment_thread:`thread`,label_comments:`label`};function H(e,t,n,r=Date.now()){let i=e=>ee(t,e);switch(n.kind){case`comments-pending`:return{title:e(`notifications.comments.pending.title`,{count:n.count}),body:n.oldestAt?e(`notifications.comments.pending.body`,{age:B(n.oldestAt,t,r)}):e(`notifications.comments.pending.bodyNew`)};case`comments-reported`:return{title:e(`notifications.comments.reported.title`,{count:n.count}),body:e(`notifications.comments.reported.body`)};case`comments-paused`:return{title:e(`notifications.comments.paused.title`),body:e(`notifications.comments.paused.body`,{cap:i(n.cap)})};case`comments-purge-waiting`:return{title:e(`notifications.comments.purgeWaiting.title`),body:e(`notifications.comments.purgeWaiting.body`,{count:i(n.tags)})};default:return{title:e(`notifications.comments.approval.title`,{agent:n.agent.name??n.agent.id}),body:e(`notifications.comments.approval.tools.${V[n.tool]??`moderate`}`)}}}function U(e,t,n,r=Date.now()){return{name:n.keyName??e(`agents.unnamed`),mode:e(`agents.modes.names.${n.mode}`),from:e(`agents.modes.names.${n.from}`),left:S(Math.max(1,x(n.until,r)),t,`short`),time:T(n.until,t,{now:r})}}function W(e,t,n){return{agent:t.agent.name??t.agent.id,mode:e(`agents.modes.names.${t.mode}`),duration:n(t.minutes)}}var G=`cloudhal.studio.notifications.shown`,K=`cloudhal.studio.notifications.browser`;function q(){try{return typeof localStorage>`u`?void 0:localStorage}catch{return}}function J(){try{let e=q()?.getItem(G),t=e?JSON.parse(e):[];return new Set(Array.isArray(t)?t.filter(e=>typeof e==`string`):[])}catch{return new Set}}function ue(e){let t=J();for(let n of e)t.delete(n),t.add(n);let n=[...t].slice(-200);try{q()?.setItem(G,JSON.stringify(n))}catch{}return new Set(n)}function de(){try{return q()?.getItem(K)===`on`}catch{return!1}}function fe(e){try{e?q()?.setItem(K,`on`):q()?.removeItem(K)}catch{}}function pe(){try{return typeof window>`u`||!(`Notification`in window)?`unsupported`:window.Notification.permission}catch{return`unsupported`}}function me(e){return e.enabled&&e.permission===`granted`&&e.visibility!==`visible`}var Y=r();function he(e,t){return(e??[]).flatMap(e=>{let n=E({mode:C(e),elevation:e.elevation},t);return n?[{key:e,elevation:n}]:[]})}function ge(){let{t:e}=y(),t=s({queryKey:[`me`],queryFn:v.me,staleTime:3e5});return n=>n&&n===t.data?.actor.id?e(`agents.elevation.byYou`):n||`—`}function _e({agentKey:e,now:t,asks:n}){let{t:r,locale:o}=y(),s=ge(),{noticeMinutes:c}=p(),u=C(e),m=E({mode:u,elevation:e.elevation},t);if(!m)return n?(0,Y.jsxs)(`div`,{className:`grid justify-items-start gap-1.5`,children:[(0,Y.jsx)(f,{mode:u}),(0,Y.jsx)(D,{pending:n})]}):(0,Y.jsx)(f,{mode:u});let h=r(`agents.modes.names.${u}`);return(0,Y.jsxs)(`div`,{className:`grid justify-items-start gap-1`,"data-elevated-to":m.mode,children:[(0,Y.jsxs)(`div`,{className:`flex items-center gap-1.5 whitespace-nowrap`,children:[(0,Y.jsx)(f,{mode:m.mode}),(0,Y.jsx)(`span`,{className:`inline-flex`,"data-testid":`elevation-remaining`,children:(0,Y.jsx)(a,{content:(0,Y.jsxs)(`span`,{className:`grid max-w-72 gap-1`,children:[(0,Y.jsx)(`span`,{children:r(`agents.elevation.tooltip`,{from:h,time:T(m.until,o,{now:t}),who:s(m.grantedBy)})}),m.reason&&(0,Y.jsx)(`span`,{className:`text-kumo-subtle`,children:X(m.reason)?r(`agents.elevation.requestedReason`,{reason:X(m.reason)??``}):`“${m.reason}”`})]}),children:(0,Y.jsx)(i,{variant:M(m.until,c,t)?`warning`:`outline`,icon:(0,Y.jsx)(d,{}),children:ne(r,o,m.until,t)})})})]}),(0,Y.jsx)(l,{variant:`secondary`,size:`xs`,as:`span`,"data-own-mode":u,children:r(`agents.elevation.ownMode`,{mode:h})}),n&&(0,Y.jsx)(D,{pending:n})]})}function X(e){let t=/^requested by the agent:\s*(.*)$/s.exec(e);return t?(t[1]??``).trim()||`…`:void 0}async function Z(e){await Promise.all([e.invalidateQueries({queryKey:[`agent-keys`]}),e.invalidateQueries({queryKey:[`notifications`]}),e.invalidateQueries({queryKey:[`approvals`]})])}function Q(e,t){e.setQueryData([`agent-keys`],e=>e?.map(e=>t.find(t=>t.id===e.id)??e))}function ve(){let{t:e}=y(),t=o(),n=h();return c({mutationFn:e=>Promise.all(e.map(e=>v.agentKeys.endElevation(e.id))),onSuccess:async r=>{Q(t,r),n.success(e(`agents.elevation.ended`),r.map(t=>e(`agents.elevation.endedDescription`,{name:t.name??e(`agents.unnamed`),mode:e(`agents.modes.names.${C(t)}`)})).join(` `)),await Z(t)},onError:t=>n.error(e(`agents.elevation.endFailed`),b(e,t))})}var $=class extends Error{name=`ElevationGoneError`};function ye(){let{t:e,locale:t}=y(),n=o(),r=h(),i=p();return c({mutationFn:async({targets:e,minutes:t=60})=>{let n=await v.agentKeys.list(),r=Date.now();for(let t of e){let e=n.find(e=>e.id===t.keyId),i=e?N(e,r):void 0;if(!P(t,r)||i?.mode!==t.mode)throw new $(t.name??t.keyId)}return Promise.all(e.map(e=>v.agentKeys.elevate(e.keyId,I(e,t,i.elevation))))},onSuccess:async i=>{Q(n,i),r.success(e(`notifications.extend.done`),i.flatMap(n=>n.elevation?[e(`agents.elevate.doneDescription`,{name:n.name??e(`agents.unnamed`),mode:e(`agents.modes.names.${n.elevation.mode}`),time:T(n.elevation.until,t),from:e(`agents.modes.names.${C(n)}`)})]:[]).join(` `)),await Z(n)},onError:async t=>{t instanceof $?(r.error(e(`notifications.extend.gone`),e(`notifications.extend.goneDescription`)),await Z(n)):r.error(e(`notifications.extend.failed`),b(e,t))}})}function be(e){let t=o();(0,O.useEffect)(()=>{let n=te((e??[]).map(e=>({mode:C(e),elevation:e.elevation})));if(n===void 0)return;let r=setTimeout(()=>t.invalidateQueries({queryKey:[`agent-keys`]}),Math.min(n+1e3,2147483647));return()=>clearTimeout(r)},[e,t])}function xe({keys:e,now:t,noticeMinutes:n,onEnd:r,ending:a,onExtend:o,extending:s}){let{t:c,locale:l}=y(),f=he(e,t);if(f.length===0)return null;let p=f.length,h=f.flatMap(({key:e,elevation:r})=>{let i=M(r.until,n,t)?N(e,t):void 0;return i?[i]:[]}),g=c(`notifications.extend.presets.60`);return(0,Y.jsx)(`div`,{role:`status`,"data-testid":`elevated-keys-banner`,children:(0,Y.jsx)(m,{variant:f.some(e=>e.elevation.mode===`auto`)?`alert`:`default`,className:`[&>div]:flex-wrap`,icon:(0,Y.jsx)(d,{weight:`fill`}),title:c(`agents.elevation.bannerTitle`,{count:p}),description:(0,Y.jsx)(`span`,{className:`grid gap-1`,children:f.map(({key:e,elevation:n})=>(0,Y.jsxs)(`span`,{className:`flex flex-wrap items-center gap-x-2 gap-y-1`,children:[(0,Y.jsx)(`span`,{"data-elevated-key":e.id,children:c(`agents.elevation.bannerItem`,{name:e.name??c(`agents.unnamed`),from:c(`agents.modes.names.${C(e)}`),to:c(`agents.modes.names.${n.mode}`),time:T(n.until,l,{now:t})})}),h.some(t=>t.keyId===e.id)&&(0,Y.jsx)(`span`,{className:`inline-flex`,"data-ending-soon":e.id,children:(0,Y.jsx)(i,{variant:`warning`,icon:(0,Y.jsx)(d,{}),children:c(`agents.elevation.endsIn`,{time:S(Math.max(1,x(n.until,t)),l,`short`)})})})]},e.id))}),action:(0,Y.jsxs)(Y.Fragment,{children:[h.length>0&&(0,Y.jsx)(m.Action,{icon:(0,Y.jsx)(u,{}),loading:s,onClick:()=>o(h),children:h.length===1?c(`notifications.extend.button`,{duration:g}):c(`agents.elevation.extendAll`,{duration:g})}),(0,Y.jsx)(m.Action,{icon:(0,Y.jsx)(A,{}),loading:a,onClick:()=>r(f.map(e=>e.key)),children:c(p===1?`agents.elevation.endNow`:`agents.elevation.endAll`)})]})})})}export{A as C,fe as S,de as _,ye as a,W as b,H as c,ce as d,z as f,oe as g,L as h,ve as i,U as l,se as m,_e as n,ae as o,R as p,be as r,pe as s,xe as t,le as u,J as v,me as x,ue as y};
|
|
2
|
+
//# sourceMappingURL=Elevation-B3H1KYdW.js.map
|
package/dist/assets/studio/assets/{ElevationRequest-B0_Q_gVT.js → ElevationRequest-DiCnHA-N.js}
RENAMED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{r as e}from"./rolldown-runtime-hePW80VL.js";import{i as t,r as n}from"./react-CDCuUAOg.js";import{t as r}from"./badge-dq8bx752b9dp7dst-D1xrG37q.js";import{o as i}from"./button-pa1bq9b85hawg41a-BcGpLLER.js";import{t as a}from"./link-cqyfjezntvr53rh7-CwZJ95XT.js";import{n as o}from"./DirectionalIcon-BKKMj3KT.js";import{m as s,n as c}from"./skeleton-line-m9dyh126t9k07jvg-CHsT8Hs3.js";import{t as l}from"./ClockCountdown.es-BR_zz6vi.js";import{a as u}from"./AgentModes-
|
|
2
|
-
//# sourceMappingURL=ElevationRequest-
|
|
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-D1xrG37q.js";import{o as i}from"./button-pa1bq9b85hawg41a-BcGpLLER.js";import{t as a}from"./link-cqyfjezntvr53rh7-CwZJ95XT.js";import{n as o}from"./DirectionalIcon-BKKMj3KT.js";import{m as s,n as c}from"./skeleton-line-m9dyh126t9k07jvg-CHsT8Hs3.js";import{t as l}from"./ClockCountdown.es-BR_zz6vi.js";import{a as u}from"./AgentModes-CP8u-uXl.js";import{t as d}from"./banner-msnmqm7of2lck01x-DRzQHuca.js";import{t as f}from"./InsetPanel-CHSg953_.js";import{c as p,u as m}from"./i18n-B-06kDA4.js";import{C as h,T as g,b as _,w as v}from"./agents-BBsojpg9.js";import{n as y}from"./approvals-0AbtJUeH.js";var b=e(t(),1),x=n();function S(){let e=m();return(0,b.useCallback)(t=>{let n=_.find(e=>e===t);if(n!==void 0)return e(`agents.elevate.presets.${n}`);let r=Math.floor(t/60),i=t%60;return[r>0?e(`approvals.elevation.presetHours`,{count:r}):``,i>0?e(`approvals.elevation.presetMinutes`,{count:i}):``].filter(Boolean).join(` `)},[e])}function C(){let{t:e,locale:t}=p(),n=S();return(0,b.useCallback)((r,i)=>{let a=r.actor.name??r.actor.id,o=e(`agents.modes.names.${i.mode}`);return{agent:a,mode:o,sentence:e(`approvals.elevation.sentence`,{agent:a,mode:o,duration:h(i.minutes,t,`long`)}),short:r.grant&&r.grant.minutes<i.minutes?e(`approvals.elevation.historyShortened`,{mode:o,duration:n(r.grant.minutes),asked:n(i.minutes)}):e(`approvals.elevation.history`,{mode:o,duration:n(r.grant?.minutes??i.minutes)})}},[e,t,n])}function w({from:e,to:t}){return(0,x.jsxs)(`span`,{className:`flex flex-wrap items-center gap-1.5`,"data-transition":`${e??`?`}:${t}`,children:[e&&(0,x.jsxs)(x.Fragment,{children:[(0,x.jsx)(u,{mode:e}),(0,x.jsx)(o,{size:14})]}),(0,x.jsx)(u,{mode:t})]})}function T(){let e=m();return(0,x.jsxs)(`div`,{className:`grid justify-items-start gap-0.5`,"data-elevation-cell":!0,children:[(0,x.jsxs)(`span`,{className:`flex items-center gap-1.5`,children:[(0,x.jsx)(l,{size:16,className:`shrink-0 text-kumo-subtle`,"aria-hidden":!0}),(0,x.jsx)(c,{bold:!0,as:`span`,children:e(`approvals.elevation.badge`)})]}),(0,x.jsx)(c,{variant:`mono-secondary`,as:`span`,children:y})]})}function E({reason:e,testId:t}){let n=m();return(0,x.jsxs)(f,{variant:`recessed`,className:`gap-1`,children:[(0,x.jsx)(c,{variant:`secondary`,size:`xs`,as:`span`,children:n(`approvals.elevation.reasonLabel`)}),e?(0,x.jsxs)(c,{"data-testid":t,children:[`“`,e,`”`]}):(0,x.jsx)(c,{variant:`secondary`,children:n(`approvals.elevation.noReason`)})]})}function D({request:e,elevation:t,ownMode:n}){let r=m(),i=C()(e,t);return(0,x.jsxs)(`div`,{className:`grid gap-3`,"data-elevation-request":t.mode,children:[(0,x.jsxs)(`div`,{className:`grid gap-1.5`,children:[(0,x.jsx)(w,{from:n,to:t.mode}),(0,x.jsx)(c,{"data-testid":`elevation-sentence`,children:i.sentence})]}),(0,x.jsx)(E,{reason:t.reason,testId:`elevation-reason`}),O(n,t)?(0,x.jsx)(k,{agent:i.agent,own:n}):(0,x.jsx)(c,{variant:`secondary`,size:`sm`,children:r(`approvals.elevation.hint`)})]})}function O(e,t){return e!==void 0&&!g(t.mode,e)}function k({agent:e,own:t}){let n=m();return(0,x.jsx)(`div`,{"data-testid":`elevation-cannot-take`,children:(0,x.jsx)(d,{variant:`secondary`,size:`sm`,icon:(0,x.jsx)(s,{weight:`fill`}),description:n(`approvals.elevation.cannotTake`,{agent:e,own:n(`agents.modes.names.${t}`)})})})}function A({minutes:e,now:t}){let{t:n,locale:r}=p(),i=new Date(t+e*6e4).toISOString();return(0,x.jsxs)(`span`,{className:`flex items-center gap-1.5`,"data-testid":`elevation-until`,children:[(0,x.jsx)(l,{size:14,className:`text-kumo-subtle`,"aria-hidden":!0}),(0,x.jsx)(c,{variant:`secondary`,size:`sm`,as:`span`,children:n(`approvals.elevation.untilIfNow`,{time:v(i,r,{now:t})})})]})}function j({pending:e}){let{t,locale:n}=p(),o=t(`agents.modes.names.${e.elevation.mode}`);return(0,x.jsx)(`span`,{className:`inline-flex`,"data-asks-for":e.elevation.mode,children:(0,x.jsx)(i,{content:(0,x.jsx)(`span`,{className:`block max-w-72`,children:t(`approvals.elevation.asksForTooltip`,{agent:e.request.actor.name??e.request.actor.id,mode:o,duration:h(e.elevation.minutes,n,`long`)})}),children:(0,x.jsx)(a,{href:`/sites/${e.siteId}/approvals`,variant:`plain`,children:(0,x.jsx)(r,{variant:`warning`,appearance:`dot`,children:t(`approvals.elevation.asksFor`,{mode:o})})})})})}export{D as a,C as c,T as i,S as l,j as n,A as o,k as r,O as s,E as t};
|
|
2
|
+
//# sourceMappingURL=ElevationRequest-DiCnHA-N.js.map
|
package/dist/assets/studio/assets/{ForgotPasswordPage-LNtBXfC8.js → ForgotPasswordPage-ClPZ6VQ0.js}
RENAMED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{r as e}from"./rolldown-runtime-hePW80VL.js";import{i as t,r as n}from"./react-CDCuUAOg.js";import{n as r,t as i}from"./button-pa1bq9b85hawg41a-BcGpLLER.js";import{h as a}from"./tanstack-BiJ_7SEB.js";import{m as o,n as s}from"./skeleton-line-m9dyh126t9k07jvg-CHsT8Hs3.js";import{t as c}from"./EnvelopeSimple.es-g-hlqV74.js";import{t as l}from"./banner-msnmqm7of2lck01x-DRzQHuca.js";import{t as u}from"./input-c8lv9ulv0kortliq-Cum0c7P1.js";import{o as d,t as f}from"./api-
|
|
2
|
-
//# sourceMappingURL=ForgotPasswordPage-
|
|
1
|
+
import{r as e}from"./rolldown-runtime-hePW80VL.js";import{i as t,r as n}from"./react-CDCuUAOg.js";import{n as r,t as i}from"./button-pa1bq9b85hawg41a-BcGpLLER.js";import{h as a}from"./tanstack-BiJ_7SEB.js";import{m as o,n as s}from"./skeleton-line-m9dyh126t9k07jvg-CHsT8Hs3.js";import{t as c}from"./EnvelopeSimple.es-g-hlqV74.js";import{t as l}from"./banner-msnmqm7of2lck01x-DRzQHuca.js";import{t as u}from"./input-c8lv9ulv0kortliq-Cum0c7P1.js";import{o as d,t as f}from"./api-K4ZsoxSR.js";import{t as p}from"./AuthLayout-CXAGkrx9.js";import{u as m}from"./i18n-B-06kDA4.js";import{w as h}from"./roles-B7USahqW.js";import{V as g,f as _,x as v}from"./index-DWzjnrnl.js";var y=e(t(),1),b=n();function x(){let e=m(),[t,n]=(0,y.useState)(``),[x,S]=(0,y.useState)(!1),C=a({mutationFn:()=>f.passwordReset.request(t.trim().toLowerCase())}),w=d(C.error)===`email_unavailable`,T=x&&!h(t)?t.trim()?e(`invites.errors.emailInvalid`):e(`invites.errors.emailRequired`):void 0;return(0,b.jsx)(p,{brand:(0,b.jsx)(g,{size:20,weight:`fill`}),product:e(`app.name`),title:C.isSuccess?e(`forgotPassword.sentTitle`):e(`forgotPassword.title`),description:C.isSuccess?void 0:e(`forgotPassword.description`),footer:(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(s,{variant:`secondary`,size:`sm`,as:`span`,children:e(`auth.footer`)}),(0,b.jsx)(_,{size:`sm`})]}),children:C.isSuccess?(0,b.jsxs)(`div`,{className:`grid gap-4`,"data-testid":`forgot-sent`,children:[(0,b.jsx)(l,{variant:`default`,icon:(0,b.jsx)(c,{weight:`fill`}),title:e(`forgotPassword.sentTitle`),description:e(`forgotPassword.sent`,{email:t.trim()})}),(0,b.jsx)(r,{href:`/login`,variant:`secondary`,className:`w-full justify-center`,children:e(`forgotPassword.back`)})]}):w?(0,b.jsxs)(`div`,{className:`grid gap-4`,"data-testid":`forgot-unavailable`,children:[(0,b.jsx)(l,{variant:`secondary`,icon:(0,b.jsx)(o,{weight:`fill`}),title:e(`forgotPassword.unavailableTitle`),description:e(`forgotPassword.unavailable`)}),(0,b.jsx)(r,{href:`/login`,variant:`secondary`,className:`w-full justify-center`,children:e(`forgotPassword.back`)})]}):(0,b.jsxs)(`form`,{onSubmit:e=>{e.preventDefault(),S(!0),!C.isPending&&h(t)&&C.mutate()},className:`grid gap-4`,"data-testid":`forgot-form`,noValidate:!0,children:[(0,b.jsx)(u,{label:e(`auth.email`),name:`email`,type:`email`,value:t,onValueChange:n,autoComplete:`email`,error:T,className:`w-full`}),C.error&&(0,b.jsx)(v,{error:C.error}),(0,b.jsx)(i,{type:`submit`,variant:`primary`,loading:C.isPending,className:`w-full`,children:e(`forgotPassword.submit`)}),(0,b.jsx)(r,{href:`/login`,variant:`ghost`,className:`w-full justify-center`,children:e(`forgotPassword.back`)})]})})}export{x as ForgotPasswordPage};
|
|
2
|
+
//# sourceMappingURL=ForgotPasswordPage-ClPZ6VQ0.js.map
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{r as e}from"./react-CDCuUAOg.js";import{t}from"./banner-msnmqm7of2lck01x-DRzQHuca.js";import{u as n}from"./i18n-B-06kDA4.js";import{X as r}from"./index-DWzjnrnl.js";var i=e();function a({reason:e}){let a=n();return e?(0,i.jsx)(`div`,{"data-testid":`view-only`,children:(0,i.jsx)(t,{variant:`secondary`,icon:(0,i.jsx)(r,{weight:`fill`}),title:a(`gating.readOnlyTitle`),description:e})}):null}function o({reason:e,className:t,children:n}){return(0,i.jsx)(`fieldset`,{disabled:e!==void 0,"data-read-only":e?`true`:void 0,className:t??`flex min-w-0 flex-col gap-4`,children:n})}export{a as n,o as t};
|
|
2
|
+
//# sourceMappingURL=Gating-mRuy0Aw6.js.map
|
package/dist/assets/studio/assets/{GovernanceDialog-DR0m4Bhp.js → GovernanceDialog-BOsmZ9sA.js}
RENAMED
|
@@ -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-D1xrG37q.js";import{S as a,_ as o,h as s}from"./tanstack-BiJ_7SEB.js";import{a as c}from"./Taxonomy-CeQUBEeZ.js";import{n as l}from"./DirectionalIcon-BKKMj3KT.js";import{n as u,t as d}from"./skeleton-line-m9dyh126t9k07jvg-CHsT8Hs3.js";import{t as f}from"./checkbox-lbo436duy7krxcsk-BmusNS83.js";import{t as p}from"./Prohibit.es-CAvPLn3v.js";import{n as m,t as h}from"./banner-msnmqm7of2lck01x-DRzQHuca.js";import{t as ee}from"./Toast-BHyBhGXI.js";import{o as te}from"./input-c8lv9ulv0kortliq-Cum0c7P1.js";import{t as g}from"./input-group-fjr4r5ax0x78ppax-e-s-YUWj.js";import{a as _,t as v}from"./api-Sbz4Rbu7.js";import{i as y,r as b}from"./TermPickers-cZIwRG5t.js";import{t as x}from"./layer-dialog-j5ywmzs46ccg6oqy-DyWF5y24.js";import{t as S}from"./InsetPanel-CHSg953_.js";import{t as C}from"./Status-BgB2wP8j.js";import{a as ne,u as w}from"./i18n-Cjiv6Esx.js";import{a as re}from"./names-R-Dypr9Y.js";import{E as T,d as ie,r as E,s as ae,y as oe}from"./taxonomy-S-y5xbUa.js";import{$ as D,b as O,ut as se}from"./index-Boved2Nz.js";import{t as ce}from"./useSettled-C0sKy_Gd.js";var k=e(n(),1),A=new Map([[`bold`,k.createElement(k.Fragment,null,k.createElement(`path`,{d:`M116,132V80a12,12,0,0,1,24,0v52a12,12,0,0,1-24,0ZM236,91.55v72.9a19.86,19.86,0,0,1-5.86,14.14l-51.55,51.55A19.85,19.85,0,0,1,164.45,236H91.55a19.85,19.85,0,0,1-14.14-5.86L25.86,178.59A19.86,19.86,0,0,1,20,164.45V91.55a19.86,19.86,0,0,1,5.86-14.14L77.41,25.86A19.85,19.85,0,0,1,91.55,20h72.9a19.85,19.85,0,0,1,14.14,5.86l51.55,51.55A19.86,19.86,0,0,1,236,91.55Zm-24,1.66L162.79,44H93.21L44,93.21v69.58L93.21,212h69.58L212,162.79ZM128,156a16,16,0,1,0,16,16A16,16,0,0,0,128,156Z`}))],[`fill`,k.createElement(k.Fragment,null,k.createElement(`path`,{d:`M227.31,80.23,175.77,28.69A16.13,16.13,0,0,0,164.45,24H91.55a16.13,16.13,0,0,0-11.32,4.69L28.69,80.23A16.13,16.13,0,0,0,24,91.55v72.9a16.13,16.13,0,0,0,4.69,11.32l51.54,51.54A16.13,16.13,0,0,0,91.55,232h72.9a16.13,16.13,0,0,0,11.32-4.69l51.54-51.54A16.13,16.13,0,0,0,232,164.45V91.55A16.13,16.13,0,0,0,227.31,80.23ZM120,80a8,8,0,0,1,16,0v56a8,8,0,0,1-16,0Zm8,104a12,12,0,1,1,12-12A12,12,0,0,1,128,184Z`}))],[`regular`,k.createElement(k.Fragment,null,k.createElement(`path`,{d:`M120,136V80a8,8,0,0,1,16,0v56a8,8,0,0,1-16,0ZM232,91.55v72.9a15.86,15.86,0,0,1-4.69,11.31l-51.55,51.55A15.86,15.86,0,0,1,164.45,232H91.55a15.86,15.86,0,0,1-11.31-4.69L28.69,175.76A15.86,15.86,0,0,1,24,164.45V91.55a15.86,15.86,0,0,1,4.69-11.31L80.24,28.69A15.86,15.86,0,0,1,91.55,24h72.9a15.86,15.86,0,0,1,11.31,4.69l51.55,51.55A15.86,15.86,0,0,1,232,91.55Zm-16,0L164.45,40H91.55L40,91.55v72.9L91.55,216h72.9L216,164.45ZM128,160a12,12,0,1,0,12,12A12,12,0,0,0,128,160Z`}))]]),j=k.forwardRef((e,n)=>k.createElement(t,{ref:n,...e,weights:A}));j.displayName=`WarningOctagonIcon`;var M=j,N=r(),le={required:`governance.rename.errors.required`,invalid:`governance.rename.errors.invalid`,tooLong:`governance.rename.errors.tooLong`,taken:`governance.rename.errors.taken`,reserved:`governance.rename.errors.reserved`};function P(e){if(!(e instanceof _)||e.body.error!==`too_large`)return;let t=e.body.details??{};return{entries:t.entries??0,limit:t.limit??E.governanceEntries}}function F({target:e,tax:t,data:n,onOpenChange:r,onDone:i}){let l=w(),d=a(),m=ee(),S=e!==void 0,C=(0,k.useRef)(e);e&&(C.current=e);let D=e??C.current,A=D?.term,j=A?.siteId??``,[M,F]=(0,k.useState)(``),[I,L]=(0,k.useState)(!1),[R,z]=(0,k.useState)(null);(0,k.useEffect)(()=>{e&&(F(e.term.slug),L(!1),z(e.kind===`move`?e.term.parentId??null:e.into??null))},[e]);let B=D?.kind??`rename`,V=t?n.itemsOf(t):[],H=V.map(e=>e.term),U=e=>n.name(e),W=A?U(A):``,de=A?ie(H,A.id):new Set,fe=y(V,U,e=>e.status===`active`&&!e.mergedInto&&!de.has(e.id)),pe=y(V,U,e=>e.status===`active`&&!e.mergedInto&&e.id!==A?.id),me=A?y(V,U,e=>oe(H,A).some(t=>t.id===e.id)):[],G=B===`rename`&&A?T(M,H,A.id):void 0,K=ce(M),q=A?.visibility===`public`?`internal`:`public`,J=A?B===`rename`?K!==A.slug&&(e=>!e||e===`reserved`&&I)(T(K,H,A.id))?{op:`rename`,slug:K,...I?{reclaim:!0}:{}}:void 0:B===`merge`?R?{op:`merge`,into:R}:void 0:B===`reviewMerge`?R?{op:`review`,decision:`merge`,into:R}:void 0:B===`retire`?{op:`retire`,...R?{redirectTo:R}:{}}:B===`move`?(A.parentId??null)===R?void 0:{op:`parent`,parentId:R}:B===`visibility`?{op:`visibility`,visibility:q}:{op:`review`,decision:`reject`}:void 0,Y=B===`rename`&&G===`reserved`&&!I,X=o({queryKey:[`governance-preview`,A?.id,A?.rev,J],queryFn:()=>v.terms.preview(A,J),enabled:S&&J!==void 0&&!Y,staleTime:0}),Z=s({mutationFn:()=>v.terms.govern(A,J),onSuccess:async e=>{await c(d,j),m.success(l(`governance.done.${B}`,{name:W}),e.result.entries>0||e.result.redirects.length>0?l(`governance.done.detail`,{entries:e.result.entries,redirects:e.result.redirects.length}):l(`governance.oneSnapshot`)),D&&i?.(e,D),r(!1)}});(0,k.useEffect)(()=>{S&&Z.reset()},[S,D?.kind,A?.id]);let Q=X.data,he=Q?.tooLarge??P(Z.error),$=Q?.blocked,ge=J!==void 0&&!Y&&Q!==void 0&&!X.isFetching,_e=B===`retire`||B===`reject`,ve=Z.error&&!P(Z.error)?Z.error instanceof _&&Z.error.status===409?Error(l(`governance.conflict`)):Z.error:void 0;return(0,N.jsx)(x.Root,{open:S,onOpenChange:r,dismissDisabled:Z.isPending,children:(0,N.jsxs)(x.Content,{size:`lg`,closeLabel:l(`common.close`),children:[(0,N.jsx)(x.Title,{children:l(B===`visibility`?`governance.visibility.title.${q}`:`governance.${B}.title`,{name:W})}),(0,N.jsx)(x.Description,{children:l(B===`visibility`?`governance.visibility.description.${q}`:`governance.${B}.description`)}),(0,N.jsx)(x.Body,{children:(0,N.jsxs)(`div`,{className:`grid gap-5`,"data-testid":`governance-dialog`,"data-kind":B,children:[B===`rename`&&t&&A&&(0,N.jsxs)(`div`,{className:`grid gap-3`,children:[(0,N.jsx)(te,{label:l(`governance.rename.slug`),description:l(`governance.rename.slugHint`),error:G&&M!==A.slug&&!(G===`reserved`&&I)?{message:l(le[G]),match:!0}:void 0,children:(0,N.jsxs)(g,{className:`w-full`,children:[(0,N.jsxs)(g.Addon,{children:[t.archive.basePath,`/`]}),(0,N.jsx)(g.Input,{"aria-label":l(`governance.rename.slug`),value:M,onChange:e=>F(re(e.target.value)||e.target.value.toLowerCase()),spellCheck:!1,className:`font-mono`,"data-testid":`rename-slug`})]})}),G===`reserved`&&M!==A.slug&&(0,N.jsx)(f,{label:l(`governance.rename.reclaim`),checked:I,onCheckedChange:e=>L(e)}),(A.slugHistory?.length??0)>0&&(0,N.jsx)(u,{variant:`secondary`,size:`sm`,children:l(`governance.rename.history`,{slugs:ne(A.slugHistory??[])})})]}),(B===`merge`||B===`reviewMerge`)&&(0,N.jsx)(b,{label:l(`governance.merge.target`),description:l(`governance.merge.targetHint`),options:fe.filter(e=>e.id!==A?.id),value:R,onChange:z,name:U,placeholder:l(`governance.merge.targetPlaceholder`),testId:`merge-target`}),B===`retire`&&(0,N.jsx)(b,{label:l(`governance.retire.redirectTo`),description:t?.hierarchical&&A?.parentId?l(`governance.retire.redirectToParentHint`):l(`governance.retire.redirectToHint`),options:pe,value:R,onChange:z,name:U,none:l(`governance.retire.noRedirect`),placeholder:l(`governance.retire.redirectPlaceholder`),testId:`retire-target`}),B===`move`&&(0,N.jsx)(b,{label:l(`governance.move.parent`),description:l(`governance.move.parentHint`,{max:E.depthMax}),options:me,value:R,onChange:z,name:U,none:l(`governance.move.topLevel`),placeholder:l(`governance.move.parentPlaceholder`),testId:`move-parent`}),(0,N.jsx)(ue,{loading:J!==void 0&&!Y&&X.isPending,waiting:J===void 0,error:X.error,preview:Q,tooLarge:he,kind:B,path:t&&A?ae(t,A.slug):``}),$&&(0,N.jsx)(h,{variant:`error`,icon:(0,N.jsx)(p,{weight:`fill`}),title:l(`governance.blocked.title`,{count:$.count}),description:l(`governance.blocked.description`),"data-testid":`governance-blocked`}),(0,N.jsx)(O,{error:ve}),(0,N.jsxs)(`div`,{className:`flex items-start gap-2`,"data-testid":`one-snapshot`,children:[(0,N.jsx)(`span`,{className:`flex h-lh items-center text-kumo-subtle`,children:(0,N.jsx)(se,{size:16})}),(0,N.jsx)(u,{variant:`secondary`,size:`sm`,as:`span`,children:l(`governance.oneSnapshot`)})]})]})}),(0,N.jsx)(x.Actions,{dismissLabel:l(`common.cancel`),children:(0,N.jsx)(x.Actions.Primary,{variant:_e?`destructive`:`primary`,loading:Z.isPending,disabled:!ge||!!he||!!$,onClick:()=>Z.mutate(),"data-testid":`governance-confirm`,children:l(B===`visibility`?`governance.visibility.confirm.${q}`:`governance.${B}.confirm`)})})]})})}function ue({loading:e,waiting:t,error:n,preview:r,tooLarge:a,kind:o,path:s}){let c=w();if(t)return(0,N.jsx)(S,{children:(0,N.jsx)(u,{variant:`secondary`,size:`sm`,children:c(`governance.preview.waiting`)})});if(n)return(0,N.jsx)(O,{error:n});if(e||!r)return(0,N.jsxs)(S,{className:`gap-3`,label:c(`governance.preview.loading`),children:[(0,N.jsx)(d,{}),(0,N.jsx)(d,{})]});let f=r.entries.items.slice(0,5),p=r.entries.count-f.length;return(0,N.jsxs)(`div`,{className:`grid gap-4`,"data-testid":`governance-preview`,children:[a&&(0,N.jsx)(h,{variant:`error`,icon:(0,N.jsx)(M,{weight:`fill`}),title:c(`governance.tooLarge.title`),description:c(`governance.tooLarge.description`,{count:a.entries,limit:a.limit}),"data-testid":`too-large`}),(0,N.jsxs)(`section`,{className:`grid gap-2`,"aria-label":c(`governance.preview.articles`),children:[(0,N.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,N.jsx)(u,{bold:!0,as:`span`,children:c(`governance.preview.articles`)}),(0,N.jsx)(i,{variant:`secondary`,children:r.entries.count})]}),(0,N.jsx)(u,{variant:`secondary`,size:`sm`,children:r.entries.count===0?c(`governance.preview.noArticles`):r.entries.rewritten?c(o===`retire`||o===`reject`?`governance.preview.articlesLose`:`governance.preview.articlesMove`,{limit:E.governanceEntries}):c(`governance.preview.articlesKeep`)}),f.length>0&&(0,N.jsx)(S,{children:(0,N.jsxs)(`div`,{className:`grid divide-y divide-kumo-hairline`,children:[f.map(e=>(0,N.jsxs)(`div`,{className:`flex min-w-0 flex-wrap items-center justify-between gap-x-3 gap-y-1 py-2 first:pt-0 last:pb-0`,"data-entry-id":e.id,children:[(0,N.jsxs)(`span`,{className:`grid min-w-0 gap-0.5`,children:[(0,N.jsx)(u,{as:`span`,truncate:!0,children:e.title||c(`articles.untitled`)}),(0,N.jsxs)(u,{variant:`mono-secondary`,as:`span`,truncate:!0,children:[`/`,e.collection,`/`,e.slug]})]}),(0,N.jsx)(C,{status:e.status})]},e.id)),p>0&&(0,N.jsx)(`div`,{className:`pt-2`,children:(0,N.jsx)(u,{variant:`secondary`,size:`sm`,as:`span`,children:c(`governance.preview.more`,{count:p})})})]})})]}),(0,N.jsxs)(`section`,{className:`grid gap-2`,"aria-label":c(`governance.preview.redirects`),children:[(0,N.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,N.jsx)(u,{bold:!0,as:`span`,children:c(`governance.preview.redirects`)}),(0,N.jsx)(i,{variant:`secondary`,children:r.redirects.length})]}),r.redirects.length===0?(0,N.jsx)(u,{variant:`secondary`,size:`sm`,children:c(`governance.preview.noRedirects`)}):(0,N.jsxs)(S,{className:`gap-2`,children:[r.redirects.map(e=>(0,N.jsxs)(`div`,{className:`flex min-w-0 flex-wrap items-center gap-x-2 gap-y-1`,"data-redirect-from":e.from,children:[(0,N.jsx)(u,{variant:`mono`,as:`span`,children:e.from}),(0,N.jsx)(l,{size:14}),(0,N.jsx)(u,{variant:`mono`,as:`span`,children:e.to}),(0,N.jsx)(i,{variant:`outline`,children:c(`governance.preview.permanent`)})]},e.from)),(0,N.jsx)(u,{variant:`secondary`,size:`sm`,children:c(`governance.preview.prefix`)})]}),r.repointed>0&&(0,N.jsx)(u,{variant:`secondary`,size:`sm`,children:c(`governance.preview.repointed`,{count:r.repointed})})]}),r.archiveGone===`gone`&&(0,N.jsx)(h,{variant:`alert`,icon:(0,N.jsx)(m,{weight:`fill`}),title:c(`governance.gone.title`),description:c(`governance.gone.description`,{path:s}),"data-testid":`gone-410`}),r.archiveGone===`not_found`&&(0,N.jsx)(h,{variant:`alert`,icon:(0,N.jsx)(m,{weight:`fill`}),title:c(`governance.hidden.title`),description:c(`governance.hidden.description`,{path:s})}),r.archiveAppears&&(0,N.jsx)(h,{icon:(0,N.jsx)(D,{weight:`fill`}),title:c(`governance.appears.title`),description:c(`governance.appears.description`,{path:r.archiveAppears})})]})}export{F as t};
|
|
2
|
-
//# sourceMappingURL=GovernanceDialog-
|
|
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-D1xrG37q.js";import{S as a,_ as o,h as s}from"./tanstack-BiJ_7SEB.js";import{a as c}from"./Taxonomy-CDd52lEj.js";import{n as l}from"./DirectionalIcon-BKKMj3KT.js";import{n as u,t as d}from"./skeleton-line-m9dyh126t9k07jvg-CHsT8Hs3.js";import{t as f}from"./checkbox-lbo436duy7krxcsk-BmusNS83.js";import{t as p}from"./Prohibit.es-CAvPLn3v.js";import{n as m,t as h}from"./banner-msnmqm7of2lck01x-DRzQHuca.js";import{t as ee}from"./Toast-MSfrCjAr.js";import{o as te}from"./input-c8lv9ulv0kortliq-Cum0c7P1.js";import{t as g}from"./input-group-fjr4r5ax0x78ppax-e-s-YUWj.js";import{a as _,t as v}from"./api-K4ZsoxSR.js";import{i as y,r as b}from"./TermPickers-DzlmKYS_.js";import{t as x}from"./layer-dialog-j5ywmzs46ccg6oqy-Dg9cqt2A.js";import{t as S}from"./InsetPanel-CHSg953_.js";import{t as C}from"./Status-Ck8cp5VU.js";import{a as ne,u as w}from"./i18n-B-06kDA4.js";import{a as re}from"./names-R-Dypr9Y.js";import{E as T,d as ie,r as E,s as ae,y as oe}from"./taxonomy-S-y5xbUa.js";import{Q as D,lt as se,x as O}from"./index-DWzjnrnl.js";import{t as ce}from"./useSettled-C0sKy_Gd.js";var k=e(n(),1),A=new Map([[`bold`,k.createElement(k.Fragment,null,k.createElement(`path`,{d:`M116,132V80a12,12,0,0,1,24,0v52a12,12,0,0,1-24,0ZM236,91.55v72.9a19.86,19.86,0,0,1-5.86,14.14l-51.55,51.55A19.85,19.85,0,0,1,164.45,236H91.55a19.85,19.85,0,0,1-14.14-5.86L25.86,178.59A19.86,19.86,0,0,1,20,164.45V91.55a19.86,19.86,0,0,1,5.86-14.14L77.41,25.86A19.85,19.85,0,0,1,91.55,20h72.9a19.85,19.85,0,0,1,14.14,5.86l51.55,51.55A19.86,19.86,0,0,1,236,91.55Zm-24,1.66L162.79,44H93.21L44,93.21v69.58L93.21,212h69.58L212,162.79ZM128,156a16,16,0,1,0,16,16A16,16,0,0,0,128,156Z`}))],[`fill`,k.createElement(k.Fragment,null,k.createElement(`path`,{d:`M227.31,80.23,175.77,28.69A16.13,16.13,0,0,0,164.45,24H91.55a16.13,16.13,0,0,0-11.32,4.69L28.69,80.23A16.13,16.13,0,0,0,24,91.55v72.9a16.13,16.13,0,0,0,4.69,11.32l51.54,51.54A16.13,16.13,0,0,0,91.55,232h72.9a16.13,16.13,0,0,0,11.32-4.69l51.54-51.54A16.13,16.13,0,0,0,232,164.45V91.55A16.13,16.13,0,0,0,227.31,80.23ZM120,80a8,8,0,0,1,16,0v56a8,8,0,0,1-16,0Zm8,104a12,12,0,1,1,12-12A12,12,0,0,1,128,184Z`}))],[`regular`,k.createElement(k.Fragment,null,k.createElement(`path`,{d:`M120,136V80a8,8,0,0,1,16,0v56a8,8,0,0,1-16,0ZM232,91.55v72.9a15.86,15.86,0,0,1-4.69,11.31l-51.55,51.55A15.86,15.86,0,0,1,164.45,232H91.55a15.86,15.86,0,0,1-11.31-4.69L28.69,175.76A15.86,15.86,0,0,1,24,164.45V91.55a15.86,15.86,0,0,1,4.69-11.31L80.24,28.69A15.86,15.86,0,0,1,91.55,24h72.9a15.86,15.86,0,0,1,11.31,4.69l51.55,51.55A15.86,15.86,0,0,1,232,91.55Zm-16,0L164.45,40H91.55L40,91.55v72.9L91.55,216h72.9L216,164.45ZM128,160a12,12,0,1,0,12,12A12,12,0,0,0,128,160Z`}))]]),j=k.forwardRef((e,n)=>k.createElement(t,{ref:n,...e,weights:A}));j.displayName=`WarningOctagonIcon`;var M=j,N=r(),le={required:`governance.rename.errors.required`,invalid:`governance.rename.errors.invalid`,tooLong:`governance.rename.errors.tooLong`,taken:`governance.rename.errors.taken`,reserved:`governance.rename.errors.reserved`};function P(e){if(!(e instanceof _)||e.body.error!==`too_large`)return;let t=e.body.details??{};return{entries:t.entries??0,limit:t.limit??E.governanceEntries}}function F({target:e,tax:t,data:n,onOpenChange:r,onDone:i}){let l=w(),d=a(),m=ee(),S=e!==void 0,C=(0,k.useRef)(e);e&&(C.current=e);let D=e??C.current,A=D?.term,j=A?.siteId??``,[M,F]=(0,k.useState)(``),[I,L]=(0,k.useState)(!1),[R,z]=(0,k.useState)(null);(0,k.useEffect)(()=>{e&&(F(e.term.slug),L(!1),z(e.kind===`move`?e.term.parentId??null:e.into??null))},[e]);let B=D?.kind??`rename`,V=t?n.itemsOf(t):[],H=V.map(e=>e.term),U=e=>n.name(e),W=A?U(A):``,de=A?ie(H,A.id):new Set,fe=y(V,U,e=>e.status===`active`&&!e.mergedInto&&!de.has(e.id)),pe=y(V,U,e=>e.status===`active`&&!e.mergedInto&&e.id!==A?.id),me=A?y(V,U,e=>oe(H,A).some(t=>t.id===e.id)):[],G=B===`rename`&&A?T(M,H,A.id):void 0,K=ce(M),q=A?.visibility===`public`?`internal`:`public`,J=A?B===`rename`?K!==A.slug&&(e=>!e||e===`reserved`&&I)(T(K,H,A.id))?{op:`rename`,slug:K,...I?{reclaim:!0}:{}}:void 0:B===`merge`?R?{op:`merge`,into:R}:void 0:B===`reviewMerge`?R?{op:`review`,decision:`merge`,into:R}:void 0:B===`retire`?{op:`retire`,...R?{redirectTo:R}:{}}:B===`move`?(A.parentId??null)===R?void 0:{op:`parent`,parentId:R}:B===`visibility`?{op:`visibility`,visibility:q}:{op:`review`,decision:`reject`}:void 0,Y=B===`rename`&&G===`reserved`&&!I,X=o({queryKey:[`governance-preview`,A?.id,A?.rev,J],queryFn:()=>v.terms.preview(A,J),enabled:S&&J!==void 0&&!Y,staleTime:0}),Z=s({mutationFn:()=>v.terms.govern(A,J),onSuccess:async e=>{await c(d,j),m.success(l(`governance.done.${B}`,{name:W}),e.result.entries>0||e.result.redirects.length>0?l(`governance.done.detail`,{entries:e.result.entries,redirects:e.result.redirects.length}):l(`governance.oneSnapshot`)),D&&i?.(e,D),r(!1)}});(0,k.useEffect)(()=>{S&&Z.reset()},[S,D?.kind,A?.id]);let Q=X.data,he=Q?.tooLarge??P(Z.error),$=Q?.blocked,ge=J!==void 0&&!Y&&Q!==void 0&&!X.isFetching,_e=B===`retire`||B===`reject`,ve=Z.error&&!P(Z.error)?Z.error instanceof _&&Z.error.status===409?Error(l(`governance.conflict`)):Z.error:void 0;return(0,N.jsx)(x.Root,{open:S,onOpenChange:r,dismissDisabled:Z.isPending,children:(0,N.jsxs)(x.Content,{size:`lg`,closeLabel:l(`common.close`),children:[(0,N.jsx)(x.Title,{children:l(B===`visibility`?`governance.visibility.title.${q}`:`governance.${B}.title`,{name:W})}),(0,N.jsx)(x.Description,{children:l(B===`visibility`?`governance.visibility.description.${q}`:`governance.${B}.description`)}),(0,N.jsx)(x.Body,{children:(0,N.jsxs)(`div`,{className:`grid gap-5`,"data-testid":`governance-dialog`,"data-kind":B,children:[B===`rename`&&t&&A&&(0,N.jsxs)(`div`,{className:`grid gap-3`,children:[(0,N.jsx)(te,{label:l(`governance.rename.slug`),description:l(`governance.rename.slugHint`),error:G&&M!==A.slug&&!(G===`reserved`&&I)?{message:l(le[G]),match:!0}:void 0,children:(0,N.jsxs)(g,{className:`w-full`,children:[(0,N.jsxs)(g.Addon,{children:[t.archive.basePath,`/`]}),(0,N.jsx)(g.Input,{"aria-label":l(`governance.rename.slug`),value:M,onChange:e=>F(re(e.target.value)||e.target.value.toLowerCase()),spellCheck:!1,className:`font-mono`,"data-testid":`rename-slug`})]})}),G===`reserved`&&M!==A.slug&&(0,N.jsx)(f,{label:l(`governance.rename.reclaim`),checked:I,onCheckedChange:e=>L(e)}),(A.slugHistory?.length??0)>0&&(0,N.jsx)(u,{variant:`secondary`,size:`sm`,children:l(`governance.rename.history`,{slugs:ne(A.slugHistory??[])})})]}),(B===`merge`||B===`reviewMerge`)&&(0,N.jsx)(b,{label:l(`governance.merge.target`),description:l(`governance.merge.targetHint`),options:fe.filter(e=>e.id!==A?.id),value:R,onChange:z,name:U,placeholder:l(`governance.merge.targetPlaceholder`),testId:`merge-target`}),B===`retire`&&(0,N.jsx)(b,{label:l(`governance.retire.redirectTo`),description:t?.hierarchical&&A?.parentId?l(`governance.retire.redirectToParentHint`):l(`governance.retire.redirectToHint`),options:pe,value:R,onChange:z,name:U,none:l(`governance.retire.noRedirect`),placeholder:l(`governance.retire.redirectPlaceholder`),testId:`retire-target`}),B===`move`&&(0,N.jsx)(b,{label:l(`governance.move.parent`),description:l(`governance.move.parentHint`,{max:E.depthMax}),options:me,value:R,onChange:z,name:U,none:l(`governance.move.topLevel`),placeholder:l(`governance.move.parentPlaceholder`),testId:`move-parent`}),(0,N.jsx)(ue,{loading:J!==void 0&&!Y&&X.isPending,waiting:J===void 0,error:X.error,preview:Q,tooLarge:he,kind:B,path:t&&A?ae(t,A.slug):``}),$&&(0,N.jsx)(h,{variant:`error`,icon:(0,N.jsx)(p,{weight:`fill`}),title:l(`governance.blocked.title`,{count:$.count}),description:l(`governance.blocked.description`),"data-testid":`governance-blocked`}),(0,N.jsx)(O,{error:ve}),(0,N.jsxs)(`div`,{className:`flex items-start gap-2`,"data-testid":`one-snapshot`,children:[(0,N.jsx)(`span`,{className:`flex h-lh items-center text-kumo-subtle`,children:(0,N.jsx)(se,{size:16})}),(0,N.jsx)(u,{variant:`secondary`,size:`sm`,as:`span`,children:l(`governance.oneSnapshot`)})]})]})}),(0,N.jsx)(x.Actions,{dismissLabel:l(`common.cancel`),children:(0,N.jsx)(x.Actions.Primary,{variant:_e?`destructive`:`primary`,loading:Z.isPending,disabled:!ge||!!he||!!$,onClick:()=>Z.mutate(),"data-testid":`governance-confirm`,children:l(B===`visibility`?`governance.visibility.confirm.${q}`:`governance.${B}.confirm`)})})]})})}function ue({loading:e,waiting:t,error:n,preview:r,tooLarge:a,kind:o,path:s}){let c=w();if(t)return(0,N.jsx)(S,{children:(0,N.jsx)(u,{variant:`secondary`,size:`sm`,children:c(`governance.preview.waiting`)})});if(n)return(0,N.jsx)(O,{error:n});if(e||!r)return(0,N.jsxs)(S,{className:`gap-3`,label:c(`governance.preview.loading`),children:[(0,N.jsx)(d,{}),(0,N.jsx)(d,{})]});let f=r.entries.items.slice(0,5),p=r.entries.count-f.length;return(0,N.jsxs)(`div`,{className:`grid gap-4`,"data-testid":`governance-preview`,children:[a&&(0,N.jsx)(h,{variant:`error`,icon:(0,N.jsx)(M,{weight:`fill`}),title:c(`governance.tooLarge.title`),description:c(`governance.tooLarge.description`,{count:a.entries,limit:a.limit}),"data-testid":`too-large`}),(0,N.jsxs)(`section`,{className:`grid gap-2`,"aria-label":c(`governance.preview.articles`),children:[(0,N.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,N.jsx)(u,{bold:!0,as:`span`,children:c(`governance.preview.articles`)}),(0,N.jsx)(i,{variant:`secondary`,children:r.entries.count})]}),(0,N.jsx)(u,{variant:`secondary`,size:`sm`,children:r.entries.count===0?c(`governance.preview.noArticles`):r.entries.rewritten?c(o===`retire`||o===`reject`?`governance.preview.articlesLose`:`governance.preview.articlesMove`,{limit:E.governanceEntries}):c(`governance.preview.articlesKeep`)}),f.length>0&&(0,N.jsx)(S,{children:(0,N.jsxs)(`div`,{className:`grid divide-y divide-kumo-hairline`,children:[f.map(e=>(0,N.jsxs)(`div`,{className:`flex min-w-0 flex-wrap items-center justify-between gap-x-3 gap-y-1 py-2 first:pt-0 last:pb-0`,"data-entry-id":e.id,children:[(0,N.jsxs)(`span`,{className:`grid min-w-0 gap-0.5`,children:[(0,N.jsx)(u,{as:`span`,truncate:!0,children:e.title||c(`articles.untitled`)}),(0,N.jsxs)(u,{variant:`mono-secondary`,as:`span`,truncate:!0,children:[`/`,e.collection,`/`,e.slug]})]}),(0,N.jsx)(C,{status:e.status})]},e.id)),p>0&&(0,N.jsx)(`div`,{className:`pt-2`,children:(0,N.jsx)(u,{variant:`secondary`,size:`sm`,as:`span`,children:c(`governance.preview.more`,{count:p})})})]})})]}),(0,N.jsxs)(`section`,{className:`grid gap-2`,"aria-label":c(`governance.preview.redirects`),children:[(0,N.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,N.jsx)(u,{bold:!0,as:`span`,children:c(`governance.preview.redirects`)}),(0,N.jsx)(i,{variant:`secondary`,children:r.redirects.length})]}),r.redirects.length===0?(0,N.jsx)(u,{variant:`secondary`,size:`sm`,children:c(`governance.preview.noRedirects`)}):(0,N.jsxs)(S,{className:`gap-2`,children:[r.redirects.map(e=>(0,N.jsxs)(`div`,{className:`flex min-w-0 flex-wrap items-center gap-x-2 gap-y-1`,"data-redirect-from":e.from,children:[(0,N.jsx)(u,{variant:`mono`,as:`span`,children:e.from}),(0,N.jsx)(l,{size:14}),(0,N.jsx)(u,{variant:`mono`,as:`span`,children:e.to}),(0,N.jsx)(i,{variant:`outline`,children:c(`governance.preview.permanent`)})]},e.from)),(0,N.jsx)(u,{variant:`secondary`,size:`sm`,children:c(`governance.preview.prefix`)})]}),r.repointed>0&&(0,N.jsx)(u,{variant:`secondary`,size:`sm`,children:c(`governance.preview.repointed`,{count:r.repointed})})]}),r.archiveGone===`gone`&&(0,N.jsx)(h,{variant:`alert`,icon:(0,N.jsx)(m,{weight:`fill`}),title:c(`governance.gone.title`),description:c(`governance.gone.description`,{path:s}),"data-testid":`gone-410`}),r.archiveGone===`not_found`&&(0,N.jsx)(h,{variant:`alert`,icon:(0,N.jsx)(m,{weight:`fill`}),title:c(`governance.hidden.title`),description:c(`governance.hidden.description`,{path:s})}),r.archiveAppears&&(0,N.jsx)(h,{icon:(0,N.jsx)(D,{weight:`fill`}),title:c(`governance.appears.title`),description:c(`governance.appears.description`,{path:r.archiveAppears})})]})}export{F as t};
|
|
2
|
+
//# sourceMappingURL=GovernanceDialog-BOsmZ9sA.js.map
|