dating-schema 0.37.3 → 0.37.5
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/dist/profile.d.ts +50 -0
- package/dist/profile.d.ts.map +1 -1
- package/dist/profile.js +10 -0
- package/dist/profile.js.map +1 -1
- package/package.json +1 -1
package/dist/profile.d.ts
CHANGED
|
@@ -37,6 +37,22 @@ export declare const fullProfileSchema: z.ZodObject<{
|
|
|
37
37
|
other: "other";
|
|
38
38
|
}>>;
|
|
39
39
|
phoneNumber: z.ZodOptional<z.ZodString>;
|
|
40
|
+
emergencyContact: z.ZodOptional<z.ZodObject<{
|
|
41
|
+
phoneNumber: z.ZodString;
|
|
42
|
+
relation: z.ZodEnum<{
|
|
43
|
+
other: "other";
|
|
44
|
+
friend: "friend";
|
|
45
|
+
father: "father";
|
|
46
|
+
mother: "mother";
|
|
47
|
+
brother: "brother";
|
|
48
|
+
sister: "sister";
|
|
49
|
+
uncle: "uncle";
|
|
50
|
+
aunt: "aunt";
|
|
51
|
+
grandparent: "grandparent";
|
|
52
|
+
spouse: "spouse";
|
|
53
|
+
guardian: "guardian";
|
|
54
|
+
}>;
|
|
55
|
+
}, z.core.$strip>>;
|
|
40
56
|
pronouns: z.ZodOptional<z.ZodEnum<{
|
|
41
57
|
prefer_not_to_say: "prefer_not_to_say";
|
|
42
58
|
other: "other";
|
|
@@ -2091,6 +2107,22 @@ export declare const createProfileSchema: z.ZodObject<{
|
|
|
2091
2107
|
dateOfBirth: z.ZodCoercedDate<unknown>;
|
|
2092
2108
|
gender: z.ZodString;
|
|
2093
2109
|
phoneNumber: z.ZodOptional<z.ZodString>;
|
|
2110
|
+
emergencyContact: z.ZodOptional<z.ZodObject<{
|
|
2111
|
+
phoneNumber: z.ZodString;
|
|
2112
|
+
relation: z.ZodEnum<{
|
|
2113
|
+
other: "other";
|
|
2114
|
+
friend: "friend";
|
|
2115
|
+
father: "father";
|
|
2116
|
+
mother: "mother";
|
|
2117
|
+
brother: "brother";
|
|
2118
|
+
sister: "sister";
|
|
2119
|
+
uncle: "uncle";
|
|
2120
|
+
aunt: "aunt";
|
|
2121
|
+
grandparent: "grandparent";
|
|
2122
|
+
spouse: "spouse";
|
|
2123
|
+
guardian: "guardian";
|
|
2124
|
+
}>;
|
|
2125
|
+
}, z.core.$strip>>;
|
|
2094
2126
|
pronouns: z.ZodString;
|
|
2095
2127
|
currentLocation: z.ZodObject<{
|
|
2096
2128
|
displayName: z.ZodOptional<z.ZodString>;
|
|
@@ -2239,6 +2271,22 @@ export declare const updateProfileSchema: z.ZodObject<{
|
|
|
2239
2271
|
other: "other";
|
|
2240
2272
|
}>>>;
|
|
2241
2273
|
phoneNumber: z.ZodOptional<z.ZodOptional<z.ZodString>>;
|
|
2274
|
+
emergencyContact: z.ZodOptional<z.ZodOptional<z.ZodObject<{
|
|
2275
|
+
phoneNumber: z.ZodString;
|
|
2276
|
+
relation: z.ZodEnum<{
|
|
2277
|
+
other: "other";
|
|
2278
|
+
friend: "friend";
|
|
2279
|
+
father: "father";
|
|
2280
|
+
mother: "mother";
|
|
2281
|
+
brother: "brother";
|
|
2282
|
+
sister: "sister";
|
|
2283
|
+
uncle: "uncle";
|
|
2284
|
+
aunt: "aunt";
|
|
2285
|
+
grandparent: "grandparent";
|
|
2286
|
+
spouse: "spouse";
|
|
2287
|
+
guardian: "guardian";
|
|
2288
|
+
}>;
|
|
2289
|
+
}, z.core.$strip>>>;
|
|
2242
2290
|
pronouns: z.ZodOptional<z.ZodOptional<z.ZodEnum<{
|
|
2243
2291
|
prefer_not_to_say: "prefer_not_to_say";
|
|
2244
2292
|
other: "other";
|
|
@@ -4289,6 +4337,8 @@ export declare const onboardingFormSchema: z.ZodObject<{
|
|
|
4289
4337
|
dateOfBirth: z.ZodString;
|
|
4290
4338
|
gender: z.ZodString;
|
|
4291
4339
|
phoneNumber: z.ZodDefault<z.ZodString>;
|
|
4340
|
+
emergencyContactPhone: z.ZodDefault<z.ZodString>;
|
|
4341
|
+
emergencyContactRelation: z.ZodDefault<z.ZodString>;
|
|
4292
4342
|
pronouns: z.ZodString;
|
|
4293
4343
|
relationshipStatus: z.ZodString;
|
|
4294
4344
|
relationshipIntent: z.ZodString;
|
package/dist/profile.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"profile.d.ts","sourceRoot":"","sources":["../src/profile.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAw/DxB,eAAO,MAAM,iBAAiB
|
|
1
|
+
{"version":3,"file":"profile.d.ts","sourceRoot":"","sources":["../src/profile.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAw/DxB,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAuR5B,CAAC;AAMH;;;;;;;GAOG;AACH,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAsE9B,CAAC;AAMH,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAA8B,CAAC;AAa/D;;;;;;;;;;GAUG;AACH,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBA2D/B,CAAC;AAMH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAChE;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,GAAG,MAAM,GAAG,IAAI,CAIpF;AAED,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AACtE,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AACrE,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC"}
|
package/dist/profile.js
CHANGED
|
@@ -1875,6 +1875,10 @@ export const fullProfileSchema = z.object({
|
|
|
1875
1875
|
dateOfBirth: z.coerce.date().optional(),
|
|
1876
1876
|
gender: genderOpts.optional(),
|
|
1877
1877
|
phoneNumber: z.string().trim().max(15).optional(),
|
|
1878
|
+
emergencyContact: z.object({
|
|
1879
|
+
phoneNumber: z.string().trim().max(15),
|
|
1880
|
+
relation: z.enum(['father', 'mother', 'brother', 'sister', 'uncle', 'aunt', 'grandparent', 'spouse', 'friend', 'guardian', 'other']),
|
|
1881
|
+
}).optional(),
|
|
1878
1882
|
pronouns: pronounsOpts.optional(),
|
|
1879
1883
|
currentLocation: currentLocationSchema.optional(),
|
|
1880
1884
|
hometown: z.string().trim().max(100).optional(),
|
|
@@ -2145,6 +2149,10 @@ export const createProfileSchema = z.object({
|
|
|
2145
2149
|
dateOfBirth: z.coerce.date(),
|
|
2146
2150
|
gender: z.string(),
|
|
2147
2151
|
phoneNumber: z.string().trim().max(15).optional(),
|
|
2152
|
+
emergencyContact: z.object({
|
|
2153
|
+
phoneNumber: z.string().trim().max(15),
|
|
2154
|
+
relation: z.enum(['father', 'mother', 'brother', 'sister', 'uncle', 'aunt', 'grandparent', 'spouse', 'friend', 'guardian', 'other']),
|
|
2155
|
+
}).optional(),
|
|
2148
2156
|
pronouns: z.string(),
|
|
2149
2157
|
currentLocation: currentLocationSchema,
|
|
2150
2158
|
hometown: z.string().trim().max(100),
|
|
@@ -2235,6 +2243,8 @@ export const onboardingFormSchema = z.object({
|
|
|
2235
2243
|
dateOfBirth: z.string(),
|
|
2236
2244
|
gender: z.string(),
|
|
2237
2245
|
phoneNumber: z.string().default(''),
|
|
2246
|
+
emergencyContactPhone: z.string().default(''),
|
|
2247
|
+
emergencyContactRelation: z.string().default(''),
|
|
2238
2248
|
pronouns: z.string(),
|
|
2239
2249
|
relationshipStatus: z.string(),
|
|
2240
2250
|
relationshipIntent: z.string(),
|
package/dist/profile.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"profile.js","sourceRoot":"","sources":["../src/profile.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * dating-schema — Full profile Zod schemas\n *\n * Generated from the 16 profile-field config files (01–16).\n * Every field is inlined as string literals — no runtime dependency on field configs.\n *\n * @module dating-schema/profile\n */\n\nimport { z } from 'zod';\nimport { photoSchema } from './common.js';\n\n// ─── Helper: extract option values from field config ─────────────────────────\n\n/** Build a z.enum() from a field config's options array values. */\nconst opts = <const T extends readonly [string, ...string[]]>(values: T) => z.enum(values);\n\n// ─── 01. Hero & Identity ─────────────────────────────────────────────────────\n\nconst genderOpts = opts([\n 'man',\n 'woman',\n 'non_binary',\n 'trans_man',\n 'trans_woman',\n 'genderfluid',\n 'genderqueer',\n 'agender',\n 'bigender',\n 'pangender',\n 'androgynous',\n 'intersex',\n 'gender_nonconforming',\n 'two_spirit',\n 'hijra',\n 'other',\n 'prefer_not_to_say',\n] as const);\n\nconst pronounsOpts = opts([\n 'he_him',\n 'she_her',\n 'they_them',\n 'he_they',\n 'she_they',\n 'ze_zir',\n 'xe_xem',\n 'any_pronouns',\n 'ask_me',\n 'other',\n 'prefer_not_to_say',\n] as const);\n\nconst relationshipIntentOpts = opts([\n 'life_partner',\n 'long_term',\n 'long_term_open_to_short',\n 'short_term_open_to_long',\n 'casual_dating',\n 'companionship',\n 'ethical_non_monogamy',\n 'activity_partner',\n 'new_friends',\n 'figuring_out',\n] as const);\n\nconst sexualOrientationOpts = opts([\n 'straight',\n 'gay',\n 'lesbian',\n 'bisexual',\n 'pansexual',\n 'asexual',\n 'demisexual',\n 'aromantic',\n 'graysexual',\n 'omnisexual',\n 'fluid',\n 'queer',\n 'questioning',\n 'homoflexible',\n 'heteroflexible',\n 'sapiosexual',\n 'prefer_not_to_say',\n] as const);\n\nconst relationshipStructureOpts = opts([\n 'monogamy',\n 'ethical_non_monogamy',\n 'open_relationship',\n 'polyamory',\n 'relationship_anarchy',\n 'open_to_exploring',\n 'figuring_out',\n 'prefer_not_to_say',\n] as const);\n\nconst mbtiTypeOpts = opts([\n 'INTJ',\n 'INTP',\n 'ENTJ',\n 'ENTP',\n 'INFJ',\n 'INFP',\n 'ENFJ',\n 'ENFP',\n 'ISTJ',\n 'ISFJ',\n 'ESTJ',\n 'ESFJ',\n 'ISTP',\n 'ISFP',\n 'ESTP',\n 'ESFP',\n 'dont_know',\n 'prefer_not_to_say',\n] as const);\n\n// ─── 02. Story & Prompts ─────────────────────────────────────────────────────\n\nconst selfKeywordsOpts = opts([\n 'creative',\n 'loyal',\n 'ambitious',\n 'empathetic',\n 'funny',\n 'adventurous',\n 'introverted',\n 'extroverted',\n 'thoughtful',\n 'independent',\n 'caring',\n 'curious',\n 'passionate',\n 'resilient',\n 'honest',\n 'spontaneous',\n 'reliable',\n 'overthinking',\n 'stubborn',\n 'emotional',\n 'logical',\n 'spiritual',\n 'grounded',\n 'dreamer',\n 'perfectionist',\n 'easygoing',\n 'intense',\n 'optimistic',\n 'realistic',\n 'nerdy',\n] as const);\n\n// othersKeywords uses the same option set\nconst othersKeywordsOpts = selfKeywordsOpts;\n\n// ─── 03. Basics & Deal-Breakers ──────────────────────────────────────────────\n\nconst bodyBuildOpts = opts([\n 'slim',\n 'lean',\n 'athletic',\n 'average',\n 'curvy',\n 'stocky',\n 'heavy',\n 'prefer_not_to_say',\n] as const);\n\nconst complexionOpts = opts([\n 'very_fair',\n 'fair',\n 'wheatish',\n 'wheatish_medium',\n 'olive',\n 'medium',\n 'dark',\n 'very_dark',\n 'prefer_not_to_say',\n] as const);\n\nconst religionOpts = opts([\n 'hindu',\n 'muslim_sunni',\n 'muslim_shia',\n 'muslim_sufi',\n 'muslim_other',\n 'christian_catholic',\n 'christian_protestant',\n 'christian_other',\n 'sikh',\n 'jain_digambar',\n 'jain_shwetambar',\n 'buddhist',\n 'parsi_zoroastrian',\n 'jewish',\n 'bahai',\n 'spiritual',\n 'atheist',\n 'agnostic',\n 'no_religion',\n 'inter_religion',\n 'other',\n 'prefer_not_to_say',\n] as const);\n\nconst religionPracticeLevelOpts = opts([\n 'devout',\n 'weekly',\n 'occasional',\n 'spiritual_private',\n 'secular',\n] as const);\n\nconst religionPartnerPreferenceOpts = opts([\n 'very_important',\n 'somewhat_important',\n 'not_important',\n 'prefer_not_to_say',\n] as const);\n\nconst culturalImportanceOpts = opts([\n 'very_important',\n 'somewhat_important',\n 'not_important',\n 'prefer_not_to_say',\n] as const);\n\nconst manglikStatusOpts = opts([\n 'manglik',\n 'partial_manglik',\n 'non_manglik',\n 'dont_know',\n 'prefer_not_to_say',\n] as const);\n\nconst motherTongueOpts = opts([\n 'hindi',\n 'english',\n 'bengali',\n 'telugu',\n 'marathi',\n 'tamil',\n 'urdu',\n 'gujarati',\n 'kannada',\n 'odia',\n 'malayalam',\n 'punjabi',\n 'assamese',\n 'maithili',\n 'bhojpuri',\n 'rajasthani',\n 'chhattisgarhi',\n 'haryanvi',\n 'tulu',\n 'sanskrit',\n 'sindhi',\n 'kashmiri',\n 'nepali',\n 'konkani',\n 'dogri',\n 'manipuri',\n 'bodo',\n 'santali',\n 'other',\n] as const);\n\nconst languagesSpokenOpts = opts([\n 'hindi',\n 'english',\n 'bengali',\n 'telugu',\n 'marathi',\n 'tamil',\n 'urdu',\n 'gujarati',\n 'kannada',\n 'odia',\n 'malayalam',\n 'punjabi',\n 'assamese',\n 'maithili',\n 'bhojpuri',\n 'rajasthani',\n 'chhattisgarhi',\n 'haryanvi',\n 'tulu',\n 'sanskrit',\n 'sindhi',\n 'kashmiri',\n 'nepali',\n 'konkani',\n 'dogri',\n 'manipuri',\n 'bodo',\n 'santali',\n 'other',\n 'spanish',\n 'french',\n 'german',\n 'mandarin',\n 'japanese',\n 'korean',\n 'arabic',\n 'portuguese',\n 'russian',\n 'italian',\n] as const);\n\nconst educationLevelOpts = opts([\n 'below_10th',\n 'high_school',\n 'iti_vocational',\n 'diploma',\n 'associate',\n 'in_college',\n 'bachelors',\n 'in_grad_school',\n 'masters',\n 'doctorate',\n 'professional',\n 'self_taught',\n 'prefer_not_to_say',\n] as const);\n\nconst institutionTierOpts = opts([\n 'tier1_elite',\n 'tier2_reputed',\n 'tier3_regional',\n 'open_distance',\n 'prefer_not_to_say',\n] as const);\n\nconst professionOpts = opts([\n 'it_software',\n 'engineering',\n 'healthcare_doctor',\n 'healthcare_nursing',\n 'healthcare_pharma',\n 'psychology_therapy',\n 'education_teaching',\n 'science_research',\n 'finance_banking',\n 'chartered_accountant',\n 'business_management',\n 'arts_entertainment',\n 'media_communication',\n 'design_creative',\n 'civil_services',\n 'government_public',\n 'defence_military',\n 'police_law_enforcement',\n 'legal',\n 'skilled_trades',\n 'transport_logistics',\n 'hospitality_travel',\n 'beauty_wellness',\n 'agriculture_farming',\n 'real_estate',\n 'retail_ecommerce',\n 'manufacturing',\n 'merchant_navy',\n 'ngo_social_work',\n 'religious_spiritual',\n 'freelancer_gig',\n 'content_creator',\n 'self_employed',\n 'student',\n 'homemaker',\n 'retired',\n 'not_working',\n 'differently_abled_pension',\n 'other',\n 'prefer_not_to_say',\n] as const);\n\nconst relationshipStatusOpts = opts([\n 'never_married',\n 'dating',\n 'married',\n 'separated',\n 'awaiting_divorce',\n 'divorced',\n 'widowed',\n 'enm',\n 'its_complicated',\n 'prefer_not_to_say',\n] as const);\n\nconst dietOpts = opts([\n 'vegetarian',\n 'vegan',\n 'eggetarian',\n 'non_vegetarian',\n 'pescatarian',\n 'occasionally_non_veg',\n 'flexitarian',\n 'jain',\n 'sattvic',\n 'no_onion_no_garlic',\n 'halal',\n 'kosher',\n 'other',\n 'prefer_not_to_say',\n] as const);\n\nconst smokingOpts = opts([\n 'never',\n 'socially',\n 'when_drinking',\n 'regularly',\n 'trying_to_quit',\n 'vaping',\n 'hookah_socially',\n 'prefer_not_to_say',\n] as const);\n\nconst alcoholOpts = opts([\n 'never',\n 'sober',\n 'rarely',\n 'socially',\n 'on_special_occasions',\n 'regularly',\n 'prefer_not_to_say',\n] as const);\n\nconst cannabisOpts = opts([\n 'never',\n 'socially',\n 'regularly',\n 'medical_only',\n '420_friendly',\n 'prefer_not_to_say',\n] as const);\n\nconst childrenPlansOpts = opts([\n 'want_children',\n 'dont_want',\n 'open_undecided',\n 'have_and_want_more',\n 'have_and_done',\n 'not_sure',\n 'prefer_not_to_say',\n] as const);\n\nconst lookingForEntrepreneurOpts = opts([\n 'yes',\n 'prefer',\n 'dont_care',\n 'prefer_not_to_say',\n] as const);\n\nconst nakshatraOpts = opts([\n 'ashwini',\n 'bharani',\n 'krittika',\n 'rohini',\n 'mrigashira',\n 'ardra',\n 'punarvasu',\n 'pushya',\n 'ashlesha',\n 'magha',\n 'purva_phalguni',\n 'uttara_phalguni',\n 'hasta',\n 'chitra',\n 'swati',\n 'vishakha',\n 'anuradha',\n 'jyeshtha',\n 'moola',\n 'purva_ashadha',\n 'uttara_ashadha',\n 'shravana',\n 'dhanishta',\n 'shatabhisha',\n 'purva_bhadrapada',\n 'uttara_bhadrapada',\n 'revati',\n 'dont_know',\n 'prefer_not_to_say',\n] as const);\n\nconst rashiOpts = opts([\n 'mesha',\n 'vrishabha',\n 'mithuna',\n 'karka',\n 'simha',\n 'kanya',\n 'tula',\n 'vrischika',\n 'dhanu',\n 'makara',\n 'kumbha',\n 'meena',\n 'dont_know',\n 'prefer_not_to_say',\n] as const);\n\n// hometownState uses z.string() — no enum needed (values come from area-entity API)\n\n// ─── 04. What I'm Looking For ────────────────────────────────────────────────\n\nconst relationshipRoleOpts = opts([\n 'mentor',\n 'mentee',\n 'equal_partner',\n 'protector',\n 'nurturer',\n 'provider',\n 'companion',\n 'challenger',\n 'cheerleader',\n 'wise_partner',\n 'prefer_not_to_say',\n] as const);\n\nconst dealbreakersOpts = opts([\n 'smoking',\n 'heavy_drinking',\n 'drug_use',\n 'no_ambition',\n 'dishonesty',\n 'poor_hygiene',\n 'different_religion',\n 'different_politics',\n 'no_kids_ever',\n 'already_has_kids',\n 'long_distance',\n 'non_monogamy',\n 'no_job',\n 'excessive_gaming',\n 'no_sense_of_humor',\n 'poor_communication',\n 'clingy',\n 'emotionally_unavailable',\n 'prefer_not_to_say',\n] as const);\n\n// ─── 05. Personality & Temperament ───────────────────────────────────────────\n\nconst enneagramTypeOpts = opts([\n 'type_1',\n 'type_2',\n 'type_3',\n 'type_4',\n 'type_5',\n 'type_6',\n 'type_7',\n 'type_8',\n 'type_9',\n 'dont_know',\n 'prefer_not_to_say',\n] as const);\n\nconst attachmentStyleOpts = opts([\n 'secure',\n 'anxious',\n 'avoidant',\n 'fearful_avoidant',\n 'still_figuring_out',\n 'prefer_not_to_say',\n] as const);\n\nconst humourStyleOpts = opts([\n 'witty',\n 'sarcastic',\n 'dry',\n 'goofy',\n 'dark',\n 'dad_jokes',\n 'self_deprecating',\n 'observational',\n 'punny',\n 'does_not_apply',\n] as const);\n\nconst relationshipPaceOpts = opts([\n 'slow',\n 'steady',\n 'fast',\n 'go_with_flow',\n 'prefer_not_to_say',\n] as const);\n\nconst communicationStyleOpts = opts([\n 'big_texter',\n 'phone_caller',\n 'voice_note_lover',\n 'send_memes',\n 'better_in_person',\n 'slow_replier',\n 'prefer_not_to_say',\n] as const);\n\nconst scientificTemperOpts = opts([\n 'strongly_scientific',\n 'mostly_scientific',\n 'balanced',\n 'mostly_intuitive',\n 'strongly_intuitive',\n 'prefer_not_to_say',\n] as const);\n\nconst outlookOnLifeOpts = opts([\n 'optimist',\n 'realist',\n 'pessimist',\n 'idealist',\n 'pragmatist',\n 'absurdist',\n 'prefer_not_to_say',\n] as const);\n\nconst socialBatteryOpts = opts([\n 'always_on',\n 'mostly_social',\n 'balanced',\n 'mostly_solo',\n 'hermit',\n 'prefer_not_to_say',\n] as const);\n\n// ─── 07. Interests & Hobbies ─────────────────────────────────────────────────\n\nconst hobbiesOpts = opts([\n // Creative\n 'reading',\n 'writing',\n 'cooking',\n 'baking',\n 'photography',\n 'painting',\n 'drawing',\n 'crafts',\n 'pottery',\n 'knitting',\n 'woodworking',\n 'blogging',\n 'vlogging',\n 'calligraphy',\n 'graphic_design',\n 'filmmaking',\n 'embroidery',\n 'origami',\n 'candle_making',\n 'resin_art',\n 'mehndi_art',\n 'rangoli',\n // Sports & Fitness\n 'gym',\n 'running',\n 'cycling',\n 'swimming',\n 'yoga',\n 'martial_arts',\n 'rock_climbing',\n 'hiking',\n 'skating',\n 'skateboarding',\n 'surfing',\n 'skiing',\n 'cricket',\n 'football',\n 'badminton',\n 'tennis',\n 'basketball',\n 'table_tennis',\n 'archery',\n 'horse_riding',\n 'volleyball',\n 'hockey',\n 'kabaddi',\n 'kho_kho',\n 'wrestling',\n 'boxing',\n 'crossfit',\n 'pilates',\n 'calisthenics',\n 'trekking',\n 'paragliding',\n 'golf',\n // Music & Performance\n 'singing',\n 'playing_instrument',\n 'dancing',\n 'karaoke',\n 'dj',\n 'stand_up_comedy',\n 'theater',\n 'classical_dance',\n 'beatboxing',\n 'music_production',\n 'poetry_slam',\n 'rapping',\n 'open_mic',\n // Entertainment\n 'movies',\n 'anime',\n 'podcasts',\n 'gaming',\n 'board_games',\n 'binge_watching',\n 'k_drama',\n 'bollywood',\n 'documentaries',\n 'manga',\n 'comic_books',\n 'true_crime',\n 'stand_up_specials',\n 'quiz_trivia',\n 'chess',\n 'carrom',\n 'ludo',\n 'card_games',\n 'escape_rooms',\n 'memes',\n // Food & Drink\n 'coffee',\n 'tea',\n 'wine_tasting',\n 'street_food',\n 'fine_dining',\n 'food_photography',\n 'food_blogging',\n 'mixology',\n 'craft_beer',\n 'home_brewing',\n 'regional_cuisines',\n 'healthy_eating',\n 'meal_prep',\n 'chocolate',\n 'desserts',\n 'spice_lover',\n // Travel & Outdoors\n 'traveling',\n 'camping',\n 'backpacking',\n 'road_trips',\n 'scuba_diving',\n 'bird_watching',\n 'fishing',\n 'gardening',\n 'stargazing',\n 'solo_travel',\n 'heritage_tourism',\n 'mountain_biking',\n 'wildlife_safari',\n 'train_journeys',\n 'bike_rides',\n 'beach_hopping',\n 'snorkeling',\n 'kayaking',\n 'rafting',\n 'nature_walks',\n 'van_life',\n // Mindfulness & Wellness\n 'meditation',\n 'spirituality_practice',\n 'astrology_hobby',\n 'tarot',\n 'journaling',\n 'self_improvement',\n 'ayurveda',\n 'pranayama',\n 'gratitude_practice',\n 'therapy',\n 'manifestation',\n 'sound_healing',\n 'aromatherapy',\n // Social & Community\n 'volunteering',\n 'activism',\n 'mentoring',\n 'networking',\n 'pet_care',\n 'community_service',\n 'ngo_work',\n 'animal_rescue',\n 'teaching',\n 'public_speaking',\n 'debate',\n 'model_un',\n 'parenting',\n // Tech & Learning\n 'coding',\n 'investing',\n 'entrepreneurship',\n 'languages',\n 'science',\n 'ai_ml',\n 'crypto_web3',\n 'stock_trading',\n 'robotics',\n 'astronomy',\n 'history',\n 'philosophy',\n 'psychology',\n 'online_courses',\n 'open_source',\n 'electronics',\n 'data_science',\n // Home & Lifestyle\n 'interior_design',\n 'fashion',\n 'skincare',\n 'thrifting',\n 'bowling',\n 'makeup',\n 'grooming',\n 'plant_parenting',\n 'minimalism',\n 'sustainable_living',\n 'home_decor',\n 'nail_art',\n 'tattoos',\n 'collecting',\n 'shopping',\n 'car_bikes',\n // Nightlife & Going Out\n 'clubbing',\n 'bar_hopping',\n 'house_parties',\n 'live_music',\n 'pub_quiz',\n 'hookah',\n 'late_night_drives',\n 'cafe_hopping',\n 'rooftop_chilling',\n // Misc\n 'diy',\n 'other',\n] as const);\n\nconst musicGenresOpts = opts([\n 'pop',\n 'rock',\n 'hip_hop',\n 'rnb',\n 'jazz',\n 'classical',\n 'electronic',\n 'edm',\n 'country',\n 'folk',\n 'indie',\n 'metal',\n 'punk',\n 'reggae',\n 'latin',\n 'kpop',\n 'bollywood',\n 'sufi',\n 'ghazal',\n 'carnatic',\n 'hindustani_classical',\n 'devotional',\n 'lofi',\n 'ambient',\n 'other',\n] as const);\n\nconst gamingInterestOpts = opts([\n 'hardcore',\n 'casual',\n 'mobile_only',\n 'board_tabletop',\n 'retro',\n 'not_a_gamer',\n 'prefer_not_to_say',\n] as const);\n\nconst readingHabitOpts = opts([\n 'voracious',\n 'regular',\n 'occasional',\n 'audiobooks',\n 'articles_only',\n 'not_a_reader',\n 'prefer_not_to_say',\n] as const);\n\nconst artApreciationOpts = opts([\n 'creator',\n 'hobbyist',\n 'appreciator',\n 'casual',\n 'not_into_art',\n 'prefer_not_to_say',\n] as const);\n\nconst eventPreferenceOpts = opts([\n 'concerts',\n 'festivals',\n 'sports_events',\n 'comedy_shows',\n 'theater_plays',\n 'art_exhibitions',\n 'food_festivals',\n 'book_readings',\n 'hackathons',\n 'spiritual_gatherings',\n 'house_parties',\n 'club_nights',\n 'outdoor_adventures',\n 'workshops',\n 'prefer_not_to_say',\n] as const);\n\nconst riskAppetiteOpts = opts([\n 'thrill_seeker',\n 'adventurous',\n 'moderate',\n 'cautious',\n 'risk_averse',\n 'prefer_not_to_say',\n] as const);\n\nconst volunteerInterestOpts = opts([\n 'environment',\n 'animal_welfare',\n 'education_literacy',\n 'poverty',\n 'health',\n 'mental_health',\n 'gender_equality',\n 'lgbtq_rights',\n 'disability',\n 'children',\n 'elderly',\n 'disaster_relief',\n 'human_rights',\n 'tech_for_good',\n 'none',\n 'prefer_not_to_say',\n] as const);\n\nconst socialCircleSizeOpts = opts([\n 'small',\n 'medium',\n 'large',\n 'mostly_solo',\n 'prefer_not_to_say',\n] as const);\n\n// ─── 09. Values & Beliefs ────────────────────────────────────────────────────\n\nconst lifeGoalsOpts = opts([\n 'build_family',\n 'career_success',\n 'financial_freedom',\n 'travel_world',\n 'make_impact',\n 'creative_fulfillment',\n 'spiritual_growth',\n 'education',\n 'start_business',\n 'buy_home',\n 'early_retirement',\n 'health_longevity',\n 'find_love',\n 'self_discovery',\n 'leave_legacy',\n 'prefer_not_to_say',\n] as const);\n\nconst politicalOrientationOpts = opts([\n 'far_left',\n 'left',\n 'centre_left',\n 'centrist',\n 'centre_right',\n 'right',\n 'far_right',\n 'libertarian',\n 'apolitical',\n 'prefer_not_to_say',\n] as const);\n\nconst environmentalValuesOpts = opts([\n 'very_eco',\n 'trying',\n 'somewhat',\n 'not_priority',\n 'prefer_not_to_say',\n] as const);\n\nconst organDonorOpts = opts(['yes', 'planning', 'open', 'no', 'prefer_not_to_say'] as const);\n\nconst spiritualPracticeOpts = opts([\n 'daily_meditation',\n 'yoga_regular',\n 'prayer',\n 'mindfulness',\n 'nature_spirituality',\n 'no_practice',\n 'exploring',\n 'prefer_not_to_say',\n] as const);\n\nconst astrologyBeliefOpts = opts([\n 'strong_believer',\n 'casual',\n 'skeptical',\n 'dont_believe',\n 'prefer_not_to_say',\n] as const);\n\n// ─── 10. Career & Work ───────────────────────────────────────────────────────\n\nconst careerStageOpts = opts([\n 'student',\n 'just_starting',\n 'mid_career',\n 'senior',\n 'entrepreneur',\n 'freelancer',\n 'career_break',\n 'retired',\n 'prefer_not_to_say',\n] as const);\n\nconst workLocationModeOpts = opts([\n 'office',\n 'remote',\n 'hybrid',\n 'freelance_flexible',\n 'not_working',\n 'prefer_not_to_say',\n] as const);\n\nconst workTravelFrequencyOpts = opts([\n 'never',\n 'rarely',\n 'monthly',\n 'weekly',\n 'constantly',\n 'prefer_not_to_say',\n] as const);\n\nconst retirementPlanOpts = opts([\n 'early_retire',\n 'standard',\n 'work_forever',\n 'passion_project',\n 'no_plan',\n 'prefer_not_to_say',\n] as const);\n\n// ─── 11. Lifestyle & Daily Life ──────────────────────────────────────────────\n\nconst chronotypeOpts = opts([\n 'early_bird',\n 'night_owl',\n 'in_between',\n 'depends',\n 'prefer_not_to_say',\n] as const);\n\nconst sleepScheduleOpts = opts([\n 'before_10pm',\n '10pm_midnight',\n 'midnight_2am',\n 'after_2am',\n 'irregular',\n 'prefer_not_to_say',\n] as const);\n\nconst fitnessLevelOpts = opts([\n 'very_active',\n 'active',\n 'sometimes',\n 'rarely',\n 'not_active',\n 'prefer_not_to_say',\n] as const);\n\nconst travelFrequencyOpts = opts([\n 'every_month',\n 'few_times_year',\n 'once_a_year',\n 'rarely',\n 'never',\n 'prefer_not_to_say',\n] as const);\n\nconst livingSituationOpts = opts([\n 'alone',\n 'roommates',\n 'family',\n 'partner',\n 'kids',\n 'other',\n 'prefer_not_to_say',\n] as const);\n\nconst relocationWillingnessOpts = opts([\n 'very_willing',\n 'open',\n 'prefer_not',\n 'cant',\n 'prefer_not_to_say',\n] as const);\n\nconst petPreferenceOpts = opts([\n 'dog_owner',\n 'cat_owner',\n 'have_other',\n 'love_no_pets',\n 'want_someday',\n 'allergic',\n 'not_pet_person',\n 'prefer_not_to_say',\n] as const);\n\nconst cookingLevelOpts = opts([\n 'chef_level',\n 'regular',\n 'follow_recipe',\n 'basics',\n 'takeout',\n 'willing_to_learn',\n 'prefer_not_to_say',\n] as const);\n\nconst tidinessOpts = opts([\n 'neat_freak',\n 'generally_tidy',\n 'organized_chaos',\n 'messy',\n 'need_help',\n 'prefer_not_to_say',\n] as const);\n\nconst choresSplitOpts = opts([\n 'equal_split',\n 'flexible',\n 'one_cooks_one_cleans',\n 'hire_help',\n 'dont_care',\n 'prefer_not_to_say',\n] as const);\n\nconst domesticRoleOpts = opts([\n 'traditional',\n 'modern_equal',\n 'flexible',\n 'dont_believe_in_roles',\n 'prefer_not_to_say',\n] as const);\n\nconst fashionStyleOpts = opts([\n 'casual',\n 'streetwear',\n 'smart_casual',\n 'classic',\n 'bohemian',\n 'minimalist',\n 'trendy',\n 'athleisure',\n 'traditional',\n 'dont_think',\n 'prefer_not_to_say',\n] as const);\n\nconst hygieneStandardOpts = opts([\n 'meticulous',\n 'clean',\n 'average',\n 'relaxed',\n 'prefer_not_to_say',\n] as const);\n\nconst vacationStyleOpts = opts([\n 'beach',\n 'adventure',\n 'city',\n 'cultural',\n 'backpacking',\n 'luxury',\n 'road_trips',\n 'staycation',\n 'wellness',\n 'prefer_not_to_say',\n] as const);\n\nconst urbanRuralOpts = opts([\n 'big_city',\n 'small_city',\n 'suburbs',\n 'rural',\n 'nomadic',\n 'prefer_not_to_say',\n] as const);\n\nconst climatePreferenceOpts = opts([\n 'tropical',\n 'temperate',\n 'cold',\n 'dry',\n 'no_preference',\n 'prefer_not_to_say',\n] as const);\n\nconst carOwnershipOpts = opts([\n 'own_car',\n 'planning',\n 'no_car',\n 'no_car_by_choice',\n 'prefer_not_to_say',\n] as const);\n\nconst drivingAbilityOpts = opts([\n 'licensed',\n 'licensed_rarely',\n 'learning',\n 'no_license',\n 'prefer_not_to_say',\n] as const);\n\nconst timeManagementOpts = opts([\n 'always_early',\n 'on_time',\n 'fashionably_late',\n 'running_late',\n 'time_is_construct',\n 'prefer_not_to_say',\n] as const);\n\nconst screenTimeOpts = opts([\n 'minimal',\n 'moderate',\n 'heavy',\n 'digital_detox',\n 'prefer_not_to_say',\n] as const);\n\nconst socialMediaUsageOpts = opts([\n 'very_active',\n 'regular',\n 'lurker',\n 'minimal',\n 'no_social',\n 'prefer_not_to_say',\n] as const);\n\nconst bodyModificationsOpts = opts([\n 'tattoos',\n 'piercings',\n 'nose_piercing',\n 'tongue_piercing',\n 'none',\n 'open_to_it',\n 'prefer_not_to_say',\n] as const);\n\nconst earPiercingsOpts = opts([\n 'none',\n 'single_lobe',\n 'multiple',\n 'stretched',\n 'prefer_not_to_say',\n] as const);\n\nconst sunSignOpts = opts([\n 'aries',\n 'taurus',\n 'gemini',\n 'cancer',\n 'leo',\n 'virgo',\n 'libra',\n 'scorpio',\n 'sagittarius',\n 'capricorn',\n 'aquarius',\n 'pisces',\n 'prefer_not_to_say',\n] as const);\n\nconst loveLanguageOpts = opts([\n 'words_of_affirmation',\n 'quality_time',\n 'receiving_gifts',\n 'acts_of_service',\n 'physical_touch',\n 'prefer_not_to_say',\n] as const);\n\n// ─── 12. Cognitive & Intellectual ────────────────────────────────────────────\n\nconst intellectualNeedOpts = opts([\n 'essential',\n 'very_important',\n 'nice_to_have',\n 'not_important',\n 'prefer_not_to_say',\n] as const);\n\nconst cognitiveBandOpts = opts([\n '1_tradition_faith',\n '2_faith_curious',\n '3_multiplicity_open',\n '4_pragmatic_flexible',\n '5_evidence_reasoning',\n '6_critical_reflective',\n '7_skeptic_optimize',\n 'prefer_not_to_say',\n] as const);\n\nconst learningPathOpts = opts([\n 'self_taught',\n 'formal',\n 'experiential',\n 'social',\n 'mixed',\n 'prefer_not_to_say',\n] as const);\n\nconst knowledgeAreasOpts = opts([\n 'technology',\n 'science',\n 'arts',\n 'business',\n 'health',\n 'law',\n 'psychology',\n 'philosophy',\n 'history',\n 'languages',\n 'math',\n 'environment',\n 'education',\n 'sports',\n 'cooking_food',\n 'music_knowledge',\n 'other',\n 'prefer_not_to_say',\n] as const);\n\nconst learningMethodsOpts = opts([\n 'reading',\n 'videos',\n 'podcasts',\n 'courses',\n 'workshops',\n 'mentorship',\n 'hands_on',\n 'discussion',\n 'prefer_not_to_say',\n] as const);\n\nconst intellectualExperienceOpts = opts([\n 'expert',\n 'advanced',\n 'intermediate',\n 'growing',\n 'beginner',\n 'prefer_not_to_say',\n] as const);\n\nconst intellectualGoalsOpts = opts([\n 'master_skill',\n 'write_book',\n 'learn_language',\n 'get_degree',\n 'start_research',\n 'teach_others',\n 'build_something',\n 'none_specific',\n 'prefer_not_to_say',\n] as const);\n\nconst goalSettingStyleOpts = opts([\n 'detailed_planner',\n 'broad_goals',\n 'vision_board',\n 'go_with_flow',\n 'no_goals',\n 'prefer_not_to_say',\n] as const);\n\nconst teachingMentoringOpts = opts([\n 'love_teaching',\n 'enjoy',\n 'neutral',\n 'prefer_learning',\n 'not_interested',\n 'prefer_not_to_say',\n] as const);\n\n// ─── 13. Relationship & Intimacy ─────────────────────────────────────────────\n\nconst intimacyImportanceOpts = opts([\n 'very_important',\n 'important',\n 'moderate',\n 'low',\n 'not_important',\n 'prefer_not_to_say',\n] as const);\n\nconst loveLanguageDetailedOpts = opts([\n 'words_of_affirmation',\n 'quality_time',\n 'receiving_gifts',\n 'acts_of_service',\n 'physical_touch',\n 'prefer_not_to_say',\n] as const);\n\nconst affectionLevelOpts = opts([\n 'very_affectionate',\n 'moderately',\n 'reserved',\n 'not_affectionate',\n 'depends',\n 'prefer_not_to_say',\n] as const);\n\nconst pdaComfortOpts = opts(['love_it', 'some', 'minimal', 'none', 'prefer_not_to_say'] as const);\n\nconst sexDriveOpts = opts(['very_high', 'high', 'moderate', 'low', 'very_low', 'varies'] as const);\n\nconst sexualActivityLevelOpts = opts([\n 'very_active',\n 'active',\n 'moderate',\n 'low',\n 'abstinent',\n] as const);\n\nconst kinkOpennessOpts = opts([\n 'very_open',\n 'open',\n 'curious',\n 'vanilla',\n 'not_comfortable',\n] as const);\n\nconst concurrentPartnersOpts = opts([\n 'strictly_monogamous',\n 'monogamous',\n 'open_to_discuss',\n 'ethically_non_monogamous',\n 'polyamorous',\n] as const);\n\nconst conflictStyleOpts = opts([\n 'talk_it_out',\n 'cool_off_first',\n 'avoid_conflict',\n 'compromise',\n 'need_mediator',\n 'prefer_not_to_say',\n] as const);\n\nconst videoDatingComfortOpts = opts([\n 'love_it',\n 'open',\n 'prefer_not',\n 'never',\n 'prefer_not_to_say',\n] as const);\n\nconst safetyPreferenceOpts = opts([\n 'public_place',\n 'share_location',\n 'video_first',\n 'bring_friend',\n 'no_preference',\n 'prefer_not_to_say',\n] as const);\n\nconst datePreferenceOpts = opts([\n 'coffee',\n 'dinner',\n 'drinks',\n 'outdoor',\n 'cultural',\n 'cooking',\n 'adventure',\n 'picnic',\n 'movie',\n 'game_night',\n 'prefer_not_to_say',\n] as const);\n\n// ─── 14. Family & Home ───────────────────────────────────────────────────────\n\nconst familyTypeOpts = opts([\n 'nuclear',\n 'joint',\n 'single_parent',\n 'blended',\n 'no_family',\n 'prefer_not_to_say',\n] as const);\n\nconst parentingStyleOpts = opts([\n 'authoritative',\n 'permissive',\n 'attachment',\n 'helicopter',\n 'free_range',\n 'equal_co_parent',\n 'not_sure',\n 'not_applicable',\n 'prefer_not_to_say',\n] as const);\n\nconst caregivingResponsibilityOpts = opts([\n 'elderly_parents',\n 'disabled_family',\n 'children',\n 'shared',\n 'none',\n 'future',\n 'prefer_not_to_say',\n] as const);\n\nconst familyBuildingOpts = opts([\n 'natural',\n 'adoption',\n 'foster',\n 'ivf',\n 'surrogacy',\n 'co_parenting',\n 'prefer_not_to_say',\n] as const);\n\nconst weddingStyleOpts = opts([\n 'grand',\n 'intimate',\n 'courthouse',\n 'destination',\n 'elopement',\n 'dont_care',\n 'not_marriage',\n 'prefer_not_to_say',\n] as const);\n\nconst giftGivingStyleOpts = opts([\n 'lavish',\n 'thoughtful',\n 'practical',\n 'experiences',\n 'handmade',\n 'minimal',\n 'prefer_not_to_say',\n] as const);\n\nconst contraceptionViewOpts = opts([\n 'pro_contraception',\n 'open',\n 'natural_methods',\n 'against',\n 'not_applicable',\n 'prefer_not_to_say',\n] as const);\n\nconst parentsExpectationOpts = opts([\n 'very_involved',\n 'somewhat',\n 'independent',\n 'no_contact',\n 'prefer_not_to_say',\n] as const);\n\nconst parentOccupationOpts = opts([\n 'it_software',\n 'engineering',\n 'healthcare',\n 'education',\n 'finance_accounting',\n 'arts_entertainment',\n 'media_communication',\n 'business_management',\n 'government_public',\n 'legal',\n 'science_research',\n 'agriculture',\n 'hospitality_travel',\n 'real_estate',\n 'retail_ecommerce',\n 'manufacturing',\n 'self_employed',\n 'homemaker',\n 'retired',\n 'deceased',\n 'other',\n 'prefer_not_to_say',\n] as const);\n\nconst familyAffluenceOpts = opts([\n 'lower_middle',\n 'middle',\n 'upper_middle',\n 'affluent',\n 'wealthy',\n 'prefer_not_to_say',\n] as const);\n\nconst familyValuesOpts = opts([\n 'orthodox',\n 'moderate',\n 'liberal',\n 'very_liberal',\n 'prefer_not_to_say',\n] as const);\n\nconst profileCreatedByOpts = opts([\n 'self',\n 'parent',\n 'sibling',\n 'friend',\n 'relative',\n 'other',\n] as const);\n\n// ─── 15. Finance & Legal ─────────────────────────────────────────────────────\n\nconst incomeRangeOpts = opts([\n 'under_3l',\n '3l_6l',\n '6l_10l',\n '10l_15l',\n '15l_25l',\n '25l_50l',\n '50l_1cr',\n 'above_1cr',\n 'prefer_not_to_say',\n] as const);\n\nconst financialAttitudeOpts = opts([\n 'saver',\n 'spender',\n 'balanced',\n 'investor',\n 'minimalist',\n 'prefer_not_to_say',\n] as const);\n\nconst incomeSourcesOpts = opts([\n 'salary',\n 'business',\n 'freelance',\n 'investments',\n 'rental',\n 'family',\n 'pension',\n 'no_income',\n 'prefer_not_to_say',\n] as const);\n\nconst financialIntegrationOpts = opts([\n 'fully_joint',\n 'mostly_joint',\n 'split',\n 'proportional',\n 'separate',\n 'prefer_not_to_say',\n] as const);\n\nconst debtStatusOpts = opts([\n 'debt_free',\n 'student_loans',\n 'mortgage',\n 'manageable',\n 'significant',\n 'prefer_not_to_say',\n] as const);\n\nconst financialStabilityOpts = opts([\n 'very_stable',\n 'stable',\n 'building',\n 'unstable',\n 'in_crisis',\n 'prefer_not_to_say',\n] as const);\n\nconst creditScoreOpts = opts([\n 'excellent',\n 'good',\n 'fair',\n 'poor',\n 'dont_know',\n 'not_applicable',\n 'prefer_not_to_say',\n] as const);\n\nconst prenupViewOpts = opts([\n 'strongly_for',\n 'open',\n 'neutral',\n 'against',\n 'strongly_against',\n 'prefer_not_to_say',\n] as const);\n\nconst lifeInsuranceOpts = opts([\n 'have_it',\n 'planning',\n 'dont_have',\n 'not_needed',\n 'prefer_not_to_say',\n] as const);\n\nconst healthInsuranceOpts = opts([\n 'comprehensive',\n 'basic',\n 'employer',\n 'none',\n 'prefer_not_to_say',\n] as const);\n\nconst citizenshipOpts = opts([\n 'citizen',\n 'permanent_resident',\n 'work_visa',\n 'student_visa',\n 'dual_citizen',\n 'other',\n 'prefer_not_to_say',\n] as const);\n\nconst legalIssuesOpts = opts(['none', 'minor_past', 'ongoing', 'prefer_not_to_say'] as const);\n\nconst drivingRecordOpts = opts([\n 'clean',\n 'minor',\n 'dui_past',\n 'no_license',\n 'prefer_not_to_say',\n] as const);\n\nconst billSplittingOpts = opts([\n 'always_split',\n 'alternate',\n 'whoever_invites',\n 'traditional',\n 'whoever_offers',\n 'dont_care',\n 'prefer_not_to_say',\n] as const);\n\nconst countryOfResidenceOpts = opts([\n 'india',\n 'usa',\n 'uk',\n 'canada',\n 'australia',\n 'uae',\n 'singapore',\n 'malaysia',\n 'germany',\n 'new_zealand',\n 'south_africa',\n 'saudi_arabia',\n 'qatar',\n 'bahrain',\n 'kuwait',\n 'oman',\n 'other',\n 'prefer_not_to_say',\n] as const);\n\nconst visaTypeOpts = opts([\n 'h1b',\n 'l1',\n 'eb1',\n 'eb2',\n 'eb3',\n 'opt',\n 'green_card',\n 'citizen',\n 'work_permit',\n 'student',\n 'other',\n 'not_applicable',\n 'prefer_not_to_say',\n] as const);\n\n// ─── 16. Health & Wellness ───────────────────────────────────────────────────\n\nconst accessibilityNeedsOpts = opts([\n 'none',\n 'physical',\n 'visual',\n 'hearing',\n 'cognitive',\n 'chronic_condition',\n 'multiple',\n 'prefer_not_to_say',\n] as const);\n\nconst chronicConditionOpts = opts([\n 'none',\n 'diabetes',\n 'hypertension',\n 'asthma',\n 'thyroid',\n 'autoimmune',\n 'mental_health',\n 'other',\n 'multiple',\n 'prefer_not_to_say',\n] as const);\n\nconst criticalIllnessHistoryOpts = opts([\n 'none',\n 'cancer_remission',\n 'heart',\n 'other_managed',\n 'currently_treating',\n 'prefer_not_to_say',\n] as const);\n\nconst neurodiversityOpts = opts([\n 'neurotypical',\n 'adhd',\n 'autism',\n 'dyslexia',\n 'bipolar',\n 'ocd',\n 'other',\n 'multiple',\n 'prefer_not_to_say',\n] as const);\n\nconst personalityDisorderAwarenessOpts = opts([\n 'no',\n 'diagnosed_managing',\n 'suspected',\n 'in_treatment',\n 'prefer_not_to_say',\n] as const);\n\nconst therapyOpennessOpts = opts([\n 'currently_in',\n 'past_positive',\n 'open',\n 'not_for_me',\n 'never_considered',\n 'prefer_not_to_say',\n] as const);\n\nconst recoveryStatusOpts = opts([\n 'not_applicable',\n 'in_recovery',\n 'long_term_sober',\n 'working_on_it',\n 'prefer_not_to_say',\n] as const);\n\nconst phobiasOpts = opts([\n 'heights',\n 'flying',\n 'spiders',\n 'water',\n 'crowds',\n 'darkness',\n 'needles',\n 'blood',\n 'enclosed_spaces',\n 'dogs',\n 'snakes',\n 'none',\n 'prefer_not_to_say',\n] as const);\n\nconst fertilityStatusOpts = opts([\n 'no_issues',\n 'tested_fine',\n 'undergoing_treatment',\n 'known_challenges',\n 'not_tested',\n 'not_applicable',\n 'prefer_not_to_say',\n] as const);\n\nconst snoringHabitOpts = opts([\n 'never',\n 'sometimes',\n 'regularly',\n 'use_cpap',\n 'dont_know',\n 'prefer_not_to_say',\n] as const);\n\nconst allergiesOpts = opts([\n 'peanuts',\n 'shellfish',\n 'dairy',\n 'gluten',\n 'eggs',\n 'soy',\n 'pollen',\n 'dust',\n 'pet_dander',\n 'latex',\n 'medication',\n 'insect_stings',\n 'none',\n 'prefer_not_to_say',\n] as const);\n\nconst bloodTypeOpts = opts([\n 'a_positive',\n 'a_negative',\n 'b_positive',\n 'b_negative',\n 'ab_positive',\n 'ab_negative',\n 'o_positive',\n 'o_negative',\n 'dont_know',\n 'prefer_not_to_say',\n] as const);\n\nconst rhFactorOpts = opts(['positive', 'negative', 'dont_know', 'prefer_not_to_say'] as const);\n\nconst geneticCarrierOpts = opts([\n 'not_carrier',\n 'carrier',\n 'tested_clear',\n 'not_tested',\n 'prefer_not_to_say',\n] as const);\n\nconst geneticCounselingOpts = opts([\n 'already_done',\n 'open',\n 'not_needed',\n 'against',\n 'prefer_not_to_say',\n] as const);\n\nconst vaccinationsOpts = opts([\n 'covid_full',\n 'covid_boosted',\n 'flu_annual',\n 'hpv',\n 'hepatitis',\n 'tetanus',\n 'mmr',\n 'all_standard',\n 'none',\n 'prefer_not_to_say',\n] as const);\n\nconst healthSafetyPracticeOpts = opts([\n 'very_careful',\n 'mostly',\n 'average',\n 'relaxed',\n 'prefer_not_to_say',\n] as const);\n\nconst bodyPositivityOpts = opts([\n 'very_positive',\n 'positive',\n 'working_on_it',\n 'struggles',\n 'prefer_not_to_say',\n] as const);\n\nconst performanceDrugsOpts = opts([\n 'never',\n 'past_use',\n 'currently',\n 'supplements_only',\n 'prefer_not_to_say',\n] as const);\n\nconst appearanceSurgeryOpts = opts([\n 'never',\n 'have_had',\n 'open',\n 'against',\n 'prefer_not_to_say',\n] as const);\n\nconst mentalHealthOpennessOpts = opts([\n 'very_open',\n 'somewhat',\n 'private',\n 'uncomfortable',\n 'prefer_not_to_say',\n] as const);\n\nconst stressManagementOpts = opts([\n 'exercise',\n 'meditation',\n 'therapy',\n 'social',\n 'creative',\n 'nature',\n 'unhealthy',\n 'dont_manage',\n 'prefer_not_to_say',\n] as const);\n\n// ─── Location sub-schema ─────────────────────────────────────────────────────\n\nconst areaRefSchema = z.object({\n _id: z.string(),\n name: z.string(),\n type: z.string().optional(),\n});\n\nconst currentLocationSchema = z.object({\n displayName: z.string().optional(),\n country: areaRefSchema.optional(),\n // Full area hierarchy — each { _id, name, type } traces back to AreaEntity in survey-db\n state: areaRefSchema.optional(),\n district: areaRefSchema.optional(),\n areaType: z.enum(['RURAL', 'URBAN']).optional(),\n // Rural lineage\n block: areaRefSchema.optional(),\n gramPanchayat: areaRefSchema.optional(),\n village: areaRefSchema.optional(),\n hamlet: areaRefSchema.optional(),\n // Urban lineage\n urbanBodyType: z.string().optional(),\n urbanBody: areaRefSchema.optional(),\n urbanWard: areaRefSchema.optional(),\n locality: areaRefSchema.optional(),\n // Geo coordinates\n latitude: z.number().optional(),\n longitude: z.number().optional(),\n});\n\n// ─── Family member sub-schema (object_array itemShape) ───────────────────────\n\nconst familyMemberSchema = z.object({\n relation: z.string(),\n alive: z.boolean(),\n});\n\n// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\n// fullProfileSchema — every non-computed field (191 fields, 190 after skipping bmi)\n// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\n\nexport const fullProfileSchema = z.object({\n // ── 01. Hero & Identity ────────────────────────────────────────────────────\n photos: z.array(photoSchema).min(2).max(6).optional(),\n displayName: z.string().trim().max(50).optional(),\n dateOfBirth: z.coerce.date().optional(),\n gender: genderOpts.optional(),\n phoneNumber: z.string().trim().max(15).optional(),\n pronouns: pronounsOpts.optional(),\n currentLocation: currentLocationSchema.optional(),\n hometown: z.string().trim().max(100).optional(),\n searchRadius: z.number().min(1).max(500).optional(),\n relationshipIntent: relationshipIntentOpts.optional(),\n sexualOrientation: sexualOrientationOpts.optional(),\n relationshipStructure: relationshipStructureOpts.optional(),\n mbtiType: mbtiTypeOpts.optional(),\n\n // ── 02. Story & Prompts ────────────────────────────────────────────────────\n bio: z.string().trim().max(500).optional(),\n prompts: z\n .array(\n z.object({\n prompt: z.string(),\n answer: z.string().max(250),\n }),\n )\n .min(1)\n .max(3)\n .optional(),\n voicePrompt: z\n .object({\n url: z.string().url(),\n assetId: z.string(),\n durationSeconds: z.number().max(30),\n })\n .optional(),\n bornTo: z.string().trim().max(200).optional(),\n senseOfSelf: z.string().trim().max(200).optional(),\n selfKeywords: z.array(selfKeywordsOpts).max(5).optional(),\n othersKeywords: z.array(othersKeywordsOpts).max(5).optional(),\n\n // ── 03. Basics & Deal-Breakers ─────────────────────────────────────────────\n height: z.number().min(100).max(220).optional(),\n weight: z.number().min(30).max(200).optional(),\n // bmi — computed, skipped\n bodyBuild: bodyBuildOpts.optional(),\n complexion: complexionOpts.optional(),\n familyReligion: religionOpts.optional(),\n personalReligion: religionOpts.optional(),\n religionPracticeLevel: religionPracticeLevelOpts.optional(),\n religionPartnerPreference: religionPartnerPreferenceOpts.optional(),\n caste: z.string().trim().max(100).optional(),\n culturalImportance: culturalImportanceOpts.optional(),\n manglikStatus: manglikStatusOpts.optional(),\n motherTongue: motherTongueOpts.optional(),\n languagesSpoken: z.array(languagesSpokenOpts).max(20).optional(),\n educationLevel: educationLevelOpts.optional(),\n institutionTier: institutionTierOpts.optional(),\n profession: professionOpts.optional(),\n relationshipStatus: relationshipStatusOpts.optional(),\n diet: dietOpts.optional(),\n smoking: smokingOpts.optional(),\n alcohol: alcoholOpts.optional(),\n cannabis: cannabisOpts.optional(),\n childrenPlans: childrenPlansOpts.optional(),\n lookingForEntrepreneur: lookingForEntrepreneurOpts.optional(),\n subCaste: z.string().trim().max(100).optional(),\n gotra: z.string().trim().max(100).optional(),\n nakshatra: nakshatraOpts.optional(),\n rashi: rashiOpts.optional(),\n birthTime: z\n .string()\n .regex(/^\\d{2}:\\d{2}$/)\n .optional(),\n birthPlace: z.string().trim().max(100).optional(),\n numberOfChildren: z.number().int().min(0).max(10).optional(),\n previousMarriages: z.number().int().min(0).max(5).optional(),\n nativePlace: z.string().trim().max(100).optional(),\n hometownState: z.string().optional(),\n hometownStateId: z.string().optional(),\n hometownDistrict: z.string().trim().max(100).optional(),\n hometownDistrictId: z.string().optional(),\n myStory: z.string().trim().max(2000).optional(),\n preferredGenders: z.array(genderOpts).optional(),\n\n // ── 04. What I'm Looking For ───────────────────────────────────────────────\n whatImLookingFor: z.string().trim().max(300).optional(),\n relationshipRole: z.array(relationshipRoleOpts).max(3).optional(),\n preferredAgeRange: z.number().min(18).max(70).optional(),\n dealbreakers: z.array(dealbreakersOpts).max(10).optional(),\n\n // ── 05. Personality & Temperament ──────────────────────────────────────────\n enneagramType: enneagramTypeOpts.optional(),\n bigFiveOpenness: z.number().int().min(1).max(10).optional(),\n oceanOpenness: z.number().int().min(1).max(100).optional(),\n oceanConscientiousness: z.number().int().min(1).max(100).optional(),\n oceanExtraversion: z.number().int().min(1).max(100).optional(),\n oceanAgreeableness: z.number().int().min(1).max(100).optional(),\n oceanNeuroticism: z.number().int().min(1).max(100).optional(),\n attachmentStyle: attachmentStyleOpts.optional(),\n humourStyle: z.array(humourStyleOpts).max(3).optional(),\n relationshipPace: relationshipPaceOpts.optional(),\n communicationStyle: z.array(communicationStyleOpts).max(3).optional(),\n rationalityLevel: z.number().int().min(1).max(10).optional(),\n scientificTemper: scientificTemperOpts.optional(),\n outlookOnLife: outlookOnLifeOpts.optional(),\n socialBattery: socialBatteryOpts.optional(),\n\n // ── 06. Self-Assessment Ratings ────────────────────────────────────────────\n ratePatience: z.number().int().min(1).max(10).optional(),\n rateBeauty: z.number().int().min(1).max(10).optional(),\n rateBuild: z.number().int().min(1).max(10).optional(),\n ratePersonality: z.number().int().min(1).max(10).optional(),\n rateTemper: z.number().int().min(1).max(10).optional(),\n rateRespect: z.number().int().min(1).max(10).optional(),\n rateHonestyWithSelf: z.number().int().min(1).max(10).optional(),\n rateHonestyWithOthers: z.number().int().min(1).max(10).optional(),\n rateSelfEsteem: z.number().int().min(1).max(10).optional(),\n rateAbuseFrequency: z.number().int().min(1).max(10).optional(),\n rateHumour: z.number().int().min(1).max(10).optional(),\n rateBoredom: z.number().int().min(1).max(10).optional(),\n\n // ── 07. Interests & Hobbies ────────────────────────────────────────────────\n hobbies: z.array(hobbiesOpts).max(10).optional(),\n musicGenres: z.array(musicGenresOpts).max(5).optional(),\n gamingInterest: gamingInterestOpts.optional(),\n readingHabit: readingHabitOpts.optional(),\n artApreciation: artApreciationOpts.optional(),\n eventPreference: z.array(eventPreferenceOpts).max(5).optional(),\n riskAppetite: riskAppetiteOpts.optional(),\n volunteerInterest: z.array(volunteerInterestOpts).max(5).optional(),\n socialCircleSize: socialCircleSizeOpts.optional(),\n\n // ── 08. Favourites ─────────────────────────────────────────────────────────\n favouriteBooks: z.array(z.string().trim().max(200)).max(5).optional(),\n favouriteShows: z.array(z.string().trim().max(200)).max(5).optional(),\n favouriteDocumentaries: z.array(z.string().trim().max(200)).max(5).optional(),\n favouriteMusicArtists: z.array(z.string().trim().max(200)).max(5).optional(),\n favouriteYoutubeChannels: z.array(z.string().trim().max(200)).max(5).optional(),\n idols: z.array(z.string().trim().max(200)).max(5).optional(),\n favouriteQuotes: z.array(z.string().trim().max(200)).max(3).optional(),\n\n // ── 09. Values & Beliefs ───────────────────────────────────────────────────\n lifeGoals: z.array(lifeGoalsOpts).max(5).optional(),\n lifeVision: z.string().trim().max(300).optional(),\n politicalOrientation: politicalOrientationOpts.optional(),\n environmentalValues: environmentalValuesOpts.optional(),\n organDonor: organDonorOpts.optional(),\n spiritualPractice: spiritualPracticeOpts.optional(),\n astrologyBelief: astrologyBeliefOpts.optional(),\n\n // ── 10. Career & Work ──────────────────────────────────────────────────────\n careerStage: careerStageOpts.optional(),\n workLocationMode: workLocationModeOpts.optional(),\n workTravelFrequency: workTravelFrequencyOpts.optional(),\n portfolioLink: z.string().trim().max(200).optional(),\n retirementPlan: retirementPlanOpts.optional(),\n\n // ── 11. Lifestyle & Daily Life ─────────────────────────────────────────────\n chronotype: chronotypeOpts.optional(),\n sleepSchedule: sleepScheduleOpts.optional(),\n fitnessLevel: fitnessLevelOpts.optional(),\n travelFrequency: travelFrequencyOpts.optional(),\n livingSituation: livingSituationOpts.optional(),\n relocationWillingness: relocationWillingnessOpts.optional(),\n petPreference: petPreferenceOpts.optional(),\n cookingLevel: cookingLevelOpts.optional(),\n tidiness: tidinessOpts.optional(),\n choresSplit: choresSplitOpts.optional(),\n domesticRole: domesticRoleOpts.optional(),\n fashionStyle: fashionStyleOpts.optional(),\n hygieneStandard: hygieneStandardOpts.optional(),\n vacationStyle: z.array(vacationStyleOpts).max(3).optional(),\n urbanRural: urbanRuralOpts.optional(),\n climatePreference: climatePreferenceOpts.optional(),\n carOwnership: carOwnershipOpts.optional(),\n drivingAbility: drivingAbilityOpts.optional(),\n timeManagement: timeManagementOpts.optional(),\n screenTime: screenTimeOpts.optional(),\n socialMediaUsage: socialMediaUsageOpts.optional(),\n bodyModifications: z.array(bodyModificationsOpts).max(5).optional(),\n earPiercings: earPiercingsOpts.optional(),\n sunSign: sunSignOpts.optional(),\n loveLanguage: loveLanguageOpts.optional(),\n\n // ── 12. Cognitive & Intellectual ───────────────────────────────────────────\n intellectualNeed: intellectualNeedOpts.optional(),\n cognitiveBand: cognitiveBandOpts.optional(),\n creativityVsAnalytical: z.number().int().min(1).max(10).optional(),\n learningPath: learningPathOpts.optional(),\n knowledgeAreas: z.array(knowledgeAreasOpts).max(5).optional(),\n learningMethods: z.array(learningMethodsOpts).max(3).optional(),\n intellectualExperience: intellectualExperienceOpts.optional(),\n intellectualGoals: z.array(intellectualGoalsOpts).max(3).optional(),\n goalSettingStyle: goalSettingStyleOpts.optional(),\n teachingMentoring: teachingMentoringOpts.optional(),\n\n // ── 13. Relationship & Intimacy (Tier 2) ───────────────────────────────────\n intimacyImportance: intimacyImportanceOpts.optional(),\n loveLanguageDetailed: loveLanguageDetailedOpts.optional(),\n affectionLevel: affectionLevelOpts.optional(),\n pdaComfort: pdaComfortOpts.optional(),\n conflictStyle: conflictStyleOpts.optional(),\n emotionalIntelligence: z.number().int().min(1).max(10).optional(),\n videoDatingComfort: videoDatingComfortOpts.optional(),\n safetyPreference: safetyPreferenceOpts.optional(),\n datePreference: z.array(datePreferenceOpts).max(3).optional(),\n sexDrive: sexDriveOpts.optional(),\n sexualActivityLevel: sexualActivityLevelOpts.optional(),\n kinkOpenness: kinkOpennessOpts.optional(),\n concurrentPartners: concurrentPartnersOpts.optional(),\n // ── 14. Family & Home (Tier 2) ─────────────────────────────────────────────\n familyType: familyTypeOpts.optional(),\n familyMembers: z.array(familyMemberSchema).optional(),\n parentingStyle: parentingStyleOpts.optional(),\n caregivingResponsibility: caregivingResponsibilityOpts.optional(),\n familyBuilding: z.array(familyBuildingOpts).max(5).optional(),\n weddingStyle: weddingStyleOpts.optional(),\n giftGivingStyle: giftGivingStyleOpts.optional(),\n contraceptionView: contraceptionViewOpts.optional(),\n parentsExpectation: parentsExpectationOpts.optional(),\n parentsContactNumber: z.string().trim().max(15).optional(),\n fatherOccupation: parentOccupationOpts.optional(),\n motherOccupation: parentOccupationOpts.optional(),\n numberOfSiblings: z.number().int().min(0).max(10).optional(),\n siblingsMarried: z.number().int().min(0).max(10).optional(),\n familyAffluence: familyAffluenceOpts.optional(),\n familyValues: familyValuesOpts.optional(),\n profileCreatedBy: profileCreatedByOpts.optional(),\n\n // ── 15. Finance & Legal (Tier 3) ───────────────────────────────────────────\n incomeRange: incomeRangeOpts.optional(),\n financialAttitude: financialAttitudeOpts.optional(),\n incomeSources: z.array(incomeSourcesOpts).max(5).optional(),\n financialIntegration: financialIntegrationOpts.optional(),\n debtStatus: debtStatusOpts.optional(),\n financialStability: financialStabilityOpts.optional(),\n creditScore: creditScoreOpts.optional(),\n prenupView: prenupViewOpts.optional(),\n lifeInsurance: lifeInsuranceOpts.optional(),\n healthInsurance: healthInsuranceOpts.optional(),\n citizenship: citizenshipOpts.optional(),\n legalIssues: legalIssuesOpts.optional(),\n drivingRecord: drivingRecordOpts.optional(),\n billSplitting: billSplittingOpts.optional(),\n grewUpIn: z.string().trim().max(100).optional(),\n countryOfResidence: countryOfResidenceOpts.optional(),\n visaType: visaTypeOpts.optional(),\n\n // ── 16. Health & Wellness (Tier 3) ─────────────────────────────────────────\n accessibilityNeeds: accessibilityNeedsOpts.optional(),\n chronicCondition: chronicConditionOpts.optional(),\n criticalIllnessHistory: criticalIllnessHistoryOpts.optional(),\n neurodiversity: neurodiversityOpts.optional(),\n personalityDisorderAwareness: personalityDisorderAwarenessOpts.optional(),\n therapyOpenness: therapyOpennessOpts.optional(),\n recoveryStatus: recoveryStatusOpts.optional(),\n phobias: z.array(phobiasOpts).max(5).optional(),\n fertilityStatus: fertilityStatusOpts.optional(),\n snoringHabit: snoringHabitOpts.optional(),\n allergies: z.array(allergiesOpts).max(10).optional(),\n bloodType: bloodTypeOpts.optional(),\n rhFactor: rhFactorOpts.optional(),\n geneticCarrier: geneticCarrierOpts.optional(),\n geneticCounseling: geneticCounselingOpts.optional(),\n vaccinations: z.array(vaccinationsOpts).max(10).optional(),\n healthSafetyPractice: healthSafetyPracticeOpts.optional(),\n bodyPositivity: bodyPositivityOpts.optional(),\n performanceDrugs: performanceDrugsOpts.optional(),\n appearanceSurgery: appearanceSurgeryOpts.optional(),\n mentalHealthOpenness: mentalHealthOpennessOpts.optional(),\n stressManagement: stressManagementOpts.optional(),\n\n // ── Meta Fields (system-level) ───────────────────────────────────────────────\n hardPreferences: z.array(z.string()).optional(),\n softFilters: z.array(z.string()).optional(),\n});\n\n// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\n// createProfileSchema — onboarding fields only (isOnboarding: true)\n// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\n\n/**\n * createProfileSchema — validation for profile creation API.\n *\n * Uses z.string() for all option fields (no enums) so that options can be\n * added/removed in field definitions without republishing the schema.\n * Valid options are defined in profile-fields/*.ts and enforced by the UI\n * via getFieldOptions(). Mongoose stores any string value.\n */\nexport const createProfileSchema = z.object({\n // Required fields\n photos: z.array(photoSchema).min(2).max(6),\n displayName: z.string().trim().max(50),\n dateOfBirth: z.coerce.date(),\n gender: z.string(),\n phoneNumber: z.string().trim().max(15).optional(),\n pronouns: z.string(),\n currentLocation: currentLocationSchema,\n hometown: z.string().trim().max(100),\n relationshipIntent: z.string(),\n sexualOrientation: z.string(),\n relationshipStructure: z.string(),\n bio: z.string().trim().max(500),\n preferredGenders: z.array(z.string()).min(1),\n familyReligion: z.string(),\n motherTongue: z.string(),\n relationshipStatus: z.string(),\n\n // Optional fields — all use z.string() (no enums)\n hometownState: z.string().optional(),\n hometownStateId: z.string().optional(),\n hometownDistrict: z.string().trim().max(100).optional(),\n hometownDistrictId: z.string().optional(),\n myStory: z.string().trim().max(2000).optional(),\n personalReligion: z.string().optional(),\n height: z.number().min(100).max(220).optional(),\n weight: z.number().min(30).max(200).optional(),\n bodyBuild: z.string().optional(),\n complexion: z.string().optional(),\n educationLevel: z.string().optional(),\n institutionTier: z.string().optional(),\n cognitiveBand: z.string().optional(),\n politicalOrientation: z.string().optional(),\n profession: z.string().optional(),\n careerStage: z.string().optional(),\n incomeRange: z.string().optional(),\n familyValues: z.string().optional(),\n scientificTemper: z.string().optional(),\n hobbies: z.array(z.string()).max(20).optional(),\n diet: z.string().optional(),\n smoking: z.string().optional(),\n alcohol: z.string().optional(),\n favouriteBooks: z.array(z.string().trim().max(200)).max(5).optional(),\n favouriteShows: z.array(z.string().trim().max(200)).max(5).optional(),\n idols: z.array(z.string().trim().max(200)).max(5).optional(),\n favouriteYoutubeChannels: z.array(z.string().trim().max(200)).max(5).optional(),\n mbtiType: z.string().optional(),\n attachmentStyle: z.string().optional(),\n loveLanguage: z.string().optional(),\n conflictStyle: z.string().optional(),\n oceanOpenness: z.number().int().min(1).max(100).optional(),\n oceanConscientiousness: z.number().int().min(1).max(100).optional(),\n oceanExtraversion: z.number().int().min(1).max(100).optional(),\n oceanAgreeableness: z.number().int().min(1).max(100).optional(),\n oceanNeuroticism: z.number().int().min(1).max(100).optional(),\n prompts: z\n .array(z.object({ prompt: z.string(), answer: z.string().max(250) }))\n .max(3)\n .optional(),\n preferredAgeRange: z.number().min(18).max(70).optional(),\n\n // Privacy — per-field visibility overrides\n fieldVisibility: z\n .record(z.string(), z.enum(['public', 'on_match', 'trust_gate', 'private']))\n .optional(),\n});\n\n// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\n// updateProfileSchema — all fields optional\n// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\n\nexport const updateProfileSchema = fullProfileSchema.partial();\n\n// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\n// onboardingFormSchema — derived from createProfileSchema for React Hook Form\n//\n// All fields from createProfileSchema made optional (form starts empty).\n// Omits photos (managed outside RHF) and currentLocation (built at submit from\n// existing user data). Adds UI-only fields for the hometown cascade.\n// dateOfBirth stored as ISO string in form (converted to Date at submit).\n//\n// Final validation at submit uses createProfileSchema.parse() directly.\n// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\n\n/**\n * onboardingFormSchema — form-state schema for React Hook Form.\n *\n * All fields use z.string() (no enums) because:\n * 1. Form starts with \"\" defaults (enums don't accept \"\")\n * 2. Options may change frequently without schema republish\n * 3. Strict enum validation happens ONLY at final submit via createProfileSchema.parse()\n *\n * This schema mirrors createProfileSchema's field names but with relaxed types.\n * Photos and currentLocation are managed outside RHF (separate state).\n */\nexport const onboardingFormSchema = z.object({\n // Required — has min validation\n displayName: z.string().trim().max(50),\n // String fields (enums validated at submit, not in form)\n dateOfBirth: z.string(),\n gender: z.string(),\n phoneNumber: z.string().default(''),\n pronouns: z.string(),\n relationshipStatus: z.string(),\n relationshipIntent: z.string(),\n sexualOrientation: z.string(),\n preferredGenders: z.array(z.string()),\n relationshipStructure: z.string(),\n educationLevel: z.string(),\n institutionTier: z.string(),\n cognitiveBand: z.string(),\n politicalOrientation: z.string(),\n profession: z.string(),\n careerStage: z.string(),\n incomeRange: z.string(),\n bodyBuild: z.string(),\n complexion: z.string(),\n familyReligion: z.string(),\n personalReligion: z.string(),\n motherTongue: z.string(),\n familyValues: z.string(),\n diet: z.string(),\n smoking: z.string(),\n alcohol: z.string(),\n mbtiType: z.string(),\n attachmentStyle: z.string(),\n loveLanguage: z.string(),\n conflictStyle: z.string(),\n // Type overrides (form stores as string, converted at submit)\n height: z.string(),\n weight: z.string(),\n currentLocation: z.string(),\n hometown: z.string(),\n bio: z.string(),\n myStory: z.string(),\n // Arrays\n hobbies: z.array(z.string()),\n favouriteBooks: z.array(z.string()),\n favouriteShows: z.array(z.string()),\n idols: z.array(z.string()),\n // Numbers (sliders)\n oceanOpenness: z.number().optional(),\n oceanConscientiousness: z.number().optional(),\n oceanExtraversion: z.number().optional(),\n oceanAgreeableness: z.number().optional(),\n oceanNeuroticism: z.number().optional(),\n // UI-only fields (not in createProfileSchema)\n sameAsFamily: z.boolean(),\n hometownState: z.string(),\n hometownStateId: z.string(),\n hometownDistrict: z.string(),\n hometownDistrictId: z.string(),\n});\n\n// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\n// Inferred types\n// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\n\nexport type FullProfileData = z.infer<typeof fullProfileSchema>;\n/**\n * Extract the numeric rank (1–7) from a cognitiveBand value like \"5_evidence_reasoning\".\n * Returns null for \"prefer_not_to_say\" or invalid values.\n * Useful for compatibility scoring: abs(rankA - rankB) gives the cognitive distance.\n */\nexport function getCognitiveBandRank(value: string | undefined | null): number | null {\n if (!value || value === 'prefer_not_to_say') return null;\n const rank = parseInt(value.charAt(0));\n return Number.isNaN(rank) ? null : rank;\n}\n\nexport type OnboardingFormData = z.infer<typeof onboardingFormSchema>;\nexport type CreateProfileInput = z.infer<typeof createProfileSchema>;\nexport type UpdateProfileInput = z.infer<typeof updateProfileSchema>;\n"]}
|
|
1
|
+
{"version":3,"file":"profile.js","sourceRoot":"","sources":["../src/profile.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * dating-schema — Full profile Zod schemas\n *\n * Generated from the 16 profile-field config files (01–16).\n * Every field is inlined as string literals — no runtime dependency on field configs.\n *\n * @module dating-schema/profile\n */\n\nimport { z } from 'zod';\nimport { photoSchema } from './common.js';\n\n// ─── Helper: extract option values from field config ─────────────────────────\n\n/** Build a z.enum() from a field config's options array values. */\nconst opts = <const T extends readonly [string, ...string[]]>(values: T) => z.enum(values);\n\n// ─── 01. Hero & Identity ─────────────────────────────────────────────────────\n\nconst genderOpts = opts([\n 'man',\n 'woman',\n 'non_binary',\n 'trans_man',\n 'trans_woman',\n 'genderfluid',\n 'genderqueer',\n 'agender',\n 'bigender',\n 'pangender',\n 'androgynous',\n 'intersex',\n 'gender_nonconforming',\n 'two_spirit',\n 'hijra',\n 'other',\n 'prefer_not_to_say',\n] as const);\n\nconst pronounsOpts = opts([\n 'he_him',\n 'she_her',\n 'they_them',\n 'he_they',\n 'she_they',\n 'ze_zir',\n 'xe_xem',\n 'any_pronouns',\n 'ask_me',\n 'other',\n 'prefer_not_to_say',\n] as const);\n\nconst relationshipIntentOpts = opts([\n 'life_partner',\n 'long_term',\n 'long_term_open_to_short',\n 'short_term_open_to_long',\n 'casual_dating',\n 'companionship',\n 'ethical_non_monogamy',\n 'activity_partner',\n 'new_friends',\n 'figuring_out',\n] as const);\n\nconst sexualOrientationOpts = opts([\n 'straight',\n 'gay',\n 'lesbian',\n 'bisexual',\n 'pansexual',\n 'asexual',\n 'demisexual',\n 'aromantic',\n 'graysexual',\n 'omnisexual',\n 'fluid',\n 'queer',\n 'questioning',\n 'homoflexible',\n 'heteroflexible',\n 'sapiosexual',\n 'prefer_not_to_say',\n] as const);\n\nconst relationshipStructureOpts = opts([\n 'monogamy',\n 'ethical_non_monogamy',\n 'open_relationship',\n 'polyamory',\n 'relationship_anarchy',\n 'open_to_exploring',\n 'figuring_out',\n 'prefer_not_to_say',\n] as const);\n\nconst mbtiTypeOpts = opts([\n 'INTJ',\n 'INTP',\n 'ENTJ',\n 'ENTP',\n 'INFJ',\n 'INFP',\n 'ENFJ',\n 'ENFP',\n 'ISTJ',\n 'ISFJ',\n 'ESTJ',\n 'ESFJ',\n 'ISTP',\n 'ISFP',\n 'ESTP',\n 'ESFP',\n 'dont_know',\n 'prefer_not_to_say',\n] as const);\n\n// ─── 02. Story & Prompts ─────────────────────────────────────────────────────\n\nconst selfKeywordsOpts = opts([\n 'creative',\n 'loyal',\n 'ambitious',\n 'empathetic',\n 'funny',\n 'adventurous',\n 'introverted',\n 'extroverted',\n 'thoughtful',\n 'independent',\n 'caring',\n 'curious',\n 'passionate',\n 'resilient',\n 'honest',\n 'spontaneous',\n 'reliable',\n 'overthinking',\n 'stubborn',\n 'emotional',\n 'logical',\n 'spiritual',\n 'grounded',\n 'dreamer',\n 'perfectionist',\n 'easygoing',\n 'intense',\n 'optimistic',\n 'realistic',\n 'nerdy',\n] as const);\n\n// othersKeywords uses the same option set\nconst othersKeywordsOpts = selfKeywordsOpts;\n\n// ─── 03. Basics & Deal-Breakers ──────────────────────────────────────────────\n\nconst bodyBuildOpts = opts([\n 'slim',\n 'lean',\n 'athletic',\n 'average',\n 'curvy',\n 'stocky',\n 'heavy',\n 'prefer_not_to_say',\n] as const);\n\nconst complexionOpts = opts([\n 'very_fair',\n 'fair',\n 'wheatish',\n 'wheatish_medium',\n 'olive',\n 'medium',\n 'dark',\n 'very_dark',\n 'prefer_not_to_say',\n] as const);\n\nconst religionOpts = opts([\n 'hindu',\n 'muslim_sunni',\n 'muslim_shia',\n 'muslim_sufi',\n 'muslim_other',\n 'christian_catholic',\n 'christian_protestant',\n 'christian_other',\n 'sikh',\n 'jain_digambar',\n 'jain_shwetambar',\n 'buddhist',\n 'parsi_zoroastrian',\n 'jewish',\n 'bahai',\n 'spiritual',\n 'atheist',\n 'agnostic',\n 'no_religion',\n 'inter_religion',\n 'other',\n 'prefer_not_to_say',\n] as const);\n\nconst religionPracticeLevelOpts = opts([\n 'devout',\n 'weekly',\n 'occasional',\n 'spiritual_private',\n 'secular',\n] as const);\n\nconst religionPartnerPreferenceOpts = opts([\n 'very_important',\n 'somewhat_important',\n 'not_important',\n 'prefer_not_to_say',\n] as const);\n\nconst culturalImportanceOpts = opts([\n 'very_important',\n 'somewhat_important',\n 'not_important',\n 'prefer_not_to_say',\n] as const);\n\nconst manglikStatusOpts = opts([\n 'manglik',\n 'partial_manglik',\n 'non_manglik',\n 'dont_know',\n 'prefer_not_to_say',\n] as const);\n\nconst motherTongueOpts = opts([\n 'hindi',\n 'english',\n 'bengali',\n 'telugu',\n 'marathi',\n 'tamil',\n 'urdu',\n 'gujarati',\n 'kannada',\n 'odia',\n 'malayalam',\n 'punjabi',\n 'assamese',\n 'maithili',\n 'bhojpuri',\n 'rajasthani',\n 'chhattisgarhi',\n 'haryanvi',\n 'tulu',\n 'sanskrit',\n 'sindhi',\n 'kashmiri',\n 'nepali',\n 'konkani',\n 'dogri',\n 'manipuri',\n 'bodo',\n 'santali',\n 'other',\n] as const);\n\nconst languagesSpokenOpts = opts([\n 'hindi',\n 'english',\n 'bengali',\n 'telugu',\n 'marathi',\n 'tamil',\n 'urdu',\n 'gujarati',\n 'kannada',\n 'odia',\n 'malayalam',\n 'punjabi',\n 'assamese',\n 'maithili',\n 'bhojpuri',\n 'rajasthani',\n 'chhattisgarhi',\n 'haryanvi',\n 'tulu',\n 'sanskrit',\n 'sindhi',\n 'kashmiri',\n 'nepali',\n 'konkani',\n 'dogri',\n 'manipuri',\n 'bodo',\n 'santali',\n 'other',\n 'spanish',\n 'french',\n 'german',\n 'mandarin',\n 'japanese',\n 'korean',\n 'arabic',\n 'portuguese',\n 'russian',\n 'italian',\n] as const);\n\nconst educationLevelOpts = opts([\n 'below_10th',\n 'high_school',\n 'iti_vocational',\n 'diploma',\n 'associate',\n 'in_college',\n 'bachelors',\n 'in_grad_school',\n 'masters',\n 'doctorate',\n 'professional',\n 'self_taught',\n 'prefer_not_to_say',\n] as const);\n\nconst institutionTierOpts = opts([\n 'tier1_elite',\n 'tier2_reputed',\n 'tier3_regional',\n 'open_distance',\n 'prefer_not_to_say',\n] as const);\n\nconst professionOpts = opts([\n 'it_software',\n 'engineering',\n 'healthcare_doctor',\n 'healthcare_nursing',\n 'healthcare_pharma',\n 'psychology_therapy',\n 'education_teaching',\n 'science_research',\n 'finance_banking',\n 'chartered_accountant',\n 'business_management',\n 'arts_entertainment',\n 'media_communication',\n 'design_creative',\n 'civil_services',\n 'government_public',\n 'defence_military',\n 'police_law_enforcement',\n 'legal',\n 'skilled_trades',\n 'transport_logistics',\n 'hospitality_travel',\n 'beauty_wellness',\n 'agriculture_farming',\n 'real_estate',\n 'retail_ecommerce',\n 'manufacturing',\n 'merchant_navy',\n 'ngo_social_work',\n 'religious_spiritual',\n 'freelancer_gig',\n 'content_creator',\n 'self_employed',\n 'student',\n 'homemaker',\n 'retired',\n 'not_working',\n 'differently_abled_pension',\n 'other',\n 'prefer_not_to_say',\n] as const);\n\nconst relationshipStatusOpts = opts([\n 'never_married',\n 'dating',\n 'married',\n 'separated',\n 'awaiting_divorce',\n 'divorced',\n 'widowed',\n 'enm',\n 'its_complicated',\n 'prefer_not_to_say',\n] as const);\n\nconst dietOpts = opts([\n 'vegetarian',\n 'vegan',\n 'eggetarian',\n 'non_vegetarian',\n 'pescatarian',\n 'occasionally_non_veg',\n 'flexitarian',\n 'jain',\n 'sattvic',\n 'no_onion_no_garlic',\n 'halal',\n 'kosher',\n 'other',\n 'prefer_not_to_say',\n] as const);\n\nconst smokingOpts = opts([\n 'never',\n 'socially',\n 'when_drinking',\n 'regularly',\n 'trying_to_quit',\n 'vaping',\n 'hookah_socially',\n 'prefer_not_to_say',\n] as const);\n\nconst alcoholOpts = opts([\n 'never',\n 'sober',\n 'rarely',\n 'socially',\n 'on_special_occasions',\n 'regularly',\n 'prefer_not_to_say',\n] as const);\n\nconst cannabisOpts = opts([\n 'never',\n 'socially',\n 'regularly',\n 'medical_only',\n '420_friendly',\n 'prefer_not_to_say',\n] as const);\n\nconst childrenPlansOpts = opts([\n 'want_children',\n 'dont_want',\n 'open_undecided',\n 'have_and_want_more',\n 'have_and_done',\n 'not_sure',\n 'prefer_not_to_say',\n] as const);\n\nconst lookingForEntrepreneurOpts = opts([\n 'yes',\n 'prefer',\n 'dont_care',\n 'prefer_not_to_say',\n] as const);\n\nconst nakshatraOpts = opts([\n 'ashwini',\n 'bharani',\n 'krittika',\n 'rohini',\n 'mrigashira',\n 'ardra',\n 'punarvasu',\n 'pushya',\n 'ashlesha',\n 'magha',\n 'purva_phalguni',\n 'uttara_phalguni',\n 'hasta',\n 'chitra',\n 'swati',\n 'vishakha',\n 'anuradha',\n 'jyeshtha',\n 'moola',\n 'purva_ashadha',\n 'uttara_ashadha',\n 'shravana',\n 'dhanishta',\n 'shatabhisha',\n 'purva_bhadrapada',\n 'uttara_bhadrapada',\n 'revati',\n 'dont_know',\n 'prefer_not_to_say',\n] as const);\n\nconst rashiOpts = opts([\n 'mesha',\n 'vrishabha',\n 'mithuna',\n 'karka',\n 'simha',\n 'kanya',\n 'tula',\n 'vrischika',\n 'dhanu',\n 'makara',\n 'kumbha',\n 'meena',\n 'dont_know',\n 'prefer_not_to_say',\n] as const);\n\n// hometownState uses z.string() — no enum needed (values come from area-entity API)\n\n// ─── 04. What I'm Looking For ────────────────────────────────────────────────\n\nconst relationshipRoleOpts = opts([\n 'mentor',\n 'mentee',\n 'equal_partner',\n 'protector',\n 'nurturer',\n 'provider',\n 'companion',\n 'challenger',\n 'cheerleader',\n 'wise_partner',\n 'prefer_not_to_say',\n] as const);\n\nconst dealbreakersOpts = opts([\n 'smoking',\n 'heavy_drinking',\n 'drug_use',\n 'no_ambition',\n 'dishonesty',\n 'poor_hygiene',\n 'different_religion',\n 'different_politics',\n 'no_kids_ever',\n 'already_has_kids',\n 'long_distance',\n 'non_monogamy',\n 'no_job',\n 'excessive_gaming',\n 'no_sense_of_humor',\n 'poor_communication',\n 'clingy',\n 'emotionally_unavailable',\n 'prefer_not_to_say',\n] as const);\n\n// ─── 05. Personality & Temperament ───────────────────────────────────────────\n\nconst enneagramTypeOpts = opts([\n 'type_1',\n 'type_2',\n 'type_3',\n 'type_4',\n 'type_5',\n 'type_6',\n 'type_7',\n 'type_8',\n 'type_9',\n 'dont_know',\n 'prefer_not_to_say',\n] as const);\n\nconst attachmentStyleOpts = opts([\n 'secure',\n 'anxious',\n 'avoidant',\n 'fearful_avoidant',\n 'still_figuring_out',\n 'prefer_not_to_say',\n] as const);\n\nconst humourStyleOpts = opts([\n 'witty',\n 'sarcastic',\n 'dry',\n 'goofy',\n 'dark',\n 'dad_jokes',\n 'self_deprecating',\n 'observational',\n 'punny',\n 'does_not_apply',\n] as const);\n\nconst relationshipPaceOpts = opts([\n 'slow',\n 'steady',\n 'fast',\n 'go_with_flow',\n 'prefer_not_to_say',\n] as const);\n\nconst communicationStyleOpts = opts([\n 'big_texter',\n 'phone_caller',\n 'voice_note_lover',\n 'send_memes',\n 'better_in_person',\n 'slow_replier',\n 'prefer_not_to_say',\n] as const);\n\nconst scientificTemperOpts = opts([\n 'strongly_scientific',\n 'mostly_scientific',\n 'balanced',\n 'mostly_intuitive',\n 'strongly_intuitive',\n 'prefer_not_to_say',\n] as const);\n\nconst outlookOnLifeOpts = opts([\n 'optimist',\n 'realist',\n 'pessimist',\n 'idealist',\n 'pragmatist',\n 'absurdist',\n 'prefer_not_to_say',\n] as const);\n\nconst socialBatteryOpts = opts([\n 'always_on',\n 'mostly_social',\n 'balanced',\n 'mostly_solo',\n 'hermit',\n 'prefer_not_to_say',\n] as const);\n\n// ─── 07. Interests & Hobbies ─────────────────────────────────────────────────\n\nconst hobbiesOpts = opts([\n // Creative\n 'reading',\n 'writing',\n 'cooking',\n 'baking',\n 'photography',\n 'painting',\n 'drawing',\n 'crafts',\n 'pottery',\n 'knitting',\n 'woodworking',\n 'blogging',\n 'vlogging',\n 'calligraphy',\n 'graphic_design',\n 'filmmaking',\n 'embroidery',\n 'origami',\n 'candle_making',\n 'resin_art',\n 'mehndi_art',\n 'rangoli',\n // Sports & Fitness\n 'gym',\n 'running',\n 'cycling',\n 'swimming',\n 'yoga',\n 'martial_arts',\n 'rock_climbing',\n 'hiking',\n 'skating',\n 'skateboarding',\n 'surfing',\n 'skiing',\n 'cricket',\n 'football',\n 'badminton',\n 'tennis',\n 'basketball',\n 'table_tennis',\n 'archery',\n 'horse_riding',\n 'volleyball',\n 'hockey',\n 'kabaddi',\n 'kho_kho',\n 'wrestling',\n 'boxing',\n 'crossfit',\n 'pilates',\n 'calisthenics',\n 'trekking',\n 'paragliding',\n 'golf',\n // Music & Performance\n 'singing',\n 'playing_instrument',\n 'dancing',\n 'karaoke',\n 'dj',\n 'stand_up_comedy',\n 'theater',\n 'classical_dance',\n 'beatboxing',\n 'music_production',\n 'poetry_slam',\n 'rapping',\n 'open_mic',\n // Entertainment\n 'movies',\n 'anime',\n 'podcasts',\n 'gaming',\n 'board_games',\n 'binge_watching',\n 'k_drama',\n 'bollywood',\n 'documentaries',\n 'manga',\n 'comic_books',\n 'true_crime',\n 'stand_up_specials',\n 'quiz_trivia',\n 'chess',\n 'carrom',\n 'ludo',\n 'card_games',\n 'escape_rooms',\n 'memes',\n // Food & Drink\n 'coffee',\n 'tea',\n 'wine_tasting',\n 'street_food',\n 'fine_dining',\n 'food_photography',\n 'food_blogging',\n 'mixology',\n 'craft_beer',\n 'home_brewing',\n 'regional_cuisines',\n 'healthy_eating',\n 'meal_prep',\n 'chocolate',\n 'desserts',\n 'spice_lover',\n // Travel & Outdoors\n 'traveling',\n 'camping',\n 'backpacking',\n 'road_trips',\n 'scuba_diving',\n 'bird_watching',\n 'fishing',\n 'gardening',\n 'stargazing',\n 'solo_travel',\n 'heritage_tourism',\n 'mountain_biking',\n 'wildlife_safari',\n 'train_journeys',\n 'bike_rides',\n 'beach_hopping',\n 'snorkeling',\n 'kayaking',\n 'rafting',\n 'nature_walks',\n 'van_life',\n // Mindfulness & Wellness\n 'meditation',\n 'spirituality_practice',\n 'astrology_hobby',\n 'tarot',\n 'journaling',\n 'self_improvement',\n 'ayurveda',\n 'pranayama',\n 'gratitude_practice',\n 'therapy',\n 'manifestation',\n 'sound_healing',\n 'aromatherapy',\n // Social & Community\n 'volunteering',\n 'activism',\n 'mentoring',\n 'networking',\n 'pet_care',\n 'community_service',\n 'ngo_work',\n 'animal_rescue',\n 'teaching',\n 'public_speaking',\n 'debate',\n 'model_un',\n 'parenting',\n // Tech & Learning\n 'coding',\n 'investing',\n 'entrepreneurship',\n 'languages',\n 'science',\n 'ai_ml',\n 'crypto_web3',\n 'stock_trading',\n 'robotics',\n 'astronomy',\n 'history',\n 'philosophy',\n 'psychology',\n 'online_courses',\n 'open_source',\n 'electronics',\n 'data_science',\n // Home & Lifestyle\n 'interior_design',\n 'fashion',\n 'skincare',\n 'thrifting',\n 'bowling',\n 'makeup',\n 'grooming',\n 'plant_parenting',\n 'minimalism',\n 'sustainable_living',\n 'home_decor',\n 'nail_art',\n 'tattoos',\n 'collecting',\n 'shopping',\n 'car_bikes',\n // Nightlife & Going Out\n 'clubbing',\n 'bar_hopping',\n 'house_parties',\n 'live_music',\n 'pub_quiz',\n 'hookah',\n 'late_night_drives',\n 'cafe_hopping',\n 'rooftop_chilling',\n // Misc\n 'diy',\n 'other',\n] as const);\n\nconst musicGenresOpts = opts([\n 'pop',\n 'rock',\n 'hip_hop',\n 'rnb',\n 'jazz',\n 'classical',\n 'electronic',\n 'edm',\n 'country',\n 'folk',\n 'indie',\n 'metal',\n 'punk',\n 'reggae',\n 'latin',\n 'kpop',\n 'bollywood',\n 'sufi',\n 'ghazal',\n 'carnatic',\n 'hindustani_classical',\n 'devotional',\n 'lofi',\n 'ambient',\n 'other',\n] as const);\n\nconst gamingInterestOpts = opts([\n 'hardcore',\n 'casual',\n 'mobile_only',\n 'board_tabletop',\n 'retro',\n 'not_a_gamer',\n 'prefer_not_to_say',\n] as const);\n\nconst readingHabitOpts = opts([\n 'voracious',\n 'regular',\n 'occasional',\n 'audiobooks',\n 'articles_only',\n 'not_a_reader',\n 'prefer_not_to_say',\n] as const);\n\nconst artApreciationOpts = opts([\n 'creator',\n 'hobbyist',\n 'appreciator',\n 'casual',\n 'not_into_art',\n 'prefer_not_to_say',\n] as const);\n\nconst eventPreferenceOpts = opts([\n 'concerts',\n 'festivals',\n 'sports_events',\n 'comedy_shows',\n 'theater_plays',\n 'art_exhibitions',\n 'food_festivals',\n 'book_readings',\n 'hackathons',\n 'spiritual_gatherings',\n 'house_parties',\n 'club_nights',\n 'outdoor_adventures',\n 'workshops',\n 'prefer_not_to_say',\n] as const);\n\nconst riskAppetiteOpts = opts([\n 'thrill_seeker',\n 'adventurous',\n 'moderate',\n 'cautious',\n 'risk_averse',\n 'prefer_not_to_say',\n] as const);\n\nconst volunteerInterestOpts = opts([\n 'environment',\n 'animal_welfare',\n 'education_literacy',\n 'poverty',\n 'health',\n 'mental_health',\n 'gender_equality',\n 'lgbtq_rights',\n 'disability',\n 'children',\n 'elderly',\n 'disaster_relief',\n 'human_rights',\n 'tech_for_good',\n 'none',\n 'prefer_not_to_say',\n] as const);\n\nconst socialCircleSizeOpts = opts([\n 'small',\n 'medium',\n 'large',\n 'mostly_solo',\n 'prefer_not_to_say',\n] as const);\n\n// ─── 09. Values & Beliefs ────────────────────────────────────────────────────\n\nconst lifeGoalsOpts = opts([\n 'build_family',\n 'career_success',\n 'financial_freedom',\n 'travel_world',\n 'make_impact',\n 'creative_fulfillment',\n 'spiritual_growth',\n 'education',\n 'start_business',\n 'buy_home',\n 'early_retirement',\n 'health_longevity',\n 'find_love',\n 'self_discovery',\n 'leave_legacy',\n 'prefer_not_to_say',\n] as const);\n\nconst politicalOrientationOpts = opts([\n 'far_left',\n 'left',\n 'centre_left',\n 'centrist',\n 'centre_right',\n 'right',\n 'far_right',\n 'libertarian',\n 'apolitical',\n 'prefer_not_to_say',\n] as const);\n\nconst environmentalValuesOpts = opts([\n 'very_eco',\n 'trying',\n 'somewhat',\n 'not_priority',\n 'prefer_not_to_say',\n] as const);\n\nconst organDonorOpts = opts(['yes', 'planning', 'open', 'no', 'prefer_not_to_say'] as const);\n\nconst spiritualPracticeOpts = opts([\n 'daily_meditation',\n 'yoga_regular',\n 'prayer',\n 'mindfulness',\n 'nature_spirituality',\n 'no_practice',\n 'exploring',\n 'prefer_not_to_say',\n] as const);\n\nconst astrologyBeliefOpts = opts([\n 'strong_believer',\n 'casual',\n 'skeptical',\n 'dont_believe',\n 'prefer_not_to_say',\n] as const);\n\n// ─── 10. Career & Work ───────────────────────────────────────────────────────\n\nconst careerStageOpts = opts([\n 'student',\n 'just_starting',\n 'mid_career',\n 'senior',\n 'entrepreneur',\n 'freelancer',\n 'career_break',\n 'retired',\n 'prefer_not_to_say',\n] as const);\n\nconst workLocationModeOpts = opts([\n 'office',\n 'remote',\n 'hybrid',\n 'freelance_flexible',\n 'not_working',\n 'prefer_not_to_say',\n] as const);\n\nconst workTravelFrequencyOpts = opts([\n 'never',\n 'rarely',\n 'monthly',\n 'weekly',\n 'constantly',\n 'prefer_not_to_say',\n] as const);\n\nconst retirementPlanOpts = opts([\n 'early_retire',\n 'standard',\n 'work_forever',\n 'passion_project',\n 'no_plan',\n 'prefer_not_to_say',\n] as const);\n\n// ─── 11. Lifestyle & Daily Life ──────────────────────────────────────────────\n\nconst chronotypeOpts = opts([\n 'early_bird',\n 'night_owl',\n 'in_between',\n 'depends',\n 'prefer_not_to_say',\n] as const);\n\nconst sleepScheduleOpts = opts([\n 'before_10pm',\n '10pm_midnight',\n 'midnight_2am',\n 'after_2am',\n 'irregular',\n 'prefer_not_to_say',\n] as const);\n\nconst fitnessLevelOpts = opts([\n 'very_active',\n 'active',\n 'sometimes',\n 'rarely',\n 'not_active',\n 'prefer_not_to_say',\n] as const);\n\nconst travelFrequencyOpts = opts([\n 'every_month',\n 'few_times_year',\n 'once_a_year',\n 'rarely',\n 'never',\n 'prefer_not_to_say',\n] as const);\n\nconst livingSituationOpts = opts([\n 'alone',\n 'roommates',\n 'family',\n 'partner',\n 'kids',\n 'other',\n 'prefer_not_to_say',\n] as const);\n\nconst relocationWillingnessOpts = opts([\n 'very_willing',\n 'open',\n 'prefer_not',\n 'cant',\n 'prefer_not_to_say',\n] as const);\n\nconst petPreferenceOpts = opts([\n 'dog_owner',\n 'cat_owner',\n 'have_other',\n 'love_no_pets',\n 'want_someday',\n 'allergic',\n 'not_pet_person',\n 'prefer_not_to_say',\n] as const);\n\nconst cookingLevelOpts = opts([\n 'chef_level',\n 'regular',\n 'follow_recipe',\n 'basics',\n 'takeout',\n 'willing_to_learn',\n 'prefer_not_to_say',\n] as const);\n\nconst tidinessOpts = opts([\n 'neat_freak',\n 'generally_tidy',\n 'organized_chaos',\n 'messy',\n 'need_help',\n 'prefer_not_to_say',\n] as const);\n\nconst choresSplitOpts = opts([\n 'equal_split',\n 'flexible',\n 'one_cooks_one_cleans',\n 'hire_help',\n 'dont_care',\n 'prefer_not_to_say',\n] as const);\n\nconst domesticRoleOpts = opts([\n 'traditional',\n 'modern_equal',\n 'flexible',\n 'dont_believe_in_roles',\n 'prefer_not_to_say',\n] as const);\n\nconst fashionStyleOpts = opts([\n 'casual',\n 'streetwear',\n 'smart_casual',\n 'classic',\n 'bohemian',\n 'minimalist',\n 'trendy',\n 'athleisure',\n 'traditional',\n 'dont_think',\n 'prefer_not_to_say',\n] as const);\n\nconst hygieneStandardOpts = opts([\n 'meticulous',\n 'clean',\n 'average',\n 'relaxed',\n 'prefer_not_to_say',\n] as const);\n\nconst vacationStyleOpts = opts([\n 'beach',\n 'adventure',\n 'city',\n 'cultural',\n 'backpacking',\n 'luxury',\n 'road_trips',\n 'staycation',\n 'wellness',\n 'prefer_not_to_say',\n] as const);\n\nconst urbanRuralOpts = opts([\n 'big_city',\n 'small_city',\n 'suburbs',\n 'rural',\n 'nomadic',\n 'prefer_not_to_say',\n] as const);\n\nconst climatePreferenceOpts = opts([\n 'tropical',\n 'temperate',\n 'cold',\n 'dry',\n 'no_preference',\n 'prefer_not_to_say',\n] as const);\n\nconst carOwnershipOpts = opts([\n 'own_car',\n 'planning',\n 'no_car',\n 'no_car_by_choice',\n 'prefer_not_to_say',\n] as const);\n\nconst drivingAbilityOpts = opts([\n 'licensed',\n 'licensed_rarely',\n 'learning',\n 'no_license',\n 'prefer_not_to_say',\n] as const);\n\nconst timeManagementOpts = opts([\n 'always_early',\n 'on_time',\n 'fashionably_late',\n 'running_late',\n 'time_is_construct',\n 'prefer_not_to_say',\n] as const);\n\nconst screenTimeOpts = opts([\n 'minimal',\n 'moderate',\n 'heavy',\n 'digital_detox',\n 'prefer_not_to_say',\n] as const);\n\nconst socialMediaUsageOpts = opts([\n 'very_active',\n 'regular',\n 'lurker',\n 'minimal',\n 'no_social',\n 'prefer_not_to_say',\n] as const);\n\nconst bodyModificationsOpts = opts([\n 'tattoos',\n 'piercings',\n 'nose_piercing',\n 'tongue_piercing',\n 'none',\n 'open_to_it',\n 'prefer_not_to_say',\n] as const);\n\nconst earPiercingsOpts = opts([\n 'none',\n 'single_lobe',\n 'multiple',\n 'stretched',\n 'prefer_not_to_say',\n] as const);\n\nconst sunSignOpts = opts([\n 'aries',\n 'taurus',\n 'gemini',\n 'cancer',\n 'leo',\n 'virgo',\n 'libra',\n 'scorpio',\n 'sagittarius',\n 'capricorn',\n 'aquarius',\n 'pisces',\n 'prefer_not_to_say',\n] as const);\n\nconst loveLanguageOpts = opts([\n 'words_of_affirmation',\n 'quality_time',\n 'receiving_gifts',\n 'acts_of_service',\n 'physical_touch',\n 'prefer_not_to_say',\n] as const);\n\n// ─── 12. Cognitive & Intellectual ────────────────────────────────────────────\n\nconst intellectualNeedOpts = opts([\n 'essential',\n 'very_important',\n 'nice_to_have',\n 'not_important',\n 'prefer_not_to_say',\n] as const);\n\nconst cognitiveBandOpts = opts([\n '1_tradition_faith',\n '2_faith_curious',\n '3_multiplicity_open',\n '4_pragmatic_flexible',\n '5_evidence_reasoning',\n '6_critical_reflective',\n '7_skeptic_optimize',\n 'prefer_not_to_say',\n] as const);\n\nconst learningPathOpts = opts([\n 'self_taught',\n 'formal',\n 'experiential',\n 'social',\n 'mixed',\n 'prefer_not_to_say',\n] as const);\n\nconst knowledgeAreasOpts = opts([\n 'technology',\n 'science',\n 'arts',\n 'business',\n 'health',\n 'law',\n 'psychology',\n 'philosophy',\n 'history',\n 'languages',\n 'math',\n 'environment',\n 'education',\n 'sports',\n 'cooking_food',\n 'music_knowledge',\n 'other',\n 'prefer_not_to_say',\n] as const);\n\nconst learningMethodsOpts = opts([\n 'reading',\n 'videos',\n 'podcasts',\n 'courses',\n 'workshops',\n 'mentorship',\n 'hands_on',\n 'discussion',\n 'prefer_not_to_say',\n] as const);\n\nconst intellectualExperienceOpts = opts([\n 'expert',\n 'advanced',\n 'intermediate',\n 'growing',\n 'beginner',\n 'prefer_not_to_say',\n] as const);\n\nconst intellectualGoalsOpts = opts([\n 'master_skill',\n 'write_book',\n 'learn_language',\n 'get_degree',\n 'start_research',\n 'teach_others',\n 'build_something',\n 'none_specific',\n 'prefer_not_to_say',\n] as const);\n\nconst goalSettingStyleOpts = opts([\n 'detailed_planner',\n 'broad_goals',\n 'vision_board',\n 'go_with_flow',\n 'no_goals',\n 'prefer_not_to_say',\n] as const);\n\nconst teachingMentoringOpts = opts([\n 'love_teaching',\n 'enjoy',\n 'neutral',\n 'prefer_learning',\n 'not_interested',\n 'prefer_not_to_say',\n] as const);\n\n// ─── 13. Relationship & Intimacy ─────────────────────────────────────────────\n\nconst intimacyImportanceOpts = opts([\n 'very_important',\n 'important',\n 'moderate',\n 'low',\n 'not_important',\n 'prefer_not_to_say',\n] as const);\n\nconst loveLanguageDetailedOpts = opts([\n 'words_of_affirmation',\n 'quality_time',\n 'receiving_gifts',\n 'acts_of_service',\n 'physical_touch',\n 'prefer_not_to_say',\n] as const);\n\nconst affectionLevelOpts = opts([\n 'very_affectionate',\n 'moderately',\n 'reserved',\n 'not_affectionate',\n 'depends',\n 'prefer_not_to_say',\n] as const);\n\nconst pdaComfortOpts = opts(['love_it', 'some', 'minimal', 'none', 'prefer_not_to_say'] as const);\n\nconst sexDriveOpts = opts(['very_high', 'high', 'moderate', 'low', 'very_low', 'varies'] as const);\n\nconst sexualActivityLevelOpts = opts([\n 'very_active',\n 'active',\n 'moderate',\n 'low',\n 'abstinent',\n] as const);\n\nconst kinkOpennessOpts = opts([\n 'very_open',\n 'open',\n 'curious',\n 'vanilla',\n 'not_comfortable',\n] as const);\n\nconst concurrentPartnersOpts = opts([\n 'strictly_monogamous',\n 'monogamous',\n 'open_to_discuss',\n 'ethically_non_monogamous',\n 'polyamorous',\n] as const);\n\nconst conflictStyleOpts = opts([\n 'talk_it_out',\n 'cool_off_first',\n 'avoid_conflict',\n 'compromise',\n 'need_mediator',\n 'prefer_not_to_say',\n] as const);\n\nconst videoDatingComfortOpts = opts([\n 'love_it',\n 'open',\n 'prefer_not',\n 'never',\n 'prefer_not_to_say',\n] as const);\n\nconst safetyPreferenceOpts = opts([\n 'public_place',\n 'share_location',\n 'video_first',\n 'bring_friend',\n 'no_preference',\n 'prefer_not_to_say',\n] as const);\n\nconst datePreferenceOpts = opts([\n 'coffee',\n 'dinner',\n 'drinks',\n 'outdoor',\n 'cultural',\n 'cooking',\n 'adventure',\n 'picnic',\n 'movie',\n 'game_night',\n 'prefer_not_to_say',\n] as const);\n\n// ─── 14. Family & Home ───────────────────────────────────────────────────────\n\nconst familyTypeOpts = opts([\n 'nuclear',\n 'joint',\n 'single_parent',\n 'blended',\n 'no_family',\n 'prefer_not_to_say',\n] as const);\n\nconst parentingStyleOpts = opts([\n 'authoritative',\n 'permissive',\n 'attachment',\n 'helicopter',\n 'free_range',\n 'equal_co_parent',\n 'not_sure',\n 'not_applicable',\n 'prefer_not_to_say',\n] as const);\n\nconst caregivingResponsibilityOpts = opts([\n 'elderly_parents',\n 'disabled_family',\n 'children',\n 'shared',\n 'none',\n 'future',\n 'prefer_not_to_say',\n] as const);\n\nconst familyBuildingOpts = opts([\n 'natural',\n 'adoption',\n 'foster',\n 'ivf',\n 'surrogacy',\n 'co_parenting',\n 'prefer_not_to_say',\n] as const);\n\nconst weddingStyleOpts = opts([\n 'grand',\n 'intimate',\n 'courthouse',\n 'destination',\n 'elopement',\n 'dont_care',\n 'not_marriage',\n 'prefer_not_to_say',\n] as const);\n\nconst giftGivingStyleOpts = opts([\n 'lavish',\n 'thoughtful',\n 'practical',\n 'experiences',\n 'handmade',\n 'minimal',\n 'prefer_not_to_say',\n] as const);\n\nconst contraceptionViewOpts = opts([\n 'pro_contraception',\n 'open',\n 'natural_methods',\n 'against',\n 'not_applicable',\n 'prefer_not_to_say',\n] as const);\n\nconst parentsExpectationOpts = opts([\n 'very_involved',\n 'somewhat',\n 'independent',\n 'no_contact',\n 'prefer_not_to_say',\n] as const);\n\nconst parentOccupationOpts = opts([\n 'it_software',\n 'engineering',\n 'healthcare',\n 'education',\n 'finance_accounting',\n 'arts_entertainment',\n 'media_communication',\n 'business_management',\n 'government_public',\n 'legal',\n 'science_research',\n 'agriculture',\n 'hospitality_travel',\n 'real_estate',\n 'retail_ecommerce',\n 'manufacturing',\n 'self_employed',\n 'homemaker',\n 'retired',\n 'deceased',\n 'other',\n 'prefer_not_to_say',\n] as const);\n\nconst familyAffluenceOpts = opts([\n 'lower_middle',\n 'middle',\n 'upper_middle',\n 'affluent',\n 'wealthy',\n 'prefer_not_to_say',\n] as const);\n\nconst familyValuesOpts = opts([\n 'orthodox',\n 'moderate',\n 'liberal',\n 'very_liberal',\n 'prefer_not_to_say',\n] as const);\n\nconst profileCreatedByOpts = opts([\n 'self',\n 'parent',\n 'sibling',\n 'friend',\n 'relative',\n 'other',\n] as const);\n\n// ─── 15. Finance & Legal ─────────────────────────────────────────────────────\n\nconst incomeRangeOpts = opts([\n 'under_3l',\n '3l_6l',\n '6l_10l',\n '10l_15l',\n '15l_25l',\n '25l_50l',\n '50l_1cr',\n 'above_1cr',\n 'prefer_not_to_say',\n] as const);\n\nconst financialAttitudeOpts = opts([\n 'saver',\n 'spender',\n 'balanced',\n 'investor',\n 'minimalist',\n 'prefer_not_to_say',\n] as const);\n\nconst incomeSourcesOpts = opts([\n 'salary',\n 'business',\n 'freelance',\n 'investments',\n 'rental',\n 'family',\n 'pension',\n 'no_income',\n 'prefer_not_to_say',\n] as const);\n\nconst financialIntegrationOpts = opts([\n 'fully_joint',\n 'mostly_joint',\n 'split',\n 'proportional',\n 'separate',\n 'prefer_not_to_say',\n] as const);\n\nconst debtStatusOpts = opts([\n 'debt_free',\n 'student_loans',\n 'mortgage',\n 'manageable',\n 'significant',\n 'prefer_not_to_say',\n] as const);\n\nconst financialStabilityOpts = opts([\n 'very_stable',\n 'stable',\n 'building',\n 'unstable',\n 'in_crisis',\n 'prefer_not_to_say',\n] as const);\n\nconst creditScoreOpts = opts([\n 'excellent',\n 'good',\n 'fair',\n 'poor',\n 'dont_know',\n 'not_applicable',\n 'prefer_not_to_say',\n] as const);\n\nconst prenupViewOpts = opts([\n 'strongly_for',\n 'open',\n 'neutral',\n 'against',\n 'strongly_against',\n 'prefer_not_to_say',\n] as const);\n\nconst lifeInsuranceOpts = opts([\n 'have_it',\n 'planning',\n 'dont_have',\n 'not_needed',\n 'prefer_not_to_say',\n] as const);\n\nconst healthInsuranceOpts = opts([\n 'comprehensive',\n 'basic',\n 'employer',\n 'none',\n 'prefer_not_to_say',\n] as const);\n\nconst citizenshipOpts = opts([\n 'citizen',\n 'permanent_resident',\n 'work_visa',\n 'student_visa',\n 'dual_citizen',\n 'other',\n 'prefer_not_to_say',\n] as const);\n\nconst legalIssuesOpts = opts(['none', 'minor_past', 'ongoing', 'prefer_not_to_say'] as const);\n\nconst drivingRecordOpts = opts([\n 'clean',\n 'minor',\n 'dui_past',\n 'no_license',\n 'prefer_not_to_say',\n] as const);\n\nconst billSplittingOpts = opts([\n 'always_split',\n 'alternate',\n 'whoever_invites',\n 'traditional',\n 'whoever_offers',\n 'dont_care',\n 'prefer_not_to_say',\n] as const);\n\nconst countryOfResidenceOpts = opts([\n 'india',\n 'usa',\n 'uk',\n 'canada',\n 'australia',\n 'uae',\n 'singapore',\n 'malaysia',\n 'germany',\n 'new_zealand',\n 'south_africa',\n 'saudi_arabia',\n 'qatar',\n 'bahrain',\n 'kuwait',\n 'oman',\n 'other',\n 'prefer_not_to_say',\n] as const);\n\nconst visaTypeOpts = opts([\n 'h1b',\n 'l1',\n 'eb1',\n 'eb2',\n 'eb3',\n 'opt',\n 'green_card',\n 'citizen',\n 'work_permit',\n 'student',\n 'other',\n 'not_applicable',\n 'prefer_not_to_say',\n] as const);\n\n// ─── 16. Health & Wellness ───────────────────────────────────────────────────\n\nconst accessibilityNeedsOpts = opts([\n 'none',\n 'physical',\n 'visual',\n 'hearing',\n 'cognitive',\n 'chronic_condition',\n 'multiple',\n 'prefer_not_to_say',\n] as const);\n\nconst chronicConditionOpts = opts([\n 'none',\n 'diabetes',\n 'hypertension',\n 'asthma',\n 'thyroid',\n 'autoimmune',\n 'mental_health',\n 'other',\n 'multiple',\n 'prefer_not_to_say',\n] as const);\n\nconst criticalIllnessHistoryOpts = opts([\n 'none',\n 'cancer_remission',\n 'heart',\n 'other_managed',\n 'currently_treating',\n 'prefer_not_to_say',\n] as const);\n\nconst neurodiversityOpts = opts([\n 'neurotypical',\n 'adhd',\n 'autism',\n 'dyslexia',\n 'bipolar',\n 'ocd',\n 'other',\n 'multiple',\n 'prefer_not_to_say',\n] as const);\n\nconst personalityDisorderAwarenessOpts = opts([\n 'no',\n 'diagnosed_managing',\n 'suspected',\n 'in_treatment',\n 'prefer_not_to_say',\n] as const);\n\nconst therapyOpennessOpts = opts([\n 'currently_in',\n 'past_positive',\n 'open',\n 'not_for_me',\n 'never_considered',\n 'prefer_not_to_say',\n] as const);\n\nconst recoveryStatusOpts = opts([\n 'not_applicable',\n 'in_recovery',\n 'long_term_sober',\n 'working_on_it',\n 'prefer_not_to_say',\n] as const);\n\nconst phobiasOpts = opts([\n 'heights',\n 'flying',\n 'spiders',\n 'water',\n 'crowds',\n 'darkness',\n 'needles',\n 'blood',\n 'enclosed_spaces',\n 'dogs',\n 'snakes',\n 'none',\n 'prefer_not_to_say',\n] as const);\n\nconst fertilityStatusOpts = opts([\n 'no_issues',\n 'tested_fine',\n 'undergoing_treatment',\n 'known_challenges',\n 'not_tested',\n 'not_applicable',\n 'prefer_not_to_say',\n] as const);\n\nconst snoringHabitOpts = opts([\n 'never',\n 'sometimes',\n 'regularly',\n 'use_cpap',\n 'dont_know',\n 'prefer_not_to_say',\n] as const);\n\nconst allergiesOpts = opts([\n 'peanuts',\n 'shellfish',\n 'dairy',\n 'gluten',\n 'eggs',\n 'soy',\n 'pollen',\n 'dust',\n 'pet_dander',\n 'latex',\n 'medication',\n 'insect_stings',\n 'none',\n 'prefer_not_to_say',\n] as const);\n\nconst bloodTypeOpts = opts([\n 'a_positive',\n 'a_negative',\n 'b_positive',\n 'b_negative',\n 'ab_positive',\n 'ab_negative',\n 'o_positive',\n 'o_negative',\n 'dont_know',\n 'prefer_not_to_say',\n] as const);\n\nconst rhFactorOpts = opts(['positive', 'negative', 'dont_know', 'prefer_not_to_say'] as const);\n\nconst geneticCarrierOpts = opts([\n 'not_carrier',\n 'carrier',\n 'tested_clear',\n 'not_tested',\n 'prefer_not_to_say',\n] as const);\n\nconst geneticCounselingOpts = opts([\n 'already_done',\n 'open',\n 'not_needed',\n 'against',\n 'prefer_not_to_say',\n] as const);\n\nconst vaccinationsOpts = opts([\n 'covid_full',\n 'covid_boosted',\n 'flu_annual',\n 'hpv',\n 'hepatitis',\n 'tetanus',\n 'mmr',\n 'all_standard',\n 'none',\n 'prefer_not_to_say',\n] as const);\n\nconst healthSafetyPracticeOpts = opts([\n 'very_careful',\n 'mostly',\n 'average',\n 'relaxed',\n 'prefer_not_to_say',\n] as const);\n\nconst bodyPositivityOpts = opts([\n 'very_positive',\n 'positive',\n 'working_on_it',\n 'struggles',\n 'prefer_not_to_say',\n] as const);\n\nconst performanceDrugsOpts = opts([\n 'never',\n 'past_use',\n 'currently',\n 'supplements_only',\n 'prefer_not_to_say',\n] as const);\n\nconst appearanceSurgeryOpts = opts([\n 'never',\n 'have_had',\n 'open',\n 'against',\n 'prefer_not_to_say',\n] as const);\n\nconst mentalHealthOpennessOpts = opts([\n 'very_open',\n 'somewhat',\n 'private',\n 'uncomfortable',\n 'prefer_not_to_say',\n] as const);\n\nconst stressManagementOpts = opts([\n 'exercise',\n 'meditation',\n 'therapy',\n 'social',\n 'creative',\n 'nature',\n 'unhealthy',\n 'dont_manage',\n 'prefer_not_to_say',\n] as const);\n\n// ─── Location sub-schema ─────────────────────────────────────────────────────\n\nconst areaRefSchema = z.object({\n _id: z.string(),\n name: z.string(),\n type: z.string().optional(),\n});\n\nconst currentLocationSchema = z.object({\n displayName: z.string().optional(),\n country: areaRefSchema.optional(),\n // Full area hierarchy — each { _id, name, type } traces back to AreaEntity in survey-db\n state: areaRefSchema.optional(),\n district: areaRefSchema.optional(),\n areaType: z.enum(['RURAL', 'URBAN']).optional(),\n // Rural lineage\n block: areaRefSchema.optional(),\n gramPanchayat: areaRefSchema.optional(),\n village: areaRefSchema.optional(),\n hamlet: areaRefSchema.optional(),\n // Urban lineage\n urbanBodyType: z.string().optional(),\n urbanBody: areaRefSchema.optional(),\n urbanWard: areaRefSchema.optional(),\n locality: areaRefSchema.optional(),\n // Geo coordinates\n latitude: z.number().optional(),\n longitude: z.number().optional(),\n});\n\n// ─── Family member sub-schema (object_array itemShape) ───────────────────────\n\nconst familyMemberSchema = z.object({\n relation: z.string(),\n alive: z.boolean(),\n});\n\n// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\n// fullProfileSchema — every non-computed field (191 fields, 190 after skipping bmi)\n// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\n\nexport const fullProfileSchema = z.object({\n // ── 01. Hero & Identity ────────────────────────────────────────────────────\n photos: z.array(photoSchema).min(2).max(6).optional(),\n displayName: z.string().trim().max(50).optional(),\n dateOfBirth: z.coerce.date().optional(),\n gender: genderOpts.optional(),\n phoneNumber: z.string().trim().max(15).optional(),\n emergencyContact: z.object({\n phoneNumber: z.string().trim().max(15),\n relation: z.enum(['father', 'mother', 'brother', 'sister', 'uncle', 'aunt', 'grandparent', 'spouse', 'friend', 'guardian', 'other']),\n }).optional(),\n pronouns: pronounsOpts.optional(),\n currentLocation: currentLocationSchema.optional(),\n hometown: z.string().trim().max(100).optional(),\n searchRadius: z.number().min(1).max(500).optional(),\n relationshipIntent: relationshipIntentOpts.optional(),\n sexualOrientation: sexualOrientationOpts.optional(),\n relationshipStructure: relationshipStructureOpts.optional(),\n mbtiType: mbtiTypeOpts.optional(),\n\n // ── 02. Story & Prompts ────────────────────────────────────────────────────\n bio: z.string().trim().max(500).optional(),\n prompts: z\n .array(\n z.object({\n prompt: z.string(),\n answer: z.string().max(250),\n }),\n )\n .min(1)\n .max(3)\n .optional(),\n voicePrompt: z\n .object({\n url: z.string().url(),\n assetId: z.string(),\n durationSeconds: z.number().max(30),\n })\n .optional(),\n bornTo: z.string().trim().max(200).optional(),\n senseOfSelf: z.string().trim().max(200).optional(),\n selfKeywords: z.array(selfKeywordsOpts).max(5).optional(),\n othersKeywords: z.array(othersKeywordsOpts).max(5).optional(),\n\n // ── 03. Basics & Deal-Breakers ─────────────────────────────────────────────\n height: z.number().min(100).max(220).optional(),\n weight: z.number().min(30).max(200).optional(),\n // bmi — computed, skipped\n bodyBuild: bodyBuildOpts.optional(),\n complexion: complexionOpts.optional(),\n familyReligion: religionOpts.optional(),\n personalReligion: religionOpts.optional(),\n religionPracticeLevel: religionPracticeLevelOpts.optional(),\n religionPartnerPreference: religionPartnerPreferenceOpts.optional(),\n caste: z.string().trim().max(100).optional(),\n culturalImportance: culturalImportanceOpts.optional(),\n manglikStatus: manglikStatusOpts.optional(),\n motherTongue: motherTongueOpts.optional(),\n languagesSpoken: z.array(languagesSpokenOpts).max(20).optional(),\n educationLevel: educationLevelOpts.optional(),\n institutionTier: institutionTierOpts.optional(),\n profession: professionOpts.optional(),\n relationshipStatus: relationshipStatusOpts.optional(),\n diet: dietOpts.optional(),\n smoking: smokingOpts.optional(),\n alcohol: alcoholOpts.optional(),\n cannabis: cannabisOpts.optional(),\n childrenPlans: childrenPlansOpts.optional(),\n lookingForEntrepreneur: lookingForEntrepreneurOpts.optional(),\n subCaste: z.string().trim().max(100).optional(),\n gotra: z.string().trim().max(100).optional(),\n nakshatra: nakshatraOpts.optional(),\n rashi: rashiOpts.optional(),\n birthTime: z\n .string()\n .regex(/^\\d{2}:\\d{2}$/)\n .optional(),\n birthPlace: z.string().trim().max(100).optional(),\n numberOfChildren: z.number().int().min(0).max(10).optional(),\n previousMarriages: z.number().int().min(0).max(5).optional(),\n nativePlace: z.string().trim().max(100).optional(),\n hometownState: z.string().optional(),\n hometownStateId: z.string().optional(),\n hometownDistrict: z.string().trim().max(100).optional(),\n hometownDistrictId: z.string().optional(),\n myStory: z.string().trim().max(2000).optional(),\n preferredGenders: z.array(genderOpts).optional(),\n\n // ── 04. What I'm Looking For ───────────────────────────────────────────────\n whatImLookingFor: z.string().trim().max(300).optional(),\n relationshipRole: z.array(relationshipRoleOpts).max(3).optional(),\n preferredAgeRange: z.number().min(18).max(70).optional(),\n dealbreakers: z.array(dealbreakersOpts).max(10).optional(),\n\n // ── 05. Personality & Temperament ──────────────────────────────────────────\n enneagramType: enneagramTypeOpts.optional(),\n bigFiveOpenness: z.number().int().min(1).max(10).optional(),\n oceanOpenness: z.number().int().min(1).max(100).optional(),\n oceanConscientiousness: z.number().int().min(1).max(100).optional(),\n oceanExtraversion: z.number().int().min(1).max(100).optional(),\n oceanAgreeableness: z.number().int().min(1).max(100).optional(),\n oceanNeuroticism: z.number().int().min(1).max(100).optional(),\n attachmentStyle: attachmentStyleOpts.optional(),\n humourStyle: z.array(humourStyleOpts).max(3).optional(),\n relationshipPace: relationshipPaceOpts.optional(),\n communicationStyle: z.array(communicationStyleOpts).max(3).optional(),\n rationalityLevel: z.number().int().min(1).max(10).optional(),\n scientificTemper: scientificTemperOpts.optional(),\n outlookOnLife: outlookOnLifeOpts.optional(),\n socialBattery: socialBatteryOpts.optional(),\n\n // ── 06. Self-Assessment Ratings ────────────────────────────────────────────\n ratePatience: z.number().int().min(1).max(10).optional(),\n rateBeauty: z.number().int().min(1).max(10).optional(),\n rateBuild: z.number().int().min(1).max(10).optional(),\n ratePersonality: z.number().int().min(1).max(10).optional(),\n rateTemper: z.number().int().min(1).max(10).optional(),\n rateRespect: z.number().int().min(1).max(10).optional(),\n rateHonestyWithSelf: z.number().int().min(1).max(10).optional(),\n rateHonestyWithOthers: z.number().int().min(1).max(10).optional(),\n rateSelfEsteem: z.number().int().min(1).max(10).optional(),\n rateAbuseFrequency: z.number().int().min(1).max(10).optional(),\n rateHumour: z.number().int().min(1).max(10).optional(),\n rateBoredom: z.number().int().min(1).max(10).optional(),\n\n // ── 07. Interests & Hobbies ────────────────────────────────────────────────\n hobbies: z.array(hobbiesOpts).max(10).optional(),\n musicGenres: z.array(musicGenresOpts).max(5).optional(),\n gamingInterest: gamingInterestOpts.optional(),\n readingHabit: readingHabitOpts.optional(),\n artApreciation: artApreciationOpts.optional(),\n eventPreference: z.array(eventPreferenceOpts).max(5).optional(),\n riskAppetite: riskAppetiteOpts.optional(),\n volunteerInterest: z.array(volunteerInterestOpts).max(5).optional(),\n socialCircleSize: socialCircleSizeOpts.optional(),\n\n // ── 08. Favourites ─────────────────────────────────────────────────────────\n favouriteBooks: z.array(z.string().trim().max(200)).max(5).optional(),\n favouriteShows: z.array(z.string().trim().max(200)).max(5).optional(),\n favouriteDocumentaries: z.array(z.string().trim().max(200)).max(5).optional(),\n favouriteMusicArtists: z.array(z.string().trim().max(200)).max(5).optional(),\n favouriteYoutubeChannels: z.array(z.string().trim().max(200)).max(5).optional(),\n idols: z.array(z.string().trim().max(200)).max(5).optional(),\n favouriteQuotes: z.array(z.string().trim().max(200)).max(3).optional(),\n\n // ── 09. Values & Beliefs ───────────────────────────────────────────────────\n lifeGoals: z.array(lifeGoalsOpts).max(5).optional(),\n lifeVision: z.string().trim().max(300).optional(),\n politicalOrientation: politicalOrientationOpts.optional(),\n environmentalValues: environmentalValuesOpts.optional(),\n organDonor: organDonorOpts.optional(),\n spiritualPractice: spiritualPracticeOpts.optional(),\n astrologyBelief: astrologyBeliefOpts.optional(),\n\n // ── 10. Career & Work ──────────────────────────────────────────────────────\n careerStage: careerStageOpts.optional(),\n workLocationMode: workLocationModeOpts.optional(),\n workTravelFrequency: workTravelFrequencyOpts.optional(),\n portfolioLink: z.string().trim().max(200).optional(),\n retirementPlan: retirementPlanOpts.optional(),\n\n // ── 11. Lifestyle & Daily Life ─────────────────────────────────────────────\n chronotype: chronotypeOpts.optional(),\n sleepSchedule: sleepScheduleOpts.optional(),\n fitnessLevel: fitnessLevelOpts.optional(),\n travelFrequency: travelFrequencyOpts.optional(),\n livingSituation: livingSituationOpts.optional(),\n relocationWillingness: relocationWillingnessOpts.optional(),\n petPreference: petPreferenceOpts.optional(),\n cookingLevel: cookingLevelOpts.optional(),\n tidiness: tidinessOpts.optional(),\n choresSplit: choresSplitOpts.optional(),\n domesticRole: domesticRoleOpts.optional(),\n fashionStyle: fashionStyleOpts.optional(),\n hygieneStandard: hygieneStandardOpts.optional(),\n vacationStyle: z.array(vacationStyleOpts).max(3).optional(),\n urbanRural: urbanRuralOpts.optional(),\n climatePreference: climatePreferenceOpts.optional(),\n carOwnership: carOwnershipOpts.optional(),\n drivingAbility: drivingAbilityOpts.optional(),\n timeManagement: timeManagementOpts.optional(),\n screenTime: screenTimeOpts.optional(),\n socialMediaUsage: socialMediaUsageOpts.optional(),\n bodyModifications: z.array(bodyModificationsOpts).max(5).optional(),\n earPiercings: earPiercingsOpts.optional(),\n sunSign: sunSignOpts.optional(),\n loveLanguage: loveLanguageOpts.optional(),\n\n // ── 12. Cognitive & Intellectual ───────────────────────────────────────────\n intellectualNeed: intellectualNeedOpts.optional(),\n cognitiveBand: cognitiveBandOpts.optional(),\n creativityVsAnalytical: z.number().int().min(1).max(10).optional(),\n learningPath: learningPathOpts.optional(),\n knowledgeAreas: z.array(knowledgeAreasOpts).max(5).optional(),\n learningMethods: z.array(learningMethodsOpts).max(3).optional(),\n intellectualExperience: intellectualExperienceOpts.optional(),\n intellectualGoals: z.array(intellectualGoalsOpts).max(3).optional(),\n goalSettingStyle: goalSettingStyleOpts.optional(),\n teachingMentoring: teachingMentoringOpts.optional(),\n\n // ── 13. Relationship & Intimacy (Tier 2) ───────────────────────────────────\n intimacyImportance: intimacyImportanceOpts.optional(),\n loveLanguageDetailed: loveLanguageDetailedOpts.optional(),\n affectionLevel: affectionLevelOpts.optional(),\n pdaComfort: pdaComfortOpts.optional(),\n conflictStyle: conflictStyleOpts.optional(),\n emotionalIntelligence: z.number().int().min(1).max(10).optional(),\n videoDatingComfort: videoDatingComfortOpts.optional(),\n safetyPreference: safetyPreferenceOpts.optional(),\n datePreference: z.array(datePreferenceOpts).max(3).optional(),\n sexDrive: sexDriveOpts.optional(),\n sexualActivityLevel: sexualActivityLevelOpts.optional(),\n kinkOpenness: kinkOpennessOpts.optional(),\n concurrentPartners: concurrentPartnersOpts.optional(),\n // ── 14. Family & Home (Tier 2) ─────────────────────────────────────────────\n familyType: familyTypeOpts.optional(),\n familyMembers: z.array(familyMemberSchema).optional(),\n parentingStyle: parentingStyleOpts.optional(),\n caregivingResponsibility: caregivingResponsibilityOpts.optional(),\n familyBuilding: z.array(familyBuildingOpts).max(5).optional(),\n weddingStyle: weddingStyleOpts.optional(),\n giftGivingStyle: giftGivingStyleOpts.optional(),\n contraceptionView: contraceptionViewOpts.optional(),\n parentsExpectation: parentsExpectationOpts.optional(),\n parentsContactNumber: z.string().trim().max(15).optional(),\n fatherOccupation: parentOccupationOpts.optional(),\n motherOccupation: parentOccupationOpts.optional(),\n numberOfSiblings: z.number().int().min(0).max(10).optional(),\n siblingsMarried: z.number().int().min(0).max(10).optional(),\n familyAffluence: familyAffluenceOpts.optional(),\n familyValues: familyValuesOpts.optional(),\n profileCreatedBy: profileCreatedByOpts.optional(),\n\n // ── 15. Finance & Legal (Tier 3) ───────────────────────────────────────────\n incomeRange: incomeRangeOpts.optional(),\n financialAttitude: financialAttitudeOpts.optional(),\n incomeSources: z.array(incomeSourcesOpts).max(5).optional(),\n financialIntegration: financialIntegrationOpts.optional(),\n debtStatus: debtStatusOpts.optional(),\n financialStability: financialStabilityOpts.optional(),\n creditScore: creditScoreOpts.optional(),\n prenupView: prenupViewOpts.optional(),\n lifeInsurance: lifeInsuranceOpts.optional(),\n healthInsurance: healthInsuranceOpts.optional(),\n citizenship: citizenshipOpts.optional(),\n legalIssues: legalIssuesOpts.optional(),\n drivingRecord: drivingRecordOpts.optional(),\n billSplitting: billSplittingOpts.optional(),\n grewUpIn: z.string().trim().max(100).optional(),\n countryOfResidence: countryOfResidenceOpts.optional(),\n visaType: visaTypeOpts.optional(),\n\n // ── 16. Health & Wellness (Tier 3) ─────────────────────────────────────────\n accessibilityNeeds: accessibilityNeedsOpts.optional(),\n chronicCondition: chronicConditionOpts.optional(),\n criticalIllnessHistory: criticalIllnessHistoryOpts.optional(),\n neurodiversity: neurodiversityOpts.optional(),\n personalityDisorderAwareness: personalityDisorderAwarenessOpts.optional(),\n therapyOpenness: therapyOpennessOpts.optional(),\n recoveryStatus: recoveryStatusOpts.optional(),\n phobias: z.array(phobiasOpts).max(5).optional(),\n fertilityStatus: fertilityStatusOpts.optional(),\n snoringHabit: snoringHabitOpts.optional(),\n allergies: z.array(allergiesOpts).max(10).optional(),\n bloodType: bloodTypeOpts.optional(),\n rhFactor: rhFactorOpts.optional(),\n geneticCarrier: geneticCarrierOpts.optional(),\n geneticCounseling: geneticCounselingOpts.optional(),\n vaccinations: z.array(vaccinationsOpts).max(10).optional(),\n healthSafetyPractice: healthSafetyPracticeOpts.optional(),\n bodyPositivity: bodyPositivityOpts.optional(),\n performanceDrugs: performanceDrugsOpts.optional(),\n appearanceSurgery: appearanceSurgeryOpts.optional(),\n mentalHealthOpenness: mentalHealthOpennessOpts.optional(),\n stressManagement: stressManagementOpts.optional(),\n\n // ── Meta Fields (system-level) ───────────────────────────────────────────────\n hardPreferences: z.array(z.string()).optional(),\n softFilters: z.array(z.string()).optional(),\n});\n\n// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\n// createProfileSchema — onboarding fields only (isOnboarding: true)\n// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\n\n/**\n * createProfileSchema — validation for profile creation API.\n *\n * Uses z.string() for all option fields (no enums) so that options can be\n * added/removed in field definitions without republishing the schema.\n * Valid options are defined in profile-fields/*.ts and enforced by the UI\n * via getFieldOptions(). Mongoose stores any string value.\n */\nexport const createProfileSchema = z.object({\n // Required fields\n photos: z.array(photoSchema).min(2).max(6),\n displayName: z.string().trim().max(50),\n dateOfBirth: z.coerce.date(),\n gender: z.string(),\n phoneNumber: z.string().trim().max(15).optional(),\n emergencyContact: z.object({\n phoneNumber: z.string().trim().max(15),\n relation: z.enum(['father', 'mother', 'brother', 'sister', 'uncle', 'aunt', 'grandparent', 'spouse', 'friend', 'guardian', 'other']),\n }).optional(),\n pronouns: z.string(),\n currentLocation: currentLocationSchema,\n hometown: z.string().trim().max(100),\n relationshipIntent: z.string(),\n sexualOrientation: z.string(),\n relationshipStructure: z.string(),\n bio: z.string().trim().max(500),\n preferredGenders: z.array(z.string()).min(1),\n familyReligion: z.string(),\n motherTongue: z.string(),\n relationshipStatus: z.string(),\n\n // Optional fields — all use z.string() (no enums)\n hometownState: z.string().optional(),\n hometownStateId: z.string().optional(),\n hometownDistrict: z.string().trim().max(100).optional(),\n hometownDistrictId: z.string().optional(),\n myStory: z.string().trim().max(2000).optional(),\n personalReligion: z.string().optional(),\n height: z.number().min(100).max(220).optional(),\n weight: z.number().min(30).max(200).optional(),\n bodyBuild: z.string().optional(),\n complexion: z.string().optional(),\n educationLevel: z.string().optional(),\n institutionTier: z.string().optional(),\n cognitiveBand: z.string().optional(),\n politicalOrientation: z.string().optional(),\n profession: z.string().optional(),\n careerStage: z.string().optional(),\n incomeRange: z.string().optional(),\n familyValues: z.string().optional(),\n scientificTemper: z.string().optional(),\n hobbies: z.array(z.string()).max(20).optional(),\n diet: z.string().optional(),\n smoking: z.string().optional(),\n alcohol: z.string().optional(),\n favouriteBooks: z.array(z.string().trim().max(200)).max(5).optional(),\n favouriteShows: z.array(z.string().trim().max(200)).max(5).optional(),\n idols: z.array(z.string().trim().max(200)).max(5).optional(),\n favouriteYoutubeChannels: z.array(z.string().trim().max(200)).max(5).optional(),\n mbtiType: z.string().optional(),\n attachmentStyle: z.string().optional(),\n loveLanguage: z.string().optional(),\n conflictStyle: z.string().optional(),\n oceanOpenness: z.number().int().min(1).max(100).optional(),\n oceanConscientiousness: z.number().int().min(1).max(100).optional(),\n oceanExtraversion: z.number().int().min(1).max(100).optional(),\n oceanAgreeableness: z.number().int().min(1).max(100).optional(),\n oceanNeuroticism: z.number().int().min(1).max(100).optional(),\n prompts: z\n .array(z.object({ prompt: z.string(), answer: z.string().max(250) }))\n .max(3)\n .optional(),\n preferredAgeRange: z.number().min(18).max(70).optional(),\n\n // Privacy — per-field visibility overrides\n fieldVisibility: z\n .record(z.string(), z.enum(['public', 'on_match', 'trust_gate', 'private']))\n .optional(),\n});\n\n// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\n// updateProfileSchema — all fields optional\n// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\n\nexport const updateProfileSchema = fullProfileSchema.partial();\n\n// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\n// onboardingFormSchema — derived from createProfileSchema for React Hook Form\n//\n// All fields from createProfileSchema made optional (form starts empty).\n// Omits photos (managed outside RHF) and currentLocation (built at submit from\n// existing user data). Adds UI-only fields for the hometown cascade.\n// dateOfBirth stored as ISO string in form (converted to Date at submit).\n//\n// Final validation at submit uses createProfileSchema.parse() directly.\n// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\n\n/**\n * onboardingFormSchema — form-state schema for React Hook Form.\n *\n * All fields use z.string() (no enums) because:\n * 1. Form starts with \"\" defaults (enums don't accept \"\")\n * 2. Options may change frequently without schema republish\n * 3. Strict enum validation happens ONLY at final submit via createProfileSchema.parse()\n *\n * This schema mirrors createProfileSchema's field names but with relaxed types.\n * Photos and currentLocation are managed outside RHF (separate state).\n */\nexport const onboardingFormSchema = z.object({\n // Required — has min validation\n displayName: z.string().trim().max(50),\n // String fields (enums validated at submit, not in form)\n dateOfBirth: z.string(),\n gender: z.string(),\n phoneNumber: z.string().default(''),\n emergencyContactPhone: z.string().default(''),\n emergencyContactRelation: z.string().default(''),\n pronouns: z.string(),\n relationshipStatus: z.string(),\n relationshipIntent: z.string(),\n sexualOrientation: z.string(),\n preferredGenders: z.array(z.string()),\n relationshipStructure: z.string(),\n educationLevel: z.string(),\n institutionTier: z.string(),\n cognitiveBand: z.string(),\n politicalOrientation: z.string(),\n profession: z.string(),\n careerStage: z.string(),\n incomeRange: z.string(),\n bodyBuild: z.string(),\n complexion: z.string(),\n familyReligion: z.string(),\n personalReligion: z.string(),\n motherTongue: z.string(),\n familyValues: z.string(),\n diet: z.string(),\n smoking: z.string(),\n alcohol: z.string(),\n mbtiType: z.string(),\n attachmentStyle: z.string(),\n loveLanguage: z.string(),\n conflictStyle: z.string(),\n // Type overrides (form stores as string, converted at submit)\n height: z.string(),\n weight: z.string(),\n currentLocation: z.string(),\n hometown: z.string(),\n bio: z.string(),\n myStory: z.string(),\n // Arrays\n hobbies: z.array(z.string()),\n favouriteBooks: z.array(z.string()),\n favouriteShows: z.array(z.string()),\n idols: z.array(z.string()),\n // Numbers (sliders)\n oceanOpenness: z.number().optional(),\n oceanConscientiousness: z.number().optional(),\n oceanExtraversion: z.number().optional(),\n oceanAgreeableness: z.number().optional(),\n oceanNeuroticism: z.number().optional(),\n // UI-only fields (not in createProfileSchema)\n sameAsFamily: z.boolean(),\n hometownState: z.string(),\n hometownStateId: z.string(),\n hometownDistrict: z.string(),\n hometownDistrictId: z.string(),\n});\n\n// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\n// Inferred types\n// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\n\nexport type FullProfileData = z.infer<typeof fullProfileSchema>;\n/**\n * Extract the numeric rank (1–7) from a cognitiveBand value like \"5_evidence_reasoning\".\n * Returns null for \"prefer_not_to_say\" or invalid values.\n * Useful for compatibility scoring: abs(rankA - rankB) gives the cognitive distance.\n */\nexport function getCognitiveBandRank(value: string | undefined | null): number | null {\n if (!value || value === 'prefer_not_to_say') return null;\n const rank = parseInt(value.charAt(0));\n return Number.isNaN(rank) ? null : rank;\n}\n\nexport type OnboardingFormData = z.infer<typeof onboardingFormSchema>;\nexport type CreateProfileInput = z.infer<typeof createProfileSchema>;\nexport type UpdateProfileInput = z.infer<typeof updateProfileSchema>;\n"]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "dating-schema",
|
|
3
|
-
"version": "0.37.
|
|
3
|
+
"version": "0.37.5",
|
|
4
4
|
"description": "Shared Zod schemas for the Dating feature — single source of truth for API contracts, validation, and TypeScript types (frontend + backend).",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|