🚀 Socket Launch Week Day 5:Introducing Repository Access Permissions and Custom Roles.Learn more
Sign In

@useatlas/types

Package Overview
Dependencies
Maintainers
1
Versions
42
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@useatlas/types - npm Package Compare versions

Comparing version
0.1.4
to
0.1.5
+19
-0
dist/integrations.d.ts

@@ -31,2 +31,21 @@ /**

workspaceName: string | null;
/**
* User id of the admin who completed the OAuth install (from
* `workspace_plugins.installed_by`). Null on legacy installs that
* predate the slice-5 install handler — the UI degrades to
* "Connected on {installedAt}" when null.
*/
installedBy: string | null;
/**
* True when the active install was completed via OAuth — i.e. a
* `workspace_plugins` row exists for this workspace's Slack catalog
* entry. BYOT and env-token installs leave this `false` because they
* write only to `chat_cache`, not `workspace_plugins`.
*
* The admin UI uses this to decide whether to render the OAuth-only
* Disconnect affordance (slice-6 placeholder pointing at #2655) vs.
* the existing BYOT Disconnect dialog (which already works against
* the chat_cache row).
*/
hasOAuthInstall: boolean;
/** Whether Slack OAuth env vars are configured (SLACK_CLIENT_ID etc.). */

@@ -33,0 +52,0 @@ oauthConfigured: boolean;

@@ -78,2 +78,36 @@ /**

/**
* Chat-adapter encoded thread id (e.g. Slack: `"slack:CHANNEL:THREAD_TS"`).
*
* Distinct nominal type from {@link ChannelId} even though both are
* strings at runtime. The chat-adapter's `Thread.id` and
* `ReactionEvent.threadId` both surface this encoded form; the bare
* `"slack:CHANNEL"` channel id is the `ChannelId` brand. Branding the
* two prevents the #2680 class of bug — a developer reading the chat
* SDK's `Thread.channelId` (`string`) and passing it where a thread id
* is expected (`pending.record(thread.channelId, ...)` was the
* specific instance, which silently broke the proactive reaction-back
* path for the entire 1.5.0 dogfood window because Map keys never
* matched the encoded form `event.threadId` carries).
*
* Promoted via `assertThreadId` from `@useatlas/chat`.
*/
export type ThreadId = string & {
readonly __brand: "ThreadId";
};
/**
* Chat-adapter channel id (e.g. Slack: `"slack:CHANNEL"`).
*
* Distinct nominal type from {@link ThreadId}. The chat-adapter's
* `Thread.channelId` and `channelIdFromThreadId(threadId)` both
* surface this bare form; the encoded `"slack:CHANNEL:THREAD_TS"` is
* the `ThreadId` brand. Branding eliminates the can-pass-either-string
* footgun that lets `pending.record(thread.channelId, ...)` compile
* against a slot expecting `ThreadId`.
*
* Promoted via `assertChannelId` from `@useatlas/chat`.
*/
export type ChannelId = string & {
readonly __brand: "ChannelId";
};
/**
* Channel-scoped pause layers (`channel_id IS NOT NULL`).

@@ -80,0 +114,0 @@ *

+1
-1
{
"name": "@useatlas/types",
"version": "0.1.4",
"version": "0.1.5",
"description": "Shared types for the Atlas text-to-SQL agent",

@@ -5,0 +5,0 @@ "type": "module",