chore: improved schema

This commit is contained in:
Morten Olsen
2025-12-10 20:45:02 +01:00
parent d02102977a
commit 5fe99b2c17
14 changed files with 870 additions and 82 deletions

View File

@@ -1,7 +1,7 @@
import { z } from 'zod';
import { queryFilterSchema } from '@morten-olsen/stash-query-dsl';
import { createListResultSchema } from '#root/utils/utils.schema.js';
import { createListResultSchema, queryDSLSchema } from '#root/utils/utils.schema.js';
const documentChunkSchema = z.object({
id: z.string(),
@@ -16,7 +16,7 @@ const documentChunkFilterSchema = z.object({
limit: z.number().default(20),
offset: z.number().default(0),
semanticText: z.string().optional(),
conditions: z.union([queryFilterSchema, z.string()]).optional(),
conditions: z.union([queryDSLSchema, queryFilterSchema]).optional(),
});
type DocumentChunkFilter = z.infer<typeof documentChunkFilterSchema>;

View File

@@ -5,4 +5,12 @@ const createListResultSchema = <T extends ZodType>(schema: T) =>
items: z.array(schema),
});
export { createListResultSchema };
const queryDSLSchema = z
.string()
.describe('Query DSL based filter')
.meta({
id: 'QueryDSLString',
examples: ["metadata.foo = 'bar'"],
});
export { createListResultSchema, queryDSLSchema };