jansathi-community-schema 0.40.0 → 0.41.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.
@@ -0,0 +1,97 @@
1
+ /**
2
+ * Donate Item — create-flow schema (community kind).
3
+ * ===================================================
4
+ * Single source of truth for the WRITE path of the donate-item surface.
5
+ * Mirrors `crowdfunding.ts` / `suggestions-complaints.ts`: this module owns
6
+ * the create body + categories + per-step completeness validators; the
7
+ * display/feed shapes (+ `DONATE_ITEM_CONDITION_VALUES`) stay in `feed.ts`.
8
+ *
9
+ * Consumed by reform-backend (controller validation) + the product frontends
10
+ * (the multi-step `StepForm` config delegates its `isFilled` predicates to
11
+ * `donateItemStepValid`).
12
+ *
13
+ * @module community-schema/donate-item
14
+ */
15
+ import { z } from 'zod';
16
+ import { DONATE_ITEM_CONDITION_VALUES, donateItemConditionSchema } from './feed.js';
17
+ export declare const DONATE_ITEM_CATEGORY_VALUES: readonly ["CLOTHING", "ELECTRONICS", "FURNITURE", "BOOKS_EDUCATION", "KITCHENWARE", "TOYS_GAMES", "FOOD_GROCERIES", "MEDICINES_MEDICAL", "SPORTS_EQUIPMENT", "TOOLS_EQUIPMENT", "STATIONERY", "OTHER"];
18
+ export declare const donateItemCategorySchema: z.ZodEnum<{
19
+ CLOTHING: "CLOTHING";
20
+ ELECTRONICS: "ELECTRONICS";
21
+ FURNITURE: "FURNITURE";
22
+ BOOKS_EDUCATION: "BOOKS_EDUCATION";
23
+ KITCHENWARE: "KITCHENWARE";
24
+ TOYS_GAMES: "TOYS_GAMES";
25
+ FOOD_GROCERIES: "FOOD_GROCERIES";
26
+ MEDICINES_MEDICAL: "MEDICINES_MEDICAL";
27
+ SPORTS_EQUIPMENT: "SPORTS_EQUIPMENT";
28
+ TOOLS_EQUIPMENT: "TOOLS_EQUIPMENT";
29
+ STATIONERY: "STATIONERY";
30
+ OTHER: "OTHER";
31
+ }>;
32
+ export type DonateItemCategory = z.infer<typeof donateItemCategorySchema>;
33
+ export { DONATE_ITEM_CONDITION_VALUES, donateItemConditionSchema };
34
+ export declare const donateItemPickupCoordsSchema: z.ZodObject<{
35
+ type: z.ZodLiteral<"Point">;
36
+ coordinates: z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>;
37
+ }, z.core.$strip>;
38
+ export type DonateItemPickupCoords = z.infer<typeof donateItemPickupCoordsSchema>;
39
+ export declare const donateItemPickupAddressSchema: z.ZodObject<{
40
+ coords: z.ZodOptional<z.ZodObject<{
41
+ type: z.ZodLiteral<"Point">;
42
+ coordinates: z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>;
43
+ }, z.core.$strip>>;
44
+ }, z.core.$loose>;
45
+ export type DonateItemPickupAddress = z.infer<typeof donateItemPickupAddressSchema>;
46
+ export declare const DONATE_ITEM_NAME_MIN_CHARS = 2;
47
+ export declare const DONATE_ITEM_NAME_MAX_CHARS = 100;
48
+ export declare const DONATE_ITEM_DESCRIPTION_MAX_CHARS = 500;
49
+ export declare const DONATE_ITEM_MAX_PHOTOS = 3;
50
+ export declare const DONATE_ITEM_MAX_ESTIMATED_WORTH = 10000000;
51
+ export declare const createDonateItemBodySchema: z.ZodObject<{
52
+ itemName: z.ZodString;
53
+ description: z.ZodOptional<z.ZodString>;
54
+ category: z.ZodEnum<{
55
+ CLOTHING: "CLOTHING";
56
+ ELECTRONICS: "ELECTRONICS";
57
+ FURNITURE: "FURNITURE";
58
+ BOOKS_EDUCATION: "BOOKS_EDUCATION";
59
+ KITCHENWARE: "KITCHENWARE";
60
+ TOYS_GAMES: "TOYS_GAMES";
61
+ FOOD_GROCERIES: "FOOD_GROCERIES";
62
+ MEDICINES_MEDICAL: "MEDICINES_MEDICAL";
63
+ SPORTS_EQUIPMENT: "SPORTS_EQUIPMENT";
64
+ TOOLS_EQUIPMENT: "TOOLS_EQUIPMENT";
65
+ STATIONERY: "STATIONERY";
66
+ OTHER: "OTHER";
67
+ }>;
68
+ condition: z.ZodOptional<z.ZodEnum<{
69
+ NEW: "NEW";
70
+ LIKE_NEW: "LIKE_NEW";
71
+ GOOD: "GOOD";
72
+ FAIR: "FAIR";
73
+ OLD_FUNCTIONAL: "OLD_FUNCTIONAL";
74
+ NEEDS_MINOR_REPAIR: "NEEDS_MINOR_REPAIR";
75
+ NEEDS_MAJOR_REPAIR: "NEEDS_MAJOR_REPAIR";
76
+ FOR_PARTS: "FOR_PARTS";
77
+ }>>;
78
+ estimatedWorth: z.ZodOptional<z.ZodNumber>;
79
+ photos: z.ZodDefault<z.ZodArray<z.ZodString>>;
80
+ donorId: z.ZodString;
81
+ isAnonymous: z.ZodDefault<z.ZodBoolean>;
82
+ pickupAddress: z.ZodOptional<z.ZodObject<{
83
+ coords: z.ZodOptional<z.ZodObject<{
84
+ type: z.ZodLiteral<"Point">;
85
+ coordinates: z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>;
86
+ }, z.core.$strip>>;
87
+ }, z.core.$loose>>;
88
+ markVerifiedOnCreate: z.ZodDefault<z.ZodBoolean>;
89
+ }, z.core.$strip>;
90
+ export type CreateDonateItemBody = z.infer<typeof createDonateItemBodySchema>;
91
+ /** A partially-filled draft as the multi-step form builds it up. */
92
+ export type DonateItemDraft = Partial<CreateDonateItemBody>;
93
+ export declare const donateItemStepValid: {
94
+ readonly itemName: (d: DonateItemDraft) => boolean;
95
+ readonly category: (d: DonateItemDraft) => boolean;
96
+ };
97
+ //# sourceMappingURL=donate-item.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"donate-item.d.ts","sourceRoot":"","sources":["../src/donate-item.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,4BAA4B,EAAE,yBAAyB,EAAE,MAAM,WAAW,CAAC;AAGpF,eAAO,MAAM,2BAA2B,wMAa9B,CAAC;AACX,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;EAAsC,CAAC;AAC5E,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAI1E,OAAO,EAAE,4BAA4B,EAAE,yBAAyB,EAAE,CAAC;AAInE,eAAO,MAAM,4BAA4B;;;iBAGvC,CAAC;AACH,MAAM,MAAM,sBAAsB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,4BAA4B,CAAC,CAAC;AAKlF,eAAO,MAAM,6BAA6B;;;;;iBAI1B,CAAC;AACjB,MAAM,MAAM,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,6BAA6B,CAAC,CAAC;AAGpF,eAAO,MAAM,0BAA0B,IAAI,CAAC;AAC5C,eAAO,MAAM,0BAA0B,MAAM,CAAC;AAC9C,eAAO,MAAM,iCAAiC,MAAM,CAAC;AACrD,eAAO,MAAM,sBAAsB,IAAI,CAAC;AACxC,eAAO,MAAM,+BAA+B,WAAa,CAAC;AAS1D,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAarC,CAAC;AAEH,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAE9E,oEAAoE;AACpE,MAAM,MAAM,eAAe,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC;AAK5D,eAAO,MAAM,mBAAmB;2BAChB,eAAe,KAAG,OAAO;2BACzB,eAAe,KAAG,OAAO;CAG/B,CAAC"}
@@ -0,0 +1,84 @@
1
+ /**
2
+ * Donate Item — create-flow schema (community kind).
3
+ * ===================================================
4
+ * Single source of truth for the WRITE path of the donate-item surface.
5
+ * Mirrors `crowdfunding.ts` / `suggestions-complaints.ts`: this module owns
6
+ * the create body + categories + per-step completeness validators; the
7
+ * display/feed shapes (+ `DONATE_ITEM_CONDITION_VALUES`) stay in `feed.ts`.
8
+ *
9
+ * Consumed by reform-backend (controller validation) + the product frontends
10
+ * (the multi-step `StepForm` config delegates its `isFilled` predicates to
11
+ * `donateItemStepValid`).
12
+ *
13
+ * @module community-schema/donate-item
14
+ */
15
+ import { z } from 'zod';
16
+ import { DONATE_ITEM_CONDITION_VALUES, donateItemConditionSchema } from './feed.js';
17
+ // ─── Category ────────────────────────────────────────────────────────────────
18
+ export const DONATE_ITEM_CATEGORY_VALUES = [
19
+ 'CLOTHING',
20
+ 'ELECTRONICS',
21
+ 'FURNITURE',
22
+ 'BOOKS_EDUCATION',
23
+ 'KITCHENWARE',
24
+ 'TOYS_GAMES',
25
+ 'FOOD_GROCERIES',
26
+ 'MEDICINES_MEDICAL',
27
+ 'SPORTS_EQUIPMENT',
28
+ 'TOOLS_EQUIPMENT',
29
+ 'STATIONERY',
30
+ 'OTHER',
31
+ ];
32
+ export const donateItemCategorySchema = z.enum(DONATE_ITEM_CATEGORY_VALUES);
33
+ // Re-export the condition values (defined in feed.ts) under this module so the
34
+ // create flow has one canonical import.
35
+ export { DONATE_ITEM_CONDITION_VALUES, donateItemConditionSchema };
36
+ // ─── Pickup address ──────────────────────────────────────────────────────────
37
+ // A GeoJSON point. Mirrors the reform-backend pickup coords.
38
+ export const donateItemPickupCoordsSchema = z.object({
39
+ type: z.literal('Point'),
40
+ coordinates: z.tuple([z.number().min(-180).max(180), z.number().min(-90).max(90)]),
41
+ });
42
+ // The structured area-hierarchy pickup address. Loosely typed (passthrough) —
43
+ // the frontend carries the full area lineage; only `coords` is validated here,
44
+ // matching the backend's `pickupAddressZodSchema`.
45
+ export const donateItemPickupAddressSchema = z
46
+ .object({
47
+ coords: donateItemPickupCoordsSchema.optional(),
48
+ })
49
+ .passthrough();
50
+ // ─── Field constraints ───────────────────────────────────────────────────────
51
+ export const DONATE_ITEM_NAME_MIN_CHARS = 2;
52
+ export const DONATE_ITEM_NAME_MAX_CHARS = 100;
53
+ export const DONATE_ITEM_DESCRIPTION_MAX_CHARS = 500;
54
+ export const DONATE_ITEM_MAX_PHOTOS = 3;
55
+ export const DONATE_ITEM_MAX_ESTIMATED_WORTH = 10_000_000;
56
+ const itemNameSchema = z
57
+ .string()
58
+ .trim()
59
+ .min(DONATE_ITEM_NAME_MIN_CHARS, 'Item name must be at least 2 characters')
60
+ .max(DONATE_ITEM_NAME_MAX_CHARS, 'Item name must not exceed 100 characters');
61
+ // ─── Create body ─────────────────────────────────────────────────────────────
62
+ export const createDonateItemBodySchema = z.object({
63
+ itemName: itemNameSchema,
64
+ description: z.string().trim().max(DONATE_ITEM_DESCRIPTION_MAX_CHARS).optional(),
65
+ category: donateItemCategorySchema,
66
+ condition: donateItemConditionSchema.optional(),
67
+ estimatedWorth: z.number().min(0).max(DONATE_ITEM_MAX_ESTIMATED_WORTH).optional(),
68
+ photos: z.array(z.string()).max(DONATE_ITEM_MAX_PHOTOS, 'Maximum 3 photos').default([]),
69
+ /** Donor id — the current user in self-mode; a chosen donor in surveyor (behalf) mode. */
70
+ donorId: z.string().min(1, 'Donor is required'),
71
+ isAnonymous: z.boolean().default(false),
72
+ pickupAddress: donateItemPickupAddressSchema.optional(),
73
+ /** Surveyor-only: mark as already collected/verified at creation. */
74
+ markVerifiedOnCreate: z.boolean().default(false),
75
+ });
76
+ // ─── Per-step completeness validators (the SSOT the StepForm config delegates
77
+ // its `isFilled` predicates to). Only itemName + category are required for
78
+ // the wire; the rest are optional steps. ──────────────────────────────────
79
+ export const donateItemStepValid = {
80
+ itemName: (d) => itemNameSchema.safeParse(d.itemName).success,
81
+ category: (d) => typeof d.category === 'string' &&
82
+ DONATE_ITEM_CATEGORY_VALUES.includes(d.category),
83
+ };
84
+ //# sourceMappingURL=donate-item.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"donate-item.js","sourceRoot":"","sources":["../src/donate-item.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Donate Item — create-flow schema (community kind).\n * ===================================================\n * Single source of truth for the WRITE path of the donate-item surface.\n * Mirrors `crowdfunding.ts` / `suggestions-complaints.ts`: this module owns\n * the create body + categories + per-step completeness validators; the\n * display/feed shapes (+ `DONATE_ITEM_CONDITION_VALUES`) stay in `feed.ts`.\n *\n * Consumed by reform-backend (controller validation) + the product frontends\n * (the multi-step `StepForm` config delegates its `isFilled` predicates to\n * `donateItemStepValid`).\n *\n * @module community-schema/donate-item\n */\n\nimport { z } from 'zod';\nimport { DONATE_ITEM_CONDITION_VALUES, donateItemConditionSchema } from './feed.js';\n\n// ─── Category ────────────────────────────────────────────────────────────────\nexport const DONATE_ITEM_CATEGORY_VALUES = [\n 'CLOTHING',\n 'ELECTRONICS',\n 'FURNITURE',\n 'BOOKS_EDUCATION',\n 'KITCHENWARE',\n 'TOYS_GAMES',\n 'FOOD_GROCERIES',\n 'MEDICINES_MEDICAL',\n 'SPORTS_EQUIPMENT',\n 'TOOLS_EQUIPMENT',\n 'STATIONERY',\n 'OTHER',\n] as const;\nexport const donateItemCategorySchema = z.enum(DONATE_ITEM_CATEGORY_VALUES);\nexport type DonateItemCategory = z.infer<typeof donateItemCategorySchema>;\n\n// Re-export the condition values (defined in feed.ts) under this module so the\n// create flow has one canonical import.\nexport { DONATE_ITEM_CONDITION_VALUES, donateItemConditionSchema };\n\n// ─── Pickup address ──────────────────────────────────────────────────────────\n// A GeoJSON point. Mirrors the reform-backend pickup coords.\nexport const donateItemPickupCoordsSchema = z.object({\n type: z.literal('Point'),\n coordinates: z.tuple([z.number().min(-180).max(180), z.number().min(-90).max(90)]),\n});\nexport type DonateItemPickupCoords = z.infer<typeof donateItemPickupCoordsSchema>;\n\n// The structured area-hierarchy pickup address. Loosely typed (passthrough) —\n// the frontend carries the full area lineage; only `coords` is validated here,\n// matching the backend's `pickupAddressZodSchema`.\nexport const donateItemPickupAddressSchema = z\n .object({\n coords: donateItemPickupCoordsSchema.optional(),\n })\n .passthrough();\nexport type DonateItemPickupAddress = z.infer<typeof donateItemPickupAddressSchema>;\n\n// ─── Field constraints ───────────────────────────────────────────────────────\nexport const DONATE_ITEM_NAME_MIN_CHARS = 2;\nexport const DONATE_ITEM_NAME_MAX_CHARS = 100;\nexport const DONATE_ITEM_DESCRIPTION_MAX_CHARS = 500;\nexport const DONATE_ITEM_MAX_PHOTOS = 3;\nexport const DONATE_ITEM_MAX_ESTIMATED_WORTH = 10_000_000;\n\nconst itemNameSchema = z\n .string()\n .trim()\n .min(DONATE_ITEM_NAME_MIN_CHARS, 'Item name must be at least 2 characters')\n .max(DONATE_ITEM_NAME_MAX_CHARS, 'Item name must not exceed 100 characters');\n\n// ─── Create body ─────────────────────────────────────────────────────────────\nexport const createDonateItemBodySchema = z.object({\n itemName: itemNameSchema,\n description: z.string().trim().max(DONATE_ITEM_DESCRIPTION_MAX_CHARS).optional(),\n category: donateItemCategorySchema,\n condition: donateItemConditionSchema.optional(),\n estimatedWorth: z.number().min(0).max(DONATE_ITEM_MAX_ESTIMATED_WORTH).optional(),\n photos: z.array(z.string()).max(DONATE_ITEM_MAX_PHOTOS, 'Maximum 3 photos').default([]),\n /** Donor id — the current user in self-mode; a chosen donor in surveyor (behalf) mode. */\n donorId: z.string().min(1, 'Donor is required'),\n isAnonymous: z.boolean().default(false),\n pickupAddress: donateItemPickupAddressSchema.optional(),\n /** Surveyor-only: mark as already collected/verified at creation. */\n markVerifiedOnCreate: z.boolean().default(false),\n});\n\nexport type CreateDonateItemBody = z.infer<typeof createDonateItemBodySchema>;\n\n/** A partially-filled draft as the multi-step form builds it up. */\nexport type DonateItemDraft = Partial<CreateDonateItemBody>;\n\n// ─── Per-step completeness validators (the SSOT the StepForm config delegates\n// its `isFilled` predicates to). Only itemName + category are required for\n// the wire; the rest are optional steps. ──────────────────────────────────\nexport const donateItemStepValid = {\n itemName: (d: DonateItemDraft): boolean => itemNameSchema.safeParse(d.itemName).success,\n category: (d: DonateItemDraft): boolean =>\n typeof d.category === 'string' &&\n (DONATE_ITEM_CATEGORY_VALUES as readonly string[]).includes(d.category),\n} as const;\n"]}
package/dist/index.d.ts CHANGED
@@ -18,7 +18,6 @@ export { type AreaLineageSnapshot, areaLineageSnapshotSchema, } from './area.js'
18
18
  export { type CommunityCommentWire, type CreateCommentBody, communityCommentWireSchema, createCommentBodySchema, type UpdateCommentBody, updateCommentBodySchema, } from './comment.js';
19
19
  export { type AddOfficialModeratorBody, AREA_PICKER_LEVEL_VALUES, type AreaPickerItem, type AreaPickerLevel, type AreaPickerQuery, type AreaPickerResponse, addOfficialModeratorBodySchema, areaPickerItemSchema, areaPickerLevelSchema, areaPickerQuerySchema, areaPickerResponseSchema, COMMUNITY_CATEGORY_VALUES, COMMUNITY_DESIGNATION_PRESETS, COMMUNITY_DISCOVER_SORT_VALUES, COMMUNITY_KIND_VALUES, COMMUNITY_MEMBERSHIP_STATUS_VALUES, COMMUNITY_REACH_VALUES, COMMUNITY_ROLE_VALUES, COMMUNITY_TAG_VALUES, COMMUNITY_TYPE_VALUES, COMMUNITY_VERIFIED_SCOPE_VALUES, type CommunityCategory, type CommunityCenterCoords, type CommunityDesignation, type CommunityDesignationPreset, type CommunityDiscoverSort, type CommunityKind, type CommunityListQuery, type CommunityListResponse, type CommunityMembershipStatus, type CommunityMembersListResponse, type CommunityMemberWire, type CommunityReach, type CommunityRole, type CommunityTag, type CommunityType, type CommunityVerifiedScope, type CommunityWire, type CreateCommunityBody, type CreateOfficialCommunityBody, communityCategorySchema, communityCenterCoordsSchema, communityDesignationPresetSchema, communityDesignationSchema, communityDiscoverSortSchema, communityKindSchema, communityListQuerySchema, communityListResponseSchema, communityMembershipStatusSchema, communityMembersListResponseSchema, communityMemberWireSchema, communityReachSchema, communityRoleSchema, communityTagSchema, communityTypeSchema, communityVerifiedScopeSchema, communityWireSchema, createCommunityBodySchema, createOfficialCommunityBodySchema, type HidePostBody, hidePostBodySchema, type JoinCommunityResponse, joinCommunityResponseSchema, OFFICIAL_COMMUNITY_AREA_KIND_VALUES, type OfficialCommunityAreaKind, officialCommunityAreaKindSchema, type SetMemberDesignationBody, type SetOfficialRepresentativeBody, setMemberDesignationBodySchema, setOfficialRepresentativeBodySchema, type UpdateCommunityBody, type UpdateMemberRoleBody, updateCommunityBodySchema, updateMemberRoleBodySchema, type VerifyCommunityBody, verifyCommunityBodySchema, } from './community.js';
20
20
  export { COMMENT_MAX_BODY_CHARS, COMMENTS_PAGE_SIZE, COMMUNITIES_PAGE_SIZE, COMMUNITY_DESCRIPTION_MAX_CHARS, COMMUNITY_DESIGNATION_CUSTOM_MAX_CHARS, COMMUNITY_DESIGNATION_CUSTOM_MIN_CHARS, COMMUNITY_DESIGNATION_CUSTOM_PATTERN, COMMUNITY_HYPERLOCAL_RADIUS_KM, COMMUNITY_MAX_TAGS, COMMUNITY_MEMBERS_PAGE_SIZE, COMMUNITY_NAME_MAX_CHARS, COMMUNITY_NAME_MIN_CHARS, COMMUNITY_SLUG_MAX_CHARS, COMMUNITY_SLUG_MIN_CHARS, COMMUNITY_SLUG_PATTERN, CROWDFUNDING_BANK_LINK_DEADLINE_DAYS, CROWDFUNDING_BENEFICIARY_NAME_MAX_CHARS, CROWDFUNDING_BENEFICIARY_RELATION_MAX_CHARS, CROWDFUNDING_DESCRIPTION_MAX_CHARS, CROWDFUNDING_DESCRIPTION_MIN_CHARS, CROWDFUNDING_MAX_DONATION_INR, CROWDFUNDING_MAX_DURATION_DAYS, CROWDFUNDING_MAX_GOAL_INR, CROWDFUNDING_MAX_IMAGES, CROWDFUNDING_MAX_PROOF_DOCS, CROWDFUNDING_MAX_SUPPORTING_DOCS, CROWDFUNDING_MIN_DURATION_DAYS, CROWDFUNDING_MIN_GOAL_INR, CROWDFUNDING_MIN_PROOF_DOCS, CROWDFUNDING_PAGE_SIZE, CROWDFUNDING_PROOF_DOC_DESCRIPTION_MAX_CHARS, CROWDFUNDING_PROOF_DOC_DESCRIPTION_MIN_CHARS, CROWDFUNDING_REJECTION_REASON_MAX_CHARS, CROWDFUNDING_REJECTION_REASON_MIN_CHARS, CROWDFUNDING_TERMS_VERSION, CROWDFUNDING_TITLE_MAX_CHARS, CROWDFUNDING_TITLE_MIN_CHARS, EDIT_GRACE_WINDOW_MS, FEED_PAGE_SIZE, GROUP_MAX_MEMBERS, GROUP_NAME_MAX_CHARS, GROUP_NAME_MIN_CHARS, PEOPLE_PAGE_SIZE, POLL_DURATION_PRESETS_MS, POLL_MAX_DURATION_MS, POLL_MAX_OPTIONS, POLL_MIN_DURATION_MS, POLL_MIN_OPTIONS, POLL_OPTION_MAX_CHARS, POLL_OPTION_MIN_CHARS, POLL_QUESTION_MAX_CHARS, POLL_QUESTION_MIN_CHARS, POLLS_PAGE_SIZE, POST_MAX_BODY_CHARS, POST_MAX_IMAGE_BYTES, POST_MAX_IMAGES, POST_MAX_VIDEO_BYTES, POST_MAX_VIDEO_SECONDS, POST_MAX_VIDEOS, PROFILE_MAX_BIO_CHARS, REPLIES_PRELOAD_COUNT, } from './constants.js';
21
- export { COMPLAINT_CATEGORY_VALUES, complaintCategorySchema, type ComplaintCategory, createSuggestionsComplaintsBodySchema, type CreateSuggestionsComplaintsBody, SUGGESTION_CATEGORY_VALUES, suggestionCategorySchema, type SuggestionCategory, SUGGESTIONS_COMPLAINTS_CATEGORY_VALUES, SUGGESTIONS_COMPLAINTS_DESCRIPTION_MAX_CHARS, SUGGESTIONS_COMPLAINTS_MAX_IMAGES, SUGGESTIONS_COMPLAINTS_MAX_VIDEO_LINKS, SUGGESTIONS_COMPLAINTS_SUGGESTION_DESCRIPTION_MIN_CHARS, SUGGESTIONS_COMPLAINTS_TITLE_MAX_CHARS, SUGGESTIONS_COMPLAINTS_TITLE_MIN_CHARS, SUGGESTIONS_COMPLAINTS_TYPE_VALUES, suggestionsComplaintsBodyObjectSchema, type SuggestionsComplaintsDraft, suggestionsComplaintsLocationSchema, type SuggestionsComplaintsLocation, suggestionsComplaintsStepValid, suggestionsComplaintsTypeSchema, type SuggestionsComplaintsType, uploadedMediaPathSchema, type UploadedMediaPath, } from './suggestions-complaints.js';
22
21
  export { type ApproveCrowdfundingBody, type AttestCrowdfundingDonationBody, approveCrowdfundingBodySchema, attestCrowdfundingDonationBodySchema, type CommunityCrowdfundingWire, CROWDFUNDING_AUDIENCE_VALUES, CROWDFUNDING_CATEGORY_VALUES, CROWDFUNDING_DONATION_STATE_VALUES, CROWDFUNDING_ORG_KIND_VALUES, CROWDFUNDING_PROOF_DOC_TYPE_VALUES, CROWDFUNDING_RAZORPAY_ACCOUNT_STATUS_VALUES, CROWDFUNDING_STATUS_VALUES, type CreateCrowdfundingBody, type CrowdfundingAudience, type CrowdfundingCategory, type CrowdfundingDonationState, type CrowdfundingDonationWire, type CrowdfundingFeedItem, type CrowdfundingOrgKind, type CrowdfundingPayment, type CrowdfundingProofDocType, type CrowdfundingProofDocumentWire, type CrowdfundingRazorpayAccountStatus, type CrowdfundingRazorpayAccountWire, type CrowdfundingStatus, type CrowdfundingVerification, type CrowdfundingVerificationStage, type CrowdfundingVisibility, communityCrowdfundingWireSchema, createCrowdfundingBodySchema, crowdfundingAudienceSchema, crowdfundingCategorySchema, crowdfundingDonationStateSchema, crowdfundingDonationWireSchema, crowdfundingFeedItemSchema, crowdfundingOrgKindSchema, crowdfundingPaymentSchema, crowdfundingProofDocTypeSchema, crowdfundingProofDocumentWireSchema, crowdfundingRazorpayAccountStatusSchema, crowdfundingRazorpayAccountWireSchema, crowdfundingStatusSchema, crowdfundingVerificationSchema, crowdfundingVerificationStageSchema, crowdfundingVisibilitySchema, type ListCrowdfundingDonationsQuery, type ListMyCrowdfundingDonationsQuery, listCrowdfundingDonationsQuerySchema, listMyCrowdfundingDonationsQuerySchema, type RejectCrowdfundingBody, type RequestRerunCrowdfundingBody, rejectCrowdfundingBodySchema, requestRerunCrowdfundingBodySchema, type UpdateCrowdfundingBody, type UploadCrowdfundingReceiptBody, updateCrowdfundingBodySchema, uploadCrowdfundingReceiptBodySchema, } from './crowdfunding.js';
23
22
  export { type SetReactionBody, type SetReactionResponse, type SetVoteBody, type SetVoteResponse, setReactionBodySchema, setReactionResponseSchema, setVoteBodySchema, setVoteResponseSchema, type ToggleBookmarkResponse, toggleBookmarkResponseSchema, VOTE_VALUES, type VoteValue, voteValueSchema, } from './engagement.js';
24
23
  export { CONTENT_KIND_VALUES, type ContentKind, contentKindSchema, FEED_SORT_VALUES, type FeedSort, feedSortSchema, PROFILE_PRIVACY_VALUES, type ProfilePrivacy, profilePrivacySchema, REACTION_TYPE_VALUES, REPORT_REASON_VALUES, REPORT_STATUS_VALUES, type ReactionType, type ReportReason, type ReportStatus, reactionTypeSchema, reportReasonSchema, reportStatusSchema, VISIBILITY_LEVEL_RANK, VISIBILITY_LEVEL_VALUES, type VisibilityLevel, visibilityLevelSchema, } from './enums.js';
@@ -35,5 +34,7 @@ export { type CreateRepostBody, type CreateRepostResponse, createRepostBodySchem
35
34
  export { type BlockedUsersListResponse, type BlockedUserWire, blockedUsersListResponseSchema, blockedUserWireSchema, COMMUNITY_SETTINGS_DEFAULTS, type CommunitySettingsWire, communitySettingsWireSchema, type UpdateCommunitySettingsBody, updateCommunitySettingsBodySchema, } from './settings.js';
36
35
  export { type ToggleFollowResponse, toggleFollowResponseSchema, type ViewerSocialState, viewerSocialStateSchema, } from './social.js';
37
36
  export { SOCIAL_SCORE_TIER_NAMES, SOCIAL_SCORE_TIERS, type SocialScoreTier, type SocialScoreTierName, tierFromSocialScore, } from './social-score.js';
37
+ export { createDonateItemBodySchema, type CreateDonateItemBody, DONATE_ITEM_CATEGORY_VALUES, DONATE_ITEM_DESCRIPTION_MAX_CHARS, DONATE_ITEM_MAX_ESTIMATED_WORTH, DONATE_ITEM_MAX_PHOTOS, DONATE_ITEM_NAME_MAX_CHARS, DONATE_ITEM_NAME_MIN_CHARS, donateItemCategorySchema, type DonateItemCategory, type DonateItemDraft, donateItemPickupAddressSchema, type DonateItemPickupAddress, donateItemPickupCoordsSchema, type DonateItemPickupCoords, donateItemStepValid, } from './donate-item.js';
38
+ export { COMPLAINT_CATEGORY_VALUES, type ComplaintCategory, type CreateSuggestionsComplaintsBody, complaintCategorySchema, createSuggestionsComplaintsBodySchema, SUGGESTION_CATEGORY_VALUES, SUGGESTIONS_COMPLAINTS_CATEGORY_VALUES, SUGGESTIONS_COMPLAINTS_DESCRIPTION_MAX_CHARS, SUGGESTIONS_COMPLAINTS_MAX_IMAGES, SUGGESTIONS_COMPLAINTS_MAX_VIDEO_LINKS, SUGGESTIONS_COMPLAINTS_SUGGESTION_DESCRIPTION_MIN_CHARS, SUGGESTIONS_COMPLAINTS_TITLE_MAX_CHARS, SUGGESTIONS_COMPLAINTS_TITLE_MIN_CHARS, SUGGESTIONS_COMPLAINTS_TYPE_VALUES, type SuggestionCategory, type SuggestionsComplaintsDraft, type SuggestionsComplaintsLocation, type SuggestionsComplaintsType, suggestionCategorySchema, suggestionsComplaintsBodyObjectSchema, suggestionsComplaintsLocationSchema, suggestionsComplaintsStepValid, suggestionsComplaintsTypeSchema, type UploadedMediaPath, uploadedMediaPathSchema, } from './suggestions-complaints.js';
38
39
  export { type CurrentUsernameState, currentUsernameStateSchema, type UpdateUsernameBody, type UpdateUsernameResponse, USERNAME_MAX_LENGTH, USERNAME_MIN_LENGTH, USERNAME_PATTERN, USERNAME_UNAVAILABLE_REASONS, type Username, type UsernameAvailabilityResponse, type UsernameUnavailableReason, updateUsernameBodySchema, updateUsernameResponseSchema, usernameAvailabilityResponseSchema, usernameSchema, usernameUnavailableReasonSchema, } from './username.js';
39
40
  //# sourceMappingURL=index.d.ts.map
@@ -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":"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"}
package/dist/index.js CHANGED
@@ -22,8 +22,6 @@ export { communityCommentWireSchema, createCommentBodySchema, updateCommentBodyS
22
22
  export { AREA_PICKER_LEVEL_VALUES, addOfficialModeratorBodySchema, areaPickerItemSchema, areaPickerLevelSchema, areaPickerQuerySchema, areaPickerResponseSchema, COMMUNITY_CATEGORY_VALUES, COMMUNITY_DESIGNATION_PRESETS, COMMUNITY_DISCOVER_SORT_VALUES, COMMUNITY_KIND_VALUES, COMMUNITY_MEMBERSHIP_STATUS_VALUES, COMMUNITY_REACH_VALUES, COMMUNITY_ROLE_VALUES, COMMUNITY_TAG_VALUES, COMMUNITY_TYPE_VALUES, COMMUNITY_VERIFIED_SCOPE_VALUES, communityCategorySchema, communityCenterCoordsSchema, communityDesignationPresetSchema, communityDesignationSchema, communityDiscoverSortSchema, communityKindSchema, communityListQuerySchema, communityListResponseSchema, communityMembershipStatusSchema, communityMembersListResponseSchema, communityMemberWireSchema, communityReachSchema, communityRoleSchema, communityTagSchema, communityTypeSchema, communityVerifiedScopeSchema, communityWireSchema, createCommunityBodySchema, createOfficialCommunityBodySchema, hidePostBodySchema, joinCommunityResponseSchema, OFFICIAL_COMMUNITY_AREA_KIND_VALUES, officialCommunityAreaKindSchema, setMemberDesignationBodySchema, setOfficialRepresentativeBodySchema, updateCommunityBodySchema, updateMemberRoleBodySchema, verifyCommunityBodySchema, } from './community.js';
23
23
  // ─── Constants ─────────────────────────────────────────────────────────────
24
24
  export { COMMENT_MAX_BODY_CHARS, COMMENTS_PAGE_SIZE, COMMUNITIES_PAGE_SIZE, COMMUNITY_DESCRIPTION_MAX_CHARS, COMMUNITY_DESIGNATION_CUSTOM_MAX_CHARS, COMMUNITY_DESIGNATION_CUSTOM_MIN_CHARS, COMMUNITY_DESIGNATION_CUSTOM_PATTERN, COMMUNITY_HYPERLOCAL_RADIUS_KM, COMMUNITY_MAX_TAGS, COMMUNITY_MEMBERS_PAGE_SIZE, COMMUNITY_NAME_MAX_CHARS, COMMUNITY_NAME_MIN_CHARS, COMMUNITY_SLUG_MAX_CHARS, COMMUNITY_SLUG_MIN_CHARS, COMMUNITY_SLUG_PATTERN, CROWDFUNDING_BANK_LINK_DEADLINE_DAYS, CROWDFUNDING_BENEFICIARY_NAME_MAX_CHARS, CROWDFUNDING_BENEFICIARY_RELATION_MAX_CHARS, CROWDFUNDING_DESCRIPTION_MAX_CHARS, CROWDFUNDING_DESCRIPTION_MIN_CHARS, CROWDFUNDING_MAX_DONATION_INR, CROWDFUNDING_MAX_DURATION_DAYS, CROWDFUNDING_MAX_GOAL_INR, CROWDFUNDING_MAX_IMAGES, CROWDFUNDING_MAX_PROOF_DOCS, CROWDFUNDING_MAX_SUPPORTING_DOCS, CROWDFUNDING_MIN_DURATION_DAYS, CROWDFUNDING_MIN_GOAL_INR, CROWDFUNDING_MIN_PROOF_DOCS, CROWDFUNDING_PAGE_SIZE, CROWDFUNDING_PROOF_DOC_DESCRIPTION_MAX_CHARS, CROWDFUNDING_PROOF_DOC_DESCRIPTION_MIN_CHARS, CROWDFUNDING_REJECTION_REASON_MAX_CHARS, CROWDFUNDING_REJECTION_REASON_MIN_CHARS, CROWDFUNDING_TERMS_VERSION, CROWDFUNDING_TITLE_MAX_CHARS, CROWDFUNDING_TITLE_MIN_CHARS, EDIT_GRACE_WINDOW_MS, FEED_PAGE_SIZE, GROUP_MAX_MEMBERS, GROUP_NAME_MAX_CHARS, GROUP_NAME_MIN_CHARS, PEOPLE_PAGE_SIZE, POLL_DURATION_PRESETS_MS, POLL_MAX_DURATION_MS, POLL_MAX_OPTIONS, POLL_MIN_DURATION_MS, POLL_MIN_OPTIONS, POLL_OPTION_MAX_CHARS, POLL_OPTION_MIN_CHARS, POLL_QUESTION_MAX_CHARS, POLL_QUESTION_MIN_CHARS, POLLS_PAGE_SIZE, POST_MAX_BODY_CHARS, POST_MAX_IMAGE_BYTES, POST_MAX_IMAGES, POST_MAX_VIDEO_BYTES, POST_MAX_VIDEO_SECONDS, POST_MAX_VIDEOS, PROFILE_MAX_BIO_CHARS, REPLIES_PRELOAD_COUNT, } from './constants.js';
25
- // ─── Suggestions & Complaints (create) ──────────────────────────────────────
26
- export { COMPLAINT_CATEGORY_VALUES, complaintCategorySchema, createSuggestionsComplaintsBodySchema, SUGGESTION_CATEGORY_VALUES, suggestionCategorySchema, SUGGESTIONS_COMPLAINTS_CATEGORY_VALUES, SUGGESTIONS_COMPLAINTS_DESCRIPTION_MAX_CHARS, SUGGESTIONS_COMPLAINTS_MAX_IMAGES, SUGGESTIONS_COMPLAINTS_MAX_VIDEO_LINKS, SUGGESTIONS_COMPLAINTS_SUGGESTION_DESCRIPTION_MIN_CHARS, SUGGESTIONS_COMPLAINTS_TITLE_MAX_CHARS, SUGGESTIONS_COMPLAINTS_TITLE_MIN_CHARS, SUGGESTIONS_COMPLAINTS_TYPE_VALUES, suggestionsComplaintsBodyObjectSchema, suggestionsComplaintsLocationSchema, suggestionsComplaintsStepValid, suggestionsComplaintsTypeSchema, uploadedMediaPathSchema, } from './suggestions-complaints.js';
27
25
  // ─── Crowdfunding ──────────────────────────────────────────────────────────
28
26
  export { approveCrowdfundingBodySchema, attestCrowdfundingDonationBodySchema, CROWDFUNDING_AUDIENCE_VALUES, CROWDFUNDING_CATEGORY_VALUES, CROWDFUNDING_DONATION_STATE_VALUES, CROWDFUNDING_ORG_KIND_VALUES, CROWDFUNDING_PROOF_DOC_TYPE_VALUES, CROWDFUNDING_RAZORPAY_ACCOUNT_STATUS_VALUES, CROWDFUNDING_STATUS_VALUES, communityCrowdfundingWireSchema, createCrowdfundingBodySchema, crowdfundingAudienceSchema, crowdfundingCategorySchema, crowdfundingDonationStateSchema, crowdfundingDonationWireSchema, crowdfundingFeedItemSchema, crowdfundingOrgKindSchema, crowdfundingPaymentSchema, crowdfundingProofDocTypeSchema, crowdfundingProofDocumentWireSchema, crowdfundingRazorpayAccountStatusSchema, crowdfundingRazorpayAccountWireSchema, crowdfundingStatusSchema, crowdfundingVerificationSchema, crowdfundingVerificationStageSchema, crowdfundingVisibilitySchema, listCrowdfundingDonationsQuerySchema, listMyCrowdfundingDonationsQuerySchema, rejectCrowdfundingBodySchema, requestRerunCrowdfundingBodySchema, updateCrowdfundingBodySchema, uploadCrowdfundingReceiptBodySchema, } from './crowdfunding.js';
29
27
  // ─── Engagement (vote + reactions + bookmark) ─────────────────────────────
@@ -56,6 +54,10 @@ export { blockedUsersListResponseSchema, blockedUserWireSchema, COMMUNITY_SETTIN
56
54
  export { toggleFollowResponseSchema, viewerSocialStateSchema, } from './social.js';
57
55
  // ─── Social score (shared tier table) ─────────────────────────────────────
58
56
  export { SOCIAL_SCORE_TIER_NAMES, SOCIAL_SCORE_TIERS, tierFromSocialScore, } from './social-score.js';
57
+ // ─── Donate Item (create) ────────────────────────────────────────────────────
58
+ export { createDonateItemBodySchema, DONATE_ITEM_CATEGORY_VALUES, DONATE_ITEM_DESCRIPTION_MAX_CHARS, DONATE_ITEM_MAX_ESTIMATED_WORTH, DONATE_ITEM_MAX_PHOTOS, DONATE_ITEM_NAME_MAX_CHARS, DONATE_ITEM_NAME_MIN_CHARS, donateItemCategorySchema, donateItemPickupAddressSchema, donateItemPickupCoordsSchema, donateItemStepValid, } from './donate-item.js';
59
+ // ─── Suggestions & Complaints (create) ──────────────────────────────────────
60
+ export { COMPLAINT_CATEGORY_VALUES, complaintCategorySchema, createSuggestionsComplaintsBodySchema, SUGGESTION_CATEGORY_VALUES, SUGGESTIONS_COMPLAINTS_CATEGORY_VALUES, SUGGESTIONS_COMPLAINTS_DESCRIPTION_MAX_CHARS, SUGGESTIONS_COMPLAINTS_MAX_IMAGES, SUGGESTIONS_COMPLAINTS_MAX_VIDEO_LINKS, SUGGESTIONS_COMPLAINTS_SUGGESTION_DESCRIPTION_MIN_CHARS, SUGGESTIONS_COMPLAINTS_TITLE_MAX_CHARS, SUGGESTIONS_COMPLAINTS_TITLE_MIN_CHARS, SUGGESTIONS_COMPLAINTS_TYPE_VALUES, suggestionCategorySchema, suggestionsComplaintsBodyObjectSchema, suggestionsComplaintsLocationSchema, suggestionsComplaintsStepValid, suggestionsComplaintsTypeSchema, uploadedMediaPathSchema, } from './suggestions-complaints.js';
59
61
  // ─── Username (URL handle + change / availability) ────────────────────────
60
62
  export { currentUsernameStateSchema, USERNAME_MAX_LENGTH, USERNAME_MIN_LENGTH, USERNAME_PATTERN, USERNAME_UNAVAILABLE_REASONS, updateUsernameBodySchema, updateUsernameResponseSchema, usernameAvailabilityResponseSchema, usernameSchema, usernameUnavailableReasonSchema, } from './username.js';
61
63
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,8EAA8E;AAC9E,OAAO,EAEL,yBAAyB,GAC1B,MAAM,WAAW,CAAC;AAEnB,8EAA8E;AAC9E,OAAO,EAGL,0BAA0B,EAC1B,uBAAuB,EAEvB,uBAAuB,GACxB,MAAM,cAAc,CAAC;AAEtB,8EAA8E;AAC9E,OAAO,EAEL,wBAAwB,EAKxB,8BAA8B,EAC9B,oBAAoB,EACpB,qBAAqB,EACrB,qBAAqB,EACrB,wBAAwB,EACxB,yBAAyB,EACzB,6BAA6B,EAC7B,8BAA8B,EAC9B,qBAAqB,EACrB,kCAAkC,EAClC,sBAAsB,EACtB,qBAAqB,EACrB,oBAAoB,EACpB,qBAAqB,EACrB,+BAA+B,EAoB/B,uBAAuB,EACvB,2BAA2B,EAC3B,gCAAgC,EAChC,0BAA0B,EAC1B,2BAA2B,EAC3B,mBAAmB,EACnB,wBAAwB,EACxB,2BAA2B,EAC3B,+BAA+B,EAC/B,kCAAkC,EAClC,yBAAyB,EACzB,oBAAoB,EACpB,mBAAmB,EACnB,kBAAkB,EAClB,mBAAmB,EACnB,4BAA4B,EAC5B,mBAAmB,EACnB,yBAAyB,EACzB,iCAAiC,EAEjC,kBAAkB,EAElB,2BAA2B,EAC3B,mCAAmC,EAEnC,+BAA+B,EAG/B,8BAA8B,EAC9B,mCAAmC,EAGnC,yBAAyB,EACzB,0BAA0B,EAE1B,yBAAyB,GAC1B,MAAM,gBAAgB,CAAC;AAExB,8EAA8E;AAC9E,OAAO,EACL,sBAAsB,EACtB,kBAAkB,EAClB,qBAAqB,EACrB,+BAA+B,EAC/B,sCAAsC,EACtC,sCAAsC,EACtC,oCAAoC,EACpC,8BAA8B,EAC9B,kBAAkB,EAClB,2BAA2B,EAC3B,wBAAwB,EACxB,wBAAwB,EACxB,wBAAwB,EACxB,wBAAwB,EACxB,sBAAsB,EACtB,oCAAoC,EACpC,uCAAuC,EACvC,2CAA2C,EAC3C,kCAAkC,EAClC,kCAAkC,EAClC,6BAA6B,EAC7B,8BAA8B,EAC9B,yBAAyB,EACzB,uBAAuB,EACvB,2BAA2B,EAC3B,gCAAgC,EAChC,8BAA8B,EAC9B,yBAAyB,EACzB,2BAA2B,EAC3B,sBAAsB,EACtB,4CAA4C,EAC5C,4CAA4C,EAC5C,uCAAuC,EACvC,uCAAuC,EACvC,0BAA0B,EAC1B,4BAA4B,EAC5B,4BAA4B,EAC5B,oBAAoB,EACpB,cAAc,EACd,iBAAiB,EACjB,oBAAoB,EACpB,oBAAoB,EACpB,gBAAgB,EAChB,wBAAwB,EACxB,oBAAoB,EACpB,gBAAgB,EAChB,oBAAoB,EACpB,gBAAgB,EAChB,qBAAqB,EACrB,qBAAqB,EACrB,uBAAuB,EACvB,uBAAuB,EACvB,eAAe,EACf,mBAAmB,EACnB,oBAAoB,EACpB,eAAe,EACf,oBAAoB,EACpB,sBAAsB,EACtB,eAAe,EACf,qBAAqB,EACrB,qBAAqB,GACtB,MAAM,gBAAgB,CAAC;AAExB,+EAA+E;AAC/E,OAAO,EACL,yBAAyB,EACzB,uBAAuB,EAEvB,qCAAqC,EAErC,0BAA0B,EAC1B,wBAAwB,EAExB,sCAAsC,EACtC,4CAA4C,EAC5C,iCAAiC,EACjC,sCAAsC,EACtC,uDAAuD,EACvD,sCAAsC,EACtC,sCAAsC,EACtC,kCAAkC,EAClC,qCAAqC,EAErC,mCAAmC,EAEnC,8BAA8B,EAC9B,+BAA+B,EAE/B,uBAAuB,GAExB,MAAM,6BAA6B,CAAC;AAErC,8EAA8E;AAC9E,OAAO,EAGL,6BAA6B,EAC7B,oCAAoC,EAEpC,4BAA4B,EAC5B,4BAA4B,EAC5B,kCAAkC,EAClC,4BAA4B,EAC5B,kCAAkC,EAClC,2CAA2C,EAC3C,0BAA0B,EAiB1B,+BAA+B,EAC/B,4BAA4B,EAC5B,0BAA0B,EAC1B,0BAA0B,EAC1B,+BAA+B,EAC/B,8BAA8B,EAC9B,0BAA0B,EAC1B,yBAAyB,EACzB,yBAAyB,EACzB,8BAA8B,EAC9B,mCAAmC,EACnC,uCAAuC,EACvC,qCAAqC,EACrC,wBAAwB,EACxB,8BAA8B,EAC9B,mCAAmC,EACnC,4BAA4B,EAG5B,oCAAoC,EACpC,sCAAsC,EAGtC,4BAA4B,EAC5B,kCAAkC,EAGlC,4BAA4B,EAC5B,mCAAmC,GACpC,MAAM,mBAAmB,CAAC;AAC3B,6EAA6E;AAC7E,OAAO,EAKL,qBAAqB,EACrB,yBAAyB,EACzB,iBAAiB,EACjB,qBAAqB,EAErB,4BAA4B,EAC5B,WAAW,EAEX,eAAe,GAChB,MAAM,iBAAiB,CAAC;AACzB,8EAA8E;AAC9E,OAAO,EACL,mBAAmB,EAEnB,iBAAiB,EACjB,gBAAgB,EAEhB,cAAc,EACd,sBAAsB,EAEtB,oBAAoB,EACpB,oBAAoB,EACpB,oBAAoB,EACpB,oBAAoB,EAIpB,kBAAkB,EAClB,kBAAkB,EAClB,kBAAkB,EAClB,qBAAqB,EACrB,uBAAuB,EAEvB,qBAAqB,GACtB,MAAM,YAAY,CAAC;AACpB,8EAA8E;AAC9E,OAAO,EACL,4BAA4B,EAC5B,yBAAyB,EAIzB,mBAAmB,EACnB,qBAAqB,EACrB,qBAAqB,EACrB,yBAAyB,EACzB,wBAAwB,EACxB,sBAAsB,EAItB,cAAc,EACd,qBAAqB,EACrB,kBAAkB,EAClB,0BAA0B,EAC1B,wBAAwB,EAMxB,uBAAuB,EACvB,uBAAuB,EACvB,uBAAuB,EACvB,qBAAqB,EACrB,wBAAwB,EACxB,yBAAyB,EACzB,uBAAuB,EAKvB,mBAAmB,EACnB,sBAAsB,EACtB,sBAAsB,EACtB,6BAA6B,EAC7B,sBAAsB,EACtB,oBAAoB,EACpB,mBAAmB,GACpB,MAAM,WAAW,CAAC;AACnB,8EAA8E;AAC9E,OAAO,EAEL,yBAAyB,EAIzB,wBAAwB,EACxB,+BAA+B,EAC/B,qBAAqB,EAKrB,8BAA8B,EAC9B,qBAAqB,EACrB,eAAe,EACf,wBAAwB,EAExB,qBAAqB,GACtB,MAAM,YAAY,CAAC;AACpB,6EAA6E;AAC7E,OAAO,EACL,wBAAwB,EAGxB,qBAAqB,EACrB,iBAAiB,GAClB,MAAM,mBAAmB,CAAC;AAC3B,8EAA8E;AAC9E,OAAO,EAGL,eAAe,EACf,eAAe,GAChB,MAAM,YAAY,CAAC;AACpB,8EAA8E;AAC9E,OAAO,EAGL,4BAA4B,EAC5B,+BAA+B,EAE/B,kCAAkC,EAClC,4BAA4B,EAC5B,2BAA2B,EAC3B,4BAA4B,EAC5B,mCAAmC,EAWnC,uBAAuB,EACvB,0BAA0B,EAC1B,yBAAyB,EACzB,0BAA0B,EAC1B,8BAA8B,EAC9B,2BAA2B,EAC3B,+BAA+B,EAC/B,2BAA2B,EAC3B,6BAA6B,EAC7B,sBAAsB,EACtB,iCAAiC,GAElC,MAAM,mBAAmB,CAAC;AAC3B,8EAA8E;AAC9E,OAAO,EAKL,kBAAkB,EAClB,2BAA2B,EAC3B,uBAAuB,EACvB,oBAAoB,EACpB,8BAA8B,EAI9B,qBAAqB,EACrB,oBAAoB,EACpB,2BAA2B,EAE3B,kBAAkB,GACnB,MAAM,WAAW,CAAC;AACnB,8EAA8E;AAC9E,OAAO,EAGL,uBAAuB,EACvB,oBAAoB,EAEpB,wBAAwB,EAExB,oBAAoB,EAEpB,oBAAoB,GACrB,MAAM,WAAW,CAAC;AACnB,8EAA8E;AAC9E,OAAO,EACL,0BAA0B,EAC1B,yBAAyB,EAOzB,sBAAsB,EACtB,oBAAoB,EACpB,wBAAwB,EACxB,uBAAuB,EACvB,oBAAoB,EACpB,uBAAuB,GACxB,MAAM,cAAc,CAAC;AACtB,8EAA8E;AAC9E,OAAO,EAML,uBAAuB,EACvB,uBAAuB,EACvB,sBAAsB,EACtB,8BAA8B,EAC9B,oBAAoB,GACrB,MAAM,aAAa,CAAC;AACrB,8EAA8E;AAC9E,OAAO,EAGL,sBAAsB,EACtB,0BAA0B,GAC3B,MAAM,aAAa,CAAC;AACrB,8EAA8E;AAC9E,OAAO,EAGL,8BAA8B,EAC9B,qBAAqB,EACrB,2BAA2B,EAE3B,2BAA2B,EAE3B,iCAAiC,GAClC,MAAM,eAAe,CAAC;AACvB,8EAA8E;AAC9E,OAAO,EAEL,0BAA0B,EAE1B,uBAAuB,GACxB,MAAM,aAAa,CAAC;AACrB,6EAA6E;AAC7E,OAAO,EACL,uBAAuB,EACvB,kBAAkB,EAGlB,mBAAmB,GACpB,MAAM,mBAAmB,CAAC;AAE3B,6EAA6E;AAC7E,OAAO,EAEL,0BAA0B,EAG1B,mBAAmB,EACnB,mBAAmB,EACnB,gBAAgB,EAChB,4BAA4B,EAI5B,wBAAwB,EACxB,4BAA4B,EAC5B,kCAAkC,EAClC,cAAc,EACd,+BAA+B,GAChC,MAAM,eAAe,CAAC","sourcesContent":["/**\n * community-schema — Shared Zod schemas + TypeScript types for the\n * Jansathi hyperlocal community feature (feed, posts, engagement,\n * social graph, groups, settings).\n *\n * Single source of truth consumed by reform-backend and every product\n * frontend. The schemas mirror MongoDB / Mongoose document shapes\n * 1:1 so the same Zod validation runs at the controller boundary on\n * the backend and in the form handlers on the client.\n *\n * Cascade-upward visibility semantics: a viewer whose feed level is L\n * sees posts at L and every BROADER level matching their area lineage.\n * See `./enums.ts#VISIBILITY_LEVEL_VALUES` for the level rank table.\n *\n * @module community-schema\n */\n\n// ─── Area lineage snapshot ─────────────────────────────────────────────────\nexport {\n type AreaLineageSnapshot,\n areaLineageSnapshotSchema,\n} from './area.js';\n\n// ─── Comment ───────────────────────────────────────────────────────────────\nexport {\n type CommunityCommentWire,\n type CreateCommentBody,\n communityCommentWireSchema,\n createCommentBodySchema,\n type UpdateCommentBody,\n updateCommentBodySchema,\n} from './comment.js';\n\n// ─── Communities ───────────────────────────────────────────────────────────\nexport {\n type AddOfficialModeratorBody,\n AREA_PICKER_LEVEL_VALUES,\n type AreaPickerItem,\n type AreaPickerLevel,\n type AreaPickerQuery,\n type AreaPickerResponse,\n addOfficialModeratorBodySchema,\n areaPickerItemSchema,\n areaPickerLevelSchema,\n areaPickerQuerySchema,\n areaPickerResponseSchema,\n COMMUNITY_CATEGORY_VALUES,\n COMMUNITY_DESIGNATION_PRESETS,\n COMMUNITY_DISCOVER_SORT_VALUES,\n COMMUNITY_KIND_VALUES,\n COMMUNITY_MEMBERSHIP_STATUS_VALUES,\n COMMUNITY_REACH_VALUES,\n COMMUNITY_ROLE_VALUES,\n COMMUNITY_TAG_VALUES,\n COMMUNITY_TYPE_VALUES,\n COMMUNITY_VERIFIED_SCOPE_VALUES,\n type CommunityCategory,\n type CommunityCenterCoords,\n type CommunityDesignation,\n type CommunityDesignationPreset,\n type CommunityDiscoverSort,\n type CommunityKind,\n type CommunityListQuery,\n type CommunityListResponse,\n type CommunityMembershipStatus,\n type CommunityMembersListResponse,\n type CommunityMemberWire,\n type CommunityReach,\n type CommunityRole,\n type CommunityTag,\n type CommunityType,\n type CommunityVerifiedScope,\n type CommunityWire,\n type CreateCommunityBody,\n type CreateOfficialCommunityBody,\n communityCategorySchema,\n communityCenterCoordsSchema,\n communityDesignationPresetSchema,\n communityDesignationSchema,\n communityDiscoverSortSchema,\n communityKindSchema,\n communityListQuerySchema,\n communityListResponseSchema,\n communityMembershipStatusSchema,\n communityMembersListResponseSchema,\n communityMemberWireSchema,\n communityReachSchema,\n communityRoleSchema,\n communityTagSchema,\n communityTypeSchema,\n communityVerifiedScopeSchema,\n communityWireSchema,\n createCommunityBodySchema,\n createOfficialCommunityBodySchema,\n type HidePostBody,\n hidePostBodySchema,\n type JoinCommunityResponse,\n joinCommunityResponseSchema,\n OFFICIAL_COMMUNITY_AREA_KIND_VALUES,\n type OfficialCommunityAreaKind,\n officialCommunityAreaKindSchema,\n type SetMemberDesignationBody,\n type SetOfficialRepresentativeBody,\n setMemberDesignationBodySchema,\n setOfficialRepresentativeBodySchema,\n type UpdateCommunityBody,\n type UpdateMemberRoleBody,\n updateCommunityBodySchema,\n updateMemberRoleBodySchema,\n type VerifyCommunityBody,\n verifyCommunityBodySchema,\n} from './community.js';\n\n// ─── Constants ─────────────────────────────────────────────────────────────\nexport {\n COMMENT_MAX_BODY_CHARS,\n COMMENTS_PAGE_SIZE,\n COMMUNITIES_PAGE_SIZE,\n COMMUNITY_DESCRIPTION_MAX_CHARS,\n COMMUNITY_DESIGNATION_CUSTOM_MAX_CHARS,\n COMMUNITY_DESIGNATION_CUSTOM_MIN_CHARS,\n COMMUNITY_DESIGNATION_CUSTOM_PATTERN,\n COMMUNITY_HYPERLOCAL_RADIUS_KM,\n COMMUNITY_MAX_TAGS,\n COMMUNITY_MEMBERS_PAGE_SIZE,\n COMMUNITY_NAME_MAX_CHARS,\n COMMUNITY_NAME_MIN_CHARS,\n COMMUNITY_SLUG_MAX_CHARS,\n COMMUNITY_SLUG_MIN_CHARS,\n COMMUNITY_SLUG_PATTERN,\n CROWDFUNDING_BANK_LINK_DEADLINE_DAYS,\n CROWDFUNDING_BENEFICIARY_NAME_MAX_CHARS,\n CROWDFUNDING_BENEFICIARY_RELATION_MAX_CHARS,\n CROWDFUNDING_DESCRIPTION_MAX_CHARS,\n CROWDFUNDING_DESCRIPTION_MIN_CHARS,\n CROWDFUNDING_MAX_DONATION_INR,\n CROWDFUNDING_MAX_DURATION_DAYS,\n CROWDFUNDING_MAX_GOAL_INR,\n CROWDFUNDING_MAX_IMAGES,\n CROWDFUNDING_MAX_PROOF_DOCS,\n CROWDFUNDING_MAX_SUPPORTING_DOCS,\n CROWDFUNDING_MIN_DURATION_DAYS,\n CROWDFUNDING_MIN_GOAL_INR,\n CROWDFUNDING_MIN_PROOF_DOCS,\n CROWDFUNDING_PAGE_SIZE,\n CROWDFUNDING_PROOF_DOC_DESCRIPTION_MAX_CHARS,\n CROWDFUNDING_PROOF_DOC_DESCRIPTION_MIN_CHARS,\n CROWDFUNDING_REJECTION_REASON_MAX_CHARS,\n CROWDFUNDING_REJECTION_REASON_MIN_CHARS,\n CROWDFUNDING_TERMS_VERSION,\n CROWDFUNDING_TITLE_MAX_CHARS,\n CROWDFUNDING_TITLE_MIN_CHARS,\n EDIT_GRACE_WINDOW_MS,\n FEED_PAGE_SIZE,\n GROUP_MAX_MEMBERS,\n GROUP_NAME_MAX_CHARS,\n GROUP_NAME_MIN_CHARS,\n PEOPLE_PAGE_SIZE,\n POLL_DURATION_PRESETS_MS,\n POLL_MAX_DURATION_MS,\n POLL_MAX_OPTIONS,\n POLL_MIN_DURATION_MS,\n POLL_MIN_OPTIONS,\n POLL_OPTION_MAX_CHARS,\n POLL_OPTION_MIN_CHARS,\n POLL_QUESTION_MAX_CHARS,\n POLL_QUESTION_MIN_CHARS,\n POLLS_PAGE_SIZE,\n POST_MAX_BODY_CHARS,\n POST_MAX_IMAGE_BYTES,\n POST_MAX_IMAGES,\n POST_MAX_VIDEO_BYTES,\n POST_MAX_VIDEO_SECONDS,\n POST_MAX_VIDEOS,\n PROFILE_MAX_BIO_CHARS,\n REPLIES_PRELOAD_COUNT,\n} from './constants.js';\n\n// ─── Suggestions & Complaints (create) ──────────────────────────────────────\nexport {\n COMPLAINT_CATEGORY_VALUES,\n complaintCategorySchema,\n type ComplaintCategory,\n createSuggestionsComplaintsBodySchema,\n type CreateSuggestionsComplaintsBody,\n SUGGESTION_CATEGORY_VALUES,\n suggestionCategorySchema,\n type SuggestionCategory,\n SUGGESTIONS_COMPLAINTS_CATEGORY_VALUES,\n SUGGESTIONS_COMPLAINTS_DESCRIPTION_MAX_CHARS,\n SUGGESTIONS_COMPLAINTS_MAX_IMAGES,\n SUGGESTIONS_COMPLAINTS_MAX_VIDEO_LINKS,\n SUGGESTIONS_COMPLAINTS_SUGGESTION_DESCRIPTION_MIN_CHARS,\n SUGGESTIONS_COMPLAINTS_TITLE_MAX_CHARS,\n SUGGESTIONS_COMPLAINTS_TITLE_MIN_CHARS,\n SUGGESTIONS_COMPLAINTS_TYPE_VALUES,\n suggestionsComplaintsBodyObjectSchema,\n type SuggestionsComplaintsDraft,\n suggestionsComplaintsLocationSchema,\n type SuggestionsComplaintsLocation,\n suggestionsComplaintsStepValid,\n suggestionsComplaintsTypeSchema,\n type SuggestionsComplaintsType,\n uploadedMediaPathSchema,\n type UploadedMediaPath,\n} from './suggestions-complaints.js';\n\n// ─── Crowdfunding ──────────────────────────────────────────────────────────\nexport {\n type ApproveCrowdfundingBody,\n type AttestCrowdfundingDonationBody,\n approveCrowdfundingBodySchema,\n attestCrowdfundingDonationBodySchema,\n type CommunityCrowdfundingWire,\n CROWDFUNDING_AUDIENCE_VALUES,\n CROWDFUNDING_CATEGORY_VALUES,\n CROWDFUNDING_DONATION_STATE_VALUES,\n CROWDFUNDING_ORG_KIND_VALUES,\n CROWDFUNDING_PROOF_DOC_TYPE_VALUES,\n CROWDFUNDING_RAZORPAY_ACCOUNT_STATUS_VALUES,\n CROWDFUNDING_STATUS_VALUES,\n type CreateCrowdfundingBody,\n type CrowdfundingAudience,\n type CrowdfundingCategory,\n type CrowdfundingDonationState,\n type CrowdfundingDonationWire,\n type CrowdfundingFeedItem,\n type CrowdfundingOrgKind,\n type CrowdfundingPayment,\n type CrowdfundingProofDocType,\n type CrowdfundingProofDocumentWire,\n type CrowdfundingRazorpayAccountStatus,\n type CrowdfundingRazorpayAccountWire,\n type CrowdfundingStatus,\n type CrowdfundingVerification,\n type CrowdfundingVerificationStage,\n type CrowdfundingVisibility,\n communityCrowdfundingWireSchema,\n createCrowdfundingBodySchema,\n crowdfundingAudienceSchema,\n crowdfundingCategorySchema,\n crowdfundingDonationStateSchema,\n crowdfundingDonationWireSchema,\n crowdfundingFeedItemSchema,\n crowdfundingOrgKindSchema,\n crowdfundingPaymentSchema,\n crowdfundingProofDocTypeSchema,\n crowdfundingProofDocumentWireSchema,\n crowdfundingRazorpayAccountStatusSchema,\n crowdfundingRazorpayAccountWireSchema,\n crowdfundingStatusSchema,\n crowdfundingVerificationSchema,\n crowdfundingVerificationStageSchema,\n crowdfundingVisibilitySchema,\n type ListCrowdfundingDonationsQuery,\n type ListMyCrowdfundingDonationsQuery,\n listCrowdfundingDonationsQuerySchema,\n listMyCrowdfundingDonationsQuerySchema,\n type RejectCrowdfundingBody,\n type RequestRerunCrowdfundingBody,\n rejectCrowdfundingBodySchema,\n requestRerunCrowdfundingBodySchema,\n type UpdateCrowdfundingBody,\n type UploadCrowdfundingReceiptBody,\n updateCrowdfundingBodySchema,\n uploadCrowdfundingReceiptBodySchema,\n} from './crowdfunding.js';\n// ─── Engagement (vote + reactions + bookmark) ─────────────────────────────\nexport {\n type SetReactionBody,\n type SetReactionResponse,\n type SetVoteBody,\n type SetVoteResponse,\n setReactionBodySchema,\n setReactionResponseSchema,\n setVoteBodySchema,\n setVoteResponseSchema,\n type ToggleBookmarkResponse,\n toggleBookmarkResponseSchema,\n VOTE_VALUES,\n type VoteValue,\n voteValueSchema,\n} from './engagement.js';\n// ─── Enums ─────────────────────────────────────────────────────────────────\nexport {\n CONTENT_KIND_VALUES,\n type ContentKind,\n contentKindSchema,\n FEED_SORT_VALUES,\n type FeedSort,\n feedSortSchema,\n PROFILE_PRIVACY_VALUES,\n type ProfilePrivacy,\n profilePrivacySchema,\n REACTION_TYPE_VALUES,\n REPORT_REASON_VALUES,\n REPORT_STATUS_VALUES,\n type ReactionType,\n type ReportReason,\n type ReportStatus,\n reactionTypeSchema,\n reportReasonSchema,\n reportStatusSchema,\n VISIBILITY_LEVEL_RANK,\n VISIBILITY_LEVEL_VALUES,\n type VisibilityLevel,\n visibilityLevelSchema,\n} from './enums.js';\n// ─── Feed (polymorphic union) ──────────────────────────────────────────────\nexport {\n DONATE_ITEM_CONDITION_VALUES,\n DONATE_ITEM_STATUS_VALUES,\n type DonateItemCondition,\n type DonateItemFeedItem,\n type DonateItemStatus,\n donateAuditAtSchema,\n donateAuditByAtSchema,\n donateDonatedToSchema,\n donateItemConditionSchema,\n donateItemFeedItemSchema,\n donateItemStatusSchema,\n type FeedItem,\n type FeedQueryParams,\n type FeedResponse,\n feedItemSchema,\n feedQueryParamsSchema,\n feedResponseSchema,\n LOST_FOUND_CATEGORY_VALUES,\n LOST_FOUND_STATUS_VALUES,\n type LostFoundCategory,\n type LostFoundFeedItem,\n type LostFoundLocation,\n type LostFoundStatus,\n type LostFoundTimeRange,\n lostFoundCategorySchema,\n lostFoundFeedItemSchema,\n lostFoundLocationSchema,\n lostFoundStatusSchema,\n lostFoundTimeRangeSchema,\n VOICE_BOX_PRIORITY_VALUES,\n VOICE_BOX_STATUS_VALUES,\n type VoiceBoxFeedItem,\n type VoiceBoxLocation,\n type VoiceBoxPriority,\n type VoiceBoxStatus,\n voiceBoxAudioSchema,\n voiceBoxFeedItemSchema,\n voiceBoxLocationSchema,\n voiceBoxOfficerResponseSchema,\n voiceBoxPrioritySchema,\n voiceBoxStatusSchema,\n voiceBoxVideoSchema,\n} from './feed.js';\n// ─── Groups ────────────────────────────────────────────────────────────────\nexport {\n type AddGroupMembersBody,\n addGroupMembersBodySchema,\n type CommunityGroupWire,\n type CommunityGroupWithMembers,\n type CreateGroupBody,\n communityGroupWireSchema,\n communityGroupWithMembersSchema,\n createGroupBodySchema,\n type GroupMembersListResponse,\n type GroupMemberWire,\n type GroupRole,\n type GroupsListResponse,\n groupMembersListResponseSchema,\n groupMemberWireSchema,\n groupRoleSchema,\n groupsListResponseSchema,\n type UpdateGroupBody,\n updateGroupBodySchema,\n} from './group.js';\n// ─── Link preview (auto-extracted URL embed) ──────────────────────────────\nexport {\n LINK_PREVIEW_KIND_VALUES,\n type LinkPreview,\n type LinkPreviewKind,\n linkPreviewKindSchema,\n linkPreviewSchema,\n} from './link-preview.js';\n// ─── Media ─────────────────────────────────────────────────────────────────\nexport {\n type PostImage,\n type PostVideo,\n postImageSchema,\n postVideoSchema,\n} from './media.js';\n// ─── Notifications ─────────────────────────────────────────────────────────\nexport {\n type ListNotificationsQuery,\n type ListNotificationsResponse,\n listNotificationsQuerySchema,\n listNotificationsResponseSchema,\n type MarkAllNotificationsReadBody,\n markAllNotificationsReadBodySchema,\n NOTIFICATION_CATEGORY_VALUES,\n NOTIFICATION_CHANNEL_VALUES,\n NOTIFICATION_PRIORITY_VALUES,\n NOTIFICATION_SOURCE_REF_KIND_VALUES,\n type NotificationActor,\n type NotificationCategory,\n type NotificationChannel,\n type NotificationPriority,\n type NotificationReadAllEvent,\n type NotificationReadEvent,\n type NotificationSourceRef,\n type NotificationSourceRefKind,\n type NotificationUnreadCount,\n type NotificationWire,\n notificationActorSchema,\n notificationCategorySchema,\n notificationChannelSchema,\n notificationPrioritySchema,\n notificationReadAllEventSchema,\n notificationReadEventSchema,\n notificationSourceRefKindSchema,\n notificationSourceRefSchema,\n notificationUnreadCountSchema,\n notificationWireSchema,\n REFORM_NOTIFICATION_SOCKET_EVENTS,\n type ReformNotificationSocketEvent,\n} from './notification.js';\n// ─── Poll ──────────────────────────────────────────────────────────────────\nexport {\n type CastVoteBody,\n type CommunityPollFeedItem,\n type CommunityPollWire,\n type CreatePollBody,\n castVoteBodySchema,\n communityPollFeedItemSchema,\n communityPollWireSchema,\n createPollBodySchema,\n POLL_RESULTS_VISIBILITY_VALUES,\n type PollOptionInput,\n type PollOptionWire,\n type PollResultsVisibility,\n pollOptionInputSchema,\n pollOptionWireSchema,\n pollResultsVisibilitySchema,\n type VoteResponse,\n voteResponseSchema,\n} from './poll.js';\n// ─── Post ──────────────────────────────────────────────────────────────────\nexport {\n type CommunityPostWire,\n type CreatePostBody,\n communityPostWireSchema,\n createPostBodySchema,\n type PostAuthorSnapshot,\n postAuthorSnapshotSchema,\n type RepostedSource,\n repostedSourceSchema,\n type UpdatePostBody,\n updatePostBodySchema,\n} from './post.js';\n// ─── Profile + People list ─────────────────────────────────────────────────\nexport {\n PEOPLE_LIST_FILTER_DEFAULT,\n PEOPLE_LIST_FILTER_VALUES,\n type PeopleListFilter,\n type PeopleListItem,\n type PeopleListResponse,\n type PeopleQueryParams,\n type ProfileMutuals,\n type PublicProfileWire,\n peopleListFilterSchema,\n peopleListItemSchema,\n peopleListResponseSchema,\n peopleQueryParamsSchema,\n profileMutualsSchema,\n publicProfileWireSchema,\n} from './profile.js';\n// ─── Reports (moderation) ──────────────────────────────────────────────────\nexport {\n type ReportContentBody,\n type ReportContentKind,\n type ReportRecordWire,\n type ReportSubmissionResponse,\n type ReportUserBody,\n reportContentBodySchema,\n reportContentKindSchema,\n reportRecordWireSchema,\n reportSubmissionResponseSchema,\n reportUserBodySchema,\n} from './report.js';\n// ─── Repost (quote / amplify) ──────────────────────────────────────────────\nexport {\n type CreateRepostBody,\n type CreateRepostResponse,\n createRepostBodySchema,\n createRepostResponseSchema,\n} from './repost.js';\n// ─── Settings ──────────────────────────────────────────────────────────────\nexport {\n type BlockedUsersListResponse,\n type BlockedUserWire,\n blockedUsersListResponseSchema,\n blockedUserWireSchema,\n COMMUNITY_SETTINGS_DEFAULTS,\n type CommunitySettingsWire,\n communitySettingsWireSchema,\n type UpdateCommunitySettingsBody,\n updateCommunitySettingsBodySchema,\n} from './settings.js';\n// ─── Social (follow) ───────────────────────────────────────────────────────\nexport {\n type ToggleFollowResponse,\n toggleFollowResponseSchema,\n type ViewerSocialState,\n viewerSocialStateSchema,\n} from './social.js';\n// ─── Social score (shared tier table) ─────────────────────────────────────\nexport {\n SOCIAL_SCORE_TIER_NAMES,\n SOCIAL_SCORE_TIERS,\n type SocialScoreTier,\n type SocialScoreTierName,\n tierFromSocialScore,\n} from './social-score.js';\n\n// ─── Username (URL handle + change / availability) ────────────────────────\nexport {\n type CurrentUsernameState,\n currentUsernameStateSchema,\n type UpdateUsernameBody,\n type UpdateUsernameResponse,\n USERNAME_MAX_LENGTH,\n USERNAME_MIN_LENGTH,\n USERNAME_PATTERN,\n USERNAME_UNAVAILABLE_REASONS,\n type Username,\n type UsernameAvailabilityResponse,\n type UsernameUnavailableReason,\n updateUsernameBodySchema,\n updateUsernameResponseSchema,\n usernameAvailabilityResponseSchema,\n usernameSchema,\n usernameUnavailableReasonSchema,\n} from './username.js';\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,8EAA8E;AAC9E,OAAO,EAEL,yBAAyB,GAC1B,MAAM,WAAW,CAAC;AAEnB,8EAA8E;AAC9E,OAAO,EAGL,0BAA0B,EAC1B,uBAAuB,EAEvB,uBAAuB,GACxB,MAAM,cAAc,CAAC;AAEtB,8EAA8E;AAC9E,OAAO,EAEL,wBAAwB,EAKxB,8BAA8B,EAC9B,oBAAoB,EACpB,qBAAqB,EACrB,qBAAqB,EACrB,wBAAwB,EACxB,yBAAyB,EACzB,6BAA6B,EAC7B,8BAA8B,EAC9B,qBAAqB,EACrB,kCAAkC,EAClC,sBAAsB,EACtB,qBAAqB,EACrB,oBAAoB,EACpB,qBAAqB,EACrB,+BAA+B,EAoB/B,uBAAuB,EACvB,2BAA2B,EAC3B,gCAAgC,EAChC,0BAA0B,EAC1B,2BAA2B,EAC3B,mBAAmB,EACnB,wBAAwB,EACxB,2BAA2B,EAC3B,+BAA+B,EAC/B,kCAAkC,EAClC,yBAAyB,EACzB,oBAAoB,EACpB,mBAAmB,EACnB,kBAAkB,EAClB,mBAAmB,EACnB,4BAA4B,EAC5B,mBAAmB,EACnB,yBAAyB,EACzB,iCAAiC,EAEjC,kBAAkB,EAElB,2BAA2B,EAC3B,mCAAmC,EAEnC,+BAA+B,EAG/B,8BAA8B,EAC9B,mCAAmC,EAGnC,yBAAyB,EACzB,0BAA0B,EAE1B,yBAAyB,GAC1B,MAAM,gBAAgB,CAAC;AAExB,8EAA8E;AAC9E,OAAO,EACL,sBAAsB,EACtB,kBAAkB,EAClB,qBAAqB,EACrB,+BAA+B,EAC/B,sCAAsC,EACtC,sCAAsC,EACtC,oCAAoC,EACpC,8BAA8B,EAC9B,kBAAkB,EAClB,2BAA2B,EAC3B,wBAAwB,EACxB,wBAAwB,EACxB,wBAAwB,EACxB,wBAAwB,EACxB,sBAAsB,EACtB,oCAAoC,EACpC,uCAAuC,EACvC,2CAA2C,EAC3C,kCAAkC,EAClC,kCAAkC,EAClC,6BAA6B,EAC7B,8BAA8B,EAC9B,yBAAyB,EACzB,uBAAuB,EACvB,2BAA2B,EAC3B,gCAAgC,EAChC,8BAA8B,EAC9B,yBAAyB,EACzB,2BAA2B,EAC3B,sBAAsB,EACtB,4CAA4C,EAC5C,4CAA4C,EAC5C,uCAAuC,EACvC,uCAAuC,EACvC,0BAA0B,EAC1B,4BAA4B,EAC5B,4BAA4B,EAC5B,oBAAoB,EACpB,cAAc,EACd,iBAAiB,EACjB,oBAAoB,EACpB,oBAAoB,EACpB,gBAAgB,EAChB,wBAAwB,EACxB,oBAAoB,EACpB,gBAAgB,EAChB,oBAAoB,EACpB,gBAAgB,EAChB,qBAAqB,EACrB,qBAAqB,EACrB,uBAAuB,EACvB,uBAAuB,EACvB,eAAe,EACf,mBAAmB,EACnB,oBAAoB,EACpB,eAAe,EACf,oBAAoB,EACpB,sBAAsB,EACtB,eAAe,EACf,qBAAqB,EACrB,qBAAqB,GACtB,MAAM,gBAAgB,CAAC;AACxB,8EAA8E;AAC9E,OAAO,EAGL,6BAA6B,EAC7B,oCAAoC,EAEpC,4BAA4B,EAC5B,4BAA4B,EAC5B,kCAAkC,EAClC,4BAA4B,EAC5B,kCAAkC,EAClC,2CAA2C,EAC3C,0BAA0B,EAiB1B,+BAA+B,EAC/B,4BAA4B,EAC5B,0BAA0B,EAC1B,0BAA0B,EAC1B,+BAA+B,EAC/B,8BAA8B,EAC9B,0BAA0B,EAC1B,yBAAyB,EACzB,yBAAyB,EACzB,8BAA8B,EAC9B,mCAAmC,EACnC,uCAAuC,EACvC,qCAAqC,EACrC,wBAAwB,EACxB,8BAA8B,EAC9B,mCAAmC,EACnC,4BAA4B,EAG5B,oCAAoC,EACpC,sCAAsC,EAGtC,4BAA4B,EAC5B,kCAAkC,EAGlC,4BAA4B,EAC5B,mCAAmC,GACpC,MAAM,mBAAmB,CAAC;AAC3B,6EAA6E;AAC7E,OAAO,EAKL,qBAAqB,EACrB,yBAAyB,EACzB,iBAAiB,EACjB,qBAAqB,EAErB,4BAA4B,EAC5B,WAAW,EAEX,eAAe,GAChB,MAAM,iBAAiB,CAAC;AACzB,8EAA8E;AAC9E,OAAO,EACL,mBAAmB,EAEnB,iBAAiB,EACjB,gBAAgB,EAEhB,cAAc,EACd,sBAAsB,EAEtB,oBAAoB,EACpB,oBAAoB,EACpB,oBAAoB,EACpB,oBAAoB,EAIpB,kBAAkB,EAClB,kBAAkB,EAClB,kBAAkB,EAClB,qBAAqB,EACrB,uBAAuB,EAEvB,qBAAqB,GACtB,MAAM,YAAY,CAAC;AACpB,8EAA8E;AAC9E,OAAO,EACL,4BAA4B,EAC5B,yBAAyB,EAIzB,mBAAmB,EACnB,qBAAqB,EACrB,qBAAqB,EACrB,yBAAyB,EACzB,wBAAwB,EACxB,sBAAsB,EAItB,cAAc,EACd,qBAAqB,EACrB,kBAAkB,EAClB,0BAA0B,EAC1B,wBAAwB,EAMxB,uBAAuB,EACvB,uBAAuB,EACvB,uBAAuB,EACvB,qBAAqB,EACrB,wBAAwB,EACxB,yBAAyB,EACzB,uBAAuB,EAKvB,mBAAmB,EACnB,sBAAsB,EACtB,sBAAsB,EACtB,6BAA6B,EAC7B,sBAAsB,EACtB,oBAAoB,EACpB,mBAAmB,GACpB,MAAM,WAAW,CAAC;AACnB,8EAA8E;AAC9E,OAAO,EAEL,yBAAyB,EAIzB,wBAAwB,EACxB,+BAA+B,EAC/B,qBAAqB,EAKrB,8BAA8B,EAC9B,qBAAqB,EACrB,eAAe,EACf,wBAAwB,EAExB,qBAAqB,GACtB,MAAM,YAAY,CAAC;AACpB,6EAA6E;AAC7E,OAAO,EACL,wBAAwB,EAGxB,qBAAqB,EACrB,iBAAiB,GAClB,MAAM,mBAAmB,CAAC;AAC3B,8EAA8E;AAC9E,OAAO,EAGL,eAAe,EACf,eAAe,GAChB,MAAM,YAAY,CAAC;AACpB,8EAA8E;AAC9E,OAAO,EAGL,4BAA4B,EAC5B,+BAA+B,EAE/B,kCAAkC,EAClC,4BAA4B,EAC5B,2BAA2B,EAC3B,4BAA4B,EAC5B,mCAAmC,EAWnC,uBAAuB,EACvB,0BAA0B,EAC1B,yBAAyB,EACzB,0BAA0B,EAC1B,8BAA8B,EAC9B,2BAA2B,EAC3B,+BAA+B,EAC/B,2BAA2B,EAC3B,6BAA6B,EAC7B,sBAAsB,EACtB,iCAAiC,GAElC,MAAM,mBAAmB,CAAC;AAC3B,8EAA8E;AAC9E,OAAO,EAKL,kBAAkB,EAClB,2BAA2B,EAC3B,uBAAuB,EACvB,oBAAoB,EACpB,8BAA8B,EAI9B,qBAAqB,EACrB,oBAAoB,EACpB,2BAA2B,EAE3B,kBAAkB,GACnB,MAAM,WAAW,CAAC;AACnB,8EAA8E;AAC9E,OAAO,EAGL,uBAAuB,EACvB,oBAAoB,EAEpB,wBAAwB,EAExB,oBAAoB,EAEpB,oBAAoB,GACrB,MAAM,WAAW,CAAC;AACnB,8EAA8E;AAC9E,OAAO,EACL,0BAA0B,EAC1B,yBAAyB,EAOzB,sBAAsB,EACtB,oBAAoB,EACpB,wBAAwB,EACxB,uBAAuB,EACvB,oBAAoB,EACpB,uBAAuB,GACxB,MAAM,cAAc,CAAC;AACtB,8EAA8E;AAC9E,OAAO,EAML,uBAAuB,EACvB,uBAAuB,EACvB,sBAAsB,EACtB,8BAA8B,EAC9B,oBAAoB,GACrB,MAAM,aAAa,CAAC;AACrB,8EAA8E;AAC9E,OAAO,EAGL,sBAAsB,EACtB,0BAA0B,GAC3B,MAAM,aAAa,CAAC;AACrB,8EAA8E;AAC9E,OAAO,EAGL,8BAA8B,EAC9B,qBAAqB,EACrB,2BAA2B,EAE3B,2BAA2B,EAE3B,iCAAiC,GAClC,MAAM,eAAe,CAAC;AACvB,8EAA8E;AAC9E,OAAO,EAEL,0BAA0B,EAE1B,uBAAuB,GACxB,MAAM,aAAa,CAAC;AACrB,6EAA6E;AAC7E,OAAO,EACL,uBAAuB,EACvB,kBAAkB,EAGlB,mBAAmB,GACpB,MAAM,mBAAmB,CAAC;AAC3B,gFAAgF;AAChF,OAAO,EACL,0BAA0B,EAE1B,2BAA2B,EAC3B,iCAAiC,EACjC,+BAA+B,EAC/B,sBAAsB,EACtB,0BAA0B,EAC1B,0BAA0B,EAC1B,wBAAwB,EAGxB,6BAA6B,EAE7B,4BAA4B,EAE5B,mBAAmB,GACpB,MAAM,kBAAkB,CAAC;AAE1B,+EAA+E;AAC/E,OAAO,EACL,yBAAyB,EAGzB,uBAAuB,EACvB,qCAAqC,EACrC,0BAA0B,EAC1B,sCAAsC,EACtC,4CAA4C,EAC5C,iCAAiC,EACjC,sCAAsC,EACtC,uDAAuD,EACvD,sCAAsC,EACtC,sCAAsC,EACtC,kCAAkC,EAKlC,wBAAwB,EACxB,qCAAqC,EACrC,mCAAmC,EACnC,8BAA8B,EAC9B,+BAA+B,EAE/B,uBAAuB,GACxB,MAAM,6BAA6B,CAAC;AAErC,6EAA6E;AAC7E,OAAO,EAEL,0BAA0B,EAG1B,mBAAmB,EACnB,mBAAmB,EACnB,gBAAgB,EAChB,4BAA4B,EAI5B,wBAAwB,EACxB,4BAA4B,EAC5B,kCAAkC,EAClC,cAAc,EACd,+BAA+B,GAChC,MAAM,eAAe,CAAC","sourcesContent":["/**\n * community-schema — Shared Zod schemas + TypeScript types for the\n * Jansathi hyperlocal community feature (feed, posts, engagement,\n * social graph, groups, settings).\n *\n * Single source of truth consumed by reform-backend and every product\n * frontend. The schemas mirror MongoDB / Mongoose document shapes\n * 1:1 so the same Zod validation runs at the controller boundary on\n * the backend and in the form handlers on the client.\n *\n * Cascade-upward visibility semantics: a viewer whose feed level is L\n * sees posts at L and every BROADER level matching their area lineage.\n * See `./enums.ts#VISIBILITY_LEVEL_VALUES` for the level rank table.\n *\n * @module community-schema\n */\n\n// ─── Area lineage snapshot ─────────────────────────────────────────────────\nexport {\n type AreaLineageSnapshot,\n areaLineageSnapshotSchema,\n} from './area.js';\n\n// ─── Comment ───────────────────────────────────────────────────────────────\nexport {\n type CommunityCommentWire,\n type CreateCommentBody,\n communityCommentWireSchema,\n createCommentBodySchema,\n type UpdateCommentBody,\n updateCommentBodySchema,\n} from './comment.js';\n\n// ─── Communities ───────────────────────────────────────────────────────────\nexport {\n type AddOfficialModeratorBody,\n AREA_PICKER_LEVEL_VALUES,\n type AreaPickerItem,\n type AreaPickerLevel,\n type AreaPickerQuery,\n type AreaPickerResponse,\n addOfficialModeratorBodySchema,\n areaPickerItemSchema,\n areaPickerLevelSchema,\n areaPickerQuerySchema,\n areaPickerResponseSchema,\n COMMUNITY_CATEGORY_VALUES,\n COMMUNITY_DESIGNATION_PRESETS,\n COMMUNITY_DISCOVER_SORT_VALUES,\n COMMUNITY_KIND_VALUES,\n COMMUNITY_MEMBERSHIP_STATUS_VALUES,\n COMMUNITY_REACH_VALUES,\n COMMUNITY_ROLE_VALUES,\n COMMUNITY_TAG_VALUES,\n COMMUNITY_TYPE_VALUES,\n COMMUNITY_VERIFIED_SCOPE_VALUES,\n type CommunityCategory,\n type CommunityCenterCoords,\n type CommunityDesignation,\n type CommunityDesignationPreset,\n type CommunityDiscoverSort,\n type CommunityKind,\n type CommunityListQuery,\n type CommunityListResponse,\n type CommunityMembershipStatus,\n type CommunityMembersListResponse,\n type CommunityMemberWire,\n type CommunityReach,\n type CommunityRole,\n type CommunityTag,\n type CommunityType,\n type CommunityVerifiedScope,\n type CommunityWire,\n type CreateCommunityBody,\n type CreateOfficialCommunityBody,\n communityCategorySchema,\n communityCenterCoordsSchema,\n communityDesignationPresetSchema,\n communityDesignationSchema,\n communityDiscoverSortSchema,\n communityKindSchema,\n communityListQuerySchema,\n communityListResponseSchema,\n communityMembershipStatusSchema,\n communityMembersListResponseSchema,\n communityMemberWireSchema,\n communityReachSchema,\n communityRoleSchema,\n communityTagSchema,\n communityTypeSchema,\n communityVerifiedScopeSchema,\n communityWireSchema,\n createCommunityBodySchema,\n createOfficialCommunityBodySchema,\n type HidePostBody,\n hidePostBodySchema,\n type JoinCommunityResponse,\n joinCommunityResponseSchema,\n OFFICIAL_COMMUNITY_AREA_KIND_VALUES,\n type OfficialCommunityAreaKind,\n officialCommunityAreaKindSchema,\n type SetMemberDesignationBody,\n type SetOfficialRepresentativeBody,\n setMemberDesignationBodySchema,\n setOfficialRepresentativeBodySchema,\n type UpdateCommunityBody,\n type UpdateMemberRoleBody,\n updateCommunityBodySchema,\n updateMemberRoleBodySchema,\n type VerifyCommunityBody,\n verifyCommunityBodySchema,\n} from './community.js';\n\n// ─── Constants ─────────────────────────────────────────────────────────────\nexport {\n COMMENT_MAX_BODY_CHARS,\n COMMENTS_PAGE_SIZE,\n COMMUNITIES_PAGE_SIZE,\n COMMUNITY_DESCRIPTION_MAX_CHARS,\n COMMUNITY_DESIGNATION_CUSTOM_MAX_CHARS,\n COMMUNITY_DESIGNATION_CUSTOM_MIN_CHARS,\n COMMUNITY_DESIGNATION_CUSTOM_PATTERN,\n COMMUNITY_HYPERLOCAL_RADIUS_KM,\n COMMUNITY_MAX_TAGS,\n COMMUNITY_MEMBERS_PAGE_SIZE,\n COMMUNITY_NAME_MAX_CHARS,\n COMMUNITY_NAME_MIN_CHARS,\n COMMUNITY_SLUG_MAX_CHARS,\n COMMUNITY_SLUG_MIN_CHARS,\n COMMUNITY_SLUG_PATTERN,\n CROWDFUNDING_BANK_LINK_DEADLINE_DAYS,\n CROWDFUNDING_BENEFICIARY_NAME_MAX_CHARS,\n CROWDFUNDING_BENEFICIARY_RELATION_MAX_CHARS,\n CROWDFUNDING_DESCRIPTION_MAX_CHARS,\n CROWDFUNDING_DESCRIPTION_MIN_CHARS,\n CROWDFUNDING_MAX_DONATION_INR,\n CROWDFUNDING_MAX_DURATION_DAYS,\n CROWDFUNDING_MAX_GOAL_INR,\n CROWDFUNDING_MAX_IMAGES,\n CROWDFUNDING_MAX_PROOF_DOCS,\n CROWDFUNDING_MAX_SUPPORTING_DOCS,\n CROWDFUNDING_MIN_DURATION_DAYS,\n CROWDFUNDING_MIN_GOAL_INR,\n CROWDFUNDING_MIN_PROOF_DOCS,\n CROWDFUNDING_PAGE_SIZE,\n CROWDFUNDING_PROOF_DOC_DESCRIPTION_MAX_CHARS,\n CROWDFUNDING_PROOF_DOC_DESCRIPTION_MIN_CHARS,\n CROWDFUNDING_REJECTION_REASON_MAX_CHARS,\n CROWDFUNDING_REJECTION_REASON_MIN_CHARS,\n CROWDFUNDING_TERMS_VERSION,\n CROWDFUNDING_TITLE_MAX_CHARS,\n CROWDFUNDING_TITLE_MIN_CHARS,\n EDIT_GRACE_WINDOW_MS,\n FEED_PAGE_SIZE,\n GROUP_MAX_MEMBERS,\n GROUP_NAME_MAX_CHARS,\n GROUP_NAME_MIN_CHARS,\n PEOPLE_PAGE_SIZE,\n POLL_DURATION_PRESETS_MS,\n POLL_MAX_DURATION_MS,\n POLL_MAX_OPTIONS,\n POLL_MIN_DURATION_MS,\n POLL_MIN_OPTIONS,\n POLL_OPTION_MAX_CHARS,\n POLL_OPTION_MIN_CHARS,\n POLL_QUESTION_MAX_CHARS,\n POLL_QUESTION_MIN_CHARS,\n POLLS_PAGE_SIZE,\n POST_MAX_BODY_CHARS,\n POST_MAX_IMAGE_BYTES,\n POST_MAX_IMAGES,\n POST_MAX_VIDEO_BYTES,\n POST_MAX_VIDEO_SECONDS,\n POST_MAX_VIDEOS,\n PROFILE_MAX_BIO_CHARS,\n REPLIES_PRELOAD_COUNT,\n} from './constants.js';\n// ─── Crowdfunding ──────────────────────────────────────────────────────────\nexport {\n type ApproveCrowdfundingBody,\n type AttestCrowdfundingDonationBody,\n approveCrowdfundingBodySchema,\n attestCrowdfundingDonationBodySchema,\n type CommunityCrowdfundingWire,\n CROWDFUNDING_AUDIENCE_VALUES,\n CROWDFUNDING_CATEGORY_VALUES,\n CROWDFUNDING_DONATION_STATE_VALUES,\n CROWDFUNDING_ORG_KIND_VALUES,\n CROWDFUNDING_PROOF_DOC_TYPE_VALUES,\n CROWDFUNDING_RAZORPAY_ACCOUNT_STATUS_VALUES,\n CROWDFUNDING_STATUS_VALUES,\n type CreateCrowdfundingBody,\n type CrowdfundingAudience,\n type CrowdfundingCategory,\n type CrowdfundingDonationState,\n type CrowdfundingDonationWire,\n type CrowdfundingFeedItem,\n type CrowdfundingOrgKind,\n type CrowdfundingPayment,\n type CrowdfundingProofDocType,\n type CrowdfundingProofDocumentWire,\n type CrowdfundingRazorpayAccountStatus,\n type CrowdfundingRazorpayAccountWire,\n type CrowdfundingStatus,\n type CrowdfundingVerification,\n type CrowdfundingVerificationStage,\n type CrowdfundingVisibility,\n communityCrowdfundingWireSchema,\n createCrowdfundingBodySchema,\n crowdfundingAudienceSchema,\n crowdfundingCategorySchema,\n crowdfundingDonationStateSchema,\n crowdfundingDonationWireSchema,\n crowdfundingFeedItemSchema,\n crowdfundingOrgKindSchema,\n crowdfundingPaymentSchema,\n crowdfundingProofDocTypeSchema,\n crowdfundingProofDocumentWireSchema,\n crowdfundingRazorpayAccountStatusSchema,\n crowdfundingRazorpayAccountWireSchema,\n crowdfundingStatusSchema,\n crowdfundingVerificationSchema,\n crowdfundingVerificationStageSchema,\n crowdfundingVisibilitySchema,\n type ListCrowdfundingDonationsQuery,\n type ListMyCrowdfundingDonationsQuery,\n listCrowdfundingDonationsQuerySchema,\n listMyCrowdfundingDonationsQuerySchema,\n type RejectCrowdfundingBody,\n type RequestRerunCrowdfundingBody,\n rejectCrowdfundingBodySchema,\n requestRerunCrowdfundingBodySchema,\n type UpdateCrowdfundingBody,\n type UploadCrowdfundingReceiptBody,\n updateCrowdfundingBodySchema,\n uploadCrowdfundingReceiptBodySchema,\n} from './crowdfunding.js';\n// ─── Engagement (vote + reactions + bookmark) ─────────────────────────────\nexport {\n type SetReactionBody,\n type SetReactionResponse,\n type SetVoteBody,\n type SetVoteResponse,\n setReactionBodySchema,\n setReactionResponseSchema,\n setVoteBodySchema,\n setVoteResponseSchema,\n type ToggleBookmarkResponse,\n toggleBookmarkResponseSchema,\n VOTE_VALUES,\n type VoteValue,\n voteValueSchema,\n} from './engagement.js';\n// ─── Enums ─────────────────────────────────────────────────────────────────\nexport {\n CONTENT_KIND_VALUES,\n type ContentKind,\n contentKindSchema,\n FEED_SORT_VALUES,\n type FeedSort,\n feedSortSchema,\n PROFILE_PRIVACY_VALUES,\n type ProfilePrivacy,\n profilePrivacySchema,\n REACTION_TYPE_VALUES,\n REPORT_REASON_VALUES,\n REPORT_STATUS_VALUES,\n type ReactionType,\n type ReportReason,\n type ReportStatus,\n reactionTypeSchema,\n reportReasonSchema,\n reportStatusSchema,\n VISIBILITY_LEVEL_RANK,\n VISIBILITY_LEVEL_VALUES,\n type VisibilityLevel,\n visibilityLevelSchema,\n} from './enums.js';\n// ─── Feed (polymorphic union) ──────────────────────────────────────────────\nexport {\n DONATE_ITEM_CONDITION_VALUES,\n DONATE_ITEM_STATUS_VALUES,\n type DonateItemCondition,\n type DonateItemFeedItem,\n type DonateItemStatus,\n donateAuditAtSchema,\n donateAuditByAtSchema,\n donateDonatedToSchema,\n donateItemConditionSchema,\n donateItemFeedItemSchema,\n donateItemStatusSchema,\n type FeedItem,\n type FeedQueryParams,\n type FeedResponse,\n feedItemSchema,\n feedQueryParamsSchema,\n feedResponseSchema,\n LOST_FOUND_CATEGORY_VALUES,\n LOST_FOUND_STATUS_VALUES,\n type LostFoundCategory,\n type LostFoundFeedItem,\n type LostFoundLocation,\n type LostFoundStatus,\n type LostFoundTimeRange,\n lostFoundCategorySchema,\n lostFoundFeedItemSchema,\n lostFoundLocationSchema,\n lostFoundStatusSchema,\n lostFoundTimeRangeSchema,\n VOICE_BOX_PRIORITY_VALUES,\n VOICE_BOX_STATUS_VALUES,\n type VoiceBoxFeedItem,\n type VoiceBoxLocation,\n type VoiceBoxPriority,\n type VoiceBoxStatus,\n voiceBoxAudioSchema,\n voiceBoxFeedItemSchema,\n voiceBoxLocationSchema,\n voiceBoxOfficerResponseSchema,\n voiceBoxPrioritySchema,\n voiceBoxStatusSchema,\n voiceBoxVideoSchema,\n} from './feed.js';\n// ─── Groups ────────────────────────────────────────────────────────────────\nexport {\n type AddGroupMembersBody,\n addGroupMembersBodySchema,\n type CommunityGroupWire,\n type CommunityGroupWithMembers,\n type CreateGroupBody,\n communityGroupWireSchema,\n communityGroupWithMembersSchema,\n createGroupBodySchema,\n type GroupMembersListResponse,\n type GroupMemberWire,\n type GroupRole,\n type GroupsListResponse,\n groupMembersListResponseSchema,\n groupMemberWireSchema,\n groupRoleSchema,\n groupsListResponseSchema,\n type UpdateGroupBody,\n updateGroupBodySchema,\n} from './group.js';\n// ─── Link preview (auto-extracted URL embed) ──────────────────────────────\nexport {\n LINK_PREVIEW_KIND_VALUES,\n type LinkPreview,\n type LinkPreviewKind,\n linkPreviewKindSchema,\n linkPreviewSchema,\n} from './link-preview.js';\n// ─── Media ─────────────────────────────────────────────────────────────────\nexport {\n type PostImage,\n type PostVideo,\n postImageSchema,\n postVideoSchema,\n} from './media.js';\n// ─── Notifications ─────────────────────────────────────────────────────────\nexport {\n type ListNotificationsQuery,\n type ListNotificationsResponse,\n listNotificationsQuerySchema,\n listNotificationsResponseSchema,\n type MarkAllNotificationsReadBody,\n markAllNotificationsReadBodySchema,\n NOTIFICATION_CATEGORY_VALUES,\n NOTIFICATION_CHANNEL_VALUES,\n NOTIFICATION_PRIORITY_VALUES,\n NOTIFICATION_SOURCE_REF_KIND_VALUES,\n type NotificationActor,\n type NotificationCategory,\n type NotificationChannel,\n type NotificationPriority,\n type NotificationReadAllEvent,\n type NotificationReadEvent,\n type NotificationSourceRef,\n type NotificationSourceRefKind,\n type NotificationUnreadCount,\n type NotificationWire,\n notificationActorSchema,\n notificationCategorySchema,\n notificationChannelSchema,\n notificationPrioritySchema,\n notificationReadAllEventSchema,\n notificationReadEventSchema,\n notificationSourceRefKindSchema,\n notificationSourceRefSchema,\n notificationUnreadCountSchema,\n notificationWireSchema,\n REFORM_NOTIFICATION_SOCKET_EVENTS,\n type ReformNotificationSocketEvent,\n} from './notification.js';\n// ─── Poll ──────────────────────────────────────────────────────────────────\nexport {\n type CastVoteBody,\n type CommunityPollFeedItem,\n type CommunityPollWire,\n type CreatePollBody,\n castVoteBodySchema,\n communityPollFeedItemSchema,\n communityPollWireSchema,\n createPollBodySchema,\n POLL_RESULTS_VISIBILITY_VALUES,\n type PollOptionInput,\n type PollOptionWire,\n type PollResultsVisibility,\n pollOptionInputSchema,\n pollOptionWireSchema,\n pollResultsVisibilitySchema,\n type VoteResponse,\n voteResponseSchema,\n} from './poll.js';\n// ─── Post ──────────────────────────────────────────────────────────────────\nexport {\n type CommunityPostWire,\n type CreatePostBody,\n communityPostWireSchema,\n createPostBodySchema,\n type PostAuthorSnapshot,\n postAuthorSnapshotSchema,\n type RepostedSource,\n repostedSourceSchema,\n type UpdatePostBody,\n updatePostBodySchema,\n} from './post.js';\n// ─── Profile + People list ─────────────────────────────────────────────────\nexport {\n PEOPLE_LIST_FILTER_DEFAULT,\n PEOPLE_LIST_FILTER_VALUES,\n type PeopleListFilter,\n type PeopleListItem,\n type PeopleListResponse,\n type PeopleQueryParams,\n type ProfileMutuals,\n type PublicProfileWire,\n peopleListFilterSchema,\n peopleListItemSchema,\n peopleListResponseSchema,\n peopleQueryParamsSchema,\n profileMutualsSchema,\n publicProfileWireSchema,\n} from './profile.js';\n// ─── Reports (moderation) ──────────────────────────────────────────────────\nexport {\n type ReportContentBody,\n type ReportContentKind,\n type ReportRecordWire,\n type ReportSubmissionResponse,\n type ReportUserBody,\n reportContentBodySchema,\n reportContentKindSchema,\n reportRecordWireSchema,\n reportSubmissionResponseSchema,\n reportUserBodySchema,\n} from './report.js';\n// ─── Repost (quote / amplify) ──────────────────────────────────────────────\nexport {\n type CreateRepostBody,\n type CreateRepostResponse,\n createRepostBodySchema,\n createRepostResponseSchema,\n} from './repost.js';\n// ─── Settings ──────────────────────────────────────────────────────────────\nexport {\n type BlockedUsersListResponse,\n type BlockedUserWire,\n blockedUsersListResponseSchema,\n blockedUserWireSchema,\n COMMUNITY_SETTINGS_DEFAULTS,\n type CommunitySettingsWire,\n communitySettingsWireSchema,\n type UpdateCommunitySettingsBody,\n updateCommunitySettingsBodySchema,\n} from './settings.js';\n// ─── Social (follow) ───────────────────────────────────────────────────────\nexport {\n type ToggleFollowResponse,\n toggleFollowResponseSchema,\n type ViewerSocialState,\n viewerSocialStateSchema,\n} from './social.js';\n// ─── Social score (shared tier table) ─────────────────────────────────────\nexport {\n SOCIAL_SCORE_TIER_NAMES,\n SOCIAL_SCORE_TIERS,\n type SocialScoreTier,\n type SocialScoreTierName,\n tierFromSocialScore,\n} from './social-score.js';\n// ─── Donate Item (create) ────────────────────────────────────────────────────\nexport {\n createDonateItemBodySchema,\n type CreateDonateItemBody,\n DONATE_ITEM_CATEGORY_VALUES,\n DONATE_ITEM_DESCRIPTION_MAX_CHARS,\n DONATE_ITEM_MAX_ESTIMATED_WORTH,\n DONATE_ITEM_MAX_PHOTOS,\n DONATE_ITEM_NAME_MAX_CHARS,\n DONATE_ITEM_NAME_MIN_CHARS,\n donateItemCategorySchema,\n type DonateItemCategory,\n type DonateItemDraft,\n donateItemPickupAddressSchema,\n type DonateItemPickupAddress,\n donateItemPickupCoordsSchema,\n type DonateItemPickupCoords,\n donateItemStepValid,\n} from './donate-item.js';\n\n// ─── Suggestions & Complaints (create) ──────────────────────────────────────\nexport {\n COMPLAINT_CATEGORY_VALUES,\n type ComplaintCategory,\n type CreateSuggestionsComplaintsBody,\n complaintCategorySchema,\n createSuggestionsComplaintsBodySchema,\n SUGGESTION_CATEGORY_VALUES,\n SUGGESTIONS_COMPLAINTS_CATEGORY_VALUES,\n SUGGESTIONS_COMPLAINTS_DESCRIPTION_MAX_CHARS,\n SUGGESTIONS_COMPLAINTS_MAX_IMAGES,\n SUGGESTIONS_COMPLAINTS_MAX_VIDEO_LINKS,\n SUGGESTIONS_COMPLAINTS_SUGGESTION_DESCRIPTION_MIN_CHARS,\n SUGGESTIONS_COMPLAINTS_TITLE_MAX_CHARS,\n SUGGESTIONS_COMPLAINTS_TITLE_MIN_CHARS,\n SUGGESTIONS_COMPLAINTS_TYPE_VALUES,\n type SuggestionCategory,\n type SuggestionsComplaintsDraft,\n type SuggestionsComplaintsLocation,\n type SuggestionsComplaintsType,\n suggestionCategorySchema,\n suggestionsComplaintsBodyObjectSchema,\n suggestionsComplaintsLocationSchema,\n suggestionsComplaintsStepValid,\n suggestionsComplaintsTypeSchema,\n type UploadedMediaPath,\n uploadedMediaPathSchema,\n} from './suggestions-complaints.js';\n\n// ─── Username (URL handle + change / availability) ────────────────────────\nexport {\n type CurrentUsernameState,\n currentUsernameStateSchema,\n type UpdateUsernameBody,\n type UpdateUsernameResponse,\n USERNAME_MAX_LENGTH,\n USERNAME_MIN_LENGTH,\n USERNAME_PATTERN,\n USERNAME_UNAVAILABLE_REASONS,\n type Username,\n type UsernameAvailabilityResponse,\n type UsernameUnavailableReason,\n updateUsernameBodySchema,\n updateUsernameResponseSchema,\n usernameAvailabilityResponseSchema,\n usernameSchema,\n usernameUnavailableReasonSchema,\n} from './username.js';\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"suggestions-complaints.d.ts","sourceRoot":"","sources":["../src/suggestions-complaints.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,KAAK,gBAAgB,EAA0B,MAAM,WAAW,CAAC;AAM1E,eAAO,MAAM,mCAAmC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAAyB,CAAC;AAC1E,MAAM,MAAM,6BAA6B,GAAG,gBAAgB,CAAC;AAG7D,eAAO,MAAM,kCAAkC,sCAAuC,CAAC;AACvF,eAAO,MAAM,+BAA+B;;;EAA6C,CAAC;AAC1F,MAAM,MAAM,yBAAyB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,+BAA+B,CAAC,CAAC;AAGxF,eAAO,MAAM,yBAAyB,ubAyB5B,CAAC;AACX,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;EAAoC,CAAC;AACzE,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAExE,eAAO,MAAM,0BAA0B,2NAY7B,CAAC;AACX,eAAO,MAAM,wBAAwB;;;;;;;;;;;;EAAqC,CAAC;AAC3E,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAE1E,oEAAoE;AACpE,eAAO,MAAM,sCAAsC,uoBAGzC,CAAC;AAGX,eAAO,MAAM,sCAAsC,KAAK,CAAC;AACzD,eAAO,MAAM,sCAAsC,MAAM,CAAC;AAC1D,eAAO,MAAM,4CAA4C,OAAO,CAAC;AACjE,0EAA0E;AAC1E,eAAO,MAAM,uDAAuD,KAAK,CAAC;AAC1E,eAAO,MAAM,iCAAiC,IAAI,CAAC;AACnD,eAAO,MAAM,sCAAsC,IAAI,CAAC;AASxD;0DAC0D;AAC1D,eAAO,MAAM,uBAAuB;;;iBAGlC,CAAC;AACH,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAIxE,eAAO,MAAM,qCAAqC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAkBhD,CAAC;AAKH,eAAO,MAAM,qCAAqC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBASjD,CAAC;AAEF,MAAM,MAAM,+BAA+B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qCAAqC,CAAC,CAAC;AAEpG,oEAAoE;AACpE,MAAM,MAAM,0BAA0B,GAAG,OAAO,CAAC,+BAA+B,CAAC,CAAC;AAKlF,eAAO,MAAM,8BAA8B;uBAC/B,0BAA0B,KAAG,OAAO;2BAEhC,0BAA0B,KAAG,OAAO;wBAGvC,0BAA0B,KAAG,OAAO;8BAC9B,0BAA0B,KAAG,OAAO;IAIrD;uEACmE;2BACrD,0BAA0B,KAAG,OAAO;CAC1C,CAAC"}
1
+ {"version":3,"file":"suggestions-complaints.d.ts","sourceRoot":"","sources":["../src/suggestions-complaints.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,KAAK,gBAAgB,EAA0B,MAAM,WAAW,CAAC;AAM1E,eAAO,MAAM,mCAAmC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAAyB,CAAC;AAC1E,MAAM,MAAM,6BAA6B,GAAG,gBAAgB,CAAC;AAG7D,eAAO,MAAM,kCAAkC,sCAAuC,CAAC;AACvF,eAAO,MAAM,+BAA+B;;;EAA6C,CAAC;AAC1F,MAAM,MAAM,yBAAyB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,+BAA+B,CAAC,CAAC;AAGxF,eAAO,MAAM,yBAAyB,ubAyB5B,CAAC;AACX,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;EAAoC,CAAC;AACzE,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAExE,eAAO,MAAM,0BAA0B,2NAY7B,CAAC;AACX,eAAO,MAAM,wBAAwB;;;;;;;;;;;;EAAqC,CAAC;AAC3E,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAE1E,oEAAoE;AACpE,eAAO,MAAM,sCAAsC,uoBAGzC,CAAC;AAGX,eAAO,MAAM,sCAAsC,KAAK,CAAC;AACzD,eAAO,MAAM,sCAAsC,MAAM,CAAC;AAC1D,eAAO,MAAM,4CAA4C,OAAO,CAAC;AACjE,0EAA0E;AAC1E,eAAO,MAAM,uDAAuD,KAAK,CAAC;AAC1E,eAAO,MAAM,iCAAiC,IAAI,CAAC;AACnD,eAAO,MAAM,sCAAsC,IAAI,CAAC;AASxD;0DAC0D;AAC1D,eAAO,MAAM,uBAAuB;;;iBAGlC,CAAC;AACH,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAIxE,eAAO,MAAM,qCAAqC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAoBhD,CAAC;AAKH,eAAO,MAAM,qCAAqC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBASjD,CAAC;AAEF,MAAM,MAAM,+BAA+B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qCAAqC,CAAC,CAAC;AAEpG,oEAAoE;AACpE,MAAM,MAAM,0BAA0B,GAAG,OAAO,CAAC,+BAA+B,CAAC,CAAC;AAKlF,eAAO,MAAM,8BAA8B;uBAC/B,0BAA0B,KAAG,OAAO;2BAEhC,0BAA0B,KAAG,OAAO;wBAGvC,0BAA0B,KAAG,OAAO;8BAC9B,0BAA0B,KAAG,OAAO;IAIrD;uEACmE;2BACrD,0BAA0B,KAAG,OAAO;CAC1C,CAAC"}
@@ -98,7 +98,9 @@ export const uploadedMediaPathSchema = z.object({
98
98
  export const suggestionsComplaintsBodyObjectSchema = z.object({
99
99
  location: suggestionsComplaintsLocationSchema,
100
100
  type: suggestionsComplaintsTypeSchema.default('complaint'),
101
- category: z.enum(SUGGESTIONS_COMPLAINTS_CATEGORY_VALUES, { message: 'Invalid category selected' }),
101
+ category: z.enum(SUGGESTIONS_COMPLAINTS_CATEGORY_VALUES, {
102
+ message: 'Invalid category selected',
103
+ }),
102
104
  title: titleSchema,
103
105
  description: z
104
106
  .string()
@@ -1 +1 @@
1
- {"version":3,"file":"suggestions-complaints.js","sourceRoot":"","sources":["../src/suggestions-complaints.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Suggestions & Complaints — create-flow schema (community kind).\n * ===============================================================\n * Single source of truth for the WRITE path of the suggestions/complaints\n * surface (historically called \"voice-box\" in older code — that name is\n * being retired in favour of \"suggestions-complaints\"). Mirrors the\n * `crowdfunding.ts` module shape: this file owns the create body + the\n * categories + per-step completeness validators; the display/feed shapes\n * stay in `feed.ts`.\n *\n * Consumed by:\n * - reform-backend (controller validation) — replaces the duplicated\n * local `issue-report.schema.ts` categories + body schema.\n * - the product frontends (the multi-step `StepForm` config delegates\n * its `isFilled` predicates to `suggestionsComplaintsStepValid`).\n *\n * @module community-schema/suggestions-complaints\n */\n\nimport { z } from 'zod';\nimport { type VoiceBoxLocation, voiceBoxLocationSchema } from './feed.js';\n\n// ─── Location ────────────────────────────────────────────────────────────────\n// The structured area-hierarchy location is shared with the display schema in\n// `feed.ts`. Re-exported here under the suggestions-complaints name so the\n// create flow has one canonical import.\nexport const suggestionsComplaintsLocationSchema = voiceBoxLocationSchema;\nexport type SuggestionsComplaintsLocation = VoiceBoxLocation;\n\n// ─── Type (complaint | suggestion) ──────────────────────────────────────────\nexport const SUGGESTIONS_COMPLAINTS_TYPE_VALUES = ['complaint', 'suggestion'] as const;\nexport const suggestionsComplaintsTypeSchema = z.enum(SUGGESTIONS_COMPLAINTS_TYPE_VALUES);\nexport type SuggestionsComplaintsType = z.infer<typeof suggestionsComplaintsTypeSchema>;\n\n// ─── Categories ──────────────────────────────────────────────────────────────\nexport const COMPLAINT_CATEGORY_VALUES = [\n 'Road & Transport',\n 'Water Supply',\n 'Electricity',\n 'Drainage & Sewage',\n 'Healthcare',\n 'Education',\n 'Sanitation',\n 'Waste Management',\n 'Street Lighting',\n 'Crime & Safety',\n 'Traffic Issues',\n 'Corruption',\n 'Unemployment',\n 'Poverty & Hunger',\n 'Child Labor',\n 'Air Pollution',\n 'Water Pollution',\n 'Noise Pollution',\n 'Deforestation',\n 'Illegal Dumping',\n 'Government Services',\n 'Documentation Issues',\n 'Public Grievances',\n 'Other Issues',\n] as const;\nexport const complaintCategorySchema = z.enum(COMPLAINT_CATEGORY_VALUES);\nexport type ComplaintCategory = z.infer<typeof complaintCategorySchema>;\n\nexport const SUGGESTION_CATEGORY_VALUES = [\n 'Infrastructure',\n 'Healthcare',\n 'Education',\n 'Environment',\n 'Public Safety',\n 'Government Services',\n 'Community Development',\n 'Youth & Employment',\n 'Women & Child Welfare',\n 'Technology & Innovation',\n 'Other',\n] as const;\nexport const suggestionCategorySchema = z.enum(SUGGESTION_CATEGORY_VALUES);\nexport type SuggestionCategory = z.infer<typeof suggestionCategorySchema>;\n\n/** All categories accepted on the wire (complaint ∪ suggestion). */\nexport const SUGGESTIONS_COMPLAINTS_CATEGORY_VALUES = [\n ...COMPLAINT_CATEGORY_VALUES,\n ...SUGGESTION_CATEGORY_VALUES,\n] as const;\n\n// ─── Field constraints (exported so callers never hard-code numbers) ─────────\nexport const SUGGESTIONS_COMPLAINTS_TITLE_MIN_CHARS = 10;\nexport const SUGGESTIONS_COMPLAINTS_TITLE_MAX_CHARS = 200;\nexport const SUGGESTIONS_COMPLAINTS_DESCRIPTION_MAX_CHARS = 2000;\n/** Suggestions must explain themselves; complaints may leave it blank. */\nexport const SUGGESTIONS_COMPLAINTS_SUGGESTION_DESCRIPTION_MIN_CHARS = 20;\nexport const SUGGESTIONS_COMPLAINTS_MAX_IMAGES = 3;\nexport const SUGGESTIONS_COMPLAINTS_MAX_VIDEO_LINKS = 5;\n\nconst titleSchema = z\n .string()\n .trim()\n .min(SUGGESTIONS_COMPLAINTS_TITLE_MIN_CHARS, 'Title must be at least 10 characters')\n .max(SUGGESTIONS_COMPLAINTS_TITLE_MAX_CHARS, 'Title must not exceed 200 characters');\n\n// ─── Uploaded media (signed-URL path) ────────────────────────────────────────\n/** A file already uploaded to GCS via a signed URL. Shared across the\n * community create flows that use signed-URL uploads. */\nexport const uploadedMediaPathSchema = z.object({\n url: z.string().min(1),\n gcpPath: z.string().min(1),\n});\nexport type UploadedMediaPath = z.infer<typeof uploadedMediaPathSchema>;\n\n// ─── Create body ─────────────────────────────────────────────────────────────\n// Base object (pickable — used for per-field slice validation) ...\nexport const suggestionsComplaintsBodyObjectSchema = z.object({\n location: suggestionsComplaintsLocationSchema,\n type: suggestionsComplaintsTypeSchema.default('complaint'),\n category: z.enum(\n SUGGESTIONS_COMPLAINTS_CATEGORY_VALUES as unknown as [string, ...string[]],\n { message: 'Invalid category selected' },\n ),\n title: titleSchema,\n description: z\n .string()\n .trim()\n .max(SUGGESTIONS_COMPLAINTS_DESCRIPTION_MAX_CHARS, 'Description must not exceed 2000 characters')\n .optional()\n .or(z.literal('')),\n images: z.array(uploadedMediaPathSchema).max(SUGGESTIONS_COMPLAINTS_MAX_IMAGES).optional(),\n video: uploadedMediaPathSchema.optional(),\n videoLinks: z.array(z.string().url()).max(SUGGESTIONS_COMPLAINTS_MAX_VIDEO_LINKS).optional(),\n audio: uploadedMediaPathSchema.optional(),\n});\n\n// ... and the full create schema with the cross-field rule (suggestions need\n// a real description). Use the BASE object for `.pick()`/`.extend()`; use this\n// refined one for the final whole-body validation.\nexport const createSuggestionsComplaintsBodySchema = suggestionsComplaintsBodyObjectSchema.refine(\n (d) =>\n d.type !== 'suggestion' ||\n (typeof d.description === 'string' &&\n d.description.trim().length >= SUGGESTIONS_COMPLAINTS_SUGGESTION_DESCRIPTION_MIN_CHARS),\n {\n message: 'Please describe your suggestion in at least 20 characters',\n path: ['description'],\n },\n);\n\nexport type CreateSuggestionsComplaintsBody = z.infer<typeof suggestionsComplaintsBodyObjectSchema>;\n\n/** A partially-filled draft as the multi-step form builds it up. */\nexport type SuggestionsComplaintsDraft = Partial<CreateSuggestionsComplaintsBody>;\n\n// ─── Per-step completeness validators (the SSOT the StepForm config delegates\n// its `isFilled` predicates to — so no validation rule is duplicated in\n// the frontend). Each returns whether that step is complete. ──────────────\nexport const suggestionsComplaintsStepValid = {\n type: (d: SuggestionsComplaintsDraft): boolean =>\n suggestionsComplaintsTypeSchema.safeParse(d.type).success,\n category: (d: SuggestionsComplaintsDraft): boolean =>\n typeof d.category === 'string' &&\n (SUGGESTIONS_COMPLAINTS_CATEGORY_VALUES as readonly string[]).includes(d.category),\n title: (d: SuggestionsComplaintsDraft): boolean => titleSchema.safeParse(d.title).success,\n description: (d: SuggestionsComplaintsDraft): boolean =>\n d.type !== 'suggestion' ||\n (typeof d.description === 'string' &&\n d.description.trim().length >= SUGGESTIONS_COMPLAINTS_SUGGESTION_DESCRIPTION_MIN_CHARS),\n /** Location is \"set\" once the state is chosen (the area hierarchy is only\n * useful for the civic feed when at least the state is known). */\n location: (d: SuggestionsComplaintsDraft): boolean => !!d.location?.state,\n} as const;\n"]}
1
+ {"version":3,"file":"suggestions-complaints.js","sourceRoot":"","sources":["../src/suggestions-complaints.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Suggestions & Complaints — create-flow schema (community kind).\n * ===============================================================\n * Single source of truth for the WRITE path of the suggestions/complaints\n * surface (historically called \"voice-box\" in older code — that name is\n * being retired in favour of \"suggestions-complaints\"). Mirrors the\n * `crowdfunding.ts` module shape: this file owns the create body + the\n * categories + per-step completeness validators; the display/feed shapes\n * stay in `feed.ts`.\n *\n * Consumed by:\n * - reform-backend (controller validation) — replaces the duplicated\n * local `issue-report.schema.ts` categories + body schema.\n * - the product frontends (the multi-step `StepForm` config delegates\n * its `isFilled` predicates to `suggestionsComplaintsStepValid`).\n *\n * @module community-schema/suggestions-complaints\n */\n\nimport { z } from 'zod';\nimport { type VoiceBoxLocation, voiceBoxLocationSchema } from './feed.js';\n\n// ─── Location ────────────────────────────────────────────────────────────────\n// The structured area-hierarchy location is shared with the display schema in\n// `feed.ts`. Re-exported here under the suggestions-complaints name so the\n// create flow has one canonical import.\nexport const suggestionsComplaintsLocationSchema = voiceBoxLocationSchema;\nexport type SuggestionsComplaintsLocation = VoiceBoxLocation;\n\n// ─── Type (complaint | suggestion) ──────────────────────────────────────────\nexport const SUGGESTIONS_COMPLAINTS_TYPE_VALUES = ['complaint', 'suggestion'] as const;\nexport const suggestionsComplaintsTypeSchema = z.enum(SUGGESTIONS_COMPLAINTS_TYPE_VALUES);\nexport type SuggestionsComplaintsType = z.infer<typeof suggestionsComplaintsTypeSchema>;\n\n// ─── Categories ──────────────────────────────────────────────────────────────\nexport const COMPLAINT_CATEGORY_VALUES = [\n 'Road & Transport',\n 'Water Supply',\n 'Electricity',\n 'Drainage & Sewage',\n 'Healthcare',\n 'Education',\n 'Sanitation',\n 'Waste Management',\n 'Street Lighting',\n 'Crime & Safety',\n 'Traffic Issues',\n 'Corruption',\n 'Unemployment',\n 'Poverty & Hunger',\n 'Child Labor',\n 'Air Pollution',\n 'Water Pollution',\n 'Noise Pollution',\n 'Deforestation',\n 'Illegal Dumping',\n 'Government Services',\n 'Documentation Issues',\n 'Public Grievances',\n 'Other Issues',\n] as const;\nexport const complaintCategorySchema = z.enum(COMPLAINT_CATEGORY_VALUES);\nexport type ComplaintCategory = z.infer<typeof complaintCategorySchema>;\n\nexport const SUGGESTION_CATEGORY_VALUES = [\n 'Infrastructure',\n 'Healthcare',\n 'Education',\n 'Environment',\n 'Public Safety',\n 'Government Services',\n 'Community Development',\n 'Youth & Employment',\n 'Women & Child Welfare',\n 'Technology & Innovation',\n 'Other',\n] as const;\nexport const suggestionCategorySchema = z.enum(SUGGESTION_CATEGORY_VALUES);\nexport type SuggestionCategory = z.infer<typeof suggestionCategorySchema>;\n\n/** All categories accepted on the wire (complaint ∪ suggestion). */\nexport const SUGGESTIONS_COMPLAINTS_CATEGORY_VALUES = [\n ...COMPLAINT_CATEGORY_VALUES,\n ...SUGGESTION_CATEGORY_VALUES,\n] as const;\n\n// ─── Field constraints (exported so callers never hard-code numbers) ─────────\nexport const SUGGESTIONS_COMPLAINTS_TITLE_MIN_CHARS = 10;\nexport const SUGGESTIONS_COMPLAINTS_TITLE_MAX_CHARS = 200;\nexport const SUGGESTIONS_COMPLAINTS_DESCRIPTION_MAX_CHARS = 2000;\n/** Suggestions must explain themselves; complaints may leave it blank. */\nexport const SUGGESTIONS_COMPLAINTS_SUGGESTION_DESCRIPTION_MIN_CHARS = 20;\nexport const SUGGESTIONS_COMPLAINTS_MAX_IMAGES = 3;\nexport const SUGGESTIONS_COMPLAINTS_MAX_VIDEO_LINKS = 5;\n\nconst titleSchema = z\n .string()\n .trim()\n .min(SUGGESTIONS_COMPLAINTS_TITLE_MIN_CHARS, 'Title must be at least 10 characters')\n .max(SUGGESTIONS_COMPLAINTS_TITLE_MAX_CHARS, 'Title must not exceed 200 characters');\n\n// ─── Uploaded media (signed-URL path) ────────────────────────────────────────\n/** A file already uploaded to GCS via a signed URL. Shared across the\n * community create flows that use signed-URL uploads. */\nexport const uploadedMediaPathSchema = z.object({\n url: z.string().min(1),\n gcpPath: z.string().min(1),\n});\nexport type UploadedMediaPath = z.infer<typeof uploadedMediaPathSchema>;\n\n// ─── Create body ─────────────────────────────────────────────────────────────\n// Base object (pickable — used for per-field slice validation) ...\nexport const suggestionsComplaintsBodyObjectSchema = z.object({\n location: suggestionsComplaintsLocationSchema,\n type: suggestionsComplaintsTypeSchema.default('complaint'),\n category: z.enum(SUGGESTIONS_COMPLAINTS_CATEGORY_VALUES as unknown as [string, ...string[]], {\n message: 'Invalid category selected',\n }),\n title: titleSchema,\n description: z\n .string()\n .trim()\n .max(\n SUGGESTIONS_COMPLAINTS_DESCRIPTION_MAX_CHARS,\n 'Description must not exceed 2000 characters',\n )\n .optional()\n .or(z.literal('')),\n images: z.array(uploadedMediaPathSchema).max(SUGGESTIONS_COMPLAINTS_MAX_IMAGES).optional(),\n video: uploadedMediaPathSchema.optional(),\n videoLinks: z.array(z.string().url()).max(SUGGESTIONS_COMPLAINTS_MAX_VIDEO_LINKS).optional(),\n audio: uploadedMediaPathSchema.optional(),\n});\n\n// ... and the full create schema with the cross-field rule (suggestions need\n// a real description). Use the BASE object for `.pick()`/`.extend()`; use this\n// refined one for the final whole-body validation.\nexport const createSuggestionsComplaintsBodySchema = suggestionsComplaintsBodyObjectSchema.refine(\n (d) =>\n d.type !== 'suggestion' ||\n (typeof d.description === 'string' &&\n d.description.trim().length >= SUGGESTIONS_COMPLAINTS_SUGGESTION_DESCRIPTION_MIN_CHARS),\n {\n message: 'Please describe your suggestion in at least 20 characters',\n path: ['description'],\n },\n);\n\nexport type CreateSuggestionsComplaintsBody = z.infer<typeof suggestionsComplaintsBodyObjectSchema>;\n\n/** A partially-filled draft as the multi-step form builds it up. */\nexport type SuggestionsComplaintsDraft = Partial<CreateSuggestionsComplaintsBody>;\n\n// ─── Per-step completeness validators (the SSOT the StepForm config delegates\n// its `isFilled` predicates to — so no validation rule is duplicated in\n// the frontend). Each returns whether that step is complete. ──────────────\nexport const suggestionsComplaintsStepValid = {\n type: (d: SuggestionsComplaintsDraft): boolean =>\n suggestionsComplaintsTypeSchema.safeParse(d.type).success,\n category: (d: SuggestionsComplaintsDraft): boolean =>\n typeof d.category === 'string' &&\n (SUGGESTIONS_COMPLAINTS_CATEGORY_VALUES as readonly string[]).includes(d.category),\n title: (d: SuggestionsComplaintsDraft): boolean => titleSchema.safeParse(d.title).success,\n description: (d: SuggestionsComplaintsDraft): boolean =>\n d.type !== 'suggestion' ||\n (typeof d.description === 'string' &&\n d.description.trim().length >= SUGGESTIONS_COMPLAINTS_SUGGESTION_DESCRIPTION_MIN_CHARS),\n /** Location is \"set\" once the state is chosen (the area hierarchy is only\n * useful for the civic feed when at least the state is known). */\n location: (d: SuggestionsComplaintsDraft): boolean => !!d.location?.state,\n} as const;\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "jansathi-community-schema",
3
- "version": "0.40.0",
3
+ "version": "0.41.0",
4
4
  "description": "Shared Zod schemas + TypeScript types for the Jansathi hyperlocal community feature (feed, posts, engagement, social graph, groups, communities).",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",