udp-schema 2.26.0 → 2.30.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (55) hide show
  1. package/dist/helpers.d.ts.map +1 -1
  2. package/dist/helpers.js +11 -1
  3. package/dist/helpers.js.map +1 -1
  4. package/dist/index.d.ts +2 -1
  5. package/dist/index.d.ts.map +1 -1
  6. package/dist/index.js +9 -1
  7. package/dist/index.js.map +1 -1
  8. package/dist/onboarding-config.d.ts.map +1 -1
  9. package/dist/onboarding-config.js +106 -0
  10. package/dist/onboarding-config.js.map +1 -1
  11. package/dist/onboarding-form.d.ts +378 -0
  12. package/dist/onboarding-form.d.ts.map +1 -1
  13. package/dist/profile-fields/07-employment.d.ts.map +1 -1
  14. package/dist/profile-fields/07-employment.js +175 -35
  15. package/dist/profile-fields/07-employment.js.map +1 -1
  16. package/dist/profile-fields/12-household.d.ts +15 -2
  17. package/dist/profile-fields/12-household.d.ts.map +1 -1
  18. package/dist/profile-fields/12-household.js +166 -17
  19. package/dist/profile-fields/12-household.js.map +1 -1
  20. package/dist/profile-fields/types.d.ts +12 -3
  21. package/dist/profile-fields/types.d.ts.map +1 -1
  22. package/dist/profile-fields/types.js.map +1 -1
  23. package/dist/progress-fields.d.ts.map +1 -1
  24. package/dist/progress-fields.js +17 -0
  25. package/dist/progress-fields.js.map +1 -1
  26. package/dist/shared-enums.d.ts +78 -0
  27. package/dist/shared-enums.d.ts.map +1 -0
  28. package/dist/shared-enums.js +184 -0
  29. package/dist/shared-enums.js.map +1 -0
  30. package/dist/step-01.schema.d.ts.map +1 -1
  31. package/dist/step-01.schema.js +8 -79
  32. package/dist/step-01.schema.js.map +1 -1
  33. package/dist/step-06.schema.d.ts.map +1 -1
  34. package/dist/step-06.schema.js +4 -13
  35. package/dist/step-06.schema.js.map +1 -1
  36. package/dist/step-07.schema.d.ts.map +1 -1
  37. package/dist/step-07.schema.js +8 -114
  38. package/dist/step-07.schema.js.map +1 -1
  39. package/dist/step-12.schema.d.ts +434 -3
  40. package/dist/step-12.schema.d.ts.map +1 -1
  41. package/dist/step-12.schema.js +72 -3
  42. package/dist/step-12.schema.js.map +1 -1
  43. package/package.json +1 -1
  44. package/dist/field-meta.d.ts +0 -20
  45. package/dist/field-meta.d.ts.map +0 -1
  46. package/dist/field-meta.js +0 -19
  47. package/dist/field-meta.js.map +0 -1
  48. package/dist/step-13.schema.d.ts +0 -186
  49. package/dist/step-13.schema.d.ts.map +0 -1
  50. package/dist/step-13.schema.js +0 -215
  51. package/dist/step-13.schema.js.map +0 -1
  52. package/dist/step-14.schema.d.ts +0 -88
  53. package/dist/step-14.schema.d.ts.map +0 -1
  54. package/dist/step-14.schema.js +0 -135
  55. package/dist/step-14.schema.js.map +0 -1
@@ -1,19 +0,0 @@
1
- /**
2
- * UDP Field Metadata — backward-compatible re-exports from profile-fields.
3
- *
4
- * This file re-exports option arrays under SCREAMING_CASE names for
5
- * backward compatibility with existing frontend imports.
6
- * New code should import directly from profile-fields.
7
- *
8
- * @module udp-schema/field-meta
9
- */
10
- export { genderOptions as GENDER_OPTIONS, religionOptions as RELIGION_OPTIONS, languageOptions as LANGUAGE_OPTIONS, reservationOptions as RESERVATION_STATUS_OPTIONS, minorityOptions as MINORITY_STATUS_OPTIONS, } from './profile-fields/01-profile.js';
11
- export { politicalSpectrumOptions as POLITICAL_SPECTRUM_OPTIONS, partyOptions as PARTY_OPTIONS, civicEngagementOptions as CIVIC_ENGAGEMENT_OPTIONS, } from './profile-fields/02-political.js';
12
- export { votingIssueOptions as VOTING_ISSUES_OPTIONS } from './profile-fields/03-electoral.js';
13
- export { leadershipSkillsetOptions as LEADERSHIP_SKILLSET_OPTIONS } from './profile-fields/04-leadership.js';
14
- export { qualificationOptions as QUALIFICATION_OPTIONS } from './profile-fields/06-education.js';
15
- export { neurodiversityConditionOptions as NEURODIVERSITY_CONDITIONS_OPTIONS, sensoryPreferenceOptions as SENSORY_PREFERENCES_OPTIONS, supportNeedOptions as SUPPORT_NEEDS_OPTIONS, } from './profile-fields/08-neurodiversity.js';
16
- export { disabilityOptions as DISABILITY_STATUS_OPTIONS, substanceUseOptions as SUBSTANCE_USE_OPTIONS, } from './profile-fields/09-health.js';
17
- export { lgbtqStatementOptions as LGBTQ_STATEMENTS_OPTIONS, transgenderStatementOptions as TRANSGENDER_STATEMENTS_OPTIONS, casteDiscriminationPlaceOptions as CASTE_DISCRIMINATION_PLACES_OPTIONS, } from './profile-fields/10-worldview.js';
18
- export { familyMemberOptions as FAMILY_MEMBERS_OPTIONS, digitalAccessOptions as DIGITAL_ACCESS_OPTIONS, } from './profile-fields/12-household.js';
19
- //# sourceMappingURL=field-meta.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"field-meta.js","sourceRoot":"","sources":["../src/field-meta.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAIH,OAAO,EACL,aAAa,IAAI,cAAc,EAC/B,eAAe,IAAI,gBAAgB,EACnC,eAAe,IAAI,gBAAgB,EACnC,kBAAkB,IAAI,0BAA0B,EAChD,eAAe,IAAI,uBAAuB,GAC3C,MAAM,gCAAgC,CAAC;AAExC,OAAO,EACL,wBAAwB,IAAI,0BAA0B,EACtD,YAAY,IAAI,aAAa,EAC7B,sBAAsB,IAAI,wBAAwB,GACnD,MAAM,kCAAkC,CAAC;AAE1C,OAAO,EAAE,kBAAkB,IAAI,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AAE/F,OAAO,EAAE,yBAAyB,IAAI,2BAA2B,EAAE,MAAM,mCAAmC,CAAC;AAE7G,OAAO,EAAE,oBAAoB,IAAI,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AAEjG,OAAO,EACL,8BAA8B,IAAI,iCAAiC,EACnE,wBAAwB,IAAI,2BAA2B,EACvD,kBAAkB,IAAI,qBAAqB,GAC5C,MAAM,uCAAuC,CAAC;AAE/C,OAAO,EACL,iBAAiB,IAAI,yBAAyB,EAC9C,mBAAmB,IAAI,qBAAqB,GAC7C,MAAM,+BAA+B,CAAC;AAEvC,OAAO,EACL,qBAAqB,IAAI,wBAAwB,EACjD,2BAA2B,IAAI,8BAA8B,EAC7D,+BAA+B,IAAI,mCAAmC,GACvE,MAAM,kCAAkC,CAAC;AAE1C,OAAO,EACL,mBAAmB,IAAI,sBAAsB,EAC7C,oBAAoB,IAAI,sBAAsB,GAC/C,MAAM,kCAAkC,CAAC","sourcesContent":["/**\n * UDP Field Metadata — backward-compatible re-exports from profile-fields.\n *\n * This file re-exports option arrays under SCREAMING_CASE names for\n * backward compatibility with existing frontend imports.\n * New code should import directly from profile-fields.\n *\n * @module udp-schema/field-meta\n */\n\nexport type { FieldOption as UdpFieldOption } from './profile-fields/types.js';\n\nexport {\n genderOptions as GENDER_OPTIONS,\n religionOptions as RELIGION_OPTIONS,\n languageOptions as LANGUAGE_OPTIONS,\n reservationOptions as RESERVATION_STATUS_OPTIONS,\n minorityOptions as MINORITY_STATUS_OPTIONS,\n} from './profile-fields/01-profile.js';\n\nexport {\n politicalSpectrumOptions as POLITICAL_SPECTRUM_OPTIONS,\n partyOptions as PARTY_OPTIONS,\n civicEngagementOptions as CIVIC_ENGAGEMENT_OPTIONS,\n} from './profile-fields/02-political.js';\n\nexport { votingIssueOptions as VOTING_ISSUES_OPTIONS } from './profile-fields/03-electoral.js';\n\nexport { leadershipSkillsetOptions as LEADERSHIP_SKILLSET_OPTIONS } from './profile-fields/04-leadership.js';\n\nexport { qualificationOptions as QUALIFICATION_OPTIONS } from './profile-fields/06-education.js';\n\nexport {\n neurodiversityConditionOptions as NEURODIVERSITY_CONDITIONS_OPTIONS,\n sensoryPreferenceOptions as SENSORY_PREFERENCES_OPTIONS,\n supportNeedOptions as SUPPORT_NEEDS_OPTIONS,\n} from './profile-fields/08-neurodiversity.js';\n\nexport {\n disabilityOptions as DISABILITY_STATUS_OPTIONS,\n substanceUseOptions as SUBSTANCE_USE_OPTIONS,\n} from './profile-fields/09-health.js';\n\nexport {\n lgbtqStatementOptions as LGBTQ_STATEMENTS_OPTIONS,\n transgenderStatementOptions as TRANSGENDER_STATEMENTS_OPTIONS,\n casteDiscriminationPlaceOptions as CASTE_DISCRIMINATION_PLACES_OPTIONS,\n} from './profile-fields/10-worldview.js';\n\nexport {\n familyMemberOptions as FAMILY_MEMBERS_OPTIONS,\n digitalAccessOptions as DIGITAL_ACCESS_OPTIONS,\n} from './profile-fields/12-household.js';\n"]}
@@ -1,186 +0,0 @@
1
- import { z } from 'zod';
2
- export declare const DISABILITY_STATUS: readonly ["NONE", "PHYSICAL", "VISUAL", "HEARING", "SPEECH", "INTELLECTUAL", "PSYCHOSOCIAL", "MULTIPLE", "OTHER"];
3
- export declare const OVERALL_HEALTH_STATUS: readonly ["EXCELLENT", "GOOD", "FAIR", "POOR"];
4
- export declare const KNOWN_HEALTH_CONDITIONS: readonly ["DIABETES", "HYPERTENSION", "HEART_DISEASE", "ASTHMA_COPD", "THYROID_DISORDER", "KIDNEY_DISEASE", "LIVER_DISEASE", "ARTHRITIS", "CHRONIC_PAIN", "EPILEPSY", "CANCER", "MENTAL_HEALTH_CONDITION", "OTHER", "NONE"];
5
- export declare const BLOOD_GROUP: readonly ["A_POSITIVE", "A_NEGATIVE", "B_POSITIVE", "B_NEGATIVE", "AB_POSITIVE", "AB_NEGATIVE", "O_POSITIVE", "O_NEGATIVE", "DONT_KNOW"];
6
- /**
7
- * Dietary preference — captures food identity relevant to cultural,
8
- * religious, and ethical contexts in India.
9
- */
10
- export declare const FOOD_HABIT_TYPE: readonly ["VEGETARIAN", "EGGETARIAN", "NON_VEGETARIAN", "VEGAN", "JAIN", "OTHER"];
11
- /**
12
- * Self-reported physical activity level.
13
- * Single choice — overall lifestyle signal.
14
- */
15
- export declare const PHYSICAL_ACTIVITY_LEVEL: readonly ["VERY_ACTIVE", "ACTIVE", "LIGHTLY_ACTIVE", "SEDENTARY"];
16
- export declare const PHYSICAL_ACTIVITY_TYPES: readonly ["WALKING_RUNNING", "YOGA_MEDITATION", "GYM_WEIGHTLIFTING", "CYCLING", "SWIMMING", "SPORTS_TEAM", "MARTIAL_ARTS", "MANUAL_LABOUR", "DANCE", "OTHER"];
17
- export declare const SLEEP_HOURS: readonly ["LESS_THAN_5", "FIVE_TO_SIX", "SIX_TO_SEVEN", "SEVEN_TO_EIGHT", "MORE_THAN_EIGHT"];
18
- export declare const STRESS_LEVEL: readonly ["VERY_LOW", "LOW", "MODERATE", "HIGH", "VERY_HIGH"];
19
- export declare const TOBACCO_USE: readonly ["NEVER", "TRIED_QUIT", "OCCASIONALLY", "REGULARLY", "DAILY"];
20
- export declare const TOBACCO_TYPES: readonly ["CIGARETTES", "BIDI", "CHEWING_TOBACCO", "GUTKHA_PAN_MASALA", "HOOKAH", "VAPING_E_CIGARETTE", "OTHER"];
21
- export declare const ALCOHOL_USE: readonly ["NEVER", "RARELY", "OCCASIONALLY", "FREQUENTLY", "VERY_FREQUENTLY", "QUIT"];
22
- export declare const HEALTH_PROGRAMS_INTEREST: readonly ["YOGA_MEDITATION", "FITNESS_GYM", "NUTRITION_COUNSELLING", "STRESS_MANAGEMENT", "ADDICTION_RECOVERY", "MENTAL_HEALTH_SUPPORT", "HEALTH_CAMPS_CHECKUPS", "FIRST_AID_TRAINING", "NONE"];
23
- /**
24
- * Views on animal welfare — multi-select opinion statements.
25
- * Included here (from spec "11.x") as it is a lifestyle/values question.
26
- */
27
- export declare const ANIMAL_WELFARE_STATEMENTS: readonly ["ANIMAL_NO_CRUELTY", "ANIMAL_BASIC_RIGHTS", "ANIMAL_OK_FOR_FOOD_IF_HUMANE", "ANIMAL_RELIGIOUS_SACRIFICE_OK", "ANIMAL_FACTORY_FARMING_CONCERN", "ANIMAL_NEUTRAL", "ANIMAL_DONT_KNOW", "ANIMAL_PREFER_NOT_SAY"];
28
- export declare const MOBILITY_LIMITATIONS: readonly ["DIFFICULTY_WALKING", "DIFFICULTY_CLIMBING_STAIRS", "CANT_TRAVEL_FAR", "FAMILY_RESTRICTS_TRAVEL", "NO_LIMITATIONS"];
29
- export declare const step13HealthSchema: z.ZodObject<{
30
- disabilityStatus: z.ZodOptional<z.ZodEnum<{
31
- OTHER: "OTHER";
32
- NONE: "NONE";
33
- VISUAL: "VISUAL";
34
- PHYSICAL: "PHYSICAL";
35
- HEARING: "HEARING";
36
- SPEECH: "SPEECH";
37
- INTELLECTUAL: "INTELLECTUAL";
38
- PSYCHOSOCIAL: "PSYCHOSOCIAL";
39
- MULTIPLE: "MULTIPLE";
40
- }>>;
41
- disabilityDetails: z.ZodOptional<z.ZodString>;
42
- overallHealthStatus: z.ZodOptional<z.ZodEnum<{
43
- EXCELLENT: "EXCELLENT";
44
- GOOD: "GOOD";
45
- FAIR: "FAIR";
46
- POOR: "POOR";
47
- }>>;
48
- knownHealthConditions: z.ZodOptional<z.ZodArray<z.ZodEnum<{
49
- OTHER: "OTHER";
50
- NONE: "NONE";
51
- DIABETES: "DIABETES";
52
- HYPERTENSION: "HYPERTENSION";
53
- HEART_DISEASE: "HEART_DISEASE";
54
- ASTHMA_COPD: "ASTHMA_COPD";
55
- THYROID_DISORDER: "THYROID_DISORDER";
56
- KIDNEY_DISEASE: "KIDNEY_DISEASE";
57
- LIVER_DISEASE: "LIVER_DISEASE";
58
- ARTHRITIS: "ARTHRITIS";
59
- CHRONIC_PAIN: "CHRONIC_PAIN";
60
- EPILEPSY: "EPILEPSY";
61
- CANCER: "CANCER";
62
- MENTAL_HEALTH_CONDITION: "MENTAL_HEALTH_CONDITION";
63
- }>>>;
64
- knownHealthConditionsDetails: z.ZodOptional<z.ZodString>;
65
- currentMedications: z.ZodOptional<z.ZodString>;
66
- bloodGroup: z.ZodOptional<z.ZodEnum<{
67
- DONT_KNOW: "DONT_KNOW";
68
- A_POSITIVE: "A_POSITIVE";
69
- A_NEGATIVE: "A_NEGATIVE";
70
- B_POSITIVE: "B_POSITIVE";
71
- B_NEGATIVE: "B_NEGATIVE";
72
- AB_POSITIVE: "AB_POSITIVE";
73
- AB_NEGATIVE: "AB_NEGATIVE";
74
- O_POSITIVE: "O_POSITIVE";
75
- O_NEGATIVE: "O_NEGATIVE";
76
- }>>;
77
- lastHealthCheckupYear: z.ZodOptional<z.ZodString>;
78
- hasHealthInsurance: z.ZodOptional<z.ZodEnum<{
79
- NO: "NO";
80
- NOT_SURE: "NOT_SURE";
81
- YES: "YES";
82
- }>>;
83
- healthInsuranceDetails: z.ZodOptional<z.ZodString>;
84
- hasAyushmanBharatCard: z.ZodOptional<z.ZodEnum<{
85
- NO: "NO";
86
- NOT_SURE: "NOT_SURE";
87
- YES: "YES";
88
- }>>;
89
- foodHabitType: z.ZodOptional<z.ZodEnum<{
90
- JAIN: "JAIN";
91
- OTHER: "OTHER";
92
- VEGETARIAN: "VEGETARIAN";
93
- EGGETARIAN: "EGGETARIAN";
94
- NON_VEGETARIAN: "NON_VEGETARIAN";
95
- VEGAN: "VEGAN";
96
- }>>;
97
- foodHabitNotes: z.ZodOptional<z.ZodString>;
98
- physicalActivityLevel: z.ZodOptional<z.ZodEnum<{
99
- VERY_ACTIVE: "VERY_ACTIVE";
100
- ACTIVE: "ACTIVE";
101
- LIGHTLY_ACTIVE: "LIGHTLY_ACTIVE";
102
- SEDENTARY: "SEDENTARY";
103
- }>>;
104
- physicalActivityTypes: z.ZodOptional<z.ZodArray<z.ZodEnum<{
105
- OTHER: "OTHER";
106
- WALKING_RUNNING: "WALKING_RUNNING";
107
- YOGA_MEDITATION: "YOGA_MEDITATION";
108
- GYM_WEIGHTLIFTING: "GYM_WEIGHTLIFTING";
109
- CYCLING: "CYCLING";
110
- SWIMMING: "SWIMMING";
111
- SPORTS_TEAM: "SPORTS_TEAM";
112
- MARTIAL_ARTS: "MARTIAL_ARTS";
113
- MANUAL_LABOUR: "MANUAL_LABOUR";
114
- DANCE: "DANCE";
115
- }>>>;
116
- sleepHoursPerDay: z.ZodOptional<z.ZodEnum<{
117
- LESS_THAN_5: "LESS_THAN_5";
118
- FIVE_TO_SIX: "FIVE_TO_SIX";
119
- SIX_TO_SEVEN: "SIX_TO_SEVEN";
120
- SEVEN_TO_EIGHT: "SEVEN_TO_EIGHT";
121
- MORE_THAN_EIGHT: "MORE_THAN_EIGHT";
122
- }>>;
123
- perceivedStressLevel: z.ZodOptional<z.ZodEnum<{
124
- VERY_HIGH: "VERY_HIGH";
125
- MODERATE: "MODERATE";
126
- VERY_LOW: "VERY_LOW";
127
- LOW: "LOW";
128
- HIGH: "HIGH";
129
- }>>;
130
- stressMainCauses: z.ZodOptional<z.ZodString>;
131
- tobaccoUse: z.ZodOptional<z.ZodEnum<{
132
- NEVER: "NEVER";
133
- TRIED_QUIT: "TRIED_QUIT";
134
- OCCASIONALLY: "OCCASIONALLY";
135
- REGULARLY: "REGULARLY";
136
- DAILY: "DAILY";
137
- }>>;
138
- tobaccoTypes: z.ZodOptional<z.ZodArray<z.ZodEnum<{
139
- OTHER: "OTHER";
140
- CIGARETTES: "CIGARETTES";
141
- BIDI: "BIDI";
142
- CHEWING_TOBACCO: "CHEWING_TOBACCO";
143
- GUTKHA_PAN_MASALA: "GUTKHA_PAN_MASALA";
144
- HOOKAH: "HOOKAH";
145
- VAPING_E_CIGARETTE: "VAPING_E_CIGARETTE";
146
- }>>>;
147
- alcoholUse: z.ZodOptional<z.ZodEnum<{
148
- NEVER: "NEVER";
149
- RARELY: "RARELY";
150
- OCCASIONALLY: "OCCASIONALLY";
151
- FREQUENTLY: "FREQUENTLY";
152
- VERY_FREQUENTLY: "VERY_FREQUENTLY";
153
- QUIT: "QUIT";
154
- }>>;
155
- interestedInHealthPrograms: z.ZodOptional<z.ZodArray<z.ZodEnum<{
156
- NONE: "NONE";
157
- YOGA_MEDITATION: "YOGA_MEDITATION";
158
- FITNESS_GYM: "FITNESS_GYM";
159
- NUTRITION_COUNSELLING: "NUTRITION_COUNSELLING";
160
- STRESS_MANAGEMENT: "STRESS_MANAGEMENT";
161
- ADDICTION_RECOVERY: "ADDICTION_RECOVERY";
162
- MENTAL_HEALTH_SUPPORT: "MENTAL_HEALTH_SUPPORT";
163
- HEALTH_CAMPS_CHECKUPS: "HEALTH_CAMPS_CHECKUPS";
164
- FIRST_AID_TRAINING: "FIRST_AID_TRAINING";
165
- }>>>;
166
- viewOnAnimalWelfareStatements: z.ZodOptional<z.ZodArray<z.ZodEnum<{
167
- ANIMAL_NO_CRUELTY: "ANIMAL_NO_CRUELTY";
168
- ANIMAL_BASIC_RIGHTS: "ANIMAL_BASIC_RIGHTS";
169
- ANIMAL_OK_FOR_FOOD_IF_HUMANE: "ANIMAL_OK_FOR_FOOD_IF_HUMANE";
170
- ANIMAL_RELIGIOUS_SACRIFICE_OK: "ANIMAL_RELIGIOUS_SACRIFICE_OK";
171
- ANIMAL_FACTORY_FARMING_CONCERN: "ANIMAL_FACTORY_FARMING_CONCERN";
172
- ANIMAL_NEUTRAL: "ANIMAL_NEUTRAL";
173
- ANIMAL_DONT_KNOW: "ANIMAL_DONT_KNOW";
174
- ANIMAL_PREFER_NOT_SAY: "ANIMAL_PREFER_NOT_SAY";
175
- }>>>;
176
- viewOnAnimalCrueltyOpinion: z.ZodOptional<z.ZodString>;
177
- mobilityOrTravelLimitations: z.ZodOptional<z.ZodArray<z.ZodEnum<{
178
- DIFFICULTY_WALKING: "DIFFICULTY_WALKING";
179
- DIFFICULTY_CLIMBING_STAIRS: "DIFFICULTY_CLIMBING_STAIRS";
180
- CANT_TRAVEL_FAR: "CANT_TRAVEL_FAR";
181
- FAMILY_RESTRICTS_TRAVEL: "FAMILY_RESTRICTS_TRAVEL";
182
- NO_LIMITATIONS: "NO_LIMITATIONS";
183
- }>>>;
184
- }, z.core.$strip>;
185
- export type Step13HealthInput = z.infer<typeof step13HealthSchema>;
186
- //# sourceMappingURL=step-13.schema.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"step-13.schema.d.ts","sourceRoot":"","sources":["../src/step-13.schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,iBAAiB,mHAUpB,CAAC;AAEX,eAAO,MAAM,qBAAqB,gDAKxB,CAAC;AAEX,eAAO,MAAM,uBAAuB,6NAe1B,CAAC;AAEX,eAAO,MAAM,WAAW,0IAUd,CAAC;AAEX;;;GAGG;AACH,eAAO,MAAM,eAAe,mFAOlB,CAAC;AAEX;;;GAGG;AACH,eAAO,MAAM,uBAAuB,mEAK1B,CAAC;AAEX,eAAO,MAAM,uBAAuB,+JAW1B,CAAC;AAEX,eAAO,MAAM,WAAW,8FAMd,CAAC;AAEX,eAAO,MAAM,YAAY,+DAAgE,CAAC;AAE1F,eAAO,MAAM,WAAW,wEAMd,CAAC;AAEX,eAAO,MAAM,aAAa,kHAQhB,CAAC;AAEX,eAAO,MAAM,WAAW,uFAOd,CAAC;AAEX,eAAO,MAAM,wBAAwB,iMAU3B,CAAC;AAEX;;;GAGG;AACH,eAAO,MAAM,yBAAyB,yNAS5B,CAAC;AAEX,eAAO,MAAM,oBAAoB,+HAMvB,CAAC;AAIX,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAsG7B,CAAC;AAEH,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC"}
@@ -1,215 +0,0 @@
1
- import { z } from 'zod';
2
- // ─── Enums ────────────────────────────────────────────────────────────────────
3
- export const DISABILITY_STATUS = [
4
- 'NONE',
5
- 'PHYSICAL', // Mobility, limb, paralysis
6
- 'VISUAL', // Blindness, low vision
7
- 'HEARING', // Deafness, hard of hearing
8
- 'SPEECH', // Speech / communication impairment
9
- 'INTELLECTUAL', // Cognitive / developmental
10
- 'PSYCHOSOCIAL', // Mental health condition recognised as disability
11
- 'MULTIPLE', // More than one type
12
- 'OTHER',
13
- ];
14
- export const OVERALL_HEALTH_STATUS = [
15
- 'EXCELLENT', // No health issues; very fit
16
- 'GOOD', // Generally healthy with minor issues
17
- 'FAIR', // Some chronic conditions, managed
18
- 'POOR', // Serious ongoing health problems
19
- ];
20
- export const KNOWN_HEALTH_CONDITIONS = [
21
- 'DIABETES',
22
- 'HYPERTENSION',
23
- 'HEART_DISEASE',
24
- 'ASTHMA_COPD',
25
- 'THYROID_DISORDER',
26
- 'KIDNEY_DISEASE',
27
- 'LIVER_DISEASE',
28
- 'ARTHRITIS',
29
- 'CHRONIC_PAIN',
30
- 'EPILEPSY',
31
- 'CANCER',
32
- 'MENTAL_HEALTH_CONDITION',
33
- 'OTHER',
34
- 'NONE',
35
- ];
36
- export const BLOOD_GROUP = [
37
- 'A_POSITIVE',
38
- 'A_NEGATIVE',
39
- 'B_POSITIVE',
40
- 'B_NEGATIVE',
41
- 'AB_POSITIVE',
42
- 'AB_NEGATIVE',
43
- 'O_POSITIVE',
44
- 'O_NEGATIVE',
45
- 'DONT_KNOW',
46
- ];
47
- /**
48
- * Dietary preference — captures food identity relevant to cultural,
49
- * religious, and ethical contexts in India.
50
- */
51
- export const FOOD_HABIT_TYPE = [
52
- 'VEGETARIAN', // No egg, no meat, no fish
53
- 'EGGETARIAN', // Egg but no meat or fish
54
- 'NON_VEGETARIAN', // Includes meat, fish, or egg
55
- 'VEGAN', // No animal products including dairy
56
- 'JAIN', // Jain dietary restrictions (no root vegetables)
57
- 'OTHER',
58
- ];
59
- /**
60
- * Self-reported physical activity level.
61
- * Single choice — overall lifestyle signal.
62
- */
63
- export const PHYSICAL_ACTIVITY_LEVEL = [
64
- 'VERY_ACTIVE', // Daily intense exercise
65
- 'ACTIVE', // Regular moderate exercise (3–4 days/week)
66
- 'LIGHTLY_ACTIVE', // Occasional walks or light activity
67
- 'SEDENTARY', // Mostly desk/sitting; very little movement
68
- ];
69
- export const PHYSICAL_ACTIVITY_TYPES = [
70
- 'WALKING_RUNNING',
71
- 'YOGA_MEDITATION',
72
- 'GYM_WEIGHTLIFTING',
73
- 'CYCLING',
74
- 'SWIMMING',
75
- 'SPORTS_TEAM', // Cricket, football, kabaddi, etc.
76
- 'MARTIAL_ARTS', // MMA, wrestling, boxing
77
- 'MANUAL_LABOUR', // Farming, construction (counts as activity)
78
- 'DANCE',
79
- 'OTHER',
80
- ];
81
- export const SLEEP_HOURS = [
82
- 'LESS_THAN_5', // Chronically sleep-deprived
83
- 'FIVE_TO_SIX',
84
- 'SIX_TO_SEVEN',
85
- 'SEVEN_TO_EIGHT', // Ideal range
86
- 'MORE_THAN_EIGHT',
87
- ];
88
- export const STRESS_LEVEL = ['VERY_LOW', 'LOW', 'MODERATE', 'HIGH', 'VERY_HIGH'];
89
- export const TOBACCO_USE = [
90
- 'NEVER',
91
- 'TRIED_QUIT', // Tried in past, has now quit
92
- 'OCCASIONALLY', // A few times per month
93
- 'REGULARLY', // Multiple times per week
94
- 'DAILY',
95
- ];
96
- export const TOBACCO_TYPES = [
97
- 'CIGARETTES',
98
- 'BIDI',
99
- 'CHEWING_TOBACCO',
100
- 'GUTKHA_PAN_MASALA',
101
- 'HOOKAH',
102
- 'VAPING_E_CIGARETTE',
103
- 'OTHER',
104
- ];
105
- export const ALCOHOL_USE = [
106
- 'NEVER',
107
- 'RARELY', // A few times a year
108
- 'OCCASIONALLY', // A few times a month
109
- 'FREQUENTLY', // Weekly
110
- 'VERY_FREQUENTLY', // Daily or near-daily
111
- 'QUIT',
112
- ];
113
- export const HEALTH_PROGRAMS_INTEREST = [
114
- 'YOGA_MEDITATION',
115
- 'FITNESS_GYM',
116
- 'NUTRITION_COUNSELLING',
117
- 'STRESS_MANAGEMENT',
118
- 'ADDICTION_RECOVERY',
119
- 'MENTAL_HEALTH_SUPPORT',
120
- 'HEALTH_CAMPS_CHECKUPS',
121
- 'FIRST_AID_TRAINING',
122
- 'NONE',
123
- ];
124
- /**
125
- * Views on animal welfare — multi-select opinion statements.
126
- * Included here (from spec "11.x") as it is a lifestyle/values question.
127
- */
128
- export const ANIMAL_WELFARE_STATEMENTS = [
129
- 'ANIMAL_NO_CRUELTY', // Animals should not be tortured or killed for fun
130
- 'ANIMAL_BASIC_RIGHTS', // Animals should have basic legal protection
131
- 'ANIMAL_OK_FOR_FOOD_IF_HUMANE', // Using animals for food is OK if done humanely
132
- 'ANIMAL_RELIGIOUS_SACRIFICE_OK', // Religious animal sacrifice is acceptable
133
- 'ANIMAL_FACTORY_FARMING_CONCERN', // Concerned about factory farming cruelty
134
- 'ANIMAL_NEUTRAL', // Do not feel strongly about animal cruelty
135
- 'ANIMAL_DONT_KNOW', // Do not know enough
136
- 'ANIMAL_PREFER_NOT_SAY',
137
- ];
138
- export const MOBILITY_LIMITATIONS = [
139
- 'DIFFICULTY_WALKING',
140
- 'DIFFICULTY_CLIMBING_STAIRS',
141
- 'CANT_TRAVEL_FAR', // Cannot travel more than a short distance
142
- 'FAMILY_RESTRICTS_TRAVEL', // Family/cultural restrictions on going out
143
- 'NO_LIMITATIONS',
144
- ];
145
- // ─── Schema ───────────────────────────────────────────────────────────────────
146
- export const step13HealthSchema = z.object({
147
- // ── 13.1 Disability ───────────────────────────────────────────────────────
148
- disabilityStatus: z.enum(DISABILITY_STATUS).optional(),
149
- /** Describe disability type, severity, or support needs — shown if not NONE. */
150
- disabilityDetails: z.string().trim().optional(),
151
- // ── 13.2 General Health ───────────────────────────────────────────────────
152
- overallHealthStatus: z.enum(OVERALL_HEALTH_STATUS).optional(),
153
- knownHealthConditions: z.array(z.enum(KNOWN_HEALTH_CONDITIONS)).optional(),
154
- /** Describe conditions in more detail — shown when conditions are selected. */
155
- knownHealthConditionsDetails: z.string().trim().optional(),
156
- /** Regular medications taken — optional, for medical coordination. */
157
- currentMedications: z.string().trim().optional(),
158
- /**
159
- * Blood group — useful for emergency response at rallies / community events.
160
- * Added beyond spec.
161
- */
162
- bloodGroup: z.enum(BLOOD_GROUP).optional(),
163
- /**
164
- * Year of last health checkup — proxy for health-consciousness.
165
- * Added beyond spec.
166
- */
167
- lastHealthCheckupYear: z.string().trim().optional(),
168
- // ── 13.3 Health Insurance ─────────────────────────────────────────────────
169
- hasHealthInsurance: z.enum(['YES', 'NO', 'NOT_SURE']).optional(),
170
- /** Insurance company and approximate cover amount. */
171
- healthInsuranceDetails: z.string().trim().optional(),
172
- /**
173
- * Ayushman Bharat Pradhan Mantri Jan Arogya Yojana (PM-JAY) card holder.
174
- * India-specific government health scheme — added beyond spec.
175
- * Key socio-economic indicator and policy awareness signal.
176
- */
177
- hasAyushmanBharatCard: z.enum(['YES', 'NO', 'NOT_SURE']).optional(),
178
- // ── 13.4 Food Habits ──────────────────────────────────────────────────────
179
- /**
180
- * Dietary identity — culturally and religiously significant in India.
181
- * Moved here from spec "11.x" where it lacked a section.
182
- */
183
- foodHabitType: z.enum(FOOD_HABIT_TYPE).optional(),
184
- /** Additional food preferences, allergies, or religious restrictions. */
185
- foodHabitNotes: z.string().trim().optional(),
186
- // ── 13.5 Physical Activity ────────────────────────────────────────────────
187
- physicalActivityLevel: z.enum(PHYSICAL_ACTIVITY_LEVEL).optional(),
188
- physicalActivityTypes: z.array(z.enum(PHYSICAL_ACTIVITY_TYPES)).optional(),
189
- // ── 13.6 Sleep & Stress ───────────────────────────────────────────────────
190
- sleepHoursPerDay: z.enum(SLEEP_HOURS).optional(),
191
- perceivedStressLevel: z.enum(STRESS_LEVEL).optional(),
192
- /**
193
- * Main causes of current stress — open text.
194
- * Added beyond spec; helps org identify common member burdens.
195
- */
196
- stressMainCauses: z.string().trim().optional(),
197
- // ── 13.7 Substance Use ────────────────────────────────────────────────────
198
- tobaccoUse: z.enum(TOBACCO_USE).optional(),
199
- /** Types used — shown only when tobacco use is not NEVER. */
200
- tobaccoTypes: z.array(z.enum(TOBACCO_TYPES)).optional(),
201
- alcoholUse: z.enum(ALCOHOL_USE).optional(),
202
- // ── 13.8 Health Program Interest ─────────────────────────────────────────
203
- interestedInHealthPrograms: z.array(z.enum(HEALTH_PROGRAMS_INTEREST)).optional(),
204
- // ── 13.9 Animal Welfare Views ────────────────────────────────────────────
205
- /**
206
- * Multi-select opinion statements on animal welfare.
207
- * From spec "11.x" — captures lifestyle values and ethical outlook.
208
- */
209
- viewOnAnimalWelfareStatements: z.array(z.enum(ANIMAL_WELFARE_STATEMENTS)).optional(),
210
- /** Free-text opinion on animal welfare — shown alongside multi-select. */
211
- viewOnAnimalCrueltyOpinion: z.string().trim().optional(),
212
- // ── 13.10 Mobility ────────────────────────────────────────────────────────
213
- mobilityOrTravelLimitations: z.array(z.enum(MOBILITY_LIMITATIONS)).optional(),
214
- });
215
- //# sourceMappingURL=step-13.schema.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"step-13.schema.js","sourceRoot":"","sources":["../src/step-13.schema.ts"],"names":[],"mappings":"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","sourcesContent":["import { z } from 'zod';\n\n// ─── Enums ────────────────────────────────────────────────────────────────────\n\nexport const DISABILITY_STATUS = [\n 'NONE',\n 'PHYSICAL', // Mobility, limb, paralysis\n 'VISUAL', // Blindness, low vision\n 'HEARING', // Deafness, hard of hearing\n 'SPEECH', // Speech / communication impairment\n 'INTELLECTUAL', // Cognitive / developmental\n 'PSYCHOSOCIAL', // Mental health condition recognised as disability\n 'MULTIPLE', // More than one type\n 'OTHER',\n] as const;\n\nexport const OVERALL_HEALTH_STATUS = [\n 'EXCELLENT', // No health issues; very fit\n 'GOOD', // Generally healthy with minor issues\n 'FAIR', // Some chronic conditions, managed\n 'POOR', // Serious ongoing health problems\n] as const;\n\nexport const KNOWN_HEALTH_CONDITIONS = [\n 'DIABETES',\n 'HYPERTENSION',\n 'HEART_DISEASE',\n 'ASTHMA_COPD',\n 'THYROID_DISORDER',\n 'KIDNEY_DISEASE',\n 'LIVER_DISEASE',\n 'ARTHRITIS',\n 'CHRONIC_PAIN',\n 'EPILEPSY',\n 'CANCER',\n 'MENTAL_HEALTH_CONDITION',\n 'OTHER',\n 'NONE',\n] as const;\n\nexport const BLOOD_GROUP = [\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] as const;\n\n/**\n * Dietary preference — captures food identity relevant to cultural,\n * religious, and ethical contexts in India.\n */\nexport const FOOD_HABIT_TYPE = [\n 'VEGETARIAN', // No egg, no meat, no fish\n 'EGGETARIAN', // Egg but no meat or fish\n 'NON_VEGETARIAN', // Includes meat, fish, or egg\n 'VEGAN', // No animal products including dairy\n 'JAIN', // Jain dietary restrictions (no root vegetables)\n 'OTHER',\n] as const;\n\n/**\n * Self-reported physical activity level.\n * Single choice — overall lifestyle signal.\n */\nexport const PHYSICAL_ACTIVITY_LEVEL = [\n 'VERY_ACTIVE', // Daily intense exercise\n 'ACTIVE', // Regular moderate exercise (3–4 days/week)\n 'LIGHTLY_ACTIVE', // Occasional walks or light activity\n 'SEDENTARY', // Mostly desk/sitting; very little movement\n] as const;\n\nexport const PHYSICAL_ACTIVITY_TYPES = [\n 'WALKING_RUNNING',\n 'YOGA_MEDITATION',\n 'GYM_WEIGHTLIFTING',\n 'CYCLING',\n 'SWIMMING',\n 'SPORTS_TEAM', // Cricket, football, kabaddi, etc.\n 'MARTIAL_ARTS', // MMA, wrestling, boxing\n 'MANUAL_LABOUR', // Farming, construction (counts as activity)\n 'DANCE',\n 'OTHER',\n] as const;\n\nexport const SLEEP_HOURS = [\n 'LESS_THAN_5', // Chronically sleep-deprived\n 'FIVE_TO_SIX',\n 'SIX_TO_SEVEN',\n 'SEVEN_TO_EIGHT', // Ideal range\n 'MORE_THAN_EIGHT',\n] as const;\n\nexport const STRESS_LEVEL = ['VERY_LOW', 'LOW', 'MODERATE', 'HIGH', 'VERY_HIGH'] as const;\n\nexport const TOBACCO_USE = [\n 'NEVER',\n 'TRIED_QUIT', // Tried in past, has now quit\n 'OCCASIONALLY', // A few times per month\n 'REGULARLY', // Multiple times per week\n 'DAILY',\n] as const;\n\nexport const TOBACCO_TYPES = [\n 'CIGARETTES',\n 'BIDI',\n 'CHEWING_TOBACCO',\n 'GUTKHA_PAN_MASALA',\n 'HOOKAH',\n 'VAPING_E_CIGARETTE',\n 'OTHER',\n] as const;\n\nexport const ALCOHOL_USE = [\n 'NEVER',\n 'RARELY', // A few times a year\n 'OCCASIONALLY', // A few times a month\n 'FREQUENTLY', // Weekly\n 'VERY_FREQUENTLY', // Daily or near-daily\n 'QUIT',\n] as const;\n\nexport const HEALTH_PROGRAMS_INTEREST = [\n 'YOGA_MEDITATION',\n 'FITNESS_GYM',\n 'NUTRITION_COUNSELLING',\n 'STRESS_MANAGEMENT',\n 'ADDICTION_RECOVERY',\n 'MENTAL_HEALTH_SUPPORT',\n 'HEALTH_CAMPS_CHECKUPS',\n 'FIRST_AID_TRAINING',\n 'NONE',\n] as const;\n\n/**\n * Views on animal welfare — multi-select opinion statements.\n * Included here (from spec \"11.x\") as it is a lifestyle/values question.\n */\nexport const ANIMAL_WELFARE_STATEMENTS = [\n 'ANIMAL_NO_CRUELTY', // Animals should not be tortured or killed for fun\n 'ANIMAL_BASIC_RIGHTS', // Animals should have basic legal protection\n 'ANIMAL_OK_FOR_FOOD_IF_HUMANE', // Using animals for food is OK if done humanely\n 'ANIMAL_RELIGIOUS_SACRIFICE_OK', // Religious animal sacrifice is acceptable\n 'ANIMAL_FACTORY_FARMING_CONCERN', // Concerned about factory farming cruelty\n 'ANIMAL_NEUTRAL', // Do not feel strongly about animal cruelty\n 'ANIMAL_DONT_KNOW', // Do not know enough\n 'ANIMAL_PREFER_NOT_SAY',\n] as const;\n\nexport const MOBILITY_LIMITATIONS = [\n 'DIFFICULTY_WALKING',\n 'DIFFICULTY_CLIMBING_STAIRS',\n 'CANT_TRAVEL_FAR', // Cannot travel more than a short distance\n 'FAMILY_RESTRICTS_TRAVEL', // Family/cultural restrictions on going out\n 'NO_LIMITATIONS',\n] as const;\n\n// ─── Schema ───────────────────────────────────────────────────────────────────\n\nexport const step13HealthSchema = z.object({\n // ── 13.1 Disability ───────────────────────────────────────────────────────\n\n disabilityStatus: z.enum(DISABILITY_STATUS).optional(),\n\n /** Describe disability type, severity, or support needs — shown if not NONE. */\n disabilityDetails: z.string().trim().optional(),\n\n // ── 13.2 General Health ───────────────────────────────────────────────────\n\n overallHealthStatus: z.enum(OVERALL_HEALTH_STATUS).optional(),\n\n knownHealthConditions: z.array(z.enum(KNOWN_HEALTH_CONDITIONS)).optional(),\n\n /** Describe conditions in more detail — shown when conditions are selected. */\n knownHealthConditionsDetails: z.string().trim().optional(),\n\n /** Regular medications taken — optional, for medical coordination. */\n currentMedications: z.string().trim().optional(),\n\n /**\n * Blood group — useful for emergency response at rallies / community events.\n * Added beyond spec.\n */\n bloodGroup: z.enum(BLOOD_GROUP).optional(),\n\n /**\n * Year of last health checkup — proxy for health-consciousness.\n * Added beyond spec.\n */\n lastHealthCheckupYear: z.string().trim().optional(),\n\n // ── 13.3 Health Insurance ─────────────────────────────────────────────────\n\n hasHealthInsurance: z.enum(['YES', 'NO', 'NOT_SURE']).optional(),\n\n /** Insurance company and approximate cover amount. */\n healthInsuranceDetails: z.string().trim().optional(),\n\n /**\n * Ayushman Bharat Pradhan Mantri Jan Arogya Yojana (PM-JAY) card holder.\n * India-specific government health scheme — added beyond spec.\n * Key socio-economic indicator and policy awareness signal.\n */\n hasAyushmanBharatCard: z.enum(['YES', 'NO', 'NOT_SURE']).optional(),\n\n // ── 13.4 Food Habits ──────────────────────────────────────────────────────\n\n /**\n * Dietary identity — culturally and religiously significant in India.\n * Moved here from spec \"11.x\" where it lacked a section.\n */\n foodHabitType: z.enum(FOOD_HABIT_TYPE).optional(),\n\n /** Additional food preferences, allergies, or religious restrictions. */\n foodHabitNotes: z.string().trim().optional(),\n\n // ── 13.5 Physical Activity ────────────────────────────────────────────────\n\n physicalActivityLevel: z.enum(PHYSICAL_ACTIVITY_LEVEL).optional(),\n\n physicalActivityTypes: z.array(z.enum(PHYSICAL_ACTIVITY_TYPES)).optional(),\n\n // ── 13.6 Sleep & Stress ───────────────────────────────────────────────────\n\n sleepHoursPerDay: z.enum(SLEEP_HOURS).optional(),\n\n perceivedStressLevel: z.enum(STRESS_LEVEL).optional(),\n\n /**\n * Main causes of current stress — open text.\n * Added beyond spec; helps org identify common member burdens.\n */\n stressMainCauses: z.string().trim().optional(),\n\n // ── 13.7 Substance Use ────────────────────────────────────────────────────\n\n tobaccoUse: z.enum(TOBACCO_USE).optional(),\n\n /** Types used — shown only when tobacco use is not NEVER. */\n tobaccoTypes: z.array(z.enum(TOBACCO_TYPES)).optional(),\n\n alcoholUse: z.enum(ALCOHOL_USE).optional(),\n\n // ── 13.8 Health Program Interest ─────────────────────────────────────────\n\n interestedInHealthPrograms: z.array(z.enum(HEALTH_PROGRAMS_INTEREST)).optional(),\n\n // ── 13.9 Animal Welfare Views ────────────────────────────────────────────\n\n /**\n * Multi-select opinion statements on animal welfare.\n * From spec \"11.x\" — captures lifestyle values and ethical outlook.\n */\n viewOnAnimalWelfareStatements: z.array(z.enum(ANIMAL_WELFARE_STATEMENTS)).optional(),\n\n /** Free-text opinion on animal welfare — shown alongside multi-select. */\n viewOnAnimalCrueltyOpinion: z.string().trim().optional(),\n\n // ── 13.10 Mobility ────────────────────────────────────────────────────────\n\n mobilityOrTravelLimitations: z.array(z.enum(MOBILITY_LIMITATIONS)).optional(),\n});\n\nexport type Step13HealthInput = z.infer<typeof step13HealthSchema>;\n"]}
@@ -1,88 +0,0 @@
1
- import { z } from 'zod';
2
- /**
3
- * Life areas the member wants to prioritise in the coming year.
4
- * Expanded beyond spec: added POLITICAL_ACTIVISM, PERSONAL_GROWTH,
5
- * CREATIVE_ARTS to capture the full range of meaningful life goals.
6
- */
7
- export declare const PRIORITY_CATEGORY_TAGS: readonly ["CAREER", "BUSINESS", "EDUCATION", "HEALTH", "FAMILY", "MARRIAGE", "FINANCE", "SPIRITUAL", "SOCIAL_SERVICE", "POLITICAL_ACTIVISM", "PERSONAL_GROWTH", "CREATIVE_ARTS", "OTHER"];
8
- /**
9
- * Skills the member wants to develop.
10
- * Added beyond spec; enables the org to match training and mentoring programs.
11
- */
12
- export declare const SKILLS_TO_LEARN: readonly ["PUBLIC_SPEAKING", "LEADERSHIP", "DIGITAL_MARKETING", "DATA_ANALYSIS", "FOREIGN_LANGUAGE", "FINANCIAL_LITERACY", "LEGAL_AWARENESS", "FARMING_AGRICULTURE", "TECHNICAL_IT", "TEACHING_TRAINING", "SOCIAL_MEDIA_CONTENT", "NEGOTIATION", "FIRST_AID_HEALTH", "CONFLICT_RESOLUTION", "OTHER"];
13
- /**
14
- * Hours per week the member can offer as a volunteer.
15
- * Added beyond spec; essential for capacity planning.
16
- */
17
- export declare const VOLUNTEERING_CAPACITY: readonly ["LESS_THAN_2_HRS", "TWO_TO_5_HRS", "FIVE_TO_10_HRS", "MORE_THAN_10_HRS", "FULL_TIME"];
18
- /**
19
- * What kind of support the member needs from the organisation.
20
- * Added beyond spec — turns this step into a two-way conversation.
21
- */
22
- export declare const HELP_NEEDED_FROM_ORG: readonly ["CAREER_GUIDANCE", "LEGAL_SUPPORT", "FINANCIAL_AID", "HEALTH_SUPPORT", "EDUCATION_SCHOLARSHIP", "LEADERSHIP_TRAINING", "NETWORK_CONNECTIONS", "EMOTIONAL_SUPPORT", "DIGITAL_TRAINING", "BUSINESS_MENTORING", "NONE"];
23
- export declare const step14PrioritiesSchema: z.ZodObject<{
24
- topPrioritiesThisYear: z.ZodOptional<z.ZodString>;
25
- priorityCategoryTags: z.ZodOptional<z.ZodArray<z.ZodEnum<{
26
- OTHER: "OTHER";
27
- EDUCATION: "EDUCATION";
28
- CAREER: "CAREER";
29
- BUSINESS: "BUSINESS";
30
- HEALTH: "HEALTH";
31
- FAMILY: "FAMILY";
32
- MARRIAGE: "MARRIAGE";
33
- FINANCE: "FINANCE";
34
- SPIRITUAL: "SPIRITUAL";
35
- SOCIAL_SERVICE: "SOCIAL_SERVICE";
36
- POLITICAL_ACTIVISM: "POLITICAL_ACTIVISM";
37
- PERSONAL_GROWTH: "PERSONAL_GROWTH";
38
- CREATIVE_ARTS: "CREATIVE_ARTS";
39
- }>>>;
40
- fiveYearVision: z.ZodOptional<z.ZodString>;
41
- biggestPersonalChallenge: z.ZodOptional<z.ZodString>;
42
- skillsWantToLearn: z.ZodOptional<z.ZodArray<z.ZodEnum<{
43
- OTHER: "OTHER";
44
- PUBLIC_SPEAKING: "PUBLIC_SPEAKING";
45
- NEGOTIATION: "NEGOTIATION";
46
- CONFLICT_RESOLUTION: "CONFLICT_RESOLUTION";
47
- LEADERSHIP: "LEADERSHIP";
48
- DIGITAL_MARKETING: "DIGITAL_MARKETING";
49
- DATA_ANALYSIS: "DATA_ANALYSIS";
50
- FOREIGN_LANGUAGE: "FOREIGN_LANGUAGE";
51
- FINANCIAL_LITERACY: "FINANCIAL_LITERACY";
52
- LEGAL_AWARENESS: "LEGAL_AWARENESS";
53
- FARMING_AGRICULTURE: "FARMING_AGRICULTURE";
54
- TECHNICAL_IT: "TECHNICAL_IT";
55
- TEACHING_TRAINING: "TEACHING_TRAINING";
56
- SOCIAL_MEDIA_CONTENT: "SOCIAL_MEDIA_CONTENT";
57
- FIRST_AID_HEALTH: "FIRST_AID_HEALTH";
58
- }>>>;
59
- alignmentWithMovement: z.ZodOptional<z.ZodString>;
60
- openToVolunteering: z.ZodOptional<z.ZodEnum<{
61
- NO: "NO";
62
- YES: "YES";
63
- MAYBE: "MAYBE";
64
- }>>;
65
- volunteeringCapacityPerWeek: z.ZodOptional<z.ZodEnum<{
66
- LESS_THAN_2_HRS: "LESS_THAN_2_HRS";
67
- TWO_TO_5_HRS: "TWO_TO_5_HRS";
68
- FIVE_TO_10_HRS: "FIVE_TO_10_HRS";
69
- MORE_THAN_10_HRS: "MORE_THAN_10_HRS";
70
- FULL_TIME: "FULL_TIME";
71
- }>>;
72
- helpNeededFromOrg: z.ZodOptional<z.ZodArray<z.ZodEnum<{
73
- NONE: "NONE";
74
- CAREER_GUIDANCE: "CAREER_GUIDANCE";
75
- LEGAL_SUPPORT: "LEGAL_SUPPORT";
76
- FINANCIAL_AID: "FINANCIAL_AID";
77
- HEALTH_SUPPORT: "HEALTH_SUPPORT";
78
- EDUCATION_SCHOLARSHIP: "EDUCATION_SCHOLARSHIP";
79
- LEADERSHIP_TRAINING: "LEADERSHIP_TRAINING";
80
- NETWORK_CONNECTIONS: "NETWORK_CONNECTIONS";
81
- EMOTIONAL_SUPPORT: "EMOTIONAL_SUPPORT";
82
- DIGITAL_TRAINING: "DIGITAL_TRAINING";
83
- BUSINESS_MENTORING: "BUSINESS_MENTORING";
84
- }>>>;
85
- personalMessage: z.ZodOptional<z.ZodString>;
86
- }, z.core.$strip>;
87
- export type Step14PrioritiesInput = z.infer<typeof step14PrioritiesSchema>;
88
- //# sourceMappingURL=step-14.schema.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"step-14.schema.d.ts","sourceRoot":"","sources":["../src/step-14.schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,2LAczB,CAAC;AAEX;;;GAGG;AACH,eAAO,MAAM,eAAe,sSAgBlB,CAAC;AAEX;;;GAGG;AACH,eAAO,MAAM,qBAAqB,iGAMxB,CAAC;AAEX;;;GAGG;AACH,eAAO,MAAM,oBAAoB,gOAYvB,CAAC;AAIX,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBA8EjC,CAAC;AAEH,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC"}