@atlashub/smartstack 3.29.0 → 3.30.0
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/chunks/{AgentSkillsPage-ChykpPZx.js → AgentSkillsPage-CVq3qZoe.js} +2 -2
- package/dist/chunks/{AgentSkillsPage-ChykpPZx.js.map → AgentSkillsPage-CVq3qZoe.js.map} +1 -1
- package/dist/chunks/{AgentSkillsPage-ABpqnnyK.js → AgentSkillsPage-DJb49NMA.js} +2 -2
- package/dist/chunks/{AgentSkillsPage-ABpqnnyK.js.map → AgentSkillsPage-DJb49NMA.js.map} +1 -1
- package/dist/chunks/{AgentWorkloadPage-BltzNlXI.js → AgentWorkloadPage-D_nk3gKj.js} +2 -2
- package/dist/chunks/{AgentWorkloadPage-BltzNlXI.js.map → AgentWorkloadPage-D_nk3gKj.js.map} +1 -1
- package/dist/chunks/{AgentWorkloadPage-BI5QWJyQ.js → AgentWorkloadPage-oHEi-sFh.js} +2 -2
- package/dist/chunks/{AgentWorkloadPage-BI5QWJyQ.js.map → AgentWorkloadPage-oHEi-sFh.js.map} +1 -1
- package/dist/chunks/{ApiCatalogDetailPage-BaheZKBq.js → ApiCatalogDetailPage-Cr0q2HnB.js} +3 -3
- package/dist/chunks/{ApiCatalogDetailPage-BaheZKBq.js.map → ApiCatalogDetailPage-Cr0q2HnB.js.map} +1 -1
- package/dist/chunks/{ApiCatalogDetailPage-CsRxlHwO.js → ApiCatalogDetailPage-DX8buBkV.js} +2 -2
- package/dist/chunks/{ApiCatalogDetailPage-CsRxlHwO.js.map → ApiCatalogDetailPage-DX8buBkV.js.map} +1 -1
- package/dist/chunks/{ApiCatalogPage-CqmmHpQ4.js → ApiCatalogPage-DN7sazvI.js} +2 -2
- package/dist/chunks/{ApiCatalogPage-CqmmHpQ4.js.map → ApiCatalogPage-DN7sazvI.js.map} +1 -1
- package/dist/chunks/{ApiCatalogPage-B0yIz8-U.js → ApiCatalogPage-DqboIzZE.js} +2 -2
- package/dist/chunks/{ApiCatalogPage-B0yIz8-U.js.map → ApiCatalogPage-DqboIzZE.js.map} +1 -1
- package/dist/chunks/{ApplicationDetailPage-CngD5JSN.js → ApplicationDetailPage--9YwwS5A.js} +2 -2
- package/dist/chunks/{ApplicationDetailPage-CngD5JSN.js.map → ApplicationDetailPage--9YwwS5A.js.map} +1 -1
- package/dist/chunks/{ApplicationDetailPage-CdT6KNd7.js → ApplicationDetailPage-CCNjr64K.js} +4 -4
- package/dist/chunks/{ApplicationDetailPage-CdT6KNd7.js.map → ApplicationDetailPage-CCNjr64K.js.map} +1 -1
- package/dist/chunks/{ApplicationsDashboardPage-DHmnjk2O.js → ApplicationsDashboardPage-BSsHN3Yj.js} +2 -2
- package/dist/chunks/{ApplicationsDashboardPage-DHmnjk2O.js.map → ApplicationsDashboardPage-BSsHN3Yj.js.map} +1 -1
- package/dist/chunks/{ApplicationsDashboardPage-1V4iQ6eY.js → ApplicationsDashboardPage-Bs-Xgca4.js} +3 -3
- package/dist/chunks/{ApplicationsDashboardPage-1V4iQ6eY.js.map → ApplicationsDashboardPage-Bs-Xgca4.js.map} +1 -1
- package/dist/chunks/{ApplicationsGridPage-Bo3NDnBF.js → ApplicationsGridPage-DDysNWJ5.js} +2 -2
- package/dist/chunks/{ApplicationsGridPage-Bo3NDnBF.js.map → ApplicationsGridPage-DDysNWJ5.js.map} +1 -1
- package/dist/chunks/{ApplicationsGridPage-CiMJFlB_.js → ApplicationsGridPage-s1WEzOXS.js} +2 -2
- package/dist/chunks/{ApplicationsGridPage-CiMJFlB_.js.map → ApplicationsGridPage-s1WEzOXS.js.map} +1 -1
- package/dist/chunks/{ApplicationsListPage-L2_S23aN.js → ApplicationsListPage-B3CSMiV0.js} +2 -2
- package/dist/chunks/{ApplicationsListPage-L2_S23aN.js.map → ApplicationsListPage-B3CSMiV0.js.map} +1 -1
- package/dist/chunks/{ApplicationsListPage-De8jQ1Cm.js → ApplicationsListPage-B6ZCecIl.js} +2 -2
- package/dist/chunks/{ApplicationsListPage-De8jQ1Cm.js.map → ApplicationsListPage-B6ZCecIl.js.map} +1 -1
- package/dist/chunks/{ApplicationsPage-DBq7_Sm8.js → ApplicationsPage-BBaiBM--.js} +2 -2
- package/dist/chunks/{ApplicationsPage-DBq7_Sm8.js.map → ApplicationsPage-BBaiBM--.js.map} +1 -1
- package/dist/chunks/{ApplicationsPage-CiNI-b0R.js → ApplicationsPage-ztPwoAGt.js} +4 -4
- package/dist/chunks/{ApplicationsPage-CiNI-b0R.js.map → ApplicationsPage-ztPwoAGt.js.map} +1 -1
- package/dist/chunks/{AssignmentRulesPage-DFsO4ZES.js → AssignmentRulesPage-CK4L4rBO.js} +2 -2
- package/dist/chunks/{AssignmentRulesPage-DFsO4ZES.js.map → AssignmentRulesPage-CK4L4rBO.js.map} +1 -1
- package/dist/chunks/{AssignmentRulesPage-C8rfUsMB.js → AssignmentRulesPage-DFSVFFXr.js} +2 -2
- package/dist/chunks/{AssignmentRulesPage-C8rfUsMB.js.map → AssignmentRulesPage-DFSVFFXr.js.map} +1 -1
- package/dist/chunks/{AssignmentsPage-78C_EBsw.js → AssignmentsPage-Bp7oQD7Q.js} +2 -2
- package/dist/chunks/{AssignmentsPage-78C_EBsw.js.map → AssignmentsPage-Bp7oQD7Q.js.map} +1 -1
- package/dist/chunks/{AssignmentsPage-COCikISI.js → AssignmentsPage-JCLpyg94.js} +2 -2
- package/dist/chunks/{AssignmentsPage-COCikISI.js.map → AssignmentsPage-JCLpyg94.js.map} +1 -1
- package/dist/chunks/{AuthCallbackPage-DqT6ueVi.js → AuthCallbackPage-Bl9xlJ3h.js} +2 -2
- package/dist/chunks/{AuthCallbackPage-DqT6ueVi.js.map → AuthCallbackPage-Bl9xlJ3h.js.map} +1 -1
- package/dist/chunks/{AuthCallbackPage-BF4bkTnR.js → AuthCallbackPage-CzMHz4jy.js} +2 -2
- package/dist/chunks/{AuthCallbackPage-BF4bkTnR.js.map → AuthCallbackPage-CzMHz4jy.js.map} +1 -1
- package/dist/chunks/{ConfirmEmailPage-Bh_K5qJn.js → ConfirmEmailPage-D_8T1vqV.js} +2 -2
- package/dist/chunks/{ConfirmEmailPage-Bh_K5qJn.js.map → ConfirmEmailPage-D_8T1vqV.js.map} +1 -1
- package/dist/chunks/{ConfirmEmailPage-DJy4idrf.js → ConfirmEmailPage-M7mJgXvn.js} +2 -2
- package/dist/chunks/{ConfirmEmailPage-DJy4idrf.js.map → ConfirmEmailPage-M7mJgXvn.js.map} +1 -1
- package/dist/chunks/{CreateSupportTicketPage-pL7jbG9o.js → CreateSupportTicketPage-BNEGavlu.js} +2 -2
- package/dist/chunks/{CreateSupportTicketPage-pL7jbG9o.js.map → CreateSupportTicketPage-BNEGavlu.js.map} +1 -1
- package/dist/chunks/{CreateSupportTicketPage-AVTwXbJd.js → CreateSupportTicketPage-C2X2mfds.js} +2 -2
- package/dist/chunks/{CreateSupportTicketPage-AVTwXbJd.js.map → CreateSupportTicketPage-C2X2mfds.js.map} +1 -1
- package/dist/chunks/{DashboardPage-DdQlTLw0.js → DashboardPage-4oy2YqvT.js} +2 -2
- package/dist/chunks/{DashboardPage-DdQlTLw0.js.map → DashboardPage-4oy2YqvT.js.map} +1 -1
- package/dist/chunks/{DashboardPage-C55mIiB6.js → DashboardPage-CO-8B8EI.js} +3 -3
- package/dist/chunks/{DashboardPage-C55mIiB6.js.map → DashboardPage-CO-8B8EI.js.map} +1 -1
- package/dist/chunks/{DashboardPage-CcCnUl7s.js → DashboardPage-CPArUG-S.js} +2 -2
- package/dist/chunks/{DashboardPage-CcCnUl7s.js.map → DashboardPage-CPArUG-S.js.map} +1 -1
- package/dist/chunks/{DashboardPage-DOitDfGV.js → DashboardPage-D5MRMxEV.js} +3 -3
- package/dist/chunks/{DashboardPage-DOitDfGV.js.map → DashboardPage-D5MRMxEV.js.map} +1 -1
- package/dist/chunks/{EscalationConfigPage-DNnZftCH.js → EscalationConfigPage-CwdnfJbJ.js} +2 -2
- package/dist/chunks/{EscalationConfigPage-DNnZftCH.js.map → EscalationConfigPage-CwdnfJbJ.js.map} +1 -1
- package/dist/chunks/{EscalationConfigPage-DRr55328.js → EscalationConfigPage-DnjLFXnL.js} +2 -2
- package/dist/chunks/{EscalationConfigPage-DRr55328.js.map → EscalationConfigPage-DnjLFXnL.js.map} +1 -1
- package/dist/chunks/{ForceChangePasswordPage-1SCOPIqK.js → ForceChangePasswordPage-ZEIfyqwE.js} +2 -2
- package/dist/chunks/{ForceChangePasswordPage-1SCOPIqK.js.map → ForceChangePasswordPage-ZEIfyqwE.js.map} +1 -1
- package/dist/chunks/{ForceChangePasswordPage-DBeG_HRO.js → ForceChangePasswordPage-sh-3h_H9.js} +2 -2
- package/dist/chunks/{ForceChangePasswordPage-DBeG_HRO.js.map → ForceChangePasswordPage-sh-3h_H9.js.map} +1 -1
- package/dist/chunks/{ForgotPasswordPage-Dlb6wKfC.js → ForgotPasswordPage-B4M6-xeM.js} +2 -2
- package/dist/chunks/{ForgotPasswordPage-Dlb6wKfC.js.map → ForgotPasswordPage-B4M6-xeM.js.map} +1 -1
- package/dist/chunks/{ForgotPasswordPage-DffYfXva.js → ForgotPasswordPage-MIu-U7p0.js} +2 -2
- package/dist/chunks/{ForgotPasswordPage-DffYfXva.js.map → ForgotPasswordPage-MIu-U7p0.js.map} +1 -1
- package/dist/chunks/{GroupDetailPage-C9nRbeHI.js → GroupDetailPage-4XK3Bs_r.js} +5 -5
- package/dist/chunks/{GroupDetailPage-C9nRbeHI.js.map → GroupDetailPage-4XK3Bs_r.js.map} +1 -1
- package/dist/chunks/{GroupDetailPage-CPPUWzXf.js → GroupDetailPage-C-kvtd2T.js} +2 -2
- package/dist/chunks/{GroupDetailPage-CPPUWzXf.js.map → GroupDetailPage-C-kvtd2T.js.map} +1 -1
- package/dist/chunks/{MyAccessRequestsPage-BAX0xwJX.js → MyAccessRequestsPage-CP41FzHi.js} +2 -2
- package/dist/chunks/{MyAccessRequestsPage-BAX0xwJX.js.map → MyAccessRequestsPage-CP41FzHi.js.map} +1 -1
- package/dist/chunks/{MyAccessRequestsPage-BMY1V631.js → MyAccessRequestsPage-DzrXTrVi.js} +2 -2
- package/dist/chunks/{MyAccessRequestsPage-BMY1V631.js.map → MyAccessRequestsPage-DzrXTrVi.js.map} +1 -1
- package/dist/chunks/{MyTenantsPage-Bbn4HxN2.js → MyTenantsPage-CZRkMbh8.js} +2 -2
- package/dist/chunks/{MyTenantsPage-Bbn4HxN2.js.map → MyTenantsPage-CZRkMbh8.js.map} +1 -1
- package/dist/chunks/{MyTenantsPage-BHtp67SD.js → MyTenantsPage-V_SwYio2.js} +3 -3
- package/dist/chunks/{MyTenantsPage-BHtp67SD.js.map → MyTenantsPage-V_SwYio2.js.map} +1 -1
- package/dist/chunks/{MyTicketsPage-BvZeiTXu.js → MyTicketsPage-DOUhaLal.js} +2 -2
- package/dist/chunks/{MyTicketsPage-BvZeiTXu.js.map → MyTicketsPage-DOUhaLal.js.map} +1 -1
- package/dist/chunks/{MyTicketsPage-D9IGVofj.js → MyTicketsPage-DnvAIeyr.js} +2 -2
- package/dist/chunks/{MyTicketsPage-D9IGVofj.js.map → MyTicketsPage-DnvAIeyr.js.map} +1 -1
- package/dist/chunks/{NavigationAppsPage-DiPBCsAF.js → NavigationAppsPage-DXvpLsbt.js} +2 -2
- package/dist/chunks/{NavigationAppsPage-DiPBCsAF.js.map → NavigationAppsPage-DXvpLsbt.js.map} +1 -1
- package/dist/chunks/{NavigationAppsPage-ChtMK1yt.js → NavigationAppsPage-DfTa4jCG.js} +2 -2
- package/dist/chunks/{NavigationAppsPage-ChtMK1yt.js.map → NavigationAppsPage-DfTa4jCG.js.map} +1 -1
- package/dist/chunks/{NotificationsPage-BxCiGzHk.js → NotificationsPage-D76MdAs-.js} +2 -2
- package/dist/chunks/{NotificationsPage-BxCiGzHk.js.map → NotificationsPage-D76MdAs-.js.map} +1 -1
- package/dist/chunks/{NotificationsPage-BCnL9oPb.js → NotificationsPage-I1yCk7tk.js} +2 -2
- package/dist/chunks/{NotificationsPage-BCnL9oPb.js.map → NotificationsPage-I1yCk7tk.js.map} +1 -1
- package/dist/chunks/{OnboardingWizardPage-CV_cxq7k.js → OnboardingWizardPage-BRUzcl1A.js} +2 -2
- package/dist/chunks/{OnboardingWizardPage-CV_cxq7k.js.map → OnboardingWizardPage-BRUzcl1A.js.map} +1 -1
- package/dist/chunks/{OnboardingWizardPage-Du-tQ2ag.js → OnboardingWizardPage-DtWUPCh3.js} +2 -2
- package/dist/chunks/{OnboardingWizardPage-Du-tQ2ag.js.map → OnboardingWizardPage-DtWUPCh3.js.map} +1 -1
- package/dist/chunks/{PermissionDetailPage-C1iuWv0G.js → PermissionDetailPage-CUNKbl7t.js} +2 -2
- package/dist/chunks/{PermissionDetailPage-C1iuWv0G.js.map → PermissionDetailPage-CUNKbl7t.js.map} +1 -1
- package/dist/chunks/{PermissionDetailPage-Ds4Jt1os.js → PermissionDetailPage-DJJGbXoX.js} +2 -2
- package/dist/chunks/{PermissionDetailPage-Ds4Jt1os.js.map → PermissionDetailPage-DJJGbXoX.js.map} +1 -1
- package/dist/chunks/{PermissionsPage-BGI2nxCn.js → PermissionsPage-B8wmawPV.js} +2 -2
- package/dist/chunks/{PermissionsPage-BGI2nxCn.js.map → PermissionsPage-B8wmawPV.js.map} +1 -1
- package/dist/chunks/{PermissionsPage-sauv7ct1.js → PermissionsPage-Dbjcctuh.js} +2 -2
- package/dist/chunks/{PermissionsPage-sauv7ct1.js.map → PermissionsPage-Dbjcctuh.js.map} +1 -1
- package/dist/chunks/{PortalDashboardPage-CQWEcghD.js → PortalDashboardPage-BeNfBZmb.js} +2 -2
- package/dist/chunks/{PortalDashboardPage-CQWEcghD.js.map → PortalDashboardPage-BeNfBZmb.js.map} +1 -1
- package/dist/chunks/{PortalDashboardPage-2kCbJw9w.js → PortalDashboardPage-zii0ll57.js} +2 -2
- package/dist/chunks/{PortalDashboardPage-2kCbJw9w.js.map → PortalDashboardPage-zii0ll57.js.map} +1 -1
- package/dist/chunks/{PreferencesPage-Bu4gaDRb.js → PreferencesPage-BCpuIGzv.js} +2 -2
- package/dist/chunks/{PreferencesPage-Bu4gaDRb.js.map → PreferencesPage-BCpuIGzv.js.map} +1 -1
- package/dist/chunks/{PreferencesPage-Dbg0bEYD.js → PreferencesPage-BmvrBaAD.js} +2 -2
- package/dist/chunks/{PreferencesPage-Dbg0bEYD.js.map → PreferencesPage-BmvrBaAD.js.map} +1 -1
- package/dist/chunks/{ProfilePage-C5QS7tsh.js → ProfilePage-eowQd59_.js} +2 -2
- package/dist/chunks/{ProfilePage-C5QS7tsh.js.map → ProfilePage-eowQd59_.js.map} +1 -1
- package/dist/chunks/{ProfilePage-DfiBhOUt.js → ProfilePage-mf5wI0-n.js} +2 -2
- package/dist/chunks/{ProfilePage-DfiBhOUt.js.map → ProfilePage-mf5wI0-n.js.map} +1 -1
- package/dist/chunks/{ReferencesManagementPage-Bs0mapj8.js → ReferencesManagementPage-8UPgkVE8.js} +3 -3
- package/dist/chunks/{ReferencesManagementPage-Bs0mapj8.js.map → ReferencesManagementPage-8UPgkVE8.js.map} +1 -1
- package/dist/chunks/{ReferencesManagementPage-C0RgHbJb.js → ReferencesManagementPage-CLsaUNqA.js} +2 -2
- package/dist/chunks/{ReferencesManagementPage-C0RgHbJb.js.map → ReferencesManagementPage-CLsaUNqA.js.map} +1 -1
- package/dist/chunks/{RegisterPage-DS1chV_A.js → RegisterPage-57X-ILDb.js} +2 -2
- package/dist/chunks/{RegisterPage-DS1chV_A.js.map → RegisterPage-57X-ILDb.js.map} +1 -1
- package/dist/chunks/{RegisterPage-DoeIiJt0.js → RegisterPage-CNyHSbqs.js} +2 -2
- package/dist/chunks/{RegisterPage-DoeIiJt0.js.map → RegisterPage-CNyHSbqs.js.map} +1 -1
- package/dist/chunks/{ResetPasswordPage-3KEk3zj5.js → ResetPasswordPage-CyV8l-Zo.js} +2 -2
- package/dist/chunks/{ResetPasswordPage-3KEk3zj5.js.map → ResetPasswordPage-CyV8l-Zo.js.map} +1 -1
- package/dist/chunks/{ResetPasswordPage-C_VQSFB5.js → ResetPasswordPage-JW8-mh_k.js} +2 -2
- package/dist/chunks/{ResetPasswordPage-C_VQSFB5.js.map → ResetPasswordPage-JW8-mh_k.js.map} +1 -1
- package/dist/chunks/{ResolutionModal-S6URD--N.js → ResolutionModal-CjwE73NX.js} +2 -2
- package/dist/chunks/{ResolutionModal-S6URD--N.js.map → ResolutionModal-CjwE73NX.js.map} +1 -1
- package/dist/chunks/{ResolutionModal-BzI1x79r.js → ResolutionModal-wddG59kg.js} +2 -2
- package/dist/chunks/{ResolutionModal-BzI1x79r.js.map → ResolutionModal-wddG59kg.js.map} +1 -1
- package/dist/chunks/{RoleDetailPage-SXK9cq_3.js → RoleDetailPage-CrioVHFI.js} +3 -3
- package/dist/chunks/{RoleDetailPage-SXK9cq_3.js.map → RoleDetailPage-CrioVHFI.js.map} +1 -1
- package/dist/chunks/{RoleDetailPage-DvEEWPKr.js → RoleDetailPage-TUOGR1ow.js} +2 -2
- package/dist/chunks/{RoleDetailPage-DvEEWPKr.js.map → RoleDetailPage-TUOGR1ow.js.map} +1 -1
- package/dist/chunks/{RolesPage-B75lCugt.js → RolesPage-CAcols3D.js} +2 -2
- package/dist/chunks/{RolesPage-B75lCugt.js.map → RolesPage-CAcols3D.js.map} +1 -1
- package/dist/chunks/{RolesPage-C5gYJxAl.js → RolesPage-sJBWaNff.js} +2 -2
- package/dist/chunks/{RolesPage-C5gYJxAl.js.map → RolesPage-sJBWaNff.js.map} +1 -1
- package/dist/chunks/{SlaConfigPage-BqXHATb6.js → SlaConfigPage-BPGRloOS.js} +2 -2
- package/dist/chunks/{SlaConfigPage-BqXHATb6.js.map → SlaConfigPage-BPGRloOS.js.map} +1 -1
- package/dist/chunks/{SlaConfigPage-DZ4P1FFW.js → SlaConfigPage-D5TRn7Ir.js} +2 -2
- package/dist/chunks/{SlaConfigPage-DZ4P1FFW.js.map → SlaConfigPage-D5TRn7Ir.js.map} +1 -1
- package/dist/chunks/{SupportPermissionsPage-B4xy_pCQ.js → SupportPermissionsPage-Dc2bWTzG.js} +2 -2
- package/dist/chunks/{SupportPermissionsPage-B4xy_pCQ.js.map → SupportPermissionsPage-Dc2bWTzG.js.map} +1 -1
- package/dist/chunks/{SupportPermissionsPage-DW7KJjYK.js → SupportPermissionsPage-UXmYLrIq.js} +2 -2
- package/dist/chunks/{SupportPermissionsPage-DW7KJjYK.js.map → SupportPermissionsPage-UXmYLrIq.js.map} +1 -1
- package/dist/chunks/{TemplatesPage-DZa0PQTE.js → TemplatesPage-dmPlqqiD.js} +2 -2
- package/dist/chunks/{TemplatesPage-DZa0PQTE.js.map → TemplatesPage-dmPlqqiD.js.map} +1 -1
- package/dist/chunks/{TemplatesPage-m5-sLJ7F.js → TemplatesPage-nTY85sNA.js} +2 -2
- package/dist/chunks/{TemplatesPage-m5-sLJ7F.js.map → TemplatesPage-nTY85sNA.js.map} +1 -1
- package/dist/chunks/{TenantCard-BJQi7Oew.js → TenantCard-BUXfstRZ.js} +2 -2
- package/dist/chunks/{TenantCard-BJQi7Oew.js.map → TenantCard-BUXfstRZ.js.map} +1 -1
- package/dist/chunks/{TenantCard-CqfifMrM.js → TenantCard-BhT-31ls.js} +2 -2
- package/dist/chunks/{TenantCard-CqfifMrM.js.map → TenantCard-BhT-31ls.js.map} +1 -1
- package/dist/chunks/{TenantScopeSelector-CdiYJvuH.js → TenantScopeSelector-3_mzBLNI.js} +2 -2
- package/dist/chunks/{TenantScopeSelector-CdiYJvuH.js.map → TenantScopeSelector-3_mzBLNI.js.map} +1 -1
- package/dist/chunks/{TenantScopeSelector-Cl5DD318.js → TenantScopeSelector-B-SRDR2R.js} +2 -2
- package/dist/chunks/{TenantScopeSelector-Cl5DD318.js.map → TenantScopeSelector-B-SRDR2R.js.map} +1 -1
- package/dist/chunks/{TicketDetailPage-BOC9rHu3.js → TicketDetailPage-B4cR3rOC.js} +2 -2
- package/dist/chunks/{TicketDetailPage-BOC9rHu3.js.map → TicketDetailPage-B4cR3rOC.js.map} +1 -1
- package/dist/chunks/{TicketDetailPage-C1UuMxD8.js → TicketDetailPage-xN3wPnFL.js} +2 -2
- package/dist/chunks/{TicketDetailPage-C1UuMxD8.js.map → TicketDetailPage-xN3wPnFL.js.map} +1 -1
- package/dist/chunks/{TicketsPage-BCgHZA-m.js → TicketsPage-CkHgXSxU.js} +2 -2
- package/dist/chunks/{TicketsPage-BCgHZA-m.js.map → TicketsPage-CkHgXSxU.js.map} +1 -1
- package/dist/chunks/{TicketsPage-BjaN4Baq.js → TicketsPage-Dwi2xpMI.js} +2 -2
- package/dist/chunks/{TicketsPage-BjaN4Baq.js.map → TicketsPage-Dwi2xpMI.js.map} +1 -1
- package/dist/chunks/{UserCreateTicketPage-ChQL1mVY.js → UserCreateTicketPage-D2a3EOey.js} +3 -3
- package/dist/chunks/UserCreateTicketPage-D2a3EOey.js.map +1 -0
- package/dist/chunks/{UserCreateTicketPage-DkjsHeV7.js → UserCreateTicketPage-bcbSLglE.js} +48 -48
- package/dist/chunks/UserCreateTicketPage-bcbSLglE.js.map +1 -0
- package/dist/chunks/{UserDashboardPage-BMYrtF3o.js → UserDashboardPage-DwnDRNoW.js} +2 -2
- package/dist/chunks/{UserDashboardPage-BMYrtF3o.js.map → UserDashboardPage-DwnDRNoW.js.map} +1 -1
- package/dist/chunks/{UserDashboardPage-81-3GJAQ.js → UserDashboardPage-ZMsx8LWw.js} +2 -2
- package/dist/chunks/{UserDashboardPage-81-3GJAQ.js.map → UserDashboardPage-ZMsx8LWw.js.map} +1 -1
- package/dist/chunks/{UserDetailPage-BMW8jAWG.js → UserDetailPage-BRFowOFL.js} +2 -2
- package/dist/chunks/{UserDetailPage-BMW8jAWG.js.map → UserDetailPage-BRFowOFL.js.map} +1 -1
- package/dist/chunks/{UserDetailPage-D6oCH2eS.js → UserDetailPage-CZyV-zsg.js} +5 -5
- package/dist/chunks/{UserDetailPage-D6oCH2eS.js.map → UserDetailPage-CZyV-zsg.js.map} +1 -1
- package/dist/chunks/{UserTicketDetailPage-ZH2BDWBt.js → UserTicketDetailPage-BstGk_BP.js} +2 -2
- package/dist/chunks/{UserTicketDetailPage-ZH2BDWBt.js.map → UserTicketDetailPage-BstGk_BP.js.map} +1 -1
- package/dist/chunks/{UserTicketDetailPage-Z_myXXJ0.js → UserTicketDetailPage-DzB_pELt.js} +2 -2
- package/dist/chunks/{UserTicketDetailPage-Z_myXXJ0.js.map → UserTicketDetailPage-DzB_pELt.js.map} +1 -1
- package/dist/chunks/{UsersGroupsPage-B8Ka6uRa.js → UsersGroupsPage-BygTv_kK.js} +3 -3
- package/dist/chunks/{UsersGroupsPage-B8Ka6uRa.js.map → UsersGroupsPage-BygTv_kK.js.map} +1 -1
- package/dist/chunks/{UsersGroupsPage-xJmGib8b.js → UsersGroupsPage-DTmhzttW.js} +2 -2
- package/dist/chunks/{UsersGroupsPage-xJmGib8b.js.map → UsersGroupsPage-DTmhzttW.js.map} +1 -1
- package/dist/chunks/{UsersPage-CQ38akZ_.js → UsersPage-DcwLyMAX.js} +2 -2
- package/dist/chunks/{UsersPage-CQ38akZ_.js.map → UsersPage-DcwLyMAX.js.map} +1 -1
- package/dist/chunks/{UsersPage-Bd2-vl39.js → UsersPage-TIqSHgHj.js} +2 -2
- package/dist/chunks/{UsersPage-Bd2-vl39.js.map → UsersPage-TIqSHgHj.js.map} +1 -1
- package/dist/chunks/{accessRequestsApi-DguOx0q0.js → accessRequestsApi-3FjMFbpa.js} +2 -2
- package/dist/chunks/{accessRequestsApi-DguOx0q0.js.map → accessRequestsApi-3FjMFbpa.js.map} +1 -1
- package/dist/chunks/{accessRequestsApi-COtWo9kC.js → accessRequestsApi-B6dsJzvH.js} +2 -2
- package/dist/chunks/{accessRequestsApi-COtWo9kC.js.map → accessRequestsApi-B6dsJzvH.js.map} +1 -1
- package/dist/chunks/{aiApi-CITiWGYX.js → aiApi-9G4wG_mT.js} +2 -2
- package/dist/chunks/{aiApi-CITiWGYX.js.map → aiApi-9G4wG_mT.js.map} +1 -1
- package/dist/chunks/{aiApi-BmZsud6O.js → aiApi-DXOdsoxr.js} +2 -2
- package/dist/chunks/{aiApi-BmZsud6O.js.map → aiApi-DXOdsoxr.js.map} +1 -1
- package/dist/chunks/{applicationAnalyticsApi-BYoEJzSN.js → applicationAnalyticsApi-D0DEp9Y-.js} +2 -2
- package/dist/chunks/{applicationAnalyticsApi-BYoEJzSN.js.map → applicationAnalyticsApi-D0DEp9Y-.js.map} +1 -1
- package/dist/chunks/{applicationAnalyticsApi-D62lc6z4.js → applicationAnalyticsApi-DhOd6idI.js} +2 -2
- package/dist/chunks/{applicationAnalyticsApi-D62lc6z4.js.map → applicationAnalyticsApi-DhOd6idI.js.map} +1 -1
- package/dist/chunks/auth-Ca2Rn6on.js +2 -0
- package/dist/chunks/auth-Ca2Rn6on.js.map +1 -0
- package/dist/chunks/auth-ClNTDOqm.js +18 -0
- package/dist/chunks/auth-ClNTDOqm.js.map +1 -0
- package/dist/chunks/auth-DECnMZjF.js +18 -0
- package/dist/chunks/auth-DECnMZjF.js.map +1 -0
- package/dist/chunks/auth-DPvxdqy4.js +18 -0
- package/dist/chunks/auth-DPvxdqy4.js.map +1 -0
- package/dist/chunks/auth-HzvnTaOm.js +2 -0
- package/dist/chunks/auth-HzvnTaOm.js.map +1 -0
- package/dist/chunks/auth-M6aNTKCH.js +2 -0
- package/dist/chunks/auth-M6aNTKCH.js.map +1 -0
- package/dist/chunks/auth-UHnAu6_e.js +2 -0
- package/dist/chunks/auth-UHnAu6_e.js.map +1 -0
- package/dist/chunks/auth-YrujJY7m.js +18 -0
- package/dist/chunks/auth-YrujJY7m.js.map +1 -0
- package/dist/chunks/{groupsApi-3CR-_g5b.js → groupsApi-Db8G2lLs.js} +2 -2
- package/dist/chunks/{groupsApi-3CR-_g5b.js.map → groupsApi-Db8G2lLs.js.map} +1 -1
- package/dist/chunks/{groupsApi-BUyBgf_N.js → groupsApi-lbxNsHFv.js} +2 -2
- package/dist/chunks/{groupsApi-BUyBgf_N.js.map → groupsApi-lbxNsHFv.js.map} +1 -1
- package/dist/chunks/{index-IJR_91Yt.js → index-BI2dc1FS.js} +2 -2
- package/dist/chunks/{index-IJR_91Yt.js.map → index-BI2dc1FS.js.map} +1 -1
- package/dist/chunks/{index-DIQ6Jmmq.js → index-Bn8HzILk.js} +4 -4
- package/dist/chunks/{index-DIQ6Jmmq.js.map → index-Bn8HzILk.js.map} +1 -1
- package/dist/chunks/{index-DA5VyW0k.js → index-CN2WRyg1.js} +2249 -2264
- package/dist/chunks/index-CN2WRyg1.js.map +1 -0
- package/dist/chunks/{index-Br2wsGE8.js → index-CTGSmYvs.js} +2 -2
- package/dist/chunks/{index-Br2wsGE8.js.map → index-CTGSmYvs.js.map} +1 -1
- package/dist/chunks/index-CUICSveU.js +2 -0
- package/dist/chunks/index-CUICSveU.js.map +1 -0
- package/dist/chunks/{index-S-X8qFYW.js → index-CgtbaFf5.js} +2 -2
- package/dist/chunks/{index-S-X8qFYW.js.map → index-CgtbaFf5.js.map} +1 -1
- package/dist/chunks/{index-_g82N2nb.js → index-D0HS542b.js} +2 -2
- package/dist/chunks/{index-_g82N2nb.js.map → index-D0HS542b.js.map} +1 -1
- package/dist/chunks/{index-BIqcvvbh.js → index-DEtq-xUL.js} +9 -8
- package/dist/chunks/index-DEtq-xUL.js.map +1 -0
- package/dist/chunks/{index-BOKR3bw6.js → index-DF93KQFR.js} +2 -2
- package/dist/chunks/{index-BOKR3bw6.js.map → index-DF93KQFR.js.map} +1 -1
- package/dist/chunks/{index-CxgEV-rT.js → index-DLekpNSE.js} +2 -2
- package/dist/chunks/{index-CxgEV-rT.js.map → index-DLekpNSE.js.map} +1 -1
- package/dist/chunks/{index-DEOBhXS_.js → index-DUS-tunb.js} +2 -2
- package/dist/chunks/{index-DEOBhXS_.js.map → index-DUS-tunb.js.map} +1 -1
- package/dist/chunks/{index-BMsjMCv9.js → index-DjC1u2hI.js} +3 -3
- package/dist/chunks/{index-BMsjMCv9.js.map → index-DjC1u2hI.js.map} +1 -1
- package/dist/chunks/{index-BxHVPJ-j.js → index-DqbVFB1H.js} +2 -2
- package/dist/chunks/{index-BxHVPJ-j.js.map → index-DqbVFB1H.js.map} +1 -1
- package/dist/chunks/{index-Djy4eIbB.js → index-DwqLhQ8S.js} +2 -2
- package/dist/chunks/{index-Djy4eIbB.js.map → index-DwqLhQ8S.js.map} +1 -1
- package/dist/chunks/{index-C1w97Ejz.js → index-HsAOBno4.js} +2 -2
- package/dist/chunks/{index-C1w97Ejz.js.map → index-HsAOBno4.js.map} +1 -1
- package/dist/chunks/{index-Czk12A3G.js → index-TiWOcC0g.js} +2 -2
- package/dist/chunks/{index-Czk12A3G.js.map → index-TiWOcC0g.js.map} +1 -1
- package/dist/chunks/{index-vXiLh35n.js → index-cAikSVW0.js} +13 -13
- package/dist/chunks/index-cAikSVW0.js.map +1 -0
- package/dist/chunks/{index-CNxx56kE.js → index-xhRXN1Jq.js} +2 -2
- package/dist/chunks/{index-CNxx56kE.js.map → index-xhRXN1Jq.js.map} +1 -1
- package/dist/chunks/{tenantIconMap-COKA97Ug.js → tenantIconMap-CHeS7oLt.js} +2 -2
- package/dist/chunks/{tenantIconMap-COKA97Ug.js.map → tenantIconMap-CHeS7oLt.js.map} +1 -1
- package/dist/chunks/{tenantIconMap-BuSQUUyZ.js → tenantIconMap-__FKj6CN.js} +2 -2
- package/dist/chunks/{tenantIconMap-BuSQUUyZ.js.map → tenantIconMap-__FKj6CN.js.map} +1 -1
- package/dist/chunks/{ticketingApi-DbREwHez.js → ticketingApi-Cj239hYB.js} +2 -2
- package/dist/chunks/{ticketingApi-DbREwHez.js.map → ticketingApi-Cj239hYB.js.map} +1 -1
- package/dist/chunks/{ticketingApi-C6EbupqP.js → ticketingApi-DF4RwD_6.js} +2 -2
- package/dist/chunks/{ticketingApi-C6EbupqP.js.map → ticketingApi-DF4RwD_6.js.map} +1 -1
- package/dist/chunks/{useAccessRequests-vucIb3_w.js → useAccessRequests-CFam8zFR.js} +3 -3
- package/dist/chunks/{useAccessRequests-vucIb3_w.js.map → useAccessRequests-CFam8zFR.js.map} +1 -1
- package/dist/chunks/{useAccessRequests-C0dY6y-4.js → useAccessRequests-CViOUwyF.js} +2 -2
- package/dist/chunks/{useAccessRequests-C0dY6y-4.js.map → useAccessRequests-CViOUwyF.js.map} +1 -1
- package/dist/chunks/{useUserAccessRequests-BBcw1Rk9.js → useUserAccessRequests-B-Cs6NX1.js} +2 -2
- package/dist/chunks/{useUserAccessRequests-BBcw1Rk9.js.map → useUserAccessRequests-B-Cs6NX1.js.map} +1 -1
- package/dist/chunks/{useUserAccessRequests-Cj0nkesW.js → useUserAccessRequests-CslSQeBJ.js} +2 -2
- package/dist/chunks/{useUserAccessRequests-Cj0nkesW.js.map → useUserAccessRequests-CslSQeBJ.js.map} +1 -1
- package/dist/contexts/AuthContext.d.ts.map +1 -1
- package/dist/pages/LoginPage.d.ts.map +1 -1
- package/dist/pages/platform/administration/tenants/TenantDetailPage.d.ts.map +1 -1
- package/dist/pages/platform/support/UserCreateTicketPage.d.ts.map +1 -1
- package/dist/services/api/apiClient.d.ts.map +1 -1
- package/dist/services/support/ticketDraftService.d.ts.map +1 -1
- package/dist/smartstack.cjs +1 -1
- package/dist/smartstack.js +6 -6
- package/dist/utils/permissions.generated.d.ts +288 -0
- package/dist/utils/permissions.generated.d.ts.map +1 -0
- package/dist/utils/uuid.d.ts +6 -0
- package/dist/utils/uuid.d.ts.map +1 -0
- package/package.json +1 -1
- package/dist/chunks/UserCreateTicketPage-ChQL1mVY.js.map +0 -1
- package/dist/chunks/UserCreateTicketPage-DkjsHeV7.js.map +0 -1
- package/dist/chunks/auth-B-hELPDB.js +0 -2
- package/dist/chunks/auth-B-hELPDB.js.map +0 -1
- package/dist/chunks/auth-BYaMuq7D.js +0 -16
- package/dist/chunks/auth-BYaMuq7D.js.map +0 -1
- package/dist/chunks/auth-C5zpZ9k7.js +0 -2
- package/dist/chunks/auth-C5zpZ9k7.js.map +0 -1
- package/dist/chunks/auth-CDpRMVv1.js +0 -16
- package/dist/chunks/auth-CDpRMVv1.js.map +0 -1
- package/dist/chunks/auth-CyPkCta2.js +0 -2
- package/dist/chunks/auth-CyPkCta2.js.map +0 -1
- package/dist/chunks/auth-DL47kvnl.js +0 -2
- package/dist/chunks/auth-DL47kvnl.js.map +0 -1
- package/dist/chunks/auth-Diiv90i1.js +0 -16
- package/dist/chunks/auth-Diiv90i1.js.map +0 -1
- package/dist/chunks/auth-rog9MvUr.js +0 -16
- package/dist/chunks/auth-rog9MvUr.js.map +0 -1
- package/dist/chunks/index-BIqcvvbh.js.map +0 -1
- package/dist/chunks/index-DA5VyW0k.js.map +0 -1
- package/dist/chunks/index-Dht6EQW1.js +0 -2
- package/dist/chunks/index-Dht6EQW1.js.map +0 -1
- package/dist/chunks/index-vXiLh35n.js.map +0 -1
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),l=require("react"),le=require("react-i18next"),n=require("lucide-react"),J=require("./index-vXiLh35n.js"),Q=require("./PermissionPopover-CtYTz7MK.js");function ge({section:s,resources:v,moduleIndex:A,sectionIndex:k,isCollapsed:$,collapsedSections:S,paginatedRoles:b,canEditSystemRoles:O,statusFilters:i,openPopover:h,onToggleCollapse:M,onTogglePermission:P,onCellClick:f,setOpenPopover:y,renderResourceRow:N}){const T=S.has(s.id),m=v.length>0;return e.jsxs(l.Fragment,{children:[N(s,A+k+1,"section",m,T),m&&!T&&v.map((L,I)=>N(L,A+k+I+2,"resource",!1,!1))]},s.id)}function ve({roles:s,resources:v,canEditSystemRoles:A=!1,onTogglePermission:k,getPermissionInheritance:$,rolesPerPage:S,rolePageIndex:b,modulesPerPage:O,modulePageIndex:i,collapsedApps:h,onToggleApp:M,statusFilters:P}){const{t:f}=le.useTranslation("admin"),[y,N]=l.useState(null),[T,m]=l.useState(new Set),[L,I]=l.useState(new Set),D=l.useCallback((t,o)=>{o(c=>{const p=new Set(c);return p.has(t)?p.delete(t):p.add(t),p})},[]),E=l.useCallback(t=>{D(t,m)},[D]),z=l.useCallback(t=>{D(t,I)},[D]),q=l.useMemo(()=>v.filter(t=>t.level==="module").length,[v]),_=l.useMemo(()=>{const t=b*S;return s.slice(t,t+S)},[s,b,S]),B=l.useMemo(()=>Q.groupByApplicationWithSections(v),[v]),r=l.useCallback(()=>{const t=i*O,o=t+O,c={current:0},p=[];for(const w of B){const C=h.has(w.application),g=[];if(!C)for(const R of w.modules)c.current>=t&&c.current<o&&g.push(R),c.current++;p.push({application:w.application,modules:g})}return p},[B,i,O,h]),u=l.useMemo(()=>r(),[r]),F=l.useCallback((t,o)=>{const c=$(t,o);return c.isDirect||c.isInherited},[$]),Z=l.useCallback((t,o)=>Q.calculatePermissionStatus(o,c=>F(t,c)),[F]),V=(t,o)=>{y?.roleId===t&&y?.resourceId===o?N(null):N({roleId:t,resourceId:o})};if(s.length===0||q===0)return e.jsx("div",{className:"text-center py-12 text-[var(--text-secondary)]",children:s.length===0?f("assignments.noRoles"):f("assignments.noResources")});const W=t=>{switch(t){case"resource":return"pl-28";case"section":return"pl-22";default:return"pl-16"}},K=t=>t==="resource"?e.jsx(n.Database,{className:"h-3.5 w-3.5 text-[var(--text-muted)]"}):t==="section"?e.jsx(n.FileText,{className:"h-3.5 w-3.5 text-[var(--text-muted)]"}):e.jsx(n.Box,{className:"h-3.5 w-3.5 text-[var(--text-secondary)]"}),Y=t=>t==="resource"?"text-[var(--text-muted)] italic":t==="section"?"text-[var(--text-secondary)]":"font-medium text-[var(--text-primary)]",ee=l.useCallback((t,o)=>{o==="module"?E(t):o==="section"&&z(t)},[E,z]),ae=(t,o,c,p)=>t?e.jsx("button",{onClick:()=>ee(o,c),className:"p-0.5 hover:bg-[var(--bg-hover)] rounded",children:p?e.jsx(n.ChevronRight,{className:"h-3 w-3 text-[var(--text-muted)]"}):e.jsx(n.ChevronDown,{className:"h-3 w-3 text-[var(--text-muted)]"})}):null,ne=t=>_.map(o=>{const{status:c,grantedCount:p}=Z(o.id,t),w=y?.roleId===o.id&&y?.resourceId===t.id,C=l.createRef(),g=!o.isSystem||A,R=Q.getPermissionCellBackground(c),j=(P?.size??0)>0&&!P?.has(c);return e.jsxs("td",{className:`px-0 py-1 text-center relative ${j?"":R}`,style:{width:"44px",minWidth:"44px",maxWidth:"44px"},children:[e.jsx("button",{ref:C,type:"button",onClick:()=>g&&!j&&V(o.id,t.id),disabled:!g||j,className:`w-full h-full min-h-[36px] flex items-center justify-center rounded transition-colors ${j?"opacity-10 cursor-default":g?"hover:opacity-80":"cursor-not-allowed opacity-50"} ${w?"ring-2 ring-[var(--color-accent-500)]":""}`,title:j?void 0:g?`${o.name} - ${t.moduleLabel}: ${p}/${t.permissions.length}`:`${o.name} - ${f("assignments.systemRoleReadOnly")}`,children:e.jsx(Q.PermissionStatusIndicator,{status:c,grantedCount:p,totalCount:t.permissions.length})}),w&&g&&!j&&e.jsx(Q.PermissionPopover,{mode:"editable",role:o,resource:t,onTogglePermission:H=>k(o.id,H),onClose:()=>N(null),getPermissionInheritance:$})]},`${o.id}-${t.id}`)}),se=(t,o,c,p=!1,w=!1)=>{const C=W(c),g=o%2===0?"item-light":"item-medium";return e.jsxs("tr",{className:`hover:bg-[var(--bg-hover)] ${g}`,children:[e.jsx("td",{className:`sticky left-0 z-10 ${g} px-3 py-2 ${C}`,style:{width:"280px",minWidth:"280px",maxWidth:"280px"},children:e.jsxs("div",{className:"flex items-center gap-2",children:[ae(p,t.id,c,w),K(c),e.jsx("span",{className:`text-sm ${Y(c)}`,children:t.moduleLabel}),e.jsxs("span",{className:"text-xs text-[var(--text-muted)]",children:["(",t.permissions.length,")"]})]})}),ne(t)]},t.id)};return e.jsx("div",{className:"overflow-x-auto overflow-y-visible",children:e.jsxs("table",{className:"border-collapse",style:{width:"auto"},children:[e.jsx("thead",{className:"item-medium border-b border-[var(--item-color-border)]",children:e.jsxs("tr",{children:[e.jsx("th",{scope:"col",className:"sticky left-0 z-20 item-medium px-3 text-left text-xs font-medium text-[var(--text-secondary)] uppercase tracking-wider",style:{width:"280px",minWidth:"280px",maxWidth:"280px",height:"180px",verticalAlign:"bottom",paddingBottom:"12px"},children:f("assignments.resource")}),_.map(t=>e.jsx("th",{scope:"col",className:"relative overflow-visible",style:{width:"44px",minWidth:"44px",maxWidth:"44px",height:"180px",padding:0,verticalAlign:"bottom"},children:e.jsx("div",{className:"absolute bottom-2 left-1/2",style:{transform:"translateX(-6px) rotate(-55deg)",transformOrigin:"bottom left",width:"160px"},children:e.jsxs("div",{className:"flex items-center gap-1",children:[t.isSystem&&e.jsx(n.Lock,{className:"h-3 w-3 flex-shrink-0 text-[var(--warning-dot)]"}),e.jsx("span",{className:"text-[10px] font-medium text-[var(--text-primary)] whitespace-nowrap",title:t.name,children:t.name})]})})},t.id))]})}),e.jsx("tbody",{className:"divide-y divide-[var(--item-color-border)]",children:u.map(t=>{const o=h.has(t.application),c=_.length;return e.jsxs(l.Fragment,{children:[e.jsxs("tr",{className:"bg-[var(--color-accent-900)]/30 dark:bg-[var(--color-accent-900)]/50",children:[e.jsx("td",{className:"sticky left-0 z-10 px-3 py-3 bg-[var(--color-accent-900)]/30 dark:bg-[var(--color-accent-900)]/50",style:{width:"280px",minWidth:"280px",maxWidth:"280px"},children:e.jsxs("button",{onClick:()=>M(t.application),className:"flex items-center gap-3 w-full text-left hover:opacity-80",children:[o?e.jsx(n.ChevronRight,{className:"h-5 w-5 text-[var(--color-accent-400)]"}):e.jsx(n.ChevronDown,{className:"h-5 w-5 text-[var(--color-accent-400)]"}),e.jsx(n.FolderOpen,{className:"h-5 w-5 text-[var(--color-accent-400)]"}),e.jsx("span",{className:"text-sm font-bold text-[var(--color-accent-300)] uppercase tracking-wider",children:t.application}),e.jsx("span",{className:"text-xs text-[var(--color-accent-400)] ml-auto",children:f("assignments.moduleCount",{count:t.modules.length})})]})}),e.jsx("td",{colSpan:c,className:"px-0 py-3"})]}),!o&&t.modules.map((p,w)=>{const{module:C,sections:g}=p,R=g.length>0,j=T.has(C.id);return e.jsxs(l.Fragment,{children:[se(C,w,"module",R,j),R&&!j&&g.map((H,G)=>{const{section:te,resources:U}=H;return e.jsx(ge,{section:te,resources:U,moduleIndex:w,sectionIndex:G,isCollapsed:j,collapsedSections:L,paginatedRoles:_,canEditSystemRoles:A,statusFilters:P,openPopover:y,onToggleCollapse:ee,onTogglePermission:k,onCellClick:V,setOpenPopover:N,renderResourceRow:se},te.id)})]},C.id)})]},t.application)})})]})})}function be({filters:s,roles:v,categories:A,applications:k,modules:$,hasChanges:S,onFilterChange:b,onReset:O}){const{t:i}=le.useTranslation("admin"),[h,M]=l.useState(!1),[P,f]=l.useState(""),y=l.useRef(null),N=l.useRef(null),T=l.useMemo(()=>{let r=v;if(s.categoryFilter!=="all"&&(r=r.filter(u=>u.category===s.categoryFilter)),P.trim()){const u=P.toLowerCase();r=r.filter(F=>F.name.toLowerCase().includes(u)||F.shortName?.toLowerCase().includes(u))}return r},[v,s.categoryFilter,P]);l.useEffect(()=>{h&&N.current&&setTimeout(()=>N.current?.focus(),50)},[h]);const m=r=>{M(r),r||f("")},L=$.filter(r=>!(s.applicationFilter!=="all"&&r.app!==s.applicationFilter));l.useEffect(()=>{function r(u){y.current&&!y.current.contains(u.target)&&m(!1)}return document.addEventListener("mousedown",r),()=>document.removeEventListener("mousedown",r)},[]);const I=r=>{const u=s.selectedRoleIds.includes(r)?s.selectedRoleIds.filter(F=>F!==r):[...s.selectedRoleIds,r];b({selectedRoleIds:u})},D=()=>{b({selectedRoleIds:T.map(r=>r.id)})},E=()=>{b({selectedRoleIds:[]})},z=r=>{b({applicationFilter:r,moduleFilter:"all"})},q=r=>{b({categoryFilter:r,selectedRoleIds:[]})},_=s.selectedRoleIds.length>0||s.categoryFilter!=="all"||s.applicationFilter!=="all"||s.moduleFilter!=="all",B=s.selectedRoleIds.length===0?i("permissions.filters.allRoles"):s.selectedRoleIds.length===1?v.find(r=>r.id===s.selectedRoleIds[0])?.name||i("assignments.oneRoleSelected"):`${s.selectedRoleIds.length} ${i("permissions.filters.rolesSelected")}`;return e.jsxs("div",{className:"bg-[var(--bg-card)] border border-[var(--item-color-border)] rounded-[var(--radius-card)] p-4 space-y-4",children:[e.jsxs("div",{className:"flex items-center gap-2 text-sm font-medium text-[var(--text-secondary)]",children:[e.jsx(n.Filter,{className:"h-4 w-4"}),e.jsx("span",{children:i("assignments.filters")})]}),e.jsxs("div",{className:"flex flex-wrap gap-4",children:[e.jsxs("div",{className:"min-w-[160px] flex-1",children:[e.jsx("label",{htmlFor:"category-filter",className:"block text-sm font-medium text-[var(--text-secondary)] mb-1",children:i("permissions.filters.selectCategory")}),e.jsxs("select",{id:"category-filter",value:s.categoryFilter,onChange:r=>q(r.target.value),className:"block w-full px-3 py-2 border border-[var(--border-color)] rounded-[var(--radius-input)] leading-5 bg-[var(--bg-primary)] text-[var(--text-primary)] focus:outline-none focus:ring-2 focus:ring-[var(--color-accent-500)] focus:border-[var(--color-accent-500)] sm:text-sm",children:[e.jsx("option",{value:"all",children:i("permissions.filters.allCategories")}),A.map(r=>e.jsx("option",{value:r,children:i(`roles.categories.${r.toLowerCase()}`)},r))]})]}),e.jsxs("div",{ref:y,className:"relative min-w-[200px] flex-[2]",children:[e.jsx("label",{className:"block text-sm font-medium text-[var(--text-secondary)] mb-1",children:i("permissions.filters.selectRoles")}),e.jsxs("button",{type:"button",onClick:()=>m(!h),className:"w-full flex items-center justify-between px-3 py-2 border border-[var(--border-color)] rounded-[var(--radius-input)] bg-[var(--bg-primary)] text-[var(--text-primary)] hover:bg-[var(--bg-secondary)] focus:outline-none focus:ring-2 focus:ring-[var(--color-accent-500)] focus:border-[var(--color-accent-500)] text-sm",children:[e.jsx("span",{className:"truncate",children:B}),e.jsx(n.ChevronDown,{className:`h-4 w-4 text-[var(--text-muted)] transition-transform ${h?"rotate-180":""}`})]}),h&&e.jsxs("div",{className:"absolute z-50 mt-1 w-full bg-[var(--bg-card)] border border-[var(--border-color)] rounded-[var(--radius-card)] shadow-lg",children:[e.jsx("div",{className:"px-3 py-2 border-b border-[var(--border-color)]",children:e.jsxs("div",{className:"relative",children:[e.jsx("div",{className:"absolute inset-y-0 left-0 pl-2 flex items-center pointer-events-none",children:e.jsx(n.Search,{className:"h-4 w-4 text-[var(--text-muted)]"})}),e.jsx("input",{ref:N,type:"text",value:P,onChange:r=>f(r.target.value),placeholder:i("permissions.filters.searchRoles"),className:"block w-full pl-8 pr-3 py-1.5 text-sm border border-[var(--border-color)] rounded-[var(--radius-input)] bg-[var(--bg-primary)] text-[var(--text-primary)] placeholder-[var(--text-muted)] focus:outline-none focus:ring-1 focus:ring-[var(--color-accent-500)] focus:border-[var(--color-accent-500)]"})]})}),e.jsxs("div",{className:"flex items-center justify-between px-3 py-2 border-b border-[var(--border-color)] bg-[var(--bg-secondary)]",children:[e.jsx("button",{type:"button",onClick:D,className:"text-xs text-[var(--color-accent-600)] hover:text-[var(--color-accent-700)]",children:i("permissions.filters.selectAll")}),e.jsx("button",{type:"button",onClick:E,className:"text-xs text-[var(--text-muted)] hover:text-[var(--text-secondary)]",children:i("permissions.filters.clearSelection")})]}),e.jsx("div",{className:"max-h-64 overflow-auto",children:T.length===0?e.jsx("div",{className:"px-3 py-4 text-sm text-[var(--text-muted)] text-center",children:i("permissions.filters.noRolesFound")}):T.map(r=>e.jsxs("button",{type:"button",onClick:()=>I(r.id),className:"w-full flex items-center gap-3 px-3 py-2 hover:bg-[var(--bg-secondary)] cursor-pointer text-left",children:[e.jsx("div",{className:`w-4 h-4 rounded border flex items-center justify-center flex-shrink-0 ${s.selectedRoleIds.includes(r.id)?"bg-[var(--color-accent-600)] border-[var(--color-accent-600)]":"border-[var(--border-color)] bg-[var(--bg-primary)]"}`,children:s.selectedRoleIds.includes(r.id)&&e.jsx(n.Check,{className:"h-3 w-3 text-white"})}),e.jsx("span",{className:"text-sm text-[var(--text-primary)] truncate",children:r.name}),r.isSystem&&e.jsx("span",{className:"text-xs px-1.5 py-0.5 rounded bg-[var(--bg-tertiary)] text-[var(--text-muted)] flex-shrink-0",children:i("assignments.systemRole")})]},r.id))})]})]}),e.jsxs("div",{className:"min-w-[160px] flex-1",children:[e.jsx("label",{htmlFor:"application-filter",className:"block text-sm font-medium text-[var(--text-secondary)] mb-1",children:i("assignments.filterByApplication")}),e.jsxs("select",{id:"application-filter",value:s.applicationFilter,onChange:r=>z(r.target.value),disabled:k.length===0,className:"block w-full px-3 py-2 border border-[var(--border-color)] rounded-[var(--radius-input)] leading-5 bg-[var(--bg-primary)] text-[var(--text-primary)] focus:outline-none focus:ring-2 focus:ring-[var(--color-accent-500)] focus:border-[var(--color-accent-500)] sm:text-sm disabled:opacity-50 disabled:cursor-not-allowed",children:[e.jsx("option",{value:"all",children:i("assignments.allApplications")}),k.map(r=>e.jsx("option",{value:r.app,children:r.label},r.app))]})]}),e.jsxs("div",{className:"min-w-[160px] flex-1",children:[e.jsx("label",{htmlFor:"module-filter",className:"block text-sm font-medium text-[var(--text-secondary)] mb-1",children:i("permissions.filters.selectModule")}),e.jsxs("select",{id:"module-filter",value:s.moduleFilter,onChange:r=>b({moduleFilter:r.target.value}),disabled:L.length===0,className:"block w-full px-3 py-2 border border-[var(--border-color)] rounded-[var(--radius-input)] leading-5 bg-[var(--bg-primary)] text-[var(--text-primary)] focus:outline-none focus:ring-2 focus:ring-[var(--color-accent-500)] focus:border-[var(--color-accent-500)] sm:text-sm disabled:opacity-50 disabled:cursor-not-allowed",children:[e.jsx("option",{value:"all",children:i("permissions.filters.allModules")}),L.map(r=>e.jsx("option",{value:r.module,children:r.label},`${r.app}:${r.module}`))]})]}),e.jsx("div",{className:"flex items-end flex-shrink-0",children:_&&e.jsxs("button",{type:"button",onClick:O,className:"w-full inline-flex items-center justify-center gap-2 px-3 py-2 text-sm text-[var(--text-secondary)] hover:text-[var(--text-primary)] border border-[var(--border-color)] rounded-[var(--radius-input)] hover:bg-[var(--bg-secondary)] transition-colors",children:[e.jsx(n.RotateCcw,{className:"h-4 w-4"}),i("assignments.clearFilters")]})})]}),s.selectedRoleIds.length>0&&e.jsx("div",{className:"flex flex-wrap gap-2",children:s.selectedRoleIds.map(r=>{const u=v.find(F=>F.id===r);return u?e.jsxs("span",{className:"inline-flex items-center gap-1 px-2 py-1 text-xs rounded-full bg-[var(--color-accent-100)] text-[var(--color-accent-700)] dark:bg-[var(--color-accent-900)] dark:text-[var(--color-accent-300)]",children:[u.name,e.jsx("button",{type:"button",onClick:()=>I(r),className:"hover:text-[var(--color-accent-900)] dark:hover:text-[var(--color-accent-100)]",children:e.jsx(n.X,{className:"h-3 w-3"})})]},r):null})}),S&&e.jsx("div",{className:"flex items-center justify-end pt-2 border-t border-[var(--border-color)]",children:e.jsx("div",{className:"text-sm text-[var(--warning-text)]",children:i("assignments.unsavedChanges")})})]})}const ie={viewer:{nameKey:"assignments.templates.viewer.name",descriptionKey:"assignments.templates.viewer.description",icon:n.Eye,color:"blue",permissions:["*.read"]},member:{nameKey:"assignments.templates.member.name",descriptionKey:"assignments.templates.member.description",icon:n.User,color:"green",permissions:["*.read","*.create"]},contributor:{nameKey:"assignments.templates.contributor.name",descriptionKey:"assignments.templates.contributor.description",icon:n.Pencil,color:"orange",permissions:["*.read","*.create","*.update"]},admin:{nameKey:"assignments.templates.admin.name",descriptionKey:"assignments.templates.admin.description",icon:n.ShieldCheck,color:"red",permissions:["*.*"]}},fe=[10,25,50],je=[10,15,20,25];function ye(){const{t:s}=le.useTranslation("admin"),{user:v}=J.useAuth(),[A,k]=l.useState(!1),[$,S]=l.useState(null),[b,O]=l.useState(25),[i,h]=l.useState(1),[M,P]=l.useState(10),[f,y]=l.useState(0),[N,T]=l.useState(new Set),[m,L]=l.useState(new Set),[I,D]=l.useState(!1),E=a=>{L(x=>{const d=new Set(x);return d.has(a)?d.delete(a):d.add(a),d}),h(1),y(0)},z=a=>{T(x=>{const d=new Set(x);return d.has(a)?d.delete(a):d.add(a),d})},q=l.useMemo(()=>v?J.hasFullAccess(v.permissions):!1,[v]),{loading:_,error:B,saveError:r,saving:u,roles:F,assignments:Z,filters:V,filteredRoles:W,filteredResources:K,hasChanges:Y,applications:ee,modules:ae,categories:ne,togglePermission:se,updateFilters:t,reloadData:o,resetChanges:c,clearSaveError:p,getPermissionInheritance:w}=J.usePermissionMatrix({canEditSystemRoles:q}),C=l.useCallback((a,x)=>{const d=x.permissions.filter(he=>{const oe=w(a,he.id);return oe.isDirect||oe.isInherited}),X=d.length,pe=x.totalPermissions;return X===0?"none":X===pe?"all":X===1&&d[0]?.action==="read"?"read-only":"some"},[w]),g=l.useMemo(()=>K.filter(a=>a.level==="module"),[K]),R=l.useMemo(()=>m.size===0?W:W.filter(a=>{for(const x of g){const d=C(a.id,x);if(m.has(d))return!0}return!1}),[W,g,m,C]),j=l.useMemo(()=>m.size===0?K:K.filter(a=>{if(a.level!=="module")return!0;for(const x of W){const d=C(x.id,a);if(m.has(d))return!0}return!1}),[K,W,m,C]),H=l.useMemo(()=>{let a=0;return Object.values(Z).forEach(x=>{a+=x.size}),a},[Z]),G=l.useMemo(()=>j.filter(a=>!(a.level!=="module"||N.has(a.applicationLabel))).length,[j,N]),te=l.useMemo(()=>j.filter(a=>a.level==="module").length,[j]),U=Math.ceil(G/b),ce=a=>{h(1),t(a)},de=a=>{O(a),h(1)},re=Math.ceil(R.length/M),me=a=>{P(a),y(0)},xe=async a=>{const x=ie[a];if(!x)return;const d=prompt(s("assignments.enterRoleName"),s(x.nameKey));if(d)try{S(null),await J.adminApi.roles.create({name:d,description:s(x.descriptionKey),permissionIds:[]}),k(!1),await o()}catch(X){S(X instanceof Error?X.message:"Failed to create role from template")}},ue=()=>{h(1),t({selectedRoleIds:[],resourceSearch:"",applicationFilter:"all",moduleFilter:"all"})};return _?e.jsx("div",{className:"flex items-center justify-center min-h-[400px]",children:e.jsxs("div",{className:"text-center",children:[e.jsx(n.Loader2,{className:"h-8 w-8 animate-spin text-[var(--color-accent-500)] mx-auto mb-4"}),e.jsx("p",{className:"text-[var(--text-secondary)]",children:s("assignments.loading")})]})}):B?e.jsx("div",{className:"p-6",children:e.jsx("div",{className:"rounded-[var(--radius-card)] bg-[var(--error-bg)] border border-[var(--error-border)] p-4",children:e.jsxs("div",{className:"flex",children:[e.jsx(n.AlertCircle,{className:"h-5 w-5 text-[var(--error-text)]"}),e.jsxs("div",{className:"ml-3",children:[e.jsx("h3",{className:"text-sm font-medium text-[var(--error-text)]",children:s("common.error")}),e.jsx("div",{className:"mt-2 text-sm text-[var(--error-text)] opacity-80",children:e.jsx("p",{children:B})})]})]})})}):e.jsxs("div",{className:"p-6 space-y-4",children:[e.jsx(J.Breadcrumb,{items:[{label:s("header.title"),href:"/administration"},{label:s("assignments.title","Assignments")}]}),e.jsxs("div",{className:"flex flex-wrap items-center justify-between gap-3",children:[e.jsxs("div",{children:[e.jsx("h1",{className:"text-2xl font-bold text-[var(--text-primary)]",children:s("assignments.title")}),e.jsx("p",{className:"mt-1 text-sm text-[var(--text-secondary)]",children:s("assignments.subtitle")})]}),e.jsx("div",{className:"flex items-center gap-3 flex-shrink-0",children:e.jsxs("button",{type:"button",onClick:()=>k(!0),className:"inline-flex items-center px-4 py-2 border border-[var(--border-color)] text-sm font-medium rounded-[var(--radius-button)] text-[var(--text-secondary)] bg-[var(--bg-card)] hover:bg-[var(--bg-hover)] transition-colors",children:[e.jsx(n.Sparkles,{className:"h-4 w-4 mr-2"}),s("assignments.createFromTemplate")]})})]}),r&&e.jsx("div",{className:"rounded-[var(--radius-card)] bg-[var(--error-bg)] p-3 border border-[var(--error-border)]",children:e.jsxs("div",{className:"flex items-center",children:[e.jsx(n.AlertCircle,{className:"h-4 w-4 text-[var(--error-text)]"}),e.jsx("p",{className:"ml-2 text-sm text-[var(--error-text)]",children:r}),e.jsx("button",{type:"button",onClick:p,className:"ml-auto text-sm text-[var(--error-text)] hover:opacity-80 font-medium",children:s("common.dismiss")})]})}),(Y||u)&&e.jsx("div",{className:"rounded-[var(--radius-card)] bg-[var(--warning-bg)] p-3 border border-[var(--warning-border)]",children:e.jsxs("div",{className:"flex items-center",children:[u?e.jsx(n.Loader2,{className:"h-4 w-4 text-[var(--warning-dot)] animate-spin"}):e.jsx(n.Info,{className:"h-4 w-4 text-[var(--warning-dot)]"}),e.jsx("p",{className:"ml-2 text-sm text-[var(--warning-text)]",children:s(u?"assignments.saving":"assignments.autoSaveActive")}),!u&&e.jsx("button",{type:"button",onClick:c,className:"ml-auto text-sm text-[var(--warning-text)] hover:opacity-80 font-medium",children:s("assignments.discardChanges")})]})}),e.jsx(be,{filters:V,roles:F,categories:ne,applications:ee,modules:ae,hasChanges:Y,onFilterChange:ce,onReset:ue}),e.jsxs("div",{className:"flex flex-wrap items-center justify-between gap-3 py-2",children:[e.jsxs("div",{className:"flex flex-wrap items-center gap-4",children:[e.jsxs("div",{className:"flex flex-wrap items-center gap-3",children:[e.jsxs("span",{className:"px-2.5 py-1 text-xs font-semibold rounded-full bg-[var(--color-accent-100)] text-[var(--color-accent-700)] dark:bg-[var(--color-accent-900)] dark:text-[var(--color-accent-300)]",children:[R.length," ",s("assignments.roles")]}),e.jsxs("span",{className:"px-2.5 py-1 text-xs font-semibold rounded-full bg-[var(--bg-tertiary)] text-[var(--text-secondary)]",children:[G,"/",te," ",s("assignments.modules")]}),e.jsxs("span",{className:"px-2.5 py-1 text-xs font-semibold rounded-full bg-[var(--success-bg)] text-[var(--success-text)] border border-[var(--success-border)]",children:[H," ",s("assignments.permissionsAssigned")]})]}),e.jsxs("div",{className:"flex items-center gap-2 text-sm text-[var(--text-secondary)] border-l border-[var(--border-color)] pl-4",children:[e.jsxs("span",{children:[s("assignments.rolesPerPage"),":"]}),e.jsx("select",{value:M,onChange:a=>me(Number(a.target.value)),className:"px-2 py-1 text-sm bg-[var(--bg-secondary)] border border-[var(--border-color)] rounded text-[var(--text-primary)] focus:outline-none focus:ring-1 focus:ring-[var(--color-accent-500)]",children:je.map(a=>e.jsx("option",{value:a,children:a},a))}),e.jsxs("span",{className:"text-[var(--text-muted)]",children:[f*M+1,"-",Math.min((f+1)*M,R.length)," / ",R.length]}),re>1&&e.jsxs("div",{className:"flex items-center gap-1",children:[e.jsx("button",{onClick:()=>y(a=>Math.max(0,a-1)),disabled:f===0,className:"p-1 rounded border border-[var(--border-color)] bg-[var(--bg-secondary)] hover:bg-[var(--bg-hover)] disabled:opacity-30 disabled:cursor-not-allowed transition-colors",children:e.jsx(n.ChevronLeft,{className:"h-3.5 w-3.5"})}),e.jsxs("span",{className:"text-xs min-w-[50px] text-center",children:[f+1," / ",re]}),e.jsx("button",{onClick:()=>y(a=>Math.min(re-1,a+1)),disabled:f>=re-1,className:"p-1 rounded border border-[var(--border-color)] bg-[var(--bg-secondary)] hover:bg-[var(--bg-hover)] disabled:opacity-30 disabled:cursor-not-allowed transition-colors",children:e.jsx(n.ChevronRight,{className:"h-3.5 w-3.5"})})]})]})]}),e.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[e.jsxs("button",{onClick:()=>E("none"),className:`inline-flex items-center gap-1.5 px-2.5 py-1 text-xs rounded-full border transition-colors cursor-pointer ${m.has("none")?"bg-red-500/30 border-red-500 text-red-700 dark:text-red-300":"bg-red-500/10 border-red-500/30 text-red-600 dark:text-red-400 hover:bg-red-500/20 hover:border-red-500"}`,children:[e.jsx(n.Ban,{className:"h-3.5 w-3.5"}),s("assignments.none")]}),e.jsxs("button",{onClick:()=>E("read-only"),className:`inline-flex items-center gap-1.5 px-2.5 py-1 text-xs rounded-full border transition-colors cursor-pointer ${m.has("read-only")?"bg-sky-500/30 border-sky-500 text-sky-700 dark:text-sky-300":"bg-sky-500/10 border-sky-500/30 text-sky-600 dark:text-sky-400 hover:bg-sky-500/20 hover:border-sky-500"}`,children:[e.jsx(n.Eye,{className:"h-3.5 w-3.5"}),s("assignments.readOnly")]}),e.jsxs("button",{onClick:()=>E("some"),className:`inline-flex items-center gap-1.5 px-2.5 py-1 text-xs rounded-full border transition-colors cursor-pointer ${m.has("some")?"bg-amber-500/30 border-amber-500 text-amber-700 dark:text-amber-300":"bg-amber-500/10 border-amber-500/30 text-amber-600 dark:text-amber-400 hover:bg-amber-500/20 hover:border-amber-500"}`,children:[e.jsx(n.Star,{className:"h-3.5 w-3.5"}),s("assignments.partial")]}),e.jsxs("button",{onClick:()=>E("all"),className:`inline-flex items-center gap-1.5 px-2.5 py-1 text-xs rounded-full border transition-colors cursor-pointer ${m.has("all")?"bg-emerald-500/30 border-emerald-500 text-emerald-700 dark:text-emerald-300":"bg-emerald-500/10 border-emerald-500/30 text-emerald-600 dark:text-emerald-400 hover:bg-emerald-500/20 hover:border-emerald-500"}`,children:[e.jsx(n.Check,{className:"h-3.5 w-3.5"}),s("assignments.complete")]}),m.size>0&&e.jsx("button",{onClick:()=>L(new Set),className:"text-xs text-[var(--color-accent-500)] hover:text-[var(--color-accent-600)] underline ml-2",children:s("assignments.clearFilters")})]})]}),e.jsxs("div",{className:"bg-[var(--bg-card)] border border-[var(--item-color-border)] rounded-[var(--radius-card)] overflow-hidden",children:[e.jsxs("button",{type:"button",onClick:()=>D(!I),className:"w-full flex items-center justify-between px-4 py-2.5 text-sm font-medium text-[var(--text-secondary)] hover:bg-[var(--bg-hover)] transition-colors",children:[e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(n.BookOpen,{className:"h-4 w-4 text-[var(--color-accent-500)]"}),e.jsx("span",{children:s("assignments.guide.title")})]}),I?e.jsx(n.ChevronUp,{className:"h-4 w-4 text-[var(--text-muted)]"}):e.jsx(n.ChevronDown,{className:"h-4 w-4 text-[var(--text-muted)]"})]}),I&&e.jsx("div",{className:"px-4 pb-4 border-t border-[var(--item-color-border)]",children:e.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-4 pt-3",children:[e.jsxs("div",{children:[e.jsx("h4",{className:"text-xs font-semibold text-[var(--text-primary)] uppercase tracking-wider mb-2",children:s("assignments.guide.colorLegendTitle")}),e.jsxs("div",{className:"space-y-1.5",children:[e.jsxs("div",{className:"flex items-center gap-2 text-xs",children:[e.jsx("span",{className:"inline-flex items-center gap-1 px-2 py-0.5 rounded-full bg-red-500/10 border border-red-500/20 text-red-600 dark:text-red-400",children:e.jsx(n.Ban,{className:"h-3 w-3"})}),e.jsx("span",{className:"text-[var(--text-secondary)]",children:s("assignments.guide.noneDesc")})]}),e.jsxs("div",{className:"flex items-center gap-2 text-xs",children:[e.jsx("span",{className:"inline-flex items-center gap-1 px-2 py-0.5 rounded-full bg-sky-500/20 border border-sky-500/30 text-sky-700 dark:text-sky-300",children:e.jsx(n.Eye,{className:"h-3 w-3"})}),e.jsx("span",{className:"text-[var(--text-secondary)]",children:s("assignments.guide.readOnlyDesc")})]}),e.jsxs("div",{className:"flex items-center gap-2 text-xs",children:[e.jsx("span",{className:"inline-flex items-center gap-1 px-2 py-0.5 rounded-full bg-amber-500/20 border border-amber-500/30 text-amber-700 dark:text-amber-300",children:e.jsx(n.Star,{className:"h-3 w-3"})}),e.jsx("span",{className:"text-[var(--text-secondary)]",children:s("assignments.guide.partialDesc")})]}),e.jsxs("div",{className:"flex items-center gap-2 text-xs",children:[e.jsx("span",{className:"inline-flex items-center gap-1 px-2 py-0.5 rounded-full bg-emerald-500/20 border border-emerald-500/30 text-emerald-700 dark:text-emerald-300",children:e.jsx(n.Check,{className:"h-3 w-3"})}),e.jsx("span",{className:"text-[var(--text-secondary)]",children:s("assignments.guide.completeDesc")})]})]})]}),e.jsxs("div",{children:[e.jsx("h4",{className:"text-xs font-semibold text-[var(--text-primary)] uppercase tracking-wider mb-2",children:s("assignments.guide.howToUseTitle")}),e.jsxs("ul",{className:"space-y-1.5 text-xs text-[var(--text-secondary)]",children:[e.jsxs("li",{className:"flex items-start gap-2",children:[e.jsx("span",{className:"text-[var(--color-accent-500)] mt-0.5",children:"•"}),s("assignments.guide.clickCell")]}),e.jsxs("li",{className:"flex items-start gap-2",children:[e.jsx(n.Lock,{className:"h-3 w-3 flex-shrink-0 mt-0.5 text-[var(--warning-dot)]"}),s("assignments.guide.systemRoles")]}),e.jsxs("li",{className:"flex items-start gap-2",children:[e.jsx("span",{className:"text-[var(--color-accent-500)] mt-0.5",children:"•"}),s("assignments.guide.inheritance")]}),e.jsxs("li",{className:"flex items-start gap-2",children:[e.jsx("span",{className:"text-[var(--color-accent-500)] mt-0.5",children:"•"}),s("assignments.guide.autoSave")]}),e.jsxs("li",{className:"flex items-start gap-2",children:[e.jsx("span",{className:"text-[var(--color-accent-500)] mt-0.5",children:"•"}),s("assignments.guide.filterButtons")]})]})]})]})})]}),e.jsx("div",{className:"bg-[var(--bg-card)] shadow-[var(--shadow-md)] rounded-[var(--radius-card)] border border-[var(--item-color-border)]",children:e.jsx(ve,{roles:R,resources:j,assignments:Z,canEditSystemRoles:q,onTogglePermission:se,getPermissionInheritance:w,rolesPerPage:M,rolePageIndex:f,modulesPerPage:b,modulePageIndex:i-1,collapsedApps:N,onToggleApp:z,statusFilters:m})}),e.jsx("div",{className:"py-3 px-4 bg-[var(--bg-card)] rounded-[var(--radius-card)] border border-[var(--item-color-border)]",children:e.jsxs("div",{className:"flex items-center gap-3 text-sm text-[var(--text-secondary)]",children:[e.jsxs("span",{children:[s("assignments.itemsPerPage"),":"]}),e.jsx("select",{value:b,onChange:a=>de(Number(a.target.value)),className:"px-2 py-1 text-sm bg-[var(--bg-secondary)] border border-[var(--border-color)] rounded text-[var(--text-primary)] focus:outline-none focus:ring-1 focus:ring-[var(--color-accent-500)]",children:fe.map(a=>e.jsx("option",{value:a,children:a},a))}),e.jsxs("span",{className:"text-[var(--text-muted)]",children:[(i-1)*b+1,"-",Math.min(i*b,G)," / ",G]}),U>1&&e.jsxs("div",{className:"flex items-center gap-1",children:[e.jsx("button",{onClick:()=>h(a=>Math.max(1,a-1)),disabled:i===1,className:"p-1.5 rounded border border-[var(--border-color)] bg-[var(--bg-secondary)] hover:bg-[var(--bg-hover)] disabled:opacity-30 disabled:cursor-not-allowed transition-colors",children:e.jsx(n.ChevronLeft,{className:"h-4 w-4"})}),e.jsxs("span",{className:"text-sm min-w-[60px] text-center",children:[i," / ",U]}),e.jsx("button",{onClick:()=>h(a=>Math.min(U,a+1)),disabled:i>=U,className:"p-1.5 rounded border border-[var(--border-color)] bg-[var(--bg-secondary)] hover:bg-[var(--bg-hover)] disabled:opacity-30 disabled:cursor-not-allowed transition-colors",children:e.jsx(n.ChevronRight,{className:"h-4 w-4"})})]})]})}),A&&e.jsx("div",{className:"fixed inset-0 z-50 overflow-y-auto",children:e.jsxs("div",{className:"flex items-center justify-center min-h-screen px-4 pt-4 pb-20 text-center sm:p-0",children:[e.jsx("button",{type:"button",className:"fixed inset-0 bg-black/50 transition-opacity",onClick:()=>k(!1),"aria-label":"Close modal"}),e.jsxs("div",{className:"inline-block align-bottom bg-[var(--bg-card)] rounded-[var(--radius-modal)] px-4 pt-5 pb-4 text-left overflow-hidden shadow-xl transform transition-all sm:my-8 sm:align-middle sm:max-w-2xl sm:w-full sm:p-6 border border-[var(--border-color)]",children:[e.jsxs("div",{className:"mb-4",children:[e.jsx("h3",{className:"text-lg font-medium text-[var(--text-primary)]",children:s("assignments.createFromTemplate")}),e.jsx("p",{className:"mt-1 text-sm text-[var(--text-secondary)]",children:s("assignments.templateDescription")})]}),$&&e.jsx("div",{className:"mb-4 rounded-[var(--radius-card)] bg-[var(--error-bg)] border border-[var(--error-border)] p-3",children:e.jsxs("div",{className:"flex",children:[e.jsx(n.AlertCircle,{className:"h-5 w-5 text-[var(--error-text)]"}),e.jsx("div",{className:"ml-3",children:e.jsx("p",{className:"text-sm text-[var(--error-text)]",children:$})})]})}),e.jsx("div",{className:"grid grid-cols-1 sm:grid-cols-2 gap-4",children:Object.entries(ie).map(([a,x])=>{const d=x.icon;return e.jsx("button",{onClick:()=>xe(a),className:"relative p-4 rounded-[var(--radius-card)] border-2 text-left transition-all hover:shadow-lg hover:scale-105 border-[var(--border-color)] hover:border-[var(--color-accent-500)]",children:e.jsxs("div",{className:"flex items-start gap-3",children:[e.jsx(d,{className:"h-6 w-6 text-[var(--color-accent-500)]"}),e.jsxs("div",{className:"flex-1",children:[e.jsx("h4",{className:"text-sm font-medium text-[var(--text-primary)]",children:s(x.nameKey)}),e.jsx("p",{className:"mt-1 text-xs text-[var(--text-secondary)]",children:s(x.descriptionKey)})]})]})},a)})}),e.jsx("div",{className:"mt-5 sm:mt-6",children:e.jsx("button",{type:"button",onClick:()=>{k(!1),S(null)},className:"w-full inline-flex justify-center rounded-[var(--radius-button)] border border-[var(--border-color)] shadow-sm px-4 py-2 bg-[var(--bg-secondary)] text-base font-medium text-[var(--text-secondary)] hover:bg-[var(--bg-hover)] transition-colors",children:s("common.cancel")})})]})]})})]})}exports.AssignmentsPage=ye;
|
|
2
|
-
//# sourceMappingURL=AssignmentsPage-
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),l=require("react"),le=require("react-i18next"),n=require("lucide-react"),J=require("./index-cAikSVW0.js"),Q=require("./PermissionPopover-CtYTz7MK.js");function ge({section:s,resources:v,moduleIndex:A,sectionIndex:k,isCollapsed:$,collapsedSections:S,paginatedRoles:b,canEditSystemRoles:O,statusFilters:i,openPopover:h,onToggleCollapse:M,onTogglePermission:P,onCellClick:f,setOpenPopover:y,renderResourceRow:N}){const T=S.has(s.id),m=v.length>0;return e.jsxs(l.Fragment,{children:[N(s,A+k+1,"section",m,T),m&&!T&&v.map((L,I)=>N(L,A+k+I+2,"resource",!1,!1))]},s.id)}function ve({roles:s,resources:v,canEditSystemRoles:A=!1,onTogglePermission:k,getPermissionInheritance:$,rolesPerPage:S,rolePageIndex:b,modulesPerPage:O,modulePageIndex:i,collapsedApps:h,onToggleApp:M,statusFilters:P}){const{t:f}=le.useTranslation("admin"),[y,N]=l.useState(null),[T,m]=l.useState(new Set),[L,I]=l.useState(new Set),D=l.useCallback((t,o)=>{o(c=>{const p=new Set(c);return p.has(t)?p.delete(t):p.add(t),p})},[]),E=l.useCallback(t=>{D(t,m)},[D]),z=l.useCallback(t=>{D(t,I)},[D]),q=l.useMemo(()=>v.filter(t=>t.level==="module").length,[v]),_=l.useMemo(()=>{const t=b*S;return s.slice(t,t+S)},[s,b,S]),B=l.useMemo(()=>Q.groupByApplicationWithSections(v),[v]),r=l.useCallback(()=>{const t=i*O,o=t+O,c={current:0},p=[];for(const w of B){const C=h.has(w.application),g=[];if(!C)for(const R of w.modules)c.current>=t&&c.current<o&&g.push(R),c.current++;p.push({application:w.application,modules:g})}return p},[B,i,O,h]),u=l.useMemo(()=>r(),[r]),F=l.useCallback((t,o)=>{const c=$(t,o);return c.isDirect||c.isInherited},[$]),Z=l.useCallback((t,o)=>Q.calculatePermissionStatus(o,c=>F(t,c)),[F]),V=(t,o)=>{y?.roleId===t&&y?.resourceId===o?N(null):N({roleId:t,resourceId:o})};if(s.length===0||q===0)return e.jsx("div",{className:"text-center py-12 text-[var(--text-secondary)]",children:s.length===0?f("assignments.noRoles"):f("assignments.noResources")});const W=t=>{switch(t){case"resource":return"pl-28";case"section":return"pl-22";default:return"pl-16"}},K=t=>t==="resource"?e.jsx(n.Database,{className:"h-3.5 w-3.5 text-[var(--text-muted)]"}):t==="section"?e.jsx(n.FileText,{className:"h-3.5 w-3.5 text-[var(--text-muted)]"}):e.jsx(n.Box,{className:"h-3.5 w-3.5 text-[var(--text-secondary)]"}),Y=t=>t==="resource"?"text-[var(--text-muted)] italic":t==="section"?"text-[var(--text-secondary)]":"font-medium text-[var(--text-primary)]",ee=l.useCallback((t,o)=>{o==="module"?E(t):o==="section"&&z(t)},[E,z]),ae=(t,o,c,p)=>t?e.jsx("button",{onClick:()=>ee(o,c),className:"p-0.5 hover:bg-[var(--bg-hover)] rounded",children:p?e.jsx(n.ChevronRight,{className:"h-3 w-3 text-[var(--text-muted)]"}):e.jsx(n.ChevronDown,{className:"h-3 w-3 text-[var(--text-muted)]"})}):null,ne=t=>_.map(o=>{const{status:c,grantedCount:p}=Z(o.id,t),w=y?.roleId===o.id&&y?.resourceId===t.id,C=l.createRef(),g=!o.isSystem||A,R=Q.getPermissionCellBackground(c),j=(P?.size??0)>0&&!P?.has(c);return e.jsxs("td",{className:`px-0 py-1 text-center relative ${j?"":R}`,style:{width:"44px",minWidth:"44px",maxWidth:"44px"},children:[e.jsx("button",{ref:C,type:"button",onClick:()=>g&&!j&&V(o.id,t.id),disabled:!g||j,className:`w-full h-full min-h-[36px] flex items-center justify-center rounded transition-colors ${j?"opacity-10 cursor-default":g?"hover:opacity-80":"cursor-not-allowed opacity-50"} ${w?"ring-2 ring-[var(--color-accent-500)]":""}`,title:j?void 0:g?`${o.name} - ${t.moduleLabel}: ${p}/${t.permissions.length}`:`${o.name} - ${f("assignments.systemRoleReadOnly")}`,children:e.jsx(Q.PermissionStatusIndicator,{status:c,grantedCount:p,totalCount:t.permissions.length})}),w&&g&&!j&&e.jsx(Q.PermissionPopover,{mode:"editable",role:o,resource:t,onTogglePermission:H=>k(o.id,H),onClose:()=>N(null),getPermissionInheritance:$})]},`${o.id}-${t.id}`)}),se=(t,o,c,p=!1,w=!1)=>{const C=W(c),g=o%2===0?"item-light":"item-medium";return e.jsxs("tr",{className:`hover:bg-[var(--bg-hover)] ${g}`,children:[e.jsx("td",{className:`sticky left-0 z-10 ${g} px-3 py-2 ${C}`,style:{width:"280px",minWidth:"280px",maxWidth:"280px"},children:e.jsxs("div",{className:"flex items-center gap-2",children:[ae(p,t.id,c,w),K(c),e.jsx("span",{className:`text-sm ${Y(c)}`,children:t.moduleLabel}),e.jsxs("span",{className:"text-xs text-[var(--text-muted)]",children:["(",t.permissions.length,")"]})]})}),ne(t)]},t.id)};return e.jsx("div",{className:"overflow-x-auto overflow-y-visible",children:e.jsxs("table",{className:"border-collapse",style:{width:"auto"},children:[e.jsx("thead",{className:"item-medium border-b border-[var(--item-color-border)]",children:e.jsxs("tr",{children:[e.jsx("th",{scope:"col",className:"sticky left-0 z-20 item-medium px-3 text-left text-xs font-medium text-[var(--text-secondary)] uppercase tracking-wider",style:{width:"280px",minWidth:"280px",maxWidth:"280px",height:"180px",verticalAlign:"bottom",paddingBottom:"12px"},children:f("assignments.resource")}),_.map(t=>e.jsx("th",{scope:"col",className:"relative overflow-visible",style:{width:"44px",minWidth:"44px",maxWidth:"44px",height:"180px",padding:0,verticalAlign:"bottom"},children:e.jsx("div",{className:"absolute bottom-2 left-1/2",style:{transform:"translateX(-6px) rotate(-55deg)",transformOrigin:"bottom left",width:"160px"},children:e.jsxs("div",{className:"flex items-center gap-1",children:[t.isSystem&&e.jsx(n.Lock,{className:"h-3 w-3 flex-shrink-0 text-[var(--warning-dot)]"}),e.jsx("span",{className:"text-[10px] font-medium text-[var(--text-primary)] whitespace-nowrap",title:t.name,children:t.name})]})})},t.id))]})}),e.jsx("tbody",{className:"divide-y divide-[var(--item-color-border)]",children:u.map(t=>{const o=h.has(t.application),c=_.length;return e.jsxs(l.Fragment,{children:[e.jsxs("tr",{className:"bg-[var(--color-accent-900)]/30 dark:bg-[var(--color-accent-900)]/50",children:[e.jsx("td",{className:"sticky left-0 z-10 px-3 py-3 bg-[var(--color-accent-900)]/30 dark:bg-[var(--color-accent-900)]/50",style:{width:"280px",minWidth:"280px",maxWidth:"280px"},children:e.jsxs("button",{onClick:()=>M(t.application),className:"flex items-center gap-3 w-full text-left hover:opacity-80",children:[o?e.jsx(n.ChevronRight,{className:"h-5 w-5 text-[var(--color-accent-400)]"}):e.jsx(n.ChevronDown,{className:"h-5 w-5 text-[var(--color-accent-400)]"}),e.jsx(n.FolderOpen,{className:"h-5 w-5 text-[var(--color-accent-400)]"}),e.jsx("span",{className:"text-sm font-bold text-[var(--color-accent-300)] uppercase tracking-wider",children:t.application}),e.jsx("span",{className:"text-xs text-[var(--color-accent-400)] ml-auto",children:f("assignments.moduleCount",{count:t.modules.length})})]})}),e.jsx("td",{colSpan:c,className:"px-0 py-3"})]}),!o&&t.modules.map((p,w)=>{const{module:C,sections:g}=p,R=g.length>0,j=T.has(C.id);return e.jsxs(l.Fragment,{children:[se(C,w,"module",R,j),R&&!j&&g.map((H,G)=>{const{section:te,resources:U}=H;return e.jsx(ge,{section:te,resources:U,moduleIndex:w,sectionIndex:G,isCollapsed:j,collapsedSections:L,paginatedRoles:_,canEditSystemRoles:A,statusFilters:P,openPopover:y,onToggleCollapse:ee,onTogglePermission:k,onCellClick:V,setOpenPopover:N,renderResourceRow:se},te.id)})]},C.id)})]},t.application)})})]})})}function be({filters:s,roles:v,categories:A,applications:k,modules:$,hasChanges:S,onFilterChange:b,onReset:O}){const{t:i}=le.useTranslation("admin"),[h,M]=l.useState(!1),[P,f]=l.useState(""),y=l.useRef(null),N=l.useRef(null),T=l.useMemo(()=>{let r=v;if(s.categoryFilter!=="all"&&(r=r.filter(u=>u.category===s.categoryFilter)),P.trim()){const u=P.toLowerCase();r=r.filter(F=>F.name.toLowerCase().includes(u)||F.shortName?.toLowerCase().includes(u))}return r},[v,s.categoryFilter,P]);l.useEffect(()=>{h&&N.current&&setTimeout(()=>N.current?.focus(),50)},[h]);const m=r=>{M(r),r||f("")},L=$.filter(r=>!(s.applicationFilter!=="all"&&r.app!==s.applicationFilter));l.useEffect(()=>{function r(u){y.current&&!y.current.contains(u.target)&&m(!1)}return document.addEventListener("mousedown",r),()=>document.removeEventListener("mousedown",r)},[]);const I=r=>{const u=s.selectedRoleIds.includes(r)?s.selectedRoleIds.filter(F=>F!==r):[...s.selectedRoleIds,r];b({selectedRoleIds:u})},D=()=>{b({selectedRoleIds:T.map(r=>r.id)})},E=()=>{b({selectedRoleIds:[]})},z=r=>{b({applicationFilter:r,moduleFilter:"all"})},q=r=>{b({categoryFilter:r,selectedRoleIds:[]})},_=s.selectedRoleIds.length>0||s.categoryFilter!=="all"||s.applicationFilter!=="all"||s.moduleFilter!=="all",B=s.selectedRoleIds.length===0?i("permissions.filters.allRoles"):s.selectedRoleIds.length===1?v.find(r=>r.id===s.selectedRoleIds[0])?.name||i("assignments.oneRoleSelected"):`${s.selectedRoleIds.length} ${i("permissions.filters.rolesSelected")}`;return e.jsxs("div",{className:"bg-[var(--bg-card)] border border-[var(--item-color-border)] rounded-[var(--radius-card)] p-4 space-y-4",children:[e.jsxs("div",{className:"flex items-center gap-2 text-sm font-medium text-[var(--text-secondary)]",children:[e.jsx(n.Filter,{className:"h-4 w-4"}),e.jsx("span",{children:i("assignments.filters")})]}),e.jsxs("div",{className:"flex flex-wrap gap-4",children:[e.jsxs("div",{className:"min-w-[160px] flex-1",children:[e.jsx("label",{htmlFor:"category-filter",className:"block text-sm font-medium text-[var(--text-secondary)] mb-1",children:i("permissions.filters.selectCategory")}),e.jsxs("select",{id:"category-filter",value:s.categoryFilter,onChange:r=>q(r.target.value),className:"block w-full px-3 py-2 border border-[var(--border-color)] rounded-[var(--radius-input)] leading-5 bg-[var(--bg-primary)] text-[var(--text-primary)] focus:outline-none focus:ring-2 focus:ring-[var(--color-accent-500)] focus:border-[var(--color-accent-500)] sm:text-sm",children:[e.jsx("option",{value:"all",children:i("permissions.filters.allCategories")}),A.map(r=>e.jsx("option",{value:r,children:i(`roles.categories.${r.toLowerCase()}`)},r))]})]}),e.jsxs("div",{ref:y,className:"relative min-w-[200px] flex-[2]",children:[e.jsx("label",{className:"block text-sm font-medium text-[var(--text-secondary)] mb-1",children:i("permissions.filters.selectRoles")}),e.jsxs("button",{type:"button",onClick:()=>m(!h),className:"w-full flex items-center justify-between px-3 py-2 border border-[var(--border-color)] rounded-[var(--radius-input)] bg-[var(--bg-primary)] text-[var(--text-primary)] hover:bg-[var(--bg-secondary)] focus:outline-none focus:ring-2 focus:ring-[var(--color-accent-500)] focus:border-[var(--color-accent-500)] text-sm",children:[e.jsx("span",{className:"truncate",children:B}),e.jsx(n.ChevronDown,{className:`h-4 w-4 text-[var(--text-muted)] transition-transform ${h?"rotate-180":""}`})]}),h&&e.jsxs("div",{className:"absolute z-50 mt-1 w-full bg-[var(--bg-card)] border border-[var(--border-color)] rounded-[var(--radius-card)] shadow-lg",children:[e.jsx("div",{className:"px-3 py-2 border-b border-[var(--border-color)]",children:e.jsxs("div",{className:"relative",children:[e.jsx("div",{className:"absolute inset-y-0 left-0 pl-2 flex items-center pointer-events-none",children:e.jsx(n.Search,{className:"h-4 w-4 text-[var(--text-muted)]"})}),e.jsx("input",{ref:N,type:"text",value:P,onChange:r=>f(r.target.value),placeholder:i("permissions.filters.searchRoles"),className:"block w-full pl-8 pr-3 py-1.5 text-sm border border-[var(--border-color)] rounded-[var(--radius-input)] bg-[var(--bg-primary)] text-[var(--text-primary)] placeholder-[var(--text-muted)] focus:outline-none focus:ring-1 focus:ring-[var(--color-accent-500)] focus:border-[var(--color-accent-500)]"})]})}),e.jsxs("div",{className:"flex items-center justify-between px-3 py-2 border-b border-[var(--border-color)] bg-[var(--bg-secondary)]",children:[e.jsx("button",{type:"button",onClick:D,className:"text-xs text-[var(--color-accent-600)] hover:text-[var(--color-accent-700)]",children:i("permissions.filters.selectAll")}),e.jsx("button",{type:"button",onClick:E,className:"text-xs text-[var(--text-muted)] hover:text-[var(--text-secondary)]",children:i("permissions.filters.clearSelection")})]}),e.jsx("div",{className:"max-h-64 overflow-auto",children:T.length===0?e.jsx("div",{className:"px-3 py-4 text-sm text-[var(--text-muted)] text-center",children:i("permissions.filters.noRolesFound")}):T.map(r=>e.jsxs("button",{type:"button",onClick:()=>I(r.id),className:"w-full flex items-center gap-3 px-3 py-2 hover:bg-[var(--bg-secondary)] cursor-pointer text-left",children:[e.jsx("div",{className:`w-4 h-4 rounded border flex items-center justify-center flex-shrink-0 ${s.selectedRoleIds.includes(r.id)?"bg-[var(--color-accent-600)] border-[var(--color-accent-600)]":"border-[var(--border-color)] bg-[var(--bg-primary)]"}`,children:s.selectedRoleIds.includes(r.id)&&e.jsx(n.Check,{className:"h-3 w-3 text-white"})}),e.jsx("span",{className:"text-sm text-[var(--text-primary)] truncate",children:r.name}),r.isSystem&&e.jsx("span",{className:"text-xs px-1.5 py-0.5 rounded bg-[var(--bg-tertiary)] text-[var(--text-muted)] flex-shrink-0",children:i("assignments.systemRole")})]},r.id))})]})]}),e.jsxs("div",{className:"min-w-[160px] flex-1",children:[e.jsx("label",{htmlFor:"application-filter",className:"block text-sm font-medium text-[var(--text-secondary)] mb-1",children:i("assignments.filterByApplication")}),e.jsxs("select",{id:"application-filter",value:s.applicationFilter,onChange:r=>z(r.target.value),disabled:k.length===0,className:"block w-full px-3 py-2 border border-[var(--border-color)] rounded-[var(--radius-input)] leading-5 bg-[var(--bg-primary)] text-[var(--text-primary)] focus:outline-none focus:ring-2 focus:ring-[var(--color-accent-500)] focus:border-[var(--color-accent-500)] sm:text-sm disabled:opacity-50 disabled:cursor-not-allowed",children:[e.jsx("option",{value:"all",children:i("assignments.allApplications")}),k.map(r=>e.jsx("option",{value:r.app,children:r.label},r.app))]})]}),e.jsxs("div",{className:"min-w-[160px] flex-1",children:[e.jsx("label",{htmlFor:"module-filter",className:"block text-sm font-medium text-[var(--text-secondary)] mb-1",children:i("permissions.filters.selectModule")}),e.jsxs("select",{id:"module-filter",value:s.moduleFilter,onChange:r=>b({moduleFilter:r.target.value}),disabled:L.length===0,className:"block w-full px-3 py-2 border border-[var(--border-color)] rounded-[var(--radius-input)] leading-5 bg-[var(--bg-primary)] text-[var(--text-primary)] focus:outline-none focus:ring-2 focus:ring-[var(--color-accent-500)] focus:border-[var(--color-accent-500)] sm:text-sm disabled:opacity-50 disabled:cursor-not-allowed",children:[e.jsx("option",{value:"all",children:i("permissions.filters.allModules")}),L.map(r=>e.jsx("option",{value:r.module,children:r.label},`${r.app}:${r.module}`))]})]}),e.jsx("div",{className:"flex items-end flex-shrink-0",children:_&&e.jsxs("button",{type:"button",onClick:O,className:"w-full inline-flex items-center justify-center gap-2 px-3 py-2 text-sm text-[var(--text-secondary)] hover:text-[var(--text-primary)] border border-[var(--border-color)] rounded-[var(--radius-input)] hover:bg-[var(--bg-secondary)] transition-colors",children:[e.jsx(n.RotateCcw,{className:"h-4 w-4"}),i("assignments.clearFilters")]})})]}),s.selectedRoleIds.length>0&&e.jsx("div",{className:"flex flex-wrap gap-2",children:s.selectedRoleIds.map(r=>{const u=v.find(F=>F.id===r);return u?e.jsxs("span",{className:"inline-flex items-center gap-1 px-2 py-1 text-xs rounded-full bg-[var(--color-accent-100)] text-[var(--color-accent-700)] dark:bg-[var(--color-accent-900)] dark:text-[var(--color-accent-300)]",children:[u.name,e.jsx("button",{type:"button",onClick:()=>I(r),className:"hover:text-[var(--color-accent-900)] dark:hover:text-[var(--color-accent-100)]",children:e.jsx(n.X,{className:"h-3 w-3"})})]},r):null})}),S&&e.jsx("div",{className:"flex items-center justify-end pt-2 border-t border-[var(--border-color)]",children:e.jsx("div",{className:"text-sm text-[var(--warning-text)]",children:i("assignments.unsavedChanges")})})]})}const ie={viewer:{nameKey:"assignments.templates.viewer.name",descriptionKey:"assignments.templates.viewer.description",icon:n.Eye,color:"blue",permissions:["*.read"]},member:{nameKey:"assignments.templates.member.name",descriptionKey:"assignments.templates.member.description",icon:n.User,color:"green",permissions:["*.read","*.create"]},contributor:{nameKey:"assignments.templates.contributor.name",descriptionKey:"assignments.templates.contributor.description",icon:n.Pencil,color:"orange",permissions:["*.read","*.create","*.update"]},admin:{nameKey:"assignments.templates.admin.name",descriptionKey:"assignments.templates.admin.description",icon:n.ShieldCheck,color:"red",permissions:["*.*"]}},fe=[10,25,50],je=[10,15,20,25];function ye(){const{t:s}=le.useTranslation("admin"),{user:v}=J.useAuth(),[A,k]=l.useState(!1),[$,S]=l.useState(null),[b,O]=l.useState(25),[i,h]=l.useState(1),[M,P]=l.useState(10),[f,y]=l.useState(0),[N,T]=l.useState(new Set),[m,L]=l.useState(new Set),[I,D]=l.useState(!1),E=a=>{L(x=>{const d=new Set(x);return d.has(a)?d.delete(a):d.add(a),d}),h(1),y(0)},z=a=>{T(x=>{const d=new Set(x);return d.has(a)?d.delete(a):d.add(a),d})},q=l.useMemo(()=>v?J.hasFullAccess(v.permissions):!1,[v]),{loading:_,error:B,saveError:r,saving:u,roles:F,assignments:Z,filters:V,filteredRoles:W,filteredResources:K,hasChanges:Y,applications:ee,modules:ae,categories:ne,togglePermission:se,updateFilters:t,reloadData:o,resetChanges:c,clearSaveError:p,getPermissionInheritance:w}=J.usePermissionMatrix({canEditSystemRoles:q}),C=l.useCallback((a,x)=>{const d=x.permissions.filter(he=>{const oe=w(a,he.id);return oe.isDirect||oe.isInherited}),X=d.length,pe=x.totalPermissions;return X===0?"none":X===pe?"all":X===1&&d[0]?.action==="read"?"read-only":"some"},[w]),g=l.useMemo(()=>K.filter(a=>a.level==="module"),[K]),R=l.useMemo(()=>m.size===0?W:W.filter(a=>{for(const x of g){const d=C(a.id,x);if(m.has(d))return!0}return!1}),[W,g,m,C]),j=l.useMemo(()=>m.size===0?K:K.filter(a=>{if(a.level!=="module")return!0;for(const x of W){const d=C(x.id,a);if(m.has(d))return!0}return!1}),[K,W,m,C]),H=l.useMemo(()=>{let a=0;return Object.values(Z).forEach(x=>{a+=x.size}),a},[Z]),G=l.useMemo(()=>j.filter(a=>!(a.level!=="module"||N.has(a.applicationLabel))).length,[j,N]),te=l.useMemo(()=>j.filter(a=>a.level==="module").length,[j]),U=Math.ceil(G/b),ce=a=>{h(1),t(a)},de=a=>{O(a),h(1)},re=Math.ceil(R.length/M),me=a=>{P(a),y(0)},xe=async a=>{const x=ie[a];if(!x)return;const d=prompt(s("assignments.enterRoleName"),s(x.nameKey));if(d)try{S(null),await J.adminApi.roles.create({name:d,description:s(x.descriptionKey),permissionIds:[]}),k(!1),await o()}catch(X){S(X instanceof Error?X.message:"Failed to create role from template")}},ue=()=>{h(1),t({selectedRoleIds:[],resourceSearch:"",applicationFilter:"all",moduleFilter:"all"})};return _?e.jsx("div",{className:"flex items-center justify-center min-h-[400px]",children:e.jsxs("div",{className:"text-center",children:[e.jsx(n.Loader2,{className:"h-8 w-8 animate-spin text-[var(--color-accent-500)] mx-auto mb-4"}),e.jsx("p",{className:"text-[var(--text-secondary)]",children:s("assignments.loading")})]})}):B?e.jsx("div",{className:"p-6",children:e.jsx("div",{className:"rounded-[var(--radius-card)] bg-[var(--error-bg)] border border-[var(--error-border)] p-4",children:e.jsxs("div",{className:"flex",children:[e.jsx(n.AlertCircle,{className:"h-5 w-5 text-[var(--error-text)]"}),e.jsxs("div",{className:"ml-3",children:[e.jsx("h3",{className:"text-sm font-medium text-[var(--error-text)]",children:s("common.error")}),e.jsx("div",{className:"mt-2 text-sm text-[var(--error-text)] opacity-80",children:e.jsx("p",{children:B})})]})]})})}):e.jsxs("div",{className:"p-6 space-y-4",children:[e.jsx(J.Breadcrumb,{items:[{label:s("header.title"),href:"/administration"},{label:s("assignments.title","Assignments")}]}),e.jsxs("div",{className:"flex flex-wrap items-center justify-between gap-3",children:[e.jsxs("div",{children:[e.jsx("h1",{className:"text-2xl font-bold text-[var(--text-primary)]",children:s("assignments.title")}),e.jsx("p",{className:"mt-1 text-sm text-[var(--text-secondary)]",children:s("assignments.subtitle")})]}),e.jsx("div",{className:"flex items-center gap-3 flex-shrink-0",children:e.jsxs("button",{type:"button",onClick:()=>k(!0),className:"inline-flex items-center px-4 py-2 border border-[var(--border-color)] text-sm font-medium rounded-[var(--radius-button)] text-[var(--text-secondary)] bg-[var(--bg-card)] hover:bg-[var(--bg-hover)] transition-colors",children:[e.jsx(n.Sparkles,{className:"h-4 w-4 mr-2"}),s("assignments.createFromTemplate")]})})]}),r&&e.jsx("div",{className:"rounded-[var(--radius-card)] bg-[var(--error-bg)] p-3 border border-[var(--error-border)]",children:e.jsxs("div",{className:"flex items-center",children:[e.jsx(n.AlertCircle,{className:"h-4 w-4 text-[var(--error-text)]"}),e.jsx("p",{className:"ml-2 text-sm text-[var(--error-text)]",children:r}),e.jsx("button",{type:"button",onClick:p,className:"ml-auto text-sm text-[var(--error-text)] hover:opacity-80 font-medium",children:s("common.dismiss")})]})}),(Y||u)&&e.jsx("div",{className:"rounded-[var(--radius-card)] bg-[var(--warning-bg)] p-3 border border-[var(--warning-border)]",children:e.jsxs("div",{className:"flex items-center",children:[u?e.jsx(n.Loader2,{className:"h-4 w-4 text-[var(--warning-dot)] animate-spin"}):e.jsx(n.Info,{className:"h-4 w-4 text-[var(--warning-dot)]"}),e.jsx("p",{className:"ml-2 text-sm text-[var(--warning-text)]",children:s(u?"assignments.saving":"assignments.autoSaveActive")}),!u&&e.jsx("button",{type:"button",onClick:c,className:"ml-auto text-sm text-[var(--warning-text)] hover:opacity-80 font-medium",children:s("assignments.discardChanges")})]})}),e.jsx(be,{filters:V,roles:F,categories:ne,applications:ee,modules:ae,hasChanges:Y,onFilterChange:ce,onReset:ue}),e.jsxs("div",{className:"flex flex-wrap items-center justify-between gap-3 py-2",children:[e.jsxs("div",{className:"flex flex-wrap items-center gap-4",children:[e.jsxs("div",{className:"flex flex-wrap items-center gap-3",children:[e.jsxs("span",{className:"px-2.5 py-1 text-xs font-semibold rounded-full bg-[var(--color-accent-100)] text-[var(--color-accent-700)] dark:bg-[var(--color-accent-900)] dark:text-[var(--color-accent-300)]",children:[R.length," ",s("assignments.roles")]}),e.jsxs("span",{className:"px-2.5 py-1 text-xs font-semibold rounded-full bg-[var(--bg-tertiary)] text-[var(--text-secondary)]",children:[G,"/",te," ",s("assignments.modules")]}),e.jsxs("span",{className:"px-2.5 py-1 text-xs font-semibold rounded-full bg-[var(--success-bg)] text-[var(--success-text)] border border-[var(--success-border)]",children:[H," ",s("assignments.permissionsAssigned")]})]}),e.jsxs("div",{className:"flex items-center gap-2 text-sm text-[var(--text-secondary)] border-l border-[var(--border-color)] pl-4",children:[e.jsxs("span",{children:[s("assignments.rolesPerPage"),":"]}),e.jsx("select",{value:M,onChange:a=>me(Number(a.target.value)),className:"px-2 py-1 text-sm bg-[var(--bg-secondary)] border border-[var(--border-color)] rounded text-[var(--text-primary)] focus:outline-none focus:ring-1 focus:ring-[var(--color-accent-500)]",children:je.map(a=>e.jsx("option",{value:a,children:a},a))}),e.jsxs("span",{className:"text-[var(--text-muted)]",children:[f*M+1,"-",Math.min((f+1)*M,R.length)," / ",R.length]}),re>1&&e.jsxs("div",{className:"flex items-center gap-1",children:[e.jsx("button",{onClick:()=>y(a=>Math.max(0,a-1)),disabled:f===0,className:"p-1 rounded border border-[var(--border-color)] bg-[var(--bg-secondary)] hover:bg-[var(--bg-hover)] disabled:opacity-30 disabled:cursor-not-allowed transition-colors",children:e.jsx(n.ChevronLeft,{className:"h-3.5 w-3.5"})}),e.jsxs("span",{className:"text-xs min-w-[50px] text-center",children:[f+1," / ",re]}),e.jsx("button",{onClick:()=>y(a=>Math.min(re-1,a+1)),disabled:f>=re-1,className:"p-1 rounded border border-[var(--border-color)] bg-[var(--bg-secondary)] hover:bg-[var(--bg-hover)] disabled:opacity-30 disabled:cursor-not-allowed transition-colors",children:e.jsx(n.ChevronRight,{className:"h-3.5 w-3.5"})})]})]})]}),e.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[e.jsxs("button",{onClick:()=>E("none"),className:`inline-flex items-center gap-1.5 px-2.5 py-1 text-xs rounded-full border transition-colors cursor-pointer ${m.has("none")?"bg-red-500/30 border-red-500 text-red-700 dark:text-red-300":"bg-red-500/10 border-red-500/30 text-red-600 dark:text-red-400 hover:bg-red-500/20 hover:border-red-500"}`,children:[e.jsx(n.Ban,{className:"h-3.5 w-3.5"}),s("assignments.none")]}),e.jsxs("button",{onClick:()=>E("read-only"),className:`inline-flex items-center gap-1.5 px-2.5 py-1 text-xs rounded-full border transition-colors cursor-pointer ${m.has("read-only")?"bg-sky-500/30 border-sky-500 text-sky-700 dark:text-sky-300":"bg-sky-500/10 border-sky-500/30 text-sky-600 dark:text-sky-400 hover:bg-sky-500/20 hover:border-sky-500"}`,children:[e.jsx(n.Eye,{className:"h-3.5 w-3.5"}),s("assignments.readOnly")]}),e.jsxs("button",{onClick:()=>E("some"),className:`inline-flex items-center gap-1.5 px-2.5 py-1 text-xs rounded-full border transition-colors cursor-pointer ${m.has("some")?"bg-amber-500/30 border-amber-500 text-amber-700 dark:text-amber-300":"bg-amber-500/10 border-amber-500/30 text-amber-600 dark:text-amber-400 hover:bg-amber-500/20 hover:border-amber-500"}`,children:[e.jsx(n.Star,{className:"h-3.5 w-3.5"}),s("assignments.partial")]}),e.jsxs("button",{onClick:()=>E("all"),className:`inline-flex items-center gap-1.5 px-2.5 py-1 text-xs rounded-full border transition-colors cursor-pointer ${m.has("all")?"bg-emerald-500/30 border-emerald-500 text-emerald-700 dark:text-emerald-300":"bg-emerald-500/10 border-emerald-500/30 text-emerald-600 dark:text-emerald-400 hover:bg-emerald-500/20 hover:border-emerald-500"}`,children:[e.jsx(n.Check,{className:"h-3.5 w-3.5"}),s("assignments.complete")]}),m.size>0&&e.jsx("button",{onClick:()=>L(new Set),className:"text-xs text-[var(--color-accent-500)] hover:text-[var(--color-accent-600)] underline ml-2",children:s("assignments.clearFilters")})]})]}),e.jsxs("div",{className:"bg-[var(--bg-card)] border border-[var(--item-color-border)] rounded-[var(--radius-card)] overflow-hidden",children:[e.jsxs("button",{type:"button",onClick:()=>D(!I),className:"w-full flex items-center justify-between px-4 py-2.5 text-sm font-medium text-[var(--text-secondary)] hover:bg-[var(--bg-hover)] transition-colors",children:[e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(n.BookOpen,{className:"h-4 w-4 text-[var(--color-accent-500)]"}),e.jsx("span",{children:s("assignments.guide.title")})]}),I?e.jsx(n.ChevronUp,{className:"h-4 w-4 text-[var(--text-muted)]"}):e.jsx(n.ChevronDown,{className:"h-4 w-4 text-[var(--text-muted)]"})]}),I&&e.jsx("div",{className:"px-4 pb-4 border-t border-[var(--item-color-border)]",children:e.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-4 pt-3",children:[e.jsxs("div",{children:[e.jsx("h4",{className:"text-xs font-semibold text-[var(--text-primary)] uppercase tracking-wider mb-2",children:s("assignments.guide.colorLegendTitle")}),e.jsxs("div",{className:"space-y-1.5",children:[e.jsxs("div",{className:"flex items-center gap-2 text-xs",children:[e.jsx("span",{className:"inline-flex items-center gap-1 px-2 py-0.5 rounded-full bg-red-500/10 border border-red-500/20 text-red-600 dark:text-red-400",children:e.jsx(n.Ban,{className:"h-3 w-3"})}),e.jsx("span",{className:"text-[var(--text-secondary)]",children:s("assignments.guide.noneDesc")})]}),e.jsxs("div",{className:"flex items-center gap-2 text-xs",children:[e.jsx("span",{className:"inline-flex items-center gap-1 px-2 py-0.5 rounded-full bg-sky-500/20 border border-sky-500/30 text-sky-700 dark:text-sky-300",children:e.jsx(n.Eye,{className:"h-3 w-3"})}),e.jsx("span",{className:"text-[var(--text-secondary)]",children:s("assignments.guide.readOnlyDesc")})]}),e.jsxs("div",{className:"flex items-center gap-2 text-xs",children:[e.jsx("span",{className:"inline-flex items-center gap-1 px-2 py-0.5 rounded-full bg-amber-500/20 border border-amber-500/30 text-amber-700 dark:text-amber-300",children:e.jsx(n.Star,{className:"h-3 w-3"})}),e.jsx("span",{className:"text-[var(--text-secondary)]",children:s("assignments.guide.partialDesc")})]}),e.jsxs("div",{className:"flex items-center gap-2 text-xs",children:[e.jsx("span",{className:"inline-flex items-center gap-1 px-2 py-0.5 rounded-full bg-emerald-500/20 border border-emerald-500/30 text-emerald-700 dark:text-emerald-300",children:e.jsx(n.Check,{className:"h-3 w-3"})}),e.jsx("span",{className:"text-[var(--text-secondary)]",children:s("assignments.guide.completeDesc")})]})]})]}),e.jsxs("div",{children:[e.jsx("h4",{className:"text-xs font-semibold text-[var(--text-primary)] uppercase tracking-wider mb-2",children:s("assignments.guide.howToUseTitle")}),e.jsxs("ul",{className:"space-y-1.5 text-xs text-[var(--text-secondary)]",children:[e.jsxs("li",{className:"flex items-start gap-2",children:[e.jsx("span",{className:"text-[var(--color-accent-500)] mt-0.5",children:"•"}),s("assignments.guide.clickCell")]}),e.jsxs("li",{className:"flex items-start gap-2",children:[e.jsx(n.Lock,{className:"h-3 w-3 flex-shrink-0 mt-0.5 text-[var(--warning-dot)]"}),s("assignments.guide.systemRoles")]}),e.jsxs("li",{className:"flex items-start gap-2",children:[e.jsx("span",{className:"text-[var(--color-accent-500)] mt-0.5",children:"•"}),s("assignments.guide.inheritance")]}),e.jsxs("li",{className:"flex items-start gap-2",children:[e.jsx("span",{className:"text-[var(--color-accent-500)] mt-0.5",children:"•"}),s("assignments.guide.autoSave")]}),e.jsxs("li",{className:"flex items-start gap-2",children:[e.jsx("span",{className:"text-[var(--color-accent-500)] mt-0.5",children:"•"}),s("assignments.guide.filterButtons")]})]})]})]})})]}),e.jsx("div",{className:"bg-[var(--bg-card)] shadow-[var(--shadow-md)] rounded-[var(--radius-card)] border border-[var(--item-color-border)]",children:e.jsx(ve,{roles:R,resources:j,assignments:Z,canEditSystemRoles:q,onTogglePermission:se,getPermissionInheritance:w,rolesPerPage:M,rolePageIndex:f,modulesPerPage:b,modulePageIndex:i-1,collapsedApps:N,onToggleApp:z,statusFilters:m})}),e.jsx("div",{className:"py-3 px-4 bg-[var(--bg-card)] rounded-[var(--radius-card)] border border-[var(--item-color-border)]",children:e.jsxs("div",{className:"flex items-center gap-3 text-sm text-[var(--text-secondary)]",children:[e.jsxs("span",{children:[s("assignments.itemsPerPage"),":"]}),e.jsx("select",{value:b,onChange:a=>de(Number(a.target.value)),className:"px-2 py-1 text-sm bg-[var(--bg-secondary)] border border-[var(--border-color)] rounded text-[var(--text-primary)] focus:outline-none focus:ring-1 focus:ring-[var(--color-accent-500)]",children:fe.map(a=>e.jsx("option",{value:a,children:a},a))}),e.jsxs("span",{className:"text-[var(--text-muted)]",children:[(i-1)*b+1,"-",Math.min(i*b,G)," / ",G]}),U>1&&e.jsxs("div",{className:"flex items-center gap-1",children:[e.jsx("button",{onClick:()=>h(a=>Math.max(1,a-1)),disabled:i===1,className:"p-1.5 rounded border border-[var(--border-color)] bg-[var(--bg-secondary)] hover:bg-[var(--bg-hover)] disabled:opacity-30 disabled:cursor-not-allowed transition-colors",children:e.jsx(n.ChevronLeft,{className:"h-4 w-4"})}),e.jsxs("span",{className:"text-sm min-w-[60px] text-center",children:[i," / ",U]}),e.jsx("button",{onClick:()=>h(a=>Math.min(U,a+1)),disabled:i>=U,className:"p-1.5 rounded border border-[var(--border-color)] bg-[var(--bg-secondary)] hover:bg-[var(--bg-hover)] disabled:opacity-30 disabled:cursor-not-allowed transition-colors",children:e.jsx(n.ChevronRight,{className:"h-4 w-4"})})]})]})}),A&&e.jsx("div",{className:"fixed inset-0 z-50 overflow-y-auto",children:e.jsxs("div",{className:"flex items-center justify-center min-h-screen px-4 pt-4 pb-20 text-center sm:p-0",children:[e.jsx("button",{type:"button",className:"fixed inset-0 bg-black/50 transition-opacity",onClick:()=>k(!1),"aria-label":"Close modal"}),e.jsxs("div",{className:"inline-block align-bottom bg-[var(--bg-card)] rounded-[var(--radius-modal)] px-4 pt-5 pb-4 text-left overflow-hidden shadow-xl transform transition-all sm:my-8 sm:align-middle sm:max-w-2xl sm:w-full sm:p-6 border border-[var(--border-color)]",children:[e.jsxs("div",{className:"mb-4",children:[e.jsx("h3",{className:"text-lg font-medium text-[var(--text-primary)]",children:s("assignments.createFromTemplate")}),e.jsx("p",{className:"mt-1 text-sm text-[var(--text-secondary)]",children:s("assignments.templateDescription")})]}),$&&e.jsx("div",{className:"mb-4 rounded-[var(--radius-card)] bg-[var(--error-bg)] border border-[var(--error-border)] p-3",children:e.jsxs("div",{className:"flex",children:[e.jsx(n.AlertCircle,{className:"h-5 w-5 text-[var(--error-text)]"}),e.jsx("div",{className:"ml-3",children:e.jsx("p",{className:"text-sm text-[var(--error-text)]",children:$})})]})}),e.jsx("div",{className:"grid grid-cols-1 sm:grid-cols-2 gap-4",children:Object.entries(ie).map(([a,x])=>{const d=x.icon;return e.jsx("button",{onClick:()=>xe(a),className:"relative p-4 rounded-[var(--radius-card)] border-2 text-left transition-all hover:shadow-lg hover:scale-105 border-[var(--border-color)] hover:border-[var(--color-accent-500)]",children:e.jsxs("div",{className:"flex items-start gap-3",children:[e.jsx(d,{className:"h-6 w-6 text-[var(--color-accent-500)]"}),e.jsxs("div",{className:"flex-1",children:[e.jsx("h4",{className:"text-sm font-medium text-[var(--text-primary)]",children:s(x.nameKey)}),e.jsx("p",{className:"mt-1 text-xs text-[var(--text-secondary)]",children:s(x.descriptionKey)})]})]})},a)})}),e.jsx("div",{className:"mt-5 sm:mt-6",children:e.jsx("button",{type:"button",onClick:()=>{k(!1),S(null)},className:"w-full inline-flex justify-center rounded-[var(--radius-button)] border border-[var(--border-color)] shadow-sm px-4 py-2 bg-[var(--bg-secondary)] text-base font-medium text-[var(--text-secondary)] hover:bg-[var(--bg-hover)] transition-colors",children:s("common.cancel")})})]})]})})]})}exports.AssignmentsPage=ye;
|
|
2
|
+
//# sourceMappingURL=AssignmentsPage-Bp7oQD7Q.js.map
|