@sinequa/atomic 2.7.0 → 2.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (101) hide show
  1. package/README.md +83 -67
  2. package/dist/atomic.cjs +1 -1
  3. package/dist/atomic.js +1 -2
  4. package/dist/authentication/constants.d.ts.map +1 -1
  5. package/dist/authentication/events/auth-events.d.ts +25 -0
  6. package/dist/authentication/events/auth-events.d.ts.map +1 -1
  7. package/dist/authentication/events/emit-authenticated-event.d.ts.map +1 -1
  8. package/dist/authentication/events/index.d.ts +1 -1
  9. package/dist/authentication/events/index.d.ts.map +1 -1
  10. package/dist/authentication/index.d.ts +1 -1
  11. package/dist/authentication/index.d.ts.map +1 -1
  12. package/dist/authentication/providers/oauth-authentication.d.ts.map +1 -1
  13. package/dist/authentication/providers/redirect-to-identity-provider.d.ts.map +1 -1
  14. package/dist/authentication/providers/saml-authentication.d.ts.map +1 -1
  15. package/dist/authentication/session/auth-mode-marker.d.ts.map +1 -1
  16. package/dist/authentication/session/auth-state.d.ts.map +1 -1
  17. package/dist/authentication/session/has-session.d.ts.map +1 -1
  18. package/dist/authentication/session/login.d.ts.map +1 -1
  19. package/dist/authentication/session/logout.d.ts.map +1 -1
  20. package/dist/authentication/session/redirect-guard.d.ts.map +1 -1
  21. package/dist/authentication/session/session-lost-latch.d.ts +32 -0
  22. package/dist/authentication/session/session-lost-latch.d.ts.map +1 -0
  23. package/dist/authentication/session/try-auto-authentication.d.ts.map +1 -1
  24. package/dist/authentication/session/user-authentication.d.ts.map +1 -1
  25. package/dist/authentication/tokens/delete-web-token-cookie.d.ts.map +1 -1
  26. package/dist/authentication/tokens/get-csrf-token.d.ts.map +1 -1
  27. package/dist/authentication/tokens/get-jwt-token.d.ts.map +1 -1
  28. package/dist/authentication/tokens/get-token.d.ts.map +1 -1
  29. package/dist/authentication/tokens/set-token.d.ts.map +1 -1
  30. package/dist/client/atomic-context.d.ts.map +1 -1
  31. package/dist/client/create-api.d.ts.map +1 -1
  32. package/dist/client/create-atomic-client.d.ts.map +1 -1
  33. package/dist/client/http-adapter.d.ts.map +1 -1
  34. package/dist/configurations/auth-mode.d.ts.map +1 -1
  35. package/dist/configurations/global.config.d.ts.map +1 -1
  36. package/dist/configurations/index.d.ts +1 -1
  37. package/dist/configurations/index.d.ts.map +1 -1
  38. package/dist/helpers/column-resolver.d.ts.map +1 -1
  39. package/dist/helpers/columns.d.ts.map +1 -1
  40. package/dist/helpers/filters.d.ts.map +1 -1
  41. package/dist/helpers/metadata.d.ts.map +1 -1
  42. package/dist/helpers/utils.d.ts.map +1 -1
  43. package/dist/polyfills/storage.d.ts.map +1 -1
  44. package/dist/spfx/index.cjs +1 -1
  45. package/dist/spfx/index.js +1 -2
  46. package/dist/{src-BowomHL9.js → src-C-nHTU3y.js} +684 -619
  47. package/dist/src-DMsETv6_.cjs +1 -0
  48. package/dist/types/aggregations/AggregationItem.d.ts.map +1 -1
  49. package/dist/types/config/EngineTypeModifier.d.ts.map +1 -1
  50. package/dist/types/config/QueryPrecision.d.ts.map +1 -1
  51. package/dist/types/document-upload/upload-status.d.ts.map +1 -1
  52. package/dist/types/filters/Filter.d.ts.map +1 -1
  53. package/dist/types/search/index.d.ts +1 -1
  54. package/dist/types/search/index.d.ts.map +1 -1
  55. package/dist/utils/aggregations.d.ts.map +1 -1
  56. package/dist/utils/bisect.d.ts.map +1 -1
  57. package/dist/utils/concepts.d.ts.map +1 -1
  58. package/dist/utils/date.d.ts.map +1 -1
  59. package/dist/utils/index.d.ts +1 -1
  60. package/dist/utils/index.d.ts.map +1 -1
  61. package/dist/utils/is-not-input-event.d.ts.map +1 -1
  62. package/dist/utils/logger.d.ts.map +1 -1
  63. package/dist/utils/query-params.d.ts.map +1 -1
  64. package/dist/utils/utilities.d.ts.map +1 -1
  65. package/dist/web-api/helpers/aad-http-client-manager.d.ts.map +1 -1
  66. package/dist/web-api/helpers/create-headers.d.ts.map +1 -1
  67. package/dist/web-api/helpers/handle-response.d.ts.map +1 -1
  68. package/dist/web-api/helpers/methods/del.d.ts.map +1 -1
  69. package/dist/web-api/helpers/methods/get.d.ts.map +1 -1
  70. package/dist/web-api/helpers/methods/patch.d.ts.map +1 -1
  71. package/dist/web-api/helpers/methods/post.d.ts.map +1 -1
  72. package/dist/web-api/helpers/methods/put.d.ts.map +1 -1
  73. package/dist/web-api/helpers/methods/send-request.d.ts +5 -0
  74. package/dist/web-api/helpers/methods/send-request.d.ts.map +1 -1
  75. package/dist/web-api/helpers/utils/build-request-url.d.ts.map +1 -1
  76. package/dist/web-api/helpers/utils/create-timeout-controller.d.ts.map +1 -1
  77. package/dist/web-api/helpers/utils/resolve-no-auto-authentication.d.ts.map +1 -1
  78. package/dist/web-api/v1/fetch-aggregation.d.ts.map +1 -1
  79. package/dist/web-api/v1/fetch-app.d.ts.map +1 -1
  80. package/dist/web-api/v1/fetch-audit.d.ts.map +1 -1
  81. package/dist/web-api/v1/fetch-dataset.d.ts.map +1 -1
  82. package/dist/web-api/v1/fetch-labels.d.ts.map +1 -1
  83. package/dist/web-api/v1/fetch-preview.d.ts.map +1 -1
  84. package/dist/web-api/v1/fetch-principal.d.ts.map +1 -1
  85. package/dist/web-api/v1/fetch-query-export.d.ts.map +1 -1
  86. package/dist/web-api/v1/fetch-query-intent.d.ts.map +1 -1
  87. package/dist/web-api/v1/fetch-query.d.ts.map +1 -1
  88. package/dist/web-api/v1/fetch-security-principal.d.ts.map +1 -1
  89. package/dist/web-api/v1/fetch-similar-documents.d.ts.map +1 -1
  90. package/dist/web-api/v1/fetch-sponsored-links.d.ts.map +1 -1
  91. package/dist/web-api/v1/fetch-suggest.d.ts.map +1 -1
  92. package/dist/web-api/v1/fetch-text-chunk.d.ts.map +1 -1
  93. package/dist/web-api/v1/fetch-user-settings.d.ts.map +1 -1
  94. package/dist/web-api/v2/fetch-change-password.d.ts.map +1 -1
  95. package/dist/web-api/v2/fetch-document-upload-container.d.ts.map +1 -1
  96. package/dist/web-api/v2/fetch-document-upload-status.d.ts.map +1 -1
  97. package/dist/web-api/v2/fetch-forgot-password.d.ts.map +1 -1
  98. package/dist/web-api/v2/fetch-user-profile.d.ts.map +1 -1
  99. package/dist/web-api/v2/fetch-version.d.ts.map +1 -1
  100. package/package.json +24 -34
  101. package/dist/src-BS1kfBgv.cjs +0 -1
package/README.md CHANGED
@@ -38,16 +38,20 @@ npm install @microsoft/sp-http --save-peer
38
38
  ## At a glance
39
39
 
40
40
  ```typescript
41
- import { setGlobalConfig, isAuthenticated, login, fetchQuery } from '@sinequa/atomic';
41
+ import { setGlobalConfig, isAuthenticated, login, fetchQuery } from "@sinequa/atomic";
42
42
 
43
- setGlobalConfig({ app: 'my-app', backendUrl: 'https://my-sinequa-server.example.com' });
43
+ setGlobalConfig({ app: "my-app", backendUrl: "https://my-sinequa-server.example.com" });
44
44
 
45
45
  if (!isAuthenticated()) {
46
- await login({ username: 'alice', password: 's3cr3t' });
46
+ await login({ username: "alice", password: "s3cr3t" });
47
47
  }
48
48
 
49
49
  // A query is a plain object; only `name` — the query web service — is required.
50
- const result = await fetchQuery({ name: '<your-query>', text: 'knowledge management', pageSize: 10 });
50
+ const result = await fetchQuery({
51
+ name: "<your-query>",
52
+ text: "knowledge management",
53
+ pageSize: 10,
54
+ });
51
55
 
52
56
  // One round-trip: the documents are in `records`, the facet counts in `aggregations`.
53
57
  // Check `$error` before concluding anything from an empty `records`.
@@ -67,16 +71,17 @@ token is attached automatically. Import from the `./spfx` subpath and call
67
71
  `initializeAadHttpClient` once during web part initialization:
68
72
 
69
73
  ```typescript
70
- import { initializeAadHttpClient, fetchQuery } from '@sinequa/atomic/spfx';
71
- import { AadHttpClient } from '@microsoft/sp-http';
74
+ import { initializeAadHttpClient, fetchQuery } from "@sinequa/atomic/spfx";
75
+ import { AadHttpClient } from "@microsoft/sp-http";
72
76
 
73
77
  // In your web part's onInit():
74
- const client = await this.context.aadHttpClientFactory
75
- .getClient('https://my-sinequa-server.example.com');
78
+ const client = await this.context.aadHttpClientFactory.getClient(
79
+ "https://my-sinequa-server.example.com",
80
+ );
76
81
  initializeAadHttpClient(client);
77
82
 
78
83
  // All subsequent API calls route through AadHttpClient automatically:
79
- const results = await fetchQuery({ name: '<your-query>', text: 'knowledge management' });
84
+ const results = await fetchQuery({ name: "<your-query>", text: "knowledge management" });
80
85
  ```
81
86
 
82
87
  Call `initializeAadHttpClient(null)` to detach the client (e.g. in `onDispose`).
@@ -102,11 +107,11 @@ and each takes its transport and auth knobs as configuration (`httpAdapter`, and
102
107
  `auth: { fetch, storage, logger }`), which removes the need for module mocks in tests.
103
108
 
104
109
  ```typescript
105
- import { createAtomicClient } from '@sinequa/atomic';
110
+ import { createAtomicClient } from "@sinequa/atomic";
106
111
 
107
- const client = createAtomicClient({ app: 'myapp', backendUrl: 'https://backend' });
108
- client.auth.on('unauthorized', () => client.auth.login());
109
- const results = await client.http.post('api/v1/search.query', { text: 'hello' });
112
+ const client = createAtomicClient({ app: "myapp", backendUrl: "https://backend" });
113
+ client.auth.on("unauthorized", () => client.auth.login());
114
+ const results = await client.http.post("api/v1/search.query", { text: "hello" });
110
115
  ```
111
116
 
112
117
  The free functions below keep working unchanged: they run on a default client whose configuration
@@ -118,23 +123,23 @@ See [The client](./docs/core/client.mdx) and [Multiple backends](./docs/integrat
118
123
 
119
124
  Full auth lifecycle — from first handshake to logout.
120
125
 
121
- | Export | Description |
122
- |---|---|
123
- | `isAuthenticated()` | Synchronous. `true` when a CSRF token is stored **or** a token-less session was recorded (ambient SSO issues no client token) |
124
- | `hasSession()` | Asks the server when nothing is stored, and never redirects — unlike `login()` |
125
- | `login(credentials?)` | Login — switches on the resolved `authMode` (credentials / SSO / OAuth / SAML / bearer / unknown) |
126
- | `logout()` | Clears session, returns the server's `redirectUrl` |
127
- | `clearSessionTokens()` | Drops the local session (tokens, token-less flag) and emits `authenticated: false`, without a server round-trip |
128
- | `detectAuthMode(config, preLogin?)` | Pure resolution of the `AuthMode` from config + server pre-login (no I/O) |
129
- | `getToken()` / `setToken(token)` | Read/write the stored CSRF token |
130
- | `requestWebTokenSession(credentials?)` | POSTs `security.webtoken`. The JWT lands in a cookie; the returned (and stored) value is the **CSRF token**. Omit the credentials to use the configured bearer token |
131
- | `getCsrfToken()` | CSRF token for mutating requests |
132
- | `deleteWebTokenCookie()` | Explicitly removes the web token cookie |
133
- | `onAuthEvent(event, handler)` | Typed subscription to the auth lifecycle (`authenticated`, `unauthorized`, `requestFailed`, `tokenRefreshed`, `loggedOut`) — returns the unsubscribe function |
134
- | `tryAutoAuthentication()` | Probes a protected endpoint for server-side auto-authentication (OIDC, IIS Negotiate) — used by `login()` in `sso`, `unknown` and `bearer` modes. Never throws |
135
- | `isRedirectPending()` | Whether an OAuth/SAML redirect is in flight and has not established a session yet |
136
- | `tryOAuthAuthentication()` / `trySAMLAuthentication()` | Redirect to the configured identity provider (with a one-shot redirect-loop guard) |
137
- | `emitAuthenticatedEvent(bool)` | Dispatches the DOM `'authenticated'` CustomEvent (on `document`, bubbles to `window`) |
126
+ | Export | Description |
127
+ | ------------------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
128
+ | `isAuthenticated()` | Synchronous. `true` when a CSRF token is stored **or** a token-less session was recorded (ambient SSO issues no client token) |
129
+ | `hasSession()` | Asks the server when nothing is stored, and never redirects — unlike `login()` |
130
+ | `login(credentials?)` | Login — switches on the resolved `authMode` (credentials / SSO / OAuth / SAML / bearer / unknown) |
131
+ | `logout()` | Clears session, returns the server's `redirectUrl` |
132
+ | `clearSessionTokens()` | Drops the local session (tokens, token-less flag) and emits `authenticated: false`, without a server round-trip |
133
+ | `detectAuthMode(config, preLogin?)` | Pure resolution of the `AuthMode` from config + server pre-login (no I/O) |
134
+ | `getToken()` / `setToken(token)` | Read/write the stored CSRF token |
135
+ | `requestWebTokenSession(credentials?)` | POSTs `security.webtoken`. The JWT lands in a cookie; the returned (and stored) value is the **CSRF token**. Omit the credentials to use the configured bearer token |
136
+ | `getCsrfToken()` | CSRF token for mutating requests |
137
+ | `deleteWebTokenCookie()` | Explicitly removes the web token cookie |
138
+ | `onAuthEvent(event, handler)` | Typed subscription to the auth lifecycle (`authenticated`, `unauthorized`, `sessionLost`, `requestFailed`, `tokenRefreshed`, `loggedOut`) — returns the unsubscribe function |
139
+ | `tryAutoAuthentication()` | Probes a protected endpoint for server-side auto-authentication (OIDC, IIS Negotiate) — used by `login()` in `sso`, `unknown` and `bearer` modes. Never throws |
140
+ | `isRedirectPending()` | Whether an OAuth/SAML redirect is in flight and has not established a session yet |
141
+ | `tryOAuthAuthentication()` / `trySAMLAuthentication()` | Redirect to the configured identity provider (with a one-shot redirect-loop guard) |
142
+ | `emitAuthenticatedEvent(bool)` | Dispatches the DOM `'authenticated'` CustomEvent (on `document`, bubbles to `window`) |
138
143
 
139
144
  > `getJWToken` is **`@deprecated`**: it is an alias of `requestWebTokenSession`, renamed because the
140
145
  > old name suggested it returned the JWT. It will be removed in the next major.
@@ -146,7 +151,7 @@ the request replayed once. See [Authentication](./docs/auth/index.mdx) and
146
151
  [Handling 401](./docs/auth/handling-401.mdx).
147
152
 
148
153
  ```typescript
149
- import { isAuthenticated, login, logout } from '@sinequa/atomic';
154
+ import { isAuthenticated, login, logout } from "@sinequa/atomic";
150
155
 
151
156
  if (!isAuthenticated()) {
152
157
  // Auto-resolve: reuse an existing session if any, otherwise follow the resolved
@@ -154,7 +159,7 @@ if (!isAuthenticated()) {
154
159
  const ok = await login();
155
160
 
156
161
  // — or — explicit credentials, which bypass mode detection entirely.
157
- const okWithCredentials = await login({ username: 'alice', password: 's3cr3t' });
162
+ const okWithCredentials = await login({ username: "alice", password: "s3cr3t" });
158
163
  }
159
164
 
160
165
  const redirectUrl = await logout();
@@ -166,14 +171,14 @@ const redirectUrl = await logout();
166
171
  typed discriminated union — no more juggling overlapping booleans:
167
172
 
168
173
  ```typescript
169
- import { AuthMode, globalConfig, setGlobalConfig } from '@sinequa/atomic';
174
+ import { AuthMode, globalConfig, setGlobalConfig } from "@sinequa/atomic";
170
175
 
171
- setGlobalConfig({ authMode: AuthMode.credentials() }); // username/password form
172
- setGlobalConfig({ authMode: AuthMode.sso() }); // browser/proxy-injected auth
173
- setGlobalConfig({ authMode: AuthMode.oauth('my-provider') }); // redirect to an OAuth provider
174
- setGlobalConfig({ authMode: AuthMode.saml('my-provider') }); // redirect to a SAML provider
175
- setGlobalConfig({ authMode: AuthMode.bearer(token) }); // server-to-server bearer token
176
- setGlobalConfig({ authMode: AuthMode.unknown() }); // try SSO, then fall back to credentials
176
+ setGlobalConfig({ authMode: AuthMode.credentials() }); // username/password form
177
+ setGlobalConfig({ authMode: AuthMode.sso() }); // browser/proxy-injected auth
178
+ setGlobalConfig({ authMode: AuthMode.oauth("my-provider") }); // redirect to an OAuth provider
179
+ setGlobalConfig({ authMode: AuthMode.saml("my-provider") }); // redirect to a SAML provider
180
+ setGlobalConfig({ authMode: AuthMode.bearer(token) }); // server-to-server bearer token
181
+ setGlobalConfig({ authMode: AuthMode.unknown() }); // try SSO, then fall back to credentials
177
182
 
178
183
  // `login()` and `detectAuthMode()` branch on `authMode.kind`. Every key of `globalConfig` is
179
184
  // optional, so read it through `?.` — the default is `AuthMode.unknown()`.
@@ -211,7 +216,7 @@ import {
211
216
  fetchQueryExport,
212
217
  fetchQueryIntent,
213
218
  searchPrincipals,
214
- } from '@sinequa/atomic';
219
+ } from "@sinequa/atomic";
215
220
  ```
216
221
 
217
222
  Auditing is not a `fetch*` function: use `Audit.notify(...)`, plus the record decorators
@@ -225,7 +230,7 @@ import {
225
230
  fetchVersion,
226
231
  fetchChangePassword,
227
232
  fetchSendPasswordResetEmail,
228
- } from '@sinequa/atomic';
233
+ } from "@sinequa/atomic";
229
234
  ```
230
235
 
231
236
  The full endpoint list — with the `client.api` method and the free function for each — is in
@@ -239,7 +244,7 @@ Utilities for transforming Sinequa data structures.
239
244
 
240
245
  ```typescript
241
246
  import {
242
- getMetadata, // metadata of an article as `string[]` (splits comma-separated values)
247
+ getMetadata, // metadata of an article as `string[]` (splits comma-separated values)
243
248
  getMetadataWithValues, // same, as `{ display, value }[]`
244
249
  makeColumn,
245
250
  extraColumns,
@@ -248,7 +253,7 @@ import {
248
253
  escapeExpr,
249
254
  guid,
250
255
  isObject,
251
- } from '@sinequa/atomic';
256
+ } from "@sinequa/atomic";
252
257
  ```
253
258
 
254
259
  More in [Helpers](./docs/reference/helpers.mdx).
@@ -260,18 +265,15 @@ operands and collapse trivial cases (0 → `undefined`, 1 → the operand itself
260
265
  cleanly from optional UI state:
261
266
 
262
267
  ```typescript
263
- import { filter, fetchQuery } from '@sinequa/atomic';
268
+ import { filter, fetchQuery } from "@sinequa/atomic";
264
269
 
265
270
  const filters = filter.and(
266
- filter.gt('size', 1000),
267
- filter.or(
268
- filter.eq('treepath', '/HR/*'),
269
- filter.in('authors', ['alice', 'bob']),
270
- ),
271
- onlyRecent && filter.between('modified', '2024-01-01', '2024-12-31'),
271
+ filter.gt("size", 1000),
272
+ filter.or(filter.eq("treepath", "/HR/*"), filter.in("authors", ["alice", "bob"])),
273
+ onlyRecent && filter.between("modified", "2024-01-01", "2024-12-31"),
272
274
  );
273
275
 
274
- await fetchQuery({ name: '<your-query>', text: 'report', filters });
276
+ await fetchQuery({ name: "<your-query>", text: "report", filters });
275
277
  ```
276
278
 
277
279
  Leaf operators: `eq` · `neq` · `gt` · `gte` · `lt` · `lte` · `like` · `contains` · `regex` · `isNull` · `isNotNull` · `in` · `between`. Combinators: `and` · `or` · `not`.
@@ -288,13 +290,13 @@ built rather than a value. Passing it to `filter.eq` makes the backend answer
288
290
  ```typescript
289
291
  import {
290
292
  bisect,
291
- sysLang, // resolves `all[fr]tous[de]alle` against a locale
292
- getRelativeDate, // and `getOffsetFromDates`
293
- getQueryParamsFromUrl, // and `getUrlParamsFromQueryParams`, `getFiltersFromUrl`, …
294
- addConcepts, // and `getConcepts`, `parseText`, `rewriteText`, `removeConcept(s)`
293
+ sysLang, // resolves `all[fr]tous[de]alle` against a locale
294
+ getRelativeDate, // and `getOffsetFromDates`
295
+ getQueryParamsFromUrl, // and `getUrlParamsFromQueryParams`, `getFiltersFromUrl`, …
296
+ addConcepts, // and `getConcepts`, `parseText`, `rewriteText`, `removeConcept(s)`
295
297
  notify,
296
- configureLogger, // and the `debug` / `info` / `warn` / `error` bindings, `LogLevel`
297
- } from '@sinequa/atomic';
298
+ configureLogger, // and the `debug` / `info` / `warn` / `error` bindings, `LogLevel`
299
+ } from "@sinequa/atomic";
298
300
  ```
299
301
 
300
302
  > The library's verbosity is set with `configureLogger({ level: LogLevel.DEBUG })`, **not** through
@@ -309,15 +311,29 @@ The package re-exports every Sinequa domain type so you never need to cast:
309
311
 
310
312
  ```typescript
311
313
  import type {
312
- CCApp, CCQuery, CCColumn, CCIndex,
313
- Aggregation, AggregationItem, ListAggregation, TreeAggregation,
314
- Filter, SimpleFilter, InFilter, BetweenFilter, ExprFilter, NullFilter, NotNullFilter,
315
- AuthMode, AuthModeKind,
314
+ CCApp,
315
+ CCQuery,
316
+ CCColumn,
317
+ CCIndex,
318
+ Aggregation,
319
+ AggregationItem,
320
+ ListAggregation,
321
+ TreeAggregation,
322
+ Filter,
323
+ SimpleFilter,
324
+ InFilter,
325
+ BetweenFilter,
326
+ ExprFilter,
327
+ NullFilter,
328
+ NotNullFilter,
329
+ AuthMode,
330
+ AuthModeKind,
316
331
  PreviewData,
317
332
  Principal,
318
- AuditEvent, AuditRecord,
333
+ AuditEvent,
334
+ AuditRecord,
319
335
  TextChunk,
320
- } from '@sinequa/atomic';
336
+ } from "@sinequa/atomic";
321
337
  ```
322
338
 
323
339
  Which type comes back from which call: [Type map](./docs/reference/types-map.mdx).
@@ -330,11 +346,11 @@ Set the backend URL before making any API call (required when the Sinequa server
330
346
  same-origin). `setGlobalConfig` performs a shallow merge into `globalConfig`:
331
347
 
332
348
  ```typescript
333
- import { setGlobalConfig, globalConfig, AuthMode } from '@sinequa/atomic';
349
+ import { setGlobalConfig, globalConfig, AuthMode } from "@sinequa/atomic";
334
350
 
335
351
  setGlobalConfig({
336
- app: 'my-app',
337
- backendUrl: 'https://my-sinequa-server.example.com',
352
+ app: "my-app",
353
+ backendUrl: "https://my-sinequa-server.example.com",
338
354
  authMode: AuthMode.unknown(), // optional — defaults to `unknown`
339
355
  });
340
356
 
@@ -388,7 +404,7 @@ npm run dev:pack # build + pack locally
388
404
  ## Contributing
389
405
 
390
406
  1. All tests must pass.
391
- 2. Lint with [Biome](https://biomejs.dev/) — `npx @biomejs/biome check --write .`
407
+ 2. Lint and format with Vite+ (Oxlint/Oxfmt) — `npx vp check --fix`
392
408
  3. Follow [Conventional Commits](https://www.conventionalcommits.org/).
393
409
  4. Any change touching `src/` needs a **changeset** in the same commit (`npm run changeset`, then
394
410
  `npm run changeset:status` to check) — the `changeset-check` CI job blocks the merge without one.
package/dist/atomic.cjs CHANGED
@@ -1 +1 @@
1
- Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("./src-BS1kfBgv.cjs");exports.API=e.ht,exports.ApiError=e.Gn,exports.Audit=e.Ot,exports.AuditEventType=e.nn,exports.AuthMode=e.nr,exports.DEFAULT_AGGREGATION_COUNT=e.in,exports.DidYouMeanKind=e.Qt,exports.EngineType=e.tn,exports.EngineTypeModifier=e.en,exports.LogLevel=e.cr,exports.MINIMUM_COMPATIBLE_SERVER_API_VERSION=e.$t,exports.RFMDisplay=e.Zt,exports.ServerError=e.Hn,exports.TimeoutError=e.Fn,exports.UnauthorizedError=e.Wn,exports.addAuditAdditionalInfo=e.kt,exports.addConcepts=e.b,exports.addContainerDocuments=e.H,exports.addSessionId=e.At,exports.addUrl=e.jt,exports.aggItemRegex=e.D,exports.aggregationHasMore=e.an,exports.aggregationItemStrictCompare=e.O,exports.appInitializerFn=e.sn,exports.applyConfig=e.$n,exports.assertNever=e.En,exports.bisect=e.E,exports.buildPathsAndLevels=e.ft,exports.clearSessionTokens=e.yn,exports.configureLogger=e.lr,exports.createAtomicClient=e.N,exports.createContainer=e.U,exports.createHeaders=e.Kn,exports.createHeadersWithContext=e.qn,exports.createTimeoutController=e.Pn,exports.createUserProfile=e.I,Object.defineProperty(exports,"debug",{enumerable:!0,get:function(){return e.ur}}),exports.del=e.hn,exports.delWithContext=e.gn,exports.deleteContainerDocuments=e.W,exports.deleteContainers=e.G,exports.deleteUserProfileProperty=e.L,exports.deleteUserSettings=e.Z,exports.deleteWebTokenCookie=e.xn,exports.detectAuthMode=e.jn,exports.emitAuthenticatedEvent=e.Yn,Object.defineProperty(exports,"error",{enumerable:!0,get:function(){return e.dr}}),exports.escapeExpr=e.Mt,exports.expiresSoon=e.n,exports.extraColumns=e.Yt,exports.fetchAggregation=e.Dt,exports.fetchApp=e.cn,exports.fetchAppPreLogin=e.ln,exports.fetchBulkQuery=e.pt,exports.fetchChangePassword=e.X,exports.fetchDataset=e.wt,exports.fetchDatasetList=e.Tt,exports.fetchDatasets=e.Et,exports.fetchLabels=e.St,exports.fetchPreview=e.bt,exports.fetchPreviewUrl=e.xt,exports.fetchPrincipal=e.gt,exports.fetchPrincipalList=e._t,exports.fetchPrincipalUserid=e.vt,exports.fetchPrincipalUserids=e.yt,exports.fetchPrincipalsByIds=e.ct,exports.fetchQuery=e.mt,exports.fetchQueryExport=e.dt,exports.fetchQueryIntent=e.ut,exports.fetchSendPasswordResetEmail=e.B,exports.fetchSimilarDocuments=e.st,exports.fetchSponsoredLinks=e.ot,exports.fetchSuggest=e.nt,exports.fetchSuggestField=e.rt,exports.fetchSuggestQuery=e.it,exports.fetchTextChunks=e.tt,exports.fetchUploadStatus=e.V,exports.fetchUserProfile=e.R,exports.fetchUserSettings=e.Q,exports.fetchVersion=e.F,exports.filter=e.Kt,exports.flattenLegacyFilterValues=e.qt,exports.get=e.kn,exports.getConcepts=e.x,exports.getContainer=e.K,exports.getCsrfToken=e.On,exports.getDefaultClient=e.P,exports.getFiltersFromURI=e.s,exports.getFiltersFromUrl=e.c,exports.getHelpIndexUrl=e.a,exports.getIdFromUrl=e.l,exports.getJWToken=e.wn,exports.getMetadata=e.Wt,exports.getMetadataWithValues=e.Gt,exports.getOffsetFromDates=e.v,exports.getQueryPageFromUrl=e.u,exports.getQueryParamsFromUrl=e.d,exports.getQueryTabFromUrl=e.f,exports.getQueryTextFromUrl=e.p,exports.getRelativeDate=e.y,exports.getTime=e.Nt,exports.getToken=e.Jn,exports.getUrlParamsFromQueryParams=e.m,exports.getWithContext=e.An,exports.globalConfig=e.er,exports.guid=e.Pt,exports.handleResponse=e.Bn,exports.handleResponseWithContext=e.Vn,exports.hasSession=e.Dn,exports.hashString=e.Ft,Object.defineProperty(exports,"info",{enumerable:!0,get:function(){return e.fr}}),exports.initializeAppConfig=e.un,exports.isArrayBuffer=e.It,exports.isAuthenticated=e._n,exports.isBlob=e.Lt,exports.isDate=e.Rt,exports.isExpired=e.r,exports.isExternalAuthMode=e.rr,exports.isJsonable=e.zt,exports.isNotInputEvent=e._,exports.isObject=e.Bt,exports.isRedirectPending=e.vn,exports.isString=e.Vt,exports.labels=e.Ct,exports.legacyBooleansToAuthMode=e.ir,exports.legacyFilterToFilter=e.Jt,exports.listContainerDocuments=e.q,exports.listContainers=e.J,exports.login=e.Sn,exports.logout=e.bn,exports.makeColumn=e.Xt,exports.notify=e.g,exports.onAuthEvent=e.mr,exports.openParentNodes=e.k,exports.parseText=e.S,exports.parseValueAndOperatorFromItem=e.A,exports.patch=e.pn,exports.patchUserProfile=e.z,exports.patchUserSettings=e.$,exports.patchWithContext=e.mn,exports.post=e.In,exports.postWithContext=e.Ln,exports.put=e.dn,exports.putWithContext=e.fn,exports.queryParamsFromUrl=e.h,exports.removeConcept=e.C,exports.removeConcepts=e.w,exports.requestWebTokenSession=e.Tn,exports.resolveAggregationCount=e.on,exports.resolveBearerToken=e.ar,exports.resolveNoAutoAuthentication=e.Rn,exports.resolveNoAutoAuthenticationWithContext=e.zn,exports.resolveOAuthProvider=e.or,exports.resolveSAMLProvider=e.sr,exports.resolveToColumnName=e.rn,exports.resultPages=e.Ut,exports.rewriteText=e.T,exports.saveUserSettings=e.et,exports.searchPrincipals=e.lt,exports.setGlobalConfig=e.tr,exports.setToken=e.Un,exports.sha512=e.Ht,exports.suggestionsToTreeAggregationNodes=e.j,exports.sysLang=e.o,exports.toDate=e.i,exports.toSqlValue=e.at,exports.translateAggregationToDateOptions=e.M,exports.tryAutoAuthentication=e.Cn,exports.tryOAuthAuthentication=e.Nn,exports.trySAMLAuthentication=e.Mn,exports.updateContainer=e.Y,Object.defineProperty(exports,"warn",{enumerable:!0,get:function(){return e.pr}}),exports.withRetry=e.t;
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("./src-DMsETv6_.cjs");exports.API=e.ht,exports.ApiError=e.Gn,exports.Audit=e.Ot,exports.AuditEventType=e.nn,exports.AuthMode=e.nr,exports.DEFAULT_AGGREGATION_COUNT=e.in,exports.DidYouMeanKind=e.Qt,exports.EngineType=e.tn,exports.EngineTypeModifier=e.en,exports.LogLevel=e.cr,exports.MINIMUM_COMPATIBLE_SERVER_API_VERSION=e.$t,exports.RFMDisplay=e.Zt,exports.ServerError=e.Hn,exports.TimeoutError=e.Fn,exports.UnauthorizedError=e.Wn,exports.addAuditAdditionalInfo=e.kt,exports.addConcepts=e.b,exports.addContainerDocuments=e.H,exports.addSessionId=e.At,exports.addUrl=e.jt,exports.aggItemRegex=e.D,exports.aggregationHasMore=e.an,exports.aggregationItemStrictCompare=e.O,exports.appInitializerFn=e.sn,exports.applyConfig=e.$n,exports.assertNever=e.En,exports.bisect=e.E,exports.buildPathsAndLevels=e.ft,exports.clearSessionTokens=e.yn,exports.configureLogger=e.lr,exports.createAtomicClient=e.N,exports.createContainer=e.U,exports.createHeaders=e.Kn,exports.createHeadersWithContext=e.qn,exports.createTimeoutController=e.Pn,exports.createUserProfile=e.I,Object.defineProperty(exports,"debug",{enumerable:!0,get:function(){return e.ur}}),exports.del=e.hn,exports.delWithContext=e.gn,exports.deleteContainerDocuments=e.W,exports.deleteContainers=e.G,exports.deleteUserProfileProperty=e.L,exports.deleteUserSettings=e.Z,exports.deleteWebTokenCookie=e.xn,exports.detectAuthMode=e.jn,exports.emitAuthenticatedEvent=e.Yn,Object.defineProperty(exports,"error",{enumerable:!0,get:function(){return e.dr}}),exports.escapeExpr=e.Mt,exports.expiresSoon=e.n,exports.extraColumns=e.Yt,exports.fetchAggregation=e.Dt,exports.fetchApp=e.cn,exports.fetchAppPreLogin=e.ln,exports.fetchBulkQuery=e.pt,exports.fetchChangePassword=e.X,exports.fetchDataset=e.wt,exports.fetchDatasetList=e.Tt,exports.fetchDatasets=e.Et,exports.fetchLabels=e.St,exports.fetchPreview=e.bt,exports.fetchPreviewUrl=e.xt,exports.fetchPrincipal=e.gt,exports.fetchPrincipalList=e._t,exports.fetchPrincipalUserid=e.vt,exports.fetchPrincipalUserids=e.yt,exports.fetchPrincipalsByIds=e.ct,exports.fetchQuery=e.mt,exports.fetchQueryExport=e.dt,exports.fetchQueryIntent=e.ut,exports.fetchSendPasswordResetEmail=e.B,exports.fetchSimilarDocuments=e.st,exports.fetchSponsoredLinks=e.ot,exports.fetchSuggest=e.nt,exports.fetchSuggestField=e.rt,exports.fetchSuggestQuery=e.it,exports.fetchTextChunks=e.tt,exports.fetchUploadStatus=e.V,exports.fetchUserProfile=e.R,exports.fetchUserSettings=e.Q,exports.fetchVersion=e.F,exports.filter=e.Kt,exports.flattenLegacyFilterValues=e.qt,exports.get=e.kn,exports.getConcepts=e.x,exports.getContainer=e.K,exports.getCsrfToken=e.On,exports.getDefaultClient=e.P,exports.getFiltersFromURI=e.s,exports.getFiltersFromUrl=e.c,exports.getHelpIndexUrl=e.a,exports.getIdFromUrl=e.l,exports.getJWToken=e.wn,exports.getMetadata=e.Wt,exports.getMetadataWithValues=e.Gt,exports.getOffsetFromDates=e.v,exports.getQueryPageFromUrl=e.u,exports.getQueryParamsFromUrl=e.d,exports.getQueryTabFromUrl=e.f,exports.getQueryTextFromUrl=e.p,exports.getRelativeDate=e.y,exports.getTime=e.Nt,exports.getToken=e.Jn,exports.getUrlParamsFromQueryParams=e.m,exports.getWithContext=e.An,exports.globalConfig=e.er,exports.guid=e.Pt,exports.handleResponse=e.Bn,exports.handleResponseWithContext=e.Vn,exports.hasSession=e.Dn,exports.hashString=e.Ft,Object.defineProperty(exports,"info",{enumerable:!0,get:function(){return e.fr}}),exports.initializeAppConfig=e.un,exports.isArrayBuffer=e.It,exports.isAuthenticated=e._n,exports.isBlob=e.Lt,exports.isDate=e.Rt,exports.isExpired=e.r,exports.isExternalAuthMode=e.rr,exports.isJsonable=e.zt,exports.isNotInputEvent=e._,exports.isObject=e.Bt,exports.isRedirectPending=e.vn,exports.isString=e.Vt,exports.labels=e.Ct,exports.legacyBooleansToAuthMode=e.ir,exports.legacyFilterToFilter=e.Jt,exports.listContainerDocuments=e.q,exports.listContainers=e.J,exports.login=e.Sn,exports.logout=e.bn,exports.makeColumn=e.Xt,exports.notify=e.g,exports.onAuthEvent=e.mr,exports.openParentNodes=e.k,exports.parseText=e.S,exports.parseValueAndOperatorFromItem=e.A,exports.patch=e.pn,exports.patchUserProfile=e.z,exports.patchUserSettings=e.$,exports.patchWithContext=e.mn,exports.post=e.In,exports.postWithContext=e.Ln,exports.put=e.dn,exports.putWithContext=e.fn,exports.queryParamsFromUrl=e.h,exports.removeConcept=e.C,exports.removeConcepts=e.w,exports.requestWebTokenSession=e.Tn,exports.resolveAggregationCount=e.on,exports.resolveBearerToken=e.ar,exports.resolveNoAutoAuthentication=e.Rn,exports.resolveNoAutoAuthenticationWithContext=e.zn,exports.resolveOAuthProvider=e.or,exports.resolveSAMLProvider=e.sr,exports.resolveToColumnName=e.rn,exports.resultPages=e.Ut,exports.rewriteText=e.T,exports.saveUserSettings=e.et,exports.searchPrincipals=e.lt,exports.setGlobalConfig=e.tr,exports.setToken=e.Un,exports.sha512=e.Ht,exports.suggestionsToTreeAggregationNodes=e.j,exports.sysLang=e.o,exports.toDate=e.i,exports.toSqlValue=e.at,exports.translateAggregationToDateOptions=e.M,exports.tryAutoAuthentication=e.Cn,exports.tryOAuthAuthentication=e.Nn,exports.trySAMLAuthentication=e.Mn,exports.updateContainer=e.Y,Object.defineProperty(exports,"warn",{enumerable:!0,get:function(){return e.pr}}),exports.withRetry=e.t;
package/dist/atomic.js CHANGED
@@ -1,2 +1 @@
1
- import { $ as e, $n as t, $t as n, A as r, An as i, At as a, B as o, Bn as s, Bt as c, C as l, Cn as u, Ct as d, D as f, Dn as p, Dt as m, E as h, En as g, Et as _, F as v, Fn as y, Ft as b, G as x, Gn as S, Gt as C, H as w, Hn as T, Ht as E, I as D, In as O, It as k, J as A, Jn as j, Jt as M, K as N, Kn as P, Kt as F, L as I, Ln as L, Lt as R, M as z, Mn as B, Mt as V, N as H, Nn as U, Nt as W, O as G, On as K, Ot as q, P as J, Pn as Y, Pt as X, Q as Z, Qt as Q, R as $, Rn as ee, Rt as te, S as ne, Sn as re, St as ie, T as ae, Tn as oe, Tt as se, U as ce, Un as le, Ut as ue, V as de, Vn as fe, Vt as pe, W as me, Wn as he, Wt as ge, X as _e, Xt as ve, Y as ye, Yn as be, Yt as xe, Z as Se, Zt as Ce, _ as we, _n as Te, _t as Ee, a as De, an as Oe, ar as ke, at as Ae, b as je, bn as Me, bt as Ne, c as Pe, cn as Fe, cr as Ie, ct as Le, d as Re, dn as ze, dr as Be, dt as Ve, en as He, er as Ue, et as We, f as Ge, fn as Ke, fr as qe, ft as Je, g as Ye, gn as Xe, gt as Ze, h as Qe, hn as $e, ht as et, i as tt, in as nt, ir as rt, it, j as at, jn as ot, jt as st, k as ct, kn as lt, kt as ut, l as dt, ln as ft, lr as pt, lt as mt, m as ht, mn as gt, mr as _t, mt as vt, n as yt, nn as bt, nr as xt, nt as St, o as Ct, on as wt, or as Tt, ot as Et, p as Dt, pn as Ot, pr as kt, pt as At, q as jt, qn as Mt, qt as Nt, r as Pt, rn as Ft, rr as It, rt as Lt, s as Rt, sn as zt, sr as Bt, st as Vt, t as Ht, tn as Ut, tr as Wt, tt as Gt, u as Kt, un as qt, ur as Jt, ut as Yt, v as Xt, vn as Zt, vt as Qt, w as $t, wn as en, wt as tn, x as nn, xn as rn, xt as an, y as on, yn as sn, yt as cn, z as ln, zn as un, zt as dn } from "./src-BowomHL9.js";
2
- export { et as API, S as ApiError, q as Audit, bt as AuditEventType, xt as AuthMode, nt as DEFAULT_AGGREGATION_COUNT, Q as DidYouMeanKind, Ut as EngineType, He as EngineTypeModifier, Ie as LogLevel, n as MINIMUM_COMPATIBLE_SERVER_API_VERSION, Ce as RFMDisplay, T as ServerError, y as TimeoutError, he as UnauthorizedError, ut as addAuditAdditionalInfo, je as addConcepts, w as addContainerDocuments, a as addSessionId, st as addUrl, f as aggItemRegex, Oe as aggregationHasMore, G as aggregationItemStrictCompare, zt as appInitializerFn, t as applyConfig, g as assertNever, h as bisect, Je as buildPathsAndLevels, sn as clearSessionTokens, pt as configureLogger, H as createAtomicClient, ce as createContainer, P as createHeaders, Mt as createHeadersWithContext, Y as createTimeoutController, D as createUserProfile, Jt as debug, $e as del, Xe as delWithContext, me as deleteContainerDocuments, x as deleteContainers, I as deleteUserProfileProperty, Se as deleteUserSettings, rn as deleteWebTokenCookie, ot as detectAuthMode, be as emitAuthenticatedEvent, Be as error, V as escapeExpr, yt as expiresSoon, xe as extraColumns, m as fetchAggregation, Fe as fetchApp, ft as fetchAppPreLogin, At as fetchBulkQuery, _e as fetchChangePassword, tn as fetchDataset, se as fetchDatasetList, _ as fetchDatasets, ie as fetchLabels, Ne as fetchPreview, an as fetchPreviewUrl, Ze as fetchPrincipal, Ee as fetchPrincipalList, Qt as fetchPrincipalUserid, cn as fetchPrincipalUserids, Le as fetchPrincipalsByIds, vt as fetchQuery, Ve as fetchQueryExport, Yt as fetchQueryIntent, o as fetchSendPasswordResetEmail, Vt as fetchSimilarDocuments, Et as fetchSponsoredLinks, St as fetchSuggest, Lt as fetchSuggestField, it as fetchSuggestQuery, Gt as fetchTextChunks, de as fetchUploadStatus, $ as fetchUserProfile, Z as fetchUserSettings, v as fetchVersion, F as filter, Nt as flattenLegacyFilterValues, lt as get, nn as getConcepts, N as getContainer, K as getCsrfToken, J as getDefaultClient, Rt as getFiltersFromURI, Pe as getFiltersFromUrl, De as getHelpIndexUrl, dt as getIdFromUrl, en as getJWToken, ge as getMetadata, C as getMetadataWithValues, Xt as getOffsetFromDates, Kt as getQueryPageFromUrl, Re as getQueryParamsFromUrl, Ge as getQueryTabFromUrl, Dt as getQueryTextFromUrl, on as getRelativeDate, W as getTime, j as getToken, ht as getUrlParamsFromQueryParams, i as getWithContext, Ue as globalConfig, X as guid, s as handleResponse, fe as handleResponseWithContext, p as hasSession, b as hashString, qe as info, qt as initializeAppConfig, k as isArrayBuffer, Te as isAuthenticated, R as isBlob, te as isDate, Pt as isExpired, It as isExternalAuthMode, dn as isJsonable, we as isNotInputEvent, c as isObject, Zt as isRedirectPending, pe as isString, d as labels, rt as legacyBooleansToAuthMode, M as legacyFilterToFilter, jt as listContainerDocuments, A as listContainers, re as login, Me as logout, ve as makeColumn, Ye as notify, _t as onAuthEvent, ct as openParentNodes, ne as parseText, r as parseValueAndOperatorFromItem, Ot as patch, ln as patchUserProfile, e as patchUserSettings, gt as patchWithContext, O as post, L as postWithContext, ze as put, Ke as putWithContext, Qe as queryParamsFromUrl, l as removeConcept, $t as removeConcepts, oe as requestWebTokenSession, wt as resolveAggregationCount, ke as resolveBearerToken, ee as resolveNoAutoAuthentication, un as resolveNoAutoAuthenticationWithContext, Tt as resolveOAuthProvider, Bt as resolveSAMLProvider, Ft as resolveToColumnName, ue as resultPages, ae as rewriteText, We as saveUserSettings, mt as searchPrincipals, Wt as setGlobalConfig, le as setToken, E as sha512, at as suggestionsToTreeAggregationNodes, Ct as sysLang, tt as toDate, Ae as toSqlValue, z as translateAggregationToDateOptions, u as tryAutoAuthentication, U as tryOAuthAuthentication, B as trySAMLAuthentication, ye as updateContainer, kt as warn, Ht as withRetry };
1
+ export { ht as API, Gn as ApiError, Ot as Audit, nn as AuditEventType, nr as AuthMode, in as DEFAULT_AGGREGATION_COUNT, Qt as DidYouMeanKind, tn as EngineType, en as EngineTypeModifier, cr as LogLevel, $t as MINIMUM_COMPATIBLE_SERVER_API_VERSION, Zt as RFMDisplay, Hn as ServerError, Fn as TimeoutError, Wn as UnauthorizedError, kt as addAuditAdditionalInfo, b as addConcepts, H as addContainerDocuments, At as addSessionId, jt as addUrl, D as aggItemRegex, an as aggregationHasMore, O as aggregationItemStrictCompare, sn as appInitializerFn, $n as applyConfig, En as assertNever, E as bisect, ft as buildPathsAndLevels, yn as clearSessionTokens, lr as configureLogger, N as createAtomicClient, U as createContainer, Kn as createHeaders, qn as createHeadersWithContext, Pn as createTimeoutController, I as createUserProfile, ur as debug, hn as del, gn as delWithContext, W as deleteContainerDocuments, G as deleteContainers, L as deleteUserProfileProperty, Z as deleteUserSettings, xn as deleteWebTokenCookie, jn as detectAuthMode, Yn as emitAuthenticatedEvent, dr as error, Mt as escapeExpr, n as expiresSoon, Yt as extraColumns, Dt as fetchAggregation, cn as fetchApp, ln as fetchAppPreLogin, pt as fetchBulkQuery, X as fetchChangePassword, wt as fetchDataset, Tt as fetchDatasetList, Et as fetchDatasets, St as fetchLabels, bt as fetchPreview, xt as fetchPreviewUrl, gt as fetchPrincipal, _t as fetchPrincipalList, vt as fetchPrincipalUserid, yt as fetchPrincipalUserids, ct as fetchPrincipalsByIds, mt as fetchQuery, dt as fetchQueryExport, ut as fetchQueryIntent, B as fetchSendPasswordResetEmail, st as fetchSimilarDocuments, ot as fetchSponsoredLinks, nt as fetchSuggest, rt as fetchSuggestField, it as fetchSuggestQuery, tt as fetchTextChunks, V as fetchUploadStatus, R as fetchUserProfile, Q as fetchUserSettings, F as fetchVersion, Kt as filter, qt as flattenLegacyFilterValues, kn as get, x as getConcepts, K as getContainer, On as getCsrfToken, P as getDefaultClient, s as getFiltersFromURI, c as getFiltersFromUrl, a as getHelpIndexUrl, l as getIdFromUrl, wn as getJWToken, Wt as getMetadata, Gt as getMetadataWithValues, v as getOffsetFromDates, u as getQueryPageFromUrl, d as getQueryParamsFromUrl, f as getQueryTabFromUrl, p as getQueryTextFromUrl, y as getRelativeDate, Nt as getTime, Jn as getToken, m as getUrlParamsFromQueryParams, An as getWithContext, er as globalConfig, Pt as guid, Bn as handleResponse, Vn as handleResponseWithContext, Dn as hasSession, Ft as hashString, fr as info, un as initializeAppConfig, It as isArrayBuffer, _n as isAuthenticated, Lt as isBlob, Rt as isDate, r as isExpired, rr as isExternalAuthMode, zt as isJsonable, _ as isNotInputEvent, Bt as isObject, vn as isRedirectPending, Vt as isString, Ct as labels, ir as legacyBooleansToAuthMode, Jt as legacyFilterToFilter, q as listContainerDocuments, J as listContainers, Sn as login, bn as logout, Xt as makeColumn, g as notify, mr as onAuthEvent, k as openParentNodes, S as parseText, A as parseValueAndOperatorFromItem, pn as patch, z as patchUserProfile, $ as patchUserSettings, mn as patchWithContext, In as post, Ln as postWithContext, dn as put, fn as putWithContext, h as queryParamsFromUrl, C as removeConcept, w as removeConcepts, Tn as requestWebTokenSession, on as resolveAggregationCount, ar as resolveBearerToken, Rn as resolveNoAutoAuthentication, zn as resolveNoAutoAuthenticationWithContext, or as resolveOAuthProvider, sr as resolveSAMLProvider, rn as resolveToColumnName, Ut as resultPages, T as rewriteText, et as saveUserSettings, lt as searchPrincipals, tr as setGlobalConfig, Un as setToken, Ht as sha512, j as suggestionsToTreeAggregationNodes, o as sysLang, i as toDate, at as toSqlValue, M as translateAggregationToDateOptions, Cn as tryAutoAuthentication, Nn as tryOAuthAuthentication, Mn as trySAMLAuthentication, Y as updateContainer, pr as warn, t as withRetry } from "./src-C-nHTU3y.js";
@@ -1 +1 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/authentication/constants.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,aAAa,EAAkB,MAAM,0BAA0B,CAAC;AAE9E;;;GAGG;AACH,eAAO,MAAM,eAAe,QAAS,CAAC;AAEtC,8FAA8F;AAC9F,eAAO,MAAM,2BAA2B,GAAI,KAAK,aAAa,KAAG,MAClB,CAAC;AAEhD,2FAA2F;AAC3F,eAAO,MAAM,gBAAgB,QAAO,MACS,CAAC;AAE9C;;;GAGG;AACH,eAAO,MAAM,YAAY;IACvB,yFAAyF;;IAEzF,+FAA+F;;IAE/F,+EAA+E;;IAE/E,gGAAgG;;CAExF,CAAC;AAEX;;;;;;GAMG;AACH,eAAO,MAAM,yBAAyB,kCAAkC,CAAC"}
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/authentication/constants.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,aAAa,EAAkB,MAAM,0BAA0B,CAAC;AAE9E;;;GAGG;AACH,eAAO,MAAM,eAAe,QAAS,CAAC;AAEtC,8FAA8F;AAC9F,eAAO,MAAM,2BAA2B,GAAI,KAAK,aAAa,KAAG,MAClB,CAAC;AAEhD,2FAA2F;AAC3F,eAAO,MAAM,gBAAgB,QAAO,MAAqD,CAAC;AAE1F;;;GAGG;AACH,eAAO,MAAM,YAAY;IACvB,yFAAyF;;IAEzF,+FAA+F;;IAE/F,+EAA+E;;IAE/E,gGAAgG;;CAExF,CAAC;AAEX;;;;;;GAMG;AACH,eAAO,MAAM,yBAAyB,kCAAkC,CAAC"}
@@ -1,5 +1,14 @@
1
1
  import type { ApiError } from "../../web-api/helpers/errors/api-error";
2
2
  import type { UnauthorizedError } from "../../web-api/helpers/errors/unauthorized-error";
3
+ /**
4
+ * Why a 401 was left to reach its caller (payload of the `sessionLost` event):
5
+ *
6
+ * - `noHook` — no `auth.recoverFromUnauthorized` hook is configured;
7
+ * - `refused` — the hook reported failure (`false`) or threw;
8
+ * - `replayUnauthorized` — the session was reported recovered, but the replayed request was rejected
9
+ * with a 401 again.
10
+ */
11
+ export type SessionLostReason = "noHook" | "refused" | "replayUnauthorized";
3
12
  /**
4
13
  * Typed client events and their payloads.
5
14
  *
@@ -7,6 +16,17 @@ import type { UnauthorizedError } from "../../web-api/helpers/errors/unauthorize
7
16
  * - `unauthorized` — a request was rejected with a 401 (fires just before the
8
17
  * {@link UnauthorizedError} is thrown). Use it to **observe**; to actually recover the session
9
18
  * and have the request replayed, configure `auth.recoverFromUnauthorized` instead;
19
+ * - `sessionLost` — a 401 actually reached the caller: the session could not be re-established.
20
+ * Unlike `unauthorized`, it does **not** fire for a 401 that `auth.recoverFromUnauthorized`
21
+ * recovered silently (the request is replayed and succeeds), so it is the event to drive a
22
+ * "session expired" message from. It fires once per lost session — for the first request of a
23
+ * burst losing it, not for each — and is re-armed once the session is shown alive again (a
24
+ * successful sign-in, the hook reporting success, or a request sent after the announcement that
25
+ * succeeds). It fires after `unauthorized`/`requestFailed`,
26
+ * just before the {@link UnauthorizedError} is rethrown. It never fires for a `noRecovery` request
27
+ * (sign-in, auto-authentication probe, logout, audit), whose 401 is an answer rather than an
28
+ * expiry, for a request trailing behind a deliberate `logout()`, nor for a request its caller
29
+ * aborted. `reason` tells why the 401 stood (see {@link SessionLostReason});
10
30
  * - `requestFailed` — any request that ended on an error status, 401 included. The place to
11
31
  * surface a notification without wrapping every call site;
12
32
  * - `tokenRefreshed` — the CSRF token was stored or refreshed (`sinequa-jwt-refresh` header);
@@ -20,6 +40,11 @@ export type AuthEventMap = {
20
40
  endpoint: string;
21
41
  error: UnauthorizedError;
22
42
  };
43
+ sessionLost: {
44
+ endpoint: string;
45
+ error: UnauthorizedError;
46
+ reason: SessionLostReason;
47
+ };
23
48
  requestFailed: {
24
49
  endpoint: string;
25
50
  status: number;
@@ -1 +1 @@
1
- {"version":3,"file":"auth-events.d.ts","sourceRoot":"","sources":["../../../src/authentication/events/auth-events.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,wCAAwC,CAAC;AACvE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iDAAiD,CAAC;AAEzF;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,YAAY,GAAG;IACzB,aAAa,EAAE;QAAE,aAAa,EAAE,OAAO,CAAA;KAAE,CAAC;IAC1C,YAAY,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,iBAAiB,CAAA;KAAE,CAAC;IAC7D,aAAa,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,QAAQ,CAAA;KAAE,CAAC;IACrE,cAAc,EAAE;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IAClC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;CAClC,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG,MAAM,YAAY,CAAC;AAE/C,8DAA8D;AAC9D,MAAM,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC;AAErC;;;GAGG;AACH,MAAM,WAAW,YAAY;IAC3B,EAAE,CAAC,CAAC,SAAS,aAAa,EACxB,KAAK,EAAE,CAAC,EACR,OAAO,EAAE,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC,KAAK,IAAI,GAC1C,WAAW,CAAC;IACf,IAAI,CAAC,CAAC,SAAS,aAAa,EAAE,KAAK,EAAE,CAAC,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;CACzE;AAED,wCAAwC;AACxC,wBAAgB,kBAAkB,IAAI,YAAY,CA8BjD;AAED,wFAAwF;AACxF,eAAO,MAAM,mBAAmB,cAAuB,CAAC;AAExD;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,WAAW,CAAC,CAAC,SAAS,aAAa,EACjD,KAAK,EAAE,CAAC,EACR,OAAO,EAAE,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC,KAAK,IAAI,GAC1C,WAAW,CAEb;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,CAAC,SAAS,aAAa,EACnD,KAAK,EAAE,CAAC,EACR,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC,GACvB,IAAI,CAEN"}
1
+ {"version":3,"file":"auth-events.d.ts","sourceRoot":"","sources":["../../../src/authentication/events/auth-events.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,wCAAwC,CAAC;AACvE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iDAAiD,CAAC;AAEzF;;;;;;;GAOG;AACH,MAAM,MAAM,iBAAiB,GAAG,QAAQ,GAAG,SAAS,GAAG,oBAAoB,CAAC;AAE5E;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,MAAM,MAAM,YAAY,GAAG;IACzB,aAAa,EAAE;QAAE,aAAa,EAAE,OAAO,CAAA;KAAE,CAAC;IAC1C,YAAY,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,iBAAiB,CAAA;KAAE,CAAC;IAC7D,WAAW,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,iBAAiB,CAAC;QAAC,MAAM,EAAE,iBAAiB,CAAA;KAAE,CAAC;IACvF,aAAa,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,QAAQ,CAAA;KAAE,CAAC;IACrE,cAAc,EAAE;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IAClC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;CAClC,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG,MAAM,YAAY,CAAC;AAE/C,8DAA8D;AAC9D,MAAM,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC;AAErC;;;GAGG;AACH,MAAM,WAAW,YAAY;IAC3B,EAAE,CAAC,CAAC,SAAS,aAAa,EAAE,KAAK,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC,KAAK,IAAI,GAAG,WAAW,CAAC;IAChG,IAAI,CAAC,CAAC,SAAS,aAAa,EAAE,KAAK,EAAE,CAAC,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;CACzE;AAED,wCAAwC;AACxC,wBAAgB,kBAAkB,IAAI,YAAY,CA8BjD;AAED,wFAAwF;AACxF,eAAO,MAAM,mBAAmB,cAAuB,CAAC;AAExD;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,WAAW,CAAC,CAAC,SAAS,aAAa,EACjD,KAAK,EAAE,CAAC,EACR,OAAO,EAAE,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC,KAAK,IAAI,GAC1C,WAAW,CAEb;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,CAAC,SAAS,aAAa,EAAE,KAAK,EAAE,CAAC,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,IAAI,CAE/F"}
@@ -1 +1 @@
1
- {"version":3,"file":"emit-authenticated-event.d.ts","sourceRoot":"","sources":["../../../src/authentication/events/emit-authenticated-event.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,aAAa,EAEnB,MAAM,6BAA6B,CAAC;AAGrC;;;GAGG;AACH,wBAAgB,iCAAiC,CAC/C,GAAG,EAAE,aAAa,EAClB,aAAa,EAAE,OAAO,QA4BvB;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,sBAAsB,CAAC,aAAa,EAAE,OAAO,QAE5D"}
1
+ {"version":3,"file":"emit-authenticated-event.d.ts","sourceRoot":"","sources":["../../../src/authentication/events/emit-authenticated-event.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,aAAa,EAAkB,MAAM,6BAA6B,CAAC;AAIjF;;;GAGG;AACH,wBAAgB,iCAAiC,CAAC,GAAG,EAAE,aAAa,EAAE,aAAa,EAAE,OAAO,QA4B3F;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,sBAAsB,CAAC,aAAa,EAAE,OAAO,QAE5D"}
@@ -1,3 +1,3 @@
1
- export { type AuthEventMap, type AuthEventName, onAuthEvent, type Unsubscribe, } from "./auth-events";
1
+ export { type AuthEventMap, type AuthEventName, onAuthEvent, type SessionLostReason, type Unsubscribe, } from "./auth-events";
2
2
  export { emitAuthenticatedEvent } from "./emit-authenticated-event";
3
3
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/authentication/events/index.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,KAAK,YAAY,EACjB,KAAK,aAAa,EAClB,WAAW,EACX,KAAK,WAAW,GACjB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/authentication/events/index.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,KAAK,YAAY,EACjB,KAAK,aAAa,EAClB,WAAW,EACX,KAAK,iBAAiB,EACtB,KAAK,WAAW,GACjB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC"}
@@ -1,4 +1,4 @@
1
- export { type AuthEventMap, type AuthEventName, emitAuthenticatedEvent, onAuthEvent, type Unsubscribe, } from "./events";
1
+ export { type AuthEventMap, type AuthEventName, emitAuthenticatedEvent, onAuthEvent, type SessionLostReason, type Unsubscribe, } from "./events";
2
2
  export { tryOAuthAuthentication, trySAMLAuthentication } from "./providers";
3
3
  export { clearSessionTokens, detectAuthMode, hasSession, isAuthenticated, isRedirectPending, login, logout, tryAutoAuthentication, } from "./session";
4
4
  export { deleteWebTokenCookie, getCsrfToken, getJWToken, getToken, requestWebTokenSession, setToken, } from "./tokens";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/authentication/index.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,KAAK,YAAY,EACjB,KAAK,aAAa,EAClB,sBAAsB,EACtB,WAAW,EACX,KAAK,WAAW,GACjB,MAAM,UAAU,CAAC;AAGlB,OAAO,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAE5E,OAAO,EACL,kBAAkB,EAClB,cAAc,EACd,UAAU,EACV,eAAe,EACf,iBAAiB,EACjB,KAAK,EACL,MAAM,EACN,qBAAqB,GACtB,MAAM,WAAW,CAAC;AAEnB,OAAO,EACL,oBAAoB,EACpB,YAAY,EACZ,UAAU,EACV,QAAQ,EACR,sBAAsB,EACtB,QAAQ,GACT,MAAM,UAAU,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/authentication/index.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,KAAK,YAAY,EACjB,KAAK,aAAa,EAClB,sBAAsB,EACtB,WAAW,EACX,KAAK,iBAAiB,EACtB,KAAK,WAAW,GACjB,MAAM,UAAU,CAAC;AAGlB,OAAO,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAE5E,OAAO,EACL,kBAAkB,EAClB,cAAc,EACd,UAAU,EACV,eAAe,EACf,iBAAiB,EACjB,KAAK,EACL,MAAM,EACN,qBAAqB,GACtB,MAAM,WAAW,CAAC;AAEnB,OAAO,EACL,oBAAoB,EACpB,YAAY,EACZ,UAAU,EACV,QAAQ,EACR,sBAAsB,EACtB,QAAQ,GACT,MAAM,UAAU,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"oauth-authentication.d.ts","sourceRoot":"","sources":["../../../src/authentication/providers/oauth-authentication.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,aAAa,EAEnB,MAAM,6BAA6B,CAAC;AAIrC,kCAAkC;AAClC,eAAO,MAAM,iCAAiC,GAC5C,KAAK,aAAa,KACjB,OAAO,CAAC;IAAE,WAAW,EAAE,MAAM,CAAA;CAAE,CAUjC,CAAC;AAEF;;;;;;;;;GASG;AACH,eAAO,MAAM,sBAAsB,QAAO,OAAO,CAAC;IAAE,WAAW,EAAE,MAAM,CAAA;CAAE,CACtB,CAAC"}
1
+ {"version":3,"file":"oauth-authentication.d.ts","sourceRoot":"","sources":["../../../src/authentication/providers/oauth-authentication.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,aAAa,EAAkB,MAAM,6BAA6B,CAAC;AAIjF,kCAAkC;AAClC,eAAO,MAAM,iCAAiC,GAC5C,KAAK,aAAa,KACjB,OAAO,CAAC;IAAE,WAAW,EAAE,MAAM,CAAA;CAAE,CAUjC,CAAC;AAEF;;;;;;;;;GASG;AACH,eAAO,MAAM,sBAAsB,QAAO,OAAO,CAAC;IAAE,WAAW,EAAE,MAAM,CAAA;CAAE,CACtB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"redirect-to-identity-provider.d.ts","sourceRoot":"","sources":["../../../src/authentication/providers/redirect-to-identity-provider.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,aAAa,EAInB,MAAM,6BAA6B,CAAC;AAQrC,qFAAqF;AACrF,QAAA,MAAM,cAAc;;;;;;;;;;;CAWV,CAAC;AAEX,MAAM,WAAW,+BAA+B;IAC9C,IAAI,EAAE,MAAM,OAAO,cAAc,CAAC;IAClC,gGAAgG;IAChG,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED;;;;;;;;;GASG;AACH,wBAAsB,0BAA0B,CAC9C,GAAG,EAAE,aAAa,EAClB,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,+BAA+B,GAClD,OAAO,CAAC;IAAE,WAAW,EAAE,MAAM,CAAA;CAAE,CAAC,CAoDlC"}
1
+ {"version":3,"file":"redirect-to-identity-provider.d.ts","sourceRoot":"","sources":["../../../src/authentication/providers/redirect-to-identity-provider.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,aAAa,EAInB,MAAM,6BAA6B,CAAC;AAKrC,qFAAqF;AACrF,QAAA,MAAM,cAAc;;;;;;;;;;;CAWV,CAAC;AAEX,MAAM,WAAW,+BAA+B;IAC9C,IAAI,EAAE,MAAM,OAAO,cAAc,CAAC;IAClC,gGAAgG;IAChG,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED;;;;;;;;;GASG;AACH,wBAAsB,0BAA0B,CAC9C,GAAG,EAAE,aAAa,EAClB,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,+BAA+B,GAClD,OAAO,CAAC;IAAE,WAAW,EAAE,MAAM,CAAA;CAAE,CAAC,CAiDlC"}
@@ -1 +1 @@
1
- {"version":3,"file":"saml-authentication.d.ts","sourceRoot":"","sources":["../../../src/authentication/providers/saml-authentication.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,aAAa,EAEnB,MAAM,6BAA6B,CAAC;AAIrC,iCAAiC;AACjC,eAAO,MAAM,gCAAgC,GAC3C,KAAK,aAAa,KACjB,OAAO,CAAC;IAAE,WAAW,EAAE,MAAM,CAAA;CAAE,CAUjC,CAAC;AAEF;;;;;;;;;GASG;AACH,eAAO,MAAM,qBAAqB,QAAO,OAAO,CAAC;IAAE,WAAW,EAAE,MAAM,CAAA;CAAE,CACtB,CAAC"}
1
+ {"version":3,"file":"saml-authentication.d.ts","sourceRoot":"","sources":["../../../src/authentication/providers/saml-authentication.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,aAAa,EAAkB,MAAM,6BAA6B,CAAC;AAIjF,iCAAiC;AACjC,eAAO,MAAM,gCAAgC,GAC3C,KAAK,aAAa,KACjB,OAAO,CAAC;IAAE,WAAW,EAAE,MAAM,CAAA;CAAE,CAUjC,CAAC;AAEF;;;;;;;;;GASG;AACH,eAAO,MAAM,qBAAqB,QAAO,OAAO,CAAC;IAAE,WAAW,EAAE,MAAM,CAAA;CAAE,CACtB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"auth-mode-marker.d.ts","sourceRoot":"","sources":["../../../src/authentication/session/auth-mode-marker.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,aAAa,EAInB,MAAM,6BAA6B,CAAC;AAQrC;;;;;;;;;GASG;AACH,eAAO,MAAM,sCAAsC,GACjD,KAAK,aAAa,KACjB,IAGF,CAAC;AAEF,eAAO,MAAM,qCAAqC,GAChD,KAAK,aAAa,KACjB,OAGF,CAAC;AAEF,eAAO,MAAM,+BAA+B,GAAI,KAAK,aAAa,KAAG,IAGpE,CAAC;AAEF,kDAAkD;AAClD,eAAO,MAAM,2BAA2B,QAAO,IACS,CAAC;AAEzD,iDAAiD;AACjD,eAAO,MAAM,0BAA0B,QAAO,OACS,CAAC;AAExD,2CAA2C;AAC3C,eAAO,MAAM,oBAAoB,QAAO,IACS,CAAC"}
1
+ {"version":3,"file":"auth-mode-marker.d.ts","sourceRoot":"","sources":["../../../src/authentication/session/auth-mode-marker.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,aAAa,EAInB,MAAM,6BAA6B,CAAC;AAQrC;;;;;;;;;GASG;AACH,eAAO,MAAM,sCAAsC,GAAI,KAAK,aAAa,KAAG,IAG3E,CAAC;AAEF,eAAO,MAAM,qCAAqC,GAAI,KAAK,aAAa,KAAG,OAG1E,CAAC;AAEF,eAAO,MAAM,+BAA+B,GAAI,KAAK,aAAa,KAAG,IAGpE,CAAC;AAEF,kDAAkD;AAClD,eAAO,MAAM,2BAA2B,QAAO,IACS,CAAC;AAEzD,iDAAiD;AACjD,eAAO,MAAM,0BAA0B,QAAO,OACS,CAAC;AAExD,2CAA2C;AAC3C,eAAO,MAAM,oBAAoB,QAAO,IAAuD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"auth-state.d.ts","sourceRoot":"","sources":["../../../src/authentication/session/auth-state.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,aAAa,EAInB,MAAM,6BAA6B,CAAC;AAGrC;;;;;;;;;GASG;AACH,eAAO,MAAM,2BAA2B,GACtC,KAAK,aAAa,EAClB,eAAe,OAAO,KACrB,IAQF,CAAC;AAEF,yGAAyG;AACzG,eAAO,MAAM,8BAA8B,GAAI,KAAK,aAAa,KAAG,OAGtD,CAAC;AAEf,uCAAuC;AACvC,eAAO,MAAM,gBAAgB,GAAI,eAAe,OAAO,KAAG,IACE,CAAC;AAE7D,0CAA0C;AAC1C,eAAO,MAAM,mBAAmB,QAAO,OACS,CAAC"}
1
+ {"version":3,"file":"auth-state.d.ts","sourceRoot":"","sources":["../../../src/authentication/session/auth-state.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,aAAa,EAInB,MAAM,6BAA6B,CAAC;AAGrC;;;;;;;;;GASG;AACH,eAAO,MAAM,2BAA2B,GAAI,KAAK,aAAa,EAAE,eAAe,OAAO,KAAG,IAQxF,CAAC;AAEF,yGAAyG;AACzG,eAAO,MAAM,8BAA8B,GAAI,KAAK,aAAa,KAAG,OACwB,CAAC;AAE7F,uCAAuC;AACvC,eAAO,MAAM,gBAAgB,GAAI,eAAe,OAAO,KAAG,IACE,CAAC;AAE7D,0CAA0C;AAC1C,eAAO,MAAM,mBAAmB,QAAO,OAAyD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"has-session.d.ts","sourceRoot":"","sources":["../../../src/authentication/session/has-session.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,aAAa,EAKnB,MAAM,6BAA6B,CAAC;AAKrC;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAsB,qBAAqB,CACzC,GAAG,EAAE,aAAa,GACjB,OAAO,CAAC,OAAO,CAAC,CAwBlB;AAsBD,iCAAiC;AACjC,eAAO,MAAM,UAAU,QAAO,OAAO,CAAC,OAAO,CACN,CAAC"}
1
+ {"version":3,"file":"has-session.d.ts","sourceRoot":"","sources":["../../../src/authentication/session/has-session.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,aAAa,EAKnB,MAAM,6BAA6B,CAAC;AAKrC;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAsB,qBAAqB,CAAC,GAAG,EAAE,aAAa,GAAG,OAAO,CAAC,OAAO,CAAC,CAmBhF;AAoBD,iCAAiC;AACjC,eAAO,MAAM,UAAU,QAAO,OAAO,CAAC,OAAO,CAA0C,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"login.d.ts","sourceRoot":"","sources":["../../../src/authentication/session/login.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,aAAa,EAMnB,MAAM,6BAA6B,CAAC;AAGrC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAgG/C;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,eAAO,MAAM,gBAAgB,GAC3B,KAAK,aAAa,EAClB,cAAc,WAAW,KACxB,OAAO,CAAC,OAAO,CAwFjB,CAAC;AAEF,4BAA4B;AAC5B,eAAO,MAAM,KAAK,GAAI,cAAc,WAAW,KAAG,OAAO,CAAC,OAAO,CAClB,CAAC"}
1
+ {"version":3,"file":"login.d.ts","sourceRoot":"","sources":["../../../src/authentication/session/login.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,aAAa,EAMnB,MAAM,6BAA6B,CAAC;AAGrC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAmF/C;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,eAAO,MAAM,gBAAgB,GAC3B,KAAK,aAAa,EAClB,cAAc,WAAW,KACxB,OAAO,CAAC,OAAO,CAoFjB,CAAC;AAEF,4BAA4B;AAC5B,eAAO,MAAM,KAAK,GAAI,cAAc,WAAW,KAAG,OAAO,CAAC,OAAO,CAClB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"logout.d.ts","sourceRoot":"","sources":["../../../src/authentication/session/logout.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,aAAa,EAKnB,MAAM,6BAA6B,CAAC;AAQrC;;;;;;;GAOG;AACH,wBAAsB,iBAAiB,CACrC,GAAG,EAAE,aAAa,GACjB,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAgC7B;AAED,6BAA6B;AAC7B,wBAAsB,MAAM,IAAI,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAE1D;AAED;;GAEG;AACH,wBAAgB,6BAA6B,CAAC,GAAG,EAAE,aAAa,GAAG,IAAI,CAatE;AAED;;GAEG;AACH,wBAAgB,kBAAkB,IAAI,IAAI,CAEzC"}
1
+ {"version":3,"file":"logout.d.ts","sourceRoot":"","sources":["../../../src/authentication/session/logout.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,aAAa,EAKnB,MAAM,6BAA6B,CAAC;AAQrC;;;;;;;GAOG;AACH,wBAAsB,iBAAiB,CAAC,GAAG,EAAE,aAAa,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CA6BvF;AAED,6BAA6B;AAC7B,wBAAsB,MAAM,IAAI,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAE1D;AAED;;GAEG;AACH,wBAAgB,6BAA6B,CAAC,GAAG,EAAE,aAAa,GAAG,IAAI,CAStE;AAED;;GAEG;AACH,wBAAgB,kBAAkB,IAAI,IAAI,CAEzC"}
@@ -1 +1 @@
1
- {"version":3,"file":"redirect-guard.d.ts","sourceRoot":"","sources":["../../../src/authentication/session/redirect-guard.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,aAAa,EAInB,MAAM,6BAA6B,CAAC;AAGrC;;;;;;;;;;;;GAYG;AACH,wBAAgB,4BAA4B,CAAC,GAAG,EAAE,aAAa,GAAG,OAAO,CAMxE;AAED,wCAAwC;AACxC,eAAO,MAAM,iBAAiB,QAAO,OACS,CAAC"}
1
+ {"version":3,"file":"redirect-guard.d.ts","sourceRoot":"","sources":["../../../src/authentication/session/redirect-guard.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,aAAa,EAInB,MAAM,6BAA6B,CAAC;AAGrC;;;;;;;;;;;;GAYG;AACH,wBAAgB,4BAA4B,CAAC,GAAG,EAAE,aAAa,GAAG,OAAO,CAExE;AAED,wCAAwC;AACxC,eAAO,MAAM,iBAAiB,QAAO,OAAuD,CAAC"}
@@ -0,0 +1,32 @@
1
+ import type { AtomicContext } from "../../client/atomic-context";
2
+ /** Taken when a request is sent, and handed back with its outcome. */
3
+ export declare function sessionLostMarkWithContext(ctx: AtomicContext): number;
4
+ /**
5
+ * Claims the announcement of this context's session loss for a request sent at `mark`.
6
+ *
7
+ * @returns `true` for the one caller that must raise `sessionLost`; `false` when the loss was
8
+ * already announced, or when the request was sent before the current session was established.
9
+ */
10
+ export declare function claimSessionLostWithContext(ctx: AtomicContext, mark: number): boolean;
11
+ /**
12
+ * A new session is established: its next loss is a new one to announce, and requests sent before
13
+ * it can no longer announce it lost.
14
+ *
15
+ * Called from `emitAuthenticatedEventWithContext(ctx, true)`, which every authentication path goes
16
+ * through, and when a recovery hook reports success (a hook may restore the session without
17
+ * `login()`, e.g. by refreshing an SSO cookie).
18
+ */
19
+ export declare function rearmSessionLostWithContext(ctx: AtomicContext): void;
20
+ /**
21
+ * A recovery hook called at `mark` reported success: re-arms like a new session, unless one was
22
+ * already established since — the hook went through `login()`, which re-armed. Doing it again would
23
+ * disown the requests sent against that session in the meantime.
24
+ */
25
+ export declare function rearmUnlessEstablishedSinceWithContext(ctx: AtomicContext, mark: number): void;
26
+ /**
27
+ * A request sent at `mark` succeeded: if it was sent after the announcement, the session is alive
28
+ * and the latch re-arms — without starting a new session, so requests in flight keep their right to
29
+ * announce its loss. A request sent earlier proves nothing about the loss announced since.
30
+ */
31
+ export declare function confirmSessionAliveWithContext(ctx: AtomicContext, mark: number): void;
32
+ //# sourceMappingURL=session-lost-latch.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"session-lost-latch.d.ts","sourceRoot":"","sources":["../../../src/authentication/session/session-lost-latch.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AA2CjE,sEAAsE;AACtE,wBAAgB,0BAA0B,CAAC,GAAG,EAAE,aAAa,GAAG,MAAM,CAErE;AAED;;;;;GAKG;AACH,wBAAgB,2BAA2B,CAAC,GAAG,EAAE,aAAa,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAQrF;AAED;;;;;;;GAOG;AACH,wBAAgB,2BAA2B,CAAC,GAAG,EAAE,aAAa,GAAG,IAAI,CAIpE;AAED;;;;GAIG;AACH,wBAAgB,sCAAsC,CAAC,GAAG,EAAE,aAAa,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAI7F;AAED;;;;GAIG;AACH,wBAAgB,8BAA8B,CAAC,GAAG,EAAE,aAAa,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAKrF"}
@@ -1 +1 @@
1
- {"version":3,"file":"try-auto-authentication.d.ts","sourceRoot":"","sources":["../../../src/authentication/session/try-auto-authentication.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,aAAa,EAGnB,MAAM,6BAA6B,CAAC;AAQrC;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,eAAO,MAAM,gCAAgC,GAC3C,KAAK,aAAa,KACjB,OAAO,CAAC,OAAO,CAkCjB,CAAC;AAEF,4CAA4C;AAC5C,eAAO,MAAM,qBAAqB,QAAO,OAAO,CAAC,OAAO,CACN,CAAC"}
1
+ {"version":3,"file":"try-auto-authentication.d.ts","sourceRoot":"","sources":["../../../src/authentication/session/try-auto-authentication.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,aAAa,EAAiC,MAAM,6BAA6B,CAAC;AAQhG;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,eAAO,MAAM,gCAAgC,GAAU,KAAK,aAAa,KAAG,OAAO,CAAC,OAAO,CAwB1F,CAAC;AAEF,4CAA4C;AAC5C,eAAO,MAAM,qBAAqB,QAAO,OAAO,CAAC,OAAO,CACN,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"user-authentication.d.ts","sourceRoot":"","sources":["../../../src/authentication/session/user-authentication.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,aAAa,EAEnB,MAAM,6BAA6B,CAAC;AAIrC;;;;;;GAMG;AACH,eAAO,MAAM,0BAA0B,GAAI,KAAK,aAAa,KAAG,OACG,CAAC;AAEpE;;;GAGG;AACH,eAAO,MAAM,eAAe,QAAO,OACS,CAAC"}
1
+ {"version":3,"file":"user-authentication.d.ts","sourceRoot":"","sources":["../../../src/authentication/session/user-authentication.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,aAAa,EAAkB,MAAM,6BAA6B,CAAC;AAIjF;;;;;;GAMG;AACH,eAAO,MAAM,0BAA0B,GAAI,KAAK,aAAa,KAAG,OACG,CAAC;AAEpE;;;GAGG;AACH,eAAO,MAAM,eAAe,QAAO,OAAqD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"delete-web-token-cookie.d.ts","sourceRoot":"","sources":["../../../src/authentication/tokens/delete-web-token-cookie.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,aAAa,EAEnB,MAAM,6BAA6B,CAAC;AAKrC,+DAA+D;AAC/D,MAAM,MAAM,0BAA0B,GAAG;IACvC,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,+BAA+B,GAC1C,KAAK,aAAa,KACjB,OAAO,CAAC,0BAA0B,CAcpC,CAAC;AAEF,2CAA2C;AAC3C,eAAO,MAAM,oBAAoB,QAAO,OAAO,CAAC,0BAA0B,CACzB,CAAC"}
1
+ {"version":3,"file":"delete-web-token-cookie.d.ts","sourceRoot":"","sources":["../../../src/authentication/tokens/delete-web-token-cookie.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,aAAa,EAAkB,MAAM,6BAA6B,CAAC;AAKjF,+DAA+D;AAC/D,MAAM,MAAM,0BAA0B,GAAG;IACvC,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,+BAA+B,GAC1C,KAAK,aAAa,KACjB,OAAO,CAAC,0BAA0B,CAcpC,CAAC;AAEF,2CAA2C;AAC3C,eAAO,MAAM,oBAAoB,QAAO,OAAO,CAAC,0BAA0B,CACzB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"get-csrf-token.d.ts","sourceRoot":"","sources":["../../../src/authentication/tokens/get-csrf-token.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,aAAa,EAGnB,MAAM,6BAA6B,CAAC;AAMrC;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,uBAAuB,GAClC,KAAK,aAAa,KACjB,OAAO,CAAC,MAAM,GAAG,IAAI,CA0BvB,CAAC;AAEF,mCAAmC;AACnC,eAAO,MAAM,YAAY,QAAO,OAAO,CAAC,MAAM,GAAG,IAAI,CACZ,CAAC"}
1
+ {"version":3,"file":"get-csrf-token.d.ts","sourceRoot":"","sources":["../../../src/authentication/tokens/get-csrf-token.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,aAAa,EAAiC,MAAM,6BAA6B,CAAC;AAMhG;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,uBAAuB,GAAU,KAAK,aAAa,KAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAwBvF,CAAC;AAEF,mCAAmC;AACnC,eAAO,MAAM,YAAY,QAAO,OAAO,CAAC,MAAM,GAAG,IAAI,CAA4C,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"get-jwt-token.d.ts","sourceRoot":"","sources":["../../../src/authentication/tokens/get-jwt-token.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,aAAa,EAGnB,MAAM,6BAA6B,CAAC;AAErC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAM/C;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,iCAAiC,CACrD,GAAG,EAAE,aAAa,EAClB,WAAW,CAAC,EAAE,WAAW,EACzB,OAAO,CAAC,EAAE;IAAE,WAAW,CAAC,EAAE,OAAO,CAAA;CAAE,GAClC,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CA4BxB;AAED;;;;;;;;;GASG;AACH,wBAAgB,sBAAsB,CACpC,WAAW,EAAE,WAAW,GACvB,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;AAC1B;;;;;;GAMG;AACH,wBAAgB,sBAAsB,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;AAKjE;;;GAGG;AACH,eAAO,MAAM,UAAU,+BAAyB,CAAC"}
1
+ {"version":3,"file":"get-jwt-token.d.ts","sourceRoot":"","sources":["../../../src/authentication/tokens/get-jwt-token.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,aAAa,EAAiC,MAAM,6BAA6B,CAAC;AAEhG,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAM/C;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,iCAAiC,CACrD,GAAG,EAAE,aAAa,EAClB,WAAW,CAAC,EAAE,WAAW,EACzB,OAAO,CAAC,EAAE;IAAE,WAAW,CAAC,EAAE,OAAO,CAAA;CAAE,GAClC,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CA4BxB;AAED;;;;;;;;;GASG;AACH,wBAAgB,sBAAsB,CAAC,WAAW,EAAE,WAAW,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;AACzF;;;;;;GAMG;AACH,wBAAgB,sBAAsB,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;AAKjE;;;GAGG;AACH,eAAO,MAAM,UAAU,+BAAyB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"get-token.d.ts","sourceRoot":"","sources":["../../../src/authentication/tokens/get-token.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,aAAa,EAKnB,MAAM,6BAA6B,CAAC;AAGrC;;;GAGG;AACH,eAAO,MAAM,mBAAmB,GAAI,KAAK,aAAa,KAAG,MAAM,GAAG,IA0BjE,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,QAAQ,QAAO,MAAM,GAAG,IACA,CAAC"}
1
+ {"version":3,"file":"get-token.d.ts","sourceRoot":"","sources":["../../../src/authentication/tokens/get-token.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,aAAa,EAKnB,MAAM,6BAA6B,CAAC;AAGrC;;;GAGG;AACH,eAAO,MAAM,mBAAmB,GAAI,KAAK,aAAa,KAAG,MAAM,GAAG,IAsBjE,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,QAAQ,QAAO,MAAM,GAAG,IAA2C,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"set-token.d.ts","sourceRoot":"","sources":["../../../src/authentication/tokens/set-token.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,aAAa,EAInB,MAAM,6BAA6B,CAAC;AAGrC;;;GAGG;AACH,eAAO,MAAM,mBAAmB,GAC9B,KAAK,aAAa,EAClB,OAAO,MAAM,KACZ,IAMF,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,QAAQ,GAAI,OAAO,MAAM,KAAG,IACG,CAAC"}
1
+ {"version":3,"file":"set-token.d.ts","sourceRoot":"","sources":["../../../src/authentication/tokens/set-token.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,aAAa,EAInB,MAAM,6BAA6B,CAAC;AAGrC;;;GAGG;AACH,eAAO,MAAM,mBAAmB,GAAI,KAAK,aAAa,EAAE,OAAO,MAAM,KAAG,IAMvE,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,QAAQ,GAAI,OAAO,MAAM,KAAG,IAAkD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"atomic-context.d.ts","sourceRoot":"","sources":["../../src/client/atomic-context.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,YAAY,EAGlB,MAAM,sCAAsC,CAAC;AAC9C,OAAO,KAAK,EACV,YAAY,EACZ,YAAY,EACb,MAAM,gCAAgC,CAAC;AAExC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAIvE,OAAO,EAAyB,KAAK,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAEzE;;;;;;;GAOG;AACH,MAAM,WAAW,aAAa;IAC5B;;;OAGG;IACH,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,eAAe,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACpE,wCAAwC;IACxC,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAC;IAC9B,qFAAqF;IACrF,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,yFAAyF;IACzF,kBAAkB,IAAI,WAAW,GAAG,SAAS,CAAC;CAC/C;AAcD;;;GAGG;AACH,eAAO,MAAM,cAAc,EAAE,aAK5B,CAAC;AAEF;;;;;;;;;GASG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE;IACrC,MAAM,EAAE,OAAO,CAAC,eAAe,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC3D,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,WAAW,CAAC;CAC3B,GAAG,aAAa,CAShB;AAED,wEAAwE;AACxE,wBAAgB,aAAa,CAAC,GAAG,EAAE,aAAa,GAAG,YAAY,CAE9D;AAED,wFAAwF;AACxF,wBAAgB,YAAY,CAAC,GAAG,EAAE,aAAa,GAAG,OAAO,UAAU,CAAC,KAAK,CAGxE;AAED,4FAA4F;AAC5F,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,aAAa,GAAG,kBAAkB,CAEzE;AAED,0FAA0F;AAC1F,wBAAgB,cAAc,CAC5B,GAAG,EAAE,aAAa,EAClB,KAAK,EAAE,SAAS,GAAG,OAAO,GACzB,YAAY,CAEd;AAED,wDAAwD;AACxD,wBAAgB,UAAU,CAAC,GAAG,EAAE,aAAa,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAElE;AAED;;;GAGG;AACH,wBAAgB,WAAW,CACzB,GAAG,EAAE,aAAa,EAClB,MAAM,EAAE,OAAO,CAAC,eAAe,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACzD,IAAI,CAEN"}
1
+ {"version":3,"file":"atomic-context.d.ts","sourceRoot":"","sources":["../../src/client/atomic-context.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,YAAY,EAGlB,MAAM,sCAAsC,CAAC;AAC9C,OAAO,KAAK,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAEjF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAIvE,OAAO,EAAyB,KAAK,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAEzE;;;;;;;GAOG;AACH,MAAM,WAAW,aAAa;IAC5B;;;OAGG;IACH,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,eAAe,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACpE,wCAAwC;IACxC,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAC;IAC9B,qFAAqF;IACrF,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,yFAAyF;IACzF,kBAAkB,IAAI,WAAW,GAAG,SAAS,CAAC;CAC/C;AAcD;;;GAGG;AACH,eAAO,MAAM,cAAc,EAAE,aAK5B,CAAC;AAEF;;;;;;;;;GASG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE;IACrC,MAAM,EAAE,OAAO,CAAC,eAAe,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC3D,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,WAAW,CAAC;CAC3B,GAAG,aAAa,CAShB;AAED,wEAAwE;AACxE,wBAAgB,aAAa,CAAC,GAAG,EAAE,aAAa,GAAG,YAAY,CAE9D;AAED,wFAAwF;AACxF,wBAAgB,YAAY,CAAC,GAAG,EAAE,aAAa,GAAG,OAAO,UAAU,CAAC,KAAK,CAGxE;AAED,4FAA4F;AAC5F,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,aAAa,GAAG,kBAAkB,CAEzE;AAED,0FAA0F;AAC1F,wBAAgB,cAAc,CAAC,GAAG,EAAE,aAAa,EAAE,KAAK,EAAE,SAAS,GAAG,OAAO,GAAG,YAAY,CAE3F;AAED,wDAAwD;AACxD,wBAAgB,UAAU,CAAC,GAAG,EAAE,aAAa,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAElE;AAED;;;GAGG;AACH,wBAAgB,WAAW,CACzB,GAAG,EAAE,aAAa,EAClB,MAAM,EAAE,OAAO,CAAC,eAAe,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACzD,IAAI,CAEN"}