@raisindb/client 0.4.5 → 0.4.6
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.
- package/dist/{conversation-list-store-CfK-DEYd.d.mts → conversation-list-store-D1y3gGqL.d.mts} +22 -0
- package/dist/{conversation-list-store-CfK-DEYd.d.ts → conversation-list-store-D1y3gGqL.d.ts} +22 -0
- package/dist/{index-D2Vw7FpW.d.mts → index-DnGYfAbL.d.mts} +1 -1
- package/dist/{index-BfP-1PoU.d.ts → index-hWuJEcBQ.d.ts} +1 -1
- package/dist/index.d.mts +4 -4
- package/dist/index.d.ts +4 -4
- package/dist/index.js +36 -2
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +36 -2
- package/dist/index.mjs.map +1 -1
- package/dist/react.d.mts +2 -2
- package/dist/react.d.ts +2 -2
- package/dist/{svelte-sql-Cg1Jo0Fs.d.ts → svelte-sql-BEX5lLij.d.ts} +1 -1
- package/dist/{svelte-sql-B_YbYl-Q.d.mts → svelte-sql-FFUsoktQ.d.mts} +1 -1
- package/dist/svelte.d.mts +2 -2
- package/dist/svelte.d.ts +2 -2
- package/dist/vue.d.mts +2 -2
- package/dist/vue.d.ts +2 -2
- package/package.json +1 -1
package/dist/{conversation-list-store-CfK-DEYd.d.mts → conversation-list-store-D1y3gGqL.d.mts}
RENAMED
|
@@ -954,6 +954,28 @@ declare class AuthManager {
|
|
|
954
954
|
* @param response - Authentication response from server
|
|
955
955
|
*/
|
|
956
956
|
setTokens(response: AuthenticateResponse): void;
|
|
957
|
+
/**
|
|
958
|
+
* Learn a bare token's expiry FROM THE TOKEN.
|
|
959
|
+
*
|
|
960
|
+
* `setTokens` is the only other writer of `expiresAt`, and it needs a whole
|
|
961
|
+
* `AuthenticateResponse`. Several paths hold nothing but a JWT string — a
|
|
962
|
+
* session restored from storage, `authenticate({type:'jwt'})`,
|
|
963
|
+
* `setIdentityTokens(token)` — and left `expiresAt` null. `isTokenExpired()`
|
|
964
|
+
* reads null as EXPIRED, so `isAuthenticated()` answered false for the whole
|
|
965
|
+
* life of every restored session, i.e. every page load after the first.
|
|
966
|
+
*
|
|
967
|
+
* It failed silently, and it had already been routed around three times
|
|
968
|
+
* rather than fixed: both HTTP send paths were made to stop consulting
|
|
969
|
+
* `isAuthenticated()` (see `request()` and `mcpStream()` in http-client),
|
|
970
|
+
* and Studio grew its own token parse to tell a 404 apart from a logged-out
|
|
971
|
+
* read. This is the missing writer those workarounds existed for.
|
|
972
|
+
*
|
|
973
|
+
* Same 60s safety margin as `setTokens`, so both writers agree on when a
|
|
974
|
+
* token stops counting as good.
|
|
975
|
+
*
|
|
976
|
+
* @param token - A JWT held in storage or handed to us
|
|
977
|
+
*/
|
|
978
|
+
adoptToken(token: string): void;
|
|
957
979
|
/**
|
|
958
980
|
* Get current access token
|
|
959
981
|
*/
|
package/dist/{conversation-list-store-CfK-DEYd.d.ts → conversation-list-store-D1y3gGqL.d.ts}
RENAMED
|
@@ -954,6 +954,28 @@ declare class AuthManager {
|
|
|
954
954
|
* @param response - Authentication response from server
|
|
955
955
|
*/
|
|
956
956
|
setTokens(response: AuthenticateResponse): void;
|
|
957
|
+
/**
|
|
958
|
+
* Learn a bare token's expiry FROM THE TOKEN.
|
|
959
|
+
*
|
|
960
|
+
* `setTokens` is the only other writer of `expiresAt`, and it needs a whole
|
|
961
|
+
* `AuthenticateResponse`. Several paths hold nothing but a JWT string — a
|
|
962
|
+
* session restored from storage, `authenticate({type:'jwt'})`,
|
|
963
|
+
* `setIdentityTokens(token)` — and left `expiresAt` null. `isTokenExpired()`
|
|
964
|
+
* reads null as EXPIRED, so `isAuthenticated()` answered false for the whole
|
|
965
|
+
* life of every restored session, i.e. every page load after the first.
|
|
966
|
+
*
|
|
967
|
+
* It failed silently, and it had already been routed around three times
|
|
968
|
+
* rather than fixed: both HTTP send paths were made to stop consulting
|
|
969
|
+
* `isAuthenticated()` (see `request()` and `mcpStream()` in http-client),
|
|
970
|
+
* and Studio grew its own token parse to tell a 404 apart from a logged-out
|
|
971
|
+
* read. This is the missing writer those workarounds existed for.
|
|
972
|
+
*
|
|
973
|
+
* Same 60s safety margin as `setTokens`, so both writers agree on when a
|
|
974
|
+
* token stops counting as good.
|
|
975
|
+
*
|
|
976
|
+
* @param token - A JWT held in storage or handed to us
|
|
977
|
+
*/
|
|
978
|
+
adoptToken(token: string): void;
|
|
957
979
|
/**
|
|
958
980
|
* Get current access token
|
|
959
981
|
*/
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { f as ConversationStoreOptions, a as ConversationStoreSnapshot, b as ChatMessage, g as ConversationListStoreOptions, h as ConversationListSnapshot, d as ConversationListItem, R as RaisinClient, I as IdentityUser, C as ConnectionState, S as SubscriptionFilters, D as Database, A as AuthManager, F as FlowClientOptions, i as FlowsApi, j as FlowExecutionEvent, E as EventMessage } from './conversation-list-store-
|
|
1
|
+
import { f as ConversationStoreOptions, a as ConversationStoreSnapshot, b as ChatMessage, g as ConversationListStoreOptions, h as ConversationListSnapshot, d as ConversationListItem, R as RaisinClient, I as IdentityUser, C as ConnectionState, S as SubscriptionFilters, D as Database, A as AuthManager, F as FlowClientOptions, i as FlowsApi, j as FlowExecutionEvent, E as EventMessage } from './conversation-list-store-D1y3gGqL.mjs';
|
|
2
2
|
|
|
3
3
|
/**
|
|
4
4
|
* React adapters for the RaisinDB conversation stores.
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { f as ConversationStoreOptions, a as ConversationStoreSnapshot, b as ChatMessage, g as ConversationListStoreOptions, h as ConversationListSnapshot, d as ConversationListItem, R as RaisinClient, I as IdentityUser, C as ConnectionState, S as SubscriptionFilters, D as Database, A as AuthManager, F as FlowClientOptions, i as FlowsApi, j as FlowExecutionEvent, E as EventMessage } from './conversation-list-store-
|
|
1
|
+
import { f as ConversationStoreOptions, a as ConversationStoreSnapshot, b as ChatMessage, g as ConversationListStoreOptions, h as ConversationListSnapshot, d as ConversationListItem, R as RaisinClient, I as IdentityUser, C as ConnectionState, S as SubscriptionFilters, D as Database, A as AuthManager, F as FlowClientOptions, i as FlowsApi, j as FlowExecutionEvent, E as EventMessage } from './conversation-list-store-D1y3gGqL.js';
|
|
2
2
|
|
|
3
3
|
/**
|
|
4
4
|
* React adapters for the RaisinDB conversation stores.
|
package/dist/index.d.mts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { l as PropertyValue, m as RelationRef, N as Node, H as HttpClientOptions, n as ClientOptions, o as Credentials, p as RaisinHttpClient, R as RaisinClient, q as RetryOptions, U as UploadErrorCode, B as BatchUpload, r as UploaderConfig, s as FileSource, t as BatchUploadOptions, u as BatchUploadResult, v as BatchProgress, w as ReconnectOptions } from './conversation-list-store-
|
|
2
|
-
export { cW as AiContainerConfig, cV as AiErrorBehavior, cU as AiToolMode, aa as Archetypes, aW as AuditLogEntry, aV as AuditQueryPayload, G as AuthEvent, A as AuthManager, c8 as AuthProviders, J as AuthStateChange, K as AuthStateChangeCallback, b9 as AuthenticatePayload, ba as AuthenticateResponse, bG as BatchFileProgress, ad as BranchDiff, ae as BranchDivergence, ac as Branches, bP as BrowserFileSource, cO as CanonicalTaskType, dn as ChatAssistantMessageEvent, dq as ChatCompletedEvent, dz as ChatConversationCreatedEvent, ds as ChatDoneEvent, dh as ChatEvent, dr as ChatFailedEvent, dC as ChatLogEvent, b as ChatMessage, dB as ChatMessageDeliveredEvent, dA as ChatMessageSavedEvent, cT as ChatStepConfig, cS as ChatTerminationConfig, cR as ChatTerminationMode, dm as ChatTextChunkEvent, dv as ChatThoughtChunkEvent, du as ChatToolCallCompletedEvent, dt as ChatToolCallStartedEvent, dp as ChatWaitingEvent, bC as ChunkUploadResponse, x as ClientMode, bE as CompleteUploadRequest, bF as CompleteUploadResponse, az as Connection, aA as ConnectionOptions, C as ConnectionState, c_ as ContainerRule, cI as ContainerType, di as Conversation, cD as ConversationCreatedEvent, d as ConversationListItem, h as ConversationListSnapshot, e as ConversationListStore, g as ConversationListStoreOptions, dD as ConversationManager, dL as ConversationManagerOptions, dk as ConversationStatus, c as ConversationStore, f as ConversationStoreOptions, a as ConversationStoreSnapshot, dI as ConversationSubscription, dj as ConversationType, dG as CreateConvoOptions, bA as CreateUploadRequest, bB as CreateUploadResponse, af as CrossBranchCopySummary, ag as CrossBranchNodeChange, y as CurrentUser, bO as DEFAULT_BATCH_CONCURRENCY, bN as DEFAULT_BRANCH, bI as DEFAULT_CHUNK_SIZE, bJ as DEFAULT_MAX_RETRIES, bM as DEFAULT_NODE_TYPE, bK as DEFAULT_RETRY_BASE_DELAY, bL as DEFAULT_RETRY_MAX_DELAY, dE as DEFAULT_SEND_MESSAGE_INACTIVITY_TIMEOUT_MS, D as Database, Z as DatabaseHttpOptions, ab as ElementTypes, aK as ErrorInfo, ax as EventCallback, av as EventHandler, E as EventMessage, aw as EventSubscriptions, c$ as FanOutConfig, bX as FlowClient, F as FlowClientOptions, bZ as FlowCollectResult, cx as FlowCompletedEvent, d4 as FlowDefinition, d1 as FlowDefinitionContainer, d3 as FlowDefinitionNode, cX as FlowDefinitionNodeBase, cZ as FlowDefinitionStep, cK as FlowErrorStrategy, j as FlowExecutionEvent, cy as FlowFailedEvent, co as FlowInstanceStatus, cp as FlowInstanceStatusResponse, cq as FlowMetrics, cw as FlowResumedEvent, cn as FlowRunResponse, bY as FlowRunResult, cY as FlowStepProperties, cv as FlowWaitingEvent, i as FlowsApi, c9 as FunctionInvokeOptions, ca as FunctionInvokeResponse, cb as FunctionInvokeSyncResponse, b_ as FunctionsApi, cQ as HandoffTarget, aq as HttpArchetypes, V as HttpCurrentUser, O as HttpDatabase, ar as HttpElementTypes, b$ as HttpFunctionsApi, ap as HttpNodeTypes, W as HttpUserNode, Q as HttpWorkspaceClient, cN as HumanTaskType, c0 as IdentityAuthApi, aF as IdentityAuthError, aE as IdentityAuthResponse, c2 as IdentityAuthResult, c3 as IdentityAuthTransport, c4 as IdentityInfo, c5 as IdentityMe, I as IdentityUser, dd as InboxApi, de as InboxApiOptions, d5 as InboxTask, d6 as InboxTaskStatus, aM as IncomingRelation, dF as ListConversationsOptions, ak as ListInvocationsFilter, df as ListTasksOptions, dg as ListTasksResponse, aC as LocalStorageTokenStorage, cF as LogEvent, bo as LogLevel, bu as LoggerConfig, d2 as LoopConfig, c7 as MagicLinkOptions, c6 as MagicLinkSent, ci as McpCallToolResult, cc as McpClient, ch as McpContentBlock, ce as McpFrameStream, cf as McpJsonRpcFrame, ck as McpReadResourceResult, cj as McpResourceContents, cm as McpResourceSubscription, cl as McpResourceUpdate, cg as McpToolDescriptor, cd as McpTransport, aB as MemoryTokenStorage, d0 as MergeStrategy, dl as MessageBody, dx as MessageChild, cE as MessageSavedEvent, a4 as NodeCreateDeepOptions, aP as NodeCreateDeepPayload, a3 as NodeCreateOptions, aO as NodeCreatePayload, aR as NodeDeletePayload, ah as NodeDiffInfo, aI as NodeEventPayload, bQ as NodeFileSource, aS as NodeGetPayload, aT as NodeHistoryPayload, a2 as NodeOperations, a6 as NodeQueryOptions, aX as NodeQueryPayload, aN as NodeRelationships, a9 as NodeTypes, a5 as NodeUpdateOptions, aQ as NodeUpdatePayload, dK as PlanActionOptions, dJ as PlanActionReceipt, P as PlanProjection, k as PlanProjectionTask, dy as PlanTask, d8 as RETRY_STRATEGIES, cH as RaisinReference, bn as ReconnectManager, bb as RefreshTokenPayload, aY as RelationAddPayload, aZ as RelationRemovePayload, a_ as RelationsGetPayload, aJ as RequestContext, aG as RequestEnvelope, bh as RequestType, aH as ResponseEnvelope, aL as ResponseMetadata, bi as ResponseStatus, cL as RetryConfig, cM as RetryStrategy, aU as RevisionEntry, al as ScheduleInvocationOptions, am as ScheduledInvocation, an as ScheduledInvocationRef, ao as ScheduledInvocationTargetKind, aj as SchedulerApi, as as SchemaCommit, dH as SendMessageOptions, X as SignAssetOptions, Y as SignedAssetUrl, at as SqlQuery, a$ as SqlQueryPayload, b0 as SqlResult, cs as StepCompletedEvent, cJ as StepErrorBehavior, cu as StepFailedEvent, cr as StepStartedEvent, ct as StepUsage, b6 as SubscribePayload, ay as Subscription, S as SubscriptionFilters, b8 as SubscriptionResponse, ai as Tags, d7 as TaskCompletionResult, cP as TaskOption, cz as TextChunkEvent, cC as ThoughtChunkEvent, aD as TokenStorage, cB as ToolCallCompletedEvent, T as ToolCallInfo, dw as ToolCallRecord, cA as ToolCallStartedEvent, a7 as Transaction, bc as TransactionBeginPayload, bd as TransactionBeginResponse, be as TransactionCommitPayload, bf as TransactionCommitResponse, a8 as TransactionOptions, bg as TransactionRollbackPayload, b7 as UnsubscribePayload, bz as Upload, bH as UploadError, bW as UploadManager, bw as UploadOptions, bx as UploadProgress, by as UploadResult, bv as UploadStatus, bD as UploadStatusResponse, bV as Uploader, M as UserChangeCallback, L as UserChangeEvent, z as UserNode, b1 as Workspace, _ as WorkspaceClient, a0 as WorkspaceCreateOptions, b2 as WorkspaceCreatePayload, b4 as WorkspaceDeletePayload, b3 as WorkspaceGetPayload, $ as WorkspaceManager, a1 as WorkspaceUpdateOptions, b5 as WorkspaceUpdatePayload, bT as calculateChunkCount, bq as configureLogger, bR as createFileSource, au as createSqlHandler, bk as decodeMessage, bj as encodeMessage, bU as getChunkRange, bS as getContentType, bs as getLogLevel, bt as getLoggerConfig, d9 as getRefDisplayName, da as getRefPath, bl as isEventMessage, dc as isFlowDefinitionContainer, db as isFlowDefinitionStep, bm as isResponseEnvelope, cG as isTerminalEvent, bp as logger, dM as projectPlansFromMessages, c1 as readTokensFromFragment, br as setLogLevel } from './conversation-list-store-
|
|
3
|
-
export { F as FlowStatus, j as RaisinContextValue, i as RaisinProviderProps, g as RaisinReact, R as ReactLike, h as ReactLikeWithContext, k as UseAuthReturn, l as UseConnectionReturn, b as UseConversationListReturn, U as UseConversationReturn, d as UseFlowOptions, e as UseFlowReturn, m as UseSqlOptions, n as UseSqlReturn, o as UseSubscriptionOptions, f as createRaisinReact, u as useConversation, a as useConversationList, c as useFlow } from './index-
|
|
1
|
+
import { l as PropertyValue, m as RelationRef, N as Node, H as HttpClientOptions, n as ClientOptions, o as Credentials, p as RaisinHttpClient, R as RaisinClient, q as RetryOptions, U as UploadErrorCode, B as BatchUpload, r as UploaderConfig, s as FileSource, t as BatchUploadOptions, u as BatchUploadResult, v as BatchProgress, w as ReconnectOptions } from './conversation-list-store-D1y3gGqL.mjs';
|
|
2
|
+
export { cW as AiContainerConfig, cV as AiErrorBehavior, cU as AiToolMode, aa as Archetypes, aW as AuditLogEntry, aV as AuditQueryPayload, G as AuthEvent, A as AuthManager, c8 as AuthProviders, J as AuthStateChange, K as AuthStateChangeCallback, b9 as AuthenticatePayload, ba as AuthenticateResponse, bG as BatchFileProgress, ad as BranchDiff, ae as BranchDivergence, ac as Branches, bP as BrowserFileSource, cO as CanonicalTaskType, dn as ChatAssistantMessageEvent, dq as ChatCompletedEvent, dz as ChatConversationCreatedEvent, ds as ChatDoneEvent, dh as ChatEvent, dr as ChatFailedEvent, dC as ChatLogEvent, b as ChatMessage, dB as ChatMessageDeliveredEvent, dA as ChatMessageSavedEvent, cT as ChatStepConfig, cS as ChatTerminationConfig, cR as ChatTerminationMode, dm as ChatTextChunkEvent, dv as ChatThoughtChunkEvent, du as ChatToolCallCompletedEvent, dt as ChatToolCallStartedEvent, dp as ChatWaitingEvent, bC as ChunkUploadResponse, x as ClientMode, bE as CompleteUploadRequest, bF as CompleteUploadResponse, az as Connection, aA as ConnectionOptions, C as ConnectionState, c_ as ContainerRule, cI as ContainerType, di as Conversation, cD as ConversationCreatedEvent, d as ConversationListItem, h as ConversationListSnapshot, e as ConversationListStore, g as ConversationListStoreOptions, dD as ConversationManager, dL as ConversationManagerOptions, dk as ConversationStatus, c as ConversationStore, f as ConversationStoreOptions, a as ConversationStoreSnapshot, dI as ConversationSubscription, dj as ConversationType, dG as CreateConvoOptions, bA as CreateUploadRequest, bB as CreateUploadResponse, af as CrossBranchCopySummary, ag as CrossBranchNodeChange, y as CurrentUser, bO as DEFAULT_BATCH_CONCURRENCY, bN as DEFAULT_BRANCH, bI as DEFAULT_CHUNK_SIZE, bJ as DEFAULT_MAX_RETRIES, bM as DEFAULT_NODE_TYPE, bK as DEFAULT_RETRY_BASE_DELAY, bL as DEFAULT_RETRY_MAX_DELAY, dE as DEFAULT_SEND_MESSAGE_INACTIVITY_TIMEOUT_MS, D as Database, Z as DatabaseHttpOptions, ab as ElementTypes, aK as ErrorInfo, ax as EventCallback, av as EventHandler, E as EventMessage, aw as EventSubscriptions, c$ as FanOutConfig, bX as FlowClient, F as FlowClientOptions, bZ as FlowCollectResult, cx as FlowCompletedEvent, d4 as FlowDefinition, d1 as FlowDefinitionContainer, d3 as FlowDefinitionNode, cX as FlowDefinitionNodeBase, cZ as FlowDefinitionStep, cK as FlowErrorStrategy, j as FlowExecutionEvent, cy as FlowFailedEvent, co as FlowInstanceStatus, cp as FlowInstanceStatusResponse, cq as FlowMetrics, cw as FlowResumedEvent, cn as FlowRunResponse, bY as FlowRunResult, cY as FlowStepProperties, cv as FlowWaitingEvent, i as FlowsApi, c9 as FunctionInvokeOptions, ca as FunctionInvokeResponse, cb as FunctionInvokeSyncResponse, b_ as FunctionsApi, cQ as HandoffTarget, aq as HttpArchetypes, V as HttpCurrentUser, O as HttpDatabase, ar as HttpElementTypes, b$ as HttpFunctionsApi, ap as HttpNodeTypes, W as HttpUserNode, Q as HttpWorkspaceClient, cN as HumanTaskType, c0 as IdentityAuthApi, aF as IdentityAuthError, aE as IdentityAuthResponse, c2 as IdentityAuthResult, c3 as IdentityAuthTransport, c4 as IdentityInfo, c5 as IdentityMe, I as IdentityUser, dd as InboxApi, de as InboxApiOptions, d5 as InboxTask, d6 as InboxTaskStatus, aM as IncomingRelation, dF as ListConversationsOptions, ak as ListInvocationsFilter, df as ListTasksOptions, dg as ListTasksResponse, aC as LocalStorageTokenStorage, cF as LogEvent, bo as LogLevel, bu as LoggerConfig, d2 as LoopConfig, c7 as MagicLinkOptions, c6 as MagicLinkSent, ci as McpCallToolResult, cc as McpClient, ch as McpContentBlock, ce as McpFrameStream, cf as McpJsonRpcFrame, ck as McpReadResourceResult, cj as McpResourceContents, cm as McpResourceSubscription, cl as McpResourceUpdate, cg as McpToolDescriptor, cd as McpTransport, aB as MemoryTokenStorage, d0 as MergeStrategy, dl as MessageBody, dx as MessageChild, cE as MessageSavedEvent, a4 as NodeCreateDeepOptions, aP as NodeCreateDeepPayload, a3 as NodeCreateOptions, aO as NodeCreatePayload, aR as NodeDeletePayload, ah as NodeDiffInfo, aI as NodeEventPayload, bQ as NodeFileSource, aS as NodeGetPayload, aT as NodeHistoryPayload, a2 as NodeOperations, a6 as NodeQueryOptions, aX as NodeQueryPayload, aN as NodeRelationships, a9 as NodeTypes, a5 as NodeUpdateOptions, aQ as NodeUpdatePayload, dK as PlanActionOptions, dJ as PlanActionReceipt, P as PlanProjection, k as PlanProjectionTask, dy as PlanTask, d8 as RETRY_STRATEGIES, cH as RaisinReference, bn as ReconnectManager, bb as RefreshTokenPayload, aY as RelationAddPayload, aZ as RelationRemovePayload, a_ as RelationsGetPayload, aJ as RequestContext, aG as RequestEnvelope, bh as RequestType, aH as ResponseEnvelope, aL as ResponseMetadata, bi as ResponseStatus, cL as RetryConfig, cM as RetryStrategy, aU as RevisionEntry, al as ScheduleInvocationOptions, am as ScheduledInvocation, an as ScheduledInvocationRef, ao as ScheduledInvocationTargetKind, aj as SchedulerApi, as as SchemaCommit, dH as SendMessageOptions, X as SignAssetOptions, Y as SignedAssetUrl, at as SqlQuery, a$ as SqlQueryPayload, b0 as SqlResult, cs as StepCompletedEvent, cJ as StepErrorBehavior, cu as StepFailedEvent, cr as StepStartedEvent, ct as StepUsage, b6 as SubscribePayload, ay as Subscription, S as SubscriptionFilters, b8 as SubscriptionResponse, ai as Tags, d7 as TaskCompletionResult, cP as TaskOption, cz as TextChunkEvent, cC as ThoughtChunkEvent, aD as TokenStorage, cB as ToolCallCompletedEvent, T as ToolCallInfo, dw as ToolCallRecord, cA as ToolCallStartedEvent, a7 as Transaction, bc as TransactionBeginPayload, bd as TransactionBeginResponse, be as TransactionCommitPayload, bf as TransactionCommitResponse, a8 as TransactionOptions, bg as TransactionRollbackPayload, b7 as UnsubscribePayload, bz as Upload, bH as UploadError, bW as UploadManager, bw as UploadOptions, bx as UploadProgress, by as UploadResult, bv as UploadStatus, bD as UploadStatusResponse, bV as Uploader, M as UserChangeCallback, L as UserChangeEvent, z as UserNode, b1 as Workspace, _ as WorkspaceClient, a0 as WorkspaceCreateOptions, b2 as WorkspaceCreatePayload, b4 as WorkspaceDeletePayload, b3 as WorkspaceGetPayload, $ as WorkspaceManager, a1 as WorkspaceUpdateOptions, b5 as WorkspaceUpdatePayload, bT as calculateChunkCount, bq as configureLogger, bR as createFileSource, au as createSqlHandler, bk as decodeMessage, bj as encodeMessage, bU as getChunkRange, bS as getContentType, bs as getLogLevel, bt as getLoggerConfig, d9 as getRefDisplayName, da as getRefPath, bl as isEventMessage, dc as isFlowDefinitionContainer, db as isFlowDefinitionStep, bm as isResponseEnvelope, cG as isTerminalEvent, bp as logger, dM as projectPlansFromMessages, c1 as readTokensFromFragment, br as setLogLevel } from './conversation-list-store-D1y3gGqL.mjs';
|
|
3
|
+
export { F as FlowStatus, j as RaisinContextValue, i as RaisinProviderProps, g as RaisinReact, R as ReactLike, h as ReactLikeWithContext, k as UseAuthReturn, l as UseConnectionReturn, b as UseConversationListReturn, U as UseConversationReturn, d as UseFlowOptions, e as UseFlowReturn, m as UseSqlOptions, n as UseSqlReturn, o as UseSubscriptionOptions, f as createRaisinReact, u as useConversation, a as useConversationList, c as useFlow } from './index-DnGYfAbL.mjs';
|
|
4
4
|
export { AuthAdapter, AuthSnapshot, ConnectionAdapter, ConnectionSnapshot, FlowAdapter, FlowAdapterOptions, FlowSnapshot, RAISIN_CONTEXT_KEY, RaisinContext, SubscriptionAdapter, FlowStatus as SvelteFlowStatus, createAuthAdapter, createConnectionAdapter, createConversationAdapter, createConversationListAdapter, createFlowAdapter, createSubscriptionAdapter } from './svelte.mjs';
|
|
5
|
-
export { b as SqlAdapter, S as SqlAdapterOptions, a as SqlSnapshot, c as createSqlAdapter } from './svelte-sql-
|
|
5
|
+
export { b as SqlAdapter, S as SqlAdapterOptions, a as SqlSnapshot, c as createSqlAdapter } from './svelte-sql-FFUsoktQ.mjs';
|
|
6
6
|
export { RaisinVue, VueComputedRef, VueLike, VueRef, createRaisinVue } from './vue.mjs';
|
|
7
7
|
import 'events';
|
|
8
8
|
import 'fs/promises';
|
package/dist/index.d.ts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { l as PropertyValue, m as RelationRef, N as Node, H as HttpClientOptions, n as ClientOptions, o as Credentials, p as RaisinHttpClient, R as RaisinClient, q as RetryOptions, U as UploadErrorCode, B as BatchUpload, r as UploaderConfig, s as FileSource, t as BatchUploadOptions, u as BatchUploadResult, v as BatchProgress, w as ReconnectOptions } from './conversation-list-store-
|
|
2
|
-
export { cW as AiContainerConfig, cV as AiErrorBehavior, cU as AiToolMode, aa as Archetypes, aW as AuditLogEntry, aV as AuditQueryPayload, G as AuthEvent, A as AuthManager, c8 as AuthProviders, J as AuthStateChange, K as AuthStateChangeCallback, b9 as AuthenticatePayload, ba as AuthenticateResponse, bG as BatchFileProgress, ad as BranchDiff, ae as BranchDivergence, ac as Branches, bP as BrowserFileSource, cO as CanonicalTaskType, dn as ChatAssistantMessageEvent, dq as ChatCompletedEvent, dz as ChatConversationCreatedEvent, ds as ChatDoneEvent, dh as ChatEvent, dr as ChatFailedEvent, dC as ChatLogEvent, b as ChatMessage, dB as ChatMessageDeliveredEvent, dA as ChatMessageSavedEvent, cT as ChatStepConfig, cS as ChatTerminationConfig, cR as ChatTerminationMode, dm as ChatTextChunkEvent, dv as ChatThoughtChunkEvent, du as ChatToolCallCompletedEvent, dt as ChatToolCallStartedEvent, dp as ChatWaitingEvent, bC as ChunkUploadResponse, x as ClientMode, bE as CompleteUploadRequest, bF as CompleteUploadResponse, az as Connection, aA as ConnectionOptions, C as ConnectionState, c_ as ContainerRule, cI as ContainerType, di as Conversation, cD as ConversationCreatedEvent, d as ConversationListItem, h as ConversationListSnapshot, e as ConversationListStore, g as ConversationListStoreOptions, dD as ConversationManager, dL as ConversationManagerOptions, dk as ConversationStatus, c as ConversationStore, f as ConversationStoreOptions, a as ConversationStoreSnapshot, dI as ConversationSubscription, dj as ConversationType, dG as CreateConvoOptions, bA as CreateUploadRequest, bB as CreateUploadResponse, af as CrossBranchCopySummary, ag as CrossBranchNodeChange, y as CurrentUser, bO as DEFAULT_BATCH_CONCURRENCY, bN as DEFAULT_BRANCH, bI as DEFAULT_CHUNK_SIZE, bJ as DEFAULT_MAX_RETRIES, bM as DEFAULT_NODE_TYPE, bK as DEFAULT_RETRY_BASE_DELAY, bL as DEFAULT_RETRY_MAX_DELAY, dE as DEFAULT_SEND_MESSAGE_INACTIVITY_TIMEOUT_MS, D as Database, Z as DatabaseHttpOptions, ab as ElementTypes, aK as ErrorInfo, ax as EventCallback, av as EventHandler, E as EventMessage, aw as EventSubscriptions, c$ as FanOutConfig, bX as FlowClient, F as FlowClientOptions, bZ as FlowCollectResult, cx as FlowCompletedEvent, d4 as FlowDefinition, d1 as FlowDefinitionContainer, d3 as FlowDefinitionNode, cX as FlowDefinitionNodeBase, cZ as FlowDefinitionStep, cK as FlowErrorStrategy, j as FlowExecutionEvent, cy as FlowFailedEvent, co as FlowInstanceStatus, cp as FlowInstanceStatusResponse, cq as FlowMetrics, cw as FlowResumedEvent, cn as FlowRunResponse, bY as FlowRunResult, cY as FlowStepProperties, cv as FlowWaitingEvent, i as FlowsApi, c9 as FunctionInvokeOptions, ca as FunctionInvokeResponse, cb as FunctionInvokeSyncResponse, b_ as FunctionsApi, cQ as HandoffTarget, aq as HttpArchetypes, V as HttpCurrentUser, O as HttpDatabase, ar as HttpElementTypes, b$ as HttpFunctionsApi, ap as HttpNodeTypes, W as HttpUserNode, Q as HttpWorkspaceClient, cN as HumanTaskType, c0 as IdentityAuthApi, aF as IdentityAuthError, aE as IdentityAuthResponse, c2 as IdentityAuthResult, c3 as IdentityAuthTransport, c4 as IdentityInfo, c5 as IdentityMe, I as IdentityUser, dd as InboxApi, de as InboxApiOptions, d5 as InboxTask, d6 as InboxTaskStatus, aM as IncomingRelation, dF as ListConversationsOptions, ak as ListInvocationsFilter, df as ListTasksOptions, dg as ListTasksResponse, aC as LocalStorageTokenStorage, cF as LogEvent, bo as LogLevel, bu as LoggerConfig, d2 as LoopConfig, c7 as MagicLinkOptions, c6 as MagicLinkSent, ci as McpCallToolResult, cc as McpClient, ch as McpContentBlock, ce as McpFrameStream, cf as McpJsonRpcFrame, ck as McpReadResourceResult, cj as McpResourceContents, cm as McpResourceSubscription, cl as McpResourceUpdate, cg as McpToolDescriptor, cd as McpTransport, aB as MemoryTokenStorage, d0 as MergeStrategy, dl as MessageBody, dx as MessageChild, cE as MessageSavedEvent, a4 as NodeCreateDeepOptions, aP as NodeCreateDeepPayload, a3 as NodeCreateOptions, aO as NodeCreatePayload, aR as NodeDeletePayload, ah as NodeDiffInfo, aI as NodeEventPayload, bQ as NodeFileSource, aS as NodeGetPayload, aT as NodeHistoryPayload, a2 as NodeOperations, a6 as NodeQueryOptions, aX as NodeQueryPayload, aN as NodeRelationships, a9 as NodeTypes, a5 as NodeUpdateOptions, aQ as NodeUpdatePayload, dK as PlanActionOptions, dJ as PlanActionReceipt, P as PlanProjection, k as PlanProjectionTask, dy as PlanTask, d8 as RETRY_STRATEGIES, cH as RaisinReference, bn as ReconnectManager, bb as RefreshTokenPayload, aY as RelationAddPayload, aZ as RelationRemovePayload, a_ as RelationsGetPayload, aJ as RequestContext, aG as RequestEnvelope, bh as RequestType, aH as ResponseEnvelope, aL as ResponseMetadata, bi as ResponseStatus, cL as RetryConfig, cM as RetryStrategy, aU as RevisionEntry, al as ScheduleInvocationOptions, am as ScheduledInvocation, an as ScheduledInvocationRef, ao as ScheduledInvocationTargetKind, aj as SchedulerApi, as as SchemaCommit, dH as SendMessageOptions, X as SignAssetOptions, Y as SignedAssetUrl, at as SqlQuery, a$ as SqlQueryPayload, b0 as SqlResult, cs as StepCompletedEvent, cJ as StepErrorBehavior, cu as StepFailedEvent, cr as StepStartedEvent, ct as StepUsage, b6 as SubscribePayload, ay as Subscription, S as SubscriptionFilters, b8 as SubscriptionResponse, ai as Tags, d7 as TaskCompletionResult, cP as TaskOption, cz as TextChunkEvent, cC as ThoughtChunkEvent, aD as TokenStorage, cB as ToolCallCompletedEvent, T as ToolCallInfo, dw as ToolCallRecord, cA as ToolCallStartedEvent, a7 as Transaction, bc as TransactionBeginPayload, bd as TransactionBeginResponse, be as TransactionCommitPayload, bf as TransactionCommitResponse, a8 as TransactionOptions, bg as TransactionRollbackPayload, b7 as UnsubscribePayload, bz as Upload, bH as UploadError, bW as UploadManager, bw as UploadOptions, bx as UploadProgress, by as UploadResult, bv as UploadStatus, bD as UploadStatusResponse, bV as Uploader, M as UserChangeCallback, L as UserChangeEvent, z as UserNode, b1 as Workspace, _ as WorkspaceClient, a0 as WorkspaceCreateOptions, b2 as WorkspaceCreatePayload, b4 as WorkspaceDeletePayload, b3 as WorkspaceGetPayload, $ as WorkspaceManager, a1 as WorkspaceUpdateOptions, b5 as WorkspaceUpdatePayload, bT as calculateChunkCount, bq as configureLogger, bR as createFileSource, au as createSqlHandler, bk as decodeMessage, bj as encodeMessage, bU as getChunkRange, bS as getContentType, bs as getLogLevel, bt as getLoggerConfig, d9 as getRefDisplayName, da as getRefPath, bl as isEventMessage, dc as isFlowDefinitionContainer, db as isFlowDefinitionStep, bm as isResponseEnvelope, cG as isTerminalEvent, bp as logger, dM as projectPlansFromMessages, c1 as readTokensFromFragment, br as setLogLevel } from './conversation-list-store-
|
|
3
|
-
export { F as FlowStatus, j as RaisinContextValue, i as RaisinProviderProps, g as RaisinReact, R as ReactLike, h as ReactLikeWithContext, k as UseAuthReturn, l as UseConnectionReturn, b as UseConversationListReturn, U as UseConversationReturn, d as UseFlowOptions, e as UseFlowReturn, m as UseSqlOptions, n as UseSqlReturn, o as UseSubscriptionOptions, f as createRaisinReact, u as useConversation, a as useConversationList, c as useFlow } from './index-
|
|
1
|
+
import { l as PropertyValue, m as RelationRef, N as Node, H as HttpClientOptions, n as ClientOptions, o as Credentials, p as RaisinHttpClient, R as RaisinClient, q as RetryOptions, U as UploadErrorCode, B as BatchUpload, r as UploaderConfig, s as FileSource, t as BatchUploadOptions, u as BatchUploadResult, v as BatchProgress, w as ReconnectOptions } from './conversation-list-store-D1y3gGqL.js';
|
|
2
|
+
export { cW as AiContainerConfig, cV as AiErrorBehavior, cU as AiToolMode, aa as Archetypes, aW as AuditLogEntry, aV as AuditQueryPayload, G as AuthEvent, A as AuthManager, c8 as AuthProviders, J as AuthStateChange, K as AuthStateChangeCallback, b9 as AuthenticatePayload, ba as AuthenticateResponse, bG as BatchFileProgress, ad as BranchDiff, ae as BranchDivergence, ac as Branches, bP as BrowserFileSource, cO as CanonicalTaskType, dn as ChatAssistantMessageEvent, dq as ChatCompletedEvent, dz as ChatConversationCreatedEvent, ds as ChatDoneEvent, dh as ChatEvent, dr as ChatFailedEvent, dC as ChatLogEvent, b as ChatMessage, dB as ChatMessageDeliveredEvent, dA as ChatMessageSavedEvent, cT as ChatStepConfig, cS as ChatTerminationConfig, cR as ChatTerminationMode, dm as ChatTextChunkEvent, dv as ChatThoughtChunkEvent, du as ChatToolCallCompletedEvent, dt as ChatToolCallStartedEvent, dp as ChatWaitingEvent, bC as ChunkUploadResponse, x as ClientMode, bE as CompleteUploadRequest, bF as CompleteUploadResponse, az as Connection, aA as ConnectionOptions, C as ConnectionState, c_ as ContainerRule, cI as ContainerType, di as Conversation, cD as ConversationCreatedEvent, d as ConversationListItem, h as ConversationListSnapshot, e as ConversationListStore, g as ConversationListStoreOptions, dD as ConversationManager, dL as ConversationManagerOptions, dk as ConversationStatus, c as ConversationStore, f as ConversationStoreOptions, a as ConversationStoreSnapshot, dI as ConversationSubscription, dj as ConversationType, dG as CreateConvoOptions, bA as CreateUploadRequest, bB as CreateUploadResponse, af as CrossBranchCopySummary, ag as CrossBranchNodeChange, y as CurrentUser, bO as DEFAULT_BATCH_CONCURRENCY, bN as DEFAULT_BRANCH, bI as DEFAULT_CHUNK_SIZE, bJ as DEFAULT_MAX_RETRIES, bM as DEFAULT_NODE_TYPE, bK as DEFAULT_RETRY_BASE_DELAY, bL as DEFAULT_RETRY_MAX_DELAY, dE as DEFAULT_SEND_MESSAGE_INACTIVITY_TIMEOUT_MS, D as Database, Z as DatabaseHttpOptions, ab as ElementTypes, aK as ErrorInfo, ax as EventCallback, av as EventHandler, E as EventMessage, aw as EventSubscriptions, c$ as FanOutConfig, bX as FlowClient, F as FlowClientOptions, bZ as FlowCollectResult, cx as FlowCompletedEvent, d4 as FlowDefinition, d1 as FlowDefinitionContainer, d3 as FlowDefinitionNode, cX as FlowDefinitionNodeBase, cZ as FlowDefinitionStep, cK as FlowErrorStrategy, j as FlowExecutionEvent, cy as FlowFailedEvent, co as FlowInstanceStatus, cp as FlowInstanceStatusResponse, cq as FlowMetrics, cw as FlowResumedEvent, cn as FlowRunResponse, bY as FlowRunResult, cY as FlowStepProperties, cv as FlowWaitingEvent, i as FlowsApi, c9 as FunctionInvokeOptions, ca as FunctionInvokeResponse, cb as FunctionInvokeSyncResponse, b_ as FunctionsApi, cQ as HandoffTarget, aq as HttpArchetypes, V as HttpCurrentUser, O as HttpDatabase, ar as HttpElementTypes, b$ as HttpFunctionsApi, ap as HttpNodeTypes, W as HttpUserNode, Q as HttpWorkspaceClient, cN as HumanTaskType, c0 as IdentityAuthApi, aF as IdentityAuthError, aE as IdentityAuthResponse, c2 as IdentityAuthResult, c3 as IdentityAuthTransport, c4 as IdentityInfo, c5 as IdentityMe, I as IdentityUser, dd as InboxApi, de as InboxApiOptions, d5 as InboxTask, d6 as InboxTaskStatus, aM as IncomingRelation, dF as ListConversationsOptions, ak as ListInvocationsFilter, df as ListTasksOptions, dg as ListTasksResponse, aC as LocalStorageTokenStorage, cF as LogEvent, bo as LogLevel, bu as LoggerConfig, d2 as LoopConfig, c7 as MagicLinkOptions, c6 as MagicLinkSent, ci as McpCallToolResult, cc as McpClient, ch as McpContentBlock, ce as McpFrameStream, cf as McpJsonRpcFrame, ck as McpReadResourceResult, cj as McpResourceContents, cm as McpResourceSubscription, cl as McpResourceUpdate, cg as McpToolDescriptor, cd as McpTransport, aB as MemoryTokenStorage, d0 as MergeStrategy, dl as MessageBody, dx as MessageChild, cE as MessageSavedEvent, a4 as NodeCreateDeepOptions, aP as NodeCreateDeepPayload, a3 as NodeCreateOptions, aO as NodeCreatePayload, aR as NodeDeletePayload, ah as NodeDiffInfo, aI as NodeEventPayload, bQ as NodeFileSource, aS as NodeGetPayload, aT as NodeHistoryPayload, a2 as NodeOperations, a6 as NodeQueryOptions, aX as NodeQueryPayload, aN as NodeRelationships, a9 as NodeTypes, a5 as NodeUpdateOptions, aQ as NodeUpdatePayload, dK as PlanActionOptions, dJ as PlanActionReceipt, P as PlanProjection, k as PlanProjectionTask, dy as PlanTask, d8 as RETRY_STRATEGIES, cH as RaisinReference, bn as ReconnectManager, bb as RefreshTokenPayload, aY as RelationAddPayload, aZ as RelationRemovePayload, a_ as RelationsGetPayload, aJ as RequestContext, aG as RequestEnvelope, bh as RequestType, aH as ResponseEnvelope, aL as ResponseMetadata, bi as ResponseStatus, cL as RetryConfig, cM as RetryStrategy, aU as RevisionEntry, al as ScheduleInvocationOptions, am as ScheduledInvocation, an as ScheduledInvocationRef, ao as ScheduledInvocationTargetKind, aj as SchedulerApi, as as SchemaCommit, dH as SendMessageOptions, X as SignAssetOptions, Y as SignedAssetUrl, at as SqlQuery, a$ as SqlQueryPayload, b0 as SqlResult, cs as StepCompletedEvent, cJ as StepErrorBehavior, cu as StepFailedEvent, cr as StepStartedEvent, ct as StepUsage, b6 as SubscribePayload, ay as Subscription, S as SubscriptionFilters, b8 as SubscriptionResponse, ai as Tags, d7 as TaskCompletionResult, cP as TaskOption, cz as TextChunkEvent, cC as ThoughtChunkEvent, aD as TokenStorage, cB as ToolCallCompletedEvent, T as ToolCallInfo, dw as ToolCallRecord, cA as ToolCallStartedEvent, a7 as Transaction, bc as TransactionBeginPayload, bd as TransactionBeginResponse, be as TransactionCommitPayload, bf as TransactionCommitResponse, a8 as TransactionOptions, bg as TransactionRollbackPayload, b7 as UnsubscribePayload, bz as Upload, bH as UploadError, bW as UploadManager, bw as UploadOptions, bx as UploadProgress, by as UploadResult, bv as UploadStatus, bD as UploadStatusResponse, bV as Uploader, M as UserChangeCallback, L as UserChangeEvent, z as UserNode, b1 as Workspace, _ as WorkspaceClient, a0 as WorkspaceCreateOptions, b2 as WorkspaceCreatePayload, b4 as WorkspaceDeletePayload, b3 as WorkspaceGetPayload, $ as WorkspaceManager, a1 as WorkspaceUpdateOptions, b5 as WorkspaceUpdatePayload, bT as calculateChunkCount, bq as configureLogger, bR as createFileSource, au as createSqlHandler, bk as decodeMessage, bj as encodeMessage, bU as getChunkRange, bS as getContentType, bs as getLogLevel, bt as getLoggerConfig, d9 as getRefDisplayName, da as getRefPath, bl as isEventMessage, dc as isFlowDefinitionContainer, db as isFlowDefinitionStep, bm as isResponseEnvelope, cG as isTerminalEvent, bp as logger, dM as projectPlansFromMessages, c1 as readTokensFromFragment, br as setLogLevel } from './conversation-list-store-D1y3gGqL.js';
|
|
3
|
+
export { F as FlowStatus, j as RaisinContextValue, i as RaisinProviderProps, g as RaisinReact, R as ReactLike, h as ReactLikeWithContext, k as UseAuthReturn, l as UseConnectionReturn, b as UseConversationListReturn, U as UseConversationReturn, d as UseFlowOptions, e as UseFlowReturn, m as UseSqlOptions, n as UseSqlReturn, o as UseSubscriptionOptions, f as createRaisinReact, u as useConversation, a as useConversationList, c as useFlow } from './index-hWuJEcBQ.js';
|
|
4
4
|
export { AuthAdapter, AuthSnapshot, ConnectionAdapter, ConnectionSnapshot, FlowAdapter, FlowAdapterOptions, FlowSnapshot, RAISIN_CONTEXT_KEY, RaisinContext, SubscriptionAdapter, FlowStatus as SvelteFlowStatus, createAuthAdapter, createConnectionAdapter, createConversationAdapter, createConversationListAdapter, createFlowAdapter, createSubscriptionAdapter } from './svelte.js';
|
|
5
|
-
export { b as SqlAdapter, S as SqlAdapterOptions, a as SqlSnapshot, c as createSqlAdapter } from './svelte-sql-
|
|
5
|
+
export { b as SqlAdapter, S as SqlAdapterOptions, a as SqlSnapshot, c as createSqlAdapter } from './svelte-sql-BEX5lLij.js';
|
|
6
6
|
export { RaisinVue, VueComputedRef, VueLike, VueRef, createRaisinVue } from './vue.js';
|
|
7
7
|
import 'events';
|
|
8
8
|
import 'fs/promises';
|
package/dist/index.js
CHANGED
|
@@ -701,7 +701,7 @@ var LocalStorageTokenStorage = class {
|
|
|
701
701
|
function isJwtCredentials(credentials) {
|
|
702
702
|
return "type" in credentials && credentials.type === "jwt";
|
|
703
703
|
}
|
|
704
|
-
var AuthManager = class {
|
|
704
|
+
var AuthManager = class _AuthManager {
|
|
705
705
|
constructor(storage) {
|
|
706
706
|
this.expiresAt = null;
|
|
707
707
|
this._storage = storage ?? new MemoryTokenStorage();
|
|
@@ -724,6 +724,31 @@ var AuthManager = class {
|
|
|
724
724
|
this.expiresAt = Date.now() + expiresInMs;
|
|
725
725
|
this.scheduleTokenRefresh(expiresInMs);
|
|
726
726
|
}
|
|
727
|
+
/**
|
|
728
|
+
* Learn a bare token's expiry FROM THE TOKEN.
|
|
729
|
+
*
|
|
730
|
+
* `setTokens` is the only other writer of `expiresAt`, and it needs a whole
|
|
731
|
+
* `AuthenticateResponse`. Several paths hold nothing but a JWT string — a
|
|
732
|
+
* session restored from storage, `authenticate({type:'jwt'})`,
|
|
733
|
+
* `setIdentityTokens(token)` — and left `expiresAt` null. `isTokenExpired()`
|
|
734
|
+
* reads null as EXPIRED, so `isAuthenticated()` answered false for the whole
|
|
735
|
+
* life of every restored session, i.e. every page load after the first.
|
|
736
|
+
*
|
|
737
|
+
* It failed silently, and it had already been routed around three times
|
|
738
|
+
* rather than fixed: both HTTP send paths were made to stop consulting
|
|
739
|
+
* `isAuthenticated()` (see `request()` and `mcpStream()` in http-client),
|
|
740
|
+
* and Studio grew its own token parse to tell a 404 apart from a logged-out
|
|
741
|
+
* read. This is the missing writer those workarounds existed for.
|
|
742
|
+
*
|
|
743
|
+
* Same 60s safety margin as `setTokens`, so both writers agree on when a
|
|
744
|
+
* token stops counting as good.
|
|
745
|
+
*
|
|
746
|
+
* @param token - A JWT held in storage or handed to us
|
|
747
|
+
*/
|
|
748
|
+
adoptToken(token) {
|
|
749
|
+
const exp = _AuthManager.parseToken(token)?.exp;
|
|
750
|
+
this.expiresAt = typeof exp === "number" ? exp * 1e3 - 6e4 : null;
|
|
751
|
+
}
|
|
727
752
|
/**
|
|
728
753
|
* Get current access token
|
|
729
754
|
*/
|
|
@@ -7169,6 +7194,7 @@ var RaisinHttpClient = class extends import_events3.EventEmitter {
|
|
|
7169
7194
|
async authenticate(credentials, repository) {
|
|
7170
7195
|
if (isJwtCredentials(credentials)) {
|
|
7171
7196
|
this.authManager.storage.setAccessToken(credentials.token);
|
|
7197
|
+
this.authManager.adoptToken(credentials.token);
|
|
7172
7198
|
if (repository) {
|
|
7173
7199
|
try {
|
|
7174
7200
|
const userInfo = await this.fetchCurrentUser(repository);
|
|
@@ -7575,6 +7601,7 @@ var RaisinHttpClient = class extends import_events3.EventEmitter {
|
|
|
7575
7601
|
setIdentityTokens(accessTokenOrResult, refreshToken) {
|
|
7576
7602
|
if (typeof accessTokenOrResult === "string") {
|
|
7577
7603
|
this.authManager.storage.setAccessToken(accessTokenOrResult);
|
|
7604
|
+
this.authManager.adoptToken(accessTokenOrResult);
|
|
7578
7605
|
if (refreshToken) this.authManager.storage.setRefreshToken(refreshToken);
|
|
7579
7606
|
return;
|
|
7580
7607
|
}
|
|
@@ -8695,6 +8722,7 @@ var _RaisinClient = class _RaisinClient extends import_events4.EventEmitter {
|
|
|
8695
8722
|
async authenticate(credentials) {
|
|
8696
8723
|
if (isJwtCredentials(credentials)) {
|
|
8697
8724
|
logger.info("[authenticate] Starting JWT authentication...");
|
|
8725
|
+
this.authManager.adoptToken(credentials.token);
|
|
8698
8726
|
const payload = { token: credentials.token };
|
|
8699
8727
|
const response = await this.sendRequestInternal(
|
|
8700
8728
|
payload,
|
|
@@ -9189,7 +9217,13 @@ var _RaisinClient = class _RaisinClient extends import_events4.EventEmitter {
|
|
|
9189
9217
|
logger.debug(`[scheduleAutoRefresh] Scheduling refresh in ${Math.round(clamped / 1e3 / 60)} minutes`);
|
|
9190
9218
|
this._refreshTimer = setTimeout(async () => {
|
|
9191
9219
|
logger.info("[autoRefresh] Auto-refreshing token...");
|
|
9192
|
-
await this.refreshToken();
|
|
9220
|
+
const user = await this.refreshToken();
|
|
9221
|
+
if (!user) {
|
|
9222
|
+
logger.error("[autoRefresh] Refresh failed, clearing session");
|
|
9223
|
+
this.authManager.clear();
|
|
9224
|
+
this._currentUser = null;
|
|
9225
|
+
this._emitAuthEvent("SESSION_EXPIRED");
|
|
9226
|
+
}
|
|
9193
9227
|
}, clamped);
|
|
9194
9228
|
}
|
|
9195
9229
|
/**
|