aboutsummaryrefslogtreecommitdiffstats
path: root/code/app/src/lib/models
diff options
context:
space:
mode:
authorivarlovlie <git@ivarlovlie.no>2022-12-09 03:57:12 +0100
committerivarlovlie <git@ivarlovlie.no>2022-12-09 03:57:12 +0100
commit4dbef3fcd7a14437d55c555cf10d50de8e50d7d1 (patch)
tree632589ecfcfb4dfddeafb71d0077257584b5e7ec /code/app/src/lib/models
parent914c75e0ceeb3e11ddd55e94bb461c26b0db5b7a (diff)
downloadgreatoffice-4dbef3fcd7a14437d55c555cf10d50de8e50d7d1.tar.xz
greatoffice-4dbef3fcd7a14437d55c555cf10d50de8e50d7d1.zip
feat: Move everything out of $lib
Diffstat (limited to 'code/app/src/lib/models')
-rw-r--r--code/app/src/lib/models/base/Customer.ts21
-rw-r--r--code/app/src/lib/models/base/CustomerContact.ts8
-rw-r--r--code/app/src/lib/models/base/CustomerEvent.ts6
-rw-r--r--code/app/src/lib/models/base/SessionData.ts5
-rw-r--r--code/app/src/lib/models/base/Tenant.ts8
-rw-r--r--code/app/src/lib/models/base/User.ts13
-rw-r--r--code/app/src/lib/models/base/UserRole.ts5
-rw-r--r--code/app/src/lib/models/internal/FormError.ts24
-rw-r--r--code/app/src/lib/models/internal/ISession.ts8
-rw-r--r--code/app/src/lib/models/internal/KnownProblem.ts10
-rw-r--r--code/app/src/lib/models/projects/Project.ts13
-rw-r--r--code/app/src/lib/models/projects/ProjectLabel.ts5
-rw-r--r--code/app/src/lib/models/projects/ProjectMember.ts10
-rw-r--r--code/app/src/lib/models/projects/ProjectMeta.ts7
-rw-r--r--code/app/src/lib/models/projects/ProjectRole.ts7
-rw-r--r--code/app/src/lib/models/projects/ProjectStatus.ts5
-rw-r--r--code/app/src/lib/models/work/WorkCategory.ts5
-rw-r--r--code/app/src/lib/models/work/WorkEntry.ts13
-rw-r--r--code/app/src/lib/models/work/WorkEntryQueryResponse.ts27
-rw-r--r--code/app/src/lib/models/work/WorkLabel.ts5
-rw-r--r--code/app/src/lib/models/work/WorkQuery.ts30
21 files changed, 0 insertions, 235 deletions
diff --git a/code/app/src/lib/models/base/Customer.ts b/code/app/src/lib/models/base/Customer.ts
deleted file mode 100644
index e44ebb6..0000000
--- a/code/app/src/lib/models/base/Customer.ts
+++ /dev/null
@@ -1,21 +0,0 @@
-import type { CustomerContact } from "./CustomerContact"
-import type { User } from "./User"
-
-export type Customer = {
- /**
- * Guid id for customer
- */
- id: string,
- /**
- * The name of the company
- */
- name: string,
- /**
- * Responsible contact in the current tenant
- */
- tenantContact: User,
- /**
- * The customers main contact
- */
- mainContact: CustomerContact,
-} \ No newline at end of file
diff --git a/code/app/src/lib/models/base/CustomerContact.ts b/code/app/src/lib/models/base/CustomerContact.ts
deleted file mode 100644
index e8abea5..0000000
--- a/code/app/src/lib/models/base/CustomerContact.ts
+++ /dev/null
@@ -1,8 +0,0 @@
-export type CustomerContact = {
- firstName: string,
- lastname: string,
- email: string,
- phone: string,
- workTitle: string,
- note: string
-} \ No newline at end of file
diff --git a/code/app/src/lib/models/base/CustomerEvent.ts b/code/app/src/lib/models/base/CustomerEvent.ts
deleted file mode 100644
index af86511..0000000
--- a/code/app/src/lib/models/base/CustomerEvent.ts
+++ /dev/null
@@ -1,6 +0,0 @@
-export type CustomerEvent = {
- /**
- * A descriptive name for the occured event
- */
- name: string,
-} \ No newline at end of file
diff --git a/code/app/src/lib/models/base/SessionData.ts b/code/app/src/lib/models/base/SessionData.ts
deleted file mode 100644
index 015cbf3..0000000
--- a/code/app/src/lib/models/base/SessionData.ts
+++ /dev/null
@@ -1,5 +0,0 @@
-export type SessionData = {
- id: string,
- username: string,
- displayName: string,
-} \ No newline at end of file
diff --git a/code/app/src/lib/models/base/Tenant.ts b/code/app/src/lib/models/base/Tenant.ts
deleted file mode 100644
index 983122b..0000000
--- a/code/app/src/lib/models/base/Tenant.ts
+++ /dev/null
@@ -1,8 +0,0 @@
-import type { User } from "./User"
-
-export type Tenant = {
- id: string,
- name: string,
- description: string,
- masterUser: User,
-} \ No newline at end of file
diff --git a/code/app/src/lib/models/base/User.ts b/code/app/src/lib/models/base/User.ts
deleted file mode 100644
index 371c38e..0000000
--- a/code/app/src/lib/models/base/User.ts
+++ /dev/null
@@ -1,13 +0,0 @@
-import type { UserRole } from "./UserRole"
-
-export type User = {
- /**
- * Guid id for user
- */
- id: string,
- firstName: string,
- lastName: string,
- role: UserRole,
- username: string,
- email: string
-} \ No newline at end of file
diff --git a/code/app/src/lib/models/base/UserRole.ts b/code/app/src/lib/models/base/UserRole.ts
deleted file mode 100644
index ec32852..0000000
--- a/code/app/src/lib/models/base/UserRole.ts
+++ /dev/null
@@ -1,5 +0,0 @@
-export enum UserRole {
- REGULAR = "reg",
- ADMINISTRATOR = "adm",
- OWNER = "own"
-} \ No newline at end of file
diff --git a/code/app/src/lib/models/internal/FormError.ts b/code/app/src/lib/models/internal/FormError.ts
deleted file mode 100644
index f6d8978..0000000
--- a/code/app/src/lib/models/internal/FormError.ts
+++ /dev/null
@@ -1,24 +0,0 @@
-import type { KnownProblem } from "./KnownProblem";
-
-export class FormError {
- title: string;
- subtitle: string;
- constructor(title: string = "", subtitle: string = "") {
- this.title = title;
- this.title = subtitle;
- }
-
- set(title: string = "", subtitle: string = "") {
- this.title = title;
- this.subtitle = subtitle;
- }
-
- set_from_known_problem(knownProblem: KnownProblem) {
- this.title = knownProblem.title ?? "";
- this.subtitle = knownProblem.subtitle ?? "";
- }
-
- has_error() {
- return this.title?.length > 0 || this.subtitle?.length > 0;
- }
-} \ No newline at end of file
diff --git a/code/app/src/lib/models/internal/ISession.ts b/code/app/src/lib/models/internal/ISession.ts
deleted file mode 100644
index a452e20..0000000
--- a/code/app/src/lib/models/internal/ISession.ts
+++ /dev/null
@@ -1,8 +0,0 @@
-export type Session = {
- profile: {
- username: string,
- displayName: string,
- id: string,
- },
- lastChecked: number,
-} \ No newline at end of file
diff --git a/code/app/src/lib/models/internal/KnownProblem.ts b/code/app/src/lib/models/internal/KnownProblem.ts
deleted file mode 100644
index b6923d9..0000000
--- a/code/app/src/lib/models/internal/KnownProblem.ts
+++ /dev/null
@@ -1,10 +0,0 @@
-export type KnownProblem = {
- title: string,
- subtitle: string,
- errors: Record<string, string[]>,
- traceId: string,
-}
-
-export function is_known_problem(response: Response): boolean {
- return response.headers.has("X-IsKnownProblem");
-} \ No newline at end of file
diff --git a/code/app/src/lib/models/projects/Project.ts b/code/app/src/lib/models/projects/Project.ts
deleted file mode 100644
index f265e67..0000000
--- a/code/app/src/lib/models/projects/Project.ts
+++ /dev/null
@@ -1,13 +0,0 @@
-import type { Temporal } from "temporal-polyfill"
-import type { ProjectMember } from "./ProjectMember"
-import type { ProjectStatus } from "./ProjectStatus"
-
-export type Project = {
- id: string,
- name: string,
- description?: string,
- start: Temporal.PlainDate,
- stop?: Temporal.PlainDate,
- members: Array<ProjectMember>,
- status: ProjectStatus
-} \ No newline at end of file
diff --git a/code/app/src/lib/models/projects/ProjectLabel.ts b/code/app/src/lib/models/projects/ProjectLabel.ts
deleted file mode 100644
index 59aa9d5..0000000
--- a/code/app/src/lib/models/projects/ProjectLabel.ts
+++ /dev/null
@@ -1,5 +0,0 @@
-export type ProjectLabel = {
- id: string,
- name: string,
- color: string
-} \ No newline at end of file
diff --git a/code/app/src/lib/models/projects/ProjectMember.ts b/code/app/src/lib/models/projects/ProjectMember.ts
deleted file mode 100644
index de348ef..0000000
--- a/code/app/src/lib/models/projects/ProjectMember.ts
+++ /dev/null
@@ -1,10 +0,0 @@
-import type { ProjectRole } from "./ProjectRole"
-
-export type ProjectMember = {
- id: string,
- name: string,
- role: ProjectRole,
- email: string,
- userId?: string,
- customerId?: string
-} \ No newline at end of file
diff --git a/code/app/src/lib/models/projects/ProjectMeta.ts b/code/app/src/lib/models/projects/ProjectMeta.ts
deleted file mode 100644
index c583b47..0000000
--- a/code/app/src/lib/models/projects/ProjectMeta.ts
+++ /dev/null
@@ -1,7 +0,0 @@
-import type { Temporal } from "temporal-polyfill"
-import type { User } from "../base/User"
-
-export type ProjectMeta = {
- created: Temporal.PlainDateTime,
- createdBy: User,
-} \ No newline at end of file
diff --git a/code/app/src/lib/models/projects/ProjectRole.ts b/code/app/src/lib/models/projects/ProjectRole.ts
deleted file mode 100644
index 0fa2347..0000000
--- a/code/app/src/lib/models/projects/ProjectRole.ts
+++ /dev/null
@@ -1,7 +0,0 @@
-export enum ProjectRole {
- EXTERNAL = "ext",
- INTERNAL = "int",
- RESOURCE = "res",
- MANAGER = "man",
- OWNER = "own"
-} \ No newline at end of file
diff --git a/code/app/src/lib/models/projects/ProjectStatus.ts b/code/app/src/lib/models/projects/ProjectStatus.ts
deleted file mode 100644
index 2df4b88..0000000
--- a/code/app/src/lib/models/projects/ProjectStatus.ts
+++ /dev/null
@@ -1,5 +0,0 @@
-export enum ProjectStatus {
- ACTIVE = "act",
- EXPIRED = "exp",
- IDLE = "idl"
-} \ No newline at end of file
diff --git a/code/app/src/lib/models/work/WorkCategory.ts b/code/app/src/lib/models/work/WorkCategory.ts
deleted file mode 100644
index 7dd85d5..0000000
--- a/code/app/src/lib/models/work/WorkCategory.ts
+++ /dev/null
@@ -1,5 +0,0 @@
-export type WorkCategory = {
- id: string,
- name: string,
- color: string
-}
diff --git a/code/app/src/lib/models/work/WorkEntry.ts b/code/app/src/lib/models/work/WorkEntry.ts
deleted file mode 100644
index 2108b88..0000000
--- a/code/app/src/lib/models/work/WorkEntry.ts
+++ /dev/null
@@ -1,13 +0,0 @@
-import type { WorkLabel } from "./WorkLabel";
-import type { WorkCategory } from "./WorkCategory";
-import type { Project } from "../projects/Project";
-
-export type WorkEntry = {
- id: string,
- start: string,
- stop: string,
- description: string,
- labels?: Array<WorkLabel>,
- category?: WorkCategory,
- project?: Project
-}
diff --git a/code/app/src/lib/models/work/WorkEntryQueryResponse.ts b/code/app/src/lib/models/work/WorkEntryQueryResponse.ts
deleted file mode 100644
index a6974f1..0000000
--- a/code/app/src/lib/models/work/WorkEntryQueryResponse.ts
+++ /dev/null
@@ -1,27 +0,0 @@
-import type { WorkCategory } from "./WorkCategory";
-import type { WorkLabel } from "./WorkLabel";
-import type { Temporal } from "temporal-polyfill";
-
-export interface WorkEntryQueryResponse {
- duration: WorkEntryQueryDuration,
- categories?: Array<WorkCategory>,
- labels?: Array<WorkLabel>,
- dateRange?: WorkEntryQueryDateRange,
- specificDate?: Temporal.PlainDateTime
- page: number,
- pageSize: number
-}
-
-export interface WorkEntryQueryDateRange {
- from: Temporal.PlainDateTime,
- to: Temporal.PlainDateTime
-}
-
-export enum WorkEntryQueryDuration {
- TODAY = 0,
- THIS_WEEK = 1,
- THIS_MONTH = 2,
- THIS_YEAR = 3,
- SPECIFIC_DATE = 4,
- DATE_RANGE = 5,
-}
diff --git a/code/app/src/lib/models/work/WorkLabel.ts b/code/app/src/lib/models/work/WorkLabel.ts
deleted file mode 100644
index f7e2795..0000000
--- a/code/app/src/lib/models/work/WorkLabel.ts
+++ /dev/null
@@ -1,5 +0,0 @@
-export interface WorkLabel {
- id?: string,
- name?: string,
- color?: string
-}
diff --git a/code/app/src/lib/models/work/WorkQuery.ts b/code/app/src/lib/models/work/WorkQuery.ts
deleted file mode 100644
index bccc589..0000000
--- a/code/app/src/lib/models/work/WorkQuery.ts
+++ /dev/null
@@ -1,30 +0,0 @@
-import type { HourEntry } from "./WorkEntry";
-import type { IValidationResult } from "../internal/IValidationResult";
-import ValidationResult from "../internal/IValidationResult";
-
-export interface IWorkQuery {
- results: Array<HourEntry>,
- page: number,
- pageSize: number,
- totalRecords: number,
- totalPageCount: number,
- is_valid: Function
-}
-
-export class WorkQuery implements IWorkQuery {
- results: HourEntry[];
- page: number;
- pageSize: number;
- totalRecords: number;
- totalPageCount: number;
-
- is_valid(): IValidationResult {
- const result = new ValidationResult();
- if (this.page < 0) {
- result.add_error("page", {
- title: "Page cannot be less than zero",
- })
- }
- return result;
- }
-}