@atlashub/smartstack 3.11.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
@@ -1 +1 @@
1
- {"version":3,"file":"DocsIndexPage-BD6OOCak.js","sources":["../src/pages/system/docs/DocsIndexPage.tsx"],"sourcesContent":["import { Link } from 'react-router-dom';\r\nimport { useTranslation } from 'react-i18next';\r\nimport { Code, Users, ArrowRight, Book, Database, Download, Layers, Presentation, Play } from 'lucide-react';\r\n\r\nexport function DocsIndexPage() {\r\n const { t } = useTranslation('docs');\r\n\r\n const sections = [\r\n {\r\n title: t('index.sections.developer.title'),\r\n description: t('index.sections.developer.description'),\r\n icon: Code,\r\n href: '/system/docs/developer',\r\n color: 'from-blue-500 to-cyan-500',\r\n items: [\r\n { title: t('index.sections.developer.infrastructure.title'), description: t('index.sections.developer.infrastructure.description'), href: '/system/docs/developer/infrastructure' },\r\n { title: t('index.sections.developer.installation.title'), description: t('index.sections.developer.installation.description'), href: '/system/docs/developer/installation' },\r\n { title: t('index.sections.developer.database.title'), description: t('index.sections.developer.database.description'), href: '/system/docs/developer/database' },\r\n ],\r\n },\r\n {\r\n title: t('index.sections.user.title'),\r\n description: t('index.sections.user.description'),\r\n icon: Users,\r\n href: '/system/docs/user',\r\n color: 'from-emerald-500 to-teal-500',\r\n items: [\r\n { title: t('index.sections.user.architecture.title'), description: t('index.sections.user.architecture.description'), href: '/system/docs/user/architecture' },\r\n { title: t('index.sections.user.modules.title'), description: t('index.sections.user.modules.description'), href: '/system/docs/user/modules' },\r\n ],\r\n },\r\n ];\r\n\r\n return (\r\n <div className=\"space-y-8\">\r\n {/* Header */}\r\n <div>\r\n <h1 className=\"text-3xl font-bold mb-4 flex items-center gap-3\">\r\n <Book className=\"w-8 h-8 text-[var(--color-primary-600)]\" />\r\n {t('index.title')}\r\n </h1>\r\n <p className=\"text-lg text-[var(--text-secondary)]\">\r\n {t('index.subtitle')}\r\n </p>\r\n </div>\r\n\r\n {/* Presentation Banner */}\r\n <Link\r\n to=\"/system/docs/presentation\"\r\n className=\"block relative overflow-hidden rounded-2xl bg-gradient-to-r from-[var(--color-primary-600)] to-[var(--color-primary-800)] p-6 text-white hover:shadow-xl transition-all group\"\r\n >\r\n <div className=\"absolute inset-0 bg-[url('data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNjAiIGhlaWdodD0iNjAiIHZpZXdCb3g9IjAgMCA2MCA2MCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48ZyBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPjxnIGZpbGw9IiNmZmZmZmYiIGZpbGwtb3BhY2l0eT0iMC4wNSI+PHBhdGggZD0iTTM2IDM0djItSDI0di0yaDEyek0zNiAzMHYySDI0di0yaDEyeiIvPjwvZz48L2c+PC9zdmc+')] opacity-20\" />\r\n <div className=\"relative flex items-center justify-between\">\r\n <div className=\"flex items-center gap-4\">\r\n <div className=\"w-14 h-14 rounded-xl bg-white/10 flex items-center justify-center backdrop-blur\">\r\n <Presentation className=\"w-7 h-7\" />\r\n </div>\r\n <div>\r\n <h3 className=\"text-xl font-bold mb-1\">{t('presentation.title', { defaultValue: 'Presentation SmartStack' })}</h3>\r\n <p className=\"text-white/80 text-sm\">{t('presentation.slides.title.subtitle', { defaultValue: 'La plateforme qui transforme vos processus metier en applications' })}</p>\r\n </div>\r\n </div>\r\n <div className=\"flex items-center gap-2 px-4 py-2 rounded-lg bg-white/10 group-hover:bg-white/20 transition-colors\">\r\n <Play className=\"w-4 h-4\" />\r\n <span className=\"font-medium\">{t('index.viewPresentation', { defaultValue: 'Voir la presentation' })}</span>\r\n </div>\r\n </div>\r\n </Link>\r\n\r\n {/* Sections */}\r\n <div className=\"grid grid-cols-1 lg:grid-cols-2 gap-6\">\r\n {sections.map((section) => (\r\n <div\r\n key={section.href}\r\n className=\"card p-6 hover:shadow-lg transition-shadow\"\r\n >\r\n <div className=\"flex items-start gap-4 mb-4\">\r\n <div className={`w-12 h-12 rounded-xl bg-gradient-to-br ${section.color} flex items-center justify-center`}>\r\n <section.icon className=\"w-6 h-6 text-white\" />\r\n </div>\r\n <div>\r\n <h2 className=\"text-xl font-semibold\">{section.title}</h2>\r\n <p className=\"text-[var(--text-secondary)]\">{section.description}</p>\r\n </div>\r\n </div>\r\n\r\n <ul className=\"space-y-3\">\r\n {section.items.map((item) => (\r\n <li key={item.href}>\r\n <Link\r\n to={item.href}\r\n className=\"flex items-center justify-between p-3 rounded-lg bg-[var(--bg-secondary)] hover:bg-[var(--bg-hover)] transition-colors group\"\r\n >\r\n <div>\r\n <span className=\"font-medium\">{item.title}</span>\r\n <p className=\"text-sm text-[var(--text-secondary)]\">{item.description}</p>\r\n </div>\r\n <ArrowRight className=\"w-4 h-4 text-[var(--text-tertiary)] group-hover:text-[var(--color-primary-600)] transition-colors\" />\r\n </Link>\r\n </li>\r\n ))}\r\n </ul>\r\n </div>\r\n ))}\r\n </div>\r\n\r\n {/* Quick links */}\r\n <div className=\"card p-6 bg-gradient-to-r from-[var(--color-primary-600)]/10 to-[var(--accent-bg)]\">\r\n <h3 className=\"text-lg font-semibold mb-4\">{t('index.quickLinks')}</h3>\r\n <div className=\"grid grid-cols-2 md:grid-cols-4 gap-4\">\r\n <Link\r\n to=\"/system/docs/developer/installation\"\r\n className=\"flex flex-col items-center p-4 rounded-lg bg-[var(--bg-primary)] hover:shadow-md transition-shadow text-center\"\r\n >\r\n <Download className=\"w-8 h-8 text-[var(--color-primary-600)] mb-2\" />\r\n <span className=\"text-sm font-medium\">{t('index.sections.developer.installation.title')}</span>\r\n </Link>\r\n <Link\r\n to=\"/system/docs/user/architecture\"\r\n className=\"flex flex-col items-center p-4 rounded-lg bg-[var(--bg-primary)] hover:shadow-md transition-shadow text-center\"\r\n >\r\n <Layers className=\"w-8 h-8 text-[var(--color-primary-600)] mb-2\" />\r\n <span className=\"text-sm font-medium\">{t('index.sections.user.architecture.title')}</span>\r\n </Link>\r\n <Link\r\n to=\"/system/docs/developer/database\"\r\n className=\"flex flex-col items-center p-4 rounded-lg bg-[var(--bg-primary)] hover:shadow-md transition-shadow text-center\"\r\n >\r\n <Database className=\"w-8 h-8 text-[var(--color-primary-600)] mb-2\" />\r\n <span className=\"text-sm font-medium\">{t('index.sections.developer.database.title')}</span>\r\n </Link>\r\n </div>\r\n </div>\r\n </div>\r\n );\r\n}\r\n"],"names":["DocsIndexPage","useTranslation","sections","Code","Users","jsxs","jsx","Book","Link","Presentation","Play","section","item","ArrowRight","Download","Layers","Database"],"mappings":"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"}
1
+ {"version":3,"file":"DocsIndexPage-BD6OOCak.js","sources":["../src/pages/system/docs/DocsIndexPage.tsx"],"sourcesContent":["import type { ReactElement } from 'react';\nimport { Link } from 'react-router-dom';\r\nimport { useTranslation } from 'react-i18next';\r\nimport { Code, Users, ArrowRight, Book, Database, Download, Layers, Presentation, Play } from 'lucide-react';\r\n\r\nexport function DocsIndexPage(): ReactElement {\r\n const { t } = useTranslation('docs');\r\n\r\n const sections = [\r\n {\r\n title: t('index.sections.developer.title'),\r\n description: t('index.sections.developer.description'),\r\n icon: Code,\r\n href: '/system/docs/developer',\r\n color: 'from-blue-500 to-cyan-500',\r\n items: [\r\n { title: t('index.sections.developer.infrastructure.title'), description: t('index.sections.developer.infrastructure.description'), href: '/system/docs/developer/infrastructure' },\r\n { title: t('index.sections.developer.installation.title'), description: t('index.sections.developer.installation.description'), href: '/system/docs/developer/installation' },\r\n { title: t('index.sections.developer.database.title'), description: t('index.sections.developer.database.description'), href: '/system/docs/developer/database' },\r\n ],\r\n },\r\n {\r\n title: t('index.sections.user.title'),\r\n description: t('index.sections.user.description'),\r\n icon: Users,\r\n href: '/system/docs/user',\r\n color: 'from-emerald-500 to-teal-500',\r\n items: [\r\n { title: t('index.sections.user.architecture.title'), description: t('index.sections.user.architecture.description'), href: '/system/docs/user/architecture' },\r\n { title: t('index.sections.user.modules.title'), description: t('index.sections.user.modules.description'), href: '/system/docs/user/modules' },\r\n ],\r\n },\r\n ];\r\n\r\n return (\r\n <div className=\"space-y-8\">\r\n {/* Header */}\r\n <div>\r\n <h1 className=\"text-3xl font-bold mb-4 flex items-center gap-3\">\r\n <Book className=\"w-8 h-8 text-[var(--color-primary-600)]\" />\r\n {t('index.title')}\r\n </h1>\r\n <p className=\"text-lg text-[var(--text-secondary)]\">\r\n {t('index.subtitle')}\r\n </p>\r\n </div>\r\n\r\n {/* Presentation Banner */}\r\n <Link\r\n to=\"/system/docs/presentation\"\r\n className=\"block relative overflow-hidden rounded-2xl bg-gradient-to-r from-[var(--color-primary-600)] to-[var(--color-primary-800)] p-6 text-white hover:shadow-xl transition-all group\"\r\n >\r\n <div className=\"absolute inset-0 bg-[url('data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNjAiIGhlaWdodD0iNjAiIHZpZXdCb3g9IjAgMCA2MCA2MCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48ZyBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPjxnIGZpbGw9IiNmZmZmZmYiIGZpbGwtb3BhY2l0eT0iMC4wNSI+PHBhdGggZD0iTTM2IDM0djItSDI0di0yaDEyek0zNiAzMHYySDI0di0yaDEyeiIvPjwvZz48L2c+PC9zdmc+')] opacity-20\" />\r\n <div className=\"relative flex items-center justify-between\">\r\n <div className=\"flex items-center gap-4\">\r\n <div className=\"w-14 h-14 rounded-xl bg-white/10 flex items-center justify-center backdrop-blur\">\r\n <Presentation className=\"w-7 h-7\" />\r\n </div>\r\n <div>\r\n <h3 className=\"text-xl font-bold mb-1\">{t('presentation.title', { defaultValue: 'Presentation SmartStack' })}</h3>\r\n <p className=\"text-white/80 text-sm\">{t('presentation.slides.title.subtitle', { defaultValue: 'La plateforme qui transforme vos processus metier en applications' })}</p>\r\n </div>\r\n </div>\r\n <div className=\"flex items-center gap-2 px-4 py-2 rounded-lg bg-white/10 group-hover:bg-white/20 transition-colors\">\r\n <Play className=\"w-4 h-4\" />\r\n <span className=\"font-medium\">{t('index.viewPresentation', { defaultValue: 'Voir la presentation' })}</span>\r\n </div>\r\n </div>\r\n </Link>\r\n\r\n {/* Sections */}\r\n <div className=\"grid grid-cols-1 lg:grid-cols-2 gap-6\">\r\n {sections.map((section) => (\r\n <div\r\n key={section.href}\r\n className=\"card p-6 hover:shadow-lg transition-shadow\"\r\n >\r\n <div className=\"flex items-start gap-4 mb-4\">\r\n <div className={`w-12 h-12 rounded-xl bg-gradient-to-br ${section.color} flex items-center justify-center`}>\r\n <section.icon className=\"w-6 h-6 text-white\" />\r\n </div>\r\n <div>\r\n <h2 className=\"text-xl font-semibold\">{section.title}</h2>\r\n <p className=\"text-[var(--text-secondary)]\">{section.description}</p>\r\n </div>\r\n </div>\r\n\r\n <ul className=\"space-y-3\">\r\n {section.items.map((item) => (\r\n <li key={item.href}>\r\n <Link\r\n to={item.href}\r\n className=\"flex items-center justify-between p-3 rounded-lg bg-[var(--bg-secondary)] hover:bg-[var(--bg-hover)] transition-colors group\"\r\n >\r\n <div>\r\n <span className=\"font-medium\">{item.title}</span>\r\n <p className=\"text-sm text-[var(--text-secondary)]\">{item.description}</p>\r\n </div>\r\n <ArrowRight className=\"w-4 h-4 text-[var(--text-tertiary)] group-hover:text-[var(--color-primary-600)] transition-colors\" />\r\n </Link>\r\n </li>\r\n ))}\r\n </ul>\r\n </div>\r\n ))}\r\n </div>\r\n\r\n {/* Quick links */}\r\n <div className=\"card p-6 bg-gradient-to-r from-[var(--color-primary-600)]/10 to-[var(--accent-bg)]\">\r\n <h3 className=\"text-lg font-semibold mb-4\">{t('index.quickLinks')}</h3>\r\n <div className=\"grid grid-cols-2 md:grid-cols-4 gap-4\">\r\n <Link\r\n to=\"/system/docs/developer/installation\"\r\n className=\"flex flex-col items-center p-4 rounded-lg bg-[var(--bg-primary)] hover:shadow-md transition-shadow text-center\"\r\n >\r\n <Download className=\"w-8 h-8 text-[var(--color-primary-600)] mb-2\" />\r\n <span className=\"text-sm font-medium\">{t('index.sections.developer.installation.title')}</span>\r\n </Link>\r\n <Link\r\n to=\"/system/docs/user/architecture\"\r\n className=\"flex flex-col items-center p-4 rounded-lg bg-[var(--bg-primary)] hover:shadow-md transition-shadow text-center\"\r\n >\r\n <Layers className=\"w-8 h-8 text-[var(--color-primary-600)] mb-2\" />\r\n <span className=\"text-sm font-medium\">{t('index.sections.user.architecture.title')}</span>\r\n </Link>\r\n <Link\r\n to=\"/system/docs/developer/database\"\r\n className=\"flex flex-col items-center p-4 rounded-lg bg-[var(--bg-primary)] hover:shadow-md transition-shadow text-center\"\r\n >\r\n <Database className=\"w-8 h-8 text-[var(--color-primary-600)] mb-2\" />\r\n <span className=\"text-sm font-medium\">{t('index.sections.developer.database.title')}</span>\r\n </Link>\r\n </div>\r\n </div>\r\n </div>\r\n );\r\n}\r\n"],"names":["DocsIndexPage","useTranslation","sections","Code","Users","jsxs","jsx","Book","Link","Presentation","Play","section","item","ArrowRight","Download","Layers","Database"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"DocsIndexPage-BPfi0FQD.cjs","sources":["../src/pages/system/docs/DocsIndexPage.tsx"],"sourcesContent":["import { Link } from 'react-router-dom';\r\nimport { useTranslation } from 'react-i18next';\r\nimport { Code, Users, ArrowRight, Book, Database, Download, Layers, Presentation, Play } from 'lucide-react';\r\n\r\nexport function DocsIndexPage() {\r\n const { t } = useTranslation('docs');\r\n\r\n const sections = [\r\n {\r\n title: t('index.sections.developer.title'),\r\n description: t('index.sections.developer.description'),\r\n icon: Code,\r\n href: '/system/docs/developer',\r\n color: 'from-blue-500 to-cyan-500',\r\n items: [\r\n { title: t('index.sections.developer.infrastructure.title'), description: t('index.sections.developer.infrastructure.description'), href: '/system/docs/developer/infrastructure' },\r\n { title: t('index.sections.developer.installation.title'), description: t('index.sections.developer.installation.description'), href: '/system/docs/developer/installation' },\r\n { title: t('index.sections.developer.database.title'), description: t('index.sections.developer.database.description'), href: '/system/docs/developer/database' },\r\n ],\r\n },\r\n {\r\n title: t('index.sections.user.title'),\r\n description: t('index.sections.user.description'),\r\n icon: Users,\r\n href: '/system/docs/user',\r\n color: 'from-emerald-500 to-teal-500',\r\n items: [\r\n { title: t('index.sections.user.architecture.title'), description: t('index.sections.user.architecture.description'), href: '/system/docs/user/architecture' },\r\n { title: t('index.sections.user.modules.title'), description: t('index.sections.user.modules.description'), href: '/system/docs/user/modules' },\r\n ],\r\n },\r\n ];\r\n\r\n return (\r\n <div className=\"space-y-8\">\r\n {/* Header */}\r\n <div>\r\n <h1 className=\"text-3xl font-bold mb-4 flex items-center gap-3\">\r\n <Book className=\"w-8 h-8 text-[var(--color-primary-600)]\" />\r\n {t('index.title')}\r\n </h1>\r\n <p className=\"text-lg text-[var(--text-secondary)]\">\r\n {t('index.subtitle')}\r\n </p>\r\n </div>\r\n\r\n {/* Presentation Banner */}\r\n <Link\r\n to=\"/system/docs/presentation\"\r\n className=\"block relative overflow-hidden rounded-2xl bg-gradient-to-r from-[var(--color-primary-600)] to-[var(--color-primary-800)] p-6 text-white hover:shadow-xl transition-all group\"\r\n >\r\n <div className=\"absolute inset-0 bg-[url('data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNjAiIGhlaWdodD0iNjAiIHZpZXdCb3g9IjAgMCA2MCA2MCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48ZyBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPjxnIGZpbGw9IiNmZmZmZmYiIGZpbGwtb3BhY2l0eT0iMC4wNSI+PHBhdGggZD0iTTM2IDM0djItSDI0di0yaDEyek0zNiAzMHYySDI0di0yaDEyeiIvPjwvZz48L2c+PC9zdmc+')] opacity-20\" />\r\n <div className=\"relative flex items-center justify-between\">\r\n <div className=\"flex items-center gap-4\">\r\n <div className=\"w-14 h-14 rounded-xl bg-white/10 flex items-center justify-center backdrop-blur\">\r\n <Presentation className=\"w-7 h-7\" />\r\n </div>\r\n <div>\r\n <h3 className=\"text-xl font-bold mb-1\">{t('presentation.title', { defaultValue: 'Presentation SmartStack' })}</h3>\r\n <p className=\"text-white/80 text-sm\">{t('presentation.slides.title.subtitle', { defaultValue: 'La plateforme qui transforme vos processus metier en applications' })}</p>\r\n </div>\r\n </div>\r\n <div className=\"flex items-center gap-2 px-4 py-2 rounded-lg bg-white/10 group-hover:bg-white/20 transition-colors\">\r\n <Play className=\"w-4 h-4\" />\r\n <span className=\"font-medium\">{t('index.viewPresentation', { defaultValue: 'Voir la presentation' })}</span>\r\n </div>\r\n </div>\r\n </Link>\r\n\r\n {/* Sections */}\r\n <div className=\"grid grid-cols-1 lg:grid-cols-2 gap-6\">\r\n {sections.map((section) => (\r\n <div\r\n key={section.href}\r\n className=\"card p-6 hover:shadow-lg transition-shadow\"\r\n >\r\n <div className=\"flex items-start gap-4 mb-4\">\r\n <div className={`w-12 h-12 rounded-xl bg-gradient-to-br ${section.color} flex items-center justify-center`}>\r\n <section.icon className=\"w-6 h-6 text-white\" />\r\n </div>\r\n <div>\r\n <h2 className=\"text-xl font-semibold\">{section.title}</h2>\r\n <p className=\"text-[var(--text-secondary)]\">{section.description}</p>\r\n </div>\r\n </div>\r\n\r\n <ul className=\"space-y-3\">\r\n {section.items.map((item) => (\r\n <li key={item.href}>\r\n <Link\r\n to={item.href}\r\n className=\"flex items-center justify-between p-3 rounded-lg bg-[var(--bg-secondary)] hover:bg-[var(--bg-hover)] transition-colors group\"\r\n >\r\n <div>\r\n <span className=\"font-medium\">{item.title}</span>\r\n <p className=\"text-sm text-[var(--text-secondary)]\">{item.description}</p>\r\n </div>\r\n <ArrowRight className=\"w-4 h-4 text-[var(--text-tertiary)] group-hover:text-[var(--color-primary-600)] transition-colors\" />\r\n </Link>\r\n </li>\r\n ))}\r\n </ul>\r\n </div>\r\n ))}\r\n </div>\r\n\r\n {/* Quick links */}\r\n <div className=\"card p-6 bg-gradient-to-r from-[var(--color-primary-600)]/10 to-[var(--accent-bg)]\">\r\n <h3 className=\"text-lg font-semibold mb-4\">{t('index.quickLinks')}</h3>\r\n <div className=\"grid grid-cols-2 md:grid-cols-4 gap-4\">\r\n <Link\r\n to=\"/system/docs/developer/installation\"\r\n className=\"flex flex-col items-center p-4 rounded-lg bg-[var(--bg-primary)] hover:shadow-md transition-shadow text-center\"\r\n >\r\n <Download className=\"w-8 h-8 text-[var(--color-primary-600)] mb-2\" />\r\n <span className=\"text-sm font-medium\">{t('index.sections.developer.installation.title')}</span>\r\n </Link>\r\n <Link\r\n to=\"/system/docs/user/architecture\"\r\n className=\"flex flex-col items-center p-4 rounded-lg bg-[var(--bg-primary)] hover:shadow-md transition-shadow text-center\"\r\n >\r\n <Layers className=\"w-8 h-8 text-[var(--color-primary-600)] mb-2\" />\r\n <span className=\"text-sm font-medium\">{t('index.sections.user.architecture.title')}</span>\r\n </Link>\r\n <Link\r\n to=\"/system/docs/developer/database\"\r\n className=\"flex flex-col items-center p-4 rounded-lg bg-[var(--bg-primary)] hover:shadow-md transition-shadow text-center\"\r\n >\r\n <Database className=\"w-8 h-8 text-[var(--color-primary-600)] mb-2\" />\r\n <span className=\"text-sm font-medium\">{t('index.sections.developer.database.title')}</span>\r\n </Link>\r\n </div>\r\n </div>\r\n </div>\r\n );\r\n}\r\n"],"names":["DocsIndexPage","t","useTranslation","sections","Code","Users","jsxs","jsx","Book","Link","Presentation","Play","section","item","ArrowRight","Download","Layers","Database"],"mappings":"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"}
1
+ {"version":3,"file":"DocsIndexPage-BPfi0FQD.cjs","sources":["../src/pages/system/docs/DocsIndexPage.tsx"],"sourcesContent":["import type { ReactElement } from 'react';\nimport { Link } from 'react-router-dom';\r\nimport { useTranslation } from 'react-i18next';\r\nimport { Code, Users, ArrowRight, Book, Database, Download, Layers, Presentation, Play } from 'lucide-react';\r\n\r\nexport function DocsIndexPage(): ReactElement {\r\n const { t } = useTranslation('docs');\r\n\r\n const sections = [\r\n {\r\n title: t('index.sections.developer.title'),\r\n description: t('index.sections.developer.description'),\r\n icon: Code,\r\n href: '/system/docs/developer',\r\n color: 'from-blue-500 to-cyan-500',\r\n items: [\r\n { title: t('index.sections.developer.infrastructure.title'), description: t('index.sections.developer.infrastructure.description'), href: '/system/docs/developer/infrastructure' },\r\n { title: t('index.sections.developer.installation.title'), description: t('index.sections.developer.installation.description'), href: '/system/docs/developer/installation' },\r\n { title: t('index.sections.developer.database.title'), description: t('index.sections.developer.database.description'), href: '/system/docs/developer/database' },\r\n ],\r\n },\r\n {\r\n title: t('index.sections.user.title'),\r\n description: t('index.sections.user.description'),\r\n icon: Users,\r\n href: '/system/docs/user',\r\n color: 'from-emerald-500 to-teal-500',\r\n items: [\r\n { title: t('index.sections.user.architecture.title'), description: t('index.sections.user.architecture.description'), href: '/system/docs/user/architecture' },\r\n { title: t('index.sections.user.modules.title'), description: t('index.sections.user.modules.description'), href: '/system/docs/user/modules' },\r\n ],\r\n },\r\n ];\r\n\r\n return (\r\n <div className=\"space-y-8\">\r\n {/* Header */}\r\n <div>\r\n <h1 className=\"text-3xl font-bold mb-4 flex items-center gap-3\">\r\n <Book className=\"w-8 h-8 text-[var(--color-primary-600)]\" />\r\n {t('index.title')}\r\n </h1>\r\n <p className=\"text-lg text-[var(--text-secondary)]\">\r\n {t('index.subtitle')}\r\n </p>\r\n </div>\r\n\r\n {/* Presentation Banner */}\r\n <Link\r\n to=\"/system/docs/presentation\"\r\n className=\"block relative overflow-hidden rounded-2xl bg-gradient-to-r from-[var(--color-primary-600)] to-[var(--color-primary-800)] p-6 text-white hover:shadow-xl transition-all group\"\r\n >\r\n <div className=\"absolute inset-0 bg-[url('data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNjAiIGhlaWdodD0iNjAiIHZpZXdCb3g9IjAgMCA2MCA2MCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48ZyBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPjxnIGZpbGw9IiNmZmZmZmYiIGZpbGwtb3BhY2l0eT0iMC4wNSI+PHBhdGggZD0iTTM2IDM0djItSDI0di0yaDEyek0zNiAzMHYySDI0di0yaDEyeiIvPjwvZz48L2c+PC9zdmc+')] opacity-20\" />\r\n <div className=\"relative flex items-center justify-between\">\r\n <div className=\"flex items-center gap-4\">\r\n <div className=\"w-14 h-14 rounded-xl bg-white/10 flex items-center justify-center backdrop-blur\">\r\n <Presentation className=\"w-7 h-7\" />\r\n </div>\r\n <div>\r\n <h3 className=\"text-xl font-bold mb-1\">{t('presentation.title', { defaultValue: 'Presentation SmartStack' })}</h3>\r\n <p className=\"text-white/80 text-sm\">{t('presentation.slides.title.subtitle', { defaultValue: 'La plateforme qui transforme vos processus metier en applications' })}</p>\r\n </div>\r\n </div>\r\n <div className=\"flex items-center gap-2 px-4 py-2 rounded-lg bg-white/10 group-hover:bg-white/20 transition-colors\">\r\n <Play className=\"w-4 h-4\" />\r\n <span className=\"font-medium\">{t('index.viewPresentation', { defaultValue: 'Voir la presentation' })}</span>\r\n </div>\r\n </div>\r\n </Link>\r\n\r\n {/* Sections */}\r\n <div className=\"grid grid-cols-1 lg:grid-cols-2 gap-6\">\r\n {sections.map((section) => (\r\n <div\r\n key={section.href}\r\n className=\"card p-6 hover:shadow-lg transition-shadow\"\r\n >\r\n <div className=\"flex items-start gap-4 mb-4\">\r\n <div className={`w-12 h-12 rounded-xl bg-gradient-to-br ${section.color} flex items-center justify-center`}>\r\n <section.icon className=\"w-6 h-6 text-white\" />\r\n </div>\r\n <div>\r\n <h2 className=\"text-xl font-semibold\">{section.title}</h2>\r\n <p className=\"text-[var(--text-secondary)]\">{section.description}</p>\r\n </div>\r\n </div>\r\n\r\n <ul className=\"space-y-3\">\r\n {section.items.map((item) => (\r\n <li key={item.href}>\r\n <Link\r\n to={item.href}\r\n className=\"flex items-center justify-between p-3 rounded-lg bg-[var(--bg-secondary)] hover:bg-[var(--bg-hover)] transition-colors group\"\r\n >\r\n <div>\r\n <span className=\"font-medium\">{item.title}</span>\r\n <p className=\"text-sm text-[var(--text-secondary)]\">{item.description}</p>\r\n </div>\r\n <ArrowRight className=\"w-4 h-4 text-[var(--text-tertiary)] group-hover:text-[var(--color-primary-600)] transition-colors\" />\r\n </Link>\r\n </li>\r\n ))}\r\n </ul>\r\n </div>\r\n ))}\r\n </div>\r\n\r\n {/* Quick links */}\r\n <div className=\"card p-6 bg-gradient-to-r from-[var(--color-primary-600)]/10 to-[var(--accent-bg)]\">\r\n <h3 className=\"text-lg font-semibold mb-4\">{t('index.quickLinks')}</h3>\r\n <div className=\"grid grid-cols-2 md:grid-cols-4 gap-4\">\r\n <Link\r\n to=\"/system/docs/developer/installation\"\r\n className=\"flex flex-col items-center p-4 rounded-lg bg-[var(--bg-primary)] hover:shadow-md transition-shadow text-center\"\r\n >\r\n <Download className=\"w-8 h-8 text-[var(--color-primary-600)] mb-2\" />\r\n <span className=\"text-sm font-medium\">{t('index.sections.developer.installation.title')}</span>\r\n </Link>\r\n <Link\r\n to=\"/system/docs/user/architecture\"\r\n className=\"flex flex-col items-center p-4 rounded-lg bg-[var(--bg-primary)] hover:shadow-md transition-shadow text-center\"\r\n >\r\n <Layers className=\"w-8 h-8 text-[var(--color-primary-600)] mb-2\" />\r\n <span className=\"text-sm font-medium\">{t('index.sections.user.architecture.title')}</span>\r\n </Link>\r\n <Link\r\n to=\"/system/docs/developer/database\"\r\n className=\"flex flex-col items-center p-4 rounded-lg bg-[var(--bg-primary)] hover:shadow-md transition-shadow text-center\"\r\n >\r\n <Database className=\"w-8 h-8 text-[var(--color-primary-600)] mb-2\" />\r\n <span className=\"text-sm font-medium\">{t('index.sections.developer.database.title')}</span>\r\n </Link>\r\n </div>\r\n </div>\r\n </div>\r\n );\r\n}\r\n"],"names":["DocsIndexPage","t","useTranslation","sections","Code","Users","jsxs","jsx","Book","Link","Presentation","Play","section","item","ArrowRight","Download","Layers","Database"],"mappings":"wMAKO,SAASA,GAA8B,CAC5C,KAAM,CAAE,EAAAC,CAAA,EAAMC,EAAAA,eAAe,MAAM,EAE7BC,EAAW,CACf,CACE,MAAOF,EAAE,gCAAgC,EACzC,YAAaA,EAAE,sCAAsC,EACrD,KAAMG,EAAAA,KACN,KAAM,yBACN,MAAO,4BACP,MAAO,CACL,CAAE,MAAOH,EAAE,+CAA+C,EAAG,YAAaA,EAAE,qDAAqD,EAAG,KAAM,uCAAA,EAC1I,CAAE,MAAOA,EAAE,6CAA6C,EAAG,YAAaA,EAAE,mDAAmD,EAAG,KAAM,qCAAA,EACtI,CAAE,MAAOA,EAAE,yCAAyC,EAAG,YAAaA,EAAE,+CAA+C,EAAG,KAAM,iCAAA,CAAkC,CAClK,EAEF,CACE,MAAOA,EAAE,2BAA2B,EACpC,YAAaA,EAAE,iCAAiC,EAChD,KAAMI,EAAAA,MACN,KAAM,oBACN,MAAO,+BACP,MAAO,CACL,CAAE,MAAOJ,EAAE,wCAAwC,EAAG,YAAaA,EAAE,8CAA8C,EAAG,KAAM,gCAAA,EAC5H,CAAE,MAAOA,EAAE,mCAAmC,EAAG,YAAaA,EAAE,yCAAyC,EAAG,KAAM,2BAAA,CAA4B,CAChJ,CACF,EAGF,OACEK,EAAAA,KAAC,MAAA,CAAI,UAAU,YAEb,SAAA,CAAAA,OAAC,MAAA,CACC,SAAA,CAAAA,EAAAA,KAAC,KAAA,CAAG,UAAU,kDACZ,SAAA,CAAAC,EAAAA,IAACC,EAAAA,KAAA,CAAK,UAAU,yCAAA,CAA0C,EACzDP,EAAE,aAAa,CAAA,EAClB,QACC,IAAA,CAAE,UAAU,uCACV,SAAAA,EAAE,gBAAgB,CAAA,CACrB,CAAA,EACF,EAGAK,EAAAA,KAACG,EAAAA,KAAA,CACC,GAAG,4BACH,UAAU,gLAEV,SAAA,CAAAF,EAAAA,IAAC,MAAA,CAAI,UAAU,wWAAA,CAAyW,EACxXD,EAAAA,KAAC,MAAA,CAAI,UAAU,6CACb,SAAA,CAAAA,EAAAA,KAAC,MAAA,CAAI,UAAU,0BACb,SAAA,CAAAC,EAAAA,IAAC,OAAI,UAAU,kFACb,eAACG,EAAAA,aAAA,CAAa,UAAU,UAAU,CAAA,CACpC,SACC,MAAA,CACC,SAAA,CAAAH,EAAAA,IAAC,KAAA,CAAG,UAAU,yBAA0B,SAAAN,EAAE,qBAAsB,CAAE,aAAc,yBAAA,CAA2B,CAAA,CAAE,EAC7GM,EAAAA,IAAC,IAAA,CAAE,UAAU,wBAAyB,SAAAN,EAAE,qCAAsC,CAAE,aAAc,mEAAA,CAAqE,CAAA,CAAE,CAAA,CAAA,CACvK,CAAA,EACF,EACAK,EAAAA,KAAC,MAAA,CAAI,UAAU,qGACb,SAAA,CAAAC,EAAAA,IAACI,EAAAA,KAAA,CAAK,UAAU,SAAA,CAAU,EAC1BJ,EAAAA,IAAC,OAAA,CAAK,UAAU,cAAe,SAAAN,EAAE,yBAA0B,CAAE,aAAc,sBAAA,CAAwB,CAAA,CAAE,CAAA,CAAA,CACvG,CAAA,CAAA,CACF,CAAA,CAAA,CAAA,QAID,MAAA,CAAI,UAAU,wCACZ,SAAAE,EAAS,IAAKS,GACbN,EAAAA,KAAC,MAAA,CAEC,UAAU,6CAEV,SAAA,CAAAA,EAAAA,KAAC,MAAA,CAAI,UAAU,8BACb,SAAA,CAAAC,EAAAA,IAAC,MAAA,CAAI,UAAW,0CAA0CK,EAAQ,KAAK,oCACrE,SAAAL,EAAAA,IAACK,EAAQ,KAAR,CAAa,UAAU,oBAAA,CAAqB,EAC/C,SACC,MAAA,CACC,SAAA,CAAAL,EAAAA,IAAC,KAAA,CAAG,UAAU,wBAAyB,SAAAK,EAAQ,MAAM,EACrDL,EAAAA,IAAC,IAAA,CAAE,UAAU,+BAAgC,WAAQ,WAAA,CAAY,CAAA,CAAA,CACnE,CAAA,EACF,EAEAA,EAAAA,IAAC,KAAA,CAAG,UAAU,YACX,SAAAK,EAAQ,MAAM,IAAKC,GAClBN,EAAAA,IAAC,KAAA,CACC,SAAAD,EAAAA,KAACG,EAAAA,KAAA,CACC,GAAII,EAAK,KACT,UAAU,+HAEV,SAAA,CAAAP,OAAC,MAAA,CACC,SAAA,CAAAC,EAAAA,IAAC,OAAA,CAAK,UAAU,cAAe,SAAAM,EAAK,MAAM,EAC1CN,EAAAA,IAAC,IAAA,CAAE,UAAU,uCAAwC,WAAK,WAAA,CAAY,CAAA,EACxE,EACAA,EAAAA,IAACO,EAAAA,WAAA,CAAW,UAAU,mGAAA,CAAoG,CAAA,CAAA,CAAA,GATrHD,EAAK,IAWd,CACD,CAAA,CACH,CAAA,CAAA,EA5BKD,EAAQ,IAAA,CA8BhB,EACH,EAGAN,EAAAA,KAAC,MAAA,CAAI,UAAU,qFACb,SAAA,CAAAC,MAAC,KAAA,CAAG,UAAU,6BAA8B,SAAAN,EAAE,kBAAkB,EAAE,EAClEK,EAAAA,KAAC,MAAA,CAAI,UAAU,wCACb,SAAA,CAAAA,EAAAA,KAACG,EAAAA,KAAA,CACC,GAAG,sCACH,UAAU,iHAEV,SAAA,CAAAF,EAAAA,IAACQ,EAAAA,SAAA,CAAS,UAAU,8CAAA,CAA+C,QAClE,OAAA,CAAK,UAAU,sBAAuB,SAAAd,EAAE,6CAA6C,CAAA,CAAE,CAAA,CAAA,CAAA,EAE1FK,EAAAA,KAACG,EAAAA,KAAA,CACC,GAAG,iCACH,UAAU,iHAEV,SAAA,CAAAF,EAAAA,IAACS,EAAAA,OAAA,CAAO,UAAU,8CAAA,CAA+C,QAChE,OAAA,CAAK,UAAU,sBAAuB,SAAAf,EAAE,wCAAwC,CAAA,CAAE,CAAA,CAAA,CAAA,EAErFK,EAAAA,KAACG,EAAAA,KAAA,CACC,GAAG,kCACH,UAAU,iHAEV,SAAA,CAAAF,EAAAA,IAACU,EAAAA,SAAA,CAAS,UAAU,8CAAA,CAA+C,QAClE,OAAA,CAAK,UAAU,sBAAuB,SAAAhB,EAAE,yCAAyC,CAAA,CAAE,CAAA,CAAA,CAAA,CACtF,CAAA,CACF,CAAA,CAAA,CACF,CAAA,EACF,CAEJ"}
@@ -54,7 +54,7 @@ function m({ context: a, contextKey: n }) {
54
54
  return l ? /* @__PURE__ */ t("li", { className: "text-sm text-[var(--text-secondary)] flex items-start gap-2", children: [
55
55
  /* @__PURE__ */ e("span", { className: "text-[var(--color-primary-600)]", children: "-" }),
56
56
  l
57
- ] }, c) : null;
57
+ ] }, `entity-${c}`) : null;
58
58
  }) })
59
59
  ] })
60
60
  ] });
@@ -247,4 +247,4 @@ dotnet ef migrations list --context ExtensionsDbContext` })
247
247
  export {
248
248
  P as DualDbContextPage
249
249
  };
250
- //# sourceMappingURL=DualDbContextPage-BujD_coN.js.map
250
+ //# sourceMappingURL=DualDbContextPage-CVBjCvGp.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DualDbContextPage-CVBjCvGp.js","sources":["../src/pages/system/docs/developer/DualDbContextPage.tsx"],"sourcesContent":["import type { ReactElement } from 'react';\nimport { Link } from 'react-router-dom';\r\nimport { useTranslation } from 'react-i18next';\r\nimport { Database, Layers, Package, ArrowRight, Code2, AlertTriangle, CheckCircle2 } from 'lucide-react';\r\n\r\ninterface DbContextInfo {\r\n name: string;\r\n schema: string;\r\n historyTable: string;\r\n description: string;\r\n entities: string[];\r\n color: string;\r\n}\r\n\r\nconst dbContexts: DbContextInfo[] = [\r\n {\r\n name: 'CoreDbContext',\r\n schema: 'core',\r\n historyTable: 'core.__EFMigrationsHistory',\r\n description: 'Manages all SmartStack platform entities. Distributed via NuGet package.',\r\n entities: [\r\n 'User, Role, Permission, UserRole',\r\n 'NavigationApplication, NavigationModule',\r\n 'AiProvider, AiModel, Prompt, OutputSchema',\r\n 'EntraConfiguration, EntraGroup, EntraSyncState',\r\n 'Ticket, TicketComment, Notification',\r\n 'Setting, License, Workflow',\r\n ],\r\n color: 'from-blue-500 to-cyan-500',\r\n },\r\n {\r\n name: 'ExtensionsDbContext',\r\n schema: 'extensions',\r\n historyTable: 'extensions.__EFMigrationsHistory',\r\n description: 'Manages client-specific entities. Created by CLI in client projects.',\r\n entities: [\r\n 'Your custom entities (Order, Product, Invoice, etc.)',\r\n 'Client-specific business logic entities',\r\n 'Extension tables that reference Core entities via GUID',\r\n ],\r\n color: 'from-purple-500 to-pink-500',\r\n },\r\n];\r\n\r\nfunction DbContextCard({ context, contextKey }: { context: DbContextInfo; contextKey: string }) {\r\n const { t } = useTranslation('docs');\r\n\r\n return (\r\n <div className=\"card p-6\">\r\n <div className={`w-12 h-12 rounded-lg bg-gradient-to-r ${context.color} flex items-center justify-center mb-4`}>\r\n <Database className=\"w-6 h-6 text-white\" />\r\n </div>\r\n <h3 className=\"text-xl font-bold mb-2\">{t(`dualDbContextPage.contextCards.${contextKey}.name`)}</h3>\r\n <p className=\"text-[var(--text-secondary)] mb-4\">{t(`dualDbContextPage.contextCards.${contextKey}.description`)}</p>\r\n\r\n <div className=\"space-y-3\">\r\n <div className=\"flex items-center gap-2\">\r\n <span className=\"text-sm text-[var(--text-tertiary)]\">{t(`dualDbContextPage.contextCards.${contextKey}.schema`)}</span>\r\n <code className=\"px-2 py-0.5 bg-[var(--bg-secondary)] rounded text-sm font-mono\">{t(`dualDbContextPage.contextCards.${contextKey}.schemaValue`)}</code>\r\n </div>\r\n <div className=\"flex items-center gap-2\">\r\n <span className=\"text-sm text-[var(--text-tertiary)]\">{t(`dualDbContextPage.contextCards.${contextKey}.history`)}</span>\r\n <code className=\"px-2 py-0.5 bg-[var(--bg-secondary)] rounded text-sm font-mono\">{t(`dualDbContextPage.contextCards.${contextKey}.historyTable`)}</code>\r\n </div>\r\n </div>\r\n\r\n <div className=\"mt-4 pt-4 border-t border-[var(--border-color)]\">\r\n <span className=\"text-sm font-medium\">{t(`dualDbContextPage.contextCards.${contextKey}.entities`)}</span>\r\n <ul className=\"mt-2 space-y-1\">\r\n {[1, 2, 3].map((idx) => {\r\n const entityKey = `entity${idx}`;\r\n const entityText = t(`dualDbContextPage.contextCards.${contextKey}.${entityKey}`, { defaultValue: '' });\r\n return entityText ? (\r\n <li key={`entity-${idx}`} className=\"text-sm text-[var(--text-secondary)] flex items-start gap-2\">\r\n <span className=\"text-[var(--color-primary-600)]\">-</span>\r\n {entityText}\r\n </li>\r\n ) : null;\r\n })}\r\n </ul>\r\n </div>\r\n </div>\r\n );\r\n}\r\n\r\nfunction CodeBlock({ code, language = 'csharp' }: { code: string; language?: string }) {\r\n return (\r\n <pre className=\"bg-[var(--bg-tertiary)] rounded-lg p-4 overflow-x-auto\">\r\n <code className={`language-${language} text-sm`}>{code}</code>\r\n </pre>\r\n );\r\n}\r\n\r\nexport function DualDbContextPage(): 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('dualDbContextPage.breadcrumb.documentation')}</Link>\r\n <span>/</span>\r\n <Link to=\"/system/docs/developer\" className=\"hover:text-[var(--color-primary-600)]\">{t('dualDbContextPage.breadcrumb.developer')}</Link>\r\n <span>/</span>\r\n <span>{t('dualDbContextPage.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 <Layers className=\"w-8 h-8 text-[var(--color-primary-600)]\" />\r\n {t('dualDbContextPage.header.title')}\r\n </h1>\r\n <p className=\"text-lg text-[var(--text-secondary)]\">\r\n {t('dualDbContextPage.header.subtitle')}\r\n </p>\r\n </div>\r\n\r\n {/* Why Section */}\r\n <section className=\"card p-6\">\r\n <h2 className=\"text-xl font-bold mb-4 flex items-center gap-2\">\r\n <AlertTriangle className=\"w-5 h-5 text-[var(--warning-text)]\" />\r\n {t('dualDbContextPage.whySection.title')}\r\n </h2>\r\n <div className=\"space-y-4 text-[var(--text-secondary)]\">\r\n <p>\r\n {t('dualDbContextPage.whySection.description')}\r\n </p>\r\n <ul className=\"list-disc list-inside space-y-2 ml-4\">\r\n <li>\r\n <strong>{t('dualDbContextPage.whySection.problem1')}</strong> - {t('dualDbContextPage.whySection.problem1Desc')}\r\n </li>\r\n <li>\r\n <strong>{t('dualDbContextPage.whySection.problem2')}</strong> - {t('dualDbContextPage.whySection.problem2Desc')}\r\n </li>\r\n <li>\r\n <strong>{t('dualDbContextPage.whySection.problem3')}</strong> - {t('dualDbContextPage.whySection.problem3Desc')}\r\n </li>\r\n </ul>\r\n </div>\r\n </section>\r\n\r\n {/* Solution Section */}\r\n <section className=\"card p-6\">\r\n <h2 className=\"text-xl font-bold mb-4 flex items-center gap-2\">\r\n <CheckCircle2 className=\"w-5 h-5 text-[var(--success-text)]\" />\r\n {t('dualDbContextPage.solutionSection.title')}\r\n </h2>\r\n <div className=\"grid md:grid-cols-2 gap-6\">\r\n <DbContextCard context={dbContexts[0]} contextKey=\"coreDbContext\" />\r\n <DbContextCard context={dbContexts[1]} contextKey=\"extensionsDbContext\" />\r\n </div>\r\n </section>\r\n\r\n {/* Database Schema Diagram */}\r\n <section className=\"card p-6\">\r\n <h2 className=\"text-xl font-bold mb-4 flex items-center gap-2\">\r\n <Database className=\"w-5 h-5\" />\r\n {t('dualDbContextPage.databaseStructure.title')}\r\n </h2>\r\n <div className=\"bg-[var(--bg-secondary)] rounded-lg p-6\">\r\n <pre className=\"text-sm font-mono whitespace-pre\">\r\n{`SmartStack Database (single SQL Server database)\r\n├── core schema\r\n│ ├── __EFMigrationsHistory (Core migrations only)\r\n│ ├── auth_Users\r\n│ ├── auth_Roles\r\n│ ├── auth_Permissions\r\n│ ├── nav_Applications\r\n│ ├── nav_Modules\r\n│ ├── ai_Providers\r\n│ ├── ai_Models\r\n│ └── ... (all SmartStack tables)\r\n│\r\n└── extensions schema\r\n ├── __EFMigrationsHistory (Extensions migrations only)\r\n ├── biz_Orders (example client table)\r\n ├── biz_Products (example client table)\r\n └── ... (all client tables)`}\r\n </pre>\r\n </div>\r\n </section>\r\n\r\n {/* Configuration Section */}\r\n <section className=\"card p-6\">\r\n <h2 className=\"text-xl font-bold mb-4 flex items-center gap-2\">\r\n <Code2 className=\"w-5 h-5\" />\r\n {t('dualDbContextPage.efCoreConfiguration.title')}\r\n </h2>\r\n\r\n <h3 className=\"font-semibold mt-4 mb-2\">{t('dualDbContextPage.efCoreConfiguration.coreDbContextTitle')}</h3>\r\n <CodeBlock code={`// Dans DependencyInjection.cs (SmartStack.Infrastructure)\r\nservices.AddDbContext<CoreDbContext>(options =>\r\n{\r\n options.UseSqlServer(connectionString, b =>\r\n {\r\n b.MigrationsAssembly(typeof(CoreDbContext).Assembly.FullName);\r\n b.MigrationsHistoryTable(\"__EFMigrationsHistory\", \"core\"); // <-- Schema core\r\n });\r\n});`} />\r\n\r\n <h3 className=\"font-semibold mt-6 mb-2\">{t('dualDbContextPage.efCoreConfiguration.extensionsDbContextTitle')}</h3>\r\n <CodeBlock code={`// Dans DependencyInjection.cs (Client.Infrastructure)\r\nservices.AddDbContext<ExtensionsDbContext>(options =>\r\n{\r\n options.UseSqlServer(connectionString, b =>\r\n {\r\n b.MigrationsAssembly(typeof(ExtensionsDbContext).Assembly.FullName);\r\n b.MigrationsHistoryTable(\"__EFMigrationsHistory\", \"extensions\"); // <-- Schema extensions\r\n });\r\n});`} />\r\n </section>\r\n\r\n {/* Migration Order Section */}\r\n <section className=\"card p-6\">\r\n <h2 className=\"text-xl font-bold mb-4 flex items-center gap-2\">\r\n <ArrowRight className=\"w-5 h-5\" />\r\n {t('dualDbContextPage.migrationOrder.title')}\r\n </h2>\r\n <div className=\"bg-[var(--info-bg)] border border-[var(--info-border)] rounded-lg p-4 mb-4\">\r\n <p className=\"text-[var(--info-text)]\">\r\n <strong>Important:</strong> {t('dualDbContextPage.migrationOrder.important')}\r\n </p>\r\n </div>\r\n <CodeBlock code={`// Dans Program.cs\r\nif (app.Environment.IsDevelopment())\r\n{\r\n using var scope = app.Services.CreateScope();\r\n\r\n // 1. D'abord Core (SmartStack platform)\r\n var coreDb = scope.ServiceProvider.GetRequiredService<CoreDbContext>();\r\n await coreDb.Database.MigrateAsync();\r\n\r\n // 2. Ensuite Extensions (Client)\r\n var extDb = scope.ServiceProvider.GetRequiredService<ExtensionsDbContext>();\r\n await extDb.Database.MigrateAsync();\r\n}`} />\r\n </section>\r\n\r\n {/* CLI Commands Section */}\r\n <section className=\"card p-6\">\r\n <h2 className=\"text-xl font-bold mb-4 flex items-center gap-2\">\r\n <Package className=\"w-5 h-5\" />\r\n {t('dualDbContextPage.efCoreCommands.title')}\r\n </h2>\r\n <div className=\"space-y-4\">\r\n <div>\r\n <h3 className=\"font-semibold mb-2\">{t('dualDbContextPage.efCoreCommands.coreMigrationsTitle')}</h3>\r\n <CodeBlock language=\"bash\" code={`# Creer une migration Core\r\ndotnet ef migrations add core_v1.9.0_001_AddNewFeature --context CoreDbContext\r\n\r\n# Appliquer\r\ndotnet ef database update --context CoreDbContext\r\n\r\n# Lister\r\ndotnet ef migrations list --context CoreDbContext`} />\r\n </div>\r\n\r\n <div>\r\n <h3 className=\"font-semibold mb-2\">{t('dualDbContextPage.efCoreCommands.extensionsMigrationsTitle')}</h3>\r\n <CodeBlock language=\"bash\" code={`# Creer une migration Extensions\r\ndotnet ef migrations add ext_v1.0.0_001_CreateOrders --context ExtensionsDbContext\r\n\r\n# Appliquer\r\ndotnet ef database update --context ExtensionsDbContext\r\n\r\n# Lister\r\ndotnet ef migrations list --context ExtensionsDbContext`} />\r\n </div>\r\n </div>\r\n </section>\r\n\r\n {/* Navigation */}\r\n <div className=\"flex justify-between pt-4 border-t border-[var(--border-color)]\">\r\n <Link\r\n to=\"/system/docs/developer/database\"\r\n className=\"flex items-center gap-2 text-[var(--color-primary-600)] hover:underline\"\r\n >\r\n <ArrowRight className=\"w-4 h-4 rotate-180\" />\r\n {t('dualDbContextPage.navigation.previous')}\r\n </Link>\r\n <Link\r\n to=\"/system/docs/developer/cross-schema-fk\"\r\n className=\"flex items-center gap-2 text-[var(--color-primary-600)] hover:underline\"\r\n >\r\n {t('dualDbContextPage.navigation.next')}\r\n <ArrowRight className=\"w-4 h-4\" />\r\n </Link>\r\n </div>\r\n </div>\r\n );\r\n}\r\n"],"names":["dbContexts","DbContextCard","context","contextKey","t","useTranslation","jsxs","jsx","Database","idx","entityKey","entityText","CodeBlock","code","language","DualDbContextPage","Link","Layers","AlertTriangle","CheckCircle2","Code2","ArrowRight","Package"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),o=require("react-router-dom"),x=require("react-i18next"),a=require("lucide-react"),l=[{name:"CoreDbContext",schema:"core",historyTable:"core.__EFMigrationsHistory",description:"Manages all SmartStack platform entities. Distributed via NuGet package.",entities:["User, Role, Permission, UserRole","NavigationApplication, NavigationModule","AiProvider, AiModel, Prompt, OutputSchema","EntraConfiguration, EntraGroup, EntraSyncState","Ticket, TicketComment, Notification","Setting, License, Workflow"],color:"from-blue-500 to-cyan-500"},{name:"ExtensionsDbContext",schema:"extensions",historyTable:"extensions.__EFMigrationsHistory",description:"Manages client-specific entities. Created by CLI in client projects.",entities:["Your custom entities (Order, Product, Invoice, etc.)","Client-specific business logic entities","Extension tables that reference Core entities via GUID"],color:"from-purple-500 to-pink-500"}];function d({context:t,contextKey:s}){const{t:n}=x.useTranslation("docs");return e.jsxs("div",{className:"card p-6",children:[e.jsx("div",{className:`w-12 h-12 rounded-lg bg-gradient-to-r ${t.color} flex items-center justify-center mb-4`,children:e.jsx(a.Database,{className:"w-6 h-6 text-white"})}),e.jsx("h3",{className:"text-xl font-bold mb-2",children:n(`dualDbContextPage.contextCards.${s}.name`)}),e.jsx("p",{className:"text-[var(--text-secondary)] mb-4",children:n(`dualDbContextPage.contextCards.${s}.description`)}),e.jsxs("div",{className:"space-y-3",children:[e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx("span",{className:"text-sm text-[var(--text-tertiary)]",children:n(`dualDbContextPage.contextCards.${s}.schema`)}),e.jsx("code",{className:"px-2 py-0.5 bg-[var(--bg-secondary)] rounded text-sm font-mono",children:n(`dualDbContextPage.contextCards.${s}.schemaValue`)})]}),e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx("span",{className:"text-sm text-[var(--text-tertiary)]",children:n(`dualDbContextPage.contextCards.${s}.history`)}),e.jsx("code",{className:"px-2 py-0.5 bg-[var(--bg-secondary)] rounded text-sm font-mono",children:n(`dualDbContextPage.contextCards.${s}.historyTable`)})]})]}),e.jsxs("div",{className:"mt-4 pt-4 border-t border-[var(--border-color)]",children:[e.jsx("span",{className:"text-sm font-medium",children:n(`dualDbContextPage.contextCards.${s}.entities`)}),e.jsx("ul",{className:"mt-2 space-y-1",children:[1,2,3].map(i=>{const m=`entity${i}`,c=n(`dualDbContextPage.contextCards.${s}.${m}`,{defaultValue:""});return c?e.jsxs("li",{className:"text-sm text-[var(--text-secondary)] flex items-start gap-2",children:[e.jsx("span",{className:"text-[var(--color-primary-600)]",children:"-"}),c]},i):null})})]})]})}function r({code:t,language:s="csharp"}){return e.jsx("pre",{className:"bg-[var(--bg-tertiary)] rounded-lg p-4 overflow-x-auto",children:e.jsx("code",{className:`language-${s} text-sm`,children:t})})}function b(){const{t}=x.useTranslation("docs");return e.jsxs("div",{className:"space-y-8",children:[e.jsxs("div",{className:"flex items-center gap-2 text-sm text-[var(--text-secondary)]",children:[e.jsx(o.Link,{to:"/system/docs",className:"hover:text-[var(--color-primary-600)]",children:t("dualDbContextPage.breadcrumb.documentation")}),e.jsx("span",{children:"/"}),e.jsx(o.Link,{to:"/system/docs/developer",className:"hover:text-[var(--color-primary-600)]",children:t("dualDbContextPage.breadcrumb.developer")}),e.jsx("span",{children:"/"}),e.jsx("span",{children:t("dualDbContextPage.breadcrumb.title")})]}),e.jsxs("div",{children:[e.jsxs("h1",{className:"text-3xl font-bold mb-4 flex items-center gap-3",children:[e.jsx(a.Layers,{className:"w-8 h-8 text-[var(--color-primary-600)]"}),t("dualDbContextPage.header.title")]}),e.jsx("p",{className:"text-lg text-[var(--text-secondary)]",children:t("dualDbContextPage.header.subtitle")})]}),e.jsxs("section",{className:"card p-6",children:[e.jsxs("h2",{className:"text-xl font-bold mb-4 flex items-center gap-2",children:[e.jsx(a.AlertTriangle,{className:"w-5 h-5 text-[var(--warning-text)]"}),t("dualDbContextPage.whySection.title")]}),e.jsxs("div",{className:"space-y-4 text-[var(--text-secondary)]",children:[e.jsx("p",{children:t("dualDbContextPage.whySection.description")}),e.jsxs("ul",{className:"list-disc list-inside space-y-2 ml-4",children:[e.jsxs("li",{children:[e.jsx("strong",{children:t("dualDbContextPage.whySection.problem1")})," - ",t("dualDbContextPage.whySection.problem1Desc")]}),e.jsxs("li",{children:[e.jsx("strong",{children:t("dualDbContextPage.whySection.problem2")})," - ",t("dualDbContextPage.whySection.problem2Desc")]}),e.jsxs("li",{children:[e.jsx("strong",{children:t("dualDbContextPage.whySection.problem3")})," - ",t("dualDbContextPage.whySection.problem3Desc")]})]})]})]}),e.jsxs("section",{className:"card p-6",children:[e.jsxs("h2",{className:"text-xl font-bold mb-4 flex items-center gap-2",children:[e.jsx(a.CheckCircle2,{className:"w-5 h-5 text-[var(--success-text)]"}),t("dualDbContextPage.solutionSection.title")]}),e.jsxs("div",{className:"grid md:grid-cols-2 gap-6",children:[e.jsx(d,{context:l[0],contextKey:"coreDbContext"}),e.jsx(d,{context:l[1],contextKey:"extensionsDbContext"})]})]}),e.jsxs("section",{className:"card p-6",children:[e.jsxs("h2",{className:"text-xl font-bold mb-4 flex items-center gap-2",children:[e.jsx(a.Database,{className:"w-5 h-5"}),t("dualDbContextPage.databaseStructure.title")]}),e.jsx("div",{className:"bg-[var(--bg-secondary)] rounded-lg p-6",children:e.jsx("pre",{className:"text-sm font-mono whitespace-pre",children:`SmartStack Database (single SQL Server database)
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),o=require("react-router-dom"),x=require("react-i18next"),a=require("lucide-react"),l=[{name:"CoreDbContext",schema:"core",historyTable:"core.__EFMigrationsHistory",description:"Manages all SmartStack platform entities. Distributed via NuGet package.",entities:["User, Role, Permission, UserRole","NavigationApplication, NavigationModule","AiProvider, AiModel, Prompt, OutputSchema","EntraConfiguration, EntraGroup, EntraSyncState","Ticket, TicketComment, Notification","Setting, License, Workflow"],color:"from-blue-500 to-cyan-500"},{name:"ExtensionsDbContext",schema:"extensions",historyTable:"extensions.__EFMigrationsHistory",description:"Manages client-specific entities. Created by CLI in client projects.",entities:["Your custom entities (Order, Product, Invoice, etc.)","Client-specific business logic entities","Extension tables that reference Core entities via GUID"],color:"from-purple-500 to-pink-500"}];function d({context:t,contextKey:s}){const{t:n}=x.useTranslation("docs");return e.jsxs("div",{className:"card p-6",children:[e.jsx("div",{className:`w-12 h-12 rounded-lg bg-gradient-to-r ${t.color} flex items-center justify-center mb-4`,children:e.jsx(a.Database,{className:"w-6 h-6 text-white"})}),e.jsx("h3",{className:"text-xl font-bold mb-2",children:n(`dualDbContextPage.contextCards.${s}.name`)}),e.jsx("p",{className:"text-[var(--text-secondary)] mb-4",children:n(`dualDbContextPage.contextCards.${s}.description`)}),e.jsxs("div",{className:"space-y-3",children:[e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx("span",{className:"text-sm text-[var(--text-tertiary)]",children:n(`dualDbContextPage.contextCards.${s}.schema`)}),e.jsx("code",{className:"px-2 py-0.5 bg-[var(--bg-secondary)] rounded text-sm font-mono",children:n(`dualDbContextPage.contextCards.${s}.schemaValue`)})]}),e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx("span",{className:"text-sm text-[var(--text-tertiary)]",children:n(`dualDbContextPage.contextCards.${s}.history`)}),e.jsx("code",{className:"px-2 py-0.5 bg-[var(--bg-secondary)] rounded text-sm font-mono",children:n(`dualDbContextPage.contextCards.${s}.historyTable`)})]})]}),e.jsxs("div",{className:"mt-4 pt-4 border-t border-[var(--border-color)]",children:[e.jsx("span",{className:"text-sm font-medium",children:n(`dualDbContextPage.contextCards.${s}.entities`)}),e.jsx("ul",{className:"mt-2 space-y-1",children:[1,2,3].map(i=>{const m=`entity${i}`,c=n(`dualDbContextPage.contextCards.${s}.${m}`,{defaultValue:""});return c?e.jsxs("li",{className:"text-sm text-[var(--text-secondary)] flex items-start gap-2",children:[e.jsx("span",{className:"text-[var(--color-primary-600)]",children:"-"}),c]},`entity-${i}`):null})})]})]})}function r({code:t,language:s="csharp"}){return e.jsx("pre",{className:"bg-[var(--bg-tertiary)] rounded-lg p-4 overflow-x-auto",children:e.jsx("code",{className:`language-${s} text-sm`,children:t})})}function b(){const{t}=x.useTranslation("docs");return e.jsxs("div",{className:"space-y-8",children:[e.jsxs("div",{className:"flex items-center gap-2 text-sm text-[var(--text-secondary)]",children:[e.jsx(o.Link,{to:"/system/docs",className:"hover:text-[var(--color-primary-600)]",children:t("dualDbContextPage.breadcrumb.documentation")}),e.jsx("span",{children:"/"}),e.jsx(o.Link,{to:"/system/docs/developer",className:"hover:text-[var(--color-primary-600)]",children:t("dualDbContextPage.breadcrumb.developer")}),e.jsx("span",{children:"/"}),e.jsx("span",{children:t("dualDbContextPage.breadcrumb.title")})]}),e.jsxs("div",{children:[e.jsxs("h1",{className:"text-3xl font-bold mb-4 flex items-center gap-3",children:[e.jsx(a.Layers,{className:"w-8 h-8 text-[var(--color-primary-600)]"}),t("dualDbContextPage.header.title")]}),e.jsx("p",{className:"text-lg text-[var(--text-secondary)]",children:t("dualDbContextPage.header.subtitle")})]}),e.jsxs("section",{className:"card p-6",children:[e.jsxs("h2",{className:"text-xl font-bold mb-4 flex items-center gap-2",children:[e.jsx(a.AlertTriangle,{className:"w-5 h-5 text-[var(--warning-text)]"}),t("dualDbContextPage.whySection.title")]}),e.jsxs("div",{className:"space-y-4 text-[var(--text-secondary)]",children:[e.jsx("p",{children:t("dualDbContextPage.whySection.description")}),e.jsxs("ul",{className:"list-disc list-inside space-y-2 ml-4",children:[e.jsxs("li",{children:[e.jsx("strong",{children:t("dualDbContextPage.whySection.problem1")})," - ",t("dualDbContextPage.whySection.problem1Desc")]}),e.jsxs("li",{children:[e.jsx("strong",{children:t("dualDbContextPage.whySection.problem2")})," - ",t("dualDbContextPage.whySection.problem2Desc")]}),e.jsxs("li",{children:[e.jsx("strong",{children:t("dualDbContextPage.whySection.problem3")})," - ",t("dualDbContextPage.whySection.problem3Desc")]})]})]})]}),e.jsxs("section",{className:"card p-6",children:[e.jsxs("h2",{className:"text-xl font-bold mb-4 flex items-center gap-2",children:[e.jsx(a.CheckCircle2,{className:"w-5 h-5 text-[var(--success-text)]"}),t("dualDbContextPage.solutionSection.title")]}),e.jsxs("div",{className:"grid md:grid-cols-2 gap-6",children:[e.jsx(d,{context:l[0],contextKey:"coreDbContext"}),e.jsx(d,{context:l[1],contextKey:"extensionsDbContext"})]})]}),e.jsxs("section",{className:"card p-6",children:[e.jsxs("h2",{className:"text-xl font-bold mb-4 flex items-center gap-2",children:[e.jsx(a.Database,{className:"w-5 h-5"}),t("dualDbContextPage.databaseStructure.title")]}),e.jsx("div",{className:"bg-[var(--bg-secondary)] rounded-lg p-6",children:e.jsx("pre",{className:"text-sm font-mono whitespace-pre",children:`SmartStack Database (single SQL Server database)
2
2
  ├── core schema
3
3
  │ ├── __EFMigrationsHistory (Core migrations only)
4
4
  │ ├── auth_Users
@@ -57,4 +57,4 @@ dotnet ef database update --context ExtensionsDbContext
57
57
 
58
58
  # Lister
59
59
  dotnet ef migrations list --context ExtensionsDbContext`})]})]})]}),e.jsxs("div",{className:"flex justify-between pt-4 border-t border-[var(--border-color)]",children:[e.jsxs(o.Link,{to:"/system/docs/developer/database",className:"flex items-center gap-2 text-[var(--color-primary-600)] hover:underline",children:[e.jsx(a.ArrowRight,{className:"w-4 h-4 rotate-180"}),t("dualDbContextPage.navigation.previous")]}),e.jsxs(o.Link,{to:"/system/docs/developer/cross-schema-fk",className:"flex items-center gap-2 text-[var(--color-primary-600)] hover:underline",children:[t("dualDbContextPage.navigation.next"),e.jsx(a.ArrowRight,{className:"w-4 h-4"})]})]})]})}exports.DualDbContextPage=b;
60
- //# sourceMappingURL=DualDbContextPage--Qk-qEgD.cjs.map
60
+ //# sourceMappingURL=DualDbContextPage-Dz8NAewk.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DualDbContextPage-Dz8NAewk.cjs","sources":["../src/pages/system/docs/developer/DualDbContextPage.tsx"],"sourcesContent":["import type { ReactElement } from 'react';\nimport { Link } from 'react-router-dom';\r\nimport { useTranslation } from 'react-i18next';\r\nimport { Database, Layers, Package, ArrowRight, Code2, AlertTriangle, CheckCircle2 } from 'lucide-react';\r\n\r\ninterface DbContextInfo {\r\n name: string;\r\n schema: string;\r\n historyTable: string;\r\n description: string;\r\n entities: string[];\r\n color: string;\r\n}\r\n\r\nconst dbContexts: DbContextInfo[] = [\r\n {\r\n name: 'CoreDbContext',\r\n schema: 'core',\r\n historyTable: 'core.__EFMigrationsHistory',\r\n description: 'Manages all SmartStack platform entities. Distributed via NuGet package.',\r\n entities: [\r\n 'User, Role, Permission, UserRole',\r\n 'NavigationApplication, NavigationModule',\r\n 'AiProvider, AiModel, Prompt, OutputSchema',\r\n 'EntraConfiguration, EntraGroup, EntraSyncState',\r\n 'Ticket, TicketComment, Notification',\r\n 'Setting, License, Workflow',\r\n ],\r\n color: 'from-blue-500 to-cyan-500',\r\n },\r\n {\r\n name: 'ExtensionsDbContext',\r\n schema: 'extensions',\r\n historyTable: 'extensions.__EFMigrationsHistory',\r\n description: 'Manages client-specific entities. Created by CLI in client projects.',\r\n entities: [\r\n 'Your custom entities (Order, Product, Invoice, etc.)',\r\n 'Client-specific business logic entities',\r\n 'Extension tables that reference Core entities via GUID',\r\n ],\r\n color: 'from-purple-500 to-pink-500',\r\n },\r\n];\r\n\r\nfunction DbContextCard({ context, contextKey }: { context: DbContextInfo; contextKey: string }) {\r\n const { t } = useTranslation('docs');\r\n\r\n return (\r\n <div className=\"card p-6\">\r\n <div className={`w-12 h-12 rounded-lg bg-gradient-to-r ${context.color} flex items-center justify-center mb-4`}>\r\n <Database className=\"w-6 h-6 text-white\" />\r\n </div>\r\n <h3 className=\"text-xl font-bold mb-2\">{t(`dualDbContextPage.contextCards.${contextKey}.name`)}</h3>\r\n <p className=\"text-[var(--text-secondary)] mb-4\">{t(`dualDbContextPage.contextCards.${contextKey}.description`)}</p>\r\n\r\n <div className=\"space-y-3\">\r\n <div className=\"flex items-center gap-2\">\r\n <span className=\"text-sm text-[var(--text-tertiary)]\">{t(`dualDbContextPage.contextCards.${contextKey}.schema`)}</span>\r\n <code className=\"px-2 py-0.5 bg-[var(--bg-secondary)] rounded text-sm font-mono\">{t(`dualDbContextPage.contextCards.${contextKey}.schemaValue`)}</code>\r\n </div>\r\n <div className=\"flex items-center gap-2\">\r\n <span className=\"text-sm text-[var(--text-tertiary)]\">{t(`dualDbContextPage.contextCards.${contextKey}.history`)}</span>\r\n <code className=\"px-2 py-0.5 bg-[var(--bg-secondary)] rounded text-sm font-mono\">{t(`dualDbContextPage.contextCards.${contextKey}.historyTable`)}</code>\r\n </div>\r\n </div>\r\n\r\n <div className=\"mt-4 pt-4 border-t border-[var(--border-color)]\">\r\n <span className=\"text-sm font-medium\">{t(`dualDbContextPage.contextCards.${contextKey}.entities`)}</span>\r\n <ul className=\"mt-2 space-y-1\">\r\n {[1, 2, 3].map((idx) => {\r\n const entityKey = `entity${idx}`;\r\n const entityText = t(`dualDbContextPage.contextCards.${contextKey}.${entityKey}`, { defaultValue: '' });\r\n return entityText ? (\r\n <li key={`entity-${idx}`} className=\"text-sm text-[var(--text-secondary)] flex items-start gap-2\">\r\n <span className=\"text-[var(--color-primary-600)]\">-</span>\r\n {entityText}\r\n </li>\r\n ) : null;\r\n })}\r\n </ul>\r\n </div>\r\n </div>\r\n );\r\n}\r\n\r\nfunction CodeBlock({ code, language = 'csharp' }: { code: string; language?: string }) {\r\n return (\r\n <pre className=\"bg-[var(--bg-tertiary)] rounded-lg p-4 overflow-x-auto\">\r\n <code className={`language-${language} text-sm`}>{code}</code>\r\n </pre>\r\n );\r\n}\r\n\r\nexport function DualDbContextPage(): 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('dualDbContextPage.breadcrumb.documentation')}</Link>\r\n <span>/</span>\r\n <Link to=\"/system/docs/developer\" className=\"hover:text-[var(--color-primary-600)]\">{t('dualDbContextPage.breadcrumb.developer')}</Link>\r\n <span>/</span>\r\n <span>{t('dualDbContextPage.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 <Layers className=\"w-8 h-8 text-[var(--color-primary-600)]\" />\r\n {t('dualDbContextPage.header.title')}\r\n </h1>\r\n <p className=\"text-lg text-[var(--text-secondary)]\">\r\n {t('dualDbContextPage.header.subtitle')}\r\n </p>\r\n </div>\r\n\r\n {/* Why Section */}\r\n <section className=\"card p-6\">\r\n <h2 className=\"text-xl font-bold mb-4 flex items-center gap-2\">\r\n <AlertTriangle className=\"w-5 h-5 text-[var(--warning-text)]\" />\r\n {t('dualDbContextPage.whySection.title')}\r\n </h2>\r\n <div className=\"space-y-4 text-[var(--text-secondary)]\">\r\n <p>\r\n {t('dualDbContextPage.whySection.description')}\r\n </p>\r\n <ul className=\"list-disc list-inside space-y-2 ml-4\">\r\n <li>\r\n <strong>{t('dualDbContextPage.whySection.problem1')}</strong> - {t('dualDbContextPage.whySection.problem1Desc')}\r\n </li>\r\n <li>\r\n <strong>{t('dualDbContextPage.whySection.problem2')}</strong> - {t('dualDbContextPage.whySection.problem2Desc')}\r\n </li>\r\n <li>\r\n <strong>{t('dualDbContextPage.whySection.problem3')}</strong> - {t('dualDbContextPage.whySection.problem3Desc')}\r\n </li>\r\n </ul>\r\n </div>\r\n </section>\r\n\r\n {/* Solution Section */}\r\n <section className=\"card p-6\">\r\n <h2 className=\"text-xl font-bold mb-4 flex items-center gap-2\">\r\n <CheckCircle2 className=\"w-5 h-5 text-[var(--success-text)]\" />\r\n {t('dualDbContextPage.solutionSection.title')}\r\n </h2>\r\n <div className=\"grid md:grid-cols-2 gap-6\">\r\n <DbContextCard context={dbContexts[0]} contextKey=\"coreDbContext\" />\r\n <DbContextCard context={dbContexts[1]} contextKey=\"extensionsDbContext\" />\r\n </div>\r\n </section>\r\n\r\n {/* Database Schema Diagram */}\r\n <section className=\"card p-6\">\r\n <h2 className=\"text-xl font-bold mb-4 flex items-center gap-2\">\r\n <Database className=\"w-5 h-5\" />\r\n {t('dualDbContextPage.databaseStructure.title')}\r\n </h2>\r\n <div className=\"bg-[var(--bg-secondary)] rounded-lg p-6\">\r\n <pre className=\"text-sm font-mono whitespace-pre\">\r\n{`SmartStack Database (single SQL Server database)\r\n├── core schema\r\n│ ├── __EFMigrationsHistory (Core migrations only)\r\n│ ├── auth_Users\r\n│ ├── auth_Roles\r\n│ ├── auth_Permissions\r\n│ ├── nav_Applications\r\n│ ├── nav_Modules\r\n│ ├── ai_Providers\r\n│ ├── ai_Models\r\n│ └── ... (all SmartStack tables)\r\n│\r\n└── extensions schema\r\n ├── __EFMigrationsHistory (Extensions migrations only)\r\n ├── biz_Orders (example client table)\r\n ├── biz_Products (example client table)\r\n └── ... (all client tables)`}\r\n </pre>\r\n </div>\r\n </section>\r\n\r\n {/* Configuration Section */}\r\n <section className=\"card p-6\">\r\n <h2 className=\"text-xl font-bold mb-4 flex items-center gap-2\">\r\n <Code2 className=\"w-5 h-5\" />\r\n {t('dualDbContextPage.efCoreConfiguration.title')}\r\n </h2>\r\n\r\n <h3 className=\"font-semibold mt-4 mb-2\">{t('dualDbContextPage.efCoreConfiguration.coreDbContextTitle')}</h3>\r\n <CodeBlock code={`// Dans DependencyInjection.cs (SmartStack.Infrastructure)\r\nservices.AddDbContext<CoreDbContext>(options =>\r\n{\r\n options.UseSqlServer(connectionString, b =>\r\n {\r\n b.MigrationsAssembly(typeof(CoreDbContext).Assembly.FullName);\r\n b.MigrationsHistoryTable(\"__EFMigrationsHistory\", \"core\"); // <-- Schema core\r\n });\r\n});`} />\r\n\r\n <h3 className=\"font-semibold mt-6 mb-2\">{t('dualDbContextPage.efCoreConfiguration.extensionsDbContextTitle')}</h3>\r\n <CodeBlock code={`// Dans DependencyInjection.cs (Client.Infrastructure)\r\nservices.AddDbContext<ExtensionsDbContext>(options =>\r\n{\r\n options.UseSqlServer(connectionString, b =>\r\n {\r\n b.MigrationsAssembly(typeof(ExtensionsDbContext).Assembly.FullName);\r\n b.MigrationsHistoryTable(\"__EFMigrationsHistory\", \"extensions\"); // <-- Schema extensions\r\n });\r\n});`} />\r\n </section>\r\n\r\n {/* Migration Order Section */}\r\n <section className=\"card p-6\">\r\n <h2 className=\"text-xl font-bold mb-4 flex items-center gap-2\">\r\n <ArrowRight className=\"w-5 h-5\" />\r\n {t('dualDbContextPage.migrationOrder.title')}\r\n </h2>\r\n <div className=\"bg-[var(--info-bg)] border border-[var(--info-border)] rounded-lg p-4 mb-4\">\r\n <p className=\"text-[var(--info-text)]\">\r\n <strong>Important:</strong> {t('dualDbContextPage.migrationOrder.important')}\r\n </p>\r\n </div>\r\n <CodeBlock code={`// Dans Program.cs\r\nif (app.Environment.IsDevelopment())\r\n{\r\n using var scope = app.Services.CreateScope();\r\n\r\n // 1. D'abord Core (SmartStack platform)\r\n var coreDb = scope.ServiceProvider.GetRequiredService<CoreDbContext>();\r\n await coreDb.Database.MigrateAsync();\r\n\r\n // 2. Ensuite Extensions (Client)\r\n var extDb = scope.ServiceProvider.GetRequiredService<ExtensionsDbContext>();\r\n await extDb.Database.MigrateAsync();\r\n}`} />\r\n </section>\r\n\r\n {/* CLI Commands Section */}\r\n <section className=\"card p-6\">\r\n <h2 className=\"text-xl font-bold mb-4 flex items-center gap-2\">\r\n <Package className=\"w-5 h-5\" />\r\n {t('dualDbContextPage.efCoreCommands.title')}\r\n </h2>\r\n <div className=\"space-y-4\">\r\n <div>\r\n <h3 className=\"font-semibold mb-2\">{t('dualDbContextPage.efCoreCommands.coreMigrationsTitle')}</h3>\r\n <CodeBlock language=\"bash\" code={`# Creer une migration Core\r\ndotnet ef migrations add core_v1.9.0_001_AddNewFeature --context CoreDbContext\r\n\r\n# Appliquer\r\ndotnet ef database update --context CoreDbContext\r\n\r\n# Lister\r\ndotnet ef migrations list --context CoreDbContext`} />\r\n </div>\r\n\r\n <div>\r\n <h3 className=\"font-semibold mb-2\">{t('dualDbContextPage.efCoreCommands.extensionsMigrationsTitle')}</h3>\r\n <CodeBlock language=\"bash\" code={`# Creer une migration Extensions\r\ndotnet ef migrations add ext_v1.0.0_001_CreateOrders --context ExtensionsDbContext\r\n\r\n# Appliquer\r\ndotnet ef database update --context ExtensionsDbContext\r\n\r\n# Lister\r\ndotnet ef migrations list --context ExtensionsDbContext`} />\r\n </div>\r\n </div>\r\n </section>\r\n\r\n {/* Navigation */}\r\n <div className=\"flex justify-between pt-4 border-t border-[var(--border-color)]\">\r\n <Link\r\n to=\"/system/docs/developer/database\"\r\n className=\"flex items-center gap-2 text-[var(--color-primary-600)] hover:underline\"\r\n >\r\n <ArrowRight className=\"w-4 h-4 rotate-180\" />\r\n {t('dualDbContextPage.navigation.previous')}\r\n </Link>\r\n <Link\r\n to=\"/system/docs/developer/cross-schema-fk\"\r\n className=\"flex items-center gap-2 text-[var(--color-primary-600)] hover:underline\"\r\n >\r\n {t('dualDbContextPage.navigation.next')}\r\n <ArrowRight className=\"w-4 h-4\" />\r\n </Link>\r\n </div>\r\n </div>\r\n );\r\n}\r\n"],"names":["dbContexts","DbContextCard","context","contextKey","t","useTranslation","jsxs","jsx","Database","idx","entityKey","entityText","CodeBlock","code","language","DualDbContextPage","Link","Layers","AlertTriangle","CheckCircle2","Code2","ArrowRight","Package"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),n=require("react"),S=require("react-router-dom"),A=require("react-i18next"),a=require("lucide-react"),q=require("./index-C6C5XmVj.cjs");function E(){const{t:o}=A.useTranslation(),b=S.useNavigate(),[l,w]=n.useState(""),[t,p]=n.useState(""),[d,y]=n.useState(""),[i,j]=n.useState(!1),[c,v]=n.useState(!1),[m,x]=n.useState(!1),[h,u]=n.useState(null),[N,k]=n.useState(!1),P=(s=>{const r=[];return s.length<8&&r.push("Au moins 8 caractères"),/[A-Z]/.test(s)||r.push("Au moins une majuscule"),/[a-z]/.test(s)||r.push("Au moins une minuscule"),/[0-9]/.test(s)||r.push("Au moins un chiffre"),r})(t),g=t===d&&P.length===0&&l.length>0,C=async s=>{if(s.preventDefault(),!!g){x(!0),u(null);try{await q.authApi.changePassword(l,t),k(!0),setTimeout(()=>{b("/")},2e3)}catch(r){r instanceof Error?u(r.message):u("Une erreur est survenue")}finally{x(!1)}}};return N?e.jsx("div",{className:"min-h-screen flex items-center justify-center bg-gradient-to-br from-blue-50 to-indigo-100 dark:from-gray-900 dark:to-gray-800 p-4",children:e.jsxs("div",{className:"w-full max-w-md bg-white dark:bg-gray-800 rounded-2xl shadow-xl p-8 text-center",children:[e.jsx("div",{className:"w-16 h-16 bg-green-100 dark:bg-green-900/30 rounded-full flex items-center justify-center mx-auto mb-4",children:e.jsx(a.CheckCircle,{className:"w-8 h-8 text-green-600 dark:text-green-400"})}),e.jsx("h2",{className:"text-2xl font-bold text-gray-900 dark:text-white mb-2",children:"Mot de passe modifié"}),e.jsx("p",{className:"text-gray-600 dark:text-gray-400",children:"Vous allez être redirigé vers l'accueil..."})]})}):e.jsx("div",{className:"min-h-screen flex items-center justify-center bg-gradient-to-br from-blue-50 to-indigo-100 dark:from-gray-900 dark:to-gray-800 p-4",children:e.jsx("div",{className:"w-full max-w-md",children:e.jsxs("div",{className:"bg-white dark:bg-gray-800 rounded-2xl shadow-xl p-8",children:[e.jsxs("div",{className:"text-center mb-8",children:[e.jsx("div",{className:"w-16 h-16 bg-amber-100 dark:bg-amber-900/30 rounded-full flex items-center justify-center mx-auto mb-4",children:e.jsx(a.Lock,{className:"w-8 h-8 text-amber-600 dark:text-amber-400"})}),e.jsx("h1",{className:"text-2xl font-bold text-gray-900 dark:text-white",children:o("auth.forceChangePassword.title","Changement de mot de passe requis")}),e.jsx("p",{className:"text-gray-600 dark:text-gray-400 mt-2",children:o("auth.forceChangePassword.description","Pour des raisons de sécurité, vous devez définir un nouveau mot de passe.")})]}),h&&e.jsxs("div",{className:"mb-6 p-4 rounded-xl bg-red-100 dark:bg-red-900/30 text-red-700 dark:text-red-300 flex items-center gap-2",children:[e.jsx(a.AlertTriangle,{className:"w-5 h-5 flex-shrink-0"}),e.jsx("span",{children:h})]}),e.jsxs("form",{onSubmit:C,className:"space-y-6",children:[e.jsxs("div",{children:[e.jsx("label",{className:"block text-sm font-medium text-gray-700 dark:text-gray-300 mb-1",children:o("auth.forceChangePassword.currentPassword","Mot de passe actuel (temporaire)")}),e.jsxs("div",{className:"relative",children:[e.jsx("input",{type:i?"text":"password",required:!0,value:l,onChange:s=>w(s.target.value),className:"w-full px-4 py-3 rounded-xl border border-gray-300 dark:border-gray-600 bg-white dark:bg-gray-700 text-gray-900 dark:text-white focus:outline-none focus:ring-2 focus:ring-blue-500",placeholder:"Entrez le mot de passe fourni par l'administrateur"}),e.jsx("button",{type:"button",onClick:()=>j(!i),className:"absolute right-3 top-1/2 -translate-y-1/2 text-gray-500 hover:text-gray-700 dark:hover:text-gray-300",children:i?e.jsx(a.EyeOff,{className:"w-5 h-5"}):e.jsx(a.Eye,{className:"w-5 h-5"})})]})]}),e.jsxs("div",{children:[e.jsx("label",{className:"block text-sm font-medium text-gray-700 dark:text-gray-300 mb-1",children:o("auth.forceChangePassword.newPassword","Nouveau mot de passe")}),e.jsxs("div",{className:"relative",children:[e.jsx("input",{type:c?"text":"password",required:!0,value:t,onChange:s=>p(s.target.value),className:"w-full px-4 py-3 rounded-xl border border-gray-300 dark:border-gray-600 bg-white dark:bg-gray-700 text-gray-900 dark:text-white focus:outline-none focus:ring-2 focus:ring-blue-500",placeholder:"Choisissez un nouveau mot de passe"}),e.jsx("button",{type:"button",onClick:()=>v(!c),className:"absolute right-3 top-1/2 -translate-y-1/2 text-gray-500 hover:text-gray-700 dark:hover:text-gray-300",children:c?e.jsx(a.EyeOff,{className:"w-5 h-5"}):e.jsx(a.Eye,{className:"w-5 h-5"})})]}),t&&e.jsx("div",{className:"mt-2 space-y-1",children:["Au moins 8 caractères","Au moins une majuscule","Au moins une minuscule","Au moins un chiffre"].map((s,r)=>{const f=[t.length>=8,/[A-Z]/.test(t),/[a-z]/.test(t),/[0-9]/.test(t)];return e.jsxs("div",{className:`flex items-center gap-2 text-sm ${f[r]?"text-green-600":"text-gray-500"}`,children:[f[r]?e.jsx(a.CheckCircle,{className:"w-4 h-4"}):e.jsx("div",{className:"w-4 h-4 rounded-full border border-current"}),s]},`pwd-req-${r}`)})})]}),e.jsxs("div",{children:[e.jsx("label",{className:"block text-sm font-medium text-gray-700 dark:text-gray-300 mb-1",children:o("auth.forceChangePassword.confirmPassword","Confirmer le nouveau mot de passe")}),e.jsx("input",{type:"password",required:!0,value:d,onChange:s=>y(s.target.value),className:`w-full px-4 py-3 rounded-xl border ${d&&d!==t?"border-red-500 focus:ring-red-500":"border-gray-300 dark:border-gray-600 focus:ring-blue-500"} bg-white dark:bg-gray-700 text-gray-900 dark:text-white focus:outline-none focus:ring-2`,placeholder:"Confirmez votre nouveau mot de passe"}),d&&d!==t&&e.jsx("p",{className:"mt-1 text-sm text-red-600",children:"Les mots de passe ne correspondent pas"})]}),e.jsx("button",{type:"submit",disabled:!g||m,className:"w-full py-3 px-4 rounded-xl bg-blue-600 hover:bg-blue-700 text-white font-medium transition-colors disabled:opacity-50 disabled:cursor-not-allowed flex items-center justify-center gap-2",children:m?e.jsxs(e.Fragment,{children:[e.jsx(a.Loader2,{className:"w-5 h-5 animate-spin"}),e.jsx("span",{children:"Modification en cours..."})]}):e.jsx("span",{children:o("auth.forceChangePassword.submit","Définir mon nouveau mot de passe")})})]})]})})})}exports.ForceChangePasswordPage=E;
2
- //# sourceMappingURL=ForceChangePasswordPage-kEFsb5Aq.cjs.map
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),n=require("react"),S=require("react-router-dom"),A=require("react-i18next"),a=require("lucide-react"),q=require("./index-BfMaHuWh.cjs");function E(){const{t:o}=A.useTranslation(),b=S.useNavigate(),[l,w]=n.useState(""),[t,p]=n.useState(""),[d,y]=n.useState(""),[i,j]=n.useState(!1),[c,v]=n.useState(!1),[m,x]=n.useState(!1),[h,u]=n.useState(null),[N,k]=n.useState(!1),P=(s=>{const r=[];return s.length<8&&r.push("Au moins 8 caractères"),/[A-Z]/.test(s)||r.push("Au moins une majuscule"),/[a-z]/.test(s)||r.push("Au moins une minuscule"),/[0-9]/.test(s)||r.push("Au moins un chiffre"),r})(t),g=t===d&&P.length===0&&l.length>0,C=async s=>{if(s.preventDefault(),!!g){x(!0),u(null);try{await q.authApi.changePassword(l,t),k(!0),setTimeout(()=>{b("/")},2e3)}catch(r){r instanceof Error?u(r.message):u("Une erreur est survenue")}finally{x(!1)}}};return N?e.jsx("div",{className:"min-h-screen flex items-center justify-center bg-gradient-to-br from-blue-50 to-indigo-100 dark:from-gray-900 dark:to-gray-800 p-4",children:e.jsxs("div",{className:"w-full max-w-md bg-white dark:bg-gray-800 rounded-2xl shadow-xl p-8 text-center",children:[e.jsx("div",{className:"w-16 h-16 bg-green-100 dark:bg-green-900/30 rounded-full flex items-center justify-center mx-auto mb-4",children:e.jsx(a.CheckCircle,{className:"w-8 h-8 text-green-600 dark:text-green-400"})}),e.jsx("h2",{className:"text-2xl font-bold text-gray-900 dark:text-white mb-2",children:"Mot de passe modifié"}),e.jsx("p",{className:"text-gray-600 dark:text-gray-400",children:"Vous allez être redirigé vers l'accueil..."})]})}):e.jsx("div",{className:"min-h-screen flex items-center justify-center bg-gradient-to-br from-blue-50 to-indigo-100 dark:from-gray-900 dark:to-gray-800 p-4",children:e.jsx("div",{className:"w-full max-w-md",children:e.jsxs("div",{className:"bg-white dark:bg-gray-800 rounded-2xl shadow-xl p-8",children:[e.jsxs("div",{className:"text-center mb-8",children:[e.jsx("div",{className:"w-16 h-16 bg-amber-100 dark:bg-amber-900/30 rounded-full flex items-center justify-center mx-auto mb-4",children:e.jsx(a.Lock,{className:"w-8 h-8 text-amber-600 dark:text-amber-400"})}),e.jsx("h1",{className:"text-2xl font-bold text-gray-900 dark:text-white",children:o("auth.forceChangePassword.title","Changement de mot de passe requis")}),e.jsx("p",{className:"text-gray-600 dark:text-gray-400 mt-2",children:o("auth.forceChangePassword.description","Pour des raisons de sécurité, vous devez définir un nouveau mot de passe.")})]}),h&&e.jsxs("div",{className:"mb-6 p-4 rounded-xl bg-red-100 dark:bg-red-900/30 text-red-700 dark:text-red-300 flex items-center gap-2",children:[e.jsx(a.AlertTriangle,{className:"w-5 h-5 flex-shrink-0"}),e.jsx("span",{children:h})]}),e.jsxs("form",{onSubmit:C,className:"space-y-6",children:[e.jsxs("div",{children:[e.jsx("label",{className:"block text-sm font-medium text-gray-700 dark:text-gray-300 mb-1",children:o("auth.forceChangePassword.currentPassword","Mot de passe actuel (temporaire)")}),e.jsxs("div",{className:"relative",children:[e.jsx("input",{type:i?"text":"password",required:!0,value:l,onChange:s=>w(s.target.value),className:"w-full px-4 py-3 rounded-xl border border-gray-300 dark:border-gray-600 bg-white dark:bg-gray-700 text-gray-900 dark:text-white focus:outline-none focus:ring-2 focus:ring-blue-500",placeholder:"Entrez le mot de passe fourni par l'administrateur"}),e.jsx("button",{type:"button",onClick:()=>j(!i),className:"absolute right-3 top-1/2 -translate-y-1/2 text-gray-500 hover:text-gray-700 dark:hover:text-gray-300",children:i?e.jsx(a.EyeOff,{className:"w-5 h-5"}):e.jsx(a.Eye,{className:"w-5 h-5"})})]})]}),e.jsxs("div",{children:[e.jsx("label",{className:"block text-sm font-medium text-gray-700 dark:text-gray-300 mb-1",children:o("auth.forceChangePassword.newPassword","Nouveau mot de passe")}),e.jsxs("div",{className:"relative",children:[e.jsx("input",{type:c?"text":"password",required:!0,value:t,onChange:s=>p(s.target.value),className:"w-full px-4 py-3 rounded-xl border border-gray-300 dark:border-gray-600 bg-white dark:bg-gray-700 text-gray-900 dark:text-white focus:outline-none focus:ring-2 focus:ring-blue-500",placeholder:"Choisissez un nouveau mot de passe"}),e.jsx("button",{type:"button",onClick:()=>v(!c),className:"absolute right-3 top-1/2 -translate-y-1/2 text-gray-500 hover:text-gray-700 dark:hover:text-gray-300",children:c?e.jsx(a.EyeOff,{className:"w-5 h-5"}):e.jsx(a.Eye,{className:"w-5 h-5"})})]}),t&&e.jsx("div",{className:"mt-2 space-y-1",children:["Au moins 8 caractères","Au moins une majuscule","Au moins une minuscule","Au moins un chiffre"].map((s,r)=>{const f=[t.length>=8,/[A-Z]/.test(t),/[a-z]/.test(t),/[0-9]/.test(t)];return e.jsxs("div",{className:`flex items-center gap-2 text-sm ${f[r]?"text-green-600":"text-gray-500"}`,children:[f[r]?e.jsx(a.CheckCircle,{className:"w-4 h-4"}):e.jsx("div",{className:"w-4 h-4 rounded-full border border-current"}),s]},`pwd-req-${r}`)})})]}),e.jsxs("div",{children:[e.jsx("label",{className:"block text-sm font-medium text-gray-700 dark:text-gray-300 mb-1",children:o("auth.forceChangePassword.confirmPassword","Confirmer le nouveau mot de passe")}),e.jsx("input",{type:"password",required:!0,value:d,onChange:s=>y(s.target.value),className:`w-full px-4 py-3 rounded-xl border ${d&&d!==t?"border-red-500 focus:ring-red-500":"border-gray-300 dark:border-gray-600 focus:ring-blue-500"} bg-white dark:bg-gray-700 text-gray-900 dark:text-white focus:outline-none focus:ring-2`,placeholder:"Confirmez votre nouveau mot de passe"}),d&&d!==t&&e.jsx("p",{className:"mt-1 text-sm text-red-600",children:"Les mots de passe ne correspondent pas"})]}),e.jsx("button",{type:"submit",disabled:!g||m,className:"w-full py-3 px-4 rounded-xl bg-blue-600 hover:bg-blue-700 text-white font-medium transition-colors disabled:opacity-50 disabled:cursor-not-allowed flex items-center justify-center gap-2",children:m?e.jsxs(e.Fragment,{children:[e.jsx(a.Loader2,{className:"w-5 h-5 animate-spin"}),e.jsx("span",{children:"Modification en cours..."})]}):e.jsx("span",{children:o("auth.forceChangePassword.submit","Définir mon nouveau mot de passe")})})]})]})})})}exports.ForceChangePasswordPage=E;
2
+ //# sourceMappingURL=ForceChangePasswordPage-BqNyswSy.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ForceChangePasswordPage-BqNyswSy.cjs","sources":["../src/pages/auth/ForceChangePasswordPage.tsx"],"sourcesContent":["import { useState } from 'react';\r\nimport type { ReactElement } from 'react';\r\nimport { useNavigate } from 'react-router-dom';\r\nimport { useTranslation } from 'react-i18next';\r\nimport { Lock, Eye, EyeOff, Loader2, AlertTriangle, CheckCircle } from 'lucide-react';\r\nimport { authApi } from '@/services/api/authApi';\r\n\r\nexport function ForceChangePasswordPage(): ReactElement {\r\n const { t } = useTranslation();\r\n const navigate = useNavigate();\r\n\r\n const [currentPassword, setCurrentPassword] = useState('');\r\n const [newPassword, setNewPassword] = useState('');\r\n const [confirmPassword, setConfirmPassword] = useState('');\r\n const [showCurrentPassword, setShowCurrentPassword] = useState(false);\r\n const [showNewPassword, setShowNewPassword] = useState(false);\r\n const [loading, setLoading] = useState(false);\r\n const [error, setError] = useState<string | null>(null);\r\n const [success, setSuccess] = useState(false);\r\n\r\n const validatePassword = (password: string): string[] => {\r\n const errors: string[] = [];\r\n if (password.length < 8) errors.push('Au moins 8 caractères');\r\n if (!/[A-Z]/.test(password)) errors.push('Au moins une majuscule');\r\n if (!/[a-z]/.test(password)) errors.push('Au moins une minuscule');\r\n if (!/[0-9]/.test(password)) errors.push('Au moins un chiffre');\r\n return errors;\r\n };\r\n\r\n const passwordErrors = validatePassword(newPassword);\r\n const isValid = newPassword === confirmPassword && passwordErrors.length === 0 && currentPassword.length > 0;\r\n\r\n const handleSubmit = async (e: React.FormEvent) => {\r\n e.preventDefault();\r\n if (!isValid) return;\r\n\r\n setLoading(true);\r\n setError(null);\r\n\r\n try {\r\n await authApi.changePassword(currentPassword, newPassword);\r\n setSuccess(true);\r\n setTimeout(() => {\r\n navigate('/');\r\n }, 2000);\r\n } catch (err: unknown) {\r\n if (err instanceof Error) {\r\n setError(err.message);\r\n } else {\r\n setError('Une erreur est survenue');\r\n }\r\n } finally {\r\n setLoading(false);\r\n }\r\n };\r\n\r\n if (success) {\r\n return (\r\n <div className=\"min-h-screen flex items-center justify-center bg-gradient-to-br from-blue-50 to-indigo-100 dark:from-gray-900 dark:to-gray-800 p-4\">\r\n <div className=\"w-full max-w-md bg-white dark:bg-gray-800 rounded-2xl shadow-xl p-8 text-center\">\r\n <div className=\"w-16 h-16 bg-green-100 dark:bg-green-900/30 rounded-full flex items-center justify-center mx-auto mb-4\">\r\n <CheckCircle className=\"w-8 h-8 text-green-600 dark:text-green-400\" />\r\n </div>\r\n <h2 className=\"text-2xl font-bold text-gray-900 dark:text-white mb-2\">\r\n Mot de passe modifié\r\n </h2>\r\n <p className=\"text-gray-600 dark:text-gray-400\">\r\n Vous allez être redirigé vers l'accueil...\r\n </p>\r\n </div>\r\n </div>\r\n );\r\n }\r\n\r\n return (\r\n <div className=\"min-h-screen flex items-center justify-center bg-gradient-to-br from-blue-50 to-indigo-100 dark:from-gray-900 dark:to-gray-800 p-4\">\r\n <div className=\"w-full max-w-md\">\r\n <div className=\"bg-white dark:bg-gray-800 rounded-2xl shadow-xl p-8\">\r\n {/* Header */}\r\n <div className=\"text-center mb-8\">\r\n <div className=\"w-16 h-16 bg-amber-100 dark:bg-amber-900/30 rounded-full flex items-center justify-center mx-auto mb-4\">\r\n <Lock className=\"w-8 h-8 text-amber-600 dark:text-amber-400\" />\r\n </div>\r\n <h1 className=\"text-2xl font-bold text-gray-900 dark:text-white\">\r\n {t('auth.forceChangePassword.title', 'Changement de mot de passe requis')}\r\n </h1>\r\n <p className=\"text-gray-600 dark:text-gray-400 mt-2\">\r\n {t('auth.forceChangePassword.description', 'Pour des raisons de sécurité, vous devez définir un nouveau mot de passe.')}\r\n </p>\r\n </div>\r\n\r\n {/* Error */}\r\n {error && (\r\n <div className=\"mb-6 p-4 rounded-xl bg-red-100 dark:bg-red-900/30 text-red-700 dark:text-red-300 flex items-center gap-2\">\r\n <AlertTriangle className=\"w-5 h-5 flex-shrink-0\" />\r\n <span>{error}</span>\r\n </div>\r\n )}\r\n\r\n {/* Form */}\r\n <form onSubmit={handleSubmit} className=\"space-y-6\">\r\n {/* Current Password */}\r\n <div>\r\n <label className=\"block text-sm font-medium text-gray-700 dark:text-gray-300 mb-1\">\r\n {t('auth.forceChangePassword.currentPassword', 'Mot de passe actuel (temporaire)')}\r\n </label>\r\n <div className=\"relative\">\r\n <input\r\n type={showCurrentPassword ? 'text' : 'password'}\r\n required\r\n value={currentPassword}\r\n onChange={e => setCurrentPassword(e.target.value)}\r\n className=\"w-full px-4 py-3 rounded-xl border border-gray-300 dark:border-gray-600 bg-white dark:bg-gray-700 text-gray-900 dark:text-white focus:outline-none focus:ring-2 focus:ring-blue-500\"\r\n placeholder=\"Entrez le mot de passe fourni par l'administrateur\"\r\n />\r\n <button\r\n type=\"button\"\r\n onClick={() => setShowCurrentPassword(!showCurrentPassword)}\r\n className=\"absolute right-3 top-1/2 -translate-y-1/2 text-gray-500 hover:text-gray-700 dark:hover:text-gray-300\"\r\n >\r\n {showCurrentPassword ? <EyeOff className=\"w-5 h-5\" /> : <Eye className=\"w-5 h-5\" />}\r\n </button>\r\n </div>\r\n </div>\r\n\r\n {/* New Password */}\r\n <div>\r\n <label className=\"block text-sm font-medium text-gray-700 dark:text-gray-300 mb-1\">\r\n {t('auth.forceChangePassword.newPassword', 'Nouveau mot de passe')}\r\n </label>\r\n <div className=\"relative\">\r\n <input\r\n type={showNewPassword ? 'text' : 'password'}\r\n required\r\n value={newPassword}\r\n onChange={e => setNewPassword(e.target.value)}\r\n className=\"w-full px-4 py-3 rounded-xl border border-gray-300 dark:border-gray-600 bg-white dark:bg-gray-700 text-gray-900 dark:text-white focus:outline-none focus:ring-2 focus:ring-blue-500\"\r\n placeholder=\"Choisissez un nouveau mot de passe\"\r\n />\r\n <button\r\n type=\"button\"\r\n onClick={() => setShowNewPassword(!showNewPassword)}\r\n className=\"absolute right-3 top-1/2 -translate-y-1/2 text-gray-500 hover:text-gray-700 dark:hover:text-gray-300\"\r\n >\r\n {showNewPassword ? <EyeOff className=\"w-5 h-5\" /> : <Eye className=\"w-5 h-5\" />}\r\n </button>\r\n </div>\r\n\r\n {/* Password requirements */}\r\n {newPassword && (\r\n <div className=\"mt-2 space-y-1\">\r\n {['Au moins 8 caractères', 'Au moins une majuscule', 'Au moins une minuscule', 'Au moins un chiffre'].map((req, i) => {\r\n const checks = [\r\n newPassword.length >= 8,\r\n /[A-Z]/.test(newPassword),\r\n /[a-z]/.test(newPassword),\r\n /[0-9]/.test(newPassword)\r\n ];\r\n return (\r\n <div key={`pwd-req-${i}`} className={`flex items-center gap-2 text-sm ${checks[i] ? 'text-green-600' : 'text-gray-500'}`}>\r\n {checks[i] ? <CheckCircle className=\"w-4 h-4\" /> : <div className=\"w-4 h-4 rounded-full border border-current\" />}\r\n {req}\r\n </div>\r\n );\r\n })}\r\n </div>\r\n )}\r\n </div>\r\n\r\n {/* Confirm Password */}\r\n <div>\r\n <label className=\"block text-sm font-medium text-gray-700 dark:text-gray-300 mb-1\">\r\n {t('auth.forceChangePassword.confirmPassword', 'Confirmer le nouveau mot de passe')}\r\n </label>\r\n <input\r\n type=\"password\"\r\n required\r\n value={confirmPassword}\r\n onChange={e => setConfirmPassword(e.target.value)}\r\n className={`w-full px-4 py-3 rounded-xl border ${\r\n confirmPassword && confirmPassword !== newPassword\r\n ? 'border-red-500 focus:ring-red-500'\r\n : 'border-gray-300 dark:border-gray-600 focus:ring-blue-500'\r\n } bg-white dark:bg-gray-700 text-gray-900 dark:text-white focus:outline-none focus:ring-2`}\r\n placeholder=\"Confirmez votre nouveau mot de passe\"\r\n />\r\n {confirmPassword && confirmPassword !== newPassword && (\r\n <p className=\"mt-1 text-sm text-red-600\">Les mots de passe ne correspondent pas</p>\r\n )}\r\n </div>\r\n\r\n {/* Submit */}\r\n <button\r\n type=\"submit\"\r\n disabled={!isValid || loading}\r\n className=\"w-full py-3 px-4 rounded-xl bg-blue-600 hover:bg-blue-700 text-white font-medium transition-colors disabled:opacity-50 disabled:cursor-not-allowed flex items-center justify-center gap-2\"\r\n >\r\n {loading ? (\r\n <>\r\n <Loader2 className=\"w-5 h-5 animate-spin\" />\r\n <span>Modification en cours...</span>\r\n </>\r\n ) : (\r\n <span>{t('auth.forceChangePassword.submit', 'Définir mon nouveau mot de passe')}</span>\r\n )}\r\n </button>\r\n </form>\r\n </div>\r\n </div>\r\n </div>\r\n );\r\n}\r\n"],"names":["ForceChangePasswordPage","t","useTranslation","navigate","useNavigate","currentPassword","setCurrentPassword","useState","newPassword","setNewPassword","confirmPassword","setConfirmPassword","showCurrentPassword","setShowCurrentPassword","showNewPassword","setShowNewPassword","loading","setLoading","error","setError","success","setSuccess","passwordErrors","password","errors","isValid","handleSubmit","e","authApi","err","jsxs","jsx","CheckCircle","Lock","AlertTriangle","EyeOff","Eye","req","i","checks","Fragment","Loader2"],"mappings":"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"}
@@ -3,7 +3,7 @@ import { useState as n } from "react";
3
3
  import { useNavigate as q } from "react-router-dom";
4
4
  import { useTranslation as L } from "react-i18next";
5
5
  import { CheckCircle as b, Lock as M, AlertTriangle as T, EyeOff as p, Eye as w, Loader2 as $ } from "lucide-react";
6
- import { a as D } from "./index-0Jhdcj59.js";
6
+ import { a as D } from "./index-Kn_ynW2m.js";
7
7
  function H() {
8
8
  const { t: o } = L(), y = q(), [l, v] = n(""), [s, N] = n(""), [d, k] = n(""), [i, P] = n(!1), [c, C] = n(!1), [m, h] = n(!1), [g, u] = n(null), [A, j] = n(!1), z = ((r) => {
9
9
  const t = [];
@@ -132,4 +132,4 @@ function H() {
132
132
  export {
133
133
  H as ForceChangePasswordPage
134
134
  };
135
- //# sourceMappingURL=ForceChangePasswordPage-ClENqzCH.js.map
135
+ //# sourceMappingURL=ForceChangePasswordPage-DkpGGEn7.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ForceChangePasswordPage-DkpGGEn7.js","sources":["../src/pages/auth/ForceChangePasswordPage.tsx"],"sourcesContent":["import { useState } from 'react';\r\nimport type { ReactElement } from 'react';\r\nimport { useNavigate } from 'react-router-dom';\r\nimport { useTranslation } from 'react-i18next';\r\nimport { Lock, Eye, EyeOff, Loader2, AlertTriangle, CheckCircle } from 'lucide-react';\r\nimport { authApi } from '@/services/api/authApi';\r\n\r\nexport function ForceChangePasswordPage(): ReactElement {\r\n const { t } = useTranslation();\r\n const navigate = useNavigate();\r\n\r\n const [currentPassword, setCurrentPassword] = useState('');\r\n const [newPassword, setNewPassword] = useState('');\r\n const [confirmPassword, setConfirmPassword] = useState('');\r\n const [showCurrentPassword, setShowCurrentPassword] = useState(false);\r\n const [showNewPassword, setShowNewPassword] = useState(false);\r\n const [loading, setLoading] = useState(false);\r\n const [error, setError] = useState<string | null>(null);\r\n const [success, setSuccess] = useState(false);\r\n\r\n const validatePassword = (password: string): string[] => {\r\n const errors: string[] = [];\r\n if (password.length < 8) errors.push('Au moins 8 caractères');\r\n if (!/[A-Z]/.test(password)) errors.push('Au moins une majuscule');\r\n if (!/[a-z]/.test(password)) errors.push('Au moins une minuscule');\r\n if (!/[0-9]/.test(password)) errors.push('Au moins un chiffre');\r\n return errors;\r\n };\r\n\r\n const passwordErrors = validatePassword(newPassword);\r\n const isValid = newPassword === confirmPassword && passwordErrors.length === 0 && currentPassword.length > 0;\r\n\r\n const handleSubmit = async (e: React.FormEvent) => {\r\n e.preventDefault();\r\n if (!isValid) return;\r\n\r\n setLoading(true);\r\n setError(null);\r\n\r\n try {\r\n await authApi.changePassword(currentPassword, newPassword);\r\n setSuccess(true);\r\n setTimeout(() => {\r\n navigate('/');\r\n }, 2000);\r\n } catch (err: unknown) {\r\n if (err instanceof Error) {\r\n setError(err.message);\r\n } else {\r\n setError('Une erreur est survenue');\r\n }\r\n } finally {\r\n setLoading(false);\r\n }\r\n };\r\n\r\n if (success) {\r\n return (\r\n <div className=\"min-h-screen flex items-center justify-center bg-gradient-to-br from-blue-50 to-indigo-100 dark:from-gray-900 dark:to-gray-800 p-4\">\r\n <div className=\"w-full max-w-md bg-white dark:bg-gray-800 rounded-2xl shadow-xl p-8 text-center\">\r\n <div className=\"w-16 h-16 bg-green-100 dark:bg-green-900/30 rounded-full flex items-center justify-center mx-auto mb-4\">\r\n <CheckCircle className=\"w-8 h-8 text-green-600 dark:text-green-400\" />\r\n </div>\r\n <h2 className=\"text-2xl font-bold text-gray-900 dark:text-white mb-2\">\r\n Mot de passe modifié\r\n </h2>\r\n <p className=\"text-gray-600 dark:text-gray-400\">\r\n Vous allez être redirigé vers l'accueil...\r\n </p>\r\n </div>\r\n </div>\r\n );\r\n }\r\n\r\n return (\r\n <div className=\"min-h-screen flex items-center justify-center bg-gradient-to-br from-blue-50 to-indigo-100 dark:from-gray-900 dark:to-gray-800 p-4\">\r\n <div className=\"w-full max-w-md\">\r\n <div className=\"bg-white dark:bg-gray-800 rounded-2xl shadow-xl p-8\">\r\n {/* Header */}\r\n <div className=\"text-center mb-8\">\r\n <div className=\"w-16 h-16 bg-amber-100 dark:bg-amber-900/30 rounded-full flex items-center justify-center mx-auto mb-4\">\r\n <Lock className=\"w-8 h-8 text-amber-600 dark:text-amber-400\" />\r\n </div>\r\n <h1 className=\"text-2xl font-bold text-gray-900 dark:text-white\">\r\n {t('auth.forceChangePassword.title', 'Changement de mot de passe requis')}\r\n </h1>\r\n <p className=\"text-gray-600 dark:text-gray-400 mt-2\">\r\n {t('auth.forceChangePassword.description', 'Pour des raisons de sécurité, vous devez définir un nouveau mot de passe.')}\r\n </p>\r\n </div>\r\n\r\n {/* Error */}\r\n {error && (\r\n <div className=\"mb-6 p-4 rounded-xl bg-red-100 dark:bg-red-900/30 text-red-700 dark:text-red-300 flex items-center gap-2\">\r\n <AlertTriangle className=\"w-5 h-5 flex-shrink-0\" />\r\n <span>{error}</span>\r\n </div>\r\n )}\r\n\r\n {/* Form */}\r\n <form onSubmit={handleSubmit} className=\"space-y-6\">\r\n {/* Current Password */}\r\n <div>\r\n <label className=\"block text-sm font-medium text-gray-700 dark:text-gray-300 mb-1\">\r\n {t('auth.forceChangePassword.currentPassword', 'Mot de passe actuel (temporaire)')}\r\n </label>\r\n <div className=\"relative\">\r\n <input\r\n type={showCurrentPassword ? 'text' : 'password'}\r\n required\r\n value={currentPassword}\r\n onChange={e => setCurrentPassword(e.target.value)}\r\n className=\"w-full px-4 py-3 rounded-xl border border-gray-300 dark:border-gray-600 bg-white dark:bg-gray-700 text-gray-900 dark:text-white focus:outline-none focus:ring-2 focus:ring-blue-500\"\r\n placeholder=\"Entrez le mot de passe fourni par l'administrateur\"\r\n />\r\n <button\r\n type=\"button\"\r\n onClick={() => setShowCurrentPassword(!showCurrentPassword)}\r\n className=\"absolute right-3 top-1/2 -translate-y-1/2 text-gray-500 hover:text-gray-700 dark:hover:text-gray-300\"\r\n >\r\n {showCurrentPassword ? <EyeOff className=\"w-5 h-5\" /> : <Eye className=\"w-5 h-5\" />}\r\n </button>\r\n </div>\r\n </div>\r\n\r\n {/* New Password */}\r\n <div>\r\n <label className=\"block text-sm font-medium text-gray-700 dark:text-gray-300 mb-1\">\r\n {t('auth.forceChangePassword.newPassword', 'Nouveau mot de passe')}\r\n </label>\r\n <div className=\"relative\">\r\n <input\r\n type={showNewPassword ? 'text' : 'password'}\r\n required\r\n value={newPassword}\r\n onChange={e => setNewPassword(e.target.value)}\r\n className=\"w-full px-4 py-3 rounded-xl border border-gray-300 dark:border-gray-600 bg-white dark:bg-gray-700 text-gray-900 dark:text-white focus:outline-none focus:ring-2 focus:ring-blue-500\"\r\n placeholder=\"Choisissez un nouveau mot de passe\"\r\n />\r\n <button\r\n type=\"button\"\r\n onClick={() => setShowNewPassword(!showNewPassword)}\r\n className=\"absolute right-3 top-1/2 -translate-y-1/2 text-gray-500 hover:text-gray-700 dark:hover:text-gray-300\"\r\n >\r\n {showNewPassword ? <EyeOff className=\"w-5 h-5\" /> : <Eye className=\"w-5 h-5\" />}\r\n </button>\r\n </div>\r\n\r\n {/* Password requirements */}\r\n {newPassword && (\r\n <div className=\"mt-2 space-y-1\">\r\n {['Au moins 8 caractères', 'Au moins une majuscule', 'Au moins une minuscule', 'Au moins un chiffre'].map((req, i) => {\r\n const checks = [\r\n newPassword.length >= 8,\r\n /[A-Z]/.test(newPassword),\r\n /[a-z]/.test(newPassword),\r\n /[0-9]/.test(newPassword)\r\n ];\r\n return (\r\n <div key={`pwd-req-${i}`} className={`flex items-center gap-2 text-sm ${checks[i] ? 'text-green-600' : 'text-gray-500'}`}>\r\n {checks[i] ? <CheckCircle className=\"w-4 h-4\" /> : <div className=\"w-4 h-4 rounded-full border border-current\" />}\r\n {req}\r\n </div>\r\n );\r\n })}\r\n </div>\r\n )}\r\n </div>\r\n\r\n {/* Confirm Password */}\r\n <div>\r\n <label className=\"block text-sm font-medium text-gray-700 dark:text-gray-300 mb-1\">\r\n {t('auth.forceChangePassword.confirmPassword', 'Confirmer le nouveau mot de passe')}\r\n </label>\r\n <input\r\n type=\"password\"\r\n required\r\n value={confirmPassword}\r\n onChange={e => setConfirmPassword(e.target.value)}\r\n className={`w-full px-4 py-3 rounded-xl border ${\r\n confirmPassword && confirmPassword !== newPassword\r\n ? 'border-red-500 focus:ring-red-500'\r\n : 'border-gray-300 dark:border-gray-600 focus:ring-blue-500'\r\n } bg-white dark:bg-gray-700 text-gray-900 dark:text-white focus:outline-none focus:ring-2`}\r\n placeholder=\"Confirmez votre nouveau mot de passe\"\r\n />\r\n {confirmPassword && confirmPassword !== newPassword && (\r\n <p className=\"mt-1 text-sm text-red-600\">Les mots de passe ne correspondent pas</p>\r\n )}\r\n </div>\r\n\r\n {/* Submit */}\r\n <button\r\n type=\"submit\"\r\n disabled={!isValid || loading}\r\n className=\"w-full py-3 px-4 rounded-xl bg-blue-600 hover:bg-blue-700 text-white font-medium transition-colors disabled:opacity-50 disabled:cursor-not-allowed flex items-center justify-center gap-2\"\r\n >\r\n {loading ? (\r\n <>\r\n <Loader2 className=\"w-5 h-5 animate-spin\" />\r\n <span>Modification en cours...</span>\r\n </>\r\n ) : (\r\n <span>{t('auth.forceChangePassword.submit', 'Définir mon nouveau mot de passe')}</span>\r\n )}\r\n </button>\r\n </form>\r\n </div>\r\n </div>\r\n </div>\r\n );\r\n}\r\n"],"names":["ForceChangePasswordPage","t","useTranslation","navigate","useNavigate","currentPassword","setCurrentPassword","useState","newPassword","setNewPassword","confirmPassword","setConfirmPassword","showCurrentPassword","setShowCurrentPassword","showNewPassword","setShowNewPassword","loading","setLoading","error","setError","success","setSuccess","passwordErrors","password","errors","isValid","handleSubmit","e","authApi","err","jsxs","jsx","CheckCircle","Lock","AlertTriangle","EyeOff","Eye","req","i","checks","Fragment","Loader2"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),t=require("react"),h=require("react-router-dom"),r=require("lucide-react"),o=require("./index-C6C5XmVj.cjs");function b(){const[s,c]=t.useState(""),[a,i]=t.useState(!1),[n,d]=t.useState(null),[m,x]=t.useState(!1),u=async l=>{l.preventDefault(),d(null),i(!0);try{await o.authApi.forgotPassword(s),x(!0)}catch(g){d(g?.message||"Une erreur est survenue")}finally{i(!1)}};return e.jsx("div",{className:"min-h-screen flex items-center justify-center bg-gray-50 dark:bg-gray-900 p-8",children:e.jsxs("div",{className:"w-full max-w-md",children:[e.jsx("div",{className:"flex justify-end mb-8",children:e.jsx(o.ThemeSwitcher,{})}),e.jsxs("div",{className:"bg-white dark:bg-gray-800 rounded-2xl shadow-xl p-8",children:[m?e.jsxs("div",{className:"text-center",children:[e.jsx("div",{className:"w-16 h-16 bg-green-100 dark:bg-green-900/30 rounded-full flex items-center justify-center mx-auto mb-4",children:e.jsx(r.CheckCircle2,{className:"w-10 h-10 text-green-600 dark:text-green-400"})}),e.jsx("h2",{className:"text-xl font-semibold text-gray-900 dark:text-white mb-2",children:"Email envoyé !"}),e.jsxs("p",{className:"text-gray-600 dark:text-gray-400 mb-6",children:["Si un compte existe avec l'adresse ",e.jsx("strong",{children:s}),", vous recevrez un lien de réinitialisation."]}),e.jsx("p",{className:"text-sm text-gray-500 dark:text-gray-400",children:"N'oubliez pas de vérifier vos spams."})]}):e.jsxs(e.Fragment,{children:[e.jsxs("div",{className:"text-center mb-8",children:[e.jsx("div",{className:"w-16 h-16 bg-blue-100 dark:bg-blue-900/30 rounded-full flex items-center justify-center mx-auto mb-4",children:e.jsx(r.Mail,{className:"w-8 h-8 text-blue-600 dark:text-blue-400"})}),e.jsx("h2",{className:"text-2xl font-bold text-gray-900 dark:text-white mb-2",children:"Mot de passe oublié ?"}),e.jsx("p",{className:"text-gray-600 dark:text-gray-400",children:"Entrez votre email et nous vous enverrons un lien pour réinitialiser votre mot de passe."})]}),n&&e.jsxs("div",{className:"mb-6 p-4 bg-red-500/10 border border-red-500/20 rounded-lg flex items-start gap-3",children:[e.jsx(r.AlertCircle,{className:"w-5 h-5 text-red-500 flex-shrink-0 mt-0.5"}),e.jsx("p",{className:"text-sm text-red-500",children:n})]}),e.jsxs("form",{onSubmit:u,className:"space-y-4",children:[e.jsxs("div",{children:[e.jsx("label",{htmlFor:"email",className:"block text-sm font-medium text-gray-700 dark:text-gray-300 mb-2",children:"Adresse email"}),e.jsxs("div",{className:"relative",children:[e.jsx("div",{className:"absolute inset-y-0 left-0 pl-3 flex items-center pointer-events-none",children:e.jsx(r.Mail,{className:"h-5 w-5 text-gray-400"})}),e.jsx("input",{id:"email",type:"email",value:s,onChange:l=>c(l.target.value),className:"block w-full pl-10 pr-3 py-2.5 border border-gray-300 dark:border-gray-600 rounded-lg bg-white dark:bg-gray-700 text-gray-900 dark:text-white placeholder-gray-400 focus:ring-2 focus:ring-blue-500 focus:border-transparent",placeholder:"vous@exemple.com",required:!0,autoComplete:"email",disabled:a})]})]}),e.jsx("button",{type:"submit",disabled:a,className:"w-full flex items-center justify-center gap-2 px-4 py-3 bg-gradient-to-r from-blue-600 to-purple-600 text-white rounded-lg font-medium hover:from-blue-700 hover:to-purple-700 disabled:opacity-50 transition-all",children:a?e.jsxs(e.Fragment,{children:[e.jsx(r.Loader2,{className:"h-5 w-5 animate-spin"}),"Envoi en cours..."]}):"Envoyer le lien"})]})]}),e.jsx("div",{className:"mt-6 pt-6 border-t border-gray-200 dark:border-gray-700",children:e.jsxs(h.Link,{to:"/login",className:"flex items-center justify-center gap-2 text-sm text-gray-600 dark:text-gray-400 hover:text-blue-600 dark:hover:text-blue-400 transition-colors",children:[e.jsx(r.ArrowLeft,{className:"w-4 h-4"}),"Retour à la connexion"]})})]})]})})}exports.ForgotPasswordPage=b;
2
- //# sourceMappingURL=ForgotPasswordPage--Wl0Vxbv.cjs.map
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),t=require("react"),h=require("react-router-dom"),r=require("lucide-react"),o=require("./index-BfMaHuWh.cjs");function b(){const[s,c]=t.useState(""),[a,i]=t.useState(!1),[n,d]=t.useState(null),[m,x]=t.useState(!1),u=async l=>{l.preventDefault(),d(null),i(!0);try{await o.authApi.forgotPassword(s),x(!0)}catch(g){d(g?.message||"Une erreur est survenue")}finally{i(!1)}};return e.jsx("div",{className:"min-h-screen flex items-center justify-center bg-gray-50 dark:bg-gray-900 p-8",children:e.jsxs("div",{className:"w-full max-w-md",children:[e.jsx("div",{className:"flex justify-end mb-8",children:e.jsx(o.ThemeSwitcher,{})}),e.jsxs("div",{className:"bg-white dark:bg-gray-800 rounded-2xl shadow-xl p-8",children:[m?e.jsxs("div",{className:"text-center",children:[e.jsx("div",{className:"w-16 h-16 bg-green-100 dark:bg-green-900/30 rounded-full flex items-center justify-center mx-auto mb-4",children:e.jsx(r.CheckCircle2,{className:"w-10 h-10 text-green-600 dark:text-green-400"})}),e.jsx("h2",{className:"text-xl font-semibold text-gray-900 dark:text-white mb-2",children:"Email envoyé !"}),e.jsxs("p",{className:"text-gray-600 dark:text-gray-400 mb-6",children:["Si un compte existe avec l'adresse ",e.jsx("strong",{children:s}),", vous recevrez un lien de réinitialisation."]}),e.jsx("p",{className:"text-sm text-gray-500 dark:text-gray-400",children:"N'oubliez pas de vérifier vos spams."})]}):e.jsxs(e.Fragment,{children:[e.jsxs("div",{className:"text-center mb-8",children:[e.jsx("div",{className:"w-16 h-16 bg-blue-100 dark:bg-blue-900/30 rounded-full flex items-center justify-center mx-auto mb-4",children:e.jsx(r.Mail,{className:"w-8 h-8 text-blue-600 dark:text-blue-400"})}),e.jsx("h2",{className:"text-2xl font-bold text-gray-900 dark:text-white mb-2",children:"Mot de passe oublié ?"}),e.jsx("p",{className:"text-gray-600 dark:text-gray-400",children:"Entrez votre email et nous vous enverrons un lien pour réinitialiser votre mot de passe."})]}),n&&e.jsxs("div",{className:"mb-6 p-4 bg-red-500/10 border border-red-500/20 rounded-lg flex items-start gap-3",children:[e.jsx(r.AlertCircle,{className:"w-5 h-5 text-red-500 flex-shrink-0 mt-0.5"}),e.jsx("p",{className:"text-sm text-red-500",children:n})]}),e.jsxs("form",{onSubmit:u,className:"space-y-4",children:[e.jsxs("div",{children:[e.jsx("label",{htmlFor:"email",className:"block text-sm font-medium text-gray-700 dark:text-gray-300 mb-2",children:"Adresse email"}),e.jsxs("div",{className:"relative",children:[e.jsx("div",{className:"absolute inset-y-0 left-0 pl-3 flex items-center pointer-events-none",children:e.jsx(r.Mail,{className:"h-5 w-5 text-gray-400"})}),e.jsx("input",{id:"email",type:"email",value:s,onChange:l=>c(l.target.value),className:"block w-full pl-10 pr-3 py-2.5 border border-gray-300 dark:border-gray-600 rounded-lg bg-white dark:bg-gray-700 text-gray-900 dark:text-white placeholder-gray-400 focus:ring-2 focus:ring-blue-500 focus:border-transparent",placeholder:"vous@exemple.com",required:!0,autoComplete:"email",disabled:a})]})]}),e.jsx("button",{type:"submit",disabled:a,className:"w-full flex items-center justify-center gap-2 px-4 py-3 bg-gradient-to-r from-blue-600 to-purple-600 text-white rounded-lg font-medium hover:from-blue-700 hover:to-purple-700 disabled:opacity-50 transition-all",children:a?e.jsxs(e.Fragment,{children:[e.jsx(r.Loader2,{className:"h-5 w-5 animate-spin"}),"Envoi en cours..."]}):"Envoyer le lien"})]})]}),e.jsx("div",{className:"mt-6 pt-6 border-t border-gray-200 dark:border-gray-700",children:e.jsxs(h.Link,{to:"/login",className:"flex items-center justify-center gap-2 text-sm text-gray-600 dark:text-gray-400 hover:text-blue-600 dark:hover:text-blue-400 transition-colors",children:[e.jsx(r.ArrowLeft,{className:"w-4 h-4"}),"Retour à la connexion"]})})]})]})})}exports.ForgotPasswordPage=b;
2
+ //# sourceMappingURL=ForgotPasswordPage-C7mySa8O.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ForgotPasswordPage-C7mySa8O.cjs","sources":["../src/pages/auth/ForgotPasswordPage.tsx"],"sourcesContent":["import { useState } from 'react';\r\nimport type { ReactElement } from 'react';\r\nimport { Link } from 'react-router-dom';\r\nimport { Mail, Loader2, ArrowLeft, CheckCircle2, AlertCircle } from 'lucide-react';\r\nimport { ThemeSwitcher } from '@/components/ui/ThemeSwitcher';\r\nimport { authApi } from '@/services/api/authApi';\r\n\r\nexport function ForgotPasswordPage(): ReactElement {\r\n const [email, setEmail] = useState('');\r\n const [isLoading, setIsLoading] = useState(false);\r\n const [error, setError] = useState<string | null>(null);\r\n const [success, setSuccess] = useState(false);\r\n\r\n const handleSubmit = async (e: React.FormEvent) => {\r\n e.preventDefault();\r\n setError(null);\r\n setIsLoading(true);\r\n\r\n try {\r\n await authApi.forgotPassword(email);\r\n setSuccess(true);\r\n } catch (err) {\r\n const error = err as { message?: string };\r\n setError(error?.message || 'Une erreur est survenue');\r\n } finally {\r\n setIsLoading(false);\r\n }\r\n };\r\n\r\n return (\r\n <div className=\"min-h-screen flex items-center justify-center bg-gray-50 dark:bg-gray-900 p-8\">\r\n <div className=\"w-full max-w-md\">\r\n <div className=\"flex justify-end mb-8\">\r\n <ThemeSwitcher />\r\n </div>\r\n\r\n <div className=\"bg-white dark:bg-gray-800 rounded-2xl shadow-xl p-8\">\r\n {!success ? (\r\n <>\r\n <div className=\"text-center mb-8\">\r\n <div className=\"w-16 h-16 bg-blue-100 dark:bg-blue-900/30 rounded-full flex items-center justify-center mx-auto mb-4\">\r\n <Mail className=\"w-8 h-8 text-blue-600 dark:text-blue-400\" />\r\n </div>\r\n <h2 className=\"text-2xl font-bold text-gray-900 dark:text-white mb-2\">\r\n Mot de passe oublié ?\r\n </h2>\r\n <p className=\"text-gray-600 dark:text-gray-400\">\r\n Entrez votre email et nous vous enverrons un lien pour réinitialiser votre mot de passe.\r\n </p>\r\n </div>\r\n\r\n {error && (\r\n <div className=\"mb-6 p-4 bg-red-500/10 border border-red-500/20 rounded-lg flex items-start gap-3\">\r\n <AlertCircle className=\"w-5 h-5 text-red-500 flex-shrink-0 mt-0.5\" />\r\n <p className=\"text-sm text-red-500\">{error}</p>\r\n </div>\r\n )}\r\n\r\n <form onSubmit={handleSubmit} className=\"space-y-4\">\r\n <div>\r\n <label htmlFor=\"email\" className=\"block text-sm font-medium text-gray-700 dark:text-gray-300 mb-2\">\r\n Adresse email\r\n </label>\r\n <div className=\"relative\">\r\n <div className=\"absolute inset-y-0 left-0 pl-3 flex items-center pointer-events-none\">\r\n <Mail className=\"h-5 w-5 text-gray-400\" />\r\n </div>\r\n <input\r\n id=\"email\"\r\n type=\"email\"\r\n value={email}\r\n onChange={(e) => setEmail(e.target.value)}\r\n className=\"block w-full pl-10 pr-3 py-2.5 border border-gray-300 dark:border-gray-600 rounded-lg bg-white dark:bg-gray-700 text-gray-900 dark:text-white placeholder-gray-400 focus:ring-2 focus:ring-blue-500 focus:border-transparent\"\r\n placeholder=\"vous@exemple.com\"\r\n required\r\n autoComplete=\"email\"\r\n disabled={isLoading}\r\n />\r\n </div>\r\n </div>\r\n\r\n <button\r\n type=\"submit\"\r\n disabled={isLoading}\r\n className=\"w-full flex items-center justify-center gap-2 px-4 py-3 bg-gradient-to-r from-blue-600 to-purple-600 text-white rounded-lg font-medium hover:from-blue-700 hover:to-purple-700 disabled:opacity-50 transition-all\"\r\n >\r\n {isLoading ? (\r\n <>\r\n <Loader2 className=\"h-5 w-5 animate-spin\" />\r\n Envoi en cours...\r\n </>\r\n ) : (\r\n 'Envoyer le lien'\r\n )}\r\n </button>\r\n </form>\r\n </>\r\n ) : (\r\n <div className=\"text-center\">\r\n <div className=\"w-16 h-16 bg-green-100 dark:bg-green-900/30 rounded-full flex items-center justify-center mx-auto mb-4\">\r\n <CheckCircle2 className=\"w-10 h-10 text-green-600 dark:text-green-400\" />\r\n </div>\r\n <h2 className=\"text-xl font-semibold text-gray-900 dark:text-white mb-2\">\r\n Email envoyé !\r\n </h2>\r\n <p className=\"text-gray-600 dark:text-gray-400 mb-6\">\r\n Si un compte existe avec l'adresse <strong>{email}</strong>, vous recevrez un lien de réinitialisation.\r\n </p>\r\n <p className=\"text-sm text-gray-500 dark:text-gray-400\">\r\n N'oubliez pas de vérifier vos spams.\r\n </p>\r\n </div>\r\n )}\r\n\r\n <div className=\"mt-6 pt-6 border-t border-gray-200 dark:border-gray-700\">\r\n <Link\r\n to=\"/login\"\r\n className=\"flex items-center justify-center gap-2 text-sm text-gray-600 dark:text-gray-400 hover:text-blue-600 dark:hover:text-blue-400 transition-colors\"\r\n >\r\n <ArrowLeft className=\"w-4 h-4\" />\r\n Retour à la connexion\r\n </Link>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n );\r\n}\r\n"],"names":["ForgotPasswordPage","email","setEmail","useState","isLoading","setIsLoading","error","setError","success","setSuccess","handleSubmit","e","authApi","err","jsxs","jsx","ThemeSwitcher","CheckCircle2","Fragment","Mail","AlertCircle","Loader2","Link","ArrowLeft"],"mappings":"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"}
@@ -2,7 +2,7 @@ import { jsx as e, jsxs as r, Fragment as o } from "react/jsx-runtime";
2
2
  import { useState as t } from "react";
3
3
  import { Link as x } from "react-router-dom";
4
4
  import { Mail as c, AlertCircle as b, Loader2 as p, CheckCircle2 as f, ArrowLeft as y } from "lucide-react";
5
- import { T as v, a as N } from "./index-0Jhdcj59.js";
5
+ import { T as v, a as N } from "./index-Kn_ynW2m.js";
6
6
  function A() {
7
7
  const [a, m] = t(""), [l, i] = t(!1), [n, d] = t(null), [u, h] = t(!1);
8
8
  return /* @__PURE__ */ e("div", { className: "min-h-screen flex items-center justify-center bg-gray-50 dark:bg-gray-900 p-8", children: /* @__PURE__ */ r("div", { className: "w-full max-w-md", children: [
@@ -88,4 +88,4 @@ function A() {
88
88
  export {
89
89
  A as ForgotPasswordPage
90
90
  };
91
- //# sourceMappingURL=ForgotPasswordPage-BEgvV5f-.js.map
91
+ //# sourceMappingURL=ForgotPasswordPage-Dmi6wpMM.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ForgotPasswordPage-Dmi6wpMM.js","sources":["../src/pages/auth/ForgotPasswordPage.tsx"],"sourcesContent":["import { useState } from 'react';\r\nimport type { ReactElement } from 'react';\r\nimport { Link } from 'react-router-dom';\r\nimport { Mail, Loader2, ArrowLeft, CheckCircle2, AlertCircle } from 'lucide-react';\r\nimport { ThemeSwitcher } from '@/components/ui/ThemeSwitcher';\r\nimport { authApi } from '@/services/api/authApi';\r\n\r\nexport function ForgotPasswordPage(): ReactElement {\r\n const [email, setEmail] = useState('');\r\n const [isLoading, setIsLoading] = useState(false);\r\n const [error, setError] = useState<string | null>(null);\r\n const [success, setSuccess] = useState(false);\r\n\r\n const handleSubmit = async (e: React.FormEvent) => {\r\n e.preventDefault();\r\n setError(null);\r\n setIsLoading(true);\r\n\r\n try {\r\n await authApi.forgotPassword(email);\r\n setSuccess(true);\r\n } catch (err) {\r\n const error = err as { message?: string };\r\n setError(error?.message || 'Une erreur est survenue');\r\n } finally {\r\n setIsLoading(false);\r\n }\r\n };\r\n\r\n return (\r\n <div className=\"min-h-screen flex items-center justify-center bg-gray-50 dark:bg-gray-900 p-8\">\r\n <div className=\"w-full max-w-md\">\r\n <div className=\"flex justify-end mb-8\">\r\n <ThemeSwitcher />\r\n </div>\r\n\r\n <div className=\"bg-white dark:bg-gray-800 rounded-2xl shadow-xl p-8\">\r\n {!success ? (\r\n <>\r\n <div className=\"text-center mb-8\">\r\n <div className=\"w-16 h-16 bg-blue-100 dark:bg-blue-900/30 rounded-full flex items-center justify-center mx-auto mb-4\">\r\n <Mail className=\"w-8 h-8 text-blue-600 dark:text-blue-400\" />\r\n </div>\r\n <h2 className=\"text-2xl font-bold text-gray-900 dark:text-white mb-2\">\r\n Mot de passe oublié ?\r\n </h2>\r\n <p className=\"text-gray-600 dark:text-gray-400\">\r\n Entrez votre email et nous vous enverrons un lien pour réinitialiser votre mot de passe.\r\n </p>\r\n </div>\r\n\r\n {error && (\r\n <div className=\"mb-6 p-4 bg-red-500/10 border border-red-500/20 rounded-lg flex items-start gap-3\">\r\n <AlertCircle className=\"w-5 h-5 text-red-500 flex-shrink-0 mt-0.5\" />\r\n <p className=\"text-sm text-red-500\">{error}</p>\r\n </div>\r\n )}\r\n\r\n <form onSubmit={handleSubmit} className=\"space-y-4\">\r\n <div>\r\n <label htmlFor=\"email\" className=\"block text-sm font-medium text-gray-700 dark:text-gray-300 mb-2\">\r\n Adresse email\r\n </label>\r\n <div className=\"relative\">\r\n <div className=\"absolute inset-y-0 left-0 pl-3 flex items-center pointer-events-none\">\r\n <Mail className=\"h-5 w-5 text-gray-400\" />\r\n </div>\r\n <input\r\n id=\"email\"\r\n type=\"email\"\r\n value={email}\r\n onChange={(e) => setEmail(e.target.value)}\r\n className=\"block w-full pl-10 pr-3 py-2.5 border border-gray-300 dark:border-gray-600 rounded-lg bg-white dark:bg-gray-700 text-gray-900 dark:text-white placeholder-gray-400 focus:ring-2 focus:ring-blue-500 focus:border-transparent\"\r\n placeholder=\"vous@exemple.com\"\r\n required\r\n autoComplete=\"email\"\r\n disabled={isLoading}\r\n />\r\n </div>\r\n </div>\r\n\r\n <button\r\n type=\"submit\"\r\n disabled={isLoading}\r\n className=\"w-full flex items-center justify-center gap-2 px-4 py-3 bg-gradient-to-r from-blue-600 to-purple-600 text-white rounded-lg font-medium hover:from-blue-700 hover:to-purple-700 disabled:opacity-50 transition-all\"\r\n >\r\n {isLoading ? (\r\n <>\r\n <Loader2 className=\"h-5 w-5 animate-spin\" />\r\n Envoi en cours...\r\n </>\r\n ) : (\r\n 'Envoyer le lien'\r\n )}\r\n </button>\r\n </form>\r\n </>\r\n ) : (\r\n <div className=\"text-center\">\r\n <div className=\"w-16 h-16 bg-green-100 dark:bg-green-900/30 rounded-full flex items-center justify-center mx-auto mb-4\">\r\n <CheckCircle2 className=\"w-10 h-10 text-green-600 dark:text-green-400\" />\r\n </div>\r\n <h2 className=\"text-xl font-semibold text-gray-900 dark:text-white mb-2\">\r\n Email envoyé !\r\n </h2>\r\n <p className=\"text-gray-600 dark:text-gray-400 mb-6\">\r\n Si un compte existe avec l'adresse <strong>{email}</strong>, vous recevrez un lien de réinitialisation.\r\n </p>\r\n <p className=\"text-sm text-gray-500 dark:text-gray-400\">\r\n N'oubliez pas de vérifier vos spams.\r\n </p>\r\n </div>\r\n )}\r\n\r\n <div className=\"mt-6 pt-6 border-t border-gray-200 dark:border-gray-700\">\r\n <Link\r\n to=\"/login\"\r\n className=\"flex items-center justify-center gap-2 text-sm text-gray-600 dark:text-gray-400 hover:text-blue-600 dark:hover:text-blue-400 transition-colors\"\r\n >\r\n <ArrowLeft className=\"w-4 h-4\" />\r\n Retour à la connexion\r\n </Link>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n );\r\n}\r\n"],"names":["ForgotPasswordPage","email","setEmail","useState","isLoading","setIsLoading","error","setError","success","setSuccess","jsxs","jsx","ThemeSwitcher","CheckCircle2","Fragment","Mail","AlertCircle","e","authApi","err","Loader2","Link","ArrowLeft"],"mappings":"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"}