@vertesia/ui 1.5.0-dev.20260910.052912Z → 1.6.0-dev.20260912.110338Z

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 (389) hide show
  1. package/README.md +125 -0
  2. package/lib/boot/branding.d.ts +58 -0
  3. package/lib/boot/branding.d.ts.map +1 -0
  4. package/lib/boot/branding.js +62 -0
  5. package/lib/boot/branding.js.map +1 -0
  6. package/lib/boot/index.d.ts +27 -0
  7. package/lib/boot/index.d.ts.map +1 -0
  8. package/lib/boot/index.js +325 -0
  9. package/lib/boot/index.js.map +1 -0
  10. package/lib/boot/vite.d.ts +63 -0
  11. package/lib/boot/vite.d.ts.map +1 -0
  12. package/lib/boot/vite.js +108 -0
  13. package/lib/boot/vite.js.map +1 -0
  14. package/lib/core/components/Link.js +1 -1
  15. package/lib/core/components/Link.js.map +1 -1
  16. package/lib/core/components/Spinner.js +1 -1
  17. package/lib/core/components/Spinner.js.map +1 -1
  18. package/lib/core/components/TagsInput.js +7 -7
  19. package/lib/core/components/TagsInput.js.map +1 -1
  20. package/lib/core/components/shadcn/badge.js +1 -1
  21. package/lib/core/components/shadcn/badge.js.map +1 -1
  22. package/lib/core/components/shadcn/button.d.ts.map +1 -1
  23. package/lib/core/components/shadcn/button.js +3 -4
  24. package/lib/core/components/shadcn/button.js.map +1 -1
  25. package/lib/core/components/shadcn/filters/comboBox/DateCombobox.js +2 -2
  26. package/lib/core/components/shadcn/filters/comboBox/DateCombobox.js.map +1 -1
  27. package/lib/core/components/shadcn/filters/comboBox/SelectCombobox.js +1 -1
  28. package/lib/core/components/shadcn/filters/comboBox/SelectCombobox.js.map +1 -1
  29. package/lib/core/components/shadcn/filters/comboBox/StringListCombobox.js +1 -1
  30. package/lib/core/components/shadcn/filters/comboBox/StringListCombobox.js.map +1 -1
  31. package/lib/core/components/shadcn/filters/comboBox/TextCombobox.js +1 -1
  32. package/lib/core/components/shadcn/filters/comboBox/TextCombobox.js.map +1 -1
  33. package/lib/core/components/shadcn/filters/filter/dateFilter.js +1 -1
  34. package/lib/core/components/shadcn/filters/filter/dateFilter.js.map +1 -1
  35. package/lib/core/components/shadcn/filters/filter-styles.d.ts +1 -1
  36. package/lib/core/components/shadcn/filters/filter-styles.d.ts.map +1 -1
  37. package/lib/core/components/shadcn/filters/filter-styles.js +4 -4
  38. package/lib/core/components/shadcn/filters/filters.js +1 -1
  39. package/lib/core/components/shadcn/filters/filters.js.map +1 -1
  40. package/lib/core/components/shadcn/label.js +1 -1
  41. package/lib/core/components/shadcn/label.js.map +1 -1
  42. package/lib/core/components/shadcn/overflowTabs.js +2 -2
  43. package/lib/core/components/shadcn/overflowTabs.js.map +1 -1
  44. package/lib/core/components/shadcn/tabs.js +1 -1
  45. package/lib/core/components/shadcn/tabs.js.map +1 -1
  46. package/lib/env/index.d.ts +28 -1
  47. package/lib/env/index.d.ts.map +1 -1
  48. package/lib/env/index.js +51 -3
  49. package/lib/env/index.js.map +1 -1
  50. package/lib/features/activity-doc/ActivityDoc.js +1 -1
  51. package/lib/features/activity-doc/ActivityDoc.js.map +1 -1
  52. package/lib/features/agent/PayloadBuilder.d.ts +4 -0
  53. package/lib/features/agent/PayloadBuilder.d.ts.map +1 -1
  54. package/lib/features/agent/PayloadBuilder.js.map +1 -1
  55. package/lib/features/agent/chat/AgentRunFeedback.d.ts +59 -0
  56. package/lib/features/agent/chat/AgentRunFeedback.d.ts.map +1 -0
  57. package/lib/features/agent/chat/AgentRunFeedback.js +286 -0
  58. package/lib/features/agent/chat/AgentRunFeedback.js.map +1 -0
  59. package/lib/features/agent/chat/AskUserWidget.d.ts +1 -0
  60. package/lib/features/agent/chat/AskUserWidget.d.ts.map +1 -1
  61. package/lib/features/agent/chat/AskUserWidget.js +15 -4
  62. package/lib/features/agent/chat/AskUserWidget.js.map +1 -1
  63. package/lib/features/agent/chat/ModernAgentConversation.d.ts.map +1 -1
  64. package/lib/features/agent/chat/ModernAgentConversation.js +3 -2
  65. package/lib/features/agent/chat/ModernAgentConversation.js.map +1 -1
  66. package/lib/features/agent/chat/ModernAgentOutput/AllMessagesMixed.d.ts +3 -1
  67. package/lib/features/agent/chat/ModernAgentOutput/AllMessagesMixed.d.ts.map +1 -1
  68. package/lib/features/agent/chat/ModernAgentOutput/AllMessagesMixed.js +16 -13
  69. package/lib/features/agent/chat/ModernAgentOutput/AllMessagesMixed.js.map +1 -1
  70. package/lib/features/agent/chat/ModernAgentOutput/Header.d.ts.map +1 -1
  71. package/lib/features/agent/chat/ModernAgentOutput/Header.js.map +1 -1
  72. package/lib/features/agent/chat/ModernAgentOutput/MessageItem.d.ts +3 -1
  73. package/lib/features/agent/chat/ModernAgentOutput/MessageItem.d.ts.map +1 -1
  74. package/lib/features/agent/chat/ModernAgentOutput/MessageItem.js +30 -8
  75. package/lib/features/agent/chat/ModernAgentOutput/MessageItem.js.map +1 -1
  76. package/lib/features/agent/chat/ModernAgentOutput/SummaryConversation.d.ts.map +1 -1
  77. package/lib/features/agent/chat/ModernAgentOutput/SummaryConversation.js +2 -0
  78. package/lib/features/agent/chat/ModernAgentOutput/SummaryConversation.js.map +1 -1
  79. package/lib/features/agent/chat/index.d.ts +1 -0
  80. package/lib/features/agent/chat/index.d.ts.map +1 -1
  81. package/lib/features/agent/chat/index.js +1 -0
  82. package/lib/features/agent/chat/index.js.map +1 -1
  83. package/lib/features/facets/AgentRunnerFacetsNav.d.ts +8 -0
  84. package/lib/features/facets/AgentRunnerFacetsNav.d.ts.map +1 -1
  85. package/lib/features/facets/AgentRunnerFacetsNav.js +12 -0
  86. package/lib/features/facets/AgentRunnerFacetsNav.js.map +1 -1
  87. package/lib/features/layout/GenericPageNavHeader.js +1 -1
  88. package/lib/features/layout/GenericPageNavHeader.js.map +1 -1
  89. package/lib/features/magic-pdf/AnnotatedImageSlider.js +1 -1
  90. package/lib/features/magic-pdf/AnnotatedImageSlider.js.map +1 -1
  91. package/lib/features/magic-pdf/GroundedExtractionView.js +3 -3
  92. package/lib/features/magic-pdf/GroundedExtractionView.js.map +1 -1
  93. package/lib/features/permissions/UserPermissionsProvider.d.ts +15 -1
  94. package/lib/features/permissions/UserPermissionsProvider.d.ts.map +1 -1
  95. package/lib/features/permissions/UserPermissionsProvider.js +20 -12
  96. package/lib/features/permissions/UserPermissionsProvider.js.map +1 -1
  97. package/lib/features/store/objects/DocumentPreviewPanel.js +5 -5
  98. package/lib/features/store/objects/DocumentPreviewPanel.js.map +1 -1
  99. package/lib/features/store/objects/components/DocumentInput.js +1 -1
  100. package/lib/features/store/objects/components/DocumentInput.js.map +1 -1
  101. package/lib/features/store/objects/selection/SelectionActions.js +1 -1
  102. package/lib/features/store/objects/selection/SelectionActions.js.map +1 -1
  103. package/lib/features/store/objects/upload/DocumentUploadModal.js +1 -1
  104. package/lib/features/store/objects/upload/DocumentUploadModal.js.map +1 -1
  105. package/lib/features/store/types/TypeRegistry.d.ts +130 -0
  106. package/lib/features/store/types/TypeRegistry.d.ts.map +1 -1
  107. package/lib/features/store/types/search/ObjectTypeSearchContext.d.ts +130 -0
  108. package/lib/features/store/types/search/ObjectTypeSearchContext.d.ts.map +1 -1
  109. package/lib/features/user/UserInfo.js +1 -1
  110. package/lib/features/user/UserInfo.js.map +1 -1
  111. package/lib/i18n/index.d.ts +5 -4
  112. package/lib/i18n/index.d.ts.map +1 -1
  113. package/lib/i18n/index.js +16 -2
  114. package/lib/i18n/index.js.map +1 -1
  115. package/lib/i18n/locales/ar.json +30 -0
  116. package/lib/i18n/locales/de.json +30 -0
  117. package/lib/i18n/locales/en.json +30 -0
  118. package/lib/i18n/locales/es.json +30 -0
  119. package/lib/i18n/locales/fr.json +30 -0
  120. package/lib/i18n/locales/it.json +30 -0
  121. package/lib/i18n/locales/ja.json +30 -0
  122. package/lib/i18n/locales/ko.json +30 -0
  123. package/lib/i18n/locales/pt.json +30 -0
  124. package/lib/i18n/locales/ru.json +30 -0
  125. package/lib/i18n/locales/tr.json +30 -0
  126. package/lib/i18n/locales/zh-TW.json +30 -0
  127. package/lib/i18n/locales/zh.json +30 -0
  128. package/lib/layout/ErrorPage.js +1 -1
  129. package/lib/layout/ErrorPage.js.map +1 -1
  130. package/lib/layout/Navbar.d.ts.map +1 -1
  131. package/lib/layout/Navbar.js +3 -2
  132. package/lib/layout/Navbar.js.map +1 -1
  133. package/lib/router/RouteComponent.d.ts.map +1 -1
  134. package/lib/router/RouteComponent.js +15 -12
  135. package/lib/router/RouteComponent.js.map +1 -1
  136. package/lib/session/UserSession.d.ts.map +1 -1
  137. package/lib/session/UserSession.js +6 -3
  138. package/lib/session/UserSession.js.map +1 -1
  139. package/lib/session/UserSessionProvider.d.ts +2 -1
  140. package/lib/session/UserSessionProvider.d.ts.map +1 -1
  141. package/lib/session/UserSessionProvider.js +10 -1
  142. package/lib/session/UserSessionProvider.js.map +1 -1
  143. package/lib/session/auth/composable.d.ts.map +1 -1
  144. package/lib/session/auth/composable.js +88 -3
  145. package/lib/session/auth/composable.js.map +1 -1
  146. package/lib/session/auth/domainRouting.d.ts +22 -12
  147. package/lib/session/auth/domainRouting.d.ts.map +1 -1
  148. package/lib/session/auth/domainRouting.js +35 -21
  149. package/lib/session/auth/domainRouting.js.map +1 -1
  150. package/lib/session/auth/useAuthState.d.ts +9 -4
  151. package/lib/session/auth/useAuthState.d.ts.map +1 -1
  152. package/lib/session/auth/useAuthState.js +9 -4
  153. package/lib/session/auth/useAuthState.js.map +1 -1
  154. package/lib/session/index.d.ts.map +1 -1
  155. package/lib/session/index.js +3 -1
  156. package/lib/session/index.js.map +1 -1
  157. package/lib/shell/AuthScreenPreview.d.ts +12 -0
  158. package/lib/shell/AuthScreenPreview.d.ts.map +1 -0
  159. package/lib/shell/AuthScreenPreview.js +140 -0
  160. package/lib/shell/AuthScreenPreview.js.map +1 -0
  161. package/lib/shell/BrandedAuthScreens.d.ts +19 -0
  162. package/lib/shell/BrandedAuthScreens.d.ts.map +1 -0
  163. package/lib/shell/BrandedAuthScreens.js +64 -0
  164. package/lib/shell/BrandedAuthScreens.js.map +1 -0
  165. package/lib/shell/SplashScreen.d.ts +13 -2
  166. package/lib/shell/SplashScreen.d.ts.map +1 -1
  167. package/lib/shell/SplashScreen.js +21 -20
  168. package/lib/shell/SplashScreen.js.map +1 -1
  169. package/lib/shell/VertesiaShell.d.ts +15 -4
  170. package/lib/shell/VertesiaShell.d.ts.map +1 -1
  171. package/lib/shell/VertesiaShell.js +8 -3
  172. package/lib/shell/VertesiaShell.js.map +1 -1
  173. package/lib/shell/apps/StandaloneApp.js +5 -1
  174. package/lib/shell/apps/StandaloneApp.js.map +1 -1
  175. package/lib/shell/index.d.ts +6 -0
  176. package/lib/shell/index.d.ts.map +1 -1
  177. package/lib/shell/index.js +5 -0
  178. package/lib/shell/index.js.map +1 -1
  179. package/lib/shell/login/SignInFlow.d.ts +68 -0
  180. package/lib/shell/login/SignInFlow.d.ts.map +1 -0
  181. package/lib/shell/login/SignInFlow.js +108 -0
  182. package/lib/shell/login/SignInFlow.js.map +1 -0
  183. package/lib/shell/login/SignInPageShell.d.ts +13 -0
  184. package/lib/shell/login/SignInPageShell.d.ts.map +1 -0
  185. package/lib/shell/login/SignInPageShell.js +14 -0
  186. package/lib/shell/login/SignInPageShell.js.map +1 -0
  187. package/lib/shell/login/SignInPrimitives.d.ts +3 -3
  188. package/lib/shell/login/SignInPrimitives.d.ts.map +1 -1
  189. package/lib/shell/login/SignInPrimitives.js +13 -11
  190. package/lib/shell/login/SignInPrimitives.js.map +1 -1
  191. package/lib/shell/login/SignInRestrictedEnvStep.d.ts +5 -0
  192. package/lib/shell/login/SignInRestrictedEnvStep.d.ts.map +1 -1
  193. package/lib/shell/login/SignInRestrictedEnvStep.js +8 -4
  194. package/lib/shell/login/SignInRestrictedEnvStep.js.map +1 -1
  195. package/lib/shell/login/SigninScreen.d.ts +38 -3
  196. package/lib/shell/login/SigninScreen.d.ts.map +1 -1
  197. package/lib/shell/login/SigninScreen.js +33 -86
  198. package/lib/shell/login/SigninScreen.js.map +1 -1
  199. package/lib/shell/login/SignupForm.d.ts +3 -1
  200. package/lib/shell/login/SignupForm.d.ts.map +1 -1
  201. package/lib/shell/login/SignupForm.js +7 -3
  202. package/lib/shell/login/SignupForm.js.map +1 -1
  203. package/lib/shell/login/signInUtils.d.ts +11 -0
  204. package/lib/shell/login/signInUtils.d.ts.map +1 -1
  205. package/lib/shell/login/signInUtils.js +29 -5
  206. package/lib/shell/login/signInUtils.js.map +1 -1
  207. package/lib/vertesia-ui-boot.js +237 -0
  208. package/lib/vertesia-ui-boot.js.map +1 -0
  209. package/lib/vertesia-ui-core.js +46 -46
  210. package/lib/vertesia-ui-core.js.map +1 -1
  211. package/lib/vertesia-ui-env.js +1 -1
  212. package/lib/vertesia-ui-env.js.map +1 -1
  213. package/lib/vertesia-ui-features.js +222 -208
  214. package/lib/vertesia-ui-features.js.map +1 -1
  215. package/lib/vertesia-ui-i18n.B3NFclwl.chunk.js +5 -0
  216. package/lib/vertesia-ui-i18n.B3NFclwl.chunk.js.map +1 -0
  217. package/lib/vertesia-ui-i18n.BWSrNIxc.chunk.js +5 -0
  218. package/lib/vertesia-ui-i18n.BWSrNIxc.chunk.js.map +1 -0
  219. package/lib/vertesia-ui-i18n.BWvWeB1p.chunk.js +5 -0
  220. package/lib/vertesia-ui-i18n.BWvWeB1p.chunk.js.map +1 -0
  221. package/lib/vertesia-ui-i18n.BZCXvTC1.chunk.js +5 -0
  222. package/lib/vertesia-ui-i18n.BZCXvTC1.chunk.js.map +1 -0
  223. package/lib/vertesia-ui-i18n.BbJMvFZW.chunk.js +5 -0
  224. package/lib/vertesia-ui-i18n.BbJMvFZW.chunk.js.map +1 -0
  225. package/lib/vertesia-ui-i18n.CE5ldwpt.chunk.js +5 -0
  226. package/lib/vertesia-ui-i18n.CE5ldwpt.chunk.js.map +1 -0
  227. package/lib/vertesia-ui-i18n.CMC0IShY.chunk.js +5 -0
  228. package/lib/vertesia-ui-i18n.CMC0IShY.chunk.js.map +1 -0
  229. package/lib/vertesia-ui-i18n.CkcRqBKU.chunk.js +5 -0
  230. package/lib/vertesia-ui-i18n.CkcRqBKU.chunk.js.map +1 -0
  231. package/lib/vertesia-ui-i18n.D-Mq1sw_.chunk.js +5 -0
  232. package/lib/vertesia-ui-i18n.D-Mq1sw_.chunk.js.map +1 -0
  233. package/lib/vertesia-ui-i18n.DkK68-A-.chunk.js +5 -0
  234. package/lib/vertesia-ui-i18n.DkK68-A-.chunk.js.map +1 -0
  235. package/lib/vertesia-ui-i18n.XE_dcCg6.chunk.js +5 -0
  236. package/lib/vertesia-ui-i18n.XE_dcCg6.chunk.js.map +1 -0
  237. package/lib/vertesia-ui-i18n.js +2 -2
  238. package/lib/vertesia-ui-i18n.js.map +1 -1
  239. package/lib/vertesia-ui-i18n.qgNqMPvK.chunk.js +5 -0
  240. package/lib/vertesia-ui-i18n.qgNqMPvK.chunk.js.map +1 -0
  241. package/lib/vertesia-ui-layout.js +13 -13
  242. package/lib/vertesia-ui-layout.js.map +1 -1
  243. package/lib/vertesia-ui-rich-text.js +68 -68
  244. package/lib/vertesia-ui-rich-text.js.map +1 -1
  245. package/lib/vertesia-ui-router.js +1 -1
  246. package/lib/vertesia-ui-router.js.map +1 -1
  247. package/lib/vertesia-ui-session.js +1 -1
  248. package/lib/vertesia-ui-session.js.map +1 -1
  249. package/lib/vertesia-ui-shell.js +58 -33
  250. package/lib/vertesia-ui-shell.js.map +1 -1
  251. package/lib/vertesia-ui-widgets.js +94 -94
  252. package/lib/vertesia-ui-widgets.js.map +1 -1
  253. package/lib/widgets/json-view/JSONCode.js +1 -1
  254. package/lib/widgets/json-view/JSONCode.js.map +1 -1
  255. package/lib/widgets/upload/DropZone.d.ts.map +1 -1
  256. package/lib/widgets/upload/DropZone.js +1 -1
  257. package/lib/widgets/upload/DropZone.js.map +1 -1
  258. package/llms.txt +6 -2
  259. package/package.json +44 -35
  260. package/src/__tests__/a11y.test.tsx +25 -0
  261. package/src/__tests__/theme.test.ts +91 -0
  262. package/src/boot/branding.test.ts +72 -0
  263. package/src/boot/branding.ts +108 -0
  264. package/src/boot/index.test.ts +216 -0
  265. package/src/boot/index.ts +356 -0
  266. package/src/boot/vite.test.ts +93 -0
  267. package/src/boot/vite.ts +118 -0
  268. package/src/core/components/Link.tsx +1 -1
  269. package/src/core/components/Spinner.tsx +1 -1
  270. package/src/core/components/TagsInput.tsx +7 -7
  271. package/src/core/components/shadcn/badge.tsx +1 -1
  272. package/src/core/components/shadcn/button.tsx +3 -5
  273. package/src/core/components/shadcn/filters/comboBox/DateCombobox.tsx +2 -2
  274. package/src/core/components/shadcn/filters/comboBox/SelectCombobox.tsx +1 -1
  275. package/src/core/components/shadcn/filters/comboBox/StringListCombobox.tsx +1 -1
  276. package/src/core/components/shadcn/filters/comboBox/TextCombobox.tsx +1 -1
  277. package/src/core/components/shadcn/filters/filter/dateFilter.tsx +1 -1
  278. package/src/core/components/shadcn/filters/filter-styles.ts +4 -4
  279. package/src/core/components/shadcn/filters/filters.tsx +1 -1
  280. package/src/core/components/shadcn/label.tsx +1 -1
  281. package/src/core/components/shadcn/overflowTabs.tsx +2 -2
  282. package/src/core/components/shadcn/tabs.tsx +1 -1
  283. package/src/css/utilities.css +7 -0
  284. package/src/env/index.test.ts +100 -0
  285. package/src/env/index.ts +66 -3
  286. package/src/features/activity-doc/ActivityDoc.tsx +1 -1
  287. package/src/features/agent/PayloadBuilder.tsx +4 -0
  288. package/src/features/agent/chat/AgentRunFeedback.test.tsx +330 -0
  289. package/src/features/agent/chat/AgentRunFeedback.tsx +452 -0
  290. package/src/features/agent/chat/AskUserWidget.test.tsx +24 -2
  291. package/src/features/agent/chat/AskUserWidget.tsx +19 -4
  292. package/src/features/agent/chat/ModernAgentConversation.tsx +46 -42
  293. package/src/features/agent/chat/ModernAgentOutput/AllMessagesMixed.test.tsx +207 -0
  294. package/src/features/agent/chat/ModernAgentOutput/AllMessagesMixed.tsx +50 -31
  295. package/src/features/agent/chat/ModernAgentOutput/Header.tsx +4 -0
  296. package/src/features/agent/chat/ModernAgentOutput/MessageItem.tsx +42 -8
  297. package/src/features/agent/chat/ModernAgentOutput/SummaryConversation.ts +2 -0
  298. package/src/features/agent/chat/ModernAgentOutput/utils.test.ts +14 -0
  299. package/src/features/agent/chat/hooks/useFileProcessing.test.tsx +0 -5
  300. package/src/features/agent/chat/index.ts +6 -0
  301. package/src/features/facets/AgentRunnerFacetsNav.tsx +26 -0
  302. package/src/features/layout/GenericPageNavHeader.test.tsx +36 -0
  303. package/src/features/layout/GenericPageNavHeader.tsx +1 -1
  304. package/src/features/magic-pdf/AnnotatedImageSlider.tsx +1 -1
  305. package/src/features/magic-pdf/GroundedExtractionView.tsx +3 -3
  306. package/src/features/permissions/UserPermissionsProvider.test.tsx +50 -1
  307. package/src/features/permissions/UserPermissionsProvider.tsx +82 -44
  308. package/src/features/store/objects/DocumentPreviewPanel.tsx +10 -10
  309. package/src/features/store/objects/components/DocumentInput.tsx +1 -1
  310. package/src/features/store/objects/selection/SelectionActions.tsx +4 -1
  311. package/src/features/store/objects/upload/DocumentUploadModal.tsx +1 -1
  312. package/src/features/user/UserInfo.tsx +1 -1
  313. package/src/i18n/index.tsx +25 -2
  314. package/src/i18n/locales/ar.json +30 -0
  315. package/src/i18n/locales/de.json +30 -0
  316. package/src/i18n/locales/en.json +30 -0
  317. package/src/i18n/locales/es.json +30 -0
  318. package/src/i18n/locales/fr.json +30 -0
  319. package/src/i18n/locales/it.json +30 -0
  320. package/src/i18n/locales/ja.json +30 -0
  321. package/src/i18n/locales/ko.json +30 -0
  322. package/src/i18n/locales/pt.json +30 -0
  323. package/src/i18n/locales/ru.json +30 -0
  324. package/src/i18n/locales/tr.json +30 -0
  325. package/src/i18n/locales/zh-TW.json +30 -0
  326. package/src/i18n/locales/zh.json +30 -0
  327. package/src/layout/ErrorPage.tsx +1 -1
  328. package/src/layout/Navbar.test.tsx +58 -0
  329. package/src/layout/Navbar.tsx +5 -2
  330. package/src/router/RouteComponent.test.tsx +65 -1
  331. package/src/router/RouteComponent.tsx +18 -15
  332. package/src/session/UserSession.test.ts +65 -0
  333. package/src/session/UserSession.ts +6 -4
  334. package/src/session/UserSessionProvider.strict-mode.test.tsx +44 -0
  335. package/src/session/UserSessionProvider.test.ts +62 -1
  336. package/src/session/UserSessionProvider.tsx +9 -1
  337. package/src/session/auth/composable.renewal.test.ts +170 -0
  338. package/src/session/auth/composable.test.ts +23 -1
  339. package/src/session/auth/composable.ts +101 -2
  340. package/src/session/auth/domainRouting.test.ts +35 -65
  341. package/src/session/auth/domainRouting.ts +51 -34
  342. package/src/session/auth/useAuthState.ts +11 -4
  343. package/src/session/index.ts +3 -1
  344. package/src/shell/AuthScreenPreview.test.tsx +44 -0
  345. package/src/shell/AuthScreenPreview.tsx +228 -0
  346. package/src/shell/BrandedAuthScreens.test.tsx +181 -0
  347. package/src/shell/BrandedAuthScreens.tsx +117 -0
  348. package/src/shell/SplashScreen.test.tsx +37 -0
  349. package/src/shell/SplashScreen.tsx +45 -40
  350. package/src/shell/VertesiaShell.tsx +49 -22
  351. package/src/shell/apps/StandaloneApp.tsx +5 -1
  352. package/src/shell/index.tsx +6 -0
  353. package/src/shell/login/SignInFlow.tsx +213 -0
  354. package/src/shell/login/SignInPageShell.tsx +62 -0
  355. package/src/shell/login/SignInPrimitives.tsx +14 -11
  356. package/src/shell/login/SignInRestrictedEnvStep.tsx +19 -7
  357. package/src/shell/login/SigninScreen.test.tsx +104 -0
  358. package/src/shell/login/SigninScreen.tsx +115 -145
  359. package/src/shell/login/SignupForm.tsx +8 -3
  360. package/src/shell/login/signInUtils.ts +30 -5
  361. package/src/widgets/json-view/JSONCode.test.tsx +2 -2
  362. package/src/widgets/json-view/JSONCode.tsx +1 -1
  363. package/src/widgets/markdown/markdown.css +21 -21
  364. package/src/widgets/upload/DropZone.tsx +2 -4
  365. package/lib/vertesia-ui-i18n.BfN7iOHb.chunk.js +0 -5
  366. package/lib/vertesia-ui-i18n.BfN7iOHb.chunk.js.map +0 -1
  367. package/lib/vertesia-ui-i18n.BjH2zEZw.chunk.js +0 -5
  368. package/lib/vertesia-ui-i18n.BjH2zEZw.chunk.js.map +0 -1
  369. package/lib/vertesia-ui-i18n.BjSwAZXl.chunk.js +0 -5
  370. package/lib/vertesia-ui-i18n.BjSwAZXl.chunk.js.map +0 -1
  371. package/lib/vertesia-ui-i18n.C7PUm5Au.chunk.js +0 -5
  372. package/lib/vertesia-ui-i18n.C7PUm5Au.chunk.js.map +0 -1
  373. package/lib/vertesia-ui-i18n.CF_1mUS5.chunk.js +0 -5
  374. package/lib/vertesia-ui-i18n.CF_1mUS5.chunk.js.map +0 -1
  375. package/lib/vertesia-ui-i18n.ChfUl3_-.chunk.js +0 -5
  376. package/lib/vertesia-ui-i18n.ChfUl3_-.chunk.js.map +0 -1
  377. package/lib/vertesia-ui-i18n.D-Sk-5d1.chunk.js +0 -5
  378. package/lib/vertesia-ui-i18n.D-Sk-5d1.chunk.js.map +0 -1
  379. package/lib/vertesia-ui-i18n.D4rnu1_S.chunk.js +0 -5
  380. package/lib/vertesia-ui-i18n.D4rnu1_S.chunk.js.map +0 -1
  381. package/lib/vertesia-ui-i18n.DDf0-laK.chunk.js +0 -5
  382. package/lib/vertesia-ui-i18n.DDf0-laK.chunk.js.map +0 -1
  383. package/lib/vertesia-ui-i18n.DN79y06J.chunk.js +0 -5
  384. package/lib/vertesia-ui-i18n.DN79y06J.chunk.js.map +0 -1
  385. package/lib/vertesia-ui-i18n.DWLIciYQ.chunk.js +0 -5
  386. package/lib/vertesia-ui-i18n.DWLIciYQ.chunk.js.map +0 -1
  387. package/lib/vertesia-ui-i18n.DvF_YaAJ.chunk.js +0 -5
  388. package/lib/vertesia-ui-i18n.DvF_YaAJ.chunk.js.map +0 -1
  389. package/src/session/auth/authState.test.ts +0 -35
@@ -0,0 +1,108 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ /**
3
+ * The sign-in state machine, extracted from SigninScreen so more than one host can drive it.
4
+ *
5
+ * Two hosts run it today: the Studio shell, which layers its own error-recovery modes on top
6
+ * (`SigninScreen`), and the Central Auth broker, which has no Vertesia session and renders only the
7
+ * modes below. The interesting behaviour is not the markup — it is the ordering: remembered
8
+ * identity first, then email, then tenant resolution deciding which providers are even offered.
9
+ * Re-implementing that per host is how the two pages drift apart.
10
+ *
11
+ * The hook takes no session dependency of its own: `signOut` and `trackEvent` come in as options
12
+ * because a host without a `UserSessionProvider` cannot call those hooks.
13
+ */
14
+ import { useCallback, useEffect, useState } from 'react';
15
+ import SignInAuthPending from './SignInAuthPending';
16
+ import SignInEmailStep from './SignInEmailStep';
17
+ import SignInProvidersStep from './SignInProvidersStep';
18
+ import SignInReturningStep from './SignInReturningStep';
19
+ import SignInTenantStep from './SignInTenantStep';
20
+ import { clearLastSuccessfulLogin, clearPendingSignin, finalizeSuccessfulLogin, readLastSuccessfulLogin, resetSignInState, signOutOfFirebase, } from './signInUtils';
21
+ export function useSignInFlow(options = {}) {
22
+ const { signOut, trackEvent, user } = options;
23
+ const [storedSession, setStoredSession] = useState(() => readLastSuccessfulLogin());
24
+ const [mode, setMode] = useState(() => (readLastSuccessfulLogin() ? 'returning' : 'email'));
25
+ const [email, setEmail] = useState('');
26
+ const [tenant, setTenant] = useState(undefined);
27
+ const [pendingProvider, setPendingProvider] = useState(null);
28
+ // On successful login, finalize the last-successful-login entry with the user's name.
29
+ useEffect(() => {
30
+ if (!user)
31
+ return;
32
+ finalizeSuccessfulLogin(user.name ?? undefined);
33
+ }, [user]);
34
+ const onProceedFromEmail = useCallback((e, t) => {
35
+ setEmail(e);
36
+ setTenant(t);
37
+ setMode(t ? 'tenant' : 'providers');
38
+ }, []);
39
+ const onBack = useCallback(() => {
40
+ setMode('email');
41
+ setTenant(undefined);
42
+ }, []);
43
+ const onNotYou = useCallback(() => {
44
+ clearLastSuccessfulLogin();
45
+ clearPendingSignin();
46
+ setStoredSession(null);
47
+ setEmail('');
48
+ setTenant(undefined);
49
+ setMode('email');
50
+ // Without a host sign-out, drop the Firebase session anyway: leaving it behind means the
51
+ // next auth-state change re-authenticates the identity the user just said isn't theirs.
52
+ void (signOut ? signOut() : signOutOfFirebase());
53
+ }, [signOut]);
54
+ const onProviderClicked = useCallback((provider) => {
55
+ // Tenant context comes from a resolved tenant or stored tenantName, not the provider.
56
+ const hasTenant = !!tenant || !!storedSession?.tenantName;
57
+ // Only the pre-existing enterprise_signin event; non-tenant sign-ins emit nothing.
58
+ if (hasTenant)
59
+ trackEvent?.('enterprise_signin', { provider });
60
+ setPendingProvider(provider);
61
+ setMode('pending');
62
+ // The redirect itself happens in the calling step's startSignIn(); this just shows the pending screen.
63
+ }, [trackEvent, storedSession?.tenantName, tenant]);
64
+ const startOver = useCallback(() => {
65
+ setStoredSession(null); // drop the in-memory mirror too — resetSignInState only clears storage
66
+ setEmail('');
67
+ setTenant(undefined);
68
+ setMode('email');
69
+ void resetSignInState();
70
+ }, []);
71
+ return {
72
+ mode,
73
+ setMode,
74
+ email,
75
+ setEmail,
76
+ tenant,
77
+ setTenant,
78
+ storedSession,
79
+ setStoredSession,
80
+ pendingProvider,
81
+ onProceedFromEmail,
82
+ onBack,
83
+ onNotYou,
84
+ onProviderClicked,
85
+ startOver,
86
+ };
87
+ }
88
+ /**
89
+ * Renders the step for the current core mode. A host mode this doesn't know falls through to the
90
+ * email step, which is where the original screen sent an unrecognized state too.
91
+ */
92
+ export function SignInFlowSteps({ flow, redirectTo }) {
93
+ const { mode, email, tenant, storedSession, pendingProvider } = flow;
94
+ if (mode === 'pending' && pendingProvider) {
95
+ return _jsx(SignInAuthPending, { provider: pendingProvider });
96
+ }
97
+ if (mode === 'tenant' && tenant) {
98
+ return (_jsx(SignInTenantStep, { email: email, tenant: tenant, onBack: flow.onBack, onProviderClicked: () => flow.onProviderClicked((tenant.provider ?? 'oidc')), redirectTo: redirectTo }));
99
+ }
100
+ if (mode === 'providers') {
101
+ return (_jsx(SignInProvidersStep, { email: email, onBack: flow.onBack, onProviderClicked: flow.onProviderClicked, redirectTo: redirectTo }));
102
+ }
103
+ if (mode === 'returning' && storedSession) {
104
+ return (_jsx(SignInReturningStep, { session: storedSession, onNotYou: flow.onNotYou, onProviderClicked: flow.onProviderClicked, redirectTo: redirectTo }));
105
+ }
106
+ return _jsx(SignInEmailStep, { initialEmail: email, onProceed: flow.onProceedFromEmail });
107
+ }
108
+ //# sourceMappingURL=SignInFlow.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SignInFlow.js","sourceRoot":"","sources":["../../../src/shell/login/SignInFlow.tsx"],"names":[],"mappings":";AAAA;;;;;;;;;;;GAWG;AACH,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACzD,OAAO,iBAAiB,MAAM,qBAAqB,CAAC;AACpD,OAAO,eAAoC,MAAM,mBAAmB,CAAC;AACrE,OAAO,mBAAmB,MAAM,uBAAuB,CAAC;AACxD,OAAO,mBAAmB,MAAM,uBAAuB,CAAC;AACxD,OAAO,gBAAgB,MAAM,oBAAoB,CAAC;AAClD,OAAO,EACH,wBAAwB,EACxB,kBAAkB,EAClB,uBAAuB,EAGvB,uBAAuB,EACvB,gBAAgB,EAChB,iBAAiB,GACpB,MAAM,eAAe,CAAC;AAiDvB,MAAM,UAAU,aAAa,CAA2B,OAAO,GAAsB,EAAE;IACnF,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC;IAE9C,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,QAAQ,CAA6B,GAAG,EAAE,CAAC,uBAAuB,EAAE,CAAC,CAAC;IAChH,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAqB,GAAG,EAAE,CAAC,CAAC,uBAAuB,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;IAChH,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IACvC,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAyB,SAAS,CAAC,CAAC;IACxE,MAAM,CAAC,eAAe,EAAE,kBAAkB,CAAC,GAAG,QAAQ,CAAoB,IAAI,CAAC,CAAC;IAEhF,sFAAsF;IACtF,SAAS,CAAC,GAAG,EAAE;QACX,IAAI,CAAC,IAAI;YAAE,OAAO;QAClB,uBAAuB,CAAC,IAAI,CAAC,IAAI,IAAI,SAAS,CAAC,CAAC;IACpD,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;IAEX,MAAM,kBAAkB,GAAG,WAAW,CAAC,CAAC,CAAS,EAAE,CAAyB,EAAE,EAAE;QAC5E,QAAQ,CAAC,CAAC,CAAC,CAAC;QACZ,SAAS,CAAC,CAAC,CAAC,CAAC;QACb,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;IACxC,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,MAAM,GAAG,WAAW,CAAC,GAAG,EAAE;QAC5B,OAAO,CAAC,OAAO,CAAC,CAAC;QACjB,SAAS,CAAC,SAAS,CAAC,CAAC;IACzB,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,QAAQ,GAAG,WAAW,CAAC,GAAG,EAAE;QAC9B,wBAAwB,EAAE,CAAC;QAC3B,kBAAkB,EAAE,CAAC;QACrB,gBAAgB,CAAC,IAAI,CAAC,CAAC;QACvB,QAAQ,CAAC,EAAE,CAAC,CAAC;QACb,SAAS,CAAC,SAAS,CAAC,CAAC;QACrB,OAAO,CAAC,OAAO,CAAC,CAAC;QACjB,yFAAyF;QACzF,wFAAwF;QACxF,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC,CAAC;IACrD,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IAEd,MAAM,iBAAiB,GAAG,WAAW,CACjC,CAAC,QAAoB,EAAE,EAAE;QACrB,sFAAsF;QACtF,MAAM,SAAS,GAAG,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,aAAa,EAAE,UAAU,CAAC;QAC1D,mFAAmF;QACnF,IAAI,SAAS;YAAE,UAAU,EAAE,CAAC,mBAAmB,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC;QAC/D,kBAAkB,CAAC,QAAQ,CAAC,CAAC;QAC7B,OAAO,CAAC,SAAS,CAAC,CAAC;QACnB,uGAAuG;IAC3G,CAAC,EACD,CAAC,UAAU,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,CAAC,CAClD,CAAC;IAEF,MAAM,SAAS,GAAG,WAAW,CAAC,GAAG,EAAE;QAC/B,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,uEAAuE;QAC/F,QAAQ,CAAC,EAAE,CAAC,CAAC;QACb,SAAS,CAAC,SAAS,CAAC,CAAC;QACrB,OAAO,CAAC,OAAO,CAAC,CAAC;QACjB,KAAK,gBAAgB,EAAE,CAAC;IAC5B,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,OAAO;QACH,IAAI;QACJ,OAAO;QACP,KAAK;QACL,QAAQ;QACR,MAAM;QACN,SAAS;QACT,aAAa;QACb,gBAAgB;QAChB,eAAe;QACf,kBAAkB;QAClB,MAAM;QACN,QAAQ;QACR,iBAAiB;QACjB,SAAS;KACZ,CAAC;AACN,CAAC;AAmBD;;;GAGG;AACH,MAAM,UAAU,eAAe,CAAC,EAAE,IAAI,EAAE,UAAU,EAAwB;IACtE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,aAAa,EAAE,eAAe,EAAE,GAAG,IAAI,CAAC;IAErE,IAAI,IAAI,KAAK,SAAS,IAAI,eAAe,EAAE,CAAC;QACxC,OAAO,KAAC,iBAAiB,IAAC,QAAQ,EAAE,eAAe,GAAI,CAAC;IAC5D,CAAC;IACD,IAAI,IAAI,KAAK,QAAQ,IAAI,MAAM,EAAE,CAAC;QAC9B,OAAO,CACH,KAAC,gBAAgB,IACb,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,IAAI,CAAC,MAAM,EACnB,iBAAiB,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAe,CAAC,EAC1F,UAAU,EAAE,UAAU,GACxB,CACL,CAAC;IACN,CAAC;IACD,IAAI,IAAI,KAAK,WAAW,EAAE,CAAC;QACvB,OAAO,CACH,KAAC,mBAAmB,IAChB,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,IAAI,CAAC,MAAM,EACnB,iBAAiB,EAAE,IAAI,CAAC,iBAAiB,EACzC,UAAU,EAAE,UAAU,GACxB,CACL,CAAC;IACN,CAAC;IACD,IAAI,IAAI,KAAK,WAAW,IAAI,aAAa,EAAE,CAAC;QACxC,OAAO,CACH,KAAC,mBAAmB,IAChB,OAAO,EAAE,aAAa,EACtB,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,iBAAiB,EAAE,IAAI,CAAC,iBAAiB,EACzC,UAAU,EAAE,UAAU,GACxB,CACL,CAAC;IACN,CAAC;IACD,OAAO,KAAC,eAAe,IAAC,YAAY,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,CAAC,kBAAkB,GAAI,CAAC;AACxF,CAAC"}
@@ -0,0 +1,13 @@
1
+ import type { ReactNode } from 'react';
2
+ interface SignInPageShellProps {
3
+ logoAlt?: string;
4
+ footer?: string;
5
+ lightLogo?: string;
6
+ darkLogo?: string;
7
+ /** Rendered between the step and the footer — e.g. a generic authentication error. */
8
+ notice?: ReactNode;
9
+ children: ReactNode;
10
+ }
11
+ export declare function SignInPageShell({ lightLogo, darkLogo, notice, children, logoAlt, footer, }: SignInPageShellProps): import("react").JSX.Element;
12
+ export {};
13
+ //# sourceMappingURL=SignInPageShell.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SignInPageShell.d.ts","sourceRoot":"","sources":["../../../src/shell/login/SignInPageShell.tsx"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC,UAAU,oBAAoB;IAC1B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,sFAAsF;IACtF,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,QAAQ,EAAE,SAAS,CAAC;CACvB;AAED,wBAAgB,eAAe,CAAC,EAC5B,SAAS,EACT,QAAQ,EACR,MAAM,EACN,QAAQ,EACR,OAAoB,EACpB,MAAM,GACT,EAAE,oBAAoB,+BAkCtB"}
@@ -0,0 +1,14 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ /**
3
+ * The chrome around a sign-in step: product logo, the step itself, an optional notice, and the
4
+ * legal footer. Hosts supply their own outer container — the Studio shell overlays the app, the
5
+ * Central Auth broker owns the whole document — so this component deliberately does not position
6
+ * itself.
7
+ */
8
+ import { useUITranslation } from '@vertesia/ui/i18n';
9
+ import { RegionTag } from '@vertesia/ui/layout';
10
+ export function SignInPageShell({ lightLogo, darkLogo, notice, children, logoAlt = 'Vertesia', footer, }) {
11
+ const { t } = useUITranslation();
12
+ return (_jsx("div", { className: "min-h-full flex flex-col items-center justify-center py-12 px-4", children: _jsxs("div", { className: "flex flex-col items-center w-full", children: [(lightLogo || darkLogo) && (_jsxs("div", { className: "mb-7", children: [lightLogo && _jsx("img", { src: lightLogo, alt: logoAlt, className: "h-10 block dark:hidden" }), darkLogo && _jsx("img", { src: darkLogo, alt: logoAlt, className: "h-10 hidden dark:block" })] })), children, notice, footer ? (_jsx("p", { className: "mt-10 text-xs text-muted", children: footer })) : (_jsxs("div", { className: "flex items-center gap-5 mt-10 text-xs text-muted", children: [_jsx("a", { href: "https://vertesiahq.com/privacy", className: "hover:text-foreground transition", children: t('auth.privacyPolicy') }), _jsx("span", { className: "text-border", children: "\u00B7" }), _jsx("a", { href: "https://vertesiahq.com/terms", className: "hover:text-foreground transition", children: t('auth.termsOfService') }), _jsx("span", { className: "text-border", children: "\u00B7" }), _jsx(RegionTag, { className: "cursor-default" })] }))] }) }));
13
+ }
14
+ //# sourceMappingURL=SignInPageShell.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SignInPageShell.js","sourceRoot":"","sources":["../../../src/shell/login/SignInPageShell.tsx"],"names":[],"mappings":";AAAA;;;;;GAKG;AACH,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAahD,MAAM,UAAU,eAAe,CAAC,EAC5B,SAAS,EACT,QAAQ,EACR,MAAM,EACN,QAAQ,EACR,OAAO,GAAG,UAAU,EACpB,MAAM,GACa;IACnB,MAAM,EAAE,CAAC,EAAE,GAAG,gBAAgB,EAAE,CAAC;IACjC,OAAO,CACH,cAAK,SAAS,EAAC,iEAAiE,YAC5E,eAAK,SAAS,EAAC,mCAAmC,aAC7C,CAAC,SAAS,IAAI,QAAQ,CAAC,IAAI,CACxB,eAAK,SAAS,EAAC,MAAM,aAChB,SAAS,IAAI,cAAK,GAAG,EAAE,SAAS,EAAE,GAAG,EAAE,OAAO,EAAE,SAAS,EAAC,wBAAwB,GAAG,EACrF,QAAQ,IAAI,cAAK,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE,OAAO,EAAE,SAAS,EAAC,wBAAwB,GAAG,IAClF,CACT,EAEA,QAAQ,EAER,MAAM,EAEN,MAAM,CAAC,CAAC,CAAC,CACN,YAAG,SAAS,EAAC,0BAA0B,YAAE,MAAM,GAAK,CACvD,CAAC,CAAC,CAAC,CACA,eAAK,SAAS,EAAC,kDAAkD,aAC7D,YAAG,IAAI,EAAC,gCAAgC,EAAC,SAAS,EAAC,kCAAkC,YAChF,CAAC,CAAC,oBAAoB,CAAC,GACxB,EACJ,eAAM,SAAS,EAAC,aAAa,uBAAS,EACtC,YAAG,IAAI,EAAC,8BAA8B,EAAC,SAAS,EAAC,kCAAkC,YAC9E,CAAC,CAAC,qBAAqB,CAAC,GACzB,EACJ,eAAM,SAAS,EAAC,aAAa,uBAAS,EACtC,KAAC,SAAS,IAAC,SAAS,EAAC,gBAAgB,GAAG,IACtC,CACT,IACC,GACJ,CACT,CAAC;AACN,CAAC"}
@@ -16,7 +16,7 @@ interface SignInStepHeaderProps {
16
16
  export declare function SignInStepHeader({ eyebrow, title, body, variant }: SignInStepHeaderProps): import("react").JSX.Element;
17
17
  declare const SIGNIN_STEP_BUTTON_VARIANTS: {
18
18
  readonly primary: string;
19
- readonly loading: 'h-[42px] gap-2.5 rounded-md bg-foreground text-background opacity-90';
19
+ readonly loading: 'h-[42px] gap-2.5 rounded-md bg-[var(--auth-button,var(--foreground))] text-[color:var(--auth-button-text,var(--background))] opacity-90';
20
20
  readonly ghost: 'h-9 text-muted hover:text-foreground';
21
21
  };
22
22
  interface SignInStepButtonProps extends ButtonHTMLAttributes<HTMLButtonElement> {
@@ -58,7 +58,7 @@ declare const ACCOUNT_CARD_VARIANTS: {
58
58
  readonly topRow: 'flex items-center gap-2.5 px-3 py-2.5';
59
59
  readonly title: 'text-[13.5px] font-semibold text-foreground leading-tight';
60
60
  readonly subtitle: 'text-[11.5px] text-muted leading-tight mt-0.5';
61
- readonly bottomRow: 'flex items-center gap-2.5 px-3 py-1.5 border-t border-border bg-muted-background';
61
+ readonly bottomRow: 'flex items-center gap-2.5 px-3 py-1.5 border-t border-border bg-muted';
62
62
  readonly mailBox: 'size-[30px] grid place-items-center shrink-0';
63
63
  readonly mailIcon: 'size-4 text-muted';
64
64
  readonly email: 'text-sm text-foreground/80 flex-1 truncate';
@@ -68,7 +68,7 @@ declare const ACCOUNT_CARD_VARIANTS: {
68
68
  readonly topRow: 'flex items-center gap-3 px-3.5 py-2.5';
69
69
  readonly title: 'text-sm font-semibold text-foreground truncate';
70
70
  readonly subtitle: 'text-xs text-foreground/80 truncate';
71
- readonly bottomRow: 'flex items-center gap-3 px-3.5 py-1 border-t border-border bg-muted-background';
71
+ readonly bottomRow: 'flex items-center gap-3 px-3.5 py-1 border-t border-border bg-muted';
72
72
  readonly mailBox: 'w-9 h-6 grid place-items-center shrink-0';
73
73
  readonly mailIcon: 'size-3.5 text-muted';
74
74
  readonly email: 'text-xs text-foreground/80 flex-1 truncate';
@@ -1 +1 @@
1
- {"version":3,"file":"SignInPrimitives.d.ts","sourceRoot":"","sources":["../../../src/shell/login/SignInPrimitives.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SignInPrimitives.d.ts","sourceRoot":"","sources":["../../../src/shell/login/SignInPrimitives.tsx"],"names":[],"mappings":"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"}
@@ -16,10 +16,10 @@ export function SignInStepHeader({ eyebrow, title, body, variant = 'info' }) {
16
16
  const SIGNIN_STEP_BUTTON_BASE = 'cursor-pointer inline-flex items-center justify-center text-sm font-medium transition';
17
17
  const SIGNIN_STEP_BUTTON_VARIANTS = {
18
18
  // Filled CTA; greys out when disabled.
19
- primary: 'h-[42px] gap-2.5 rounded-md bg-foreground text-background hover:opacity-90 ' +
19
+ primary: 'h-[42px] gap-2.5 rounded-md bg-[var(--auth-button,var(--foreground))] text-[color:var(--auth-button-text,var(--background))] hover:opacity-90 ' +
20
20
  'disabled:opacity-50 disabled:cursor-not-allowed',
21
21
  // Non-interactive primary kept at full opacity (spinner reads as active).
22
- loading: 'h-[42px] gap-2.5 rounded-md bg-foreground text-background opacity-90',
22
+ loading: 'h-[42px] gap-2.5 rounded-md bg-[var(--auth-button,var(--foreground))] text-[color:var(--auth-button-text,var(--background))] opacity-90',
23
23
  // Flat text link.
24
24
  ghost: 'h-9 text-muted hover:text-foreground',
25
25
  };
@@ -46,11 +46,11 @@ const INITIALS_BADGE_SHAPES = {
46
46
  };
47
47
  /** Initials in a colored chip — a round user avatar or a square org chip. */
48
48
  export function SignInInitialsBadge({ initials, shape = 'circle' }) {
49
- return (_jsx("span", { className: `bg-info text-info-foreground grid place-items-center font-semibold shrink-0 ${INITIALS_BADGE_SHAPES[shape]}`, children: initials }));
49
+ return (_jsx("span", { className: `bg-info text-info grid place-items-center font-semibold shrink-0 ${INITIALS_BADGE_SHAPES[shape]}`, children: initials }));
50
50
  }
51
51
  /** Rounded tile framing a provider/status icon. */
52
52
  export function SignInIconBadge({ children }) {
53
- return (_jsx("div", { className: "inline-grid place-items-center size-14 rounded-xl bg-info-background border border-info/15 mb-3.5", children: children }));
53
+ return (_jsx("div", { className: "inline-grid place-items-center size-14 rounded-xl bg-info border border-info/15 mb-3.5", children: children }));
54
54
  }
55
55
  /** Title over a secondary line; fills the row beside a badge or avatar. */
56
56
  export function SignInIdentityLines({ title, subtitle, titleClass, subtitleClass }) {
@@ -63,7 +63,7 @@ const ACCOUNT_CARD_VARIANTS = {
63
63
  topRow: 'flex items-center gap-2.5 px-3 py-2.5',
64
64
  title: 'text-[13.5px] font-semibold text-foreground leading-tight',
65
65
  subtitle: 'text-[11.5px] text-muted leading-tight mt-0.5',
66
- bottomRow: 'flex items-center gap-2.5 px-3 py-1.5 border-t border-border bg-muted-background',
66
+ bottomRow: 'flex items-center gap-2.5 px-3 py-1.5 border-t border-border bg-muted',
67
67
  mailBox: 'size-[30px] grid place-items-center shrink-0',
68
68
  mailIcon: 'size-4 text-muted',
69
69
  email: 'text-sm text-foreground/80 flex-1 truncate',
@@ -73,7 +73,7 @@ const ACCOUNT_CARD_VARIANTS = {
73
73
  topRow: 'flex items-center gap-3 px-3.5 py-2.5',
74
74
  title: 'text-sm font-semibold text-foreground truncate',
75
75
  subtitle: 'text-xs text-foreground/80 truncate',
76
- bottomRow: 'flex items-center gap-3 px-3.5 py-1 border-t border-border bg-muted-background',
76
+ bottomRow: 'flex items-center gap-3 px-3.5 py-1 border-t border-border bg-muted',
77
77
  mailBox: 'w-9 h-6 grid place-items-center shrink-0',
78
78
  mailIcon: 'size-3.5 text-muted',
79
79
  email: 'text-xs text-foreground/80 flex-1 truncate',
@@ -87,11 +87,11 @@ export function SignInAccountCard({ variant = 'returning', badge, title, subtitl
87
87
  }
88
88
  /** Single-row identity card: badge + title/subtitle + a trailing action link. */
89
89
  export function SignInAccountRow({ badge, title, subtitle, actionLabel, onAction }) {
90
- return (_jsxs("div", { className: "flex items-center gap-3 px-3.5 py-2.5 rounded-md border border-border bg-muted-background", children: [badge, _jsx(SignInIdentityLines, { title: title, subtitle: subtitle, titleClass: "text-sm font-semibold text-foreground truncate", subtitleClass: "text-xs text-muted truncate" }), _jsx(SignInInlineLinkButton, { onClick: onAction, children: actionLabel })] }));
90
+ return (_jsxs("div", { className: "flex items-center gap-3 px-3.5 py-2.5 rounded-md border border-border bg-muted", children: [badge, _jsx(SignInIdentityLines, { title: title, subtitle: subtitle, titleClass: "text-sm font-semibold text-foreground truncate", subtitleClass: "text-xs text-muted truncate" }), _jsx(SignInInlineLinkButton, { onClick: onAction, children: actionLabel })] }));
91
91
  }
92
92
  /** Standalone bordered pill: mail icon + email + a trailing action link. */
93
93
  export function SignInEmailRow({ email, actionLabel, onAction }) {
94
- return (_jsxs("div", { className: "flex items-center gap-2 px-3 py-2 rounded-md border border-border bg-muted-background", children: [_jsx(Mail, { className: "size-4 text-muted shrink-0" }), _jsx("span", { className: "text-sm text-foreground/80 flex-1 truncate", children: email }), _jsx(SignInInlineLinkButton, { onClick: onAction, children: actionLabel })] }));
94
+ return (_jsxs("div", { className: "flex items-center gap-2 px-3 py-2 rounded-md border border-border bg-muted", children: [_jsx(Mail, { className: "size-4 text-muted shrink-0" }), _jsx("span", { className: "text-sm text-foreground/80 flex-1 truncate", children: email }), _jsx(SignInInlineLinkButton, { onClick: onAction, children: actionLabel })] }));
95
95
  }
96
96
  /** "Continue with <provider>" button. */
97
97
  export function SignInProviderButton({ provider, label, onClick, variant = 'outline' }) {
@@ -100,14 +100,16 @@ export function SignInProviderButton({ provider, label, onClick, variant = 'outl
100
100
  // rtl-ok: arrow hover nudge moves toward inline-end with an explicit RTL mirror.
101
101
  // !size beats Button's [&_svg]:size-4 rule. Arrow fades in and nudges on hover.
102
102
  const arrowClass = '!size-3.5 text-muted opacity-0 group-hover:opacity-100 group-hover:translate-x-0.5 rtl:group-hover:-translate-x-0.5 transition'; // rtl-ok: matched line mirrors the hover nudge for RTL.
103
- return (_jsxs(Button, { variant: "unstyled", size: "none", onClick: onClick, className: "cursor-pointer group h-[42px] w-full inline-flex items-center gap-3 ps-3.5 pe-3 rounded-md border border-border bg-background text-sm font-medium text-foreground transition hover:bg-muted-background", children: [_jsx(Icon, { className: "!size-[18px] shrink-0" }), _jsx("span", { className: "flex-1 text-start", children: label }), _jsx(ArrowRight, { className: arrowClass })] }));
103
+ return (_jsxs(Button, { variant: "unstyled", size: "none", onClick: onClick, className: "cursor-pointer group h-[42px] w-full inline-flex items-center gap-3 ps-3.5 pe-3 rounded-md border border-border bg-background text-sm font-medium text-foreground transition hover:bg-muted", children: [_jsx(Icon, { className: "!size-[18px] shrink-0" }), _jsx("span", { className: "flex-1 text-start", children: label }), _jsx(ArrowRight, { className: arrowClass })] }));
104
104
  }
105
- const variantClass = variant === 'filled' ? '!bg-foreground text-background hover:!bg-foreground/90' : 'hover:shadow-sm';
105
+ const variantClass = variant === 'filled'
106
+ ? '!bg-[var(--auth-button,var(--foreground))] text-[color:var(--auth-button-text,var(--background))] hover:!bg-[var(--auth-button,var(--foreground))]/90'
107
+ : 'hover:shadow-sm';
106
108
  return (_jsxs(Button, { variant: "outline", onClick: onClick, className: `w-full py-5 flex rounded-lg transition duration-150 text-center ${variantClass}`, children: [_jsx(Icon, { className: "!size-[18px]" }), _jsx("span", { className: "text-sm font-medium", children: label })] }));
107
109
  }
108
110
  /** Destructive notice: icon + bold title over a muted meta line. */
109
111
  export function SignInCallout({ icon: Icon, title, meta }) {
110
- return (_jsxs("div", { className: "flex items-center gap-2.5 px-3 py-2.5 rounded-md bg-destructive-background border border-destructive/20", children: [_jsx(Icon, { className: "size-5 text-destructive shrink-0" }), _jsxs("div", { className: "flex-1 min-w-0 text-sm", children: [_jsx("div", { className: "font-semibold text-destructive", children: title }), _jsx("div", { className: "text-xs text-destructive/80", children: meta })] })] }));
112
+ return (_jsxs("div", { className: "flex items-center gap-2.5 px-3 py-2.5 rounded-md bg-destructive border border-destructive/20", children: [_jsx(Icon, { className: "size-5 text-destructive shrink-0" }), _jsxs("div", { className: "flex-1 min-w-0 text-sm", children: [_jsx("div", { className: "font-semibold text-destructive", children: title }), _jsx("div", { className: "text-xs text-destructive/80", children: meta })] })] }));
111
113
  }
112
114
  /** Horizontal rule with a centered label. */
113
115
  export function SignInOrDivider({ children }) {
@@ -1 +1 @@
1
- {"version":3,"file":"SignInPrimitives.js","sourceRoot":"","sources":["../../../src/shell/login/SignInPrimitives.tsx"],"names":[],"mappings":";AAAA,2DAA2D;AAC3D,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AAEhD,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAW7C,MAAM,UAAU,gBAAgB,CAAC,EAAE,QAAQ,EAAE,QAAQ,GAAG,KAAK,EAAyB;IAClF,OAAO,CACH,cACI,SAAS,EACL,QAAQ;YACJ,CAAC,CAAC,mEAAmE;YACrE,CAAC,CAAC,0CAA0C,YAGnD,QAAQ,GACP,CACT,CAAC;AACN,CAAC;AAYD,MAAM,UAAU,gBAAgB,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,GAAG,MAAM,EAAyB;IAC9F,MAAM,YAAY,GAAG,OAAO,KAAK,aAAa,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,WAAW,CAAC;IAClF,OAAO,CACH,0BACK,OAAO,IAAI,cAAK,SAAS,EAAE,GAAG,YAAY,iCAAiC,YAAG,OAAO,GAAO,EAC7F,aAAI,SAAS,EAAC,+EAA+E,YAAE,KAAK,GAAM,EACzG,IAAI,IAAI,YAAG,SAAS,EAAC,oCAAoC,YAAE,IAAI,GAAK,IACnE,CACT,CAAC;AACN,CAAC;AAED,+EAA+E;AAE/E,MAAM,uBAAuB,GAAG,uFAAuF,CAAC;AAExH,MAAM,2BAA2B,GAAG;IAChC,uCAAuC;IACvC,OAAO,EACH,6EAA6E;QAC7E,iDAAiD;IACrD,0EAA0E;IAC1E,OAAO,EAAE,sEAAsE;IAC/E,kBAAkB;IAClB,KAAK,EAAE,sCAAsC;CACvC,CAAC;AAOX,4CAA4C;AAC5C,MAAM,UAAU,gBAAgB,CAAC,EAC7B,OAAO,GAAG,SAAS,EACnB,SAAS,GAAG,EAAE,EACd,IAAI,GAAG,QAAQ,EACf,QAAQ,EACR,GAAG,IAAI,EACa;IACpB,OAAO,CACH,KAAC,MAAM,IACH,OAAO,EAAC,UAAU,EAClB,IAAI,EAAC,MAAM,EACX,IAAI,EAAE,IAAI;QACV,qCAAqC;QACrC,QAAQ,EAAE,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,EACjD,SAAS,EAAE,GAAG,uBAAuB,IAAI,2BAA2B,CAAC,OAAO,CAAC,IAAI,SAAS,EAAE,CAAC,IAAI,EAAE,KAC/F,IAAI,GACV,CACL,CAAC;AACN,CAAC;AAOD,qEAAqE;AACrE,MAAM,UAAU,sBAAsB,CAAC,EACnC,IAAI,GAAG,IAAI,EACX,SAAS,GAAG,EAAE,EACd,IAAI,GAAG,QAAQ,EACf,GAAG,IAAI,EACmB;IAC1B,oEAAoE;IACpE,MAAM,SAAS,GAAG,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,UAAU,CAAC;IACnE,MAAM,IAAI,GACN,kBAAkB,SAAS,0DAA0D;QACrF,2FAA2F,CAAC;IAChG,OAAO,CACH,KAAC,MAAM,IACH,OAAO,EAAC,UAAU,EAClB,IAAI,EAAC,MAAM,EACX,IAAI,EAAE,IAAI,EACV,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,GAAG,IAAI,IAAI,SAAS,EAAE,CAAC,CAAC,CAAC,IAAI,KAChD,IAAI,GACV,CACL,CAAC;AACN,CAAC;AAED,gFAAgF;AAEhF,MAAM,qBAAqB,GAAG;IAC1B,kCAAkC;IAClC,MAAM,EAAE,qFAAqF;IAC7F,mBAAmB;IACnB,MAAM,EAAE,oCAAoC;CACtC,CAAC;AAOX,6EAA6E;AAC7E,MAAM,UAAU,mBAAmB,CAAC,EAAE,QAAQ,EAAE,KAAK,GAAG,QAAQ,EAA4B;IACxF,OAAO,CACH,eACI,SAAS,EAAE,+EAA+E,qBAAqB,CAAC,KAAK,CAAC,EAAE,YAEvH,QAAQ,GACN,CACV,CAAC;AACN,CAAC;AAED,mDAAmD;AACnD,MAAM,UAAU,eAAe,CAAC,EAAE,QAAQ,EAA2B;IACjE,OAAO,CACH,cAAK,SAAS,EAAC,mGAAmG,YAC7G,QAAQ,GACP,CACT,CAAC;AACN,CAAC;AAWD,2EAA2E;AAC3E,MAAM,UAAU,mBAAmB,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,UAAU,EAAE,aAAa,EAA4B;IACxG,OAAO,CACH,eAAK,SAAS,EAAC,gBAAgB,aAC3B,cAAK,SAAS,EAAE,UAAU,YAAG,KAAK,GAAO,EACzC,cAAK,SAAS,EAAE,aAAa,YAAG,QAAQ,GAAO,IAC7C,CACT,CAAC;AACN,CAAC;AAED,iFAAiF;AACjF,gEAAgE;AAChE,MAAM,qBAAqB,GAAG;IAC1B,MAAM,EAAE;QACJ,MAAM,EAAE,uCAAuC;QAC/C,KAAK,EAAE,2DAA2D;QAClE,QAAQ,EAAE,+CAA+C;QACzD,SAAS,EAAE,kFAAkF;QAC7F,OAAO,EAAE,8CAA8C;QACvD,QAAQ,EAAE,mBAAmB;QAC7B,KAAK,EAAE,4CAA4C;QACnD,UAAU,EAAE,IAAI;KACnB;IACD,SAAS,EAAE;QACP,MAAM,EAAE,uCAAuC;QAC/C,KAAK,EAAE,gDAAgD;QACvD,QAAQ,EAAE,qCAAqC;QAC/C,SAAS,EAAE,gFAAgF;QAC3F,OAAO,EAAE,0CAA0C;QACnD,QAAQ,EAAE,qBAAqB;QAC/B,KAAK,EAAE,4CAA4C;QACnD,UAAU,EAAE,SAAS;KACxB;CACK,CAAC;AAaX,yFAAyF;AACzF,MAAM,UAAU,iBAAiB,CAAC,EAC9B,OAAO,GAAG,WAAW,EACrB,KAAK,EACL,KAAK,EACL,QAAQ,EACR,KAAK,EACL,WAAW,EACX,QAAQ,GACa;IACrB,MAAM,CAAC,GAAG,qBAAqB,CAAC,OAAO,CAAC,CAAC;IACzC,OAAO,CACH,eAAK,SAAS,EAAC,+DAA+D,aAC1E,eAAK,SAAS,EAAE,CAAC,CAAC,MAAM,aACnB,KAAK,EACN,KAAC,mBAAmB,IAChB,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,QAAQ,EAClB,UAAU,EAAE,CAAC,CAAC,KAAK,EACnB,aAAa,EAAE,CAAC,CAAC,QAAQ,GAC3B,IACA,EACN,eAAK,SAAS,EAAE,CAAC,CAAC,SAAS,aACvB,cAAK,SAAS,EAAE,CAAC,CAAC,OAAO,YACrB,KAAC,IAAI,IAAC,SAAS,EAAE,CAAC,CAAC,QAAQ,GAAI,GAC7B,EACN,eAAM,SAAS,EAAE,CAAC,CAAC,KAAK,YAAG,KAAK,GAAQ,EACxC,KAAC,sBAAsB,IAAC,IAAI,EAAE,CAAC,CAAC,UAAU,EAAE,OAAO,EAAE,QAAQ,YACxD,WAAW,GACS,IACvB,IACJ,CACT,CAAC;AACN,CAAC;AAWD,iFAAiF;AACjF,MAAM,UAAU,gBAAgB,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,QAAQ,EAAyB;IACrG,OAAO,CACH,eAAK,SAAS,EAAC,2FAA2F,aACrG,KAAK,EACN,KAAC,mBAAmB,IAChB,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,QAAQ,EAClB,UAAU,EAAC,gDAAgD,EAC3D,aAAa,EAAC,6BAA6B,GAC7C,EACF,KAAC,sBAAsB,IAAC,OAAO,EAAE,QAAQ,YAAG,WAAW,GAA0B,IAC/E,CACT,CAAC;AACN,CAAC;AAQD,4EAA4E;AAC5E,MAAM,UAAU,cAAc,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAuB;IAChF,OAAO,CACH,eAAK,SAAS,EAAC,uFAAuF,aAClG,KAAC,IAAI,IAAC,SAAS,EAAC,4BAA4B,GAAG,EAC/C,eAAM,SAAS,EAAC,4CAA4C,YAAE,KAAK,GAAQ,EAC3E,KAAC,sBAAsB,IAAC,OAAO,EAAE,QAAQ,YAAG,WAAW,GAA0B,IAC/E,CACT,CAAC;AACN,CAAC;AAYD,yCAAyC;AACzC,MAAM,UAAU,oBAAoB,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,GAAG,SAAS,EAA6B;IAC7G,MAAM,IAAI,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC;IAEpC,IAAI,OAAO,KAAK,OAAO,EAAE,CAAC;QACtB,iFAAiF;QACjF,gFAAgF;QAChF,MAAM,UAAU,GACZ,gIAAgI,CAAC,CAAC,wDAAwD;QAC9L,OAAO,CACH,MAAC,MAAM,IACH,OAAO,EAAC,UAAU,EAClB,IAAI,EAAC,MAAM,EACX,OAAO,EAAE,OAAO,EAChB,SAAS,EAAC,wMAAwM,aAElN,KAAC,IAAI,IAAC,SAAS,EAAC,uBAAuB,GAAG,EAC1C,eAAM,SAAS,EAAC,mBAAmB,YAAE,KAAK,GAAQ,EAClD,KAAC,UAAU,IAAC,SAAS,EAAE,UAAU,GAAI,IAChC,CACZ,CAAC;IACN,CAAC;IAED,MAAM,YAAY,GACd,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,wDAAwD,CAAC,CAAC,CAAC,iBAAiB,CAAC;IACxG,OAAO,CACH,MAAC,MAAM,IACH,OAAO,EAAC,SAAS,EACjB,OAAO,EAAE,OAAO,EAChB,SAAS,EAAE,mEAAmE,YAAY,EAAE,aAG5F,KAAC,IAAI,IAAC,SAAS,EAAC,cAAc,GAAG,EACjC,eAAM,SAAS,EAAC,qBAAqB,YAAE,KAAK,GAAQ,IAC/C,CACZ,CAAC;AACN,CAAC;AAUD,oEAAoE;AACpE,MAAM,UAAU,aAAa,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAsB;IACzE,OAAO,CACH,eAAK,SAAS,EAAC,yGAAyG,aACpH,KAAC,IAAI,IAAC,SAAS,EAAC,kCAAkC,GAAG,EACrD,eAAK,SAAS,EAAC,wBAAwB,aACnC,cAAK,SAAS,EAAC,gCAAgC,YAAE,KAAK,GAAO,EAC7D,cAAK,SAAS,EAAC,6BAA6B,YAAE,IAAI,GAAO,IACvD,IACJ,CACT,CAAC;AACN,CAAC;AAED,6CAA6C;AAC7C,MAAM,UAAU,eAAe,CAAC,EAAE,QAAQ,EAA2B;IACjE,OAAO,CACH,eAAK,SAAS,EAAC,iFAAiF,aAC5F,cAAK,SAAS,EAAC,uBAAuB,GAAG,EACzC,yBAAO,QAAQ,GAAQ,EACvB,cAAK,SAAS,EAAC,uBAAuB,GAAG,IACvC,CACT,CAAC;AACN,CAAC;AAYD,6DAA6D;AAC7D,MAAM,UAAU,gBAAgB,CAAC,EAC7B,QAAQ,EACR,KAAK,EACL,WAAW,EACX,KAAK,EACL,QAAQ,EACR,OAAO,GAAG,KAAK,EACf,KAAK,GACe;IACpB,OAAO,CACH,eAAK,SAAS,EAAC,uBAAuB,aAClC,gBAAO,OAAO,EAAC,gBAAgB,EAAC,SAAS,EAAC,wCAAwC,YAC7E,KAAK,GACF,EACR,gBACI,GAAG,EAAE,QAAQ,EACb,EAAE,EAAC,gBAAgB,EACnB,IAAI,EAAC,gBAAgB,EACrB,IAAI,EAAC,OAAO,EACZ,SAAS,EAAC,uQAAuQ,EACjR,WAAW,EAAE,WAAW,EACxB,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,kBAC3B,OAAO,EACrB,YAAY,EAAC,KAAK,EAClB,WAAW,EAAC,KAAK,EACjB,cAAc,EAAC,KAAK,EACpB,UAAU,EAAE,KAAK,2CAEH,MAAM,oBACL,OAAO,GACxB,EACD,KAAK,IAAI,CACN,cAAK,IAAI,EAAC,OAAO,EAAC,SAAS,EAAC,0BAA0B,YACjD,KAAK,GACJ,CACT,IACC,CACT,CAAC;AACN,CAAC"}
1
+ {"version":3,"file":"SignInPrimitives.js","sourceRoot":"","sources":["../../../src/shell/login/SignInPrimitives.tsx"],"names":[],"mappings":"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"}
@@ -10,5 +10,10 @@ interface SignInRestrictedEnvStepProps {
10
10
  * docs/restrict-access-to-non-production-envs.md.
11
11
  */
12
12
  export default function SignInRestrictedEnvStep({ onUseDifferentEmail }: SignInRestrictedEnvStepProps): import("react").JSX.Element;
13
+ /** Shared presentation; the host owns session cleanup and automatic redirects. */
14
+ export declare function SignInRestrictedEnvView({ secondsLeft, onUseDifferentEmail, onRedirect, }: SignInRestrictedEnvStepProps & {
15
+ secondsLeft?: number;
16
+ onRedirect: () => void;
17
+ }): import("react").JSX.Element;
13
18
  export {};
14
19
  //# sourceMappingURL=SignInRestrictedEnvStep.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"SignInRestrictedEnvStep.d.ts","sourceRoot":"","sources":["../../../src/shell/login/SignInRestrictedEnvStep.tsx"],"names":[],"mappings":"AAQA,UAAU,4BAA4B;IAClC,0EAA0E;IAC1E,mBAAmB,EAAE,MAAM,IAAI,CAAC;CACnC;AAKD;;;;;;GAMG;AACH,MAAM,CAAC,OAAO,UAAU,uBAAuB,CAAC,EAAE,mBAAmB,EAAE,EAAE,4BAA4B,+BA+DpG"}
1
+ {"version":3,"file":"SignInRestrictedEnvStep.d.ts","sourceRoot":"","sources":["../../../src/shell/login/SignInRestrictedEnvStep.tsx"],"names":[],"mappings":"AAQA,UAAU,4BAA4B;IAClC,0EAA0E;IAC1E,mBAAmB,EAAE,MAAM,IAAI,CAAC;CACnC;AAKD;;;;;;GAMG;AACH,MAAM,CAAC,OAAO,UAAU,uBAAuB,CAAC,EAAE,mBAAmB,EAAE,EAAE,4BAA4B,+BAuCpG;AAED,kFAAkF;AAClF,wBAAgB,uBAAuB,CAAC,EACpC,WAAmC,EACnC,mBAAmB,EACnB,UAAU,GACb,EAAE,4BAA4B,GAAG;IAAE,WAAW,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,IAAI,CAAA;CAAE,+BA6BjF"}
@@ -16,7 +16,6 @@ const AUTO_REDIRECT_SECONDS = 15;
16
16
  * docs/restrict-access-to-non-production-envs.md.
17
17
  */
18
18
  export default function SignInRestrictedEnvStep({ onUseDifferentEmail }) {
19
- const { t } = useUITranslation();
20
19
  // Region-aware: send the user to their own region's production site, never another region's (an
21
20
  // EU user must not be redirected to the US site). Falls back to the canonical site when unknown.
22
21
  const productionUrl = getProductionAppUrl(Env.region);
@@ -43,8 +42,13 @@ export default function SignInRestrictedEnvStep({ onUseDifferentEmail }) {
43
42
  clearInterval(countdown);
44
43
  };
45
44
  }, [productionUrl]);
46
- return (_jsxs(SignInStepLayout, { children: [_jsx(SignInStepHeader, { variant: "destructive", eyebrow: t('auth.restricted.eyebrow'), title: t('auth.restricted.title'), body: t('auth.restricted.body') }), _jsxs("div", { className: "flex flex-col gap-2", children: [_jsx(SignInCallout, { icon: ShieldOff, title: t('auth.restricted.calloutTitle'), meta: t('auth.restricted.calloutMeta') }), _jsx(SignInStepButton, { className: "w-full", onClick: () => {
47
- window.location.href = productionUrl;
48
- }, children: t('auth.restricted.redirect') }), _jsx(SignInStepButton, { variant: "ghost", onClick: onUseDifferentEmail, children: t('auth.restricted.useDifferent') }), _jsx("p", { className: "text-center text-xs text-muted", children: t('auth.restricted.autoRedirect', { seconds: secondsLeft }) })] })] }));
45
+ return (_jsx(SignInRestrictedEnvView, { secondsLeft: secondsLeft, onUseDifferentEmail: onUseDifferentEmail, onRedirect: () => {
46
+ window.location.href = productionUrl;
47
+ } }));
48
+ }
49
+ /** Shared presentation; the host owns session cleanup and automatic redirects. */
50
+ export function SignInRestrictedEnvView({ secondsLeft = AUTO_REDIRECT_SECONDS, onUseDifferentEmail, onRedirect, }) {
51
+ const { t } = useUITranslation();
52
+ return (_jsxs(SignInStepLayout, { children: [_jsx(SignInStepHeader, { variant: "destructive", eyebrow: t('auth.restricted.eyebrow'), title: t('auth.restricted.title'), body: t('auth.restricted.body') }), _jsxs("div", { className: "flex flex-col gap-2", children: [_jsx(SignInCallout, { icon: ShieldOff, title: t('auth.restricted.calloutTitle'), meta: t('auth.restricted.calloutMeta') }), _jsx(SignInStepButton, { className: "w-full", onClick: onRedirect, children: t('auth.restricted.redirect') }), _jsx(SignInStepButton, { variant: "ghost", onClick: onUseDifferentEmail, children: t('auth.restricted.useDifferent') }), _jsx("p", { className: "text-center text-xs text-muted", children: t('auth.restricted.autoRedirect', { seconds: secondsLeft }) })] })] }));
49
53
  }
50
54
  //# sourceMappingURL=SignInRestrictedEnvStep.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SignInRestrictedEnvStep.js","sourceRoot":"","sources":["../../../src/shell/login/SignInRestrictedEnvStep.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SignInRestrictedEnvStep.js","sourceRoot":"","sources":["../../../src/shell/login/SignInRestrictedEnvStep.tsx"],"names":[],"mappings":"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"}
@@ -1,4 +1,23 @@
1
- interface SigninScreenProps {
1
+ import { type SignupData } from '@vertesia/common';
2
+ import { type ComponentType, type ReactNode } from 'react';
3
+ import { type SignInFlowController } from './SignInFlow';
4
+ /** Presentation only: the shared screen still owns session gating and recovery transitions. */
5
+ export interface SignInScreenViewProps {
6
+ flow: SignInFlowController<SignInRecoveryMode>;
7
+ authError?: Error;
8
+ /** Retain these shared forms for tenant resolution and provider sign-in; flow alone does not initiate redirects. */
9
+ children: ReactNode;
10
+ notice: ReactNode;
11
+ isNested: boolean;
12
+ lightLogo?: string;
13
+ darkLogo?: string;
14
+ onUseDifferentAccount: () => void;
15
+ onContinueWithSanitizedScope: () => void;
16
+ onRetry: () => void;
17
+ onSignup: (data: SignupData, firebaseToken: string) => void;
18
+ }
19
+ export interface SigninScreenProps {
20
+ View?: ComponentType<SignInScreenViewProps>;
2
21
  isNested?: boolean;
3
22
  allowedPrefix?: string | string[];
4
23
  lightLogo?: string;
@@ -6,6 +25,22 @@ interface SigninScreenProps {
6
25
  preservePath?: boolean;
7
26
  suppressAuthErrorPrefix?: string | string[];
8
27
  }
9
- export declare function SigninScreen({ allowedPrefix, isNested, lightLogo, darkLogo, preservePath, suppressAuthErrorPrefix, }: SigninScreenProps): import("react").JSX.Element | null;
10
- export {};
28
+ export declare function SigninScreen({ allowedPrefix, isNested, lightLogo, darkLogo, preservePath, suppressAuthErrorPrefix, View, }: SigninScreenProps): import("react").JSX.Element | null;
29
+ /**
30
+ * The modes this screen adds on top of {@link SignInCoreMode}: every one is entered from an
31
+ * `authError` the session surfaced, which is why they stay here rather than in the shared flow.
32
+ */
33
+ export type SignInRecoveryMode = 'blocked' | 'signup' | 'restricted' | 'scopeUnavailable' | 'noAccessibleAccount' | 'credentialFailure' | 'serviceFailure';
34
+ /** The shared Studio sign-in layout; branding only supplies its content and assets. */
35
+ export declare function DefaultSignInScreen({ isNested, lightLogo, darkLogo, notice, children, logoAlt, footer, }: {
36
+ isNested?: boolean;
37
+ lightLogo?: string;
38
+ darkLogo?: string;
39
+ notice?: ReactNode;
40
+ children: ReactNode;
41
+ logoAlt?: string;
42
+ footer?: string;
43
+ }): import("react").JSX.Element;
44
+ /** Shared generic authentication error notice. */
45
+ export declare function SignInErrorNotice(): import("react").JSX.Element;
11
46
  //# sourceMappingURL=SigninScreen.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"SigninScreen.d.ts","sourceRoot":"","sources":["../../../src/shell/login/SigninScreen.tsx"],"names":[],"mappings":"AAoCA,UAAU,iBAAiB;IACvB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAClC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,uBAAuB,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;CAC/C;AAED,wBAAgB,YAAY,CAAC,EACzB,aAAa,EACb,QAAgB,EAChB,SAAS,EACT,QAAQ,EACR,YAAY,EACZ,uBAAuB,GAC1B,EAAE,iBAAiB,sCAanB"}
1
+ {"version":3,"file":"SigninScreen.d.ts","sourceRoot":"","sources":["../../../src/shell/login/SigninScreen.tsx"],"names":[],"mappings":"AAAA,OAAO,EAA0C,KAAK,UAAU,EAAsB,MAAM,kBAAkB,CAAC;AAa/G,OAAO,EAAE,KAAK,aAAa,EAAE,KAAK,SAAS,EAA0B,MAAM,OAAO,CAAC;AACnF,OAAO,EAAE,KAAK,oBAAoB,EAAkC,MAAM,cAAc,CAAC;AAQzF,+FAA+F;AAC/F,MAAM,WAAW,qBAAqB;IAClC,IAAI,EAAE,oBAAoB,CAAC,kBAAkB,CAAC,CAAC;IAC/C,SAAS,CAAC,EAAE,KAAK,CAAC;IAClB,oHAAoH;IACpH,QAAQ,EAAE,SAAS,CAAC;IACpB,MAAM,EAAE,SAAS,CAAC;IAClB,QAAQ,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,qBAAqB,EAAE,MAAM,IAAI,CAAC;IAClC,4BAA4B,EAAE,MAAM,IAAI,CAAC;IACzC,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,QAAQ,EAAE,CAAC,IAAI,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,KAAK,IAAI,CAAC;CAC/D;AAED,MAAM,WAAW,iBAAiB;IAC9B,IAAI,CAAC,EAAE,aAAa,CAAC,qBAAqB,CAAC,CAAC;IAC5C,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAClC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,uBAAuB,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;CAC/C;AAED,wBAAgB,YAAY,CAAC,EACzB,aAAa,EACb,QAAgB,EAChB,SAAS,EACT,QAAQ,EACR,YAAY,EACZ,uBAAuB,EACvB,IAAI,GACP,EAAE,iBAAiB,sCAcnB;AAYD;;;GAGG;AACH,MAAM,MAAM,kBAAkB,GACxB,SAAS,GACT,QAAQ,GACR,YAAY,GACZ,kBAAkB,GAClB,qBAAqB,GACrB,mBAAmB,GACnB,gBAAgB,CAAC;AAmOvB,uFAAuF;AACvF,wBAAgB,mBAAmB,CAAC,EAChC,QAAQ,EACR,SAAS,EACT,QAAQ,EACR,MAAM,EACN,QAAQ,EACR,OAAO,EACP,MAAM,GACT,EAAE;IACC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,QAAQ,EAAE,SAAS,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;CACnB,+BAiBA;AAED,kDAAkD;AAClD,wBAAgB,iBAAiB,gCAehC"}