@cloudhal/cli 0.3.2 → 0.3.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/assets/starters/blog/package.json +4 -4
- package/dist/assets/studio/assets/{AccountPage-Bm5BeHWl.js → AccountPage-C_F6GEbp.js} +2 -2
- package/dist/assets/studio/assets/{ActivityPage-D8RUaugX.js → ActivityPage-CAKmV0_b.js} +2 -2
- package/dist/assets/studio/assets/AgentModes-D8HMrK7G.js +2 -0
- package/dist/assets/studio/assets/AgentsPage-DTYrfM8r.js +2 -0
- package/dist/assets/studio/assets/{AnalyticsPage-BmO0u8xD.js → AnalyticsPage-BHH7HUno.js} +2 -2
- package/dist/assets/studio/assets/{ApprovalDialog-DXKCyEdf.js → ApprovalDialog-Dv9mtEvX.js} +2 -2
- package/dist/assets/studio/assets/ApprovalsPage-BaCTOLgB.js +3 -0
- package/dist/assets/studio/assets/{ArticleEditorPage-lHoUmERU.js → ArticleEditorPage-DNo73SWr.js} +2 -2
- package/dist/assets/studio/assets/{ArticlesPage-C4HQcyMZ.js → ArticlesPage-aY2U4lYq.js} +2 -2
- package/dist/assets/studio/assets/{AssetPage-b0erj1AI.js → AssetPage-CQa3FSgH.js} +2 -2
- package/dist/assets/studio/assets/{Audit-DgbpP_nz.js → Audit-BsehRESJ.js} +2 -2
- package/dist/assets/studio/assets/{AuditBadges-BEqBnWoz.js → AuditBadges-Bd8EnwON.js} +2 -2
- package/dist/assets/studio/assets/{AuthLayout-CXAGkrx9.js → AuthLayout-BNLNRRmt.js} +2 -2
- package/dist/assets/studio/assets/{AutocompleteItem-drxau0wm3735nihq-C-iAptWL.js → AutocompleteItem-drxau0wm3735nihq-DZezfUcW.js} +2 -2
- package/dist/assets/studio/assets/{AutomationsPage-C4pRmT5O.js → AutomationsPage-C1rjUwWk.js} +2 -2
- package/dist/assets/studio/assets/{BlockPropsForm-fj5gMAa0.js → BlockPropsForm-BoZ_Rz4z.js} +2 -2
- package/dist/assets/studio/assets/{BlockSection-TZc72IgX.js → BlockSection-dqMQjKxw.js} +2 -2
- package/dist/assets/studio/assets/{BodyChanges-WuQnhlDk.js → BodyChanges-DOaqosb8.js} +2 -2
- package/dist/assets/studio/assets/{BuildPage-CtH9Zwbu.js → BuildPage-DEOfRzA9.js} +2 -2
- package/dist/assets/studio/assets/{ComboboxEmpty-o0q20j2l2syar9kx-Bf-42bzQ.js → ComboboxEmpty-o0q20j2l2syar9kx-BaXMATsn.js} +2 -2
- package/dist/assets/studio/assets/{CommandMenu-BVT-HHW0.js → CommandMenu-D9MNc-Wo.js} +2 -2
- package/dist/assets/studio/assets/{CommentThreadControls-CXNj8JY7.js → CommentThreadControls-DpKsd1i6.js} +2 -2
- package/dist/assets/studio/assets/{CommentThreadPage-DyXjmoOu.js → CommentThreadPage-JhpHw2fy.js} +2 -2
- package/dist/assets/studio/assets/{CommenterPage-ClHD0q_d.js → CommenterPage-DyUS-J5W.js} +2 -2
- package/dist/assets/studio/assets/{Comments-sU22Wp1j.js → Comments-BRP_6oQ6.js} +2 -2
- package/dist/assets/studio/assets/{CommentsPage-C7tWqq_I.js → CommentsPage-C4uR0zDd.js} +2 -2
- package/dist/assets/studio/assets/{CompositeItem-hzuk5x3e5zsfgnyj-XaSr50DG.js → CompositeItem-hzuk5x3e5zsfgnyj-DWzMQJpB.js} +2 -2
- package/dist/assets/studio/assets/{CompositeRoot-g72lchaerolf5dc9-B2BokDIY.js → CompositeRoot-g72lchaerolf5dc9-p9t2l5O6.js} +2 -2
- package/dist/assets/studio/assets/{ConfirmDialog-DKmz4y5Q.js → ConfirmDialog-DTOOI7kj.js} +2 -2
- package/dist/assets/studio/assets/{Crumbs-DOM6tT0l.js → Crumbs-BVqhFD_U.js} +2 -2
- package/dist/assets/studio/assets/{DialogRoot-hl3genvzl9h8ridm-BRUDLjaw.js → DialogRoot-hl3genvzl9h8ridm-BuXbJxoK.js} +2 -2
- package/dist/assets/studio/assets/{DialogTrigger-g44cuem7n4wez533-B5K8lQD3.js → DialogTrigger-g44cuem7n4wez533-BMsW2jM1.js} +2 -2
- package/dist/assets/studio/assets/{DirectionalIcon-BKKMj3KT.js → DirectionalIcon-UZJFXGY_.js} +2 -2
- package/dist/assets/studio/assets/{EditorLayout-ieqpWD3O.js → EditorLayout-GefNJMG2.js} +2 -2
- package/dist/assets/studio/assets/{EditorPreview-BMn8JFyR.js → EditorPreview-BuGAQX3g.js} +2 -2
- package/dist/assets/studio/assets/Elevation-ahkqnCOT.js +2 -0
- package/dist/assets/studio/assets/{ElevationRequest-DiCnHA-N.js → ElevationRequest-DbaZPpTy.js} +2 -2
- package/dist/assets/studio/assets/{ForgotPasswordPage-ClPZ6VQ0.js → ForgotPasswordPage-ECAplOgO.js} +2 -2
- package/dist/assets/studio/assets/{Gating-mRuy0Aw6.js → Gating-BGO4D_AP.js} +2 -2
- package/dist/assets/studio/assets/{GovernanceDialog-BOsmZ9sA.js → GovernanceDialog-6vMG-DjQ.js} +2 -2
- package/dist/assets/studio/assets/{InvitePage-DHe4I49a.js → InvitePage-CciurSHj.js} +2 -2
- package/dist/assets/studio/assets/{ListToolbar-D0cz9A9i.js → ListToolbar-DPtPcPWp.js} +2 -2
- package/dist/assets/studio/assets/{LoginPage-CaYvxxAx.js → LoginPage-BKdmHe8_.js} +2 -2
- package/dist/assets/studio/assets/{MediaPage-cRqqqjDj.js → MediaPage-Bx_Q3p5Z.js} +2 -2
- package/dist/assets/studio/assets/{MediaPicker-zwukL6LF.js → MediaPicker-BHakhuPF.js} +2 -2
- package/dist/assets/studio/assets/{MediaUpload-D_NqJMLl.js → MediaUpload-Cjwe01QK.js} +2 -2
- package/dist/assets/studio/assets/{MembersPage-nFZuQGQj.js → MembersPage-1Dpp6fR0.js} +2 -2
- package/dist/assets/studio/assets/{Menus-DiSEzHBI.js → Menus-BqLOw0If.js} +2 -2
- package/dist/assets/studio/assets/{NavigationPage-CnDJF3N5.js → NavigationPage-3JIfd_2C.js} +2 -2
- package/dist/assets/studio/assets/{NewSiteDialog-B5ogDopi.js → NewSiteDialog-DES6p9cW.js} +2 -2
- package/dist/assets/studio/assets/{PageEditorPage-CWb1gYnd.js → PageEditorPage-BiskVdPq.js} +2 -2
- package/dist/assets/studio/assets/{PagesPage-B0efBfNw.js → PagesPage-YrYME9pn.js} +2 -2
- package/dist/assets/studio/assets/{PasswordField-CQUUxc5O.js → PasswordField-BaDn4bwQ.js} +2 -2
- package/dist/assets/studio/assets/{PreviewPanel-DJfEXxjT.js → PreviewPanel-CYgpgHYL.js} +2 -2
- package/dist/assets/studio/assets/{ProjectPage-Bkk5B7Kk.js → ProjectPage-B8YTPbZu.js} +2 -2
- package/dist/assets/studio/assets/{Readers-D8WTNlW_.js → Readers-PSJxQtDw.js} +3 -3
- package/dist/assets/studio/assets/{RedirectDialog-CmFr73CR.js → RedirectDialog-BEIl9Rio.js} +2 -2
- package/dist/assets/studio/assets/{RedirectsPage-CiYRLydI.js → RedirectsPage-ClI2C61E.js} +2 -2
- package/dist/assets/studio/assets/{ReleaseApproval-Cr8kHN7B.js → ReleaseApproval-DUUheBUr.js} +2 -2
- package/dist/assets/studio/assets/{ReleasePage-qOzPM_1T.js → ReleasePage-DU_sEnGb.js} +2 -2
- package/dist/assets/studio/assets/{ReleaseParts-BJCwLv3d.js → ReleaseParts-blYiBCFL.js} +2 -2
- package/dist/assets/studio/assets/{ResetPasswordPage-Bga7XJxi.js → ResetPasswordPage-CxIo4Yvk.js} +2 -2
- package/dist/assets/studio/assets/{RowMenu-jMjMjIez.js → RowMenu-CvzLtDk6.js} +2 -2
- package/dist/assets/studio/assets/{ScheduleCard-DzvtvUrB.js → ScheduleCard-BNM_ecEJ.js} +2 -2
- package/dist/assets/studio/assets/{ScheduleDialog-BEIBEgNY.js → ScheduleDialog-BcjQEb-r.js} +2 -2
- package/dist/assets/studio/assets/{ScheduleHistoryPage-Cqvbso0N.js → ScheduleHistoryPage-B_79RLNY.js} +2 -2
- package/dist/assets/studio/assets/{ScheduleStatusBadge-CvtbjKcE.js → ScheduleStatusBadge-CgZ65nzd.js} +2 -2
- package/dist/assets/studio/assets/{SchedulerStalled-v8egx5_5.js → SchedulerStalled-C8C91Ds8.js} +2 -2
- package/dist/assets/studio/assets/{Schedules-Bi_9IGap.js → Schedules-xnhmCXba.js} +2 -2
- package/dist/assets/studio/assets/{SchedulesPage-AVUyMVLN.js → SchedulesPage-KA7TSNlR.js} +2 -2
- package/dist/assets/studio/assets/{ScopeBadge-CXRIKJV-.js → ScopeBadge-C_XnkWYq.js} +2 -2
- package/dist/assets/studio/assets/{SectionCard-253RWE03.js → SectionCard-GPZWTzbx.js} +2 -2
- package/dist/assets/studio/assets/{Seo-BAmAoHie.js → Seo-S2Fmf0_k.js} +2 -2
- package/dist/assets/studio/assets/{SeoPreview-BD_qXwU3.js → SeoPreview-BaS-x90q.js} +2 -2
- package/dist/assets/studio/assets/{Settings-PNFH1Q2d.js → Settings-BeAGyeQI.js} +2 -2
- package/dist/assets/studio/assets/{SiteAccessField-B6rXWqPA.js → SiteAccessField-C0J26Q-t.js} +2 -2
- package/dist/assets/studio/assets/{SiteOverviewPage-BHlgtKxn.js → SiteOverviewPage-CDnjXcd6.js} +3 -3
- package/dist/assets/studio/assets/{SiteSettingsPage-CK5oODPR.js → SiteSettingsPage-DdNblHPf.js} +2 -2
- package/dist/assets/studio/assets/{SitesPage-Bv9wYnBR.js → SitesPage-DSpx69dn.js} +2 -2
- package/dist/assets/studio/assets/{SkillsPage-CzzFsQCY.js → SkillsPage-DF4xGVkJ.js} +2 -2
- package/dist/assets/studio/assets/{SnapshotsPage-B38WZn18.js → SnapshotsPage-CTUCS2y4.js} +2 -2
- package/dist/assets/studio/assets/{StatTile-DyU32i8V.js → StatTile-DJkAsABJ.js} +2 -2
- package/dist/assets/studio/assets/{Status-Ck8cp5VU.js → Status-B6jbm_Zq.js} +2 -2
- package/dist/assets/studio/assets/{StatusActions-ClWdGpev.js → StatusActions-DgRInkQb.js} +3 -3
- package/dist/assets/studio/assets/{TableSkeleton-CbqPrk-p.js → TableSkeleton-DWrf88UN.js} +2 -2
- package/dist/assets/studio/assets/{TagsMigration-DHPq_z7b.js → TagsMigration-DYR-VkVc.js} +2 -2
- package/dist/assets/studio/assets/{Taxonomy-CDd52lEj.js → Taxonomy-BP_PrlF2.js} +2 -2
- package/dist/assets/studio/assets/{TaxonomyPage-hmMDxUPP.js → TaxonomyPage-BYCM2_2l.js} +2 -2
- package/dist/assets/studio/assets/{TermEditorPage-rhF98Ssd.js → TermEditorPage-C8NQHobp.js} +2 -2
- package/dist/assets/studio/assets/{TermPickers-DzlmKYS_.js → TermPickers-a6Ed0J4R.js} +2 -2
- package/dist/assets/studio/assets/{Toast-MSfrCjAr.js → Toast-DYiK3WzC.js} +2 -2
- package/dist/assets/studio/assets/{ToolbarRootContext-eqk40r8uh4h6r211-DBIMpkd1.js → ToolbarRootContext-eqk40r8uh4h6r211-DMiee-JZ.js} +2 -2
- package/dist/assets/studio/assets/{TranslationList-BOWeWTue.js → TranslationList-D6YA7Vjr.js} +2 -2
- package/dist/assets/studio/assets/{TranslationsPage-B0DP9mDX.js → TranslationsPage-Ci-5wWIr.js} +2 -2
- package/dist/assets/studio/assets/{agents-BBsojpg9.js → agents-DGWn1WXw.js} +3 -3
- package/dist/assets/studio/assets/{api-K4ZsoxSR.js → api-Cqqt5jTd.js} +2 -2
- package/dist/assets/studio/assets/{api-errors-MOGC4Qux.js → api-errors-DObQzNBx.js} +2 -2
- package/dist/assets/studio/assets/{approvals-0AbtJUeH.js → approvals-Dq0eHG8S.js} +2 -2
- package/dist/assets/studio/assets/{ar-B7Q-Tnf1.js → ar-DZD_LN4R.js} +2 -2
- package/dist/assets/studio/assets/{badge-dq8bx752b9dp7dst-D1xrG37q.js → badge-dq8bx752b9dp7dst--rpq8QXS.js} +2 -2
- package/dist/assets/studio/assets/{banner-msnmqm7of2lck01x-DRzQHuca.js → banner-msnmqm7of2lck01x-D6cADEpP.js} +2 -2
- package/dist/assets/studio/assets/{blockIcon-DmMm6cQr.js → blockIcon-VJ3KMOyZ.js} +2 -2
- package/dist/assets/studio/assets/{button-pa1bq9b85hawg41a-BcGpLLER.js → button-pa1bq9b85hawg41a-CmOCuL-1.js} +2 -2
- package/dist/assets/studio/assets/{charts-CcTdxwHf.js → charts-RqioK5fB.js} +2 -2
- package/dist/assets/studio/assets/{checkbox-lbo436duy7krxcsk-BmusNS83.js → checkbox-lbo436duy7krxcsk-HiD6vTuC.js} +2 -2
- package/dist/assets/studio/assets/{clipboard-text-gd6s3n1bqse9zgt8-8cLlgBwE.js → clipboard-text-gd6s3n1bqse9zgt8-_Ede63Fg.js} +2 -2
- package/dist/assets/studio/assets/{code-eu8kzwqnlhoyin24-_5wcX_Lj.js → code-eu8kzwqnlhoyin24-6ko8eUbh.js} +2 -2
- package/dist/assets/studio/assets/{collapsible-l8g94on4w7qfosmn-B4g2i1uh.js → collapsible-l8g94on4w7qfosmn-Dk6hg5t7.js} +2 -2
- package/dist/assets/studio/assets/{combobox-hdxtsm2gqcxxgfju-DXYGsrSK.js → combobox-hdxtsm2gqcxxgfju-DgmfP13I.js} +2 -2
- package/dist/assets/studio/assets/{composite-ab8dmdfoj6tmhcn1-DBTnwEaq.js → composite-ab8dmdfoj6tmhcn1-TEW1OGYY.js} +2 -2
- package/dist/assets/studio/assets/{createToastManager-onmoqrmr8zo02rif-DFnQWIYL.js → createToastManager-onmoqrmr8zo02rif-_Y_xgvmb.js} +2 -2
- package/dist/assets/studio/assets/{de-DLXuL-X-.js → de-D65bXpkj.js} +2 -2
- package/dist/assets/studio/assets/{deleteLabels-QAHG4PeV.js → deleteLabels-C5GfAnPh.js} +2 -2
- package/dist/assets/studio/assets/{dialog-glpnivujociqs9lh-B2sB0Q83.js → dialog-glpnivujociqs9lh-Cch0_XyA.js} +2 -2
- package/dist/assets/studio/assets/{dropdown-m53ji1d66mws89wh-CX3moquw.js → dropdown-m53ji1d66mws89wh-BTaT-o14.js} +2 -2
- package/dist/assets/studio/assets/{editor-Bq67msVD.js → editor-BQa6TaZi.js} +2 -2
- package/dist/assets/studio/assets/{empty-hkvg3is3uc6dj1at-BGNUzomN.js → empty-hkvg3is3uc6dj1at-Cen9KfIy.js} +2 -2
- package/dist/assets/studio/assets/{es-BygirbfZ.js → es-c812D9nl.js} +2 -2
- package/dist/assets/studio/assets/{fa-CYekV1Xs.js → fa-vxNhZpLh.js} +2 -2
- package/dist/assets/studio/assets/{fr-D-Y48Px4.js → fr-DhVGWQ1r.js} +2 -2
- package/dist/assets/studio/assets/{getElementTransform-cuiqmjglkrz4db6c-CjP1vzKy.js → getElementTransform-cuiqmjglkrz4db6c-xvJxAmf3.js} +2 -2
- package/dist/assets/studio/assets/{he-CfuQu8tf.js → he-BUNedH-H.js} +2 -2
- package/dist/assets/studio/assets/{hi-HzeORH2z.js → hi-BRLMI3vy.js} +2 -2
- package/dist/assets/studio/assets/{i18n-B-06kDA4.js → i18n-Dz1LE8DB.js} +3 -3
- package/dist/assets/studio/assets/{id-AW4tXw9G.js → id-Di4ybegt.js} +2 -2
- package/dist/assets/studio/assets/{index-DWzjnrnl.js → index-DMKFLgkG.js} +4 -4
- package/dist/assets/studio/assets/{inertValue-e0o6qvuef83v78fk-DAETOorM.js → inertValue-e0o6qvuef83v78fk-DH-hw2Zh.js} +2 -2
- package/dist/assets/studio/assets/{inline-copy-text-gbd7jhwpor27l4rq-PUCnUeNZ.js → inline-copy-text-gbd7jhwpor27l4rq-BGh10UAA.js} +2 -2
- package/dist/assets/studio/assets/{input-c8lv9ulv0kortliq-Cum0c7P1.js → input-c8lv9ulv0kortliq-Be2cm12J.js} +2 -2
- package/dist/assets/studio/assets/{input-group-fjr4r5ax0x78ppax-e-s-YUWj.js → input-group-fjr4r5ax0x78ppax-Bip4khk1.js} +2 -2
- package/dist/assets/studio/assets/{input-h5ox92gf13ge04hp-jfy1uD8s.js → input-h5ox92gf13ge04hp-CDAaOl0A.js} +2 -2
- package/dist/assets/studio/assets/{it-EGuJa8fC.js → it-CmzTT1jK.js} +2 -2
- package/dist/assets/studio/assets/{ja-JiIbNjTZ.js → ja-Bx1aRBDT.js} +2 -2
- package/dist/assets/studio/assets/{ko-yEoxGMly.js → ko-Dcw0wiZr.js} +2 -2
- package/dist/assets/studio/assets/{layer-dialog-j5ywmzs46ccg6oqy-Dg9cqt2A.js → layer-dialog-j5ywmzs46ccg6oqy-CySAcQJW.js} +2 -2
- package/dist/assets/studio/assets/{link-cqyfjezntvr53rh7-CwZJ95XT.js → link-cqyfjezntvr53rh7-3eczR57J.js} +2 -2
- package/dist/assets/studio/assets/{media-BnpTZ1vj.js → media-PkgIV37k.js} +2 -2
- package/dist/assets/studio/assets/{meter-majprsslwmpbmkzg-DBo7nISC.js → meter-majprsslwmpbmkzg-Bio9f57s.js} +2 -2
- package/dist/assets/studio/assets/{nl-s9UiFHkp.js → nl-BeTtPQCB.js} +2 -2
- package/dist/assets/studio/assets/{pagination-oaenm9t7ou3lmcgw-DjC4Zsp5.js → pagination-oaenm9t7ou3lmcgw-CjvX77_7.js} +2 -2
- package/dist/assets/studio/assets/{pl-B9qa5oln.js → pl-DMfBcmtn.js} +2 -2
- package/dist/assets/studio/assets/{pt-BR-B2hZUyrW.js → pt-BR-B4XbkQp3.js} +2 -2
- package/dist/assets/studio/assets/{radio-35dx7y6rjrezbjsp-DY9M1ouC.js → radio-35dx7y6rjrezbjsp-2D7MXAy3.js} +2 -2
- package/dist/assets/studio/assets/{ru-DYmqB5PL.js → ru-ttvcqOmM.js} +2 -2
- package/dist/assets/studio/assets/{schedules-api-CZRkol2x.js → schedules-api-5mgRmrjL.js} +2 -2
- package/dist/assets/studio/assets/{scrollable-b6m9ze1u7ps0q1qn-BDQyLiel.js → scrollable-b6m9ze1u7ps0q1qn-CgUEkapN.js} +2 -2
- package/dist/assets/studio/assets/{select-futox5zqr3r80y9a-5U5PtwHa.js → select-futox5zqr3r80y9a-FumEl51u.js} +2 -2
- package/dist/assets/studio/assets/{skeleton-line-m9dyh126t9k07jvg-CHsT8Hs3.js → skeleton-line-m9dyh126t9k07jvg-BFlcthbF.js} +2 -2
- package/dist/assets/studio/assets/{switch-cqsvolm7h69z7vgg-sFG02Szv.js → switch-cqsvolm7h69z7vgg-DkSvRVQF.js} +2 -2
- package/dist/assets/studio/assets/{table-yf8ul2e5nbemioi1-DNq9jhfh.js → table-yf8ul2e5nbemioi1-KGRDj7XO.js} +2 -2
- package/dist/assets/studio/assets/{tabs-gf57qqf1wcclaejq-Cay-6qhK.js → tabs-gf57qqf1wcclaejq-CirIVMnq.js} +2 -2
- package/dist/assets/studio/assets/{tag-input-ohfybx5dbxy3houy-0qdjxuFW.js → tag-input-ohfybx5dbxy3houy-C5BpU4R7.js} +2 -2
- package/dist/assets/studio/assets/{tanstack-BiJ_7SEB.js → tanstack-BRxyYm4G.js} +2 -2
- package/dist/assets/studio/assets/{toolbar-h213d8e22yjh5cwq-CipG_KSA.js → toolbar-h213d8e22yjh5cwq-DxfVlUi9.js} +2 -2
- package/dist/assets/studio/assets/{tr-COm1KgYY.js → tr-eeqDuraZ.js} +2 -2
- package/dist/assets/studio/assets/{uk-DdtNKfpf.js → uk-ooRGP488.js} +2 -2
- package/dist/assets/studio/assets/{useAnalyticsCard-k_xTTAyd.js → useAnalyticsCard-tsyFdq37.js} +2 -2
- package/dist/assets/studio/assets/{useAriaLabelledBy-ox8dum59shmgypq1-gkARNgzh.js → useAriaLabelledBy-ox8dum59shmgypq1-Cv8wf0no.js} +2 -2
- package/dist/assets/studio/assets/{useBaseUiId-lg1teubxudgin0w2-CrAc3DRu.js → useBaseUiId-lg1teubxudgin0w2-CURnJ4xq.js} +2 -2
- package/dist/assets/studio/assets/{useButton-h7s9aq1sfw6arawe-BbWTOEat.js → useButton-h7s9aq1sfw6arawe-BKHpRbOo.js} +2 -2
- package/dist/assets/studio/assets/{useChartPalette-DXG2lo2x.js → useChartPalette-BnJNJ44v.js} +2 -2
- package/dist/assets/studio/assets/{useClick-l0p0endoxrlp0ae5-Bbq8u-IC.js → useClick-l0p0endoxrlp0ae5-26sNFa8T.js} +2 -2
- package/dist/assets/studio/assets/{useCompositeItem-p7090ga00dpqcg5j-CiGYXm-8.js → useCompositeItem-p7090ga00dpqcg5j-C06idhCr.js} +2 -2
- package/dist/assets/studio/assets/{useListNavigation-3nyjs362qcau34in-DAKhz5rq.js → useListNavigation-3nyjs362qcau34in-_RhmHbc1.js} +2 -2
- package/dist/assets/studio/assets/{useMe-Cx8D2_vf.js → useMe-DcrRDsez.js} +2 -2
- package/dist/assets/studio/assets/{usePaging-pE8aE7JW.js → usePaging-kMfWrvea.js} +2 -2
- package/dist/assets/studio/assets/{usePendingApprovals-B6g17X7P.js → usePendingApprovals-BVHPCnd7.js} +2 -2
- package/dist/assets/studio/assets/useRender-onwjigxa00uch2ip-FZFmikvk.js +2 -0
- package/dist/assets/studio/assets/{useRenderDialogRoot-lddunc01twftravv-CpXvIQfS.js → useRenderDialogRoot-lddunc01twftravv-DaCowiKC.js} +2 -2
- package/dist/assets/studio/assets/{useTriggerFocusGuards-lz7wt484xltizro4-Dd4azd_G.js → useTriggerFocusGuards-lz7wt484xltizro4-fvX0XHjT.js} +2 -2
- package/dist/assets/studio/assets/{zh-Hans-DCvEU7yR.js → zh-Hans-CGcsS9Bh.js} +2 -2
- package/dist/assets/studio/index.html +50 -50
- package/dist/src/commands/deploy/workers-builds.js +2 -0
- package/dist/src/project-setup.d.ts +5 -0
- package/dist/src/project-setup.js +9 -0
- package/package.json +11 -11
- package/dist/assets/studio/assets/AgentModes-CP8u-uXl.js +0 -2
- package/dist/assets/studio/assets/AgentsPage-CaH_5r7Z.js +0 -2
- package/dist/assets/studio/assets/ApprovalsPage-q-birvZ1.js +0 -3
- package/dist/assets/studio/assets/Elevation-B3H1KYdW.js +0 -2
- package/dist/assets/studio/assets/useRender-onwjigxa00uch2ip-DueSv9wh.js +0 -2
|
@@ -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,t as o}from"./button-pa1bq9b85hawg41a-BcGpLLER.js";import{S as s,_ as c,h as l,l as u,u as d}from"./tanstack-BiJ_7SEB.js";import{t as f}from"./ArrowClockwise.es-BA0pzb0Y.js";import{n as p,t as m}from"./DirectionalIcon-BKKMj3KT.js";import{t as h}from"./pagination-oaenm9t7ou3lmcgw-DjC4Zsp5.js";import{m as g,n as _}from"./skeleton-line-m9dyh126t9k07jvg-CHsT8Hs3.js";import{t as v}from"./CheckCircle.es-XJ9Tr9Tu.js";import{t as y}from"./ClockCountdown.es-BR_zz6vi.js";import{t as b}from"./DotsThree.es-C-pT5SgE.js";import{t as x}from"./EnvelopeSimple.es-g-hlqV74.js";import{t as S}from"./Key.es-DE551dL3.js";import{t as ee}from"./LinkSimple.es-BB_3GfFO.js";import{a as C}from"./AgentModes-CP8u-uXl.js";import{t as w}from"./ShieldCheck.es-BOXTHH7h.js";import{t as T}from"./ShieldWarning.es-DPxoDMpT.js";import{t as E}from"./Trash.es-CxKLVMOQ.js";import{t as D}from"./Warning.es-LZXqwHRF.js";import{n as O,t as k}from"./banner-msnmqm7of2lck01x-DRzQHuca.js";import{t as A}from"./XCircle.es-3fJHkmwA.js";import{a as te,c as ne,i as j,l as re,o as ie,r as M,t as N}from"./useMe-Cx8D2_vf.js";import{t as P}from"./Toast-MSfrCjAr.js";import{t as ae}from"./input-c8lv9ulv0kortliq-Cum0c7P1.js";import{t as F}from"./clipboard-text-gd6s3n1bqse9zgt8-8cLlgBwE.js";import{c as oe,o as I,p as se,s as ce,t as L}from"./api-K4ZsoxSR.js";import{t as R}from"./dropdown-m53ji1d66mws89wh-CX3moquw.js";import{t as z}from"./select-futox5zqr3r80y9a-5U5PtwHa.js";import{t as B}from"./table-yf8ul2e5nbemioi1-DNq9jhfh.js";import{t as V}from"./radio-35dx7y6rjrezbjsp-DY9M1ouC.js";import{t as le}from"./Crumbs-DOM6tT0l.js";import{t as ue}from"./empty-hkvg3is3uc6dj1at-BGNUzomN.js";import{t as H}from"./layer-dialog-j5ywmzs46ccg6oqy-Dg9cqt2A.js";import{t as U}from"./InsetPanel-CHSg953_.js";import{t as de}from"./SectionCard-253RWE03.js";import{c as W,u as G}from"./i18n-B-06kDA4.js";import{t as K}from"./api-errors-MOGC4Qux.js";import{C as q,y as fe}from"./agents-BBsojpg9.js";import{S as pe,a as me,b as he,c as ge,d as _e,l as ve,r as ye,u as be,v as xe,w as Se}from"./roles-B7USahqW.js";import{a as Ce}from"./activity-C0we9-m8.js";import{C as we,E as Te,F as Ee,I as De,L as Oe,Q as ke,T as Ae,U as je,c as Me,d as Ne,i as Pe,l as Fe,rt as Ie,s as J,u as Le,x as Re}from"./index-DWzjnrnl.js";import{t as ze}from"./ConfirmDialog-DKmz4y5Q.js";import{t as Be}from"./PasswordField-CQUUxc5O.js";import{t as Ve}from"./TableSkeleton-CbqPrk-p.js";import{t as He}from"./ListToolbar-D0cz9A9i.js";import{ActivityList as Ue}from"./ActivityPage-D8RUaugX.js";import{t as We}from"./ScopeBadge-CXRIKJV-.js";import{t as Ge}from"./usePaging-pE8aE7JW.js";import{a as Ke,i as qe,n as Je,r as Ye,t as Xe}from"./SiteAccessField-B6rXWqPA.js";var Y=e(n(),1),Ze=new Map([[`bold`,Y.createElement(Y.Fragment,null,Y.createElement(`path`,{d:`M48,56V200a12,12,0,0,1-24,0V56a12,12,0,0,1,24,0Zm86.73,50.7L120,111.48V96a12,12,0,0,0-24,0v15.48L81.27,106.7a12,12,0,1,0-7.41,22.82l14.72,4.79-9.1,12.52A12,12,0,1,0,98.9,160.94l9.1-12.52,9.1,12.52a12,12,0,1,0,19.42-14.11l-9.1-12.52,14.72-4.79a12,12,0,1,0-7.41-22.82Zm115.12,7.7a12,12,0,0,0-15.12-7.7L220,111.48V96a12,12,0,0,0-24,0v15.48l-14.73-4.78a12,12,0,1,0-7.41,22.82l14.72,4.79-9.1,12.52a12,12,0,1,0,19.42,14.11l9.1-12.52,9.1,12.52a12,12,0,1,0,19.42-14.11l-9.1-12.52,14.72-4.79A12,12,0,0,0,249.85,114.4Z`}))],[`fill`,Y.createElement(Y.Fragment,null,Y.createElement(`path`,{d:`M224,48H32A16,16,0,0,0,16,64V192a16,16,0,0,0,16,16H224a16,16,0,0,0,16-16V64A16,16,0,0,0,224,48Zm-19.42,94.71a8,8,0,1,1-13,9.41L184,141.61l-7.63,10.51a8,8,0,1,1-13-9.41l7.64-10.5-12.36-4a8,8,0,1,1,5-15.21L176,117V104a8,8,0,0,1,16,0v13l12.35-4a8,8,0,0,1,5,15.21l-12.36,4Zm-72,0a8,8,0,1,1-13,9.41L112,141.61l-7.63,10.51a8,8,0,1,1-13-9.41l7.64-10.5-12.36-4a8,8,0,1,1,5-15.21L104,117V104a8,8,0,0,1,16,0v13l12.35-4a8,8,0,1,1,5,15.21l-12.36,4ZM64,88v80a8,8,0,0,1-16,0V88a8,8,0,0,1,16,0Z`}))],[`regular`,Y.createElement(Y.Fragment,null,Y.createElement(`path`,{d:`M48,56V200a8,8,0,0,1-16,0V56a8,8,0,0,1,16,0Zm92,54.5L120,117V96a8,8,0,0,0-16,0v21L84,110.5a8,8,0,0,0-5,15.22l20,6.49-12.34,17a8,8,0,1,0,12.94,9.4l12.34-17,12.34,17a8,8,0,1,0,12.94-9.4l-12.34-17,20-6.49A8,8,0,0,0,140,110.5ZM246,115.64A8,8,0,0,0,236,110.5L216,117V96a8,8,0,0,0-16,0v21l-20-6.49a8,8,0,0,0-4.95,15.22l20,6.49-12.34,17a8,8,0,1,0,12.94,9.4l12.34-17,12.34,17a8,8,0,1,0,12.94-9.4l-12.34-17,20-6.49A8,8,0,0,0,246,115.64Z`}))]]),Qe=new Map([[`bold`,Y.createElement(Y.Fragment,null,Y.createElement(`path`,{d:`M169.57,46.11a12,12,0,0,1,15.12-7.7L188,39.48V36a12,12,0,0,1,24,0v3.48l3.31-1.07a12,12,0,1,1,7.42,22.82l-3.31,1.08,2,2.82a12,12,0,1,1-19.41,14.1L200,76.42,198,79.23a12,12,0,1,1-19.41-14.1l2-2.82-3.31-1.08A12,12,0,0,1,169.57,46.11ZM236,128A108,108,0,1,1,128,20a109.19,109.19,0,0,1,18,1.49,12,12,0,0,1-4,23.67A85,85,0,0,0,128,44,83.94,83.94,0,0,0,62.05,179.94a83.48,83.48,0,0,1,29-23.42,52,52,0,1,1,74,0,83.48,83.48,0,0,1,29,23.42A83.57,83.57,0,0,0,212,128a85.2,85.2,0,0,0-1.16-14,12,12,0,0,1,23.67-4A109,109,0,0,1,236,128ZM128,148a28,28,0,1,0-28-28A28,28,0,0,0,128,148Zm0,64a83.53,83.53,0,0,0,48.43-15.43,60,60,0,0,0-96.86,0A83.53,83.53,0,0,0,128,212Z`}))],[`fill`,Y.createElement(Y.Fragment,null,Y.createElement(`path`,{d:`M228.25,63.07l-4.66-2.69a23.6,23.6,0,0,0,0-8.76l4.66-2.69a8,8,0,0,0-8-13.86l-4.67,2.7A23.92,23.92,0,0,0,208,33.38V28a8,8,0,0,0-16,0v5.38a23.92,23.92,0,0,0-7.58,4.39l-4.67-2.7a8,8,0,1,0-8,13.86l4.66,2.69a23.6,23.6,0,0,0,0,8.76l-4.66,2.69a8,8,0,0,0,4,14.93,7.92,7.92,0,0,0,4-1.07l4.67-2.7A23.92,23.92,0,0,0,192,78.62V84a8,8,0,0,0,16,0V78.62a23.92,23.92,0,0,0,7.58-4.39l4.67,2.7a7.92,7.92,0,0,0,4,1.07,8,8,0,0,0,4-14.93ZM200,64a8,8,0,1,1,8-8A8,8,0,0,1,200,64ZM128,76a44,44,0,1,1-44,44A44,44,0,0,1,128,76Zm102.56,34.68a103.92,103.92,0,1,1-85.24-85.24,8,8,0,0,1-2.64,15.78A88.07,88.07,0,0,0,40,128a87.62,87.62,0,0,0,22.24,58.41A79.71,79.71,0,0,1,84,165.1a4,4,0,0,1,4.83.32,59.81,59.81,0,0,0,78.27,0,4,4,0,0,1,4.84-.32,79.86,79.86,0,0,1,21.79,21.31A87.62,87.62,0,0,0,216,128a88.85,88.85,0,0,0-1.22-14.68,8,8,0,1,1,15.78-2.64Z`}))],[`regular`,Y.createElement(Y.Fragment,null,Y.createElement(`path`,{d:`M228.25,63.07l-4.66-2.69a23.6,23.6,0,0,0,0-8.76l4.66-2.69a8,8,0,0,0-8-13.86l-4.67,2.7A23.92,23.92,0,0,0,208,33.38V28a8,8,0,0,0-16,0v5.38a23.92,23.92,0,0,0-7.58,4.39l-4.67-2.7a8,8,0,1,0-8,13.86l4.66,2.69a23.6,23.6,0,0,0,0,8.76l-4.66,2.69a8,8,0,0,0,4,14.93,7.92,7.92,0,0,0,4-1.07l4.67-2.7A23.92,23.92,0,0,0,192,78.62V84a8,8,0,0,0,16,0V78.62a23.92,23.92,0,0,0,7.58-4.39l4.67,2.7a7.92,7.92,0,0,0,4,1.07,8,8,0,0,0,4-14.93ZM192,56a8,8,0,1,1,8,8A8,8,0,0,1,192,56Zm29.35,48.11a8,8,0,0,0-6.57,9.21A88.85,88.85,0,0,1,216,128a87.62,87.62,0,0,1-22.24,58.41,79.66,79.66,0,0,0-36.06-28.75,48,48,0,1,0-59.4,0,79.66,79.66,0,0,0-36.06,28.75A88,88,0,0,1,128,40a88.76,88.76,0,0,1,14.68,1.22,8,8,0,0,0,2.64-15.78,103.92,103.92,0,1,0,85.24,85.24A8,8,0,0,0,221.35,104.11ZM96,120a32,32,0,1,1,32,32A32,32,0,0,1,96,120ZM74.08,197.5a64,64,0,0,1,107.84,0,87.83,87.83,0,0,1-107.84,0Z`}))]]),$e=Y.forwardRef((e,n)=>Y.createElement(t,{ref:n,...e,weights:Ze}));$e.displayName=`PasswordIcon`;var et=$e,tt=Y.forwardRef((e,n)=>Y.createElement(t,{ref:n,...e,weights:Qe}));tt.displayName=`UserCircleGearIcon`;var nt=tt,X=r(),rt=[`rank`,`invalid_expiry`,`delivery_unavailable`,`delivery_failed`,`already_member`,`too_many_invites`,`rate_limited`];function it(e){let t=I(e);return rt.includes(t??``)?t:void 0}function at({open:e,onOpenChange:t,draft:n}){let{t:r,locale:i}=W(),a=s(),o=ie().data,c=te(),u=o?.invitableRoles??[],d=u.includes(`author`)?`author`:u.at(-1)??`contributor`,[f,p]=(0,Y.useState)(``),[m,h]=(0,Y.useState)(d),[g,v]=(0,Y.useState)(()=>ge(c,d)),[y,b]=(0,Y.useState)(`link`),[S,C]=(0,Y.useState)(!1),[w,T]=(0,Y.useState)(),[E,D]=(0,Y.useState)(),A=l({mutationFn:()=>L.invites.create({email:f.trim().toLowerCase(),role:m,expiresInHours:g,...y===`email`?{delivery:y}:{},...E&&Ye(m)?{sites:Je(E,m)}:{}}),onSuccess:async e=>{T(e),await a.invalidateQueries({queryKey:[`invites`]})}});(0,Y.useEffect)(()=>{if(e){let e=n&&u.includes(n.role)?n.role:d;p(n?.email??``),h(e),v(ge(c,e)),b(`link`),D(void 0),C(!1),A.reset()}else T(void 0)},[e]);let ne=_e(c,m),j=e=>{h(e),_e(c,e).includes(g)||v(ge(c,e))},re=S&&!Se(f)?f.trim()?r(`invites.errors.emailInvalid`):r(`invites.errors.emailRequired`):void 0,M=()=>{C(!0),!A.isPending&&Se(f)&&u.includes(m)&&(Ye(m)&&qe(E)||A.mutate())},N=it(A.error),P=r(`roles.names.${m}`),F=c.delivery.includes(`email`);return(0,X.jsx)(H.Root,{open:e,onOpenChange:t,dismissDisabled:A.isPending,children:(0,X.jsxs)(H.Content,{size:`base`,closeLabel:r(`common.close`),children:[(0,X.jsx)(H.Title,{children:w?w.url?r(`invites.reveal.title`):r(`invites.reveal.sentTitle`):r(n?`invites.create.reinviteTitle`:`invites.create.title`)}),(0,X.jsx)(H.Description,{children:w?r(`invites.reveal.description`,{email:w.invite.email,role:r(`roles.names.${w.invite.role}`)}):r(`invites.create.description`)}),(0,X.jsx)(H.Body,{children:w?(0,X.jsx)(ot,{created:w}):(0,X.jsxs)(`div`,{className:`grid gap-5`,"data-testid":`invite-step-details`,children:[(0,X.jsx)(_,{variant:`secondary`,size:`sm`,children:r(`invites.create.step`)}),A.error&&(0,X.jsx)(k,{variant:`error`,size:`sm`,icon:(0,X.jsx)(O,{weight:`fill`}),title:r(`invites.create.failed`),description:N?r(`invites.errors.${N}`,{email:f.trim(),role:P}):K(r,A.error)}),(0,X.jsx)(ae,{className:`w-full`,label:r(`invites.create.email`),description:r(`invites.create.emailHint`),placeholder:r(`invites.create.emailPlaceholder`),type:`email`,inputMode:`email`,autoComplete:`off`,value:f,onValueChange:p,error:re,autoFocus:!0,maxLength:254,onKeyDown:e=>{e.key===`Enter`&&(e.preventDefault(),M())}}),(0,X.jsx)(`div`,{className:`@container`,children:(0,X.jsxs)(`div`,{className:`grid items-start gap-5 @md:grid-cols-2`,children:[(0,X.jsx)(z,{className:`w-full`,label:r(`invites.create.role`),description:r(`invites.create.roleHint`),value:m,onValueChange:e=>j(e),items:Object.fromEntries(u.map(e=>[e,r(`roles.names.${e}`)]))}),(0,X.jsx)(z,{className:`w-full`,label:r(`invites.create.expiry`),description:m===`administrator`?r(`invites.create.expiryAdmin`,{max:q(be(c,m)*60,i,`long`)}):r(`invites.create.expiryHint`),value:String(g),onValueChange:e=>v(Number(e)),items:Object.fromEntries(ne.map(e=>[String(e),q(e*60,i,`long`)]))})]})}),(0,X.jsx)(Xe,{role:m,value:E,onChange:D,error:S&&qe(E)?r(`siteAccess.required`):void 0}),(0,X.jsxs)(`div`,{className:`grid min-w-0 gap-2`,"data-testid":`role-explainer`,children:[(0,X.jsx)(_,{size:`sm`,bold:!0,as:`span`,children:r(`invites.create.explainer`)}),(0,X.jsx)(`div`,{className:`-mx-1 min-w-0 overflow-x-auto`,children:(0,X.jsx)(Me,{roles:u,selected:m})})]}),F&&(0,X.jsxs)(V.Group,{appearance:`card`,value:y,onValueChange:e=>b(e),children:[(0,X.jsx)(V.Legend,{children:r(`invites.create.delivery`)}),(0,X.jsx)(V.Item,{value:`link`,label:(0,X.jsxs)(`span`,{className:`flex items-center gap-2`,children:[(0,X.jsx)(ee,{size:16,className:`text-kumo-subtle`}),r(`invites.create.deliveryLink`)]}),description:r(`invites.create.deliveryLinkHint`)}),(0,X.jsx)(V.Item,{value:`email`,label:(0,X.jsxs)(`span`,{className:`flex items-center gap-2`,children:[(0,X.jsx)(x,{size:16,className:`text-kumo-subtle`}),r(`invites.create.deliveryEmail`)]}),description:r(`invites.create.deliveryEmailHint`)})]})]})}),(0,X.jsx)(H.Actions,{dismissLabel:r(w?`common.close`:`common.cancel`),children:w?(0,X.jsx)(H.Actions.Primary,{onClick:()=>t(!1),children:w.url?r(`invites.reveal.done`):r(`common.close`)}):(0,X.jsx)(H.Actions.Primary,{onClick:M,loading:A.isPending,children:r(y===`email`?`invites.create.send`:`invites.create.submit`)})})]})})}function ot({created:e}){let{t,locale:n}=W(),r=e.invite.expiresAt;return(0,X.jsxs)(`div`,{className:`grid gap-5`,"data-testid":`invite-reveal`,children:[e.url?(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(k,{variant:`alert`,icon:(0,X.jsx)(D,{weight:`fill`}),title:t(`invites.reveal.warningTitle`),description:t(`invites.reveal.warning`,{role:t(`roles.names.${e.invite.role}`)})}),(0,X.jsxs)(`div`,{className:`grid min-w-0 gap-1.5`,children:[(0,X.jsx)(_,{size:`sm`,bold:!0,as:`span`,children:t(`invites.reveal.link`)}),(0,X.jsx)(F,{size:`lg`,text:e.url,tooltip:{text:t(`common.copy`),copiedText:t(`common.copied`)}})]})]}):(0,X.jsx)(k,{variant:`default`,icon:(0,X.jsx)(v,{weight:`fill`}),title:t(`invites.reveal.sent`,{email:e.invite.email}),description:t(`invites.reveal.sentDescription`)}),(0,X.jsxs)(U,{label:t(`invites.reveal.summary`),children:[(0,X.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,X.jsx)(J,{value:e.invite.role}),(0,X.jsx)(_,{as:`span`,truncate:!0,children:e.invite.email})]}),r&&(0,X.jsxs)(`div`,{className:`flex items-start gap-2`,children:[(0,X.jsx)(`span`,{className:`flex h-lh items-center text-kumo-subtle`,children:(0,X.jsx)(y,{size:16})}),(0,X.jsx)(_,{variant:`secondary`,size:`sm`,children:t(`invites.reveal.expires`,{relative:me(r,n),absolute:Ce(r,n)})})]}),(0,X.jsxs)(`div`,{className:`flex items-start gap-2`,children:[(0,X.jsx)(`span`,{className:`flex h-lh items-center text-kumo-subtle`,children:(0,X.jsx)(T,{size:16})}),(0,X.jsx)(_,{variant:`secondary`,size:`sm`,children:t(`invites.reveal.private`)})]})]})]})}function st(e){let t=(0,Y.useRef)(e);return e!==void 0&&(t.current=e),e??t.current}function Z({member:e,you:t=!1,size:n=`base`}){let r=G();return(0,X.jsxs)(`div`,{className:`flex min-w-0 items-center gap-3`,children:[(0,X.jsx)(Ae,{initials:Pe(e.name,e.email),size:n}),(0,X.jsxs)(`div`,{className:`grid min-w-0 gap-0.5`,children:[(0,X.jsxs)(`span`,{className:`flex min-w-0 items-center gap-2`,children:[(0,X.jsx)(_,{bold:!0,as:`span`,truncate:!0,children:e.name||e.email||`—`}),t&&(0,X.jsx)(i,{variant:`outline`,children:r(`members.you`)})]}),e.email&&(0,X.jsx)(_,{variant:`secondary`,size:`sm`,as:`span`,truncate:!0,children:e.email})]})]})}function ct(){let e=G();return t=>{if(I(t)!==`rank`)return;let n=ce(t,`problem`);return e(n?`members.rank.${n}`:`members.rank.not_allowed`)}}function lt({change:e}){let t=G(),n=e.mode.from!==e.mode.to;return(0,X.jsxs)(`div`,{className:`grid gap-2 py-3 first:pt-0 last:pb-0`,"data-narrowed-key":e.keyId,children:[(0,X.jsxs)(`span`,{className:`flex items-center gap-2`,children:[(0,X.jsx)(S,{size:16,className:`shrink-0 text-kumo-subtle`}),(0,X.jsx)(_,{bold:!0,as:`span`,children:e.name??t(`agents.unnamed`)})]}),n&&(0,X.jsxs)(`span`,{className:`flex flex-wrap items-center gap-1.5`,children:[(0,X.jsx)(_,{variant:`secondary`,size:`sm`,as:`span`,children:t(`members.role.narrowedMode`)}),(0,X.jsx)(C,{mode:e.mode.from,subtle:!0}),(0,X.jsx)(p,{size:12}),(0,X.jsx)(C,{mode:e.mode.to})]}),(0,X.jsxs)(`div`,{className:`flex flex-wrap items-center gap-1`,children:[(0,X.jsx)(_,{variant:`secondary`,size:`sm`,as:`span`,children:t(`members.role.narrowedScopes`)}),fe(e.scopes.to).map(e=>(0,X.jsx)(We,{scope:e},e))]}),e.elevationEnded&&(0,X.jsx)(_,{variant:`secondary`,size:`sm`,children:t(`members.role.elevationEnded`)})]})}function ut({member:e,onOpenChange:t}){let n=G(),r=s(),i=P(),a=re(),o=ct(),c=st(e),[u,d]=(0,Y.useState)(e?.role??`contributor`),[f,m]=(0,Y.useState)(),h=l({mutationFn:({userId:e,to:t})=>L.members.setRole(e,t),onSuccess:async e=>{await Promise.all([r.invalidateQueries({queryKey:N}),r.invalidateQueries({queryKey:[`agent-keys`]})]);let a=e.member.name,o=n(`roles.names.${e.member.role}`);e.keysNarrowed.length>0?m(e.keysNarrowed):t(!1),i.success(n(`members.role.changed`),n(`members.role.changedDescription`,{name:a,to:o}))}});(0,Y.useEffect)(()=>{e&&(d(e.role),m(void 0),h.reset())},[e?.userId]);let v=c?.role??`contributor`,y=xe(u)<xe(v),b=u===v,x=h.error?o(h.error)??K(n,h.error):``;return(0,X.jsx)(H.Root,{open:e!==void 0,onOpenChange:t,dismissDisabled:h.isPending,children:(0,X.jsxs)(H.Content,{size:`base`,closeLabel:n(`common.close`),children:[(0,X.jsx)(H.Title,{children:f?n(`members.role.narrowedTitle`):n(`members.role.title`,{name:c?.name??``})}),(0,X.jsx)(H.Description,{children:f?n(`members.role.narrowedDescription`,{count:f.length}):n(`members.role.description`)}),(0,X.jsx)(H.Body,{children:f?(0,X.jsxs)(`div`,{className:`grid gap-4`,"data-testid":`keys-narrowed`,children:[(0,X.jsx)(k,{variant:`default`,icon:(0,X.jsx)(g,{weight:`fill`}),title:n(`members.role.narrowedBanner`,{count:f.length}),description:n(`members.role.narrowedBannerDescription`)}),(0,X.jsx)(U,{label:n(`members.role.narrowedTitle`),children:(0,X.jsx)(`div`,{className:`divide-y divide-kumo-hairline`,children:f.map(e=>(0,X.jsx)(lt,{change:e},e.keyId))})})]}):(0,X.jsxs)(`div`,{className:`grid gap-5`,children:[c&&(0,X.jsxs)(U,{layout:`row`,label:n(`members.role.member`),children:[(0,X.jsx)(Z,{member:c}),(0,X.jsx)(J,{value:c.role})]}),h.error&&(0,X.jsx)(k,{variant:`error`,size:`sm`,icon:(0,X.jsx)(O,{weight:`fill`}),title:n(`members.role.failed`),description:x}),(0,X.jsx)(z,{className:`w-full`,label:n(`members.role.newRole`),value:u,onValueChange:e=>d(e),items:Object.fromEntries(ye(a).map(e=>[e,n(`roles.names.${e}`)])),description:n(`roles.summaries.${u}`)}),!b&&(0,X.jsxs)(U,{layout:`row`,label:n(`members.role.change`),children:[(0,X.jsxs)(`span`,{className:`flex flex-wrap items-center gap-2`,children:[(0,X.jsx)(_,{variant:`secondary`,size:`sm`,as:`span`,children:n(`members.role.now`)}),(0,X.jsx)(J,{value:v,tooltip:!1}),(0,X.jsx)(p,{size:14}),(0,X.jsx)(J,{value:u,tooltip:!1})]}),(0,X.jsx)(_,{variant:`secondary`,size:`sm`,as:`span`,children:n(`members.role.immediate`)})]}),y&&(0,X.jsx)(k,{variant:`alert`,size:`sm`,icon:(0,X.jsx)(S,{weight:`fill`}),title:n(`members.role.demotionTitle`),description:n(`members.role.demotion`,{role:n(`roles.names.${u}`)})})]})}),(0,X.jsx)(H.Actions,{dismissLabel:n(f?`common.close`:`common.cancel`),children:f?(0,X.jsx)(H.Actions.Primary,{onClick:()=>t(!1),children:n(`members.role.done`)}):(0,X.jsx)(H.Actions.Primary,{onClick:()=>c&&h.mutate({userId:c.userId,to:u}),loading:h.isPending,disabled:b,children:n(`members.role.submit`)})})]})})}function Q({icon:e,children:t}){return(0,X.jsxs)(`div`,{className:`flex items-start gap-2`,children:[(0,X.jsx)(`span`,{className:`flex h-lh items-center text-kumo-subtle`,children:e}),(0,X.jsx)(_,{size:`sm`,children:t})]})}function dt({member:e,keyCount:t,inviteCount:n,onOpenChange:r}){let i=G(),a=s(),o=P(),c=ct(),u=st(e),d=l({mutationFn:e=>L.members.remove(e),onSuccess:async e=>{r(!1),o.success(i(`members.remove.done`,{name:u?.name??``}),i(`members.remove.doneDescription`,{keys:e.keysDisabled,invites:e.invitesCanceled,requests:e.requestsDenied})),await Promise.all([a.invalidateQueries({queryKey:N}),a.invalidateQueries({queryKey:[`invites`]}),a.invalidateQueries({queryKey:[`agent-keys`]}),a.invalidateQueries({queryKey:[`approvals`]})])}});return(0,Y.useEffect)(()=>{e&&d.reset()},[e?.userId]),(0,X.jsx)(H.Alert,{open:e!==void 0,onOpenChange:r,dismissDisabled:d.isPending,children:(0,X.jsxs)(H.Content,{size:`sm`,closeLabel:i(`common.close`),children:[(0,X.jsx)(H.Title,{children:i(`members.remove.title`,{name:u?.name??``})}),(0,X.jsx)(H.Description,{children:i(`members.remove.description`)}),(0,X.jsx)(H.Body,{children:(0,X.jsxs)(`div`,{className:`grid gap-4`,"data-testid":`remove-member`,children:[u&&(0,X.jsxs)(U,{layout:`row`,label:i(`members.role.member`),children:[(0,X.jsx)(Z,{member:u,size:`sm`}),(0,X.jsx)(J,{value:u.role,tooltip:!1})]}),(0,X.jsxs)(`div`,{className:`grid gap-2`,children:[(0,X.jsx)(Q,{icon:(0,X.jsx)(m,{icon:je,size:16}),children:i(`members.remove.signOut`)}),(0,X.jsx)(Q,{icon:(0,X.jsx)(S,{size:16}),children:t===void 0?i(`members.remove.keys`):i(`members.remove.keysCount`,{count:t})}),(0,X.jsx)(Q,{icon:(0,X.jsx)(A,{size:16}),children:n===void 0?i(`members.remove.invites`):i(`members.remove.invitesCount`,{count:n})}),(0,X.jsx)(Q,{icon:(0,X.jsx)(y,{size:16}),children:i(`members.remove.requests`)}),(0,X.jsx)(Q,{icon:(0,X.jsx)(g,{size:16}),children:i(`members.remove.kept`)})]}),d.error&&(0,X.jsx)(k,{variant:`error`,size:`sm`,icon:(0,X.jsx)(O,{weight:`fill`}),title:i(`members.remove.failed`),description:c(d.error)??K(i,d.error)})]})}),(0,X.jsx)(H.Actions,{dismissLabel:i(`common.cancel`),children:(0,X.jsx)(H.Actions.Primary,{variant:`destructive`,loading:d.isPending,onClick:()=>u&&d.mutate(u.userId),children:i(`members.remove.submit`)})})]})})}function ft({member:e,onOpenChange:t}){let{t:n,locale:r}=W(),i=ct(),a=st(e),[o,s]=(0,Y.useState)(),c=l({mutationFn:e=>L.members.passwordReset(e),onSuccess:e=>s(e)});return(0,Y.useEffect)(()=>{e?(s(void 0),c.reset()):s(void 0)},[e?.userId]),(0,X.jsx)(H.Root,{open:e!==void 0,onOpenChange:t,dismissDisabled:c.isPending,children:(0,X.jsxs)(H.Content,{size:`base`,closeLabel:n(`common.close`),children:[(0,X.jsx)(H.Title,{children:n(o?`members.reset.revealTitle`:`members.reset.title`)}),(0,X.jsx)(H.Description,{children:n(o?`members.reset.revealDescription`:`members.reset.description`,{name:a?.name??``})}),(0,X.jsx)(H.Body,{children:o?(0,X.jsxs)(`div`,{className:`grid gap-5`,"data-testid":`reset-reveal`,children:[(0,X.jsx)(k,{variant:`alert`,icon:(0,X.jsx)(D,{weight:`fill`}),title:n(`members.reset.warningTitle`),description:n(`members.reset.warning`)}),(0,X.jsxs)(`div`,{className:`grid min-w-0 gap-1.5`,children:[(0,X.jsx)(_,{size:`sm`,bold:!0,as:`span`,children:n(`members.reset.link`)}),(0,X.jsx)(F,{size:`lg`,text:o.url,tooltip:{text:n(`common.copy`),copiedText:n(`common.copied`)}})]}),(0,X.jsx)(U,{children:(0,X.jsxs)(`div`,{className:`flex items-start gap-2`,children:[(0,X.jsx)(`span`,{className:`flex h-lh items-center text-kumo-subtle`,children:(0,X.jsx)(y,{size:16})}),(0,X.jsx)(_,{variant:`secondary`,size:`sm`,children:n(`members.reset.expires`,{relative:me(o.expiresAt,r),absolute:Ce(o.expiresAt,r)})})]})})]}):(0,X.jsxs)(`div`,{className:`grid gap-4`,children:[a&&(0,X.jsxs)(U,{layout:`row`,label:n(`members.role.member`),children:[(0,X.jsx)(Z,{member:a,size:`sm`}),(0,X.jsx)(J,{value:a.role,tooltip:!1})]}),(0,X.jsxs)(`div`,{className:`grid gap-2`,children:[(0,X.jsx)(Q,{icon:(0,X.jsx)(y,{size:16}),children:n(`members.reset.once`)}),(0,X.jsx)(Q,{icon:(0,X.jsx)(m,{icon:je,size:16}),children:n(`members.reset.signsOut`)}),(0,X.jsx)(Q,{icon:(0,X.jsx)(T,{size:16}),children:n(`members.reset.replaces`)})]}),c.error&&(0,X.jsx)(k,{variant:`error`,size:`sm`,icon:(0,X.jsx)(O,{weight:`fill`}),title:n(`members.reset.failed`),description:i(c.error)??K(n,c.error)})]})}),(0,X.jsx)(H.Actions,{dismissLabel:n(o?`common.close`:`common.cancel`),children:o?(0,X.jsx)(H.Actions.Primary,{onClick:()=>t(!1),children:n(`members.reset.done`)}):(0,X.jsx)(H.Actions.Primary,{loading:c.isPending,onClick:()=>a&&c.mutate(a.userId),children:n(`members.reset.submit`)})})]})})}function pt({member:e,onOpenChange:t}){let n=G(),r=s(),i=P(),a=ct(),o=st(e),[c,u]=(0,Y.useState)(``),[d,f]=(0,Y.useState)(!1),m=l({mutationFn:({userId:e,pw:t})=>L.members.transferOwnership(e,t),onSuccess:async()=>{t(!1),i.success(n(`members.transfer.done`),n(`members.transfer.doneDescription`,{name:o?.name??``})),await Promise.all([r.invalidateQueries({queryKey:N}),r.invalidateQueries({queryKey:[`me`]}),r.invalidateQueries({queryKey:[`agent-keys`]})])}});(0,Y.useEffect)(()=>{e?(u(``),f(!1),m.reset()):u(``)},[e?.userId]);let h=I(m.error),g=h===`wrong_password`?n(`members.transfer.wrongPassword`):d&&!c?n(`members.transfer.passwordRequired`):void 0,_=()=>{f(!0),o&&c&&!m.isPending&&m.mutate({userId:o.userId,pw:c})},v=m.error&&h!==`wrong_password`?h===`not_administrator`?n(`members.transfer.notAdministrator`):a(m.error)??K(n,m.error):void 0;return(0,X.jsx)(H.Alert,{open:e!==void 0,onOpenChange:t,dismissDisabled:m.isPending,children:(0,X.jsxs)(H.Content,{size:`base`,closeLabel:n(`common.close`),children:[(0,X.jsx)(H.Title,{children:n(`members.transfer.title`,{name:o?.name??``})}),(0,X.jsx)(H.Description,{children:n(`members.transfer.description`)}),(0,X.jsx)(H.Body,{children:(0,X.jsxs)(`div`,{className:`grid gap-5`,"data-testid":`transfer-ownership`,children:[(0,X.jsx)(k,{variant:`alert`,icon:(0,X.jsx)(Ie,{weight:`fill`}),title:n(`members.transfer.warningTitle`),description:n(`members.transfer.warning`,{name:o?.name??``})}),o&&(0,X.jsxs)(U,{layout:`row`,label:n(`members.transfer.to`),children:[(0,X.jsx)(Z,{member:o,size:`sm`}),(0,X.jsxs)(`span`,{className:`flex items-center gap-1.5`,children:[(0,X.jsx)(J,{value:o.role,tooltip:!1}),(0,X.jsx)(p,{size:12}),(0,X.jsx)(J,{value:`owner`,tooltip:!1})]})]}),(0,X.jsxs)(`div`,{className:`grid gap-2`,children:[(0,X.jsx)(Q,{icon:(0,X.jsx)(Ie,{size:16}),children:n(`members.transfer.youBecome`)}),(0,X.jsx)(Q,{icon:(0,X.jsx)(S,{size:16}),children:n(`members.transfer.keys`)}),(0,X.jsx)(Q,{icon:(0,X.jsx)(T,{size:16}),children:n(`members.transfer.onlyThey`)})]}),v&&(0,X.jsx)(k,{variant:`error`,size:`sm`,icon:(0,X.jsx)(O,{weight:`fill`}),title:n(`members.transfer.failed`),description:v}),(0,X.jsx)(Be,{label:n(`members.transfer.password`),description:n(`members.transfer.passwordHint`),value:c,onValueChange:u,error:g,autoComplete:`current-password`,onEnter:_})]})}),(0,X.jsx)(H.Actions,{dismissLabel:n(`common.cancel`),children:(0,X.jsx)(H.Actions.Primary,{variant:`destructive`,loading:m.isPending,onClick:_,children:n(`members.transfer.submit`)})})]})})}function mt({member:e,onOpenChange:t}){let n=G(),r=s(),i=P(),a=(0,Y.useRef)(e);e&&(a.current=e);let o=e??a.current,[c,u]=(0,Y.useState)(o?.sites),[d,f]=(0,Y.useState)(!1),p=l({mutationFn:({userId:e,next:t})=>L.members.setSites(e,t),onSuccess:async e=>{await r.invalidateQueries({queryKey:N}),t(!1),i.success(n(`siteAccess.saved`),n(`siteAccess.savedDescription`,{name:e.member.name}))}});return(0,Y.useEffect)(()=>{e&&(u(e.sites),f(!1),p.reset())},[e?.userId]),(0,X.jsx)(H.Root,{open:e!==void 0,onOpenChange:t,dismissDisabled:p.isPending,children:(0,X.jsxs)(H.Content,{size:`base`,closeLabel:n(`common.close`),children:[(0,X.jsx)(H.Title,{children:n(`siteAccess.title`,{name:o?.name??``})}),(0,X.jsx)(H.Description,{children:n(`siteAccess.description`)}),(0,X.jsx)(H.Body,{children:(0,X.jsxs)(`div`,{className:`grid gap-5`,children:[o&&(0,X.jsxs)(U,{layout:`row`,label:n(`members.role.member`),children:[(0,X.jsx)(Z,{member:o}),(0,X.jsx)(J,{value:o.role})]}),p.error&&(0,X.jsx)(k,{variant:`error`,size:`sm`,icon:(0,X.jsx)(O,{weight:`fill`}),title:n(`siteAccess.failed`),description:K(n,p.error)}),o&&(0,X.jsx)(Xe,{role:o.role,value:c,onChange:u,error:d&&qe(c)?n(`siteAccess.required`):void 0})]})}),(0,X.jsx)(H.Actions,{dismissLabel:n(`common.cancel`),children:(0,X.jsx)(H.Actions.Primary,{onClick:()=>{f(!0),o&&!qe(c)&&p.mutate({userId:o.userId,next:Je(c??{},o.role)})},loading:p.isPending,children:n(`siteAccess.submit`)})})]})})}var ht=(e,t,n)=>n(e.name).includes(t)||n(e.email??``).includes(t)||e.role.includes(t);function $({icon:e,reason:t,onClick:n,variant:r,children:i}){return t?(0,X.jsx)(a,{content:t,side:`left`,render:(0,X.jsx)(`div`,{}),children:(0,X.jsx)(R.Item,{icon:e,disabled:!0,variant:r,children:i})}):(0,X.jsx)(R.Item,{icon:e,onClick:n,variant:r,children:i})}function gt({member:e,problem:t,isOwner:n,onRole:r,onSites:i,onReset:a,onTransfer:s,onRemove:c}){let l=G(),u=j(`members.manage`),d=t?u.reason??l(`members.rank.${t}`):void 0,f=l(`members.menu`,{name:e.name});if(t===`not_allowed`)return(0,X.jsx)(o,{variant:`ghost`,size:`xs`,shape:`square`,icon:(0,X.jsx)(b,{weight:`bold`}),"aria-label":f,disabled:!0,title:d});let p=e.role===`administrator`?d:l(`members.transfer.needsAdministrator`);return(0,X.jsxs)(R,{children:[(0,X.jsx)(R.Trigger,{render:(0,X.jsx)(o,{variant:`ghost`,size:`xs`,shape:`square`,icon:(0,X.jsx)(b,{weight:`bold`}),"aria-label":f})}),(0,X.jsxs)(R.Content,{align:`end`,children:[(0,X.jsx)($,{icon:nt,reason:d,onClick:r,children:l(`members.changeRole`)}),i&&(0,X.jsx)($,{icon:ke,reason:d,onClick:i,children:l(`siteAccess.menu`)}),(0,X.jsx)($,{icon:et,reason:d,onClick:a,children:l(`members.resetLink`)}),n&&(0,X.jsx)($,{icon:Ie,reason:p,onClick:s,children:l(`members.transferOwnership`)}),(0,X.jsx)(R.Separator,{}),(0,X.jsx)($,{icon:E,reason:d,onClick:c,variant:`danger`,children:l(`members.remove.menu`)})]})]})}function _t({invite:e,now:t}){let{t:n,locale:r}=W();return ve(e,t)?(0,X.jsx)(`span`,{"data-expired":!0,className:`inline-flex`,children:(0,X.jsx)(i,{variant:`warning`,appearance:`dot`,children:n(`members.invites.expired`)})}):(0,X.jsx)(_,{variant:`secondary`,size:`sm`,as:`span`,children:me(e.expiresAt,r,t)})}function vt({invite:e,reason:t,onReinvite:n,onRevoke:r}){let i=G();return(0,X.jsxs)(R,{children:[(0,X.jsx)(R.Trigger,{render:(0,X.jsx)(o,{variant:`ghost`,size:`xs`,shape:`square`,icon:(0,X.jsx)(b,{weight:`bold`}),"aria-label":i(`members.invites.menu`,{email:e.email})})}),(0,X.jsxs)(R.Content,{align:`end`,children:[(0,X.jsx)($,{icon:f,reason:t,onClick:n,children:i(`members.invites.reinvite`)}),e.status===`pending`&&(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(R.Separator,{}),(0,X.jsx)($,{icon:Ee,reason:t,onClick:r,variant:`danger`,children:i(`members.invites.revoke`)})]})]})]})}function yt({onReinvite:e,onInvite:t}){let{t:n,locale:r}=W(),u=s(),d=P(),f=Ne(),p=ie().data,m=c({queryKey:[`invites`],queryFn:L.invites.list,retry:(e,t)=>!oe(t)&&e<1}),[h,g]=(0,Y.useState)(),v=l({mutationFn:e=>L.invites.revoke(e.id),onSuccess:async(e,t)=>{g(void 0),d.success(n(`members.invites.revoked`),n(`members.invites.revokedDescription`,{email:t.email})),await u.invalidateQueries({queryKey:[`invites`]})}}),y=m.data??[],b=e=>p?.invitableRoles?.includes(e.role)!==!1;return(0,X.jsxs)(de,{id:`invites`,title:n(`members.invites.title`),icon:(0,X.jsx)(x,{size:16}),description:n(`members.invites.description`),actions:y.length>0?(0,X.jsx)(i,{variant:`secondary`,children:y.length}):void 0,flush:!0,children:[m.error?(0,X.jsx)(`div`,{className:`px-5 py-4`,children:(0,X.jsx)(Re,{error:m.error,onRetry:()=>m.refetch()})}):!m.isPending&&y.length===0?(0,X.jsx)(Te,{icon:(0,X.jsx)(x,{size:32,className:`text-kumo-inactive`}),title:n(`members.invites.empty`),description:n(`members.invites.emptyDescription`),contents:(0,X.jsx)(o,{variant:`secondary`,icon:(0,X.jsx)(Oe,{}),onClick:t,children:n(`members.invite`)})}):(0,X.jsx)(`div`,{className:`overflow-x-auto`,children:(0,X.jsxs)(B,{children:[(0,X.jsx)(B.Header,{children:(0,X.jsxs)(B.Row,{children:[(0,X.jsx)(B.Head,{children:n(`members.invites.columns.email`)}),(0,X.jsx)(B.Head,{children:n(`members.invites.columns.role`)}),(0,X.jsx)(B.Head,{children:n(`members.invites.columns.expires`)}),(0,X.jsx)(B.Head,{children:n(`members.invites.columns.inviter`)}),(0,X.jsx)(B.Head,{sticky:`right`,children:(0,X.jsx)(`span`,{className:`sr-only`,children:n(`members.invites.columns.actions`)})})]})}),m.isPending?(0,X.jsx)(Ve,{columns:5,rows:2}):(0,X.jsx)(B.Body,{children:y.map(t=>{let o=t.status===`accepted`&&!t.acceptedUserId,s=b(t),c=s?void 0:n(`members.rank.role_too_high`);return(0,X.jsxs)(B.Row,{"data-invite-id":t.id,children:[(0,X.jsx)(B.Cell,{children:(0,X.jsxs)(`div`,{className:`grid min-w-48 gap-0.5`,children:[(0,X.jsx)(_,{bold:!0,as:`span`,truncate:!0,children:t.email}),(0,X.jsxs)(`span`,{className:`flex flex-wrap items-center gap-1.5`,children:[t.delivery===`email`?(0,X.jsx)(_,{variant:`secondary`,size:`sm`,as:`span`,children:n(`members.invites.byEmail`)}):(0,X.jsx)(_,{variant:`secondary`,size:`sm`,as:`span`,children:n(`members.invites.byLink`)}),o&&(0,X.jsx)(a,{content:n(`members.invites.incompleteHint`),children:(0,X.jsx)(i,{variant:`warning`,icon:(0,X.jsx)(D,{}),children:n(`members.invites.incomplete`)})})]})]})}),(0,X.jsx)(B.Cell,{className:`whitespace-nowrap`,children:(0,X.jsx)(J,{value:t.role})}),(0,X.jsx)(B.Cell,{className:`whitespace-nowrap`,children:(0,X.jsxs)(`div`,{className:`grid gap-0.5`,children:[(0,X.jsx)(_t,{invite:t,now:f}),(0,X.jsx)(_,{variant:`secondary`,size:`xs`,as:`span`,children:Ce(t.expiresAt,r)})]})}),(0,X.jsx)(B.Cell,{className:`whitespace-nowrap`,children:(0,X.jsxs)(`div`,{className:`grid gap-0.5`,children:[(0,X.jsx)(_,{as:`span`,children:t.inviter.userId===p?.userId?n(`members.invites.you`):t.inviter.name??n(`members.invites.someone`)}),(0,X.jsx)(Le,{iso:t.createdAt,size:`xs`})]})}),(0,X.jsx)(B.Cell,{sticky:`right`,className:`w-12 text-end`,children:(0,X.jsx)(vt,{invite:t,reason:s?void 0:c,onReinvite:()=>e({email:t.email,role:t.role}),onRevoke:()=>g(t)})})]},t.id)})})]})}),(0,X.jsx)(ze,{open:h!==void 0,onOpenChange:e=>{e||(g(void 0),v.reset())},title:n(`members.invites.revokeTitle`),description:n(`members.invites.revokeDescription`,{email:h?.email??``}),confirmLabel:n(`members.invites.revoke`),busy:v.isPending,error:v.error,onConfirm:()=>h&&v.mutate(h)})]})}function bt(){let{t:e,locale:t}=W(),n=te(),r=[{icon:(0,X.jsx)(ee,{size:16}),text:e(`members.how.single`)},{icon:(0,X.jsx)(x,{size:16}),text:e(`members.how.bound`)},{icon:(0,X.jsx)(S,{size:16}),text:e(`members.how.expiry`,{default:q(n.defaultHours*60,t,`long`),admin:q(be(n,`administrator`)*60,t,`long`)})},{icon:(0,X.jsx)(w,{size:16}),text:e(`members.how.keys`)},{icon:(0,X.jsx)(Ie,{size:16}),text:e(`members.how.owner`)}];return(0,X.jsx)(de,{title:e(`members.how.title`),icon:(0,X.jsx)(g,{size:16}),children:(0,X.jsx)(`div`,{className:`grid gap-3`,children:r.map(e=>(0,X.jsxs)(`div`,{className:`flex items-start gap-2`,children:[(0,X.jsx)(`span`,{className:`flex h-lh items-center text-kumo-subtle`,children:e.icon}),(0,X.jsx)(_,{variant:`secondary`,size:`sm`,children:e.text})]},e.text))})})}function xt({member:e,you:t,problem:n,isOwner:r,multiSite:a,on:o}){let s=G(),c=e.sites?Object.keys(e.sites).length:0,l=(0,X.jsxs)(`span`,{className:`inline-flex flex-wrap items-center gap-1.5`,children:[(0,X.jsx)(J,{value:e.role}),c>0&&(0,X.jsx)(`span`,{"data-site-limited":!0,children:(0,X.jsx)(i,{variant:`secondary`,children:s(`siteAccess.count`,{count:c})})})]});return(0,X.jsxs)(B.Row,{"data-member-id":e.userId,"data-role":e.role,children:[(0,X.jsx)(B.Cell,{children:(0,X.jsxs)(`div`,{className:`grid min-w-0 gap-1.5 sm:min-w-56`,children:[(0,X.jsx)(Z,{member:e,you:t}),(0,X.jsx)(`span`,{className:`ps-11 sm:hidden`,children:l})]})}),(0,X.jsx)(B.Cell,{className:`hidden whitespace-nowrap sm:table-cell`,children:l}),(0,X.jsx)(B.Cell,{className:`hidden whitespace-nowrap sm:table-cell`,children:(0,X.jsx)(Le,{iso:e.joinedAt})}),(0,X.jsx)(B.Cell,{sticky:`right`,className:`w-12 text-end`,children:(0,X.jsx)(gt,{member:e,problem:n,isOwner:r,onRole:()=>o.setToRole(e),onSites:a&&Ye(e.role)?()=>o.setToSites(e):void 0,onReset:()=>o.setToReset(e),onTransfer:()=>o.setToTransfer(e),onRemove:()=>o.setToRemove(e)})})]})}function St(){let e=G(),t=u(),{view:n=`members`}=d({strict:!1}),r=ie().data,i=ne(),a=re(),s=j(`members.invite`),l=M(`members.manage`),f=j(`activity.all`),p=M(`agents.manage`)&&r?.can!==void 0,m=c({queryKey:[`agent-keys`,`all`],queryFn:L.agentKeys.listAll,enabled:p,retry:!1}),_=(0,Y.useMemo)(()=>pe(i.data??[]),[i.data]),v=Ge(_,ht),[y,b]=(0,Y.useState)(!1),[x,S]=(0,Y.useState)(),[ee,C]=(0,Y.useState)(),[T,E]=(0,Y.useState)(),D=(Ke().data?.length??0)>1,[O,A]=(0,Y.useState)(),[te,N]=(0,Y.useState)(),[P,ae]=(0,Y.useState)(),F=c({queryKey:[`invites`],queryFn:L.invites.list,enabled:s.allowed&&r?.can!==void 0,retry:!1}),I=oe(i.error),ce={userId:r?.userId,canManage:l},R=r?.role===`owner`,z=e=>{S(e),b(!0)};return(0,X.jsxs)(we,{crumbs:(0,X.jsx)(le,{trail:[{label:e(`pageHeaders.team.title`)}]}),icon:(0,X.jsx)(De,{size:24}),title:e(`pageHeaders.team.title`),description:e(`pageHeaders.team.description`),tabs:[{value:`members`,label:e(`members.tabs.members`)},{value:`activity`,label:e(`members.tabs.activity`)}],tab:n,onTabChange:e=>t({to:`/team`,search:e===`activity`?{view:`activity`}:{}}),actions:(0,X.jsx)(o,{variant:`primary`,icon:(0,X.jsx)(Oe,{}),onClick:()=>z(),disabled:!s.allowed||I,title:s.reason,children:e(`members.invite`)}),aside:n===`members`?(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(de,{title:e(`members.roles.title`),icon:(0,X.jsx)(w,{size:16}),description:e(`members.roles.description`),flush:!0,children:(0,X.jsx)(Fe,{roles:a.names,current:r?.role??void 0})}),(0,X.jsx)(bt,{})]}):void 0,children:[I?(0,X.jsx)(k,{variant:`secondary`,icon:(0,X.jsx)(g,{weight:`fill`}),title:e(`members.notEnabledTitle`),description:e(`members.notEnabledDescription`)}):n===`activity`?f.allowed?(0,X.jsx)(Ue,{source:{kind:`deployment`}}):(0,X.jsx)(k,{variant:`secondary`,icon:(0,X.jsx)(g,{weight:`fill`}),title:e(`members.activity.restrictedTitle`),description:f.reason??``}):(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(Re,{error:i.error,onRetry:()=>i.refetch(),retrying:i.isFetching}),(0,X.jsx)(He,{search:v.search,onSearch:v.setSearch,placeholder:e(`members.search`)}),i.isSuccess&&_.length===0?(0,X.jsx)(ue,{icon:(0,X.jsx)(De,{size:48,className:`text-kumo-inactive`}),title:e(`members.empty`),description:e(`members.emptyDescription`)}):(0,X.jsx)(se,{className:`overflow-x-auto p-0`,children:(0,X.jsxs)(B,{children:[(0,X.jsx)(B.Header,{children:(0,X.jsxs)(B.Row,{children:[(0,X.jsx)(B.Head,{children:e(`members.columns.member`)}),(0,X.jsx)(B.Head,{className:`hidden sm:table-cell`,children:e(`members.columns.role`)}),(0,X.jsx)(B.Head,{className:`hidden sm:table-cell`,children:e(`members.columns.joined`)}),(0,X.jsx)(B.Head,{sticky:`right`,className:`w-12`,children:(0,X.jsx)(`span`,{className:`sr-only`,children:e(`members.columns.actions`)})})]})}),i.isPending?(0,X.jsx)(Ve,{columns:4,rows:3}):v.pageItems.length===0?(0,X.jsx)(B.Body,{children:(0,X.jsx)(B.Row,{children:(0,X.jsx)(B.Cell,{colSpan:4,children:(0,X.jsx)(Te,{icon:(0,X.jsx)(De,{size:32,className:`text-kumo-inactive`}),title:e(`members.noMatches`,{query:v.search})})})})}):(0,X.jsx)(B.Body,{children:v.pageItems.map(e=>(0,X.jsx)(xt,{member:e,you:e.userId===r?.userId,problem:he(ce,e),isOwner:R,multiSite:D,on:{setToRole:C,setToSites:E,setToReset:N,setToTransfer:ae,setToRemove:A}},e.userId))})]})}),v.total>v.perPage&&(0,X.jsx)(h,{page:v.page,perPage:v.perPage,totalCount:v.total,setPage:v.setPage,controls:`simple`}),s.allowed&&r&&(0,X.jsx)(yt,{onReinvite:e=>z(e),onInvite:()=>z()})]}),(0,X.jsx)(at,{open:y,onOpenChange:e=>{b(e),e||S(void 0)},draft:x}),(0,X.jsx)(ut,{member:ee,onOpenChange:e=>!e&&C(void 0)}),(0,X.jsx)(mt,{member:T,onOpenChange:e=>!e&&E(void 0)}),(0,X.jsx)(dt,{member:O,keyCount:O&&m.data?m.data.filter(e=>e.owner?.userId===O.userId&&e.enabled).length:void 0,inviteCount:O&&F.data?F.data.filter(e=>e.inviter.userId===O.userId&&e.status===`pending`).length:void 0,onOpenChange:e=>!e&&A(void 0)}),(0,X.jsx)(ft,{member:te,onOpenChange:e=>!e&&N(void 0)}),(0,X.jsx)(pt,{member:P,onOpenChange:e=>!e&&ae(void 0)})]})}export{St as MembersPage};
|
|
2
|
-
//# sourceMappingURL=MembersPage-
|
|
1
|
+
import{r as e}from"./rolldown-runtime-hePW80VL.js";import{t}from"./IconBase.es-BZDpYMnj.js";import{i as n,r}from"./react-CDCuUAOg.js";import{t as i}from"./badge-dq8bx752b9dp7dst--rpq8QXS.js";import{o as a,t as o}from"./button-pa1bq9b85hawg41a-CmOCuL-1.js";import{S as s,_ as c,h as l,l as u,u as d}from"./tanstack-BRxyYm4G.js";import{t as f}from"./ArrowClockwise.es-BA0pzb0Y.js";import{n as p,t as m}from"./DirectionalIcon-UZJFXGY_.js";import{t as h}from"./pagination-oaenm9t7ou3lmcgw-CjvX77_7.js";import{m as g,n as _}from"./skeleton-line-m9dyh126t9k07jvg-BFlcthbF.js";import{t as v}from"./CheckCircle.es-XJ9Tr9Tu.js";import{t as y}from"./ClockCountdown.es-BR_zz6vi.js";import{t as b}from"./DotsThree.es-C-pT5SgE.js";import{t as x}from"./EnvelopeSimple.es-g-hlqV74.js";import{t as S}from"./Key.es-DE551dL3.js";import{t as ee}from"./LinkSimple.es-BB_3GfFO.js";import{a as C}from"./AgentModes-D8HMrK7G.js";import{t as w}from"./ShieldCheck.es-BOXTHH7h.js";import{t as T}from"./ShieldWarning.es-DPxoDMpT.js";import{t as E}from"./Trash.es-CxKLVMOQ.js";import{t as D}from"./Warning.es-LZXqwHRF.js";import{n as O,t as k}from"./banner-msnmqm7of2lck01x-D6cADEpP.js";import{t as A}from"./XCircle.es-3fJHkmwA.js";import{a as te,c as ne,i as j,l as re,o as ie,r as M,t as N}from"./useMe-DcrRDsez.js";import{t as P}from"./Toast-DYiK3WzC.js";import{t as ae}from"./input-c8lv9ulv0kortliq-Be2cm12J.js";import{t as F}from"./clipboard-text-gd6s3n1bqse9zgt8-_Ede63Fg.js";import{c as oe,o as I,p as se,s as ce,t as L}from"./api-Cqqt5jTd.js";import{t as R}from"./dropdown-m53ji1d66mws89wh-BTaT-o14.js";import{t as z}from"./select-futox5zqr3r80y9a-FumEl51u.js";import{t as B}from"./table-yf8ul2e5nbemioi1-KGRDj7XO.js";import{t as V}from"./radio-35dx7y6rjrezbjsp-2D7MXAy3.js";import{t as le}from"./Crumbs-BVqhFD_U.js";import{t as ue}from"./empty-hkvg3is3uc6dj1at-Cen9KfIy.js";import{t as H}from"./layer-dialog-j5ywmzs46ccg6oqy-CySAcQJW.js";import{t as U}from"./InsetPanel-CHSg953_.js";import{t as de}from"./SectionCard-GPZWTzbx.js";import{c as W,u as G}from"./i18n-Dz1LE8DB.js";import{t as K}from"./api-errors-DObQzNBx.js";import{T as q,x as fe}from"./agents-DGWn1WXw.js";import{S as pe,a as me,b as he,c as ge,d as _e,l as ve,r as ye,u as be,v as xe,w as Se}from"./roles-B7USahqW.js";import{a as Ce}from"./activity-C0we9-m8.js";import{C as we,E as Te,F as Ee,I as De,L as Oe,Q as ke,T as Ae,U as je,c as Me,d as Ne,i as Pe,l as Fe,rt as Ie,s as J,u as Le,x as Re}from"./index-DMKFLgkG.js";import{t as ze}from"./ConfirmDialog-DTOOI7kj.js";import{t as Be}from"./PasswordField-BaDn4bwQ.js";import{t as Ve}from"./TableSkeleton-DWrf88UN.js";import{t as He}from"./ListToolbar-DPtPcPWp.js";import{ActivityList as Ue}from"./ActivityPage-CAKmV0_b.js";import{t as We}from"./ScopeBadge-C_XnkWYq.js";import{t as Ge}from"./usePaging-kMfWrvea.js";import{a as Ke,i as qe,n as Je,r as Ye,t as Xe}from"./SiteAccessField-C0J26Q-t.js";var Y=e(n(),1),Ze=new Map([[`bold`,Y.createElement(Y.Fragment,null,Y.createElement(`path`,{d:`M48,56V200a12,12,0,0,1-24,0V56a12,12,0,0,1,24,0Zm86.73,50.7L120,111.48V96a12,12,0,0,0-24,0v15.48L81.27,106.7a12,12,0,1,0-7.41,22.82l14.72,4.79-9.1,12.52A12,12,0,1,0,98.9,160.94l9.1-12.52,9.1,12.52a12,12,0,1,0,19.42-14.11l-9.1-12.52,14.72-4.79a12,12,0,1,0-7.41-22.82Zm115.12,7.7a12,12,0,0,0-15.12-7.7L220,111.48V96a12,12,0,0,0-24,0v15.48l-14.73-4.78a12,12,0,1,0-7.41,22.82l14.72,4.79-9.1,12.52a12,12,0,1,0,19.42,14.11l9.1-12.52,9.1,12.52a12,12,0,1,0,19.42-14.11l-9.1-12.52,14.72-4.79A12,12,0,0,0,249.85,114.4Z`}))],[`fill`,Y.createElement(Y.Fragment,null,Y.createElement(`path`,{d:`M224,48H32A16,16,0,0,0,16,64V192a16,16,0,0,0,16,16H224a16,16,0,0,0,16-16V64A16,16,0,0,0,224,48Zm-19.42,94.71a8,8,0,1,1-13,9.41L184,141.61l-7.63,10.51a8,8,0,1,1-13-9.41l7.64-10.5-12.36-4a8,8,0,1,1,5-15.21L176,117V104a8,8,0,0,1,16,0v13l12.35-4a8,8,0,0,1,5,15.21l-12.36,4Zm-72,0a8,8,0,1,1-13,9.41L112,141.61l-7.63,10.51a8,8,0,1,1-13-9.41l7.64-10.5-12.36-4a8,8,0,1,1,5-15.21L104,117V104a8,8,0,0,1,16,0v13l12.35-4a8,8,0,1,1,5,15.21l-12.36,4ZM64,88v80a8,8,0,0,1-16,0V88a8,8,0,0,1,16,0Z`}))],[`regular`,Y.createElement(Y.Fragment,null,Y.createElement(`path`,{d:`M48,56V200a8,8,0,0,1-16,0V56a8,8,0,0,1,16,0Zm92,54.5L120,117V96a8,8,0,0,0-16,0v21L84,110.5a8,8,0,0,0-5,15.22l20,6.49-12.34,17a8,8,0,1,0,12.94,9.4l12.34-17,12.34,17a8,8,0,1,0,12.94-9.4l-12.34-17,20-6.49A8,8,0,0,0,140,110.5ZM246,115.64A8,8,0,0,0,236,110.5L216,117V96a8,8,0,0,0-16,0v21l-20-6.49a8,8,0,0,0-4.95,15.22l20,6.49-12.34,17a8,8,0,1,0,12.94,9.4l12.34-17,12.34,17a8,8,0,1,0,12.94-9.4l-12.34-17,20-6.49A8,8,0,0,0,246,115.64Z`}))]]),Qe=new Map([[`bold`,Y.createElement(Y.Fragment,null,Y.createElement(`path`,{d:`M169.57,46.11a12,12,0,0,1,15.12-7.7L188,39.48V36a12,12,0,0,1,24,0v3.48l3.31-1.07a12,12,0,1,1,7.42,22.82l-3.31,1.08,2,2.82a12,12,0,1,1-19.41,14.1L200,76.42,198,79.23a12,12,0,1,1-19.41-14.1l2-2.82-3.31-1.08A12,12,0,0,1,169.57,46.11ZM236,128A108,108,0,1,1,128,20a109.19,109.19,0,0,1,18,1.49,12,12,0,0,1-4,23.67A85,85,0,0,0,128,44,83.94,83.94,0,0,0,62.05,179.94a83.48,83.48,0,0,1,29-23.42,52,52,0,1,1,74,0,83.48,83.48,0,0,1,29,23.42A83.57,83.57,0,0,0,212,128a85.2,85.2,0,0,0-1.16-14,12,12,0,0,1,23.67-4A109,109,0,0,1,236,128ZM128,148a28,28,0,1,0-28-28A28,28,0,0,0,128,148Zm0,64a83.53,83.53,0,0,0,48.43-15.43,60,60,0,0,0-96.86,0A83.53,83.53,0,0,0,128,212Z`}))],[`fill`,Y.createElement(Y.Fragment,null,Y.createElement(`path`,{d:`M228.25,63.07l-4.66-2.69a23.6,23.6,0,0,0,0-8.76l4.66-2.69a8,8,0,0,0-8-13.86l-4.67,2.7A23.92,23.92,0,0,0,208,33.38V28a8,8,0,0,0-16,0v5.38a23.92,23.92,0,0,0-7.58,4.39l-4.67-2.7a8,8,0,1,0-8,13.86l4.66,2.69a23.6,23.6,0,0,0,0,8.76l-4.66,2.69a8,8,0,0,0,4,14.93,7.92,7.92,0,0,0,4-1.07l4.67-2.7A23.92,23.92,0,0,0,192,78.62V84a8,8,0,0,0,16,0V78.62a23.92,23.92,0,0,0,7.58-4.39l4.67,2.7a7.92,7.92,0,0,0,4,1.07,8,8,0,0,0,4-14.93ZM200,64a8,8,0,1,1,8-8A8,8,0,0,1,200,64ZM128,76a44,44,0,1,1-44,44A44,44,0,0,1,128,76Zm102.56,34.68a103.92,103.92,0,1,1-85.24-85.24,8,8,0,0,1-2.64,15.78A88.07,88.07,0,0,0,40,128a87.62,87.62,0,0,0,22.24,58.41A79.71,79.71,0,0,1,84,165.1a4,4,0,0,1,4.83.32,59.81,59.81,0,0,0,78.27,0,4,4,0,0,1,4.84-.32,79.86,79.86,0,0,1,21.79,21.31A87.62,87.62,0,0,0,216,128a88.85,88.85,0,0,0-1.22-14.68,8,8,0,1,1,15.78-2.64Z`}))],[`regular`,Y.createElement(Y.Fragment,null,Y.createElement(`path`,{d:`M228.25,63.07l-4.66-2.69a23.6,23.6,0,0,0,0-8.76l4.66-2.69a8,8,0,0,0-8-13.86l-4.67,2.7A23.92,23.92,0,0,0,208,33.38V28a8,8,0,0,0-16,0v5.38a23.92,23.92,0,0,0-7.58,4.39l-4.67-2.7a8,8,0,1,0-8,13.86l4.66,2.69a23.6,23.6,0,0,0,0,8.76l-4.66,2.69a8,8,0,0,0,4,14.93,7.92,7.92,0,0,0,4-1.07l4.67-2.7A23.92,23.92,0,0,0,192,78.62V84a8,8,0,0,0,16,0V78.62a23.92,23.92,0,0,0,7.58-4.39l4.67,2.7a7.92,7.92,0,0,0,4,1.07,8,8,0,0,0,4-14.93ZM192,56a8,8,0,1,1,8,8A8,8,0,0,1,192,56Zm29.35,48.11a8,8,0,0,0-6.57,9.21A88.85,88.85,0,0,1,216,128a87.62,87.62,0,0,1-22.24,58.41,79.66,79.66,0,0,0-36.06-28.75,48,48,0,1,0-59.4,0,79.66,79.66,0,0,0-36.06,28.75A88,88,0,0,1,128,40a88.76,88.76,0,0,1,14.68,1.22,8,8,0,0,0,2.64-15.78,103.92,103.92,0,1,0,85.24,85.24A8,8,0,0,0,221.35,104.11ZM96,120a32,32,0,1,1,32,32A32,32,0,0,1,96,120ZM74.08,197.5a64,64,0,0,1,107.84,0,87.83,87.83,0,0,1-107.84,0Z`}))]]),$e=Y.forwardRef((e,n)=>Y.createElement(t,{ref:n,...e,weights:Ze}));$e.displayName=`PasswordIcon`;var et=$e,tt=Y.forwardRef((e,n)=>Y.createElement(t,{ref:n,...e,weights:Qe}));tt.displayName=`UserCircleGearIcon`;var nt=tt,X=r(),rt=[`rank`,`invalid_expiry`,`delivery_unavailable`,`delivery_failed`,`already_member`,`too_many_invites`,`rate_limited`];function it(e){let t=I(e);return rt.includes(t??``)?t:void 0}function at({open:e,onOpenChange:t,draft:n}){let{t:r,locale:i}=W(),a=s(),o=ie().data,c=te(),u=o?.invitableRoles??[],d=u.includes(`author`)?`author`:u.at(-1)??`contributor`,[f,p]=(0,Y.useState)(``),[m,h]=(0,Y.useState)(d),[g,v]=(0,Y.useState)(()=>ge(c,d)),[y,b]=(0,Y.useState)(`link`),[S,C]=(0,Y.useState)(!1),[w,T]=(0,Y.useState)(),[E,D]=(0,Y.useState)(),A=l({mutationFn:()=>L.invites.create({email:f.trim().toLowerCase(),role:m,expiresInHours:g,...y===`email`?{delivery:y}:{},...E&&Ye(m)?{sites:Je(E,m)}:{}}),onSuccess:async e=>{T(e),await a.invalidateQueries({queryKey:[`invites`]})}});(0,Y.useEffect)(()=>{if(e){let e=n&&u.includes(n.role)?n.role:d;p(n?.email??``),h(e),v(ge(c,e)),b(`link`),D(void 0),C(!1),A.reset()}else T(void 0)},[e]);let ne=_e(c,m),j=e=>{h(e),_e(c,e).includes(g)||v(ge(c,e))},re=S&&!Se(f)?f.trim()?r(`invites.errors.emailInvalid`):r(`invites.errors.emailRequired`):void 0,M=()=>{C(!0),!A.isPending&&Se(f)&&u.includes(m)&&(Ye(m)&&qe(E)||A.mutate())},N=it(A.error),P=r(`roles.names.${m}`),F=c.delivery.includes(`email`);return(0,X.jsx)(H.Root,{open:e,onOpenChange:t,dismissDisabled:A.isPending,children:(0,X.jsxs)(H.Content,{size:`base`,closeLabel:r(`common.close`),children:[(0,X.jsx)(H.Title,{children:w?w.url?r(`invites.reveal.title`):r(`invites.reveal.sentTitle`):r(n?`invites.create.reinviteTitle`:`invites.create.title`)}),(0,X.jsx)(H.Description,{children:w?r(`invites.reveal.description`,{email:w.invite.email,role:r(`roles.names.${w.invite.role}`)}):r(`invites.create.description`)}),(0,X.jsx)(H.Body,{children:w?(0,X.jsx)(ot,{created:w}):(0,X.jsxs)(`div`,{className:`grid gap-5`,"data-testid":`invite-step-details`,children:[(0,X.jsx)(_,{variant:`secondary`,size:`sm`,children:r(`invites.create.step`)}),A.error&&(0,X.jsx)(k,{variant:`error`,size:`sm`,icon:(0,X.jsx)(O,{weight:`fill`}),title:r(`invites.create.failed`),description:N?r(`invites.errors.${N}`,{email:f.trim(),role:P}):K(r,A.error)}),(0,X.jsx)(ae,{className:`w-full`,label:r(`invites.create.email`),description:r(`invites.create.emailHint`),placeholder:r(`invites.create.emailPlaceholder`),type:`email`,inputMode:`email`,autoComplete:`off`,value:f,onValueChange:p,error:re,autoFocus:!0,maxLength:254,onKeyDown:e=>{e.key===`Enter`&&(e.preventDefault(),M())}}),(0,X.jsx)(`div`,{className:`@container`,children:(0,X.jsxs)(`div`,{className:`grid items-start gap-5 @md:grid-cols-2`,children:[(0,X.jsx)(z,{className:`w-full`,label:r(`invites.create.role`),description:r(`invites.create.roleHint`),value:m,onValueChange:e=>j(e),items:Object.fromEntries(u.map(e=>[e,r(`roles.names.${e}`)]))}),(0,X.jsx)(z,{className:`w-full`,label:r(`invites.create.expiry`),description:m===`administrator`?r(`invites.create.expiryAdmin`,{max:q(be(c,m)*60,i,`long`)}):r(`invites.create.expiryHint`),value:String(g),onValueChange:e=>v(Number(e)),items:Object.fromEntries(ne.map(e=>[String(e),q(e*60,i,`long`)]))})]})}),(0,X.jsx)(Xe,{role:m,value:E,onChange:D,error:S&&qe(E)?r(`siteAccess.required`):void 0}),(0,X.jsxs)(`div`,{className:`grid min-w-0 gap-2`,"data-testid":`role-explainer`,children:[(0,X.jsx)(_,{size:`sm`,bold:!0,as:`span`,children:r(`invites.create.explainer`)}),(0,X.jsx)(`div`,{className:`-mx-1 min-w-0 overflow-x-auto`,children:(0,X.jsx)(Me,{roles:u,selected:m})})]}),F&&(0,X.jsxs)(V.Group,{appearance:`card`,value:y,onValueChange:e=>b(e),children:[(0,X.jsx)(V.Legend,{children:r(`invites.create.delivery`)}),(0,X.jsx)(V.Item,{value:`link`,label:(0,X.jsxs)(`span`,{className:`flex items-center gap-2`,children:[(0,X.jsx)(ee,{size:16,className:`text-kumo-subtle`}),r(`invites.create.deliveryLink`)]}),description:r(`invites.create.deliveryLinkHint`)}),(0,X.jsx)(V.Item,{value:`email`,label:(0,X.jsxs)(`span`,{className:`flex items-center gap-2`,children:[(0,X.jsx)(x,{size:16,className:`text-kumo-subtle`}),r(`invites.create.deliveryEmail`)]}),description:r(`invites.create.deliveryEmailHint`)})]})]})}),(0,X.jsx)(H.Actions,{dismissLabel:r(w?`common.close`:`common.cancel`),children:w?(0,X.jsx)(H.Actions.Primary,{onClick:()=>t(!1),children:w.url?r(`invites.reveal.done`):r(`common.close`)}):(0,X.jsx)(H.Actions.Primary,{onClick:M,loading:A.isPending,children:r(y===`email`?`invites.create.send`:`invites.create.submit`)})})]})})}function ot({created:e}){let{t,locale:n}=W(),r=e.invite.expiresAt;return(0,X.jsxs)(`div`,{className:`grid gap-5`,"data-testid":`invite-reveal`,children:[e.url?(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(k,{variant:`alert`,icon:(0,X.jsx)(D,{weight:`fill`}),title:t(`invites.reveal.warningTitle`),description:t(`invites.reveal.warning`,{role:t(`roles.names.${e.invite.role}`)})}),(0,X.jsxs)(`div`,{className:`grid min-w-0 gap-1.5`,children:[(0,X.jsx)(_,{size:`sm`,bold:!0,as:`span`,children:t(`invites.reveal.link`)}),(0,X.jsx)(F,{size:`lg`,text:e.url,tooltip:{text:t(`common.copy`),copiedText:t(`common.copied`)}})]})]}):(0,X.jsx)(k,{variant:`default`,icon:(0,X.jsx)(v,{weight:`fill`}),title:t(`invites.reveal.sent`,{email:e.invite.email}),description:t(`invites.reveal.sentDescription`)}),(0,X.jsxs)(U,{label:t(`invites.reveal.summary`),children:[(0,X.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,X.jsx)(J,{value:e.invite.role}),(0,X.jsx)(_,{as:`span`,truncate:!0,children:e.invite.email})]}),r&&(0,X.jsxs)(`div`,{className:`flex items-start gap-2`,children:[(0,X.jsx)(`span`,{className:`flex h-lh items-center text-kumo-subtle`,children:(0,X.jsx)(y,{size:16})}),(0,X.jsx)(_,{variant:`secondary`,size:`sm`,children:t(`invites.reveal.expires`,{relative:me(r,n),absolute:Ce(r,n)})})]}),(0,X.jsxs)(`div`,{className:`flex items-start gap-2`,children:[(0,X.jsx)(`span`,{className:`flex h-lh items-center text-kumo-subtle`,children:(0,X.jsx)(T,{size:16})}),(0,X.jsx)(_,{variant:`secondary`,size:`sm`,children:t(`invites.reveal.private`)})]})]})]})}function st(e){let t=(0,Y.useRef)(e);return e!==void 0&&(t.current=e),e??t.current}function Z({member:e,you:t=!1,size:n=`base`}){let r=G();return(0,X.jsxs)(`div`,{className:`flex min-w-0 items-center gap-3`,children:[(0,X.jsx)(Ae,{initials:Pe(e.name,e.email),size:n}),(0,X.jsxs)(`div`,{className:`grid min-w-0 gap-0.5`,children:[(0,X.jsxs)(`span`,{className:`flex min-w-0 items-center gap-2`,children:[(0,X.jsx)(_,{bold:!0,as:`span`,truncate:!0,children:e.name||e.email||`—`}),t&&(0,X.jsx)(i,{variant:`outline`,children:r(`members.you`)})]}),e.email&&(0,X.jsx)(_,{variant:`secondary`,size:`sm`,as:`span`,truncate:!0,children:e.email})]})]})}function ct(){let e=G();return t=>{if(I(t)!==`rank`)return;let n=ce(t,`problem`);return e(n?`members.rank.${n}`:`members.rank.not_allowed`)}}function lt({change:e}){let t=G(),n=e.mode.from!==e.mode.to;return(0,X.jsxs)(`div`,{className:`grid gap-2 py-3 first:pt-0 last:pb-0`,"data-narrowed-key":e.keyId,children:[(0,X.jsxs)(`span`,{className:`flex items-center gap-2`,children:[(0,X.jsx)(S,{size:16,className:`shrink-0 text-kumo-subtle`}),(0,X.jsx)(_,{bold:!0,as:`span`,children:e.name??t(`agents.unnamed`)})]}),n&&(0,X.jsxs)(`span`,{className:`flex flex-wrap items-center gap-1.5`,children:[(0,X.jsx)(_,{variant:`secondary`,size:`sm`,as:`span`,children:t(`members.role.narrowedMode`)}),(0,X.jsx)(C,{mode:e.mode.from,subtle:!0}),(0,X.jsx)(p,{size:12}),(0,X.jsx)(C,{mode:e.mode.to})]}),(0,X.jsxs)(`div`,{className:`flex flex-wrap items-center gap-1`,children:[(0,X.jsx)(_,{variant:`secondary`,size:`sm`,as:`span`,children:t(`members.role.narrowedScopes`)}),fe(e.scopes.to).map(e=>(0,X.jsx)(We,{scope:e},e))]}),e.elevationEnded&&(0,X.jsx)(_,{variant:`secondary`,size:`sm`,children:t(`members.role.elevationEnded`)})]})}function ut({member:e,onOpenChange:t}){let n=G(),r=s(),i=P(),a=re(),o=ct(),c=st(e),[u,d]=(0,Y.useState)(e?.role??`contributor`),[f,m]=(0,Y.useState)(),h=l({mutationFn:({userId:e,to:t})=>L.members.setRole(e,t),onSuccess:async e=>{await Promise.all([r.invalidateQueries({queryKey:N}),r.invalidateQueries({queryKey:[`agent-keys`]})]);let a=e.member.name,o=n(`roles.names.${e.member.role}`);e.keysNarrowed.length>0?m(e.keysNarrowed):t(!1),i.success(n(`members.role.changed`),n(`members.role.changedDescription`,{name:a,to:o}))}});(0,Y.useEffect)(()=>{e&&(d(e.role),m(void 0),h.reset())},[e?.userId]);let v=c?.role??`contributor`,y=xe(u)<xe(v),b=u===v,x=h.error?o(h.error)??K(n,h.error):``;return(0,X.jsx)(H.Root,{open:e!==void 0,onOpenChange:t,dismissDisabled:h.isPending,children:(0,X.jsxs)(H.Content,{size:`base`,closeLabel:n(`common.close`),children:[(0,X.jsx)(H.Title,{children:f?n(`members.role.narrowedTitle`):n(`members.role.title`,{name:c?.name??``})}),(0,X.jsx)(H.Description,{children:f?n(`members.role.narrowedDescription`,{count:f.length}):n(`members.role.description`)}),(0,X.jsx)(H.Body,{children:f?(0,X.jsxs)(`div`,{className:`grid gap-4`,"data-testid":`keys-narrowed`,children:[(0,X.jsx)(k,{variant:`default`,icon:(0,X.jsx)(g,{weight:`fill`}),title:n(`members.role.narrowedBanner`,{count:f.length}),description:n(`members.role.narrowedBannerDescription`)}),(0,X.jsx)(U,{label:n(`members.role.narrowedTitle`),children:(0,X.jsx)(`div`,{className:`divide-y divide-kumo-hairline`,children:f.map(e=>(0,X.jsx)(lt,{change:e},e.keyId))})})]}):(0,X.jsxs)(`div`,{className:`grid gap-5`,children:[c&&(0,X.jsxs)(U,{layout:`row`,label:n(`members.role.member`),children:[(0,X.jsx)(Z,{member:c}),(0,X.jsx)(J,{value:c.role})]}),h.error&&(0,X.jsx)(k,{variant:`error`,size:`sm`,icon:(0,X.jsx)(O,{weight:`fill`}),title:n(`members.role.failed`),description:x}),(0,X.jsx)(z,{className:`w-full`,label:n(`members.role.newRole`),value:u,onValueChange:e=>d(e),items:Object.fromEntries(ye(a).map(e=>[e,n(`roles.names.${e}`)])),description:n(`roles.summaries.${u}`)}),!b&&(0,X.jsxs)(U,{layout:`row`,label:n(`members.role.change`),children:[(0,X.jsxs)(`span`,{className:`flex flex-wrap items-center gap-2`,children:[(0,X.jsx)(_,{variant:`secondary`,size:`sm`,as:`span`,children:n(`members.role.now`)}),(0,X.jsx)(J,{value:v,tooltip:!1}),(0,X.jsx)(p,{size:14}),(0,X.jsx)(J,{value:u,tooltip:!1})]}),(0,X.jsx)(_,{variant:`secondary`,size:`sm`,as:`span`,children:n(`members.role.immediate`)})]}),y&&(0,X.jsx)(k,{variant:`alert`,size:`sm`,icon:(0,X.jsx)(S,{weight:`fill`}),title:n(`members.role.demotionTitle`),description:n(`members.role.demotion`,{role:n(`roles.names.${u}`)})})]})}),(0,X.jsx)(H.Actions,{dismissLabel:n(f?`common.close`:`common.cancel`),children:f?(0,X.jsx)(H.Actions.Primary,{onClick:()=>t(!1),children:n(`members.role.done`)}):(0,X.jsx)(H.Actions.Primary,{onClick:()=>c&&h.mutate({userId:c.userId,to:u}),loading:h.isPending,disabled:b,children:n(`members.role.submit`)})})]})})}function Q({icon:e,children:t}){return(0,X.jsxs)(`div`,{className:`flex items-start gap-2`,children:[(0,X.jsx)(`span`,{className:`flex h-lh items-center text-kumo-subtle`,children:e}),(0,X.jsx)(_,{size:`sm`,children:t})]})}function dt({member:e,keyCount:t,inviteCount:n,onOpenChange:r}){let i=G(),a=s(),o=P(),c=ct(),u=st(e),d=l({mutationFn:e=>L.members.remove(e),onSuccess:async e=>{r(!1),o.success(i(`members.remove.done`,{name:u?.name??``}),i(`members.remove.doneDescription`,{keys:e.keysDisabled,invites:e.invitesCanceled,requests:e.requestsDenied})),await Promise.all([a.invalidateQueries({queryKey:N}),a.invalidateQueries({queryKey:[`invites`]}),a.invalidateQueries({queryKey:[`agent-keys`]}),a.invalidateQueries({queryKey:[`approvals`]})])}});return(0,Y.useEffect)(()=>{e&&d.reset()},[e?.userId]),(0,X.jsx)(H.Alert,{open:e!==void 0,onOpenChange:r,dismissDisabled:d.isPending,children:(0,X.jsxs)(H.Content,{size:`sm`,closeLabel:i(`common.close`),children:[(0,X.jsx)(H.Title,{children:i(`members.remove.title`,{name:u?.name??``})}),(0,X.jsx)(H.Description,{children:i(`members.remove.description`)}),(0,X.jsx)(H.Body,{children:(0,X.jsxs)(`div`,{className:`grid gap-4`,"data-testid":`remove-member`,children:[u&&(0,X.jsxs)(U,{layout:`row`,label:i(`members.role.member`),children:[(0,X.jsx)(Z,{member:u,size:`sm`}),(0,X.jsx)(J,{value:u.role,tooltip:!1})]}),(0,X.jsxs)(`div`,{className:`grid gap-2`,children:[(0,X.jsx)(Q,{icon:(0,X.jsx)(m,{icon:je,size:16}),children:i(`members.remove.signOut`)}),(0,X.jsx)(Q,{icon:(0,X.jsx)(S,{size:16}),children:t===void 0?i(`members.remove.keys`):i(`members.remove.keysCount`,{count:t})}),(0,X.jsx)(Q,{icon:(0,X.jsx)(A,{size:16}),children:n===void 0?i(`members.remove.invites`):i(`members.remove.invitesCount`,{count:n})}),(0,X.jsx)(Q,{icon:(0,X.jsx)(y,{size:16}),children:i(`members.remove.requests`)}),(0,X.jsx)(Q,{icon:(0,X.jsx)(g,{size:16}),children:i(`members.remove.kept`)})]}),d.error&&(0,X.jsx)(k,{variant:`error`,size:`sm`,icon:(0,X.jsx)(O,{weight:`fill`}),title:i(`members.remove.failed`),description:c(d.error)??K(i,d.error)})]})}),(0,X.jsx)(H.Actions,{dismissLabel:i(`common.cancel`),children:(0,X.jsx)(H.Actions.Primary,{variant:`destructive`,loading:d.isPending,onClick:()=>u&&d.mutate(u.userId),children:i(`members.remove.submit`)})})]})})}function ft({member:e,onOpenChange:t}){let{t:n,locale:r}=W(),i=ct(),a=st(e),[o,s]=(0,Y.useState)(),c=l({mutationFn:e=>L.members.passwordReset(e),onSuccess:e=>s(e)});return(0,Y.useEffect)(()=>{e?(s(void 0),c.reset()):s(void 0)},[e?.userId]),(0,X.jsx)(H.Root,{open:e!==void 0,onOpenChange:t,dismissDisabled:c.isPending,children:(0,X.jsxs)(H.Content,{size:`base`,closeLabel:n(`common.close`),children:[(0,X.jsx)(H.Title,{children:n(o?`members.reset.revealTitle`:`members.reset.title`)}),(0,X.jsx)(H.Description,{children:n(o?`members.reset.revealDescription`:`members.reset.description`,{name:a?.name??``})}),(0,X.jsx)(H.Body,{children:o?(0,X.jsxs)(`div`,{className:`grid gap-5`,"data-testid":`reset-reveal`,children:[(0,X.jsx)(k,{variant:`alert`,icon:(0,X.jsx)(D,{weight:`fill`}),title:n(`members.reset.warningTitle`),description:n(`members.reset.warning`)}),(0,X.jsxs)(`div`,{className:`grid min-w-0 gap-1.5`,children:[(0,X.jsx)(_,{size:`sm`,bold:!0,as:`span`,children:n(`members.reset.link`)}),(0,X.jsx)(F,{size:`lg`,text:o.url,tooltip:{text:n(`common.copy`),copiedText:n(`common.copied`)}})]}),(0,X.jsx)(U,{children:(0,X.jsxs)(`div`,{className:`flex items-start gap-2`,children:[(0,X.jsx)(`span`,{className:`flex h-lh items-center text-kumo-subtle`,children:(0,X.jsx)(y,{size:16})}),(0,X.jsx)(_,{variant:`secondary`,size:`sm`,children:n(`members.reset.expires`,{relative:me(o.expiresAt,r),absolute:Ce(o.expiresAt,r)})})]})})]}):(0,X.jsxs)(`div`,{className:`grid gap-4`,children:[a&&(0,X.jsxs)(U,{layout:`row`,label:n(`members.role.member`),children:[(0,X.jsx)(Z,{member:a,size:`sm`}),(0,X.jsx)(J,{value:a.role,tooltip:!1})]}),(0,X.jsxs)(`div`,{className:`grid gap-2`,children:[(0,X.jsx)(Q,{icon:(0,X.jsx)(y,{size:16}),children:n(`members.reset.once`)}),(0,X.jsx)(Q,{icon:(0,X.jsx)(m,{icon:je,size:16}),children:n(`members.reset.signsOut`)}),(0,X.jsx)(Q,{icon:(0,X.jsx)(T,{size:16}),children:n(`members.reset.replaces`)})]}),c.error&&(0,X.jsx)(k,{variant:`error`,size:`sm`,icon:(0,X.jsx)(O,{weight:`fill`}),title:n(`members.reset.failed`),description:i(c.error)??K(n,c.error)})]})}),(0,X.jsx)(H.Actions,{dismissLabel:n(o?`common.close`:`common.cancel`),children:o?(0,X.jsx)(H.Actions.Primary,{onClick:()=>t(!1),children:n(`members.reset.done`)}):(0,X.jsx)(H.Actions.Primary,{loading:c.isPending,onClick:()=>a&&c.mutate(a.userId),children:n(`members.reset.submit`)})})]})})}function pt({member:e,onOpenChange:t}){let n=G(),r=s(),i=P(),a=ct(),o=st(e),[c,u]=(0,Y.useState)(``),[d,f]=(0,Y.useState)(!1),m=l({mutationFn:({userId:e,pw:t})=>L.members.transferOwnership(e,t),onSuccess:async()=>{t(!1),i.success(n(`members.transfer.done`),n(`members.transfer.doneDescription`,{name:o?.name??``})),await Promise.all([r.invalidateQueries({queryKey:N}),r.invalidateQueries({queryKey:[`me`]}),r.invalidateQueries({queryKey:[`agent-keys`]})])}});(0,Y.useEffect)(()=>{e?(u(``),f(!1),m.reset()):u(``)},[e?.userId]);let h=I(m.error),g=h===`wrong_password`?n(`members.transfer.wrongPassword`):d&&!c?n(`members.transfer.passwordRequired`):void 0,_=()=>{f(!0),o&&c&&!m.isPending&&m.mutate({userId:o.userId,pw:c})},v=m.error&&h!==`wrong_password`?h===`not_administrator`?n(`members.transfer.notAdministrator`):a(m.error)??K(n,m.error):void 0;return(0,X.jsx)(H.Alert,{open:e!==void 0,onOpenChange:t,dismissDisabled:m.isPending,children:(0,X.jsxs)(H.Content,{size:`base`,closeLabel:n(`common.close`),children:[(0,X.jsx)(H.Title,{children:n(`members.transfer.title`,{name:o?.name??``})}),(0,X.jsx)(H.Description,{children:n(`members.transfer.description`)}),(0,X.jsx)(H.Body,{children:(0,X.jsxs)(`div`,{className:`grid gap-5`,"data-testid":`transfer-ownership`,children:[(0,X.jsx)(k,{variant:`alert`,icon:(0,X.jsx)(Ie,{weight:`fill`}),title:n(`members.transfer.warningTitle`),description:n(`members.transfer.warning`,{name:o?.name??``})}),o&&(0,X.jsxs)(U,{layout:`row`,label:n(`members.transfer.to`),children:[(0,X.jsx)(Z,{member:o,size:`sm`}),(0,X.jsxs)(`span`,{className:`flex items-center gap-1.5`,children:[(0,X.jsx)(J,{value:o.role,tooltip:!1}),(0,X.jsx)(p,{size:12}),(0,X.jsx)(J,{value:`owner`,tooltip:!1})]})]}),(0,X.jsxs)(`div`,{className:`grid gap-2`,children:[(0,X.jsx)(Q,{icon:(0,X.jsx)(Ie,{size:16}),children:n(`members.transfer.youBecome`)}),(0,X.jsx)(Q,{icon:(0,X.jsx)(S,{size:16}),children:n(`members.transfer.keys`)}),(0,X.jsx)(Q,{icon:(0,X.jsx)(T,{size:16}),children:n(`members.transfer.onlyThey`)})]}),v&&(0,X.jsx)(k,{variant:`error`,size:`sm`,icon:(0,X.jsx)(O,{weight:`fill`}),title:n(`members.transfer.failed`),description:v}),(0,X.jsx)(Be,{label:n(`members.transfer.password`),description:n(`members.transfer.passwordHint`),value:c,onValueChange:u,error:g,autoComplete:`current-password`,onEnter:_})]})}),(0,X.jsx)(H.Actions,{dismissLabel:n(`common.cancel`),children:(0,X.jsx)(H.Actions.Primary,{variant:`destructive`,loading:m.isPending,onClick:_,children:n(`members.transfer.submit`)})})]})})}function mt({member:e,onOpenChange:t}){let n=G(),r=s(),i=P(),a=(0,Y.useRef)(e);e&&(a.current=e);let o=e??a.current,[c,u]=(0,Y.useState)(o?.sites),[d,f]=(0,Y.useState)(!1),p=l({mutationFn:({userId:e,next:t})=>L.members.setSites(e,t),onSuccess:async e=>{await r.invalidateQueries({queryKey:N}),t(!1),i.success(n(`siteAccess.saved`),n(`siteAccess.savedDescription`,{name:e.member.name}))}});return(0,Y.useEffect)(()=>{e&&(u(e.sites),f(!1),p.reset())},[e?.userId]),(0,X.jsx)(H.Root,{open:e!==void 0,onOpenChange:t,dismissDisabled:p.isPending,children:(0,X.jsxs)(H.Content,{size:`base`,closeLabel:n(`common.close`),children:[(0,X.jsx)(H.Title,{children:n(`siteAccess.title`,{name:o?.name??``})}),(0,X.jsx)(H.Description,{children:n(`siteAccess.description`)}),(0,X.jsx)(H.Body,{children:(0,X.jsxs)(`div`,{className:`grid gap-5`,children:[o&&(0,X.jsxs)(U,{layout:`row`,label:n(`members.role.member`),children:[(0,X.jsx)(Z,{member:o}),(0,X.jsx)(J,{value:o.role})]}),p.error&&(0,X.jsx)(k,{variant:`error`,size:`sm`,icon:(0,X.jsx)(O,{weight:`fill`}),title:n(`siteAccess.failed`),description:K(n,p.error)}),o&&(0,X.jsx)(Xe,{role:o.role,value:c,onChange:u,error:d&&qe(c)?n(`siteAccess.required`):void 0})]})}),(0,X.jsx)(H.Actions,{dismissLabel:n(`common.cancel`),children:(0,X.jsx)(H.Actions.Primary,{onClick:()=>{f(!0),o&&!qe(c)&&p.mutate({userId:o.userId,next:Je(c??{},o.role)})},loading:p.isPending,children:n(`siteAccess.submit`)})})]})})}var ht=(e,t,n)=>n(e.name).includes(t)||n(e.email??``).includes(t)||e.role.includes(t);function $({icon:e,reason:t,onClick:n,variant:r,children:i}){return t?(0,X.jsx)(a,{content:t,side:`left`,render:(0,X.jsx)(`div`,{}),children:(0,X.jsx)(R.Item,{icon:e,disabled:!0,variant:r,children:i})}):(0,X.jsx)(R.Item,{icon:e,onClick:n,variant:r,children:i})}function gt({member:e,problem:t,isOwner:n,onRole:r,onSites:i,onReset:a,onTransfer:s,onRemove:c}){let l=G(),u=j(`members.manage`),d=t?u.reason??l(`members.rank.${t}`):void 0,f=l(`members.menu`,{name:e.name});if(t===`not_allowed`)return(0,X.jsx)(o,{variant:`ghost`,size:`xs`,shape:`square`,icon:(0,X.jsx)(b,{weight:`bold`}),"aria-label":f,disabled:!0,title:d});let p=e.role===`administrator`?d:l(`members.transfer.needsAdministrator`);return(0,X.jsxs)(R,{children:[(0,X.jsx)(R.Trigger,{render:(0,X.jsx)(o,{variant:`ghost`,size:`xs`,shape:`square`,icon:(0,X.jsx)(b,{weight:`bold`}),"aria-label":f})}),(0,X.jsxs)(R.Content,{align:`end`,children:[(0,X.jsx)($,{icon:nt,reason:d,onClick:r,children:l(`members.changeRole`)}),i&&(0,X.jsx)($,{icon:ke,reason:d,onClick:i,children:l(`siteAccess.menu`)}),(0,X.jsx)($,{icon:et,reason:d,onClick:a,children:l(`members.resetLink`)}),n&&(0,X.jsx)($,{icon:Ie,reason:p,onClick:s,children:l(`members.transferOwnership`)}),(0,X.jsx)(R.Separator,{}),(0,X.jsx)($,{icon:E,reason:d,onClick:c,variant:`danger`,children:l(`members.remove.menu`)})]})]})}function _t({invite:e,now:t}){let{t:n,locale:r}=W();return ve(e,t)?(0,X.jsx)(`span`,{"data-expired":!0,className:`inline-flex`,children:(0,X.jsx)(i,{variant:`warning`,appearance:`dot`,children:n(`members.invites.expired`)})}):(0,X.jsx)(_,{variant:`secondary`,size:`sm`,as:`span`,children:me(e.expiresAt,r,t)})}function vt({invite:e,reason:t,onReinvite:n,onRevoke:r}){let i=G();return(0,X.jsxs)(R,{children:[(0,X.jsx)(R.Trigger,{render:(0,X.jsx)(o,{variant:`ghost`,size:`xs`,shape:`square`,icon:(0,X.jsx)(b,{weight:`bold`}),"aria-label":i(`members.invites.menu`,{email:e.email})})}),(0,X.jsxs)(R.Content,{align:`end`,children:[(0,X.jsx)($,{icon:f,reason:t,onClick:n,children:i(`members.invites.reinvite`)}),e.status===`pending`&&(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(R.Separator,{}),(0,X.jsx)($,{icon:Ee,reason:t,onClick:r,variant:`danger`,children:i(`members.invites.revoke`)})]})]})]})}function yt({onReinvite:e,onInvite:t}){let{t:n,locale:r}=W(),u=s(),d=P(),f=Ne(),p=ie().data,m=c({queryKey:[`invites`],queryFn:L.invites.list,retry:(e,t)=>!oe(t)&&e<1}),[h,g]=(0,Y.useState)(),v=l({mutationFn:e=>L.invites.revoke(e.id),onSuccess:async(e,t)=>{g(void 0),d.success(n(`members.invites.revoked`),n(`members.invites.revokedDescription`,{email:t.email})),await u.invalidateQueries({queryKey:[`invites`]})}}),y=m.data??[],b=e=>p?.invitableRoles?.includes(e.role)!==!1;return(0,X.jsxs)(de,{id:`invites`,title:n(`members.invites.title`),icon:(0,X.jsx)(x,{size:16}),description:n(`members.invites.description`),actions:y.length>0?(0,X.jsx)(i,{variant:`secondary`,children:y.length}):void 0,flush:!0,children:[m.error?(0,X.jsx)(`div`,{className:`px-5 py-4`,children:(0,X.jsx)(Re,{error:m.error,onRetry:()=>m.refetch()})}):!m.isPending&&y.length===0?(0,X.jsx)(Te,{icon:(0,X.jsx)(x,{size:32,className:`text-kumo-inactive`}),title:n(`members.invites.empty`),description:n(`members.invites.emptyDescription`),contents:(0,X.jsx)(o,{variant:`secondary`,icon:(0,X.jsx)(Oe,{}),onClick:t,children:n(`members.invite`)})}):(0,X.jsx)(`div`,{className:`overflow-x-auto`,children:(0,X.jsxs)(B,{children:[(0,X.jsx)(B.Header,{children:(0,X.jsxs)(B.Row,{children:[(0,X.jsx)(B.Head,{children:n(`members.invites.columns.email`)}),(0,X.jsx)(B.Head,{children:n(`members.invites.columns.role`)}),(0,X.jsx)(B.Head,{children:n(`members.invites.columns.expires`)}),(0,X.jsx)(B.Head,{children:n(`members.invites.columns.inviter`)}),(0,X.jsx)(B.Head,{sticky:`right`,children:(0,X.jsx)(`span`,{className:`sr-only`,children:n(`members.invites.columns.actions`)})})]})}),m.isPending?(0,X.jsx)(Ve,{columns:5,rows:2}):(0,X.jsx)(B.Body,{children:y.map(t=>{let o=t.status===`accepted`&&!t.acceptedUserId,s=b(t),c=s?void 0:n(`members.rank.role_too_high`);return(0,X.jsxs)(B.Row,{"data-invite-id":t.id,children:[(0,X.jsx)(B.Cell,{children:(0,X.jsxs)(`div`,{className:`grid min-w-48 gap-0.5`,children:[(0,X.jsx)(_,{bold:!0,as:`span`,truncate:!0,children:t.email}),(0,X.jsxs)(`span`,{className:`flex flex-wrap items-center gap-1.5`,children:[t.delivery===`email`?(0,X.jsx)(_,{variant:`secondary`,size:`sm`,as:`span`,children:n(`members.invites.byEmail`)}):(0,X.jsx)(_,{variant:`secondary`,size:`sm`,as:`span`,children:n(`members.invites.byLink`)}),o&&(0,X.jsx)(a,{content:n(`members.invites.incompleteHint`),children:(0,X.jsx)(i,{variant:`warning`,icon:(0,X.jsx)(D,{}),children:n(`members.invites.incomplete`)})})]})]})}),(0,X.jsx)(B.Cell,{className:`whitespace-nowrap`,children:(0,X.jsx)(J,{value:t.role})}),(0,X.jsx)(B.Cell,{className:`whitespace-nowrap`,children:(0,X.jsxs)(`div`,{className:`grid gap-0.5`,children:[(0,X.jsx)(_t,{invite:t,now:f}),(0,X.jsx)(_,{variant:`secondary`,size:`xs`,as:`span`,children:Ce(t.expiresAt,r)})]})}),(0,X.jsx)(B.Cell,{className:`whitespace-nowrap`,children:(0,X.jsxs)(`div`,{className:`grid gap-0.5`,children:[(0,X.jsx)(_,{as:`span`,children:t.inviter.userId===p?.userId?n(`members.invites.you`):t.inviter.name??n(`members.invites.someone`)}),(0,X.jsx)(Le,{iso:t.createdAt,size:`xs`})]})}),(0,X.jsx)(B.Cell,{sticky:`right`,className:`w-12 text-end`,children:(0,X.jsx)(vt,{invite:t,reason:s?void 0:c,onReinvite:()=>e({email:t.email,role:t.role}),onRevoke:()=>g(t)})})]},t.id)})})]})}),(0,X.jsx)(ze,{open:h!==void 0,onOpenChange:e=>{e||(g(void 0),v.reset())},title:n(`members.invites.revokeTitle`),description:n(`members.invites.revokeDescription`,{email:h?.email??``}),confirmLabel:n(`members.invites.revoke`),busy:v.isPending,error:v.error,onConfirm:()=>h&&v.mutate(h)})]})}function bt(){let{t:e,locale:t}=W(),n=te(),r=[{icon:(0,X.jsx)(ee,{size:16}),text:e(`members.how.single`)},{icon:(0,X.jsx)(x,{size:16}),text:e(`members.how.bound`)},{icon:(0,X.jsx)(S,{size:16}),text:e(`members.how.expiry`,{default:q(n.defaultHours*60,t,`long`),admin:q(be(n,`administrator`)*60,t,`long`)})},{icon:(0,X.jsx)(w,{size:16}),text:e(`members.how.keys`)},{icon:(0,X.jsx)(Ie,{size:16}),text:e(`members.how.owner`)}];return(0,X.jsx)(de,{title:e(`members.how.title`),icon:(0,X.jsx)(g,{size:16}),children:(0,X.jsx)(`div`,{className:`grid gap-3`,children:r.map(e=>(0,X.jsxs)(`div`,{className:`flex items-start gap-2`,children:[(0,X.jsx)(`span`,{className:`flex h-lh items-center text-kumo-subtle`,children:e.icon}),(0,X.jsx)(_,{variant:`secondary`,size:`sm`,children:e.text})]},e.text))})})}function xt({member:e,you:t,problem:n,isOwner:r,multiSite:a,on:o}){let s=G(),c=e.sites?Object.keys(e.sites).length:0,l=(0,X.jsxs)(`span`,{className:`inline-flex flex-wrap items-center gap-1.5`,children:[(0,X.jsx)(J,{value:e.role}),c>0&&(0,X.jsx)(`span`,{"data-site-limited":!0,children:(0,X.jsx)(i,{variant:`secondary`,children:s(`siteAccess.count`,{count:c})})})]});return(0,X.jsxs)(B.Row,{"data-member-id":e.userId,"data-role":e.role,children:[(0,X.jsx)(B.Cell,{children:(0,X.jsxs)(`div`,{className:`grid min-w-0 gap-1.5 sm:min-w-56`,children:[(0,X.jsx)(Z,{member:e,you:t}),(0,X.jsx)(`span`,{className:`ps-11 sm:hidden`,children:l})]})}),(0,X.jsx)(B.Cell,{className:`hidden whitespace-nowrap sm:table-cell`,children:l}),(0,X.jsx)(B.Cell,{className:`hidden whitespace-nowrap sm:table-cell`,children:(0,X.jsx)(Le,{iso:e.joinedAt})}),(0,X.jsx)(B.Cell,{sticky:`right`,className:`w-12 text-end`,children:(0,X.jsx)(gt,{member:e,problem:n,isOwner:r,onRole:()=>o.setToRole(e),onSites:a&&Ye(e.role)?()=>o.setToSites(e):void 0,onReset:()=>o.setToReset(e),onTransfer:()=>o.setToTransfer(e),onRemove:()=>o.setToRemove(e)})})]})}function St(){let e=G(),t=u(),{view:n=`members`}=d({strict:!1}),r=ie().data,i=ne(),a=re(),s=j(`members.invite`),l=M(`members.manage`),f=j(`activity.all`),p=M(`agents.manage`)&&r?.can!==void 0,m=c({queryKey:[`agent-keys`,`all`],queryFn:L.agentKeys.listAll,enabled:p,retry:!1}),_=(0,Y.useMemo)(()=>pe(i.data??[]),[i.data]),v=Ge(_,ht),[y,b]=(0,Y.useState)(!1),[x,S]=(0,Y.useState)(),[ee,C]=(0,Y.useState)(),[T,E]=(0,Y.useState)(),D=(Ke().data?.length??0)>1,[O,A]=(0,Y.useState)(),[te,N]=(0,Y.useState)(),[P,ae]=(0,Y.useState)(),F=c({queryKey:[`invites`],queryFn:L.invites.list,enabled:s.allowed&&r?.can!==void 0,retry:!1}),I=oe(i.error),ce={userId:r?.userId,canManage:l},R=r?.role===`owner`,z=e=>{S(e),b(!0)};return(0,X.jsxs)(we,{crumbs:(0,X.jsx)(le,{trail:[{label:e(`pageHeaders.team.title`)}]}),icon:(0,X.jsx)(De,{size:24}),title:e(`pageHeaders.team.title`),description:e(`pageHeaders.team.description`),tabs:[{value:`members`,label:e(`members.tabs.members`)},{value:`activity`,label:e(`members.tabs.activity`)}],tab:n,onTabChange:e=>t({to:`/team`,search:e===`activity`?{view:`activity`}:{}}),actions:(0,X.jsx)(o,{variant:`primary`,icon:(0,X.jsx)(Oe,{}),onClick:()=>z(),disabled:!s.allowed||I,title:s.reason,children:e(`members.invite`)}),aside:n===`members`?(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(de,{title:e(`members.roles.title`),icon:(0,X.jsx)(w,{size:16}),description:e(`members.roles.description`),flush:!0,children:(0,X.jsx)(Fe,{roles:a.names,current:r?.role??void 0})}),(0,X.jsx)(bt,{})]}):void 0,children:[I?(0,X.jsx)(k,{variant:`secondary`,icon:(0,X.jsx)(g,{weight:`fill`}),title:e(`members.notEnabledTitle`),description:e(`members.notEnabledDescription`)}):n===`activity`?f.allowed?(0,X.jsx)(Ue,{source:{kind:`deployment`}}):(0,X.jsx)(k,{variant:`secondary`,icon:(0,X.jsx)(g,{weight:`fill`}),title:e(`members.activity.restrictedTitle`),description:f.reason??``}):(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(Re,{error:i.error,onRetry:()=>i.refetch(),retrying:i.isFetching}),(0,X.jsx)(He,{search:v.search,onSearch:v.setSearch,placeholder:e(`members.search`)}),i.isSuccess&&_.length===0?(0,X.jsx)(ue,{icon:(0,X.jsx)(De,{size:48,className:`text-kumo-inactive`}),title:e(`members.empty`),description:e(`members.emptyDescription`)}):(0,X.jsx)(se,{className:`overflow-x-auto p-0`,children:(0,X.jsxs)(B,{children:[(0,X.jsx)(B.Header,{children:(0,X.jsxs)(B.Row,{children:[(0,X.jsx)(B.Head,{children:e(`members.columns.member`)}),(0,X.jsx)(B.Head,{className:`hidden sm:table-cell`,children:e(`members.columns.role`)}),(0,X.jsx)(B.Head,{className:`hidden sm:table-cell`,children:e(`members.columns.joined`)}),(0,X.jsx)(B.Head,{sticky:`right`,className:`w-12`,children:(0,X.jsx)(`span`,{className:`sr-only`,children:e(`members.columns.actions`)})})]})}),i.isPending?(0,X.jsx)(Ve,{columns:4,rows:3}):v.pageItems.length===0?(0,X.jsx)(B.Body,{children:(0,X.jsx)(B.Row,{children:(0,X.jsx)(B.Cell,{colSpan:4,children:(0,X.jsx)(Te,{icon:(0,X.jsx)(De,{size:32,className:`text-kumo-inactive`}),title:e(`members.noMatches`,{query:v.search})})})})}):(0,X.jsx)(B.Body,{children:v.pageItems.map(e=>(0,X.jsx)(xt,{member:e,you:e.userId===r?.userId,problem:he(ce,e),isOwner:R,multiSite:D,on:{setToRole:C,setToSites:E,setToReset:N,setToTransfer:ae,setToRemove:A}},e.userId))})]})}),v.total>v.perPage&&(0,X.jsx)(h,{page:v.page,perPage:v.perPage,totalCount:v.total,setPage:v.setPage,controls:`simple`}),s.allowed&&r&&(0,X.jsx)(yt,{onReinvite:e=>z(e),onInvite:()=>z()})]}),(0,X.jsx)(at,{open:y,onOpenChange:e=>{b(e),e||S(void 0)},draft:x}),(0,X.jsx)(ut,{member:ee,onOpenChange:e=>!e&&C(void 0)}),(0,X.jsx)(mt,{member:T,onOpenChange:e=>!e&&E(void 0)}),(0,X.jsx)(dt,{member:O,keyCount:O&&m.data?m.data.filter(e=>e.owner?.userId===O.userId&&e.enabled).length:void 0,inviteCount:O&&F.data?F.data.filter(e=>e.inviter.userId===O.userId&&e.status===`pending`).length:void 0,onOpenChange:e=>!e&&A(void 0)}),(0,X.jsx)(ft,{member:te,onOpenChange:e=>!e&&N(void 0)}),(0,X.jsx)(pt,{member:P,onOpenChange:e=>!e&&ae(void 0)})]})}export{St as MembersPage};
|
|
2
|
+
//# sourceMappingURL=MembersPage-1Dpp6fR0.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{t as o}from"./link-cqyfjezntvr53rh7-CwZJ95XT.js";import{_ as s}from"./tanstack-BiJ_7SEB.js";import{r as c}from"./DirectionalIcon-BKKMj3KT.js";import{t as l}from"./ArrowSquareOut.es-BWeH9CSw.js";import{n as u}from"./skeleton-line-m9dyh126t9k07jvg-CHsT8Hs3.js";import{t as d}from"./EyeSlash.es-YoqigHIr.js";import{t as f}from"./FolderSimple.es-CbGWmBJc.js";import{n as p,t as m}from"./banner-msnmqm7of2lck01x-DRzQHuca.js";import{t as h}from"./api-K4ZsoxSR.js";import{t as g}from"./SectionCard-253RWE03.js";import{a as ee,c as _,r as te,u as v}from"./i18n-B-06kDA4.js";import{w as y}from"./taxonomy-S-y5xbUa.js";import{B as ne,E as re,R as b,dt as ie,tt as ae}from"./index-DWzjnrnl.js";import{t as x}from"./errors-svQ83Q62.js";var S=e(n(),1),oe=new Map([[`bold`,S.createElement(S.Fragment,null,S.createElement(`path`,{d:`M180,72H36A20,20,0,0,0,16,92V204a20,20,0,0,0,20,20H180a20,20,0,0,0,20-20V92A20,20,0,0,0,180,72Zm-4,128H40V96H176ZM240,52V176a12,12,0,0,1-24,0V56H64a12,12,0,0,1,0-24H220A20,20,0,0,1,240,52Z`}))],[`fill`,S.createElement(S.Fragment,null,S.createElement(`path`,{d:`M200,88V200a16,16,0,0,1-16,16H40a16,16,0,0,1-16-16V88A16,16,0,0,1,40,72H184A16,16,0,0,1,200,88Zm16-48H64a8,8,0,0,0,0,16H216V176a8,8,0,0,0,16,0V56A16,16,0,0,0,216,40Z`}))],[`regular`,S.createElement(S.Fragment,null,S.createElement(`path`,{d:`M184,72H40A16,16,0,0,0,24,88V200a16,16,0,0,0,16,16H184a16,16,0,0,0,16-16V88A16,16,0,0,0,184,72Zm0,128H40V88H184V200ZM232,56V176a8,8,0,0,1-16,0V56H64a8,8,0,0,1,0-16H216A16,16,0,0,1,232,56Z`}))]]),C=S.forwardRef((e,n)=>S.createElement(t,{ref:n,...e,weights:oe}));C.displayName=`CardsIcon`;var se=C,ce=`0123456789ABCDEFGHJKMNPQRSTVWXYZ`;function le(e,t=20){if(!/^[a-z]+$/.test(e))throw Error(`invalid id prefix "${e}"`);let n=new Uint8Array(t);crypto.getRandomValues(n);let r=``;for(let e of n)r+=ce[e%32];return`${e}_${r}`}var ue={project:`proj`,site:`site`,page:`page`,section:`sec`,contentEntry:`entry`,taxonomy:`tax`,term:`term`,redirect:`redir`,menu:`menu`,menuItem:`item`,asset:`asset`,glossary:`gloss`,upload:`upl`,snapshot:`snap`,user:`user`,agent:`agent`,system:`sys`,operation:`op`,block:`blk`,correction:`crx`,proposal:`prop`},w={maxDepth:6,perLevel:100,total:500,labelLength:100};function T(){return le(ue.menuItem)}var de=/^item_[A-Za-z0-9]{6,32}$/,fe=/^[a-z]+_[A-Za-z0-9]{6,32}$/,pe=/^[a-z0-9]+(?:-[a-z0-9]+)*$/,me=/^[a-z]{2,3}(?:-[A-Za-z0-9]{2,8})*$/,he=/^https:\/\/[A-Za-z0-9](?:[A-Za-z0-9.-]*[A-Za-z0-9])?(?::[0-9]{1,5})?(?:[/?#][^\s\\\x00-\x1F\x7F]*)?$/,ge=/^[^\s\x00-\x1F\x7F](?:[^\x00-\x1F\x7F]*[^\s\x00-\x1F\x7F])?$/;function E(e,t){let n=(e,r,i)=>{for(let a of e)t(a,r,i),a.children&&n(a.children,r+1,a)};n(e,1)}function D(e){let t=0;return E(e,()=>t++),t}function _e(e){let t=0;return E(e,(e,n)=>{n>t&&(t=n)}),t}function ve(e){switch(e.kind){case`page`:return{kind:`page`,id:e.pageId};case`contentEntry`:return{kind:`contentEntry`,id:e.entryId};case`term`:return{kind:`term`,id:e.termId};default:return}}function O(e){let t=new Map,n=(e,r,i)=>{e.forEach((e,a)=>{t.set(e.id,{item:e,parentId:i,index:a,depth:r}),e.children&&n(e.children,r+1,e.id)})};return n(e,1),t}function ye(e){if(e.length===0)return`is empty`;if(e.length>w.labelLength)return`is longer than ${w.labelLength} characters`;if(!ge.test(e))return`has control characters or surrounding whitespace`}function k(e){return e.length<=2048&&he.test(e)}var be=new Set([`collection`,`url`,`group`]);function xe(e,t,n,r={}){if(e.siteId!==t.id)throw new x(`invalid_menu`,`menu.siteId must match the site`);if(!Number.isInteger(e.maxDepth)||e.maxDepth<1||e.maxDepth>w.maxDepth)throw new x(`too_deep`,`maxDepth must be between 1 and ${w.maxDepth} (got ${e.maxDepth})`,{maxDepth:w.maxDepth});let i=n?O(n.items):new Map,a=new Set([t.defaultLocale,...t.locales]),o=new Set,s=0,c=(n,l)=>{if(n.length>w.perLevel)throw new x(`too_large`,`a menu level holds at most ${w.perLevel} items (got ${n.length})`,{perLevel:w.perLevel});for(let u of n){let n=`menu item ${u.id}`;if(typeof u.id!=`string`||!de.test(u.id))throw new x(`invalid_menu`,`${n}: item ids look like item_01HZX8K3Q9`,{itemId:u.id});if(o.has(u.id))throw new x(`invalid_menu`,`${n} appears twice; item ids are unique`,{itemId:u.id});if(o.add(u.id),++s>w.total)throw new x(`too_large`,`a menu holds at most ${w.total} items in total`,{total:w.total});if(l>e.maxDepth)throw new x(`too_deep`,`${n} sits at level ${l}, deeper than this menu's maxDepth ${e.maxDepth}`,{itemId:u.id,depth:l,maxDepth:e.maxDepth});if(u.display===`mega`&&(l!==1||!u.children?.length))throw new x(`invalid_menu`,`${n}: display mega belongs to a top-level item with children (its columns)`,{itemId:u.id});let d=ve(u);if(d&&!fe.test(d.id))throw new x(`invalid_menu`,`${n}: ${d.id} is not a node id`,{itemId:u.id});if(u.kind===`collection`&&!pe.test(u.collection))throw new x(`invalid_menu`,`${n}: "${u.collection}" is not a slug`,{itemId:u.id});if(u.kind===`url`&&!k(u.href))throw new x(`invalid_menu`,`${n}: external links must be https:// with an ASCII host (punycode for international names), no user-info, whitespace or backslashes, at most 2,048 characters; link pages, articles and terms by id instead of a site path`,{itemId:u.id});let f=u.labels??void 0;if(f){let e=Object.entries(f).filter(([,e])=>e!==void 0);if(e.length===0)throw new x(`invalid_label`,`${n}: omit labels rather than send an empty map`,{itemId:u.id});let t=i.get(u.id)?.item.labels;for(let[r,i]of e){if(!me.test(r))throw new x(`invalid_label`,`${n}: "${r}" is not a locale`,{itemId:u.id,locale:r});let e=ye(i);if(e)throw new x(`invalid_label`,`${n}: the ${r} label ${e}`,{itemId:u.id,locale:r});if(!a.has(r)&&t?.[r]===void 0)throw new x(`invalid_label`,`${n}: ${r} is not a locale of this site (${[...a].join(`, `)})`,{itemId:u.id,locale:r})}}if(be.has(u.kind)&&!f?.[t.defaultLocale])throw new x(`invalid_label`,`${n}: ${u.kind} items need a label in the site's default locale (${t.defaultLocale}); they have no title to fall back to`,{itemId:u.id,locale:t.defaultLocale});if(u.kind!==`url`&&`newTab`in u&&u.newTab!==void 0)throw new x(`invalid_menu`,`${n}: only external links open in a new tab`,{itemId:u.id});let p=u.children;if(!r.partial){if(p&&p.length===0)throw new x(`invalid_menu`,`${n}: omit children rather than send []`,{itemId:u.id});if(u.kind===`group`&&!p?.length)throw new x(`invalid_menu`,`${n}: a group needs at least one item`,{itemId:u.id})}p&&c(p,l+1)}};c(e.items,1)}function Se(e){return JSON.parse(JSON.stringify(e))}function A(e){for(let t of e){t.children&&(t.children.length===0?delete t.children:A(t.children));let e=t.labels;e&&Object.keys(e).length===0&&delete t.labels}return e}function j(e,t){for(let t of[`pageId`,`entryId`,`termId`,`collection`,`href`])delete e[t];switch(e.kind=t.kind,t.kind){case`page`:e.pageId=t.ref;break;case`contentEntry`:e.entryId=t.ref;break;case`term`:e.termId=t.ref;break;case`collection`:e.collection=t.collection;break;case`url`:e.href=t.href}t.kind!==`url`&&delete e.newTab}function M(e,t){let n={id:e.id??t(),kind:e.target.kind};if(j(n,e.target),e.newTab!==void 0){if(e.target.kind!==`url`)throw new x(`invalid_menu`,`only external links open in a new tab`);n.newTab=e.newTab}return e.labels&&Object.keys(e.labels).length>0&&(n.labels={...e.labels}),e.display===`mega`&&(n.display=`mega`),e.children&&e.children.length>0&&(n.children=e.children.map(e=>M(e,t))),n}function N(e,t){for(let n=0;n<e.length;n++){let r=e[n];if(r.id===t)return{item:r,list:e,index:n};if(r.children){let e=N(r.children,t);if(e)return e}}}function P(e,t){return(e.children??[]).some(e=>e.id===t||P(e,t))}function F(e,t,n,r){if(t.length>50)throw new x(`too_large`,`at most 50 operations per call (got ${t.length})`);let i=Se(e.items),a=(e,t)=>{if(e==null)return i;let n=N(i,e);if(!n)throw new x(`unknown_item`,`operation ${t}: no item ${e}`,{opIndex:t,itemId:e});return n.item.children??=[],n.item.children},o=(e,t,n)=>{let r=n===void 0?e.length:Math.max(0,Math.min(e.length,Math.trunc(n)));e.splice(r,0,t)};return t.forEach((t,s)=>{try{switch(t.op){case`add`:{let e=M(t.item,n);o(a(t.parent,s),e,t.index);break}case`remove`:{let e=N(i,t.itemId);if(!e)throw new x(`unknown_item`,`operation ${s}: no item ${t.itemId}`,{itemId:t.itemId});e.list.splice(e.index,1);break}case`move`:{let e=N(i,t.itemId);if(!e)throw new x(`unknown_item`,`operation ${s}: no item ${t.itemId}`,{itemId:t.itemId});if(t.parent&&(t.parent===t.itemId||P(e.item,t.parent)))throw new x(`cycle`,`operation ${s}: cannot move ${t.itemId} under itself or one of its own items`,{itemId:t.itemId});e.list.splice(e.index,1),o(a(t.parent,s),e.item,t.index);break}case`update`:{let e=N(i,t.itemId);if(!e)throw new x(`unknown_item`,`operation ${s}: no item ${t.itemId}`,{itemId:t.itemId});let n=e.item;if(t.target&&j(n,t.target),t.labels){let e={...n.labels??{}};for(let[n,r]of Object.entries(t.labels))r===null?delete e[n]:e[n]=r;Object.keys(e).length>0?n.labels=e:delete n.labels}if(t.newTab!==void 0){if(t.newTab===null)delete n.newTab;else if(n.kind!==`url`)throw new x(`invalid_menu`,`operation ${s}: only external links open in a new tab`,{itemId:t.itemId});else n.newTab=t.newTab}t.display!==void 0&&(t.display===null?delete n.display:n.display=t.display);break}default:throw new x(`invalid_menu`,`operation ${s}: unknown operation`)}r&&xe({...e,items:i},r,e,{partial:!0})}catch(e){throw e instanceof x&&e.details.opIndex===void 0?new x(e.code,e.message.startsWith(`operation `)?e.message:`operation ${s}: ${e.message}`,{...e.details,opIndex:s}):e}}),{...e,items:A(i)}}function Ce(e,t){let n=e.length,r=t.length,i=Array.from({length:n+1},()=>Array(r+1).fill(0));for(let a=n-1;a>=0;a--)for(let n=r-1;n>=0;n--)i[a][n]=e[a]===t[n]?i[a+1][n+1]+1:Math.max(i[a+1][n],i[a][n+1]);let a=new Set,o=0,s=0;for(;o<n&&s<r;)e[o]===t[s]?(a.add(e[o]),o++,s++):i[o+1][s]>=i[o][s+1]?o++:s++;return a}var I=e=>{switch(e.kind){case`page`:return`page:${e.pageId}`;case`contentEntry`:return`contentEntry:${e.entryId}`;case`term`:return`term:${e.termId}`;case`collection`:return`collection:${e.collection}`;case`url`:return`url:${e.href}`;case`group`:return`group`}};function we(e,t){let n=O(e?.items??[]),r=O(t.items),i=e=>D(e.children??[]),a=[],o=[],s=[],c=[];for(let[e,t]of r)n.has(e)||(!t.parentId||n.has(t.parentId))&&a.push({id:e,...t.parentId?{parentId:t.parentId}:{},index:t.index,descendants:[...r.values()].filter(t=>Te(r,t.item.id,e)&&!n.has(t.item.id)).length});for(let[e,t]of n)r.has(e)||(!t.parentId||r.has(t.parentId))&&o.push({id:e,...t.parentId?{parentId:t.parentId}:{},descendants:i(t.item)});let l=(e,t)=>[...e.values()].filter(e=>e.parentId===t).sort((e,t)=>e.index-t.index).map(e=>e.item.id),u=new Map,d=e=>{let t=u.get(e);if(!t){let i=t=>t.filter(t=>n.get(t)?.parentId===e&&r.get(t)?.parentId===e);t=Ce(i(l(n,e)),i(l(r,e))),u.set(e,t)}return t};for(let[e,t]of r){let r=n.get(e);if(!r)continue;let i={...r.parentId?{parentId:r.parentId}:{},index:r.index},a={...t.parentId?{parentId:t.parentId}:{},index:t.index};r.parentId===t.parentId?d(t.parentId).has(e)||s.push({id:e,reparented:!1,from:i,to:a}):s.push({id:e,reparented:!0,from:i,to:a});let o=r.item,l=t.item,u=o.labels??{},f=l.labels??{},p=[...new Set([...Object.keys(u),...Object.keys(f)])].sort().filter(e=>u[e]!==f[e]).map(e=>({locale:e,...u[e]===void 0?{}:{from:u[e]},...f[e]===void 0?{}:{to:f[e]}})),m=o.kind===`url`&&o.newTab===!0,h=l.kind===`url`&&l.newTab===!0,g=I(o)!==I(l);(p.length>0||g||m!==h&&!g)&&c.push({id:e,...p.length>0?{labels:p}:{},...g?{target:{from:o,to:l}}:{},...m!==h&&!g?{newTab:{from:m,to:h}}:{}})}return{before:n.size,after:r.size,added:a,removed:o,moved:s,changed:c,changes:a.length+o.length+s.length+c.length}}function Te(e,t,n){let r=e.get(t)?.parentId;for(;r;){if(r===n)return!0;r=e.get(r)?.parentId}return!1}var L=[`primary`,`footer`,`sidebar`];function R(e){return L.includes(e)}function Ee(e){let t=e=>{let t=L.indexOf(e);return t<0?L.length:t};return[...new Set(e)].sort((e,n)=>t(e)-t(n)||e.localeCompare(n))}var De=/^[a-z0-9]+(?:-[a-z0-9]+)*$/;function Oe(e,t){if(!e)return`required`;if(e.length>128)return`tooLong`;if(!De.test(e))return`invalid`;if(t.includes(e))return`taken`}function ke(e,t){let n=F({siteId:``,maxDepth:e.maxDepth,items:e.items},[{op:`move`,itemId:t.itemId,parent:t.parentId,index:t.index}],T);return{...e,items:n.items}}function Ae(e,t){let n=F({siteId:``,maxDepth:e.maxDepth,items:e.items},[{op:`remove`,itemId:t}],T);return{...e,items:n.items}}function je(e,t,n,r){let i=e=>{let n=[...e];return n.splice(r??n.length,0,t),n};if(n===null)return{...e,items:i(e.items)};let a=e=>e.map(e=>e.id===n?{...e,children:i(e.children??[])}:e.children?{...e,children:a(e.children)}:e);return{...e,items:a(e.items)}}function Me(e,t,n){let r=e=>e.map(e=>{if(e.id===t){let t=e.children,{children:r,...i}=n;return t?.length?{...i,children:t}:i}return e.children?{...e,children:r(e.children)}:e});return{...e,items:r(e.items)}}function Ne(e,t){return O(e).get(t)?.item}function z(e,t){return O(e).get(t)?.depth??0}function Pe(e,t){return{rev:e.rev,maxDepth:t.maxDepth,items:t.items}}function Fe(e,t){return e.maxDepth===t.maxDepth&&JSON.stringify(e.items)===JSON.stringify(t.items)}function B(e){let t=new Map([[``,e.length]]);E(e,e=>{e.children?.length&&t.set(e.id,e.children.length)});let n={parentId:null,count:e.length};for(let[e,r]of t)r>n.count&&(n={parentId:e||null,count:r});return{total:D(e),depth:_e(e),fullest:n,perParent:t}}function Ie(e,t){return e>=Math.floor(t*.8)}function Le(){return{target:void 0,href:``,newTab:!1,labels:{}}}function Re(e){let t={...e.labels??{}};switch(e.kind){case`page`:return{target:{kind:`page`,id:e.pageId},href:``,newTab:!1,labels:t};case`contentEntry`:return{target:{kind:`contentEntry`,id:e.entryId},href:``,newTab:!1,labels:t};case`term`:return{target:{kind:`term`,id:e.termId},href:``,newTab:!1,labels:t};case`collection`:return{target:{kind:`collection`,collection:e.collection},href:``,newTab:!1,labels:t};case`url`:return{target:{kind:`url`},href:e.href,newTab:e.newTab===!0,labels:t};case`group`:return{target:{kind:`group`},href:``,newTab:!1,labels:t}}}function V(e){return e?.kind===`collection`||e?.kind===`url`||e?.kind===`group`}function ze(e,t){let n={};for(let[t,r]of Object.entries(e.labels))r.trim()&&(n[t]=r.trim());let r=Object.keys(n).length>0?{labels:n}:{},i=e.target;switch(i.kind){case`page`:return{id:t,kind:`page`,pageId:i.id,...r};case`contentEntry`:return{id:t,kind:`contentEntry`,entryId:i.id,...r};case`term`:return{id:t,kind:`term`,termId:i.id,...r};case`collection`:return{id:t,kind:`collection`,collection:i.collection,labels:n};case`url`:return{id:t,kind:`url`,href:e.href.trim(),...e.newTab?{newTab:!0}:{},labels:n};case`group`:return{id:t,kind:`group`,labels:n}}}var Be=/[\x00-\x1F\x7F]/;function Ve(e){let t=e.trim();if(t){if(t.length>w.labelLength)return`tooLong`;if(Be.test(t))return`invalid`}}function He(e){let t=e.trim();if(!t)return`required`;if(/^http:\/\//i.test(t))return`insecure`;if(!k(t))return`invalid`}function Ue(e,t){let n={labels:{}};if(e.target||(n.target=`required`),e.target?.kind===`url`){let t=He(e.href);t&&(n.href=t)}for(let[t,r]of Object.entries(e.labels)){let e=Ve(r);e&&(n.labels[t]=e)}return V(e.target)&&!e.labels[t.defaultLocale]?.trim()&&(n.labels[t.defaultLocale]=`required`),n}function We(e){return!!(e.target||e.href||Object.keys(e.labels).length>0)}function H(e){try{return new URL(e).host}catch{return}}function Ge(e){let t=new Set(e.entries.map(e=>e.collection));for(let n of e.pages)for(let e of n.sections)e.kind===`contentList`&&t.add(e.collection);return[...t].sort()}function Ke(e){if(!e)return null;switch(e.kind){case`page`:case`contentEntry`:case`term`:return`${e.kind}:${e.id}`;case`collection`:return`collection:${e.collection}`;default:return e.kind}}function qe(e){if(e===`url`||e===`group`)return{kind:e};let t=e.indexOf(`:`),n=e.slice(0,t),r=e.slice(t+1);if(n===`page`||n===`contentEntry`||n===`term`)return{kind:n,id:r};if(n===`collection`)return{kind:n,collection:r}}var U=(e,t)=>`${e.archive.basePath}/${t}`;function Je(e){let t=e.site.defaultLocale,n=[...e.pages].filter(e=>e.locale===t).sort((e,t)=>e.path.localeCompare(t.path)).map(e=>({value:`page:${e.id}`,group:`pages`,label:e.title,detail:e.path,...e.status===`published`?{}:{status:e.status}})),r=[...e.entries].filter(e=>e.locale===t).sort((e,t)=>e.title.localeCompare(t.title)).map(e=>({value:`contentEntry:${e.id}`,group:`articles`,label:e.title,detail:`/${e.collection}/${e.slug}`,...e.status===`published`?{}:{status:e.status}})),i=[];for(let n of e.taxonomies){let r=e.terms.filter(e=>e.taxonomyId===n.id&&e.status!==`retired`),a=new Map;for(let e of r){let t=e.parentId??``;a.set(t,[...a.get(t)??[],e])}let o=(r,s)=>{let c=[...a.get(r)??[]].sort((e,n)=>(e.position??1e9)-(n.position??1e9)||y(e,t).localeCompare(y(n,t)));for(let r of c)i.push({value:`term:${r.id}`,group:`terms`,taxonomy:n.key,label:y(r,t,...e.site.locales),...n.archive.enabled?{detail:U(n,r.slug)}:{},...r.status===`proposed`?{status:`proposed`}:r.visibility===`internal`?{status:`internal`}:{},depth:s}),s<16&&o(r.id,s+1)};o(``,0)}let a=Ge(e).map(e=>({value:`collection:${e}`,group:`collections`,label:e,detail:e}));return[...n,...r,...i,...a,{value:`url`,group:`other`,label:`url`},{value:`group`,group:`other`,label:`group`}]}function Ye(e,t,n){if(e)switch(e.kind){case`page`:return t.pages.find(t=>t.id===e.id)?.title;case`contentEntry`:return t.entries.find(t=>t.id===e.id)?.title;case`term`:{let r=t.terms.find(t=>t.id===e.id);return r?y(r,n,t.site.defaultLocale):void 0}default:return}}function W(e,t){switch(e.kind){case`page`:{let n=t.pages.find(t=>t.id===e.pageId);return n?{kind:`page`,where:n.path,title:n.title}:{kind:`page`,missing:!0}}case`contentEntry`:{let n=t.entries.find(t=>t.id===e.entryId);return n?{kind:`contentEntry`,where:`/${n.collection}/${n.slug}`,title:n.title}:{kind:`contentEntry`,missing:!0}}case`term`:{let n=t.terms.find(t=>t.id===e.termId),r=n&&t.taxonomies.find(e=>e.id===n.taxonomyId);return n?{kind:`term`,title:y(n,t.site.defaultLocale),...r?{taxonomy:r.key}:{},...r?.archive.enabled?{where:U(r,n.slug)}:{}}:{kind:`term`,missing:!0}}case`collection`:return{kind:`collection`,where:e.collection};case`url`:{let t=H(e.href);return{kind:`url`,...t?{where:t}:{},newTab:e.newTab===!0}}case`group`:return{kind:`group`}}}function G(e,t){let n=e.labels??{},r=n[t.site.defaultLocale]??Object.values(n).find(Boolean);return r?{text:r,fallback:!1}:{text:W(e,t).title??``,fallback:!0}}function K(e){let t=new Map,n=e=>{for(let r of e)t.set(r.id,r),n(r.children)};return e&&n(e.items),t}function q(e){return[...K(e).values()].filter(e=>e.state===`hidden`&&e.reason!==`parent-hidden`)}function Xe(e,t,n,r){let i=we(e,t),a=O(e.items),o=O(t.items),s=e=>{let t=o.get(e)?.item??a.get(e)?.item,r=t?G(t,n):{text:e,fallback:!1};return{label:r.text||e,fallback:r.fallback}},c=[];for(let e of i.added){let t=o.get(e.id)?.item;c.push({sign:`+`,id:e.id,...s(e.id),target:W(t,n),...e.parentId?{parent:s(e.parentId).label}:{},position:e.index+1,below:e.descendants})}for(let e of i.removed){let t=a.get(e.id)?.item;c.push({sign:`−`,id:e.id,...s(e.id),target:W(t,n),below:e.descendants})}for(let e of i.moved)c.push(e.reparented?{sign:`↳`,id:e.id,...s(e.id),...e.to.parentId?{parent:s(e.to.parentId).label}:{},...e.from.parentId?{was:s(e.from.parentId).label}:{}}:{sign:`↕`,id:e.id,...s(e.id),from:e.from.index+1,to:e.to.index+1});for(let e of i.changed){for(let t of e.labels??[])c.push({sign:`~`,id:e.id,...s(e.id),change:`label`,locale:t.locale,...t.from===void 0?{}:{from:t.from},...t.to===void 0?{}:{to:t.to}});e.target&&c.push({sign:`~`,id:e.id,...s(e.id),change:`target`,from:W(e.target.from,n),to:W(e.target.to,n)}),e.newTab&&c.push({sign:`~`,id:e.id,...s(e.id),change:`newTab`,to:e.newTab.to})}if(r){let e=new Set([...i.added.map(e=>e.id),...i.changed.map(e=>e.id)]);for(let t of q(r))e.has(t.id)&&t.reason&&c.push({sign:`!`,id:t.id,...s(t.id),reason:t.reason,kind:t.kind})}return{delta:i,lines:c}}function Ze(e,t){let n;if(E(e.items,(r,i)=>{n||(r.kind===`group`&&!r.children?.length?n={code:`emptyGroup`,itemId:r.id}:(r.kind===`group`||r.kind===`url`||r.kind===`collection`)&&!r.labels?.[t.defaultLocale]?n={code:`label`,itemId:r.id}:i>e.maxDepth&&(n={code:`depth`,itemId:r.id,max:e.maxDepth}))}),n)return n;let r=B(e.items);if(r.total>w.total)return{code:`total`,max:w.total};if(r.fullest.count>w.perLevel)return{code:`perLevel`,max:w.perLevel}}var J=r(),Y={overview:e=>[`menus`,e],references:(e,t,n)=>[`menu-references`,e,t,n]};function X(){let e=v(`menus`);return t=>R(t)?e(`menus.places.${t}`):t}function Z(){let e=v(`menus`),t=X();return n=>R(n)?e(`menus.placeWithKey`,{place:t(n),key:n}):n}function Qe(){let{t:e,locale:t}=_(`menus`),n=te(t)===`rtl`;return{description:(t,r)=>t?e(n?`menus.items.descriptionRtl`:`menus.items.description`,{max:r}):e(`menus.items.descriptionReadOnly`),instructions:e(n?`menus.tree.instructionsRtl`:`menus.tree.instructions`)}}var $e={page:ae,contentEntry:ie,term:ne,collection:se,url:c(l),group:f};function et({target:e,taxonomyName:t}){let n=v(`menus`),r=$e[e.kind],a=e.missing?n(`menus.chips.missing.${e.kind}`):e.kind===`term`?n(`menus.chips.term`,{taxonomy:t??n(`menus.chips.termFallback`),name:e.title??``}):e.kind===`group`?n(`menus.chips.group`):n(`menus.chips.${e.kind}`,{where:e.where??``});return(0,J.jsx)(`span`,{className:`inline-flex max-w-full min-w-0`,"data-target-kind":e.kind,children:(0,J.jsxs)(i,{variant:`outline`,icon:(0,J.jsx)(r,{}),children:[(0,J.jsx)(`span`,{className:`min-w-0 truncate`,children:a}),e.kind===`url`&&e.newTab&&(0,J.jsx)(`span`,{className:`sr-only`,children:n(`menus.chips.newTab`)})]})})}var tt={missing:!0,unpublished:!0};function Q(){let e=v(`menus`);return(t,n,r)=>{let i=n===`page`||n===`contentEntry`||n===`term`?n:`page`,a=r===`badge`?`reasons`:`explain`,o=tt[t]?`menus.hidden.${a}.${t}.${i}`:`menus.hidden.${a}.${t}`;return e(o)}}function nt({reason:e,kind:t}){let n=v(`menus`),r=Q();return(0,J.jsx)(a,{content:r(e,t,`explain`),render:(0,J.jsx)(`span`,{className:`inline-flex`,"data-hidden-reason":e,tabIndex:-1,children:(0,J.jsx)(i,{variant:e===`parent-hidden`?`secondary`:`warning`,icon:(0,J.jsx)(d,{}),children:n(`menus.hidden.badge`,{reason:r(e,t,`badge`)})})})})}function rt(e){let t=s({queryKey:Y.overview(e),queryFn:()=>h.menus.list(e)}),n=new Map;for(let{menu:e}of t.data?.menus??[]){let t=r=>{for(let i of r){if(i.kind===`page`){let t=n.get(i.pageId)??[];t.includes(e.key)||n.set(i.pageId,[...t,e.key])}i.children&&t(i.children)}};t(e.items)}return n}function it({keys:e}){let t=v(`menus`),n=Z();return e?.length?(0,J.jsx)(a,{content:t(`menus.inMenu.hint`,{menus:ee(e.map(n))}),render:(0,J.jsx)(`span`,{className:`inline-flex`,"data-testid":`in-menu-badge`,children:(0,J.jsx)(i,{variant:`outline`,icon:(0,J.jsx)(b,{}),children:t(`menus.inMenu.badge`)})})}):null}function $(e,t){return s({queryKey:Y.references(e,t?.kind??``,t?.id??``),queryFn:()=>h.menus.references(e,t?.kind??`page`,t?.id??``),enabled:t!==void 0})}function at(e,t,n){return`/sites/${e}/navigation?menu=${encodeURIComponent(t.key)}&item=${encodeURIComponent(n)}`}function ot({siteId:e,kind:t,id:n}){let r=v(`menus`),a=Z(),s=$(e,{kind:t,id:n}),c=(s.data??[]).reduce((e,t)=>e+t.items.length,0);return(0,J.jsx)(g,{title:r(`menus.usedIn.title`),icon:(0,J.jsx)(b,{size:16}),actions:c>0?(0,J.jsx)(i,{variant:`secondary`,children:c}):void 0,id:`used-in-menus`,children:s.data===void 0?(0,J.jsx)(u,{variant:`secondary`,size:`sm`,children:r(`common.loading`)}):s.data.length===0?(0,J.jsx)(re,{icon:(0,J.jsx)(b,{size:32,className:`text-kumo-inactive`}),title:r(`menus.usedIn.none`),description:r(`menus.usedIn.noneDescription.${t}`),contents:(0,J.jsx)(o,{href:`/sites/${e}/navigation`,variant:`inline`,children:r(`menus.usedIn.open`)})}):(0,J.jsxs)(`div`,{className:`grid gap-3`,children:[(0,J.jsx)(`dl`,{className:`grid divide-y divide-kumo-hairline`,children:s.data.flatMap(t=>t.items.map(n=>(0,J.jsxs)(`div`,{className:`flex min-w-0 items-center justify-between gap-4 py-2 first:pt-0 last:pb-0`,"data-menu-item":n.id,children:[(0,J.jsx)(u,{as:`dt`,variant:`secondary`,children:a(t.key)}),(0,J.jsx)(`dd`,{className:`min-w-0`,children:(0,J.jsx)(o,{href:at(e,t,n.id),variant:`inline`,children:(0,J.jsx)(`span`,{className:`block truncate`,children:n.label||r(`menus.row.noLabel`)})})})]},`${t.menuId}:${n.id}`)))}),(0,J.jsx)(u,{variant:`secondary`,size:`sm`,children:r(`menus.usedIn.description.${t}`)})]})})}function st({refs:e,kind:t}){let n=v(`menus`),r=Z(),i=(e??[]).flatMap(e=>e.items.map(t=>`${r(e.key)}: “${t.label||n(`menus.row.noLabel`)}”`));return i.length===0?null:(0,J.jsx)(`div`,{"data-testid":`menu-delete-notice`,children:(0,J.jsx)(m,{variant:`alert`,icon:(0,J.jsx)(p,{weight:`fill`}),title:n(`menus.deleteNotice.title.${t}`,{count:i.length}),description:`${i.join(` · `)}. ${n(`menus.deleteNotice.description`)}`})})}export{Ee as A,Ue as B,je as C,ke as D,B as E,Pe as F,w as H,G as I,W as L,Me as M,K as N,Ie as O,Fe as P,Je as R,H as S,ze as T,T as U,Oe as V,Le as _,ot as a,We as b,Qe as c,Z as d,rt as f,Ze as g,Xe as h,et as i,Ae as j,V as k,X as l,Ke as m,it as n,Y as o,qe as p,st as r,Q as s,nt as t,$ as u,Ne as v,z as w,q as x,Re as y,Ye as z};
|
|
2
|
-
//# sourceMappingURL=Menus-
|
|
1
|
+
import{r as e}from"./rolldown-runtime-hePW80VL.js";import{t}from"./IconBase.es-BZDpYMnj.js";import{i as n,r}from"./react-CDCuUAOg.js";import{t as i}from"./badge-dq8bx752b9dp7dst--rpq8QXS.js";import{o as a}from"./button-pa1bq9b85hawg41a-CmOCuL-1.js";import{t as o}from"./link-cqyfjezntvr53rh7-3eczR57J.js";import{_ as s}from"./tanstack-BRxyYm4G.js";import{r as c}from"./DirectionalIcon-UZJFXGY_.js";import{t as l}from"./ArrowSquareOut.es-BWeH9CSw.js";import{n as u}from"./skeleton-line-m9dyh126t9k07jvg-BFlcthbF.js";import{t as d}from"./EyeSlash.es-YoqigHIr.js";import{t as f}from"./FolderSimple.es-CbGWmBJc.js";import{n as p,t as m}from"./banner-msnmqm7of2lck01x-D6cADEpP.js";import{t as h}from"./api-Cqqt5jTd.js";import{t as g}from"./SectionCard-GPZWTzbx.js";import{a as ee,c as _,r as te,u as v}from"./i18n-Dz1LE8DB.js";import{w as y}from"./taxonomy-S-y5xbUa.js";import{B as ne,E as re,R as b,dt as ie,tt as ae}from"./index-DMKFLgkG.js";import{t as x}from"./errors-svQ83Q62.js";var S=e(n(),1),oe=new Map([[`bold`,S.createElement(S.Fragment,null,S.createElement(`path`,{d:`M180,72H36A20,20,0,0,0,16,92V204a20,20,0,0,0,20,20H180a20,20,0,0,0,20-20V92A20,20,0,0,0,180,72Zm-4,128H40V96H176ZM240,52V176a12,12,0,0,1-24,0V56H64a12,12,0,0,1,0-24H220A20,20,0,0,1,240,52Z`}))],[`fill`,S.createElement(S.Fragment,null,S.createElement(`path`,{d:`M200,88V200a16,16,0,0,1-16,16H40a16,16,0,0,1-16-16V88A16,16,0,0,1,40,72H184A16,16,0,0,1,200,88Zm16-48H64a8,8,0,0,0,0,16H216V176a8,8,0,0,0,16,0V56A16,16,0,0,0,216,40Z`}))],[`regular`,S.createElement(S.Fragment,null,S.createElement(`path`,{d:`M184,72H40A16,16,0,0,0,24,88V200a16,16,0,0,0,16,16H184a16,16,0,0,0,16-16V88A16,16,0,0,0,184,72Zm0,128H40V88H184V200ZM232,56V176a8,8,0,0,1-16,0V56H64a8,8,0,0,1,0-16H216A16,16,0,0,1,232,56Z`}))]]),C=S.forwardRef((e,n)=>S.createElement(t,{ref:n,...e,weights:oe}));C.displayName=`CardsIcon`;var se=C,ce=`0123456789ABCDEFGHJKMNPQRSTVWXYZ`;function le(e,t=20){if(!/^[a-z]+$/.test(e))throw Error(`invalid id prefix "${e}"`);let n=new Uint8Array(t);crypto.getRandomValues(n);let r=``;for(let e of n)r+=ce[e%32];return`${e}_${r}`}var ue={project:`proj`,site:`site`,page:`page`,section:`sec`,contentEntry:`entry`,taxonomy:`tax`,term:`term`,redirect:`redir`,menu:`menu`,menuItem:`item`,asset:`asset`,glossary:`gloss`,upload:`upl`,snapshot:`snap`,user:`user`,agent:`agent`,system:`sys`,operation:`op`,block:`blk`,correction:`crx`,proposal:`prop`},w={maxDepth:6,perLevel:100,total:500,labelLength:100};function T(){return le(ue.menuItem)}var de=/^item_[A-Za-z0-9]{6,32}$/,fe=/^[a-z]+_[A-Za-z0-9]{6,32}$/,pe=/^[a-z0-9]+(?:-[a-z0-9]+)*$/,me=/^[a-z]{2,3}(?:-[A-Za-z0-9]{2,8})*$/,he=/^https:\/\/[A-Za-z0-9](?:[A-Za-z0-9.-]*[A-Za-z0-9])?(?::[0-9]{1,5})?(?:[/?#][^\s\\\x00-\x1F\x7F]*)?$/,ge=/^[^\s\x00-\x1F\x7F](?:[^\x00-\x1F\x7F]*[^\s\x00-\x1F\x7F])?$/;function E(e,t){let n=(e,r,i)=>{for(let a of e)t(a,r,i),a.children&&n(a.children,r+1,a)};n(e,1)}function D(e){let t=0;return E(e,()=>t++),t}function _e(e){let t=0;return E(e,(e,n)=>{n>t&&(t=n)}),t}function ve(e){switch(e.kind){case`page`:return{kind:`page`,id:e.pageId};case`contentEntry`:return{kind:`contentEntry`,id:e.entryId};case`term`:return{kind:`term`,id:e.termId};default:return}}function O(e){let t=new Map,n=(e,r,i)=>{e.forEach((e,a)=>{t.set(e.id,{item:e,parentId:i,index:a,depth:r}),e.children&&n(e.children,r+1,e.id)})};return n(e,1),t}function ye(e){if(e.length===0)return`is empty`;if(e.length>w.labelLength)return`is longer than ${w.labelLength} characters`;if(!ge.test(e))return`has control characters or surrounding whitespace`}function k(e){return e.length<=2048&&he.test(e)}var be=new Set([`collection`,`url`,`group`]);function xe(e,t,n,r={}){if(e.siteId!==t.id)throw new x(`invalid_menu`,`menu.siteId must match the site`);if(!Number.isInteger(e.maxDepth)||e.maxDepth<1||e.maxDepth>w.maxDepth)throw new x(`too_deep`,`maxDepth must be between 1 and ${w.maxDepth} (got ${e.maxDepth})`,{maxDepth:w.maxDepth});let i=n?O(n.items):new Map,a=new Set([t.defaultLocale,...t.locales]),o=new Set,s=0,c=(n,l)=>{if(n.length>w.perLevel)throw new x(`too_large`,`a menu level holds at most ${w.perLevel} items (got ${n.length})`,{perLevel:w.perLevel});for(let u of n){let n=`menu item ${u.id}`;if(typeof u.id!=`string`||!de.test(u.id))throw new x(`invalid_menu`,`${n}: item ids look like item_01HZX8K3Q9`,{itemId:u.id});if(o.has(u.id))throw new x(`invalid_menu`,`${n} appears twice; item ids are unique`,{itemId:u.id});if(o.add(u.id),++s>w.total)throw new x(`too_large`,`a menu holds at most ${w.total} items in total`,{total:w.total});if(l>e.maxDepth)throw new x(`too_deep`,`${n} sits at level ${l}, deeper than this menu's maxDepth ${e.maxDepth}`,{itemId:u.id,depth:l,maxDepth:e.maxDepth});if(u.display===`mega`&&(l!==1||!u.children?.length))throw new x(`invalid_menu`,`${n}: display mega belongs to a top-level item with children (its columns)`,{itemId:u.id});let d=ve(u);if(d&&!fe.test(d.id))throw new x(`invalid_menu`,`${n}: ${d.id} is not a node id`,{itemId:u.id});if(u.kind===`collection`&&!pe.test(u.collection))throw new x(`invalid_menu`,`${n}: "${u.collection}" is not a slug`,{itemId:u.id});if(u.kind===`url`&&!k(u.href))throw new x(`invalid_menu`,`${n}: external links must be https:// with an ASCII host (punycode for international names), no user-info, whitespace or backslashes, at most 2,048 characters; link pages, articles and terms by id instead of a site path`,{itemId:u.id});let f=u.labels??void 0;if(f){let e=Object.entries(f).filter(([,e])=>e!==void 0);if(e.length===0)throw new x(`invalid_label`,`${n}: omit labels rather than send an empty map`,{itemId:u.id});let t=i.get(u.id)?.item.labels;for(let[r,i]of e){if(!me.test(r))throw new x(`invalid_label`,`${n}: "${r}" is not a locale`,{itemId:u.id,locale:r});let e=ye(i);if(e)throw new x(`invalid_label`,`${n}: the ${r} label ${e}`,{itemId:u.id,locale:r});if(!a.has(r)&&t?.[r]===void 0)throw new x(`invalid_label`,`${n}: ${r} is not a locale of this site (${[...a].join(`, `)})`,{itemId:u.id,locale:r})}}if(be.has(u.kind)&&!f?.[t.defaultLocale])throw new x(`invalid_label`,`${n}: ${u.kind} items need a label in the site's default locale (${t.defaultLocale}); they have no title to fall back to`,{itemId:u.id,locale:t.defaultLocale});if(u.kind!==`url`&&`newTab`in u&&u.newTab!==void 0)throw new x(`invalid_menu`,`${n}: only external links open in a new tab`,{itemId:u.id});let p=u.children;if(!r.partial){if(p&&p.length===0)throw new x(`invalid_menu`,`${n}: omit children rather than send []`,{itemId:u.id});if(u.kind===`group`&&!p?.length)throw new x(`invalid_menu`,`${n}: a group needs at least one item`,{itemId:u.id})}p&&c(p,l+1)}};c(e.items,1)}function Se(e){return JSON.parse(JSON.stringify(e))}function A(e){for(let t of e){t.children&&(t.children.length===0?delete t.children:A(t.children));let e=t.labels;e&&Object.keys(e).length===0&&delete t.labels}return e}function j(e,t){for(let t of[`pageId`,`entryId`,`termId`,`collection`,`href`])delete e[t];switch(e.kind=t.kind,t.kind){case`page`:e.pageId=t.ref;break;case`contentEntry`:e.entryId=t.ref;break;case`term`:e.termId=t.ref;break;case`collection`:e.collection=t.collection;break;case`url`:e.href=t.href}t.kind!==`url`&&delete e.newTab}function M(e,t){let n={id:e.id??t(),kind:e.target.kind};if(j(n,e.target),e.newTab!==void 0){if(e.target.kind!==`url`)throw new x(`invalid_menu`,`only external links open in a new tab`);n.newTab=e.newTab}return e.labels&&Object.keys(e.labels).length>0&&(n.labels={...e.labels}),e.display===`mega`&&(n.display=`mega`),e.children&&e.children.length>0&&(n.children=e.children.map(e=>M(e,t))),n}function N(e,t){for(let n=0;n<e.length;n++){let r=e[n];if(r.id===t)return{item:r,list:e,index:n};if(r.children){let e=N(r.children,t);if(e)return e}}}function P(e,t){return(e.children??[]).some(e=>e.id===t||P(e,t))}function F(e,t,n,r){if(t.length>50)throw new x(`too_large`,`at most 50 operations per call (got ${t.length})`);let i=Se(e.items),a=(e,t)=>{if(e==null)return i;let n=N(i,e);if(!n)throw new x(`unknown_item`,`operation ${t}: no item ${e}`,{opIndex:t,itemId:e});return n.item.children??=[],n.item.children},o=(e,t,n)=>{let r=n===void 0?e.length:Math.max(0,Math.min(e.length,Math.trunc(n)));e.splice(r,0,t)};return t.forEach((t,s)=>{try{switch(t.op){case`add`:{let e=M(t.item,n);o(a(t.parent,s),e,t.index);break}case`remove`:{let e=N(i,t.itemId);if(!e)throw new x(`unknown_item`,`operation ${s}: no item ${t.itemId}`,{itemId:t.itemId});e.list.splice(e.index,1);break}case`move`:{let e=N(i,t.itemId);if(!e)throw new x(`unknown_item`,`operation ${s}: no item ${t.itemId}`,{itemId:t.itemId});if(t.parent&&(t.parent===t.itemId||P(e.item,t.parent)))throw new x(`cycle`,`operation ${s}: cannot move ${t.itemId} under itself or one of its own items`,{itemId:t.itemId});e.list.splice(e.index,1),o(a(t.parent,s),e.item,t.index);break}case`update`:{let e=N(i,t.itemId);if(!e)throw new x(`unknown_item`,`operation ${s}: no item ${t.itemId}`,{itemId:t.itemId});let n=e.item;if(t.target&&j(n,t.target),t.labels){let e={...n.labels??{}};for(let[n,r]of Object.entries(t.labels))r===null?delete e[n]:e[n]=r;Object.keys(e).length>0?n.labels=e:delete n.labels}if(t.newTab!==void 0){if(t.newTab===null)delete n.newTab;else if(n.kind!==`url`)throw new x(`invalid_menu`,`operation ${s}: only external links open in a new tab`,{itemId:t.itemId});else n.newTab=t.newTab}t.display!==void 0&&(t.display===null?delete n.display:n.display=t.display);break}default:throw new x(`invalid_menu`,`operation ${s}: unknown operation`)}r&&xe({...e,items:i},r,e,{partial:!0})}catch(e){throw e instanceof x&&e.details.opIndex===void 0?new x(e.code,e.message.startsWith(`operation `)?e.message:`operation ${s}: ${e.message}`,{...e.details,opIndex:s}):e}}),{...e,items:A(i)}}function Ce(e,t){let n=e.length,r=t.length,i=Array.from({length:n+1},()=>Array(r+1).fill(0));for(let a=n-1;a>=0;a--)for(let n=r-1;n>=0;n--)i[a][n]=e[a]===t[n]?i[a+1][n+1]+1:Math.max(i[a+1][n],i[a][n+1]);let a=new Set,o=0,s=0;for(;o<n&&s<r;)e[o]===t[s]?(a.add(e[o]),o++,s++):i[o+1][s]>=i[o][s+1]?o++:s++;return a}var I=e=>{switch(e.kind){case`page`:return`page:${e.pageId}`;case`contentEntry`:return`contentEntry:${e.entryId}`;case`term`:return`term:${e.termId}`;case`collection`:return`collection:${e.collection}`;case`url`:return`url:${e.href}`;case`group`:return`group`}};function we(e,t){let n=O(e?.items??[]),r=O(t.items),i=e=>D(e.children??[]),a=[],o=[],s=[],c=[];for(let[e,t]of r)n.has(e)||(!t.parentId||n.has(t.parentId))&&a.push({id:e,...t.parentId?{parentId:t.parentId}:{},index:t.index,descendants:[...r.values()].filter(t=>Te(r,t.item.id,e)&&!n.has(t.item.id)).length});for(let[e,t]of n)r.has(e)||(!t.parentId||r.has(t.parentId))&&o.push({id:e,...t.parentId?{parentId:t.parentId}:{},descendants:i(t.item)});let l=(e,t)=>[...e.values()].filter(e=>e.parentId===t).sort((e,t)=>e.index-t.index).map(e=>e.item.id),u=new Map,d=e=>{let t=u.get(e);if(!t){let i=t=>t.filter(t=>n.get(t)?.parentId===e&&r.get(t)?.parentId===e);t=Ce(i(l(n,e)),i(l(r,e))),u.set(e,t)}return t};for(let[e,t]of r){let r=n.get(e);if(!r)continue;let i={...r.parentId?{parentId:r.parentId}:{},index:r.index},a={...t.parentId?{parentId:t.parentId}:{},index:t.index};r.parentId===t.parentId?d(t.parentId).has(e)||s.push({id:e,reparented:!1,from:i,to:a}):s.push({id:e,reparented:!0,from:i,to:a});let o=r.item,l=t.item,u=o.labels??{},f=l.labels??{},p=[...new Set([...Object.keys(u),...Object.keys(f)])].sort().filter(e=>u[e]!==f[e]).map(e=>({locale:e,...u[e]===void 0?{}:{from:u[e]},...f[e]===void 0?{}:{to:f[e]}})),m=o.kind===`url`&&o.newTab===!0,h=l.kind===`url`&&l.newTab===!0,g=I(o)!==I(l);(p.length>0||g||m!==h&&!g)&&c.push({id:e,...p.length>0?{labels:p}:{},...g?{target:{from:o,to:l}}:{},...m!==h&&!g?{newTab:{from:m,to:h}}:{}})}return{before:n.size,after:r.size,added:a,removed:o,moved:s,changed:c,changes:a.length+o.length+s.length+c.length}}function Te(e,t,n){let r=e.get(t)?.parentId;for(;r;){if(r===n)return!0;r=e.get(r)?.parentId}return!1}var L=[`primary`,`footer`,`sidebar`];function R(e){return L.includes(e)}function Ee(e){let t=e=>{let t=L.indexOf(e);return t<0?L.length:t};return[...new Set(e)].sort((e,n)=>t(e)-t(n)||e.localeCompare(n))}var De=/^[a-z0-9]+(?:-[a-z0-9]+)*$/;function Oe(e,t){if(!e)return`required`;if(e.length>128)return`tooLong`;if(!De.test(e))return`invalid`;if(t.includes(e))return`taken`}function ke(e,t){let n=F({siteId:``,maxDepth:e.maxDepth,items:e.items},[{op:`move`,itemId:t.itemId,parent:t.parentId,index:t.index}],T);return{...e,items:n.items}}function Ae(e,t){let n=F({siteId:``,maxDepth:e.maxDepth,items:e.items},[{op:`remove`,itemId:t}],T);return{...e,items:n.items}}function je(e,t,n,r){let i=e=>{let n=[...e];return n.splice(r??n.length,0,t),n};if(n===null)return{...e,items:i(e.items)};let a=e=>e.map(e=>e.id===n?{...e,children:i(e.children??[])}:e.children?{...e,children:a(e.children)}:e);return{...e,items:a(e.items)}}function Me(e,t,n){let r=e=>e.map(e=>{if(e.id===t){let t=e.children,{children:r,...i}=n;return t?.length?{...i,children:t}:i}return e.children?{...e,children:r(e.children)}:e});return{...e,items:r(e.items)}}function Ne(e,t){return O(e).get(t)?.item}function z(e,t){return O(e).get(t)?.depth??0}function Pe(e,t){return{rev:e.rev,maxDepth:t.maxDepth,items:t.items}}function Fe(e,t){return e.maxDepth===t.maxDepth&&JSON.stringify(e.items)===JSON.stringify(t.items)}function B(e){let t=new Map([[``,e.length]]);E(e,e=>{e.children?.length&&t.set(e.id,e.children.length)});let n={parentId:null,count:e.length};for(let[e,r]of t)r>n.count&&(n={parentId:e||null,count:r});return{total:D(e),depth:_e(e),fullest:n,perParent:t}}function Ie(e,t){return e>=Math.floor(t*.8)}function Le(){return{target:void 0,href:``,newTab:!1,labels:{}}}function Re(e){let t={...e.labels??{}};switch(e.kind){case`page`:return{target:{kind:`page`,id:e.pageId},href:``,newTab:!1,labels:t};case`contentEntry`:return{target:{kind:`contentEntry`,id:e.entryId},href:``,newTab:!1,labels:t};case`term`:return{target:{kind:`term`,id:e.termId},href:``,newTab:!1,labels:t};case`collection`:return{target:{kind:`collection`,collection:e.collection},href:``,newTab:!1,labels:t};case`url`:return{target:{kind:`url`},href:e.href,newTab:e.newTab===!0,labels:t};case`group`:return{target:{kind:`group`},href:``,newTab:!1,labels:t}}}function V(e){return e?.kind===`collection`||e?.kind===`url`||e?.kind===`group`}function ze(e,t){let n={};for(let[t,r]of Object.entries(e.labels))r.trim()&&(n[t]=r.trim());let r=Object.keys(n).length>0?{labels:n}:{},i=e.target;switch(i.kind){case`page`:return{id:t,kind:`page`,pageId:i.id,...r};case`contentEntry`:return{id:t,kind:`contentEntry`,entryId:i.id,...r};case`term`:return{id:t,kind:`term`,termId:i.id,...r};case`collection`:return{id:t,kind:`collection`,collection:i.collection,labels:n};case`url`:return{id:t,kind:`url`,href:e.href.trim(),...e.newTab?{newTab:!0}:{},labels:n};case`group`:return{id:t,kind:`group`,labels:n}}}var Be=/[\x00-\x1F\x7F]/;function Ve(e){let t=e.trim();if(t){if(t.length>w.labelLength)return`tooLong`;if(Be.test(t))return`invalid`}}function He(e){let t=e.trim();if(!t)return`required`;if(/^http:\/\//i.test(t))return`insecure`;if(!k(t))return`invalid`}function Ue(e,t){let n={labels:{}};if(e.target||(n.target=`required`),e.target?.kind===`url`){let t=He(e.href);t&&(n.href=t)}for(let[t,r]of Object.entries(e.labels)){let e=Ve(r);e&&(n.labels[t]=e)}return V(e.target)&&!e.labels[t.defaultLocale]?.trim()&&(n.labels[t.defaultLocale]=`required`),n}function We(e){return!!(e.target||e.href||Object.keys(e.labels).length>0)}function H(e){try{return new URL(e).host}catch{return}}function Ge(e){let t=new Set(e.entries.map(e=>e.collection));for(let n of e.pages)for(let e of n.sections)e.kind===`contentList`&&t.add(e.collection);return[...t].sort()}function Ke(e){if(!e)return null;switch(e.kind){case`page`:case`contentEntry`:case`term`:return`${e.kind}:${e.id}`;case`collection`:return`collection:${e.collection}`;default:return e.kind}}function qe(e){if(e===`url`||e===`group`)return{kind:e};let t=e.indexOf(`:`),n=e.slice(0,t),r=e.slice(t+1);if(n===`page`||n===`contentEntry`||n===`term`)return{kind:n,id:r};if(n===`collection`)return{kind:n,collection:r}}var U=(e,t)=>`${e.archive.basePath}/${t}`;function Je(e){let t=e.site.defaultLocale,n=[...e.pages].filter(e=>e.locale===t).sort((e,t)=>e.path.localeCompare(t.path)).map(e=>({value:`page:${e.id}`,group:`pages`,label:e.title,detail:e.path,...e.status===`published`?{}:{status:e.status}})),r=[...e.entries].filter(e=>e.locale===t).sort((e,t)=>e.title.localeCompare(t.title)).map(e=>({value:`contentEntry:${e.id}`,group:`articles`,label:e.title,detail:`/${e.collection}/${e.slug}`,...e.status===`published`?{}:{status:e.status}})),i=[];for(let n of e.taxonomies){let r=e.terms.filter(e=>e.taxonomyId===n.id&&e.status!==`retired`),a=new Map;for(let e of r){let t=e.parentId??``;a.set(t,[...a.get(t)??[],e])}let o=(r,s)=>{let c=[...a.get(r)??[]].sort((e,n)=>(e.position??1e9)-(n.position??1e9)||y(e,t).localeCompare(y(n,t)));for(let r of c)i.push({value:`term:${r.id}`,group:`terms`,taxonomy:n.key,label:y(r,t,...e.site.locales),...n.archive.enabled?{detail:U(n,r.slug)}:{},...r.status===`proposed`?{status:`proposed`}:r.visibility===`internal`?{status:`internal`}:{},depth:s}),s<16&&o(r.id,s+1)};o(``,0)}let a=Ge(e).map(e=>({value:`collection:${e}`,group:`collections`,label:e,detail:e}));return[...n,...r,...i,...a,{value:`url`,group:`other`,label:`url`},{value:`group`,group:`other`,label:`group`}]}function Ye(e,t,n){if(e)switch(e.kind){case`page`:return t.pages.find(t=>t.id===e.id)?.title;case`contentEntry`:return t.entries.find(t=>t.id===e.id)?.title;case`term`:{let r=t.terms.find(t=>t.id===e.id);return r?y(r,n,t.site.defaultLocale):void 0}default:return}}function W(e,t){switch(e.kind){case`page`:{let n=t.pages.find(t=>t.id===e.pageId);return n?{kind:`page`,where:n.path,title:n.title}:{kind:`page`,missing:!0}}case`contentEntry`:{let n=t.entries.find(t=>t.id===e.entryId);return n?{kind:`contentEntry`,where:`/${n.collection}/${n.slug}`,title:n.title}:{kind:`contentEntry`,missing:!0}}case`term`:{let n=t.terms.find(t=>t.id===e.termId),r=n&&t.taxonomies.find(e=>e.id===n.taxonomyId);return n?{kind:`term`,title:y(n,t.site.defaultLocale),...r?{taxonomy:r.key}:{},...r?.archive.enabled?{where:U(r,n.slug)}:{}}:{kind:`term`,missing:!0}}case`collection`:return{kind:`collection`,where:e.collection};case`url`:{let t=H(e.href);return{kind:`url`,...t?{where:t}:{},newTab:e.newTab===!0}}case`group`:return{kind:`group`}}}function G(e,t){let n=e.labels??{},r=n[t.site.defaultLocale]??Object.values(n).find(Boolean);return r?{text:r,fallback:!1}:{text:W(e,t).title??``,fallback:!0}}function K(e){let t=new Map,n=e=>{for(let r of e)t.set(r.id,r),n(r.children)};return e&&n(e.items),t}function q(e){return[...K(e).values()].filter(e=>e.state===`hidden`&&e.reason!==`parent-hidden`)}function Xe(e,t,n,r){let i=we(e,t),a=O(e.items),o=O(t.items),s=e=>{let t=o.get(e)?.item??a.get(e)?.item,r=t?G(t,n):{text:e,fallback:!1};return{label:r.text||e,fallback:r.fallback}},c=[];for(let e of i.added){let t=o.get(e.id)?.item;c.push({sign:`+`,id:e.id,...s(e.id),target:W(t,n),...e.parentId?{parent:s(e.parentId).label}:{},position:e.index+1,below:e.descendants})}for(let e of i.removed){let t=a.get(e.id)?.item;c.push({sign:`−`,id:e.id,...s(e.id),target:W(t,n),below:e.descendants})}for(let e of i.moved)c.push(e.reparented?{sign:`↳`,id:e.id,...s(e.id),...e.to.parentId?{parent:s(e.to.parentId).label}:{},...e.from.parentId?{was:s(e.from.parentId).label}:{}}:{sign:`↕`,id:e.id,...s(e.id),from:e.from.index+1,to:e.to.index+1});for(let e of i.changed){for(let t of e.labels??[])c.push({sign:`~`,id:e.id,...s(e.id),change:`label`,locale:t.locale,...t.from===void 0?{}:{from:t.from},...t.to===void 0?{}:{to:t.to}});e.target&&c.push({sign:`~`,id:e.id,...s(e.id),change:`target`,from:W(e.target.from,n),to:W(e.target.to,n)}),e.newTab&&c.push({sign:`~`,id:e.id,...s(e.id),change:`newTab`,to:e.newTab.to})}if(r){let e=new Set([...i.added.map(e=>e.id),...i.changed.map(e=>e.id)]);for(let t of q(r))e.has(t.id)&&t.reason&&c.push({sign:`!`,id:t.id,...s(t.id),reason:t.reason,kind:t.kind})}return{delta:i,lines:c}}function Ze(e,t){let n;if(E(e.items,(r,i)=>{n||(r.kind===`group`&&!r.children?.length?n={code:`emptyGroup`,itemId:r.id}:(r.kind===`group`||r.kind===`url`||r.kind===`collection`)&&!r.labels?.[t.defaultLocale]?n={code:`label`,itemId:r.id}:i>e.maxDepth&&(n={code:`depth`,itemId:r.id,max:e.maxDepth}))}),n)return n;let r=B(e.items);if(r.total>w.total)return{code:`total`,max:w.total};if(r.fullest.count>w.perLevel)return{code:`perLevel`,max:w.perLevel}}var J=r(),Y={overview:e=>[`menus`,e],references:(e,t,n)=>[`menu-references`,e,t,n]};function X(){let e=v(`menus`);return t=>R(t)?e(`menus.places.${t}`):t}function Z(){let e=v(`menus`),t=X();return n=>R(n)?e(`menus.placeWithKey`,{place:t(n),key:n}):n}function Qe(){let{t:e,locale:t}=_(`menus`),n=te(t)===`rtl`;return{description:(t,r)=>t?e(n?`menus.items.descriptionRtl`:`menus.items.description`,{max:r}):e(`menus.items.descriptionReadOnly`),instructions:e(n?`menus.tree.instructionsRtl`:`menus.tree.instructions`)}}var $e={page:ae,contentEntry:ie,term:ne,collection:se,url:c(l),group:f};function et({target:e,taxonomyName:t}){let n=v(`menus`),r=$e[e.kind],a=e.missing?n(`menus.chips.missing.${e.kind}`):e.kind===`term`?n(`menus.chips.term`,{taxonomy:t??n(`menus.chips.termFallback`),name:e.title??``}):e.kind===`group`?n(`menus.chips.group`):n(`menus.chips.${e.kind}`,{where:e.where??``});return(0,J.jsx)(`span`,{className:`inline-flex max-w-full min-w-0`,"data-target-kind":e.kind,children:(0,J.jsxs)(i,{variant:`outline`,icon:(0,J.jsx)(r,{}),children:[(0,J.jsx)(`span`,{className:`min-w-0 truncate`,children:a}),e.kind===`url`&&e.newTab&&(0,J.jsx)(`span`,{className:`sr-only`,children:n(`menus.chips.newTab`)})]})})}var tt={missing:!0,unpublished:!0};function Q(){let e=v(`menus`);return(t,n,r)=>{let i=n===`page`||n===`contentEntry`||n===`term`?n:`page`,a=r===`badge`?`reasons`:`explain`,o=tt[t]?`menus.hidden.${a}.${t}.${i}`:`menus.hidden.${a}.${t}`;return e(o)}}function nt({reason:e,kind:t}){let n=v(`menus`),r=Q();return(0,J.jsx)(a,{content:r(e,t,`explain`),render:(0,J.jsx)(`span`,{className:`inline-flex`,"data-hidden-reason":e,tabIndex:-1,children:(0,J.jsx)(i,{variant:e===`parent-hidden`?`secondary`:`warning`,icon:(0,J.jsx)(d,{}),children:n(`menus.hidden.badge`,{reason:r(e,t,`badge`)})})})})}function rt(e){let t=s({queryKey:Y.overview(e),queryFn:()=>h.menus.list(e)}),n=new Map;for(let{menu:e}of t.data?.menus??[]){let t=r=>{for(let i of r){if(i.kind===`page`){let t=n.get(i.pageId)??[];t.includes(e.key)||n.set(i.pageId,[...t,e.key])}i.children&&t(i.children)}};t(e.items)}return n}function it({keys:e}){let t=v(`menus`),n=Z();return e?.length?(0,J.jsx)(a,{content:t(`menus.inMenu.hint`,{menus:ee(e.map(n))}),render:(0,J.jsx)(`span`,{className:`inline-flex`,"data-testid":`in-menu-badge`,children:(0,J.jsx)(i,{variant:`outline`,icon:(0,J.jsx)(b,{}),children:t(`menus.inMenu.badge`)})})}):null}function $(e,t){return s({queryKey:Y.references(e,t?.kind??``,t?.id??``),queryFn:()=>h.menus.references(e,t?.kind??`page`,t?.id??``),enabled:t!==void 0})}function at(e,t,n){return`/sites/${e}/navigation?menu=${encodeURIComponent(t.key)}&item=${encodeURIComponent(n)}`}function ot({siteId:e,kind:t,id:n}){let r=v(`menus`),a=Z(),s=$(e,{kind:t,id:n}),c=(s.data??[]).reduce((e,t)=>e+t.items.length,0);return(0,J.jsx)(g,{title:r(`menus.usedIn.title`),icon:(0,J.jsx)(b,{size:16}),actions:c>0?(0,J.jsx)(i,{variant:`secondary`,children:c}):void 0,id:`used-in-menus`,children:s.data===void 0?(0,J.jsx)(u,{variant:`secondary`,size:`sm`,children:r(`common.loading`)}):s.data.length===0?(0,J.jsx)(re,{icon:(0,J.jsx)(b,{size:32,className:`text-kumo-inactive`}),title:r(`menus.usedIn.none`),description:r(`menus.usedIn.noneDescription.${t}`),contents:(0,J.jsx)(o,{href:`/sites/${e}/navigation`,variant:`inline`,children:r(`menus.usedIn.open`)})}):(0,J.jsxs)(`div`,{className:`grid gap-3`,children:[(0,J.jsx)(`dl`,{className:`grid divide-y divide-kumo-hairline`,children:s.data.flatMap(t=>t.items.map(n=>(0,J.jsxs)(`div`,{className:`flex min-w-0 items-center justify-between gap-4 py-2 first:pt-0 last:pb-0`,"data-menu-item":n.id,children:[(0,J.jsx)(u,{as:`dt`,variant:`secondary`,children:a(t.key)}),(0,J.jsx)(`dd`,{className:`min-w-0`,children:(0,J.jsx)(o,{href:at(e,t,n.id),variant:`inline`,children:(0,J.jsx)(`span`,{className:`block truncate`,children:n.label||r(`menus.row.noLabel`)})})})]},`${t.menuId}:${n.id}`)))}),(0,J.jsx)(u,{variant:`secondary`,size:`sm`,children:r(`menus.usedIn.description.${t}`)})]})})}function st({refs:e,kind:t}){let n=v(`menus`),r=Z(),i=(e??[]).flatMap(e=>e.items.map(t=>`${r(e.key)}: “${t.label||n(`menus.row.noLabel`)}”`));return i.length===0?null:(0,J.jsx)(`div`,{"data-testid":`menu-delete-notice`,children:(0,J.jsx)(m,{variant:`alert`,icon:(0,J.jsx)(p,{weight:`fill`}),title:n(`menus.deleteNotice.title.${t}`,{count:i.length}),description:`${i.join(` · `)}. ${n(`menus.deleteNotice.description`)}`})})}export{Ee as A,Ue as B,je as C,ke as D,B as E,Pe as F,w as H,G as I,W as L,Me as M,K as N,Ie as O,Fe as P,Je as R,H as S,ze as T,T as U,Oe as V,Le as _,ot as a,We as b,Qe as c,Z as d,rt as f,Ze as g,Xe as h,et as i,Ae as j,V as k,X as l,Ke as m,it as n,Y as o,qe as p,st as r,Q as s,nt as t,$ as u,Ne as v,z as w,q as x,Re as y,Ye as z};
|
|
2
|
+
//# sourceMappingURL=Menus-BqLOw0If.js.map
|