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

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 (147) hide show
  1. package/README.md +24 -0
  2. package/lib/core/components/shadcn/button.d.ts +1 -0
  3. package/lib/core/components/shadcn/button.d.ts.map +1 -1
  4. package/lib/core/components/shadcn/button.js +2 -2
  5. package/lib/core/components/shadcn/button.js.map +1 -1
  6. package/lib/core/components/shadcn/selectBox.d.ts.map +1 -1
  7. package/lib/core/components/shadcn/selectBox.js +2 -2
  8. package/lib/core/components/shadcn/selectBox.js.map +1 -1
  9. package/lib/env/index.d.ts +1 -1
  10. package/lib/env/index.d.ts.map +1 -1
  11. package/lib/env/index.js +1 -1
  12. package/lib/env/index.js.map +1 -1
  13. package/lib/features/agent/chat/AskUserWidget.d.ts.map +1 -1
  14. package/lib/features/agent/chat/AskUserWidget.js +2 -1
  15. package/lib/features/agent/chat/AskUserWidget.js.map +1 -1
  16. package/lib/features/agent/chat/ModernAgentOutput/AllMessagesMixed.d.ts.map +1 -1
  17. package/lib/features/agent/chat/ModernAgentOutput/AllMessagesMixed.js +2 -253
  18. package/lib/features/agent/chat/ModernAgentOutput/AllMessagesMixed.js.map +1 -1
  19. package/lib/features/agent/chat/ModernAgentOutput/CollapsibleAgentMarkdown.d.ts +1 -3
  20. package/lib/features/agent/chat/ModernAgentOutput/CollapsibleAgentMarkdown.d.ts.map +1 -1
  21. package/lib/features/agent/chat/ModernAgentOutput/CollapsibleAgentMarkdown.js +2 -8
  22. package/lib/features/agent/chat/ModernAgentOutput/CollapsibleAgentMarkdown.js.map +1 -1
  23. package/lib/features/agent/chat/ModernAgentOutput/agentMarkdownStyles.d.ts +4 -0
  24. package/lib/features/agent/chat/ModernAgentOutput/agentMarkdownStyles.d.ts.map +1 -0
  25. package/lib/features/agent/chat/ModernAgentOutput/agentMarkdownStyles.js +248 -0
  26. package/lib/features/agent/chat/ModernAgentOutput/agentMarkdownStyles.js.map +1 -0
  27. package/lib/i18n/locales/ar.json +1 -0
  28. package/lib/i18n/locales/de.json +1 -0
  29. package/lib/i18n/locales/en.json +1 -0
  30. package/lib/i18n/locales/es.json +1 -0
  31. package/lib/i18n/locales/fr.json +1 -0
  32. package/lib/i18n/locales/it.json +1 -0
  33. package/lib/i18n/locales/ja.json +1 -0
  34. package/lib/i18n/locales/ko.json +1 -0
  35. package/lib/i18n/locales/pt.json +1 -0
  36. package/lib/i18n/locales/ru.json +1 -0
  37. package/lib/i18n/locales/tr.json +1 -0
  38. package/lib/i18n/locales/zh-TW.json +1 -0
  39. package/lib/i18n/locales/zh.json +1 -0
  40. package/lib/session/auth/composable.d.ts +1 -5
  41. package/lib/session/auth/composable.d.ts.map +1 -1
  42. package/lib/session/auth/composable.js +1 -10
  43. package/lib/session/auth/composable.js.map +1 -1
  44. package/lib/session/auth/firebase.d.ts.map +1 -1
  45. package/lib/session/auth/firebase.js +8 -5
  46. package/lib/session/auth/firebase.js.map +1 -1
  47. package/lib/session/auth/oauth.d.ts.map +1 -1
  48. package/lib/session/auth/oauth.js +38 -14
  49. package/lib/session/auth/oauth.js.map +1 -1
  50. package/lib/session/auth/vertesiaHosts.d.ts +0 -40
  51. package/lib/session/auth/vertesiaHosts.d.ts.map +1 -1
  52. package/lib/session/auth/vertesiaHosts.js +2 -45
  53. package/lib/session/auth/vertesiaHosts.js.map +1 -1
  54. package/lib/session/index.d.ts +1 -1
  55. package/lib/session/index.d.ts.map +1 -1
  56. package/lib/session/index.js +1 -1
  57. package/lib/session/index.js.map +1 -1
  58. package/lib/session/scopeSelection.d.ts +4 -0
  59. package/lib/session/scopeSelection.d.ts.map +1 -1
  60. package/lib/session/scopeSelection.js +11 -0
  61. package/lib/session/scopeSelection.js.map +1 -1
  62. package/lib/vertesia-ui-core.js +2 -2
  63. package/lib/vertesia-ui-core.js.map +1 -1
  64. package/lib/vertesia-ui-env.js +1 -1
  65. package/lib/vertesia-ui-env.js.map +1 -1
  66. package/lib/vertesia-ui-features.js +242 -257
  67. package/lib/vertesia-ui-features.js.map +1 -1
  68. package/lib/vertesia-ui-i18n.1NWiB6fw.chunk.js +5 -0
  69. package/lib/vertesia-ui-i18n.1NWiB6fw.chunk.js.map +1 -0
  70. package/lib/vertesia-ui-i18n.6Ozlf6Ks.chunk.js +5 -0
  71. package/lib/vertesia-ui-i18n.6Ozlf6Ks.chunk.js.map +1 -0
  72. package/lib/vertesia-ui-i18n.AttJpg8U.chunk.js +5 -0
  73. package/lib/vertesia-ui-i18n.AttJpg8U.chunk.js.map +1 -0
  74. package/lib/vertesia-ui-i18n.BI_xdp49.chunk.js +5 -0
  75. package/lib/vertesia-ui-i18n.BI_xdp49.chunk.js.map +1 -0
  76. package/lib/vertesia-ui-i18n.C-2EEX6w.chunk.js +5 -0
  77. package/lib/vertesia-ui-i18n.C-2EEX6w.chunk.js.map +1 -0
  78. package/lib/vertesia-ui-i18n.CAmo54FO.chunk.js +5 -0
  79. package/lib/vertesia-ui-i18n.CAmo54FO.chunk.js.map +1 -0
  80. package/lib/vertesia-ui-i18n.CbBzmHNP.chunk.js +5 -0
  81. package/lib/vertesia-ui-i18n.CbBzmHNP.chunk.js.map +1 -0
  82. package/lib/vertesia-ui-i18n.DZgTzkIg.chunk.js +5 -0
  83. package/lib/vertesia-ui-i18n.DZgTzkIg.chunk.js.map +1 -0
  84. package/lib/vertesia-ui-i18n.DZsITxq5.chunk.js +5 -0
  85. package/lib/vertesia-ui-i18n.DZsITxq5.chunk.js.map +1 -0
  86. package/lib/vertesia-ui-i18n.Dbf2GHth.chunk.js +5 -0
  87. package/lib/vertesia-ui-i18n.Dbf2GHth.chunk.js.map +1 -0
  88. package/lib/vertesia-ui-i18n.js +2 -2
  89. package/lib/vertesia-ui-i18n.lleWnH5n.chunk.js +5 -0
  90. package/lib/vertesia-ui-i18n.lleWnH5n.chunk.js.map +1 -0
  91. package/lib/vertesia-ui-i18n.wG_XSkbr.chunk.js +5 -0
  92. package/lib/vertesia-ui-i18n.wG_XSkbr.chunk.js.map +1 -0
  93. package/lib/vertesia-ui-session.js +1 -1
  94. package/lib/vertesia-ui-session.js.map +1 -1
  95. package/package.json +7 -7
  96. package/src/core/components/shadcn/button.tsx +3 -2
  97. package/src/core/components/shadcn/selectBox.tsx +12 -4
  98. package/src/css/index.css +1 -1
  99. package/src/css/typography.css +111 -88
  100. package/src/env/index.ts +0 -2
  101. package/src/features/agent/chat/AskUserWidget.tsx +3 -1
  102. package/src/features/agent/chat/ModernAgentOutput/AllMessagesMixed.tsx +2 -253
  103. package/src/features/agent/chat/ModernAgentOutput/CollapsibleAgentMarkdown.tsx +2 -8
  104. package/src/features/agent/chat/ModernAgentOutput/agentMarkdownStyles.ts +248 -0
  105. package/src/i18n/locales/ar.json +1 -0
  106. package/src/i18n/locales/de.json +1 -0
  107. package/src/i18n/locales/en.json +1 -0
  108. package/src/i18n/locales/es.json +1 -0
  109. package/src/i18n/locales/fr.json +1 -0
  110. package/src/i18n/locales/it.json +1 -0
  111. package/src/i18n/locales/ja.json +1 -0
  112. package/src/i18n/locales/ko.json +1 -0
  113. package/src/i18n/locales/pt.json +1 -0
  114. package/src/i18n/locales/ru.json +1 -0
  115. package/src/i18n/locales/tr.json +1 -0
  116. package/src/i18n/locales/zh-TW.json +1 -0
  117. package/src/i18n/locales/zh.json +1 -0
  118. package/src/session/auth/composable.ts +1 -11
  119. package/src/session/auth/firebase.ts +9 -6
  120. package/src/session/auth/oauth.ts +39 -13
  121. package/src/session/auth/vertesiaHosts.ts +2 -47
  122. package/src/session/index.ts +1 -1
  123. package/src/session/scopeSelection.ts +13 -0
  124. package/lib/vertesia-ui-i18n.B0orbJb6.chunk.js +0 -5
  125. package/lib/vertesia-ui-i18n.B0orbJb6.chunk.js.map +0 -1
  126. package/lib/vertesia-ui-i18n.BChwIQVA.chunk.js +0 -5
  127. package/lib/vertesia-ui-i18n.BChwIQVA.chunk.js.map +0 -1
  128. package/lib/vertesia-ui-i18n.BTEcAVQm.chunk.js +0 -5
  129. package/lib/vertesia-ui-i18n.BTEcAVQm.chunk.js.map +0 -1
  130. package/lib/vertesia-ui-i18n.BeJQKbv7.chunk.js +0 -5
  131. package/lib/vertesia-ui-i18n.BeJQKbv7.chunk.js.map +0 -1
  132. package/lib/vertesia-ui-i18n.BpGr0-5g.chunk.js +0 -5
  133. package/lib/vertesia-ui-i18n.BpGr0-5g.chunk.js.map +0 -1
  134. package/lib/vertesia-ui-i18n.Bs8x-1wI.chunk.js +0 -5
  135. package/lib/vertesia-ui-i18n.Bs8x-1wI.chunk.js.map +0 -1
  136. package/lib/vertesia-ui-i18n.BymQoOm0.chunk.js +0 -5
  137. package/lib/vertesia-ui-i18n.BymQoOm0.chunk.js.map +0 -1
  138. package/lib/vertesia-ui-i18n.CNT_wabV.chunk.js +0 -5
  139. package/lib/vertesia-ui-i18n.CNT_wabV.chunk.js.map +0 -1
  140. package/lib/vertesia-ui-i18n.Cxh1iVk0.chunk.js +0 -5
  141. package/lib/vertesia-ui-i18n.Cxh1iVk0.chunk.js.map +0 -1
  142. package/lib/vertesia-ui-i18n.DLYCM9fV.chunk.js +0 -5
  143. package/lib/vertesia-ui-i18n.DLYCM9fV.chunk.js.map +0 -1
  144. package/lib/vertesia-ui-i18n.QvAVguDs.chunk.js +0 -5
  145. package/lib/vertesia-ui-i18n.QvAVguDs.chunk.js.map +0 -1
  146. package/lib/vertesia-ui-i18n.smozeSmI.chunk.js +0 -5
  147. 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,8 @@ 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
+ let current = new URL(window.location.href);
77
+ let { accountId, projectId } = resolveAuthSelection(current);
75
78
  const callback = current.origin + current.pathname === new URL(redirectUri).origin + new URL(redirectUri).pathname;
76
79
  const state = callback ? current.searchParams.get('state') : null;
77
80
  const code = callback ? current.searchParams.get('code') : null;
@@ -91,8 +94,21 @@ async function acquireToken(forceRefresh = false) {
91
94
  transaction.created > Date.now()) {
92
95
  throw new Error('Invalid or expired OAuth login state');
93
96
  }
94
- if (error || !code)
97
+ if (error === REQUESTED_SCOPE_UNAVAILABLE_ERROR_CODE && transaction.rememberedScope?.accountId) {
98
+ const target = new URL(transaction.target);
99
+ if (target.origin !== window.location.origin)
100
+ throw new Error('Invalid OAuth return target');
101
+ forgetRejectedScopeSelection(transaction.rememberedScope.accountId, transaction.rememberedScope.projectId);
102
+ clearAppOAuth();
103
+ current = target;
104
+ window.history.replaceState(window.history.state, '', current);
105
+ accountId = transaction.retryScope?.accountId;
106
+ projectId = undefined;
107
+ transaction = undefined;
108
+ }
109
+ else if (error || !code) {
95
110
  throw new Error(`Application sign-in was not completed (${error || 'missing code'})`);
111
+ }
96
112
  }
97
113
  else {
98
114
  const raw = sessionStorage.getItem(TOKEN_KEY);
@@ -102,8 +118,8 @@ async function acquireToken(forceRefresh = false) {
102
118
  if (config.offlineAccess &&
103
119
  cached.clientId === clientId &&
104
120
  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')))
121
+ (!projectId || claims.project?.id === projectId) &&
122
+ (!accountId || claims.account?.id === accountId))
107
123
  refreshCredential =
108
124
  refreshSession?.clientId === clientId && refreshSession.issuer === issuer
109
125
  ? refreshSession.token
@@ -115,8 +131,8 @@ async function acquireToken(forceRefresh = false) {
115
131
  cached.issuer === issuer &&
116
132
  !forceRefresh &&
117
133
  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'))) {
134
+ (!projectId || claims.project?.id === projectId) &&
135
+ (!accountId || claims.account?.id === accountId)) {
120
136
  return cached.token;
121
137
  }
122
138
  }
@@ -153,8 +169,8 @@ async function acquireToken(forceRefresh = false) {
153
169
  if (claims.iss.replace(/\/+$/, '') !== issuer ||
154
170
  claims.client_id !== clientId ||
155
171
  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')))
172
+ (!!accountId && claims.account?.id !== accountId) ||
173
+ (!!projectId && claims.project?.id !== projectId))
158
174
  throw new OAuthLoginError('Invalid OAuth refresh identity');
159
175
  sessionStorage.setItem(TOKEN_KEY, JSON.stringify({
160
176
  token: grant.access_token,
@@ -243,6 +259,12 @@ async function acquireToken(forceRefresh = false) {
243
259
  if (!config.scopes && document.scope)
244
260
  scopes = document.scope.split(/\s+/);
245
261
  }
262
+ const explicitScope = current.searchParams.has('a') || current.searchParams.has('p')
263
+ ? {
264
+ accountId: current.searchParams.get('a') ?? undefined,
265
+ projectId: current.searchParams.get('p') ?? undefined,
266
+ }
267
+ : Env.defaultAuthSelection;
246
268
  const verifier = randomValue();
247
269
  const next = {
248
270
  state: randomValue(),
@@ -251,6 +273,10 @@ async function acquireToken(forceRefresh = false) {
251
273
  redirectUri,
252
274
  issuer,
253
275
  target: current.toString(),
276
+ rememberedScope: accountId && explicitScope?.projectId === undefined && (!explicitScope?.accountId || projectId)
277
+ ? { accountId, projectId }
278
+ : undefined,
279
+ retryScope: explicitScope?.accountId ? { accountId: explicitScope.accountId } : undefined,
254
280
  created: Date.now(),
255
281
  };
256
282
  const digest = await crypto.subtle.digest('SHA-256', new TextEncoder().encode(verifier));
@@ -264,12 +290,10 @@ async function acquireToken(forceRefresh = false) {
264
290
  authorize.searchParams.set('scope', (config.offlineAccess
265
291
  ? [...new Set([...scopes, 'offline_access'])]
266
292
  : 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);
293
+ if (accountId)
294
+ authorize.searchParams.set('account_id', accountId);
295
+ if (projectId)
296
+ authorize.searchParams.set('project_id', projectId);
273
297
  sessionStorage.setItem(TRANSACTION_KEY, JSON.stringify(next));
274
298
  markCentralAuthRoundTripStarted();
275
299
  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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"}