@workjournal/shared 2.17.0 → 2.26.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.
@@ -87,6 +87,41 @@ export declare const WS_API_PATHS: {
87
87
  readonly tag: (workspaceSlug: string, tagName: string) => string;
88
88
  /** Same path for assign (POST) and unassign (DELETE). */
89
89
  readonly assignTag: (workspaceSlug: string, journalSlug: string, tagName: string) => string;
90
+ /** GET. Workspace member roster (owner + members with roles/emails). #771 */
91
+ readonly workspaceMembers: (workspaceSlug: string) => string;
92
+ /** PATCH `{ role }` changes a member's role; DELETE removes them (or self-leaves). */
93
+ readonly workspaceMember: (workspaceSlug: string, userId: string) => string;
94
+ /** GET lists / POST `{ email, role }` creates workspace-member invitations.
95
+ * Workspace-scoped — distinct from the journal-scoped `invitations` above. */
96
+ readonly workspaceInvitations: (workspaceSlug: string) => string;
97
+ /** DELETE revokes a pending workspace invitation. */
98
+ readonly workspaceInvitation: (workspaceSlug: string, invitationId: string) => string;
99
+ readonly resendWorkspaceInvitation: (workspaceSlug: string, invitationId: string) => string;
100
+ /** GET (unauthenticated — the token is the credential). Narrow projection. */
101
+ readonly workspaceInvitationByToken: (token: string) => string;
102
+ readonly acceptWorkspaceInvitation: "/v1/workspace-invitations/accept";
103
+ /** GET. Pending journal + workspace invitations addressed to the caller. #775 */
104
+ readonly myInvitations: "/v1/me/invitations";
105
+ /** GET. Caller's notifications, newest first (`workspace_id` repeatable, `journal_id`, `unread`, `push`, `before`, `limit`). #797 */
106
+ readonly notifications: "/v1/me/notifications";
107
+ /** GET. Unread counters by workspace/journal + unread target paths. #797 */
108
+ readonly notificationsSummary: "/v1/me/notifications/summary";
109
+ /** POST `MarkNotificationsReadRequest`. #797 */
110
+ readonly notificationsRead: "/v1/me/notifications/read";
111
+ /** GET + `Upgrade: websocket`; subprotocols `[NOTIFICATIONS_WS_PROTOCOL, 'bearer.<token>']`. #797 */
112
+ readonly notificationsSocket: "/v1/realtime/notifications";
113
+ /** GET. `{ vapid_public_key }` — null when Web Push is not configured. #813 */
114
+ readonly pushConfig: "/v1/me/push-config";
115
+ /** POST a `PushSubscription.toJSON()` / DELETE `{ endpoint }` — this device's Web Push registration (#813); GET `?endpoint=` → `{ registered }` (#817). */
116
+ readonly pushSubscriptions: "/v1/me/push-subscriptions";
117
+ /** GET. Caller's `workspace_user_settings` rows (notification levels). #805 */
118
+ readonly myWorkspaceSettings: "/v1/me/workspace-settings";
119
+ /** PATCH `UpdateWorkspaceUserSettingsRequest`. #805 */
120
+ readonly myWorkspaceSettingsFor: (workspaceId: string) => string;
121
+ /** GET. Whole-workspace activity (owner + members). #797 */
122
+ readonly workspaceActivity: (workspaceSlug: string) => string;
123
+ /** GET. One journal's activity (anyone with journal access). #797 */
124
+ readonly journalActivity: (workspaceSlug: string, journalSlug: string) => string;
90
125
  readonly supportContact: (workspaceSlug: string) => string;
91
126
  /** GET. Live Paddle monthly checkout catalog ([{ tier, priceId, ... }]). */
92
127
  readonly billingCatalog: "/v1/billing/catalog";
@@ -104,6 +139,20 @@ export declare const WS_API_PATHS: {
104
139
  * before a plan change while the subscription is scheduled to cancel. */
105
140
  readonly subscriptionReactivate: (workspaceSlug: string) => string;
106
141
  };
142
+ /**
143
+ * Request header the web app sends on every API call (`X-Workjournal-Client:
144
+ * web`). Requests without it are treated as an agent (CLI, MCP, direct API)
145
+ * when deciding whether a user hears about their own actions (#818).
146
+ * Self-declared on purpose: it only affects the caller's own notifications.
147
+ */
148
+ export declare const CLIENT_HEADER = "X-Workjournal-Client";
149
+ export declare const WEB_CLIENT = "web";
150
+ /** Activity + notification retention window, in days (issue #797). */
151
+ export declare const ACTIVITY_RETENTION_DAYS = 30;
152
+ /** WebSocket subprotocol the notifications socket negotiates (issue #797). The
153
+ * bearer rides as a second `bearer.<token>` subprotocol — browsers can't set
154
+ * headers on a WebSocket. */
155
+ export declare const NOTIFICATIONS_WS_PROTOCOL = "wj.notifications.v1";
107
156
  /**
108
157
  * Reserved virtual-workspace slug exposed in user-facing surfaces (CLI, MCP,
109
158
  * web URL). The API serves the listing at a dedicated top-level path
@@ -1 +1 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"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"}
package/dist/constants.js CHANGED
@@ -97,6 +97,41 @@ export const WS_API_PATHS = {
97
97
  tag: (workspaceSlug, tagName) => `${ws(workspaceSlug)}/tags/${encodeURIComponent(tagName)}`,
98
98
  /** Same path for assign (POST) and unassign (DELETE). */
99
99
  assignTag: (workspaceSlug, journalSlug, tagName) => `${jr(workspaceSlug, journalSlug)}/tags/${encodeURIComponent(tagName)}`,
100
+ /** GET. Workspace member roster (owner + members with roles/emails). #771 */
101
+ workspaceMembers: (workspaceSlug) => `${ws(workspaceSlug)}/members`,
102
+ /** PATCH `{ role }` changes a member's role; DELETE removes them (or self-leaves). */
103
+ workspaceMember: (workspaceSlug, userId) => `${ws(workspaceSlug)}/members/${encodeURIComponent(userId)}`,
104
+ /** GET lists / POST `{ email, role }` creates workspace-member invitations.
105
+ * Workspace-scoped — distinct from the journal-scoped `invitations` above. */
106
+ workspaceInvitations: (workspaceSlug) => `${ws(workspaceSlug)}/invitations`,
107
+ /** DELETE revokes a pending workspace invitation. */
108
+ workspaceInvitation: (workspaceSlug, invitationId) => `${ws(workspaceSlug)}/invitations/${encodeURIComponent(invitationId)}`,
109
+ resendWorkspaceInvitation: (workspaceSlug, invitationId) => `${ws(workspaceSlug)}/invitations/${encodeURIComponent(invitationId)}/resend`,
110
+ /** GET (unauthenticated — the token is the credential). Narrow projection. */
111
+ workspaceInvitationByToken: (token) => `/${API_VERSION}/workspace-invitations/${encodeURIComponent(token)}`,
112
+ acceptWorkspaceInvitation: `/${API_VERSION}/workspace-invitations/accept`,
113
+ /** GET. Pending journal + workspace invitations addressed to the caller. #775 */
114
+ myInvitations: `/${API_VERSION}/me/invitations`,
115
+ /** GET. Caller's notifications, newest first (`workspace_id` repeatable, `journal_id`, `unread`, `push`, `before`, `limit`). #797 */
116
+ notifications: `/${API_VERSION}/me/notifications`,
117
+ /** GET. Unread counters by workspace/journal + unread target paths. #797 */
118
+ notificationsSummary: `/${API_VERSION}/me/notifications/summary`,
119
+ /** POST `MarkNotificationsReadRequest`. #797 */
120
+ notificationsRead: `/${API_VERSION}/me/notifications/read`,
121
+ /** GET + `Upgrade: websocket`; subprotocols `[NOTIFICATIONS_WS_PROTOCOL, 'bearer.<token>']`. #797 */
122
+ notificationsSocket: `/${API_VERSION}/realtime/notifications`,
123
+ /** GET. `{ vapid_public_key }` — null when Web Push is not configured. #813 */
124
+ pushConfig: `/${API_VERSION}/me/push-config`,
125
+ /** POST a `PushSubscription.toJSON()` / DELETE `{ endpoint }` — this device's Web Push registration (#813); GET `?endpoint=` → `{ registered }` (#817). */
126
+ pushSubscriptions: `/${API_VERSION}/me/push-subscriptions`,
127
+ /** GET. Caller's `workspace_user_settings` rows (notification levels). #805 */
128
+ myWorkspaceSettings: `/${API_VERSION}/me/workspace-settings`,
129
+ /** PATCH `UpdateWorkspaceUserSettingsRequest`. #805 */
130
+ myWorkspaceSettingsFor: (workspaceId) => `/${API_VERSION}/me/workspace-settings/${encodeURIComponent(workspaceId)}`,
131
+ /** GET. Whole-workspace activity (owner + members). #797 */
132
+ workspaceActivity: (workspaceSlug) => `${ws(workspaceSlug)}/activity`,
133
+ /** GET. One journal's activity (anyone with journal access). #797 */
134
+ journalActivity: (workspaceSlug, journalSlug) => `${jr(workspaceSlug, journalSlug)}/activity`,
100
135
  supportContact: (workspaceSlug) => `${ws(workspaceSlug)}/support/contact`,
101
136
  /** GET. Live Paddle monthly checkout catalog ([{ tier, priceId, ... }]). */
102
137
  billingCatalog: `/${API_VERSION}/billing/catalog`,
@@ -114,6 +149,20 @@ export const WS_API_PATHS = {
114
149
  * before a plan change while the subscription is scheduled to cancel. */
115
150
  subscriptionReactivate: (workspaceSlug) => `${ws(workspaceSlug)}/subscription/reactivate`,
116
151
  };
152
+ /**
153
+ * Request header the web app sends on every API call (`X-Workjournal-Client:
154
+ * web`). Requests without it are treated as an agent (CLI, MCP, direct API)
155
+ * when deciding whether a user hears about their own actions (#818).
156
+ * Self-declared on purpose: it only affects the caller's own notifications.
157
+ */
158
+ export const CLIENT_HEADER = 'X-Workjournal-Client';
159
+ export const WEB_CLIENT = 'web';
160
+ /** Activity + notification retention window, in days (issue #797). */
161
+ export const ACTIVITY_RETENTION_DAYS = 30;
162
+ /** WebSocket subprotocol the notifications socket negotiates (issue #797). The
163
+ * bearer rides as a second `bearer.<token>` subprotocol — browsers can't set
164
+ * headers on a WebSocket. */
165
+ export const NOTIFICATIONS_WS_PROTOCOL = 'wj.notifications.v1';
117
166
  /**
118
167
  * Reserved virtual-workspace slug exposed in user-facing surfaces (CLI, MCP,
119
168
  * web URL). The API serves the listing at a dedicated top-level path
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -1,6 +1,10 @@
1
+ export type { AddressParseFailure, ParseAddressResult, WjAddress, } from './address.js';
2
+ export { ADDRESS_FAILURE_MESSAGES, ADDRESS_SCHEME, formatAddress, formatEntryAddress, formatJournalAddress, formatWorkspaceAddress, hasAddressScheme, isAddress, MAX_ENTRY_INDEX, parseAddress, } from './address.js';
1
3
  export type { ErrorCode } from './constants.js';
2
- export { API_PATHS, API_VERSION, ATTACHMENT_ALLOWED_TYPES, ATTACHMENT_EXTENSION_BY_TYPE, ATTACHMENT_MAX_BYTES, CURRENT_PRIVACY_VERSION, CURRENT_TOS_VERSION, DEFAULT_PAGE_LIMIT, DEFAULT_PROMPT_ID, DEFAULT_PROMPT_SLUG, ERROR_CODES, isAllowedAttachmentType, isReservedTagName, MAX_EMAIL_LENGTH, MAX_JOURNAL_NAME_LENGTH, MAX_PAGE_LIMIT, MAX_PROMPT_BODY_LENGTH, MAX_PROMPT_NAME_LENGTH, MAX_SUMMARY_LENGTH, MAX_TITLE_LENGTH, PUBLIC_SLUG_LENGTH, RESERVED_TAG_NAMES, SHARED_WITH_ME_SLUG, WS_API_PATHS, } from './constants.js';
4
+ export { ACTIVITY_RETENTION_DAYS, API_PATHS, API_VERSION, ATTACHMENT_ALLOWED_TYPES, ATTACHMENT_EXTENSION_BY_TYPE, ATTACHMENT_MAX_BYTES, CLIENT_HEADER, CURRENT_PRIVACY_VERSION, CURRENT_TOS_VERSION, DEFAULT_PAGE_LIMIT, DEFAULT_PROMPT_ID, DEFAULT_PROMPT_SLUG, ERROR_CODES, isAllowedAttachmentType, isReservedTagName, MAX_EMAIL_LENGTH, MAX_JOURNAL_NAME_LENGTH, MAX_PAGE_LIMIT, MAX_PROMPT_BODY_LENGTH, MAX_PROMPT_NAME_LENGTH, MAX_SUMMARY_LENGTH, MAX_TITLE_LENGTH, NOTIFICATIONS_WS_PROTOCOL, PUBLIC_SLUG_LENGTH, RESERVED_TAG_NAMES, SHARED_WITH_ME_SLUG, WEB_CLIENT, WS_API_PATHS, } from './constants.js';
3
5
  export { DEFAULT_JOURNAL_PROMPT } from './default-prompt.js';
6
+ export type { NotificationLevel, NotificationLevels, NotificationTypeGroup, NotificationTypeOption, UpdateWorkspaceUserSettingsRequest, WorkspaceUserSettings, WorkspaceUserSettingsRow, } from './notification-levels.js';
7
+ export { DEFAULT_NOTIFICATION_LEVEL, isConfigurableNotificationType, isNotificationLevel, NOTIFICATION_LEVELS, NOTIFICATION_TYPE_GROUPS, NOTIFICATION_TYPE_OPTIONS, resolveNotificationLevel, } from './notification-levels.js';
4
8
  export type { BearerResolution, WrappedPayload } from './opaque-token.js';
5
9
  export { AAD_STRING, isOpaqueToken, KEY_LEN, NONCE_LEN, resolveBearer, TAG_LEN, unwrapToken, WJTK_PREFIX, wrapToken, } from './opaque-token.js';
6
10
  export { proposeWorkspaceNameFromEmail } from './propose-workspace-name.js';
@@ -11,5 +15,5 @@ export type { ResolvedTheme, ThemePreference } from './theme.js';
11
15
  export { isThemePreference, resolveTheme, THEME_INIT_SCRIPT, THEME_PREFERENCES, THEME_STORAGE_KEY, } from './theme.js';
12
16
  export type { FeatureFlag } from './tiers.js';
13
17
  export { canUseFeature, canUseFeatureForCode } from './tiers.js';
14
- export type { AcceptInvitationRequest, AcceptLegalRequest, ApiError, Attachment, AttachmentContentType, AttachmentWithEntries, CreateEntryRequest, CreateInvitationRequest, CreateJournalRequest, CreatePromptRequest, CreateTagRequest, CreateWorkspaceRequest, Entry, EntryAttachmentRef, EntrySummary, EntryWithNeighbors, Invitation, Journal, JournalContributor, JournalContributorRow, JournalContributorWithEmail, JournalPromptInfo, JournalTagAssignment, MoveJournalRequest, PaginatedResponse, Prompt, RagSearchRequest, RagSearchResponse, RagSearchResult, SharedJournal, Tag, TagWithAssignment, Tier, TierCode, UpdateEntryRequest, UpdateJournalRequest, UpdatePromptRequest, UpdateTagRequest, UploadAttachmentResponse, UserProfile, Workspace, } from './types.js';
18
+ export type { AcceptInvitationRequest, AcceptLegalRequest, AcceptWorkspaceInvitationRequest, AcceptWorkspaceInvitationResponse, ActivityEvent, ActivityItem, ActivityOrigin, ActivityPage, ActivityScope, ApiError, Attachment, AttachmentContentType, AttachmentWithEntries, CreateEntryRequest, CreateInvitationRequest, CreateJournalRequest, CreatePromptRequest, CreateTagRequest, CreateWorkspaceInvitationRequest, CreateWorkspaceRequest, Entry, EntryAttachmentRef, EntrySummary, EntryWithNeighbors, Invitation, Journal, JournalContributor, JournalContributorRow, JournalContributorWithEmail, JournalPromptInfo, JournalTagAssignment, MarkNotificationsReadRequest, MoveJournalRequest, MyInvitations, MyJournalInvitation, MyWorkspaceInvitation, Notification, NotificationPage, NotificationSummary, PaginatedResponse, Prompt, PushConfig, PushSubscriptionStatus, RagSearchRequest, RagSearchResponse, RagSearchResult, SavePushSubscriptionRequest, SharedJournal, SummaryPart, Tag, TagWithAssignment, Tier, TierCode, UpdateEntryRequest, UpdateJournalRequest, UpdatePromptRequest, UpdateTagRequest, UpdateWorkspaceMemberRequest, UploadAttachmentResponse, UserProfile, Workspace, WorkspaceInvitation, WorkspaceInvitationDetail, WorkspaceMemberRole, WorkspaceMemberRow, } from './types.js';
15
19
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAEhD,OAAO,EACN,SAAS,EACT,WAAW,EACX,wBAAwB,EACxB,4BAA4B,EAC5B,oBAAoB,EACpB,uBAAuB,EACvB,mBAAmB,EACnB,kBAAkB,EAClB,iBAAiB,EACjB,mBAAmB,EACnB,WAAW,EACX,uBAAuB,EACvB,iBAAiB,EACjB,gBAAgB,EAChB,uBAAuB,EACvB,cAAc,EACd,sBAAsB,EACtB,sBAAsB,EACtB,kBAAkB,EAClB,gBAAgB,EAChB,kBAAkB,EAClB,kBAAkB,EAClB,mBAAmB,EACnB,YAAY,GACZ,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAC7D,YAAY,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAC1E,OAAO,EACN,UAAU,EACV,aAAa,EACb,OAAO,EACP,SAAS,EACT,aAAa,EACb,OAAO,EACP,WAAW,EACX,WAAW,EACX,SAAS,GACT,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,6BAA6B,EAAE,MAAM,6BAA6B,CAAC;AAC5E,OAAO,EACN,cAAc,EACd,eAAe,EACf,eAAe,EACf,cAAc,EACd,OAAO,GACP,MAAM,WAAW,CAAC;AACnB,YAAY,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACzE,OAAO,EACN,cAAc,EACd,iBAAiB,EACjB,cAAc,EACd,iBAAiB,GACjB,MAAM,qBAAqB,CAAC;AAC7B,YAAY,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AACjE,OAAO,EACN,iBAAiB,EACjB,YAAY,EACZ,iBAAiB,EACjB,iBAAiB,EACjB,iBAAiB,GACjB,MAAM,YAAY,CAAC;AACpB,YAAY,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AACjE,YAAY,EACX,uBAAuB,EACvB,kBAAkB,EAClB,QAAQ,EACR,UAAU,EACV,qBAAqB,EACrB,qBAAqB,EACrB,kBAAkB,EAClB,uBAAuB,EACvB,oBAAoB,EACpB,mBAAmB,EACnB,gBAAgB,EAChB,sBAAsB,EACtB,KAAK,EACL,kBAAkB,EAClB,YAAY,EACZ,kBAAkB,EAClB,UAAU,EACV,OAAO,EACP,kBAAkB,EAClB,qBAAqB,EACrB,2BAA2B,EAC3B,iBAAiB,EACjB,oBAAoB,EACpB,kBAAkB,EAClB,iBAAiB,EACjB,MAAM,EACN,gBAAgB,EAChB,iBAAiB,EACjB,eAAe,EACf,aAAa,EACb,GAAG,EACH,iBAAiB,EACjB,IAAI,EACJ,QAAQ,EACR,kBAAkB,EAClB,oBAAoB,EACpB,mBAAmB,EACnB,gBAAgB,EAChB,wBAAwB,EACxB,WAAW,EACX,SAAS,GACT,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -1,5 +1,7 @@
1
- export { API_PATHS, API_VERSION, ATTACHMENT_ALLOWED_TYPES, ATTACHMENT_EXTENSION_BY_TYPE, ATTACHMENT_MAX_BYTES, CURRENT_PRIVACY_VERSION, CURRENT_TOS_VERSION, DEFAULT_PAGE_LIMIT, DEFAULT_PROMPT_ID, DEFAULT_PROMPT_SLUG, ERROR_CODES, isAllowedAttachmentType, isReservedTagName, MAX_EMAIL_LENGTH, MAX_JOURNAL_NAME_LENGTH, MAX_PAGE_LIMIT, MAX_PROMPT_BODY_LENGTH, MAX_PROMPT_NAME_LENGTH, MAX_SUMMARY_LENGTH, MAX_TITLE_LENGTH, PUBLIC_SLUG_LENGTH, RESERVED_TAG_NAMES, SHARED_WITH_ME_SLUG, WS_API_PATHS, } from './constants.js';
1
+ export { ADDRESS_FAILURE_MESSAGES, ADDRESS_SCHEME, formatAddress, formatEntryAddress, formatJournalAddress, formatWorkspaceAddress, hasAddressScheme, isAddress, MAX_ENTRY_INDEX, parseAddress, } from './address.js';
2
+ export { ACTIVITY_RETENTION_DAYS, API_PATHS, API_VERSION, ATTACHMENT_ALLOWED_TYPES, ATTACHMENT_EXTENSION_BY_TYPE, ATTACHMENT_MAX_BYTES, CLIENT_HEADER, CURRENT_PRIVACY_VERSION, CURRENT_TOS_VERSION, DEFAULT_PAGE_LIMIT, DEFAULT_PROMPT_ID, DEFAULT_PROMPT_SLUG, ERROR_CODES, isAllowedAttachmentType, isReservedTagName, MAX_EMAIL_LENGTH, MAX_JOURNAL_NAME_LENGTH, MAX_PAGE_LIMIT, MAX_PROMPT_BODY_LENGTH, MAX_PROMPT_NAME_LENGTH, MAX_SUMMARY_LENGTH, MAX_TITLE_LENGTH, NOTIFICATIONS_WS_PROTOCOL, PUBLIC_SLUG_LENGTH, RESERVED_TAG_NAMES, SHARED_WITH_ME_SLUG, WEB_CLIENT, WS_API_PATHS, } from './constants.js';
2
3
  export { DEFAULT_JOURNAL_PROMPT } from './default-prompt.js';
4
+ export { DEFAULT_NOTIFICATION_LEVEL, isConfigurableNotificationType, isNotificationLevel, NOTIFICATION_LEVELS, NOTIFICATION_TYPE_GROUPS, NOTIFICATION_TYPE_OPTIONS, resolveNotificationLevel, } from './notification-levels.js';
3
5
  export { AAD_STRING, isOpaqueToken, KEY_LEN, NONCE_LEN, resolveBearer, TAG_LEN, unwrapToken, WJTK_PREFIX, wrapToken, } from './opaque-token.js';
4
6
  export { proposeWorkspaceNameFromEmail } from './propose-workspace-name.js';
5
7
  export { isReservedSlug, MAX_NAME_LENGTH, MAX_SLUG_LENGTH, RESERVED_SLUGS, slugify, } from './slug.js';
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,OAAO,EACN,SAAS,EACT,WAAW,EACX,wBAAwB,EACxB,4BAA4B,EAC5B,oBAAoB,EACpB,uBAAuB,EACvB,mBAAmB,EACnB,kBAAkB,EAClB,iBAAiB,EACjB,mBAAmB,EACnB,WAAW,EACX,uBAAuB,EACvB,iBAAiB,EACjB,gBAAgB,EAChB,uBAAuB,EACvB,cAAc,EACd,sBAAsB,EACtB,sBAAsB,EACtB,kBAAkB,EAClB,gBAAgB,EAChB,kBAAkB,EAClB,kBAAkB,EAClB,mBAAmB,EACnB,YAAY,GACZ,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAE7D,OAAO,EACN,UAAU,EACV,aAAa,EACb,OAAO,EACP,SAAS,EACT,aAAa,EACb,OAAO,EACP,WAAW,EACX,WAAW,EACX,SAAS,GACT,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,6BAA6B,EAAE,MAAM,6BAA6B,CAAC;AAC5E,OAAO,EACN,cAAc,EACd,eAAe,EACf,eAAe,EACf,cAAc,EACd,OAAO,GACP,MAAM,WAAW,CAAC;AAEnB,OAAO,EACN,cAAc,EACd,iBAAiB,EACjB,cAAc,EACd,iBAAiB,GACjB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EACN,iBAAiB,EACjB,YAAY,EACZ,iBAAiB,EACjB,iBAAiB,EACjB,iBAAiB,GACjB,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAKA,OAAO,EACN,wBAAwB,EACxB,cAAc,EACd,aAAa,EACb,kBAAkB,EAClB,oBAAoB,EACpB,sBAAsB,EACtB,gBAAgB,EAChB,SAAS,EACT,eAAe,EACf,YAAY,GACZ,MAAM,cAAc,CAAC;AAGtB,OAAO,EACN,uBAAuB,EACvB,SAAS,EACT,WAAW,EACX,wBAAwB,EACxB,4BAA4B,EAC5B,oBAAoB,EACpB,aAAa,EACb,uBAAuB,EACvB,mBAAmB,EACnB,kBAAkB,EAClB,iBAAiB,EACjB,mBAAmB,EACnB,WAAW,EACX,uBAAuB,EACvB,iBAAiB,EACjB,gBAAgB,EAChB,uBAAuB,EACvB,cAAc,EACd,sBAAsB,EACtB,sBAAsB,EACtB,kBAAkB,EAClB,gBAAgB,EAChB,yBAAyB,EACzB,kBAAkB,EAClB,kBAAkB,EAClB,mBAAmB,EACnB,UAAU,EACV,YAAY,GACZ,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAU7D,OAAO,EACN,0BAA0B,EAC1B,8BAA8B,EAC9B,mBAAmB,EACnB,mBAAmB,EACnB,wBAAwB,EACxB,yBAAyB,EACzB,wBAAwB,GACxB,MAAM,0BAA0B,CAAC;AAElC,OAAO,EACN,UAAU,EACV,aAAa,EACb,OAAO,EACP,SAAS,EACT,aAAa,EACb,OAAO,EACP,WAAW,EACX,WAAW,EACX,SAAS,GACT,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,6BAA6B,EAAE,MAAM,6BAA6B,CAAC;AAC5E,OAAO,EACN,cAAc,EACd,eAAe,EACf,eAAe,EACf,cAAc,EACd,OAAO,GACP,MAAM,WAAW,CAAC;AAEnB,OAAO,EACN,cAAc,EACd,iBAAiB,EACjB,cAAc,EACd,iBAAiB,GACjB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EACN,iBAAiB,EACjB,YAAY,EACZ,iBAAiB,EACjB,iBAAiB,EACjB,iBAAiB,GACjB,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC"}
@@ -0,0 +1,53 @@
1
+ /**
2
+ * Per-workspace notification levels (issue #805, docs/notifications.md §
3
+ * Notification levels). One registry drives the API validator, the emitter's
4
+ * filter and the web settings UI — adding a configurable type means adding a
5
+ * row to `NOTIFICATION_TYPE_OPTIONS`, never a branch.
6
+ */
7
+ import type { ActivityScope } from './types.js';
8
+ /** `hide`: not delivered. `list`: list + counters (default). `push`: list + browser notification. */
9
+ export type NotificationLevel = 'hide' | 'list' | 'push';
10
+ /** In UI order (eye-off, eye, bell). */
11
+ export declare const NOTIFICATION_LEVELS: readonly NotificationLevel[];
12
+ export declare const DEFAULT_NOTIFICATION_LEVEL: NotificationLevel;
13
+ export type NotificationTypeGroup = 'journals' | 'entries' | 'people';
14
+ export interface NotificationTypeOption {
15
+ type: string;
16
+ /** Event scope: workspace-scoped types never reach people who only have shared journals. */
17
+ scope: ActivityScope;
18
+ group: NotificationTypeGroup;
19
+ label: string;
20
+ }
21
+ export declare const NOTIFICATION_TYPE_GROUPS: readonly {
22
+ group: NotificationTypeGroup;
23
+ label: string;
24
+ }[];
25
+ /** Event types a user can set a level for. Types not listed are always `list`. */
26
+ export declare const NOTIFICATION_TYPE_OPTIONS: readonly NotificationTypeOption[];
27
+ export declare function isNotificationLevel(value: unknown): value is NotificationLevel;
28
+ export declare function isConfigurableNotificationType(type: string): boolean;
29
+ /** Stored levels: sparse map, a missing key means `list`. */
30
+ export type NotificationLevels = Record<string, NotificationLevel>;
31
+ /**
32
+ * The effective level for `type` given a stored (untrusted) levels map.
33
+ * Unknown types and malformed values resolve to the default.
34
+ */
35
+ export declare function resolveNotificationLevel(levels: unknown, type: string): NotificationLevel;
36
+ /** `workspace_user_settings.settings` (docs/data.md). */
37
+ export interface WorkspaceUserSettings {
38
+ notifications?: NotificationLevels;
39
+ /** Also notify me about changes I made through an agent (CLI / MCP / API) in this workspace (#818). Default off. */
40
+ own_agent_notifications?: boolean;
41
+ }
42
+ /** A `workspace_user_settings` row as returned by `GET /v1/me/workspace-settings`. */
43
+ export interface WorkspaceUserSettingsRow {
44
+ workspace_id: string;
45
+ settings: WorkspaceUserSettings;
46
+ updated_at: string;
47
+ }
48
+ /** `PATCH /v1/me/workspace-settings/:workspaceId` body — exactly one of the two fields per request (each is one atomic write). */
49
+ export interface UpdateWorkspaceUserSettingsRequest {
50
+ notifications?: Partial<NotificationLevels>;
51
+ own_agent_notifications?: boolean;
52
+ }
53
+ //# sourceMappingURL=notification-levels.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"notification-levels.d.ts","sourceRoot":"","sources":["../src/notification-levels.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAEhD,qGAAqG;AACrG,MAAM,MAAM,iBAAiB,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;AAEzD,wCAAwC;AACxC,eAAO,MAAM,mBAAmB,EAAE,SAAS,iBAAiB,EAA6B,CAAC;AAE1F,eAAO,MAAM,0BAA0B,EAAE,iBAA0B,CAAC;AAEpE,MAAM,MAAM,qBAAqB,GAAG,UAAU,GAAG,SAAS,GAAG,QAAQ,CAAC;AAEtE,MAAM,WAAW,sBAAsB;IACtC,IAAI,EAAE,MAAM,CAAC;IACb,4FAA4F;IAC5F,KAAK,EAAE,aAAa,CAAC;IACrB,KAAK,EAAE,qBAAqB,CAAC;IAC7B,KAAK,EAAE,MAAM,CAAC;CACd;AAED,eAAO,MAAM,wBAAwB,EAAE,SAAS;IAAE,KAAK,EAAE,qBAAqB,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,EAK7F,CAAC;AAEH,kFAAkF;AAClF,eAAO,MAAM,yBAAyB,EAAE,SAAS,sBAAsB,EAqCtE,CAAC;AAIF,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,iBAAiB,CAE9E;AAED,wBAAgB,8BAA8B,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAEpE;AAED,6DAA6D;AAC7D,MAAM,MAAM,kBAAkB,GAAG,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC;AAEnE;;;GAGG;AACH,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,GAAG,iBAAiB,CAOzF;AAED,yDAAyD;AACzD,MAAM,WAAW,qBAAqB;IACrC,aAAa,CAAC,EAAE,kBAAkB,CAAC;IACnC,oHAAoH;IACpH,uBAAuB,CAAC,EAAE,OAAO,CAAC;CAClC;AAED,sFAAsF;AACtF,MAAM,WAAW,wBAAwB;IACxC,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,qBAAqB,CAAC;IAChC,UAAU,EAAE,MAAM,CAAC;CACnB;AAED,kIAAkI;AAClI,MAAM,WAAW,kCAAkC;IAClD,aAAa,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC,CAAC;IAC5C,uBAAuB,CAAC,EAAE,OAAO,CAAC;CAClC"}
@@ -0,0 +1,68 @@
1
+ /** In UI order (eye-off, eye, bell). */
2
+ export const NOTIFICATION_LEVELS = ['hide', 'list', 'push'];
3
+ export const DEFAULT_NOTIFICATION_LEVEL = 'list';
4
+ export const NOTIFICATION_TYPE_GROUPS = [
5
+ { group: 'journals', label: 'Journals' },
6
+ { group: 'entries', label: 'Entries' },
7
+ { group: 'people', label: 'People' },
8
+ ];
9
+ /** Event types a user can set a level for. Types not listed are always `list`. */
10
+ export const NOTIFICATION_TYPE_OPTIONS = [
11
+ { type: 'journal.created', scope: 'journal', group: 'journals', label: 'Journal created' },
12
+ { type: 'journal.updated', scope: 'journal', group: 'journals', label: 'Journal changed' },
13
+ { type: 'journal.moved', scope: 'journal', group: 'journals', label: 'Journal moved' },
14
+ { type: 'journal.deleted', scope: 'journal', group: 'journals', label: 'Journal deleted' },
15
+ { type: 'entry.created', scope: 'journal', group: 'entries', label: 'Entry created' },
16
+ { type: 'entry.updated', scope: 'journal', group: 'entries', label: 'Entry updated' },
17
+ { type: 'entry.deleted', scope: 'journal', group: 'entries', label: 'Entry deleted' },
18
+ {
19
+ type: 'contributor.invited',
20
+ scope: 'journal',
21
+ group: 'people',
22
+ label: 'Contributor invited',
23
+ },
24
+ {
25
+ type: 'contributor.invite_revoked',
26
+ scope: 'journal',
27
+ group: 'people',
28
+ label: 'Contributor invitation revoked',
29
+ },
30
+ { type: 'contributor.joined', scope: 'journal', group: 'people', label: 'Contributor joined' },
31
+ { type: 'contributor.removed', scope: 'journal', group: 'people', label: 'Contributor left' },
32
+ { type: 'member.invited', scope: 'workspace', group: 'people', label: 'Member invited' },
33
+ {
34
+ type: 'member.invite_revoked',
35
+ scope: 'workspace',
36
+ group: 'people',
37
+ label: 'Member invitation revoked',
38
+ },
39
+ { type: 'member.joined', scope: 'workspace', group: 'people', label: 'Member joined' },
40
+ {
41
+ type: 'member.role_changed',
42
+ scope: 'workspace',
43
+ group: 'people',
44
+ label: 'Member role changed',
45
+ },
46
+ { type: 'member.removed', scope: 'workspace', group: 'people', label: 'Member left' },
47
+ ];
48
+ const CONFIGURABLE = new Set(NOTIFICATION_TYPE_OPTIONS.map((o) => o.type));
49
+ export function isNotificationLevel(value) {
50
+ return value === 'hide' || value === 'list' || value === 'push';
51
+ }
52
+ export function isConfigurableNotificationType(type) {
53
+ return CONFIGURABLE.has(type);
54
+ }
55
+ /**
56
+ * The effective level for `type` given a stored (untrusted) levels map.
57
+ * Unknown types and malformed values resolve to the default.
58
+ */
59
+ export function resolveNotificationLevel(levels, type) {
60
+ if (!isConfigurableNotificationType(type))
61
+ return DEFAULT_NOTIFICATION_LEVEL;
62
+ if (!levels || typeof levels !== 'object' || Array.isArray(levels)) {
63
+ return DEFAULT_NOTIFICATION_LEVEL;
64
+ }
65
+ const value = levels[type];
66
+ return isNotificationLevel(value) ? value : DEFAULT_NOTIFICATION_LEVEL;
67
+ }
68
+ //# sourceMappingURL=notification-levels.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"notification-levels.js","sourceRoot":"","sources":["../src/notification-levels.ts"],"names":[],"mappings":"AAWA,wCAAwC;AACxC,MAAM,CAAC,MAAM,mBAAmB,GAAiC,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;AAE1F,MAAM,CAAC,MAAM,0BAA0B,GAAsB,MAAM,CAAC;AAYpE,MAAM,CAAC,MAAM,wBAAwB,GACpC;IACC,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE;IACxC,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE;IACtC,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE;CACpC,CAAC;AAEH,kFAAkF;AAClF,MAAM,CAAC,MAAM,yBAAyB,GAAsC;IAC3E,EAAE,IAAI,EAAE,iBAAiB,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,iBAAiB,EAAE;IAC1F,EAAE,IAAI,EAAE,iBAAiB,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,iBAAiB,EAAE;IAC1F,EAAE,IAAI,EAAE,eAAe,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,eAAe,EAAE;IACtF,EAAE,IAAI,EAAE,iBAAiB,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,iBAAiB,EAAE;IAC1F,EAAE,IAAI,EAAE,eAAe,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,eAAe,EAAE;IACrF,EAAE,IAAI,EAAE,eAAe,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,eAAe,EAAE;IACrF,EAAE,IAAI,EAAE,eAAe,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,eAAe,EAAE;IACrF;QACC,IAAI,EAAE,qBAAqB;QAC3B,KAAK,EAAE,SAAS;QAChB,KAAK,EAAE,QAAQ;QACf,KAAK,EAAE,qBAAqB;KAC5B;IACD;QACC,IAAI,EAAE,4BAA4B;QAClC,KAAK,EAAE,SAAS;QAChB,KAAK,EAAE,QAAQ;QACf,KAAK,EAAE,gCAAgC;KACvC;IACD,EAAE,IAAI,EAAE,oBAAoB,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,oBAAoB,EAAE;IAC9F,EAAE,IAAI,EAAE,qBAAqB,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,kBAAkB,EAAE;IAC7F,EAAE,IAAI,EAAE,gBAAgB,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,gBAAgB,EAAE;IACxF;QACC,IAAI,EAAE,uBAAuB;QAC7B,KAAK,EAAE,WAAW;QAClB,KAAK,EAAE,QAAQ;QACf,KAAK,EAAE,2BAA2B;KAClC;IACD,EAAE,IAAI,EAAE,eAAe,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,eAAe,EAAE;IACtF;QACC,IAAI,EAAE,qBAAqB;QAC3B,KAAK,EAAE,WAAW;QAClB,KAAK,EAAE,QAAQ;QACf,KAAK,EAAE,qBAAqB;KAC5B;IACD,EAAE,IAAI,EAAE,gBAAgB,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,aAAa,EAAE;CACrF,CAAC;AAEF,MAAM,YAAY,GAAG,IAAI,GAAG,CAAC,yBAAyB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;AAE3E,MAAM,UAAU,mBAAmB,CAAC,KAAc;IACjD,OAAO,KAAK,KAAK,MAAM,IAAI,KAAK,KAAK,MAAM,IAAI,KAAK,KAAK,MAAM,CAAC;AACjE,CAAC;AAED,MAAM,UAAU,8BAA8B,CAAC,IAAY;IAC1D,OAAO,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;AAC/B,CAAC;AAKD;;;GAGG;AACH,MAAM,UAAU,wBAAwB,CAAC,MAAe,EAAE,IAAY;IACrE,IAAI,CAAC,8BAA8B,CAAC,IAAI,CAAC;QAAE,OAAO,0BAA0B,CAAC;IAC7E,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QACpE,OAAO,0BAA0B,CAAC;IACnC,CAAC;IACD,MAAM,KAAK,GAAI,MAAkC,CAAC,IAAI,CAAC,CAAC;IACxD,OAAO,mBAAmB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,0BAA0B,CAAC;AACxE,CAAC"}
package/dist/types.d.ts CHANGED
@@ -36,6 +36,18 @@ export interface Workspace {
36
36
  tier_code: TierCode;
37
37
  /** Joined Tier row. Populated by GET endpoints; absent on listing rows. */
38
38
  tier?: Tier;
39
+ /**
40
+ * Workspace member seats (issue #771). Synced from `tiers.default_seats`
41
+ * on every tier change (PRO=10, PLUS/FREE=0); `seats > 0` is the feature
42
+ * gate for workspace members. The owner never consumes a seat.
43
+ */
44
+ seats: number;
45
+ /**
46
+ * The caller's relationship to this workspace — populated by the
47
+ * workspace GET/list endpoints. `'owner'` when `owner_id` is the caller,
48
+ * otherwise the caller's `workspace_members` role.
49
+ */
50
+ member_role?: 'owner' | WorkspaceMemberRole;
39
51
  created_at: string;
40
52
  updated_at: string;
41
53
  }
@@ -67,6 +79,8 @@ export interface Tier {
67
79
  prompt_templates: boolean;
68
80
  support_access: boolean;
69
81
  tags: boolean;
82
+ /** Workspace member seats granted by this tier (synced into `workspaces.seats`). */
83
+ default_seats: number;
70
84
  created_at: string;
71
85
  updated_at: string;
72
86
  }
@@ -389,6 +403,212 @@ export interface CreateInvitationRequest {
389
403
  export interface AcceptInvitationRequest {
390
404
  token: string;
391
405
  }
406
+ /**
407
+ * Built-in workspace member roles (issue #771). Stored as `workspace_roles`
408
+ * rows carrying a `scopes TEXT[]`; these keys are the v1 built-ins. The owner
409
+ * is not a role — ownership lives on `workspaces.owner_id` and short-circuits
410
+ * every scope check.
411
+ */
412
+ export type WorkspaceMemberRole = 'member' | 'manager';
413
+ /**
414
+ * Roster row from `GET /v1/workspaces/:ws/members` (the
415
+ * `workspace_members_visible` view). The workspace owner appears as a
416
+ * synthetic row with `role: 'owner'` and `id: null` — there is no member row
417
+ * to act on, and the owner never counts against seats.
418
+ */
419
+ export interface WorkspaceMemberRow {
420
+ id: string | null;
421
+ workspace_id: string;
422
+ user_id: string;
423
+ role: 'owner' | WorkspaceMemberRole;
424
+ role_name: string;
425
+ created_at: string;
426
+ email: string | null;
427
+ }
428
+ /** Email-based invitation for workspace membership (issue #771). */
429
+ export interface WorkspaceInvitation {
430
+ id: string;
431
+ workspace_id: string;
432
+ invited_by: string | null;
433
+ email: string;
434
+ /** Role key the acceptee will receive. */
435
+ role: WorkspaceMemberRole;
436
+ token: string;
437
+ created_at: string;
438
+ accepted_at: string | null;
439
+ revoked_at: string | null;
440
+ }
441
+ /**
442
+ * Unauthenticated projection served by `GET /v1/workspace-invitations/:token`
443
+ * (the token is the credential). Deliberately narrow: no slug, no inviter id.
444
+ */
445
+ export interface WorkspaceInvitationDetail {
446
+ id: string;
447
+ email: string;
448
+ role: WorkspaceMemberRole;
449
+ accepted_at: string | null;
450
+ revoked_at: string | null;
451
+ workspace: {
452
+ id: string;
453
+ name: string;
454
+ };
455
+ }
456
+ export interface CreateWorkspaceInvitationRequest {
457
+ email: string;
458
+ role: WorkspaceMemberRole;
459
+ }
460
+ export interface UpdateWorkspaceMemberRequest {
461
+ role: WorkspaceMemberRole;
462
+ }
463
+ export interface AcceptWorkspaceInvitationRequest {
464
+ token: string;
465
+ }
466
+ /**
467
+ * Response of `POST /v1/workspace-invitations/accept` — where to send the
468
+ * user. `workspace_slug` is null only when acceptance succeeded but the
469
+ * coords lookup didn't survive serialization — clients fall back to `/`.
470
+ */
471
+ export interface AcceptWorkspaceInvitationResponse {
472
+ workspace_slug: string | null;
473
+ }
474
+ /**
475
+ * Pending invitations addressed to the caller (`GET /v1/me/invitations`,
476
+ * issue #775). Tokens are included — they're the invitee's own credential
477
+ * and feed the accept-page links. Display names are enriched server-side
478
+ * (the invitee can't see the journal/workspace rows under RLS yet).
479
+ */
480
+ export interface MyJournalInvitation {
481
+ id: string;
482
+ token: string;
483
+ created_at: string;
484
+ journal: {
485
+ name: string;
486
+ workspace_name: string;
487
+ };
488
+ }
489
+ export interface MyWorkspaceInvitation {
490
+ id: string;
491
+ token: string;
492
+ created_at: string;
493
+ role: WorkspaceMemberRole;
494
+ workspace: {
495
+ name: string;
496
+ };
497
+ }
498
+ export interface MyInvitations {
499
+ journal_invitations: MyJournalInvitation[];
500
+ workspace_invitations: MyWorkspaceInvitation[];
501
+ }
502
+ /**
503
+ * One activity event (issue #797, docs/notifications.md). The same `id` is
504
+ * shared by the workspace activity row and every recipient's notification
505
+ * copy. Events are self-contained snapshots: names/slugs/titles are copied at
506
+ * emit time so the record survives deletion of the thing it describes.
507
+ * `type` is an open string (e.g. `entry.created`) — new sources add types
508
+ * without a shared-package change; render `summary`, never switch on `type`.
509
+ */
510
+ export interface ActivityEvent {
511
+ id: string;
512
+ type: string;
513
+ scope: ActivityScope;
514
+ workspace_id: string;
515
+ journal_id: string | null;
516
+ entry_id: string | null;
517
+ actor_id: string;
518
+ actor_email: string | null;
519
+ /** Server-rendered, actor-less phrase, e.g. `created entry #42 “Fix login”`. Plain-text join of `summary_parts`. */
520
+ summary: string;
521
+ /**
522
+ * The same phrase as segments; `href` marks a web-path link (entry, journal, …).
523
+ * Absent on events emitted before #802 — render `summary` then.
524
+ */
525
+ summary_parts?: SummaryPart[] | null;
526
+ /** Web path the event links to; `null` when there is nothing to open. Not stable against slug renames. */
527
+ target_path: string | null;
528
+ /**
529
+ * Where the actor made the change: the web UI, or an agent (CLI, MCP,
530
+ * direct API — any request without the web client header, #818). Absent on
531
+ * events emitted before #818.
532
+ */
533
+ origin?: ActivityOrigin;
534
+ data: Record<string, string | number | boolean | null>;
535
+ created_at: string;
536
+ }
537
+ export type ActivityScope = 'workspace' | 'journal';
538
+ /** See `ActivityEvent.origin`. */
539
+ export type ActivityOrigin = 'web' | 'agent';
540
+ /** One segment of an activity summary; `href` (a web path) makes it a link (#802). */
541
+ export interface SummaryPart {
542
+ text: string;
543
+ href?: string;
544
+ }
545
+ /** A recipient's copy of an `ActivityEvent`, with its read state. */
546
+ export interface Notification extends ActivityEvent {
547
+ read_at: string | null;
548
+ /** Delivered at the recipient's `push` level (#805) — the web app raises a browser notification. */
549
+ push: boolean;
550
+ /** The mailbox's monotonic row cursor (same value `before` / `next_before` page by). */
551
+ seq: number;
552
+ }
553
+ /**
554
+ * `GET /v1/me/notifications` — a page plus `latest_seq`, the mailbox's highest
555
+ * `seq` regardless of filters (0 when empty). A server-owned watermark: the
556
+ * web app's browser notifications pop only rows above the value it first saw.
557
+ */
558
+ export interface NotificationPage extends ActivityPage<Notification> {
559
+ latest_seq: number;
560
+ }
561
+ /** An activity row as seen by one viewer: `notification` is null when the viewer has no copy (own action / no access then). */
562
+ export interface ActivityItem extends ActivityEvent {
563
+ notification: {
564
+ read: boolean;
565
+ } | null;
566
+ }
567
+ /** Cursor-paged list shape shared by notifications + activity listings. */
568
+ export interface ActivityPage<T> {
569
+ data: T[];
570
+ /** Pass as `before` for the next page; null when exhausted. */
571
+ next_before: number | null;
572
+ }
573
+ /** `GET /v1/me/notifications/summary` — every unread counter in one response. */
574
+ export interface NotificationSummary {
575
+ unread: number;
576
+ workspaces: Record<string, number>;
577
+ journals: Record<string, number>;
578
+ /** Distinct `target_path`s with unread notifications — drives visit-marks-read. */
579
+ unread_paths: string[];
580
+ }
581
+ /** `GET /v1/me/push-config` (#813). */
582
+ export interface PushConfig {
583
+ /** VAPID applicationServerKey (base64url); null when Web Push is not configured. */
584
+ vapid_public_key: string | null;
585
+ }
586
+ /** `GET /v1/me/push-subscriptions?endpoint=` (#817): is this device registered on the server? */
587
+ export interface PushSubscriptionStatus {
588
+ registered: boolean;
589
+ }
590
+ /** `POST /v1/me/push-subscriptions` body — the shape of `PushSubscription.toJSON()` (#813). */
591
+ export interface SavePushSubscriptionRequest {
592
+ endpoint: string;
593
+ keys: {
594
+ p256dh: string;
595
+ auth: string;
596
+ };
597
+ }
598
+ /** `POST /v1/me/notifications/read` body — exactly one selector. `read: false` only with `ids`. */
599
+ export type MarkNotificationsReadRequest = ({
600
+ ids: string[];
601
+ } | {
602
+ paths: string[];
603
+ } | {
604
+ workspace_ids: string[];
605
+ } | {
606
+ journal_id: string;
607
+ } | {
608
+ all: true;
609
+ }) & {
610
+ read?: boolean;
611
+ };
392
612
  /**
393
613
  * Prompts table row. Workspace-scoped (issue #238) with a single global
394
614
  * default row (`is_default = true`, `workspace_id = null`) seeded by the