@buildinternet/releases-api-types 0.45.0 → 0.46.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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@buildinternet/releases-api-types",
3
- "version": "0.45.0",
3
+ "version": "0.46.0",
4
4
  "description": "Wire protocol — request/response types for the Releases registry API. Shared by web, workers, and clients.",
5
5
  "type": "module",
6
6
  "license": "MIT",
@@ -17,7 +17,7 @@
17
17
  "README.md"
18
18
  ],
19
19
  "dependencies": {
20
- "@buildinternet/releases-core": "^0.26.0",
20
+ "@buildinternet/releases-core": "^0.27.0",
21
21
  "zod": "^4.4.3"
22
22
  },
23
23
  "publishConfig": {
@@ -228,6 +228,16 @@ export const UnifiedSearchResponseSchema = z.object({
228
228
  // domain filter was applied.
229
229
  domain: z.string().optional(),
230
230
  domainStatus: z.enum(["matched", "not_found"]).optional(),
231
+ // Normalized `?category=` echo. Present only when a category filter was
232
+ // applied; the resolved canonical slug (aliases are folded to canonical).
233
+ // `categoryStatus` is always `matched` because an unknown category is a 400,
234
+ // not an empty envelope — categories are a fixed enum, unlike collections.
235
+ category: z.string().optional(),
236
+ categoryStatus: z.enum(["matched"]).optional(),
237
+ // Normalized `?collection=` echo + resolution outcome. `not_found` when the
238
+ // slug matched no collection (empty envelope, mirroring `domainStatus`).
239
+ collection: z.string().optional(),
240
+ collectionStatus: z.enum(["matched", "not_found"]).optional(),
231
241
  orgs: z.array(SearchOrgHitSchema),
232
242
  catalog: z.array(SearchCatalogHitSchema),
233
243
  sources: z.array(SearchSourceHitSchema),