From f3788b84a57575fd9fc502bf76db789f3f8c04e2 Mon Sep 17 00:00:00 2001 From: Moriz Wahl Date: Wed, 25 Jun 2025 21:21:41 +0200 Subject: [PATCH] feat(backend): all db node properties (#8635) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Wolfgang Huß --- backend/src/db/types/Category.ts | 11 +++++++++++ backend/src/db/types/Comment.ts | 13 +++++++++++++ backend/src/db/types/EmailAddress.ts | 10 ++++++++++ backend/src/db/types/Event.ts | 12 ++++++++++++ backend/src/db/types/Group.ts | 19 +++++++++++++++++++ backend/src/db/types/Image.ts | 12 ++++++++++++ backend/src/db/types/InviteCode.ts | 8 ++++++++ backend/src/db/types/Location.ts | 20 ++++++++++++++++++++ backend/src/db/types/Message.ts | 13 +++++++++++++ backend/src/db/types/Post.ts | 21 +++++++++++++++++++++ backend/src/db/types/Report.ts | 11 +++++++++++ backend/src/db/types/Tag.ts | 10 ++++++++++ 12 files changed, 160 insertions(+) create mode 100644 backend/src/db/types/Category.ts create mode 100644 backend/src/db/types/Comment.ts create mode 100644 backend/src/db/types/EmailAddress.ts create mode 100644 backend/src/db/types/Event.ts create mode 100644 backend/src/db/types/Group.ts create mode 100644 backend/src/db/types/Image.ts create mode 100644 backend/src/db/types/InviteCode.ts create mode 100644 backend/src/db/types/Location.ts create mode 100644 backend/src/db/types/Message.ts create mode 100644 backend/src/db/types/Post.ts create mode 100644 backend/src/db/types/Report.ts create mode 100644 backend/src/db/types/Tag.ts diff --git a/backend/src/db/types/Category.ts b/backend/src/db/types/Category.ts new file mode 100644 index 000000000..94ed11059 --- /dev/null +++ b/backend/src/db/types/Category.ts @@ -0,0 +1,11 @@ +import { Integer, Node } from 'neo4j-driver' + +export interface CategoryDbProperties { + createdAt: string + icon: string + id: string + name: string + slug: string +} + +export type Category = Node diff --git a/backend/src/db/types/Comment.ts b/backend/src/db/types/Comment.ts new file mode 100644 index 000000000..40263d6b5 --- /dev/null +++ b/backend/src/db/types/Comment.ts @@ -0,0 +1,13 @@ +import { Integer, Node } from 'neo4j-driver' + +export interface CommentDbProperties { + content: string + contentExcerpt: string + createdAt: string + deleted: boolean + disabled: boolean + id: string + updatedAt: string +} + +export type Comment = Node diff --git a/backend/src/db/types/EmailAddress.ts b/backend/src/db/types/EmailAddress.ts new file mode 100644 index 000000000..768b67d0b --- /dev/null +++ b/backend/src/db/types/EmailAddress.ts @@ -0,0 +1,10 @@ +import { Integer, Node } from 'neo4j-driver' + +export interface EmailAddressDbProperties { + createdAt: string + email: string + nonce: string + verifiedAt: string +} + +export type EmailAddress = Node diff --git a/backend/src/db/types/Event.ts b/backend/src/db/types/Event.ts new file mode 100644 index 000000000..c7a945c48 --- /dev/null +++ b/backend/src/db/types/Event.ts @@ -0,0 +1,12 @@ +import { Integer, Node } from 'neo4j-driver' + +import { PostDbProperties } from './Post' + +export interface EventDbProperties extends PostDbProperties { + eventIsOnline: boolean + eventLocationName: string + eventStart: string + eventVenue: string +} + +export type Event = Node diff --git a/backend/src/db/types/Group.ts b/backend/src/db/types/Group.ts new file mode 100644 index 000000000..ff6d1e5bb --- /dev/null +++ b/backend/src/db/types/Group.ts @@ -0,0 +1,19 @@ +import { Integer, Node } from 'neo4j-driver' + +export interface GroupDbProperties { + about: string + actionRadius: string + createdAt: string + deleted: boolean + description: string + descriptionExcerpt: string + disabled: boolean + groupType: string + id: string + locationName?: string + name: string + slug: string + updatedAt: string +} + +export type Group = Node diff --git a/backend/src/db/types/Image.ts b/backend/src/db/types/Image.ts new file mode 100644 index 000000000..8c4356e7c --- /dev/null +++ b/backend/src/db/types/Image.ts @@ -0,0 +1,12 @@ +import { Integer, Node } from 'neo4j-driver' + +export interface ImageDbProperties { + alt: string + aspectRatio: number + createdAt: string + sensitive: boolean + type: string + url: string +} + +export type Image = Node diff --git a/backend/src/db/types/InviteCode.ts b/backend/src/db/types/InviteCode.ts new file mode 100644 index 000000000..90f8ba4da --- /dev/null +++ b/backend/src/db/types/InviteCode.ts @@ -0,0 +1,8 @@ +import { Integer, Node } from 'neo4j-driver' + +export interface InviteCodeDbProperties { + code: string + createdAt: string +} + +export type InviteCode = Node diff --git a/backend/src/db/types/Location.ts b/backend/src/db/types/Location.ts new file mode 100644 index 000000000..cddcdc142 --- /dev/null +++ b/backend/src/db/types/Location.ts @@ -0,0 +1,20 @@ +import { Integer, Node } from 'neo4j-driver' + +export interface LocationDbProperties { + id: string + lat: number + lng: number + name: string + nameDE: string + nameEN: string + nameES: string + nameFR: string + nameIT: string + nameNL: string + namePL: string + namePT: string + nameRU: string + type: string +} + +export type Location = Node diff --git a/backend/src/db/types/Message.ts b/backend/src/db/types/Message.ts new file mode 100644 index 000000000..270cc85a6 --- /dev/null +++ b/backend/src/db/types/Message.ts @@ -0,0 +1,13 @@ +import { Integer, Node } from 'neo4j-driver' + +export interface MessageDbProperties { + content: string + createdAt: string + distributed: boolean + id: string + indexId: number + saved: boolean + seen: boolean +} + +export type Message = Node diff --git a/backend/src/db/types/Post.ts b/backend/src/db/types/Post.ts new file mode 100644 index 000000000..39d09a91d --- /dev/null +++ b/backend/src/db/types/Post.ts @@ -0,0 +1,21 @@ +import { Integer, Node } from 'neo4j-driver' + +export interface PostDbProperties { + clickedCount: number + content: string + contentExcerpt: string + createdAt: string + deleted: boolean + disabled: boolean + id: string + language: string + postType: string // this is a PostType[] in the graphql, mapped from the labels + slug: string + sortDate: string + title: string + updatedAt: string + viewedTeaserCount: number +} + +export type Post = Node +export type Article = Node diff --git a/backend/src/db/types/Report.ts b/backend/src/db/types/Report.ts new file mode 100644 index 000000000..93c526820 --- /dev/null +++ b/backend/src/db/types/Report.ts @@ -0,0 +1,11 @@ +import { Integer, Node } from 'neo4j-driver' + +export interface ReportDbProperties { + closed: boolean + createdAt: string + id: string + rule: string + updatedAt: string +} + +export type Report = Node diff --git a/backend/src/db/types/Tag.ts b/backend/src/db/types/Tag.ts new file mode 100644 index 000000000..6e6de422a --- /dev/null +++ b/backend/src/db/types/Tag.ts @@ -0,0 +1,10 @@ +import { Integer, Node } from 'neo4j-driver' + +export interface TagDbProperties { + deleted: boolean + disabled: boolean + id: string + updatedAt: string +} + +export type Tag = Node