udp-schema 2.10.0 → 2.12.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.ts CHANGED
@@ -19,7 +19,7 @@
19
19
  export { type OnboardingFormData, udpOnboardingFormSchema, } from './onboarding-form.js';
20
20
  export { canProceed } from './validation.js';
21
21
  export { calcAge, isFieldVisible, labelFor, labelsFor } from './helpers.js';
22
- export { allFieldGroups, type BaseField, casteDiscriminationPlaceOptions, civicEngagementOptions, dietOptions, digitalAccessOptions, disabilityOptions, education, electionResultOptions, electoralBehaviour, employment, employmentStatusOptions, type FieldGroup, type FieldOption, familyMemberOptions, genderOptions, healthLifestyle, household, householdIncomeOptions, incomeRangeOptions, languageOptions, leadershipAmbitions, leadershipSkillsetOptions, lgbtqStatementOptions, type MultiSelectField, mbtiOptions, minorityOptions, type NumberField, neurodiversity, neurodiversityConditionOptions, officeElectionLevelOptions, type ProfileField, partyAssociationRoleOptions, partyOptions, politicalAssociation, politicalSpectrumOptions, profile, psychologicalAssessment, qualificationOptions, relativesInPoliticsOptions, religionOptions, reservationOptions, residence, type SelectField, sensoryPreferenceOptions, shiftOptions, substanceUseOptions, supportNeedOptions, type TextField, transgenderStatementOptions, votingIssueOptions, worldView, } from './profile-fields/index.js';
22
+ export { allFieldGroups, type BaseField, casteDiscriminationPlaceOptions, civicEngagementOptions, desiredPoliticalPositionOptions, dietOptions, digitalAccessOptions, disabilityOptions, education, electionResultOptions, electoralBehaviour, employment, employmentStatusOptions, type FieldGroup, type FieldOption, familyMemberOptions, genderOptions, healthLifestyle, household, householdIncomeOptions, incomeRangeOptions, languageOptions, leadershipAmbitions, leadershipSkillsetOptions, lgbtqStatementOptions, type MultiSelectField, mbtiOptions, minorityOptions, type NumberField, neurodiversity, neurodiversityConditionOptions, officeElectionLevelOptions, type ProfileField, partyAssociationRoleOptions, partyOptions, politicalAssociation, politicalSpectrumOptions, profile, psychologicalAssessment, qualificationOptions, relativesInPoliticsOptions, religionOptions, reservationOptions, residence, type SelectField, sensoryPreferenceOptions, shiftOptions, substanceUseOptions, supportNeedOptions, type TextField, transgenderStatementOptions, votingIssueOptions, worldView, } from './profile-fields/index.js';
23
23
  export { getFieldMeta, getFieldOptions, getImmutableFields, getStepSchema, } from './field-helpers.js';
24
24
  export { getUdpOnboardingFieldConfig, UDP_ONBOARDING_FIELDS, UDP_ONBOARDING_STEP_GROUPS, UDP_TOTAL_MAIN_STEPS, UDP_TOTAL_SUB_STEPS, type UdpOnboardingFieldConfig, type UdpOnboardingStepGroup, } from './onboarding-config.js';
25
25
  export { calculateOverallProgress as calculateUdpOverallProgress, calculateStepProgress as calculateUdpStepProgress, getNestedValue, isFieldFilled, UDP_PROGRESS_FIELDS, UDP_TOTAL_STEPS, } from './progress-fields.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAIH,OAAO,EACL,KAAK,kBAAkB,EACvB,uBAAuB,GACxB,MAAM,sBAAsB,CAAC;AAI9B,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAI7C,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAI5E,OAAO,EAEL,cAAc,EAEd,KAAK,SAAS,EACd,+BAA+B,EAC/B,sBAAsB,EACtB,WAAW,EACX,oBAAoB,EACpB,iBAAiB,EACjB,SAAS,EACT,qBAAqB,EACrB,kBAAkB,EAClB,UAAU,EACV,uBAAuB,EACvB,KAAK,UAAU,EACf,KAAK,WAAW,EAChB,mBAAmB,EAEnB,aAAa,EACb,eAAe,EACf,SAAS,EACT,sBAAsB,EACtB,kBAAkB,EAClB,eAAe,EACf,mBAAmB,EACnB,yBAAyB,EACzB,qBAAqB,EACrB,KAAK,gBAAgB,EACrB,WAAW,EACX,eAAe,EACf,KAAK,WAAW,EAChB,cAAc,EACd,8BAA8B,EAC9B,0BAA0B,EAC1B,KAAK,YAAY,EACjB,2BAA2B,EAC3B,YAAY,EACZ,oBAAoB,EACpB,wBAAwB,EACxB,OAAO,EACP,uBAAuB,EACvB,oBAAoB,EACpB,0BAA0B,EAC1B,eAAe,EACf,kBAAkB,EAClB,SAAS,EACT,KAAK,WAAW,EAChB,wBAAwB,EACxB,YAAY,EACZ,mBAAmB,EACnB,kBAAkB,EAClB,KAAK,SAAS,EACd,2BAA2B,EAC3B,kBAAkB,EAClB,SAAS,GACV,MAAM,2BAA2B,CAAC;AAInC,OAAO,EACL,YAAY,EACZ,eAAe,EACf,kBAAkB,EAClB,aAAa,GACd,MAAM,oBAAoB,CAAC;AAI5B,OAAO,EACL,2BAA2B,EAC3B,qBAAqB,EACrB,0BAA0B,EAC1B,oBAAoB,EACpB,mBAAmB,EACnB,KAAK,wBAAwB,EAC7B,KAAK,sBAAsB,GAC5B,MAAM,wBAAwB,CAAC;AAIhC,OAAO,EACL,wBAAwB,IAAI,2BAA2B,EACvD,qBAAqB,IAAI,wBAAwB,EACjD,cAAc,EACd,aAAa,EACb,mBAAmB,EACnB,eAAe,GAChB,MAAM,sBAAsB,CAAC;AAI9B,OAAO,EAAE,KAAK,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AACnF,OAAO,EAAE,KAAK,oBAAoB,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AACvF,OAAO,EAAE,KAAK,oBAAoB,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AACvF,OAAO,EAAE,KAAK,qBAAqB,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AACzF,OAAO,EAAE,KAAK,wBAAwB,EAAE,yBAAyB,EAAE,MAAM,qBAAqB,CAAC;AAC/F,OAAO,EACL,KAAK,qBAAqB,EAC1B,sBAAsB,EACtB,KAAK,gBAAgB,EACrB,iBAAiB,EACjB,KAAK,oBAAoB,EACzB,qBAAqB,GACtB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,KAAK,qBAAqB,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AACzF,OAAO,EAAE,KAAK,yBAAyB,EAAE,0BAA0B,EAAE,MAAM,qBAAqB,CAAC;AACjG,OAAO,EAAE,KAAK,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AACjF,OAAO,EAAE,KAAK,oBAAoB,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AACvF,OAAO,EACL,KAAK,sBAAsB,EAC3B,KAAK,oBAAoB,EACzB,uBAAuB,EACvB,qBAAqB,GACtB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,KAAK,oBAAoB,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAIvF,OAAO,EACL,sBAAsB,EACtB,mBAAmB,EACnB,qBAAqB,EACrB,kBAAkB,GACnB,MAAM,kBAAkB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -25,7 +25,7 @@ export { calcAge, isFieldVisible, labelFor, labelsFor } from './helpers.js';
25
25
  // ─── Profile Fields (rich metadata — like dating-schema) ────────────────────
26
26
  export {
27
27
  // Field groups
28
- allFieldGroups, casteDiscriminationPlaceOptions, civicEngagementOptions, dietOptions, digitalAccessOptions, disabilityOptions, education, electionResultOptions, electoralBehaviour, employment, employmentStatusOptions, familyMemberOptions,
28
+ allFieldGroups, casteDiscriminationPlaceOptions, civicEngagementOptions, desiredPoliticalPositionOptions, dietOptions, digitalAccessOptions, disabilityOptions, education, electionResultOptions, electoralBehaviour, employment, employmentStatusOptions, familyMemberOptions,
29
29
  // Option arrays (with labels + descriptions)
30
30
  genderOptions, healthLifestyle, household, householdIncomeOptions, incomeRangeOptions, languageOptions, leadershipAmbitions, leadershipSkillsetOptions, lgbtqStatementOptions, mbtiOptions, minorityOptions, neurodiversity, neurodiversityConditionOptions, officeElectionLevelOptions, partyAssociationRoleOptions, partyOptions, politicalAssociation, politicalSpectrumOptions, profile, psychologicalAssessment, qualificationOptions, relativesInPoliticsOptions, religionOptions, reservationOptions, residence, sensoryPreferenceOptions, shiftOptions, substanceUseOptions, supportNeedOptions, transgenderStatementOptions, votingIssueOptions, worldView, } from './profile-fields/index.js';
31
31
  // ─── Field Helpers (like dating-schema) ─────────────────────────────────────
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,+EAA+E;AAE/E,OAAO,EAEL,uBAAuB,GACxB,MAAM,sBAAsB,CAAC;AAE9B,+EAA+E;AAE/E,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE7C,+EAA+E;AAE/E,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAE5E,+EAA+E;AAE/E,OAAO;AACL,eAAe;AACf,cAAc,EAGd,+BAA+B,EAC/B,sBAAsB,EACtB,WAAW,EACX,oBAAoB,EACpB,iBAAiB,EACjB,SAAS,EACT,qBAAqB,EACrB,kBAAkB,EAClB,UAAU,EACV,uBAAuB,EAGvB,mBAAmB;AACnB,6CAA6C;AAC7C,aAAa,EACb,eAAe,EACf,SAAS,EACT,sBAAsB,EACtB,kBAAkB,EAClB,eAAe,EACf,mBAAmB,EACnB,yBAAyB,EACzB,qBAAqB,EAErB,WAAW,EACX,eAAe,EAEf,cAAc,EACd,8BAA8B,EAC9B,0BAA0B,EAE1B,2BAA2B,EAC3B,YAAY,EACZ,oBAAoB,EACpB,wBAAwB,EACxB,OAAO,EACP,uBAAuB,EACvB,oBAAoB,EACpB,0BAA0B,EAC1B,eAAe,EACf,kBAAkB,EAClB,SAAS,EAET,wBAAwB,EACxB,YAAY,EACZ,mBAAmB,EACnB,kBAAkB,EAElB,2BAA2B,EAC3B,kBAAkB,EAClB,SAAS,GACV,MAAM,2BAA2B,CAAC;AAEnC,+EAA+E;AAE/E,OAAO,EACL,YAAY,EACZ,eAAe,EACf,kBAAkB,EAClB,aAAa,GACd,MAAM,oBAAoB,CAAC;AAE5B,+EAA+E;AAE/E,OAAO,EACL,2BAA2B,EAC3B,qBAAqB,EACrB,0BAA0B,EAC1B,oBAAoB,EACpB,mBAAmB,GAGpB,MAAM,wBAAwB,CAAC;AAEhC,+EAA+E;AAE/E,OAAO,EACL,wBAAwB,IAAI,2BAA2B,EACvD,qBAAqB,IAAI,wBAAwB,EACjD,cAAc,EACd,aAAa,EACb,mBAAmB,EACnB,eAAe,GAChB,MAAM,sBAAsB,CAAC;AAE9B,+EAA+E;AAE/E,OAAO,EAA2B,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AACnF,OAAO,EAA6B,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AACvF,OAAO,EAA6B,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AACvF,OAAO,EAA8B,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AACzF,OAAO,EAAiC,yBAAyB,EAAE,MAAM,qBAAqB,CAAC;AAC/F,OAAO,EAEL,sBAAsB,EAEtB,iBAAiB,EAEjB,qBAAqB,GACtB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAA8B,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AACzF,OAAO,EAAkC,0BAA0B,EAAE,MAAM,qBAAqB,CAAC;AACjG,OAAO,EAA0B,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AACjF,OAAO,EAA6B,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AACvF,OAAO,EAGL,uBAAuB,EACvB,qBAAqB,GACtB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAA6B,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAEvF,+EAA+E;AAE/E,OAAO,EACL,sBAAsB,EACtB,mBAAmB,EACnB,qBAAqB,EACrB,kBAAkB,GACnB,MAAM,kBAAkB,CAAC","sourcesContent":["/**\n * udp-schema — Shared schemas for User Detailed Profile (v2)\n *\n * Single source of truth consumed by both reform frontends and reform-backend.\n * 12-step \"1 question per screen\" architecture.\n *\n * Follows the same pattern as dating-schema:\n * - profile-fields/ with rich FieldGroup definitions\n * - getFieldOptions() / getFieldMeta() for runtime introspection\n * - Unified onboarding form schema (udpOnboardingFormSchema)\n * - Validation (canProceed) exported for frontend + backend\n * - Helpers (calcAge, labelFor, labelsFor) shared across codebases\n * - Onboarding-config for step grouping\n * - Zod step schemas for per-step validation\n * - Progress tracking (per-step + overall)\n *\n * @module udp-schema\n */\n\n// ─── Unified Form Schema (like dating's onboardingFormSchema) ───────────────\n\nexport {\n type OnboardingFormData,\n udpOnboardingFormSchema,\n} from './onboarding-form.js';\n\n// ─── Validation (single source of truth — used by frontend + backend) ───────\n\nexport { canProceed } from './validation.js';\n\n// ─── Shared Helpers ─────────────────────────────────────────────────────────\n\nexport { calcAge, isFieldVisible, labelFor, labelsFor } from './helpers.js';\n\n// ─── Profile Fields (rich metadata — like dating-schema) ────────────────────\n\nexport {\n // Field groups\n allFieldGroups,\n // Types\n type BaseField,\n casteDiscriminationPlaceOptions,\n civicEngagementOptions,\n dietOptions,\n digitalAccessOptions,\n disabilityOptions,\n education,\n electionResultOptions,\n electoralBehaviour,\n employment,\n employmentStatusOptions,\n type FieldGroup,\n type FieldOption,\n familyMemberOptions,\n // Option arrays (with labels + descriptions)\n genderOptions,\n healthLifestyle,\n household,\n householdIncomeOptions,\n incomeRangeOptions,\n languageOptions,\n leadershipAmbitions,\n leadershipSkillsetOptions,\n lgbtqStatementOptions,\n type MultiSelectField,\n mbtiOptions,\n minorityOptions,\n type NumberField,\n neurodiversity,\n neurodiversityConditionOptions,\n officeElectionLevelOptions,\n type ProfileField,\n partyAssociationRoleOptions,\n partyOptions,\n politicalAssociation,\n politicalSpectrumOptions,\n profile,\n psychologicalAssessment,\n qualificationOptions,\n relativesInPoliticsOptions,\n religionOptions,\n reservationOptions,\n residence,\n type SelectField,\n sensoryPreferenceOptions,\n shiftOptions,\n substanceUseOptions,\n supportNeedOptions,\n type TextField,\n transgenderStatementOptions,\n votingIssueOptions,\n worldView,\n} from './profile-fields/index.js';\n\n// ─── Field Helpers (like dating-schema) ─────────────────────────────────────\n\nexport {\n getFieldMeta,\n getFieldOptions,\n getImmutableFields,\n getStepSchema,\n} from './field-helpers.js';\n\n// ─── Onboarding Configuration ───────────────────────────────────────────────\n\nexport {\n getUdpOnboardingFieldConfig,\n UDP_ONBOARDING_FIELDS,\n UDP_ONBOARDING_STEP_GROUPS,\n UDP_TOTAL_MAIN_STEPS,\n UDP_TOTAL_SUB_STEPS,\n type UdpOnboardingFieldConfig,\n type UdpOnboardingStepGroup,\n} from './onboarding-config.js';\n\n// ─── Progress Fields ────────────────────────────────────────────────────────\n\nexport {\n calculateOverallProgress as calculateUdpOverallProgress,\n calculateStepProgress as calculateUdpStepProgress,\n getNestedValue,\n isFieldFilled,\n UDP_PROGRESS_FIELDS,\n UDP_TOTAL_STEPS,\n} from './progress-fields.js';\n\n// ─── Step Schemas (Zod validation) ──────────────────────────────────────────\n\nexport { type Step01ProfileInput, step01ProfileSchema } from './step-01.schema.js';\nexport { type Step02PoliticalInput, step02PoliticalSchema } from './step-02.schema.js';\nexport { type Step03ElectoralInput, step03ElectoralSchema } from './step-03.schema.js';\nexport { type Step04LeadershipInput, step04LeadershipSchema } from './step-04.schema.js';\nexport { type Step05PsychologicalInput, step05PsychologicalSchema } from './step-05.schema.js';\nexport {\n type CertificateEntryInput,\n certificateEntrySchema,\n type DegreeEntryInput,\n degreeEntrySchema,\n type Step06EducationInput,\n step06EducationSchema,\n} from './step-06.schema.js';\nexport { type Step07EmploymentInput, step07EmploymentSchema } from './step-07.schema.js';\nexport { type Step08NeurodiversityInput, step08NeurodiversitySchema } from './step-08.schema.js';\nexport { type Step09HealthInput, step09HealthSchema } from './step-09.schema.js';\nexport { type Step10WorldViewInput, step10WorldViewSchema } from './step-10.schema.js';\nexport {\n type SimplifiedAddressInput,\n type Step11ResidenceInput,\n simplifiedAddressSchema,\n step11ResidenceSchema,\n} from './step-11.schema.js';\nexport { type Step12HouseholdInput, step12HouseholdSchema } from './step-12.schema.js';\n\n// ─── Zod Helpers ────────────────────────────────────────────────────────────\n\nexport {\n emptyStringToUndefined,\n optionalPhoneSchema,\n optionalTrimmedString,\n optionalYearSchema,\n} from './zod-helpers.js';\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,+EAA+E;AAE/E,OAAO,EAEL,uBAAuB,GACxB,MAAM,sBAAsB,CAAC;AAE9B,+EAA+E;AAE/E,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE7C,+EAA+E;AAE/E,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAE5E,+EAA+E;AAE/E,OAAO;AACL,eAAe;AACf,cAAc,EAGd,+BAA+B,EAC/B,sBAAsB,EACtB,+BAA+B,EAC/B,WAAW,EACX,oBAAoB,EACpB,iBAAiB,EACjB,SAAS,EACT,qBAAqB,EACrB,kBAAkB,EAClB,UAAU,EACV,uBAAuB,EAGvB,mBAAmB;AACnB,6CAA6C;AAC7C,aAAa,EACb,eAAe,EACf,SAAS,EACT,sBAAsB,EACtB,kBAAkB,EAClB,eAAe,EACf,mBAAmB,EACnB,yBAAyB,EACzB,qBAAqB,EAErB,WAAW,EACX,eAAe,EAEf,cAAc,EACd,8BAA8B,EAC9B,0BAA0B,EAE1B,2BAA2B,EAC3B,YAAY,EACZ,oBAAoB,EACpB,wBAAwB,EACxB,OAAO,EACP,uBAAuB,EACvB,oBAAoB,EACpB,0BAA0B,EAC1B,eAAe,EACf,kBAAkB,EAClB,SAAS,EAET,wBAAwB,EACxB,YAAY,EACZ,mBAAmB,EACnB,kBAAkB,EAElB,2BAA2B,EAC3B,kBAAkB,EAClB,SAAS,GACV,MAAM,2BAA2B,CAAC;AAEnC,+EAA+E;AAE/E,OAAO,EACL,YAAY,EACZ,eAAe,EACf,kBAAkB,EAClB,aAAa,GACd,MAAM,oBAAoB,CAAC;AAE5B,+EAA+E;AAE/E,OAAO,EACL,2BAA2B,EAC3B,qBAAqB,EACrB,0BAA0B,EAC1B,oBAAoB,EACpB,mBAAmB,GAGpB,MAAM,wBAAwB,CAAC;AAEhC,+EAA+E;AAE/E,OAAO,EACL,wBAAwB,IAAI,2BAA2B,EACvD,qBAAqB,IAAI,wBAAwB,EACjD,cAAc,EACd,aAAa,EACb,mBAAmB,EACnB,eAAe,GAChB,MAAM,sBAAsB,CAAC;AAE9B,+EAA+E;AAE/E,OAAO,EAA2B,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AACnF,OAAO,EAA6B,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AACvF,OAAO,EAA6B,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AACvF,OAAO,EAA8B,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AACzF,OAAO,EAAiC,yBAAyB,EAAE,MAAM,qBAAqB,CAAC;AAC/F,OAAO,EAEL,sBAAsB,EAEtB,iBAAiB,EAEjB,qBAAqB,GACtB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAA8B,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AACzF,OAAO,EAAkC,0BAA0B,EAAE,MAAM,qBAAqB,CAAC;AACjG,OAAO,EAA0B,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AACjF,OAAO,EAA6B,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AACvF,OAAO,EAGL,uBAAuB,EACvB,qBAAqB,GACtB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAA6B,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAEvF,+EAA+E;AAE/E,OAAO,EACL,sBAAsB,EACtB,mBAAmB,EACnB,qBAAqB,EACrB,kBAAkB,GACnB,MAAM,kBAAkB,CAAC","sourcesContent":["/**\n * udp-schema — Shared schemas for User Detailed Profile (v2)\n *\n * Single source of truth consumed by both reform frontends and reform-backend.\n * 12-step \"1 question per screen\" architecture.\n *\n * Follows the same pattern as dating-schema:\n * - profile-fields/ with rich FieldGroup definitions\n * - getFieldOptions() / getFieldMeta() for runtime introspection\n * - Unified onboarding form schema (udpOnboardingFormSchema)\n * - Validation (canProceed) exported for frontend + backend\n * - Helpers (calcAge, labelFor, labelsFor) shared across codebases\n * - Onboarding-config for step grouping\n * - Zod step schemas for per-step validation\n * - Progress tracking (per-step + overall)\n *\n * @module udp-schema\n */\n\n// ─── Unified Form Schema (like dating's onboardingFormSchema) ───────────────\n\nexport {\n type OnboardingFormData,\n udpOnboardingFormSchema,\n} from './onboarding-form.js';\n\n// ─── Validation (single source of truth — used by frontend + backend) ───────\n\nexport { canProceed } from './validation.js';\n\n// ─── Shared Helpers ─────────────────────────────────────────────────────────\n\nexport { calcAge, isFieldVisible, labelFor, labelsFor } from './helpers.js';\n\n// ─── Profile Fields (rich metadata — like dating-schema) ────────────────────\n\nexport {\n // Field groups\n allFieldGroups,\n // Types\n type BaseField,\n casteDiscriminationPlaceOptions,\n civicEngagementOptions,\n desiredPoliticalPositionOptions,\n dietOptions,\n digitalAccessOptions,\n disabilityOptions,\n education,\n electionResultOptions,\n electoralBehaviour,\n employment,\n employmentStatusOptions,\n type FieldGroup,\n type FieldOption,\n familyMemberOptions,\n // Option arrays (with labels + descriptions)\n genderOptions,\n healthLifestyle,\n household,\n householdIncomeOptions,\n incomeRangeOptions,\n languageOptions,\n leadershipAmbitions,\n leadershipSkillsetOptions,\n lgbtqStatementOptions,\n type MultiSelectField,\n mbtiOptions,\n minorityOptions,\n type NumberField,\n neurodiversity,\n neurodiversityConditionOptions,\n officeElectionLevelOptions,\n type ProfileField,\n partyAssociationRoleOptions,\n partyOptions,\n politicalAssociation,\n politicalSpectrumOptions,\n profile,\n psychologicalAssessment,\n qualificationOptions,\n relativesInPoliticsOptions,\n religionOptions,\n reservationOptions,\n residence,\n type SelectField,\n sensoryPreferenceOptions,\n shiftOptions,\n substanceUseOptions,\n supportNeedOptions,\n type TextField,\n transgenderStatementOptions,\n votingIssueOptions,\n worldView,\n} from './profile-fields/index.js';\n\n// ─── Field Helpers (like dating-schema) ─────────────────────────────────────\n\nexport {\n getFieldMeta,\n getFieldOptions,\n getImmutableFields,\n getStepSchema,\n} from './field-helpers.js';\n\n// ─── Onboarding Configuration ───────────────────────────────────────────────\n\nexport {\n getUdpOnboardingFieldConfig,\n UDP_ONBOARDING_FIELDS,\n UDP_ONBOARDING_STEP_GROUPS,\n UDP_TOTAL_MAIN_STEPS,\n UDP_TOTAL_SUB_STEPS,\n type UdpOnboardingFieldConfig,\n type UdpOnboardingStepGroup,\n} from './onboarding-config.js';\n\n// ─── Progress Fields ────────────────────────────────────────────────────────\n\nexport {\n calculateOverallProgress as calculateUdpOverallProgress,\n calculateStepProgress as calculateUdpStepProgress,\n getNestedValue,\n isFieldFilled,\n UDP_PROGRESS_FIELDS,\n UDP_TOTAL_STEPS,\n} from './progress-fields.js';\n\n// ─── Step Schemas (Zod validation) ──────────────────────────────────────────\n\nexport { type Step01ProfileInput, step01ProfileSchema } from './step-01.schema.js';\nexport { type Step02PoliticalInput, step02PoliticalSchema } from './step-02.schema.js';\nexport { type Step03ElectoralInput, step03ElectoralSchema } from './step-03.schema.js';\nexport { type Step04LeadershipInput, step04LeadershipSchema } from './step-04.schema.js';\nexport { type Step05PsychologicalInput, step05PsychologicalSchema } from './step-05.schema.js';\nexport {\n type CertificateEntryInput,\n certificateEntrySchema,\n type DegreeEntryInput,\n degreeEntrySchema,\n type Step06EducationInput,\n step06EducationSchema,\n} from './step-06.schema.js';\nexport { type Step07EmploymentInput, step07EmploymentSchema } from './step-07.schema.js';\nexport { type Step08NeurodiversityInput, step08NeurodiversitySchema } from './step-08.schema.js';\nexport { type Step09HealthInput, step09HealthSchema } from './step-09.schema.js';\nexport { type Step10WorldViewInput, step10WorldViewSchema } from './step-10.schema.js';\nexport {\n type SimplifiedAddressInput,\n type Step11ResidenceInput,\n simplifiedAddressSchema,\n step11ResidenceSchema,\n} from './step-11.schema.js';\nexport { type Step12HouseholdInput, step12HouseholdSchema } from './step-12.schema.js';\n\n// ─── Zod Helpers ────────────────────────────────────────────────────────────\n\nexport {\n emptyStringToUndefined,\n optionalPhoneSchema,\n optionalTrimmedString,\n optionalYearSchema,\n} from './zod-helpers.js';\n"]}
@@ -311,13 +311,39 @@ export declare const udpOnboardingFormSchema: z.ZodObject<{
311
311
  desiredPoliticalPosition: z.ZodOptional<z.ZodOptional<z.ZodEnum<{
312
312
  other: "other";
313
313
  none: "none";
314
+ ward_member: "ward_member";
314
315
  sarpanch: "sarpanch";
316
+ panchayat_samiti_member: "panchayat_samiti_member";
315
317
  block_pramukh: "block_pramukh";
316
- zila_panchayat: "zila_panchayat";
317
- mla: "mla";
318
- mp: "mp";
318
+ zila_panchayat_member: "zila_panchayat_member";
319
+ zila_pramukh: "zila_pramukh";
319
320
  municipal_councillor: "municipal_councillor";
321
+ deputy_mayor: "deputy_mayor";
320
322
  mayor: "mayor";
323
+ municipal_chairperson: "municipal_chairperson";
324
+ mla: "mla";
325
+ mlc: "mlc";
326
+ state_minister: "state_minister";
327
+ deputy_cm: "deputy_cm";
328
+ chief_minister: "chief_minister";
329
+ state_speaker: "state_speaker";
330
+ state_opposition_leader: "state_opposition_leader";
331
+ mp_lok_sabha: "mp_lok_sabha";
332
+ mp_rajya_sabha: "mp_rajya_sabha";
333
+ union_minister: "union_minister";
334
+ deputy_pm: "deputy_pm";
335
+ prime_minister: "prime_minister";
336
+ lok_sabha_speaker: "lok_sabha_speaker";
337
+ opposition_leader: "opposition_leader";
338
+ booth_worker: "booth_worker";
339
+ mandal_president: "mandal_president";
340
+ district_party_president: "district_party_president";
341
+ state_party_president: "state_party_president";
342
+ national_party_president: "national_party_president";
343
+ party_spokesperson: "party_spokesperson";
344
+ governor: "governor";
345
+ vice_president: "vice_president";
346
+ president: "president";
321
347
  }>>>;
322
348
  leadershipSkillset: z.ZodOptional<z.ZodOptional<z.ZodArray<z.ZodString>>>;
323
349
  politicalExposure: z.ZodOptional<z.ZodOptional<z.ZodEnum<{
@@ -1 +1 @@
1
- {"version":3,"file":"onboarding-form.d.ts","sourceRoot":"","sources":["../src/onboarding-form.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAcxB;;;;;;;;GAQG;AACH,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAoCxB,CAAC;AAEb,uEAAuE;AACvE,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC"}
1
+ {"version":3,"file":"onboarding-form.d.ts","sourceRoot":"","sources":["../src/onboarding-form.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAcxB;;;;;;;;GAQG;AACH,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAoCxB,CAAC;AAEb,uEAAuE;AACvE,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC"}
@@ -1,34 +1,233 @@
1
1
  import type { FieldGroup } from './types.js';
2
+ /**
3
+ * Desired political position — exhaustive list of elected, appointed, and
4
+ * party positions in the Indian political system. Organized by level
5
+ * (rural local body → urban local body → state → national → party roles
6
+ * → constitutional). Respondents select one aspiration.
7
+ */
8
+ export declare const desiredPoliticalPositionOptions: readonly [{
9
+ readonly value: "ward_member";
10
+ readonly label: "Ward Member / Panch";
11
+ }, {
12
+ readonly value: "sarpanch";
13
+ readonly label: "Sarpanch / Village Head";
14
+ }, {
15
+ readonly value: "panchayat_samiti_member";
16
+ readonly label: "Panchayat Samiti Member";
17
+ }, {
18
+ readonly value: "block_pramukh";
19
+ readonly label: "Block Pramukh / Panchayat Samiti Chairperson";
20
+ }, {
21
+ readonly value: "zila_panchayat_member";
22
+ readonly label: "Zila Panchayat / Parishad Member";
23
+ }, {
24
+ readonly value: "zila_pramukh";
25
+ readonly label: "Zila Panchayat Chairperson / Zila Pramukh";
26
+ }, {
27
+ readonly value: "municipal_councillor";
28
+ readonly label: "Municipal Councillor / Corporator";
29
+ }, {
30
+ readonly value: "deputy_mayor";
31
+ readonly label: "Deputy Mayor";
32
+ }, {
33
+ readonly value: "mayor";
34
+ readonly label: "Mayor";
35
+ }, {
36
+ readonly value: "municipal_chairperson";
37
+ readonly label: "Municipal Chairperson / Nagar Adhyaksha";
38
+ }, {
39
+ readonly value: "mla";
40
+ readonly label: "MLA (State Legislative Assembly)";
41
+ }, {
42
+ readonly value: "mlc";
43
+ readonly label: "MLC (State Legislative Council)";
44
+ }, {
45
+ readonly value: "state_minister";
46
+ readonly label: "State Minister (Cabinet / MoS)";
47
+ }, {
48
+ readonly value: "deputy_cm";
49
+ readonly label: "Deputy Chief Minister";
50
+ }, {
51
+ readonly value: "chief_minister";
52
+ readonly label: "Chief Minister";
53
+ }, {
54
+ readonly value: "state_speaker";
55
+ readonly label: "Speaker / Deputy Speaker (State Assembly)";
56
+ }, {
57
+ readonly value: "state_opposition_leader";
58
+ readonly label: "Leader of Opposition (State)";
59
+ }, {
60
+ readonly value: "mp_lok_sabha";
61
+ readonly label: "MP (Lok Sabha)";
62
+ }, {
63
+ readonly value: "mp_rajya_sabha";
64
+ readonly label: "MP (Rajya Sabha)";
65
+ }, {
66
+ readonly value: "union_minister";
67
+ readonly label: "Union Minister (Cabinet / MoS)";
68
+ }, {
69
+ readonly value: "deputy_pm";
70
+ readonly label: "Deputy Prime Minister";
71
+ }, {
72
+ readonly value: "prime_minister";
73
+ readonly label: "Prime Minister";
74
+ }, {
75
+ readonly value: "lok_sabha_speaker";
76
+ readonly label: "Speaker / Deputy Speaker (Lok Sabha)";
77
+ }, {
78
+ readonly value: "opposition_leader";
79
+ readonly label: "Leader of Opposition (Lok Sabha)";
80
+ }, {
81
+ readonly value: "booth_worker";
82
+ readonly label: "Booth-level Worker";
83
+ }, {
84
+ readonly value: "mandal_president";
85
+ readonly label: "Mandal / Block Party President";
86
+ }, {
87
+ readonly value: "district_party_president";
88
+ readonly label: "District Party President";
89
+ }, {
90
+ readonly value: "state_party_president";
91
+ readonly label: "State Party President";
92
+ }, {
93
+ readonly value: "national_party_president";
94
+ readonly label: "National Party President";
95
+ }, {
96
+ readonly value: "party_spokesperson";
97
+ readonly label: "Party Spokesperson";
98
+ }, {
99
+ readonly value: "governor";
100
+ readonly label: "Governor (State)";
101
+ }, {
102
+ readonly value: "vice_president";
103
+ readonly label: "Vice President of India";
104
+ }, {
105
+ readonly value: "president";
106
+ readonly label: "President of India";
107
+ }, {
108
+ readonly value: "none";
109
+ readonly label: "None — I'm not interested in office";
110
+ }, {
111
+ readonly value: "other";
112
+ readonly label: "Other";
113
+ }];
114
+ /**
115
+ * Leadership & political skillset — exhaustive list of skills relevant to
116
+ * Indian political, civic, and activist work. Grouped below thematically
117
+ * (communication, organizing, strategy, interpersonal, legal/admin,
118
+ * financial, digital, field work) but flattened in the exported array.
119
+ */
2
120
  export declare const leadershipSkillsetOptions: readonly [{
3
121
  readonly value: "public_speaking";
4
122
  readonly label: "Public Speaking";
123
+ }, {
124
+ readonly value: "media_handling";
125
+ readonly label: "Media Handling / Press Relations";
126
+ }, {
127
+ readonly value: "writing_drafting";
128
+ readonly label: "Writing & Drafting (speeches, statements)";
129
+ }, {
130
+ readonly value: "multilingual_communication";
131
+ readonly label: "Multilingual Communication";
132
+ }, {
133
+ readonly value: "debate_argumentation";
134
+ readonly label: "Debate & Argumentation";
135
+ }, {
136
+ readonly value: "storytelling";
137
+ readonly label: "Storytelling & Narrative Building";
138
+ }, {
139
+ readonly value: "social_media_management";
140
+ readonly label: "Social Media Management";
5
141
  }, {
6
142
  readonly value: "community_organizing";
7
143
  readonly label: "Community Organizing";
144
+ }, {
145
+ readonly value: "grassroots_mobilization";
146
+ readonly label: "Grassroots Mobilization";
147
+ }, {
148
+ readonly value: "campaign_management";
149
+ readonly label: "Campaign Management";
150
+ }, {
151
+ readonly value: "event_management";
152
+ readonly label: "Event Management";
153
+ }, {
154
+ readonly value: "volunteer_management";
155
+ readonly label: "Volunteer Management";
156
+ }, {
157
+ readonly value: "crowd_management";
158
+ readonly label: "Crowd Management";
159
+ }, {
160
+ readonly value: "door_to_door_canvassing";
161
+ readonly label: "Door-to-door Canvassing";
162
+ }, {
163
+ readonly value: "strategic_planning";
164
+ readonly label: "Strategic Planning";
165
+ }, {
166
+ readonly value: "policy_research";
167
+ readonly label: "Policy Research / Drafting";
168
+ }, {
169
+ readonly value: "political_analysis";
170
+ readonly label: "Political Analysis";
171
+ }, {
172
+ readonly value: "data_analytics";
173
+ readonly label: "Data Analytics / Voter Analytics";
174
+ }, {
175
+ readonly value: "manifesto_drafting";
176
+ readonly label: "Manifesto Drafting";
8
177
  }, {
9
178
  readonly value: "conflict_resolution";
10
179
  readonly label: "Conflict Resolution";
11
180
  }, {
12
- readonly value: "fundraising";
13
- readonly label: "Fundraising";
181
+ readonly value: "negotiation_mediation";
182
+ readonly label: "Negotiation & Mediation";
14
183
  }, {
15
- readonly value: "media_handling";
16
- readonly label: "Media Handling";
184
+ readonly value: "coalition_building";
185
+ readonly label: "Coalition Building";
186
+ }, {
187
+ readonly value: "team_leadership";
188
+ readonly label: "Team Leadership & Management";
189
+ }, {
190
+ readonly value: "mentorship";
191
+ readonly label: "Mentorship & Training";
17
192
  }, {
18
193
  readonly value: "legal_awareness";
19
- readonly label: "Legal Awareness";
194
+ readonly label: "Legal & Election-Law Awareness";
20
195
  }, {
21
- readonly value: "grassroots_mobilization";
22
- readonly label: "Grassroots Mobilization";
196
+ readonly value: "rti_filing";
197
+ readonly label: "RTI Filing";
198
+ }, {
199
+ readonly value: "bureaucratic_navigation";
200
+ readonly label: "Bureaucratic Navigation";
201
+ }, {
202
+ readonly value: "compliance_documentation";
203
+ readonly label: "Compliance & Documentation";
204
+ }, {
205
+ readonly value: "fundraising";
206
+ readonly label: "Fundraising";
207
+ }, {
208
+ readonly value: "budget_management";
209
+ readonly label: "Budget & Financial Management";
23
210
  }, {
24
211
  readonly value: "digital_campaigning";
25
212
  readonly label: "Digital Campaigning";
26
213
  }, {
27
- readonly value: "negotiation";
28
- readonly label: "Negotiation";
214
+ readonly value: "whatsapp_campaigning";
215
+ readonly label: "WhatsApp / Messaging Campaigns";
29
216
  }, {
30
- readonly value: "event_management";
31
- readonly label: "Event Management";
217
+ readonly value: "content_creation";
218
+ readonly label: "Content Creation (Video / Design)";
219
+ }, {
220
+ readonly value: "voter_targeting";
221
+ readonly label: "Data-driven Voter Targeting";
222
+ }, {
223
+ readonly value: "booth_management";
224
+ readonly label: "Booth / Polling Station Management";
225
+ }, {
226
+ readonly value: "voter_registration_drives";
227
+ readonly label: "Voter Registration Drives";
228
+ }, {
229
+ readonly value: "crisis_management";
230
+ readonly label: "Crisis Management";
32
231
  }];
33
232
  export declare const leadershipAmbitions: FieldGroup;
34
233
  //# sourceMappingURL=04-leadership.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"04-leadership.d.ts","sourceRoot":"","sources":["../../src/profile-fields/04-leadership.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAE7C,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAW5B,CAAC;AAEX,eAAO,MAAM,mBAAmB,EAAE,UA6HjC,CAAC"}
1
+ {"version":3,"file":"04-leadership.d.ts","sourceRoot":"","sources":["../../src/profile-fields/04-leadership.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAE7C;;;;;GAKG;AACH,eAAO,MAAM,+BAA+B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAiDlC,CAAC;AAEX;;;;;GAKG;AACH,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAqD5B,CAAC;AAEX,eAAO,MAAM,mBAAmB,EAAE,UAmHjC,CAAC"}
@@ -1,14 +1,105 @@
1
+ /**
2
+ * Desired political position — exhaustive list of elected, appointed, and
3
+ * party positions in the Indian political system. Organized by level
4
+ * (rural local body → urban local body → state → national → party roles
5
+ * → constitutional). Respondents select one aspiration.
6
+ */
7
+ export const desiredPoliticalPositionOptions = [
8
+ // ── Rural local body ──
9
+ { value: 'ward_member', label: 'Ward Member / Panch' },
10
+ { value: 'sarpanch', label: 'Sarpanch / Village Head' },
11
+ { value: 'panchayat_samiti_member', label: 'Panchayat Samiti Member' },
12
+ { value: 'block_pramukh', label: 'Block Pramukh / Panchayat Samiti Chairperson' },
13
+ { value: 'zila_panchayat_member', label: 'Zila Panchayat / Parishad Member' },
14
+ { value: 'zila_pramukh', label: 'Zila Panchayat Chairperson / Zila Pramukh' },
15
+ // ── Urban local body ──
16
+ { value: 'municipal_councillor', label: 'Municipal Councillor / Corporator' },
17
+ { value: 'deputy_mayor', label: 'Deputy Mayor' },
18
+ { value: 'mayor', label: 'Mayor' },
19
+ { value: 'municipal_chairperson', label: 'Municipal Chairperson / Nagar Adhyaksha' },
20
+ // ── State level ──
21
+ { value: 'mla', label: 'MLA (State Legislative Assembly)' },
22
+ { value: 'mlc', label: 'MLC (State Legislative Council)' },
23
+ { value: 'state_minister', label: 'State Minister (Cabinet / MoS)' },
24
+ { value: 'deputy_cm', label: 'Deputy Chief Minister' },
25
+ { value: 'chief_minister', label: 'Chief Minister' },
26
+ { value: 'state_speaker', label: 'Speaker / Deputy Speaker (State Assembly)' },
27
+ { value: 'state_opposition_leader', label: 'Leader of Opposition (State)' },
28
+ // ── National / Parliament ──
29
+ { value: 'mp_lok_sabha', label: 'MP (Lok Sabha)' },
30
+ { value: 'mp_rajya_sabha', label: 'MP (Rajya Sabha)' },
31
+ { value: 'union_minister', label: 'Union Minister (Cabinet / MoS)' },
32
+ { value: 'deputy_pm', label: 'Deputy Prime Minister' },
33
+ { value: 'prime_minister', label: 'Prime Minister' },
34
+ { value: 'lok_sabha_speaker', label: 'Speaker / Deputy Speaker (Lok Sabha)' },
35
+ { value: 'opposition_leader', label: 'Leader of Opposition (Lok Sabha)' },
36
+ // ── Party roles ──
37
+ { value: 'booth_worker', label: 'Booth-level Worker' },
38
+ { value: 'mandal_president', label: 'Mandal / Block Party President' },
39
+ { value: 'district_party_president', label: 'District Party President' },
40
+ { value: 'state_party_president', label: 'State Party President' },
41
+ { value: 'national_party_president', label: 'National Party President' },
42
+ { value: 'party_spokesperson', label: 'Party Spokesperson' },
43
+ // ── Constitutional (highest) ──
44
+ { value: 'governor', label: 'Governor (State)' },
45
+ { value: 'vice_president', label: 'Vice President of India' },
46
+ { value: 'president', label: 'President of India' },
47
+ // ── Meta ──
48
+ { value: 'none', label: "None — I'm not interested in office" },
49
+ { value: 'other', label: 'Other' },
50
+ ];
51
+ /**
52
+ * Leadership & political skillset — exhaustive list of skills relevant to
53
+ * Indian political, civic, and activist work. Grouped below thematically
54
+ * (communication, organizing, strategy, interpersonal, legal/admin,
55
+ * financial, digital, field work) but flattened in the exported array.
56
+ */
1
57
  export const leadershipSkillsetOptions = [
58
+ // ── Communication ──
2
59
  { value: 'public_speaking', label: 'Public Speaking' },
60
+ { value: 'media_handling', label: 'Media Handling / Press Relations' },
61
+ { value: 'writing_drafting', label: 'Writing & Drafting (speeches, statements)' },
62
+ { value: 'multilingual_communication', label: 'Multilingual Communication' },
63
+ { value: 'debate_argumentation', label: 'Debate & Argumentation' },
64
+ { value: 'storytelling', label: 'Storytelling & Narrative Building' },
65
+ { value: 'social_media_management', label: 'Social Media Management' },
66
+ // ── Organizing & Mobilization ──
3
67
  { value: 'community_organizing', label: 'Community Organizing' },
68
+ { value: 'grassroots_mobilization', label: 'Grassroots Mobilization' },
69
+ { value: 'campaign_management', label: 'Campaign Management' },
70
+ { value: 'event_management', label: 'Event Management' },
71
+ { value: 'volunteer_management', label: 'Volunteer Management' },
72
+ { value: 'crowd_management', label: 'Crowd Management' },
73
+ { value: 'door_to_door_canvassing', label: 'Door-to-door Canvassing' },
74
+ // ── Strategy & Policy ──
75
+ { value: 'strategic_planning', label: 'Strategic Planning' },
76
+ { value: 'policy_research', label: 'Policy Research / Drafting' },
77
+ { value: 'political_analysis', label: 'Political Analysis' },
78
+ { value: 'data_analytics', label: 'Data Analytics / Voter Analytics' },
79
+ { value: 'manifesto_drafting', label: 'Manifesto Drafting' },
80
+ // ── Interpersonal ──
4
81
  { value: 'conflict_resolution', label: 'Conflict Resolution' },
82
+ { value: 'negotiation_mediation', label: 'Negotiation & Mediation' },
83
+ { value: 'coalition_building', label: 'Coalition Building' },
84
+ { value: 'team_leadership', label: 'Team Leadership & Management' },
85
+ { value: 'mentorship', label: 'Mentorship & Training' },
86
+ // ── Legal & Administrative ──
87
+ { value: 'legal_awareness', label: 'Legal & Election-Law Awareness' },
88
+ { value: 'rti_filing', label: 'RTI Filing' },
89
+ { value: 'bureaucratic_navigation', label: 'Bureaucratic Navigation' },
90
+ { value: 'compliance_documentation', label: 'Compliance & Documentation' },
91
+ // ── Financial ──
5
92
  { value: 'fundraising', label: 'Fundraising' },
6
- { value: 'media_handling', label: 'Media Handling' },
7
- { value: 'legal_awareness', label: 'Legal Awareness' },
8
- { value: 'grassroots_mobilization', label: 'Grassroots Mobilization' },
93
+ { value: 'budget_management', label: 'Budget & Financial Management' },
94
+ // ── Digital ──
9
95
  { value: 'digital_campaigning', label: 'Digital Campaigning' },
10
- { value: 'negotiation', label: 'Negotiation' },
11
- { value: 'event_management', label: 'Event Management' },
96
+ { value: 'whatsapp_campaigning', label: 'WhatsApp / Messaging Campaigns' },
97
+ { value: 'content_creation', label: 'Content Creation (Video / Design)' },
98
+ { value: 'voter_targeting', label: 'Data-driven Voter Targeting' },
99
+ // ── Field / Ground ──
100
+ { value: 'booth_management', label: 'Booth / Polling Station Management' },
101
+ { value: 'voter_registration_drives', label: 'Voter Registration Drives' },
102
+ { value: 'crisis_management', label: 'Crisis Management' },
12
103
  ];
13
104
  export const leadershipAmbitions = {
14
105
  key: 'leadership_ambitions',
@@ -39,17 +130,7 @@ export const leadershipAmbitions = {
39
130
  step: 4,
40
131
  isOnboarding: true,
41
132
  optional: true,
42
- options: [
43
- { value: 'sarpanch', label: 'Sarpanch / Village Head' },
44
- { value: 'block_pramukh', label: 'Block Pramukh' },
45
- { value: 'zila_panchayat', label: 'Zila Panchayat Member' },
46
- { value: 'mla', label: 'MLA (State Assembly)' },
47
- { value: 'mp', label: 'MP (Parliament)' },
48
- { value: 'municipal_councillor', label: 'Municipal Councillor' },
49
- { value: 'mayor', label: 'Mayor' },
50
- { value: 'none', label: 'None' },
51
- { value: 'other', label: 'Other' },
52
- ],
133
+ options: [...desiredPoliticalPositionOptions],
53
134
  },
54
135
  {
55
136
  order: 3,
@@ -1 +1 @@
1
- {"version":3,"file":"04-leadership.js","sourceRoot":"","sources":["../../src/profile-fields/04-leadership.ts"],"names":[],"mappings":"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","sourcesContent":["import type { FieldGroup } from './types.js';\n\nexport const leadershipSkillsetOptions = [\n { value: 'public_speaking', label: 'Public Speaking' },\n { value: 'community_organizing', label: 'Community Organizing' },\n { value: 'conflict_resolution', label: 'Conflict Resolution' },\n { value: 'fundraising', label: 'Fundraising' },\n { value: 'media_handling', label: 'Media Handling' },\n { value: 'legal_awareness', label: 'Legal Awareness' },\n { value: 'grassroots_mobilization', label: 'Grassroots Mobilization' },\n { value: 'digital_campaigning', label: 'Digital Campaigning' },\n { value: 'negotiation', label: 'Negotiation' },\n { value: 'event_management', label: 'Event Management' },\n] as const;\n\nexport const leadershipAmbitions: FieldGroup = {\n key: 'leadership_ambitions',\n label: 'Leadership & Ambitions',\n step: 4,\n description: 'Your desire to lead, political aspirations, and skills.',\n fields: [\n {\n order: 1,\n key: 'participateInRevolution',\n label: 'Participate in Revolution',\n type: 'single_select',\n step: 4,\n isOnboarding: true,\n optional: true,\n options: [\n { value: 'yes_definitely', label: 'Yes, definitely!' },\n { value: 'maybe', label: 'Maybe' },\n { value: 'not_sure', label: 'Not sure yet' },\n { value: 'no', label: 'No' },\n ],\n },\n {\n order: 2,\n key: 'desiredPoliticalPosition',\n label: 'Desired Political Position',\n type: 'single_select',\n step: 4,\n isOnboarding: true,\n optional: true,\n options: [\n { value: 'sarpanch', label: 'Sarpanch / Village Head' },\n { value: 'block_pramukh', label: 'Block Pramukh' },\n { value: 'zila_panchayat', label: 'Zila Panchayat Member' },\n { value: 'mla', label: 'MLA (State Assembly)' },\n { value: 'mp', label: 'MP (Parliament)' },\n { value: 'municipal_councillor', label: 'Municipal Councillor' },\n { value: 'mayor', label: 'Mayor' },\n { value: 'none', label: 'None' },\n { value: 'other', label: 'Other' },\n ],\n },\n {\n order: 3,\n key: 'leadershipSkillset',\n label: 'Leadership Skills',\n type: 'multi_select',\n step: 4,\n isOnboarding: true,\n optional: true,\n options: [...leadershipSkillsetOptions],\n },\n {\n order: 4,\n key: 'politicalExposure',\n label: 'Political Exposure',\n type: 'single_select',\n step: 4,\n isOnboarding: true,\n optional: true,\n options: [\n { value: 'none', label: 'None' },\n { value: 'minimal', label: 'Minimal' },\n { value: 'moderate', label: 'Moderate' },\n { value: 'high', label: 'High' },\n { value: 'very_high', label: 'Very High' },\n ],\n },\n {\n order: 5,\n key: 'comfortWithVisibility',\n label: 'Comfort with Visibility',\n type: 'single_select',\n step: 4,\n isOnboarding: true,\n optional: true,\n options: [\n { value: 'very_comfortable', label: 'Very comfortable' },\n { value: 'somewhat', label: 'Somewhat' },\n { value: 'prefer_behind_scenes', label: 'Prefer behind the scenes' },\n { value: 'not_comfortable', label: 'Not comfortable' },\n ],\n },\n {\n order: 6,\n key: 'socialInfluenceLevel',\n label: 'Social Influence Level',\n type: 'single_select',\n step: 4,\n isOnboarding: true,\n optional: true,\n options: [\n { value: 'very_influential', label: 'Very influential' },\n { value: 'somewhat', label: 'Somewhat' },\n { value: 'average', label: 'Average' },\n { value: 'low', label: 'Low' },\n { value: 'not_sure', label: 'Not sure' },\n ],\n },\n {\n order: 7,\n key: 'pastExperience',\n label: 'Past Experience',\n type: 'single_select',\n step: 4,\n isOnboarding: true,\n optional: true,\n options: [\n { value: 'yes_party_work', label: 'Yes — Party work' },\n { value: 'yes_social_work', label: 'Yes — Social work / NGO' },\n { value: 'yes_student_politics', label: 'Yes — Student politics' },\n { value: 'no_experience', label: 'No experience' },\n { value: 'other', label: 'Other' },\n ],\n },\n {\n order: 8,\n key: 'changesYouWantToBring',\n label: 'Changes You Want to Bring',\n type: 'textarea',\n step: 4,\n isOnboarding: true,\n optional: true,\n maxLength: 1000,\n },\n ],\n};\n"]}
1
+ {"version":3,"file":"04-leadership.js","sourceRoot":"","sources":["../../src/profile-fields/04-leadership.ts"],"names":[],"mappings":"AAEA;;;;;GAKG;AACH,MAAM,CAAC,MAAM,+BAA+B,GAAG;IAC7C,yBAAyB;IACzB,EAAE,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,qBAAqB,EAAE;IACtD,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,yBAAyB,EAAE;IACvD,EAAE,KAAK,EAAE,yBAAyB,EAAE,KAAK,EAAE,yBAAyB,EAAE;IACtE,EAAE,KAAK,EAAE,eAAe,EAAE,KAAK,EAAE,8CAA8C,EAAE;IACjF,EAAE,KAAK,EAAE,uBAAuB,EAAE,KAAK,EAAE,kCAAkC,EAAE;IAC7E,EAAE,KAAK,EAAE,cAAc,EAAE,KAAK,EAAE,2CAA2C,EAAE;IAE7E,yBAAyB;IACzB,EAAE,KAAK,EAAE,sBAAsB,EAAE,KAAK,EAAE,mCAAmC,EAAE;IAC7E,EAAE,KAAK,EAAE,cAAc,EAAE,KAAK,EAAE,cAAc,EAAE;IAChD,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE;IAClC,EAAE,KAAK,EAAE,uBAAuB,EAAE,KAAK,EAAE,yCAAyC,EAAE;IAEpF,oBAAoB;IACpB,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,kCAAkC,EAAE;IAC3D,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,iCAAiC,EAAE;IAC1D,EAAE,KAAK,EAAE,gBAAgB,EAAE,KAAK,EAAE,gCAAgC,EAAE;IACpE,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,uBAAuB,EAAE;IACtD,EAAE,KAAK,EAAE,gBAAgB,EAAE,KAAK,EAAE,gBAAgB,EAAE;IACpD,EAAE,KAAK,EAAE,eAAe,EAAE,KAAK,EAAE,2CAA2C,EAAE;IAC9E,EAAE,KAAK,EAAE,yBAAyB,EAAE,KAAK,EAAE,8BAA8B,EAAE;IAE3E,8BAA8B;IAC9B,EAAE,KAAK,EAAE,cAAc,EAAE,KAAK,EAAE,gBAAgB,EAAE;IAClD,EAAE,KAAK,EAAE,gBAAgB,EAAE,KAAK,EAAE,kBAAkB,EAAE;IACtD,EAAE,KAAK,EAAE,gBAAgB,EAAE,KAAK,EAAE,gCAAgC,EAAE;IACpE,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,uBAAuB,EAAE;IACtD,EAAE,KAAK,EAAE,gBAAgB,EAAE,KAAK,EAAE,gBAAgB,EAAE;IACpD,EAAE,KAAK,EAAE,mBAAmB,EAAE,KAAK,EAAE,sCAAsC,EAAE;IAC7E,EAAE,KAAK,EAAE,mBAAmB,EAAE,KAAK,EAAE,kCAAkC,EAAE;IAEzE,oBAAoB;IACpB,EAAE,KAAK,EAAE,cAAc,EAAE,KAAK,EAAE,oBAAoB,EAAE;IACtD,EAAE,KAAK,EAAE,kBAAkB,EAAE,KAAK,EAAE,gCAAgC,EAAE;IACtE,EAAE,KAAK,EAAE,0BAA0B,EAAE,KAAK,EAAE,0BAA0B,EAAE;IACxE,EAAE,KAAK,EAAE,uBAAuB,EAAE,KAAK,EAAE,uBAAuB,EAAE;IAClE,EAAE,KAAK,EAAE,0BAA0B,EAAE,KAAK,EAAE,0BAA0B,EAAE;IACxE,EAAE,KAAK,EAAE,oBAAoB,EAAE,KAAK,EAAE,oBAAoB,EAAE;IAE5D,iCAAiC;IACjC,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,kBAAkB,EAAE;IAChD,EAAE,KAAK,EAAE,gBAAgB,EAAE,KAAK,EAAE,yBAAyB,EAAE;IAC7D,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,oBAAoB,EAAE;IAEnD,aAAa;IACb,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,qCAAqC,EAAE;IAC/D,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE;CAC1B,CAAC;AAEX;;;;;GAKG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG;IACvC,sBAAsB;IACtB,EAAE,KAAK,EAAE,iBAAiB,EAAE,KAAK,EAAE,iBAAiB,EAAE;IACtD,EAAE,KAAK,EAAE,gBAAgB,EAAE,KAAK,EAAE,kCAAkC,EAAE;IACtE,EAAE,KAAK,EAAE,kBAAkB,EAAE,KAAK,EAAE,2CAA2C,EAAE;IACjF,EAAE,KAAK,EAAE,4BAA4B,EAAE,KAAK,EAAE,4BAA4B,EAAE;IAC5E,EAAE,KAAK,EAAE,sBAAsB,EAAE,KAAK,EAAE,wBAAwB,EAAE;IAClE,EAAE,KAAK,EAAE,cAAc,EAAE,KAAK,EAAE,mCAAmC,EAAE;IACrE,EAAE,KAAK,EAAE,yBAAyB,EAAE,KAAK,EAAE,yBAAyB,EAAE;IAEtE,kCAAkC;IAClC,EAAE,KAAK,EAAE,sBAAsB,EAAE,KAAK,EAAE,sBAAsB,EAAE;IAChE,EAAE,KAAK,EAAE,yBAAyB,EAAE,KAAK,EAAE,yBAAyB,EAAE;IACtE,EAAE,KAAK,EAAE,qBAAqB,EAAE,KAAK,EAAE,qBAAqB,EAAE;IAC9D,EAAE,KAAK,EAAE,kBAAkB,EAAE,KAAK,EAAE,kBAAkB,EAAE;IACxD,EAAE,KAAK,EAAE,sBAAsB,EAAE,KAAK,EAAE,sBAAsB,EAAE;IAChE,EAAE,KAAK,EAAE,kBAAkB,EAAE,KAAK,EAAE,kBAAkB,EAAE;IACxD,EAAE,KAAK,EAAE,yBAAyB,EAAE,KAAK,EAAE,yBAAyB,EAAE;IAEtE,0BAA0B;IAC1B,EAAE,KAAK,EAAE,oBAAoB,EAAE,KAAK,EAAE,oBAAoB,EAAE;IAC5D,EAAE,KAAK,EAAE,iBAAiB,EAAE,KAAK,EAAE,4BAA4B,EAAE;IACjE,EAAE,KAAK,EAAE,oBAAoB,EAAE,KAAK,EAAE,oBAAoB,EAAE;IAC5D,EAAE,KAAK,EAAE,gBAAgB,EAAE,KAAK,EAAE,kCAAkC,EAAE;IACtE,EAAE,KAAK,EAAE,oBAAoB,EAAE,KAAK,EAAE,oBAAoB,EAAE;IAE5D,sBAAsB;IACtB,EAAE,KAAK,EAAE,qBAAqB,EAAE,KAAK,EAAE,qBAAqB,EAAE;IAC9D,EAAE,KAAK,EAAE,uBAAuB,EAAE,KAAK,EAAE,yBAAyB,EAAE;IACpE,EAAE,KAAK,EAAE,oBAAoB,EAAE,KAAK,EAAE,oBAAoB,EAAE;IAC5D,EAAE,KAAK,EAAE,iBAAiB,EAAE,KAAK,EAAE,8BAA8B,EAAE;IACnE,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,uBAAuB,EAAE;IAEvD,+BAA+B;IAC/B,EAAE,KAAK,EAAE,iBAAiB,EAAE,KAAK,EAAE,gCAAgC,EAAE;IACrE,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,YAAY,EAAE;IAC5C,EAAE,KAAK,EAAE,yBAAyB,EAAE,KAAK,EAAE,yBAAyB,EAAE;IACtE,EAAE,KAAK,EAAE,0BAA0B,EAAE,KAAK,EAAE,4BAA4B,EAAE;IAE1E,kBAAkB;IAClB,EAAE,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,aAAa,EAAE;IAC9C,EAAE,KAAK,EAAE,mBAAmB,EAAE,KAAK,EAAE,+BAA+B,EAAE;IAEtE,gBAAgB;IAChB,EAAE,KAAK,EAAE,qBAAqB,EAAE,KAAK,EAAE,qBAAqB,EAAE;IAC9D,EAAE,KAAK,EAAE,sBAAsB,EAAE,KAAK,EAAE,gCAAgC,EAAE;IAC1E,EAAE,KAAK,EAAE,kBAAkB,EAAE,KAAK,EAAE,mCAAmC,EAAE;IACzE,EAAE,KAAK,EAAE,iBAAiB,EAAE,KAAK,EAAE,6BAA6B,EAAE;IAElE,uBAAuB;IACvB,EAAE,KAAK,EAAE,kBAAkB,EAAE,KAAK,EAAE,oCAAoC,EAAE;IAC1E,EAAE,KAAK,EAAE,2BAA2B,EAAE,KAAK,EAAE,2BAA2B,EAAE;IAC1E,EAAE,KAAK,EAAE,mBAAmB,EAAE,KAAK,EAAE,mBAAmB,EAAE;CAClD,CAAC;AAEX,MAAM,CAAC,MAAM,mBAAmB,GAAe;IAC7C,GAAG,EAAE,sBAAsB;IAC3B,KAAK,EAAE,wBAAwB;IAC/B,IAAI,EAAE,CAAC;IACP,WAAW,EAAE,yDAAyD;IACtE,MAAM,EAAE;QACN;YACE,KAAK,EAAE,CAAC;YACR,GAAG,EAAE,yBAAyB;YAC9B,KAAK,EAAE,2BAA2B;YAClC,IAAI,EAAE,eAAe;YACrB,IAAI,EAAE,CAAC;YACP,YAAY,EAAE,IAAI;YAClB,QAAQ,EAAE,IAAI;YACd,OAAO,EAAE;gBACP,EAAE,KAAK,EAAE,gBAAgB,EAAE,KAAK,EAAE,kBAAkB,EAAE;gBACtD,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE;gBAClC,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,cAAc,EAAE;gBAC5C,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE;aAC7B;SACF;QACD;YACE,KAAK,EAAE,CAAC;YACR,GAAG,EAAE,0BAA0B;YAC/B,KAAK,EAAE,4BAA4B;YACnC,IAAI,EAAE,eAAe;YACrB,IAAI,EAAE,CAAC;YACP,YAAY,EAAE,IAAI;YAClB,QAAQ,EAAE,IAAI;YACd,OAAO,EAAE,CAAC,GAAG,+BAA+B,CAAC;SAC9C;QACD;YACE,KAAK,EAAE,CAAC;YACR,GAAG,EAAE,oBAAoB;YACzB,KAAK,EAAE,mBAAmB;YAC1B,IAAI,EAAE,cAAc;YACpB,IAAI,EAAE,CAAC;YACP,YAAY,EAAE,IAAI;YAClB,QAAQ,EAAE,IAAI;YACd,OAAO,EAAE,CAAC,GAAG,yBAAyB,CAAC;SACxC;QACD;YACE,KAAK,EAAE,CAAC;YACR,GAAG,EAAE,mBAAmB;YACxB,KAAK,EAAE,oBAAoB;YAC3B,IAAI,EAAE,eAAe;YACrB,IAAI,EAAE,CAAC;YACP,YAAY,EAAE,IAAI;YAClB,QAAQ,EAAE,IAAI;YACd,OAAO,EAAE;gBACP,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE;gBAChC,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE;gBACtC,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE;gBACxC,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE;gBAChC,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,WAAW,EAAE;aAC3C;SACF;QACD;YACE,KAAK,EAAE,CAAC;YACR,GAAG,EAAE,uBAAuB;YAC5B,KAAK,EAAE,yBAAyB;YAChC,IAAI,EAAE,eAAe;YACrB,IAAI,EAAE,CAAC;YACP,YAAY,EAAE,IAAI;YAClB,QAAQ,EAAE,IAAI;YACd,OAAO,EAAE;gBACP,EAAE,KAAK,EAAE,kBAAkB,EAAE,KAAK,EAAE,kBAAkB,EAAE;gBACxD,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE;gBACxC,EAAE,KAAK,EAAE,sBAAsB,EAAE,KAAK,EAAE,0BAA0B,EAAE;gBACpE,EAAE,KAAK,EAAE,iBAAiB,EAAE,KAAK,EAAE,iBAAiB,EAAE;aACvD;SACF;QACD;YACE,KAAK,EAAE,CAAC;YACR,GAAG,EAAE,sBAAsB;YAC3B,KAAK,EAAE,wBAAwB;YAC/B,IAAI,EAAE,eAAe;YACrB,IAAI,EAAE,CAAC;YACP,YAAY,EAAE,IAAI;YAClB,QAAQ,EAAE,IAAI;YACd,OAAO,EAAE;gBACP,EAAE,KAAK,EAAE,kBAAkB,EAAE,KAAK,EAAE,kBAAkB,EAAE;gBACxD,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE;gBACxC,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE;gBACtC,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE;gBAC9B,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE;aACzC;SACF;QACD;YACE,KAAK,EAAE,CAAC;YACR,GAAG,EAAE,gBAAgB;YACrB,KAAK,EAAE,iBAAiB;YACxB,IAAI,EAAE,eAAe;YACrB,IAAI,EAAE,CAAC;YACP,YAAY,EAAE,IAAI;YAClB,QAAQ,EAAE,IAAI;YACd,OAAO,EAAE;gBACP,EAAE,KAAK,EAAE,gBAAgB,EAAE,KAAK,EAAE,kBAAkB,EAAE;gBACtD,EAAE,KAAK,EAAE,iBAAiB,EAAE,KAAK,EAAE,yBAAyB,EAAE;gBAC9D,EAAE,KAAK,EAAE,sBAAsB,EAAE,KAAK,EAAE,wBAAwB,EAAE;gBAClE,EAAE,KAAK,EAAE,eAAe,EAAE,KAAK,EAAE,eAAe,EAAE;gBAClD,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE;aACnC;SACF;QACD;YACE,KAAK,EAAE,CAAC;YACR,GAAG,EAAE,uBAAuB;YAC5B,KAAK,EAAE,2BAA2B;YAClC,IAAI,EAAE,UAAU;YAChB,IAAI,EAAE,CAAC;YACP,YAAY,EAAE,IAAI;YAClB,QAAQ,EAAE,IAAI;YACd,SAAS,EAAE,IAAI;SAChB;KACF;CACF,CAAC","sourcesContent":["import type { FieldGroup } from './types.js';\n\n/**\n * Desired political position — exhaustive list of elected, appointed, and\n * party positions in the Indian political system. Organized by level\n * (rural local body → urban local body → state → national → party roles\n * → constitutional). Respondents select one aspiration.\n */\nexport const desiredPoliticalPositionOptions = [\n // ── Rural local body ──\n { value: 'ward_member', label: 'Ward Member / Panch' },\n { value: 'sarpanch', label: 'Sarpanch / Village Head' },\n { value: 'panchayat_samiti_member', label: 'Panchayat Samiti Member' },\n { value: 'block_pramukh', label: 'Block Pramukh / Panchayat Samiti Chairperson' },\n { value: 'zila_panchayat_member', label: 'Zila Panchayat / Parishad Member' },\n { value: 'zila_pramukh', label: 'Zila Panchayat Chairperson / Zila Pramukh' },\n\n // ── Urban local body ──\n { value: 'municipal_councillor', label: 'Municipal Councillor / Corporator' },\n { value: 'deputy_mayor', label: 'Deputy Mayor' },\n { value: 'mayor', label: 'Mayor' },\n { value: 'municipal_chairperson', label: 'Municipal Chairperson / Nagar Adhyaksha' },\n\n // ── State level ──\n { value: 'mla', label: 'MLA (State Legislative Assembly)' },\n { value: 'mlc', label: 'MLC (State Legislative Council)' },\n { value: 'state_minister', label: 'State Minister (Cabinet / MoS)' },\n { value: 'deputy_cm', label: 'Deputy Chief Minister' },\n { value: 'chief_minister', label: 'Chief Minister' },\n { value: 'state_speaker', label: 'Speaker / Deputy Speaker (State Assembly)' },\n { value: 'state_opposition_leader', label: 'Leader of Opposition (State)' },\n\n // ── National / Parliament ──\n { value: 'mp_lok_sabha', label: 'MP (Lok Sabha)' },\n { value: 'mp_rajya_sabha', label: 'MP (Rajya Sabha)' },\n { value: 'union_minister', label: 'Union Minister (Cabinet / MoS)' },\n { value: 'deputy_pm', label: 'Deputy Prime Minister' },\n { value: 'prime_minister', label: 'Prime Minister' },\n { value: 'lok_sabha_speaker', label: 'Speaker / Deputy Speaker (Lok Sabha)' },\n { value: 'opposition_leader', label: 'Leader of Opposition (Lok Sabha)' },\n\n // ── Party roles ──\n { value: 'booth_worker', label: 'Booth-level Worker' },\n { value: 'mandal_president', label: 'Mandal / Block Party President' },\n { value: 'district_party_president', label: 'District Party President' },\n { value: 'state_party_president', label: 'State Party President' },\n { value: 'national_party_president', label: 'National Party President' },\n { value: 'party_spokesperson', label: 'Party Spokesperson' },\n\n // ── Constitutional (highest) ──\n { value: 'governor', label: 'Governor (State)' },\n { value: 'vice_president', label: 'Vice President of India' },\n { value: 'president', label: 'President of India' },\n\n // ── Meta ──\n { value: 'none', label: \"None — I'm not interested in office\" },\n { value: 'other', label: 'Other' },\n] as const;\n\n/**\n * Leadership & political skillset — exhaustive list of skills relevant to\n * Indian political, civic, and activist work. Grouped below thematically\n * (communication, organizing, strategy, interpersonal, legal/admin,\n * financial, digital, field work) but flattened in the exported array.\n */\nexport const leadershipSkillsetOptions = [\n // ── Communication ──\n { value: 'public_speaking', label: 'Public Speaking' },\n { value: 'media_handling', label: 'Media Handling / Press Relations' },\n { value: 'writing_drafting', label: 'Writing & Drafting (speeches, statements)' },\n { value: 'multilingual_communication', label: 'Multilingual Communication' },\n { value: 'debate_argumentation', label: 'Debate & Argumentation' },\n { value: 'storytelling', label: 'Storytelling & Narrative Building' },\n { value: 'social_media_management', label: 'Social Media Management' },\n\n // ── Organizing & Mobilization ──\n { value: 'community_organizing', label: 'Community Organizing' },\n { value: 'grassroots_mobilization', label: 'Grassroots Mobilization' },\n { value: 'campaign_management', label: 'Campaign Management' },\n { value: 'event_management', label: 'Event Management' },\n { value: 'volunteer_management', label: 'Volunteer Management' },\n { value: 'crowd_management', label: 'Crowd Management' },\n { value: 'door_to_door_canvassing', label: 'Door-to-door Canvassing' },\n\n // ── Strategy & Policy ──\n { value: 'strategic_planning', label: 'Strategic Planning' },\n { value: 'policy_research', label: 'Policy Research / Drafting' },\n { value: 'political_analysis', label: 'Political Analysis' },\n { value: 'data_analytics', label: 'Data Analytics / Voter Analytics' },\n { value: 'manifesto_drafting', label: 'Manifesto Drafting' },\n\n // ── Interpersonal ──\n { value: 'conflict_resolution', label: 'Conflict Resolution' },\n { value: 'negotiation_mediation', label: 'Negotiation & Mediation' },\n { value: 'coalition_building', label: 'Coalition Building' },\n { value: 'team_leadership', label: 'Team Leadership & Management' },\n { value: 'mentorship', label: 'Mentorship & Training' },\n\n // ── Legal & Administrative ──\n { value: 'legal_awareness', label: 'Legal & Election-Law Awareness' },\n { value: 'rti_filing', label: 'RTI Filing' },\n { value: 'bureaucratic_navigation', label: 'Bureaucratic Navigation' },\n { value: 'compliance_documentation', label: 'Compliance & Documentation' },\n\n // ── Financial ──\n { value: 'fundraising', label: 'Fundraising' },\n { value: 'budget_management', label: 'Budget & Financial Management' },\n\n // ── Digital ──\n { value: 'digital_campaigning', label: 'Digital Campaigning' },\n { value: 'whatsapp_campaigning', label: 'WhatsApp / Messaging Campaigns' },\n { value: 'content_creation', label: 'Content Creation (Video / Design)' },\n { value: 'voter_targeting', label: 'Data-driven Voter Targeting' },\n\n // ── Field / Ground ──\n { value: 'booth_management', label: 'Booth / Polling Station Management' },\n { value: 'voter_registration_drives', label: 'Voter Registration Drives' },\n { value: 'crisis_management', label: 'Crisis Management' },\n] as const;\n\nexport const leadershipAmbitions: FieldGroup = {\n key: 'leadership_ambitions',\n label: 'Leadership & Ambitions',\n step: 4,\n description: 'Your desire to lead, political aspirations, and skills.',\n fields: [\n {\n order: 1,\n key: 'participateInRevolution',\n label: 'Participate in Revolution',\n type: 'single_select',\n step: 4,\n isOnboarding: true,\n optional: true,\n options: [\n { value: 'yes_definitely', label: 'Yes, definitely!' },\n { value: 'maybe', label: 'Maybe' },\n { value: 'not_sure', label: 'Not sure yet' },\n { value: 'no', label: 'No' },\n ],\n },\n {\n order: 2,\n key: 'desiredPoliticalPosition',\n label: 'Desired Political Position',\n type: 'single_select',\n step: 4,\n isOnboarding: true,\n optional: true,\n options: [...desiredPoliticalPositionOptions],\n },\n {\n order: 3,\n key: 'leadershipSkillset',\n label: 'Leadership Skills',\n type: 'multi_select',\n step: 4,\n isOnboarding: true,\n optional: true,\n options: [...leadershipSkillsetOptions],\n },\n {\n order: 4,\n key: 'politicalExposure',\n label: 'Political Exposure',\n type: 'single_select',\n step: 4,\n isOnboarding: true,\n optional: true,\n options: [\n { value: 'none', label: 'None' },\n { value: 'minimal', label: 'Minimal' },\n { value: 'moderate', label: 'Moderate' },\n { value: 'high', label: 'High' },\n { value: 'very_high', label: 'Very High' },\n ],\n },\n {\n order: 5,\n key: 'comfortWithVisibility',\n label: 'Comfort with Visibility',\n type: 'single_select',\n step: 4,\n isOnboarding: true,\n optional: true,\n options: [\n { value: 'very_comfortable', label: 'Very comfortable' },\n { value: 'somewhat', label: 'Somewhat' },\n { value: 'prefer_behind_scenes', label: 'Prefer behind the scenes' },\n { value: 'not_comfortable', label: 'Not comfortable' },\n ],\n },\n {\n order: 6,\n key: 'socialInfluenceLevel',\n label: 'Social Influence Level',\n type: 'single_select',\n step: 4,\n isOnboarding: true,\n optional: true,\n options: [\n { value: 'very_influential', label: 'Very influential' },\n { value: 'somewhat', label: 'Somewhat' },\n { value: 'average', label: 'Average' },\n { value: 'low', label: 'Low' },\n { value: 'not_sure', label: 'Not sure' },\n ],\n },\n {\n order: 7,\n key: 'pastExperience',\n label: 'Past Experience',\n type: 'single_select',\n step: 4,\n isOnboarding: true,\n optional: true,\n options: [\n { value: 'yes_party_work', label: 'Yes — Party work' },\n { value: 'yes_social_work', label: 'Yes — Social work / NGO' },\n { value: 'yes_student_politics', label: 'Yes — Student politics' },\n { value: 'no_experience', label: 'No experience' },\n { value: 'other', label: 'Other' },\n ],\n },\n {\n order: 8,\n key: 'changesYouWantToBring',\n label: 'Changes You Want to Bring',\n type: 'textarea',\n step: 4,\n isOnboarding: true,\n optional: true,\n maxLength: 1000,\n },\n ],\n};\n"]}
@@ -8,7 +8,7 @@ export type { BaseField, FieldGroup, FieldOption, MultiSelectField, NumberField,
8
8
  export { genderOptions, languageOptions, minorityOptions, profile, religionOptions, reservationOptions, } from './01-profile.js';
9
9
  export { civicEngagementOptions, electionResultOptions, officeElectionLevelOptions, partyAssociationRoleOptions, partyOptions, politicalAssociation, politicalSpectrumOptions, relativesInPoliticsOptions, } from './02-political.js';
10
10
  export { electoralBehaviour, votingIssueOptions } from './03-electoral.js';
11
- export { leadershipAmbitions, leadershipSkillsetOptions } from './04-leadership.js';
11
+ export { desiredPoliticalPositionOptions, leadershipAmbitions, leadershipSkillsetOptions, } from './04-leadership.js';
12
12
  export { mbtiOptions, psychologicalAssessment } from './05-psychological.js';
13
13
  export { education, qualificationOptions } from './06-education.js';
14
14
  export { employment, employmentStatusOptions, incomeRangeOptions, shiftOptions, } from './07-employment.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/profile-fields/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,YAAY,EACV,SAAS,EACT,UAAU,EACV,WAAW,EACX,gBAAgB,EAChB,WAAW,EACX,YAAY,EACZ,WAAW,EACX,SAAS,GACV,MAAM,YAAY,CAAC;AAIpB,OAAO,EACL,aAAa,EACb,eAAe,EACf,eAAe,EACf,OAAO,EACP,eAAe,EACf,kBAAkB,GACnB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,sBAAsB,EACtB,qBAAqB,EACrB,0BAA0B,EAC1B,2BAA2B,EAC3B,YAAY,EACZ,oBAAoB,EACpB,wBAAwB,EACxB,0BAA0B,GAC3B,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAC3E,OAAO,EAAE,mBAAmB,EAAE,yBAAyB,EAAE,MAAM,oBAAoB,CAAC;AACpF,OAAO,EAAE,WAAW,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAC7E,OAAO,EAAE,SAAS,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AACpE,OAAO,EACL,UAAU,EACV,uBAAuB,EACvB,kBAAkB,EAClB,YAAY,GACb,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,cAAc,EACd,8BAA8B,EAC9B,wBAAwB,EACxB,kBAAkB,GACnB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,WAAW,EACX,iBAAiB,EACjB,eAAe,EACf,mBAAmB,GACpB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,+BAA+B,EAC/B,qBAAqB,EACrB,2BAA2B,EAC3B,SAAS,GACV,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EACL,oBAAoB,EACpB,mBAAmB,EACnB,SAAS,EACT,sBAAsB,GACvB,MAAM,mBAAmB,CAAC;AAgB3B,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAE7C,eAAO,MAAM,cAAc,EAAE,SAAS,UAAU,EAa/C,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/profile-fields/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,YAAY,EACV,SAAS,EACT,UAAU,EACV,WAAW,EACX,gBAAgB,EAChB,WAAW,EACX,YAAY,EACZ,WAAW,EACX,SAAS,GACV,MAAM,YAAY,CAAC;AAIpB,OAAO,EACL,aAAa,EACb,eAAe,EACf,eAAe,EACf,OAAO,EACP,eAAe,EACf,kBAAkB,GACnB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,sBAAsB,EACtB,qBAAqB,EACrB,0BAA0B,EAC1B,2BAA2B,EAC3B,YAAY,EACZ,oBAAoB,EACpB,wBAAwB,EACxB,0BAA0B,GAC3B,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAC3E,OAAO,EACL,+BAA+B,EAC/B,mBAAmB,EACnB,yBAAyB,GAC1B,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,WAAW,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAC7E,OAAO,EAAE,SAAS,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AACpE,OAAO,EACL,UAAU,EACV,uBAAuB,EACvB,kBAAkB,EAClB,YAAY,GACb,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,cAAc,EACd,8BAA8B,EAC9B,wBAAwB,EACxB,kBAAkB,GACnB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,WAAW,EACX,iBAAiB,EACjB,eAAe,EACf,mBAAmB,GACpB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,+BAA+B,EAC/B,qBAAqB,EACrB,2BAA2B,EAC3B,SAAS,GACV,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EACL,oBAAoB,EACpB,mBAAmB,EACnB,SAAS,EACT,sBAAsB,GACvB,MAAM,mBAAmB,CAAC;AAgB3B,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAE7C,eAAO,MAAM,cAAc,EAAE,SAAS,UAAU,EAa/C,CAAC"}
@@ -8,7 +8,7 @@
8
8
  export { genderOptions, languageOptions, minorityOptions, profile, religionOptions, reservationOptions, } from './01-profile.js';
9
9
  export { civicEngagementOptions, electionResultOptions, officeElectionLevelOptions, partyAssociationRoleOptions, partyOptions, politicalAssociation, politicalSpectrumOptions, relativesInPoliticsOptions, } from './02-political.js';
10
10
  export { electoralBehaviour, votingIssueOptions } from './03-electoral.js';
11
- export { leadershipAmbitions, leadershipSkillsetOptions } from './04-leadership.js';
11
+ export { desiredPoliticalPositionOptions, leadershipAmbitions, leadershipSkillsetOptions, } from './04-leadership.js';
12
12
  export { mbtiOptions, psychologicalAssessment } from './05-psychological.js';
13
13
  export { education, qualificationOptions } from './06-education.js';
14
14
  export { employment, employmentStatusOptions, incomeRangeOptions, shiftOptions, } from './07-employment.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/profile-fields/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAaH,+EAA+E;AAE/E,OAAO,EACL,aAAa,EACb,eAAe,EACf,eAAe,EACf,OAAO,EACP,eAAe,EACf,kBAAkB,GACnB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,sBAAsB,EACtB,qBAAqB,EACrB,0BAA0B,EAC1B,2BAA2B,EAC3B,YAAY,EACZ,oBAAoB,EACpB,wBAAwB,EACxB,0BAA0B,GAC3B,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAC3E,OAAO,EAAE,mBAAmB,EAAE,yBAAyB,EAAE,MAAM,oBAAoB,CAAC;AACpF,OAAO,EAAE,WAAW,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAC7E,OAAO,EAAE,SAAS,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AACpE,OAAO,EACL,UAAU,EACV,uBAAuB,EACvB,kBAAkB,EAClB,YAAY,GACb,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,cAAc,EACd,8BAA8B,EAC9B,wBAAwB,EACxB,kBAAkB,GACnB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,WAAW,EACX,iBAAiB,EACjB,eAAe,EACf,mBAAmB,GACpB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,+BAA+B,EAC/B,qBAAqB,EACrB,2BAA2B,EAC3B,SAAS,GACV,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EACL,oBAAoB,EACpB,mBAAmB,EACnB,SAAS,EACT,sBAAsB,GACvB,MAAM,mBAAmB,CAAC;AAE3B,+EAA+E;AAE/E,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAC1C,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAChE,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAG9C,MAAM,CAAC,MAAM,cAAc,GAA0B;IACnD,OAAO;IACP,oBAAoB;IACpB,kBAAkB;IAClB,mBAAmB;IACnB,uBAAuB;IACvB,SAAS;IACT,UAAU;IACV,cAAc;IACd,eAAe;IACf,SAAS;IACT,SAAS;IACT,SAAS;CACV,CAAC","sourcesContent":["/**\n * UDP Profile Fields — barrel export.\n *\n * Mirrors the dating-schema profile-fields pattern.\n * Each file defines a FieldGroup with rich field metadata and options.\n */\n\nexport type {\n BaseField,\n FieldGroup,\n FieldOption,\n MultiSelectField,\n NumberField,\n ProfileField,\n SelectField,\n TextField,\n} from './types.js';\n\n// ── Field groups ────────────────────────────────────────────────────────────\n\nexport {\n genderOptions,\n languageOptions,\n minorityOptions,\n profile,\n religionOptions,\n reservationOptions,\n} from './01-profile.js';\nexport {\n civicEngagementOptions,\n electionResultOptions,\n officeElectionLevelOptions,\n partyAssociationRoleOptions,\n partyOptions,\n politicalAssociation,\n politicalSpectrumOptions,\n relativesInPoliticsOptions,\n} from './02-political.js';\nexport { electoralBehaviour, votingIssueOptions } from './03-electoral.js';\nexport { leadershipAmbitions, leadershipSkillsetOptions } from './04-leadership.js';\nexport { mbtiOptions, psychologicalAssessment } from './05-psychological.js';\nexport { education, qualificationOptions } from './06-education.js';\nexport {\n employment,\n employmentStatusOptions,\n incomeRangeOptions,\n shiftOptions,\n} from './07-employment.js';\nexport {\n neurodiversity,\n neurodiversityConditionOptions,\n sensoryPreferenceOptions,\n supportNeedOptions,\n} from './08-neurodiversity.js';\nexport {\n dietOptions,\n disabilityOptions,\n healthLifestyle,\n substanceUseOptions,\n} from './09-health.js';\nexport {\n casteDiscriminationPlaceOptions,\n lgbtqStatementOptions,\n transgenderStatementOptions,\n worldView,\n} from './10-worldview.js';\nexport { residence } from './11-residence.js';\nexport {\n digitalAccessOptions,\n familyMemberOptions,\n household,\n householdIncomeOptions,\n} from './12-household.js';\n\n// ── All field groups (for building lookup maps) ─────────────────────────────\n\nimport { profile } from './01-profile.js';\nimport { politicalAssociation } from './02-political.js';\nimport { electoralBehaviour } from './03-electoral.js';\nimport { leadershipAmbitions } from './04-leadership.js';\nimport { psychologicalAssessment } from './05-psychological.js';\nimport { education } from './06-education.js';\nimport { employment } from './07-employment.js';\nimport { neurodiversity } from './08-neurodiversity.js';\nimport { healthLifestyle } from './09-health.js';\nimport { worldView } from './10-worldview.js';\nimport { residence } from './11-residence.js';\nimport { household } from './12-household.js';\nimport type { FieldGroup } from './types.js';\n\nexport const allFieldGroups: readonly FieldGroup[] = [\n profile,\n politicalAssociation,\n electoralBehaviour,\n leadershipAmbitions,\n psychologicalAssessment,\n education,\n employment,\n neurodiversity,\n healthLifestyle,\n worldView,\n residence,\n household,\n];\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/profile-fields/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAaH,+EAA+E;AAE/E,OAAO,EACL,aAAa,EACb,eAAe,EACf,eAAe,EACf,OAAO,EACP,eAAe,EACf,kBAAkB,GACnB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,sBAAsB,EACtB,qBAAqB,EACrB,0BAA0B,EAC1B,2BAA2B,EAC3B,YAAY,EACZ,oBAAoB,EACpB,wBAAwB,EACxB,0BAA0B,GAC3B,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAC3E,OAAO,EACL,+BAA+B,EAC/B,mBAAmB,EACnB,yBAAyB,GAC1B,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,WAAW,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAC7E,OAAO,EAAE,SAAS,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AACpE,OAAO,EACL,UAAU,EACV,uBAAuB,EACvB,kBAAkB,EAClB,YAAY,GACb,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,cAAc,EACd,8BAA8B,EAC9B,wBAAwB,EACxB,kBAAkB,GACnB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,WAAW,EACX,iBAAiB,EACjB,eAAe,EACf,mBAAmB,GACpB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,+BAA+B,EAC/B,qBAAqB,EACrB,2BAA2B,EAC3B,SAAS,GACV,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EACL,oBAAoB,EACpB,mBAAmB,EACnB,SAAS,EACT,sBAAsB,GACvB,MAAM,mBAAmB,CAAC;AAE3B,+EAA+E;AAE/E,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAC1C,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAChE,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAG9C,MAAM,CAAC,MAAM,cAAc,GAA0B;IACnD,OAAO;IACP,oBAAoB;IACpB,kBAAkB;IAClB,mBAAmB;IACnB,uBAAuB;IACvB,SAAS;IACT,UAAU;IACV,cAAc;IACd,eAAe;IACf,SAAS;IACT,SAAS;IACT,SAAS;CACV,CAAC","sourcesContent":["/**\n * UDP Profile Fields — barrel export.\n *\n * Mirrors the dating-schema profile-fields pattern.\n * Each file defines a FieldGroup with rich field metadata and options.\n */\n\nexport type {\n BaseField,\n FieldGroup,\n FieldOption,\n MultiSelectField,\n NumberField,\n ProfileField,\n SelectField,\n TextField,\n} from './types.js';\n\n// ── Field groups ────────────────────────────────────────────────────────────\n\nexport {\n genderOptions,\n languageOptions,\n minorityOptions,\n profile,\n religionOptions,\n reservationOptions,\n} from './01-profile.js';\nexport {\n civicEngagementOptions,\n electionResultOptions,\n officeElectionLevelOptions,\n partyAssociationRoleOptions,\n partyOptions,\n politicalAssociation,\n politicalSpectrumOptions,\n relativesInPoliticsOptions,\n} from './02-political.js';\nexport { electoralBehaviour, votingIssueOptions } from './03-electoral.js';\nexport {\n desiredPoliticalPositionOptions,\n leadershipAmbitions,\n leadershipSkillsetOptions,\n} from './04-leadership.js';\nexport { mbtiOptions, psychologicalAssessment } from './05-psychological.js';\nexport { education, qualificationOptions } from './06-education.js';\nexport {\n employment,\n employmentStatusOptions,\n incomeRangeOptions,\n shiftOptions,\n} from './07-employment.js';\nexport {\n neurodiversity,\n neurodiversityConditionOptions,\n sensoryPreferenceOptions,\n supportNeedOptions,\n} from './08-neurodiversity.js';\nexport {\n dietOptions,\n disabilityOptions,\n healthLifestyle,\n substanceUseOptions,\n} from './09-health.js';\nexport {\n casteDiscriminationPlaceOptions,\n lgbtqStatementOptions,\n transgenderStatementOptions,\n worldView,\n} from './10-worldview.js';\nexport { residence } from './11-residence.js';\nexport {\n digitalAccessOptions,\n familyMemberOptions,\n household,\n householdIncomeOptions,\n} from './12-household.js';\n\n// ── All field groups (for building lookup maps) ─────────────────────────────\n\nimport { profile } from './01-profile.js';\nimport { politicalAssociation } from './02-political.js';\nimport { electoralBehaviour } from './03-electoral.js';\nimport { leadershipAmbitions } from './04-leadership.js';\nimport { psychologicalAssessment } from './05-psychological.js';\nimport { education } from './06-education.js';\nimport { employment } from './07-employment.js';\nimport { neurodiversity } from './08-neurodiversity.js';\nimport { healthLifestyle } from './09-health.js';\nimport { worldView } from './10-worldview.js';\nimport { residence } from './11-residence.js';\nimport { household } from './12-household.js';\nimport type { FieldGroup } from './types.js';\n\nexport const allFieldGroups: readonly FieldGroup[] = [\n profile,\n politicalAssociation,\n electoralBehaviour,\n leadershipAmbitions,\n psychologicalAssessment,\n education,\n employment,\n neurodiversity,\n healthLifestyle,\n worldView,\n residence,\n household,\n];\n"]}
@@ -18,13 +18,39 @@ export declare const step04LeadershipSchema: z.ZodObject<{
18
18
  desiredPoliticalPosition: z.ZodOptional<z.ZodEnum<{
19
19
  other: "other";
20
20
  none: "none";
21
+ ward_member: "ward_member";
21
22
  sarpanch: "sarpanch";
23
+ panchayat_samiti_member: "panchayat_samiti_member";
22
24
  block_pramukh: "block_pramukh";
23
- zila_panchayat: "zila_panchayat";
24
- mla: "mla";
25
- mp: "mp";
25
+ zila_panchayat_member: "zila_panchayat_member";
26
+ zila_pramukh: "zila_pramukh";
26
27
  municipal_councillor: "municipal_councillor";
28
+ deputy_mayor: "deputy_mayor";
27
29
  mayor: "mayor";
30
+ municipal_chairperson: "municipal_chairperson";
31
+ mla: "mla";
32
+ mlc: "mlc";
33
+ state_minister: "state_minister";
34
+ deputy_cm: "deputy_cm";
35
+ chief_minister: "chief_minister";
36
+ state_speaker: "state_speaker";
37
+ state_opposition_leader: "state_opposition_leader";
38
+ mp_lok_sabha: "mp_lok_sabha";
39
+ mp_rajya_sabha: "mp_rajya_sabha";
40
+ union_minister: "union_minister";
41
+ deputy_pm: "deputy_pm";
42
+ prime_minister: "prime_minister";
43
+ lok_sabha_speaker: "lok_sabha_speaker";
44
+ opposition_leader: "opposition_leader";
45
+ booth_worker: "booth_worker";
46
+ mandal_president: "mandal_president";
47
+ district_party_president: "district_party_president";
48
+ state_party_president: "state_party_president";
49
+ national_party_president: "national_party_president";
50
+ party_spokesperson: "party_spokesperson";
51
+ governor: "governor";
52
+ vice_president: "vice_president";
53
+ president: "president";
28
54
  }>>;
29
55
  leadershipSkillset: z.ZodOptional<z.ZodArray<z.ZodString>>;
30
56
  politicalExposure: z.ZodOptional<z.ZodEnum<{
@@ -1 +1 @@
1
- {"version":3,"file":"step-04.schema.d.ts","sourceRoot":"","sources":["../src/step-04.schema.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBA0CjC,CAAC;AAIH,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC"}
1
+ {"version":3,"file":"step-04.schema.d.ts","sourceRoot":"","sources":["../src/step-04.schema.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBA2EjC,CAAC;AAIH,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC"}
@@ -12,16 +12,49 @@ import { z } from 'zod';
12
12
  export const step04LeadershipSchema = z.object({
13
13
  /** Willingness to participate in the revolution of change */
14
14
  participateInRevolution: z.enum(['yes_definitely', 'maybe', 'not_sure', 'no']).optional(),
15
- /** Desired political position */
15
+ /** Desired political position — exhaustive enum covering all levels of Indian political office. */
16
16
  desiredPoliticalPosition: z
17
17
  .enum([
18
+ // Rural local body
19
+ 'ward_member',
18
20
  'sarpanch',
21
+ 'panchayat_samiti_member',
19
22
  'block_pramukh',
20
- 'zila_panchayat',
21
- 'mla',
22
- 'mp',
23
+ 'zila_panchayat_member',
24
+ 'zila_pramukh',
25
+ // Urban local body
23
26
  'municipal_councillor',
27
+ 'deputy_mayor',
24
28
  'mayor',
29
+ 'municipal_chairperson',
30
+ // State
31
+ 'mla',
32
+ 'mlc',
33
+ 'state_minister',
34
+ 'deputy_cm',
35
+ 'chief_minister',
36
+ 'state_speaker',
37
+ 'state_opposition_leader',
38
+ // National
39
+ 'mp_lok_sabha',
40
+ 'mp_rajya_sabha',
41
+ 'union_minister',
42
+ 'deputy_pm',
43
+ 'prime_minister',
44
+ 'lok_sabha_speaker',
45
+ 'opposition_leader',
46
+ // Party roles
47
+ 'booth_worker',
48
+ 'mandal_president',
49
+ 'district_party_president',
50
+ 'state_party_president',
51
+ 'national_party_president',
52
+ 'party_spokesperson',
53
+ // Constitutional
54
+ 'governor',
55
+ 'vice_president',
56
+ 'president',
57
+ // Meta
25
58
  'none',
26
59
  'other',
27
60
  ])
@@ -1 +1 @@
1
- {"version":3,"file":"step-04.schema.js","sourceRoot":"","sources":["../src/step-04.schema.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,+EAA+E;AAE/E,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC7C,6DAA6D;IAC7D,uBAAuB,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,gBAAgB,EAAE,OAAO,EAAE,UAAU,EAAE,IAAI,CAAC,CAAC,CAAC,QAAQ,EAAE;IAEzF,iCAAiC;IACjC,wBAAwB,EAAE,CAAC;SACxB,IAAI,CAAC;QACJ,UAAU;QACV,eAAe;QACf,gBAAgB;QAChB,KAAK;QACL,IAAI;QACJ,sBAAsB;QACtB,OAAO;QACP,MAAM;QACN,OAAO;KACR,CAAC;SACD,QAAQ,EAAE;IAEb,sDAAsD;IACtD,kBAAkB,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,QAAQ,EAAE;IAEzD,kCAAkC;IAClC,iBAAiB,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC,QAAQ,EAAE;IAE1F,qCAAqC;IACrC,qBAAqB,EAAE,CAAC;SACrB,IAAI,CAAC,CAAC,kBAAkB,EAAE,UAAU,EAAE,sBAAsB,EAAE,iBAAiB,CAAC,CAAC;SACjF,QAAQ,EAAE;IAEb,6BAA6B;IAC7B,oBAAoB,EAAE,CAAC;SACpB,IAAI,CAAC,CAAC,kBAAkB,EAAE,UAAU,EAAE,SAAS,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC;SACpE,QAAQ,EAAE;IAEb,0CAA0C;IAC1C,cAAc,EAAE,CAAC;SACd,IAAI,CAAC,CAAC,gBAAgB,EAAE,iBAAiB,EAAE,sBAAsB,EAAE,eAAe,EAAE,OAAO,CAAC,CAAC;SAC7F,QAAQ,EAAE;IAEb,4CAA4C;IAC5C,qBAAqB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE;CAC9D,CAAC,CAAC","sourcesContent":["/**\n * Step 04 — Leadership & Ambitions\n *\n * Fields: participateInRevolution, desiredPoliticalPosition, leadershipSkillset,\n * politicalExposure, comfortWithVisibility, socialInfluenceLevel,\n * pastExperience, changesYouWantToBring\n *\n * @module udp-schema/step-04\n */\n\nimport { z } from 'zod';\n\n// ─── Main Step 04 Schema ────────────────────────────────────────────────────\n\nexport const step04LeadershipSchema = z.object({\n /** Willingness to participate in the revolution of change */\n participateInRevolution: z.enum(['yes_definitely', 'maybe', 'not_sure', 'no']).optional(),\n\n /** Desired political position */\n desiredPoliticalPosition: z\n .enum([\n 'sarpanch',\n 'block_pramukh',\n 'zila_panchayat',\n 'mla',\n 'mp',\n 'municipal_councillor',\n 'mayor',\n 'none',\n 'other',\n ])\n .optional(),\n\n /** Leadership skillset (multi-select string array) */\n leadershipSkillset: z.array(z.string().trim()).optional(),\n\n /** Level of political exposure */\n politicalExposure: z.enum(['none', 'minimal', 'moderate', 'high', 'very_high']).optional(),\n\n /** Comfort with public visibility */\n comfortWithVisibility: z\n .enum(['very_comfortable', 'somewhat', 'prefer_behind_scenes', 'not_comfortable'])\n .optional(),\n\n /** Social influence level */\n socialInfluenceLevel: z\n .enum(['very_influential', 'somewhat', 'average', 'low', 'not_sure'])\n .optional(),\n\n /** Past political or social experience */\n pastExperience: z\n .enum(['yes_party_work', 'yes_social_work', 'yes_student_politics', 'no_experience', 'other'])\n .optional(),\n\n /** Changes you want to bring — free text */\n changesYouWantToBring: z.string().trim().max(1000).optional(),\n});\n\n// ─── Inferred types ─────────────────────────────────────────────────────────\n\nexport type Step04LeadershipInput = z.infer<typeof step04LeadershipSchema>;\n"]}
1
+ {"version":3,"file":"step-04.schema.js","sourceRoot":"","sources":["../src/step-04.schema.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,+EAA+E;AAE/E,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC7C,6DAA6D;IAC7D,uBAAuB,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,gBAAgB,EAAE,OAAO,EAAE,UAAU,EAAE,IAAI,CAAC,CAAC,CAAC,QAAQ,EAAE;IAEzF,mGAAmG;IACnG,wBAAwB,EAAE,CAAC;SACxB,IAAI,CAAC;QACJ,mBAAmB;QACnB,aAAa;QACb,UAAU;QACV,yBAAyB;QACzB,eAAe;QACf,uBAAuB;QACvB,cAAc;QACd,mBAAmB;QACnB,sBAAsB;QACtB,cAAc;QACd,OAAO;QACP,uBAAuB;QACvB,QAAQ;QACR,KAAK;QACL,KAAK;QACL,gBAAgB;QAChB,WAAW;QACX,gBAAgB;QAChB,eAAe;QACf,yBAAyB;QACzB,WAAW;QACX,cAAc;QACd,gBAAgB;QAChB,gBAAgB;QAChB,WAAW;QACX,gBAAgB;QAChB,mBAAmB;QACnB,mBAAmB;QACnB,cAAc;QACd,cAAc;QACd,kBAAkB;QAClB,0BAA0B;QAC1B,uBAAuB;QACvB,0BAA0B;QAC1B,oBAAoB;QACpB,iBAAiB;QACjB,UAAU;QACV,gBAAgB;QAChB,WAAW;QACX,OAAO;QACP,MAAM;QACN,OAAO;KACR,CAAC;SACD,QAAQ,EAAE;IAEb,sDAAsD;IACtD,kBAAkB,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,QAAQ,EAAE;IAEzD,kCAAkC;IAClC,iBAAiB,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC,QAAQ,EAAE;IAE1F,qCAAqC;IACrC,qBAAqB,EAAE,CAAC;SACrB,IAAI,CAAC,CAAC,kBAAkB,EAAE,UAAU,EAAE,sBAAsB,EAAE,iBAAiB,CAAC,CAAC;SACjF,QAAQ,EAAE;IAEb,6BAA6B;IAC7B,oBAAoB,EAAE,CAAC;SACpB,IAAI,CAAC,CAAC,kBAAkB,EAAE,UAAU,EAAE,SAAS,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC;SACpE,QAAQ,EAAE;IAEb,0CAA0C;IAC1C,cAAc,EAAE,CAAC;SACd,IAAI,CAAC,CAAC,gBAAgB,EAAE,iBAAiB,EAAE,sBAAsB,EAAE,eAAe,EAAE,OAAO,CAAC,CAAC;SAC7F,QAAQ,EAAE;IAEb,4CAA4C;IAC5C,qBAAqB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE;CAC9D,CAAC,CAAC","sourcesContent":["/**\n * Step 04 — Leadership & Ambitions\n *\n * Fields: participateInRevolution, desiredPoliticalPosition, leadershipSkillset,\n * politicalExposure, comfortWithVisibility, socialInfluenceLevel,\n * pastExperience, changesYouWantToBring\n *\n * @module udp-schema/step-04\n */\n\nimport { z } from 'zod';\n\n// ─── Main Step 04 Schema ────────────────────────────────────────────────────\n\nexport const step04LeadershipSchema = z.object({\n /** Willingness to participate in the revolution of change */\n participateInRevolution: z.enum(['yes_definitely', 'maybe', 'not_sure', 'no']).optional(),\n\n /** Desired political position — exhaustive enum covering all levels of Indian political office. */\n desiredPoliticalPosition: z\n .enum([\n // Rural local body\n 'ward_member',\n 'sarpanch',\n 'panchayat_samiti_member',\n 'block_pramukh',\n 'zila_panchayat_member',\n 'zila_pramukh',\n // Urban local body\n 'municipal_councillor',\n 'deputy_mayor',\n 'mayor',\n 'municipal_chairperson',\n // State\n 'mla',\n 'mlc',\n 'state_minister',\n 'deputy_cm',\n 'chief_minister',\n 'state_speaker',\n 'state_opposition_leader',\n // National\n 'mp_lok_sabha',\n 'mp_rajya_sabha',\n 'union_minister',\n 'deputy_pm',\n 'prime_minister',\n 'lok_sabha_speaker',\n 'opposition_leader',\n // Party roles\n 'booth_worker',\n 'mandal_president',\n 'district_party_president',\n 'state_party_president',\n 'national_party_president',\n 'party_spokesperson',\n // Constitutional\n 'governor',\n 'vice_president',\n 'president',\n // Meta\n 'none',\n 'other',\n ])\n .optional(),\n\n /** Leadership skillset (multi-select string array) */\n leadershipSkillset: z.array(z.string().trim()).optional(),\n\n /** Level of political exposure */\n politicalExposure: z.enum(['none', 'minimal', 'moderate', 'high', 'very_high']).optional(),\n\n /** Comfort with public visibility */\n comfortWithVisibility: z\n .enum(['very_comfortable', 'somewhat', 'prefer_behind_scenes', 'not_comfortable'])\n .optional(),\n\n /** Social influence level */\n socialInfluenceLevel: z\n .enum(['very_influential', 'somewhat', 'average', 'low', 'not_sure'])\n .optional(),\n\n /** Past political or social experience */\n pastExperience: z\n .enum(['yes_party_work', 'yes_social_work', 'yes_student_politics', 'no_experience', 'other'])\n .optional(),\n\n /** Changes you want to bring — free text */\n changesYouWantToBring: z.string().trim().max(1000).optional(),\n});\n\n// ─── Inferred types ─────────────────────────────────────────────────────────\n\nexport type Step04LeadershipInput = z.infer<typeof step04LeadershipSchema>;\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "udp-schema",
3
- "version": "2.10.0",
3
+ "version": "2.12.0",
4
4
  "description": "Shared Zod schemas for User Detailed Profile (frontend + backend).",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",