udp-schema 2.19.0 → 2.21.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.
@@ -1 +1 @@
1
- {"version":3,"file":"step-02.schema.js","sourceRoot":"","sources":["../src/step-02.schema.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAEzD,+EAA+E;AAE/E,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC5C,+FAA+F;IAC/F,iBAAiB,EAAE,CAAC;SACjB,IAAI,CAAC;QACJ,UAAU;QACV,MAAM;QACN,aAAa;QACb,UAAU;QACV,cAAc;QACd,OAAO;QACP,WAAW;QACX,aAAa;QACb,YAAY;QACZ,mBAAmB;KACpB,CAAC;SACD,QAAQ,EAAE;IAEb,qEAAqE;IACrE,oBAAoB,EAAE,qBAAqB;IAE3C,wGAAwG;IACxG,oBAAoB,EAAE,CAAC;SACpB,IAAI,CAAC;QACJ,QAAQ;QACR,eAAe;QACf,eAAe;QACf,WAAW;QACX,cAAc;QACd,WAAW;QACX,aAAa;QACb,MAAM;QACN,mBAAmB;KACpB,CAAC;SACD,QAAQ,EAAE;IAEb,sEAAsE;IACtE,sBAAsB,EAAE,qBAAqB;IAE7C,+EAA+E;IAC/E,mBAAmB,EAAE,CAAC;SACnB,IAAI,CAAC,CAAC,MAAM,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,EAAE,WAAW,EAAE,mBAAmB,CAAC,CAAC;SAC/F,QAAQ,EAAE;IAEb,2CAA2C;IAC3C,wBAAwB,EAAE,CAAC;SACxB,MAAM,CAAC;QACN,aAAa,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,IAAI,EAAE,mBAAmB,CAAC,CAAC,CAAC,QAAQ,EAAE;QACpE,WAAW,EAAE,CAAC;aACX,IAAI,CAAC;YACJ,WAAW;YACX,MAAM;YACN,cAAc;YACd,OAAO;YACP,UAAU;YACV,UAAU;YACV,YAAY;YACZ,OAAO;SACR,CAAC;aACD,QAAQ,EAAE;QACb,WAAW,EAAE,qBAAqB,EAAE,mBAAmB;QACvD,aAAa,EAAE,qBAAqB,EAAE,oCAAoC;QAC1E,iBAAiB,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,QAAQ,EAAE;QACnD,aAAa,EAAE,CAAC;aACb,IAAI,CAAC;YACJ,WAAW;YACX,MAAM;YACN,cAAc;YACd,OAAO;YACP,UAAU;YACV,UAAU;YACV,YAAY;YACZ,OAAO;SACR,CAAC;aACD,QAAQ,EAAE;QACb,YAAY,EAAE,qBAAqB,EAAE,cAAc;QACnD,cAAc,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC,CAAC,QAAQ,EAAE;QACzE,eAAe,EAAE,qBAAqB;KACvC,CAAC;SACD,QAAQ,EAAE;IAEb,kDAAkD;IAClD,yBAAyB,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,QAAQ,EAAE;CACjE,CAAC,CAAC","sourcesContent":["/**\n * Step 02 — Political Association & History\n *\n * Fields: politicalSpectrum, selfPartyAssociation, familyPartyAssociation,\n * publicOfficeAndElections, networkAndCivicEngagement\n *\n * @module udp-schema/step-02\n */\n\nimport { z } from 'zod';\nimport { optionalTrimmedString } from './zod-helpers.js';\n\n// ─── Main Step 02 Schema ────────────────────────────────────────────────────\n\nexport const step02PoliticalSchema = z.object({\n /** Political spectrum — left/right axis (matches dating-schema politicalOrientation values) */\n politicalSpectrum: z\n .enum([\n 'far_left',\n 'left',\n 'centre_left',\n 'centrist',\n 'centre_right',\n 'right',\n 'far_right',\n 'libertarian',\n 'apolitical',\n 'prefer_not_to_say',\n ])\n .optional(),\n\n /** Self party association — party key (e.g. \"bjp\", \"inc\", \"none\") */\n selfPartyAssociation: optionalTrimmedString,\n\n /** Nature of association with the party — only meaningful when selfPartyAssociation is a real party. */\n partyAssociationRole: z\n .enum([\n 'member',\n 'active_worker',\n 'office_bearer',\n 'candidate',\n 'spokesperson',\n 'volunteer',\n 'sympathizer',\n 'none',\n 'prefer_not_to_say',\n ])\n .optional(),\n\n /** Family party association — same party-key enum via free string. */\n familyPartyAssociation: optionalTrimmedString,\n\n /** Relatives in politics (immediate / extended / both / none / prefer-not). */\n relativesInPolitics: z\n .enum(['none', 'immediate_family', 'extended_family', 'both', 'dont_know', 'prefer_not_to_say'])\n .optional(),\n\n /** Public office and elections history. */\n publicOfficeAndElections: z\n .object({\n hasHeldOffice: z.enum(['yes', 'no', 'prefer_not_to_say']).optional(),\n officeLevel: z\n .enum([\n 'panchayat',\n 'ward',\n 'municipality',\n 'block',\n 'district',\n 'assembly',\n 'parliament',\n 'other',\n ])\n .optional(),\n officeYears: optionalTrimmedString, // e.g. \"2018-2023\"\n officeDetails: optionalTrimmedString, // free text position name / notes\n electionContested: z.enum(['yes', 'no']).optional(),\n electionLevel: z\n .enum([\n 'panchayat',\n 'ward',\n 'municipality',\n 'block',\n 'district',\n 'assembly',\n 'parliament',\n 'other',\n ])\n .optional(),\n electionYear: optionalTrimmedString, // e.g. \"2023\"\n electionResult: z.enum(['won', 'lost', 'withdrew', 'ongoing']).optional(),\n electionDetails: optionalTrimmedString,\n })\n .optional(),\n\n /** Network and civic engagement (multi-select) */\n networkAndCivicEngagement: z.array(z.string().trim()).optional(),\n});\n\n// ─── Inferred types ─────────────────────────────────────────────────────────\n\nexport type Step02PoliticalInput = z.infer<typeof step02PoliticalSchema>;\n"]}
1
+ {"version":3,"file":"step-02.schema.js","sourceRoot":"","sources":["../src/step-02.schema.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAEzD,+EAA+E;AAE/E,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC5C,+FAA+F;IAC/F,iBAAiB,EAAE,CAAC;SACjB,IAAI,CAAC;QACJ,UAAU;QACV,MAAM;QACN,aAAa;QACb,UAAU;QACV,cAAc;QACd,OAAO;QACP,WAAW;QACX,aAAa;QACb,YAAY;QACZ,mBAAmB;KACpB,CAAC;SACD,QAAQ,EAAE;IAEb,qEAAqE;IACrE,oBAAoB,EAAE,qBAAqB;IAE3C,wGAAwG;IACxG,oBAAoB,EAAE,CAAC;SACpB,IAAI,CAAC;QACJ,QAAQ;QACR,eAAe;QACf,eAAe;QACf,WAAW;QACX,cAAc;QACd,WAAW;QACX,aAAa;QACb,MAAM;QACN,mBAAmB;KACpB,CAAC;SACD,QAAQ,EAAE;IAEb,sEAAsE;IACtE,sBAAsB,EAAE,qBAAqB;IAE7C,+EAA+E;IAC/E,mBAAmB,EAAE,CAAC;SACnB,IAAI,CAAC,CAAC,MAAM,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,EAAE,WAAW,EAAE,mBAAmB,CAAC,CAAC;SAC/F,QAAQ,EAAE;IAEb,oEAAoE;IACpE,iEAAiE;IACjE,oEAAoE;IACpE,gEAAgE;IAChE,oEAAoE;IACpE,qEAAqE;IACrE,8BAA8B;IAC9B,qDAAqD;IACrD,oBAAoB,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,IAAI,EAAE,mBAAmB,CAAC,CAAC,CAAC,QAAQ,EAAE;IAC3E;4CACwC;IACxC,aAAa,EAAE,CAAC;SACb,IAAI,CAAC;QACJ,WAAW;QACX,MAAM;QACN,cAAc;QACd,OAAO;QACP,UAAU;QACV,UAAU;QACV,YAAY;QACZ,OAAO;KACR,CAAC;SACD,QAAQ,EAAE;IACb;;4CAEwC;IACxC,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE;IAC7D,oDAAoD;IACpD,mBAAmB,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,IAAI,EAAE,mBAAmB,CAAC,CAAC,CAAC,QAAQ,EAAE;IAC1E;2CACuC;IACvC,WAAW,EAAE,CAAC;SACX,IAAI,CAAC;QACJ,WAAW;QACX,MAAM;QACN,cAAc;QACd,OAAO;QACP,UAAU;QACV,UAAU;QACV,YAAY;QACZ,OAAO;KACR,CAAC;SACD,QAAQ,EAAE;IACb;;kBAEc;IACd,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE;IAE3D,kDAAkD;IAClD,yBAAyB,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,QAAQ,EAAE;CACjE,CAAC,CAAC","sourcesContent":["/**\n * Step 02 — Political Association & History\n *\n * Fields: politicalSpectrum, selfPartyAssociation, partyAssociationRole,\n * familyPartyAssociation, relativesInPolitics, hasContestedElection,\n * electionLevel, hasHeldPublicOffice, officeLevel,\n * networkAndCivicEngagement\n *\n * @module udp-schema/step-02\n */\n\nimport { z } from 'zod';\nimport { optionalTrimmedString } from './zod-helpers.js';\n\n// ─── Main Step 02 Schema ────────────────────────────────────────────────────\n\nexport const step02PoliticalSchema = z.object({\n /** Political spectrum — left/right axis (matches dating-schema politicalOrientation values) */\n politicalSpectrum: z\n .enum([\n 'far_left',\n 'left',\n 'centre_left',\n 'centrist',\n 'centre_right',\n 'right',\n 'far_right',\n 'libertarian',\n 'apolitical',\n 'prefer_not_to_say',\n ])\n .optional(),\n\n /** Self party association — party key (e.g. \"bjp\", \"inc\", \"none\") */\n selfPartyAssociation: optionalTrimmedString,\n\n /** Nature of association with the party — only meaningful when selfPartyAssociation is a real party. */\n partyAssociationRole: z\n .enum([\n 'member',\n 'active_worker',\n 'office_bearer',\n 'candidate',\n 'spokesperson',\n 'volunteer',\n 'sympathizer',\n 'none',\n 'prefer_not_to_say',\n ])\n .optional(),\n\n /** Family party association — same party-key enum via free string. */\n familyPartyAssociation: optionalTrimmedString,\n\n /** Relatives in politics (immediate / extended / both / none / prefer-not). */\n relativesInPolitics: z\n .enum(['none', 'immediate_family', 'extended_family', 'both', 'dont_know', 'prefer_not_to_say'])\n .optional(),\n\n // Public office + elections split into 6 flat sub-steps replacing\n // the legacy single composite field. Each yes/no answer gets its\n // own screen; the level + year follow-ups are conditional on `yes`.\n // The 9-field nested-object shape (officeYears as range string,\n // electionResult, free-text details) is gone — those low-completion\n // fields cluttered the dense composite UI; the simpler shape matches\n // the rest of UDP onboarding.\n /** Has the respondent ever contested an election. */\n hasContestedElection: z.enum(['yes', 'no', 'prefer_not_to_say']).optional(),\n /** Level of the contested election. Only meaningful when\n * `hasContestedElection === 'yes'`. */\n electionLevel: z\n .enum([\n 'panchayat',\n 'ward',\n 'municipality',\n 'block',\n 'district',\n 'assembly',\n 'parliament',\n 'other',\n ])\n .optional(),\n /** Year the respondent contested. Bounded 1900..2100 to keep the\n * dataset sane against typos. Only meaningful when\n * `hasContestedElection === 'yes'`. */\n electionYear: z.number().int().min(1900).max(2100).optional(),\n /** Has the respondent ever held a public office. */\n hasHeldPublicOffice: z.enum(['yes', 'no', 'prefer_not_to_say']).optional(),\n /** Level of the office held. Only meaningful when\n * `hasHeldPublicOffice === 'yes'`. */\n officeLevel: z\n .enum([\n 'panchayat',\n 'ward',\n 'municipality',\n 'block',\n 'district',\n 'assembly',\n 'parliament',\n 'other',\n ])\n .optional(),\n /** Year the respondent held office. Same bounds rationale as\n * `electionYear`. Only meaningful when `hasHeldPublicOffice ===\n * 'yes'`. */\n officeYear: z.number().int().min(1900).max(2100).optional(),\n\n /** Network and civic engagement (multi-select) */\n networkAndCivicEngagement: z.array(z.string().trim()).optional(),\n});\n\n// ─── Inferred types ─────────────────────────────────────────────────────────\n\nexport type Step02PoliticalInput = z.infer<typeof step02PoliticalSchema>;\n"]}
@@ -29,9 +29,9 @@ export declare const step12HouseholdSchema: z.ZodObject<{
29
29
  }>>;
30
30
  householdIncome: z.ZodOptional<z.ZodString>;
31
31
  bplCard: z.ZodOptional<z.ZodEnum<{
32
- dont_know: "dont_know";
33
32
  yes: "yes";
34
33
  no: "no";
34
+ dont_know: "dont_know";
35
35
  applied: "applied";
36
36
  }>>;
37
37
  digitalAccess: z.ZodOptional<z.ZodArray<z.ZodString>>;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "udp-schema",
3
- "version": "2.19.0",
3
+ "version": "2.21.0",
4
4
  "description": "Shared Zod schemas for User Detailed Profile (frontend + backend).",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",