udp-schema 2.13.0 → 2.15.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, boardOptions, casteDiscriminationPlaceOptions, civicEngagementOptions, degreeNameOptions, 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, neurodiverseIdentityOptions, neurodiversity, neurodiversityConditionOptions, officeElectionLevelOptions, type ProfileField, partyAssociationRoleOptions, partyOptions, politicalAssociation, politicalSpectrumOptions, profile, psychologicalAssessment, qualificationOptions, relativesInPoliticsOptions, streamOptions, subjectOptions, religionOptions, reservationOptions, residence, type SelectField, sensoryProfileOptions, shiftOptions, substanceUseOptions, supportAccommodationOptions, ageOfRealizationOptions, cognitiveStrengthOptions, communicationPreferenceOptions, executiveFunctionChallengeOptions, impactOnLifeOptions, learningStyleOptions, maskingBurnoutOptions, type TextField, transgenderStatementOptions, votingIssueOptions, worldView, } from './profile-fields/index.js';
22
+ export { ageOfRealizationOptions, allFieldGroups, type BaseField, boardOptions, casteDiscriminationPlaceOptions, civicEngagementOptions, cognitiveStrengthOptions, communicationPreferenceOptions, DEGREE_VALUES_BY_LEVEL, degreeNameOptions, desiredPoliticalPositionOptions, dietOptions, digitalAccessOptions, disabilityOptions, education, electionResultOptions, electoralBehaviour, employment, employmentStatusOptions, executiveFunctionChallengeOptions, type FieldGroup, type FieldOption, familyMemberOptions, genderOptions, healthLifestyle, household, householdIncomeOptions, impactOnLifeOptions, incomeRangeOptions, languageOptions, leadershipAmbitions, leadershipSkillsetOptions, learningStyleOptions, lgbtqStatementOptions, type MultiSelectField, maskingBurnoutOptions, mbtiOptions, minorityOptions, type NumberField, neurodiverseIdentityOptions, neurodiversity, neurodiversityConditionOptions, officeElectionLevelOptions, type ProfileField, partyAssociationRoleOptions, partyOptions, politicalAssociation, politicalSpectrumOptions, profile, psychologicalAssessment, qualificationOptions, relativesInPoliticsOptions, religionOptions, reservationOptions, residence, type SelectField, sensoryProfileOptions, shiftOptions, streamOptions, subjectOptions, substanceUseOptions, supportAccommodationOptions, 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":"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"}
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,EACL,uBAAuB,EAEvB,cAAc,EAEd,KAAK,SAAS,EACd,YAAY,EACZ,+BAA+B,EAC/B,sBAAsB,EACtB,wBAAwB,EACxB,8BAA8B,EAC9B,sBAAsB,EACtB,iBAAiB,EACjB,+BAA+B,EAC/B,WAAW,EACX,oBAAoB,EACpB,iBAAiB,EACjB,SAAS,EACT,qBAAqB,EACrB,kBAAkB,EAClB,UAAU,EACV,uBAAuB,EACvB,iCAAiC,EACjC,KAAK,UAAU,EACf,KAAK,WAAW,EAChB,mBAAmB,EAEnB,aAAa,EACb,eAAe,EACf,SAAS,EACT,sBAAsB,EACtB,mBAAmB,EACnB,kBAAkB,EAClB,eAAe,EACf,mBAAmB,EACnB,yBAAyB,EACzB,oBAAoB,EACpB,qBAAqB,EACrB,KAAK,gBAAgB,EACrB,qBAAqB,EACrB,WAAW,EACX,eAAe,EACf,KAAK,WAAW,EAChB,2BAA2B,EAC3B,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,qBAAqB,EACrB,YAAY,EACZ,aAAa,EACb,cAAc,EACd,mBAAmB,EACnB,2BAA2B,EAC3B,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"}
package/dist/index.js CHANGED
@@ -23,11 +23,11 @@ export { canProceed } from './validation.js';
23
23
  // ─── Shared Helpers ─────────────────────────────────────────────────────────
24
24
  export { calcAge, isFieldVisible, labelFor, labelsFor } from './helpers.js';
25
25
  // ─── Profile Fields (rich metadata — like dating-schema) ────────────────────
26
- export {
26
+ export { ageOfRealizationOptions,
27
27
  // Field groups
28
- allFieldGroups, boardOptions, casteDiscriminationPlaceOptions, civicEngagementOptions, degreeNameOptions, desiredPoliticalPositionOptions, dietOptions, digitalAccessOptions, disabilityOptions, education, electionResultOptions, electoralBehaviour, employment, employmentStatusOptions, familyMemberOptions,
28
+ allFieldGroups, boardOptions, casteDiscriminationPlaceOptions, civicEngagementOptions, cognitiveStrengthOptions, communicationPreferenceOptions, DEGREE_VALUES_BY_LEVEL, degreeNameOptions, desiredPoliticalPositionOptions, dietOptions, digitalAccessOptions, disabilityOptions, education, electionResultOptions, electoralBehaviour, employment, employmentStatusOptions, executiveFunctionChallengeOptions, familyMemberOptions,
29
29
  // Option arrays (with labels + descriptions)
30
- genderOptions, healthLifestyle, household, householdIncomeOptions, incomeRangeOptions, languageOptions, leadershipAmbitions, leadershipSkillsetOptions, lgbtqStatementOptions, mbtiOptions, minorityOptions, neurodiverseIdentityOptions, neurodiversity, neurodiversityConditionOptions, officeElectionLevelOptions, partyAssociationRoleOptions, partyOptions, politicalAssociation, politicalSpectrumOptions, profile, psychologicalAssessment, qualificationOptions, relativesInPoliticsOptions, streamOptions, subjectOptions, religionOptions, reservationOptions, residence, sensoryProfileOptions, shiftOptions, substanceUseOptions, supportAccommodationOptions, ageOfRealizationOptions, cognitiveStrengthOptions, communicationPreferenceOptions, executiveFunctionChallengeOptions, impactOnLifeOptions, learningStyleOptions, maskingBurnoutOptions, transgenderStatementOptions, votingIssueOptions, worldView, } from './profile-fields/index.js';
30
+ genderOptions, healthLifestyle, household, householdIncomeOptions, impactOnLifeOptions, incomeRangeOptions, languageOptions, leadershipAmbitions, leadershipSkillsetOptions, learningStyleOptions, lgbtqStatementOptions, maskingBurnoutOptions, mbtiOptions, minorityOptions, neurodiverseIdentityOptions, neurodiversity, neurodiversityConditionOptions, officeElectionLevelOptions, partyAssociationRoleOptions, partyOptions, politicalAssociation, politicalSpectrumOptions, profile, psychologicalAssessment, qualificationOptions, relativesInPoliticsOptions, religionOptions, reservationOptions, residence, sensoryProfileOptions, shiftOptions, streamOptions, subjectOptions, substanceUseOptions, supportAccommodationOptions, transgenderStatementOptions, votingIssueOptions, worldView, } from './profile-fields/index.js';
31
31
  // ─── Field Helpers (like dating-schema) ─────────────────────────────────────
32
32
  export { getFieldMeta, getFieldOptions, getImmutableFields, getStepSchema, } from './field-helpers.js';
33
33
  // ─── Onboarding Configuration ───────────────────────────────────────────────
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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","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 boardOptions,\n casteDiscriminationPlaceOptions,\n civicEngagementOptions,\n degreeNameOptions,\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 neurodiverseIdentityOptions,\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 streamOptions,\n subjectOptions,\n religionOptions,\n reservationOptions,\n residence,\n type SelectField,\n sensoryProfileOptions,\n shiftOptions,\n substanceUseOptions,\n supportAccommodationOptions,\n ageOfRealizationOptions,\n cognitiveStrengthOptions,\n communicationPreferenceOptions,\n executiveFunctionChallengeOptions,\n impactOnLifeOptions,\n learningStyleOptions,\n maskingBurnoutOptions,\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":"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","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 ageOfRealizationOptions,\n // Field groups\n allFieldGroups,\n // Types\n type BaseField,\n boardOptions,\n casteDiscriminationPlaceOptions,\n civicEngagementOptions,\n cognitiveStrengthOptions,\n communicationPreferenceOptions,\n DEGREE_VALUES_BY_LEVEL,\n degreeNameOptions,\n desiredPoliticalPositionOptions,\n dietOptions,\n digitalAccessOptions,\n disabilityOptions,\n education,\n electionResultOptions,\n electoralBehaviour,\n employment,\n employmentStatusOptions,\n executiveFunctionChallengeOptions,\n type FieldGroup,\n type FieldOption,\n familyMemberOptions,\n // Option arrays (with labels + descriptions)\n genderOptions,\n healthLifestyle,\n household,\n householdIncomeOptions,\n impactOnLifeOptions,\n incomeRangeOptions,\n languageOptions,\n leadershipAmbitions,\n leadershipSkillsetOptions,\n learningStyleOptions,\n lgbtqStatementOptions,\n type MultiSelectField,\n maskingBurnoutOptions,\n mbtiOptions,\n minorityOptions,\n type NumberField,\n neurodiverseIdentityOptions,\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 sensoryProfileOptions,\n shiftOptions,\n streamOptions,\n subjectOptions,\n substanceUseOptions,\n supportAccommodationOptions,\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"]}
@@ -250,6 +250,36 @@ export declare const languageOptions: readonly [{
250
250
  }, {
251
251
  readonly value: "santali";
252
252
  readonly label: "Santali (ᱥᱟᱱᱛᱟᱲᱤ)";
253
+ }, {
254
+ readonly value: "spanish";
255
+ readonly label: "Spanish (Español)";
256
+ }, {
257
+ readonly value: "french";
258
+ readonly label: "French (Français)";
259
+ }, {
260
+ readonly value: "german";
261
+ readonly label: "German (Deutsch)";
262
+ }, {
263
+ readonly value: "mandarin";
264
+ readonly label: "Mandarin (普通话)";
265
+ }, {
266
+ readonly value: "japanese";
267
+ readonly label: "Japanese (日本語)";
268
+ }, {
269
+ readonly value: "korean";
270
+ readonly label: "Korean (한국어)";
271
+ }, {
272
+ readonly value: "arabic";
273
+ readonly label: "Arabic (العربية)";
274
+ }, {
275
+ readonly value: "portuguese";
276
+ readonly label: "Portuguese (Português)";
277
+ }, {
278
+ readonly value: "russian";
279
+ readonly label: "Russian (Русский)";
280
+ }, {
281
+ readonly value: "italian";
282
+ readonly label: "Italian (Italiano)";
253
283
  }, {
254
284
  readonly value: "other";
255
285
  readonly label: "Other";
@@ -1 +1 @@
1
- {"version":3,"file":"01-profile.d.ts","sourceRoot":"","sources":["../../src/profile-fields/01-profile.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAI7C;;;GAGG;AACH,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA8DhB,CAAC;AAEX,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAmDlB,CAAC;AAEX,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA8BlB,CAAC;AAEX;;;;;;;;;;GAUG;AACH,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAiDrB,CAAC;AAEX;;;;GAIG;AACH,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA4ClB,CAAC;AAIX,eAAO,MAAM,OAAO,EAAE,UAqGrB,CAAC"}
1
+ {"version":3,"file":"01-profile.d.ts","sourceRoot":"","sources":["../../src/profile-fields/01-profile.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAI7C;;;GAGG;AACH,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA8DhB,CAAC;AAEX,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAmDlB,CAAC;AAEX,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAyClB,CAAC;AAEX;;;;;;;;;;GAUG;AACH,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAiDrB,CAAC;AAEX;;;;GAIG;AACH,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA4ClB,CAAC;AAIX,eAAO,MAAM,OAAO,EAAE,UAqGrB,CAAC"}
@@ -153,6 +153,17 @@ export const languageOptions = [
153
153
  { value: 'manipuri', label: 'Manipuri (মৈতৈলোন্)' },
154
154
  { value: 'bodo', label: 'Bodo (बड़ो)' },
155
155
  { value: 'santali', label: 'Santali (ᱥᱟᱱᱛᱟᱲᱤ)' },
156
+ // International languages
157
+ { value: 'spanish', label: 'Spanish (Español)' },
158
+ { value: 'french', label: 'French (Français)' },
159
+ { value: 'german', label: 'German (Deutsch)' },
160
+ { value: 'mandarin', label: 'Mandarin (普通话)' },
161
+ { value: 'japanese', label: 'Japanese (日本語)' },
162
+ { value: 'korean', label: 'Korean (한국어)' },
163
+ { value: 'arabic', label: 'Arabic (العربية)' },
164
+ { value: 'portuguese', label: 'Portuguese (Português)' },
165
+ { value: 'russian', label: 'Russian (Русский)' },
166
+ { value: 'italian', label: 'Italian (Italiano)' },
156
167
  { value: 'other', label: 'Other' },
157
168
  ];
158
169
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"01-profile.js","sourceRoot":"","sources":["../../src/profile-fields/01-profile.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,8EAA8E;AAE9E;;;GAGG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,kBAAkB,EAAE;IAC/D,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,oBAAoB,EAAE;IACrE;QACE,KAAK,EAAE,YAAY;QACnB,KAAK,EAAE,YAAY;QACnB,WAAW,EAAE,qCAAqC;KACnD;IACD;QACE,KAAK,EAAE,WAAW;QAClB,KAAK,EAAE,WAAW;QAClB,WAAW,EAAE,4CAA4C;KAC1D;IACD;QACE,KAAK,EAAE,aAAa;QACpB,KAAK,EAAE,aAAa;QACpB,WAAW,EAAE,4CAA4C;KAC1D;IACD,EAAE,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,kCAAkC,EAAE;IAC/F;QACE,KAAK,EAAE,aAAa;QACpB,KAAK,EAAE,aAAa;QACpB,WAAW,EAAE,uCAAuC;KACrD;IACD,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,sCAAsC,EAAE;IAC3F;QACE,KAAK,EAAE,UAAU;QACjB,KAAK,EAAE,UAAU;QACjB,WAAW,EAAE,uDAAuD;KACrE;IACD;QACE,KAAK,EAAE,WAAW;QAClB,KAAK,EAAE,WAAW;QAClB,WAAW,EAAE,qDAAqD;KACnE;IACD;QACE,KAAK,EAAE,aAAa;QACpB,KAAK,EAAE,aAAa;QACpB,WAAW,EAAE,4CAA4C;KAC1D;IACD;QACE,KAAK,EAAE,UAAU;QACjB,KAAK,EAAE,UAAU;QACjB,WAAW,EAAE,kEAAkE;KAChF;IACD;QACE,KAAK,EAAE,sBAAsB;QAC7B,KAAK,EAAE,uBAAuB;QAC9B,WAAW,EAAE,yDAAyD;KACvE;IACD;QACE,KAAK,EAAE,YAAY;QACnB,KAAK,EAAE,YAAY;QACnB,WAAW,EAAE,mDAAmD;KACjE;IACD;QACE,KAAK,EAAE,OAAO;QACd,KAAK,EAAE,OAAO;QACd,WAAW,EAAE,iEAAiE;KAC/E;IACD,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,kCAAkC,EAAE;IACnF,EAAE,KAAK,EAAE,mBAAmB,EAAE,KAAK,EAAE,mBAAmB,EAAE,WAAW,EAAE,mBAAmB,EAAE;CACpF,CAAC;AAEX,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,4BAA4B,EAAE;IAC7E,EAAE,KAAK,EAAE,cAAc,EAAE,KAAK,EAAE,gBAAgB,EAAE,WAAW,EAAE,yBAAyB,EAAE;IAC1F,EAAE,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,eAAe,EAAE,WAAW,EAAE,gCAAgC,EAAE;IAC/F,EAAE,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,eAAe,EAAE,WAAW,EAAE,4BAA4B,EAAE;IAC3F,EAAE,KAAK,EAAE,cAAc,EAAE,KAAK,EAAE,gBAAgB,EAAE,WAAW,EAAE,+BAA+B,EAAE;IAChG;QACE,KAAK,EAAE,oBAAoB;QAC3B,KAAK,EAAE,sBAAsB;QAC7B,WAAW,EAAE,0BAA0B;KACxC;IACD;QACE,KAAK,EAAE,sBAAsB;QAC7B,KAAK,EAAE,wBAAwB;QAC/B,WAAW,EAAE,uCAAuC;KACrD;IACD;QACE,KAAK,EAAE,iBAAiB;QACxB,KAAK,EAAE,mBAAmB;QAC1B,WAAW,EAAE,uCAAuC;KACrD;IACD,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,uBAAuB,EAAE;IACtE,EAAE,KAAK,EAAE,eAAe,EAAE,KAAK,EAAE,iBAAiB,EAAE,WAAW,EAAE,yBAAyB,EAAE;IAC5F;QACE,KAAK,EAAE,iBAAiB;QACxB,KAAK,EAAE,mBAAmB;QAC1B,WAAW,EAAE,2BAA2B;KACzC;IACD,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,qCAAqC,EAAE;IAC5F;QACE,KAAK,EAAE,mBAAmB;QAC1B,KAAK,EAAE,qBAAqB;QAC5B,WAAW,EAAE,uBAAuB;KACrC;IACD,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,2BAA2B,EAAE;IAC9E,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,qCAAqC,EAAE;IACvF;QACE,KAAK,EAAE,WAAW;QAClB,KAAK,EAAE,6BAA6B;QACpC,WAAW,EAAE,6BAA6B;KAC3C;IACD,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,sBAAsB,EAAE;IAC3E,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,8BAA8B,EAAE;IACrF,EAAE,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,sBAAsB,EAAE;IACnF;QACE,KAAK,EAAE,gBAAgB;QACvB,KAAK,EAAE,8BAA8B;QACrC,WAAW,EAAE,wBAAwB;KACtC;IACD,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,0BAA0B,EAAE;IAC3E,EAAE,KAAK,EAAE,mBAAmB,EAAE,KAAK,EAAE,mBAAmB,EAAE;CAClD,CAAC;AAEX,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,gBAAgB,EAAE;IAC3C,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE;IACtC,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,iBAAiB,EAAE;IAC9C,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,iBAAiB,EAAE;IAC7C,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,iBAAiB,EAAE;IAC9C,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,eAAe,EAAE;IAC1C,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE;IACvC,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,oBAAoB,EAAE;IAClD,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,iBAAiB,EAAE;IAC9C,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,cAAc,EAAE;IACxC,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,oBAAoB,EAAE;IACnD,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,kBAAkB,EAAE;IAC/C,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,oBAAoB,EAAE;IAClD,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,mBAAmB,EAAE;IACjD,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,oBAAoB,EAAE;IAClD,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,wBAAwB,EAAE;IACxD,EAAE,KAAK,EAAE,eAAe,EAAE,KAAK,EAAE,4BAA4B,EAAE;IAC/D,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,qBAAqB,EAAE;IACnD,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE;IACvC,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,sBAAsB,EAAE;IACpD,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,eAAe,EAAE;IAC3C,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,kBAAkB,EAAE;IAChD,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,iBAAiB,EAAE;IAC7C,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,kBAAkB,EAAE;IAC/C,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,eAAe,EAAE;IAC1C,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,qBAAqB,EAAE;IACnD,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE;IACvC,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,mBAAmB,EAAE;IAChD,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE;CAC1B,CAAC;AAEX;;;;;;;;;;GAUG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG;IAChC;QACE,KAAK,EAAE,IAAI;QACX,KAAK,EAAE,sBAAsB;QAC7B,WAAW,EAAE,oDAAoD;KAClE;IACD;QACE,KAAK,EAAE,IAAI;QACX,KAAK,EAAE,sBAAsB;QAC7B,WAAW,EAAE,oDAAoD;KAClE;IACD;QACE,KAAK,EAAE,SAAS;QAChB,KAAK,EAAE,wBAAwB;QAC/B,WAAW,EAAE,gDAAgD;KAC9D;IACD;QACE,KAAK,EAAE,QAAQ;QACf,KAAK,EAAE,oBAAoB;QAC3B,WAAW,EAAE,+DAA+D;KAC7E;IACD;QACE,KAAK,EAAE,KAAK;QACZ,KAAK,EAAE,2BAA2B;QAClC,WAAW,EAAE,qDAAqD;KACnE;IACD;QACE,KAAK,EAAE,MAAM;QACb,KAAK,EAAE,gDAAgD;QACvD,WAAW,EAAE,kDAAkD;KAChE;IACD;QACE,KAAK,EAAE,KAAK;QACZ,KAAK,EAAE,8BAA8B;QACrC,WAAW,EAAE,0CAA0C;KACxD;IACD;QACE,KAAK,EAAE,QAAQ;QACf,KAAK,EAAE,+CAA+C;QACtD,WAAW,EAAE,mDAAmD;KACjE;IACD;QACE,KAAK,EAAE,KAAK;QACZ,KAAK,EAAE,mCAAmC;QAC1C,WAAW,EAAE,6DAA6D;KAC3E;IACD,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,sBAAsB,EAAE,WAAW,EAAE,yBAAyB,EAAE;IAC3F,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,0BAA0B,EAAE;IACpF,EAAE,KAAK,EAAE,mBAAmB,EAAE,KAAK,EAAE,mBAAmB,EAAE,WAAW,EAAE,mBAAmB,EAAE;CACpF,CAAC;AAEX;;;;GAIG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,WAAW,EAAE,0BAA0B,EAAE;IACrE;QACE,KAAK,EAAE,QAAQ;QACf,KAAK,EAAE,6BAA6B;QACpC,WAAW,EAAE,uCAAuC;KACrD;IACD;QACE,KAAK,EAAE,WAAW;QAClB,KAAK,EAAE,gCAAgC;QACvC,WAAW,EAAE,uCAAuC;KACrD;IACD;QACE,KAAK,EAAE,MAAM;QACb,KAAK,EAAE,2BAA2B;QAClC,WAAW,EAAE,uCAAuC;KACrD;IACD;QACE,KAAK,EAAE,UAAU;QACjB,KAAK,EAAE,+BAA+B;QACtC,WAAW,EAAE,uCAAuC;KACrD;IACD;QACE,KAAK,EAAE,MAAM;QACb,KAAK,EAAE,2BAA2B;QAClC,WAAW,EAAE,8CAA8C;KAC5D;IACD;QACE,KAAK,EAAE,OAAO;QACd,KAAK,EAAE,0CAA0C;QACjD,WAAW,EAAE,uCAAuC;KACrD;IACD;QACE,KAAK,EAAE,YAAY;QACnB,KAAK,EAAE,qBAAqB;QAC5B,WAAW,EAAE,0DAA0D;KACxE;IACD;QACE,KAAK,EAAE,MAAM;QACb,KAAK,EAAE,wCAAwC;QAC/C,WAAW,EAAE,2DAA2D;KACzE;IACD,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,iCAAiC,EAAE;IACxF,EAAE,KAAK,EAAE,mBAAmB,EAAE,KAAK,EAAE,mBAAmB,EAAE,WAAW,EAAE,mBAAmB,EAAE;CACpF,CAAC;AAEX,+EAA+E;AAE/E,MAAM,CAAC,MAAM,OAAO,GAAe;IACjC,GAAG,EAAE,SAAS;IACd,KAAK,EAAE,SAAS;IAChB,WAAW,EAAE,mFAAmF;IAChG,IAAI,EAAE,CAAC;IACP,MAAM,EAAE;QACN;YACE,KAAK,EAAE,CAAC;YACR,GAAG,EAAE,UAAU;YACf,KAAK,EAAE,WAAW;YAClB,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,CAAC;YACP,YAAY,EAAE,IAAI;YAClB,WAAW,EAAE,8DAA8D;SAC5E;QACD;YACE,KAAK,EAAE,CAAC;YACR,GAAG,EAAE,QAAQ;YACb,KAAK,EAAE,QAAQ;YACf,IAAI,EAAE,eAAe;YACrB,IAAI,EAAE,CAAC;YACP,YAAY,EAAE,IAAI;YAClB,OAAO,EAAE,CAAC,GAAG,aAAa,CAAC;SAC5B;QACD;YACE,KAAK,EAAE,CAAC;YACR,GAAG,EAAE,aAAa;YAClB,KAAK,EAAE,eAAe;YACtB,IAAI,EAAE,MAAM;YACZ,IAAI,EAAE,CAAC;YACP,YAAY,EAAE,IAAI;SACnB;QACD;YACE,KAAK,EAAE,CAAC;YACR,GAAG,EAAE,gBAAgB;YACrB,KAAK,EAAE,iBAAiB;YACxB,IAAI,EAAE,MAAM;YACZ,IAAI,EAAE,CAAC;YACP,YAAY,EAAE,IAAI;YAClB,QAAQ,EAAE,IAAI;YACd,WAAW,EAAE,sBAAsB;SACpC;QACD;YACE,KAAK,EAAE,CAAC;YACR,GAAG,EAAE,iBAAiB;YACtB,KAAK,EAAE,kBAAkB;YACzB,IAAI,EAAE,eAAe;YACrB,IAAI,EAAE,CAAC;YACP,YAAY,EAAE,IAAI;YAClB,OAAO,EAAE,CAAC,GAAG,eAAe,CAAC;SAC9B;QACD;YACE,KAAK,EAAE,CAAC;YACR,GAAG,EAAE,oBAAoB;YACzB,KAAK,EAAE,qBAAqB;YAC5B,IAAI,EAAE,cAAc;YACpB,IAAI,EAAE,CAAC;YACP,YAAY,EAAE,IAAI;YAClB,QAAQ,EAAE,IAAI;YACd,OAAO,EAAE,CAAC,GAAG,eAAe,CAAC;YAC7B,SAAS,EAAE,EAAE;SACd;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,OAAO,EAAE,CAAC,GAAG,eAAe,CAAC;SAC9B;QACD;YACE,KAAK,EAAE,EAAE;YACT,GAAG,EAAE,kBAAkB;YACvB,KAAK,EAAE,mBAAmB;YAC1B,IAAI,EAAE,eAAe;YACrB,IAAI,EAAE,CAAC;YACP,YAAY,EAAE,IAAI;YAClB,QAAQ,EAAE,IAAI;YACd,OAAO,EAAE,CAAC,GAAG,eAAe,CAAC;SAC9B;QACD;YACE,KAAK,EAAE,EAAE;YACT,GAAG,EAAE,mBAAmB;YACxB,KAAK,EAAE,sBAAsB;YAC7B,IAAI,EAAE,eAAe;YACrB,IAAI,EAAE,CAAC;YACP,YAAY,EAAE,IAAI;YAClB,OAAO,EAAE,CAAC,GAAG,kBAAkB,CAAC;YAChC,SAAS,EAAE,IAAI;SAChB;QACD;YACE,KAAK,EAAE,EAAE;YACT,GAAG,EAAE,gBAAgB;YACrB,KAAK,EAAE,iBAAiB;YACxB,IAAI,EAAE,eAAe;YACrB,IAAI,EAAE,CAAC;YACP,YAAY,EAAE,IAAI;YAClB,OAAO,EAAE,CAAC,GAAG,eAAe,CAAC;SAC9B;KACF;CACF,CAAC","sourcesContent":["/**\n * Step 01 — Profile fields.\n *\n * Rich field definitions with options and descriptions,\n * matching the dating-schema profile-fields pattern.\n */\n\nimport type { FieldGroup } from './types.js';\n\n// ─── Shared option arrays (exported for reuse) ─────────────────────────────\n\n/**\n * Gender options — matches dating-schema (01-hero-identity.ts) EXACTLY.\n * Keep in sync with dating so both products share the same enum + copy.\n */\nexport const genderOptions = [\n { value: 'man', label: 'Man', description: 'Identify as male' },\n { value: 'woman', label: 'Woman', description: 'Identify as female' },\n {\n value: 'non_binary',\n label: 'Non-binary',\n description: 'Neither exclusively male nor female',\n },\n {\n value: 'trans_man',\n label: 'Trans Man',\n description: 'Assigned female at birth, identify as male',\n },\n {\n value: 'trans_woman',\n label: 'Trans Woman',\n description: 'Assigned male at birth, identify as female',\n },\n { value: 'genderfluid', label: 'Genderfluid', description: 'Gender identity shifts over time' },\n {\n value: 'genderqueer',\n label: 'Genderqueer',\n description: 'Outside the traditional gender binary',\n },\n { value: 'agender', label: 'Agender', description: 'No gender identity or gender-neutral' },\n {\n value: 'bigender',\n label: 'Bigender',\n description: 'Identify as two genders simultaneously or alternating',\n },\n {\n value: 'pangender',\n label: 'Pangender',\n description: 'Identify with all genders or many gender identities',\n },\n {\n value: 'androgynous',\n label: 'Androgynous',\n description: 'Blend of masculine and feminine expression',\n },\n {\n value: 'intersex',\n label: 'Intersex',\n description: \"Born with sex characteristics that don't fit typical male/female\",\n },\n {\n value: 'gender_nonconforming',\n label: 'Gender Non-conforming',\n description: \"Expression doesn't align with conventional expectations\",\n },\n {\n value: 'two_spirit',\n label: 'Two-Spirit',\n description: 'Indigenous identity encompassing multiple genders',\n },\n {\n value: 'hijra',\n label: 'Hijra',\n description: 'South Asian third-gender identity — legally recognized in India',\n },\n { value: 'other', label: 'Other', description: 'Another identity not listed here' },\n { value: 'prefer_not_to_say', label: 'Prefer not to say', description: 'Keep this private' },\n] as const;\n\nexport const religionOptions = [\n { value: 'hindu', label: 'Hindu', description: 'Sanatana Dharma traditions' },\n { value: 'muslim_sunni', label: 'Muslim (Sunni)', description: 'Largest branch of Islam' },\n { value: 'muslim_shia', label: 'Muslim (Shia)', description: 'Second-largest branch of Islam' },\n { value: 'muslim_sufi', label: 'Muslim (Sufi)', description: 'Mystical Islamic tradition' },\n { value: 'muslim_other', label: 'Muslim (Other)', description: 'Ahmadiyya or other traditions' },\n {\n value: 'christian_catholic',\n label: 'Christian (Catholic)',\n description: 'Roman Catholic tradition',\n },\n {\n value: 'christian_protestant',\n label: 'Christian (Protestant)',\n description: 'Baptist, Methodist, Pentecostal, etc.',\n },\n {\n value: 'christian_other',\n label: 'Christian (Other)',\n description: 'Orthodox, Syrian, or other traditions',\n },\n { value: 'sikh', label: 'Sikh', description: 'Founded by Guru Nanak' },\n { value: 'jain_digambar', label: 'Jain (Digambar)', description: 'Sky-clad Jain tradition' },\n {\n value: 'jain_shwetambar',\n label: 'Jain (Shwetambar)',\n description: 'White-clad Jain tradition',\n },\n { value: 'buddhist', label: 'Buddhist', description: \"Followers of the Buddha's teachings\" },\n {\n value: 'parsi_zoroastrian',\n label: 'Parsi / Zoroastrian',\n description: 'Ancient Persian faith',\n },\n { value: 'jewish', label: 'Jewish', description: 'Judaism — Abrahamic faith' },\n { value: 'bahai', label: \"Baha'i\", description: 'Unity of all religions and humanity' },\n {\n value: 'spiritual',\n label: 'Spiritual but not religious',\n description: 'Personal spiritual practice',\n },\n { value: 'atheist', label: 'Atheist', description: 'No belief in deities' },\n { value: 'agnostic', label: 'Agnostic', description: 'Uncertain about higher power' },\n { value: 'no_religion', label: 'No Religion', description: 'Simply non-religious' },\n {\n value: 'inter_religion',\n label: 'Inter-Religion / Multi-faith',\n description: 'Multi-faith background',\n },\n { value: 'other', label: 'Other', description: 'A faith not listed above' },\n { value: 'prefer_not_to_say', label: 'Prefer not to say' },\n] as const;\n\nexport const languageOptions = [\n { value: 'hindi', label: 'Hindi (हिन्दी)' },\n { value: 'english', label: 'English' },\n { value: 'bengali', label: 'Bengali (বাংলা)' },\n { value: 'telugu', label: 'Telugu (తెలుగు)' },\n { value: 'marathi', label: 'Marathi (मराठी)' },\n { value: 'tamil', label: 'Tamil (தமிழ்)' },\n { value: 'urdu', label: 'Urdu (اردو)' },\n { value: 'gujarati', label: 'Gujarati (ગુજરાતી)' },\n { value: 'kannada', label: 'Kannada (ಕನ್ನಡ)' },\n { value: 'odia', label: 'Odia (ଓଡ଼ିଆ)' },\n { value: 'malayalam', label: 'Malayalam (മലയാളം)' },\n { value: 'punjabi', label: 'Punjabi (ਪੰਜਾਬੀ)' },\n { value: 'assamese', label: 'Assamese (অসমীয়া)' },\n { value: 'maithili', label: 'Maithili (मैथिली)' },\n { value: 'bhojpuri', label: 'Bhojpuri (भोजपुरी)' },\n { value: 'rajasthani', label: 'Rajasthani (राजस्थानी)' },\n { value: 'chhattisgarhi', label: 'Chhattisgarhi (छत्तीसगढ़ी)' },\n { value: 'haryanvi', label: 'Haryanvi (हरियाणवी)' },\n { value: 'tulu', label: 'Tulu (ತುಳು)' },\n { value: 'sanskrit', label: 'Sanskrit (संस्कृतम्)' },\n { value: 'sindhi', label: 'Sindhi (سنڌي)' },\n { value: 'kashmiri', label: 'Kashmiri (कॉशुर)' },\n { value: 'nepali', label: 'Nepali (नेपाली)' },\n { value: 'konkani', label: 'Konkani (कोंकणी)' },\n { value: 'dogri', label: 'Dogri (डोगरी)' },\n { value: 'manipuri', label: 'Manipuri (মৈতৈলোন্)' },\n { value: 'bodo', label: 'Bodo (बड़ो)' },\n { value: 'santali', label: 'Santali (ᱥᱟᱱᱛᱟᱲᱤ)' },\n { value: 'other', label: 'Other' },\n] as const;\n\n/**\n * Reservation / caste category — exhaustive list per Government of India\n * and state-level backward-class classifications.\n *\n * References:\n * - Articles 341 / 342 (SC / ST)\n * - Mandal Commission + 77th Amendment (OBC)\n * - 103rd Amendment, 2019 (EWS)\n * - State lists: MBC (Tamil Nadu, Bihar), SEBC (Maharashtra, Gujarat, etc.),\n * SBC (Karnataka), DNT / NT / VJNT (Maharashtra, MP, and others)\n */\nexport const reservationOptions = [\n {\n value: 'SC',\n label: 'Scheduled Caste (SC)',\n description: 'Listed in the Presidential Order under Article 341',\n },\n {\n value: 'ST',\n label: 'Scheduled Tribe (ST)',\n description: 'Listed in the Presidential Order under Article 342',\n },\n {\n value: 'OBC_NCL',\n label: 'OBC — Non-Creamy Layer',\n description: 'Other Backward Class, eligible for reservation',\n },\n {\n value: 'OBC_CL',\n label: 'OBC — Creamy Layer',\n description: 'Other Backward Class, income above the creamy-layer threshold',\n },\n {\n value: 'MBC',\n label: 'Most Backward Class (MBC)',\n description: 'State sub-category of OBC (e.g., Tamil Nadu, Bihar)',\n },\n {\n value: 'SEBC',\n label: 'Socially & Educationally Backward Class (SEBC)',\n description: 'State-notified SEBC (e.g., Maharashtra, Gujarat)',\n },\n {\n value: 'SBC',\n label: 'Special Backward Class (SBC)',\n description: 'State-notified special backward category',\n },\n {\n value: 'DNT_NT',\n label: 'Denotified / Nomadic Tribes (DNT / NT / VJNT)',\n description: 'Denotified, Nomadic, and Semi-Nomadic communities',\n },\n {\n value: 'EWS',\n label: 'Economically Weaker Section (EWS)',\n description: '10% reservation for unreserved categories (103rd Amendment)',\n },\n { value: 'GENERAL', label: 'General / Unreserved', description: 'No reservation category' },\n { value: 'DONT_KNOW', label: \"Don't know\", description: 'Not sure of the category' },\n { value: 'PREFER_NOT_TO_SAY', label: 'Prefer not to say', description: 'Keep this private' },\n] as const;\n\n/**\n * Minority status — per Ministry of Minority Affairs, Government of India.\n * 6 religious minorities are centrally notified. Linguistic minorities are\n * defined at the state level (mother tongue ≠ majority language of the state).\n */\nexport const minorityOptions = [\n { value: 'NO', label: 'No', description: 'Not a minority community' },\n {\n value: 'MUSLIM',\n label: 'Religious Minority — Muslim',\n description: 'Centrally notified religious minority',\n },\n {\n value: 'CHRISTIAN',\n label: 'Religious Minority — Christian',\n description: 'Centrally notified religious minority',\n },\n {\n value: 'SIKH',\n label: 'Religious Minority — Sikh',\n description: 'Centrally notified religious minority',\n },\n {\n value: 'BUDDHIST',\n label: 'Religious Minority — Buddhist',\n description: 'Centrally notified religious minority',\n },\n {\n value: 'JAIN',\n label: 'Religious Minority — Jain',\n description: 'Centrally notified religious minority (2014)',\n },\n {\n value: 'PARSI',\n label: 'Religious Minority — Parsi / Zoroastrian',\n description: 'Centrally notified religious minority',\n },\n {\n value: 'LINGUISTIC',\n label: 'Linguistic Minority',\n description: 'Mother tongue is not the majority language of your state',\n },\n {\n value: 'BOTH',\n label: 'Both religious and linguistic minority',\n description: 'Belongs to a religious minority AND a linguistic minority',\n },\n { value: 'NOT_SURE', label: 'Not sure', description: \"Don't know if you're a minority\" },\n { value: 'PREFER_NOT_TO_SAY', label: 'Prefer not to say', description: 'Keep this private' },\n] as const;\n\n// ─── Field Group ────────────────────────────────────────────────────────────\n\nexport const profile: FieldGroup = {\n key: 'profile',\n label: 'Profile',\n description: 'Basic personal information — name, gender, date of birth, language, and religion.',\n step: 1,\n fields: [\n {\n order: 1,\n key: 'fullName',\n label: 'Full Name',\n type: 'object',\n step: 1,\n isOnboarding: true,\n description: 'First, middle, and last name as per Aadhaar or other govt ID',\n },\n {\n order: 4,\n key: 'gender',\n label: 'Gender',\n type: 'single_select',\n step: 1,\n isOnboarding: true,\n options: [...genderOptions],\n },\n {\n order: 5,\n key: 'dateOfBirth',\n label: 'Date of Birth',\n type: 'date',\n step: 1,\n isOnboarding: true,\n },\n {\n order: 6,\n key: 'whatsappNumber',\n label: 'WhatsApp Number',\n type: 'text',\n step: 1,\n isOnboarding: true,\n optional: true,\n description: 'Include country code',\n },\n {\n order: 7,\n key: 'primaryLanguage',\n label: 'Primary Language',\n type: 'single_select',\n step: 1,\n isOnboarding: true,\n options: [...languageOptions],\n },\n {\n order: 8,\n key: 'secondaryLanguages',\n label: 'Secondary Languages',\n type: 'multi_select',\n step: 1,\n isOnboarding: true,\n optional: true,\n options: [...languageOptions],\n maxSelect: 10,\n },\n {\n order: 9,\n key: 'familyReligion',\n label: 'Family Religion',\n type: 'single_select',\n step: 1,\n isOnboarding: true,\n options: [...religionOptions],\n },\n {\n order: 10,\n key: 'personalReligion',\n label: 'Personal Religion',\n type: 'single_select',\n step: 1,\n isOnboarding: true,\n optional: true,\n options: [...religionOptions],\n },\n {\n order: 11,\n key: 'reservationStatus',\n label: 'Reservation Category',\n type: 'single_select',\n step: 1,\n isOnboarding: true,\n options: [...reservationOptions],\n sensitive: true,\n },\n {\n order: 12,\n key: 'minorityStatus',\n label: 'Minority Status',\n type: 'single_select',\n step: 1,\n isOnboarding: true,\n options: [...minorityOptions],\n },\n ],\n};\n"]}
1
+ {"version":3,"file":"01-profile.js","sourceRoot":"","sources":["../../src/profile-fields/01-profile.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Step 01 — Profile fields.\n *\n * Rich field definitions with options and descriptions,\n * matching the dating-schema profile-fields pattern.\n */\n\nimport type { FieldGroup } from './types.js';\n\n// ─── Shared option arrays (exported for reuse) ─────────────────────────────\n\n/**\n * Gender options — matches dating-schema (01-hero-identity.ts) EXACTLY.\n * Keep in sync with dating so both products share the same enum + copy.\n */\nexport const genderOptions = [\n { value: 'man', label: 'Man', description: 'Identify as male' },\n { value: 'woman', label: 'Woman', description: 'Identify as female' },\n {\n value: 'non_binary',\n label: 'Non-binary',\n description: 'Neither exclusively male nor female',\n },\n {\n value: 'trans_man',\n label: 'Trans Man',\n description: 'Assigned female at birth, identify as male',\n },\n {\n value: 'trans_woman',\n label: 'Trans Woman',\n description: 'Assigned male at birth, identify as female',\n },\n { value: 'genderfluid', label: 'Genderfluid', description: 'Gender identity shifts over time' },\n {\n value: 'genderqueer',\n label: 'Genderqueer',\n description: 'Outside the traditional gender binary',\n },\n { value: 'agender', label: 'Agender', description: 'No gender identity or gender-neutral' },\n {\n value: 'bigender',\n label: 'Bigender',\n description: 'Identify as two genders simultaneously or alternating',\n },\n {\n value: 'pangender',\n label: 'Pangender',\n description: 'Identify with all genders or many gender identities',\n },\n {\n value: 'androgynous',\n label: 'Androgynous',\n description: 'Blend of masculine and feminine expression',\n },\n {\n value: 'intersex',\n label: 'Intersex',\n description: \"Born with sex characteristics that don't fit typical male/female\",\n },\n {\n value: 'gender_nonconforming',\n label: 'Gender Non-conforming',\n description: \"Expression doesn't align with conventional expectations\",\n },\n {\n value: 'two_spirit',\n label: 'Two-Spirit',\n description: 'Indigenous identity encompassing multiple genders',\n },\n {\n value: 'hijra',\n label: 'Hijra',\n description: 'South Asian third-gender identity — legally recognized in India',\n },\n { value: 'other', label: 'Other', description: 'Another identity not listed here' },\n { value: 'prefer_not_to_say', label: 'Prefer not to say', description: 'Keep this private' },\n] as const;\n\nexport const religionOptions = [\n { value: 'hindu', label: 'Hindu', description: 'Sanatana Dharma traditions' },\n { value: 'muslim_sunni', label: 'Muslim (Sunni)', description: 'Largest branch of Islam' },\n { value: 'muslim_shia', label: 'Muslim (Shia)', description: 'Second-largest branch of Islam' },\n { value: 'muslim_sufi', label: 'Muslim (Sufi)', description: 'Mystical Islamic tradition' },\n { value: 'muslim_other', label: 'Muslim (Other)', description: 'Ahmadiyya or other traditions' },\n {\n value: 'christian_catholic',\n label: 'Christian (Catholic)',\n description: 'Roman Catholic tradition',\n },\n {\n value: 'christian_protestant',\n label: 'Christian (Protestant)',\n description: 'Baptist, Methodist, Pentecostal, etc.',\n },\n {\n value: 'christian_other',\n label: 'Christian (Other)',\n description: 'Orthodox, Syrian, or other traditions',\n },\n { value: 'sikh', label: 'Sikh', description: 'Founded by Guru Nanak' },\n { value: 'jain_digambar', label: 'Jain (Digambar)', description: 'Sky-clad Jain tradition' },\n {\n value: 'jain_shwetambar',\n label: 'Jain (Shwetambar)',\n description: 'White-clad Jain tradition',\n },\n { value: 'buddhist', label: 'Buddhist', description: \"Followers of the Buddha's teachings\" },\n {\n value: 'parsi_zoroastrian',\n label: 'Parsi / Zoroastrian',\n description: 'Ancient Persian faith',\n },\n { value: 'jewish', label: 'Jewish', description: 'Judaism — Abrahamic faith' },\n { value: 'bahai', label: \"Baha'i\", description: 'Unity of all religions and humanity' },\n {\n value: 'spiritual',\n label: 'Spiritual but not religious',\n description: 'Personal spiritual practice',\n },\n { value: 'atheist', label: 'Atheist', description: 'No belief in deities' },\n { value: 'agnostic', label: 'Agnostic', description: 'Uncertain about higher power' },\n { value: 'no_religion', label: 'No Religion', description: 'Simply non-religious' },\n {\n value: 'inter_religion',\n label: 'Inter-Religion / Multi-faith',\n description: 'Multi-faith background',\n },\n { value: 'other', label: 'Other', description: 'A faith not listed above' },\n { value: 'prefer_not_to_say', label: 'Prefer not to say' },\n] as const;\n\nexport const languageOptions = [\n { value: 'hindi', label: 'Hindi (हिन्दी)' },\n { value: 'english', label: 'English' },\n { value: 'bengali', label: 'Bengali (বাংলা)' },\n { value: 'telugu', label: 'Telugu (తెలుగు)' },\n { value: 'marathi', label: 'Marathi (मराठी)' },\n { value: 'tamil', label: 'Tamil (தமிழ்)' },\n { value: 'urdu', label: 'Urdu (اردو)' },\n { value: 'gujarati', label: 'Gujarati (ગુજરાતી)' },\n { value: 'kannada', label: 'Kannada (ಕನ್ನಡ)' },\n { value: 'odia', label: 'Odia (ଓଡ଼ିଆ)' },\n { value: 'malayalam', label: 'Malayalam (മലയാളം)' },\n { value: 'punjabi', label: 'Punjabi (ਪੰਜਾਬੀ)' },\n { value: 'assamese', label: 'Assamese (অসমীয়া)' },\n { value: 'maithili', label: 'Maithili (मैथिली)' },\n { value: 'bhojpuri', label: 'Bhojpuri (भोजपुरी)' },\n { value: 'rajasthani', label: 'Rajasthani (राजस्थानी)' },\n { value: 'chhattisgarhi', label: 'Chhattisgarhi (छत्तीसगढ़ी)' },\n { value: 'haryanvi', label: 'Haryanvi (हरियाणवी)' },\n { value: 'tulu', label: 'Tulu (ತುಳು)' },\n { value: 'sanskrit', label: 'Sanskrit (संस्कृतम्)' },\n { value: 'sindhi', label: 'Sindhi (سنڌي)' },\n { value: 'kashmiri', label: 'Kashmiri (कॉशुर)' },\n { value: 'nepali', label: 'Nepali (नेपाली)' },\n { value: 'konkani', label: 'Konkani (कोंकणी)' },\n { value: 'dogri', label: 'Dogri (डोगरी)' },\n { value: 'manipuri', label: 'Manipuri (মৈতৈলোন্)' },\n { value: 'bodo', label: 'Bodo (बड़ो)' },\n { value: 'santali', label: 'Santali (ᱥᱟᱱᱛᱟᱲᱤ)' },\n // International languages\n { value: 'spanish', label: 'Spanish (Español)' },\n { value: 'french', label: 'French (Français)' },\n { value: 'german', label: 'German (Deutsch)' },\n { value: 'mandarin', label: 'Mandarin (普通话)' },\n { value: 'japanese', label: 'Japanese (日本語)' },\n { value: 'korean', label: 'Korean (한국어)' },\n { value: 'arabic', label: 'Arabic (العربية)' },\n { value: 'portuguese', label: 'Portuguese (Português)' },\n { value: 'russian', label: 'Russian (Русский)' },\n { value: 'italian', label: 'Italian (Italiano)' },\n { value: 'other', label: 'Other' },\n] as const;\n\n/**\n * Reservation / caste category — exhaustive list per Government of India\n * and state-level backward-class classifications.\n *\n * References:\n * - Articles 341 / 342 (SC / ST)\n * - Mandal Commission + 77th Amendment (OBC)\n * - 103rd Amendment, 2019 (EWS)\n * - State lists: MBC (Tamil Nadu, Bihar), SEBC (Maharashtra, Gujarat, etc.),\n * SBC (Karnataka), DNT / NT / VJNT (Maharashtra, MP, and others)\n */\nexport const reservationOptions = [\n {\n value: 'SC',\n label: 'Scheduled Caste (SC)',\n description: 'Listed in the Presidential Order under Article 341',\n },\n {\n value: 'ST',\n label: 'Scheduled Tribe (ST)',\n description: 'Listed in the Presidential Order under Article 342',\n },\n {\n value: 'OBC_NCL',\n label: 'OBC — Non-Creamy Layer',\n description: 'Other Backward Class, eligible for reservation',\n },\n {\n value: 'OBC_CL',\n label: 'OBC — Creamy Layer',\n description: 'Other Backward Class, income above the creamy-layer threshold',\n },\n {\n value: 'MBC',\n label: 'Most Backward Class (MBC)',\n description: 'State sub-category of OBC (e.g., Tamil Nadu, Bihar)',\n },\n {\n value: 'SEBC',\n label: 'Socially & Educationally Backward Class (SEBC)',\n description: 'State-notified SEBC (e.g., Maharashtra, Gujarat)',\n },\n {\n value: 'SBC',\n label: 'Special Backward Class (SBC)',\n description: 'State-notified special backward category',\n },\n {\n value: 'DNT_NT',\n label: 'Denotified / Nomadic Tribes (DNT / NT / VJNT)',\n description: 'Denotified, Nomadic, and Semi-Nomadic communities',\n },\n {\n value: 'EWS',\n label: 'Economically Weaker Section (EWS)',\n description: '10% reservation for unreserved categories (103rd Amendment)',\n },\n { value: 'GENERAL', label: 'General / Unreserved', description: 'No reservation category' },\n { value: 'DONT_KNOW', label: \"Don't know\", description: 'Not sure of the category' },\n { value: 'PREFER_NOT_TO_SAY', label: 'Prefer not to say', description: 'Keep this private' },\n] as const;\n\n/**\n * Minority status — per Ministry of Minority Affairs, Government of India.\n * 6 religious minorities are centrally notified. Linguistic minorities are\n * defined at the state level (mother tongue ≠ majority language of the state).\n */\nexport const minorityOptions = [\n { value: 'NO', label: 'No', description: 'Not a minority community' },\n {\n value: 'MUSLIM',\n label: 'Religious Minority — Muslim',\n description: 'Centrally notified religious minority',\n },\n {\n value: 'CHRISTIAN',\n label: 'Religious Minority — Christian',\n description: 'Centrally notified religious minority',\n },\n {\n value: 'SIKH',\n label: 'Religious Minority — Sikh',\n description: 'Centrally notified religious minority',\n },\n {\n value: 'BUDDHIST',\n label: 'Religious Minority — Buddhist',\n description: 'Centrally notified religious minority',\n },\n {\n value: 'JAIN',\n label: 'Religious Minority — Jain',\n description: 'Centrally notified religious minority (2014)',\n },\n {\n value: 'PARSI',\n label: 'Religious Minority — Parsi / Zoroastrian',\n description: 'Centrally notified religious minority',\n },\n {\n value: 'LINGUISTIC',\n label: 'Linguistic Minority',\n description: 'Mother tongue is not the majority language of your state',\n },\n {\n value: 'BOTH',\n label: 'Both religious and linguistic minority',\n description: 'Belongs to a religious minority AND a linguistic minority',\n },\n { value: 'NOT_SURE', label: 'Not sure', description: \"Don't know if you're a minority\" },\n { value: 'PREFER_NOT_TO_SAY', label: 'Prefer not to say', description: 'Keep this private' },\n] as const;\n\n// ─── Field Group ────────────────────────────────────────────────────────────\n\nexport const profile: FieldGroup = {\n key: 'profile',\n label: 'Profile',\n description: 'Basic personal information — name, gender, date of birth, language, and religion.',\n step: 1,\n fields: [\n {\n order: 1,\n key: 'fullName',\n label: 'Full Name',\n type: 'object',\n step: 1,\n isOnboarding: true,\n description: 'First, middle, and last name as per Aadhaar or other govt ID',\n },\n {\n order: 4,\n key: 'gender',\n label: 'Gender',\n type: 'single_select',\n step: 1,\n isOnboarding: true,\n options: [...genderOptions],\n },\n {\n order: 5,\n key: 'dateOfBirth',\n label: 'Date of Birth',\n type: 'date',\n step: 1,\n isOnboarding: true,\n },\n {\n order: 6,\n key: 'whatsappNumber',\n label: 'WhatsApp Number',\n type: 'text',\n step: 1,\n isOnboarding: true,\n optional: true,\n description: 'Include country code',\n },\n {\n order: 7,\n key: 'primaryLanguage',\n label: 'Primary Language',\n type: 'single_select',\n step: 1,\n isOnboarding: true,\n options: [...languageOptions],\n },\n {\n order: 8,\n key: 'secondaryLanguages',\n label: 'Secondary Languages',\n type: 'multi_select',\n step: 1,\n isOnboarding: true,\n optional: true,\n options: [...languageOptions],\n maxSelect: 10,\n },\n {\n order: 9,\n key: 'familyReligion',\n label: 'Family Religion',\n type: 'single_select',\n step: 1,\n isOnboarding: true,\n options: [...religionOptions],\n },\n {\n order: 10,\n key: 'personalReligion',\n label: 'Personal Religion',\n type: 'single_select',\n step: 1,\n isOnboarding: true,\n optional: true,\n options: [...religionOptions],\n },\n {\n order: 11,\n key: 'reservationStatus',\n label: 'Reservation Category',\n type: 'single_select',\n step: 1,\n isOnboarding: true,\n options: [...reservationOptions],\n sensitive: true,\n },\n {\n order: 12,\n key: 'minorityStatus',\n label: 'Minority Status',\n type: 'single_select',\n step: 1,\n isOnboarding: true,\n options: [...minorityOptions],\n },\n ],\n};\n"]}
@@ -316,5 +316,11 @@ export declare const degreeNameOptions: readonly [{
316
316
  readonly value: "other";
317
317
  readonly label: "Other";
318
318
  }];
319
+ /**
320
+ * Degree options filtered by education level — so the repeater shows only
321
+ * relevant degrees (e.g., diplomas don't show PhD, graduations don't show ITI).
322
+ * 'other' is always included.
323
+ */
324
+ export declare const DEGREE_VALUES_BY_LEVEL: Record<string, readonly string[]>;
319
325
  export declare const education: FieldGroup;
320
326
  //# sourceMappingURL=06-education.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"06-education.d.ts","sourceRoot":"","sources":["../../src/profile-fields/06-education.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAE7C,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;EASvB,CAAC;AAEX;;;;;GAKG;AACH,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;EAUf,CAAC;AAEX;;;GAGG;AACH,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAqCjB,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;EAShB,CAAC;AAEX;;;;GAIG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA+CpB,CAAC;AAEX,eAAO,MAAM,SAAS,EAAE,UA4HvB,CAAC"}
1
+ {"version":3,"file":"06-education.d.ts","sourceRoot":"","sources":["../../src/profile-fields/06-education.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAE7C,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;EASvB,CAAC;AAEX;;;;;GAKG;AACH,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;EAUf,CAAC;AAEX;;;GAGG;AACH,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAqCjB,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;EAShB,CAAC;AAEX;;;;GAIG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA+CpB,CAAC;AAEX;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAY3D,CAAC;AAEX,eAAO,MAAM,SAAS,EAAE,UA4HvB,CAAC"}
@@ -133,6 +133,24 @@ export const degreeNameOptions = [
133
133
  { value: 'mch', label: 'MCh (Super-specialty Surgery)' },
134
134
  { value: 'other', label: 'Other' },
135
135
  ];
136
+ /**
137
+ * Degree options filtered by education level — so the repeater shows only
138
+ * relevant degrees (e.g., diplomas don't show PhD, graduations don't show ITI).
139
+ * 'other' is always included.
140
+ */
141
+ export const DEGREE_VALUES_BY_LEVEL = {
142
+ diplomas: ['diploma_polytechnic', 'iti', 'pg_diploma', 'pgdm', 'advanced_diploma', 'other'],
143
+ graduations: [
144
+ 'ba', 'bsc', 'bcom', 'bba', 'bca', 'btech', 'barch', 'mbbs', 'bds',
145
+ 'bams', 'bhms', 'llb', 'bed', 'bpharm', 'bhm', 'bfa', 'bvsc', 'other',
146
+ ],
147
+ postGraduations: [
148
+ 'ma', 'msc', 'mcom', 'mba', 'mca', 'mtech', 'md', 'ms', 'llm',
149
+ 'med', 'mpharm', 'msw', 'march', 'pg_diploma', 'pgdm', 'other',
150
+ ],
151
+ doctorates: ['phd', 'dlitt', 'dsc', 'mds', 'dm', 'mch', 'other'],
152
+ postDoctorates: ['phd', 'dlitt', 'dsc', 'other'],
153
+ };
136
154
  export const education = {
137
155
  key: 'education',
138
156
  label: 'Education',
@@ -1 +1 @@
1
- {"version":3,"file":"06-education.js","sourceRoot":"","sources":["../../src/profile-fields/06-education.ts"],"names":[],"mappings":"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","sourcesContent":["import type { FieldGroup } from './types.js';\n\nexport const qualificationOptions = [\n { value: 'CLASS_10', label: 'Class 10 (Secondary)' },\n { value: 'CLASS_12', label: 'Class 12 (Higher Secondary)' },\n { value: 'DIPLOMA', label: 'Diploma / ITI' },\n { value: 'GRADUATION', label: \"Graduation (Bachelor's)\" },\n { value: 'POST_GRAD', label: \"Post Graduation (Master's)\" },\n { value: 'PHD', label: 'Doctorate / PhD' },\n { value: 'POST_DOCTORATE', label: 'Post Doctorate' },\n { value: 'OTHER', label: 'Other' },\n] as const;\n\n/**\n * School / 12th board options — central, international, and state boards.\n * Specific state boards are rolled up under `state_board` since there are\n * 30+ of them; users pick the generic option and can supply the specific\n * board name in the school-name / institution text field.\n */\nexport const boardOptions = [\n { value: 'cbse', label: 'CBSE' },\n { value: 'icse', label: 'ICSE (Class 10, CISCE)' },\n { value: 'isc', label: 'ISC (Class 12, CISCE)' },\n { value: 'ib', label: 'IB (International Baccalaureate)' },\n { value: 'igcse', label: 'Cambridge IGCSE (Class 10)' },\n { value: 'a_level', label: 'Cambridge A-Level / AS-Level' },\n { value: 'nios', label: 'NIOS (National Open School)' },\n { value: 'state_board', label: 'State Board' },\n { value: 'other', label: 'Other' },\n] as const;\n\n/**\n * Subjects — common subjects across Indian school boards (10th + 12th).\n * Flat list for multi-select. Grouped in comments by domain for readability.\n */\nexport const subjectOptions = [\n // Languages\n { value: 'english', label: 'English' },\n { value: 'hindi', label: 'Hindi' },\n { value: 'sanskrit', label: 'Sanskrit' },\n { value: 'regional_language', label: 'Regional Language' },\n { value: 'foreign_language', label: 'Foreign Language (French / Spanish / German)' },\n // Math & Sciences\n { value: 'mathematics', label: 'Mathematics' },\n { value: 'physics', label: 'Physics' },\n { value: 'chemistry', label: 'Chemistry' },\n { value: 'biology', label: 'Biology' },\n { value: 'science_combined', label: 'Science (Combined — 10th)' },\n { value: 'computer_science', label: 'Computer Science / IT' },\n { value: 'informatics_practices', label: 'Informatics Practices' },\n // Commerce\n { value: 'accountancy', label: 'Accountancy' },\n { value: 'business_studies', label: 'Business Studies' },\n { value: 'economics', label: 'Economics' },\n { value: 'statistics', label: 'Statistics' },\n // Humanities\n { value: 'history', label: 'History' },\n { value: 'geography', label: 'Geography' },\n { value: 'political_science', label: 'Political Science' },\n { value: 'psychology', label: 'Psychology' },\n { value: 'sociology', label: 'Sociology' },\n { value: 'philosophy', label: 'Philosophy' },\n { value: 'social_studies', label: 'Social Studies (Combined — 10th)' },\n // Others\n { value: 'physical_education', label: 'Physical Education' },\n { value: 'fine_arts', label: 'Fine Arts' },\n { value: 'music', label: 'Music' },\n { value: 'home_science', label: 'Home Science' },\n { value: 'entrepreneurship', label: 'Entrepreneurship' },\n { value: 'legal_studies', label: 'Legal Studies' },\n { value: 'environmental_science', label: 'Environmental Science' },\n { value: 'other', label: 'Other' },\n] as const;\n\n/**\n * Stream / course options for Class 12 (or equivalent).\n */\nexport const streamOptions = [\n { value: 'science_pcm', label: 'Science (PCM — Physics, Chemistry, Math)' },\n { value: 'science_pcb', label: 'Science (PCB — Physics, Chemistry, Biology)' },\n { value: 'science_pcmb', label: 'Science (PCMB)' },\n { value: 'commerce_with_math', label: 'Commerce (with Mathematics)' },\n { value: 'commerce_without_math', label: 'Commerce (without Mathematics)' },\n { value: 'arts_humanities', label: 'Arts / Humanities' },\n { value: 'vocational', label: 'Vocational' },\n { value: 'other', label: 'Other' },\n] as const;\n\n/**\n * Common Indian degree names — used in diploma / graduation /\n * post-graduation / doctorate / post-doctorate repeaters.\n * Grouped by level in comments.\n */\nexport const degreeNameOptions = [\n // Diploma / ITI\n { value: 'diploma_polytechnic', label: 'Diploma (Polytechnic)' },\n { value: 'iti', label: 'ITI' },\n { value: 'pg_diploma', label: 'PG Diploma' },\n { value: 'pgdm', label: 'PGDM' },\n { value: 'advanced_diploma', label: 'Advanced Diploma' },\n // Undergraduate (Bachelor's)\n { value: 'ba', label: 'BA (Bachelor of Arts)' },\n { value: 'bsc', label: 'BSc (Bachelor of Science)' },\n { value: 'bcom', label: 'BCom (Bachelor of Commerce)' },\n { value: 'bba', label: 'BBA (Bachelor of Business Admin.)' },\n { value: 'bca', label: 'BCA (Bachelor of Computer Applications)' },\n { value: 'btech', label: 'BTech / BE (Engineering)' },\n { value: 'barch', label: 'BArch (Architecture)' },\n { value: 'mbbs', label: 'MBBS (Medicine)' },\n { value: 'bds', label: 'BDS (Dental)' },\n { value: 'bams', label: 'BAMS (Ayurveda)' },\n { value: 'bhms', label: 'BHMS (Homeopathy)' },\n { value: 'llb', label: 'LLB (Law)' },\n { value: 'bed', label: 'BEd (Education)' },\n { value: 'bpharm', label: 'BPharm (Pharmacy)' },\n { value: 'bhm', label: 'BHM (Hotel Management)' },\n { value: 'bfa', label: 'BFA (Fine Arts)' },\n { value: 'bvsc', label: 'BVSc (Veterinary)' },\n // Postgraduate (Master's)\n { value: 'ma', label: 'MA (Master of Arts)' },\n { value: 'msc', label: 'MSc (Master of Science)' },\n { value: 'mcom', label: 'MCom (Master of Commerce)' },\n { value: 'mba', label: 'MBA (Master of Business Admin.)' },\n { value: 'mca', label: 'MCA (Master of Computer Applications)' },\n { value: 'mtech', label: 'MTech / ME (Engineering)' },\n { value: 'md', label: 'MD (Medicine — Postgrad)' },\n { value: 'ms', label: 'MS (Surgery — Postgrad)' },\n { value: 'llm', label: 'LLM (Law — Postgrad)' },\n { value: 'med', label: 'MEd (Education — Postgrad)' },\n { value: 'mpharm', label: 'MPharm (Pharmacy — Postgrad)' },\n { value: 'msw', label: 'MSW (Social Work)' },\n { value: 'march', label: 'MArch (Architecture — Postgrad)' },\n // Doctorate / higher\n { value: 'phd', label: 'PhD' },\n { value: 'dlitt', label: 'DLitt' },\n { value: 'dsc', label: 'DSc' },\n { value: 'mds', label: 'MDS (Dental Surgery)' },\n { value: 'dm', label: 'DM (Super-specialty Medicine)' },\n { value: 'mch', label: 'MCh (Super-specialty Surgery)' },\n { value: 'other', label: 'Other' },\n] as const;\n\nexport const education: FieldGroup = {\n key: 'education',\n label: 'Education',\n step: 6,\n description: 'Academic background and qualifications.',\n fields: [\n {\n order: 1,\n key: 'highestQualification',\n label: 'Highest Qualification',\n type: 'single_select',\n step: 6,\n isOnboarding: true,\n options: [...qualificationOptions],\n },\n {\n order: 2,\n key: 'education10th',\n label: 'Class 10 Details',\n type: 'object',\n step: 6,\n isOnboarding: true,\n optional: true,\n conditionalOn: {\n field: 'highestQualification',\n values: [\n 'CLASS_10',\n 'CLASS_12',\n 'DIPLOMA',\n 'GRADUATION',\n 'POST_GRAD',\n 'PHD',\n 'POST_DOCTORATE',\n ],\n },\n },\n {\n order: 3,\n key: 'education12th',\n label: 'Class 12 Details',\n type: 'object',\n step: 6,\n isOnboarding: true,\n optional: true,\n conditionalOn: {\n field: 'highestQualification',\n values: ['CLASS_12', 'DIPLOMA', 'GRADUATION', 'POST_GRAD', 'PHD', 'POST_DOCTORATE'],\n },\n },\n {\n order: 4,\n key: 'diplomas',\n label: 'Diploma',\n type: 'object_array',\n step: 6,\n isOnboarding: true,\n optional: true,\n conditionalOn: { field: 'highestQualification', values: ['DIPLOMA'] },\n },\n {\n order: 5,\n key: 'graduations',\n label: 'Graduation',\n type: 'object_array',\n step: 6,\n isOnboarding: true,\n optional: true,\n conditionalOn: {\n field: 'highestQualification',\n values: ['GRADUATION', 'POST_GRAD', 'PHD', 'POST_DOCTORATE'],\n },\n },\n {\n order: 6,\n key: 'postGraduations',\n label: 'Post Graduation',\n type: 'object_array',\n step: 6,\n isOnboarding: true,\n optional: true,\n conditionalOn: {\n field: 'highestQualification',\n values: ['POST_GRAD', 'PHD', 'POST_DOCTORATE'],\n },\n },\n {\n order: 7,\n key: 'doctorates',\n label: 'Doctorate / PhD',\n type: 'object_array',\n step: 6,\n isOnboarding: true,\n optional: true,\n conditionalOn: { field: 'highestQualification', values: ['PHD', 'POST_DOCTORATE'] },\n },\n {\n order: 8,\n key: 'postDoctorates',\n label: 'Post Doctorate',\n type: 'object_array',\n step: 6,\n isOnboarding: true,\n optional: true,\n conditionalOn: { field: 'highestQualification', values: ['POST_DOCTORATE'] },\n },\n {\n order: 9,\n key: 'otherCertificates',\n label: 'Other Certificates',\n type: 'object_array',\n step: 6,\n isOnboarding: true,\n optional: true,\n },\n {\n order: 10,\n key: 'educationNotes',\n label: 'Education Notes',\n type: 'textarea',\n step: 6,\n isOnboarding: true,\n optional: true,\n },\n ],\n};\n"]}
1
+ {"version":3,"file":"06-education.js","sourceRoot":"","sources":["../../src/profile-fields/06-education.ts"],"names":[],"mappings":"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","sourcesContent":["import type { FieldGroup } from './types.js';\n\nexport const qualificationOptions = [\n { value: 'CLASS_10', label: 'Class 10 (Secondary)' },\n { value: 'CLASS_12', label: 'Class 12 (Higher Secondary)' },\n { value: 'DIPLOMA', label: 'Diploma / ITI' },\n { value: 'GRADUATION', label: \"Graduation (Bachelor's)\" },\n { value: 'POST_GRAD', label: \"Post Graduation (Master's)\" },\n { value: 'PHD', label: 'Doctorate / PhD' },\n { value: 'POST_DOCTORATE', label: 'Post Doctorate' },\n { value: 'OTHER', label: 'Other' },\n] as const;\n\n/**\n * School / 12th board options — central, international, and state boards.\n * Specific state boards are rolled up under `state_board` since there are\n * 30+ of them; users pick the generic option and can supply the specific\n * board name in the school-name / institution text field.\n */\nexport const boardOptions = [\n { value: 'cbse', label: 'CBSE' },\n { value: 'icse', label: 'ICSE (Class 10, CISCE)' },\n { value: 'isc', label: 'ISC (Class 12, CISCE)' },\n { value: 'ib', label: 'IB (International Baccalaureate)' },\n { value: 'igcse', label: 'Cambridge IGCSE (Class 10)' },\n { value: 'a_level', label: 'Cambridge A-Level / AS-Level' },\n { value: 'nios', label: 'NIOS (National Open School)' },\n { value: 'state_board', label: 'State Board' },\n { value: 'other', label: 'Other' },\n] as const;\n\n/**\n * Subjects — common subjects across Indian school boards (10th + 12th).\n * Flat list for multi-select. Grouped in comments by domain for readability.\n */\nexport const subjectOptions = [\n // Languages\n { value: 'english', label: 'English' },\n { value: 'hindi', label: 'Hindi' },\n { value: 'sanskrit', label: 'Sanskrit' },\n { value: 'regional_language', label: 'Regional Language' },\n { value: 'foreign_language', label: 'Foreign Language (French / Spanish / German)' },\n // Math & Sciences\n { value: 'mathematics', label: 'Mathematics' },\n { value: 'physics', label: 'Physics' },\n { value: 'chemistry', label: 'Chemistry' },\n { value: 'biology', label: 'Biology' },\n { value: 'science_combined', label: 'Science (Combined — 10th)' },\n { value: 'computer_science', label: 'Computer Science / IT' },\n { value: 'informatics_practices', label: 'Informatics Practices' },\n // Commerce\n { value: 'accountancy', label: 'Accountancy' },\n { value: 'business_studies', label: 'Business Studies' },\n { value: 'economics', label: 'Economics' },\n { value: 'statistics', label: 'Statistics' },\n // Humanities\n { value: 'history', label: 'History' },\n { value: 'geography', label: 'Geography' },\n { value: 'political_science', label: 'Political Science' },\n { value: 'psychology', label: 'Psychology' },\n { value: 'sociology', label: 'Sociology' },\n { value: 'philosophy', label: 'Philosophy' },\n { value: 'social_studies', label: 'Social Studies (Combined — 10th)' },\n // Others\n { value: 'physical_education', label: 'Physical Education' },\n { value: 'fine_arts', label: 'Fine Arts' },\n { value: 'music', label: 'Music' },\n { value: 'home_science', label: 'Home Science' },\n { value: 'entrepreneurship', label: 'Entrepreneurship' },\n { value: 'legal_studies', label: 'Legal Studies' },\n { value: 'environmental_science', label: 'Environmental Science' },\n { value: 'other', label: 'Other' },\n] as const;\n\n/**\n * Stream / course options for Class 12 (or equivalent).\n */\nexport const streamOptions = [\n { value: 'science_pcm', label: 'Science (PCM — Physics, Chemistry, Math)' },\n { value: 'science_pcb', label: 'Science (PCB — Physics, Chemistry, Biology)' },\n { value: 'science_pcmb', label: 'Science (PCMB)' },\n { value: 'commerce_with_math', label: 'Commerce (with Mathematics)' },\n { value: 'commerce_without_math', label: 'Commerce (without Mathematics)' },\n { value: 'arts_humanities', label: 'Arts / Humanities' },\n { value: 'vocational', label: 'Vocational' },\n { value: 'other', label: 'Other' },\n] as const;\n\n/**\n * Common Indian degree names — used in diploma / graduation /\n * post-graduation / doctorate / post-doctorate repeaters.\n * Grouped by level in comments.\n */\nexport const degreeNameOptions = [\n // Diploma / ITI\n { value: 'diploma_polytechnic', label: 'Diploma (Polytechnic)' },\n { value: 'iti', label: 'ITI' },\n { value: 'pg_diploma', label: 'PG Diploma' },\n { value: 'pgdm', label: 'PGDM' },\n { value: 'advanced_diploma', label: 'Advanced Diploma' },\n // Undergraduate (Bachelor's)\n { value: 'ba', label: 'BA (Bachelor of Arts)' },\n { value: 'bsc', label: 'BSc (Bachelor of Science)' },\n { value: 'bcom', label: 'BCom (Bachelor of Commerce)' },\n { value: 'bba', label: 'BBA (Bachelor of Business Admin.)' },\n { value: 'bca', label: 'BCA (Bachelor of Computer Applications)' },\n { value: 'btech', label: 'BTech / BE (Engineering)' },\n { value: 'barch', label: 'BArch (Architecture)' },\n { value: 'mbbs', label: 'MBBS (Medicine)' },\n { value: 'bds', label: 'BDS (Dental)' },\n { value: 'bams', label: 'BAMS (Ayurveda)' },\n { value: 'bhms', label: 'BHMS (Homeopathy)' },\n { value: 'llb', label: 'LLB (Law)' },\n { value: 'bed', label: 'BEd (Education)' },\n { value: 'bpharm', label: 'BPharm (Pharmacy)' },\n { value: 'bhm', label: 'BHM (Hotel Management)' },\n { value: 'bfa', label: 'BFA (Fine Arts)' },\n { value: 'bvsc', label: 'BVSc (Veterinary)' },\n // Postgraduate (Master's)\n { value: 'ma', label: 'MA (Master of Arts)' },\n { value: 'msc', label: 'MSc (Master of Science)' },\n { value: 'mcom', label: 'MCom (Master of Commerce)' },\n { value: 'mba', label: 'MBA (Master of Business Admin.)' },\n { value: 'mca', label: 'MCA (Master of Computer Applications)' },\n { value: 'mtech', label: 'MTech / ME (Engineering)' },\n { value: 'md', label: 'MD (Medicine — Postgrad)' },\n { value: 'ms', label: 'MS (Surgery — Postgrad)' },\n { value: 'llm', label: 'LLM (Law — Postgrad)' },\n { value: 'med', label: 'MEd (Education — Postgrad)' },\n { value: 'mpharm', label: 'MPharm (Pharmacy — Postgrad)' },\n { value: 'msw', label: 'MSW (Social Work)' },\n { value: 'march', label: 'MArch (Architecture — Postgrad)' },\n // Doctorate / higher\n { value: 'phd', label: 'PhD' },\n { value: 'dlitt', label: 'DLitt' },\n { value: 'dsc', label: 'DSc' },\n { value: 'mds', label: 'MDS (Dental Surgery)' },\n { value: 'dm', label: 'DM (Super-specialty Medicine)' },\n { value: 'mch', label: 'MCh (Super-specialty Surgery)' },\n { value: 'other', label: 'Other' },\n] as const;\n\n/**\n * Degree options filtered by education level — so the repeater shows only\n * relevant degrees (e.g., diplomas don't show PhD, graduations don't show ITI).\n * 'other' is always included.\n */\nexport const DEGREE_VALUES_BY_LEVEL: Record<string, readonly string[]> = {\n diplomas: ['diploma_polytechnic', 'iti', 'pg_diploma', 'pgdm', 'advanced_diploma', 'other'],\n graduations: [\n 'ba', 'bsc', 'bcom', 'bba', 'bca', 'btech', 'barch', 'mbbs', 'bds',\n 'bams', 'bhms', 'llb', 'bed', 'bpharm', 'bhm', 'bfa', 'bvsc', 'other',\n ],\n postGraduations: [\n 'ma', 'msc', 'mcom', 'mba', 'mca', 'mtech', 'md', 'ms', 'llm',\n 'med', 'mpharm', 'msw', 'march', 'pg_diploma', 'pgdm', 'other',\n ],\n doctorates: ['phd', 'dlitt', 'dsc', 'mds', 'dm', 'mch', 'other'],\n postDoctorates: ['phd', 'dlitt', 'dsc', 'other'],\n} as const;\n\nexport const education: FieldGroup = {\n key: 'education',\n label: 'Education',\n step: 6,\n description: 'Academic background and qualifications.',\n fields: [\n {\n order: 1,\n key: 'highestQualification',\n label: 'Highest Qualification',\n type: 'single_select',\n step: 6,\n isOnboarding: true,\n options: [...qualificationOptions],\n },\n {\n order: 2,\n key: 'education10th',\n label: 'Class 10 Details',\n type: 'object',\n step: 6,\n isOnboarding: true,\n optional: true,\n conditionalOn: {\n field: 'highestQualification',\n values: [\n 'CLASS_10',\n 'CLASS_12',\n 'DIPLOMA',\n 'GRADUATION',\n 'POST_GRAD',\n 'PHD',\n 'POST_DOCTORATE',\n ],\n },\n },\n {\n order: 3,\n key: 'education12th',\n label: 'Class 12 Details',\n type: 'object',\n step: 6,\n isOnboarding: true,\n optional: true,\n conditionalOn: {\n field: 'highestQualification',\n values: ['CLASS_12', 'DIPLOMA', 'GRADUATION', 'POST_GRAD', 'PHD', 'POST_DOCTORATE'],\n },\n },\n {\n order: 4,\n key: 'diplomas',\n label: 'Diploma',\n type: 'object_array',\n step: 6,\n isOnboarding: true,\n optional: true,\n conditionalOn: { field: 'highestQualification', values: ['DIPLOMA'] },\n },\n {\n order: 5,\n key: 'graduations',\n label: 'Graduation',\n type: 'object_array',\n step: 6,\n isOnboarding: true,\n optional: true,\n conditionalOn: {\n field: 'highestQualification',\n values: ['GRADUATION', 'POST_GRAD', 'PHD', 'POST_DOCTORATE'],\n },\n },\n {\n order: 6,\n key: 'postGraduations',\n label: 'Post Graduation',\n type: 'object_array',\n step: 6,\n isOnboarding: true,\n optional: true,\n conditionalOn: {\n field: 'highestQualification',\n values: ['POST_GRAD', 'PHD', 'POST_DOCTORATE'],\n },\n },\n {\n order: 7,\n key: 'doctorates',\n label: 'Doctorate / PhD',\n type: 'object_array',\n step: 6,\n isOnboarding: true,\n optional: true,\n conditionalOn: { field: 'highestQualification', values: ['PHD', 'POST_DOCTORATE'] },\n },\n {\n order: 8,\n key: 'postDoctorates',\n label: 'Post Doctorate',\n type: 'object_array',\n step: 6,\n isOnboarding: true,\n optional: true,\n conditionalOn: { field: 'highestQualification', values: ['POST_DOCTORATE'] },\n },\n {\n order: 9,\n key: 'otherCertificates',\n label: 'Other Certificates',\n type: 'object_array',\n step: 6,\n isOnboarding: true,\n optional: true,\n },\n {\n order: 10,\n key: 'educationNotes',\n label: 'Education Notes',\n type: 'textarea',\n step: 6,\n isOnboarding: true,\n optional: true,\n },\n ],\n};\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"08-neurodiversity.d.ts","sourceRoot":"","sources":["../../src/profile-fields/08-neurodiversity.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAE7C;;;;;;;;;;;;;;;;;;;;GAoBG;AAIH,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;EAsB9B,CAAC;AAIX,eAAO,MAAM,8BAA8B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA6CjC,CAAC;AAIX,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;EAQ1B,CAAC;AAIX,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAexB,CAAC;AAIX,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAgB3B,CAAC;AAIX,eAAO,MAAM,iCAAiC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAepC,CAAC;AAIX,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;EAUvB,CAAC;AAIX,eAAO,MAAM,8BAA8B;;;;;;;;;;;;;;;;;;;;;;;;;;;EAUjC,CAAC;AAIX,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAmB9B,CAAC;AAIX,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;EAWxB,CAAC;AAIX,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;EAetB,CAAC;AAMX,eAAO,MAAM,cAAc,EAAE,UA8H5B,CAAC"}
1
+ {"version":3,"file":"08-neurodiversity.d.ts","sourceRoot":"","sources":["../../src/profile-fields/08-neurodiversity.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAE7C;;;;;;;;;;;;;;;;;;;;GAoBG;AAIH,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;EAsB9B,CAAC;AAIX,eAAO,MAAM,8BAA8B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAqFjC,CAAC;AAIX,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;EAQ1B,CAAC;AAIX,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAexB,CAAC;AAIX,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAgB3B,CAAC;AAIX,eAAO,MAAM,iCAAiC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAepC,CAAC;AAIX,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;EAUvB,CAAC;AAIX,eAAO,MAAM,8BAA8B;;;;;;;;;;;;;;;;;;;;;;;;;;;EAUjC,CAAC;AAIX,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAmB9B,CAAC;AAIX,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;EAWxB,CAAC;AAIX,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;EAetB,CAAC;AAMX,eAAO,MAAM,cAAc,EAAE,UA8H5B,CAAC"}
@@ -46,25 +46,53 @@ export const neurodiverseIdentityOptions = [
46
46
  // ─── 2. Specific ND conditions ──────────────────────────────────────────────
47
47
  export const neurodiversityConditionOptions = [
48
48
  { value: 'adhd', label: 'ADHD / ADD', description: 'Attention Deficit Hyperactivity Disorder' },
49
- { value: 'autism_spectrum', label: 'Autism Spectrum (ASC / ASD)', description: 'Autism Spectrum Condition' },
50
- { value: 'dyslexia', label: 'Dyslexia', description: 'Reading and language-processing differences' },
49
+ {
50
+ value: 'autism_spectrum',
51
+ label: 'Autism Spectrum (ASC / ASD)',
52
+ description: 'Autism Spectrum Condition',
53
+ },
54
+ {
55
+ value: 'dyslexia',
56
+ label: 'Dyslexia',
57
+ description: 'Reading and language-processing differences',
58
+ },
51
59
  {
52
60
  value: 'dyspraxia',
53
61
  label: 'Dyspraxia / DCD',
54
62
  description: 'Developmental Coordination Disorder — motor coordination',
55
63
  },
56
64
  { value: 'dyscalculia', label: 'Dyscalculia', description: 'Difficulty with numbers and math' },
57
- { value: 'dysgraphia', label: 'Dysgraphia', description: 'Difficulty with writing / fine motor for writing' },
65
+ {
66
+ value: 'dysgraphia',
67
+ label: 'Dysgraphia',
68
+ description: 'Difficulty with writing / fine motor for writing',
69
+ },
58
70
  {
59
71
  value: 'tourettes',
60
72
  label: "Tourette's / Tic Disorder",
61
73
  description: 'Involuntary tics and movements',
62
74
  },
63
75
  { value: 'ocd', label: 'OCD', description: 'Obsessive-Compulsive Disorder' },
64
- { value: 'bipolar', label: 'Bipolar Disorder', description: 'Mood episodes between mania and depression' },
65
- { value: 'anxiety_disorder', label: 'Anxiety Disorder', description: 'Persistent excessive worry' },
66
- { value: 'depression_mood', label: 'Depression / Mood Disorder', description: 'Clinical depression or mood disorders' },
67
- { value: 'ptsd', label: 'PTSD / C-PTSD', description: 'Post-traumatic stress (including complex)' },
76
+ {
77
+ value: 'bipolar',
78
+ label: 'Bipolar Disorder',
79
+ description: 'Mood episodes between mania and depression',
80
+ },
81
+ {
82
+ value: 'anxiety_disorder',
83
+ label: 'Anxiety Disorder',
84
+ description: 'Persistent excessive worry',
85
+ },
86
+ {
87
+ value: 'depression_mood',
88
+ label: 'Depression / Mood Disorder',
89
+ description: 'Clinical depression or mood disorders',
90
+ },
91
+ {
92
+ value: 'ptsd',
93
+ label: 'PTSD / C-PTSD',
94
+ description: 'Post-traumatic stress (including complex)',
95
+ },
68
96
  {
69
97
  value: 'sensory_processing',
70
98
  label: 'Sensory Processing Disorder',
@@ -80,11 +108,23 @@ export const neurodiversityConditionOptions = [
80
108
  label: 'Visual Processing Disorder',
81
109
  description: 'Difficulty processing visual information',
82
110
  },
83
- { value: 'giftedness_2e', label: 'Giftedness / Twice-Exceptional (2e)', description: 'High cognitive ability, often with ND' },
84
- { value: 'specific_language_impairment', label: 'Specific Language Impairment', description: 'Language development differences' },
111
+ {
112
+ value: 'giftedness_2e',
113
+ label: 'Giftedness / Twice-Exceptional (2e)',
114
+ description: 'High cognitive ability, often with ND',
115
+ },
116
+ {
117
+ value: 'specific_language_impairment',
118
+ label: 'Specific Language Impairment',
119
+ description: 'Language development differences',
120
+ },
85
121
  { value: 'stuttering', label: 'Stuttering / Speech Disorder' },
86
122
  { value: 'schizophrenia', label: 'Schizophrenia / Schizoaffective' },
87
- { value: 'eating_disorder', label: 'Eating Disorder', description: 'Anorexia, bulimia, binge, ARFID, etc.' },
123
+ {
124
+ value: 'eating_disorder',
125
+ label: 'Eating Disorder',
126
+ description: 'Anorexia, bulimia, binge, ARFID, etc.',
127
+ },
88
128
  { value: 'bpd', label: 'Borderline Personality (BPD)' },
89
129
  { value: 'intellectual_disability', label: 'Intellectual Disability' },
90
130
  { value: 'other', label: 'Other' },
@@ -1 +1 @@
1
- {"version":3,"file":"08-neurodiversity.js","sourceRoot":"","sources":["../../src/profile-fields/08-neurodiversity.ts"],"names":[],"mappings":"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","sourcesContent":["import type { FieldGroup } from './types.js';\n\n/**\n * Step 8 — Neurodiversity (rebuilt 2026-04)\n *\n * Exhaustive coverage of the neurodiversity profile across 11 sub-steps:\n * 1. Identity (including diagnosis status)\n * 2. Specific ND conditions\n * 3. Age of realization / diagnosis\n * 4. Sensory profile (hyper/hypo per sense + seeking + overwhelm)\n * 5. Cognitive strengths (ND-associated gifts)\n * 6. Executive function challenges\n * 7. Learning style\n * 8. Communication preference\n * 9. Support & accommodations that help\n * 10. Masking & burnout\n * 11. Impact on daily life\n *\n * Conditional sub-steps (2, 3, 4, 5, 6, 9, 10, 11) are shown unless the\n * respondent selects `no_neurotypical` or `prefer_not_to_say` for identity.\n * Steps 7 and 8 (learningStyle, communicationPreference) are shown for\n * everyone since they're useful profile data regardless of ND identity.\n */\n\n// ─── 1. Identity ────────────────────────────────────────────────────────────\n\nexport const neurodiverseIdentityOptions = [\n {\n value: 'yes_diagnosed',\n label: 'Yes — formally diagnosed',\n description: 'Clinically diagnosed by a qualified professional',\n },\n {\n value: 'yes_self_identified',\n label: 'Yes — self-identified',\n description: 'Identify as neurodivergent without formal diagnosis',\n },\n {\n value: 'exploring',\n label: 'Exploring / suspect',\n description: \"Not sure yet — exploring whether I'm neurodivergent\",\n },\n {\n value: 'no_neurotypical',\n label: 'No — neurotypical',\n description: \"Don't identify as neurodivergent\",\n },\n { value: 'prefer_not_to_say', label: 'Prefer not to say' },\n] as const;\n\n// ─── 2. Specific ND conditions ──────────────────────────────────────────────\n\nexport const neurodiversityConditionOptions = [\n { value: 'adhd', label: 'ADHD / ADD', description: 'Attention Deficit Hyperactivity Disorder' },\n { value: 'autism_spectrum', label: 'Autism Spectrum (ASC / ASD)', description: 'Autism Spectrum Condition' },\n { value: 'dyslexia', label: 'Dyslexia', description: 'Reading and language-processing differences' },\n {\n value: 'dyspraxia',\n label: 'Dyspraxia / DCD',\n description: 'Developmental Coordination Disorder — motor coordination',\n },\n { value: 'dyscalculia', label: 'Dyscalculia', description: 'Difficulty with numbers and math' },\n { value: 'dysgraphia', label: 'Dysgraphia', description: 'Difficulty with writing / fine motor for writing' },\n {\n value: 'tourettes',\n label: \"Tourette's / Tic Disorder\",\n description: 'Involuntary tics and movements',\n },\n { value: 'ocd', label: 'OCD', description: 'Obsessive-Compulsive Disorder' },\n { value: 'bipolar', label: 'Bipolar Disorder', description: 'Mood episodes between mania and depression' },\n { value: 'anxiety_disorder', label: 'Anxiety Disorder', description: 'Persistent excessive worry' },\n { value: 'depression_mood', label: 'Depression / Mood Disorder', description: 'Clinical depression or mood disorders' },\n { value: 'ptsd', label: 'PTSD / C-PTSD', description: 'Post-traumatic stress (including complex)' },\n {\n value: 'sensory_processing',\n label: 'Sensory Processing Disorder',\n description: 'Difficulty processing sensory information',\n },\n {\n value: 'auditory_processing',\n label: 'Auditory Processing Disorder',\n description: 'Difficulty processing sounds despite normal hearing',\n },\n {\n value: 'visual_processing',\n label: 'Visual Processing Disorder',\n description: 'Difficulty processing visual information',\n },\n { value: 'giftedness_2e', label: 'Giftedness / Twice-Exceptional (2e)', description: 'High cognitive ability, often with ND' },\n { value: 'specific_language_impairment', label: 'Specific Language Impairment', description: 'Language development differences' },\n { value: 'stuttering', label: 'Stuttering / Speech Disorder' },\n { value: 'schizophrenia', label: 'Schizophrenia / Schizoaffective' },\n { value: 'eating_disorder', label: 'Eating Disorder', description: 'Anorexia, bulimia, binge, ARFID, etc.' },\n { value: 'bpd', label: 'Borderline Personality (BPD)' },\n { value: 'intellectual_disability', label: 'Intellectual Disability' },\n { value: 'other', label: 'Other' },\n { value: 'prefer_not_to_say', label: 'Prefer not to say' },\n] as const;\n\n// ─── 3. Age of realization / diagnosis ──────────────────────────────────────\n\nexport const ageOfRealizationOptions = [\n { value: 'childhood', label: 'Childhood (before 13)' },\n { value: 'teen', label: 'Teen years (13–18)' },\n { value: 'young_adult', label: 'Young adult (19–30)' },\n { value: 'adult', label: 'Adult (31–50)' },\n { value: 'later_life', label: 'Later in life (50+)' },\n { value: 'still_exploring', label: 'Still exploring' },\n { value: 'prefer_not_to_say', label: 'Prefer not to say' },\n] as const;\n\n// ─── 4. Sensory profile ─────────────────────────────────────────────────────\n\nexport const sensoryProfileOptions = [\n { value: 'hyper_sound', label: 'Hypersensitive to sound' },\n { value: 'hypo_sound', label: 'Hyposensitive to sound' },\n { value: 'hyper_light', label: 'Hypersensitive to light' },\n { value: 'hypo_light', label: 'Hyposensitive to light' },\n { value: 'hyper_touch', label: 'Hypersensitive to touch / textures' },\n { value: 'hypo_touch', label: 'Hyposensitive to touch' },\n { value: 'hyper_smell', label: 'Hypersensitive to smells' },\n { value: 'hypo_smell', label: 'Hyposensitive to smells' },\n { value: 'hyper_taste', label: 'Hypersensitive to taste' },\n { value: 'hypo_taste', label: 'Hyposensitive to taste' },\n { value: 'seeks_stimulation', label: 'Seeks sensory stimulation' },\n { value: 'sensory_overwhelm', label: 'Sensory overwhelm / shutdown' },\n { value: 'none', label: 'No specific sensitivities' },\n { value: 'prefer_not_to_say', label: 'Prefer not to say' },\n] as const;\n\n// ─── 5. Cognitive strengths ─────────────────────────────────────────────────\n\nexport const cognitiveStrengthOptions = [\n { value: 'hyperfocus', label: 'Hyperfocus on interests' },\n { value: 'pattern_recognition', label: 'Pattern recognition' },\n { value: 'creative_thinking', label: 'Creative / divergent thinking' },\n { value: 'attention_to_detail', label: 'Attention to detail' },\n { value: 'systems_thinking', label: 'Systems thinking' },\n { value: 'big_picture', label: 'Big-picture thinking' },\n { value: 'visual_spatial', label: 'Visual-spatial skills' },\n { value: 'specialized_memory', label: 'Specialized / topic memory' },\n { value: 'problem_solving', label: 'Problem-solving' },\n { value: 'empathy', label: 'Empathy / emotional insight' },\n { value: 'passionate_curiosity', label: 'Passionate curiosity' },\n { value: 'directness_honesty', label: 'Honesty / directness' },\n { value: 'persistence', label: 'Persistence' },\n { value: 'none_unsure', label: 'None / unsure' },\n { value: 'prefer_not_to_say', label: 'Prefer not to say' },\n] as const;\n\n// ─── 6. Executive function challenges ───────────────────────────────────────\n\nexport const executiveFunctionChallengeOptions = [\n { value: 'planning_organization', label: 'Planning / organization' },\n { value: 'time_management', label: 'Time management / time blindness' },\n { value: 'task_initiation', label: 'Task initiation (getting started)' },\n { value: 'task_switching', label: 'Task switching / transitions' },\n { value: 'working_memory', label: 'Working memory' },\n { value: 'emotional_regulation', label: 'Emotional regulation' },\n { value: 'impulse_control', label: 'Impulse control' },\n { value: 'focus_attention', label: 'Focus / sustaining attention' },\n { value: 'prioritization', label: 'Prioritization' },\n { value: 'decision_fatigue', label: 'Decision-making / decision fatigue' },\n { value: 'self_motivation', label: 'Self-motivation' },\n { value: 'sleep_regulation', label: 'Sleep regulation' },\n { value: 'none', label: 'No significant challenges' },\n { value: 'prefer_not_to_say', label: 'Prefer not to say' },\n] as const;\n\n// ─── 7. Learning style ──────────────────────────────────────────────────────\n\nexport const learningStyleOptions = [\n { value: 'visual', label: 'Visual learner' },\n { value: 'auditory', label: 'Auditory learner' },\n { value: 'kinesthetic', label: 'Kinesthetic / hands-on' },\n { value: 'reading_writing', label: 'Reading & writing' },\n { value: 'multimodal', label: 'Multimodal (combination)' },\n { value: 'needs_repetition', label: 'Needs repetition' },\n { value: 'needs_structure', label: 'Learns best with structure' },\n { value: 'prefers_autonomy', label: 'Learns best with autonomy' },\n { value: 'prefer_not_to_say', label: 'Prefer not to say' },\n] as const;\n\n// ─── 8. Communication preference ────────────────────────────────────────────\n\nexport const communicationPreferenceOptions = [\n { value: 'face_to_face', label: 'Face-to-face verbal' },\n { value: 'written', label: 'Written (text / email / chat)' },\n { value: 'phone', label: 'Phone calls' },\n { value: 'video', label: 'Video calls' },\n { value: 'small_groups', label: 'Small groups only' },\n { value: 'one_on_one', label: 'One-on-one' },\n { value: 'visual_aids', label: 'With visual aids' },\n { value: 'async', label: 'Async over synchronous' },\n { value: 'prefer_not_to_say', label: 'Prefer not to say' },\n] as const;\n\n// ─── 9. Support & accommodations ────────────────────────────────────────────\n\nexport const supportAccommodationOptions = [\n { value: 'flexible_schedule', label: 'Flexible schedule / deadlines' },\n { value: 'written_instructions', label: 'Written instructions' },\n { value: 'quiet_workspace', label: 'Quiet workspace' },\n { value: 'regular_breaks', label: 'Regular breaks' },\n { value: 'body_doubling', label: 'Body-doubling / co-working' },\n { value: 'assistive_tech', label: 'Assistive technology' },\n { value: 'noise_cancelling', label: 'Noise-cancelling headphones' },\n { value: 'fidget_tools', label: 'Fidget tools / sensory items' },\n { value: 'structured_routines', label: 'Structured routines' },\n { value: 'clear_expectations', label: 'Clear expectations' },\n { value: 'visual_schedules', label: 'Visual schedules / checklists' },\n { value: 'therapy', label: 'Professional therapy / counseling' },\n { value: 'medication', label: 'Medication' },\n { value: 'peer_support', label: 'Peer support groups' },\n { value: 'coaching', label: 'ADHD / ASD coaching' },\n { value: 'family_support', label: 'Family / caregiver support' },\n { value: 'none', label: 'No specific support needed' },\n { value: 'prefer_not_to_say', label: 'Prefer not to say' },\n] as const;\n\n// ─── 10. Masking & burnout ──────────────────────────────────────────────────\n\nexport const maskingBurnoutOptions = [\n {\n value: 'frequently',\n label: 'Frequently — leads to burnout',\n description: 'Mask most of the time; often experience burnout',\n },\n { value: 'sometimes', label: 'Sometimes', description: 'Mask in certain settings' },\n { value: 'rarely', label: 'Rarely' },\n { value: 'never', label: 'Never' },\n { value: 'not_sure', label: 'Not sure what this means' },\n { value: 'prefer_not_to_say', label: 'Prefer not to say' },\n] as const;\n\n// ─── 11. Impact on daily life ───────────────────────────────────────────────\n\nexport const impactOnLifeOptions = [\n {\n value: 'significant',\n label: 'Significant impact',\n description: 'Need daily support to function',\n },\n {\n value: 'moderate',\n label: 'Moderate impact',\n description: 'Some support helps me thrive',\n },\n { value: 'mild', label: 'Mild impact', description: 'Manageable with awareness' },\n { value: 'minimal', label: 'Minimal / no noticeable impact' },\n { value: 'varies', label: 'Varies day to day' },\n { value: 'prefer_not_to_say', label: 'Prefer not to say' },\n] as const;\n\n// ─── Field Group ────────────────────────────────────────────────────────────\n\nconst IDENTITY_SKIP = ['no_neurotypical', 'prefer_not_to_say']; // conditional hide list\n\nexport const neurodiversity: FieldGroup = {\n key: 'neurodiversity',\n label: 'Neurodiversity',\n step: 8,\n description:\n 'Neurodivergent identity, sensory profile, cognitive strengths, executive function, and support needs.',\n fields: [\n {\n order: 1,\n key: 'neurodiverseIdentity',\n label: 'Neurodivergent Identity',\n type: 'single_select',\n step: 8,\n isOnboarding: true,\n optional: true,\n options: [...neurodiverseIdentityOptions],\n },\n {\n order: 2,\n key: 'conditions',\n label: 'Specific Conditions',\n type: 'multi_select',\n step: 8,\n isOnboarding: true,\n optional: true,\n options: [...neurodiversityConditionOptions],\n conditionalOn: { field: 'neurodiverseIdentity', notIn: IDENTITY_SKIP },\n },\n {\n order: 3,\n key: 'ageOfRealization',\n label: 'Age of Realization',\n type: 'single_select',\n step: 8,\n isOnboarding: true,\n optional: true,\n options: [...ageOfRealizationOptions],\n conditionalOn: { field: 'neurodiverseIdentity', notIn: IDENTITY_SKIP },\n },\n {\n order: 4,\n key: 'sensoryProfile',\n label: 'Sensory Profile',\n type: 'multi_select',\n step: 8,\n isOnboarding: true,\n optional: true,\n options: [...sensoryProfileOptions],\n conditionalOn: { field: 'neurodiverseIdentity', notIn: IDENTITY_SKIP },\n },\n {\n order: 5,\n key: 'cognitiveStrengths',\n label: 'Cognitive Strengths',\n type: 'multi_select',\n step: 8,\n isOnboarding: true,\n optional: true,\n options: [...cognitiveStrengthOptions],\n conditionalOn: { field: 'neurodiverseIdentity', notIn: IDENTITY_SKIP },\n },\n {\n order: 6,\n key: 'executiveFunctionChallenges',\n label: 'Executive Function Challenges',\n type: 'multi_select',\n step: 8,\n isOnboarding: true,\n optional: true,\n options: [...executiveFunctionChallengeOptions],\n conditionalOn: { field: 'neurodiverseIdentity', notIn: IDENTITY_SKIP },\n },\n {\n order: 7,\n key: 'learningStyle',\n label: 'Learning Style',\n type: 'single_select',\n step: 8,\n isOnboarding: true,\n optional: true,\n options: [...learningStyleOptions],\n },\n {\n order: 8,\n key: 'communicationPreference',\n label: 'Communication Preference',\n type: 'single_select',\n step: 8,\n isOnboarding: true,\n optional: true,\n options: [...communicationPreferenceOptions],\n },\n {\n order: 9,\n key: 'supportAndAccommodations',\n label: 'Support & Accommodations',\n type: 'multi_select',\n step: 8,\n isOnboarding: true,\n optional: true,\n options: [...supportAccommodationOptions],\n conditionalOn: { field: 'neurodiverseIdentity', notIn: IDENTITY_SKIP },\n },\n {\n order: 10,\n key: 'maskingAndBurnout',\n label: 'Masking & Burnout',\n type: 'single_select',\n step: 8,\n isOnboarding: true,\n optional: true,\n options: [...maskingBurnoutOptions],\n conditionalOn: { field: 'neurodiverseIdentity', notIn: IDENTITY_SKIP },\n },\n {\n order: 11,\n key: 'impactOnLife',\n label: 'Impact on Daily Life',\n type: 'single_select',\n step: 8,\n isOnboarding: true,\n optional: true,\n options: [...impactOnLifeOptions],\n conditionalOn: { field: 'neurodiverseIdentity', notIn: IDENTITY_SKIP },\n },\n ],\n};\n"]}
1
+ {"version":3,"file":"08-neurodiversity.js","sourceRoot":"","sources":["../../src/profile-fields/08-neurodiversity.ts"],"names":[],"mappings":"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","sourcesContent":["import type { FieldGroup } from './types.js';\n\n/**\n * Step 8 — Neurodiversity (rebuilt 2026-04)\n *\n * Exhaustive coverage of the neurodiversity profile across 11 sub-steps:\n * 1. Identity (including diagnosis status)\n * 2. Specific ND conditions\n * 3. Age of realization / diagnosis\n * 4. Sensory profile (hyper/hypo per sense + seeking + overwhelm)\n * 5. Cognitive strengths (ND-associated gifts)\n * 6. Executive function challenges\n * 7. Learning style\n * 8. Communication preference\n * 9. Support & accommodations that help\n * 10. Masking & burnout\n * 11. Impact on daily life\n *\n * Conditional sub-steps (2, 3, 4, 5, 6, 9, 10, 11) are shown unless the\n * respondent selects `no_neurotypical` or `prefer_not_to_say` for identity.\n * Steps 7 and 8 (learningStyle, communicationPreference) are shown for\n * everyone since they're useful profile data regardless of ND identity.\n */\n\n// ─── 1. Identity ────────────────────────────────────────────────────────────\n\nexport const neurodiverseIdentityOptions = [\n {\n value: 'yes_diagnosed',\n label: 'Yes — formally diagnosed',\n description: 'Clinically diagnosed by a qualified professional',\n },\n {\n value: 'yes_self_identified',\n label: 'Yes — self-identified',\n description: 'Identify as neurodivergent without formal diagnosis',\n },\n {\n value: 'exploring',\n label: 'Exploring / suspect',\n description: \"Not sure yet — exploring whether I'm neurodivergent\",\n },\n {\n value: 'no_neurotypical',\n label: 'No — neurotypical',\n description: \"Don't identify as neurodivergent\",\n },\n { value: 'prefer_not_to_say', label: 'Prefer not to say' },\n] as const;\n\n// ─── 2. Specific ND conditions ──────────────────────────────────────────────\n\nexport const neurodiversityConditionOptions = [\n { value: 'adhd', label: 'ADHD / ADD', description: 'Attention Deficit Hyperactivity Disorder' },\n {\n value: 'autism_spectrum',\n label: 'Autism Spectrum (ASC / ASD)',\n description: 'Autism Spectrum Condition',\n },\n {\n value: 'dyslexia',\n label: 'Dyslexia',\n description: 'Reading and language-processing differences',\n },\n {\n value: 'dyspraxia',\n label: 'Dyspraxia / DCD',\n description: 'Developmental Coordination Disorder — motor coordination',\n },\n { value: 'dyscalculia', label: 'Dyscalculia', description: 'Difficulty with numbers and math' },\n {\n value: 'dysgraphia',\n label: 'Dysgraphia',\n description: 'Difficulty with writing / fine motor for writing',\n },\n {\n value: 'tourettes',\n label: \"Tourette's / Tic Disorder\",\n description: 'Involuntary tics and movements',\n },\n { value: 'ocd', label: 'OCD', description: 'Obsessive-Compulsive Disorder' },\n {\n value: 'bipolar',\n label: 'Bipolar Disorder',\n description: 'Mood episodes between mania and depression',\n },\n {\n value: 'anxiety_disorder',\n label: 'Anxiety Disorder',\n description: 'Persistent excessive worry',\n },\n {\n value: 'depression_mood',\n label: 'Depression / Mood Disorder',\n description: 'Clinical depression or mood disorders',\n },\n {\n value: 'ptsd',\n label: 'PTSD / C-PTSD',\n description: 'Post-traumatic stress (including complex)',\n },\n {\n value: 'sensory_processing',\n label: 'Sensory Processing Disorder',\n description: 'Difficulty processing sensory information',\n },\n {\n value: 'auditory_processing',\n label: 'Auditory Processing Disorder',\n description: 'Difficulty processing sounds despite normal hearing',\n },\n {\n value: 'visual_processing',\n label: 'Visual Processing Disorder',\n description: 'Difficulty processing visual information',\n },\n {\n value: 'giftedness_2e',\n label: 'Giftedness / Twice-Exceptional (2e)',\n description: 'High cognitive ability, often with ND',\n },\n {\n value: 'specific_language_impairment',\n label: 'Specific Language Impairment',\n description: 'Language development differences',\n },\n { value: 'stuttering', label: 'Stuttering / Speech Disorder' },\n { value: 'schizophrenia', label: 'Schizophrenia / Schizoaffective' },\n {\n value: 'eating_disorder',\n label: 'Eating Disorder',\n description: 'Anorexia, bulimia, binge, ARFID, etc.',\n },\n { value: 'bpd', label: 'Borderline Personality (BPD)' },\n { value: 'intellectual_disability', label: 'Intellectual Disability' },\n { value: 'other', label: 'Other' },\n { value: 'prefer_not_to_say', label: 'Prefer not to say' },\n] as const;\n\n// ─── 3. Age of realization / diagnosis ──────────────────────────────────────\n\nexport const ageOfRealizationOptions = [\n { value: 'childhood', label: 'Childhood (before 13)' },\n { value: 'teen', label: 'Teen years (13–18)' },\n { value: 'young_adult', label: 'Young adult (19–30)' },\n { value: 'adult', label: 'Adult (31–50)' },\n { value: 'later_life', label: 'Later in life (50+)' },\n { value: 'still_exploring', label: 'Still exploring' },\n { value: 'prefer_not_to_say', label: 'Prefer not to say' },\n] as const;\n\n// ─── 4. Sensory profile ─────────────────────────────────────────────────────\n\nexport const sensoryProfileOptions = [\n { value: 'hyper_sound', label: 'Hypersensitive to sound' },\n { value: 'hypo_sound', label: 'Hyposensitive to sound' },\n { value: 'hyper_light', label: 'Hypersensitive to light' },\n { value: 'hypo_light', label: 'Hyposensitive to light' },\n { value: 'hyper_touch', label: 'Hypersensitive to touch / textures' },\n { value: 'hypo_touch', label: 'Hyposensitive to touch' },\n { value: 'hyper_smell', label: 'Hypersensitive to smells' },\n { value: 'hypo_smell', label: 'Hyposensitive to smells' },\n { value: 'hyper_taste', label: 'Hypersensitive to taste' },\n { value: 'hypo_taste', label: 'Hyposensitive to taste' },\n { value: 'seeks_stimulation', label: 'Seeks sensory stimulation' },\n { value: 'sensory_overwhelm', label: 'Sensory overwhelm / shutdown' },\n { value: 'none', label: 'No specific sensitivities' },\n { value: 'prefer_not_to_say', label: 'Prefer not to say' },\n] as const;\n\n// ─── 5. Cognitive strengths ─────────────────────────────────────────────────\n\nexport const cognitiveStrengthOptions = [\n { value: 'hyperfocus', label: 'Hyperfocus on interests' },\n { value: 'pattern_recognition', label: 'Pattern recognition' },\n { value: 'creative_thinking', label: 'Creative / divergent thinking' },\n { value: 'attention_to_detail', label: 'Attention to detail' },\n { value: 'systems_thinking', label: 'Systems thinking' },\n { value: 'big_picture', label: 'Big-picture thinking' },\n { value: 'visual_spatial', label: 'Visual-spatial skills' },\n { value: 'specialized_memory', label: 'Specialized / topic memory' },\n { value: 'problem_solving', label: 'Problem-solving' },\n { value: 'empathy', label: 'Empathy / emotional insight' },\n { value: 'passionate_curiosity', label: 'Passionate curiosity' },\n { value: 'directness_honesty', label: 'Honesty / directness' },\n { value: 'persistence', label: 'Persistence' },\n { value: 'none_unsure', label: 'None / unsure' },\n { value: 'prefer_not_to_say', label: 'Prefer not to say' },\n] as const;\n\n// ─── 6. Executive function challenges ───────────────────────────────────────\n\nexport const executiveFunctionChallengeOptions = [\n { value: 'planning_organization', label: 'Planning / organization' },\n { value: 'time_management', label: 'Time management / time blindness' },\n { value: 'task_initiation', label: 'Task initiation (getting started)' },\n { value: 'task_switching', label: 'Task switching / transitions' },\n { value: 'working_memory', label: 'Working memory' },\n { value: 'emotional_regulation', label: 'Emotional regulation' },\n { value: 'impulse_control', label: 'Impulse control' },\n { value: 'focus_attention', label: 'Focus / sustaining attention' },\n { value: 'prioritization', label: 'Prioritization' },\n { value: 'decision_fatigue', label: 'Decision-making / decision fatigue' },\n { value: 'self_motivation', label: 'Self-motivation' },\n { value: 'sleep_regulation', label: 'Sleep regulation' },\n { value: 'none', label: 'No significant challenges' },\n { value: 'prefer_not_to_say', label: 'Prefer not to say' },\n] as const;\n\n// ─── 7. Learning style ──────────────────────────────────────────────────────\n\nexport const learningStyleOptions = [\n { value: 'visual', label: 'Visual learner' },\n { value: 'auditory', label: 'Auditory learner' },\n { value: 'kinesthetic', label: 'Kinesthetic / hands-on' },\n { value: 'reading_writing', label: 'Reading & writing' },\n { value: 'multimodal', label: 'Multimodal (combination)' },\n { value: 'needs_repetition', label: 'Needs repetition' },\n { value: 'needs_structure', label: 'Learns best with structure' },\n { value: 'prefers_autonomy', label: 'Learns best with autonomy' },\n { value: 'prefer_not_to_say', label: 'Prefer not to say' },\n] as const;\n\n// ─── 8. Communication preference ────────────────────────────────────────────\n\nexport const communicationPreferenceOptions = [\n { value: 'face_to_face', label: 'Face-to-face verbal' },\n { value: 'written', label: 'Written (text / email / chat)' },\n { value: 'phone', label: 'Phone calls' },\n { value: 'video', label: 'Video calls' },\n { value: 'small_groups', label: 'Small groups only' },\n { value: 'one_on_one', label: 'One-on-one' },\n { value: 'visual_aids', label: 'With visual aids' },\n { value: 'async', label: 'Async over synchronous' },\n { value: 'prefer_not_to_say', label: 'Prefer not to say' },\n] as const;\n\n// ─── 9. Support & accommodations ────────────────────────────────────────────\n\nexport const supportAccommodationOptions = [\n { value: 'flexible_schedule', label: 'Flexible schedule / deadlines' },\n { value: 'written_instructions', label: 'Written instructions' },\n { value: 'quiet_workspace', label: 'Quiet workspace' },\n { value: 'regular_breaks', label: 'Regular breaks' },\n { value: 'body_doubling', label: 'Body-doubling / co-working' },\n { value: 'assistive_tech', label: 'Assistive technology' },\n { value: 'noise_cancelling', label: 'Noise-cancelling headphones' },\n { value: 'fidget_tools', label: 'Fidget tools / sensory items' },\n { value: 'structured_routines', label: 'Structured routines' },\n { value: 'clear_expectations', label: 'Clear expectations' },\n { value: 'visual_schedules', label: 'Visual schedules / checklists' },\n { value: 'therapy', label: 'Professional therapy / counseling' },\n { value: 'medication', label: 'Medication' },\n { value: 'peer_support', label: 'Peer support groups' },\n { value: 'coaching', label: 'ADHD / ASD coaching' },\n { value: 'family_support', label: 'Family / caregiver support' },\n { value: 'none', label: 'No specific support needed' },\n { value: 'prefer_not_to_say', label: 'Prefer not to say' },\n] as const;\n\n// ─── 10. Masking & burnout ──────────────────────────────────────────────────\n\nexport const maskingBurnoutOptions = [\n {\n value: 'frequently',\n label: 'Frequently — leads to burnout',\n description: 'Mask most of the time; often experience burnout',\n },\n { value: 'sometimes', label: 'Sometimes', description: 'Mask in certain settings' },\n { value: 'rarely', label: 'Rarely' },\n { value: 'never', label: 'Never' },\n { value: 'not_sure', label: 'Not sure what this means' },\n { value: 'prefer_not_to_say', label: 'Prefer not to say' },\n] as const;\n\n// ─── 11. Impact on daily life ───────────────────────────────────────────────\n\nexport const impactOnLifeOptions = [\n {\n value: 'significant',\n label: 'Significant impact',\n description: 'Need daily support to function',\n },\n {\n value: 'moderate',\n label: 'Moderate impact',\n description: 'Some support helps me thrive',\n },\n { value: 'mild', label: 'Mild impact', description: 'Manageable with awareness' },\n { value: 'minimal', label: 'Minimal / no noticeable impact' },\n { value: 'varies', label: 'Varies day to day' },\n { value: 'prefer_not_to_say', label: 'Prefer not to say' },\n] as const;\n\n// ─── Field Group ────────────────────────────────────────────────────────────\n\nconst IDENTITY_SKIP = ['no_neurotypical', 'prefer_not_to_say']; // conditional hide list\n\nexport const neurodiversity: FieldGroup = {\n key: 'neurodiversity',\n label: 'Neurodiversity',\n step: 8,\n description:\n 'Neurodivergent identity, sensory profile, cognitive strengths, executive function, and support needs.',\n fields: [\n {\n order: 1,\n key: 'neurodiverseIdentity',\n label: 'Neurodivergent Identity',\n type: 'single_select',\n step: 8,\n isOnboarding: true,\n optional: true,\n options: [...neurodiverseIdentityOptions],\n },\n {\n order: 2,\n key: 'conditions',\n label: 'Specific Conditions',\n type: 'multi_select',\n step: 8,\n isOnboarding: true,\n optional: true,\n options: [...neurodiversityConditionOptions],\n conditionalOn: { field: 'neurodiverseIdentity', notIn: IDENTITY_SKIP },\n },\n {\n order: 3,\n key: 'ageOfRealization',\n label: 'Age of Realization',\n type: 'single_select',\n step: 8,\n isOnboarding: true,\n optional: true,\n options: [...ageOfRealizationOptions],\n conditionalOn: { field: 'neurodiverseIdentity', notIn: IDENTITY_SKIP },\n },\n {\n order: 4,\n key: 'sensoryProfile',\n label: 'Sensory Profile',\n type: 'multi_select',\n step: 8,\n isOnboarding: true,\n optional: true,\n options: [...sensoryProfileOptions],\n conditionalOn: { field: 'neurodiverseIdentity', notIn: IDENTITY_SKIP },\n },\n {\n order: 5,\n key: 'cognitiveStrengths',\n label: 'Cognitive Strengths',\n type: 'multi_select',\n step: 8,\n isOnboarding: true,\n optional: true,\n options: [...cognitiveStrengthOptions],\n conditionalOn: { field: 'neurodiverseIdentity', notIn: IDENTITY_SKIP },\n },\n {\n order: 6,\n key: 'executiveFunctionChallenges',\n label: 'Executive Function Challenges',\n type: 'multi_select',\n step: 8,\n isOnboarding: true,\n optional: true,\n options: [...executiveFunctionChallengeOptions],\n conditionalOn: { field: 'neurodiverseIdentity', notIn: IDENTITY_SKIP },\n },\n {\n order: 7,\n key: 'learningStyle',\n label: 'Learning Style',\n type: 'single_select',\n step: 8,\n isOnboarding: true,\n optional: true,\n options: [...learningStyleOptions],\n },\n {\n order: 8,\n key: 'communicationPreference',\n label: 'Communication Preference',\n type: 'single_select',\n step: 8,\n isOnboarding: true,\n optional: true,\n options: [...communicationPreferenceOptions],\n },\n {\n order: 9,\n key: 'supportAndAccommodations',\n label: 'Support & Accommodations',\n type: 'multi_select',\n step: 8,\n isOnboarding: true,\n optional: true,\n options: [...supportAccommodationOptions],\n conditionalOn: { field: 'neurodiverseIdentity', notIn: IDENTITY_SKIP },\n },\n {\n order: 10,\n key: 'maskingAndBurnout',\n label: 'Masking & Burnout',\n type: 'single_select',\n step: 8,\n isOnboarding: true,\n optional: true,\n options: [...maskingBurnoutOptions],\n conditionalOn: { field: 'neurodiverseIdentity', notIn: IDENTITY_SKIP },\n },\n {\n order: 11,\n key: 'impactOnLife',\n label: 'Impact on Daily Life',\n type: 'single_select',\n step: 8,\n isOnboarding: true,\n optional: true,\n options: [...impactOnLifeOptions],\n conditionalOn: { field: 'neurodiverseIdentity', notIn: IDENTITY_SKIP },\n },\n ],\n};\n"]}
@@ -10,7 +10,7 @@ export { civicEngagementOptions, electionResultOptions, officeElectionLevelOptio
10
10
  export { electoralBehaviour, votingIssueOptions } from './03-electoral.js';
11
11
  export { desiredPoliticalPositionOptions, leadershipAmbitions, leadershipSkillsetOptions, } from './04-leadership.js';
12
12
  export { mbtiOptions, psychologicalAssessment } from './05-psychological.js';
13
- export { boardOptions, degreeNameOptions, education, qualificationOptions, streamOptions, subjectOptions, } from './06-education.js';
13
+ export { boardOptions, DEGREE_VALUES_BY_LEVEL, degreeNameOptions, education, qualificationOptions, streamOptions, subjectOptions, } from './06-education.js';
14
14
  export { employment, employmentStatusOptions, incomeRangeOptions, shiftOptions, } from './07-employment.js';
15
15
  export { ageOfRealizationOptions, cognitiveStrengthOptions, communicationPreferenceOptions, executiveFunctionChallengeOptions, impactOnLifeOptions, learningStyleOptions, maskingBurnoutOptions, neurodiverseIdentityOptions, neurodiversity, neurodiversityConditionOptions, sensoryProfileOptions, supportAccommodationOptions, } from './08-neurodiversity.js';
16
16
  export { dietOptions, disabilityOptions, healthLifestyle, substanceUseOptions, } from './09-health.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,EACL,+BAA+B,EAC/B,mBAAmB,EACnB,yBAAyB,GAC1B,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,WAAW,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAC7E,OAAO,EACL,YAAY,EACZ,iBAAiB,EACjB,SAAS,EACT,oBAAoB,EACpB,aAAa,EACb,cAAc,GACf,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,UAAU,EACV,uBAAuB,EACvB,kBAAkB,EAClB,YAAY,GACb,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,uBAAuB,EACvB,wBAAwB,EACxB,8BAA8B,EAC9B,iCAAiC,EACjC,mBAAmB,EACnB,oBAAoB,EACpB,qBAAqB,EACrB,2BAA2B,EAC3B,cAAc,EACd,8BAA8B,EAC9B,qBAAqB,EACrB,2BAA2B,GAC5B,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,EACL,YAAY,EACZ,sBAAsB,EACtB,iBAAiB,EACjB,SAAS,EACT,oBAAoB,EACpB,aAAa,EACb,cAAc,GACf,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,UAAU,EACV,uBAAuB,EACvB,kBAAkB,EAClB,YAAY,GACb,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,uBAAuB,EACvB,wBAAwB,EACxB,8BAA8B,EAC9B,iCAAiC,EACjC,mBAAmB,EACnB,oBAAoB,EACpB,qBAAqB,EACrB,2BAA2B,EAC3B,cAAc,EACd,8BAA8B,EAC9B,qBAAqB,EACrB,2BAA2B,GAC5B,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"}
@@ -10,7 +10,7 @@ export { civicEngagementOptions, electionResultOptions, officeElectionLevelOptio
10
10
  export { electoralBehaviour, votingIssueOptions } from './03-electoral.js';
11
11
  export { desiredPoliticalPositionOptions, leadershipAmbitions, leadershipSkillsetOptions, } from './04-leadership.js';
12
12
  export { mbtiOptions, psychologicalAssessment } from './05-psychological.js';
13
- export { boardOptions, degreeNameOptions, education, qualificationOptions, streamOptions, subjectOptions, } from './06-education.js';
13
+ export { boardOptions, DEGREE_VALUES_BY_LEVEL, degreeNameOptions, education, qualificationOptions, streamOptions, subjectOptions, } from './06-education.js';
14
14
  export { employment, employmentStatusOptions, incomeRangeOptions, shiftOptions, } from './07-employment.js';
15
15
  export { ageOfRealizationOptions, cognitiveStrengthOptions, communicationPreferenceOptions, executiveFunctionChallengeOptions, impactOnLifeOptions, learningStyleOptions, maskingBurnoutOptions, neurodiverseIdentityOptions, neurodiversity, neurodiversityConditionOptions, sensoryProfileOptions, supportAccommodationOptions, } from './08-neurodiversity.js';
16
16
  export { dietOptions, disabilityOptions, healthLifestyle, substanceUseOptions, } from './09-health.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,EACL,+BAA+B,EAC/B,mBAAmB,EACnB,yBAAyB,GAC1B,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,WAAW,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAC7E,OAAO,EACL,YAAY,EACZ,iBAAiB,EACjB,SAAS,EACT,oBAAoB,EACpB,aAAa,EACb,cAAc,GACf,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,UAAU,EACV,uBAAuB,EACvB,kBAAkB,EAClB,YAAY,GACb,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,uBAAuB,EACvB,wBAAwB,EACxB,8BAA8B,EAC9B,iCAAiC,EACjC,mBAAmB,EACnB,oBAAoB,EACpB,qBAAqB,EACrB,2BAA2B,EAC3B,cAAc,EACd,8BAA8B,EAC9B,qBAAqB,EACrB,2BAA2B,GAC5B,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 {\n boardOptions,\n degreeNameOptions,\n education,\n qualificationOptions,\n streamOptions,\n subjectOptions,\n} from './06-education.js';\nexport {\n employment,\n employmentStatusOptions,\n incomeRangeOptions,\n shiftOptions,\n} from './07-employment.js';\nexport {\n ageOfRealizationOptions,\n cognitiveStrengthOptions,\n communicationPreferenceOptions,\n executiveFunctionChallengeOptions,\n impactOnLifeOptions,\n learningStyleOptions,\n maskingBurnoutOptions,\n neurodiverseIdentityOptions,\n neurodiversity,\n neurodiversityConditionOptions,\n sensoryProfileOptions,\n supportAccommodationOptions,\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,EACL,YAAY,EACZ,sBAAsB,EACtB,iBAAiB,EACjB,SAAS,EACT,oBAAoB,EACpB,aAAa,EACb,cAAc,GACf,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,UAAU,EACV,uBAAuB,EACvB,kBAAkB,EAClB,YAAY,GACb,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,uBAAuB,EACvB,wBAAwB,EACxB,8BAA8B,EAC9B,iCAAiC,EACjC,mBAAmB,EACnB,oBAAoB,EACpB,qBAAqB,EACrB,2BAA2B,EAC3B,cAAc,EACd,8BAA8B,EAC9B,qBAAqB,EACrB,2BAA2B,GAC5B,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 {\n boardOptions,\n DEGREE_VALUES_BY_LEVEL,\n degreeNameOptions,\n education,\n qualificationOptions,\n streamOptions,\n subjectOptions,\n} from './06-education.js';\nexport {\n employment,\n employmentStatusOptions,\n incomeRangeOptions,\n shiftOptions,\n} from './07-employment.js';\nexport {\n ageOfRealizationOptions,\n cognitiveStrengthOptions,\n communicationPreferenceOptions,\n executiveFunctionChallengeOptions,\n impactOnLifeOptions,\n learningStyleOptions,\n maskingBurnoutOptions,\n neurodiverseIdentityOptions,\n neurodiversity,\n neurodiversityConditionOptions,\n sensoryProfileOptions,\n supportAccommodationOptions,\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 +1 @@
1
- {"version":3,"file":"progress-fields.d.ts","sourceRoot":"","sources":["../src/progress-fields.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,eAAO,MAAM,mBAAmB,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CA2HxD,CAAC;AAEX,gCAAgC;AAChC,eAAO,MAAM,eAAe,KAAK,CAAC;AAElC;;;;;;GAMG;AACH,eAAO,MAAM,sBAAsB,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAE3D,CAAC;AAEX;;;GAGG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAYlF;AAED,iEAAiE;AACjE,wBAAgB,aAAa,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAcrD;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CACnC,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,GAAG,IAAI,GACnD;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAuBnC;AAED;;;;;;;GAOG;AACH,wBAAgB,wBAAwB,CACtC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,GAAG,IAAI,CAAC,GACnE;IACD,KAAK,EAAE;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IAC/D,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;CACjB,CAeA"}
1
+ {"version":3,"file":"progress-fields.d.ts","sourceRoot":"","sources":["../src/progress-fields.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,eAAO,MAAM,mBAAmB,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAoIxD,CAAC;AAEX,gCAAgC;AAChC,eAAO,MAAM,eAAe,KAAK,CAAC;AAElC;;;;;;GAMG;AACH,eAAO,MAAM,sBAAsB,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAE3D,CAAC;AAEX;;;GAGG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAYlF;AAED,iEAAiE;AACjE,wBAAgB,aAAa,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAcrD;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CACnC,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,GAAG,IAAI,GACnD;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAuBnC;AAED;;;;;;;GAOG;AACH,wBAAgB,wBAAwB,CACtC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,GAAG,IAAI,CAAC,GACnE;IACD,KAAK,EAAE;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IAC/D,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;CACjB,CAeA"}
@@ -51,11 +51,20 @@ export const UDP_PROGRESS_FIELDS = {
51
51
  5: ['mbtiType', 'oceanScores'],
52
52
  6: [
53
53
  'highestQualification',
54
+ // Class 10
54
55
  'education10th.board',
55
56
  'education10th.schoolName',
56
57
  'education10th.yearOfPassing',
58
+ 'education10th.subjects',
59
+ 'education10th.marksObtained',
60
+ // Class 12
57
61
  'education12th.institutionName',
62
+ 'education12th.boardOrUniversity',
58
63
  'education12th.yearOfPassing',
64
+ 'education12th.courseOrStream',
65
+ 'education12th.subjects',
66
+ 'education12th.marksOrGrade',
67
+ // Degree repeaters + certificates + notes
59
68
  'diplomas',
60
69
  'graduations',
61
70
  'postGraduations',
@@ -1 +1 @@
1
- {"version":3,"file":"progress-fields.js","sourceRoot":"","sources":["../src/progress-fields.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * UDP Progress Fields — Single source of truth for step progress counting.\n *\n * Used by both frontend (stepper UI) and backend (computeStepProgressCounts).\n * Each step lists the curated fields that determine filled/total progress.\n *\n * Dot-paths (e.g., \"currentAddress.state\") resolve nested subdocument fields.\n * Only these fields count toward progress — extra fields in the schema are ignored.\n */\n\nexport const UDP_PROGRESS_FIELDS: Record<number, readonly string[]> = {\n 1: [\n // 'fullName' is a synthetic key — counts as filled if ANY of\n // firstName / middleName / lastName is set. See UDP_PROGRESS_SYNTHETIC.\n 'fullName',\n 'gender',\n 'dateOfBirth',\n 'whatsappNumber',\n 'primaryLanguage',\n 'secondaryLanguages',\n 'familyReligion',\n 'personalReligion',\n 'reservationStatus',\n 'minorityStatus',\n ],\n 2: [\n 'politicalSpectrum',\n 'selfPartyAssociation',\n 'partyAssociationRole',\n 'familyPartyAssociation',\n 'relativesInPolitics',\n 'publicOfficeAndElections',\n 'networkAndCivicEngagement',\n ],\n 3: [\n 'epicNumber',\n 'willVoteThisTime',\n 'didVoteLastTime',\n 'votingFrequency',\n 'primaryVotingIssues',\n ],\n 4: [\n 'participateInRevolution',\n 'desiredPoliticalPosition',\n 'leadershipSkillset',\n 'politicalExposure',\n 'comfortWithVisibility',\n 'socialInfluenceLevel',\n 'pastExperience',\n 'changesYouWantToBring',\n ],\n 5: ['mbtiType', 'oceanScores'],\n 6: [\n 'highestQualification',\n 'education10th.board',\n 'education10th.schoolName',\n 'education10th.yearOfPassing',\n 'education12th.institutionName',\n 'education12th.yearOfPassing',\n 'diplomas',\n 'graduations',\n 'postGraduations',\n 'doctorates',\n 'postDoctorates',\n 'otherCertificates',\n 'educationNotes',\n ],\n 7: [\n 'employmentStatus',\n 'occupation',\n 'workShift',\n 'comfortableWithShift',\n 'desiredShift',\n 'incomeRange',\n 'dreamOccupation',\n ],\n 8: [\n 'neurodiverseIdentity',\n 'conditions',\n 'ageOfRealization',\n 'sensoryProfile',\n 'cognitiveStrengths',\n 'executiveFunctionChallenges',\n 'learningStyle',\n 'communicationPreference',\n 'supportAndAccommodations',\n 'maskingAndBurnout',\n 'impactOnLife',\n ],\n 9: [\n 'disabilityStatus',\n 'generalHealth',\n 'healthInsurance',\n 'diet',\n 'physicalActivity',\n 'sleepQuality',\n 'substanceUse',\n 'stressLevel',\n ],\n 10: [\n 'viewOnAnimalCruelty',\n 'viewOnLgbtqStatements',\n 'viewOnLgbtqOpinion',\n 'viewOnTransgenderInclusion',\n 'viewOnTransgenderOpinion',\n 'facingCasteDiscrimination',\n 'casteDiscriminationPlaces',\n 'viewOnGenderEquality',\n ],\n 11: [\n 'currentAddress.state',\n 'currentAddress.district',\n 'currentAddress.village',\n 'permanentAddress.state',\n 'permanentAddress.district',\n 'permanentAddress.village',\n 'homeNativePlace.state',\n 'homeNativePlace.district',\n 'ancestralPlace.state',\n 'ancestralPlace.district',\n ],\n 12: [\n 'maritalStatus',\n 'familyMembers',\n 'numberOfDependents',\n 'housingType',\n 'householdIncome',\n 'bplCard',\n 'digitalAccess',\n 'migrationStatus',\n 'landOwnership',\n 'primaryIncomeSource',\n ],\n} as const;\n\n/** Total number of UDP steps */\nexport const UDP_TOTAL_STEPS = 12;\n\n/**\n * Synthetic progress keys — keys that aren't real fields but represent\n * a group of underlying fields. Counted as \"filled\" if ANY underlying\n * field is filled. Used for UI sub-steps that collect multiple fields\n * at once (e.g. the fullName sub-step that saves firstName, middleName,\n * and lastName).\n */\nexport const UDP_PROGRESS_SYNTHETIC: Record<string, readonly string[]> = {\n fullName: ['firstName', 'middleName', 'lastName'],\n} as const;\n\n/**\n * Resolve a dot-path (e.g., \"currentAddress.state\") against a data object.\n * Works with both plain objects and Mongoose subdocuments.\n */\nexport function getNestedValue(obj: Record<string, unknown>, path: string): unknown {\n const parts = path.split('.');\n let current: unknown = obj;\n\n for (const part of parts) {\n if (current === null || current === undefined || typeof current !== 'object') {\n return undefined;\n }\n current = (current as Record<string, unknown>)[part];\n }\n\n return current;\n}\n\n/** Determine if a field value counts as \"filled\" for progress */\nexport function isFieldFilled(value: unknown): boolean {\n if (value === null || value === undefined) return false;\n if (typeof value === 'string') return value.trim().length > 0;\n if (typeof value === 'number') return true;\n if (typeof value === 'boolean') return true;\n if (Array.isArray(value)) return value.length > 0;\n if (typeof value === 'object') {\n // Area entity ref - check for name\n if ('name' in value && typeof (value as Record<string, unknown>).name === 'string') {\n return (value as Record<string, unknown>).name !== '';\n }\n return Object.keys(value).length > 0;\n }\n return false;\n}\n\n/**\n * Calculate progress for a single step.\n * Shared between frontend (stepper UI) and backend (API response).\n */\nexport function calculateStepProgress(\n stepNumber: number,\n formData: Record<string, unknown> | undefined | null,\n): { filled: number; total: number } {\n const fields = UDP_PROGRESS_FIELDS[stepNumber];\n if (!fields) return { filled: 0, total: 0 };\n\n const total = fields.length;\n if (!formData || total === 0) return { filled: 0, total };\n\n let filled = 0;\n for (const fieldPath of fields) {\n // Synthetic keys (e.g., \"fullName\") — filled if ANY underlying field is filled.\n const syntheticPaths = UDP_PROGRESS_SYNTHETIC[fieldPath];\n if (syntheticPaths) {\n if (syntheticPaths.some((p) => isFieldFilled(getNestedValue(formData, p)))) {\n filled++;\n }\n continue;\n }\n if (isFieldFilled(getNestedValue(formData, fieldPath))) {\n filled++;\n }\n }\n\n return { filled, total };\n}\n\n/**\n * Calculate overall progress across all steps.\n * Returns per-step breakdown + overall percentage.\n *\n * Mirrors dating-schema's calculateDatingOverallProgress().\n *\n * @param stepData - Map of step number → form data (e.g., { 1: {...}, 2: {...} })\n */\nexport function calculateOverallProgress(\n stepData: Record<number, Record<string, unknown> | undefined | null>,\n): {\n steps: { stepNumber: number; filled: number; total: number }[];\n totalFilled: number;\n totalFields: number;\n percent: number;\n} {\n const steps: { stepNumber: number; filled: number; total: number }[] = [];\n let totalFilled = 0;\n let totalFields = 0;\n\n for (let stepNumber = 1; stepNumber <= UDP_TOTAL_STEPS; stepNumber++) {\n const { filled, total } = calculateStepProgress(stepNumber, stepData[stepNumber]);\n steps.push({ stepNumber, filled, total });\n totalFilled += filled;\n totalFields += total;\n }\n\n const percent = totalFields > 0 ? Math.round((totalFilled / totalFields) * 100) : 0;\n\n return { steps, totalFilled, totalFields, percent };\n}\n"]}
1
+ {"version":3,"file":"progress-fields.js","sourceRoot":"","sources":["../src/progress-fields.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * UDP Progress Fields — Single source of truth for step progress counting.\n *\n * Used by both frontend (stepper UI) and backend (computeStepProgressCounts).\n * Each step lists the curated fields that determine filled/total progress.\n *\n * Dot-paths (e.g., \"currentAddress.state\") resolve nested subdocument fields.\n * Only these fields count toward progress — extra fields in the schema are ignored.\n */\n\nexport const UDP_PROGRESS_FIELDS: Record<number, readonly string[]> = {\n 1: [\n // 'fullName' is a synthetic key — counts as filled if ANY of\n // firstName / middleName / lastName is set. See UDP_PROGRESS_SYNTHETIC.\n 'fullName',\n 'gender',\n 'dateOfBirth',\n 'whatsappNumber',\n 'primaryLanguage',\n 'secondaryLanguages',\n 'familyReligion',\n 'personalReligion',\n 'reservationStatus',\n 'minorityStatus',\n ],\n 2: [\n 'politicalSpectrum',\n 'selfPartyAssociation',\n 'partyAssociationRole',\n 'familyPartyAssociation',\n 'relativesInPolitics',\n 'publicOfficeAndElections',\n 'networkAndCivicEngagement',\n ],\n 3: [\n 'epicNumber',\n 'willVoteThisTime',\n 'didVoteLastTime',\n 'votingFrequency',\n 'primaryVotingIssues',\n ],\n 4: [\n 'participateInRevolution',\n 'desiredPoliticalPosition',\n 'leadershipSkillset',\n 'politicalExposure',\n 'comfortWithVisibility',\n 'socialInfluenceLevel',\n 'pastExperience',\n 'changesYouWantToBring',\n ],\n 5: ['mbtiType', 'oceanScores'],\n 6: [\n 'highestQualification',\n // Class 10\n 'education10th.board',\n 'education10th.schoolName',\n 'education10th.yearOfPassing',\n 'education10th.subjects',\n 'education10th.marksObtained',\n // Class 12\n 'education12th.institutionName',\n 'education12th.boardOrUniversity',\n 'education12th.yearOfPassing',\n 'education12th.courseOrStream',\n 'education12th.subjects',\n 'education12th.marksOrGrade',\n // Degree repeaters + certificates + notes\n 'diplomas',\n 'graduations',\n 'postGraduations',\n 'doctorates',\n 'postDoctorates',\n 'otherCertificates',\n 'educationNotes',\n ],\n 7: [\n 'employmentStatus',\n 'occupation',\n 'workShift',\n 'comfortableWithShift',\n 'desiredShift',\n 'incomeRange',\n 'dreamOccupation',\n ],\n 8: [\n 'neurodiverseIdentity',\n 'conditions',\n 'ageOfRealization',\n 'sensoryProfile',\n 'cognitiveStrengths',\n 'executiveFunctionChallenges',\n 'learningStyle',\n 'communicationPreference',\n 'supportAndAccommodations',\n 'maskingAndBurnout',\n 'impactOnLife',\n ],\n 9: [\n 'disabilityStatus',\n 'generalHealth',\n 'healthInsurance',\n 'diet',\n 'physicalActivity',\n 'sleepQuality',\n 'substanceUse',\n 'stressLevel',\n ],\n 10: [\n 'viewOnAnimalCruelty',\n 'viewOnLgbtqStatements',\n 'viewOnLgbtqOpinion',\n 'viewOnTransgenderInclusion',\n 'viewOnTransgenderOpinion',\n 'facingCasteDiscrimination',\n 'casteDiscriminationPlaces',\n 'viewOnGenderEquality',\n ],\n 11: [\n 'currentAddress.state',\n 'currentAddress.district',\n 'currentAddress.village',\n 'permanentAddress.state',\n 'permanentAddress.district',\n 'permanentAddress.village',\n 'homeNativePlace.state',\n 'homeNativePlace.district',\n 'ancestralPlace.state',\n 'ancestralPlace.district',\n ],\n 12: [\n 'maritalStatus',\n 'familyMembers',\n 'numberOfDependents',\n 'housingType',\n 'householdIncome',\n 'bplCard',\n 'digitalAccess',\n 'migrationStatus',\n 'landOwnership',\n 'primaryIncomeSource',\n ],\n} as const;\n\n/** Total number of UDP steps */\nexport const UDP_TOTAL_STEPS = 12;\n\n/**\n * Synthetic progress keys — keys that aren't real fields but represent\n * a group of underlying fields. Counted as \"filled\" if ANY underlying\n * field is filled. Used for UI sub-steps that collect multiple fields\n * at once (e.g. the fullName sub-step that saves firstName, middleName,\n * and lastName).\n */\nexport const UDP_PROGRESS_SYNTHETIC: Record<string, readonly string[]> = {\n fullName: ['firstName', 'middleName', 'lastName'],\n} as const;\n\n/**\n * Resolve a dot-path (e.g., \"currentAddress.state\") against a data object.\n * Works with both plain objects and Mongoose subdocuments.\n */\nexport function getNestedValue(obj: Record<string, unknown>, path: string): unknown {\n const parts = path.split('.');\n let current: unknown = obj;\n\n for (const part of parts) {\n if (current === null || current === undefined || typeof current !== 'object') {\n return undefined;\n }\n current = (current as Record<string, unknown>)[part];\n }\n\n return current;\n}\n\n/** Determine if a field value counts as \"filled\" for progress */\nexport function isFieldFilled(value: unknown): boolean {\n if (value === null || value === undefined) return false;\n if (typeof value === 'string') return value.trim().length > 0;\n if (typeof value === 'number') return true;\n if (typeof value === 'boolean') return true;\n if (Array.isArray(value)) return value.length > 0;\n if (typeof value === 'object') {\n // Area entity ref - check for name\n if ('name' in value && typeof (value as Record<string, unknown>).name === 'string') {\n return (value as Record<string, unknown>).name !== '';\n }\n return Object.keys(value).length > 0;\n }\n return false;\n}\n\n/**\n * Calculate progress for a single step.\n * Shared between frontend (stepper UI) and backend (API response).\n */\nexport function calculateStepProgress(\n stepNumber: number,\n formData: Record<string, unknown> | undefined | null,\n): { filled: number; total: number } {\n const fields = UDP_PROGRESS_FIELDS[stepNumber];\n if (!fields) return { filled: 0, total: 0 };\n\n const total = fields.length;\n if (!formData || total === 0) return { filled: 0, total };\n\n let filled = 0;\n for (const fieldPath of fields) {\n // Synthetic keys (e.g., \"fullName\") — filled if ANY underlying field is filled.\n const syntheticPaths = UDP_PROGRESS_SYNTHETIC[fieldPath];\n if (syntheticPaths) {\n if (syntheticPaths.some((p) => isFieldFilled(getNestedValue(formData, p)))) {\n filled++;\n }\n continue;\n }\n if (isFieldFilled(getNestedValue(formData, fieldPath))) {\n filled++;\n }\n }\n\n return { filled, total };\n}\n\n/**\n * Calculate overall progress across all steps.\n * Returns per-step breakdown + overall percentage.\n *\n * Mirrors dating-schema's calculateDatingOverallProgress().\n *\n * @param stepData - Map of step number → form data (e.g., { 1: {...}, 2: {...} })\n */\nexport function calculateOverallProgress(\n stepData: Record<number, Record<string, unknown> | undefined | null>,\n): {\n steps: { stepNumber: number; filled: number; total: number }[];\n totalFilled: number;\n totalFields: number;\n percent: number;\n} {\n const steps: { stepNumber: number; filled: number; total: number }[] = [];\n let totalFilled = 0;\n let totalFields = 0;\n\n for (let stepNumber = 1; stepNumber <= UDP_TOTAL_STEPS; stepNumber++) {\n const { filled, total } = calculateStepProgress(stepNumber, stepData[stepNumber]);\n steps.push({ stepNumber, filled, total });\n totalFilled += filled;\n totalFields += total;\n }\n\n const percent = totalFields > 0 ? Math.round((totalFilled / totalFields) * 100) : 0;\n\n return { steps, totalFilled, totalFields, percent };\n}\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "udp-schema",
3
- "version": "2.13.0",
3
+ "version": "2.15.0",
4
4
  "description": "Shared Zod schemas for User Detailed Profile (frontend + backend).",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",