founder-schema 0.18.0 → 0.20.0
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/README.md +110 -3
- package/dist/access/permissions.d.ts +3 -3
- package/dist/access/permissions.d.ts.map +1 -1
- package/dist/access/permissions.js.map +1 -1
- package/dist/core/common.d.ts +49 -28
- package/dist/core/common.d.ts.map +1 -1
- package/dist/core/common.js +65 -26
- package/dist/core/common.js.map +1 -1
- package/dist/core/deletion.d.ts +40 -0
- package/dist/core/deletion.d.ts.map +1 -0
- package/dist/core/deletion.js +39 -0
- package/dist/core/deletion.js.map +1 -0
- package/dist/core/limits.d.ts +25 -0
- package/dist/core/limits.d.ts.map +1 -1
- package/dist/core/limits.js +25 -0
- package/dist/core/limits.js.map +1 -1
- package/dist/core/validation.d.ts +13 -0
- package/dist/core/validation.d.ts.map +1 -1
- package/dist/core/validation.js +13 -0
- package/dist/core/validation.js.map +1 -1
- package/dist/domains/audit/audit.d.ts +36 -12
- package/dist/domains/audit/audit.d.ts.map +1 -1
- package/dist/domains/audit/audit.js +9 -10
- package/dist/domains/audit/audit.js.map +1 -1
- package/dist/domains/billing/billing.d.ts +29 -13
- package/dist/domains/billing/billing.d.ts.map +1 -1
- package/dist/domains/billing/billing.js +2 -3
- package/dist/domains/billing/billing.js.map +1 -1
- package/dist/domains/chat/chat.d.ts +19 -5
- package/dist/domains/chat/chat.d.ts.map +1 -1
- package/dist/domains/chat/chat.js +10 -10
- package/dist/domains/chat/chat.js.map +1 -1
- package/dist/domains/communities/communities.d.ts +95 -57
- package/dist/domains/communities/communities.d.ts.map +1 -1
- package/dist/domains/contributions/contributions.d.ts +28 -12
- package/dist/domains/contributions/contributions.d.ts.map +1 -1
- package/dist/domains/contributions/contributions.js +3 -0
- package/dist/domains/contributions/contributions.js.map +1 -1
- package/dist/domains/discover/discover.d.ts +2 -2
- package/dist/domains/feed/feed.d.ts +111 -63
- package/dist/domains/feed/feed.d.ts.map +1 -1
- package/dist/domains/feed/feed.js +3 -0
- package/dist/domains/feed/feed.js.map +1 -1
- package/dist/domains/location/areas.d.ts +338 -0
- package/dist/domains/location/areas.d.ts.map +1 -0
- package/dist/domains/location/areas.js +241 -0
- package/dist/domains/location/areas.js.map +1 -0
- package/dist/domains/location/india.d.ts +31 -123
- package/dist/domains/location/india.d.ts.map +1 -1
- package/dist/domains/location/india.js +98 -64
- package/dist/domains/location/india.js.map +1 -1
- package/dist/domains/media/media.d.ts +22 -0
- package/dist/domains/media/media.d.ts.map +1 -1
- package/dist/domains/media/media.js +20 -0
- package/dist/domains/media/media.js.map +1 -1
- package/dist/domains/members/members.d.ts +26 -9
- package/dist/domains/members/members.d.ts.map +1 -1
- package/dist/domains/members/members.js +9 -10
- package/dist/domains/members/members.js.map +1 -1
- package/dist/domains/membership/membership.d.ts +19 -0
- package/dist/domains/membership/membership.d.ts.map +1 -1
- package/dist/domains/membership/membership.js +10 -0
- package/dist/domains/membership/membership.js.map +1 -1
- package/dist/domains/moderation/moderation.d.ts +8 -2
- package/dist/domains/moderation/moderation.d.ts.map +1 -1
- package/dist/domains/moderation/moderation.js +3 -6
- package/dist/domains/moderation/moderation.js.map +1 -1
- package/dist/domains/notifications/notifications.d.ts +10 -6
- package/dist/domains/notifications/notifications.d.ts.map +1 -1
- package/dist/domains/onboarding/onboarding-answers.d.ts +9 -12
- package/dist/domains/onboarding/onboarding-answers.d.ts.map +1 -1
- package/dist/domains/onboarding/onboarding-answers.js +12 -19
- package/dist/domains/onboarding/onboarding-answers.js.map +1 -1
- package/dist/domains/onboarding/onboarding.d.ts +121 -98
- package/dist/domains/onboarding/onboarding.d.ts.map +1 -1
- package/dist/domains/onboarding/onboarding.js +30 -28
- package/dist/domains/onboarding/onboarding.js.map +1 -1
- package/dist/domains/people/person.d.ts +54 -0
- package/dist/domains/people/person.d.ts.map +1 -0
- package/dist/domains/people/person.js +73 -0
- package/dist/domains/people/person.js.map +1 -0
- package/dist/domains/products/products.d.ts +62 -33
- package/dist/domains/products/products.d.ts.map +1 -1
- package/dist/domains/products/products.js +3 -0
- package/dist/domains/products/products.js.map +1 -1
- package/dist/domains/profile/founder-profile.d.ts +93 -60
- package/dist/domains/profile/founder-profile.d.ts.map +1 -1
- package/dist/domains/profile/founder-profile.js +55 -25
- package/dist/domains/profile/founder-profile.js.map +1 -1
- package/dist/domains/reviews/reviews.d.ts +25 -15
- package/dist/domains/reviews/reviews.d.ts.map +1 -1
- package/dist/domains/support/support.d.ts +47 -10
- package/dist/domains/support/support.d.ts.map +1 -1
- package/dist/domains/support/support.js +4 -2
- package/dist/domains/support/support.js.map +1 -1
- package/dist/domains/team/team.d.ts +9 -3
- package/dist/domains/team/team.d.ts.map +1 -1
- package/dist/domains/team/team.js +3 -6
- package/dist/domains/team/team.js.map +1 -1
- package/dist/index.d.ts +13 -10
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +17 -11
- package/dist/index.js.map +1 -1
- package/package.json +3 -2
- package/dist/account.d.ts +0 -40
- package/dist/account.d.ts.map +0 -1
- package/dist/account.js +0 -39
- package/dist/account.js.map +0 -1
- package/dist/chat.d.ts +0 -187
- package/dist/chat.d.ts.map +0 -1
- package/dist/chat.js +0 -189
- package/dist/chat.js.map +0 -1
- package/dist/common.d.ts +0 -304
- package/dist/common.d.ts.map +0 -1
- package/dist/common.js +0 -340
- package/dist/common.js.map +0 -1
- package/dist/discover.d.ts +0 -245
- package/dist/discover.d.ts.map +0 -1
- package/dist/discover.js +0 -68
- package/dist/discover.js.map +0 -1
- package/dist/errors.d.ts +0 -85
- package/dist/errors.d.ts.map +0 -1
- package/dist/errors.js +0 -89
- package/dist/errors.js.map +0 -1
- package/dist/feed.d.ts +0 -1658
- package/dist/feed.d.ts.map +0 -1
- package/dist/feed.js +0 -623
- package/dist/feed.js.map +0 -1
- package/dist/founder-profile.d.ts +0 -387
- package/dist/founder-profile.d.ts.map +0 -1
- package/dist/founder-profile.js +0 -180
- package/dist/founder-profile.js.map +0 -1
- package/dist/limits.d.ts +0 -76
- package/dist/limits.d.ts.map +0 -1
- package/dist/limits.js +0 -84
- package/dist/limits.js.map +0 -1
- package/dist/onboarding.d.ts +0 -1018
- package/dist/onboarding.d.ts.map +0 -1
- package/dist/onboarding.js +0 -717
- package/dist/onboarding.js.map +0 -1
- package/dist/responses/common.d.ts +0 -167
- package/dist/responses/common.d.ts.map +0 -1
- package/dist/responses/common.js +0 -67
- package/dist/responses/common.js.map +0 -1
- package/dist/responses/index.d.ts +0 -7
- package/dist/responses/index.d.ts.map +0 -1
- package/dist/responses/index.js +0 -7
- package/dist/responses/index.js.map +0 -1
- package/dist/uploads.d.ts +0 -113
- package/dist/uploads.d.ts.map +0 -1
- package/dist/uploads.js +0 -106
- package/dist/uploads.js.map +0 -1
- package/dist/validation.d.ts +0 -136
- package/dist/validation.d.ts.map +0 -1
- package/dist/validation.js +0 -142
- package/dist/validation.js.map +0 -1
|
@@ -457,8 +457,9 @@ export declare const teamSizeDigits: (raw: string) => string;
|
|
|
457
457
|
*
|
|
458
458
|
* Screens may hold a different shape on top of this one. Derive that type from
|
|
459
459
|
* `OnboardingForm` rather than writing it out, so a field added here reaches
|
|
460
|
-
* every screen. (Since 0.16.0 the name is asked as one full name
|
|
461
|
-
* `
|
|
460
|
+
* every screen. (Since 0.16.0 the name is asked as one full name; since 0.20.0
|
|
461
|
+
* its key is `fullName`, and the server splits it into the first and last name
|
|
462
|
+
* it stores, the display name being those two joined.)
|
|
462
463
|
*
|
|
463
464
|
* A stored draft is UNTRUSTED when it comes back: an older client, or another
|
|
464
465
|
* one, wrote it, and the server stores values opaquely. Read it with
|
|
@@ -471,7 +472,7 @@ export declare const PHONE_INPUT_MAX = 20;
|
|
|
471
472
|
/** Longest guidelines version an answer may carry (`GUIDELINES_VERSION` is a date). */
|
|
472
473
|
export declare const GUIDELINES_VERSION_MAX = 32;
|
|
473
474
|
export declare const onboardingFormSchema: z.ZodObject<{
|
|
474
|
-
|
|
475
|
+
fullName: z.ZodString;
|
|
475
476
|
gender: z.ZodNullable<z.ZodEnum<{
|
|
476
477
|
other: "other";
|
|
477
478
|
male: "male";
|
|
@@ -506,9 +507,57 @@ export declare const onboardingFormSchema: z.ZodObject<{
|
|
|
506
507
|
instagram: z.ZodString;
|
|
507
508
|
}, z.core.$strip>;
|
|
508
509
|
location: z.ZodNullable<z.ZodObject<{
|
|
509
|
-
|
|
510
|
-
|
|
511
|
-
|
|
510
|
+
state: z.ZodObject<{
|
|
511
|
+
id: z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>;
|
|
512
|
+
name: z.ZodString;
|
|
513
|
+
type: z.ZodEnum<{
|
|
514
|
+
COUNTRY: "COUNTRY";
|
|
515
|
+
STATE: "STATE";
|
|
516
|
+
DISTRICT: "DISTRICT";
|
|
517
|
+
SUB_DISTRICT: "SUB_DISTRICT";
|
|
518
|
+
BLOCK: "BLOCK";
|
|
519
|
+
GRAM_PANCHAYAT: "GRAM_PANCHAYAT";
|
|
520
|
+
VILLAGE: "VILLAGE";
|
|
521
|
+
URBAN_BODY: "URBAN_BODY";
|
|
522
|
+
URBAN_WARD: "URBAN_WARD";
|
|
523
|
+
}>;
|
|
524
|
+
urbanBodyType: z.ZodOptional<z.ZodString>;
|
|
525
|
+
within: z.ZodOptional<z.ZodString>;
|
|
526
|
+
}, z.core.$strip>;
|
|
527
|
+
district: z.ZodObject<{
|
|
528
|
+
id: z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>;
|
|
529
|
+
name: z.ZodString;
|
|
530
|
+
type: z.ZodEnum<{
|
|
531
|
+
COUNTRY: "COUNTRY";
|
|
532
|
+
STATE: "STATE";
|
|
533
|
+
DISTRICT: "DISTRICT";
|
|
534
|
+
SUB_DISTRICT: "SUB_DISTRICT";
|
|
535
|
+
BLOCK: "BLOCK";
|
|
536
|
+
GRAM_PANCHAYAT: "GRAM_PANCHAYAT";
|
|
537
|
+
VILLAGE: "VILLAGE";
|
|
538
|
+
URBAN_BODY: "URBAN_BODY";
|
|
539
|
+
URBAN_WARD: "URBAN_WARD";
|
|
540
|
+
}>;
|
|
541
|
+
urbanBodyType: z.ZodOptional<z.ZodString>;
|
|
542
|
+
within: z.ZodOptional<z.ZodString>;
|
|
543
|
+
}, z.core.$strip>;
|
|
544
|
+
locality: z.ZodNullable<z.ZodObject<{
|
|
545
|
+
id: z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>;
|
|
546
|
+
name: z.ZodString;
|
|
547
|
+
type: z.ZodEnum<{
|
|
548
|
+
COUNTRY: "COUNTRY";
|
|
549
|
+
STATE: "STATE";
|
|
550
|
+
DISTRICT: "DISTRICT";
|
|
551
|
+
SUB_DISTRICT: "SUB_DISTRICT";
|
|
552
|
+
BLOCK: "BLOCK";
|
|
553
|
+
GRAM_PANCHAYAT: "GRAM_PANCHAYAT";
|
|
554
|
+
VILLAGE: "VILLAGE";
|
|
555
|
+
URBAN_BODY: "URBAN_BODY";
|
|
556
|
+
URBAN_WARD: "URBAN_WARD";
|
|
557
|
+
}>;
|
|
558
|
+
urbanBodyType: z.ZodOptional<z.ZodString>;
|
|
559
|
+
within: z.ZodOptional<z.ZodString>;
|
|
560
|
+
}, z.core.$strip>>;
|
|
512
561
|
}, z.core.$strip>>;
|
|
513
562
|
goals: z.ZodArray<z.ZodEnum<{
|
|
514
563
|
find_cofounder: "find_cofounder";
|
|
@@ -704,7 +753,7 @@ export declare function readOnboardingDraft(draft: unknown): OnboardingForm;
|
|
|
704
753
|
* `.shape.<field>`, a step's with `ONBOARDING_STEP_SCHEMAS.<step>`.
|
|
705
754
|
*/
|
|
706
755
|
export declare const completeOnboardingBodySchema: z.ZodObject<{
|
|
707
|
-
|
|
756
|
+
fullName: z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>;
|
|
708
757
|
gender: z.ZodEnum<{
|
|
709
758
|
other: "other";
|
|
710
759
|
male: "male";
|
|
@@ -722,47 +771,10 @@ export declare const completeOnboardingBodySchema: z.ZodObject<{
|
|
|
722
771
|
instagram: z.ZodOptional<z.ZodURL>;
|
|
723
772
|
}, z.core.$strip>>;
|
|
724
773
|
location: z.ZodOptional<z.ZodObject<{
|
|
725
|
-
|
|
726
|
-
|
|
727
|
-
|
|
728
|
-
|
|
729
|
-
Punjab: "Punjab";
|
|
730
|
-
Chandigarh: "Chandigarh";
|
|
731
|
-
Uttarakhand: "Uttarakhand";
|
|
732
|
-
Haryana: "Haryana";
|
|
733
|
-
Delhi: "Delhi";
|
|
734
|
-
Rajasthan: "Rajasthan";
|
|
735
|
-
"Uttar Pradesh": "Uttar Pradesh";
|
|
736
|
-
Bihar: "Bihar";
|
|
737
|
-
Sikkim: "Sikkim";
|
|
738
|
-
"Arunachal Pradesh": "Arunachal Pradesh";
|
|
739
|
-
Nagaland: "Nagaland";
|
|
740
|
-
Manipur: "Manipur";
|
|
741
|
-
Mizoram: "Mizoram";
|
|
742
|
-
Tripura: "Tripura";
|
|
743
|
-
Meghalaya: "Meghalaya";
|
|
744
|
-
Assam: "Assam";
|
|
745
|
-
"West Bengal": "West Bengal";
|
|
746
|
-
Jharkhand: "Jharkhand";
|
|
747
|
-
Odisha: "Odisha";
|
|
748
|
-
Chhattisgarh: "Chhattisgarh";
|
|
749
|
-
"Madhya Pradesh": "Madhya Pradesh";
|
|
750
|
-
Gujarat: "Gujarat";
|
|
751
|
-
"Dadra and Nagar Haveli and Daman and Diu": "Dadra and Nagar Haveli and Daman and Diu";
|
|
752
|
-
Maharashtra: "Maharashtra";
|
|
753
|
-
Karnataka: "Karnataka";
|
|
754
|
-
Goa: "Goa";
|
|
755
|
-
Lakshadweep: "Lakshadweep";
|
|
756
|
-
Kerala: "Kerala";
|
|
757
|
-
"Tamil Nadu": "Tamil Nadu";
|
|
758
|
-
Puducherry: "Puducherry";
|
|
759
|
-
"Andaman and Nicobar Islands": "Andaman and Nicobar Islands";
|
|
760
|
-
Telangana: "Telangana";
|
|
761
|
-
"Andhra Pradesh": "Andhra Pradesh";
|
|
762
|
-
Ladakh: "Ladakh";
|
|
763
|
-
}>>;
|
|
764
|
-
country: z.ZodLiteral<"India">;
|
|
765
|
-
}, z.core.$strip>>;
|
|
774
|
+
stateId: z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>;
|
|
775
|
+
districtId: z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>;
|
|
776
|
+
localityId: z.ZodNullable<z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>>;
|
|
777
|
+
}, z.core.$strict>>;
|
|
766
778
|
goals: z.ZodArray<z.ZodEnum<{
|
|
767
779
|
find_cofounder: "find_cofounder";
|
|
768
780
|
find_investors: "find_investors";
|
|
@@ -955,7 +967,6 @@ export type CompleteOnboardingBodyInput = z.input<typeof completeOnboardingBodyS
|
|
|
955
967
|
*/
|
|
956
968
|
export declare const ONBOARDING_STEP_SCHEMAS: {
|
|
957
969
|
readonly basics: z.ZodObject<{
|
|
958
|
-
displayName: z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>;
|
|
959
970
|
gender: z.ZodEnum<{
|
|
960
971
|
other: "other";
|
|
961
972
|
male: "male";
|
|
@@ -963,6 +974,7 @@ export declare const ONBOARDING_STEP_SCHEMAS: {
|
|
|
963
974
|
prefer_not_to_say: "prefer_not_to_say";
|
|
964
975
|
}>;
|
|
965
976
|
dateOfBirth: z.ZodString;
|
|
977
|
+
fullName: z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>;
|
|
966
978
|
}, z.core.$strip>;
|
|
967
979
|
readonly photo: z.ZodObject<{
|
|
968
980
|
avatarMediaId: z.ZodOptional<z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>>;
|
|
@@ -998,47 +1010,10 @@ export declare const ONBOARDING_STEP_SCHEMAS: {
|
|
|
998
1010
|
}, z.core.$strip>;
|
|
999
1011
|
readonly location: z.ZodObject<{
|
|
1000
1012
|
location: z.ZodOptional<z.ZodObject<{
|
|
1001
|
-
|
|
1002
|
-
|
|
1003
|
-
|
|
1004
|
-
|
|
1005
|
-
Punjab: "Punjab";
|
|
1006
|
-
Chandigarh: "Chandigarh";
|
|
1007
|
-
Uttarakhand: "Uttarakhand";
|
|
1008
|
-
Haryana: "Haryana";
|
|
1009
|
-
Delhi: "Delhi";
|
|
1010
|
-
Rajasthan: "Rajasthan";
|
|
1011
|
-
"Uttar Pradesh": "Uttar Pradesh";
|
|
1012
|
-
Bihar: "Bihar";
|
|
1013
|
-
Sikkim: "Sikkim";
|
|
1014
|
-
"Arunachal Pradesh": "Arunachal Pradesh";
|
|
1015
|
-
Nagaland: "Nagaland";
|
|
1016
|
-
Manipur: "Manipur";
|
|
1017
|
-
Mizoram: "Mizoram";
|
|
1018
|
-
Tripura: "Tripura";
|
|
1019
|
-
Meghalaya: "Meghalaya";
|
|
1020
|
-
Assam: "Assam";
|
|
1021
|
-
"West Bengal": "West Bengal";
|
|
1022
|
-
Jharkhand: "Jharkhand";
|
|
1023
|
-
Odisha: "Odisha";
|
|
1024
|
-
Chhattisgarh: "Chhattisgarh";
|
|
1025
|
-
"Madhya Pradesh": "Madhya Pradesh";
|
|
1026
|
-
Gujarat: "Gujarat";
|
|
1027
|
-
"Dadra and Nagar Haveli and Daman and Diu": "Dadra and Nagar Haveli and Daman and Diu";
|
|
1028
|
-
Maharashtra: "Maharashtra";
|
|
1029
|
-
Karnataka: "Karnataka";
|
|
1030
|
-
Goa: "Goa";
|
|
1031
|
-
Lakshadweep: "Lakshadweep";
|
|
1032
|
-
Kerala: "Kerala";
|
|
1033
|
-
"Tamil Nadu": "Tamil Nadu";
|
|
1034
|
-
Puducherry: "Puducherry";
|
|
1035
|
-
"Andaman and Nicobar Islands": "Andaman and Nicobar Islands";
|
|
1036
|
-
Telangana: "Telangana";
|
|
1037
|
-
"Andhra Pradesh": "Andhra Pradesh";
|
|
1038
|
-
Ladakh: "Ladakh";
|
|
1039
|
-
}>>;
|
|
1040
|
-
country: z.ZodLiteral<"India">;
|
|
1041
|
-
}, z.core.$strip>>;
|
|
1013
|
+
stateId: z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>;
|
|
1014
|
+
districtId: z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>;
|
|
1015
|
+
localityId: z.ZodNullable<z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>>;
|
|
1016
|
+
}, z.core.$strict>>;
|
|
1042
1017
|
}, z.core.$strip>;
|
|
1043
1018
|
readonly goals: z.ZodObject<{
|
|
1044
1019
|
goals: z.ZodArray<z.ZodEnum<{
|
|
@@ -1259,7 +1234,6 @@ export type CompleteOnboardingResponse = z.infer<typeof completeOnboardingRespon
|
|
|
1259
1234
|
export declare const onboardingDraftKeySchema: z.ZodEnum<{
|
|
1260
1235
|
location: "location";
|
|
1261
1236
|
about: "about";
|
|
1262
|
-
displayName: "displayName";
|
|
1263
1237
|
headline: "headline";
|
|
1264
1238
|
venture: "venture";
|
|
1265
1239
|
skills: "skills";
|
|
@@ -1268,13 +1242,14 @@ export declare const onboardingDraftKeySchema: z.ZodEnum<{
|
|
|
1268
1242
|
phone: "phone";
|
|
1269
1243
|
gender: "gender";
|
|
1270
1244
|
dateOfBirth: "dateOfBirth";
|
|
1245
|
+
fullName: "fullName";
|
|
1271
1246
|
interests: "interests";
|
|
1272
1247
|
avatarMediaId: "avatarMediaId";
|
|
1273
1248
|
businessType: "businessType";
|
|
1274
1249
|
legalStructure: "legalStructure";
|
|
1275
1250
|
guidelinesVersion: "guidelinesVersion";
|
|
1276
1251
|
}>;
|
|
1277
|
-
export declare const ONBOARDING_DRAFT_KEYS: ("location" | "about" | "
|
|
1252
|
+
export declare const ONBOARDING_DRAFT_KEYS: ("location" | "about" | "headline" | "venture" | "skills" | "goals" | "links" | "phone" | "gender" | "dateOfBirth" | "fullName" | "interests" | "avatarMediaId" | "businessType" | "legalStructure" | "guidelinesVersion")[];
|
|
1278
1253
|
export type OnboardingDraftKey = z.infer<typeof onboardingDraftKeySchema>;
|
|
1279
1254
|
/**
|
|
1280
1255
|
* Where the member got to, kept in its own collection, separate from the
|
|
@@ -1296,7 +1271,6 @@ export type OnboardingDraftKey = z.infer<typeof onboardingDraftKeySchema>;
|
|
|
1296
1271
|
export declare const onboardingDraftSchema: z.ZodRecord<z.ZodEnum<{
|
|
1297
1272
|
location: "location";
|
|
1298
1273
|
about: "about";
|
|
1299
|
-
displayName: "displayName";
|
|
1300
1274
|
headline: "headline";
|
|
1301
1275
|
venture: "venture";
|
|
1302
1276
|
skills: "skills";
|
|
@@ -1305,6 +1279,7 @@ export declare const onboardingDraftSchema: z.ZodRecord<z.ZodEnum<{
|
|
|
1305
1279
|
phone: "phone";
|
|
1306
1280
|
gender: "gender";
|
|
1307
1281
|
dateOfBirth: "dateOfBirth";
|
|
1282
|
+
fullName: "fullName";
|
|
1308
1283
|
interests: "interests";
|
|
1309
1284
|
avatarMediaId: "avatarMediaId";
|
|
1310
1285
|
businessType: "businessType";
|
|
@@ -1323,7 +1298,7 @@ export type OnboardingDraft = z.infer<typeof onboardingDraftSchema>;
|
|
|
1323
1298
|
export declare const onboardingProgressUpdateSchema: z.ZodObject<{
|
|
1324
1299
|
step: z.ZodOptional<z.ZodNumber>;
|
|
1325
1300
|
draft: z.ZodOptional<z.ZodObject<{
|
|
1326
|
-
|
|
1301
|
+
fullName: z.ZodOptional<z.ZodString>;
|
|
1327
1302
|
gender: z.ZodOptional<z.ZodNullable<z.ZodEnum<{
|
|
1328
1303
|
other: "other";
|
|
1329
1304
|
male: "male";
|
|
@@ -1358,9 +1333,57 @@ export declare const onboardingProgressUpdateSchema: z.ZodObject<{
|
|
|
1358
1333
|
instagram: z.ZodString;
|
|
1359
1334
|
}, z.core.$strip>>;
|
|
1360
1335
|
location: z.ZodOptional<z.ZodNullable<z.ZodObject<{
|
|
1361
|
-
|
|
1362
|
-
|
|
1363
|
-
|
|
1336
|
+
state: z.ZodObject<{
|
|
1337
|
+
id: z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>;
|
|
1338
|
+
name: z.ZodString;
|
|
1339
|
+
type: z.ZodEnum<{
|
|
1340
|
+
COUNTRY: "COUNTRY";
|
|
1341
|
+
STATE: "STATE";
|
|
1342
|
+
DISTRICT: "DISTRICT";
|
|
1343
|
+
SUB_DISTRICT: "SUB_DISTRICT";
|
|
1344
|
+
BLOCK: "BLOCK";
|
|
1345
|
+
GRAM_PANCHAYAT: "GRAM_PANCHAYAT";
|
|
1346
|
+
VILLAGE: "VILLAGE";
|
|
1347
|
+
URBAN_BODY: "URBAN_BODY";
|
|
1348
|
+
URBAN_WARD: "URBAN_WARD";
|
|
1349
|
+
}>;
|
|
1350
|
+
urbanBodyType: z.ZodOptional<z.ZodString>;
|
|
1351
|
+
within: z.ZodOptional<z.ZodString>;
|
|
1352
|
+
}, z.core.$strip>;
|
|
1353
|
+
district: z.ZodObject<{
|
|
1354
|
+
id: z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>;
|
|
1355
|
+
name: z.ZodString;
|
|
1356
|
+
type: z.ZodEnum<{
|
|
1357
|
+
COUNTRY: "COUNTRY";
|
|
1358
|
+
STATE: "STATE";
|
|
1359
|
+
DISTRICT: "DISTRICT";
|
|
1360
|
+
SUB_DISTRICT: "SUB_DISTRICT";
|
|
1361
|
+
BLOCK: "BLOCK";
|
|
1362
|
+
GRAM_PANCHAYAT: "GRAM_PANCHAYAT";
|
|
1363
|
+
VILLAGE: "VILLAGE";
|
|
1364
|
+
URBAN_BODY: "URBAN_BODY";
|
|
1365
|
+
URBAN_WARD: "URBAN_WARD";
|
|
1366
|
+
}>;
|
|
1367
|
+
urbanBodyType: z.ZodOptional<z.ZodString>;
|
|
1368
|
+
within: z.ZodOptional<z.ZodString>;
|
|
1369
|
+
}, z.core.$strip>;
|
|
1370
|
+
locality: z.ZodNullable<z.ZodObject<{
|
|
1371
|
+
id: z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>;
|
|
1372
|
+
name: z.ZodString;
|
|
1373
|
+
type: z.ZodEnum<{
|
|
1374
|
+
COUNTRY: "COUNTRY";
|
|
1375
|
+
STATE: "STATE";
|
|
1376
|
+
DISTRICT: "DISTRICT";
|
|
1377
|
+
SUB_DISTRICT: "SUB_DISTRICT";
|
|
1378
|
+
BLOCK: "BLOCK";
|
|
1379
|
+
GRAM_PANCHAYAT: "GRAM_PANCHAYAT";
|
|
1380
|
+
VILLAGE: "VILLAGE";
|
|
1381
|
+
URBAN_BODY: "URBAN_BODY";
|
|
1382
|
+
URBAN_WARD: "URBAN_WARD";
|
|
1383
|
+
}>;
|
|
1384
|
+
urbanBodyType: z.ZodOptional<z.ZodString>;
|
|
1385
|
+
within: z.ZodOptional<z.ZodString>;
|
|
1386
|
+
}, z.core.$strip>>;
|
|
1364
1387
|
}, z.core.$strip>>>;
|
|
1365
1388
|
goals: z.ZodOptional<z.ZodArray<z.ZodEnum<{
|
|
1366
1389
|
find_cofounder: "find_cofounder";
|
|
@@ -1533,7 +1556,6 @@ export declare const onboardingStatusSchema: z.ZodObject<{
|
|
|
1533
1556
|
draft: z.ZodOptional<z.ZodRecord<z.ZodEnum<{
|
|
1534
1557
|
location: "location";
|
|
1535
1558
|
about: "about";
|
|
1536
|
-
displayName: "displayName";
|
|
1537
1559
|
headline: "headline";
|
|
1538
1560
|
venture: "venture";
|
|
1539
1561
|
skills: "skills";
|
|
@@ -1542,6 +1564,7 @@ export declare const onboardingStatusSchema: z.ZodObject<{
|
|
|
1542
1564
|
phone: "phone";
|
|
1543
1565
|
gender: "gender";
|
|
1544
1566
|
dateOfBirth: "dateOfBirth";
|
|
1567
|
+
fullName: "fullName";
|
|
1545
1568
|
interests: "interests";
|
|
1546
1569
|
avatarMediaId: "avatarMediaId";
|
|
1547
1570
|
businessType: "businessType";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"onboarding.d.ts","sourceRoot":"","sources":["../../../src/domains/onboarding/onboarding.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAKL,KAAK,IAAI,EAeV,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"onboarding.d.ts","sourceRoot":"","sources":["../../../src/domains/onboarding/onboarding.ts"],"names":[],"mappings":"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"}
|
|
@@ -26,10 +26,10 @@
|
|
|
26
26
|
* @module founder-schema/domains/onboarding
|
|
27
27
|
*/
|
|
28
28
|
import { z } from 'zod';
|
|
29
|
-
import {
|
|
30
|
-
import { ABOUT_MAX,
|
|
29
|
+
import { eachOnce, fullNameSchema, GENDER_VALUES, GOAL_VALUES, genderSchema, goalSchema, INDUSTRY_VALUES, industrySchema, objectIdSchema, optionalTrimmedString, phoneSchema, requiredGoalListSchema, SKILL_VALUES, STARTUP_STAGE_VALUES, skillListSchema, skillSchema, startupStageSchema, usernameSchema, } from '../../core/common.js';
|
|
30
|
+
import { ABOUT_MAX, DAY_MS, DISPLAY_NAME_MAX, HEADLINE_MAX, INDIA_UTC_OFFSET_MS, LINK_URL_MAX, SKILLS_MAX, TEAM_SIZE_MAX, VENTURE_NAME_MAX, } from '../../core/limits.js';
|
|
31
31
|
import { VALIDATION_MESSAGE } from '../../core/validation.js';
|
|
32
|
-
import {
|
|
32
|
+
import { locationPickSchema, placeSchema } from '../location/areas.js';
|
|
33
33
|
import { mediaImageSchema } from '../media/media.js';
|
|
34
34
|
import { founderLinksSchema, ventureSchema } from '../profile/founder-profile.js';
|
|
35
35
|
// ─── Age ─────────────────────────────────────────────────────────────────────
|
|
@@ -581,8 +581,9 @@ export const teamSizeDigits = (raw) => raw.replace(/\D/g, '').slice(0, TEAM_SIZE
|
|
|
581
581
|
*
|
|
582
582
|
* Screens may hold a different shape on top of this one. Derive that type from
|
|
583
583
|
* `OnboardingForm` rather than writing it out, so a field added here reaches
|
|
584
|
-
* every screen. (Since 0.16.0 the name is asked as one full name
|
|
585
|
-
* `
|
|
584
|
+
* every screen. (Since 0.16.0 the name is asked as one full name; since 0.20.0
|
|
585
|
+
* its key is `fullName`, and the server splits it into the first and last name
|
|
586
|
+
* it stores, the display name being those two joined.)
|
|
586
587
|
*
|
|
587
588
|
* A stored draft is UNTRUSTED when it comes back: an older client, or another
|
|
588
589
|
* one, wrote it, and the server stores values opaquely. Read it with
|
|
@@ -595,7 +596,7 @@ export const PHONE_INPUT_MAX = 20;
|
|
|
595
596
|
/** Longest guidelines version an answer may carry (`GUIDELINES_VERSION` is a date). */
|
|
596
597
|
export const GUIDELINES_VERSION_MAX = 32;
|
|
597
598
|
export const onboardingFormSchema = z.object({
|
|
598
|
-
|
|
599
|
+
fullName: z.string().max(DISPLAY_NAME_MAX),
|
|
599
600
|
gender: genderSchema.nullable(),
|
|
600
601
|
/** `YYYY-MM-DD` once complete; whatever has been typed until then. */
|
|
601
602
|
dateOfBirth: z.string().max(DATE_INPUT_MAX),
|
|
@@ -623,14 +624,12 @@ export const onboardingFormSchema = z.object({
|
|
|
623
624
|
x: z.string().max(LINK_URL_MAX),
|
|
624
625
|
instagram: z.string().max(LINK_URL_MAX),
|
|
625
626
|
}),
|
|
626
|
-
/**
|
|
627
|
-
|
|
628
|
-
|
|
629
|
-
|
|
630
|
-
|
|
631
|
-
|
|
632
|
-
})
|
|
633
|
-
.nullable(),
|
|
627
|
+
/**
|
|
628
|
+
* `null` until the member picks a place (the drawer, or GPS then confirmed),
|
|
629
|
+
* and when they leave the step without one (0.19.0: a place from
|
|
630
|
+
* `master_db`, with its names, so the step shows it again after a reload).
|
|
631
|
+
*/
|
|
632
|
+
location: placeSchema.nullable(),
|
|
634
633
|
goals: z.array(goalSchema).max(GOAL_VALUES.length),
|
|
635
634
|
interests: z.array(topicSchema).max(INTERESTS_MAX),
|
|
636
635
|
/**
|
|
@@ -677,7 +676,7 @@ const draftObject = (shape) => z
|
|
|
677
676
|
.catch(null)
|
|
678
677
|
.pipe(z.union([z.null(), z.object(shape)]));
|
|
679
678
|
const draftReaderSchema = z.object({
|
|
680
|
-
|
|
679
|
+
fullName: draftText(DISPLAY_NAME_MAX),
|
|
681
680
|
gender: draftChoice(GENDER_VALUES),
|
|
682
681
|
dateOfBirth: draftText(DATE_INPUT_MAX),
|
|
683
682
|
headline: draftText(HEADLINE_MAX),
|
|
@@ -693,11 +692,9 @@ const draftReaderSchema = z.object({
|
|
|
693
692
|
x: draftText(LINK_URL_MAX),
|
|
694
693
|
instagram: draftText(LINK_URL_MAX),
|
|
695
694
|
}).transform((links) => links ?? { linkedin: '', x: '', instagram: '' }),
|
|
696
|
-
|
|
697
|
-
|
|
698
|
-
|
|
699
|
-
country: draftText(COUNTRY_MAX),
|
|
700
|
-
}),
|
|
695
|
+
// A place, whole or not at all: a draft saved before 0.19.0 held a typed
|
|
696
|
+
// city and state, which name no area, so it reads as "not answered yet".
|
|
697
|
+
location: placeSchema.nullable().catch(null),
|
|
701
698
|
goals: draftList(GOAL_VALUES, GOAL_VALUES.length),
|
|
702
699
|
interests: draftList(TOPIC_VALUES, INTERESTS_MAX),
|
|
703
700
|
venture: draftObject({
|
|
@@ -737,7 +734,12 @@ export const EMPTY_ONBOARDING_VENTURE = {
|
|
|
737
734
|
* Whatever a screen shows by default is that screen's choice.
|
|
738
735
|
*/
|
|
739
736
|
export function readOnboardingDraft(draft) {
|
|
740
|
-
const
|
|
737
|
+
const raw = draft && typeof draft === 'object' && !Array.isArray(draft)
|
|
738
|
+
? draft
|
|
739
|
+
: {};
|
|
740
|
+
// 0.20.0 renamed the name answer `displayName` to `fullName`: a draft saved
|
|
741
|
+
// before keeps the name its member typed.
|
|
742
|
+
const source = 'fullName' in raw || !('displayName' in raw) ? raw : { ...raw, fullName: raw.displayName };
|
|
741
743
|
return draftReaderSchema.parse(source);
|
|
742
744
|
}
|
|
743
745
|
// ─── The finalize body ───────────────────────────────────────────────────────
|
|
@@ -749,8 +751,9 @@ export function readOnboardingDraft(draft) {
|
|
|
749
751
|
*/
|
|
750
752
|
const completeOnboardingBodyFields = z.object({
|
|
751
753
|
// Plain bounds, no custom message: `too_small` with minimum 1 already says
|
|
752
|
-
// "required", and the client words it in the member's language.
|
|
753
|
-
|
|
754
|
+
// "required", and the client words it in the member's language. The full
|
|
755
|
+
// name as typed (0.20.0): the server splits it and stores first and last.
|
|
756
|
+
fullName: fullNameSchema,
|
|
754
757
|
/**
|
|
755
758
|
* ⚠️ NO `username` HERE, and its absence is deliberate.
|
|
756
759
|
*
|
|
@@ -779,11 +782,10 @@ const completeOnboardingBodyFields = z.object({
|
|
|
779
782
|
phone: phoneSchema,
|
|
780
783
|
links: contactLinksSchema.optional(),
|
|
781
784
|
/**
|
|
782
|
-
* Absent when the member
|
|
783
|
-
*
|
|
784
|
-
* screen always showed).
|
|
785
|
+
* Absent when the member left the step without a place. Area ids (0.19.0,
|
|
786
|
+
* `locationPickSchema`): the server names the place from `master_db`.
|
|
785
787
|
*/
|
|
786
|
-
location:
|
|
788
|
+
location: locationPickSchema.optional(),
|
|
787
789
|
/** The shared list rule (each goal once, 0.17.0) plus finish's minimum. */
|
|
788
790
|
goals: requiredGoalListSchema,
|
|
789
791
|
interests: interestsSchema,
|
|
@@ -857,7 +859,7 @@ export const ONBOARDING_STEP_SCHEMAS = {
|
|
|
857
859
|
// 0.16.0: the old `identity` step, split three ways by the user. The basics
|
|
858
860
|
// are the step's only required answers; the photo and the professional
|
|
859
861
|
// details may each be passed over.
|
|
860
|
-
basics: completeOnboardingBodyFields.pick({
|
|
862
|
+
basics: completeOnboardingBodyFields.pick({ fullName: true, gender: true, dateOfBirth: true }),
|
|
861
863
|
photo: completeOnboardingBodyFields.pick({ avatarMediaId: true }),
|
|
862
864
|
professional: completeOnboardingBodyFields.pick({
|
|
863
865
|
headline: true,
|