@remit/api-http-client 0.0.17 → 0.0.18

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.18",
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,9 +2126,9 @@ 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
  */
@@ -2717,13 +2717,13 @@ export type RemitImapQuarantineResponseWritable = {
2717
2717
  };
2718
2718
 
2719
2719
  /**
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.
2720
+ * 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
2721
  */
2722
2722
  export type RemitImapThreadMessageResponseWritable = {
2723
2723
  /**
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`.
2724
+ * 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
2725
  */
2726
- category?: RemitImapMessageCategory;
2726
+ category: RemitImapMessageCategory;
2727
2727
  /**
2728
2728
  * Trust level for the From address, derived from AddressFlags at read time. Defaults to `unknown` when no Address row resolves.
2729
2729
  */
@@ -3399,7 +3399,7 @@ export type ThreadOperationsSearchThreadsData = {
3399
3399
  */
3400
3400
  senderTrust?: Array<RemitImapSenderTrust>;
3401
3401
  /**
3402
- * Filter to messages with one of these header-derived categories. Off-row criterion, resolved by in-handler enrichment over the capped window.
3402
+ * 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
3403
  */
3404
3404
  category?: Array<RemitImapMessageCategory>;
3405
3405
  /**