From 52e67bf5bb45d7d47b09b20df7044af6af1dc39a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Adrian=20Or=C5=82=C3=B3w?= <adrian.orlow@fishbrain.com> Date: Tue, 24 Oct 2023 13:02:03 +0200 Subject: [PATCH] fix: models non consistent --- src/models/overviewImageLink.ts | 19 +++++++++++++++++++ src/models/overviewImageView.ts | 20 ++------------------ 2 files changed, 21 insertions(+), 18 deletions(-) create mode 100644 src/models/overviewImageLink.ts diff --git a/src/models/overviewImageLink.ts b/src/models/overviewImageLink.ts new file mode 100644 index 00000000..7c31c710 --- /dev/null +++ b/src/models/overviewImageLink.ts @@ -0,0 +1,19 @@ +import { z } from 'zod'; +import { positionSchema } from './positionSchema'; + +export const overviewImageLink = z.union([ + z.object({ + idObject: z.number(), + polygon: z.array(positionSchema), + imageLinkId: z.number(), + type: z.string(), + }), + z.object({ + idObject: z.number(), + polygon: z.array(positionSchema), + zoomLevel: z.number(), + modelPoint: positionSchema, + modelLinkId: z.number(), + type: z.string(), + }), +]); diff --git a/src/models/overviewImageView.ts b/src/models/overviewImageView.ts index 82587a89..1c1da19a 100644 --- a/src/models/overviewImageView.ts +++ b/src/models/overviewImageView.ts @@ -1,26 +1,10 @@ import { z } from 'zod'; +import { overviewImageLink } from './overviewImageLink'; export const overviewImageView = z.object({ idObject: z.number(), filename: z.string(), width: z.number(), height: z.number(), - links: z.array( - z.union([ - z.object({ - idObject: z.number(), - polygon: z.array(z.object({ x: z.number(), y: z.number() })), - imageLinkId: z.number(), - type: z.string(), - }), - z.object({ - idObject: z.number(), - polygon: z.array(z.object({ x: z.number(), y: z.number() })), - zoomLevel: z.number(), - modelPoint: z.object({ x: z.number(), y: z.number() }), - modelLinkId: z.number(), - type: z.string(), - }), - ]), - ), + links: z.array(overviewImageLink), }); -- GitLab