evo360-types 1.1.15 → 1.1.17

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.
Files changed (42) hide show
  1. package/dist/apps/evo-calendar/zod-schemas.ts +27 -0
  2. package/dist/apps/evo-core/zod-schemas.ts +7 -0
  3. package/dist/apps/evo-meeting/zod-schemas.ts +56 -0
  4. package/dist/apps/evo-people/zod-schemas.ts +84 -0
  5. package/dist/apps/evo-survey/zod-schemas.ts +16 -0
  6. package/dist/apps/evo-task/zod-schemas.ts +11 -0
  7. package/dist/apps/evo-tenant/zod-schemas.ts +5 -0
  8. package/dist/apps/shared/zod-schemas.ts +19 -0
  9. package/dist/index.d.ts +11 -8
  10. package/dist/index.js +8 -8
  11. package/dist/index.ts +19 -0
  12. package/dist/types/evo-calendar/fb_collections.d.ts +5 -2
  13. package/dist/types/evo-calendar/index.d.ts +48 -37
  14. package/dist/types/evo-core/index.d.ts +37 -30
  15. package/dist/types/evo-meeting/fb_collections.d.ts +5 -2
  16. package/dist/types/evo-meeting/index.d.ts +55 -38
  17. package/dist/types/evo-people/fb_collections.d.ts +8 -5
  18. package/dist/types/evo-people/index.d.ts +81 -67
  19. package/dist/types/evo-survey/fb_collections.d.ts +12 -7
  20. package/dist/types/evo-survey/index.d.ts +128 -102
  21. package/dist/types/evo-task/fb_collections.d.ts +5 -2
  22. package/dist/types/evo-task/index.d.ts +35 -22
  23. package/dist/types/evo-tenant/fb_collections.d.ts +2 -1
  24. package/dist/types/evo-tenant/index.d.ts +19 -14
  25. package/dist/types/shared/fb_collections.d.ts +14 -5
  26. package/dist/types/shared/index.d.ts +24 -15
  27. package/package.json +3 -3
  28. package/dist/types/evo-calendar/fb_collections.js +0 -7
  29. package/dist/types/evo-calendar/index.js +0 -31
  30. package/dist/types/evo-core/index.js +0 -2
  31. package/dist/types/evo-meeting/fb_collections.js +0 -7
  32. package/dist/types/evo-meeting/index.js +0 -26
  33. package/dist/types/evo-people/fb_collections.js +0 -10
  34. package/dist/types/evo-people/index.js +0 -24
  35. package/dist/types/evo-survey/fb_collections.js +0 -13
  36. package/dist/types/evo-survey/index.js +0 -65
  37. package/dist/types/evo-task/fb_collections.js +0 -7
  38. package/dist/types/evo-task/index.js +0 -32
  39. package/dist/types/evo-tenant/fb_collections.js +0 -5
  40. package/dist/types/evo-tenant/index.js +0 -29
  41. package/dist/types/shared/fb_collections.js +0 -13
  42. package/dist/types/shared/index.js +0 -17
@@ -0,0 +1,27 @@
1
+ import { z } from "zod";
2
+ import { zFireDocSchema, zTagSchema } from "../shared/zod-schemas";
3
+
4
+ // Enum for Event Instance Status
5
+ export const zEventStatusSchema = z.enum([
6
+ "scheduled",
7
+ "completed",
8
+ "cancelled",
9
+ ]);
10
+
11
+ export const zEventTypeSchema = z.enum([
12
+ "event",
13
+ "meeting",
14
+ "workshop",
15
+ "other",
16
+ ]);
17
+
18
+ export const zEventSchema = zFireDocSchema // Extend from FireDocSchema
19
+ .extend({
20
+ title: z.string(),
21
+ description: z.string().optional(),
22
+ creatorName: z.string(),
23
+ creatorRef: z.any(),
24
+ eventType: zEventTypeSchema,
25
+ eventStatus: zEventStatusSchema,
26
+ tags: z.array(zTagSchema).optional(),
27
+ });
@@ -0,0 +1,7 @@
1
+ import { z } from "zod";
2
+
3
+ export const zActionArgsSchema = z.object({
4
+ old_values: z.record(z.any()).optional(),
5
+ new_values: z.record(z.any()).optional(),
6
+ deleted_at: z.date().optional(),
7
+ });
@@ -0,0 +1,56 @@
1
+ import { z } from "zod";
2
+ import {
3
+ zTaskPrioritySchema,
4
+ zTaskStatusSchema,
5
+ } from "../evo-task/zod-schemas";
6
+ import { zFireDocSchema, zTagSchema } from "../shared/zod-schemas";
7
+
8
+ // Enum for Meeting Types
9
+ export const zMeetingTypeSchema = z.enum([
10
+ "regular",
11
+ "oneonone",
12
+ "feedback",
13
+ "presentation",
14
+ "other",
15
+ ]);
16
+
17
+ export const zMeetingEventSchema = z.object({
18
+ eventRef: z.any(),
19
+ participantNames: z.array(z.string()).min(1).max(50),
20
+ participantRefs: z.array(z.any()).min(1).max(50),
21
+ startDate: z.date(),
22
+ endDate: z.date().optional(),
23
+ });
24
+
25
+ export const zMeetingTaskSchema = z.object({
26
+ taskRef: z.any(),
27
+ title: z.string(),
28
+ status: zTaskStatusSchema,
29
+ priority: zTaskPrioritySchema.optional(),
30
+ assigneeName: z.string().optional(),
31
+ });
32
+
33
+ export const zMeetingTalkingPointSchema = z.object({
34
+ templateRef: z.any(),
35
+ title: z.string(),
36
+ description: z.string().optional(),
37
+ tags: z.array(zTagSchema).optional(),
38
+ discussed: z.boolean(),
39
+ notes: z.string().optional(),
40
+ assigneeName: z.string().optional(),
41
+ assigneeRef: z.any(),
42
+ });
43
+
44
+ export const zMeetingSchema = zFireDocSchema // Extend from FireDocSchema
45
+ .extend({
46
+ title: z.string(),
47
+ description: z.string().optional(),
48
+ creatorName: z.string(),
49
+ creatorRef: z.any(),
50
+ event: zMeetingEventSchema,
51
+ type: zMeetingTypeSchema,
52
+ tasks: z.array(zMeetingTaskSchema).optional(),
53
+ talkingPoints: z.array(zMeetingTalkingPointSchema).optional(),
54
+ tags: z.array(zTagSchema).optional(),
55
+ })
56
+ .catchall(z.unknown());
@@ -0,0 +1,84 @@
1
+ import { z } from "zod";
2
+ import { zFireDocSchema, zTagSchema } from "../shared/zod-schemas";
3
+
4
+ export const zProfileSchema = zFireDocSchema
5
+ .extend({
6
+ display_name: z.string().min(1).max(255),
7
+ last_name: z.string().max(255).nullable().optional(),
8
+ first_name: z.string().max(255).nullable(),
9
+ gender: z.string().max(255).nullable().optional(),
10
+ birthdate: z.date().nullable().optional(),
11
+ photo_ref: z.string().max(255).nullable().optional(),
12
+ photo_url: z.string().url().nullable().optional(),
13
+ })
14
+ .passthrough();
15
+
16
+ export const zEmployeeStatusSchema = z.enum(["active", "inactive", "draft"]);
17
+
18
+ export const zEmployeeSchema = zProfileSchema // Extend from ProfileSchema
19
+ .extend({
20
+ employee_id: z.string().nullable().optional(),
21
+ type: z.string().nullable().optional(),
22
+ job_title: z.string().max(255).nullable().optional(),
23
+ status: zEmployeeStatusSchema,
24
+ company_name: z.string().max(255).nullable().optional(),
25
+ companyRef: z.any(),
26
+ date_joining: z.date().nullable().optional(),
27
+ reporting_to_name: z.string().max(255).nullable().optional(),
28
+ reporting_toRef: z.any(),
29
+ department_name: z.string().max(255).nullable().optional(),
30
+ departmentRef: z.any(),
31
+ office_name: z.string().max(255).nullable().optional(),
32
+ officeRef: z.any(),
33
+ work_email: z.string().max(255).nullable().optional(),
34
+ work_phone: z.string().max(255).nullable().optional(),
35
+ work_mobile: z.string().max(255).nullable().optional(),
36
+ tags: z.array(zTagSchema).optional(),
37
+ userRef: z.any(),
38
+ })
39
+ .passthrough();
40
+
41
+ export const zDepartmentSchema = zFireDocSchema // Extend from FireDocSchema
42
+ .extend({
43
+ code: z.string().min(1).max(10),
44
+ name: z.string().min(1).max(255),
45
+ lead_name: z.string().max(255).nullable().optional(),
46
+ leadRef: z.any(),
47
+ parent_department_name: z.string().max(255).nullable().optional(),
48
+ parent_departmentRef: z.any(),
49
+ employee_counters: z.any().optional(),
50
+ tags: z.array(zTagSchema).optional(),
51
+ })
52
+ .passthrough();
53
+
54
+ export const zOfficeSchema = zFireDocSchema // Extend from FireDocSchema
55
+ .extend({
56
+ code: z.string().min(1).max(255),
57
+ name: z.string().min(1).max(255),
58
+ timezone: z.string().nullable().optional(),
59
+ company_name: z.string().nullable().optional(),
60
+ companyRef: z.any(),
61
+ lead_name: z.string().max(255).nullable().optional(),
62
+ leadRef: z.any(),
63
+ address_line1: z.string().max(255).optional(),
64
+ address_line2: z.string().max(255).optional(),
65
+ address_city: z.string().max(255).optional(),
66
+ address_state: z.string().max(255).optional(),
67
+ address_zip: z.string().max(255).optional(),
68
+ address_country: z.string().max(255).optional(),
69
+ address_geo: z.any().optional(),
70
+ employee_counters: z.any().optional(),
71
+ tags: z.array(zTagSchema).optional(),
72
+ })
73
+ .passthrough();
74
+
75
+ export const zCompanySchema = zFireDocSchema // Extend from FireDocSchema
76
+ .extend({
77
+ code: z.string().min(1).max(10),
78
+ name: z.string().min(1).max(255),
79
+ lead_name: z.string().max(255).nullable().optional(),
80
+ leadRef: z.any(),
81
+ employee_counters: z.any().optional(), // mark as optional and use z.any() to skip validation
82
+ tags: z.array(zTagSchema).optional(),
83
+ })
84
+ .passthrough(); // allow unknown keys
@@ -0,0 +1,16 @@
1
+ import { z } from "zod";
2
+
3
+ export const zSurveyPermissionSchema = z.enum(["private", "company", "public"]);
4
+
5
+ export const zSurveyTypeSchema = z.enum(["360", "general"]);
6
+
7
+ export const zSurveyStatusSchema = z.enum(["draft", "ready", "archived"]);
8
+
9
+ //DeploymentTypes
10
+ export const zSurveyDeploymentStatusSchema = z.enum([
11
+ "draft",
12
+ "open",
13
+ "closed",
14
+ "in_progress",
15
+ "paused",
16
+ ]);
@@ -0,0 +1,11 @@
1
+ import { z } from "zod";
2
+
3
+ export const zTaskStatusSchema = z.enum([
4
+ "not_started",
5
+ "in_progress",
6
+ "completed",
7
+ "cancelled",
8
+ "on_hold",
9
+ ]);
10
+
11
+ export const zTaskPrioritySchema = z.enum(["low", "medium", "high"]);
@@ -0,0 +1,5 @@
1
+ import { z } from "zod";
2
+
3
+ export const zTenantLanguageSchema = z.enum(["ptBR", "en"]);
4
+
5
+ export const zTenantStatusSchema = z.enum(["draft", "published", "archived"]);
@@ -0,0 +1,19 @@
1
+ import { z } from "zod";
2
+
3
+ // Custom validation for FirestoreDocumentReference
4
+ export const zFireDocSchema = z.object({
5
+ id: z.string(),
6
+ ref: z.any(),
7
+ tenant: z.string(),
8
+ model_ver: z.number().optional(),
9
+ created_at: z.date().nullable().optional(),
10
+ updated_at: z.date().nullable().optional(),
11
+ deleted_at: z.date().nullable().optional(),
12
+ });
13
+
14
+ // Custom validation for ITag
15
+ export const zTagSchema = z.object({
16
+ name: z.string(),
17
+ color: z.string().optional(),
18
+ hidden: z.boolean(),
19
+ });
package/dist/index.d.ts CHANGED
@@ -1,11 +1,14 @@
1
- export * from "./types/shared/index";
2
- export * from "./types/evo-core/index";
3
- export * from "./types/evo-tenant/index";
4
- export * from "./types/evo-people/index";
5
- export * from "./types/evo-calendar/index";
6
- export * from "./types/evo-task/index";
7
- export * from "./types/evo-survey/index";
8
- export * from "./types/evo-meeting/index";
1
+ // @evo360/types/index.ts
2
+ export * from "./types/shared";
3
+ export * from "./types/evo-core";
4
+ export * from "./types/evo-tenant";
5
+ export * from "./types/evo-people";
6
+ export * from "./types/evo-calendar";
7
+ export * from "./types/evo-task";
8
+ export * from "./types/evo-survey";
9
+ export * from "./types/evo-meeting";
10
+
11
+ // zod schemas
9
12
  export * from "./apps/shared/zod-schemas";
10
13
  export * from "./apps/evo-core/zod-schemas";
11
14
  export * from "./apps/evo-tenant/zod-schemas";
package/dist/index.js CHANGED
@@ -15,14 +15,14 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  // @evo360/types/index.ts
18
- __exportStar(require("./types/shared/index"), exports);
19
- __exportStar(require("./types/evo-core/index"), exports);
20
- __exportStar(require("./types/evo-tenant/index"), exports);
21
- __exportStar(require("./types/evo-people/index"), exports);
22
- __exportStar(require("./types/evo-calendar/index"), exports);
23
- __exportStar(require("./types/evo-task/index"), exports);
24
- __exportStar(require("./types/evo-survey/index"), exports);
25
- __exportStar(require("./types/evo-meeting/index"), exports);
18
+ __exportStar(require("./types/shared"), exports);
19
+ __exportStar(require("./types/evo-core"), exports);
20
+ __exportStar(require("./types/evo-tenant"), exports);
21
+ __exportStar(require("./types/evo-people"), exports);
22
+ __exportStar(require("./types/evo-calendar"), exports);
23
+ __exportStar(require("./types/evo-task"), exports);
24
+ __exportStar(require("./types/evo-survey"), exports);
25
+ __exportStar(require("./types/evo-meeting"), exports);
26
26
  // zod schemas
27
27
  __exportStar(require("./apps/shared/zod-schemas"), exports);
28
28
  __exportStar(require("./apps/evo-core/zod-schemas"), exports);
package/dist/index.ts ADDED
@@ -0,0 +1,19 @@
1
+ // @evo360/types/index.ts
2
+ export * from "./types/shared";
3
+ export * from "./types/evo-core";
4
+ export * from "./types/evo-tenant";
5
+ export * from "./types/evo-people";
6
+ export * from "./types/evo-calendar";
7
+ export * from "./types/evo-task";
8
+ export * from "./types/evo-survey";
9
+ export * from "./types/evo-meeting";
10
+
11
+ // zod schemas
12
+ export * from "./apps/shared/zod-schemas";
13
+ export * from "./apps/evo-core/zod-schemas";
14
+ export * from "./apps/evo-tenant/zod-schemas";
15
+ export * from "./apps/evo-people/zod-schemas";
16
+ export * from "./apps/evo-calendar/zod-schemas";
17
+ export * from "./apps/evo-task/zod-schemas";
18
+ export * from "./apps/evo-survey/zod-schemas";
19
+ export * from "./apps/evo-meeting/zod-schemas";
@@ -1,2 +1,5 @@
1
- export declare const EVO_CALENDAR_APP = "evo-calendar";
2
- export declare const EVENTS_COLLECTION = "events";
1
+ //EVO Calendar Application Doc
2
+ export const EVO_CALENDAR_APP = "evo-calendar";
3
+
4
+ //Calendar collection
5
+ export const EVENTS_COLLECTION = "events";
@@ -1,50 +1,61 @@
1
1
  export * from "./fb_collections";
2
2
  import { FirestoreDocumentReference, IFireDoc, ITag } from "../shared";
3
3
  import { MeetingType } from "../evo-meeting";
4
+
5
+ // ----- CalendarTypes
6
+ // Enum for Event Instance Status
4
7
  export type EventStatus = "scheduled" | "completed" | "cancelled";
5
- export declare enum IEventStatus {
6
- Scheduled = "scheduled",
7
- Completed = "completed",
8
- Cancelled = "cancelled"
8
+ export enum IEventStatus {
9
+ Scheduled = "scheduled", // The event is scheduled and upcoming
10
+ Completed = "completed", // The event has been completed
11
+ Cancelled = "cancelled", // The event has been cancelled
9
12
  }
13
+
14
+ // Enum for Event Types
10
15
  export type EventType = "event" | "meeting" | "workshop" | "other";
11
- export declare enum IEventType {
12
- Event = "event",
13
- Meeting = "meeting",
14
- Workshop = "workshop",
15
- Other = "other"
16
+ export enum IEventType {
17
+ Event = "event", // A general event type
18
+ Meeting = "meeting", // A meeting event
19
+ Workshop = "workshop", // A workshop event
20
+ Other = "other", // Any other type of event
16
21
  }
22
+
23
+ // Interface for Meeting within a Event (meetingTasks)
17
24
  export interface IEventMeeting {
18
- meetingRef?: FirestoreDocumentReference;
19
- type: MeetingType;
20
- readonly task_count?: number;
21
- readonly talkingPoints_count?: number;
22
- tags?: ITag[];
25
+ meetingRef?: FirestoreDocumentReference; // Reference to the original task
26
+ type: MeetingType; // Type of meeting
27
+ readonly task_count?: number;
28
+ readonly talkingPoints_count?: number;
29
+ tags?: ITag[];
23
30
  }
31
+
32
+ // Interface for Recurring Events (recurringEvents)
24
33
  export interface IRecurringEvent extends IFireDoc {
25
- title: string;
26
- description?: string;
27
- creatorName: string;
28
- creatorRef?: FirestoreDocumentReference;
29
- participants: string[];
30
- startDate: Date;
31
- endDate?: Date;
32
- type: EventType;
33
- rrule: string;
34
- exceptions: string[];
34
+ title: string; // Title of the meeting
35
+ description?: string; // Optional description of the meeting
36
+ creatorName: string; // Name of the user who created the event
37
+ creatorRef?: FirestoreDocumentReference; // reference to the user who created the event
38
+ participants: string[]; // List of participant IDs
39
+ startDate: Date; // Start date and time of the first meeting
40
+ endDate?: Date; // Optional end date and time of the recurring meeting
41
+ type: EventType; // Type of event
42
+ rrule: string; // Recurrence rule in RRULE format
43
+ exceptions: string[]; // List of instance IDs that represent exceptions
35
44
  }
45
+
46
+ // Interface for Event Instances (eventInstances)
36
47
  export interface IEvent extends IFireDoc {
37
- recurringRef?: FirestoreDocumentReference;
38
- title: string;
39
- description?: string;
40
- creatorName: string;
41
- creatorRef?: FirestoreDocumentReference;
42
- participantNames?: string[];
43
- participantRefs?: FirestoreDocumentReference[];
44
- startDate: Date;
45
- endDate?: Date;
46
- type: EventType;
47
- tags?: ITag[];
48
- meeting?: IEventMeeting;
49
- status: EventStatus;
48
+ recurringRef?: FirestoreDocumentReference; // Reference to the recurring event rule (optional)
49
+ title: string; // Title of the event
50
+ description?: string; // Optional description of the event
51
+ creatorName: string; // Name of the user who created the event
52
+ creatorRef?: FirestoreDocumentReference; // reference to the user who created the event
53
+ participantNames?: string[]; // List of participant names
54
+ participantRefs?: FirestoreDocumentReference[]; // List of participant references
55
+ startDate: Date; // Start date and time of the event
56
+ endDate?: Date; // Optional end date and time of the event
57
+ type: EventType; // Type of event
58
+ tags?: ITag[];
59
+ meeting?: IEventMeeting;
60
+ status: EventStatus; // Status of the event
50
61
  }
@@ -1,41 +1,48 @@
1
1
  import { FirestoreDocumentReference, IFireDoc } from "../shared";
2
+
3
+ //UserTypes
2
4
  export interface IUserSpecialRoles {
3
- is_admin: boolean;
4
- is_sys_admin: boolean;
5
+ is_admin: boolean;
6
+ is_sys_admin: boolean;
5
7
  }
8
+
6
9
  export interface IUser extends IUserSpecialRoles, IFireDoc {
7
- display_name: string;
8
- email: string;
9
- email_verified?: string;
10
- full_name: string;
11
- last_access: Date;
12
- member_since: Date;
13
- mobile_number?: string;
14
- mobile_number_verified?: boolean;
15
- phone_number?: null | string;
16
- picture_url?: null | string;
17
- role: number;
18
- tenantRef?: FirestoreDocumentReference | null;
19
- tenants?: string[];
20
- sid?: null | string;
10
+ display_name: string;
11
+ email: string;
12
+ email_verified?: string;
13
+ full_name: string;
14
+ last_access: Date;
15
+ member_since: Date;
16
+ mobile_number?: string;
17
+ mobile_number_verified?: boolean;
18
+ phone_number?: null | string;
19
+ picture_url?: null | string;
20
+ role: number;
21
+ tenantRef?: FirestoreDocumentReference | null;
22
+ tenants?: string[];
23
+ sid?: null | string;
21
24
  }
25
+
26
+ //AuthTypes
22
27
  export interface ILogin {
23
- id: string;
24
- user?: FirestoreDocumentReference;
25
- displayname?: string | null;
26
- email?: string | null;
27
- emailverif?: false | boolean;
28
- providerId?: string | null;
28
+ id: string;
29
+ user?: FirestoreDocumentReference;
30
+ displayname?: string | null;
31
+ email?: string | null;
32
+ emailverif?: false | boolean;
33
+ providerId?: string | null;
29
34
  }
35
+
30
36
  export interface IAction {
31
- code: number;
32
- action: string;
33
- created_at: Date;
34
- args?: IActionArgs | string | unknown | null;
35
- user?: FirestoreDocumentReference;
37
+ code: number;
38
+ action: string;
39
+ created_at: Date;
40
+ args?: IActionArgs | string | unknown | null;
41
+ user?: FirestoreDocumentReference;
36
42
  }
43
+
37
44
  export interface IActionArgs {
38
- old_values?: Record<string, any>;
39
- new_values?: Record<string, any>;
40
- deleted_at?: Date;
45
+ old_values?: Record<string, any>;
46
+ new_values?: Record<string, any>;
47
+ deleted_at?: Date;
41
48
  }
@@ -1,2 +1,5 @@
1
- export declare const EVO_MEETING_APP = "evo-meeting";
2
- export declare const MEETINGS_COLLECTION = "meetings";
1
+ //EVO Meeting Application Doc
2
+ export const EVO_MEETING_APP = "evo-meeting";
3
+
4
+ //meetings collection
5
+ export const MEETINGS_COLLECTION = "meetings";
@@ -1,52 +1,69 @@
1
1
  export * from "./fb_collections";
2
2
  import { FirestoreDocumentReference, IFireDoc, ITag } from "../shared";
3
3
  import { TaskPriority, TaskStatus } from "../evo-task";
4
- export type MeetingType = "regular" | "oneonone" | "feedback" | "presentation" | "other";
5
- export declare enum IMeetingType {
6
- Regular = "regular",
7
- OneOnOne = "oneonone",
8
- Feedback = "feedback",
9
- Presentation = "presentation",
10
- Other = "other"
4
+
5
+ // ----- MeetingTypes
6
+ export type MeetingType =
7
+ | "regular"
8
+ | "oneonone"
9
+ | "feedback"
10
+ | "presentation"
11
+ | "other";
12
+ export enum IMeetingType {
13
+ Regular = "regular", // A regular meeting
14
+ OneOnOne = "oneonone", // A one-on-one meeting
15
+ Feedback = "feedback", // A feedback session
16
+ Presentation = "presentation", // A presentation meeting
17
+ Other = "other", // Any other type of meeting
11
18
  }
19
+
20
+ // Interface for Event within a Meeting (meetingEvent)
12
21
  export interface IMeetingEvent {
13
- eventRef?: FirestoreDocumentReference;
14
- participantNames: string[];
15
- participantRefs?: FirestoreDocumentReference[];
16
- startDate: Date;
17
- endDate?: Date;
22
+ eventRef?: FirestoreDocumentReference; // Reference to the original event
23
+ participantNames: string[]; // List of participant names
24
+ participantRefs?: FirestoreDocumentReference[]; // List of participant references
25
+ startDate: Date; // Start date and time of the event
26
+ endDate?: Date; // Optional end date and time of the event
18
27
  }
28
+
29
+ // Interface for Tasks within a Meeting (meetingTasks)
19
30
  export interface IMeetingTask {
20
- taskRef?: FirestoreDocumentReference;
21
- title: string;
22
- status: TaskStatus;
23
- priority?: TaskPriority;
24
- assigneeName?: string;
31
+ taskRef?: FirestoreDocumentReference; // Reference to the original task
32
+ title: string; // Title (copied from the original task)
33
+ status: TaskStatus; // Status (can be updated independently from the original task)
34
+ priority?: TaskPriority; // Priority (copied from the original task)
35
+ assigneeName?: string; // Name of the assignee (copied from the original task)
25
36
  }
37
+
38
+ // Interface for Talking Point Templates (talkingPointTemplates)
26
39
  export interface ITalkingPointTemplate extends IFireDoc {
27
- title: string;
28
- description?: string;
29
- tags?: ITag[];
40
+ title: string; // Title of the talking point
41
+ description?: string; // Optional detailed description
42
+ tags?: ITag[]; // Optional tags for categorization
30
43
  }
44
+
45
+ // Interface for Talking Points within a Meeting (meetingTalkingPoints)
31
46
  export interface IMeetingTalkingPoint {
32
- templateRef?: FirestoreDocumentReference;
33
- title: string;
34
- description?: string;
35
- tags?: ITag[];
36
- discussed: boolean;
37
- notes?: string;
38
- assigneeName?: string;
39
- assigneeRef?: FirestoreDocumentReference;
47
+ templateRef?: FirestoreDocumentReference; // Reference to the original template
48
+ title: string; // Title (can be copied from the template or edited)
49
+ description?: string; // Description (can be copied from the template or edited)
50
+ tags?: ITag[]; // Tags (can be copied from the template or edited)
51
+ discussed: boolean; // Flag to indicate if the talking point was discussed
52
+ notes?: string; // Optional field for notes taken during the discussion
53
+ assigneeName?: string; // Name of the assignee (optional)
54
+ assigneeRef?: FirestoreDocumentReference; // Reference to the assignee (optional)
40
55
  }
56
+
57
+ // Interface for Meeting Instances (meetingInstances)
41
58
  export interface IMeeting extends IFireDoc {
42
- title: string;
43
- description?: string;
44
- creatorName: string;
45
- creatorRef?: FirestoreDocumentReference;
46
- event: IMeetingEvent;
47
- type: MeetingType;
48
- tasks?: IMeetingTask[];
49
- talkingPoints?: IMeetingTalkingPoint[];
50
- tags?: ITag[];
51
- [key: string]: unknown;
59
+ title: string; // Title of the meeting
60
+ description?: string; // Optional description of the meeting
61
+ creatorName: string; // Name of the user who created the meeting
62
+ creatorRef?: FirestoreDocumentReference; // reference to the user who created the meeting
63
+ event: IMeetingEvent;
64
+ type: MeetingType; // Type of meeting
65
+ tasks?: IMeetingTask[];
66
+ talkingPoints?: IMeetingTalkingPoint[];
67
+ tags?: ITag[];
68
+ [key: string]: unknown; // index signature
52
69
  }
@@ -1,5 +1,8 @@
1
- export declare const EVO_PEOPLE_APP = "evo-people";
2
- export declare const COMPANIES_COLLECTION = "companies";
3
- export declare const DEPARTMENTS_COLLECTION = "departments";
4
- export declare const OFFICES_COLLECTION = "offices";
5
- export declare const EMPLOYEES_COLLECTION = "employees";
1
+ //EVO People Application Doc
2
+ export const EVO_PEOPLE_APP = "evo-people";
3
+
4
+ //people
5
+ export const COMPANIES_COLLECTION = "companies";
6
+ export const DEPARTMENTS_COLLECTION = "departments";
7
+ export const OFFICES_COLLECTION = "offices";
8
+ export const EMPLOYEES_COLLECTION = "employees";