@remit/api-http-client 0.0.17 → 0.0.19

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.
@@ -939,7 +939,7 @@ export const systemOperationsApplySystemUpdateMutation = (options?: Partial<Opti
939
939
  export const unifiedThreadOperationsListAllThreadsQueryKey = (options?: Options<UnifiedThreadOperationsListAllThreadsData>) => createQueryKey('unifiedThreadOperationsListAllThreads', options);
940
940
 
941
941
  /**
942
- * List threads across all non-muted accounts of the caller, ordered by sentDate desc. Each row carries an attached `accountId` (derived from a mailboxId→accountId map at read time) plus the usual `senderTrust`/`category` enrichment. Served by the `byDate` LSI1 (pk = the caller's account config), so the caller can never see another account config's threads.
942
+ * List threads across all non-muted accounts of the caller, ordered by sentDate desc. Each row carries an attached `accountId` (derived from a mailboxId→accountId map at read time) plus the usual `senderTrust` enrichment; `category` is served from the ThreadMessage row. Served by the `byDate` LSI1 (pk = the caller's account config), so the caller can never see another account config's threads.
943
943
  *
944
944
  * INBOX scope: results are filtered to each account's top-level INBOX, matched by exact path `fullPath === "INBOX"` (RFC 6154 defines no Inbox special-use). By design this excludes namespaced sub-paths like `INBOX/Receipts` and non-English server primaries — the unified inbox is each account's primary INBOX, not its sub-folders. Soft-deleted rows are also excluded.
945
945
  *
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@remit/api-http-client",
3
- "version": "0.0.17",
3
+ "version": "0.0.19",
4
4
  "type": "module",
5
5
  "exports": {
6
6
  ".": "./index.ts",
package/sdk.gen.ts CHANGED
@@ -546,7 +546,7 @@ export const systemOperationsApplySystemUpdate = <ThrowOnError extends boolean =
546
546
  });
547
547
 
548
548
  /**
549
- * List threads across all non-muted accounts of the caller, ordered by sentDate desc. Each row carries an attached `accountId` (derived from a mailboxId→accountId map at read time) plus the usual `senderTrust`/`category` enrichment. Served by the `byDate` LSI1 (pk = the caller's account config), so the caller can never see another account config's threads.
549
+ * List threads across all non-muted accounts of the caller, ordered by sentDate desc. Each row carries an attached `accountId` (derived from a mailboxId→accountId map at read time) plus the usual `senderTrust` enrichment; `category` is served from the ThreadMessage row. Served by the `byDate` LSI1 (pk = the caller's account config), so the caller can never see another account config's threads.
550
550
  *
551
551
  * INBOX scope: results are filtered to each account's top-level INBOX, matched by exact path `fullPath === "INBOX"` (RFC 6154 defines no Inbox special-use). By design this excludes namespaced sub-paths like `INBOX/Receipts` and non-English server primaries — the unified inbox is each account's primary INBOX, not its sub-folders. Soft-deleted rows are also excluded.
552
552
  *
package/types.gen.ts CHANGED
@@ -963,9 +963,9 @@ export type RemitImapEnvelopeResponse = {
963
963
  */
964
964
  replyTo: Array<RemitImapEnvelopeAddressResponse>;
965
965
  /**
966
- * Header-derived category for the message. Absent for messages synced before classification rolled out.
966
+ * Header-derived category for the message. Always present: `Message.category` is NOT NULL with an `uncategorized` default, and `uncategorized` names the not-yet-classified state rather than standing for absence (issue #45).
967
967
  */
968
- category?: RemitImapMessageCategory;
968
+ category: RemitImapMessageCategory;
969
969
  /**
970
970
  * Trust level for the From address, derived from AddressFlags at read time.
971
971
  */
@@ -2060,7 +2060,7 @@ export type RemitImapTestConnectionResponse = {
2060
2060
  };
2061
2061
 
2062
2062
  /**
2063
- * Thread message item returned by list/search operations. `category` and `senderTrust` are attached at read time via batch-fetch so the inbox row can render badges without a per-row round trip.
2063
+ * Thread message item returned by list/search operations. `senderTrust` is attached at read time via batch-fetch so the inbox row can render its badge without a per-row round trip. `category` is served from the ThreadMessage row itself, which is also the row the category filter matches, so the badge and the filter cannot disagree.
2064
2064
  */
2065
2065
  export type RemitImapThreadMessageResponse = {
2066
2066
  /**
@@ -2126,13 +2126,17 @@ export type RemitImapThreadMessageResponse = {
2126
2126
  readonly createdAt: number;
2127
2127
  readonly updatedAt: number;
2128
2128
  /**
2129
- * Header-derived category for the message (from the underlying Message). Absent for messages synced before classification rolled out clients should treat this as `personal`.
2129
+ * Header-derived category for the message, served from the ThreadMessage row. Always present: the column is NOT NULL with an `uncategorized` default, and `uncategorized` is a named value for the not-yet-classified state, never a stand-in for `personal` (issue #45).
2130
2130
  */
2131
- category?: RemitImapMessageCategory;
2131
+ category: RemitImapMessageCategory;
2132
2132
  /**
2133
2133
  * Trust level for the From address, derived from AddressFlags at read time. Defaults to `unknown` when no Address row resolves.
2134
2134
  */
2135
2135
  senderTrust: RemitImapSenderTrust;
2136
+ /**
2137
+ * Whether the From address is muted, derived from AddressFlags at read time. Defaults to `false` when no Address row resolves. Muting hides the sender from the daily brief; it does not affect mailbox listings.
2138
+ */
2139
+ muted: boolean;
2136
2140
  /**
2137
2141
  * Structured sender-authenticity signal derived from DKIM headers at classification time (from the underlying Message). Absent for messages classified before this field was introduced — absence means no signal.
2138
2142
  */
@@ -2717,17 +2721,21 @@ export type RemitImapQuarantineResponseWritable = {
2717
2721
  };
2718
2722
 
2719
2723
  /**
2720
- * Thread message item returned by list/search operations. `category` and `senderTrust` are attached at read time via batch-fetch so the inbox row can render badges without a per-row round trip.
2724
+ * Thread message item returned by list/search operations. `senderTrust` is attached at read time via batch-fetch so the inbox row can render its badge without a per-row round trip. `category` is served from the ThreadMessage row itself, which is also the row the category filter matches, so the badge and the filter cannot disagree.
2721
2725
  */
2722
2726
  export type RemitImapThreadMessageResponseWritable = {
2723
2727
  /**
2724
- * Header-derived category for the message (from the underlying Message). Absent for messages synced before classification rolled out clients should treat this as `personal`.
2728
+ * Header-derived category for the message, served from the ThreadMessage row. Always present: the column is NOT NULL with an `uncategorized` default, and `uncategorized` is a named value for the not-yet-classified state, never a stand-in for `personal` (issue #45).
2725
2729
  */
2726
- category?: RemitImapMessageCategory;
2730
+ category: RemitImapMessageCategory;
2727
2731
  /**
2728
2732
  * Trust level for the From address, derived from AddressFlags at read time. Defaults to `unknown` when no Address row resolves.
2729
2733
  */
2730
2734
  senderTrust: RemitImapSenderTrust;
2735
+ /**
2736
+ * Whether the From address is muted, derived from AddressFlags at read time. Defaults to `false` when no Address row resolves. Muting hides the sender from the daily brief; it does not affect mailbox listings.
2737
+ */
2738
+ muted: boolean;
2731
2739
  /**
2732
2740
  * Structured sender-authenticity signal derived from DKIM headers at classification time (from the underlying Message). Absent for messages classified before this field was introduced — absence means no signal.
2733
2741
  */
@@ -3399,7 +3407,7 @@ export type ThreadOperationsSearchThreadsData = {
3399
3407
  */
3400
3408
  senderTrust?: Array<RemitImapSenderTrust>;
3401
3409
  /**
3402
- * Filter to messages with one of these header-derived categories. Off-row criterion, resolved by in-handler enrichment over the capped window.
3410
+ * Filter to messages with one of these header-derived categories. Applied as a SQL predicate over the whole mailbox, so a page comes back full of matches however rare the category is. `uncategorized` is one of them.
3403
3411
  */
3404
3412
  category?: Array<RemitImapMessageCategory>;
3405
3413
  /**