@zyacreatives/shared 2.1.28 → 2.1.31

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.
package/src/constants.ts CHANGED
@@ -1,430 +1,444 @@
1
1
  export const ROLES = {
2
- CREATIVE: "CREATIVE",
3
- BRAND: "BRAND",
4
- INVESTOR: "INVESTOR",
5
- ADMIN: "ADMIN",
2
+ CREATIVE: "CREATIVE",
3
+ BRAND: "BRAND",
4
+ INVESTOR: "INVESTOR",
5
+ ADMIN: "ADMIN",
6
6
  } as const;
7
7
 
8
8
  export const USER_STATUSES = {
9
- ACTIVE: "ACTIVE",
10
- SUSPENDED: "SUSPENDED",
11
- DELETED: "DELETED",
9
+ ACTIVE: "ACTIVE",
10
+ SUSPENDED: "SUSPENDED",
11
+ DELETED: "DELETED",
12
12
  } as const;
13
13
 
14
14
  export const CLIENT_TYPES = {
15
- CREATIVE: "CREATIVE",
16
- BRAND: "BRAND",
17
- NONE: "NONE",
15
+ CREATIVE: "CREATIVE",
16
+ BRAND: "BRAND",
17
+ NONE: "NONE",
18
18
  } as const;
19
19
 
20
20
  export const EXPERIENCE_LEVELS = {
21
- YEAR_0_1: "0-1 year",
22
- YEAR_1_3: "1-3 years",
23
- YEAR_3_5: "3-5 years",
24
- YEAR_5_PLUS: "5+ years",
21
+ YEAR_0_1: "0-1 year",
22
+ YEAR_1_3: "1-3 years",
23
+ YEAR_3_5: "3-5 years",
24
+ YEAR_5_PLUS: "5+ years",
25
25
  } as const;
26
26
 
27
27
  export const ONBOARDING_PAGES = {
28
- EMAIL_VERIFICATION: "EMAIL_VERIFICATION",
29
- USERNAME_SELECTION: "USERNAME_SELECTION",
30
- ACCOUNT_TYPE_SELECTION: "ACCOUNT_TYPE_SELECTION",
31
- CREATIVE_PROFILE_DETAILS: "CREATIVE_PROFILE_DETAILS",
32
- CREATIVE_PROFILE_CUSTOMIZE_FEED: "CREATIVE_PROFILE_CUSTOMIZE_FEED",
33
- CREATIVE_PROFILE_PORTFOLIO: "CREATIVE_PROFILE_PORTFOLIO",
34
- BRAND_PROFILE_DETAILS: "BRAND_PROFILE_DETAILS",
35
- BRAND_PROFILE_CUSTOMIZE_FEED: "BRAND_PROFILE_CUSTOMIZE_FEED",
36
- BRAND_PROFILE_PORTFOLIO: "BRAND_PROFILE_PORTFOLIO",
37
- INVESTOR_PROFILE_DETAILS: "INVESTOR_PROFILE_DETAILS",
38
- INVESTOR_INVESTMENT_FOCUS: "INVESTOR_INVESTMENT_FOCUS",
39
- INVESTOR_VERIFICATION: "INVESTOR_VERIFICATION",
40
- DONE: "DONE",
28
+ EMAIL_VERIFICATION: "EMAIL_VERIFICATION",
29
+ USERNAME_SELECTION: "USERNAME_SELECTION",
30
+ ACCOUNT_TYPE_SELECTION: "ACCOUNT_TYPE_SELECTION",
31
+ CREATIVE_PROFILE_DETAILS: "CREATIVE_PROFILE_DETAILS",
32
+ BRAND_PROFILE_DETAILS: "BRAND_PROFILE_DETAILS",
33
+ INVESTOR_PROFILE_DETAILS: "INVESTOR_PROFILE_DETAILS",
34
+ INVESTOR_INVESTMENT_FOCUS: "INVESTOR_INVESTMENT_FOCUS",
35
+ INVESTOR_VERIFICATION: "INVESTOR_VERIFICATION",
36
+ DONE: "DONE",
41
37
  } as const;
42
38
 
43
39
  export const INVESTOR_TYPES = {
44
- ANGEL_INVESTOR: "Angel Investor",
45
- VENTURE_CAPITALIST: "Venture Capitalist",
46
- PRIVATE_EQUITY_FIRM: "Private Equity Firm",
47
- VENTURE_DEBT_PROVIDER: "Venture Debt Provider",
48
- BANK: "Bank",
49
- CONVERTIBLE_NOTE_INVESTOR: "Convertible Note Investor",
50
- REVENUE_BASED_FINANCING_INVESTOR: "Revenue Based Financing Investor",
51
- CORPORATE_VENTURE_CAPITALIST: "Corporate Venture Capitalist",
52
- GOVERNMENT: "Government",
53
- SOCIAL_IMPACT_INVESTOR: "Social Impact Investor",
40
+ ANGEL_INVESTOR: "Angel Investor",
41
+ VENTURE_CAPITALIST: "Venture Capitalist",
42
+ PRIVATE_EQUITY_FIRM: "Private Equity Firm",
43
+ VENTURE_DEBT_PROVIDER: "Venture Debt Provider",
44
+ BANK: "Bank",
45
+ CONVERTIBLE_NOTE_INVESTOR: "Convertible Note Investor",
46
+ REVENUE_BASED_FINANCING_INVESTOR: "Revenue Based Financing Investor",
47
+ CORPORATE_VENTURE_CAPITALIST: "Corporate Venture Capitalist",
48
+ GOVERNMENT: "Government",
49
+ SOCIAL_IMPACT_INVESTOR: "Social Impact Investor",
54
50
  } as const;
55
51
 
56
52
  export const INVESTMENT_SIZES = {
57
- UNDER_5K: "Under 5k USD",
58
- BETWEEN_5K_25K: "5k - 25k USD",
59
- BETWEEN_25K_100K: "25k - 100k USD",
60
- BETWEEN_100K_500K: "100k - 500k USD",
61
- BETWEEN_500K_1M: "500k - 1M USD",
62
- OVER_1M: "1M+ USD",
53
+ UNDER_5K: "Under 5k USD",
54
+ BETWEEN_5K_25K: "5k - 25k USD",
55
+ BETWEEN_25K_100K: "25k - 100k USD",
56
+ BETWEEN_100K_500K: "100k - 500k USD",
57
+ BETWEEN_500K_1M: "500k - 1M USD",
58
+ OVER_1M: "1M+ USD",
63
59
  } as const;
64
60
 
65
61
  export const GEOGRAPHIC_FOCUS = {
66
- AFRICA: "Africa",
67
- ASIA: "Asia",
68
- EUROPE: "Europe",
69
- NORTH_AMERICA: "North America",
70
- SOUTH_AMERICA: "South America",
71
- MIDDLE_EAST: "Middle East",
72
- OCEANIA: "Oceania",
73
- UK: "United Kingdom (UK)",
74
- US: "United States (US)",
75
- GLOBAL: "Global",
76
- OTHER: "Other",
62
+ AFRICA: "Africa",
63
+ ASIA: "Asia",
64
+ EUROPE: "Europe",
65
+ NORTH_AMERICA: "North America",
66
+ SOUTH_AMERICA: "South America",
67
+ MIDDLE_EAST: "Middle East",
68
+ OCEANIA: "Oceania",
69
+ UK: "United Kingdom (UK)",
70
+ US: "United States (US)",
71
+ GLOBAL: "Global",
72
+ OTHER: "Other",
77
73
  } as const;
78
74
 
79
75
  export const INVESTOR_VERIFICATION_DOCUMENT_STATUSES = {
80
- PENDING: "PENDING",
81
- APPROVED: "APPROVED",
82
- REJECTED: "REJECTED",
76
+ PENDING: "PENDING",
77
+ APPROVED: "APPROVED",
78
+ REJECTED: "REJECTED",
83
79
  } as const;
84
80
 
85
81
  export const INVESTOR_VERIFICATION_DOCUMENT_TYPES = {
86
- ID_PROOF: "ID_PROOF",
87
- BANK_STATEMENT: "BANK_STATEMENT",
88
- TAX_DOCUMENT: "TAX_DOCUMENT",
89
- BUSINESS_REGISTRATION: "BUSINESS_REGISTRATION",
90
- OTHER_CERTIFICATE: "OTHER_CERTIFICATE",
82
+ ID_PROOF: "ID_PROOF",
83
+ BANK_STATEMENT: "BANK_STATEMENT",
84
+ TAX_DOCUMENT: "TAX_DOCUMENT",
85
+ BUSINESS_REGISTRATION: "BUSINESS_REGISTRATION",
86
+ OTHER_CERTIFICATE: "OTHER_CERTIFICATE",
91
87
  } as const;
92
88
 
93
89
  export const ACTIVITY_PARENT_TYPES = {
94
- PROJECT: "PROJECT",
95
- JOB: "JOB",
96
- POST: "POST",
90
+ PROJECT: "PROJECT",
91
+ JOB: "JOB",
92
+ POST: "POST",
97
93
  } as const;
98
94
 
99
95
  export const POST_TYPES = {
100
- MARKETPLACE: "MARKETPLACE",
101
- PROJECT: "PROJECT",
102
- JOB_OPENING: "JOB_OPENING",
103
- DEFAULT_POST: "DEFAULT_POST",
104
- POST_WITH_LINKS: "POST_WITH_LINKS",
105
- POST_WITH_MEDIA: "POST_WITH_MEDIA",
106
- POST_WITH_MEDIA_AND_LINKS: "POST_WITH_MEDIA_AND_LINKS",
96
+ MARKETPLACE: "MARKETPLACE",
97
+ PROJECT: "PROJECT",
98
+ JOB_OPENING: "JOB_OPENING",
99
+ DEFAULT_POST: "DEFAULT_POST",
100
+ POST_WITH_LINKS: "POST_WITH_LINKS",
101
+ POST_WITH_MEDIA: "POST_WITH_MEDIA",
102
+ POST_WITH_MEDIA_AND_LINKS: "POST_WITH_MEDIA_AND_LINKS",
107
103
  } as const;
108
104
 
109
105
  export const JOB_TYPE = {
110
- GIG: "GIG",
111
- ROLE: "ROLE",
106
+ GIG: "GIG",
107
+ ROLE: "ROLE",
112
108
  } as const;
113
109
 
114
110
  export const WORK_MODE = {
115
- REMOTE: "Remote",
116
- HYBRID: "Hybrid",
117
- ON_SITE: "On Site",
111
+ REMOTE: "Remote",
112
+ HYBRID: "Hybrid",
113
+ ON_SITE: "On Site",
118
114
  } as const;
119
115
  export const EMPLOYMENT_TYPE = {
120
- FULL_TIME: "Full Time",
121
- PART_TIME: "Part Time",
122
- FREELANCE: "Freelance",
123
- INTERNSHIP: "Internship",
116
+ FULL_TIME: "Full Time",
117
+ PART_TIME: "Part Time",
118
+ FREELANCE: "Freelance",
119
+ INTERNSHIP: "Internship",
124
120
  } as const;
125
121
 
126
122
  export const JOB_AVAILABILITY_TYPES = {
127
- IMMEDIATE: "Immediate (Within 1 week)",
128
- TWO_WEEKS_NOTICE: "2 weeks notice",
129
- ONE_MONTH_NOTICE: "1 month notice",
130
- FLEXIBLE: "Flexible",
123
+ IMMEDIATE: "Immediate (Within 1 week)",
124
+ TWO_WEEKS_NOTICE: "2 weeks notice",
125
+ ONE_MONTH_NOTICE: "1 month notice",
126
+ FLEXIBLE: "Flexible",
131
127
  } as const;
132
128
 
133
129
  export const WAGE_TYPES = {
134
- HOURLY: "Hourly",
135
- DAILY: "Daily",
136
- WEEKLY: "Weekly",
137
- MONTHLY: "Monthly",
138
- PROJECT_BASED: "Project Based",
130
+ HOURLY: "Hourly",
131
+ DAILY: "Daily",
132
+ WEEKLY: "Weekly",
133
+ MONTHLY: "Monthly",
134
+ PROJECT_BASED: "Project Based",
139
135
  } as const;
140
136
 
141
137
  export const JOB_SECTIONS = {
142
- PERSONAL_INFORMATION: "PERSONAL_INFORMATION",
143
- PHONE_NO: "PHONE_NO",
144
- PROFESSIONAL_INFORMATION: "PROFESSIONAL_INFORMATION",
145
- RESUME: "RESUME",
146
- COVER_LETTER: "COVER_LETTER",
147
- PORTFOLIO_OR_WORK_SAMPLES: "PORTFOLIO_OR_WORK_SAMPLES",
148
- AVAILABILITY: "AVAILABILITY",
149
- WAGES: "WAGES",
138
+ PERSONAL_INFORMATION: "PERSONAL_INFORMATION",
139
+ PHONE_NO: "PHONE_NO",
140
+ PROFESSIONAL_INFORMATION: "PROFESSIONAL_INFORMATION",
141
+ RESUME: "RESUME",
142
+ COVER_LETTER: "COVER_LETTER",
143
+ PORTFOLIO_OR_WORK_SAMPLES: "PORTFOLIO_OR_WORK_SAMPLES",
144
+ AVAILABILITY: "AVAILABILITY",
145
+ WAGES: "WAGES",
150
146
  } as const;
151
147
 
152
148
  export const JOB_LOCATIONS = {
153
- AFRICA: "Africa",
154
- REMOTE: "Remote",
155
- EUROPE: "Europe",
156
- ASIA: "Asia",
157
- NORTH_AMERICA: "North America",
158
- SOUTH_AMERICA: "South America",
159
- MIDDLE_EAST: "Middle East",
160
- OCEANIA: "Oceania",
161
- EMEA: "EMEA", // Europe, Middle East, Africa
162
- ASIA_PACIFIC: "Asia Pacific", // Asia Pacific
163
- GLOBAL: "Global",
164
- OTHER: "Other",
149
+ AFRICA: "Africa",
150
+ REMOTE: "Remote",
151
+ EUROPE: "Europe",
152
+ ASIA: "Asia",
153
+ NORTH_AMERICA: "North America",
154
+ SOUTH_AMERICA: "South America",
155
+ MIDDLE_EAST: "Middle East",
156
+ OCEANIA: "Oceania",
157
+ EMEA: "EMEA", // Europe, Middle East, Africa
158
+ ASIA_PACIFIC: "Asia Pacific", // Asia Pacific
159
+ GLOBAL: "Global",
160
+ OTHER: "Other",
165
161
  } as const;
166
162
 
167
163
  export const MESSAGE_TYPES = {
168
- MARKETPLACE: "MARKETPLACE",
169
- PROJECT: "PROJECT",
170
- JOB_OPENING: "JOB_OPENING",
171
- DEFAULT_MESSAGE: "DEFAULT_MESSAGE",
172
- MESSAGE_WITH_LINKS: "MESSAGE_WITH_LINKS",
173
- MESSAGE_WITH_MEDIA: "MESSAGE_WITH_MEDIA",
174
- MESSAGE_WITH_MEDIA_AND_LINKS: "MESSAGE_WITH_MEDIA_AND_LINKS",
164
+ MARKETPLACE: "MARKETPLACE",
165
+ PROJECT: "PROJECT",
166
+ JOB_OPENING: "JOB_OPENING",
167
+ DEFAULT_MESSAGE: "DEFAULT_MESSAGE",
168
+ MESSAGE_WITH_LINKS: "MESSAGE_WITH_LINKS",
169
+ MESSAGE_WITH_MEDIA: "MESSAGE_WITH_MEDIA",
170
+ MESSAGE_WITH_MEDIA_AND_LINKS: "MESSAGE_WITH_MEDIA_AND_LINKS",
175
171
  } as const;
176
172
 
177
173
  export type JobLocation = (typeof JOB_LOCATIONS)[keyof typeof JOB_LOCATIONS];
178
174
 
179
175
  export const GIG_TYPE = {
180
- ONE_TIME: "One Time",
181
- RECURRING: "Recurring",
176
+ ONE_TIME: "One Time",
177
+ RECURRING: "Recurring",
182
178
  } as const;
183
179
 
184
180
  export const WAGES_CURRENCY = {
185
- USD: "USD (United States Dollar)",
186
- EUR: "EUR (Euro)",
187
- GBP: "GBP (British Pound Sterling)",
188
- NGN: "NGN (Nigerian Naira)",
189
- CAD: "CAD (Canadian Dollar)",
190
- AUD: "AUD (Australian Dollar)",
191
- JPY: "JPY (Japanese Yen)",
192
- CHF: "CHF (Swiss Franc)",
193
- INR: "INR (Indian Rupee)",
194
- ZAR: "ZAR (South African Rand)",
181
+ USD: "USD (United States Dollar)",
182
+ EUR: "EUR (Euro)",
183
+ GBP: "GBP (British Pound Sterling)",
184
+ NGN: "NGN (Nigerian Naira)",
185
+ CAD: "CAD (Canadian Dollar)",
186
+ AUD: "AUD (Australian Dollar)",
187
+ JPY: "JPY (Japanese Yen)",
188
+ CHF: "CHF (Swiss Franc)",
189
+ INR: "INR (Indian Rupee)",
190
+ ZAR: "ZAR (South African Rand)",
195
191
  } as const;
196
192
 
197
193
  export const JOB_STATUS = {
198
- ACTIVE: "ACTIVE",
199
- DRAFT: "DRAFT",
200
- ARCHIVED: "ARCHIVED",
201
- DELETED: "DELETED",
194
+ ACTIVE: "ACTIVE",
195
+ DRAFT: "DRAFT",
196
+ ARCHIVED: "ARCHIVED",
197
+ DELETED: "DELETED",
202
198
  } as const;
203
199
 
204
200
  export const POST_BADGE_TYPES = {
205
- NETWORKING: "Networking",
206
- FUNDING: "Funding",
207
- COLLABORATION: "Collaboration",
208
- OPPORTUNITIES: "Opportunities",
209
- SHOWCASE: "Showcase",
210
- LEARNING: "Learning",
211
- DISCUSSION: "Discussion",
212
- MENTORSHIP: "Mentorship",
201
+ NETWORKING: "Networking",
202
+ FUNDING: "Funding",
203
+ COLLABORATION: "Collaboration",
204
+ OPPORTUNITIES: "Opportunities",
205
+ SHOWCASE: "Showcase",
206
+ LEARNING: "Learning",
207
+ DISCUSSION: "Discussion",
208
+ MENTORSHIP: "Mentorship",
213
209
  } as const;
214
210
 
215
211
  export const ACTIVITY_TYPES = {
216
- LIKE: "LIKE",
217
- UNLIKE: "UNLIKE",
218
- BOOKMARK: "BOOKMARK",
219
- UNBOOKMARK: "UNBOOKMARK",
220
- VIEW: "VIEW",
212
+ LIKE: "LIKE",
213
+ UNLIKE: "UNLIKE",
214
+ BOOKMARK: "BOOKMARK",
215
+ UNBOOKMARK: "UNBOOKMARK",
216
+ VIEW: "VIEW",
221
217
  } as const;
222
218
 
223
219
  export const LINK_TYPES = {
224
- INSTAGRAM: "Instagram",
225
- LINKEDIN: "LinkedIn",
226
- TWITTER: "Twitter",
227
- YOUTUBE: "Youtube",
228
- PORTFOLIO: "Portfolio Website",
229
- GENERIC_WEBSITE: "Generic Website",
220
+ INSTAGRAM: "Instagram",
221
+ LINKEDIN: "LinkedIn",
222
+ TWITTER: "Twitter",
223
+ YOUTUBE: "Youtube",
224
+ PORTFOLIO: "Portfolio Website",
225
+ GENERIC_WEBSITE: "Generic Website",
230
226
  } as const;
231
227
 
232
228
  export const APPLICATION_STATUS = {
233
- SENT: "Application Sent",
234
- OPENED: "Opened",
235
- REJECTED: "Rejected",
236
- DECLINED: "Declined",
237
- OFFERED: "Offered",
238
- HIRED: "Hired",
229
+ SENT: "Application Sent",
230
+ OPENED: "Opened",
231
+ REJECTED: "Rejected",
232
+ DECLINED: "Declined",
233
+ OFFERED: "Offered",
234
+ HIRED: "Hired",
239
235
  } as const;
240
236
 
237
+ export const NOTIFICATION_TYPES = {
238
+ FOLLOW: "Follow",
239
+ LIKE: "Like",
240
+ COMMENT: "Comment",
241
+ REPLY: "Reply",
242
+ MESSAGE: "Message",
243
+ JOB_APPLICATION: "Job Application",
244
+ APPLICATION_STATUS_CHANGE: "Application Status Change",
245
+ SYSTEM_STRIKE: "System Strike",
246
+ PROJECT_FEATURED: "Project Featured",
247
+ } as const;
248
+
249
+ export type NotificationType =
250
+ (typeof NOTIFICATION_TYPES)[keyof typeof NOTIFICATION_TYPES];
251
+
241
252
  export type ApplicationStatus =
242
- (typeof APPLICATION_STATUS)[keyof typeof APPLICATION_STATUS];
253
+ (typeof APPLICATION_STATUS)[keyof typeof APPLICATION_STATUS];
243
254
  export type ActivityType = (typeof ACTIVITY_TYPES)[keyof typeof ACTIVITY_TYPES];
244
255
  export type PostBadgeType =
245
- (typeof POST_BADGE_TYPES)[keyof typeof POST_BADGE_TYPES];
256
+ (typeof POST_BADGE_TYPES)[keyof typeof POST_BADGE_TYPES];
246
257
  export type JobSections = (typeof JOB_SECTIONS)[keyof typeof JOB_SECTIONS];
247
258
  export type WagesCurrency =
248
- (typeof WAGES_CURRENCY)[keyof typeof WAGES_CURRENCY];
259
+ (typeof WAGES_CURRENCY)[keyof typeof WAGES_CURRENCY];
249
260
  export type JobStatus = (typeof JOB_STATUS)[keyof typeof JOB_STATUS];
250
261
  export type Role = (typeof ROLES)[keyof typeof ROLES];
251
262
  export type JobType = (typeof JOB_TYPE)[keyof typeof JOB_TYPE];
252
263
  export type WorkMode = (typeof WORK_MODE)[keyof typeof WORK_MODE];
253
264
  export type GigType = (typeof GIG_TYPE)[keyof typeof GIG_TYPE];
254
265
  export type EmploymentType =
255
- (typeof EMPLOYMENT_TYPE)[keyof typeof EMPLOYMENT_TYPE];
266
+ (typeof EMPLOYMENT_TYPE)[keyof typeof EMPLOYMENT_TYPE];
256
267
  export type JobAvailabilityTypes =
257
- (typeof JOB_AVAILABILITY_TYPES)[keyof typeof JOB_AVAILABILITY_TYPES];
268
+ (typeof JOB_AVAILABILITY_TYPES)[keyof typeof JOB_AVAILABILITY_TYPES];
258
269
  export type WageTypes = (typeof WAGE_TYPES)[keyof typeof WAGE_TYPES];
259
270
  export type PostType = (typeof POST_TYPES)[keyof typeof POST_TYPES];
260
271
  export type MessageType = (typeof MESSAGE_TYPES)[keyof typeof MESSAGE_TYPES];
261
272
  export type LinkType = (typeof LINK_TYPES)[keyof typeof LINK_TYPES];
262
273
  export type ActivityParentType =
263
- (typeof ACTIVITY_PARENT_TYPES)[keyof typeof ACTIVITY_PARENT_TYPES];
274
+ (typeof ACTIVITY_PARENT_TYPES)[keyof typeof ACTIVITY_PARENT_TYPES];
264
275
  export type UserStatus = (typeof USER_STATUSES)[keyof typeof USER_STATUSES];
265
276
  export type ClientType = (typeof CLIENT_TYPES)[keyof typeof CLIENT_TYPES];
266
277
  export type ExperienceLevel =
267
- (typeof EXPERIENCE_LEVELS)[keyof typeof EXPERIENCE_LEVELS];
278
+ (typeof EXPERIENCE_LEVELS)[keyof typeof EXPERIENCE_LEVELS];
268
279
  export type OnboardingPage =
269
- (typeof ONBOARDING_PAGES)[keyof typeof ONBOARDING_PAGES];
280
+ (typeof ONBOARDING_PAGES)[keyof typeof ONBOARDING_PAGES];
270
281
  export type InvestorType = (typeof INVESTOR_TYPES)[keyof typeof INVESTOR_TYPES];
271
282
  export type InvestmentSize =
272
- (typeof INVESTMENT_SIZES)[keyof typeof INVESTMENT_SIZES];
283
+ (typeof INVESTMENT_SIZES)[keyof typeof INVESTMENT_SIZES];
273
284
  export type GeographicFocus =
274
- (typeof GEOGRAPHIC_FOCUS)[keyof typeof GEOGRAPHIC_FOCUS];
285
+ (typeof GEOGRAPHIC_FOCUS)[keyof typeof GEOGRAPHIC_FOCUS];
275
286
  export type InvestorVerificationDocumentStatus =
276
- (typeof INVESTOR_VERIFICATION_DOCUMENT_STATUSES)[keyof typeof INVESTOR_VERIFICATION_DOCUMENT_STATUSES];
287
+ (typeof INVESTOR_VERIFICATION_DOCUMENT_STATUSES)[keyof typeof INVESTOR_VERIFICATION_DOCUMENT_STATUSES];
277
288
  export type InvestorVerificationDocumentType =
278
- (typeof INVESTOR_VERIFICATION_DOCUMENT_TYPES)[keyof typeof INVESTOR_VERIFICATION_DOCUMENT_TYPES];
289
+ (typeof INVESTOR_VERIFICATION_DOCUMENT_TYPES)[keyof typeof INVESTOR_VERIFICATION_DOCUMENT_TYPES];
279
290
 
280
291
  export const API_ROUTES = {
281
- healthCheck: "/health",
282
- username: {
283
- base: "/usernames",
284
- checkAvailability: "/:username/availability",
285
- },
286
- personal: {
287
- base: "/me",
288
- getUser: "",
289
- getProfile: "/profile",
290
- getProjects: "/projects",
291
- getProjectBookmarks: "/project-bookmarks",
292
- getFollowers: "/followers",
293
- getFollowing: "/following",
294
- },
295
- user: {
296
- base: "/users",
297
- getUser: "/:value",
298
- getProfile: "/:value/profile",
299
- getProjects: "/:value/projects",
300
- getFollowers: "/:userId/followers",
301
- getFollowing: "/:userId/following",
302
- followUser: "/:userId/follow",
303
- unfollowUser: "/:userId/unfollow",
304
- reserveUsername: "/reserve-username",
305
- },
306
- redirect: {
307
- base: "/redirect",
308
- passwordReset: "/password-reset",
309
- verifiedUser: "/verified-user",
310
- googleProfile: "/google-profile",
311
- newGoogleProfile: "/new-google-profile",
312
- },
313
- file: {
314
- base: "/files",
315
- getPresignedUploadUrl: "/get-upload-url",
316
- getPresignedDownloadUrl: "/:fileId/download-url",
317
- getPublicUrl: "/:fileId/public-url",
318
- createFile: "",
319
- deleteFile: "/:fileId",
320
- },
321
- disciplines: {
322
- base: "/disciplines",
323
- getDisciplines: "",
324
- getSingleDiscipline: "/:slug",
325
- addDisciplines: "",
326
- deleteDiscipline: "/:slug",
327
- },
328
- creatives: {
329
- base: "/creatives",
330
- createCreative: "",
331
- getCreative: "/:value",
332
- updateCreative: "",
333
- },
334
- brands: {
335
- base: "/brands",
336
- createBrand: "",
337
- getBrand: "/:value",
338
- updateBrand: "",
339
- },
340
- investors: {
341
- base: "/investors",
342
- createInvestor: "",
343
- getInvestor: "/:value",
344
- updateInvestor: "",
345
- },
346
- projects: {
347
- base: "/projects",
348
- createProject: "",
349
- updateProject: "",
350
- listProjects: "",
351
- getProject: "/:projectId",
352
- deleteProject: "/:projectId",
353
- commentOnProject: "/:projectId/comment",
354
- deleteCommentOnProject: "/:projectId/comments/:commentId",
355
- bookmarkProject: "/:projectId/bookmark",
356
- unbookmarkProject: "/:projectId/unbookmark",
357
- likeProject: "/:projectId/like",
358
- unlikeProject: "/:projectId/unlike",
359
- viewProject: "/:projectId/view",
360
- getProjectComments: "/:projectId/comments",
361
- getProjectLikes: "/:projectId/likes",
362
- getProjectBookmarks: "/:projectId/bookmarks",
363
- getProjectViews: "/:projectId/views",
364
- getProjectUser: "/:projectId/user",
365
- },
292
+ healthCheck: "/health",
293
+ username: {
294
+ base: "/usernames",
295
+ checkAvailability: "/:username/availability",
296
+ },
297
+ personal: {
298
+ base: "/me",
299
+ getUser: "",
300
+ getProfile: "/profile",
301
+ getProjects: "/projects",
302
+ getProjectBookmarks: "/project-bookmarks",
303
+ getFollowers: "/followers",
304
+ getFollowing: "/following",
305
+ },
306
+ user: {
307
+ base: "/users",
308
+ getUser: "/:value",
309
+ getProfile: "/:value/profile",
310
+ getProjects: "/:value/projects",
311
+ getFollowers: "/:userId/followers",
312
+ getFollowing: "/:userId/following",
313
+ followUser: "/:userId/follow",
314
+ unfollowUser: "/:userId/unfollow",
315
+ reserveUsername: "/reserve-username",
316
+ },
317
+ redirect: {
318
+ base: "/redirect",
319
+ passwordReset: "/password-reset",
320
+ verifiedUser: "/verified-user",
321
+ googleProfile: "/google-profile",
322
+ newGoogleProfile: "/new-google-profile",
323
+ },
324
+ file: {
325
+ base: "/files",
326
+ getPresignedUploadUrl: "/get-upload-url",
327
+ getPresignedDownloadUrl: "/:fileId/download-url",
328
+ getPublicUrl: "/:fileId/public-url",
329
+ createFile: "",
330
+ deleteFile: "/:fileId",
331
+ },
332
+ disciplines: {
333
+ base: "/disciplines",
334
+ getDisciplines: "",
335
+ getSingleDiscipline: "/:slug",
336
+ addDisciplines: "",
337
+ deleteDiscipline: "/:slug",
338
+ },
339
+ creatives: {
340
+ base: "/creatives",
341
+ createCreative: "",
342
+ getCreative: "/:value",
343
+ updateCreative: "",
344
+ },
345
+ brands: {
346
+ base: "/brands",
347
+ createBrand: "",
348
+ getBrand: "/:value",
349
+ updateBrand: "",
350
+ },
351
+ investors: {
352
+ base: "/investors",
353
+ createInvestor: "",
354
+ getInvestor: "/:value",
355
+ updateInvestor: "",
356
+ },
357
+ projects: {
358
+ base: "/projects",
359
+ createProject: "",
360
+ updateProject: "",
361
+ listProjects: "",
362
+ getProject: "/:projectId",
363
+ deleteProject: "/:projectId",
364
+ commentOnProject: "/:projectId/comment",
365
+ deleteCommentOnProject: "/:projectId/comments/:commentId",
366
+ bookmarkProject: "/:projectId/bookmark",
367
+ unbookmarkProject: "/:projectId/unbookmark",
368
+ likeProject: "/:projectId/like",
369
+ unlikeProject: "/:projectId/unlike",
370
+ viewProject: "/:projectId/view",
371
+ getProjectComments: "/:projectId/comments",
372
+ getProjectLikes: "/:projectId/likes",
373
+ getProjectBookmarks: "/:projectId/bookmarks",
374
+ getProjectViews: "/:projectId/views",
375
+ getProjectUser: "/:projectId/user",
376
+ },
366
377
  } as const;
367
378
 
368
379
  export const DEFAULT_DISCIPLINES = [
369
- { name: "3D Art", slug: "3d_art" },
370
- { name: "Advertising & Marketing", slug: "advertising_marketing" },
371
- { name: "AI & Machine Learning Art", slug: "ai_machine_learning_art" },
372
- { name: "Animation & Motion", slug: "animation_motion" },
373
- { name: "Architecture & Interior", slug: "architecture_interior" },
374
- { name: "Art Business", slug: "art_business" },
375
- { name: "Art Challenges & Community", slug: "art_challenges_community" },
376
- { name: "Art Education", slug: "art_education" },
377
- { name: "Book & Editorial Design", slug: "book_editorial_design" },
378
- { name: "Brand Strategy", slug: "brand_strategy" },
379
- { name: "Business & Consulting", slug: "business_consulting" },
380
- { name: "Calligraphy & Penmanship", slug: "calligraphy_penmanship" },
381
- {
382
- name: "Character Rigging & Animation Setup",
383
- slug: "character_rigging_setup",
384
- },
385
- { name: "Comics & Webtoons", slug: "comics_webtoons" },
386
- { name: "Concept Art", slug: "concept_art" },
387
- { name: "Content Creation", slug: "content_creation" },
388
- {
389
- name: "Copywriting & Content Writing",
390
- slug: "copywriting_content_writing",
391
- },
392
- { name: "Crafts & DIY", slug: "crafts_diy" },
393
- { name: "Creative Coding", slug: "creative_coding" },
394
- { name: "Data Science & Analysis", slug: "data_science_analysis" },
395
- { name: "Data Visualization", slug: "data_visualization" },
396
- { name: "Digital Art", slug: "digital_art" },
397
- { name: "Digital Painting & Matte Painting", slug: "digital_painting_matte" },
398
- { name: "E-commerce & Store Design", slug: "ecommerce_store_design" },
399
- { name: "Fashion & Style", slug: "fashion_style" },
400
- { name: "Food Content", slug: "food_content" },
401
- { name: "Game Development", slug: "game_development" },
402
- { name: "Graphic Design", slug: "graphic_design" },
403
- { name: "Illustration", slug: "illustration" },
404
- { name: "Lettering & Typography", slug: "lettering_typography" },
405
- { name: "Miniature & Model Making", slug: "miniature_model_making" },
406
- { name: "Music Performance", slug: "music_performance" },
407
- { name: "Music Production", slug: "music_production" },
408
- { name: "Photography", slug: "photography" },
409
- { name: "Pixel Art", slug: "pixel_art" },
410
- {
411
- name: "Product Strategy & Management",
412
- slug: "product_strategy_management",
413
- },
414
- { name: "Sculpture & 3D Crafts", slug: "sculpture_3d_crafts" },
415
- { name: "Sound Design & Audio", slug: "sound_design_audio" },
416
- { name: "Storyboarding & Pre-Vis", slug: "storyboarding_previs" },
417
- { name: "Street Art & Murals", slug: "street_art_murals" },
418
- { name: "Tattoo Art", slug: "tattoo_art" },
419
- { name: "Technical Illustration", slug: "technical_illustration" },
420
- { name: "Technical Writing", slug: "technical_writing" },
421
- { name: "Traditional Art", slug: "traditional_art" },
422
- { name: "Translation & Localization", slug: "translation_localization" },
423
- { name: "UI/UX Design", slug: "ui_ux_design" },
424
- { name: "Video Content", slug: "video_content" },
425
- { name: "Virtual/Augmented Reality", slug: "virtual_augmented_reality" },
426
- { name: "Visual Effects (VFX)", slug: "visual_effects_vfx" },
427
- { name: "Web Development (Back-End)", slug: "web_development_backend" },
428
- { name: "Web Development (Front-End)", slug: "web_development_frontend" },
429
- { name: "Writing & Storytelling", slug: "writing_storytelling" },
380
+ { name: "3D Art", slug: "3d_art" },
381
+ { name: "Advertising & Marketing", slug: "advertising_marketing" },
382
+ { name: "AI & Machine Learning Art", slug: "ai_machine_learning_art" },
383
+ { name: "Animation & Motion", slug: "animation_motion" },
384
+ { name: "Architecture & Interior", slug: "architecture_interior" },
385
+ { name: "Art Business", slug: "art_business" },
386
+ { name: "Art Challenges & Community", slug: "art_challenges_community" },
387
+ { name: "Art Education", slug: "art_education" },
388
+ { name: "Book & Editorial Design", slug: "book_editorial_design" },
389
+ { name: "Brand Strategy", slug: "brand_strategy" },
390
+ { name: "Business & Consulting", slug: "business_consulting" },
391
+ { name: "Calligraphy & Penmanship", slug: "calligraphy_penmanship" },
392
+ {
393
+ name: "Character Rigging & Animation Setup",
394
+ slug: "character_rigging_setup",
395
+ },
396
+ { name: "Comics & Webtoons", slug: "comics_webtoons" },
397
+ { name: "Concept Art", slug: "concept_art" },
398
+ { name: "Content Creation", slug: "content_creation" },
399
+ {
400
+ name: "Copywriting & Content Writing",
401
+ slug: "copywriting_content_writing",
402
+ },
403
+ { name: "Crafts & DIY", slug: "crafts_diy" },
404
+ { name: "Creative Coding", slug: "creative_coding" },
405
+ { name: "Data Science & Analysis", slug: "data_science_analysis" },
406
+ { name: "Data Visualization", slug: "data_visualization" },
407
+ { name: "Digital Art", slug: "digital_art" },
408
+ {
409
+ name: "Digital Painting & Matte Painting",
410
+ slug: "digital_painting_matte",
411
+ },
412
+ { name: "E-commerce & Store Design", slug: "ecommerce_store_design" },
413
+ { name: "Fashion & Style", slug: "fashion_style" },
414
+ { name: "Food Content", slug: "food_content" },
415
+ { name: "Game Development", slug: "game_development" },
416
+ { name: "Graphic Design", slug: "graphic_design" },
417
+ { name: "Illustration", slug: "illustration" },
418
+ { name: "Lettering & Typography", slug: "lettering_typography" },
419
+ { name: "Miniature & Model Making", slug: "miniature_model_making" },
420
+ { name: "Music Performance", slug: "music_performance" },
421
+ { name: "Music Production", slug: "music_production" },
422
+ { name: "Photography", slug: "photography" },
423
+ { name: "Pixel Art", slug: "pixel_art" },
424
+ {
425
+ name: "Product Strategy & Management",
426
+ slug: "product_strategy_management",
427
+ },
428
+ { name: "Sculpture & 3D Crafts", slug: "sculpture_3d_crafts" },
429
+ { name: "Sound Design & Audio", slug: "sound_design_audio" },
430
+ { name: "Storyboarding & Pre-Vis", slug: "storyboarding_previs" },
431
+ { name: "Street Art & Murals", slug: "street_art_murals" },
432
+ { name: "Tattoo Art", slug: "tattoo_art" },
433
+ { name: "Technical Illustration", slug: "technical_illustration" },
434
+ { name: "Technical Writing", slug: "technical_writing" },
435
+ { name: "Traditional Art", slug: "traditional_art" },
436
+ { name: "Translation & Localization", slug: "translation_localization" },
437
+ { name: "UI/UX Design", slug: "ui_ux_design" },
438
+ { name: "Video Content", slug: "video_content" },
439
+ { name: "Virtual/Augmented Reality", slug: "virtual_augmented_reality" },
440
+ { name: "Visual Effects (VFX)", slug: "visual_effects_vfx" },
441
+ { name: "Web Development (Back-End)", slug: "web_development_backend" },
442
+ { name: "Web Development (Front-End)", slug: "web_development_frontend" },
443
+ { name: "Writing & Storytelling", slug: "writing_storytelling" },
430
444
  ];