@zyacreatives/shared 2.2.45 → 2.2.48

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.
@@ -243,6 +243,22 @@ export declare const VENTURE_STAGES: {
243
243
  readonly GROWTH: "Growth";
244
244
  readonly EXIT: "Exit";
245
245
  };
246
+ export declare const SIGNAL_INTEREST_TYPES: {
247
+ readonly INVESTMENT: "Exploring investment opportunities";
248
+ readonly PARTNERSHIP: "Partnership & Collaboration";
249
+ readonly PRODUCT_INTEREST: "Interested in using the product";
250
+ readonly TECHNICAL_COLLABORATION: "Technical collaboration / integration";
251
+ readonly TALENT_HIRING: "Talent & Hiring";
252
+ readonly MEDIA_PRESS: "Media / Press";
253
+ readonly GENERAL_INQUIRY: "General inquiry";
254
+ };
255
+ export declare const SIGNAL_STATUS: {
256
+ readonly ACCEPTED: "ACCEPTED";
257
+ readonly DECLINED: "DECLINED";
258
+ readonly PENDING: "PENDING";
259
+ };
260
+ export type SignalInterestType = (typeof SIGNAL_INTEREST_TYPES)[keyof typeof SIGNAL_INTEREST_TYPES];
261
+ export type SignalStatus = (typeof SIGNAL_STATUS)[keyof typeof SIGNAL_STATUS];
246
262
  export type NotificationType = (typeof NOTIFICATION_TYPES)[keyof typeof NOTIFICATION_TYPES];
247
263
  export type MessageRequestStatus = (typeof MESSAGE_REQUEST_STATUS)[keyof typeof MESSAGE_REQUEST_STATUS];
248
264
  export type ApplicationStatus = (typeof APPLICATION_STATUS)[keyof typeof APPLICATION_STATUS];
package/dist/constants.js CHANGED
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ANALYTICS_EVENTS = exports.DEFAULT_DISCIPLINES = exports.API_ROUTES = exports.VENTURE_STAGES = exports.NOTIFICATION_TYPES = exports.APPLICATION_STATUS = exports.LINK_TYPES = exports.ACTIVITY_TYPES = exports.POST_BADGE_TYPES = exports.PROJECT_STATUS = exports.MESSAGE_REQUEST_STATUS = exports.JOB_STATUS = exports.WAGES_CURRENCY = exports.GIG_TYPE = exports.MESSAGE_TYPES = exports.JOB_LOCATIONS = exports.JOB_SECTIONS = exports.WAGE_TYPES = exports.JOB_AVAILABILITY_TYPES = exports.EMPLOYMENT_TYPE = exports.WORK_MODE = exports.JOB_TYPE = exports.POST_TYPES = exports.ACTIVITY_PARENT_TYPES = exports.INVESTOR_VERIFICATION_DOCUMENT_TYPES = exports.INVESTOR_VERIFICATION_DOCUMENT_STATUSES = exports.GEOGRAPHIC_FOCUS = exports.INVESTMENT_SIZES = exports.INVESTOR_TYPES = exports.ONBOARDING_PAGES = exports.EXPERIENCE_LEVELS = exports.CLIENT_TYPES = exports.USER_STATUSES = exports.ROLES = void 0;
3
+ exports.ANALYTICS_EVENTS = exports.DEFAULT_DISCIPLINES = exports.API_ROUTES = exports.SIGNAL_STATUS = exports.SIGNAL_INTEREST_TYPES = exports.VENTURE_STAGES = exports.NOTIFICATION_TYPES = exports.APPLICATION_STATUS = exports.LINK_TYPES = exports.ACTIVITY_TYPES = exports.POST_BADGE_TYPES = exports.PROJECT_STATUS = exports.MESSAGE_REQUEST_STATUS = exports.JOB_STATUS = exports.WAGES_CURRENCY = exports.GIG_TYPE = exports.MESSAGE_TYPES = exports.JOB_LOCATIONS = exports.JOB_SECTIONS = exports.WAGE_TYPES = exports.JOB_AVAILABILITY_TYPES = exports.EMPLOYMENT_TYPE = exports.WORK_MODE = exports.JOB_TYPE = exports.POST_TYPES = exports.ACTIVITY_PARENT_TYPES = exports.INVESTOR_VERIFICATION_DOCUMENT_TYPES = exports.INVESTOR_VERIFICATION_DOCUMENT_STATUSES = exports.GEOGRAPHIC_FOCUS = exports.INVESTMENT_SIZES = exports.INVESTOR_TYPES = exports.ONBOARDING_PAGES = exports.EXPERIENCE_LEVELS = exports.CLIENT_TYPES = exports.USER_STATUSES = exports.ROLES = void 0;
4
4
  exports.ROLES = {
5
5
  CREATIVE: "CREATIVE",
6
6
  BRAND: "BRAND",
@@ -245,6 +245,20 @@ exports.VENTURE_STAGES = {
245
245
  GROWTH: "Growth",
246
246
  EXIT: "Exit",
247
247
  };
248
+ exports.SIGNAL_INTEREST_TYPES = {
249
+ INVESTMENT: "Exploring investment opportunities",
250
+ PARTNERSHIP: "Partnership & Collaboration",
251
+ PRODUCT_INTEREST: "Interested in using the product",
252
+ TECHNICAL_COLLABORATION: "Technical collaboration / integration",
253
+ TALENT_HIRING: "Talent & Hiring",
254
+ MEDIA_PRESS: "Media / Press",
255
+ GENERAL_INQUIRY: "General inquiry",
256
+ };
257
+ exports.SIGNAL_STATUS = {
258
+ ACCEPTED: "ACCEPTED",
259
+ DECLINED: "DECLINED",
260
+ PENDING: "PENDING",
261
+ };
248
262
  exports.API_ROUTES = {
249
263
  healthCheck: "/health",
250
264
  username: {
@@ -20,3 +20,5 @@ export * from "./notification";
20
20
  export * from "./feed";
21
21
  export * from "./bookmark";
22
22
  export * from "./like";
23
+ export * from "./investor-signal";
24
+ export * from "./investor-shortlist";
@@ -36,3 +36,5 @@ __exportStar(require("./notification"), exports);
36
36
  __exportStar(require("./feed"), exports);
37
37
  __exportStar(require("./bookmark"), exports);
38
38
  __exportStar(require("./like"), exports);
39
+ __exportStar(require("./investor-signal"), exports);
40
+ __exportStar(require("./investor-shortlist"), exports);
@@ -0,0 +1,49 @@
1
+ import z from "zod";
2
+ export declare const InvestorShortlistEntitySchema: z.ZodObject<{
3
+ id: z.ZodCUID2;
4
+ userId: z.ZodCUID2;
5
+ projectId: z.ZodCUID2;
6
+ projectCreatorImage: z.ZodOptional<z.ZodURL>;
7
+ projectCreatorName: z.ZodString;
8
+ projectTotalRaising: z.ZodString;
9
+ projectVentureStage: z.ZodOptional<z.ZodEnum<{
10
+ readonly IDEA: "Idea";
11
+ readonly PRE_SEED: "Pre Seed";
12
+ readonly MVP: "MVP";
13
+ readonly SEED: "Seed";
14
+ readonly SERIES_A: "Series A";
15
+ readonly SERIES_B: "Series B";
16
+ readonly SERIES_C: "Series C";
17
+ readonly GROWTH: "Growth";
18
+ readonly EXIT: "Exit";
19
+ }>>;
20
+ }, z.core.$strip>;
21
+ export declare const CreateInvestorShortlistInputSchema: z.ZodObject<{
22
+ userId: z.ZodCUID2;
23
+ projectId: z.ZodCUID2;
24
+ }, z.core.$strip>;
25
+ export declare const GetInvestorShortlistInputSchema: z.ZodObject<{
26
+ cursor: z.ZodNullable<z.ZodOptional<z.ZodString>>;
27
+ }, z.core.$strip>;
28
+ export declare const GetInvestorShortlistOutputSchema: z.ZodObject<{
29
+ nextCursor: z.ZodNullable<z.ZodOptional<z.ZodString>>;
30
+ shortlistItems: z.ZodArray<z.ZodObject<{
31
+ id: z.ZodCUID2;
32
+ userId: z.ZodCUID2;
33
+ projectId: z.ZodCUID2;
34
+ projectCreatorImage: z.ZodOptional<z.ZodURL>;
35
+ projectCreatorName: z.ZodString;
36
+ projectTotalRaising: z.ZodString;
37
+ projectVentureStage: z.ZodOptional<z.ZodEnum<{
38
+ readonly IDEA: "Idea";
39
+ readonly PRE_SEED: "Pre Seed";
40
+ readonly MVP: "MVP";
41
+ readonly SEED: "Seed";
42
+ readonly SERIES_A: "Series A";
43
+ readonly SERIES_B: "Series B";
44
+ readonly SERIES_C: "Series C";
45
+ readonly GROWTH: "Growth";
46
+ readonly EXIT: "Exit";
47
+ }>>;
48
+ }, z.core.$strip>>;
49
+ }, z.core.$strip>;
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.GetInvestorShortlistOutputSchema = exports.GetInvestorShortlistInputSchema = exports.CreateInvestorShortlistInputSchema = exports.InvestorShortlistEntitySchema = void 0;
7
+ const zod_1 = __importDefault(require("zod"));
8
+ const constants_1 = require("../constants");
9
+ exports.InvestorShortlistEntitySchema = zod_1.default.object({
10
+ id: zod_1.default.cuid2(),
11
+ userId: zod_1.default.cuid2(),
12
+ projectId: zod_1.default.cuid2(),
13
+ projectCreatorImage: zod_1.default.url().optional(),
14
+ projectCreatorName: zod_1.default.string(),
15
+ projectTotalRaising: zod_1.default.string(),
16
+ projectVentureStage: zod_1.default.enum(constants_1.VENTURE_STAGES).optional(),
17
+ });
18
+ exports.CreateInvestorShortlistInputSchema = zod_1.default.object({
19
+ userId: zod_1.default.cuid2(),
20
+ projectId: zod_1.default.cuid2(),
21
+ });
22
+ exports.GetInvestorShortlistInputSchema = zod_1.default.object({
23
+ cursor: zod_1.default.string().optional().nullable(),
24
+ });
25
+ exports.GetInvestorShortlistOutputSchema = zod_1.default.object({
26
+ nextCursor: zod_1.default.string().optional().nullable(),
27
+ shortlistItems: zod_1.default.array(exports.InvestorShortlistEntitySchema),
28
+ });
@@ -0,0 +1,103 @@
1
+ import z from "zod";
2
+ export declare const InvestorSignalEntitySchema: z.ZodObject<{
3
+ id: z.ZodCUID2;
4
+ userId: z.ZodCUID2;
5
+ projectId: z.ZodCUID2;
6
+ projectCreatorImage: z.ZodOptional<z.ZodURL>;
7
+ projectCreatorName: z.ZodString;
8
+ projectTotalRaising: z.ZodString;
9
+ projectVentureStage: z.ZodOptional<z.ZodEnum<{
10
+ readonly IDEA: "Idea";
11
+ readonly PRE_SEED: "Pre Seed";
12
+ readonly MVP: "MVP";
13
+ readonly SEED: "Seed";
14
+ readonly SERIES_A: "Series A";
15
+ readonly SERIES_B: "Series B";
16
+ readonly SERIES_C: "Series C";
17
+ readonly GROWTH: "Growth";
18
+ readonly EXIT: "Exit";
19
+ }>>;
20
+ signalInterest: z.ZodEnum<{
21
+ readonly INVESTMENT: "Exploring investment opportunities";
22
+ readonly PARTNERSHIP: "Partnership & Collaboration";
23
+ readonly PRODUCT_INTEREST: "Interested in using the product";
24
+ readonly TECHNICAL_COLLABORATION: "Technical collaboration / integration";
25
+ readonly TALENT_HIRING: "Talent & Hiring";
26
+ readonly MEDIA_PRESS: "Media / Press";
27
+ readonly GENERAL_INQUIRY: "General inquiry";
28
+ }>;
29
+ interestDetails: z.ZodString;
30
+ signalStatus: z.ZodDefault<z.ZodEnum<{
31
+ readonly ACCEPTED: "ACCEPTED";
32
+ readonly DECLINED: "DECLINED";
33
+ readonly PENDING: "PENDING";
34
+ }>>;
35
+ }, z.core.$strip>;
36
+ export declare const CreateInvestorSignalInputSchema: z.ZodObject<{
37
+ id: z.ZodCUID2;
38
+ userId: z.ZodCUID2;
39
+ projectId: z.ZodCUID2;
40
+ signalInterest: z.ZodEnum<{
41
+ readonly INVESTMENT: "Exploring investment opportunities";
42
+ readonly PARTNERSHIP: "Partnership & Collaboration";
43
+ readonly PRODUCT_INTEREST: "Interested in using the product";
44
+ readonly TECHNICAL_COLLABORATION: "Technical collaboration / integration";
45
+ readonly TALENT_HIRING: "Talent & Hiring";
46
+ readonly MEDIA_PRESS: "Media / Press";
47
+ readonly GENERAL_INQUIRY: "General inquiry";
48
+ }>;
49
+ interestDetails: z.ZodString;
50
+ }, z.core.$strip>;
51
+ export declare const UpdateInvestorSignalStatusSchema: z.ZodObject<{
52
+ id: z.ZodCUID2;
53
+ signalStatus: z.ZodDefault<z.ZodEnum<{
54
+ readonly ACCEPTED: "ACCEPTED";
55
+ readonly DECLINED: "DECLINED";
56
+ readonly PENDING: "PENDING";
57
+ }>>;
58
+ }, z.core.$strip>;
59
+ export declare const GetInvestorSignalInputSchema: z.ZodObject<{
60
+ cursor: z.ZodNullable<z.ZodOptional<z.ZodString>>;
61
+ signalStatus: z.ZodNullable<z.ZodOptional<z.ZodEnum<{
62
+ readonly ACCEPTED: "ACCEPTED";
63
+ readonly DECLINED: "DECLINED";
64
+ readonly PENDING: "PENDING";
65
+ }>>>;
66
+ }, z.core.$strip>;
67
+ export declare const GetInvestorSignalOutputSchema: z.ZodObject<{
68
+ nextCursor: z.ZodNullable<z.ZodOptional<z.ZodString>>;
69
+ signals: z.ZodArray<z.ZodObject<{
70
+ id: z.ZodCUID2;
71
+ userId: z.ZodCUID2;
72
+ projectId: z.ZodCUID2;
73
+ projectCreatorImage: z.ZodOptional<z.ZodURL>;
74
+ projectCreatorName: z.ZodString;
75
+ projectTotalRaising: z.ZodString;
76
+ projectVentureStage: z.ZodOptional<z.ZodEnum<{
77
+ readonly IDEA: "Idea";
78
+ readonly PRE_SEED: "Pre Seed";
79
+ readonly MVP: "MVP";
80
+ readonly SEED: "Seed";
81
+ readonly SERIES_A: "Series A";
82
+ readonly SERIES_B: "Series B";
83
+ readonly SERIES_C: "Series C";
84
+ readonly GROWTH: "Growth";
85
+ readonly EXIT: "Exit";
86
+ }>>;
87
+ signalInterest: z.ZodEnum<{
88
+ readonly INVESTMENT: "Exploring investment opportunities";
89
+ readonly PARTNERSHIP: "Partnership & Collaboration";
90
+ readonly PRODUCT_INTEREST: "Interested in using the product";
91
+ readonly TECHNICAL_COLLABORATION: "Technical collaboration / integration";
92
+ readonly TALENT_HIRING: "Talent & Hiring";
93
+ readonly MEDIA_PRESS: "Media / Press";
94
+ readonly GENERAL_INQUIRY: "General inquiry";
95
+ }>;
96
+ interestDetails: z.ZodString;
97
+ signalStatus: z.ZodDefault<z.ZodEnum<{
98
+ readonly ACCEPTED: "ACCEPTED";
99
+ readonly DECLINED: "DECLINED";
100
+ readonly PENDING: "PENDING";
101
+ }>>;
102
+ }, z.core.$strip>>;
103
+ }, z.core.$strip>;
@@ -0,0 +1,39 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.GetInvestorSignalOutputSchema = exports.GetInvestorSignalInputSchema = exports.UpdateInvestorSignalStatusSchema = exports.CreateInvestorSignalInputSchema = exports.InvestorSignalEntitySchema = void 0;
7
+ const zod_1 = __importDefault(require("zod"));
8
+ const constants_1 = require("../constants");
9
+ exports.InvestorSignalEntitySchema = zod_1.default.object({
10
+ id: zod_1.default.cuid2(),
11
+ userId: zod_1.default.cuid2(),
12
+ projectId: zod_1.default.cuid2(),
13
+ projectCreatorImage: zod_1.default.url().optional(),
14
+ projectCreatorName: zod_1.default.string(),
15
+ projectTotalRaising: zod_1.default.string(),
16
+ projectVentureStage: zod_1.default.enum(constants_1.VENTURE_STAGES).optional(),
17
+ signalInterest: zod_1.default.enum(constants_1.SIGNAL_INTEREST_TYPES),
18
+ interestDetails: zod_1.default.string().max(600),
19
+ signalStatus: zod_1.default.enum(constants_1.SIGNAL_STATUS).default("PENDING"),
20
+ });
21
+ exports.CreateInvestorSignalInputSchema = zod_1.default.object({
22
+ id: zod_1.default.cuid2(),
23
+ userId: zod_1.default.cuid2(),
24
+ projectId: zod_1.default.cuid2(),
25
+ signalInterest: zod_1.default.enum(constants_1.SIGNAL_INTEREST_TYPES),
26
+ interestDetails: zod_1.default.string().max(600),
27
+ });
28
+ exports.UpdateInvestorSignalStatusSchema = zod_1.default.object({
29
+ id: zod_1.default.cuid2(),
30
+ signalStatus: zod_1.default.enum(constants_1.SIGNAL_STATUS).default("PENDING"),
31
+ });
32
+ exports.GetInvestorSignalInputSchema = zod_1.default.object({
33
+ cursor: zod_1.default.string().optional().nullable(),
34
+ signalStatus: zod_1.default.enum(constants_1.SIGNAL_STATUS).optional().nullable(),
35
+ });
36
+ exports.GetInvestorSignalOutputSchema = zod_1.default.object({
37
+ nextCursor: zod_1.default.string().optional().nullable(),
38
+ signals: zod_1.default.array(exports.InvestorSignalEntitySchema),
39
+ });
@@ -185,7 +185,6 @@ export declare const CreateInvestorProfileInputSchema: z.ZodObject<{
185
185
  "5+ years": "5+ years";
186
186
  }>>;
187
187
  location: z.ZodString;
188
- disciplineSlugs: z.ZodDefault<z.ZodArray<z.ZodString>>;
189
188
  }, z.core.$strip>;
190
189
  export declare const UpdateInvestorProfileInputSchema: z.ZodObject<{
191
190
  bio: z.ZodOptional<z.ZodString>;
@@ -138,14 +138,6 @@ exports.CreateInvestorProfileInputSchema = zod_openapi_1.z
138
138
  location: zod_openapi_1.z.string().openapi({
139
139
  example: "UK",
140
140
  }),
141
- disciplineSlugs: zod_openapi_1.z
142
- .array(zod_openapi_1.z.string())
143
- .min(1, "At least one discipline is required")
144
- .default([])
145
- .describe("List of discipline slugs.")
146
- .openapi({
147
- example: ["fintech", "edtech"],
148
- }),
149
141
  })
150
142
  .openapi({
151
143
  title: "Create Investor Profile",
@@ -21,3 +21,5 @@ export * from "./chat";
21
21
  export * from "./job";
22
22
  export * from "./user-strike";
23
23
  export * from "./notification";
24
+ export * from "./investor-signal";
25
+ export * from "./investor-shortlist";
@@ -37,3 +37,5 @@ __exportStar(require("./chat"), exports);
37
37
  __exportStar(require("./job"), exports);
38
38
  __exportStar(require("./user-strike"), exports);
39
39
  __exportStar(require("./notification"), exports);
40
+ __exportStar(require("./investor-signal"), exports);
41
+ __exportStar(require("./investor-shortlist"), exports);
@@ -0,0 +1,6 @@
1
+ import type { z } from "zod";
2
+ import { CreateInvestorShortlistInputSchema, GetInvestorShortlistInputSchema, GetInvestorShortlistOutputSchema, InvestorShortlistEntitySchema } from "../schemas/investor-shortlist";
3
+ export type InvestorShortlistEntity = z.infer<typeof InvestorShortlistEntitySchema>;
4
+ export type CreateInvestorShortlistInput = z.infer<typeof CreateInvestorShortlistInputSchema>;
5
+ export type GetInvestorShortlistInput = z.infer<typeof GetInvestorShortlistInputSchema>;
6
+ export type GetInvestorShortlistOutput = z.infer<typeof GetInvestorShortlistOutputSchema>;
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,7 @@
1
+ import type { z } from "zod";
2
+ import { CreateInvestorSignalInputSchema, GetInvestorSignalInputSchema, GetInvestorSignalOutputSchema, InvestorSignalEntitySchema, UpdateInvestorSignalStatusSchema } from "../schemas/investor-signal";
3
+ export type InvestorSignalEntity = z.infer<typeof InvestorSignalEntitySchema>;
4
+ export type CreateInvestorSignalInput = z.infer<typeof CreateInvestorSignalInputSchema>;
5
+ export type UpdateInvestorSignalStatusInput = z.infer<typeof UpdateInvestorSignalStatusSchema>;
6
+ export type GetInvestorSignalInput = z.infer<typeof GetInvestorSignalInputSchema>;
7
+ export type GetInvestorSignalOutput = z.infer<typeof GetInvestorSignalOutputSchema>;
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zyacreatives/shared",
3
- "version": "2.2.45",
3
+ "version": "2.2.48",
4
4
  "description": "",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
package/src/constants.ts CHANGED
@@ -274,6 +274,25 @@ export const VENTURE_STAGES = {
274
274
  EXIT: "Exit",
275
275
  } as const;
276
276
 
277
+ export const SIGNAL_INTEREST_TYPES = {
278
+ INVESTMENT: "Exploring investment opportunities",
279
+ PARTNERSHIP: "Partnership & Collaboration",
280
+ PRODUCT_INTEREST: "Interested in using the product",
281
+ TECHNICAL_COLLABORATION: "Technical collaboration / integration",
282
+ TALENT_HIRING: "Talent & Hiring",
283
+ MEDIA_PRESS: "Media / Press",
284
+ GENERAL_INQUIRY: "General inquiry",
285
+ } as const;
286
+
287
+ export const SIGNAL_STATUS = {
288
+ ACCEPTED: "ACCEPTED",
289
+ DECLINED: "DECLINED",
290
+ PENDING: "PENDING",
291
+ } as const;
292
+
293
+ export type SignalInterestType =
294
+ (typeof SIGNAL_INTEREST_TYPES)[keyof typeof SIGNAL_INTEREST_TYPES];
295
+ export type SignalStatus = (typeof SIGNAL_STATUS)[keyof typeof SIGNAL_STATUS];
277
296
  export type NotificationType =
278
297
  (typeof NOTIFICATION_TYPES)[keyof typeof NOTIFICATION_TYPES];
279
298
  export type MessageRequestStatus =
@@ -20,3 +20,5 @@ export * from "./notification";
20
20
  export * from "./feed";
21
21
  export * from "./bookmark";
22
22
  export * from "./like";
23
+ export * from "./investor-signal";
24
+ export * from "./investor-shortlist";
@@ -0,0 +1,26 @@
1
+ import z from "zod";
2
+ import { VENTURE_STAGES } from "../constants";
3
+
4
+ export const InvestorShortlistEntitySchema = z.object({
5
+ id: z.cuid2(),
6
+ userId: z.cuid2(),
7
+ projectId: z.cuid2(),
8
+ projectCreatorImage: z.url().optional(),
9
+ projectCreatorName: z.string(),
10
+ projectTotalRaising: z.string(),
11
+ projectVentureStage: z.enum(VENTURE_STAGES).optional(),
12
+ });
13
+
14
+ export const CreateInvestorShortlistInputSchema = z.object({
15
+ userId: z.cuid2(),
16
+ projectId: z.cuid2(),
17
+ });
18
+
19
+ export const GetInvestorShortlistInputSchema = z.object({
20
+ cursor: z.string().optional().nullable(),
21
+ });
22
+
23
+ export const GetInvestorShortlistOutputSchema = z.object({
24
+ nextCursor: z.string().optional().nullable(),
25
+ shortlistItems: z.array(InvestorShortlistEntitySchema),
26
+ });
@@ -0,0 +1,42 @@
1
+ import z from "zod";
2
+ import {
3
+ SIGNAL_INTEREST_TYPES,
4
+ SIGNAL_STATUS,
5
+ VENTURE_STAGES,
6
+ } from "../constants";
7
+
8
+ export const InvestorSignalEntitySchema = z.object({
9
+ id: z.cuid2(),
10
+ userId: z.cuid2(),
11
+ projectId: z.cuid2(),
12
+ projectCreatorImage: z.url().optional(),
13
+ projectCreatorName: z.string(),
14
+ projectTotalRaising: z.string(),
15
+ projectVentureStage: z.enum(VENTURE_STAGES).optional(),
16
+ signalInterest: z.enum(SIGNAL_INTEREST_TYPES),
17
+ interestDetails: z.string().max(600),
18
+ signalStatus: z.enum(SIGNAL_STATUS).default("PENDING"),
19
+ });
20
+
21
+ export const CreateInvestorSignalInputSchema = z.object({
22
+ id: z.cuid2(),
23
+ userId: z.cuid2(),
24
+ projectId: z.cuid2(),
25
+ signalInterest: z.enum(SIGNAL_INTEREST_TYPES),
26
+ interestDetails: z.string().max(600),
27
+ });
28
+
29
+ export const UpdateInvestorSignalStatusSchema = z.object({
30
+ id: z.cuid2(),
31
+ signalStatus: z.enum(SIGNAL_STATUS).default("PENDING"),
32
+ });
33
+
34
+ export const GetInvestorSignalInputSchema = z.object({
35
+ cursor: z.string().optional().nullable(),
36
+ signalStatus: z.enum(SIGNAL_STATUS).optional().nullable(),
37
+ });
38
+
39
+ export const GetInvestorSignalOutputSchema = z.object({
40
+ nextCursor: z.string().optional().nullable(),
41
+ signals: z.array(InvestorSignalEntitySchema),
42
+ });
@@ -180,14 +180,6 @@ export const CreateInvestorProfileInputSchema = z
180
180
  location: z.string().openapi({
181
181
  example: "UK",
182
182
  }),
183
- disciplineSlugs: z
184
- .array(z.string())
185
- .min(1, "At least one discipline is required")
186
- .default([])
187
- .describe("List of discipline slugs.")
188
- .openapi({
189
- example: ["fintech", "edtech"],
190
- }),
191
183
  })
192
184
  .openapi({
193
185
  title: "Create Investor Profile",
@@ -21,3 +21,5 @@ export * from "./chat";
21
21
  export * from "./job";
22
22
  export * from "./user-strike";
23
23
  export * from "./notification";
24
+ export * from "./investor-signal"
25
+ export * from "./investor-shortlist"
@@ -0,0 +1,18 @@
1
+ import type { z } from "zod";
2
+ import { CreateInvestorShortlistInputSchema, GetInvestorShortlistInputSchema, GetInvestorShortlistOutputSchema, InvestorShortlistEntitySchema } from "../schemas/investor-shortlist";
3
+
4
+ export type InvestorShortlistEntity = z.infer<
5
+ typeof InvestorShortlistEntitySchema
6
+ >;
7
+
8
+ export type CreateInvestorShortlistInput = z.infer<
9
+ typeof CreateInvestorShortlistInputSchema
10
+ >;
11
+
12
+ export type GetInvestorShortlistInput = z.infer<
13
+ typeof GetInvestorShortlistInputSchema
14
+ >;
15
+
16
+ export type GetInvestorShortlistOutput = z.infer<
17
+ typeof GetInvestorShortlistOutputSchema
18
+ >;
@@ -0,0 +1,26 @@
1
+ import type { z } from "zod";
2
+ import {
3
+ CreateInvestorSignalInputSchema,
4
+ GetInvestorSignalInputSchema,
5
+ GetInvestorSignalOutputSchema,
6
+ InvestorSignalEntitySchema,
7
+ UpdateInvestorSignalStatusSchema,
8
+ } from "../schemas/investor-signal";
9
+
10
+ export type InvestorSignalEntity = z.infer<typeof InvestorSignalEntitySchema>;
11
+
12
+ export type CreateInvestorSignalInput = z.infer<
13
+ typeof CreateInvestorSignalInputSchema
14
+ >;
15
+
16
+ export type UpdateInvestorSignalStatusInput = z.infer<
17
+ typeof UpdateInvestorSignalStatusSchema
18
+ >;
19
+
20
+ export type GetInvestorSignalInput = z.infer<
21
+ typeof GetInvestorSignalInputSchema
22
+ >;
23
+
24
+ export type GetInvestorSignalOutput = z.infer<
25
+ typeof GetInvestorSignalOutputSchema
26
+ >;