@vertesia/ui 1.6.0-dev.20261008.064737Z → 1.6.0-dev.20261014.015055Z

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 (204) hide show
  1. package/README.md +24 -0
  2. package/lib/boot/index.d.ts +12 -1
  3. package/lib/boot/index.d.ts.map +1 -1
  4. package/lib/boot/index.js +65 -10
  5. package/lib/boot/index.js.map +1 -1
  6. package/lib/boot/text.d.ts +13 -0
  7. package/lib/boot/text.d.ts.map +1 -0
  8. package/lib/boot/text.js +68 -0
  9. package/lib/boot/text.js.map +1 -0
  10. package/lib/core/components/shadcn/button.d.ts +1 -0
  11. package/lib/core/components/shadcn/button.d.ts.map +1 -1
  12. package/lib/core/components/shadcn/button.js +2 -2
  13. package/lib/core/components/shadcn/button.js.map +1 -1
  14. package/lib/core/components/shadcn/selectBox.d.ts.map +1 -1
  15. package/lib/core/components/shadcn/selectBox.js +2 -2
  16. package/lib/core/components/shadcn/selectBox.js.map +1 -1
  17. package/lib/env/index.d.ts +1 -1
  18. package/lib/env/index.d.ts.map +1 -1
  19. package/lib/env/index.js +1 -1
  20. package/lib/env/index.js.map +1 -1
  21. package/lib/features/agent/PayloadBuilder.d.ts +6 -0
  22. package/lib/features/agent/PayloadBuilder.d.ts.map +1 -1
  23. package/lib/features/agent/chat/AskUserWidget.d.ts.map +1 -1
  24. package/lib/features/agent/chat/AskUserWidget.js +2 -1
  25. package/lib/features/agent/chat/AskUserWidget.js.map +1 -1
  26. package/lib/features/agent/chat/ModernAgentConversation.js +6 -4
  27. package/lib/features/agent/chat/ModernAgentConversation.js.map +1 -1
  28. package/lib/features/agent/chat/ModernAgentOutput/AllMessagesMixed.d.ts.map +1 -1
  29. package/lib/features/agent/chat/ModernAgentOutput/AllMessagesMixed.js +2 -253
  30. package/lib/features/agent/chat/ModernAgentOutput/AllMessagesMixed.js.map +1 -1
  31. package/lib/features/agent/chat/ModernAgentOutput/CollapsibleAgentMarkdown.d.ts +1 -3
  32. package/lib/features/agent/chat/ModernAgentOutput/CollapsibleAgentMarkdown.d.ts.map +1 -1
  33. package/lib/features/agent/chat/ModernAgentOutput/CollapsibleAgentMarkdown.js +2 -8
  34. package/lib/features/agent/chat/ModernAgentOutput/CollapsibleAgentMarkdown.js.map +1 -1
  35. package/lib/features/agent/chat/ModernAgentOutput/SummaryConversation.d.ts.map +1 -1
  36. package/lib/features/agent/chat/ModernAgentOutput/SummaryConversation.js +58 -0
  37. package/lib/features/agent/chat/ModernAgentOutput/SummaryConversation.js.map +1 -1
  38. package/lib/features/agent/chat/ModernAgentOutput/agentMarkdownStyles.d.ts +4 -0
  39. package/lib/features/agent/chat/ModernAgentOutput/agentMarkdownStyles.d.ts.map +1 -0
  40. package/lib/features/agent/chat/ModernAgentOutput/agentMarkdownStyles.js +248 -0
  41. package/lib/features/agent/chat/ModernAgentOutput/agentMarkdownStyles.js.map +1 -0
  42. package/lib/features/agent/chat/SkillWidgetProvider.d.ts.map +1 -1
  43. package/lib/features/agent/chat/SkillWidgetProvider.js +3 -2
  44. package/lib/features/agent/chat/SkillWidgetProvider.js.map +1 -1
  45. package/lib/i18n/LanguageProvider.d.ts +9 -1
  46. package/lib/i18n/LanguageProvider.d.ts.map +1 -1
  47. package/lib/i18n/LanguageProvider.js +7 -4
  48. package/lib/i18n/LanguageProvider.js.map +1 -1
  49. package/lib/i18n/locales/ar.json +6 -1
  50. package/lib/i18n/locales/de.json +6 -1
  51. package/lib/i18n/locales/en.json +6 -1
  52. package/lib/i18n/locales/es.json +6 -1
  53. package/lib/i18n/locales/fr.json +6 -1
  54. package/lib/i18n/locales/it.json +6 -1
  55. package/lib/i18n/locales/ja.json +6 -1
  56. package/lib/i18n/locales/ko.json +6 -1
  57. package/lib/i18n/locales/pt.json +6 -1
  58. package/lib/i18n/locales/ru.json +6 -1
  59. package/lib/i18n/locales/tr.json +6 -1
  60. package/lib/i18n/locales/zh-TW.json +6 -1
  61. package/lib/i18n/locales/zh.json +6 -1
  62. package/lib/i18n/rtl.d.ts +4 -2
  63. package/lib/i18n/rtl.d.ts.map +1 -1
  64. package/lib/i18n/rtl.js +4 -2
  65. package/lib/i18n/rtl.js.map +1 -1
  66. package/lib/session/UserSessionProvider.d.ts.map +1 -1
  67. package/lib/session/UserSessionProvider.js +10 -4
  68. package/lib/session/UserSessionProvider.js.map +1 -1
  69. package/lib/session/auth/composable.d.ts +1 -5
  70. package/lib/session/auth/composable.d.ts.map +1 -1
  71. package/lib/session/auth/composable.js +1 -10
  72. package/lib/session/auth/composable.js.map +1 -1
  73. package/lib/session/auth/firebase.d.ts.map +1 -1
  74. package/lib/session/auth/firebase.js +8 -5
  75. package/lib/session/auth/firebase.js.map +1 -1
  76. package/lib/session/auth/oauth.d.ts.map +1 -1
  77. package/lib/session/auth/oauth.js +53 -25
  78. package/lib/session/auth/oauth.js.map +1 -1
  79. package/lib/session/auth/vertesiaHosts.d.ts +0 -40
  80. package/lib/session/auth/vertesiaHosts.d.ts.map +1 -1
  81. package/lib/session/auth/vertesiaHosts.js +2 -45
  82. package/lib/session/auth/vertesiaHosts.js.map +1 -1
  83. package/lib/session/index.d.ts +1 -1
  84. package/lib/session/index.d.ts.map +1 -1
  85. package/lib/session/index.js +1 -1
  86. package/lib/session/index.js.map +1 -1
  87. package/lib/session/scopeSelection.d.ts +4 -0
  88. package/lib/session/scopeSelection.d.ts.map +1 -1
  89. package/lib/session/scopeSelection.js +11 -0
  90. package/lib/session/scopeSelection.js.map +1 -1
  91. package/lib/shell/VertesiaShell.d.ts +7 -2
  92. package/lib/shell/VertesiaShell.d.ts.map +1 -1
  93. package/lib/shell/VertesiaShell.js +2 -2
  94. package/lib/shell/VertesiaShell.js.map +1 -1
  95. package/lib/shell/login/InviteAcceptModal.d.ts.map +1 -1
  96. package/lib/shell/login/InviteAcceptModal.js +83 -42
  97. package/lib/shell/login/InviteAcceptModal.js.map +1 -1
  98. package/lib/vertesia-ui-boot.js +52 -15
  99. package/lib/vertesia-ui-boot.js.map +1 -1
  100. package/lib/vertesia-ui-core.js +44 -44
  101. package/lib/vertesia-ui-core.js.map +1 -1
  102. package/lib/vertesia-ui-env.js +1 -1
  103. package/lib/vertesia-ui-env.js.map +1 -1
  104. package/lib/vertesia-ui-features.js +570 -585
  105. package/lib/vertesia-ui-features.js.map +1 -1
  106. package/lib/vertesia-ui-i18n.B1Nd8-dE.chunk.js +5 -0
  107. package/lib/vertesia-ui-i18n.B1Nd8-dE.chunk.js.map +1 -0
  108. package/lib/vertesia-ui-i18n.B2Z7mx1x.chunk.js +5 -0
  109. package/lib/vertesia-ui-i18n.B2Z7mx1x.chunk.js.map +1 -0
  110. package/lib/vertesia-ui-i18n.B756-YtS.chunk.js +5 -0
  111. package/lib/vertesia-ui-i18n.B756-YtS.chunk.js.map +1 -0
  112. package/lib/vertesia-ui-i18n.BICdgAEn.chunk.js +5 -0
  113. package/lib/vertesia-ui-i18n.BICdgAEn.chunk.js.map +1 -0
  114. package/lib/vertesia-ui-i18n.B_yx0c2A.chunk.js +5 -0
  115. package/lib/vertesia-ui-i18n.B_yx0c2A.chunk.js.map +1 -0
  116. package/lib/vertesia-ui-i18n.BwPrGiQn.chunk.js +5 -0
  117. package/lib/vertesia-ui-i18n.BwPrGiQn.chunk.js.map +1 -0
  118. package/lib/vertesia-ui-i18n.CfQbOHm3.chunk.js +5 -0
  119. package/lib/vertesia-ui-i18n.CfQbOHm3.chunk.js.map +1 -0
  120. package/lib/vertesia-ui-i18n.DMISlF16.chunk.js +5 -0
  121. package/lib/vertesia-ui-i18n.DMISlF16.chunk.js.map +1 -0
  122. package/lib/vertesia-ui-i18n.D_WA36Yq.chunk.js +5 -0
  123. package/lib/vertesia-ui-i18n.D_WA36Yq.chunk.js.map +1 -0
  124. package/lib/vertesia-ui-i18n.Dp3KuMs-.chunk.js +5 -0
  125. package/lib/vertesia-ui-i18n.Dp3KuMs-.chunk.js.map +1 -0
  126. package/lib/vertesia-ui-i18n.DsioKoQ3.chunk.js +5 -0
  127. package/lib/vertesia-ui-i18n.DsioKoQ3.chunk.js.map +1 -0
  128. package/lib/vertesia-ui-i18n.QEIqEPlv.chunk.js +5 -0
  129. package/lib/vertesia-ui-i18n.QEIqEPlv.chunk.js.map +1 -0
  130. package/lib/vertesia-ui-i18n.js +2 -2
  131. package/lib/vertesia-ui-i18n.js.map +1 -1
  132. package/lib/vertesia-ui-layout.js +15 -15
  133. package/lib/vertesia-ui-layout.js.map +1 -1
  134. package/lib/vertesia-ui-rich-text.js +44 -44
  135. package/lib/vertesia-ui-rich-text.js.map +1 -1
  136. package/lib/vertesia-ui-session.js +1 -1
  137. package/lib/vertesia-ui-session.js.map +1 -1
  138. package/lib/vertesia-ui-shell.js +51 -51
  139. package/lib/vertesia-ui-shell.js.map +1 -1
  140. package/lib/vertesia-ui-widgets.js +51 -51
  141. package/lib/vertesia-ui-widgets.js.map +1 -1
  142. package/package.json +20 -20
  143. package/src/boot/index.ts +74 -11
  144. package/src/boot/text.ts +80 -0
  145. package/src/core/components/shadcn/button.tsx +3 -2
  146. package/src/core/components/shadcn/selectBox.tsx +12 -4
  147. package/src/css/index.css +1 -1
  148. package/src/css/typography.css +111 -88
  149. package/src/env/index.ts +0 -2
  150. package/src/features/agent/chat/AskUserWidget.tsx +3 -1
  151. package/src/features/agent/chat/ModernAgentConversation.tsx +7 -4
  152. package/src/features/agent/chat/ModernAgentOutput/AllMessagesMixed.tsx +2 -253
  153. package/src/features/agent/chat/ModernAgentOutput/CollapsibleAgentMarkdown.tsx +2 -8
  154. package/src/features/agent/chat/ModernAgentOutput/SummaryConversation.ts +60 -0
  155. package/src/features/agent/chat/ModernAgentOutput/agentMarkdownStyles.ts +248 -0
  156. package/src/features/agent/chat/SkillWidgetProvider.tsx +3 -2
  157. package/src/i18n/LanguageProvider.tsx +16 -4
  158. package/src/i18n/locales/ar.json +6 -1
  159. package/src/i18n/locales/de.json +6 -1
  160. package/src/i18n/locales/en.json +6 -1
  161. package/src/i18n/locales/es.json +6 -1
  162. package/src/i18n/locales/fr.json +6 -1
  163. package/src/i18n/locales/it.json +6 -1
  164. package/src/i18n/locales/ja.json +6 -1
  165. package/src/i18n/locales/ko.json +6 -1
  166. package/src/i18n/locales/pt.json +6 -1
  167. package/src/i18n/locales/ru.json +6 -1
  168. package/src/i18n/locales/tr.json +6 -1
  169. package/src/i18n/locales/zh-TW.json +6 -1
  170. package/src/i18n/locales/zh.json +6 -1
  171. package/src/i18n/rtl.ts +5 -2
  172. package/src/session/UserSessionProvider.tsx +11 -4
  173. package/src/session/auth/composable.ts +1 -11
  174. package/src/session/auth/firebase.ts +9 -6
  175. package/src/session/auth/oauth.ts +65 -25
  176. package/src/session/auth/vertesiaHosts.ts +2 -47
  177. package/src/session/index.ts +1 -1
  178. package/src/session/scopeSelection.ts +13 -0
  179. package/src/shell/VertesiaShell.tsx +8 -2
  180. package/src/shell/login/InviteAcceptModal.tsx +112 -65
  181. package/lib/vertesia-ui-i18n.B0orbJb6.chunk.js +0 -5
  182. package/lib/vertesia-ui-i18n.B0orbJb6.chunk.js.map +0 -1
  183. package/lib/vertesia-ui-i18n.BChwIQVA.chunk.js +0 -5
  184. package/lib/vertesia-ui-i18n.BChwIQVA.chunk.js.map +0 -1
  185. package/lib/vertesia-ui-i18n.BTEcAVQm.chunk.js +0 -5
  186. package/lib/vertesia-ui-i18n.BTEcAVQm.chunk.js.map +0 -1
  187. package/lib/vertesia-ui-i18n.BeJQKbv7.chunk.js +0 -5
  188. package/lib/vertesia-ui-i18n.BeJQKbv7.chunk.js.map +0 -1
  189. package/lib/vertesia-ui-i18n.BpGr0-5g.chunk.js +0 -5
  190. package/lib/vertesia-ui-i18n.BpGr0-5g.chunk.js.map +0 -1
  191. package/lib/vertesia-ui-i18n.Bs8x-1wI.chunk.js +0 -5
  192. package/lib/vertesia-ui-i18n.Bs8x-1wI.chunk.js.map +0 -1
  193. package/lib/vertesia-ui-i18n.BymQoOm0.chunk.js +0 -5
  194. package/lib/vertesia-ui-i18n.BymQoOm0.chunk.js.map +0 -1
  195. package/lib/vertesia-ui-i18n.CNT_wabV.chunk.js +0 -5
  196. package/lib/vertesia-ui-i18n.CNT_wabV.chunk.js.map +0 -1
  197. package/lib/vertesia-ui-i18n.Cxh1iVk0.chunk.js +0 -5
  198. package/lib/vertesia-ui-i18n.Cxh1iVk0.chunk.js.map +0 -1
  199. package/lib/vertesia-ui-i18n.DLYCM9fV.chunk.js +0 -5
  200. package/lib/vertesia-ui-i18n.DLYCM9fV.chunk.js.map +0 -1
  201. package/lib/vertesia-ui-i18n.QvAVguDs.chunk.js +0 -5
  202. package/lib/vertesia-ui-i18n.QvAVguDs.chunk.js.map +0 -1
  203. package/lib/vertesia-ui-i18n.smozeSmI.chunk.js +0 -5
  204. package/lib/vertesia-ui-i18n.smozeSmI.chunk.js.map +0 -1
@@ -1,5 +1,7 @@
1
+ import { REQUESTED_SCOPE_UNAVAILABLE_ERROR_CODE } from '@vertesia/common';
1
2
  import { Env } from '@vertesia/ui/env';
2
3
  import { jwtDecode } from 'jwt-decode';
4
+ import { forgetRejectedScopeSelection, resolveAuthSelection } from '../scopeSelection';
3
5
  import { markCentralAuthRoundTripStarted } from './authRoundTrip';
4
6
  import { verifyAuthState } from './authState';
5
7
  import { usesGatewaySession } from './gateway';
@@ -71,7 +73,13 @@ async function acquireToken(forceRefresh = false) {
71
73
  if (new URL(redirectUri).origin !== window.location.origin)
72
74
  throw new Error('OAuth callback must be same-origin');
73
75
  const issuer = (config.issuer ? httpsUrl(config.issuer).toString() : Env.endpoints.sts).replace(/\/+$/, '');
74
- const current = new URL(window.location.href);
76
+ // A token is issued for one audience. The default audience follows the issuer, which is already part of every
77
+ // stored credential's identity; a configured one is recorded alongside it, so changing it never reuses a token,
78
+ // refresh session or login transaction issued for the previous audience.
79
+ const configuredResource = config.resource ? httpsUrl(config.resource).toString() : undefined;
80
+ const sameClient = (stored) => stored.clientId === clientId && stored.issuer === issuer && stored.resource === configuredResource;
81
+ let current = new URL(window.location.href);
82
+ let { accountId, projectId } = resolveAuthSelection(current);
75
83
  const callback = current.origin + current.pathname === new URL(redirectUri).origin + new URL(redirectUri).pathname;
76
84
  const state = callback ? current.searchParams.get('state') : null;
77
85
  const code = callback ? current.searchParams.get('code') : null;
@@ -84,15 +92,27 @@ async function acquireToken(forceRefresh = false) {
84
92
  transaction = raw ? JSON.parse(raw) : undefined;
85
93
  if (!transaction ||
86
94
  transaction.state !== state ||
87
- transaction.clientId !== clientId ||
95
+ !sameClient(transaction) ||
88
96
  transaction.redirectUri !== redirectUri ||
89
- transaction.issuer !== issuer ||
90
97
  Date.now() - transaction.created > MAX_TRANSACTION_AGE ||
91
98
  transaction.created > Date.now()) {
92
99
  throw new Error('Invalid or expired OAuth login state');
93
100
  }
94
- if (error || !code)
101
+ if (error === REQUESTED_SCOPE_UNAVAILABLE_ERROR_CODE && transaction.rememberedScope?.accountId) {
102
+ const target = new URL(transaction.target);
103
+ if (target.origin !== window.location.origin)
104
+ throw new Error('Invalid OAuth return target');
105
+ forgetRejectedScopeSelection(transaction.rememberedScope.accountId, transaction.rememberedScope.projectId);
106
+ clearAppOAuth();
107
+ current = target;
108
+ window.history.replaceState(window.history.state, '', current);
109
+ accountId = transaction.retryScope?.accountId;
110
+ projectId = undefined;
111
+ transaction = undefined;
112
+ }
113
+ else if (error || !code) {
95
114
  throw new Error(`Application sign-in was not completed (${error || 'missing code'})`);
115
+ }
96
116
  }
97
117
  else {
98
118
  const raw = sessionStorage.getItem(TOKEN_KEY);
@@ -100,23 +120,18 @@ async function acquireToken(forceRefresh = false) {
100
120
  const cached = JSON.parse(raw);
101
121
  const claims = jwtDecode(cached.token);
102
122
  if (config.offlineAccess &&
103
- cached.clientId === clientId &&
104
- cached.issuer === issuer &&
105
- (!current.searchParams.get('p') || claims.project?.id === current.searchParams.get('p')) &&
106
- (!current.searchParams.get('a') || claims.account?.id === current.searchParams.get('a')))
107
- refreshCredential =
108
- refreshSession?.clientId === clientId && refreshSession.issuer === issuer
109
- ? refreshSession.token
110
- : undefined;
123
+ sameClient(cached) &&
124
+ (!projectId || claims.project?.id === projectId) &&
125
+ (!accountId || claims.account?.id === accountId))
126
+ refreshCredential = refreshSession && sameClient(refreshSession) ? refreshSession.token : undefined;
111
127
  // Discard credentials persisted by older SDK versions rather than loading them into the new session.
112
128
  if (cached.refreshToken)
113
129
  sessionStorage.removeItem(TOKEN_KEY);
114
- if (cached.clientId === clientId &&
115
- cached.issuer === issuer &&
130
+ if (sameClient(cached) &&
116
131
  !forceRefresh &&
117
132
  claims.exp > Date.now() / 1000 + (config.offlineAccess ? 300 : 30) &&
118
- (!current.searchParams.get('p') || claims.project?.id === current.searchParams.get('p')) &&
119
- (!current.searchParams.get('a') || claims.account?.id === current.searchParams.get('a'))) {
133
+ (!projectId || claims.project?.id === projectId) &&
134
+ (!accountId || claims.account?.id === accountId)) {
120
135
  return cached.token;
121
136
  }
122
137
  }
@@ -132,7 +147,7 @@ async function acquireToken(forceRefresh = false) {
132
147
  const authorize = httpsUrl(metadata.authorization_endpoint);
133
148
  const tokenEndpoint = httpsUrl(metadata.token_endpoint);
134
149
  const revocationEndpoint = metadata.revocation_endpoint === undefined ? undefined : httpsUrl(metadata.revocation_endpoint).toString();
135
- const resource = config.resource ? httpsUrl(config.resource).toString() : new URL(metadata.issuer).toString();
150
+ const resource = configuredResource ?? new URL(metadata.issuer).toString();
136
151
  if (refreshCredential) {
137
152
  try {
138
153
  const response = await fetch(tokenEndpoint, {
@@ -153,18 +168,20 @@ async function acquireToken(forceRefresh = false) {
153
168
  if (claims.iss.replace(/\/+$/, '') !== issuer ||
154
169
  claims.client_id !== clientId ||
155
170
  claims.exp <= Date.now() / 1000 ||
156
- (!!current.searchParams.get('a') && claims.account?.id !== current.searchParams.get('a')) ||
157
- (!!current.searchParams.get('p') && claims.project?.id !== current.searchParams.get('p')))
171
+ (!!accountId && claims.account?.id !== accountId) ||
172
+ (!!projectId && claims.project?.id !== projectId))
158
173
  throw new OAuthLoginError('Invalid OAuth refresh identity');
159
174
  sessionStorage.setItem(TOKEN_KEY, JSON.stringify({
160
175
  token: grant.access_token,
161
176
  clientId,
162
177
  issuer,
178
+ resource: configuredResource,
163
179
  }));
164
180
  refreshSession = {
165
181
  token: grant.refresh_token ?? refreshCredential,
166
182
  clientId,
167
183
  issuer,
184
+ resource: configuredResource,
168
185
  tokenEndpoint: tokenEndpoint.toString(),
169
186
  revocationEndpoint,
170
187
  };
@@ -205,6 +222,7 @@ async function acquireToken(forceRefresh = false) {
205
222
  token: grant.access_token,
206
223
  clientId,
207
224
  issuer,
225
+ resource: configuredResource,
208
226
  }));
209
227
  refreshSession =
210
228
  config.offlineAccess && grant.refresh_token
@@ -212,6 +230,7 @@ async function acquireToken(forceRefresh = false) {
212
230
  token: grant.refresh_token,
213
231
  clientId,
214
232
  issuer,
233
+ resource: configuredResource,
215
234
  tokenEndpoint: tokenEndpoint.toString(),
216
235
  revocationEndpoint,
217
236
  }
@@ -243,6 +262,12 @@ async function acquireToken(forceRefresh = false) {
243
262
  if (!config.scopes && document.scope)
244
263
  scopes = document.scope.split(/\s+/);
245
264
  }
265
+ const explicitScope = current.searchParams.has('a') || current.searchParams.has('p')
266
+ ? {
267
+ accountId: current.searchParams.get('a') ?? undefined,
268
+ projectId: current.searchParams.get('p') ?? undefined,
269
+ }
270
+ : Env.defaultAuthSelection;
246
271
  const verifier = randomValue();
247
272
  const next = {
248
273
  state: randomValue(),
@@ -250,7 +275,12 @@ async function acquireToken(forceRefresh = false) {
250
275
  clientId,
251
276
  redirectUri,
252
277
  issuer,
278
+ resource: configuredResource,
253
279
  target: current.toString(),
280
+ rememberedScope: accountId && explicitScope?.projectId === undefined && (!explicitScope?.accountId || projectId)
281
+ ? { accountId, projectId }
282
+ : undefined,
283
+ retryScope: explicitScope?.accountId ? { accountId: explicitScope.accountId } : undefined,
254
284
  created: Date.now(),
255
285
  };
256
286
  const digest = await crypto.subtle.digest('SHA-256', new TextEncoder().encode(verifier));
@@ -264,12 +294,10 @@ async function acquireToken(forceRefresh = false) {
264
294
  authorize.searchParams.set('scope', (config.offlineAccess
265
295
  ? [...new Set([...scopes, 'offline_access'])]
266
296
  : scopes.filter((s) => s !== 'offline_access')).join(' '));
267
- const account = current.searchParams.get('a');
268
- if (account)
269
- authorize.searchParams.set('account_id', account);
270
- const project = current.searchParams.get('p');
271
- if (project)
272
- authorize.searchParams.set('project_id', project);
297
+ if (accountId)
298
+ authorize.searchParams.set('account_id', accountId);
299
+ if (projectId)
300
+ authorize.searchParams.set('project_id', projectId);
273
301
  sessionStorage.setItem(TRANSACTION_KEY, JSON.stringify(next));
274
302
  markCentralAuthRoundTripStarted();
275
303
  window.location.replace(authorize.toString());
@@ -1 +1 @@
1
- {"version":3,"file":"oauth.js","sourceRoot":"","sources":["../../../src/session/auth/oauth.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"oauth.js","sourceRoot":"","sources":["../../../src/session/auth/oauth.ts"],"names":[],"mappings":"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"}
@@ -1,43 +1,3 @@
1
- /** A single DNS label: alphanumeric, inner hyphens allowed. */
2
- export declare const LABEL = "[a-z0-9](?:[a-z0-9-]*[a-z0-9])?";
3
- /** The region label is optional throughout, because each regional host has a global US alias. */
4
- export declare const REGION = "(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\\.)?";
5
- /**
6
- * Hostnames served by the UI backend — Vertesia's own code, not merely a Vertesia-owned name:
7
- * `cloud.vertesia.io`, `cloud.us1.vertesia.io` — the Cloud UI
8
- * `preprod.cloud.vertesia.io`, `preview.cloud.us1.vertesia.io` — its preview/preprod tiers
9
- * `acme.cloud.us1.vertesia.io` — per-IdP-tenant branded hosts
10
- * `dev-feat-x.ui.dev1.vertesia.io` — dynamic per-branch dev envs
11
- *
12
- * Mirrors the load-balancer host rules (region-lb/main.tf: `cloud.${var.domain}`,
13
- * `*.cloud.${var.domain}`, `*.ui.${var.domain}`) rather than the DNS zone, so a name we merely own
14
- * is not trusted for what serves it.
15
- */
16
- export declare const FIRST_PARTY_HOST_PATTERNS: readonly RegExp[];
17
- /**
18
- * Public app-gateway origins. Stable tiers use the `apps*` browser-facing host, while development
19
- * environments reach the gateway through its `*.api.*` Cloud Run route:
20
- * `apps.us1.vertesia.io`, `apps-preview.us1.vertesia.io`
21
- * `app-gateway-dev1.api.dev1.vertesia.io`, `app-gateway-us3.api.us3.vertesia.io`
22
- *
23
- * The second label is deliberately unconstrained. Branch environments do NOT each get a gateway —
24
- * they share their region's (`detectGatewayUrl` in packages/server-common/src/env/ServerEnv.ts:444
25
- * and `getAppgenServerBaseUrl` in packages/workflows/.../app_workspace/workspace-utils.ts), so the
26
- * host published to browsers is region-scoped, while the per-branch `app-gateway-dev-<branch>`
27
- * shape in the infrastructure README also exists. Matching `app-gateway-<anything>` covers both,
28
- * and every Cloud Run service named that way *is* a gateway (region-compute/main.tf:373).
29
- *
30
- * These serve every tenant's published application from one shared origin, and published assets
31
- * need no authentication — so this is generated, low-trust code sitting on a Vertesia-owned
32
- * hostname. Owning the domain is not the test; which backend serves the origin is.
33
- *
34
- * Two load-balancer variables can map further hostnames onto the same backend —
35
- * `appgen_host_aliases` and `appgen_preview_host_aliases` in
36
- * infrastructure/terraform/modules/region-lb/variables.tf. Both are empty in every region today; if
37
- * one is ever set, add the alias here too, or it silently falls through to the permissive branch of
38
- * Policy L and becomes an origin that may receive a token at any path.
39
- */
40
- export declare const GATEWAY_HOST_PATTERNS: readonly RegExp[];
41
1
  export declare function isLoopbackHostname(hostname: string): boolean;
42
2
  export declare function normalizeHostname(hostname: string): string;
43
3
  export declare const AUTH_BROKER_HOST_PATTERNS: readonly RegExp[];
@@ -1 +1 @@
1
- {"version":3,"file":"vertesiaHosts.d.ts","sourceRoot":"","sources":["../../../src/session/auth/vertesiaHosts.ts"],"names":[],"mappings":"AACA,+DAA+D;AAC/D,eAAO,MAAM,KAAK,oCAAoC,CAAC;AAEvD,iGAAiG;AACjG,eAAO,MAAM,MAAM,4CAAqB,CAAC;AAEzC;;;;;;;;;;GAUG;AACH,eAAO,MAAM,yBAAyB,EAAE,SAAS,MAAM,EAItD,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,eAAO,MAAM,qBAAqB,EAAE,SAAS,MAAM,EAGlD,CAAC;AAEF,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAQ5D;AAED,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAE1D;AAED,eAAO,MAAM,yBAAyB,EAAE,SAAS,MAAM,EAAoD,CAAC;AAE5G,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,GAAE;IAAE,aAAa,CAAC,EAAE,OAAO,CAAA;CAAO,GAAG,OAAO,CAgBxG"}
1
+ {"version":3,"file":"vertesiaHosts.d.ts","sourceRoot":"","sources":["../../../src/session/auth/vertesiaHosts.ts"],"names":[],"mappings":"AAOA,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAQ5D;AAED,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAE1D;AAED,eAAO,MAAM,yBAAyB,EAAE,SAAS,MAAM,EAAoD,CAAC;AAE5G,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,GAAE;IAAE,aAAa,CAAC,EAAE,OAAO,CAAA;CAAO,GAAG,OAAO,CAgBxG"}
@@ -1,51 +1,8 @@
1
1
  const LOOPBACK_IPV4 = /^127\.\d{1,3}\.\d{1,3}\.\d{1,3}$/;
2
2
  /** A single DNS label: alphanumeric, inner hyphens allowed. */
3
- export const LABEL = '[a-z0-9](?:[a-z0-9-]*[a-z0-9])?';
3
+ const LABEL = '[a-z0-9](?:[a-z0-9-]*[a-z0-9])?';
4
4
  /** The region label is optional throughout, because each regional host has a global US alias. */
5
- export const REGION = `(?:${LABEL}\\.)?`;
6
- /**
7
- * Hostnames served by the UI backend — Vertesia's own code, not merely a Vertesia-owned name:
8
- * `cloud.vertesia.io`, `cloud.us1.vertesia.io` — the Cloud UI
9
- * `preprod.cloud.vertesia.io`, `preview.cloud.us1.vertesia.io` — its preview/preprod tiers
10
- * `acme.cloud.us1.vertesia.io` — per-IdP-tenant branded hosts
11
- * `dev-feat-x.ui.dev1.vertesia.io` — dynamic per-branch dev envs
12
- *
13
- * Mirrors the load-balancer host rules (region-lb/main.tf: `cloud.${var.domain}`,
14
- * `*.cloud.${var.domain}`, `*.ui.${var.domain}`) rather than the DNS zone, so a name we merely own
15
- * is not trusted for what serves it.
16
- */
17
- export const FIRST_PARTY_HOST_PATTERNS = [
18
- new RegExp(`^cloud\\.${REGION}vertesia\\.io$`),
19
- new RegExp(`^${LABEL}\\.cloud\\.${REGION}vertesia\\.io$`),
20
- new RegExp(`^${LABEL}\\.ui\\.${LABEL}\\.vertesia\\.io$`),
21
- ];
22
- /**
23
- * Public app-gateway origins. Stable tiers use the `apps*` browser-facing host, while development
24
- * environments reach the gateway through its `*.api.*` Cloud Run route:
25
- * `apps.us1.vertesia.io`, `apps-preview.us1.vertesia.io`
26
- * `app-gateway-dev1.api.dev1.vertesia.io`, `app-gateway-us3.api.us3.vertesia.io`
27
- *
28
- * The second label is deliberately unconstrained. Branch environments do NOT each get a gateway —
29
- * they share their region's (`detectGatewayUrl` in packages/server-common/src/env/ServerEnv.ts:444
30
- * and `getAppgenServerBaseUrl` in packages/workflows/.../app_workspace/workspace-utils.ts), so the
31
- * host published to browsers is region-scoped, while the per-branch `app-gateway-dev-<branch>`
32
- * shape in the infrastructure README also exists. Matching `app-gateway-<anything>` covers both,
33
- * and every Cloud Run service named that way *is* a gateway (region-compute/main.tf:373).
34
- *
35
- * These serve every tenant's published application from one shared origin, and published assets
36
- * need no authentication — so this is generated, low-trust code sitting on a Vertesia-owned
37
- * hostname. Owning the domain is not the test; which backend serves the origin is.
38
- *
39
- * Two load-balancer variables can map further hostnames onto the same backend —
40
- * `appgen_host_aliases` and `appgen_preview_host_aliases` in
41
- * infrastructure/terraform/modules/region-lb/variables.tf. Both are empty in every region today; if
42
- * one is ever set, add the alias here too, or it silently falls through to the permissive branch of
43
- * Policy L and becomes an origin that may receive a token at any path.
44
- */
45
- export const GATEWAY_HOST_PATTERNS = [
46
- new RegExp(`^apps(?:-preview|-preprod)?\\.${REGION}vertesia\\.io$`),
47
- new RegExp(`^app-gateway-${LABEL}\\.api\\.${LABEL}\\.vertesia\\.io$`),
48
- ];
5
+ const REGION = `(?:${LABEL}\\.)?`;
49
6
  export function isLoopbackHostname(hostname) {
50
7
  if (hostname === 'localhost' || hostname.endsWith('.localhost')) {
51
8
  return true;
@@ -1 +1 @@
1
- {"version":3,"file":"vertesiaHosts.js","sourceRoot":"","sources":["../../../src/session/auth/vertesiaHosts.ts"],"names":[],"mappings":"AAAA,MAAM,aAAa,GAAG,kCAAkC,CAAC;AACzD,+DAA+D;AAC/D,MAAM,CAAC,MAAM,KAAK,GAAG,iCAAiC,CAAC;AAEvD,iGAAiG;AACjG,MAAM,CAAC,MAAM,MAAM,GAAG,MAAM,KAAK,OAAO,CAAC;AAEzC;;;;;;;;;;GAUG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAsB;IACxD,IAAI,MAAM,CAAC,YAAY,MAAM,gBAAgB,CAAC;IAC9C,IAAI,MAAM,CAAC,IAAI,KAAK,cAAc,MAAM,gBAAgB,CAAC;IACzD,IAAI,MAAM,CAAC,IAAI,KAAK,WAAW,KAAK,mBAAmB,CAAC;CAC3D,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAsB;IACpD,IAAI,MAAM,CAAC,iCAAiC,MAAM,gBAAgB,CAAC;IACnE,IAAI,MAAM,CAAC,gBAAgB,KAAK,YAAY,KAAK,mBAAmB,CAAC;CACxE,CAAC;AAEF,MAAM,UAAU,kBAAkB,CAAC,QAAgB;IAC/C,IAAI,QAAQ,KAAK,WAAW,IAAI,QAAQ,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;QAC9D,OAAO,IAAI,CAAC;IAChB,CAAC;IACD,IAAI,QAAQ,KAAK,KAAK,IAAI,QAAQ,KAAK,OAAO,EAAE,CAAC;QAC7C,OAAO,IAAI,CAAC;IAChB,CAAC;IACD,OAAO,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;AACxC,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,QAAgB;IAC9C,OAAO,QAAQ,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;AACrD,CAAC;AAED,MAAM,CAAC,MAAM,yBAAyB,GAAsB,CAAC,IAAI,MAAM,CAAC,WAAW,MAAM,gBAAgB,CAAC,CAAC,CAAC;AAE5G,MAAM,UAAU,sBAAsB,CAAC,KAAa,EAAE,OAAO,GAAgC,EAAE;IAC3F,IAAI,CAAC;QACD,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC;QAC3B,MAAM,QAAQ,GAAG,iBAAiB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACjD,IAAI,GAAG,CAAC,QAAQ,IAAI,GAAG,CAAC,QAAQ,IAAI,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,QAAQ,KAAK,GAAG;YAAE,OAAO,KAAK,CAAC;QACjG,IAAI,OAAO,CAAC,aAAa,IAAI,kBAAkB,CAAC,QAAQ,CAAC,EAAE,CAAC;YACxD,OAAO,GAAG,CAAC,QAAQ,KAAK,OAAO,IAAI,GAAG,CAAC,QAAQ,KAAK,QAAQ,CAAC;QACjE,CAAC;QACD,OAAO,CACH,GAAG,CAAC,QAAQ,KAAK,QAAQ;YACzB,CAAC,GAAG,CAAC,IAAI;YACT,yBAAyB,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CACtE,CAAC;IACN,CAAC;IAAC,MAAM,CAAC;QACL,OAAO,KAAK,CAAC;IACjB,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"vertesiaHosts.js","sourceRoot":"","sources":["../../../src/session/auth/vertesiaHosts.ts"],"names":[],"mappings":"AAAA,MAAM,aAAa,GAAG,kCAAkC,CAAC;AACzD,+DAA+D;AAC/D,MAAM,KAAK,GAAG,iCAAiC,CAAC;AAEhD,iGAAiG;AACjG,MAAM,MAAM,GAAG,MAAM,KAAK,OAAO,CAAC;AAElC,MAAM,UAAU,kBAAkB,CAAC,QAAgB;IAC/C,IAAI,QAAQ,KAAK,WAAW,IAAI,QAAQ,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;QAC9D,OAAO,IAAI,CAAC;IAChB,CAAC;IACD,IAAI,QAAQ,KAAK,KAAK,IAAI,QAAQ,KAAK,OAAO,EAAE,CAAC;QAC7C,OAAO,IAAI,CAAC;IAChB,CAAC;IACD,OAAO,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;AACxC,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,QAAgB;IAC9C,OAAO,QAAQ,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;AACrD,CAAC;AAED,MAAM,CAAC,MAAM,yBAAyB,GAAsB,CAAC,IAAI,MAAM,CAAC,WAAW,MAAM,gBAAgB,CAAC,CAAC,CAAC;AAE5G,MAAM,UAAU,sBAAsB,CAAC,KAAa,EAAE,OAAO,GAAgC,EAAE;IAC3F,IAAI,CAAC;QACD,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC;QAC3B,MAAM,QAAQ,GAAG,iBAAiB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACjD,IAAI,GAAG,CAAC,QAAQ,IAAI,GAAG,CAAC,QAAQ,IAAI,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,QAAQ,KAAK,GAAG;YAAE,OAAO,KAAK,CAAC;QACjG,IAAI,OAAO,CAAC,aAAa,IAAI,kBAAkB,CAAC,QAAQ,CAAC,EAAE,CAAC;YACxD,OAAO,GAAG,CAAC,QAAQ,KAAK,OAAO,IAAI,GAAG,CAAC,QAAQ,KAAK,QAAQ,CAAC;QACjE,CAAC;QACD,OAAO,CACH,GAAG,CAAC,QAAQ,KAAK,QAAQ;YACzB,CAAC,GAAG,CAAC,IAAI;YACT,yBAAyB,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CACtE,CAAC;IACN,CAAC;IAAC,MAAM,CAAC;QACL,OAAO,KAAK,CAAC;IACjB,CAAC;AACL,CAAC"}
@@ -1,7 +1,7 @@
1
1
  export * from './auth/composable';
2
2
  export { clearCentralAuthRoundTripMarker, isCentralAuthRedirectPending, redirectToCentralAuth, } from './auth/domainRouting';
3
3
  export * from './auth/firebase';
4
- export { isAppOAuthLoginPending, startAppOAuthLogin } from './auth/oauth';
4
+ export { isAppOAuthLoginPending, revokeAppOAuthSession, startAppOAuthLogin } from './auth/oauth';
5
5
  export * from './auth/useAuthState';
6
6
  export * from './auth/useCurrentTenant';
7
7
  export * from './DevSessionProvider';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/session/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAIlC,OAAO,EACH,+BAA+B,EAC/B,4BAA4B,EAC5B,qBAAqB,GACxB,MAAM,sBAAsB,CAAC;AAC9B,cAAc,iBAAiB,CAAC;AAChC,OAAO,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAC1E,cAAc,qBAAqB,CAAC;AACpC,cAAc,yBAAyB,CAAC;AACxC,cAAc,sBAAsB,CAAC;AACrC,OAAO,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AAC1D,cAAc,eAAe,CAAC;AAC9B,cAAc,uBAAuB,CAAC;AACtC,cAAc,iBAAiB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/session/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAIlC,OAAO,EACH,+BAA+B,EAC/B,4BAA4B,EAC5B,qBAAqB,GACxB,MAAM,sBAAsB,CAAC;AAC9B,cAAc,iBAAiB,CAAC;AAChC,OAAO,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AACjG,cAAc,qBAAqB,CAAC;AACpC,cAAc,yBAAyB,CAAC;AACxC,cAAc,sBAAsB,CAAC;AACrC,OAAO,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AAC1D,cAAc,eAAe,CAAC;AAC9B,cAAc,uBAAuB,CAAC;AACtC,cAAc,iBAAiB,CAAC"}
@@ -4,7 +4,7 @@ export * from './auth/composable';
4
4
  // nothing. Only the boot-time entry points an app needs are published here.
5
5
  export { clearCentralAuthRoundTripMarker, isCentralAuthRedirectPending, redirectToCentralAuth, } from './auth/domainRouting';
6
6
  export * from './auth/firebase';
7
- export { isAppOAuthLoginPending, startAppOAuthLogin } from './auth/oauth';
7
+ export { isAppOAuthLoginPending, revokeAppOAuthSession, startAppOAuthLogin } from './auth/oauth';
8
8
  export * from './auth/useAuthState';
9
9
  export * from './auth/useCurrentTenant';
10
10
  export * from './DevSessionProvider';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/session/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,wFAAwF;AACxF,4FAA4F;AAC5F,4EAA4E;AAC5E,OAAO,EACH,+BAA+B,EAC/B,4BAA4B,EAC5B,qBAAqB,GACxB,MAAM,sBAAsB,CAAC;AAC9B,cAAc,iBAAiB,CAAC;AAChC,OAAO,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAC1E,cAAc,qBAAqB,CAAC;AACpC,cAAc,yBAAyB,CAAC;AACxC,cAAc,sBAAsB,CAAC;AACrC,OAAO,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AAC1D,cAAc,eAAe,CAAC;AAC9B,cAAc,uBAAuB,CAAC;AACtC,cAAc,iBAAiB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/session/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,wFAAwF;AACxF,4FAA4F;AAC5F,4EAA4E;AAC5E,OAAO,EACH,+BAA+B,EAC/B,4BAA4B,EAC5B,qBAAqB,GACxB,MAAM,sBAAsB,CAAC;AAC9B,cAAc,iBAAiB,CAAC;AAChC,OAAO,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AACjG,cAAc,qBAAqB,CAAC;AACpC,cAAc,yBAAyB,CAAC;AACxC,cAAc,sBAAsB,CAAC;AACrC,OAAO,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AAC1D,cAAc,eAAe,CAAC;AAC9B,cAAc,uBAAuB,CAAC;AACtC,cAAc,iBAAiB,CAAC"}
@@ -8,6 +8,10 @@ export interface ScopeSelection {
8
8
  * a tab in the account but with no project gets no project rather than another tab's.
9
9
  */
10
10
  export declare function readScopeSelection(accountId?: string): ScopeSelection;
11
+ export declare function resolveAuthSelection(currentUrl: URL): {
12
+ accountId?: string;
13
+ projectId?: string;
14
+ };
11
15
  /** Make this the tab's scope and the default for new tabs. */
12
16
  export declare function rememberScopeSelection(accountId: string, projectId?: string): void;
13
17
  /** Drop this tab's scope so its next load falls back to the URL or the default. */
@@ -1 +1 @@
1
- {"version":3,"file":"scopeSelection.d.ts","sourceRoot":"","sources":["../../src/session/scopeSelection.ts"],"names":[],"mappings":"AAaA,MAAM,WAAW,cAAc;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB;AAuBD;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,cAAc,CAQrE;AAED,8DAA8D;AAC9D,wBAAgB,sBAAsB,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAKlF;AAED,mFAAmF;AACnF,wBAAgB,uBAAuB,IAAI,IAAI,CAG9C;AAED,+FAA+F;AAC/F,wBAAgB,4BAA4B,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAsBxF"}
1
+ {"version":3,"file":"scopeSelection.d.ts","sourceRoot":"","sources":["../../src/session/scopeSelection.ts"],"names":[],"mappings":"AAcA,MAAM,WAAW,cAAc;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB;AAuBD;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,cAAc,CAQrE;AAED,wBAAgB,oBAAoB,CAAC,UAAU,EAAE,GAAG,GAAG;IAAE,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,CAUhG;AAED,8DAA8D;AAC9D,wBAAgB,sBAAsB,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAKlF;AAED,mFAAmF;AACnF,wBAAgB,uBAAuB,IAAI,IAAI,CAG9C;AAED,+FAA+F;AAC/F,wBAAgB,4BAA4B,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAsBxF"}
@@ -6,6 +6,7 @@
6
6
  * another tab's next token refresh. `localStorage` holds the last selection made in any tab, and
7
7
  * only seeds a tab that has no scope of its own yet (a new tab, or the app after a restart).
8
8
  */
9
+ import { Env } from '@vertesia/ui/env';
9
10
  import { LastSelectedAccountId_KEY, LastSelectedProjectId_KEY } from './constants';
10
11
  const TabAccountId_KEY = 'composableai.tabAccountId';
11
12
  const TabProjectId_KEY = 'composableai.tabProjectId';
@@ -44,6 +45,16 @@ export function readScopeSelection(accountId) {
44
45
  : (localStorage.getItem(`${LastSelectedProjectId_KEY}-${account}`) ?? undefined);
45
46
  return { accountId: account, projectId: projectId || undefined };
46
47
  }
48
+ export function resolveAuthSelection(currentUrl) {
49
+ // A URL selection owns the whole pair: never attach an unrelated configured account/project.
50
+ const hasUrlScope = currentUrl.searchParams.has('a') || currentUrl.searchParams.has('p');
51
+ const defaults = hasUrlScope ? undefined : Env.defaultAuthSelection;
52
+ const urlAccount = currentUrl.searchParams.get('a') ?? defaults?.accountId;
53
+ const urlProject = currentUrl.searchParams.get('p') ?? defaults?.projectId;
54
+ // A project alone identifies its account, so the stored selection only fills in a missing project.
55
+ const stored = urlProject === undefined ? readScopeSelection(urlAccount) : undefined;
56
+ return { accountId: urlAccount ?? stored?.accountId, projectId: urlProject ?? stored?.projectId };
57
+ }
47
58
  /** Make this the tab's scope and the default for new tabs. */
48
59
  export function rememberScopeSelection(accountId, projectId) {
49
60
  sessionSet(TabAccountId_KEY, accountId);
@@ -1 +1 @@
1
- {"version":3,"file":"scopeSelection.js","sourceRoot":"","sources":["../../src/session/scopeSelection.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"scopeSelection.js","sourceRoot":"","sources":["../../src/session/scopeSelection.ts"],"names":[],"mappings":"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"}
@@ -22,8 +22,13 @@ export interface VertesiaShellProps {
22
22
  suppressSignInErrorPrefixes?: string | string[];
23
23
  /** Use an already-issued Vertesia token instead of starting the normal sign-in flow. */
24
24
  authToken?: string;
25
- /** Force a default language. If omitted, falls back to localStorage then navigator.language then 'en'. */
25
+ /** Language used only when there is neither a saved choice nor a browser language. */
26
26
  defaultLanguage?: SupportedLanguage;
27
+ /**
28
+ * Pin the language the shell renders in, whatever the saved choice or browser language.
29
+ * Embedded apps still receive the user's own language (`useLanguage().preferredLanguage`).
30
+ */
31
+ language?: SupportedLanguage;
27
32
  }
28
- export declare function VertesiaShell({ children, lightLogo, darkLogo, loadingIcon, loadOnboardingStatus, preserveSignInPath, suppressSignInErrorPrefixes, authToken, defaultLanguage, authScreens, branding, }: VertesiaShellProps): import("react").JSX.Element;
33
+ export declare function VertesiaShell({ children, lightLogo, darkLogo, loadingIcon, loadOnboardingStatus, preserveSignInPath, suppressSignInErrorPrefixes, authToken, defaultLanguage, language, authScreens, branding, }: VertesiaShellProps): import("react").JSX.Element;
29
34
  //# sourceMappingURL=VertesiaShell.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"VertesiaShell.d.ts","sourceRoot":"","sources":["../../src/shell/VertesiaShell.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,4BAA4B,EAAgD,MAAM,uBAAuB,CAAC;AACxH,OAAO,EAA+C,KAAK,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAExG,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACtD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAGvD,OAAO,EAAE,KAAK,qBAAqB,EAAgB,MAAM,sBAAsB,CAAC;AAChF,OAAO,EAAE,KAAK,sBAAsB,EAAgB,MAAM,gBAAgB,CAAC;AAE3E,iGAAiG;AACjG,MAAM,WAAW,WAAW;IACxB,MAAM,CAAC,EAAE,aAAa,CAAC,qBAAqB,CAAC,CAAC;IAC9C,OAAO,CAAC,EAAE,aAAa,CAAC,sBAAsB,CAAC,CAAC;IAChD,WAAW,CAAC,EAAE,aAAa,CAAC,4BAA4B,CAAC,CAAC;CAC7D;AAED,MAAM,WAAW,kBAAkB;IAC/B,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,QAAQ,CAAC,EAAE,WAAW,CAAC;IACvB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,2BAA2B,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAChD,wFAAwF;IACxF,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,0GAA0G;IAC1G,eAAe,CAAC,EAAE,iBAAiB,CAAC;CACvC;AACD,wBAAgB,aAAa,CAAC,EAC1B,QAAQ,EACR,SAAS,EACT,QAAQ,EACR,WAAW,EACX,oBAAoB,EACpB,kBAAkB,EAClB,2BAA2B,EAC3B,SAAS,EACT,eAAe,EACf,WAAW,EACX,QAAQ,GACX,EAAE,kBAAkB,+BA6CpB"}
1
+ {"version":3,"file":"VertesiaShell.d.ts","sourceRoot":"","sources":["../../src/shell/VertesiaShell.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,4BAA4B,EAAgD,MAAM,uBAAuB,CAAC;AACxH,OAAO,EAA+C,KAAK,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAExG,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACtD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAGvD,OAAO,EAAE,KAAK,qBAAqB,EAAgB,MAAM,sBAAsB,CAAC;AAChF,OAAO,EAAE,KAAK,sBAAsB,EAAgB,MAAM,gBAAgB,CAAC;AAE3E,iGAAiG;AACjG,MAAM,WAAW,WAAW;IACxB,MAAM,CAAC,EAAE,aAAa,CAAC,qBAAqB,CAAC,CAAC;IAC9C,OAAO,CAAC,EAAE,aAAa,CAAC,sBAAsB,CAAC,CAAC;IAChD,WAAW,CAAC,EAAE,aAAa,CAAC,4BAA4B,CAAC,CAAC;CAC7D;AAED,MAAM,WAAW,kBAAkB;IAC/B,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,QAAQ,CAAC,EAAE,WAAW,CAAC;IACvB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,2BAA2B,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAChD,wFAAwF;IACxF,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,sFAAsF;IACtF,eAAe,CAAC,EAAE,iBAAiB,CAAC;IACpC;;;OAGG;IACH,QAAQ,CAAC,EAAE,iBAAiB,CAAC;CAChC;AACD,wBAAgB,aAAa,CAAC,EAC1B,QAAQ,EACR,SAAS,EACT,QAAQ,EACR,WAAW,EACX,oBAAoB,EACpB,kBAAkB,EAClB,2BAA2B,EAC3B,SAAS,EACT,eAAe,EACf,QAAQ,EACR,WAAW,EACX,QAAQ,GACX,EAAE,kBAAkB,+BA6CpB"}
@@ -7,9 +7,9 @@ import { IframeAppContextSync } from './apps/IframeAppContextSync.js';
7
7
  import { AppBrandingProvider, BrandedAuthLoadingScreen, brandedAuthScreens } from './BrandedAuthScreens';
8
8
  import { SigninScreen } from './login/SigninScreen';
9
9
  import { SplashScreen } from './SplashScreen';
10
- export function VertesiaShell({ children, lightLogo, darkLogo, loadingIcon, loadOnboardingStatus, preserveSignInPath, suppressSignInErrorPrefixes, authToken, defaultLanguage, authScreens, branding, }) {
10
+ export function VertesiaShell({ children, lightLogo, darkLogo, loadingIcon, loadOnboardingStatus, preserveSignInPath, suppressSignInErrorPrefixes, authToken, defaultLanguage, language, authScreens, branding, }) {
11
11
  const screens = { ...(branding ? brandedAuthScreens : {}), ...authScreens };
12
- const brandedContent = (_jsx(TypeRegistryProvider, { children: _jsx(ThemeProvider, { defaultTheme: "system", storageKey: "vite-ui-theme", children: _jsx(LanguageProvider, { defaultLanguage: defaultLanguage, children: _jsx(LanguageBoundI18nProvider, { children: _jsxs(AppBrandingBoundary, { branding: branding, children: [_jsx(IframeAppContextSync, {}), !authToken && (_jsxs(_Fragment, { children: [_jsx(SplashScreen, { icon: loadingIcon, Screen: authScreens?.Loading, Presentation: branding ? BrandedAuthLoadingScreen : undefined }), _jsx(SigninScreen, { View: screens.SignIn, allowedPrefix: "/shared/", darkLogo: darkLogo, lightLogo: lightLogo, preservePath: preserveSignInPath, suppressAuthErrorPrefix: suppressSignInErrorPrefixes })] })), _jsx(UserPermissionProvider, { loadingIcon: loadingIcon, LoadingScreen: screens.Permissions, children: children })] }) }) }) }) }));
12
+ const brandedContent = (_jsx(TypeRegistryProvider, { children: _jsx(ThemeProvider, { defaultTheme: "system", storageKey: "vite-ui-theme", children: _jsx(LanguageProvider, { defaultLanguage: defaultLanguage, language: language, children: _jsx(LanguageBoundI18nProvider, { children: _jsxs(AppBrandingBoundary, { branding: branding, children: [_jsx(IframeAppContextSync, {}), !authToken && (_jsxs(_Fragment, { children: [_jsx(SplashScreen, { icon: loadingIcon, Screen: authScreens?.Loading, Presentation: branding ? BrandedAuthLoadingScreen : undefined }), _jsx(SigninScreen, { View: screens.SignIn, allowedPrefix: "/shared/", darkLogo: darkLogo, lightLogo: lightLogo, preservePath: preserveSignInPath, suppressAuthErrorPrefix: suppressSignInErrorPrefixes })] })), _jsx(UserPermissionProvider, { loadingIcon: loadingIcon, LoadingScreen: screens.Permissions, children: children })] }) }) }) }) }));
13
13
  return (_jsx(ToastProvider, { children: authToken ? (_jsx(DevSessionProvider, { token: authToken, children: brandedContent })) : (_jsx(UserSessionProvider, { loadOnboardingStatus: loadOnboardingStatus, children: brandedContent })) }));
14
14
  }
15
15
  function AppBrandingBoundary({ branding, children }) {
@@ -1 +1 @@
1
- {"version":3,"file":"VertesiaShell.js","sourceRoot":"","sources":["../../src/shell/VertesiaShell.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AACjE,OAAO,EAAqC,oBAAoB,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AACxH,OAAO,EAAE,yBAAyB,EAAE,gBAAgB,EAA0B,MAAM,mBAAmB,CAAC;AACxG,OAAO,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAG/E,OAAO,EAAE,oBAAoB,EAAE,MAAM,gCAAgC,CAAC;AACtE,OAAO,EAAE,mBAAmB,EAAE,wBAAwB,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AACzG,OAAO,EAA8B,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAChF,OAAO,EAA+B,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAwB3E,MAAM,UAAU,aAAa,CAAC,EAC1B,QAAQ,EACR,SAAS,EACT,QAAQ,EACR,WAAW,EACX,oBAAoB,EACpB,kBAAkB,EAClB,2BAA2B,EAC3B,SAAS,EACT,eAAe,EACf,WAAW,EACX,QAAQ,GACS;IACjB,MAAM,OAAO,GAAG,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,WAAW,EAAE,CAAC;IAC5E,MAAM,cAAc,GAAG,CACnB,KAAC,oBAAoB,cACjB,KAAC,aAAa,IAAC,YAAY,EAAC,QAAQ,EAAC,UAAU,EAAC,eAAe,YAC3D,KAAC,gBAAgB,IAAC,eAAe,EAAE,eAAe,YAC9C,KAAC,yBAAyB,cACtB,MAAC,mBAAmB,IAAC,QAAQ,EAAE,QAAQ,aACnC,KAAC,oBAAoB,KAAG,EACvB,CAAC,SAAS,IAAI,CACX,8BACI,KAAC,YAAY,IACT,IAAI,EAAE,WAAW,EACjB,MAAM,EAAE,WAAW,EAAE,OAAO,EAC5B,YAAY,EAAE,QAAQ,CAAC,CAAC,CAAC,wBAAwB,CAAC,CAAC,CAAC,SAAS,GAC/D,EACF,KAAC,YAAY,IACT,IAAI,EAAE,OAAO,CAAC,MAAM,EACpB,aAAa,EAAC,UAAU,EACxB,QAAQ,EAAE,QAAQ,EAClB,SAAS,EAAE,SAAS,EACpB,YAAY,EAAE,kBAAkB,EAChC,uBAAuB,EAAE,2BAA2B,GACtD,IACH,CACN,EACD,KAAC,sBAAsB,IAAC,WAAW,EAAE,WAAW,EAAE,aAAa,EAAE,OAAO,CAAC,WAAW,YAC/E,QAAQ,GACY,IACP,GACE,GACb,GACP,GACG,CAC1B,CAAC;IAEF,OAAO,CACH,KAAC,aAAa,cACT,SAAS,CAAC,CAAC,CAAC,CACT,KAAC,kBAAkB,IAAC,KAAK,EAAE,SAAS,YAAG,cAAc,GAAsB,CAC9E,CAAC,CAAC,CAAC,CACA,KAAC,mBAAmB,IAAC,oBAAoB,EAAE,oBAAoB,YAAG,cAAc,GAAuB,CAC1G,GACW,CACnB,CAAC;AACN,CAAC;AAED,SAAS,mBAAmB,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAmD;IAChG,OAAO,QAAQ,CAAC,CAAC,CAAC,KAAC,mBAAmB,IAAC,QAAQ,EAAE,QAAQ,YAAG,QAAQ,GAAuB,CAAC,CAAC,CAAC,QAAQ,CAAC;AAC3G,CAAC"}
1
+ {"version":3,"file":"VertesiaShell.js","sourceRoot":"","sources":["../../src/shell/VertesiaShell.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AACjE,OAAO,EAAqC,oBAAoB,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AACxH,OAAO,EAAE,yBAAyB,EAAE,gBAAgB,EAA0B,MAAM,mBAAmB,CAAC;AACxG,OAAO,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAG/E,OAAO,EAAE,oBAAoB,EAAE,MAAM,gCAAgC,CAAC;AACtE,OAAO,EAAE,mBAAmB,EAAE,wBAAwB,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AACzG,OAAO,EAA8B,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAChF,OAAO,EAA+B,YAAY,EAAE,MAAM,gBAAgB,CAAC;AA6B3E,MAAM,UAAU,aAAa,CAAC,EAC1B,QAAQ,EACR,SAAS,EACT,QAAQ,EACR,WAAW,EACX,oBAAoB,EACpB,kBAAkB,EAClB,2BAA2B,EAC3B,SAAS,EACT,eAAe,EACf,QAAQ,EACR,WAAW,EACX,QAAQ,GACS;IACjB,MAAM,OAAO,GAAG,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,WAAW,EAAE,CAAC;IAC5E,MAAM,cAAc,GAAG,CACnB,KAAC,oBAAoB,cACjB,KAAC,aAAa,IAAC,YAAY,EAAC,QAAQ,EAAC,UAAU,EAAC,eAAe,YAC3D,KAAC,gBAAgB,IAAC,eAAe,EAAE,eAAe,EAAE,QAAQ,EAAE,QAAQ,YAClE,KAAC,yBAAyB,cACtB,MAAC,mBAAmB,IAAC,QAAQ,EAAE,QAAQ,aACnC,KAAC,oBAAoB,KAAG,EACvB,CAAC,SAAS,IAAI,CACX,8BACI,KAAC,YAAY,IACT,IAAI,EAAE,WAAW,EACjB,MAAM,EAAE,WAAW,EAAE,OAAO,EAC5B,YAAY,EAAE,QAAQ,CAAC,CAAC,CAAC,wBAAwB,CAAC,CAAC,CAAC,SAAS,GAC/D,EACF,KAAC,YAAY,IACT,IAAI,EAAE,OAAO,CAAC,MAAM,EACpB,aAAa,EAAC,UAAU,EACxB,QAAQ,EAAE,QAAQ,EAClB,SAAS,EAAE,SAAS,EACpB,YAAY,EAAE,kBAAkB,EAChC,uBAAuB,EAAE,2BAA2B,GACtD,IACH,CACN,EACD,KAAC,sBAAsB,IAAC,WAAW,EAAE,WAAW,EAAE,aAAa,EAAE,OAAO,CAAC,WAAW,YAC/E,QAAQ,GACY,IACP,GACE,GACb,GACP,GACG,CAC1B,CAAC;IAEF,OAAO,CACH,KAAC,aAAa,cACT,SAAS,CAAC,CAAC,CAAC,CACT,KAAC,kBAAkB,IAAC,KAAK,EAAE,SAAS,YAAG,cAAc,GAAsB,CAC9E,CAAC,CAAC,CAAC,CACA,KAAC,mBAAmB,IAAC,oBAAoB,EAAE,oBAAoB,YAAG,cAAc,GAAuB,CAC1G,GACW,CACnB,CAAC;AACN,CAAC;AAED,SAAS,mBAAmB,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAmD;IAChG,OAAO,QAAQ,CAAC,CAAC,CAAC,KAAC,mBAAmB,IAAC,QAAQ,EAAE,QAAQ,YAAG,QAAQ,GAAuB,CAAC,CAAC,CAAC,QAAQ,CAAC;AAC3G,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"InviteAcceptModal.d.ts","sourceRoot":"","sources":["../../../src/shell/login/InviteAcceptModal.tsx"],"names":[],"mappings":"AAMA,wBAAgB,iBAAiB,gCAoGhC"}
1
+ {"version":3,"file":"InviteAcceptModal.d.ts","sourceRoot":"","sources":["../../../src/shell/login/InviteAcceptModal.tsx"],"names":[],"mappings":"AAWA,wBAAgB,iBAAiB,gCA8IhC"}