@atlashub/smartstack 3.10.0 → 3.14.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.
Files changed (1016) hide show
  1. package/dist/AiDocPage-CM7j_50_.cjs.map +1 -1
  2. package/dist/AiDocPage-rnKBvVof.js.map +1 -1
  3. package/dist/ArchitecturePage-Cn_XCDAo.cjs.map +1 -1
  4. package/dist/ArchitecturePage-DNwzHKk0.js.map +1 -1
  5. package/dist/{AuthCallbackPage-Cu74zAX1.js → AuthCallbackPage-CoJi12d0.js} +2 -2
  6. package/dist/AuthCallbackPage-CoJi12d0.js.map +1 -0
  7. package/dist/{AuthCallbackPage-Bv2Cyn80.cjs → AuthCallbackPage-D_g2VCjj.cjs} +2 -2
  8. package/dist/AuthCallbackPage-D_g2VCjj.cjs.map +1 -0
  9. package/dist/{BaIndexPage-Dkp_Eixx.js → BaIndexPage-B5scAEin.js} +2 -2
  10. package/dist/BaIndexPage-B5scAEin.js.map +1 -0
  11. package/dist/BaIndexPage-C3osYS_6.cjs +2 -0
  12. package/dist/BaIndexPage-C3osYS_6.cjs.map +1 -0
  13. package/dist/BaViewerPage-BPucPOSy.cjs +2 -0
  14. package/dist/BaViewerPage-BPucPOSy.cjs.map +1 -0
  15. package/dist/{BaViewerPage-DxD0eZm-.js → BaViewerPage-TL6IHeQx.js} +26 -26
  16. package/dist/BaViewerPage-TL6IHeQx.js.map +1 -0
  17. package/dist/{ConfirmEmailPage-su3Fvl0e.cjs → ConfirmEmailPage-B3mrPUvg.cjs} +2 -2
  18. package/dist/ConfirmEmailPage-B3mrPUvg.cjs.map +1 -0
  19. package/dist/{ConfirmEmailPage-BTp8J0pw.js → ConfirmEmailPage-DDp2IPE_.js} +2 -2
  20. package/dist/ConfirmEmailPage-DDp2IPE_.js.map +1 -0
  21. package/dist/CrossSchemaFkPage-BchJFOmH.js.map +1 -1
  22. package/dist/CrossSchemaFkPage-DqFNORYd.cjs.map +1 -1
  23. package/dist/{DatabasePage-DFIK8cSM.js → DatabasePage-BnaX9sis.js} +44 -48
  24. package/dist/DatabasePage-BnaX9sis.js.map +1 -0
  25. package/dist/DatabasePage-DAzb3FnS.cjs +2 -0
  26. package/dist/DatabasePage-DAzb3FnS.cjs.map +1 -0
  27. package/dist/DeveloperIndexPage-CtBfD2JI.cjs.map +1 -1
  28. package/dist/DeveloperIndexPage-D4zD_pop.js.map +1 -1
  29. package/dist/{DocRenderer-CcEn1iaa.js → DocRenderer-C5pM9SWP.js} +99 -94
  30. package/dist/DocRenderer-C5pM9SWP.js.map +1 -0
  31. package/dist/DocRenderer-D7hi9Oa-.cjs +2 -0
  32. package/dist/DocRenderer-D7hi9Oa-.cjs.map +1 -0
  33. package/dist/DocsIndexPage-BD6OOCak.js.map +1 -1
  34. package/dist/DocsIndexPage-BPfi0FQD.cjs.map +1 -1
  35. package/dist/{DualDbContextPage-BujD_coN.js → DualDbContextPage-CVBjCvGp.js} +2 -2
  36. package/dist/DualDbContextPage-CVBjCvGp.js.map +1 -0
  37. package/dist/{DualDbContextPage--Qk-qEgD.cjs → DualDbContextPage-Dz8NAewk.cjs} +2 -2
  38. package/dist/DualDbContextPage-Dz8NAewk.cjs.map +1 -0
  39. package/dist/{ForceChangePasswordPage-kEFsb5Aq.cjs → ForceChangePasswordPage-BqNyswSy.cjs} +2 -2
  40. package/dist/ForceChangePasswordPage-BqNyswSy.cjs.map +1 -0
  41. package/dist/{ForceChangePasswordPage-ClENqzCH.js → ForceChangePasswordPage-DkpGGEn7.js} +2 -2
  42. package/dist/ForceChangePasswordPage-DkpGGEn7.js.map +1 -0
  43. package/dist/{ForgotPasswordPage--Wl0Vxbv.cjs → ForgotPasswordPage-C7mySa8O.cjs} +2 -2
  44. package/dist/ForgotPasswordPage-C7mySa8O.cjs.map +1 -0
  45. package/dist/{ForgotPasswordPage-BEgvV5f-.js → ForgotPasswordPage-Dmi6wpMM.js} +2 -2
  46. package/dist/ForgotPasswordPage-Dmi6wpMM.js.map +1 -0
  47. package/dist/InfrastructurePage-D4ZjLzI_.cjs.map +1 -1
  48. package/dist/InfrastructurePage-q_y1z8T_.js.map +1 -1
  49. package/dist/InstallationPage-BJ-GBVPp.cjs.map +1 -1
  50. package/dist/InstallationPage-CXKmzZuN.js.map +1 -1
  51. package/dist/ModulesPage-B3p8e07v.js.map +1 -1
  52. package/dist/ModulesPage-lz8DUm3X.cjs.map +1 -1
  53. package/dist/{OnboardingWizardPage-Bx1UlTbr.js → OnboardingWizardPage-BeCNpdPL.js} +2 -2
  54. package/dist/OnboardingWizardPage-BeCNpdPL.js.map +1 -0
  55. package/dist/{OnboardingWizardPage-C7vendrq.cjs → OnboardingWizardPage-CgEpUx9X.cjs} +2 -2
  56. package/dist/OnboardingWizardPage-CgEpUx9X.cjs.map +1 -0
  57. package/dist/{RegisterPage-DKr8quRk.cjs → RegisterPage-BejbbAl9.cjs} +2 -2
  58. package/dist/RegisterPage-BejbbAl9.cjs.map +1 -0
  59. package/dist/{RegisterPage-BzV0sCTe.js → RegisterPage-CcuYYRBS.js} +2 -2
  60. package/dist/RegisterPage-CcuYYRBS.js.map +1 -0
  61. package/dist/{ResetPasswordPage-x4do1o-j.cjs → ResetPasswordPage-7brP8dT7.cjs} +2 -2
  62. package/dist/ResetPasswordPage-7brP8dT7.cjs.map +1 -0
  63. package/dist/{ResetPasswordPage-DphmJrcJ.js → ResetPasswordPage-BX3wnSSM.js} +2 -2
  64. package/dist/ResetPasswordPage-BX3wnSSM.js.map +1 -0
  65. package/dist/SettingsDocPage-DYXvb3M-.js.map +1 -1
  66. package/dist/SettingsDocPage-Dqj8KzOa.cjs.map +1 -1
  67. package/dist/SlaDocPage-D44QWNY8.cjs.map +1 -1
  68. package/dist/SlaDocPage-hLFLqLVa.js.map +1 -1
  69. package/dist/SmartStackPresentationPage-52Nb7F0X.cjs.map +1 -1
  70. package/dist/SmartStackPresentationPage-D3ku9GtQ.js.map +1 -1
  71. package/dist/{SupportDashboardDocPage-CLotzEwA.js → SupportDashboardDocPage-CG_Ahacx.js} +2 -2
  72. package/dist/SupportDashboardDocPage-CG_Ahacx.js.map +1 -0
  73. package/dist/{SupportDashboardDocPage-DpgGq5Mm.cjs → SupportDashboardDocPage-DfV-9_8r.cjs} +2 -2
  74. package/dist/SupportDashboardDocPage-DfV-9_8r.cjs.map +1 -0
  75. package/dist/{SupportEscalationDocPage-B-_ChfdN.js → SupportEscalationDocPage-C481D7pF.js} +2 -2
  76. package/dist/SupportEscalationDocPage-C481D7pF.js.map +1 -0
  77. package/dist/{SupportEscalationDocPage-WXkAQr8k.cjs → SupportEscalationDocPage-C65oCDZL.cjs} +2 -2
  78. package/dist/SupportEscalationDocPage-C65oCDZL.cjs.map +1 -0
  79. package/dist/SupportIndexPage-Bb0giRKn.js.map +1 -1
  80. package/dist/SupportIndexPage-CsDQ35Cu.cjs.map +1 -1
  81. package/dist/{SupportMyTicketsDocPage-DeRUdAIi.js → SupportMyTicketsDocPage-D2f6DaKb.js} +2 -2
  82. package/dist/SupportMyTicketsDocPage-D2f6DaKb.js.map +1 -0
  83. package/dist/{SupportMyTicketsDocPage-jE1UMaIY.cjs → SupportMyTicketsDocPage-Dbp6XBnH.cjs} +2 -2
  84. package/dist/SupportMyTicketsDocPage-Dbp6XBnH.cjs.map +1 -0
  85. package/dist/{SupportTemplatesDocPage-ajO-cHmK.cjs → SupportTemplatesDocPage-BkeDpR-8.cjs} +2 -2
  86. package/dist/SupportTemplatesDocPage-BkeDpR-8.cjs.map +1 -0
  87. package/dist/{SupportTemplatesDocPage-C8ZLzFJc.js → SupportTemplatesDocPage-sCKQlZFJ.js} +2 -2
  88. package/dist/SupportTemplatesDocPage-sCKQlZFJ.js.map +1 -0
  89. package/dist/{SupportTicketsDocPage-C_ybDTjC.cjs → SupportTicketsDocPage-B_603CpY.cjs} +2 -2
  90. package/dist/SupportTicketsDocPage-B_603CpY.cjs.map +1 -0
  91. package/dist/{SupportTicketsDocPage-DQhHfa6J.js → SupportTicketsDocPage-ClBa3qeY.js} +2 -2
  92. package/dist/SupportTicketsDocPage-ClBa3qeY.js.map +1 -0
  93. package/dist/TeamsIntegrationPage-BwhBcPAK.js.map +1 -1
  94. package/dist/TeamsIntegrationPage-DXj5MDRS.cjs.map +1 -1
  95. package/dist/ThemeDocPage-B6x55uSE.cjs.map +1 -1
  96. package/dist/ThemeDocPage-xkMbvMJG.js.map +1 -1
  97. package/dist/UserIndexPage-DSDfRWFx.js.map +1 -1
  98. package/dist/UserIndexPage-DahU6wzK.cjs.map +1 -1
  99. package/dist/components/ThemeSync.d.ts +2 -1
  100. package/dist/components/ThemeSync.d.ts.map +1 -1
  101. package/dist/components/auth/PermissionSyncHandler.d.ts +2 -1
  102. package/dist/components/auth/PermissionSyncHandler.d.ts.map +1 -1
  103. package/dist/components/dashboard/ApplicationActivityPieChart.d.ts +1 -1
  104. package/dist/components/dashboard/ApplicationActivityPieChart.d.ts.map +1 -1
  105. package/dist/components/dashboard/ApplicationUsageChart.d.ts +3 -2
  106. package/dist/components/dashboard/ApplicationUsageChart.d.ts.map +1 -1
  107. package/dist/components/dashboard/CurrentSessionCard.d.ts +3 -2
  108. package/dist/components/dashboard/CurrentSessionCard.d.ts.map +1 -1
  109. package/dist/components/dashboard/DeviceBreakdownChart.d.ts +1 -1
  110. package/dist/components/dashboard/DeviceBreakdownChart.d.ts.map +1 -1
  111. package/dist/components/dashboard/DeviceStatsCard.d.ts +3 -2
  112. package/dist/components/dashboard/DeviceStatsCard.d.ts.map +1 -1
  113. package/dist/components/dashboard/EngagementMetricsCard.d.ts +1 -1
  114. package/dist/components/dashboard/EngagementMetricsCard.d.ts.map +1 -1
  115. package/dist/components/dashboard/HierarchyDrillDownChart.d.ts +2 -2
  116. package/dist/components/dashboard/HierarchyDrillDownChart.d.ts.map +1 -1
  117. package/dist/components/dashboard/HourlyUsageChart.d.ts +3 -2
  118. package/dist/components/dashboard/HourlyUsageChart.d.ts.map +1 -1
  119. package/dist/components/dashboard/LoginErrorsTable.d.ts +3 -2
  120. package/dist/components/dashboard/LoginErrorsTable.d.ts.map +1 -1
  121. package/dist/components/dashboard/ModulePopularityChart.d.ts +2 -2
  122. package/dist/components/dashboard/ModulePopularityChart.d.ts.map +1 -1
  123. package/dist/components/dashboard/SessionAnalyticsChart.d.ts +3 -2
  124. package/dist/components/dashboard/SessionAnalyticsChart.d.ts.map +1 -1
  125. package/dist/components/dashboard/TenantActivityPieChart.d.ts +2 -2
  126. package/dist/components/dashboard/TenantActivityPieChart.d.ts.map +1 -1
  127. package/dist/components/dashboard/TenantPopularityChart.d.ts +2 -2
  128. package/dist/components/dashboard/TenantPopularityChart.d.ts.map +1 -1
  129. package/dist/components/dashboard/TenantUsageTrendChart.d.ts +2 -2
  130. package/dist/components/dashboard/TenantUsageTrendChart.d.ts.map +1 -1
  131. package/dist/components/dashboard/UsageTrendChart.d.ts +2 -2
  132. package/dist/components/dashboard/UsageTrendChart.d.ts.map +1 -1
  133. package/dist/components/dashboard/WeeklyUsageChart.d.ts +3 -2
  134. package/dist/components/dashboard/WeeklyUsageChart.d.ts.map +1 -1
  135. package/dist/components/docs/DocRenderer.d.ts +6 -5
  136. package/dist/components/docs/DocRenderer.d.ts.map +1 -1
  137. package/dist/components/docs/DocsSearch.d.ts +5 -4
  138. package/dist/components/docs/DocsSearch.d.ts.map +1 -1
  139. package/dist/components/email/EmailEditor.d.ts +7 -6
  140. package/dist/components/email/EmailEditor.d.ts.map +1 -1
  141. package/dist/components/errors/AccessDenied.d.ts +8 -7
  142. package/dist/components/errors/AccessDenied.d.ts.map +1 -1
  143. package/dist/components/errors/ErrorFallback.d.ts +4 -3
  144. package/dist/components/errors/ErrorFallback.d.ts.map +1 -1
  145. package/dist/components/errors/GlobalErrorBoundary.d.ts +3 -2
  146. package/dist/components/errors/GlobalErrorBoundary.d.ts.map +1 -1
  147. package/dist/components/errors/NoActiveWorkspace.d.ts +2 -1
  148. package/dist/components/errors/NoActiveWorkspace.d.ts.map +1 -1
  149. package/dist/components/errors/RouteErrorBoundary.d.ts +3 -2
  150. package/dist/components/errors/RouteErrorBoundary.d.ts.map +1 -1
  151. package/dist/components/favorites/FavoritesBar.d.ts +3 -2
  152. package/dist/components/favorites/FavoritesBar.d.ts.map +1 -1
  153. package/dist/components/favorites/FavoritesModal.d.ts +4 -3
  154. package/dist/components/favorites/FavoritesModal.d.ts.map +1 -1
  155. package/dist/components/layout/AdminHeader.d.ts +3 -2
  156. package/dist/components/layout/AdminHeader.d.ts.map +1 -1
  157. package/dist/components/layout/AdminSidebar.d.ts +4 -3
  158. package/dist/components/layout/AdminSidebar.d.ts.map +1 -1
  159. package/dist/components/layout/AppHeader.d.ts +3 -2
  160. package/dist/components/layout/AppHeader.d.ts.map +1 -1
  161. package/dist/components/layout/BusinessHeader.d.ts +3 -2
  162. package/dist/components/layout/BusinessHeader.d.ts.map +1 -1
  163. package/dist/components/layout/Footer.d.ts +2 -1
  164. package/dist/components/layout/Footer.d.ts.map +1 -1
  165. package/dist/components/layout/Header.d.ts +2 -1
  166. package/dist/components/layout/Header.d.ts.map +1 -1
  167. package/dist/components/layout/ModuleSidebar.d.ts +4 -3
  168. package/dist/components/layout/ModuleSidebar.d.ts.map +1 -1
  169. package/dist/components/layout/ResizableMainContent.d.ts +3 -2
  170. package/dist/components/layout/ResizableMainContent.d.ts.map +1 -1
  171. package/dist/components/layout/UserHeader.d.ts +3 -2
  172. package/dist/components/layout/UserHeader.d.ts.map +1 -1
  173. package/dist/components/layout/UserSidebar.d.ts +4 -3
  174. package/dist/components/layout/UserSidebar.d.ts.map +1 -1
  175. package/dist/components/license/FeatureGate.d.ts +6 -6
  176. package/dist/components/license/FeatureGate.d.ts.map +1 -1
  177. package/dist/components/license/FeatureRouteGuard.d.ts +3 -2
  178. package/dist/components/license/FeatureRouteGuard.d.ts.map +1 -1
  179. package/dist/components/license/LicenseActivationDialog.d.ts +4 -3
  180. package/dist/components/license/LicenseActivationDialog.d.ts.map +1 -1
  181. package/dist/components/license/LicenseAlertBanner.d.ts +2 -1
  182. package/dist/components/license/LicenseAlertBanner.d.ts.map +1 -1
  183. package/dist/components/license/LicenseBlockOverlay.d.ts +2 -1
  184. package/dist/components/license/LicenseBlockOverlay.d.ts.map +1 -1
  185. package/dist/components/license/LicenseContentBanner.d.ts +2 -1
  186. package/dist/components/license/LicenseContentBanner.d.ts.map +1 -1
  187. package/dist/components/license/LicenseGuard.d.ts +2 -1
  188. package/dist/components/license/LicenseGuard.d.ts.map +1 -1
  189. package/dist/components/license/LicenseStatusBadge.d.ts +3 -2
  190. package/dist/components/license/LicenseStatusBadge.d.ts.map +1 -1
  191. package/dist/components/notifications/NotificationBell.d.ts +2 -1
  192. package/dist/components/notifications/NotificationBell.d.ts.map +1 -1
  193. package/dist/components/platform/administration/ApplicationAccessCustomizeDrawer.d.ts +9 -8
  194. package/dist/components/platform/administration/ApplicationAccessCustomizeDrawer.d.ts.map +1 -1
  195. package/dist/components/platform/administration/ApplicationCard.d.ts +8 -8
  196. package/dist/components/platform/administration/ApplicationCard.d.ts.map +1 -1
  197. package/dist/components/platform/administration/ConflictDiffView.d.ts +4 -3
  198. package/dist/components/platform/administration/ConflictDiffView.d.ts.map +1 -1
  199. package/dist/components/platform/administration/EntraGroupRoleAssignment.d.ts +8 -7
  200. package/dist/components/platform/administration/EntraGroupRoleAssignment.d.ts.map +1 -1
  201. package/dist/components/platform/administration/GroupApplicationsTab.d.ts +4 -3
  202. package/dist/components/platform/administration/GroupApplicationsTab.d.ts.map +1 -1
  203. package/dist/components/platform/administration/GroupMembersTab.d.ts +5 -4
  204. package/dist/components/platform/administration/GroupMembersTab.d.ts.map +1 -1
  205. package/dist/components/platform/administration/GroupPermissionsView.d.ts +3 -2
  206. package/dist/components/platform/administration/GroupPermissionsView.d.ts.map +1 -1
  207. package/dist/components/platform/administration/GroupRoleAssignment.d.ts +10 -9
  208. package/dist/components/platform/administration/GroupRoleAssignment.d.ts.map +1 -1
  209. package/dist/components/platform/administration/GroupTenantsTab.d.ts +4 -3
  210. package/dist/components/platform/administration/GroupTenantsTab.d.ts.map +1 -1
  211. package/dist/components/platform/administration/PermissionDrillDownBar.d.ts +8 -7
  212. package/dist/components/platform/administration/PermissionDrillDownBar.d.ts.map +1 -1
  213. package/dist/components/platform/administration/PermissionMatrixFilters.d.ts +10 -9
  214. package/dist/components/platform/administration/PermissionMatrixFilters.d.ts.map +1 -1
  215. package/dist/components/platform/administration/PermissionMatrixTable.d.ts +15 -14
  216. package/dist/components/platform/administration/PermissionMatrixTable.d.ts.map +1 -1
  217. package/dist/components/platform/administration/PermissionPopover.d.ts +12 -11
  218. package/dist/components/platform/administration/PermissionPopover.d.ts.map +1 -1
  219. package/dist/components/platform/administration/TenantAccessCustomizeDrawer.d.ts +8 -7
  220. package/dist/components/platform/administration/TenantAccessCustomizeDrawer.d.ts.map +1 -1
  221. package/dist/components/platform/administration/TenantEntraTab.d.ts +5 -4
  222. package/dist/components/platform/administration/TenantEntraTab.d.ts.map +1 -1
  223. package/dist/components/platform/administration/UserGroupsTab.d.ts +4 -3
  224. package/dist/components/platform/administration/UserGroupsTab.d.ts.map +1 -1
  225. package/dist/components/platform/administration/UserRoleAssignment.d.ts +13 -12
  226. package/dist/components/platform/administration/UserRoleAssignment.d.ts.map +1 -1
  227. package/dist/components/platform/administration/access-requests/AccessRequestApprovalModal.d.ts +8 -7
  228. package/dist/components/platform/administration/access-requests/AccessRequestApprovalModal.d.ts.map +1 -1
  229. package/dist/components/platform/administration/access-requests/AccessRequestStatusBadge.d.ts +3 -2
  230. package/dist/components/platform/administration/access-requests/AccessRequestStatusBadge.d.ts.map +1 -1
  231. package/dist/components/platform/administration/access-requests/AccessRequestsListTab.d.ts +6 -5
  232. package/dist/components/platform/administration/access-requests/AccessRequestsListTab.d.ts.map +1 -1
  233. package/dist/components/platform/administration/access-requests/RequestAccessButton.d.ts +6 -5
  234. package/dist/components/platform/administration/access-requests/RequestAccessButton.d.ts.map +1 -1
  235. package/dist/components/platform/administration/ai/AiModelsTab.d.ts +6 -5
  236. package/dist/components/platform/administration/ai/AiModelsTab.d.ts.map +1 -1
  237. package/dist/components/platform/administration/ai/AiProfilesTab.d.ts +18 -17
  238. package/dist/components/platform/administration/ai/AiProfilesTab.d.ts.map +1 -1
  239. package/dist/components/platform/administration/ai/AiProvidersTab.d.ts +3 -2
  240. package/dist/components/platform/administration/ai/AiProvidersTab.d.ts.map +1 -1
  241. package/dist/components/platform/administration/ai/PromptTestPanel.d.ts +4 -3
  242. package/dist/components/platform/administration/ai/PromptTestPanel.d.ts.map +1 -1
  243. package/dist/components/platform/administration/applications/ApplicationAccessTab.d.ts +4 -3
  244. package/dist/components/platform/administration/applications/ApplicationAccessTab.d.ts.map +1 -1
  245. package/dist/components/platform/administration/applications/ApplicationInfoTab.d.ts +16 -16
  246. package/dist/components/platform/administration/applications/ApplicationInfoTab.d.ts.map +1 -1
  247. package/dist/components/platform/administration/applications/ApplicationModulesTab.d.ts +30 -29
  248. package/dist/components/platform/administration/applications/ApplicationModulesTab.d.ts.map +1 -1
  249. package/dist/components/platform/administration/applications/ApplicationPermissionsTab.d.ts +5 -4
  250. package/dist/components/platform/administration/applications/ApplicationPermissionsTab.d.ts.map +1 -1
  251. package/dist/components/platform/administration/applications/ApplicationPublicationTab.d.ts +49 -49
  252. package/dist/components/platform/administration/applications/ApplicationPublicationTab.d.ts.map +1 -1
  253. package/dist/components/platform/administration/entra/ConflictCard.d.ts +5 -4
  254. package/dist/components/platform/administration/entra/ConflictCard.d.ts.map +1 -1
  255. package/dist/components/platform/administration/entra/ResolutionModal.d.ts +6 -5
  256. package/dist/components/platform/administration/entra/ResolutionModal.d.ts.map +1 -1
  257. package/dist/components/platform/administration/organisations/CreateOrganisationForm.d.ts +8 -7
  258. package/dist/components/platform/administration/organisations/CreateOrganisationForm.d.ts.map +1 -1
  259. package/dist/components/platform/administration/permissions/GroupPermissionMatrix.d.ts +6 -5
  260. package/dist/components/platform/administration/permissions/GroupPermissionMatrix.d.ts.map +1 -1
  261. package/dist/components/platform/administration/permissions/PermissionStatusIndicator.d.ts +6 -5
  262. package/dist/components/platform/administration/permissions/PermissionStatusIndicator.d.ts.map +1 -1
  263. package/dist/components/platform/administration/permissions/RolePermissionMatrix.d.ts +3 -2
  264. package/dist/components/platform/administration/permissions/RolePermissionMatrix.d.ts.map +1 -1
  265. package/dist/components/platform/administration/permissions/UserPermissionMatrix.d.ts +5 -4
  266. package/dist/components/platform/administration/permissions/UserPermissionMatrix.d.ts.map +1 -1
  267. package/dist/components/platform/administration/settings/SettingsHistoryModal.d.ts +2 -1
  268. package/dist/components/platform/administration/settings/SettingsHistoryModal.d.ts.map +1 -1
  269. package/dist/components/platform/administration/tenants/TenantApplicationsTab.d.ts +55 -54
  270. package/dist/components/platform/administration/tenants/TenantApplicationsTab.d.ts.map +1 -1
  271. package/dist/components/platform/administration/tenants/TenantGroupsTab.d.ts +8 -7
  272. package/dist/components/platform/administration/tenants/TenantGroupsTab.d.ts.map +1 -1
  273. package/dist/components/platform/administration/tenants/TenantMembersTab.d.ts +8 -7
  274. package/dist/components/platform/administration/tenants/TenantMembersTab.d.ts.map +1 -1
  275. package/dist/components/platform/administration/tenants/TenantOverviewTab.d.ts +12 -11
  276. package/dist/components/platform/administration/tenants/TenantOverviewTab.d.ts.map +1 -1
  277. package/dist/components/platform/administration/tenants/TenantRolesTab.d.ts +2 -1
  278. package/dist/components/platform/administration/tenants/TenantRolesTab.d.ts.map +1 -1
  279. package/dist/components/platform/administration/tenants/TenantSupportSettingsTab.d.ts +4 -3
  280. package/dist/components/platform/administration/tenants/TenantSupportSettingsTab.d.ts.map +1 -1
  281. package/dist/components/platform/administration/users/UserActivitySessionsTab.d.ts +8 -7
  282. package/dist/components/platform/administration/users/UserActivitySessionsTab.d.ts.map +1 -1
  283. package/dist/components/platform/administration/users/UserApplicationsTab.d.ts +4 -3
  284. package/dist/components/platform/administration/users/UserApplicationsTab.d.ts.map +1 -1
  285. package/dist/components/platform/administration/users/UserHistoryTab.d.ts +7 -6
  286. package/dist/components/platform/administration/users/UserHistoryTab.d.ts.map +1 -1
  287. package/dist/components/platform/administration/users/UserInfoTab.d.ts +15 -14
  288. package/dist/components/platform/administration/users/UserInfoTab.d.ts.map +1 -1
  289. package/dist/components/platform/administration/users/UserSecurityTab.d.ts +23 -22
  290. package/dist/components/platform/administration/users/UserSecurityTab.d.ts.map +1 -1
  291. package/dist/components/platform/administration/users/UserTenantsTab.d.ts +22 -21
  292. package/dist/components/platform/administration/users/UserTenantsTab.d.ts.map +1 -1
  293. package/dist/components/platform/administration/workflows/WorkflowStepsEditor.d.ts +6 -5
  294. package/dist/components/platform/administration/workflows/WorkflowStepsEditor.d.ts.map +1 -1
  295. package/dist/components/platform/api/external-apps/ExternalAppAuditTab.d.ts +1 -1
  296. package/dist/components/platform/api/external-apps/ExternalAppAuditTab.d.ts.map +1 -1
  297. package/dist/components/platform/api/external-apps/ExternalAppExportsTab.d.ts +6 -5
  298. package/dist/components/platform/api/external-apps/ExternalAppExportsTab.d.ts.map +1 -1
  299. package/dist/components/platform/api/external-apps/ExternalAppInfoTab.d.ts +6 -5
  300. package/dist/components/platform/api/external-apps/ExternalAppInfoTab.d.ts.map +1 -1
  301. package/dist/components/platform/api/external-apps/ExternalAppKeysTab.d.ts +6 -5
  302. package/dist/components/platform/api/external-apps/ExternalAppKeysTab.d.ts.map +1 -1
  303. package/dist/components/platform/api/external-apps/ExternalAppPromptTab.d.ts +3 -2
  304. package/dist/components/platform/api/external-apps/ExternalAppPromptTab.d.ts.map +1 -1
  305. package/dist/components/platform/api/external-apps/ExternalAppRolesTab.d.ts +6 -5
  306. package/dist/components/platform/api/external-apps/ExternalAppRolesTab.d.ts.map +1 -1
  307. package/dist/components/platform/support/ActivityTimeline.d.ts +5 -4
  308. package/dist/components/platform/support/ActivityTimeline.d.ts.map +1 -1
  309. package/dist/components/platform/support/AiClassificationBadge.d.ts +7 -6
  310. package/dist/components/platform/support/AiClassificationBadge.d.ts.map +1 -1
  311. package/dist/components/platform/support/AiRoutingSuggestionPanel.d.ts +9 -8
  312. package/dist/components/platform/support/AiRoutingSuggestionPanel.d.ts.map +1 -1
  313. package/dist/components/platform/support/AiTicketSummary.d.ts +8 -7
  314. package/dist/components/platform/support/AiTicketSummary.d.ts.map +1 -1
  315. package/dist/components/platform/support/FilePreviewModal.d.ts +6 -5
  316. package/dist/components/platform/support/FilePreviewModal.d.ts.map +1 -1
  317. package/dist/components/platform/support/ScreenshotAnnotator.d.ts +6 -5
  318. package/dist/components/platform/support/ScreenshotAnnotator.d.ts.map +1 -1
  319. package/dist/components/platform/support/SlaBadge.d.ts +12 -11
  320. package/dist/components/platform/support/SlaBadge.d.ts.map +1 -1
  321. package/dist/components/platform/support/TemplatePicker.d.ts +6 -5
  322. package/dist/components/platform/support/TemplatePicker.d.ts.map +1 -1
  323. package/dist/components/platform/support/TicketConversation.d.ts +31 -30
  324. package/dist/components/platform/support/TicketConversation.d.ts.map +1 -1
  325. package/dist/components/platform/support/TicketDetailView.d.ts +3 -2
  326. package/dist/components/platform/support/TicketDetailView.d.ts.map +1 -1
  327. package/dist/components/platform/support/TicketSidebar.d.ts +19 -18
  328. package/dist/components/platform/support/TicketSidebar.d.ts.map +1 -1
  329. package/dist/components/platform/support/TicketSolutionPanel.d.ts +10 -9
  330. package/dist/components/platform/support/TicketSolutionPanel.d.ts.map +1 -1
  331. package/dist/components/platform/support/TicketWorkflow.d.ts +10 -9
  332. package/dist/components/platform/support/TicketWorkflow.d.ts.map +1 -1
  333. package/dist/components/platform/support/TicketWorkflowHorizontal.d.ts +19 -18
  334. package/dist/components/platform/support/TicketWorkflowHorizontal.d.ts.map +1 -1
  335. package/dist/components/platform/support/TicketsListView.d.ts +8 -7
  336. package/dist/components/platform/support/TicketsListView.d.ts.map +1 -1
  337. package/dist/components/routing/DocRoutes.d.ts +1 -1
  338. package/dist/components/routing/DocRoutes.d.ts.map +1 -1
  339. package/dist/components/routing/DynamicRouter.d.ts +2 -1
  340. package/dist/components/routing/DynamicRouter.d.ts.map +1 -1
  341. package/dist/components/routing/ProtectedRoute.d.ts +2 -1
  342. package/dist/components/routing/ProtectedRoute.d.ts.map +1 -1
  343. package/dist/components/routing/TenantNavigate.d.ts +4 -3
  344. package/dist/components/routing/TenantNavigate.d.ts.map +1 -1
  345. package/dist/components/routing/TenantRouteWrapper.d.ts +2 -1
  346. package/dist/components/routing/TenantRouteWrapper.d.ts.map +1 -1
  347. package/dist/components/session/SessionProvider.d.ts +2 -1
  348. package/dist/components/session/SessionProvider.d.ts.map +1 -1
  349. package/dist/components/session/SessionWarningModal.d.ts +6 -5
  350. package/dist/components/session/SessionWarningModal.d.ts.map +1 -1
  351. package/dist/components/tenants/TenantCard.d.ts +13 -12
  352. package/dist/components/tenants/TenantCard.d.ts.map +1 -1
  353. package/dist/components/tickets/CreateTicketButton.d.ts +4 -3
  354. package/dist/components/tickets/CreateTicketButton.d.ts.map +1 -1
  355. package/dist/components/tracking/PageTracker.d.ts +2 -1
  356. package/dist/components/tracking/PageTracker.d.ts.map +1 -1
  357. package/dist/components/tracking/TenantTracker.d.ts +2 -1
  358. package/dist/components/tracking/TenantTracker.d.ts.map +1 -1
  359. package/dist/components/ui/AppSwitcher.d.ts +2 -1
  360. package/dist/components/ui/AppSwitcher.d.ts.map +1 -1
  361. package/dist/components/ui/AvatarMenu.d.ts +2 -1
  362. package/dist/components/ui/AvatarMenu.d.ts.map +1 -1
  363. package/dist/components/ui/Breadcrumb.d.ts +7 -6
  364. package/dist/components/ui/Breadcrumb.d.ts.map +1 -1
  365. package/dist/components/ui/ConfirmModal.d.ts +11 -11
  366. package/dist/components/ui/ConfirmModal.d.ts.map +1 -1
  367. package/dist/components/ui/DataTable.d.ts +2 -1
  368. package/dist/components/ui/DataTable.d.ts.map +1 -1
  369. package/dist/components/ui/DataView.d.ts +54 -53
  370. package/dist/components/ui/DataView.d.ts.map +1 -1
  371. package/dist/components/ui/DocEdgeButton.d.ts +2 -1
  372. package/dist/components/ui/DocEdgeButton.d.ts.map +1 -1
  373. package/dist/components/ui/DocPanel.d.ts +2 -1
  374. package/dist/components/ui/DocPanel.d.ts.map +1 -1
  375. package/dist/components/ui/DocToggleButton.d.ts +4 -3
  376. package/dist/components/ui/DocToggleButton.d.ts.map +1 -1
  377. package/dist/components/ui/Drawer.d.ts +9 -8
  378. package/dist/components/ui/Drawer.d.ts.map +1 -1
  379. package/dist/components/ui/EntityCard.d.ts +75 -74
  380. package/dist/components/ui/EntityCard.d.ts.map +1 -1
  381. package/dist/components/ui/KanbanBoard.d.ts +23 -22
  382. package/dist/components/ui/KanbanBoard.d.ts.map +1 -1
  383. package/dist/components/ui/LanguageSwitcher.d.ts +2 -1
  384. package/dist/components/ui/LanguageSwitcher.d.ts.map +1 -1
  385. package/dist/components/ui/PageHeader.d.ts +6 -6
  386. package/dist/components/ui/PageHeader.d.ts.map +1 -1
  387. package/dist/components/ui/PageLoader.d.ts +2 -1
  388. package/dist/components/ui/PageLoader.d.ts.map +1 -1
  389. package/dist/components/ui/PermissionMatrix.d.ts +2 -1
  390. package/dist/components/ui/PermissionMatrix.d.ts.map +1 -1
  391. package/dist/components/ui/ProtectedButton.d.ts +9 -8
  392. package/dist/components/ui/ProtectedButton.d.ts.map +1 -1
  393. package/dist/components/ui/RestrictedModuleBanner.d.ts +2 -1
  394. package/dist/components/ui/RestrictedModuleBanner.d.ts.map +1 -1
  395. package/dist/components/ui/ScopeBanner.d.ts +5 -4
  396. package/dist/components/ui/ScopeBanner.d.ts.map +1 -1
  397. package/dist/components/ui/SelectWithOther.d.ts +10 -9
  398. package/dist/components/ui/SelectWithOther.d.ts.map +1 -1
  399. package/dist/components/ui/SortableList.d.ts +6 -5
  400. package/dist/components/ui/SortableList.d.ts.map +1 -1
  401. package/dist/components/ui/TenantScopeFilter.d.ts +8 -7
  402. package/dist/components/ui/TenantScopeFilter.d.ts.map +1 -1
  403. package/dist/components/ui/TenantScopeSelector.d.ts +8 -7
  404. package/dist/components/ui/TenantScopeSelector.d.ts.map +1 -1
  405. package/dist/components/ui/TenantSelector.d.ts +2 -1
  406. package/dist/components/ui/TenantSelector.d.ts.map +1 -1
  407. package/dist/components/ui/ThemeCustomizer.d.ts +5 -4
  408. package/dist/components/ui/ThemeCustomizer.d.ts.map +1 -1
  409. package/dist/components/ui/ThemeScopeSelector.d.ts +3 -2
  410. package/dist/components/ui/ThemeScopeSelector.d.ts.map +1 -1
  411. package/dist/components/ui/ThemeSwitcher.d.ts +2 -1
  412. package/dist/components/ui/ThemeSwitcher.d.ts.map +1 -1
  413. package/dist/components/ui/Tooltip.d.ts +14 -13
  414. package/dist/components/ui/Tooltip.d.ts.map +1 -1
  415. package/dist/components/ui/UnderDevelopment.d.ts +8 -7
  416. package/dist/components/ui/UnderDevelopment.d.ts.map +1 -1
  417. package/dist/components/ui/UnlockAccountModal.d.ts +6 -5
  418. package/dist/components/ui/UnlockAccountModal.d.ts.map +1 -1
  419. package/dist/components/ui/ViewModeToggle.d.ts +4 -3
  420. package/dist/components/ui/ViewModeToggle.d.ts.map +1 -1
  421. package/dist/contexts/AuthContext.d.ts +2 -1
  422. package/dist/contexts/AuthContext.d.ts.map +1 -1
  423. package/dist/contexts/DocPanelContext.d.ts +2 -1
  424. package/dist/contexts/DocPanelContext.d.ts.map +1 -1
  425. package/dist/contexts/FavoritesContext.d.ts +2 -1
  426. package/dist/contexts/FavoritesContext.d.ts.map +1 -1
  427. package/dist/contexts/FeatureConfigContext.d.ts +3 -2
  428. package/dist/contexts/FeatureConfigContext.d.ts.map +1 -1
  429. package/dist/contexts/LicenseContext.d.ts +2 -1
  430. package/dist/contexts/LicenseContext.d.ts.map +1 -1
  431. package/dist/contexts/NavigationContext.d.ts +2 -1
  432. package/dist/contexts/NavigationContext.d.ts.map +1 -1
  433. package/dist/contexts/SidebarContext.d.ts +2 -1
  434. package/dist/contexts/SidebarContext.d.ts.map +1 -1
  435. package/dist/contexts/SignalRContext.d.ts +2 -1
  436. package/dist/contexts/SignalRContext.d.ts.map +1 -1
  437. package/dist/contexts/TenantContext.d.ts +2 -1
  438. package/dist/contexts/TenantContext.d.ts.map +1 -1
  439. package/dist/contexts/ThemeContext.d.ts +2 -1
  440. package/dist/contexts/ThemeContext.d.ts.map +1 -1
  441. package/dist/extensions/ExtensionContext.d.ts +4 -3
  442. package/dist/extensions/ExtensionContext.d.ts.map +1 -1
  443. package/dist/extensions/PageRegistry.d.ts +6 -5
  444. package/dist/extensions/PageRegistry.d.ts.map +1 -1
  445. package/dist/extensions/SlotFill.d.ts +13 -13
  446. package/dist/extensions/SlotFill.d.ts.map +1 -1
  447. package/dist/extensions/types.d.ts +10 -10
  448. package/dist/extensions/types.d.ts.map +1 -1
  449. package/dist/hooks/useAccessRequestActions.d.ts.map +1 -1
  450. package/dist/hooks/useAccessRequests.d.ts.map +1 -1
  451. package/dist/hooks/useAdminTenants.d.ts.map +1 -1
  452. package/dist/hooks/useClientContext.d.ts.map +1 -1
  453. package/dist/hooks/useCollapsibleState.d.ts.map +1 -1
  454. package/dist/hooks/useCreateSupportTicket.d.ts +23 -21
  455. package/dist/hooks/useCreateSupportTicket.d.ts.map +1 -1
  456. package/dist/hooks/useLocale.d.ts.map +1 -1
  457. package/dist/hooks/useLoginForm.d.ts +5 -4
  458. package/dist/hooks/useLoginForm.d.ts.map +1 -1
  459. package/dist/hooks/useNotifications.d.ts.map +1 -1
  460. package/dist/hooks/usePageTracking.d.ts.map +1 -1
  461. package/dist/hooks/usePagination.d.ts +1 -1
  462. package/dist/hooks/usePagination.d.ts.map +1 -1
  463. package/dist/hooks/usePermissionSync.d.ts +2 -1
  464. package/dist/hooks/usePermissionSync.d.ts.map +1 -1
  465. package/dist/hooks/useRestrictedModuleCheck.d.ts.map +1 -1
  466. package/dist/hooks/useSessionMonitor.d.ts +7 -5
  467. package/dist/hooks/useSessionMonitor.d.ts.map +1 -1
  468. package/dist/hooks/useSettingsSection.d.ts.map +1 -1
  469. package/dist/hooks/useSignalR.d.ts.map +1 -1
  470. package/dist/hooks/useTenantCreateForm.d.ts +24 -22
  471. package/dist/hooks/useTenantCreateForm.d.ts.map +1 -1
  472. package/dist/hooks/useTenantFavorites.d.ts.map +1 -1
  473. package/dist/hooks/useTenantFilters.d.ts.map +1 -1
  474. package/dist/hooks/useTenantTracking.d.ts.map +1 -1
  475. package/dist/hooks/useTicketSignalR.d.ts.map +1 -1
  476. package/dist/hooks/useUserAccessRequests.d.ts.map +1 -1
  477. package/dist/i18n/config.d.ts +1 -1
  478. package/dist/i18n/config.d.ts.map +1 -1
  479. package/dist/{index-DGeNdATi.js → index-3lcyR754.js} +2 -2
  480. package/dist/{index-DGeNdATi.js.map → index-3lcyR754.js.map} +1 -1
  481. package/dist/{index-DJXny6rD.cjs → index-AM9K908G.cjs} +2 -2
  482. package/dist/{index-DJXny6rD.cjs.map → index-AM9K908G.cjs.map} +1 -1
  483. package/dist/{index-ASxPhrgZ.cjs → index-BASU1QDx.cjs} +2 -2
  484. package/dist/index-BASU1QDx.cjs.map +1 -0
  485. package/dist/{index-ChVCBF4t.js → index-BBFFDXgT.js} +2 -2
  486. package/dist/{index-ChVCBF4t.js.map → index-BBFFDXgT.js.map} +1 -1
  487. package/dist/{index-C54HbULX.cjs → index-BBQMnq4P.cjs} +2 -2
  488. package/dist/index-BBQMnq4P.cjs.map +1 -0
  489. package/dist/{index-CUISVUMx.js → index-BEOtfRxa.js} +16 -16
  490. package/dist/index-BEOtfRxa.js.map +1 -0
  491. package/dist/{index-D4u23zHI.js → index-BEeLN5ui.js} +24 -24
  492. package/dist/index-BEeLN5ui.js.map +1 -0
  493. package/dist/{index-Du4fQfix.cjs → index-BEpBEF5G.cjs} +2 -2
  494. package/dist/index-BEpBEF5G.cjs.map +1 -0
  495. package/dist/{index-BlHDI4zj.js → index-BIB3FxMF.js} +14 -14
  496. package/dist/index-BIB3FxMF.js.map +1 -0
  497. package/dist/{index-Txfokhn3.cjs → index-BVUCDL0k.cjs} +2 -2
  498. package/dist/index-BVUCDL0k.cjs.map +1 -0
  499. package/dist/{index-jpSTOjXU.js → index-BYYgvEcO.js} +17 -17
  500. package/dist/index-BYYgvEcO.js.map +1 -0
  501. package/dist/{index-CU66n-zU.js → index-B_lFRwmY.js} +13 -13
  502. package/dist/index-B_lFRwmY.js.map +1 -0
  503. package/dist/{index-Blfc9wKG.js → index-Bbd3D6A4.js} +8 -8
  504. package/dist/index-Bbd3D6A4.js.map +1 -0
  505. package/dist/index-BfMaHuWh.cjs +48 -0
  506. package/dist/index-BfMaHuWh.cjs.map +1 -0
  507. package/dist/index-C0AgM8YN.cjs.map +1 -1
  508. package/dist/index-C0rFTzxZ.cjs +2 -0
  509. package/dist/index-C0rFTzxZ.cjs.map +1 -0
  510. package/dist/{index-By0u9UFY.js → index-CCS0saZk.js} +10 -10
  511. package/dist/index-CCS0saZk.js.map +1 -0
  512. package/dist/{index-C40Dlolq.js → index-CID51vRa.js} +28 -28
  513. package/dist/index-CID51vRa.js.map +1 -0
  514. package/dist/index-CO5QP9C1.cjs +2 -0
  515. package/dist/index-CO5QP9C1.cjs.map +1 -0
  516. package/dist/{index-CI1DJrFE.js → index-CaI6ZbEo.js} +12 -12
  517. package/dist/index-CaI6ZbEo.js.map +1 -0
  518. package/dist/{index-DKRiN1hJ.cjs → index-CaLDUVLs.cjs} +2 -2
  519. package/dist/{index-DKRiN1hJ.cjs.map → index-CaLDUVLs.cjs.map} +1 -1
  520. package/dist/index-CdORB0b4.cjs.map +1 -1
  521. package/dist/{index-Dxau-XnQ.cjs → index-Cdu0fSs8.cjs} +2 -2
  522. package/dist/index-Cdu0fSs8.cjs.map +1 -0
  523. package/dist/{index-Bup-dL1l.cjs → index-CiAIT31Y.cjs} +2 -2
  524. package/dist/{index-Bup-dL1l.cjs.map → index-CiAIT31Y.cjs.map} +1 -1
  525. package/dist/{index-ClIOix1g.js → index-ClrwWu9J.js} +2 -2
  526. package/dist/{index-ClIOix1g.js.map → index-ClrwWu9J.js.map} +1 -1
  527. package/dist/{index-DdsLBKHV.cjs → index-CtcTcQqt.cjs} +2 -2
  528. package/dist/{index-DdsLBKHV.cjs.map → index-CtcTcQqt.cjs.map} +1 -1
  529. package/dist/{index-DM5ogbum.js → index-CzCt3Aan.js} +2 -2
  530. package/dist/{index-DM5ogbum.js.map → index-CzCt3Aan.js.map} +1 -1
  531. package/dist/index-D1WPBG1_.cjs +2 -0
  532. package/dist/index-D1WPBG1_.cjs.map +1 -0
  533. package/dist/{index-Dsbkiw3B.js → index-DA3kbmS5.js} +2 -2
  534. package/dist/{index-Dsbkiw3B.js.map → index-DA3kbmS5.js.map} +1 -1
  535. package/dist/{index-D6zlXbv_.js → index-DE40yc39.js} +2 -2
  536. package/dist/{index-D6zlXbv_.js.map → index-DE40yc39.js.map} +1 -1
  537. package/dist/{index-DmuVa7Ye.cjs → index-DIuoVYFu.cjs} +2 -2
  538. package/dist/index-DIuoVYFu.cjs.map +1 -0
  539. package/dist/{index-DDJTWztK.cjs → index-DLSMVKFE.cjs} +2 -2
  540. package/dist/{index-DDJTWztK.cjs.map → index-DLSMVKFE.cjs.map} +1 -1
  541. package/dist/index-DQBVnnd6.cjs +2 -0
  542. package/dist/index-DQBVnnd6.cjs.map +1 -0
  543. package/dist/{index-BYhFG50Z.cjs → index-DRT2wvEs.cjs} +2 -2
  544. package/dist/index-DRT2wvEs.cjs.map +1 -0
  545. package/dist/{index-Cv7iWoG8.js → index-DRc5qb2I.js} +15 -15
  546. package/dist/index-DRc5qb2I.js.map +1 -0
  547. package/dist/index-DTAZtzQ6.js.map +1 -1
  548. package/dist/{index-BnWMDCRU.cjs → index-DYJbiXHU.cjs} +2 -2
  549. package/dist/index-DYJbiXHU.cjs.map +1 -0
  550. package/dist/{index-D8xuGyjU.js → index-DhVauF9E.js} +16 -16
  551. package/dist/index-DhVauF9E.js.map +1 -0
  552. package/dist/index-DiQ2SDvl.js.map +1 -1
  553. package/dist/{index-BcO3pBlL.js → index-Dm5ZLB9x.js} +14 -14
  554. package/dist/index-Dm5ZLB9x.js.map +1 -0
  555. package/dist/{index-CBOLnJkG.cjs → index-HWG-CG1i.cjs} +2 -2
  556. package/dist/index-HWG-CG1i.cjs.map +1 -0
  557. package/dist/{index-0Jhdcj59.js → index-Kn_ynW2m.js} +3298 -3200
  558. package/dist/index-Kn_ynW2m.js.map +1 -0
  559. package/dist/{index-B2rKKVDN.js → index-L994YeGJ.js} +7 -7
  560. package/dist/index-L994YeGJ.js.map +1 -0
  561. package/dist/{index-1tvWzIw0.cjs → index-OhzFdH9N.cjs} +2 -2
  562. package/dist/{index-1tvWzIw0.cjs.map → index-OhzFdH9N.cjs.map} +1 -1
  563. package/dist/{index-CnmIX2MY.js → index-Z6aHkjiA.js} +23 -20
  564. package/dist/index-Z6aHkjiA.js.map +1 -0
  565. package/dist/index-p2jNjCTo.cjs +2 -0
  566. package/dist/index-p2jNjCTo.cjs.map +1 -0
  567. package/dist/{index-DwATtWun.js → index-vUb_gIjC.js} +11 -11
  568. package/dist/index-vUb_gIjC.js.map +1 -0
  569. package/dist/{index-eAHjmtzn.cjs → index-xCGnOlox.cjs} +2 -2
  570. package/dist/index-xCGnOlox.cjs.map +1 -0
  571. package/dist/layouts/AdminLayout.d.ts +2 -1
  572. package/dist/layouts/AdminLayout.d.ts.map +1 -1
  573. package/dist/layouts/AppLayout.d.ts +2 -1
  574. package/dist/layouts/AppLayout.d.ts.map +1 -1
  575. package/dist/layouts/AuthLayout.d.ts +2 -1
  576. package/dist/layouts/AuthLayout.d.ts.map +1 -1
  577. package/dist/layouts/BusinessLayout.d.ts +2 -1
  578. package/dist/layouts/BusinessLayout.d.ts.map +1 -1
  579. package/dist/layouts/DocsLayout.d.ts +2 -1
  580. package/dist/layouts/DocsLayout.d.ts.map +1 -1
  581. package/dist/layouts/PublicLayout.d.ts +2 -1
  582. package/dist/layouts/PublicLayout.d.ts.map +1 -1
  583. package/dist/layouts/UserLayout.d.ts +2 -1
  584. package/dist/layouts/UserLayout.d.ts.map +1 -1
  585. package/dist/pages/ApplicationsPage.d.ts +2 -1
  586. package/dist/pages/ApplicationsPage.d.ts.map +1 -1
  587. package/dist/pages/HomePage.d.ts +2 -1
  588. package/dist/pages/HomePage.d.ts.map +1 -1
  589. package/dist/pages/LoginPage.d.ts +2 -1
  590. package/dist/pages/LoginPage.d.ts.map +1 -1
  591. package/dist/pages/NotFoundPage.d.ts +2 -1
  592. package/dist/pages/NotFoundPage.d.ts.map +1 -1
  593. package/dist/pages/auth/AuthCallbackPage.d.ts +2 -1
  594. package/dist/pages/auth/AuthCallbackPage.d.ts.map +1 -1
  595. package/dist/pages/auth/ConfirmEmailPage.d.ts +2 -1
  596. package/dist/pages/auth/ConfirmEmailPage.d.ts.map +1 -1
  597. package/dist/pages/auth/ForceChangePasswordPage.d.ts +2 -1
  598. package/dist/pages/auth/ForceChangePasswordPage.d.ts.map +1 -1
  599. package/dist/pages/auth/ForgotPasswordPage.d.ts +2 -1
  600. package/dist/pages/auth/ForgotPasswordPage.d.ts.map +1 -1
  601. package/dist/pages/auth/OnboardingWizardPage.d.ts +2 -1
  602. package/dist/pages/auth/OnboardingWizardPage.d.ts.map +1 -1
  603. package/dist/pages/auth/RegisterPage.d.ts +2 -1
  604. package/dist/pages/auth/RegisterPage.d.ts.map +1 -1
  605. package/dist/pages/auth/ResetPasswordPage.d.ts +2 -1
  606. package/dist/pages/auth/ResetPasswordPage.d.ts.map +1 -1
  607. package/dist/pages/business/BusinessApplicationsGridPage.d.ts +2 -1
  608. package/dist/pages/business/BusinessApplicationsGridPage.d.ts.map +1 -1
  609. package/dist/pages/docs/business/platform/administration/ai/index.d.ts +2 -1
  610. package/dist/pages/docs/business/platform/administration/ai/index.d.ts.map +1 -1
  611. package/dist/pages/docs/business/platform/administration/applications/index.d.ts +2 -1
  612. package/dist/pages/docs/business/platform/administration/applications/index.d.ts.map +1 -1
  613. package/dist/pages/docs/business/platform/administration/configuration/index.d.ts +2 -1
  614. package/dist/pages/docs/business/platform/administration/configuration/index.d.ts.map +1 -1
  615. package/dist/pages/docs/business/platform/administration/configuration/license/index.d.ts +2 -1
  616. package/dist/pages/docs/business/platform/administration/configuration/license/index.d.ts.map +1 -1
  617. package/dist/pages/docs/business/platform/administration/entra/index.d.ts +2 -1
  618. package/dist/pages/docs/business/platform/administration/entra/index.d.ts.map +1 -1
  619. package/dist/pages/docs/business/platform/administration/permissions/assignments/index.d.ts +2 -1
  620. package/dist/pages/docs/business/platform/administration/permissions/assignments/index.d.ts.map +1 -1
  621. package/dist/pages/docs/business/platform/administration/permissions/index.d.ts +2 -1
  622. package/dist/pages/docs/business/platform/administration/permissions/index.d.ts.map +1 -1
  623. package/dist/pages/docs/business/platform/administration/tenants/access-requests/index.d.ts +2 -1
  624. package/dist/pages/docs/business/platform/administration/tenants/access-requests/index.d.ts.map +1 -1
  625. package/dist/pages/docs/business/platform/administration/tenants/applications/index.d.ts +2 -1
  626. package/dist/pages/docs/business/platform/administration/tenants/applications/index.d.ts.map +1 -1
  627. package/dist/pages/docs/business/platform/administration/tenants/business/index.d.ts +2 -1
  628. package/dist/pages/docs/business/platform/administration/tenants/business/index.d.ts.map +1 -1
  629. package/dist/pages/docs/business/platform/administration/tenants/index.d.ts +2 -1
  630. package/dist/pages/docs/business/platform/administration/tenants/index.d.ts.map +1 -1
  631. package/dist/pages/docs/business/platform/administration/tenants/organisations/index.d.ts +2 -1
  632. package/dist/pages/docs/business/platform/administration/tenants/organisations/index.d.ts.map +1 -1
  633. package/dist/pages/docs/business/platform/administration/tenants/other/index.d.ts +2 -1
  634. package/dist/pages/docs/business/platform/administration/tenants/other/index.d.ts.map +1 -1
  635. package/dist/pages/docs/business/platform/administration/tenants/personal/index.d.ts +2 -1
  636. package/dist/pages/docs/business/platform/administration/tenants/personal/index.d.ts.map +1 -1
  637. package/dist/pages/docs/business/platform/administration/tenants/template/index.d.ts +2 -1
  638. package/dist/pages/docs/business/platform/administration/tenants/template/index.d.ts.map +1 -1
  639. package/dist/pages/docs/business/platform/administration/users/dashboard/index.d.ts +2 -1
  640. package/dist/pages/docs/business/platform/administration/users/dashboard/index.d.ts.map +1 -1
  641. package/dist/pages/docs/business/platform/administration/users/groups/index.d.ts +2 -1
  642. package/dist/pages/docs/business/platform/administration/users/groups/index.d.ts.map +1 -1
  643. package/dist/pages/docs/business/platform/administration/users/index.d.ts +2 -1
  644. package/dist/pages/docs/business/platform/administration/users/index.d.ts.map +1 -1
  645. package/dist/pages/docs/business/platform/administration/users/references/index.d.ts +2 -1
  646. package/dist/pages/docs/business/platform/administration/users/references/index.d.ts.map +1 -1
  647. package/dist/pages/docs/business/platform/administration/workflows/index.d.ts +2 -1
  648. package/dist/pages/docs/business/platform/administration/workflows/index.d.ts.map +1 -1
  649. package/dist/pages/docs/business/platform/support/tickets/index.d.ts +2 -1
  650. package/dist/pages/docs/business/platform/support/tickets/index.d.ts.map +1 -1
  651. package/dist/pages/notifications/NotificationsPage.d.ts +2 -1
  652. package/dist/pages/notifications/NotificationsPage.d.ts.map +1 -1
  653. package/dist/pages/personal/myspace/MyAccessRequestsPage.d.ts +2 -1
  654. package/dist/pages/personal/myspace/MyAccessRequestsPage.d.ts.map +1 -1
  655. package/dist/pages/personal/myspace/MyTenantsPage.d.ts +2 -1
  656. package/dist/pages/personal/myspace/MyTenantsPage.d.ts.map +1 -1
  657. package/dist/pages/personal/myspace/PortalDashboardPage.d.ts +2 -1
  658. package/dist/pages/personal/myspace/PortalDashboardPage.d.ts.map +1 -1
  659. package/dist/pages/personal/myspace/PreferencesPage.d.ts +2 -1
  660. package/dist/pages/personal/myspace/PreferencesPage.d.ts.map +1 -1
  661. package/dist/pages/personal/myspace/ProfilePage.d.ts +2 -1
  662. package/dist/pages/personal/myspace/ProfilePage.d.ts.map +1 -1
  663. package/dist/pages/personal/myspace/UserDashboardPage.d.ts +2 -1
  664. package/dist/pages/personal/myspace/UserDashboardPage.d.ts.map +1 -1
  665. package/dist/pages/platform/administration/DashboardPage.d.ts +2 -1
  666. package/dist/pages/platform/administration/DashboardPage.d.ts.map +1 -1
  667. package/dist/pages/platform/administration/ai/AiAgentDetailPage.d.ts +2 -1
  668. package/dist/pages/platform/administration/ai/AiAgentDetailPage.d.ts.map +1 -1
  669. package/dist/pages/platform/administration/ai/AiAgentEditPage.d.ts +2 -1
  670. package/dist/pages/platform/administration/ai/AiAgentEditPage.d.ts.map +1 -1
  671. package/dist/pages/platform/administration/ai/AiAgentsPage.d.ts +2 -1
  672. package/dist/pages/platform/administration/ai/AiAgentsPage.d.ts.map +1 -1
  673. package/dist/pages/platform/administration/ai/AiBlockDefinitionDetailPage.d.ts +2 -1
  674. package/dist/pages/platform/administration/ai/AiBlockDefinitionDetailPage.d.ts.map +1 -1
  675. package/dist/pages/platform/administration/ai/AiBlockDefinitionEditPage.d.ts +2 -1
  676. package/dist/pages/platform/administration/ai/AiBlockDefinitionEditPage.d.ts.map +1 -1
  677. package/dist/pages/platform/administration/ai/AiBlockDefinitionsListPage.d.ts +2 -1
  678. package/dist/pages/platform/administration/ai/AiBlockDefinitionsListPage.d.ts.map +1 -1
  679. package/dist/pages/platform/administration/ai/AiDashboardPage.d.ts +2 -1
  680. package/dist/pages/platform/administration/ai/AiDashboardPage.d.ts.map +1 -1
  681. package/dist/pages/platform/administration/ai/AiMonitoringPage.d.ts +2 -1
  682. package/dist/pages/platform/administration/ai/AiMonitoringPage.d.ts.map +1 -1
  683. package/dist/pages/platform/administration/ai/AiPromptsListPage.d.ts +2 -1
  684. package/dist/pages/platform/administration/ai/AiPromptsListPage.d.ts.map +1 -1
  685. package/dist/pages/platform/administration/ai/AiPromptsPage.d.ts +2 -1
  686. package/dist/pages/platform/administration/ai/AiPromptsPage.d.ts.map +1 -1
  687. package/dist/pages/platform/administration/ai/AiSettingsPage.d.ts +2 -1
  688. package/dist/pages/platform/administration/ai/AiSettingsPage.d.ts.map +1 -1
  689. package/dist/pages/platform/administration/ai/AiSkillsDetailPage.d.ts +2 -1
  690. package/dist/pages/platform/administration/ai/AiSkillsDetailPage.d.ts.map +1 -1
  691. package/dist/pages/platform/administration/ai/AiSkillsEditPage.d.ts +2 -1
  692. package/dist/pages/platform/administration/ai/AiSkillsEditPage.d.ts.map +1 -1
  693. package/dist/pages/platform/administration/applications/ApplicationDetailPage.d.ts +2 -1
  694. package/dist/pages/platform/administration/applications/ApplicationDetailPage.d.ts.map +1 -1
  695. package/dist/pages/platform/administration/applications/ApplicationsGridPage.d.ts +2 -1
  696. package/dist/pages/platform/administration/applications/ApplicationsGridPage.d.ts.map +1 -1
  697. package/dist/pages/platform/administration/applications/ApplicationsListPage.d.ts.map +1 -1
  698. package/dist/pages/platform/administration/applications/NavigationAppsPage.d.ts +2 -1
  699. package/dist/pages/platform/administration/applications/NavigationAppsPage.d.ts.map +1 -1
  700. package/dist/pages/platform/administration/configuration/appsettings/AppSettingsPage.d.ts +2 -1
  701. package/dist/pages/platform/administration/configuration/appsettings/AppSettingsPage.d.ts.map +1 -1
  702. package/dist/pages/platform/administration/configuration/appsettings/AuthenticationSection.d.ts +2 -1
  703. package/dist/pages/platform/administration/configuration/appsettings/AuthenticationSection.d.ts.map +1 -1
  704. package/dist/pages/platform/administration/configuration/appsettings/EmailSection.d.ts +2 -1
  705. package/dist/pages/platform/administration/configuration/appsettings/EmailSection.d.ts.map +1 -1
  706. package/dist/pages/platform/administration/configuration/appsettings/EntraSection.d.ts +2 -1
  707. package/dist/pages/platform/administration/configuration/appsettings/EntraSection.d.ts.map +1 -1
  708. package/dist/pages/platform/administration/configuration/appsettings/InfrastructureSection.d.ts +2 -1
  709. package/dist/pages/platform/administration/configuration/appsettings/InfrastructureSection.d.ts.map +1 -1
  710. package/dist/pages/platform/administration/configuration/appsettings/LoggingSection.d.ts +2 -1
  711. package/dist/pages/platform/administration/configuration/appsettings/LoggingSection.d.ts.map +1 -1
  712. package/dist/pages/platform/administration/configuration/license/LicenseManagementPage.d.ts +2 -1
  713. package/dist/pages/platform/administration/configuration/license/LicenseManagementPage.d.ts.map +1 -1
  714. package/dist/pages/platform/administration/configuration/settings/FileUploadSettingsSection.d.ts +2 -1
  715. package/dist/pages/platform/administration/configuration/settings/FileUploadSettingsSection.d.ts.map +1 -1
  716. package/dist/pages/platform/administration/configuration/settings/GeneralSettingsSection.d.ts +2 -1
  717. package/dist/pages/platform/administration/configuration/settings/GeneralSettingsSection.d.ts.map +1 -1
  718. package/dist/pages/platform/administration/configuration/settings/LegalFileSettingsSection.d.ts +2 -1
  719. package/dist/pages/platform/administration/configuration/settings/LegalFileSettingsSection.d.ts.map +1 -1
  720. package/dist/pages/platform/administration/configuration/settings/SettingsPage.d.ts +2 -1
  721. package/dist/pages/platform/administration/configuration/settings/SettingsPage.d.ts.map +1 -1
  722. package/dist/pages/platform/administration/configuration/settings/StorageInfoSection.d.ts +2 -1
  723. package/dist/pages/platform/administration/configuration/settings/StorageInfoSection.d.ts.map +1 -1
  724. package/dist/pages/platform/administration/entra/EntraConflictsPage.d.ts +2 -1
  725. package/dist/pages/platform/administration/entra/EntraConflictsPage.d.ts.map +1 -1
  726. package/dist/pages/platform/administration/entra/EntraDashboardPage.d.ts +2 -1
  727. package/dist/pages/platform/administration/entra/EntraDashboardPage.d.ts.map +1 -1
  728. package/dist/pages/platform/administration/entra/EntraGroupsPage.d.ts +2 -1
  729. package/dist/pages/platform/administration/entra/EntraGroupsPage.d.ts.map +1 -1
  730. package/dist/pages/platform/administration/entra/EntraSettingsPage.d.ts +2 -1
  731. package/dist/pages/platform/administration/entra/EntraSettingsPage.d.ts.map +1 -1
  732. package/dist/pages/platform/administration/entra/EntraUsersPage.d.ts +2 -1
  733. package/dist/pages/platform/administration/entra/EntraUsersPage.d.ts.map +1 -1
  734. package/dist/pages/platform/administration/permissions/AssignmentsPage.d.ts +2 -1
  735. package/dist/pages/platform/administration/permissions/AssignmentsPage.d.ts.map +1 -1
  736. package/dist/pages/platform/administration/permissions/PermissionDetailPage.d.ts +2 -1
  737. package/dist/pages/platform/administration/permissions/PermissionDetailPage.d.ts.map +1 -1
  738. package/dist/pages/platform/administration/permissions/PermissionsPage.d.ts +2 -1
  739. package/dist/pages/platform/administration/permissions/PermissionsPage.d.ts.map +1 -1
  740. package/dist/pages/platform/administration/permissions/RoleDetailPage.d.ts +2 -1
  741. package/dist/pages/platform/administration/permissions/RoleDetailPage.d.ts.map +1 -1
  742. package/dist/pages/platform/administration/permissions/RolesPage.d.ts +2 -1
  743. package/dist/pages/platform/administration/permissions/RolesPage.d.ts.map +1 -1
  744. package/dist/pages/platform/administration/tenants/OrganisationCreatePage.d.ts +2 -1
  745. package/dist/pages/platform/administration/tenants/OrganisationCreatePage.d.ts.map +1 -1
  746. package/dist/pages/platform/administration/tenants/OrganisationDetailPage.d.ts +2 -1
  747. package/dist/pages/platform/administration/tenants/OrganisationDetailPage.d.ts.map +1 -1
  748. package/dist/pages/platform/administration/tenants/OrganisationsListPage.d.ts +2 -1
  749. package/dist/pages/platform/administration/tenants/OrganisationsListPage.d.ts.map +1 -1
  750. package/dist/pages/platform/administration/tenants/TenantAccessRequestsPage.d.ts +2 -1
  751. package/dist/pages/platform/administration/tenants/TenantAccessRequestsPage.d.ts.map +1 -1
  752. package/dist/pages/platform/administration/tenants/TenantCreatePage.d.ts +2 -1
  753. package/dist/pages/platform/administration/tenants/TenantCreatePage.d.ts.map +1 -1
  754. package/dist/pages/platform/administration/tenants/TenantDetailPage.d.ts +2 -1
  755. package/dist/pages/platform/administration/tenants/TenantDetailPage.d.ts.map +1 -1
  756. package/dist/pages/platform/administration/tenants/TenantSettingsPage.d.ts +2 -1
  757. package/dist/pages/platform/administration/tenants/TenantSettingsPage.d.ts.map +1 -1
  758. package/dist/pages/platform/administration/tenants/TenantTemplateCreatePage.d.ts +2 -1
  759. package/dist/pages/platform/administration/tenants/TenantTemplateCreatePage.d.ts.map +1 -1
  760. package/dist/pages/platform/administration/tenants/TenantTemplateDetailPage.d.ts +2 -1
  761. package/dist/pages/platform/administration/tenants/TenantTemplateDetailPage.d.ts.map +1 -1
  762. package/dist/pages/platform/administration/tenants/TenantsBusinessPage.d.ts +2 -1
  763. package/dist/pages/platform/administration/tenants/TenantsBusinessPage.d.ts.map +1 -1
  764. package/dist/pages/platform/administration/tenants/TenantsDashboardPage.d.ts +2 -1
  765. package/dist/pages/platform/administration/tenants/TenantsDashboardPage.d.ts.map +1 -1
  766. package/dist/pages/platform/administration/tenants/TenantsOtherPage.d.ts +2 -1
  767. package/dist/pages/platform/administration/tenants/TenantsOtherPage.d.ts.map +1 -1
  768. package/dist/pages/platform/administration/tenants/TenantsPage.d.ts +4 -3
  769. package/dist/pages/platform/administration/tenants/TenantsPage.d.ts.map +1 -1
  770. package/dist/pages/platform/administration/tenants/TenantsPersonalPage.d.ts +2 -1
  771. package/dist/pages/platform/administration/tenants/TenantsPersonalPage.d.ts.map +1 -1
  772. package/dist/pages/platform/administration/tenants/TenantsSystemPage.d.ts +2 -1
  773. package/dist/pages/platform/administration/tenants/TenantsSystemPage.d.ts.map +1 -1
  774. package/dist/pages/platform/administration/tenants/TenantsTemplatePage.d.ts +2 -1
  775. package/dist/pages/platform/administration/tenants/TenantsTemplatePage.d.ts.map +1 -1
  776. package/dist/pages/platform/administration/users/GroupDetailPage.d.ts +2 -1
  777. package/dist/pages/platform/administration/users/GroupDetailPage.d.ts.map +1 -1
  778. package/dist/pages/platform/administration/users/ReferencesManagementPage.d.ts +2 -1
  779. package/dist/pages/platform/administration/users/ReferencesManagementPage.d.ts.map +1 -1
  780. package/dist/pages/platform/administration/users/ReferencesPage.d.ts +2 -1
  781. package/dist/pages/platform/administration/users/ReferencesPage.d.ts.map +1 -1
  782. package/dist/pages/platform/administration/users/UserDetailPage.d.ts +2 -1
  783. package/dist/pages/platform/administration/users/UserDetailPage.d.ts.map +1 -1
  784. package/dist/pages/platform/administration/users/UsersGroupsPage.d.ts +2 -1
  785. package/dist/pages/platform/administration/users/UsersGroupsPage.d.ts.map +1 -1
  786. package/dist/pages/platform/administration/users/UsersPage.d.ts +2 -1
  787. package/dist/pages/platform/administration/users/UsersPage.d.ts.map +1 -1
  788. package/dist/pages/platform/administration/workflows/EmailTemplateCreatePage.d.ts +2 -1
  789. package/dist/pages/platform/administration/workflows/EmailTemplateCreatePage.d.ts.map +1 -1
  790. package/dist/pages/platform/administration/workflows/EmailTemplateDetailPage.d.ts +2 -1
  791. package/dist/pages/platform/administration/workflows/EmailTemplateDetailPage.d.ts.map +1 -1
  792. package/dist/pages/platform/administration/workflows/EmailTemplateEditPage.d.ts +2 -1
  793. package/dist/pages/platform/administration/workflows/EmailTemplateEditPage.d.ts.map +1 -1
  794. package/dist/pages/platform/administration/workflows/EmailTemplatesListPage.d.ts +2 -1
  795. package/dist/pages/platform/administration/workflows/EmailTemplatesListPage.d.ts.map +1 -1
  796. package/dist/pages/platform/administration/workflows/SmsTemplatesListPage.d.ts +2 -1
  797. package/dist/pages/platform/administration/workflows/SmsTemplatesListPage.d.ts.map +1 -1
  798. package/dist/pages/platform/administration/workflows/WorkflowCreatePage.d.ts +2 -1
  799. package/dist/pages/platform/administration/workflows/WorkflowCreatePage.d.ts.map +1 -1
  800. package/dist/pages/platform/administration/workflows/WorkflowDetailPage.d.ts +2 -1
  801. package/dist/pages/platform/administration/workflows/WorkflowDetailPage.d.ts.map +1 -1
  802. package/dist/pages/platform/administration/workflows/WorkflowEditPage.d.ts +2 -1
  803. package/dist/pages/platform/administration/workflows/WorkflowEditPage.d.ts.map +1 -1
  804. package/dist/pages/platform/administration/workflows/WorkflowHistoryPage.d.ts +2 -1
  805. package/dist/pages/platform/administration/workflows/WorkflowHistoryPage.d.ts.map +1 -1
  806. package/dist/pages/platform/administration/workflows/WorkflowsListPage.d.ts +2 -1
  807. package/dist/pages/platform/administration/workflows/WorkflowsListPage.d.ts.map +1 -1
  808. package/dist/pages/platform/administration/workflows/WorkflowsTriggersPage.d.ts +2 -1
  809. package/dist/pages/platform/administration/workflows/WorkflowsTriggersPage.d.ts.map +1 -1
  810. package/dist/pages/platform/api/apis/ApiCatalogDetailPage.d.ts +2 -1
  811. package/dist/pages/platform/api/apis/ApiCatalogDetailPage.d.ts.map +1 -1
  812. package/dist/pages/platform/api/apis/ApiCatalogPage.d.ts +2 -1
  813. package/dist/pages/platform/api/apis/ApiCatalogPage.d.ts.map +1 -1
  814. package/dist/pages/platform/api/external-apps/ExternalAppDetailPage.d.ts +2 -1
  815. package/dist/pages/platform/api/external-apps/ExternalAppDetailPage.d.ts.map +1 -1
  816. package/dist/pages/platform/api/external-apps/ExternalAppsListPage.d.ts.map +1 -1
  817. package/dist/pages/platform/support/AgentSkillsPage.d.ts +2 -1
  818. package/dist/pages/platform/support/AgentSkillsPage.d.ts.map +1 -1
  819. package/dist/pages/platform/support/AgentWorkloadPage.d.ts +2 -1
  820. package/dist/pages/platform/support/AgentWorkloadPage.d.ts.map +1 -1
  821. package/dist/pages/platform/support/AssignmentRulesPage.d.ts +2 -1
  822. package/dist/pages/platform/support/AssignmentRulesPage.d.ts.map +1 -1
  823. package/dist/pages/platform/support/CreateSupportTicketPage.d.ts +2 -1
  824. package/dist/pages/platform/support/CreateSupportTicketPage.d.ts.map +1 -1
  825. package/dist/pages/platform/support/DashboardPage.d.ts +2 -1
  826. package/dist/pages/platform/support/DashboardPage.d.ts.map +1 -1
  827. package/dist/pages/platform/support/EscalationConfigPage.d.ts +2 -1
  828. package/dist/pages/platform/support/EscalationConfigPage.d.ts.map +1 -1
  829. package/dist/pages/platform/support/MyAgentTicketsPage.d.ts +2 -1
  830. package/dist/pages/platform/support/MyAgentTicketsPage.d.ts.map +1 -1
  831. package/dist/pages/platform/support/MyTicketsPage.d.ts +2 -1
  832. package/dist/pages/platform/support/MyTicketsPage.d.ts.map +1 -1
  833. package/dist/pages/platform/support/SlaConfigPage.d.ts +2 -1
  834. package/dist/pages/platform/support/SlaConfigPage.d.ts.map +1 -1
  835. package/dist/pages/platform/support/SupportPermissionsPage.d.ts +2 -1
  836. package/dist/pages/platform/support/SupportPermissionsPage.d.ts.map +1 -1
  837. package/dist/pages/platform/support/TemplatesPage.d.ts +2 -1
  838. package/dist/pages/platform/support/TemplatesPage.d.ts.map +1 -1
  839. package/dist/pages/platform/support/TestBugPage.d.ts +2 -1
  840. package/dist/pages/platform/support/TestBugPage.d.ts.map +1 -1
  841. package/dist/pages/platform/support/TicketDetailPage.d.ts +2 -1
  842. package/dist/pages/platform/support/TicketDetailPage.d.ts.map +1 -1
  843. package/dist/pages/platform/support/TicketsPage.d.ts +2 -1
  844. package/dist/pages/platform/support/TicketsPage.d.ts.map +1 -1
  845. package/dist/pages/platform/support/UserCreateTicketPage.d.ts +2 -1
  846. package/dist/pages/platform/support/UserCreateTicketPage.d.ts.map +1 -1
  847. package/dist/pages/platform/support/UserTicketDetailPage.d.ts +2 -1
  848. package/dist/pages/platform/support/UserTicketDetailPage.d.ts.map +1 -1
  849. package/dist/pages/system/docs/DocsIndexPage.d.ts +2 -1
  850. package/dist/pages/system/docs/DocsIndexPage.d.ts.map +1 -1
  851. package/dist/pages/system/docs/SmartStackPresentationPage.d.ts +2 -1
  852. package/dist/pages/system/docs/SmartStackPresentationPage.d.ts.map +1 -1
  853. package/dist/pages/system/docs/ba/BaIndexPage.d.ts +2 -1
  854. package/dist/pages/system/docs/ba/BaIndexPage.d.ts.map +1 -1
  855. package/dist/pages/system/docs/ba/BaViewerPage.d.ts +2 -1
  856. package/dist/pages/system/docs/ba/BaViewerPage.d.ts.map +1 -1
  857. package/dist/pages/system/docs/ba/components/CadrageTab.d.ts +3 -2
  858. package/dist/pages/system/docs/ba/components/CadrageTab.d.ts.map +1 -1
  859. package/dist/pages/system/docs/ba/components/SpecificationTab.d.ts +4 -3
  860. package/dist/pages/system/docs/ba/components/SpecificationTab.d.ts.map +1 -1
  861. package/dist/pages/system/docs/ba/components/SyntheseTab.d.ts +3 -2
  862. package/dist/pages/system/docs/ba/components/SyntheseTab.d.ts.map +1 -1
  863. package/dist/pages/system/docs/developer/CrossSchemaFkPage.d.ts +2 -1
  864. package/dist/pages/system/docs/developer/CrossSchemaFkPage.d.ts.map +1 -1
  865. package/dist/pages/system/docs/developer/DatabasePage.d.ts +2 -1
  866. package/dist/pages/system/docs/developer/DatabasePage.d.ts.map +1 -1
  867. package/dist/pages/system/docs/developer/DeveloperIndexPage.d.ts +2 -1
  868. package/dist/pages/system/docs/developer/DeveloperIndexPage.d.ts.map +1 -1
  869. package/dist/pages/system/docs/developer/DualDbContextPage.d.ts +2 -1
  870. package/dist/pages/system/docs/developer/DualDbContextPage.d.ts.map +1 -1
  871. package/dist/pages/system/docs/developer/InfrastructurePage.d.ts +2 -1
  872. package/dist/pages/system/docs/developer/InfrastructurePage.d.ts.map +1 -1
  873. package/dist/pages/system/docs/developer/InstallationPage.d.ts +2 -1
  874. package/dist/pages/system/docs/developer/InstallationPage.d.ts.map +1 -1
  875. package/dist/pages/system/docs/developer/TeamsIntegrationPage.d.ts +2 -1
  876. package/dist/pages/system/docs/developer/TeamsIntegrationPage.d.ts.map +1 -1
  877. package/dist/pages/system/docs/developer/tenants/MultiTenantModePage.d.ts +2 -1
  878. package/dist/pages/system/docs/developer/tenants/MultiTenantModePage.d.ts.map +1 -1
  879. package/dist/pages/system/docs/developer/tenants/TenantB2CPage.d.ts +2 -1
  880. package/dist/pages/system/docs/developer/tenants/TenantB2CPage.d.ts.map +1 -1
  881. package/dist/pages/system/docs/developer/tenants/TenantIndexPage.d.ts +2 -1
  882. package/dist/pages/system/docs/developer/tenants/TenantIndexPage.d.ts.map +1 -1
  883. package/dist/pages/system/docs/developer/testing/SecurityTestingPage.d.ts +2 -1
  884. package/dist/pages/system/docs/developer/testing/SecurityTestingPage.d.ts.map +1 -1
  885. package/dist/pages/system/docs/user/AiDocPage.d.ts +2 -1
  886. package/dist/pages/system/docs/user/AiDocPage.d.ts.map +1 -1
  887. package/dist/pages/system/docs/user/ArchitecturePage.d.ts +2 -1
  888. package/dist/pages/system/docs/user/ArchitecturePage.d.ts.map +1 -1
  889. package/dist/pages/system/docs/user/ModulesPage.d.ts +2 -1
  890. package/dist/pages/system/docs/user/ModulesPage.d.ts.map +1 -1
  891. package/dist/pages/system/docs/user/SettingsDocPage.d.ts +2 -1
  892. package/dist/pages/system/docs/user/SettingsDocPage.d.ts.map +1 -1
  893. package/dist/pages/system/docs/user/SlaDocPage.d.ts +2 -1
  894. package/dist/pages/system/docs/user/SlaDocPage.d.ts.map +1 -1
  895. package/dist/pages/system/docs/user/SupportDashboardDocPage.d.ts +2 -1
  896. package/dist/pages/system/docs/user/SupportDashboardDocPage.d.ts.map +1 -1
  897. package/dist/pages/system/docs/user/SupportEscalationDocPage.d.ts +2 -1
  898. package/dist/pages/system/docs/user/SupportEscalationDocPage.d.ts.map +1 -1
  899. package/dist/pages/system/docs/user/SupportIndexPage.d.ts +2 -1
  900. package/dist/pages/system/docs/user/SupportIndexPage.d.ts.map +1 -1
  901. package/dist/pages/system/docs/user/SupportMyTicketsDocPage.d.ts +2 -1
  902. package/dist/pages/system/docs/user/SupportMyTicketsDocPage.d.ts.map +1 -1
  903. package/dist/pages/system/docs/user/SupportTemplatesDocPage.d.ts +2 -1
  904. package/dist/pages/system/docs/user/SupportTemplatesDocPage.d.ts.map +1 -1
  905. package/dist/pages/system/docs/user/SupportTicketsDocPage.d.ts +2 -1
  906. package/dist/pages/system/docs/user/SupportTicketsDocPage.d.ts.map +1 -1
  907. package/dist/pages/system/docs/user/ThemeDocPage.d.ts +2 -1
  908. package/dist/pages/system/docs/user/ThemeDocPage.d.ts.map +1 -1
  909. package/dist/pages/system/docs/user/UserIndexPage.d.ts +2 -1
  910. package/dist/pages/system/docs/user/UserIndexPage.d.ts.map +1 -1
  911. package/dist/provider/SmartStackProvider.d.ts +4 -3
  912. package/dist/provider/SmartStackProvider.d.ts.map +1 -1
  913. package/dist/services/api/adminApi/applications.d.ts +4 -1
  914. package/dist/services/api/adminApi/applications.d.ts.map +1 -1
  915. package/dist/services/api/adminApi/dashboard.d.ts +4 -1
  916. package/dist/services/api/adminApi/dashboard.d.ts.map +1 -1
  917. package/dist/services/api/adminApi/externalApps.d.ts +7 -2
  918. package/dist/services/api/adminApi/externalApps.d.ts.map +1 -1
  919. package/dist/services/api/adminApi/index.d.ts.map +1 -1
  920. package/dist/services/api/adminApi/roles.d.ts +7 -2
  921. package/dist/services/api/adminApi/roles.d.ts.map +1 -1
  922. package/dist/services/api/adminApi/settings.d.ts +7 -2
  923. package/dist/services/api/adminApi/settings.d.ts.map +1 -1
  924. package/dist/services/api/adminApi/tenants.d.ts +13 -4
  925. package/dist/services/api/adminApi/tenants.d.ts.map +1 -1
  926. package/dist/services/api/adminApi/users.d.ts +3 -1
  927. package/dist/services/api/adminApi/users.d.ts.map +1 -1
  928. package/dist/services/api/groupsApi.d.ts +4 -1
  929. package/dist/services/api/groupsApi.d.ts.map +1 -1
  930. package/dist/services/api/referencesApi.d.ts +4 -1
  931. package/dist/services/api/referencesApi.d.ts.map +1 -1
  932. package/dist/services/logging/logService.d.ts.map +1 -1
  933. package/dist/smartstack.cjs +1 -1
  934. package/dist/smartstack.js +1 -1
  935. package/dist/styles.css +1 -1
  936. package/dist/utils/deviceDetection.d.ts.map +1 -1
  937. package/dist/utils/renderLucideIcon.d.ts +2 -1
  938. package/dist/utils/renderLucideIcon.d.ts.map +1 -1
  939. package/dist/utils/tenantUrl.d.ts.map +1 -1
  940. package/package.json +1 -1
  941. package/dist/AuthCallbackPage-Bv2Cyn80.cjs.map +0 -1
  942. package/dist/AuthCallbackPage-Cu74zAX1.js.map +0 -1
  943. package/dist/BaIndexPage-BhdOX87v.cjs +0 -2
  944. package/dist/BaIndexPage-BhdOX87v.cjs.map +0 -1
  945. package/dist/BaIndexPage-Dkp_Eixx.js.map +0 -1
  946. package/dist/BaViewerPage-DxD0eZm-.js.map +0 -1
  947. package/dist/BaViewerPage-SYgjCF7x.cjs +0 -2
  948. package/dist/BaViewerPage-SYgjCF7x.cjs.map +0 -1
  949. package/dist/ConfirmEmailPage-BTp8J0pw.js.map +0 -1
  950. package/dist/ConfirmEmailPage-su3Fvl0e.cjs.map +0 -1
  951. package/dist/DatabasePage-CRq_-Yo2.cjs +0 -2
  952. package/dist/DatabasePage-CRq_-Yo2.cjs.map +0 -1
  953. package/dist/DatabasePage-DFIK8cSM.js.map +0 -1
  954. package/dist/DocRenderer-B-1NdDfC.cjs +0 -2
  955. package/dist/DocRenderer-B-1NdDfC.cjs.map +0 -1
  956. package/dist/DocRenderer-CcEn1iaa.js.map +0 -1
  957. package/dist/DualDbContextPage--Qk-qEgD.cjs.map +0 -1
  958. package/dist/DualDbContextPage-BujD_coN.js.map +0 -1
  959. package/dist/ForceChangePasswordPage-ClENqzCH.js.map +0 -1
  960. package/dist/ForceChangePasswordPage-kEFsb5Aq.cjs.map +0 -1
  961. package/dist/ForgotPasswordPage--Wl0Vxbv.cjs.map +0 -1
  962. package/dist/ForgotPasswordPage-BEgvV5f-.js.map +0 -1
  963. package/dist/OnboardingWizardPage-Bx1UlTbr.js.map +0 -1
  964. package/dist/OnboardingWizardPage-C7vendrq.cjs.map +0 -1
  965. package/dist/RegisterPage-BzV0sCTe.js.map +0 -1
  966. package/dist/RegisterPage-DKr8quRk.cjs.map +0 -1
  967. package/dist/ResetPasswordPage-DphmJrcJ.js.map +0 -1
  968. package/dist/ResetPasswordPage-x4do1o-j.cjs.map +0 -1
  969. package/dist/SupportDashboardDocPage-CLotzEwA.js.map +0 -1
  970. package/dist/SupportDashboardDocPage-DpgGq5Mm.cjs.map +0 -1
  971. package/dist/SupportEscalationDocPage-B-_ChfdN.js.map +0 -1
  972. package/dist/SupportEscalationDocPage-WXkAQr8k.cjs.map +0 -1
  973. package/dist/SupportMyTicketsDocPage-DeRUdAIi.js.map +0 -1
  974. package/dist/SupportMyTicketsDocPage-jE1UMaIY.cjs.map +0 -1
  975. package/dist/SupportTemplatesDocPage-C8ZLzFJc.js.map +0 -1
  976. package/dist/SupportTemplatesDocPage-ajO-cHmK.cjs.map +0 -1
  977. package/dist/SupportTicketsDocPage-C_ybDTjC.cjs.map +0 -1
  978. package/dist/SupportTicketsDocPage-DQhHfa6J.js.map +0 -1
  979. package/dist/index-0Jhdcj59.js.map +0 -1
  980. package/dist/index-ASxPhrgZ.cjs.map +0 -1
  981. package/dist/index-B2rKKVDN.js.map +0 -1
  982. package/dist/index-BP5i2CQo.cjs +0 -2
  983. package/dist/index-BP5i2CQo.cjs.map +0 -1
  984. package/dist/index-BYhFG50Z.cjs.map +0 -1
  985. package/dist/index-BcO3pBlL.js.map +0 -1
  986. package/dist/index-BlHDI4zj.js.map +0 -1
  987. package/dist/index-Blfc9wKG.js.map +0 -1
  988. package/dist/index-BnWMDCRU.cjs.map +0 -1
  989. package/dist/index-By0u9UFY.js.map +0 -1
  990. package/dist/index-C40Dlolq.js.map +0 -1
  991. package/dist/index-C54HbULX.cjs.map +0 -1
  992. package/dist/index-C6C5XmVj.cjs +0 -48
  993. package/dist/index-C6C5XmVj.cjs.map +0 -1
  994. package/dist/index-C9BaizLE.cjs +0 -2
  995. package/dist/index-C9BaizLE.cjs.map +0 -1
  996. package/dist/index-CBOLnJkG.cjs.map +0 -1
  997. package/dist/index-CI1DJrFE.js.map +0 -1
  998. package/dist/index-CU66n-zU.js.map +0 -1
  999. package/dist/index-CUISVUMx.js.map +0 -1
  1000. package/dist/index-CnmIX2MY.js.map +0 -1
  1001. package/dist/index-CtcdHE_9.cjs +0 -2
  1002. package/dist/index-CtcdHE_9.cjs.map +0 -1
  1003. package/dist/index-Cv7iWoG8.js.map +0 -1
  1004. package/dist/index-D4u23zHI.js.map +0 -1
  1005. package/dist/index-D8xuGyjU.js.map +0 -1
  1006. package/dist/index-DKK07NF1.cjs +0 -2
  1007. package/dist/index-DKK07NF1.cjs.map +0 -1
  1008. package/dist/index-DmuVa7Ye.cjs.map +0 -1
  1009. package/dist/index-Du4fQfix.cjs.map +0 -1
  1010. package/dist/index-DwATtWun.js.map +0 -1
  1011. package/dist/index-Dxau-XnQ.cjs.map +0 -1
  1012. package/dist/index-Txfokhn3.cjs.map +0 -1
  1013. package/dist/index-ZVUUUZmv.cjs +0 -2
  1014. package/dist/index-ZVUUUZmv.cjs.map +0 -1
  1015. package/dist/index-eAHjmtzn.cjs.map +0 -1
  1016. package/dist/index-jpSTOjXU.js.map +0 -1
@@ -2,13 +2,13 @@ import { jsxs as t, jsx as e } from "react/jsx-runtime";
2
2
  import { useState as g } from "react";
3
3
  import { Link as R } from "react-router-dom";
4
4
  import { useTranslation as C } from "react-i18next";
5
- import { ArrowLeft as T, Grid3x3 as S, Target as P, ShieldCheck as u, ChevronRight as h, Sparkles as q, Ban as o, Eye as d, Star as c, Check as m, Lock as v, ChevronLeft as E, Search as D, Filter as G, BookOpen as A, ChevronUp as f, ChevronDown as N, User as L, Pencil as U, HelpCircle as B, Code2 as F, Info as O } from "lucide-react";
6
- const j = [
5
+ import { ArrowLeft as T, Grid3x3 as S, Target as P, ShieldCheck as u, ChevronRight as h, Sparkles as q, Ban as o, Eye as d, Star as c, Check as m, Lock as v, ChevronLeft as E, Search as D, Filter as G, BookOpen as A, ChevronUp as f, ChevronDown as N, User as $, Pencil as L, HelpCircle as U, Code2 as B, Info as F } from "lucide-react";
6
+ const O = [
7
7
  { id: "r1", name: "Super Admin", short: "SA", isSystem: !0 },
8
8
  { id: "r2", name: "Manager", short: "MG", isSystem: !0 },
9
9
  { id: "r3", name: "Contributor", short: "CT", isSystem: !1 },
10
10
  { id: "r4", name: "Viewer", short: "VW", isSystem: !1 }
11
- ], $ = [
11
+ ], j = [
12
12
  { type: "app", label: "Administration" },
13
13
  { type: "module", label: "Users", cells: ["all", "all", "some", "read-only"] },
14
14
  { type: "module", label: "Permissions", cells: ["all", "some", "read-only", "none"] },
@@ -43,7 +43,7 @@ const j = [
43
43
  };
44
44
  function n({ children: r }) {
45
45
  return /* @__PURE__ */ t("div", { className: "mt-3 flex items-start gap-2 px-3 py-2 rounded-md bg-blue-50 border border-blue-200 text-xs text-blue-800 dark:bg-blue-950/30 dark:border-blue-800 dark:text-blue-300", children: [
46
- /* @__PURE__ */ e(O, { className: "h-3.5 w-3.5 flex-shrink-0 mt-0.5" }),
46
+ /* @__PURE__ */ e(F, { className: "h-3.5 w-3.5 flex-shrink-0 mt-0.5" }),
47
47
  /* @__PURE__ */ e("span", { children: r })
48
48
  ] });
49
49
  }
@@ -156,21 +156,21 @@ function Q() {
156
156
  /* @__PURE__ */ e("div", { className: "overflow-x-auto", children: /* @__PURE__ */ t("table", { className: "w-full text-xs", children: [
157
157
  /* @__PURE__ */ e("thead", { children: /* @__PURE__ */ t("tr", { className: "border-b border-[var(--border-color)] bg-[var(--bg-secondary)]", children: [
158
158
  /* @__PURE__ */ e("th", { className: "text-left px-3 py-2 text-[var(--text-muted)] font-medium w-40", children: r("mock.module") }),
159
- j.map((a) => /* @__PURE__ */ e("th", { className: "px-2 py-2 text-center min-w-[80px]", children: /* @__PURE__ */ t("div", { className: "flex flex-col items-center gap-0.5", children: [
159
+ O.map((a) => /* @__PURE__ */ e("th", { className: "px-2 py-2 text-center min-w-[80px]", children: /* @__PURE__ */ t("div", { className: "flex flex-col items-center gap-0.5", children: [
160
160
  /* @__PURE__ */ e("span", { className: "font-medium text-[var(--text-primary)]", children: a.short }),
161
161
  a.isSystem && /* @__PURE__ */ e(v, { className: "h-2.5 w-2.5 text-[var(--warning-dot)]" })
162
162
  ] }) }, a.id))
163
163
  ] }) }),
164
- /* @__PURE__ */ e("tbody", { children: $.map((a, s) => a.type === "app" ? /* @__PURE__ */ e("tr", { className: "bg-[var(--bg-tertiary)]/50", children: /* @__PURE__ */ t("td", { colSpan: 5, className: "px-4 py-1 text-[var(--text-secondary)] text-[11px] font-medium", children: [
164
+ /* @__PURE__ */ e("tbody", { children: j.map((a, s) => a.type === "app" ? /* @__PURE__ */ e("tr", { className: "bg-[var(--bg-tertiary)]/50", children: /* @__PURE__ */ t("td", { colSpan: 5, className: "px-4 py-1 text-[var(--text-secondary)] text-[11px] font-medium", children: [
165
165
  "└ ",
166
166
  a.label
167
- ] }) }, s) : /* @__PURE__ */ t("tr", { className: "border-b border-[var(--border-color)] hover:bg-[var(--bg-hover)]", children: [
167
+ ] }) }, `app-${a.label}-${s}`) : /* @__PURE__ */ t("tr", { className: "border-b border-[var(--border-color)] hover:bg-[var(--bg-hover)]", children: [
168
168
  /* @__PURE__ */ e("td", { className: "px-5 py-2 text-[var(--text-primary)]", children: a.label }),
169
169
  a.cells.map((l, b) => {
170
170
  const i = M[l], k = i.icon;
171
171
  return /* @__PURE__ */ e("td", { className: "px-2 py-2 text-center", children: /* @__PURE__ */ e("span", { className: `inline-flex items-center justify-center w-7 h-7 rounded-full ${i.bg} border ${i.border} ${i.text} cursor-pointer hover:opacity-80`, children: /* @__PURE__ */ e(k, { className: "h-3.5 w-3.5" }) }) }, b);
172
172
  })
173
- ] }, s)) })
173
+ ] }, `row-${a.label}-${s}`)) })
174
174
  ] }) }),
175
175
  /* @__PURE__ */ t("div", { className: "px-4 py-2 border-t border-[var(--border-color)] flex items-center gap-3 text-xs text-[var(--text-muted)] bg-[var(--bg-secondary)]", children: [
176
176
  /* @__PURE__ */ t("span", { children: [
@@ -282,8 +282,8 @@ function Q() {
282
282
  /* @__PURE__ */ e("p", { className: "text-sm text-[var(--text-secondary)] mb-4", children: r("templates.description") }),
283
283
  /* @__PURE__ */ e("div", { className: "grid grid-cols-2 md:grid-cols-4 gap-3", children: [
284
284
  { icon: d, name: r("templates.viewer"), desc: r("templates.viewerDesc"), color: "text-blue-600 bg-blue-500/10 border-blue-500/20" },
285
- { icon: L, name: r("templates.member"), desc: r("templates.memberDesc"), color: "text-green-600 bg-green-500/10 border-green-500/20" },
286
- { icon: U, name: r("templates.contributor"), desc: r("templates.contributorDesc"), color: "text-orange-600 bg-orange-500/10 border-orange-500/20" },
285
+ { icon: $, name: r("templates.member"), desc: r("templates.memberDesc"), color: "text-green-600 bg-green-500/10 border-green-500/20" },
286
+ { icon: L, name: r("templates.contributor"), desc: r("templates.contributorDesc"), color: "text-orange-600 bg-orange-500/10 border-orange-500/20" },
287
287
  { icon: u, name: r("templates.admin"), desc: r("templates.adminDesc"), color: "text-red-600 bg-red-500/10 border-red-500/20" }
288
288
  ].map(({ icon: a, name: s, desc: l, color: b }) => /* @__PURE__ */ t("div", { className: `p-3 rounded-lg border-2 ${b} flex flex-col gap-1.5`, children: [
289
289
  /* @__PURE__ */ e(a, { className: "h-5 w-5" }),
@@ -337,11 +337,11 @@ function Q() {
337
337
  { q: r("faq.q5"), a: r("faq.a5") }
338
338
  ].map(({ q: a, a: s }, l) => /* @__PURE__ */ t("div", { className: "p-4 rounded-lg border border-[var(--border-color)] bg-[var(--bg-card)]", children: [
339
339
  /* @__PURE__ */ t("div", { className: "flex items-start gap-2 mb-1", children: [
340
- /* @__PURE__ */ e(B, { className: "h-4 w-4 text-[var(--color-accent-500)] flex-shrink-0 mt-0.5" }),
340
+ /* @__PURE__ */ e(U, { className: "h-4 w-4 text-[var(--color-accent-500)] flex-shrink-0 mt-0.5" }),
341
341
  /* @__PURE__ */ e("span", { className: "text-sm font-medium text-[var(--text-primary)]", children: a })
342
342
  ] }),
343
343
  /* @__PURE__ */ e("p", { className: "text-xs text-[var(--text-secondary)] ml-6", children: s })
344
- ] }, l)) })
344
+ ] }, `faq-${l}`)) })
345
345
  ] }),
346
346
  /* @__PURE__ */ t("section", { children: [
347
347
  /* @__PURE__ */ t(
@@ -351,7 +351,7 @@ function Q() {
351
351
  className: "w-full flex items-center justify-between px-4 py-3 rounded-lg border border-[var(--border-color)] bg-[var(--bg-card)] hover:bg-[var(--bg-hover)] transition-colors",
352
352
  children: [
353
353
  /* @__PURE__ */ t("div", { className: "flex items-center gap-2", children: [
354
- /* @__PURE__ */ e(F, { className: "h-4 w-4 text-[var(--color-accent-500)]" }),
354
+ /* @__PURE__ */ e(B, { className: "h-4 w-4 text-[var(--color-accent-500)]" }),
355
355
  /* @__PURE__ */ e("span", { className: "text-sm font-medium text-[var(--text-primary)]", children: r("techRef.title") })
356
356
  ] }),
357
357
  p ? /* @__PURE__ */ e(f, { className: "h-4 w-4 text-[var(--text-muted)]" }) : /* @__PURE__ */ e(N, { className: "h-4 w-4 text-[var(--text-muted)]" })
@@ -382,7 +382,7 @@ function Q() {
382
382
  /* @__PURE__ */ e("span", { className: `px-1.5 py-0.5 rounded border font-mono font-bold text-[10px] flex-shrink-0 ${H[a.method]}`, children: a.method }),
383
383
  /* @__PURE__ */ e("span", { className: "font-mono text-[var(--text-primary)] flex-1", children: a.path }),
384
384
  /* @__PURE__ */ e("span", { className: "text-[var(--text-muted)] hidden md:block", children: a.handler })
385
- ] }, s)) })
385
+ ] }, `ep-${a.method}-${s}`)) })
386
386
  ] })
387
387
  ] })
388
388
  ] })
@@ -391,4 +391,4 @@ function Q() {
391
391
  export {
392
392
  Q as default
393
393
  };
394
- //# sourceMappingURL=index-Cv7iWoG8.js.map
394
+ //# sourceMappingURL=index-DRc5qb2I.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-DRc5qb2I.js","sources":["../src/pages/docs/business/platform/administration/permissions/assignments/index.tsx"],"sourcesContent":["import { useState} from 'react';\r\nimport type { ReactElement } from 'react';\r\nimport { Link } from 'react-router-dom';\r\nimport { useTranslation } from 'react-i18next';\r\nimport {\r\n ArrowLeft,\r\n ShieldCheck,\r\n Target,\r\n Eye,\r\n User,\r\n Pencil,\r\n Check,\r\n Ban,\r\n Star,\r\n Lock,\r\n Filter,\r\n Search,\r\n Sparkles,\r\n ChevronLeft,\r\n ChevronRight,\r\n ChevronDown,\r\n ChevronUp,\r\n BookOpen,\r\n Info,\r\n Grid3x3,\r\n HelpCircle,\r\n Code2,\r\n} from 'lucide-react';\r\n\r\n// ── Mock matrix data ─────────────────────────────────────────────────────────\r\n\r\ntype CellStatus = 'all' | 'some' | 'read-only' | 'none';\r\n\r\nconst mockRoles = [\r\n { id: 'r1', name: 'Super Admin', short: 'SA', isSystem: true },\r\n { id: 'r2', name: 'Manager', short: 'MG', isSystem: true },\r\n { id: 'r3', name: 'Contributor', short: 'CT', isSystem: false },\r\n { id: 'r4', name: 'Viewer', short: 'VW', isSystem: false },\r\n];\r\n\r\ntype MatrixRow =\r\n | { type: 'app'; label: string }\r\n | { type: 'module'; label: string; cells: CellStatus[] };\r\n\r\nconst mockMatrix: MatrixRow[] = [\r\n { type: 'app', label: 'Administration' },\r\n { type: 'module', label: 'Users', cells: ['all', 'all', 'some', 'read-only'] },\r\n { type: 'module', label: 'Permissions', cells: ['all', 'some', 'read-only', 'none'] },\r\n { type: 'module', label: 'Applications', cells: ['all', 'read-only', 'none', 'none'] },\r\n { type: 'app', label: 'Support' },\r\n { type: 'module', label: 'Tickets', cells: ['all', 'all', 'all', 'some'] },\r\n { type: 'module', label: 'SLA Config', cells: ['all', 'some', 'none', 'none'] },\r\n];\r\n\r\nconst cellConfig: Record<CellStatus, { bg: string; border: string; text: string; icon: typeof Check }> = {\r\n all: { bg: 'bg-emerald-500/20', border: 'border-emerald-500/30', text: 'text-emerald-700', icon: Check },\r\n some: { bg: 'bg-amber-500/20', border: 'border-amber-500/30', text: 'text-amber-700', icon: Star },\r\n 'read-only': { bg: 'bg-sky-500/20', border: 'border-sky-500/30', text: 'text-sky-700', icon: Eye },\r\n none: { bg: 'bg-red-500/10', border: 'border-red-500/20', text: 'text-red-600', icon: Ban },\r\n};\r\n\r\nconst apiEndpoints = [\r\n { method: 'GET' as const, path: '/api/administration/permissions/matrix', handler: 'GetPermissionMatrix', permission: 'administration.permissions.read' },\r\n { method: 'GET' as const, path: '/api/administration/permissions', handler: 'GetPermissions', permission: 'administration.permissions.read' },\r\n { method: 'GET' as const, path: '/api/administration/permissions/{id}', handler: 'GetPermission', permission: 'administration.permissions.read' },\r\n { method: 'POST' as const, path: '/api/administration/permissions', handler: 'CreatePermission', permission: 'administration.permissions.create' },\r\n { method: 'DELETE' as const, path: '/api/administration/permissions/{id}', handler: 'DeletePermission', permission: 'administration.permissions.delete' },\r\n { method: 'GET' as const, path: '/api/administration/permissions/tree', handler: 'GetPermissionTree', permission: 'administration.permissions.read' },\r\n { method: 'GET' as const, path: '/api/administration/permissions/roles', handler: 'GetRoles', permission: 'administration.roles.read' },\r\n { method: 'POST' as const, path: '/api/administration/permissions/roles', handler: 'CreateRole', permission: 'administration.roles.create' },\r\n { method: 'PUT' as const, path: '/api/administration/permissions/roles/{id}', handler: 'UpdateRole', permission: 'administration.roles.update' },\r\n { method: 'DELETE' as const, path: '/api/administration/permissions/roles/{id}', handler: 'DeleteRole', permission: 'administration.roles.delete' },\r\n { method: 'POST' as const, path: '/api/administration/permissions/roles/{id}/users/{userId}', handler: 'AssignUserToRole', permission: 'administration.users.manage-roles' },\r\n { method: 'DELETE' as const, path: '/api/administration/permissions/roles/{id}/users/{userId}', handler: 'RemoveUserFromRole', permission: 'administration.users.manage-roles' },\r\n];\r\n\r\nconst methodColors: Record<string, string> = {\r\n GET: 'bg-blue-500/10 text-blue-700 border-blue-500/20',\r\n POST: 'bg-green-500/10 text-green-700 border-green-500/20',\r\n PUT: 'bg-amber-500/10 text-amber-700 border-amber-500/20',\r\n DELETE: 'bg-red-500/10 text-red-700 border-red-500/20',\r\n PATCH: 'bg-purple-500/10 text-purple-700 border-purple-500/20',\r\n};\r\n\r\n// ── Annotation helper ────────────────────────────────────────────────────────\r\n\r\nfunction Annotation({ children }: { children: React.ReactNode }) {\r\n return (\r\n <div className=\"mt-3 flex items-start gap-2 px-3 py-2 rounded-md bg-blue-50 border border-blue-200 text-xs text-blue-800 dark:bg-blue-950/30 dark:border-blue-800 dark:text-blue-300\">\r\n <Info className=\"h-3.5 w-3.5 flex-shrink-0 mt-0.5\" />\r\n <span>{children}</span>\r\n </div>\r\n );\r\n}\r\n\r\n// ── Component ────────────────────────────────────────────────────────────────\r\n\r\nexport default function AssignmentsDocPage(): ReactElement {\r\n const { t } = useTranslation('docsAdministrationPermissionsAssignments');\r\n const [showGuide, setShowGuide] = useState(false);\r\n const [showTechRef, setShowTechRef] = useState(false);\r\n\r\n return (\r\n <div className=\"space-y-8 max-w-5xl mx-auto px-4 py-6\">\r\n\r\n {/* Back link */}\r\n <Link\r\n to=\"/docs/business/administration/permissions\"\r\n className=\"inline-flex items-center gap-1.5 text-sm text-[var(--color-accent-500)] hover:text-[var(--color-accent-600)] transition-colors\"\r\n >\r\n <ArrowLeft className=\"h-4 w-4\" />\r\n {t('nav.backToPermissions')}\r\n </Link>\r\n\r\n {/* ── Section 1: Business Value ─────────────────────────────────── */}\r\n <section>\r\n <div className=\"flex items-center gap-3 mb-4\">\r\n <div className=\"p-2 rounded-lg bg-[var(--color-accent-100)]\">\r\n <Grid3x3 className=\"h-6 w-6 text-[var(--color-accent-600)]\" />\r\n </div>\r\n <div>\r\n <h1 className=\"text-2xl font-bold text-[var(--text-primary)]\">{t('title')}</h1>\r\n <p className=\"text-sm text-[var(--text-secondary)] mt-0.5\">{t('subtitle')}</p>\r\n </div>\r\n </div>\r\n\r\n <div className=\"grid grid-cols-1 md:grid-cols-2 gap-4\">\r\n <div className=\"p-4 rounded-lg bg-red-50 border border-red-200 dark:bg-red-950/20 dark:border-red-800\">\r\n <div className=\"flex items-center gap-2 mb-2\">\r\n <Target className=\"h-4 w-4 text-red-600\" />\r\n <h3 className=\"text-sm font-semibold text-red-800 dark:text-red-300\">{t('value.problemTitle')}</h3>\r\n </div>\r\n <p className=\"text-xs text-red-700 dark:text-red-400\">{t('value.problem')}</p>\r\n </div>\r\n <div className=\"p-4 rounded-lg bg-green-50 border border-green-200 dark:bg-green-950/20 dark:border-green-800\">\r\n <div className=\"flex items-center gap-2 mb-2\">\r\n <ShieldCheck className=\"h-4 w-4 text-green-600\" />\r\n <h3 className=\"text-sm font-semibold text-green-800 dark:text-green-300\">{t('value.solutionTitle')}</h3>\r\n </div>\r\n <p className=\"text-xs text-green-700 dark:text-green-400\">{t('value.solution')}</p>\r\n </div>\r\n </div>\r\n </section>\r\n\r\n {/* ── Section 2: Access ─────────────────────────────────────────── */}\r\n <section>\r\n <h2 className=\"text-lg font-semibold text-[var(--text-primary)] mb-3\">{t('access.title')}</h2>\r\n <div className=\"flex flex-wrap items-center gap-2 text-sm mb-3\">\r\n <span className=\"px-2 py-0.5 rounded bg-[var(--bg-tertiary)] text-[var(--text-muted)]\">Administration</span>\r\n <ChevronRight className=\"h-3.5 w-3.5 text-[var(--text-muted)]\" />\r\n <span className=\"px-2 py-0.5 rounded bg-[var(--bg-tertiary)] text-[var(--text-muted)]\">Permissions</span>\r\n <ChevronRight className=\"h-3.5 w-3.5 text-[var(--text-muted)]\" />\r\n <span className=\"px-2 py-0.5 rounded bg-[var(--color-accent-100)] text-[var(--color-accent-700)] font-medium\">{t('access.page')}</span>\r\n </div>\r\n <div className=\"flex flex-wrap gap-3 text-xs\">\r\n <div className=\"px-3 py-1.5 rounded-full bg-[var(--bg-secondary)] border border-[var(--border-color)] font-mono text-[var(--text-secondary)]\">\r\n /administration/permissions/assignments\r\n </div>\r\n <div className=\"px-3 py-1.5 rounded-full bg-blue-500/10 border border-blue-500/20 text-blue-700 font-mono\">\r\n administration.permissions.read\r\n </div>\r\n </div>\r\n </section>\r\n\r\n {/* ── Section 3: Interface Overview ─────────────────────────────── */}\r\n <section>\r\n <h2 className=\"text-lg font-semibold text-[var(--text-primary)] mb-3\">{t('interface.title')}</h2>\r\n\r\n {/* Mock page header */}\r\n <div className=\"border border-[var(--border-color)] rounded-lg overflow-hidden bg-[var(--bg-card)] shadow-sm\">\r\n {/* Header bar */}\r\n <div className=\"px-4 py-3 border-b border-[var(--border-color)] flex items-center justify-between bg-[var(--bg-secondary)]\">\r\n <div>\r\n <div className=\"text-sm font-bold text-[var(--text-primary)]\">{t('mock.header')}</div>\r\n <div className=\"text-xs text-[var(--text-muted)]\">{t('mock.headerSub')}</div>\r\n </div>\r\n <button className=\"inline-flex items-center gap-1.5 px-3 py-1.5 text-xs border border-[var(--border-color)] rounded-md bg-[var(--bg-card)] text-[var(--text-secondary)]\">\r\n <Sparkles className=\"h-3.5 w-3.5\" />\r\n {t('mock.createFromTemplate')}\r\n </button>\r\n </div>\r\n\r\n {/* Stats bar */}\r\n <div className=\"px-4 py-2 border-b border-[var(--border-color)] flex flex-wrap items-center gap-3\">\r\n <span className=\"px-2 py-0.5 text-xs font-semibold rounded-full bg-[var(--color-accent-100)] text-[var(--color-accent-700)]\">\r\n 4 {t('mock.roles')}\r\n </span>\r\n <span className=\"px-2 py-0.5 text-xs font-semibold rounded-full bg-[var(--bg-tertiary)] text-[var(--text-secondary)]\">\r\n 5/5 {t('mock.modules')}\r\n </span>\r\n <span className=\"px-2 py-0.5 text-xs font-semibold rounded-full bg-green-500/10 text-green-700 border border-green-500/20\">\r\n 38 {t('mock.permissionsAssigned')}\r\n </span>\r\n <div className=\"flex items-center gap-2 text-xs text-[var(--text-muted)] border-l border-[var(--border-color)] pl-3\">\r\n <span>{t('mock.rolesPerPage')}:</span>\r\n <span className=\"px-1.5 py-0.5 border border-[var(--border-color)] rounded text-[var(--text-primary)] bg-[var(--bg-secondary)]\">10</span>\r\n <span>1-4 / 4</span>\r\n </div>\r\n {/* Status filter buttons */}\r\n <div className=\"flex items-center gap-1.5 ml-auto\">\r\n <span className=\"inline-flex items-center gap-1 px-2 py-0.5 text-xs rounded-full border bg-red-500/10 border-red-500/30 text-red-600\">\r\n <Ban className=\"h-3 w-3\" />{t('mock.filterNone')}\r\n </span>\r\n <span className=\"inline-flex items-center gap-1 px-2 py-0.5 text-xs rounded-full border bg-sky-500/10 border-sky-500/30 text-sky-600\">\r\n <Eye className=\"h-3 w-3\" />{t('mock.filterReadOnly')}\r\n </span>\r\n <span className=\"inline-flex items-center gap-1 px-2 py-0.5 text-xs rounded-full border bg-amber-500/10 border-amber-500/30 text-amber-600\">\r\n <Star className=\"h-3 w-3\" />{t('mock.filterPartial')}\r\n </span>\r\n <span className=\"inline-flex items-center gap-1 px-2 py-0.5 text-xs rounded-full border bg-emerald-500/30 border-emerald-500 text-emerald-700\">\r\n <Check className=\"h-3 w-3\" />{t('mock.filterComplete')}\r\n </span>\r\n </div>\r\n </div>\r\n\r\n {/* Matrix table */}\r\n <div className=\"overflow-x-auto\">\r\n <table className=\"w-full text-xs\">\r\n <thead>\r\n <tr className=\"border-b border-[var(--border-color)] bg-[var(--bg-secondary)]\">\r\n <th className=\"text-left px-3 py-2 text-[var(--text-muted)] font-medium w-40\">{t('mock.module')}</th>\r\n {mockRoles.map(role => (\r\n <th key={role.id} className=\"px-2 py-2 text-center min-w-[80px]\">\r\n <div className=\"flex flex-col items-center gap-0.5\">\r\n <span className=\"font-medium text-[var(--text-primary)]\">{role.short}</span>\r\n {role.isSystem && <Lock className=\"h-2.5 w-2.5 text-[var(--warning-dot)]\" />}\r\n </div>\r\n </th>\r\n ))}\r\n </tr>\r\n </thead>\r\n <tbody>\r\n {mockMatrix.map((row, idx) => {\r\n if (row.type === 'app') {\r\n return (\r\n <tr key={`app-${row.label}-${idx}`} className=\"bg-[var(--bg-tertiary)]/50\">\r\n <td colSpan={5} className=\"px-4 py-1 text-[var(--text-secondary)] text-[11px] font-medium\">\r\n └ {row.label}\r\n </td>\r\n </tr>\r\n );\r\n }\r\n return (\r\n <tr key={`row-${row.label}-${idx}`} className=\"border-b border-[var(--border-color)] hover:bg-[var(--bg-hover)]\">\r\n <td className=\"px-5 py-2 text-[var(--text-primary)]\">{row.label}</td>\r\n {row.cells.map((cell, ci) => {\r\n const cfg = cellConfig[cell];\r\n const Icon = cfg.icon;\r\n return (\r\n <td key={ci} className=\"px-2 py-2 text-center\">\r\n <span className={`inline-flex items-center justify-center w-7 h-7 rounded-full ${cfg.bg} border ${cfg.border} ${cfg.text} cursor-pointer hover:opacity-80`}>\r\n <Icon className=\"h-3.5 w-3.5\" />\r\n </span>\r\n </td>\r\n );\r\n })}\r\n </tr>\r\n );\r\n })}\r\n </tbody>\r\n </table>\r\n </div>\r\n\r\n {/* Pagination footer */}\r\n <div className=\"px-4 py-2 border-t border-[var(--border-color)] flex items-center gap-3 text-xs text-[var(--text-muted)] bg-[var(--bg-secondary)]\">\r\n <span>{t('mock.itemsPerPage')}:</span>\r\n <span className=\"px-1.5 py-0.5 border border-[var(--border-color)] rounded bg-[var(--bg-card)] text-[var(--text-primary)]\">25</span>\r\n <span>1-5 / 5</span>\r\n <div className=\"flex items-center gap-1\">\r\n <span className=\"p-1 rounded border border-[var(--border-color)] opacity-30\"><ChevronLeft className=\"h-3 w-3\" /></span>\r\n <span className=\"text-xs min-w-[40px] text-center\">1 / 1</span>\r\n <span className=\"p-1 rounded border border-[var(--border-color)] opacity-30\"><ChevronRight className=\"h-3 w-3\" /></span>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <Annotation>{t('annotation.matrix')}</Annotation>\r\n\r\n {/* Legend callout */}\r\n <div className=\"mt-4 grid grid-cols-2 md:grid-cols-4 gap-2\">\r\n {[\r\n { icon: Check, label: t('legend.all'), bg: 'bg-emerald-500/20 border-emerald-500/30 text-emerald-700' },\r\n { icon: Star, label: t('legend.some'), bg: 'bg-amber-500/20 border-amber-500/30 text-amber-700' },\r\n { icon: Eye, label: t('legend.readOnly'), bg: 'bg-sky-500/20 border-sky-500/30 text-sky-700' },\r\n { icon: Ban, label: t('legend.none'), bg: 'bg-red-500/10 border-red-500/20 text-red-600' },\r\n ].map(({ icon: Icon, label, bg }) => (\r\n <div key={label} className={`flex items-center gap-2 px-3 py-2 rounded-lg border text-xs ${bg}`}>\r\n <Icon className=\"h-4 w-4 flex-shrink-0\" />\r\n <span className=\"font-medium\">{label}</span>\r\n </div>\r\n ))}\r\n </div>\r\n <Annotation>{t('annotation.legend')}</Annotation>\r\n </section>\r\n\r\n {/* ── Section 4: Filters & User Guide ──────────────────────────── */}\r\n <section>\r\n <h2 className=\"text-lg font-semibold text-[var(--text-primary)] mb-3\">{t('filters.title')}</h2>\r\n\r\n {/* Mock filter panel */}\r\n <div className=\"border border-[var(--border-color)] rounded-lg overflow-hidden bg-[var(--bg-card)]\">\r\n <div className=\"px-4 py-3 flex flex-wrap items-center gap-3 border-b border-[var(--border-color)] bg-[var(--bg-secondary)]\">\r\n <div className=\"flex items-center gap-2 flex-1 min-w-[160px]\">\r\n <Search className=\"h-4 w-4 text-[var(--text-muted)]\" />\r\n <div className=\"flex-1 px-2 py-1 text-xs border border-[var(--border-color)] rounded bg-[var(--bg-card)] text-[var(--text-muted)]\">\r\n {t('mock.searchModules')}\r\n </div>\r\n </div>\r\n <div className=\"flex items-center gap-2\">\r\n <Filter className=\"h-3.5 w-3.5 text-[var(--text-muted)]\" />\r\n <span className=\"text-xs text-[var(--text-muted)]\">{t('mock.filterByRole')}</span>\r\n <div className=\"px-2 py-1 text-xs border border-[var(--border-color)] rounded bg-[var(--bg-card)] text-[var(--text-muted)] min-w-[100px]\">\r\n {t('mock.allRoles')}\r\n </div>\r\n </div>\r\n <div className=\"flex items-center gap-2\">\r\n <span className=\"text-xs text-[var(--text-muted)]\">{t('mock.application')}</span>\r\n <div className=\"px-2 py-1 text-xs border border-[var(--border-color)] rounded bg-[var(--bg-card)] text-[var(--text-muted)] min-w-[80px]\">\r\n {t('mock.all')}\r\n </div>\r\n </div>\r\n </div>\r\n\r\n {/* Collapsible guide preview */}\r\n <button\r\n onClick={() => setShowGuide(!showGuide)}\r\n 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\"\r\n >\r\n <div className=\"flex items-center gap-2\">\r\n <BookOpen className=\"h-4 w-4 text-[var(--color-accent-500)]\" />\r\n <span>{t('mock.userGuide')}</span>\r\n </div>\r\n {showGuide ? <ChevronUp className=\"h-4 w-4\" /> : <ChevronDown className=\"h-4 w-4\" />}\r\n </button>\r\n\r\n {showGuide && (\r\n <div className=\"px-4 pb-4 border-t border-[var(--border-color)] grid grid-cols-1 md:grid-cols-2 gap-4 pt-3 text-xs text-[var(--text-secondary)]\">\r\n <div>\r\n <h4 className=\"font-semibold text-[var(--text-primary)] mb-2 uppercase tracking-wider text-[10px]\">{t('guide.colorLegend')}</h4>\r\n <ul className=\"space-y-1\">\r\n <li className=\"flex items-center gap-2\"><span className=\"inline-flex items-center px-1.5 py-0.5 rounded-full bg-red-500/10 border border-red-500/20 text-red-600\"><Ban className=\"h-3 w-3\" /></span>{t('guide.noneDesc')}</li>\r\n <li className=\"flex items-center gap-2\"><span className=\"inline-flex items-center px-1.5 py-0.5 rounded-full bg-sky-500/20 border border-sky-500/30 text-sky-700\"><Eye className=\"h-3 w-3\" /></span>{t('guide.readOnlyDesc')}</li>\r\n <li className=\"flex items-center gap-2\"><span className=\"inline-flex items-center px-1.5 py-0.5 rounded-full bg-amber-500/20 border border-amber-500/30 text-amber-700\"><Star className=\"h-3 w-3\" /></span>{t('guide.partialDesc')}</li>\r\n <li className=\"flex items-center gap-2\"><span className=\"inline-flex items-center px-1.5 py-0.5 rounded-full bg-emerald-500/20 border border-emerald-500/30 text-emerald-700\"><Check className=\"h-3 w-3\" /></span>{t('guide.completeDesc')}</li>\r\n </ul>\r\n </div>\r\n <div>\r\n <h4 className=\"font-semibold text-[var(--text-primary)] mb-2 uppercase tracking-wider text-[10px]\">{t('guide.howToUse')}</h4>\r\n <ul className=\"space-y-1\">\r\n <li>• {t('guide.clickCell')}</li>\r\n <li className=\"flex items-center gap-1\"><Lock className=\"h-3 w-3 text-amber-500\" />{t('guide.systemRoles')}</li>\r\n <li>• {t('guide.inheritance')}</li>\r\n <li>• {t('guide.autoSave')}</li>\r\n </ul>\r\n </div>\r\n </div>\r\n )}\r\n </div>\r\n\r\n <Annotation>{t('annotation.filters')}</Annotation>\r\n </section>\r\n\r\n {/* ── Section 5: Role Templates ─────────────────────────────────── */}\r\n <section>\r\n <h2 className=\"text-lg font-semibold text-[var(--text-primary)] mb-3\">{t('templates.title')}</h2>\r\n <p className=\"text-sm text-[var(--text-secondary)] mb-4\">{t('templates.description')}</p>\r\n\r\n <div className=\"grid grid-cols-2 md:grid-cols-4 gap-3\">\r\n {[\r\n { icon: Eye, name: t('templates.viewer'), desc: t('templates.viewerDesc'), color: 'text-blue-600 bg-blue-500/10 border-blue-500/20' },\r\n { icon: User, name: t('templates.member'), desc: t('templates.memberDesc'), color: 'text-green-600 bg-green-500/10 border-green-500/20' },\r\n { icon: Pencil, name: t('templates.contributor'), desc: t('templates.contributorDesc'), color: 'text-orange-600 bg-orange-500/10 border-orange-500/20' },\r\n { icon: ShieldCheck, name: t('templates.admin'), desc: t('templates.adminDesc'), color: 'text-red-600 bg-red-500/10 border-red-500/20' },\r\n ].map(({ icon: Icon, name, desc, color }) => (\r\n <div key={name} className={`p-3 rounded-lg border-2 ${color} flex flex-col gap-1.5`}>\r\n <Icon className=\"h-5 w-5\" />\r\n <span className=\"text-sm font-semibold text-[var(--text-primary)]\">{name}</span>\r\n <span className=\"text-xs text-[var(--text-secondary)]\">{desc}</span>\r\n </div>\r\n ))}\r\n </div>\r\n\r\n <Annotation>{t('annotation.templates')}</Annotation>\r\n </section>\r\n\r\n {/* ── Section 6: Use Cases ──────────────────────────────────────── */}\r\n <section>\r\n <h2 className=\"text-lg font-semibold text-[var(--text-primary)] mb-4\">{t('useCases.title')}</h2>\r\n <div className=\"space-y-3\">\r\n {[\r\n { id: 'UC-001', actor: t('useCases.uc1.actor'), name: t('useCases.uc1.name'), desc: t('useCases.uc1.desc'), perm: 'administration.roles.update' },\r\n { id: 'UC-002', actor: t('useCases.uc2.actor'), name: t('useCases.uc2.name'), desc: t('useCases.uc2.desc'), perm: 'administration.permissions.read' },\r\n { id: 'UC-003', actor: t('useCases.uc3.actor'), name: t('useCases.uc3.name'), desc: t('useCases.uc3.desc'), perm: 'administration.roles.create' },\r\n ].map(uc => (\r\n <div key={uc.id} className=\"p-4 rounded-lg border border-[var(--border-color)] bg-[var(--bg-card)]\">\r\n <div className=\"flex items-center justify-between mb-1\">\r\n <div className=\"flex items-center gap-2\">\r\n <span className=\"text-xs font-mono text-[var(--text-muted)] bg-[var(--bg-tertiary)] px-1.5 py-0.5 rounded\">{uc.id}</span>\r\n <span className=\"text-sm font-medium text-[var(--text-primary)]\">{uc.name}</span>\r\n </div>\r\n <span className=\"text-xs text-[var(--color-accent-500)] bg-[var(--color-accent-100)] px-2 py-0.5 rounded-full\">{uc.actor}</span>\r\n </div>\r\n <p className=\"text-xs text-[var(--text-secondary)] mt-1\">{uc.desc}</p>\r\n <div className=\"mt-2 font-mono text-[10px] text-[var(--text-muted)] bg-[var(--bg-tertiary)] px-2 py-1 rounded\">{uc.perm}</div>\r\n </div>\r\n ))}\r\n </div>\r\n </section>\r\n\r\n {/* ── Section 7: Features ───────────────────────────────────────── */}\r\n <section>\r\n <h2 className=\"text-lg font-semibold text-[var(--text-primary)] mb-4\">{t('features.title')}</h2>\r\n <div className=\"space-y-3\">\r\n {[\r\n { id: 'F-001', title: t('features.f1.title'), desc: t('features.f1.desc'), example: t('features.f1.example') },\r\n { id: 'F-002', title: t('features.f2.title'), desc: t('features.f2.desc'), example: t('features.f2.example') },\r\n { id: 'F-003', title: t('features.f3.title'), desc: t('features.f3.desc'), example: t('features.f3.example') },\r\n { id: 'F-004', title: t('features.f4.title'), desc: t('features.f4.desc'), example: t('features.f4.example') },\r\n { id: 'F-005', title: t('features.f5.title'), desc: t('features.f5.desc'), example: t('features.f5.example') },\r\n ].map(f => (\r\n <div key={f.id} className=\"p-4 rounded-lg border border-[var(--border-color)] bg-[var(--bg-card)]\">\r\n <div className=\"flex items-center gap-2 mb-1\">\r\n <span className=\"text-xs font-mono text-[var(--text-muted)] bg-[var(--bg-tertiary)] px-1.5 py-0.5 rounded\">{f.id}</span>\r\n <span className=\"text-sm font-medium text-[var(--text-primary)]\">{f.title}</span>\r\n </div>\r\n <p className=\"text-xs text-[var(--text-secondary)]\">{f.desc}</p>\r\n <p className=\"mt-1.5 text-xs text-[var(--color-accent-500)] italic\">{f.example}</p>\r\n </div>\r\n ))}\r\n </div>\r\n </section>\r\n\r\n {/* ── Section 8: FAQ ────────────────────────────────────────────── */}\r\n <section>\r\n <h2 className=\"text-lg font-semibold text-[var(--text-primary)] mb-4\">{t('faq.title')}</h2>\r\n <div className=\"space-y-3\">\r\n {[\r\n { q: t('faq.q1'), a: t('faq.a1') },\r\n { q: t('faq.q2'), a: t('faq.a2') },\r\n { q: t('faq.q3'), a: t('faq.a3') },\r\n { q: t('faq.q4'), a: t('faq.a4') },\r\n { q: t('faq.q5'), a: t('faq.a5') },\r\n ].map(({ q, a }, i) => (\r\n <div key={`faq-${i}`} className=\"p-4 rounded-lg border border-[var(--border-color)] bg-[var(--bg-card)]\">\r\n <div className=\"flex items-start gap-2 mb-1\">\r\n <HelpCircle className=\"h-4 w-4 text-[var(--color-accent-500)] flex-shrink-0 mt-0.5\" />\r\n <span className=\"text-sm font-medium text-[var(--text-primary)]\">{q}</span>\r\n </div>\r\n <p className=\"text-xs text-[var(--text-secondary)] ml-6\">{a}</p>\r\n </div>\r\n ))}\r\n </div>\r\n </section>\r\n\r\n {/* ── Section 9: Technical Reference ────────────────────────────── */}\r\n <section>\r\n <button\r\n onClick={() => setShowTechRef(!showTechRef)}\r\n className=\"w-full flex items-center justify-between px-4 py-3 rounded-lg border border-[var(--border-color)] bg-[var(--bg-card)] hover:bg-[var(--bg-hover)] transition-colors\"\r\n >\r\n <div className=\"flex items-center gap-2\">\r\n <Code2 className=\"h-4 w-4 text-[var(--color-accent-500)]\" />\r\n <span className=\"text-sm font-medium text-[var(--text-primary)]\">{t('techRef.title')}</span>\r\n </div>\r\n {showTechRef ? <ChevronUp className=\"h-4 w-4 text-[var(--text-muted)]\" /> : <ChevronDown className=\"h-4 w-4 text-[var(--text-muted)]\" />}\r\n </button>\r\n\r\n {showTechRef && (\r\n <div className=\"mt-3 space-y-4\">\r\n {/* Business Rules */}\r\n <div className=\"p-4 rounded-lg border border-[var(--border-color)] bg-[var(--bg-card)]\">\r\n <h3 className=\"text-sm font-semibold text-[var(--text-primary)] mb-3\">{t('techRef.businessRules')}</h3>\r\n <div className=\"space-y-2\">\r\n {[\r\n { id: 'BR-001', cat: t('techRef.br.catSecurity'), name: t('techRef.br.br1.name'), stmt: t('techRef.br.br1.stmt') },\r\n { id: 'BR-002', cat: t('techRef.br.catLogic'), name: t('techRef.br.br2.name'), stmt: t('techRef.br.br2.stmt') },\r\n { id: 'BR-003', cat: t('techRef.br.catSecurity'), name: t('techRef.br.br3.name'), stmt: t('techRef.br.br3.stmt') },\r\n { id: 'BR-004', cat: t('techRef.br.catLogic'), name: t('techRef.br.br4.name'), stmt: t('techRef.br.br4.stmt') },\r\n { id: 'BR-005', cat: t('techRef.br.catTenant'), name: t('techRef.br.br5.name'), stmt: t('techRef.br.br5.stmt') },\r\n ].map(br => (\r\n <div key={br.id} className=\"flex items-start gap-3 text-xs border-l-2 border-[var(--color-accent-300)] pl-3 py-1\">\r\n <span className=\"font-mono text-[var(--text-muted)] w-12 flex-shrink-0\">{br.id}</span>\r\n <span className=\"text-[var(--color-accent-500)] px-1.5 py-0.5 rounded bg-[var(--color-accent-100)] text-[10px] flex-shrink-0\">{br.cat}</span>\r\n <div>\r\n <div className=\"font-medium text-[var(--text-primary)]\">{br.name}</div>\r\n <div className=\"text-[var(--text-secondary)] mt-0.5\">{br.stmt}</div>\r\n </div>\r\n </div>\r\n ))}\r\n </div>\r\n </div>\r\n\r\n {/* API Endpoints */}\r\n <div className=\"p-4 rounded-lg border border-[var(--border-color)] bg-[var(--bg-card)]\">\r\n <h3 className=\"text-sm font-semibold text-[var(--text-primary)] mb-3\">{t('techRef.apiEndpoints')}</h3>\r\n <div className=\"space-y-1.5\">\r\n {apiEndpoints.map((ep, i) => (\r\n <div key={`ep-${ep.method}-${i}`} className=\"flex items-center gap-2 text-xs\">\r\n <span className={`px-1.5 py-0.5 rounded border font-mono font-bold text-[10px] flex-shrink-0 ${methodColors[ep.method]}`}>\r\n {ep.method}\r\n </span>\r\n <span className=\"font-mono text-[var(--text-primary)] flex-1\">{ep.path}</span>\r\n <span className=\"text-[var(--text-muted)] hidden md:block\">{ep.handler}</span>\r\n </div>\r\n ))}\r\n </div>\r\n </div>\r\n </div>\r\n )}\r\n </section>\r\n </div>\r\n );\r\n}\r\n"],"names":["mockRoles","mockMatrix","cellConfig","Check","Star","Eye","Ban","apiEndpoints","methodColors","Annotation","children","jsxs","jsx","Info","AssignmentsDocPage","t","useTranslation","showGuide","setShowGuide","useState","showTechRef","setShowTechRef","Link","ArrowLeft","Grid3x3","Target","ShieldCheck","ChevronRight","Sparkles","role","Lock","row","idx","cell","ci","cfg","Icon","ChevronLeft","label","bg","Search","Filter","BookOpen","ChevronUp","ChevronDown","User","Pencil","name","desc","color","uc","f","q","a","i","HelpCircle","Code2","br","ep"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index-DTAZtzQ6.js","sources":["../src/pages/system/docs/developer/testing/SecurityTestingPage.tsx"],"sourcesContent":["import { Link } from 'react-router-dom';\r\nimport { useTranslation } from 'react-i18next';\r\nimport {\r\n Shield,\r\n ArrowRight,\r\n AlertTriangle,\r\n Check,\r\n Info,\r\n Search,\r\n Bug,\r\n Lock,\r\n Server,\r\n FileCode,\r\n Activity,\r\n CheckCircle2,\r\n XCircle,\r\n Clock,\r\n Layers\r\n} from 'lucide-react';\r\n\r\nexport function SecurityTestingPage() {\r\n const { t } = useTranslation('docs');\r\n\r\n return (\r\n <div className=\"space-y-8\">\r\n {/* Breadcrumb */}\r\n <div className=\"flex items-center gap-2 text-sm text-[var(--text-secondary)]\">\r\n <Link to=\"/system/docs\" className=\"hover:text-[var(--color-primary-600)]\">{t('breadcrumb.documentation')}</Link>\r\n <span>/</span>\r\n <Link to=\"/system/docs/developer\" className=\"hover:text-[var(--color-primary-600)]\">{t('breadcrumb.developer')}</Link>\r\n <span>/</span>\r\n <span>{t('developer.securityTesting.breadcrumb.title')}</span>\r\n </div>\r\n\r\n {/* Header */}\r\n <div>\r\n <h1 className=\"text-3xl font-bold mb-4 flex items-center gap-3\">\r\n <Shield className=\"w-8 h-8 text-[var(--color-primary-600)]\" />\r\n {t('developer.securityTesting.header.title')}\r\n </h1>\r\n <p className=\"text-lg text-[var(--text-secondary)]\">\r\n {t('developer.securityTesting.header.subtitle')}\r\n </p>\r\n </div>\r\n\r\n {/* Introduction */}\r\n <section className=\"card p-6\">\r\n <h2 className=\"text-xl font-semibold mb-4 flex items-center gap-2\">\r\n <Info className=\"w-5 h-5\" />\r\n {t('developer.securityTesting.intro.title')}\r\n </h2>\r\n <p className=\"text-[var(--text-secondary)] mb-4\">\r\n {t('developer.securityTesting.intro.description')}\r\n </p>\r\n <div className=\"grid grid-cols-1 md:grid-cols-2 gap-4\">\r\n <div className=\"p-4 bg-gradient-to-r from-blue-500/10 to-transparent rounded-lg border-l-4 border-blue-500\">\r\n <h4 className=\"font-semibold text-blue-600 dark:text-blue-400 flex items-center gap-2\">\r\n <FileCode className=\"w-5 h-5\" />\r\n {t('developer.securityTesting.intro.sast.title')}\r\n </h4>\r\n <p className=\"text-sm text-[var(--text-secondary)] mt-1\">\r\n {t('developer.securityTesting.intro.sast.description')}\r\n </p>\r\n </div>\r\n <div className=\"p-4 bg-gradient-to-r from-green-500/10 to-transparent rounded-lg border-l-4 border-green-500\">\r\n <h4 className=\"font-semibold text-green-600 dark:text-green-400 flex items-center gap-2\">\r\n <Activity className=\"w-5 h-5\" />\r\n {t('developer.securityTesting.intro.dast.title')}\r\n </h4>\r\n <p className=\"text-sm text-[var(--text-secondary)] mt-1\">\r\n {t('developer.securityTesting.intro.dast.description')}\r\n </p>\r\n </div>\r\n </div>\r\n </section>\r\n\r\n {/* SonarCloud Section */}\r\n <section className=\"card p-6\">\r\n <div className=\"flex items-start gap-4 mb-6\">\r\n <div className=\"p-3 rounded-xl bg-blue-600/10\">\r\n <Search className=\"w-8 h-8 text-blue-600\" />\r\n </div>\r\n <div>\r\n <h2 className=\"text-2xl font-bold text-blue-600 dark:text-blue-400\">\r\n {t('developer.securityTesting.sonarcloud.title')}\r\n </h2>\r\n <p className=\"text-[var(--text-secondary)]\">\r\n {t('developer.securityTesting.sonarcloud.subtitle')}\r\n </p>\r\n </div>\r\n </div>\r\n\r\n {/* Live Quality Badges */}\r\n <div className=\"mb-6 p-4 bg-[var(--bg-secondary)] rounded-lg\">\r\n <h3 className=\"text-lg font-semibold mb-3\">{t('developer.securityTesting.sonarcloud.badges.title', { defaultValue: 'Quality Status' })}</h3>\r\n <div className=\"flex flex-wrap gap-3\">\r\n <a href=\"https://sonarcloud.io/summary/new_code?id=AtlasHub_SmartStack.app\" target=\"_blank\" rel=\"noopener noreferrer\">\r\n <img\r\n src=\"https://sonarcloud.io/api/project_badges/measure?project=AtlasHub_SmartStack.app&metric=alert_status\"\r\n alt=\"Quality Gate Status\"\r\n className=\"h-5\"\r\n />\r\n </a>\r\n <a href=\"https://sonarcloud.io/summary/new_code?id=AtlasHub_SmartStack.app\" target=\"_blank\" rel=\"noopener noreferrer\">\r\n <img\r\n src=\"https://sonarcloud.io/api/project_badges/measure?project=AtlasHub_SmartStack.app&metric=security_rating\"\r\n alt=\"Security Rating\"\r\n className=\"h-5\"\r\n />\r\n </a>\r\n <a href=\"https://sonarcloud.io/summary/new_code?id=AtlasHub_SmartStack.app\" target=\"_blank\" rel=\"noopener noreferrer\">\r\n <img\r\n src=\"https://sonarcloud.io/api/project_badges/measure?project=AtlasHub_SmartStack.app&metric=vulnerabilities\"\r\n alt=\"Vulnerabilities\"\r\n className=\"h-5\"\r\n />\r\n </a>\r\n <a href=\"https://sonarcloud.io/summary/new_code?id=AtlasHub_SmartStack.app\" target=\"_blank\" rel=\"noopener noreferrer\">\r\n <img\r\n src=\"https://sonarcloud.io/api/project_badges/measure?project=AtlasHub_SmartStack.app&metric=bugs\"\r\n alt=\"Bugs\"\r\n className=\"h-5\"\r\n />\r\n </a>\r\n <a href=\"https://sonarcloud.io/summary/new_code?id=AtlasHub_SmartStack.app\" target=\"_blank\" rel=\"noopener noreferrer\">\r\n <img\r\n src=\"https://sonarcloud.io/api/project_badges/measure?project=AtlasHub_SmartStack.app&metric=code_smells\"\r\n alt=\"Code Smells\"\r\n className=\"h-5\"\r\n />\r\n </a>\r\n <a href=\"https://sonarcloud.io/summary/new_code?id=AtlasHub_SmartStack.app\" target=\"_blank\" rel=\"noopener noreferrer\">\r\n <img\r\n src=\"https://sonarcloud.io/api/project_badges/measure?project=AtlasHub_SmartStack.app&metric=coverage\"\r\n alt=\"Coverage\"\r\n className=\"h-5\"\r\n />\r\n </a>\r\n </div>\r\n <p className=\"text-xs text-[var(--text-tertiary)] mt-2\">\r\n {t('developer.securityTesting.sonarcloud.badges.hint', { defaultValue: 'Click any badge to view details on SonarCloud' })}\r\n </p>\r\n </div>\r\n\r\n {/* Description */}\r\n <div className=\"mb-6\">\r\n <h3 className=\"text-lg font-semibold mb-3\">{t('developer.securityTesting.sonarcloud.description.title')}</h3>\r\n <p className=\"text-[var(--text-secondary)]\">\r\n {t('developer.securityTesting.sonarcloud.description.text')}\r\n </p>\r\n </div>\r\n\r\n {/* Methodology */}\r\n <div className=\"mb-6\">\r\n <h3 className=\"text-lg font-semibold mb-3\">{t('developer.securityTesting.sonarcloud.methodology.title')}</h3>\r\n <ul className=\"space-y-2\">\r\n <li className=\"flex items-start gap-2\">\r\n <Check className=\"w-5 h-5 text-green-500 mt-0.5 flex-shrink-0\" />\r\n <span>{t('developer.securityTesting.sonarcloud.methodology.item1')}</span>\r\n </li>\r\n <li className=\"flex items-start gap-2\">\r\n <Check className=\"w-5 h-5 text-green-500 mt-0.5 flex-shrink-0\" />\r\n <span>{t('developer.securityTesting.sonarcloud.methodology.item2')}</span>\r\n </li>\r\n <li className=\"flex items-start gap-2\">\r\n <Check className=\"w-5 h-5 text-green-500 mt-0.5 flex-shrink-0\" />\r\n <span>{t('developer.securityTesting.sonarcloud.methodology.item3')}</span>\r\n </li>\r\n <li className=\"flex items-start gap-2\">\r\n <Check className=\"w-5 h-5 text-green-500 mt-0.5 flex-shrink-0\" />\r\n <span>{t('developer.securityTesting.sonarcloud.methodology.item4')}</span>\r\n </li>\r\n </ul>\r\n </div>\r\n\r\n {/* Setup Steps */}\r\n <div className=\"mb-6\">\r\n <h3 className=\"text-lg font-semibold mb-3\">{t('developer.securityTesting.sonarcloud.setup.title')}</h3>\r\n <div className=\"space-y-3\">\r\n {[1, 2, 3, 4, 5, 6].map((step) => (\r\n <div key={step} className=\"flex items-start gap-3 p-3 bg-[var(--bg-secondary)] rounded-lg\">\r\n <span className=\"w-6 h-6 flex items-center justify-center bg-blue-600 text-white text-sm font-bold rounded-full flex-shrink-0\">\r\n {step}\r\n </span>\r\n <div className=\"flex-1\">\r\n <p className=\"font-medium\">{t(`developer.securityTesting.sonarcloud.setup.step${step}.title`)}</p>\r\n <p className=\"text-sm text-[var(--text-secondary)]\">\r\n {t(`developer.securityTesting.sonarcloud.setup.step${step}.description`)}\r\n </p>\r\n </div>\r\n </div>\r\n ))}\r\n </div>\r\n </div>\r\n\r\n {/* Pipeline YAML Example */}\r\n <div className=\"mb-6\">\r\n <h3 className=\"text-lg font-semibold mb-3\">{t('developer.securityTesting.sonarcloud.pipeline.title')}</h3>\r\n <pre className=\"bg-[var(--bg-secondary)] p-4 rounded-lg text-sm overflow-x-auto\">\r\n{`# azure-pipelines.yml\r\n- task: SonarCloudPrepare@2\r\n inputs:\r\n SonarCloud: 'SonarCloud-Connection'\r\n organization: 'your-organization'\r\n scannerMode: 'MSBuild'\r\n projectKey: 'your-project-key'\r\n\r\n- task: DotNetCoreCLI@2\r\n inputs:\r\n command: 'build'\r\n projects: '**/*.sln'\r\n\r\n- task: SonarCloudAnalyze@2\r\n\r\n- task: SonarCloudPublish@2\r\n inputs:\r\n pollingTimeoutSec: '300'`}\r\n </pre>\r\n </div>\r\n\r\n {/* Results */}\r\n <div>\r\n <h3 className=\"text-lg font-semibold mb-3\">{t('developer.securityTesting.sonarcloud.results.title')}</h3>\r\n <div className=\"grid grid-cols-1 md:grid-cols-2 gap-3\">\r\n <div className=\"flex items-center gap-2 p-3 bg-[var(--bg-secondary)] rounded-lg\">\r\n <CheckCircle2 className=\"w-5 h-5 text-green-500\" />\r\n <span>{t('developer.securityTesting.sonarcloud.results.item1')}</span>\r\n </div>\r\n <div className=\"flex items-center gap-2 p-3 bg-[var(--bg-secondary)] rounded-lg\">\r\n <CheckCircle2 className=\"w-5 h-5 text-green-500\" />\r\n <span>{t('developer.securityTesting.sonarcloud.results.item2')}</span>\r\n </div>\r\n <div className=\"flex items-center gap-2 p-3 bg-[var(--bg-secondary)] rounded-lg\">\r\n <CheckCircle2 className=\"w-5 h-5 text-green-500\" />\r\n <span>{t('developer.securityTesting.sonarcloud.results.item3')}</span>\r\n </div>\r\n <div className=\"flex items-center gap-2 p-3 bg-[var(--bg-secondary)] rounded-lg\">\r\n <CheckCircle2 className=\"w-5 h-5 text-green-500\" />\r\n <span>{t('developer.securityTesting.sonarcloud.results.item4')}</span>\r\n </div>\r\n <div className=\"flex items-center gap-2 p-3 bg-[var(--bg-secondary)] rounded-lg\">\r\n <CheckCircle2 className=\"w-5 h-5 text-green-500\" />\r\n <span>{t('developer.securityTesting.sonarcloud.results.item5')}</span>\r\n </div>\r\n </div>\r\n </div>\r\n </section>\r\n\r\n {/* OWASP ZAP Section */}\r\n <section className=\"card p-6\">\r\n <div className=\"flex items-start gap-4 mb-6\">\r\n <div className=\"p-3 rounded-xl bg-orange-600/10\">\r\n <Bug className=\"w-8 h-8 text-orange-600\" />\r\n </div>\r\n <div>\r\n <h2 className=\"text-2xl font-bold text-orange-600 dark:text-orange-400\">\r\n {t('developer.securityTesting.owaspzap.title')}\r\n </h2>\r\n <p className=\"text-[var(--text-secondary)]\">\r\n {t('developer.securityTesting.owaspzap.subtitle')}\r\n </p>\r\n </div>\r\n </div>\r\n\r\n {/* Critical Warning */}\r\n <div className=\"mb-6 p-4 bg-red-500/10 border border-red-500/30 rounded-lg\">\r\n <div className=\"flex items-start gap-3\">\r\n <AlertTriangle className=\"w-6 h-6 text-red-500 flex-shrink-0\" />\r\n <div>\r\n <h4 className=\"font-bold text-red-600 dark:text-red-400\">\r\n {t('developer.securityTesting.owaspzap.warning.title')}\r\n </h4>\r\n <p className=\"text-sm text-[var(--text-secondary)]\">\r\n {t('developer.securityTesting.owaspzap.warning.text')}\r\n </p>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n {/* Description */}\r\n <div className=\"mb-6\">\r\n <h3 className=\"text-lg font-semibold mb-3\">{t('developer.securityTesting.owaspzap.description.title')}</h3>\r\n <p className=\"text-[var(--text-secondary)]\">\r\n {t('developer.securityTesting.owaspzap.description.text')}\r\n </p>\r\n </div>\r\n\r\n {/* Methodology */}\r\n <div className=\"mb-6\">\r\n <h3 className=\"text-lg font-semibold mb-3\">{t('developer.securityTesting.owaspzap.methodology.title')}</h3>\r\n <ul className=\"space-y-2\">\r\n <li className=\"flex items-start gap-2\">\r\n <Check className=\"w-5 h-5 text-green-500 mt-0.5 flex-shrink-0\" />\r\n <span>{t('developer.securityTesting.owaspzap.methodology.item1')}</span>\r\n </li>\r\n <li className=\"flex items-start gap-2\">\r\n <Check className=\"w-5 h-5 text-green-500 mt-0.5 flex-shrink-0\" />\r\n <span>{t('developer.securityTesting.owaspzap.methodology.item2')}</span>\r\n </li>\r\n <li className=\"flex items-start gap-2\">\r\n <Check className=\"w-5 h-5 text-green-500 mt-0.5 flex-shrink-0\" />\r\n <span>{t('developer.securityTesting.owaspzap.methodology.item3')}</span>\r\n </li>\r\n <li className=\"flex items-start gap-2\">\r\n <Check className=\"w-5 h-5 text-green-500 mt-0.5 flex-shrink-0\" />\r\n <span>{t('developer.securityTesting.owaspzap.methodology.item4')}</span>\r\n </li>\r\n <li className=\"flex items-start gap-2\">\r\n <Check className=\"w-5 h-5 text-green-500 mt-0.5 flex-shrink-0\" />\r\n <span>{t('developer.securityTesting.owaspzap.methodology.item5')}</span>\r\n </li>\r\n </ul>\r\n </div>\r\n\r\n {/* Manual Setup */}\r\n <div className=\"mb-6\">\r\n <h3 className=\"text-lg font-semibold mb-3\">{t('developer.securityTesting.owaspzap.manualSetup.title')}</h3>\r\n <div className=\"space-y-3\">\r\n {[1, 2, 3, 4, 5, 6, 7, 8, 9].map((step) => (\r\n <div key={step} className=\"flex items-start gap-3 p-3 bg-[var(--bg-secondary)] rounded-lg\">\r\n <span className=\"w-6 h-6 flex items-center justify-center bg-orange-600 text-white text-sm font-bold rounded-full flex-shrink-0\">\r\n {step}\r\n </span>\r\n <div className=\"flex-1\">\r\n <p className=\"font-medium\">{t(`developer.securityTesting.owaspzap.manualSetup.step${step}.title`)}</p>\r\n <p className=\"text-sm text-[var(--text-secondary)]\">\r\n {t(`developer.securityTesting.owaspzap.manualSetup.step${step}.description`)}\r\n </p>\r\n </div>\r\n </div>\r\n ))}\r\n </div>\r\n </div>\r\n\r\n {/* Critical Tests for AtlasHub */}\r\n <div className=\"mb-6\">\r\n <h3 className=\"text-lg font-semibold mb-3\">{t('developer.securityTesting.owaspzap.criticalTests.title')}</h3>\r\n <div className=\"grid grid-cols-1 md:grid-cols-2 gap-3\">\r\n <div className=\"p-4 bg-[var(--bg-secondary)] rounded-lg\">\r\n <div className=\"flex items-center gap-2 mb-2\">\r\n <Lock className=\"w-5 h-5 text-orange-500\" />\r\n <h4 className=\"font-semibold\">{t('developer.securityTesting.owaspzap.criticalTests.tenant.title')}</h4>\r\n </div>\r\n <p className=\"text-sm text-[var(--text-secondary)]\">\r\n {t('developer.securityTesting.owaspzap.criticalTests.tenant.description')}\r\n </p>\r\n </div>\r\n <div className=\"p-4 bg-[var(--bg-secondary)] rounded-lg\">\r\n <div className=\"flex items-center gap-2 mb-2\">\r\n <Search className=\"w-5 h-5 text-orange-500\" />\r\n <h4 className=\"font-semibold\">{t('developer.securityTesting.owaspzap.criticalTests.idor.title')}</h4>\r\n </div>\r\n <p className=\"text-sm text-[var(--text-secondary)]\">\r\n {t('developer.securityTesting.owaspzap.criticalTests.idor.description')}\r\n </p>\r\n </div>\r\n <div className=\"p-4 bg-[var(--bg-secondary)] rounded-lg\">\r\n <div className=\"flex items-center gap-2 mb-2\">\r\n <Server className=\"w-5 h-5 text-orange-500\" />\r\n <h4 className=\"font-semibold\">{t('developer.securityTesting.owaspzap.criticalTests.api.title')}</h4>\r\n </div>\r\n <p className=\"text-sm text-[var(--text-secondary)]\">\r\n {t('developer.securityTesting.owaspzap.criticalTests.api.description')}\r\n </p>\r\n </div>\r\n <div className=\"p-4 bg-[var(--bg-secondary)] rounded-lg\">\r\n <div className=\"flex items-center gap-2 mb-2\">\r\n <XCircle className=\"w-5 h-5 text-orange-500\" />\r\n <h4 className=\"font-semibold\">{t('developer.securityTesting.owaspzap.criticalTests.methods.title')}</h4>\r\n </div>\r\n <p className=\"text-sm text-[var(--text-secondary)]\">\r\n {t('developer.securityTesting.owaspzap.criticalTests.methods.description')}\r\n </p>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n {/* Automation */}\r\n <div className=\"p-4 bg-gradient-to-r from-[var(--info-bg)] to-transparent border border-[var(--info-border)] rounded-lg\">\r\n <h4 className=\"font-semibold text-[var(--info-text)] mb-2 flex items-center gap-2\">\r\n <Info className=\"w-5 h-5\" />\r\n {t('developer.securityTesting.owaspzap.automation.title')}\r\n </h4>\r\n <ul className=\"text-sm space-y-1 text-[var(--text-secondary)]\">\r\n <li>• {t('developer.securityTesting.owaspzap.automation.item1')}</li>\r\n <li>• {t('developer.securityTesting.owaspzap.automation.item2')}</li>\r\n <li>• {t('developer.securityTesting.owaspzap.automation.item3')}</li>\r\n <li>• {t('developer.securityTesting.owaspzap.automation.item4')}</li>\r\n </ul>\r\n </div>\r\n </section>\r\n\r\n {/* Best Practices */}\r\n <section className=\"card p-6\">\r\n <h2 className=\"text-xl font-semibold mb-6 flex items-center gap-2\">\r\n <Shield className=\"w-5 h-5\" />\r\n {t('developer.securityTesting.bestPractices.title')}\r\n </h2>\r\n\r\n {/* Layered Approach */}\r\n <div className=\"mb-6\">\r\n <h3 className=\"text-lg font-semibold mb-3\">{t('developer.securityTesting.bestPractices.layered.title')}</h3>\r\n <div className=\"space-y-3\">\r\n <div className=\"flex items-center gap-3 p-3 bg-gradient-to-r from-blue-500/10 to-transparent rounded-lg\">\r\n <div className=\"w-8 h-8 flex items-center justify-center bg-blue-600 text-white font-bold rounded-lg\">1</div>\r\n <div className=\"flex-1\">\r\n <span className=\"font-medium\">SonarCloud</span>\r\n <span className=\"text-[var(--text-secondary)]\"> — {t('developer.securityTesting.bestPractices.layered.layer1')}</span>\r\n </div>\r\n <span className=\"text-sm text-blue-600 font-semibold\">30-40%</span>\r\n </div>\r\n <div className=\"flex items-center gap-3 p-3 bg-gradient-to-r from-orange-500/10 to-transparent rounded-lg\">\r\n <div className=\"w-8 h-8 flex items-center justify-center bg-orange-600 text-white font-bold rounded-lg\">2</div>\r\n <div className=\"flex-1\">\r\n <span className=\"font-medium\">OWASP ZAP</span>\r\n <span className=\"text-[var(--text-secondary)]\"> — {t('developer.securityTesting.bestPractices.layered.layer2')}</span>\r\n </div>\r\n <span className=\"text-sm text-orange-600 font-semibold\">20-30%</span>\r\n </div>\r\n <div className=\"flex items-center gap-3 p-3 bg-gradient-to-r from-purple-500/10 to-transparent rounded-lg\">\r\n <div className=\"w-8 h-8 flex items-center justify-center bg-purple-600 text-white font-bold rounded-lg\">3</div>\r\n <div className=\"flex-1\">\r\n <span className=\"font-medium\">{t('developer.securityTesting.bestPractices.layered.pentest')}</span>\r\n <span className=\"text-[var(--text-secondary)]\"> — {t('developer.securityTesting.bestPractices.layered.layer3')}</span>\r\n </div>\r\n <span className=\"text-sm text-purple-600 font-semibold\">30-40%</span>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n {/* Frequency */}\r\n <div className=\"mb-6\">\r\n <h3 className=\"text-lg font-semibold mb-3 flex items-center gap-2\">\r\n <Clock className=\"w-5 h-5\" />\r\n {t('developer.securityTesting.bestPractices.frequency.title')}\r\n </h3>\r\n <div className=\"overflow-x-auto\">\r\n <table className=\"w-full text-sm\">\r\n <thead>\r\n <tr className=\"border-b border-[var(--border-color)]\">\r\n <th className=\"text-left p-3\">{t('developer.securityTesting.bestPractices.frequency.tool')}</th>\r\n <th className=\"text-left p-3\">{t('developer.securityTesting.bestPractices.frequency.frequency')}</th>\r\n <th className=\"text-left p-3\">{t('developer.securityTesting.bestPractices.frequency.trigger')}</th>\r\n </tr>\r\n </thead>\r\n <tbody>\r\n <tr className=\"border-b border-[var(--border-color)]\">\r\n <td className=\"p-3 font-medium\">SonarCloud</td>\r\n <td className=\"p-3\">{t('developer.securityTesting.bestPractices.frequency.sonar.freq')}</td>\r\n <td className=\"p-3 text-[var(--text-secondary)]\">{t('developer.securityTesting.bestPractices.frequency.sonar.trigger')}</td>\r\n </tr>\r\n <tr className=\"border-b border-[var(--border-color)]\">\r\n <td className=\"p-3 font-medium\">OWASP ZAP (Manual)</td>\r\n <td className=\"p-3\">{t('developer.securityTesting.bestPractices.frequency.zapManual.freq')}</td>\r\n <td className=\"p-3 text-[var(--text-secondary)]\">{t('developer.securityTesting.bestPractices.frequency.zapManual.trigger')}</td>\r\n </tr>\r\n <tr className=\"border-b border-[var(--border-color)]\">\r\n <td className=\"p-3 font-medium\">OWASP ZAP (Auto)</td>\r\n <td className=\"p-3\">{t('developer.securityTesting.bestPractices.frequency.zapAuto.freq')}</td>\r\n <td className=\"p-3 text-[var(--text-secondary)]\">{t('developer.securityTesting.bestPractices.frequency.zapAuto.trigger')}</td>\r\n </tr>\r\n <tr>\r\n <td className=\"p-3 font-medium\">Pentest Pro</td>\r\n <td className=\"p-3\">{t('developer.securityTesting.bestPractices.frequency.pentest.freq')}</td>\r\n <td className=\"p-3 text-[var(--text-secondary)]\">{t('developer.securityTesting.bestPractices.frequency.pentest.trigger')}</td>\r\n </tr>\r\n </tbody>\r\n </table>\r\n </div>\r\n </div>\r\n\r\n {/* Data Security Focus */}\r\n <div className=\"mb-6\">\r\n <h3 className=\"text-lg font-semibold mb-3 flex items-center gap-2\">\r\n <Layers className=\"w-5 h-5\" />\r\n {t('developer.securityTesting.bestPractices.dataFocus.title')}\r\n </h3>\r\n <div className=\"grid grid-cols-1 md:grid-cols-2 gap-3\">\r\n <div className=\"flex items-start gap-2 p-3 bg-[var(--bg-secondary)] rounded-lg\">\r\n <Check className=\"w-5 h-5 text-green-500 mt-0.5\" />\r\n <span>{t('developer.securityTesting.bestPractices.dataFocus.item1')}</span>\r\n </div>\r\n <div className=\"flex items-start gap-2 p-3 bg-[var(--bg-secondary)] rounded-lg\">\r\n <Check className=\"w-5 h-5 text-green-500 mt-0.5\" />\r\n <span>{t('developer.securityTesting.bestPractices.dataFocus.item2')}</span>\r\n </div>\r\n <div className=\"flex items-start gap-2 p-3 bg-[var(--bg-secondary)] rounded-lg\">\r\n <Check className=\"w-5 h-5 text-green-500 mt-0.5\" />\r\n <span>{t('developer.securityTesting.bestPractices.dataFocus.item3')}</span>\r\n </div>\r\n <div className=\"flex items-start gap-2 p-3 bg-[var(--bg-secondary)] rounded-lg\">\r\n <Check className=\"w-5 h-5 text-green-500 mt-0.5\" />\r\n <span>{t('developer.securityTesting.bestPractices.dataFocus.item4')}</span>\r\n </div>\r\n <div className=\"flex items-start gap-2 p-3 bg-[var(--bg-secondary)] rounded-lg md:col-span-2\">\r\n <Check className=\"w-5 h-5 text-green-500 mt-0.5\" />\r\n <span>{t('developer.securityTesting.bestPractices.dataFocus.item5')}</span>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n {/* Limitations Warning */}\r\n <div className=\"p-4 bg-yellow-500/10 border border-yellow-500/30 rounded-lg\">\r\n <div className=\"flex items-start gap-3\">\r\n <AlertTriangle className=\"w-6 h-6 text-yellow-600 flex-shrink-0\" />\r\n <div>\r\n <h4 className=\"font-bold text-yellow-600 dark:text-yellow-400\">\r\n {t('developer.securityTesting.bestPractices.limitations.title')}\r\n </h4>\r\n <ul className=\"text-sm text-[var(--text-secondary)] mt-2 space-y-1\">\r\n <li>• {t('developer.securityTesting.bestPractices.limitations.item1')}</li>\r\n <li>• {t('developer.securityTesting.bestPractices.limitations.item2')}</li>\r\n <li>• {t('developer.securityTesting.bestPractices.limitations.item3')}</li>\r\n </ul>\r\n </div>\r\n </div>\r\n </div>\r\n </section>\r\n\r\n {/* Navigation */}\r\n <div className=\"flex justify-between pt-6 border-t border-[var(--border-color)]\">\r\n <Link\r\n to=\"/system/docs/developer\"\r\n className=\"flex items-center gap-2 text-[var(--text-secondary)] hover:text-[var(--color-primary-600)]\"\r\n >\r\n <ArrowRight className=\"w-4 h-4 rotate-180\" />\r\n {t('developer.securityTesting.nav.back')}\r\n </Link>\r\n </div>\r\n </div>\r\n );\r\n}\r\n"],"names":["SecurityTestingPage","t","useTranslation","jsxs","jsx","Link","Shield","Info","FileCode","Activity","Search","Check","step","CheckCircle2","Bug","AlertTriangle","Lock","Server","XCircle","Clock","Layers","ArrowRight"],"mappings":"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"}
1
+ {"version":3,"file":"index-DTAZtzQ6.js","sources":["../src/pages/system/docs/developer/testing/SecurityTestingPage.tsx"],"sourcesContent":["import type { ReactElement } from 'react';\nimport { Link } from 'react-router-dom';\r\nimport { useTranslation } from 'react-i18next';\r\nimport {\r\n Shield,\r\n ArrowRight,\r\n AlertTriangle,\r\n Check,\r\n Info,\r\n Search,\r\n Bug,\r\n Lock,\r\n Server,\r\n FileCode,\r\n Activity,\r\n CheckCircle2,\r\n XCircle,\r\n Clock,\r\n Layers\r\n} from 'lucide-react';\r\n\r\nexport function SecurityTestingPage(): ReactElement {\r\n const { t } = useTranslation('docs');\r\n\r\n return (\r\n <div className=\"space-y-8\">\r\n {/* Breadcrumb */}\r\n <div className=\"flex items-center gap-2 text-sm text-[var(--text-secondary)]\">\r\n <Link to=\"/system/docs\" className=\"hover:text-[var(--color-primary-600)]\">{t('breadcrumb.documentation')}</Link>\r\n <span>/</span>\r\n <Link to=\"/system/docs/developer\" className=\"hover:text-[var(--color-primary-600)]\">{t('breadcrumb.developer')}</Link>\r\n <span>/</span>\r\n <span>{t('developer.securityTesting.breadcrumb.title')}</span>\r\n </div>\r\n\r\n {/* Header */}\r\n <div>\r\n <h1 className=\"text-3xl font-bold mb-4 flex items-center gap-3\">\r\n <Shield className=\"w-8 h-8 text-[var(--color-primary-600)]\" />\r\n {t('developer.securityTesting.header.title')}\r\n </h1>\r\n <p className=\"text-lg text-[var(--text-secondary)]\">\r\n {t('developer.securityTesting.header.subtitle')}\r\n </p>\r\n </div>\r\n\r\n {/* Introduction */}\r\n <section className=\"card p-6\">\r\n <h2 className=\"text-xl font-semibold mb-4 flex items-center gap-2\">\r\n <Info className=\"w-5 h-5\" />\r\n {t('developer.securityTesting.intro.title')}\r\n </h2>\r\n <p className=\"text-[var(--text-secondary)] mb-4\">\r\n {t('developer.securityTesting.intro.description')}\r\n </p>\r\n <div className=\"grid grid-cols-1 md:grid-cols-2 gap-4\">\r\n <div className=\"p-4 bg-gradient-to-r from-blue-500/10 to-transparent rounded-lg border-l-4 border-blue-500\">\r\n <h4 className=\"font-semibold text-blue-600 dark:text-blue-400 flex items-center gap-2\">\r\n <FileCode className=\"w-5 h-5\" />\r\n {t('developer.securityTesting.intro.sast.title')}\r\n </h4>\r\n <p className=\"text-sm text-[var(--text-secondary)] mt-1\">\r\n {t('developer.securityTesting.intro.sast.description')}\r\n </p>\r\n </div>\r\n <div className=\"p-4 bg-gradient-to-r from-green-500/10 to-transparent rounded-lg border-l-4 border-green-500\">\r\n <h4 className=\"font-semibold text-green-600 dark:text-green-400 flex items-center gap-2\">\r\n <Activity className=\"w-5 h-5\" />\r\n {t('developer.securityTesting.intro.dast.title')}\r\n </h4>\r\n <p className=\"text-sm text-[var(--text-secondary)] mt-1\">\r\n {t('developer.securityTesting.intro.dast.description')}\r\n </p>\r\n </div>\r\n </div>\r\n </section>\r\n\r\n {/* SonarCloud Section */}\r\n <section className=\"card p-6\">\r\n <div className=\"flex items-start gap-4 mb-6\">\r\n <div className=\"p-3 rounded-xl bg-blue-600/10\">\r\n <Search className=\"w-8 h-8 text-blue-600\" />\r\n </div>\r\n <div>\r\n <h2 className=\"text-2xl font-bold text-blue-600 dark:text-blue-400\">\r\n {t('developer.securityTesting.sonarcloud.title')}\r\n </h2>\r\n <p className=\"text-[var(--text-secondary)]\">\r\n {t('developer.securityTesting.sonarcloud.subtitle')}\r\n </p>\r\n </div>\r\n </div>\r\n\r\n {/* Live Quality Badges */}\r\n <div className=\"mb-6 p-4 bg-[var(--bg-secondary)] rounded-lg\">\r\n <h3 className=\"text-lg font-semibold mb-3\">{t('developer.securityTesting.sonarcloud.badges.title', { defaultValue: 'Quality Status' })}</h3>\r\n <div className=\"flex flex-wrap gap-3\">\r\n <a href=\"https://sonarcloud.io/summary/new_code?id=AtlasHub_SmartStack.app\" target=\"_blank\" rel=\"noopener noreferrer\">\r\n <img\r\n src=\"https://sonarcloud.io/api/project_badges/measure?project=AtlasHub_SmartStack.app&metric=alert_status\"\r\n alt=\"Quality Gate Status\"\r\n className=\"h-5\"\r\n />\r\n </a>\r\n <a href=\"https://sonarcloud.io/summary/new_code?id=AtlasHub_SmartStack.app\" target=\"_blank\" rel=\"noopener noreferrer\">\r\n <img\r\n src=\"https://sonarcloud.io/api/project_badges/measure?project=AtlasHub_SmartStack.app&metric=security_rating\"\r\n alt=\"Security Rating\"\r\n className=\"h-5\"\r\n />\r\n </a>\r\n <a href=\"https://sonarcloud.io/summary/new_code?id=AtlasHub_SmartStack.app\" target=\"_blank\" rel=\"noopener noreferrer\">\r\n <img\r\n src=\"https://sonarcloud.io/api/project_badges/measure?project=AtlasHub_SmartStack.app&metric=vulnerabilities\"\r\n alt=\"Vulnerabilities\"\r\n className=\"h-5\"\r\n />\r\n </a>\r\n <a href=\"https://sonarcloud.io/summary/new_code?id=AtlasHub_SmartStack.app\" target=\"_blank\" rel=\"noopener noreferrer\">\r\n <img\r\n src=\"https://sonarcloud.io/api/project_badges/measure?project=AtlasHub_SmartStack.app&metric=bugs\"\r\n alt=\"Bugs\"\r\n className=\"h-5\"\r\n />\r\n </a>\r\n <a href=\"https://sonarcloud.io/summary/new_code?id=AtlasHub_SmartStack.app\" target=\"_blank\" rel=\"noopener noreferrer\">\r\n <img\r\n src=\"https://sonarcloud.io/api/project_badges/measure?project=AtlasHub_SmartStack.app&metric=code_smells\"\r\n alt=\"Code Smells\"\r\n className=\"h-5\"\r\n />\r\n </a>\r\n <a href=\"https://sonarcloud.io/summary/new_code?id=AtlasHub_SmartStack.app\" target=\"_blank\" rel=\"noopener noreferrer\">\r\n <img\r\n src=\"https://sonarcloud.io/api/project_badges/measure?project=AtlasHub_SmartStack.app&metric=coverage\"\r\n alt=\"Coverage\"\r\n className=\"h-5\"\r\n />\r\n </a>\r\n </div>\r\n <p className=\"text-xs text-[var(--text-tertiary)] mt-2\">\r\n {t('developer.securityTesting.sonarcloud.badges.hint', { defaultValue: 'Click any badge to view details on SonarCloud' })}\r\n </p>\r\n </div>\r\n\r\n {/* Description */}\r\n <div className=\"mb-6\">\r\n <h3 className=\"text-lg font-semibold mb-3\">{t('developer.securityTesting.sonarcloud.description.title')}</h3>\r\n <p className=\"text-[var(--text-secondary)]\">\r\n {t('developer.securityTesting.sonarcloud.description.text')}\r\n </p>\r\n </div>\r\n\r\n {/* Methodology */}\r\n <div className=\"mb-6\">\r\n <h3 className=\"text-lg font-semibold mb-3\">{t('developer.securityTesting.sonarcloud.methodology.title')}</h3>\r\n <ul className=\"space-y-2\">\r\n <li className=\"flex items-start gap-2\">\r\n <Check className=\"w-5 h-5 text-green-500 mt-0.5 flex-shrink-0\" />\r\n <span>{t('developer.securityTesting.sonarcloud.methodology.item1')}</span>\r\n </li>\r\n <li className=\"flex items-start gap-2\">\r\n <Check className=\"w-5 h-5 text-green-500 mt-0.5 flex-shrink-0\" />\r\n <span>{t('developer.securityTesting.sonarcloud.methodology.item2')}</span>\r\n </li>\r\n <li className=\"flex items-start gap-2\">\r\n <Check className=\"w-5 h-5 text-green-500 mt-0.5 flex-shrink-0\" />\r\n <span>{t('developer.securityTesting.sonarcloud.methodology.item3')}</span>\r\n </li>\r\n <li className=\"flex items-start gap-2\">\r\n <Check className=\"w-5 h-5 text-green-500 mt-0.5 flex-shrink-0\" />\r\n <span>{t('developer.securityTesting.sonarcloud.methodology.item4')}</span>\r\n </li>\r\n </ul>\r\n </div>\r\n\r\n {/* Setup Steps */}\r\n <div className=\"mb-6\">\r\n <h3 className=\"text-lg font-semibold mb-3\">{t('developer.securityTesting.sonarcloud.setup.title')}</h3>\r\n <div className=\"space-y-3\">\r\n {[1, 2, 3, 4, 5, 6].map((step) => (\r\n <div key={step} className=\"flex items-start gap-3 p-3 bg-[var(--bg-secondary)] rounded-lg\">\r\n <span className=\"w-6 h-6 flex items-center justify-center bg-blue-600 text-white text-sm font-bold rounded-full flex-shrink-0\">\r\n {step}\r\n </span>\r\n <div className=\"flex-1\">\r\n <p className=\"font-medium\">{t(`developer.securityTesting.sonarcloud.setup.step${step}.title`)}</p>\r\n <p className=\"text-sm text-[var(--text-secondary)]\">\r\n {t(`developer.securityTesting.sonarcloud.setup.step${step}.description`)}\r\n </p>\r\n </div>\r\n </div>\r\n ))}\r\n </div>\r\n </div>\r\n\r\n {/* Pipeline YAML Example */}\r\n <div className=\"mb-6\">\r\n <h3 className=\"text-lg font-semibold mb-3\">{t('developer.securityTesting.sonarcloud.pipeline.title')}</h3>\r\n <pre className=\"bg-[var(--bg-secondary)] p-4 rounded-lg text-sm overflow-x-auto\">\r\n{`# azure-pipelines.yml\r\n- task: SonarCloudPrepare@2\r\n inputs:\r\n SonarCloud: 'SonarCloud-Connection'\r\n organization: 'your-organization'\r\n scannerMode: 'MSBuild'\r\n projectKey: 'your-project-key'\r\n\r\n- task: DotNetCoreCLI@2\r\n inputs:\r\n command: 'build'\r\n projects: '**/*.sln'\r\n\r\n- task: SonarCloudAnalyze@2\r\n\r\n- task: SonarCloudPublish@2\r\n inputs:\r\n pollingTimeoutSec: '300'`}\r\n </pre>\r\n </div>\r\n\r\n {/* Results */}\r\n <div>\r\n <h3 className=\"text-lg font-semibold mb-3\">{t('developer.securityTesting.sonarcloud.results.title')}</h3>\r\n <div className=\"grid grid-cols-1 md:grid-cols-2 gap-3\">\r\n <div className=\"flex items-center gap-2 p-3 bg-[var(--bg-secondary)] rounded-lg\">\r\n <CheckCircle2 className=\"w-5 h-5 text-green-500\" />\r\n <span>{t('developer.securityTesting.sonarcloud.results.item1')}</span>\r\n </div>\r\n <div className=\"flex items-center gap-2 p-3 bg-[var(--bg-secondary)] rounded-lg\">\r\n <CheckCircle2 className=\"w-5 h-5 text-green-500\" />\r\n <span>{t('developer.securityTesting.sonarcloud.results.item2')}</span>\r\n </div>\r\n <div className=\"flex items-center gap-2 p-3 bg-[var(--bg-secondary)] rounded-lg\">\r\n <CheckCircle2 className=\"w-5 h-5 text-green-500\" />\r\n <span>{t('developer.securityTesting.sonarcloud.results.item3')}</span>\r\n </div>\r\n <div className=\"flex items-center gap-2 p-3 bg-[var(--bg-secondary)] rounded-lg\">\r\n <CheckCircle2 className=\"w-5 h-5 text-green-500\" />\r\n <span>{t('developer.securityTesting.sonarcloud.results.item4')}</span>\r\n </div>\r\n <div className=\"flex items-center gap-2 p-3 bg-[var(--bg-secondary)] rounded-lg\">\r\n <CheckCircle2 className=\"w-5 h-5 text-green-500\" />\r\n <span>{t('developer.securityTesting.sonarcloud.results.item5')}</span>\r\n </div>\r\n </div>\r\n </div>\r\n </section>\r\n\r\n {/* OWASP ZAP Section */}\r\n <section className=\"card p-6\">\r\n <div className=\"flex items-start gap-4 mb-6\">\r\n <div className=\"p-3 rounded-xl bg-orange-600/10\">\r\n <Bug className=\"w-8 h-8 text-orange-600\" />\r\n </div>\r\n <div>\r\n <h2 className=\"text-2xl font-bold text-orange-600 dark:text-orange-400\">\r\n {t('developer.securityTesting.owaspzap.title')}\r\n </h2>\r\n <p className=\"text-[var(--text-secondary)]\">\r\n {t('developer.securityTesting.owaspzap.subtitle')}\r\n </p>\r\n </div>\r\n </div>\r\n\r\n {/* Critical Warning */}\r\n <div className=\"mb-6 p-4 bg-red-500/10 border border-red-500/30 rounded-lg\">\r\n <div className=\"flex items-start gap-3\">\r\n <AlertTriangle className=\"w-6 h-6 text-red-500 flex-shrink-0\" />\r\n <div>\r\n <h4 className=\"font-bold text-red-600 dark:text-red-400\">\r\n {t('developer.securityTesting.owaspzap.warning.title')}\r\n </h4>\r\n <p className=\"text-sm text-[var(--text-secondary)]\">\r\n {t('developer.securityTesting.owaspzap.warning.text')}\r\n </p>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n {/* Description */}\r\n <div className=\"mb-6\">\r\n <h3 className=\"text-lg font-semibold mb-3\">{t('developer.securityTesting.owaspzap.description.title')}</h3>\r\n <p className=\"text-[var(--text-secondary)]\">\r\n {t('developer.securityTesting.owaspzap.description.text')}\r\n </p>\r\n </div>\r\n\r\n {/* Methodology */}\r\n <div className=\"mb-6\">\r\n <h3 className=\"text-lg font-semibold mb-3\">{t('developer.securityTesting.owaspzap.methodology.title')}</h3>\r\n <ul className=\"space-y-2\">\r\n <li className=\"flex items-start gap-2\">\r\n <Check className=\"w-5 h-5 text-green-500 mt-0.5 flex-shrink-0\" />\r\n <span>{t('developer.securityTesting.owaspzap.methodology.item1')}</span>\r\n </li>\r\n <li className=\"flex items-start gap-2\">\r\n <Check className=\"w-5 h-5 text-green-500 mt-0.5 flex-shrink-0\" />\r\n <span>{t('developer.securityTesting.owaspzap.methodology.item2')}</span>\r\n </li>\r\n <li className=\"flex items-start gap-2\">\r\n <Check className=\"w-5 h-5 text-green-500 mt-0.5 flex-shrink-0\" />\r\n <span>{t('developer.securityTesting.owaspzap.methodology.item3')}</span>\r\n </li>\r\n <li className=\"flex items-start gap-2\">\r\n <Check className=\"w-5 h-5 text-green-500 mt-0.5 flex-shrink-0\" />\r\n <span>{t('developer.securityTesting.owaspzap.methodology.item4')}</span>\r\n </li>\r\n <li className=\"flex items-start gap-2\">\r\n <Check className=\"w-5 h-5 text-green-500 mt-0.5 flex-shrink-0\" />\r\n <span>{t('developer.securityTesting.owaspzap.methodology.item5')}</span>\r\n </li>\r\n </ul>\r\n </div>\r\n\r\n {/* Manual Setup */}\r\n <div className=\"mb-6\">\r\n <h3 className=\"text-lg font-semibold mb-3\">{t('developer.securityTesting.owaspzap.manualSetup.title')}</h3>\r\n <div className=\"space-y-3\">\r\n {[1, 2, 3, 4, 5, 6, 7, 8, 9].map((step) => (\r\n <div key={step} className=\"flex items-start gap-3 p-3 bg-[var(--bg-secondary)] rounded-lg\">\r\n <span className=\"w-6 h-6 flex items-center justify-center bg-orange-600 text-white text-sm font-bold rounded-full flex-shrink-0\">\r\n {step}\r\n </span>\r\n <div className=\"flex-1\">\r\n <p className=\"font-medium\">{t(`developer.securityTesting.owaspzap.manualSetup.step${step}.title`)}</p>\r\n <p className=\"text-sm text-[var(--text-secondary)]\">\r\n {t(`developer.securityTesting.owaspzap.manualSetup.step${step}.description`)}\r\n </p>\r\n </div>\r\n </div>\r\n ))}\r\n </div>\r\n </div>\r\n\r\n {/* Critical Tests for AtlasHub */}\r\n <div className=\"mb-6\">\r\n <h3 className=\"text-lg font-semibold mb-3\">{t('developer.securityTesting.owaspzap.criticalTests.title')}</h3>\r\n <div className=\"grid grid-cols-1 md:grid-cols-2 gap-3\">\r\n <div className=\"p-4 bg-[var(--bg-secondary)] rounded-lg\">\r\n <div className=\"flex items-center gap-2 mb-2\">\r\n <Lock className=\"w-5 h-5 text-orange-500\" />\r\n <h4 className=\"font-semibold\">{t('developer.securityTesting.owaspzap.criticalTests.tenant.title')}</h4>\r\n </div>\r\n <p className=\"text-sm text-[var(--text-secondary)]\">\r\n {t('developer.securityTesting.owaspzap.criticalTests.tenant.description')}\r\n </p>\r\n </div>\r\n <div className=\"p-4 bg-[var(--bg-secondary)] rounded-lg\">\r\n <div className=\"flex items-center gap-2 mb-2\">\r\n <Search className=\"w-5 h-5 text-orange-500\" />\r\n <h4 className=\"font-semibold\">{t('developer.securityTesting.owaspzap.criticalTests.idor.title')}</h4>\r\n </div>\r\n <p className=\"text-sm text-[var(--text-secondary)]\">\r\n {t('developer.securityTesting.owaspzap.criticalTests.idor.description')}\r\n </p>\r\n </div>\r\n <div className=\"p-4 bg-[var(--bg-secondary)] rounded-lg\">\r\n <div className=\"flex items-center gap-2 mb-2\">\r\n <Server className=\"w-5 h-5 text-orange-500\" />\r\n <h4 className=\"font-semibold\">{t('developer.securityTesting.owaspzap.criticalTests.api.title')}</h4>\r\n </div>\r\n <p className=\"text-sm text-[var(--text-secondary)]\">\r\n {t('developer.securityTesting.owaspzap.criticalTests.api.description')}\r\n </p>\r\n </div>\r\n <div className=\"p-4 bg-[var(--bg-secondary)] rounded-lg\">\r\n <div className=\"flex items-center gap-2 mb-2\">\r\n <XCircle className=\"w-5 h-5 text-orange-500\" />\r\n <h4 className=\"font-semibold\">{t('developer.securityTesting.owaspzap.criticalTests.methods.title')}</h4>\r\n </div>\r\n <p className=\"text-sm text-[var(--text-secondary)]\">\r\n {t('developer.securityTesting.owaspzap.criticalTests.methods.description')}\r\n </p>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n {/* Automation */}\r\n <div className=\"p-4 bg-gradient-to-r from-[var(--info-bg)] to-transparent border border-[var(--info-border)] rounded-lg\">\r\n <h4 className=\"font-semibold text-[var(--info-text)] mb-2 flex items-center gap-2\">\r\n <Info className=\"w-5 h-5\" />\r\n {t('developer.securityTesting.owaspzap.automation.title')}\r\n </h4>\r\n <ul className=\"text-sm space-y-1 text-[var(--text-secondary)]\">\r\n <li>• {t('developer.securityTesting.owaspzap.automation.item1')}</li>\r\n <li>• {t('developer.securityTesting.owaspzap.automation.item2')}</li>\r\n <li>• {t('developer.securityTesting.owaspzap.automation.item3')}</li>\r\n <li>• {t('developer.securityTesting.owaspzap.automation.item4')}</li>\r\n </ul>\r\n </div>\r\n </section>\r\n\r\n {/* Best Practices */}\r\n <section className=\"card p-6\">\r\n <h2 className=\"text-xl font-semibold mb-6 flex items-center gap-2\">\r\n <Shield className=\"w-5 h-5\" />\r\n {t('developer.securityTesting.bestPractices.title')}\r\n </h2>\r\n\r\n {/* Layered Approach */}\r\n <div className=\"mb-6\">\r\n <h3 className=\"text-lg font-semibold mb-3\">{t('developer.securityTesting.bestPractices.layered.title')}</h3>\r\n <div className=\"space-y-3\">\r\n <div className=\"flex items-center gap-3 p-3 bg-gradient-to-r from-blue-500/10 to-transparent rounded-lg\">\r\n <div className=\"w-8 h-8 flex items-center justify-center bg-blue-600 text-white font-bold rounded-lg\">1</div>\r\n <div className=\"flex-1\">\r\n <span className=\"font-medium\">SonarCloud</span>\r\n <span className=\"text-[var(--text-secondary)]\"> — {t('developer.securityTesting.bestPractices.layered.layer1')}</span>\r\n </div>\r\n <span className=\"text-sm text-blue-600 font-semibold\">30-40%</span>\r\n </div>\r\n <div className=\"flex items-center gap-3 p-3 bg-gradient-to-r from-orange-500/10 to-transparent rounded-lg\">\r\n <div className=\"w-8 h-8 flex items-center justify-center bg-orange-600 text-white font-bold rounded-lg\">2</div>\r\n <div className=\"flex-1\">\r\n <span className=\"font-medium\">OWASP ZAP</span>\r\n <span className=\"text-[var(--text-secondary)]\"> — {t('developer.securityTesting.bestPractices.layered.layer2')}</span>\r\n </div>\r\n <span className=\"text-sm text-orange-600 font-semibold\">20-30%</span>\r\n </div>\r\n <div className=\"flex items-center gap-3 p-3 bg-gradient-to-r from-purple-500/10 to-transparent rounded-lg\">\r\n <div className=\"w-8 h-8 flex items-center justify-center bg-purple-600 text-white font-bold rounded-lg\">3</div>\r\n <div className=\"flex-1\">\r\n <span className=\"font-medium\">{t('developer.securityTesting.bestPractices.layered.pentest')}</span>\r\n <span className=\"text-[var(--text-secondary)]\"> — {t('developer.securityTesting.bestPractices.layered.layer3')}</span>\r\n </div>\r\n <span className=\"text-sm text-purple-600 font-semibold\">30-40%</span>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n {/* Frequency */}\r\n <div className=\"mb-6\">\r\n <h3 className=\"text-lg font-semibold mb-3 flex items-center gap-2\">\r\n <Clock className=\"w-5 h-5\" />\r\n {t('developer.securityTesting.bestPractices.frequency.title')}\r\n </h3>\r\n <div className=\"overflow-x-auto\">\r\n <table className=\"w-full text-sm\">\r\n <thead>\r\n <tr className=\"border-b border-[var(--border-color)]\">\r\n <th className=\"text-left p-3\">{t('developer.securityTesting.bestPractices.frequency.tool')}</th>\r\n <th className=\"text-left p-3\">{t('developer.securityTesting.bestPractices.frequency.frequency')}</th>\r\n <th className=\"text-left p-3\">{t('developer.securityTesting.bestPractices.frequency.trigger')}</th>\r\n </tr>\r\n </thead>\r\n <tbody>\r\n <tr className=\"border-b border-[var(--border-color)]\">\r\n <td className=\"p-3 font-medium\">SonarCloud</td>\r\n <td className=\"p-3\">{t('developer.securityTesting.bestPractices.frequency.sonar.freq')}</td>\r\n <td className=\"p-3 text-[var(--text-secondary)]\">{t('developer.securityTesting.bestPractices.frequency.sonar.trigger')}</td>\r\n </tr>\r\n <tr className=\"border-b border-[var(--border-color)]\">\r\n <td className=\"p-3 font-medium\">OWASP ZAP (Manual)</td>\r\n <td className=\"p-3\">{t('developer.securityTesting.bestPractices.frequency.zapManual.freq')}</td>\r\n <td className=\"p-3 text-[var(--text-secondary)]\">{t('developer.securityTesting.bestPractices.frequency.zapManual.trigger')}</td>\r\n </tr>\r\n <tr className=\"border-b border-[var(--border-color)]\">\r\n <td className=\"p-3 font-medium\">OWASP ZAP (Auto)</td>\r\n <td className=\"p-3\">{t('developer.securityTesting.bestPractices.frequency.zapAuto.freq')}</td>\r\n <td className=\"p-3 text-[var(--text-secondary)]\">{t('developer.securityTesting.bestPractices.frequency.zapAuto.trigger')}</td>\r\n </tr>\r\n <tr>\r\n <td className=\"p-3 font-medium\">Pentest Pro</td>\r\n <td className=\"p-3\">{t('developer.securityTesting.bestPractices.frequency.pentest.freq')}</td>\r\n <td className=\"p-3 text-[var(--text-secondary)]\">{t('developer.securityTesting.bestPractices.frequency.pentest.trigger')}</td>\r\n </tr>\r\n </tbody>\r\n </table>\r\n </div>\r\n </div>\r\n\r\n {/* Data Security Focus */}\r\n <div className=\"mb-6\">\r\n <h3 className=\"text-lg font-semibold mb-3 flex items-center gap-2\">\r\n <Layers className=\"w-5 h-5\" />\r\n {t('developer.securityTesting.bestPractices.dataFocus.title')}\r\n </h3>\r\n <div className=\"grid grid-cols-1 md:grid-cols-2 gap-3\">\r\n <div className=\"flex items-start gap-2 p-3 bg-[var(--bg-secondary)] rounded-lg\">\r\n <Check className=\"w-5 h-5 text-green-500 mt-0.5\" />\r\n <span>{t('developer.securityTesting.bestPractices.dataFocus.item1')}</span>\r\n </div>\r\n <div className=\"flex items-start gap-2 p-3 bg-[var(--bg-secondary)] rounded-lg\">\r\n <Check className=\"w-5 h-5 text-green-500 mt-0.5\" />\r\n <span>{t('developer.securityTesting.bestPractices.dataFocus.item2')}</span>\r\n </div>\r\n <div className=\"flex items-start gap-2 p-3 bg-[var(--bg-secondary)] rounded-lg\">\r\n <Check className=\"w-5 h-5 text-green-500 mt-0.5\" />\r\n <span>{t('developer.securityTesting.bestPractices.dataFocus.item3')}</span>\r\n </div>\r\n <div className=\"flex items-start gap-2 p-3 bg-[var(--bg-secondary)] rounded-lg\">\r\n <Check className=\"w-5 h-5 text-green-500 mt-0.5\" />\r\n <span>{t('developer.securityTesting.bestPractices.dataFocus.item4')}</span>\r\n </div>\r\n <div className=\"flex items-start gap-2 p-3 bg-[var(--bg-secondary)] rounded-lg md:col-span-2\">\r\n <Check className=\"w-5 h-5 text-green-500 mt-0.5\" />\r\n <span>{t('developer.securityTesting.bestPractices.dataFocus.item5')}</span>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n {/* Limitations Warning */}\r\n <div className=\"p-4 bg-yellow-500/10 border border-yellow-500/30 rounded-lg\">\r\n <div className=\"flex items-start gap-3\">\r\n <AlertTriangle className=\"w-6 h-6 text-yellow-600 flex-shrink-0\" />\r\n <div>\r\n <h4 className=\"font-bold text-yellow-600 dark:text-yellow-400\">\r\n {t('developer.securityTesting.bestPractices.limitations.title')}\r\n </h4>\r\n <ul className=\"text-sm text-[var(--text-secondary)] mt-2 space-y-1\">\r\n <li>• {t('developer.securityTesting.bestPractices.limitations.item1')}</li>\r\n <li>• {t('developer.securityTesting.bestPractices.limitations.item2')}</li>\r\n <li>• {t('developer.securityTesting.bestPractices.limitations.item3')}</li>\r\n </ul>\r\n </div>\r\n </div>\r\n </div>\r\n </section>\r\n\r\n {/* Navigation */}\r\n <div className=\"flex justify-between pt-6 border-t border-[var(--border-color)]\">\r\n <Link\r\n to=\"/system/docs/developer\"\r\n className=\"flex items-center gap-2 text-[var(--text-secondary)] hover:text-[var(--color-primary-600)]\"\r\n >\r\n <ArrowRight className=\"w-4 h-4 rotate-180\" />\r\n {t('developer.securityTesting.nav.back')}\r\n </Link>\r\n </div>\r\n </div>\r\n );\r\n}\r\n"],"names":["SecurityTestingPage","t","useTranslation","jsxs","jsx","Link","Shield","Info","FileCode","Activity","Search","Check","step","CheckCircle2","Bug","AlertTriangle","Lock","Server","XCircle","Clock","Layers","ArrowRight"],"mappings":"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"}