founder-schema 0.2.0 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (106) hide show
  1. package/README.md +18 -15
  2. package/dist/access/access.d.ts +76 -0
  3. package/dist/access/access.d.ts.map +1 -0
  4. package/dist/access/access.js +66 -0
  5. package/dist/access/access.js.map +1 -0
  6. package/dist/access/permissions.d.ts +153 -0
  7. package/dist/access/permissions.d.ts.map +1 -0
  8. package/dist/access/permissions.js +80 -0
  9. package/dist/access/permissions.js.map +1 -0
  10. package/dist/access/roles.d.ts +71 -0
  11. package/dist/access/roles.d.ts.map +1 -0
  12. package/dist/access/roles.js +72 -0
  13. package/dist/access/roles.js.map +1 -0
  14. package/dist/account.d.ts +40 -0
  15. package/dist/account.d.ts.map +1 -0
  16. package/dist/account.js +39 -0
  17. package/dist/account.js.map +1 -0
  18. package/dist/chat.d.ts +4 -4
  19. package/dist/chat.d.ts.map +1 -1
  20. package/dist/chat.js +7 -2
  21. package/dist/chat.js.map +1 -1
  22. package/dist/core/common.d.ts +304 -0
  23. package/dist/core/common.d.ts.map +1 -0
  24. package/dist/core/common.js +340 -0
  25. package/dist/core/common.js.map +1 -0
  26. package/dist/core/errors.d.ts +105 -0
  27. package/dist/core/errors.d.ts.map +1 -0
  28. package/dist/core/errors.js +115 -0
  29. package/dist/core/errors.js.map +1 -0
  30. package/dist/core/limits.d.ts +99 -0
  31. package/dist/core/limits.d.ts.map +1 -0
  32. package/dist/core/limits.js +109 -0
  33. package/dist/core/limits.js.map +1 -0
  34. package/dist/core/responses.d.ts +195 -0
  35. package/dist/core/responses.d.ts.map +1 -0
  36. package/dist/core/responses.js +73 -0
  37. package/dist/core/responses.js.map +1 -0
  38. package/dist/core/validation.d.ts +144 -0
  39. package/dist/core/validation.d.ts.map +1 -0
  40. package/dist/core/validation.js +150 -0
  41. package/dist/core/validation.js.map +1 -0
  42. package/dist/domains/account/account.d.ts +40 -0
  43. package/dist/domains/account/account.d.ts.map +1 -0
  44. package/dist/domains/account/account.js +39 -0
  45. package/dist/domains/account/account.js.map +1 -0
  46. package/dist/domains/audit/audit.d.ts +169 -0
  47. package/dist/domains/audit/audit.d.ts.map +1 -0
  48. package/dist/domains/audit/audit.js +84 -0
  49. package/dist/domains/audit/audit.js.map +1 -0
  50. package/dist/domains/chat/chat.d.ts +187 -0
  51. package/dist/domains/chat/chat.d.ts.map +1 -0
  52. package/dist/domains/chat/chat.js +189 -0
  53. package/dist/domains/chat/chat.js.map +1 -0
  54. package/dist/domains/dashboard/dashboard.d.ts +48 -0
  55. package/dist/domains/dashboard/dashboard.d.ts.map +1 -0
  56. package/dist/domains/dashboard/dashboard.js +58 -0
  57. package/dist/domains/dashboard/dashboard.js.map +1 -0
  58. package/dist/domains/discover/discover.d.ts +245 -0
  59. package/dist/domains/discover/discover.d.ts.map +1 -0
  60. package/dist/domains/discover/discover.js +68 -0
  61. package/dist/domains/discover/discover.js.map +1 -0
  62. package/dist/domains/feed/feed.d.ts +1658 -0
  63. package/dist/domains/feed/feed.d.ts.map +1 -0
  64. package/dist/domains/feed/feed.js +623 -0
  65. package/dist/domains/feed/feed.js.map +1 -0
  66. package/dist/domains/members/members.d.ts +175 -0
  67. package/dist/domains/members/members.d.ts.map +1 -0
  68. package/dist/domains/members/members.js +106 -0
  69. package/dist/domains/members/members.js.map +1 -0
  70. package/dist/domains/moderation/moderation.d.ts +184 -0
  71. package/dist/domains/moderation/moderation.d.ts.map +1 -0
  72. package/dist/domains/moderation/moderation.js +90 -0
  73. package/dist/domains/moderation/moderation.js.map +1 -0
  74. package/dist/domains/onboarding/onboarding.d.ts +1018 -0
  75. package/dist/domains/onboarding/onboarding.d.ts.map +1 -0
  76. package/dist/domains/onboarding/onboarding.js +717 -0
  77. package/dist/domains/onboarding/onboarding.js.map +1 -0
  78. package/dist/domains/profile/founder-profile.d.ts +387 -0
  79. package/dist/domains/profile/founder-profile.d.ts.map +1 -0
  80. package/dist/domains/profile/founder-profile.js +180 -0
  81. package/dist/domains/profile/founder-profile.js.map +1 -0
  82. package/dist/domains/support/support.d.ts +305 -0
  83. package/dist/domains/support/support.d.ts.map +1 -0
  84. package/dist/domains/support/support.js +129 -0
  85. package/dist/domains/support/support.js.map +1 -0
  86. package/dist/domains/team/team.d.ts +79 -0
  87. package/dist/domains/team/team.d.ts.map +1 -0
  88. package/dist/domains/team/team.js +54 -0
  89. package/dist/domains/team/team.js.map +1 -0
  90. package/dist/domains/uploads/uploads.d.ts +113 -0
  91. package/dist/domains/uploads/uploads.d.ts.map +1 -0
  92. package/dist/domains/uploads/uploads.js +106 -0
  93. package/dist/domains/uploads/uploads.js.map +1 -0
  94. package/dist/env.d.ts +85 -0
  95. package/dist/env.d.ts.map +1 -0
  96. package/dist/env.js +150 -0
  97. package/dist/env.js.map +1 -0
  98. package/dist/index.d.ts +21 -11
  99. package/dist/index.d.ts.map +1 -1
  100. package/dist/index.js +30 -17
  101. package/dist/index.js.map +1 -1
  102. package/dist/onboarding.d.ts +58 -32
  103. package/dist/onboarding.d.ts.map +1 -1
  104. package/dist/onboarding.js +155 -32
  105. package/dist/onboarding.js.map +1 -1
  106. package/package.json +14 -2
package/dist/env.js ADDED
@@ -0,0 +1,150 @@
1
+ /**
2
+ * founder-schema/env — how an environment variable is checked.
3
+ *
4
+ * Each Founder Circle app lists ITS OWN variables (configuration belongs to the
5
+ * app: adding one never needs a schema publish, and the web never learns the
6
+ * backend's setting names) and builds each one from the fields below, so the
7
+ * rules live here once and no app writes a validation rule of its own:
8
+ *
9
+ * import { envVar, readEnv } from 'founder-schema/env';
10
+ * export const env = readEnv(
11
+ * { PORT: envVar.port(6010), MONGODB_URI: envVar.mongoUri() },
12
+ * process.env,
13
+ * );
14
+ *
15
+ * The rules every field follows:
16
+ * - EMPTY IS UNSET. `FOO=` in a file or an unset variable both mean "not
17
+ * given", so a blank line in an env file cannot pass for a value.
18
+ * - A FALLBACK IS FOR LOCAL DEVELOPMENT ONLY. A deployment sets every value
19
+ * from its own secret store; never "fix" a deployed mismatch by changing a
20
+ * fallback, which would make the wrong value the default everywhere.
21
+ * - FAIL FAST AND SAY WHICH. `readEnv` reports every bad variable by NAME,
22
+ * never by value (a value can be a secret), so a misconfigured process
23
+ * stops at start-up rather than three layers down.
24
+ *
25
+ * A separate entry point so a browser bundle never loads it unless it asks.
26
+ *
27
+ * @module founder-schema/env
28
+ */
29
+ import { z } from 'zod';
30
+ /** Empty text is unset, like an absent variable. */
31
+ const unsetIfEmpty = (v) => (v === '' ? undefined : v);
32
+ /** Wrap a rule so empty text is treated as absent before it is checked. */
33
+ const field = (schema) => z.preprocess(unsetIfEmpty, schema);
34
+ const TRUE_WORDS = new Set(['true', '1', 'yes']);
35
+ const FALSE_WORDS = new Set(['false', '0', 'no']);
36
+ /** The field builders. Each returns the rule for one variable. */
37
+ export const envVar = {
38
+ /** Required text. With `fallback`, the text used when unset. */
39
+ text(fallback) {
40
+ return fallback === undefined
41
+ ? field(z.string({ error: 'is required' }))
42
+ : field(z.string().default(fallback));
43
+ },
44
+ /** Text that may be unset (`undefined`). */
45
+ optionalText() {
46
+ return field(z.string().optional());
47
+ },
48
+ /** A URL. With `fallback`, the URL used when unset. */
49
+ url(fallback) {
50
+ const url = z.url({ error: 'must be a URL' });
51
+ return fallback === undefined ? field(url) : field(url.default(fallback));
52
+ },
53
+ /** A URL that may be unset (`undefined`). */
54
+ optionalUrl() {
55
+ return field(z.url({ error: 'must be a URL' }).optional());
56
+ },
57
+ /** A MongoDB connection string. Always required: there is no safe default database. */
58
+ mongoUri() {
59
+ return field(z
60
+ .string({ error: 'is required' })
61
+ .refine((v) => v.startsWith('mongodb://') || v.startsWith('mongodb+srv://'), {
62
+ error: 'must start with mongodb:// or mongodb+srv://',
63
+ }));
64
+ },
65
+ /** A TCP port. */
66
+ port(fallback) {
67
+ return field(z.coerce.number().int().min(1).max(65535).default(fallback));
68
+ },
69
+ /** A whole number above zero: a count, a duration in milliseconds. */
70
+ positiveInt(fallback) {
71
+ return field(z.coerce.number().int().positive().default(fallback));
72
+ },
73
+ /**
74
+ * On or off: `true`/`false`, `1`/`0` or `yes`/`no`, in any case. Anything
75
+ * else is refused, so a typo cannot quietly turn a safeguard off.
76
+ */
77
+ flag(fallback) {
78
+ return field(z
79
+ .string()
80
+ .transform((v, ctx) => {
81
+ const word = v.trim().toLowerCase();
82
+ if (TRUE_WORDS.has(word))
83
+ return true;
84
+ if (FALSE_WORDS.has(word))
85
+ return false;
86
+ ctx.addIssue({ code: 'custom', message: 'must be true or false' });
87
+ return z.NEVER;
88
+ })
89
+ .optional()
90
+ .transform((v) => v ?? fallback));
91
+ },
92
+ /** One of a fixed set of words. */
93
+ oneOf(values, fallback) {
94
+ const choice = z.enum(values, { error: `must be one of: ${values.join(', ')}` });
95
+ return fallback === undefined ? field(choice) : field(choice.default(fallback));
96
+ },
97
+ /** Comma-separated text, as a list with blanks dropped: `a, b,` is `['a', 'b']`. */
98
+ list(fallback) {
99
+ return field(z
100
+ .string()
101
+ .default(fallback)
102
+ .transform((v) => v
103
+ .split(',')
104
+ .map((item) => item.trim())
105
+ .filter(Boolean)));
106
+ },
107
+ /** A required secret of at least `minLength` characters. */
108
+ secret(minLength) {
109
+ return field(z
110
+ .string({ error: 'is required' })
111
+ .min(minLength, { error: `must be at least ${minLength} characters` }));
112
+ },
113
+ /**
114
+ * A secret that may be unset, which then reads as `''` so the feature it
115
+ * guards can check one value and switch itself off. When set it must be at
116
+ * least `minLength` characters: a short secret is a mistake, not a choice.
117
+ */
118
+ optionalSecret(minLength) {
119
+ return field(z
120
+ .string()
121
+ .min(minLength, { error: `must be at least ${minLength} characters when set` })
122
+ .optional()
123
+ .transform((v) => v ?? ''));
124
+ },
125
+ };
126
+ /** Thrown by `readEnv` when any variable is missing or wrong. */
127
+ export class EnvError extends Error {
128
+ problems;
129
+ constructor(problems) {
130
+ super(`Environment is not valid:\n${problems.map((p) => ` ${p.variable}: ${p.problem}`).join('\n')}`);
131
+ this.name = 'EnvError';
132
+ this.problems = problems;
133
+ }
134
+ }
135
+ /**
136
+ * Check every variable in `fields` against `source` (normally `process.env`)
137
+ * and return them typed. Throws `EnvError` naming EVERY bad variable at once,
138
+ * so a misconfiguration is fixed in one pass, not one restart per variable.
139
+ * Variables in `source` that `fields` does not list are ignored.
140
+ */
141
+ export function readEnv(fields, source) {
142
+ const result = z.object(fields).safeParse(source);
143
+ if (result.success)
144
+ return result.data;
145
+ throw new EnvError(result.error.issues.map((issue) => ({
146
+ variable: String(issue.path[0] ?? '(unknown)'),
147
+ problem: issue.message,
148
+ })));
149
+ }
150
+ //# sourceMappingURL=env.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"env.js","sourceRoot":"","sources":["../src/env.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * founder-schema/env — how an environment variable is checked.\n *\n * Each Founder Circle app lists ITS OWN variables (configuration belongs to the\n * app: adding one never needs a schema publish, and the web never learns the\n * backend's setting names) and builds each one from the fields below, so the\n * rules live here once and no app writes a validation rule of its own:\n *\n * import { envVar, readEnv } from 'founder-schema/env';\n * export const env = readEnv(\n * { PORT: envVar.port(6010), MONGODB_URI: envVar.mongoUri() },\n * process.env,\n * );\n *\n * The rules every field follows:\n * - EMPTY IS UNSET. `FOO=` in a file or an unset variable both mean \"not\n * given\", so a blank line in an env file cannot pass for a value.\n * - A FALLBACK IS FOR LOCAL DEVELOPMENT ONLY. A deployment sets every value\n * from its own secret store; never \"fix\" a deployed mismatch by changing a\n * fallback, which would make the wrong value the default everywhere.\n * - FAIL FAST AND SAY WHICH. `readEnv` reports every bad variable by NAME,\n * never by value (a value can be a secret), so a misconfigured process\n * stops at start-up rather than three layers down.\n *\n * A separate entry point so a browser bundle never loads it unless it asks.\n *\n * @module founder-schema/env\n */\n\nimport { z } from 'zod';\n\n/** Empty text is unset, like an absent variable. */\nconst unsetIfEmpty = (v: unknown) => (v === '' ? undefined : v);\n\n/** Wrap a rule so empty text is treated as absent before it is checked. */\nconst field = <T extends z.ZodType>(schema: T) => z.preprocess(unsetIfEmpty, schema);\n\nconst TRUE_WORDS = new Set(['true', '1', 'yes']);\nconst FALSE_WORDS = new Set(['false', '0', 'no']);\n\n/** The field builders. Each returns the rule for one variable. */\nexport const envVar = {\n /** Required text. With `fallback`, the text used when unset. */\n text(fallback?: string) {\n return fallback === undefined\n ? field(z.string({ error: 'is required' }))\n : field(z.string().default(fallback));\n },\n\n /** Text that may be unset (`undefined`). */\n optionalText() {\n return field(z.string().optional());\n },\n\n /** A URL. With `fallback`, the URL used when unset. */\n url(fallback?: string) {\n const url = z.url({ error: 'must be a URL' });\n return fallback === undefined ? field(url) : field(url.default(fallback));\n },\n\n /** A URL that may be unset (`undefined`). */\n optionalUrl() {\n return field(z.url({ error: 'must be a URL' }).optional());\n },\n\n /** A MongoDB connection string. Always required: there is no safe default database. */\n mongoUri() {\n return field(\n z\n .string({ error: 'is required' })\n .refine((v) => v.startsWith('mongodb://') || v.startsWith('mongodb+srv://'), {\n error: 'must start with mongodb:// or mongodb+srv://',\n }),\n );\n },\n\n /** A TCP port. */\n port(fallback: number) {\n return field(z.coerce.number().int().min(1).max(65535).default(fallback));\n },\n\n /** A whole number above zero: a count, a duration in milliseconds. */\n positiveInt(fallback: number) {\n return field(z.coerce.number().int().positive().default(fallback));\n },\n\n /**\n * On or off: `true`/`false`, `1`/`0` or `yes`/`no`, in any case. Anything\n * else is refused, so a typo cannot quietly turn a safeguard off.\n */\n flag(fallback: boolean) {\n return field(\n z\n .string()\n .transform((v, ctx) => {\n const word = v.trim().toLowerCase();\n if (TRUE_WORDS.has(word)) return true;\n if (FALSE_WORDS.has(word)) return false;\n ctx.addIssue({ code: 'custom', message: 'must be true or false' });\n return z.NEVER;\n })\n .optional()\n .transform((v) => v ?? fallback),\n );\n },\n\n /** One of a fixed set of words. */\n oneOf<const T extends readonly [string, ...string[]]>(values: T, fallback?: T[number]) {\n const choice = z.enum(values, { error: `must be one of: ${values.join(', ')}` });\n return fallback === undefined ? field(choice) : field(choice.default(fallback));\n },\n\n /** Comma-separated text, as a list with blanks dropped: `a, b,` is `['a', 'b']`. */\n list(fallback: string) {\n return field(\n z\n .string()\n .default(fallback)\n .transform((v) =>\n v\n .split(',')\n .map((item) => item.trim())\n .filter(Boolean),\n ),\n );\n },\n\n /** A required secret of at least `minLength` characters. */\n secret(minLength: number) {\n return field(\n z\n .string({ error: 'is required' })\n .min(minLength, { error: `must be at least ${minLength} characters` }),\n );\n },\n\n /**\n * A secret that may be unset, which then reads as `''` so the feature it\n * guards can check one value and switch itself off. When set it must be at\n * least `minLength` characters: a short secret is a mistake, not a choice.\n */\n optionalSecret(minLength: number) {\n return field(\n z\n .string()\n .min(minLength, { error: `must be at least ${minLength} characters when set` })\n .optional()\n .transform((v) => v ?? ''),\n );\n },\n} as const;\n\n/** One variable that failed, by name. Never carries the value. */\nexport interface EnvProblem {\n variable: string;\n problem: string;\n}\n\n/** Thrown by `readEnv` when any variable is missing or wrong. */\nexport class EnvError extends Error {\n readonly problems: EnvProblem[];\n\n constructor(problems: EnvProblem[]) {\n super(\n `Environment is not valid:\\n${problems.map((p) => ` ${p.variable}: ${p.problem}`).join('\\n')}`,\n );\n this.name = 'EnvError';\n this.problems = problems;\n }\n}\n\n/** What `readEnv` returns: every variable as its field's output. */\nexport type EnvValues<F extends Record<string, z.ZodType>> = { [K in keyof F]: z.output<F[K]> };\n\n/**\n * Check every variable in `fields` against `source` (normally `process.env`)\n * and return them typed. Throws `EnvError` naming EVERY bad variable at once,\n * so a misconfiguration is fixed in one pass, not one restart per variable.\n * Variables in `source` that `fields` does not list are ignored.\n */\nexport function readEnv<F extends Record<string, z.ZodType>>(\n fields: F,\n source: Record<string, string | undefined>,\n): EnvValues<F> {\n const result = z.object(fields).safeParse(source);\n if (result.success) return result.data as EnvValues<F>;\n throw new EnvError(\n result.error.issues.map((issue) => ({\n variable: String(issue.path[0] ?? '(unknown)'),\n problem: issue.message,\n })),\n );\n}\n"]}
package/dist/index.d.ts CHANGED
@@ -8,15 +8,25 @@
8
8
  *
9
9
  * @module founder-schema
10
10
  */
11
- export { CHAT_PRODUCT_ID, CHAT_SOCKET_REAUTH_SECONDS, CHAT_TOKEN_REFRESH_MARGIN_SECONDS, type ChatAuthToken, type ChatConfig, type ChatInvitation, type ChatInvitationBody, type ChatParticipant, type ChatParticipantsBody, type ChatParticipantsResponse, type ChatProductId, chatAuthTokenSchema, chatConfigSchema, chatInvitationBodySchema, chatInvitationSchema, chatParticipantSchema, chatParticipantsBodySchema, chatParticipantsResponseSchema, chatProductIdSchema, type OpenChatBody, type OpenChatResponse, openChatBodySchema, openChatResponseSchema, } from './chat.js';
12
- export { type CoordinatesQuery, type CoordinatesQueryInput, chosenUsernameSchema, coordinatesQuerySchema, emptyStringToUndefined, type FounderLocation, GENDER_VALUES, type Gender, GOAL_VALUES, type Goal, genderSchema, goalSchema, type HttpUrl, httpUrlSchema, INDUSTRY_VALUES, type Industry, industrySchema, isReservedUsername, locationSchema, type ObjectIdString, objectIdSchema, optionalTrimmedString, type PaginationQuery, type PaginationQueryInput, type Phone, paginationQuerySchema, phoneSchema, RESERVED_USERNAMES, type SafeUrl, SKILL_VALUES, type Skill, STARTUP_STAGE_VALUES, type StartupStage, type SuggestedLocation, safeUrlSchema, skillSchema, startupStageSchema, suggestedLocationSchema, USERNAME_MAX, USERNAME_MIN, type Username, usernameSchema, } from './common.js';
13
- export { type DiscoverFacets, type DiscoverPage, type DiscoverQuery, type DiscoverQueryInput, discoverFacetsSchema, discoverPageSchema, discoverQuerySchema, } from './discover.js';
14
- export { API_ERROR_CODE, API_ERROR_CODE_VALUES, type ApiErrorCode, apiErrorCodeSchema, } from './errors.js';
15
- export { type AttachedMedia, type AuthorParams, attachedMediaSchema, authorParamsSchema, type CastVoteBody, type CastVoteResponse, COMMENT_MAX_BODY_CHARS, CONTENT_KIND_VALUES, type CommentPage, type CommentParams, type CommentsQuery, type CommentsQueryInput, type ContentKind, type ContentParams, type ContentTargetParams, type CreateCommentBody, type CreatePollBody, type CreatePostBody, type CreateReportBody, type CreateReportResponse, castVoteBodySchema, castVoteResponseSchema, commentPageSchema, commentParamsSchema, commentsQuerySchema, contentKindSchema, contentParamsSchema, contentTargetParamsSchema, createCommentBodySchema, createPollBodySchema, createPostBodySchema, createReportBodySchema, createReportResponseSchema, EDIT_WINDOW_MS, ENGAGEMENT_TARGET_KIND_VALUES, type EngagementTargetKind, type EngagementTargetParams, engagementTargetKindSchema, engagementTargetParamsSchema, FEED_SORT_VALUES, type FeedAuthor, type FeedComment, type FeedImage, type FeedItem, type FeedItemParams, type FeedMedia, type FeedPage, type FeedPoll, type FeedPost, type FeedQuery, type FeedQueryInput, type FeedSort, type FeedVideo, feedAuthorSchema, feedCommentSchema, feedImageSchema, feedItemParamsSchema, feedItemSchema, feedMediaSchema, feedPageSchema, feedPollSchema, feedPostSchema, feedQuerySchema, feedSortSchema, feedVideoSchema, type LinkPreview, linkPreviewSchema, MAX_TOPICS, POLL_MAX_DURATION_MS, POLL_MAX_OPTIONS, POLL_MIN_DURATION_MS, POLL_MIN_OPTIONS, POLL_OPTION_MAX_CHARS, POLL_QUESTION_MAX_CHARS, POST_MAX_BODY_CHARS, POST_MAX_MEDIA, type PollOption, type PollParams, pollOptionSchema, pollParamsSchema, REACTION_TYPE_VALUES, REPORT_REASON_VALUES, type ReactionCounts, type ReactionType, type ReportReason, reactionCountsSchema, reactionTypeSchema, reportReasonSchema, type SetReactionBody, type SetReactionResponse, setReactionBodySchema, setReactionResponseSchema, type ToggleBookmarkResponse, toggleBookmarkResponseSchema, type UpdateCommentBody, type UpdatePostBody, updateCommentBodySchema, updatePostBodySchema, type ViewerState, viewerStateSchema, } from './feed.js';
16
- export { type FounderCard, type FounderLinks, type FounderProfile, founderCardSchema, founderLinksSchema, founderProfileSchema, type UpdateFounderProfileBody, type UpdateUsernameBody, type UsernameAvailability, updateFounderProfileBodySchema, updateUsernameBodySchema, usernameAvailabilitySchema, type Venture, ventureSchema, } from './founder-profile.js';
17
- export { ABOUT_MAX, CHAT_PARTICIPANTS_MAX, CITY_MAX, COUNTRY_MAX, DISCOVER_FILTER_VALUES_MAX, DISCOVER_TEXT_MAX, DISPLAY_NAME_MAX, FOUNDED_YEAR_MIN, GOALS_MIN, HEADLINE_MAX, LINK_PREVIEW_DESCRIPTION_MAX, LINK_PREVIEW_TITLE_MAX, LINK_URL_MAX, MEDIA_ALT_MAX, PAGE_SIZE_DEFAULT, PAGE_SIZE_MAX, REPORT_NOTE_MAX, SKILLS_MAX, STATE_MAX, TEAM_SIZE_MAX, TEAM_SIZE_MIN, UPLOAD_MAX_BYTES, VENTURE_NAME_MAX, VENTURE_TAGLINE_MAX, } from './limits.js';
18
- export { ageInYears, BUSINESS_TYPE_VALUES, type BusinessType, businessTypeSchema, type CompleteOnboardingBody, type CompleteOnboardingBodyInput, type CompleteOnboardingResponse, type ContactLinks, completeOnboardingBodySchema, completeOnboardingResponseSchema, contactLinksSchema, type DateOfBirth, dateOfBirthSchema, FOUNDER_ONBOARDING_STEPS, GUIDELINES_VERSION, guidelinesVersionSchema, INTERESTS_MAX, INTERESTS_MIN, type IsoDate, isoDateSchema, MAX_AGE_YEARS, MIN_AGE_YEARS, ONBOARDING_DRAFT_KEYS, ONBOARDING_STEP_FIELDS, ONBOARDING_STEP_KEYS, ONBOARDING_STEP_SCHEMAS, ONBOARDING_TOTAL_STEPS, type OnboardingDraft, type OnboardingDraftKey, type OnboardingField, type OnboardingForm, type OnboardingProgress, type OnboardingProgressUpdate, type OnboardingStatus, type OnboardingStepBody, type OnboardingStepConfig, type OnboardingStepKey, onboardingDraftKeySchema, onboardingDraftSchema, onboardingFormSchema, onboardingProgressSchema, onboardingProgressUpdateSchema, onboardingStatusSchema, TOPIC_CATEGORIES, TOPIC_CATEGORY_KEYS, TOPIC_VALUES, type Topic, type TopicCategory, type TopicCategoryKey, topicSchema, } from './onboarding.js';
19
- export { type ApiError, type ApiErrorDetails, apiErrorDetailsSchema, apiErrorSchema, type ErrorResponse, errorResponseSchema, type IdResponse, idResponseSchema, paginatedSchema, successResponseSchema, } from './responses/index.js';
20
- export { UPLOAD_CONTENT_TYPES, UPLOAD_KEY_EXTENSIONS, UPLOAD_KEY_MAX_CHARS, UPLOAD_KEY_PATTERN, type UploadKey, type UploadKeyExtension, type UploadPresignBody, type UploadPresignResponse, uploadKeyExtensionSchema, uploadKeySchema, uploadPresignBodySchema, uploadPresignResponseSchema, } from './uploads.js';
21
- export { REQUEST_PART_VALUES, type RequestPart, requestPartSchema, toValidationIssues, VALIDATION_MESSAGE, type ValidationIssue, type ValidationMessageKey, validationIssueSchema, } from './validation.js';
11
+ export { type ChangeMpinBody, changeMpinBodySchema, type MeAccessResponse, MPIN_LENGTH, MPIN_LOCK_MS, MPIN_MAX_ATTEMPTS, meAccessResponseSchema, mpinSchema, type SetMpinBody, type SwitchRoleBody, setMpinBodySchema, switchRoleBodySchema, } from './access/access.js';
12
+ export { ACTION_VALUES, type Action, type AppAbility, actionSchema, type PackedRules, packedRulesSchema, SUBJECT_VALUES, type Subject, type SubjectFields, type SubjectInstance, subjectSchema, } from './access/permissions.js';
13
+ export { ACTIVE_ROLE_TTL_MS, canGrantRole, isPlatformRole, MEMBER_ROLE, PLATFORM_ROLE_VALUES, type PlatformRole, platformRoleSchema, ROLE_GRANTED_BY, ROLE_VALUES, type Role, roleSchema, } from './access/roles.js';
14
+ export { type CoordinatesQuery, type CoordinatesQueryInput, chosenUsernameSchema, coordinatesQuerySchema, emptyStringToUndefined, type FounderLocation, GENDER_VALUES, type Gender, GOAL_VALUES, type Goal, genderSchema, goalSchema, type HttpUrl, httpUrlSchema, INDUSTRY_VALUES, type Industry, industrySchema, isReservedUsername, locationSchema, type ObjectIdString, objectIdSchema, optionalTrimmedString, type PaginationQuery, type PaginationQueryInput, type Phone, paginationQuerySchema, phoneSchema, RESERVED_USERNAMES, type SafeUrl, SKILL_VALUES, type Skill, STARTUP_STAGE_VALUES, type StartupStage, type SuggestedLocation, safeUrlSchema, skillSchema, startupStageSchema, suggestedLocationSchema, USERNAME_MAX, USERNAME_MIN, type Username, usernameSchema, } from './core/common.js';
15
+ export { API_ERROR_CODE, API_ERROR_CODE_VALUES, type ApiErrorCode, apiErrorCodeSchema, } from './core/errors.js';
16
+ export { ABOUT_MAX, CHAT_PARTICIPANTS_MAX, CITY_MAX, COUNTRY_MAX, DISCOVER_FILTER_VALUES_MAX, DISCOVER_TEXT_MAX, DISPLAY_NAME_MAX, FOUNDED_YEAR_MIN, GOALS_MIN, HEADLINE_MAX, LINK_PREVIEW_DESCRIPTION_MAX, LINK_PREVIEW_TITLE_MAX, LINK_URL_MAX, MEDIA_ALT_MAX, MEMBER_SEARCH_MAX, MODERATION_EXCERPT_MAX, MODERATION_NOTE_MAX, PAGE_SIZE_DEFAULT, PAGE_SIZE_MAX, REPORT_NOTE_MAX, SAVED_REPLIES_MAX, SAVED_REPLY_BODY_MAX, SAVED_REPLY_TITLE_MAX, SKILLS_MAX, STATE_MAX, SUSPENSION_REASON_MAX, SUSPENSION_REASON_MIN, TEAM_SIZE_MAX, TEAM_SIZE_MIN, TICKET_MESSAGE_MAX, TICKET_MESSAGES_MAX, TICKET_SUBJECT_MAX, TICKET_SUBJECT_MIN, UPLOAD_MAX_BYTES, VENTURE_NAME_MAX, VENTURE_TAGLINE_MAX, } from './core/limits.js';
17
+ export { type ApiError, type ApiErrorDetails, apiErrorDetailsSchema, apiErrorSchema, type ErrorResponse, errorResponseSchema, type IdResponse, idResponseSchema, paginatedSchema, successResponseSchema, } from './core/responses.js';
18
+ export { REQUEST_PART_VALUES, type RequestPart, requestPartSchema, toValidationIssues, VALIDATION_MESSAGE, type ValidationIssue, type ValidationMessageKey, validationIssueSchema, } from './core/validation.js';
19
+ export { type DeleteAccountResponse, deleteAccountResponseSchema, } from './domains/account/account.js';
20
+ export { AUDIT_ACTION_VALUES, type AuditAction, type AuditActor, type AuditEntry, type AuditPage, auditActionSchema, auditActorSchema, auditEntrySchema, auditPageSchema, } from './domains/audit/audit.js';
21
+ export { CHAT_PRODUCT_ID, CHAT_SOCKET_REAUTH_SECONDS, CHAT_TOKEN_REFRESH_MARGIN_SECONDS, type ChatAuthToken, type ChatConfig, type ChatInvitation, type ChatInvitationBody, type ChatParticipant, type ChatParticipantsBody, type ChatParticipantsResponse, type ChatProductId, chatAuthTokenSchema, chatConfigSchema, chatInvitationBodySchema, chatInvitationSchema, chatParticipantSchema, chatParticipantsBodySchema, chatParticipantsResponseSchema, chatProductIdSchema, type OpenChatBody, type OpenChatResponse, openChatBodySchema, openChatResponseSchema, } from './domains/chat/chat.js';
22
+ export { type Dashboard, dashboardSchema } from './domains/dashboard/dashboard.js';
23
+ export { type DiscoverFacets, type DiscoverPage, type DiscoverQuery, type DiscoverQueryInput, discoverFacetsSchema, discoverPageSchema, discoverQuerySchema, } from './domains/discover/discover.js';
24
+ export { type AttachedMedia, type AuthorParams, attachedMediaSchema, authorParamsSchema, type CastVoteBody, type CastVoteResponse, COMMENT_MAX_BODY_CHARS, CONTENT_KIND_VALUES, type CommentPage, type CommentParams, type CommentsQuery, type CommentsQueryInput, type ContentKind, type ContentParams, type ContentTargetParams, type CreateCommentBody, type CreatePollBody, type CreatePostBody, type CreateReportBody, type CreateReportResponse, castVoteBodySchema, castVoteResponseSchema, commentPageSchema, commentParamsSchema, commentsQuerySchema, contentKindSchema, contentParamsSchema, contentTargetParamsSchema, createCommentBodySchema, createPollBodySchema, createPostBodySchema, createReportBodySchema, createReportResponseSchema, EDIT_WINDOW_MS, ENGAGEMENT_TARGET_KIND_VALUES, type EngagementTargetKind, type EngagementTargetParams, engagementTargetKindSchema, engagementTargetParamsSchema, FEED_SORT_VALUES, type FeedAuthor, type FeedComment, type FeedImage, type FeedItem, type FeedItemParams, type FeedMedia, type FeedPage, type FeedPoll, type FeedPost, type FeedQuery, type FeedQueryInput, type FeedSort, type FeedVideo, feedAuthorSchema, feedCommentSchema, feedImageSchema, feedItemParamsSchema, feedItemSchema, feedMediaSchema, feedPageSchema, feedPollSchema, feedPostSchema, feedQuerySchema, feedSortSchema, feedVideoSchema, type LinkPreview, linkPreviewSchema, MAX_TOPICS, POLL_MAX_DURATION_MS, POLL_MAX_OPTIONS, POLL_MIN_DURATION_MS, POLL_MIN_OPTIONS, POLL_OPTION_MAX_CHARS, POLL_QUESTION_MAX_CHARS, POST_MAX_BODY_CHARS, POST_MAX_MEDIA, type PollOption, type PollParams, pollOptionSchema, pollParamsSchema, REACTION_TYPE_VALUES, REPORT_REASON_VALUES, type ReactionCounts, type ReactionType, type ReportReason, reactionCountsSchema, reactionTypeSchema, reportReasonSchema, type SetReactionBody, type SetReactionResponse, setReactionBodySchema, setReactionResponseSchema, type ToggleBookmarkResponse, toggleBookmarkResponseSchema, type UpdateCommentBody, type UpdatePostBody, updateCommentBodySchema, updatePostBodySchema, type ViewerState, viewerStateSchema, } from './domains/feed/feed.js';
25
+ export { MEMBER_STATUS_VALUES, type MemberDetail, type MemberDirectoryPage, type MemberDirectoryQuery, type MemberDirectoryQueryInput, type MemberParams, type MemberStatus, type MemberSummary, memberDetailSchema, memberDirectoryPageSchema, memberDirectoryQuerySchema, memberParamsSchema, memberStatusSchema, memberSummarySchema, type SuspendMemberBody, type Suspension, suspendMemberBodySchema, suspensionSchema, } from './domains/members/members.js';
26
+ export { MODERATION_ACTION_VALUES, MODERATION_STATE_VALUES, type ModerationAction, type ModerationContentQuery, type ModerationContentQueryInput, type ModerationDecisionBody, type ModerationItem, type ModerationPage, type ModerationState, moderationActionSchema, moderationContentQuerySchema, moderationDecisionBodySchema, moderationItemSchema, moderationPageSchema, moderationStateSchema, } from './domains/moderation/moderation.js';
27
+ export { ageInYears, BUSINESS_TYPE_VALUES, type BusinessType, businessTypeSchema, type CompleteOnboardingBody, type CompleteOnboardingBodyInput, type CompleteOnboardingResponse, type ContactLinks, completeOnboardingBodySchema, completeOnboardingResponseSchema, contactLinksSchema, type DateOfBirth, dateOfBirthSchema, EMPTY_ONBOARDING_VENTURE, FOUNDER_ONBOARDING_STEPS, GUIDELINES_VERSION, guidelinesVersionSchema, INTERESTS_MAX, INTERESTS_MIN, type IsoDate, isoDateSchema, MAX_AGE_YEARS, MIN_AGE_YEARS, ONBOARDING_DRAFT_KEYS, ONBOARDING_STEP_FIELDS, ONBOARDING_STEP_KEYS, ONBOARDING_STEP_SCHEMAS, ONBOARDING_TOTAL_STEPS, type OnboardingDraft, type OnboardingDraftKey, type OnboardingField, type OnboardingForm, type OnboardingProgress, type OnboardingProgressUpdate, type OnboardingStatus, type OnboardingStepBody, type OnboardingStepConfig, type OnboardingStepKey, onboardingDraftKeySchema, onboardingDraftSchema, onboardingFormSchema, onboardingProgressSchema, onboardingProgressUpdateSchema, onboardingStatusSchema, readOnboardingDraft, TEAM_SIZE_DIGITS_MAX, TOPIC_CATEGORIES, TOPIC_CATEGORY_KEYS, TOPIC_VALUES, type Topic, type TopicCategory, type TopicCategoryKey, topicSchema, } from './domains/onboarding/onboarding.js';
28
+ export { type FounderCard, type FounderLinks, type FounderProfile, founderCardSchema, founderLinksSchema, founderProfileSchema, type UpdateFounderProfileBody, type UpdateUsernameBody, type UsernameAvailability, updateFounderProfileBodySchema, updateUsernameBodySchema, usernameAvailabilitySchema, type Venture, ventureSchema, } from './domains/profile/founder-profile.js';
29
+ export { type CreateTicketBody, createTicketBodySchema, type ReplyTicketBody, replyTicketBodySchema, type SavedReply, type SavedReplyBody, type SavedReplyList, type SavedReplyParams, savedReplyBodySchema, savedReplyListSchema, savedReplyParamsSchema, savedReplySchema, TICKET_ASSIGNEE_FILTER_VALUES, TICKET_CATEGORY_VALUES, TICKET_SCOPE_VALUES, TICKET_STATUS_VALUES, type TicketAssigneeFilter, type TicketCategory, type TicketDetail, type TicketListQuery, type TicketListQueryInput, type TicketMessage, type TicketPage, type TicketParams, type TicketScope, type TicketStatus, type TicketSummary, ticketAssigneeFilterSchema, ticketCategorySchema, ticketDetailSchema, ticketListQuerySchema, ticketMessageSchema, ticketPageSchema, ticketParamsSchema, ticketScopeSchema, ticketStatusSchema, ticketSummarySchema, } from './domains/support/support.js';
30
+ export { type SetMemberRolesBody, type SetMemberRolesResponse, setMemberRolesBodySchema, setMemberRolesResponseSchema, type TeamMember, type TeamMemberParams, type TeamPage, teamMemberParamsSchema, teamMemberSchema, teamPageSchema, } from './domains/team/team.js';
31
+ export { UPLOAD_CONTENT_TYPES, UPLOAD_KEY_EXTENSIONS, UPLOAD_KEY_MAX_CHARS, UPLOAD_KEY_PATTERN, type UploadKey, type UploadKeyExtension, type UploadPresignBody, type UploadPresignResponse, uploadKeyExtensionSchema, uploadKeySchema, uploadPresignBodySchema, uploadPresignResponseSchema, } from './domains/uploads/uploads.js';
22
32
  //# 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
@@ -8,26 +8,39 @@
8
8
  *
9
9
  * @module founder-schema
10
10
  */
11
- // ─── Chat ────────────────────────────────────────────────────────────────────
12
- export { CHAT_PRODUCT_ID, CHAT_SOCKET_REAUTH_SECONDS, CHAT_TOKEN_REFRESH_MARGIN_SECONDS, chatAuthTokenSchema, chatConfigSchema, chatInvitationBodySchema, chatInvitationSchema, chatParticipantSchema, chatParticipantsBodySchema, chatParticipantsResponseSchema, chatProductIdSchema, openChatBodySchema, openChatResponseSchema, } from './chat.js';
11
+ // ─── Access: roles, permissions (CASL), the MPIN and the active role ────────
12
+ export { changeMpinBodySchema, MPIN_LENGTH, MPIN_LOCK_MS, MPIN_MAX_ATTEMPTS, meAccessResponseSchema, mpinSchema, setMpinBodySchema, switchRoleBodySchema, } from './access/access.js';
13
+ export { ACTION_VALUES, actionSchema, packedRulesSchema, SUBJECT_VALUES, subjectSchema, } from './access/permissions.js';
14
+ export { ACTIVE_ROLE_TTL_MS, canGrantRole, isPlatformRole, MEMBER_ROLE, PLATFORM_ROLE_VALUES, platformRoleSchema, ROLE_GRANTED_BY, ROLE_VALUES, roleSchema, } from './access/roles.js';
13
15
  // ─── Common helpers and enums ────────────────────────────────────────────────
14
- export { chosenUsernameSchema, coordinatesQuerySchema, emptyStringToUndefined, GENDER_VALUES, GOAL_VALUES, genderSchema, goalSchema, httpUrlSchema, INDUSTRY_VALUES, industrySchema, isReservedUsername, locationSchema, objectIdSchema, optionalTrimmedString, paginationQuerySchema, phoneSchema, RESERVED_USERNAMES, SKILL_VALUES, STARTUP_STAGE_VALUES, safeUrlSchema, skillSchema, startupStageSchema, suggestedLocationSchema, USERNAME_MAX, USERNAME_MIN, usernameSchema, } from './common.js';
15
- // ─── Discover ────────────────────────────────────────────────────────────────
16
- export { discoverFacetsSchema, discoverPageSchema, discoverQuerySchema, } from './discover.js';
16
+ export { chosenUsernameSchema, coordinatesQuerySchema, emptyStringToUndefined, GENDER_VALUES, GOAL_VALUES, genderSchema, goalSchema, httpUrlSchema, INDUSTRY_VALUES, industrySchema, isReservedUsername, locationSchema, objectIdSchema, optionalTrimmedString, paginationQuerySchema, phoneSchema, RESERVED_USERNAMES, SKILL_VALUES, STARTUP_STAGE_VALUES, safeUrlSchema, skillSchema, startupStageSchema, suggestedLocationSchema, USERNAME_MAX, USERNAME_MIN, usernameSchema, } from './core/common.js';
17
17
  // ─── Error codes ─────────────────────────────────────────────────────────────
18
- export { API_ERROR_CODE, API_ERROR_CODE_VALUES, apiErrorCodeSchema, } from './errors.js';
19
- // ─── Feed: post, poll, comment, reaction ─────────────────────────────────────
20
- export { attachedMediaSchema, authorParamsSchema, COMMENT_MAX_BODY_CHARS, CONTENT_KIND_VALUES, castVoteBodySchema, castVoteResponseSchema, commentPageSchema, commentParamsSchema, commentsQuerySchema, contentKindSchema, contentParamsSchema, contentTargetParamsSchema, createCommentBodySchema, createPollBodySchema, createPostBodySchema, createReportBodySchema, createReportResponseSchema, EDIT_WINDOW_MS, ENGAGEMENT_TARGET_KIND_VALUES, engagementTargetKindSchema, engagementTargetParamsSchema, FEED_SORT_VALUES, feedAuthorSchema, feedCommentSchema, feedImageSchema, feedItemParamsSchema, feedItemSchema, feedMediaSchema, feedPageSchema, feedPollSchema, feedPostSchema, feedQuerySchema, feedSortSchema, feedVideoSchema, linkPreviewSchema, MAX_TOPICS, POLL_MAX_DURATION_MS, POLL_MAX_OPTIONS, POLL_MIN_DURATION_MS, POLL_MIN_OPTIONS, POLL_OPTION_MAX_CHARS, POLL_QUESTION_MAX_CHARS, POST_MAX_BODY_CHARS, POST_MAX_MEDIA, pollOptionSchema, pollParamsSchema, REACTION_TYPE_VALUES, REPORT_REASON_VALUES, reactionCountsSchema, reactionTypeSchema, reportReasonSchema, setReactionBodySchema, setReactionResponseSchema, toggleBookmarkResponseSchema, updateCommentBodySchema, updatePostBodySchema, viewerStateSchema, } from './feed.js';
21
- // ─── Founder profile ─────────────────────────────────────────────────────────
22
- export { founderCardSchema, founderLinksSchema, founderProfileSchema, updateFounderProfileBodySchema, updateUsernameBodySchema, usernameAvailabilitySchema, ventureSchema, } from './founder-profile.js';
18
+ export { API_ERROR_CODE, API_ERROR_CODE_VALUES, apiErrorCodeSchema, } from './core/errors.js';
23
19
  // ─── Limits: every length, size and count, by name ──────────────────────────
24
- export { ABOUT_MAX, CHAT_PARTICIPANTS_MAX, CITY_MAX, COUNTRY_MAX, DISCOVER_FILTER_VALUES_MAX, DISCOVER_TEXT_MAX, DISPLAY_NAME_MAX, FOUNDED_YEAR_MIN, GOALS_MIN, HEADLINE_MAX, LINK_PREVIEW_DESCRIPTION_MAX, LINK_PREVIEW_TITLE_MAX, LINK_URL_MAX, MEDIA_ALT_MAX, PAGE_SIZE_DEFAULT, PAGE_SIZE_MAX, REPORT_NOTE_MAX, SKILLS_MAX, STATE_MAX, TEAM_SIZE_MAX, TEAM_SIZE_MIN, UPLOAD_MAX_BYTES, VENTURE_NAME_MAX, VENTURE_TAGLINE_MAX, } from './limits.js';
25
- // ─── Onboarding ──────────────────────────────────────────────────────────────
26
- export { ageInYears, BUSINESS_TYPE_VALUES, businessTypeSchema, completeOnboardingBodySchema, completeOnboardingResponseSchema, contactLinksSchema, dateOfBirthSchema, FOUNDER_ONBOARDING_STEPS, GUIDELINES_VERSION, guidelinesVersionSchema, INTERESTS_MAX, INTERESTS_MIN, isoDateSchema, MAX_AGE_YEARS, MIN_AGE_YEARS, ONBOARDING_DRAFT_KEYS, ONBOARDING_STEP_FIELDS, ONBOARDING_STEP_KEYS, ONBOARDING_STEP_SCHEMAS, ONBOARDING_TOTAL_STEPS, onboardingDraftKeySchema, onboardingDraftSchema, onboardingFormSchema, onboardingProgressSchema, onboardingProgressUpdateSchema, onboardingStatusSchema, TOPIC_CATEGORIES, TOPIC_CATEGORY_KEYS, TOPIC_VALUES, topicSchema, } from './onboarding.js';
20
+ export { ABOUT_MAX, CHAT_PARTICIPANTS_MAX, CITY_MAX, COUNTRY_MAX, DISCOVER_FILTER_VALUES_MAX, DISCOVER_TEXT_MAX, DISPLAY_NAME_MAX, FOUNDED_YEAR_MIN, GOALS_MIN, HEADLINE_MAX, LINK_PREVIEW_DESCRIPTION_MAX, LINK_PREVIEW_TITLE_MAX, LINK_URL_MAX, MEDIA_ALT_MAX, MEMBER_SEARCH_MAX, MODERATION_EXCERPT_MAX, MODERATION_NOTE_MAX, PAGE_SIZE_DEFAULT, PAGE_SIZE_MAX, REPORT_NOTE_MAX, SAVED_REPLIES_MAX, SAVED_REPLY_BODY_MAX, SAVED_REPLY_TITLE_MAX, SKILLS_MAX, STATE_MAX, SUSPENSION_REASON_MAX, SUSPENSION_REASON_MIN, TEAM_SIZE_MAX, TEAM_SIZE_MIN, TICKET_MESSAGE_MAX, TICKET_MESSAGES_MAX, TICKET_SUBJECT_MAX, TICKET_SUBJECT_MIN, UPLOAD_MAX_BYTES, VENTURE_NAME_MAX, VENTURE_TAGLINE_MAX, } from './core/limits.js';
27
21
  // ─── Response envelopes ──────────────────────────────────────────────────────
28
- export { apiErrorDetailsSchema, apiErrorSchema, errorResponseSchema, idResponseSchema, paginatedSchema, successResponseSchema, } from './responses/index.js';
29
- // ─── Uploads: the key, the extensions, asking for a slot ────────────────────
30
- export { UPLOAD_CONTENT_TYPES, UPLOAD_KEY_EXTENSIONS, UPLOAD_KEY_MAX_CHARS, UPLOAD_KEY_PATTERN, uploadKeyExtensionSchema, uploadKeySchema, uploadPresignBodySchema, uploadPresignResponseSchema, } from './uploads.js';
22
+ export { apiErrorDetailsSchema, apiErrorSchema, errorResponseSchema, idResponseSchema, paginatedSchema, successResponseSchema, } from './core/responses.js';
31
23
  // ─── Validation: message keys and the wire shape of a failure ───────────────
32
- export { REQUEST_PART_VALUES, requestPartSchema, toValidationIssues, VALIDATION_MESSAGE, validationIssueSchema, } from './validation.js';
24
+ export { REQUEST_PART_VALUES, requestPartSchema, toValidationIssues, VALIDATION_MESSAGE, validationIssueSchema, } from './core/validation.js';
25
+ // ─── Account ─────────────────────────────────────────────────────────────────
26
+ export { deleteAccountResponseSchema, } from './domains/account/account.js';
27
+ export { AUDIT_ACTION_VALUES, auditActionSchema, auditActorSchema, auditEntrySchema, auditPageSchema, } from './domains/audit/audit.js';
28
+ // ─── Chat ────────────────────────────────────────────────────────────────────
29
+ export { CHAT_PRODUCT_ID, CHAT_SOCKET_REAUTH_SECONDS, CHAT_TOKEN_REFRESH_MARGIN_SECONDS, chatAuthTokenSchema, chatConfigSchema, chatInvitationBodySchema, chatInvitationSchema, chatParticipantSchema, chatParticipantsBodySchema, chatParticipantsResponseSchema, chatProductIdSchema, openChatBodySchema, openChatResponseSchema, } from './domains/chat/chat.js';
30
+ // ─── Staff: overview, members, moderation, support, the team, the audit log ─
31
+ export { dashboardSchema } from './domains/dashboard/dashboard.js';
32
+ // ─── Discover ────────────────────────────────────────────────────────────────
33
+ export { discoverFacetsSchema, discoverPageSchema, discoverQuerySchema, } from './domains/discover/discover.js';
34
+ // ─── Feed: post, poll, comment, reaction ─────────────────────────────────────
35
+ export { attachedMediaSchema, authorParamsSchema, COMMENT_MAX_BODY_CHARS, CONTENT_KIND_VALUES, castVoteBodySchema, castVoteResponseSchema, commentPageSchema, commentParamsSchema, commentsQuerySchema, contentKindSchema, contentParamsSchema, contentTargetParamsSchema, createCommentBodySchema, createPollBodySchema, createPostBodySchema, createReportBodySchema, createReportResponseSchema, EDIT_WINDOW_MS, ENGAGEMENT_TARGET_KIND_VALUES, engagementTargetKindSchema, engagementTargetParamsSchema, FEED_SORT_VALUES, feedAuthorSchema, feedCommentSchema, feedImageSchema, feedItemParamsSchema, feedItemSchema, feedMediaSchema, feedPageSchema, feedPollSchema, feedPostSchema, feedQuerySchema, feedSortSchema, feedVideoSchema, linkPreviewSchema, MAX_TOPICS, POLL_MAX_DURATION_MS, POLL_MAX_OPTIONS, POLL_MIN_DURATION_MS, POLL_MIN_OPTIONS, POLL_OPTION_MAX_CHARS, POLL_QUESTION_MAX_CHARS, POST_MAX_BODY_CHARS, POST_MAX_MEDIA, pollOptionSchema, pollParamsSchema, REACTION_TYPE_VALUES, REPORT_REASON_VALUES, reactionCountsSchema, reactionTypeSchema, reportReasonSchema, setReactionBodySchema, setReactionResponseSchema, toggleBookmarkResponseSchema, updateCommentBodySchema, updatePostBodySchema, viewerStateSchema, } from './domains/feed/feed.js';
36
+ export { MEMBER_STATUS_VALUES, memberDetailSchema, memberDirectoryPageSchema, memberDirectoryQuerySchema, memberParamsSchema, memberStatusSchema, memberSummarySchema, suspendMemberBodySchema, suspensionSchema, } from './domains/members/members.js';
37
+ export { MODERATION_ACTION_VALUES, MODERATION_STATE_VALUES, moderationActionSchema, moderationContentQuerySchema, moderationDecisionBodySchema, moderationItemSchema, moderationPageSchema, moderationStateSchema, } from './domains/moderation/moderation.js';
38
+ // ─── Onboarding ──────────────────────────────────────────────────────────────
39
+ export { ageInYears, BUSINESS_TYPE_VALUES, businessTypeSchema, completeOnboardingBodySchema, completeOnboardingResponseSchema, contactLinksSchema, dateOfBirthSchema, EMPTY_ONBOARDING_VENTURE, FOUNDER_ONBOARDING_STEPS, GUIDELINES_VERSION, guidelinesVersionSchema, INTERESTS_MAX, INTERESTS_MIN, isoDateSchema, MAX_AGE_YEARS, MIN_AGE_YEARS, ONBOARDING_DRAFT_KEYS, ONBOARDING_STEP_FIELDS, ONBOARDING_STEP_KEYS, ONBOARDING_STEP_SCHEMAS, ONBOARDING_TOTAL_STEPS, onboardingDraftKeySchema, onboardingDraftSchema, onboardingFormSchema, onboardingProgressSchema, onboardingProgressUpdateSchema, onboardingStatusSchema, readOnboardingDraft, TEAM_SIZE_DIGITS_MAX, TOPIC_CATEGORIES, TOPIC_CATEGORY_KEYS, TOPIC_VALUES, topicSchema, } from './domains/onboarding/onboarding.js';
40
+ // ─── Founder profile ─────────────────────────────────────────────────────────
41
+ export { founderCardSchema, founderLinksSchema, founderProfileSchema, updateFounderProfileBodySchema, updateUsernameBodySchema, usernameAvailabilitySchema, ventureSchema, } from './domains/profile/founder-profile.js';
42
+ export { createTicketBodySchema, replyTicketBodySchema, savedReplyBodySchema, savedReplyListSchema, savedReplyParamsSchema, savedReplySchema, TICKET_ASSIGNEE_FILTER_VALUES, TICKET_CATEGORY_VALUES, TICKET_SCOPE_VALUES, TICKET_STATUS_VALUES, ticketAssigneeFilterSchema, ticketCategorySchema, ticketDetailSchema, ticketListQuerySchema, ticketMessageSchema, ticketPageSchema, ticketParamsSchema, ticketScopeSchema, ticketStatusSchema, ticketSummarySchema, } from './domains/support/support.js';
43
+ export { setMemberRolesBodySchema, setMemberRolesResponseSchema, teamMemberParamsSchema, teamMemberSchema, teamPageSchema, } from './domains/team/team.js';
44
+ // ─── Uploads: the key, the extensions, asking for a slot ────────────────────
45
+ export { UPLOAD_CONTENT_TYPES, UPLOAD_KEY_EXTENSIONS, UPLOAD_KEY_MAX_CHARS, UPLOAD_KEY_PATTERN, uploadKeyExtensionSchema, uploadKeySchema, uploadPresignBodySchema, uploadPresignResponseSchema, } from './domains/uploads/uploads.js';
33
46
  //# 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":"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","sourcesContent":["/**\n * founder-schema — Shared Zod schemas for Founder Circle\n *\n * The single source of truth consumed by founder-circle-backend, the web\n * client and the app client: every request, every response, every limit,\n * every error code. Publishing rule (TEAM.md 5a): the version only ever moves\n * on `dev`, never on a feat branch.\n *\n * @module founder-schema\n */\n\n// ─── Chat ────────────────────────────────────────────────────────────────────\nexport {\n CHAT_PRODUCT_ID,\n CHAT_SOCKET_REAUTH_SECONDS,\n CHAT_TOKEN_REFRESH_MARGIN_SECONDS,\n type ChatAuthToken,\n type ChatConfig,\n type ChatInvitation,\n type ChatInvitationBody,\n type ChatParticipant,\n type ChatParticipantsBody,\n type ChatParticipantsResponse,\n type ChatProductId,\n chatAuthTokenSchema,\n chatConfigSchema,\n chatInvitationBodySchema,\n chatInvitationSchema,\n chatParticipantSchema,\n chatParticipantsBodySchema,\n chatParticipantsResponseSchema,\n chatProductIdSchema,\n type OpenChatBody,\n type OpenChatResponse,\n openChatBodySchema,\n openChatResponseSchema,\n} from './chat.js';\n// ─── Common helpers and enums ────────────────────────────────────────────────\nexport {\n type CoordinatesQuery,\n type CoordinatesQueryInput,\n chosenUsernameSchema,\n coordinatesQuerySchema,\n emptyStringToUndefined,\n type FounderLocation,\n GENDER_VALUES,\n type Gender,\n GOAL_VALUES,\n type Goal,\n genderSchema,\n goalSchema,\n type HttpUrl,\n httpUrlSchema,\n INDUSTRY_VALUES,\n type Industry,\n industrySchema,\n isReservedUsername,\n locationSchema,\n type ObjectIdString,\n objectIdSchema,\n optionalTrimmedString,\n type PaginationQuery,\n type PaginationQueryInput,\n type Phone,\n paginationQuerySchema,\n phoneSchema,\n RESERVED_USERNAMES,\n type SafeUrl,\n SKILL_VALUES,\n type Skill,\n STARTUP_STAGE_VALUES,\n type StartupStage,\n type SuggestedLocation,\n safeUrlSchema,\n skillSchema,\n startupStageSchema,\n suggestedLocationSchema,\n USERNAME_MAX,\n USERNAME_MIN,\n type Username,\n usernameSchema,\n} from './common.js';\n// ─── Discover ────────────────────────────────────────────────────────────────\nexport {\n type DiscoverFacets,\n type DiscoverPage,\n type DiscoverQuery,\n type DiscoverQueryInput,\n discoverFacetsSchema,\n discoverPageSchema,\n discoverQuerySchema,\n} from './discover.js';\n// ─── Error codes ─────────────────────────────────────────────────────────────\nexport {\n API_ERROR_CODE,\n API_ERROR_CODE_VALUES,\n type ApiErrorCode,\n apiErrorCodeSchema,\n} from './errors.js';\n// ─── Feed: post, poll, comment, reaction ─────────────────────────────────────\nexport {\n type AttachedMedia,\n type AuthorParams,\n attachedMediaSchema,\n authorParamsSchema,\n type CastVoteBody,\n type CastVoteResponse,\n COMMENT_MAX_BODY_CHARS,\n CONTENT_KIND_VALUES,\n type CommentPage,\n type CommentParams,\n type CommentsQuery,\n type CommentsQueryInput,\n type ContentKind,\n type ContentParams,\n type ContentTargetParams,\n type CreateCommentBody,\n type CreatePollBody,\n type CreatePostBody,\n type CreateReportBody,\n type CreateReportResponse,\n castVoteBodySchema,\n castVoteResponseSchema,\n commentPageSchema,\n commentParamsSchema,\n commentsQuerySchema,\n contentKindSchema,\n contentParamsSchema,\n contentTargetParamsSchema,\n createCommentBodySchema,\n createPollBodySchema,\n createPostBodySchema,\n createReportBodySchema,\n createReportResponseSchema,\n EDIT_WINDOW_MS,\n ENGAGEMENT_TARGET_KIND_VALUES,\n type EngagementTargetKind,\n type EngagementTargetParams,\n engagementTargetKindSchema,\n engagementTargetParamsSchema,\n FEED_SORT_VALUES,\n type FeedAuthor,\n type FeedComment,\n type FeedImage,\n type FeedItem,\n type FeedItemParams,\n type FeedMedia,\n type FeedPage,\n type FeedPoll,\n type FeedPost,\n type FeedQuery,\n type FeedQueryInput,\n type FeedSort,\n type FeedVideo,\n feedAuthorSchema,\n feedCommentSchema,\n feedImageSchema,\n feedItemParamsSchema,\n feedItemSchema,\n feedMediaSchema,\n feedPageSchema,\n feedPollSchema,\n feedPostSchema,\n feedQuerySchema,\n feedSortSchema,\n feedVideoSchema,\n type LinkPreview,\n linkPreviewSchema,\n MAX_TOPICS,\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_QUESTION_MAX_CHARS,\n POST_MAX_BODY_CHARS,\n POST_MAX_MEDIA,\n type PollOption,\n type PollParams,\n pollOptionSchema,\n pollParamsSchema,\n REACTION_TYPE_VALUES,\n REPORT_REASON_VALUES,\n type ReactionCounts,\n type ReactionType,\n type ReportReason,\n reactionCountsSchema,\n reactionTypeSchema,\n reportReasonSchema,\n type SetReactionBody,\n type SetReactionResponse,\n setReactionBodySchema,\n setReactionResponseSchema,\n type ToggleBookmarkResponse,\n toggleBookmarkResponseSchema,\n type UpdateCommentBody,\n type UpdatePostBody,\n updateCommentBodySchema,\n updatePostBodySchema,\n type ViewerState,\n viewerStateSchema,\n} from './feed.js';\n// ─── Founder profile ─────────────────────────────────────────────────────────\nexport {\n type FounderCard,\n type FounderLinks,\n type FounderProfile,\n founderCardSchema,\n founderLinksSchema,\n founderProfileSchema,\n type UpdateFounderProfileBody,\n type UpdateUsernameBody,\n type UsernameAvailability,\n updateFounderProfileBodySchema,\n updateUsernameBodySchema,\n usernameAvailabilitySchema,\n type Venture,\n ventureSchema,\n} from './founder-profile.js';\n// ─── Limits: every length, size and count, by name ──────────────────────────\nexport {\n ABOUT_MAX,\n CHAT_PARTICIPANTS_MAX,\n CITY_MAX,\n COUNTRY_MAX,\n DISCOVER_FILTER_VALUES_MAX,\n DISCOVER_TEXT_MAX,\n DISPLAY_NAME_MAX,\n FOUNDED_YEAR_MIN,\n GOALS_MIN,\n HEADLINE_MAX,\n LINK_PREVIEW_DESCRIPTION_MAX,\n LINK_PREVIEW_TITLE_MAX,\n LINK_URL_MAX,\n MEDIA_ALT_MAX,\n PAGE_SIZE_DEFAULT,\n PAGE_SIZE_MAX,\n REPORT_NOTE_MAX,\n SKILLS_MAX,\n STATE_MAX,\n TEAM_SIZE_MAX,\n TEAM_SIZE_MIN,\n UPLOAD_MAX_BYTES,\n VENTURE_NAME_MAX,\n VENTURE_TAGLINE_MAX,\n} from './limits.js';\n// ─── Onboarding ──────────────────────────────────────────────────────────────\nexport {\n ageInYears,\n BUSINESS_TYPE_VALUES,\n type BusinessType,\n businessTypeSchema,\n type CompleteOnboardingBody,\n type CompleteOnboardingBodyInput,\n type CompleteOnboardingResponse,\n type ContactLinks,\n completeOnboardingBodySchema,\n completeOnboardingResponseSchema,\n contactLinksSchema,\n type DateOfBirth,\n dateOfBirthSchema,\n FOUNDER_ONBOARDING_STEPS,\n GUIDELINES_VERSION,\n guidelinesVersionSchema,\n INTERESTS_MAX,\n INTERESTS_MIN,\n type IsoDate,\n isoDateSchema,\n MAX_AGE_YEARS,\n MIN_AGE_YEARS,\n ONBOARDING_DRAFT_KEYS,\n ONBOARDING_STEP_FIELDS,\n ONBOARDING_STEP_KEYS,\n ONBOARDING_STEP_SCHEMAS,\n ONBOARDING_TOTAL_STEPS,\n type OnboardingDraft,\n type OnboardingDraftKey,\n type OnboardingField,\n type OnboardingForm,\n type OnboardingProgress,\n type OnboardingProgressUpdate,\n type OnboardingStatus,\n type OnboardingStepBody,\n type OnboardingStepConfig,\n type OnboardingStepKey,\n onboardingDraftKeySchema,\n onboardingDraftSchema,\n onboardingFormSchema,\n onboardingProgressSchema,\n onboardingProgressUpdateSchema,\n onboardingStatusSchema,\n TOPIC_CATEGORIES,\n TOPIC_CATEGORY_KEYS,\n TOPIC_VALUES,\n type Topic,\n type TopicCategory,\n type TopicCategoryKey,\n topicSchema,\n} from './onboarding.js';\n// ─── Response envelopes ──────────────────────────────────────────────────────\nexport {\n type ApiError,\n type ApiErrorDetails,\n apiErrorDetailsSchema,\n apiErrorSchema,\n type ErrorResponse,\n errorResponseSchema,\n type IdResponse,\n idResponseSchema,\n paginatedSchema,\n successResponseSchema,\n} from './responses/index.js';\n// ─── Uploads: the key, the extensions, asking for a slot ────────────────────\nexport {\n UPLOAD_CONTENT_TYPES,\n UPLOAD_KEY_EXTENSIONS,\n UPLOAD_KEY_MAX_CHARS,\n UPLOAD_KEY_PATTERN,\n type UploadKey,\n type UploadKeyExtension,\n type UploadPresignBody,\n type UploadPresignResponse,\n uploadKeyExtensionSchema,\n uploadKeySchema,\n uploadPresignBodySchema,\n uploadPresignResponseSchema,\n} from './uploads.js';\n// ─── Validation: message keys and the wire shape of a failure ───────────────\nexport {\n REQUEST_PART_VALUES,\n type RequestPart,\n requestPartSchema,\n toValidationIssues,\n VALIDATION_MESSAGE,\n type ValidationIssue,\n type ValidationMessageKey,\n validationIssueSchema,\n} from './validation.js';\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * founder-schema — Shared Zod schemas for Founder Circle\n *\n * The single source of truth consumed by founder-circle-backend, the web\n * client and the app client: every request, every response, every limit,\n * every error code. Publishing rule (TEAM.md 5a): the version only ever moves\n * on `dev`, never on a feat branch.\n *\n * @module founder-schema\n */\n\n// ─── Access: roles, permissions (CASL), the MPIN and the active role ────────\nexport {\n type ChangeMpinBody,\n changeMpinBodySchema,\n type MeAccessResponse,\n MPIN_LENGTH,\n MPIN_LOCK_MS,\n MPIN_MAX_ATTEMPTS,\n meAccessResponseSchema,\n mpinSchema,\n type SetMpinBody,\n type SwitchRoleBody,\n setMpinBodySchema,\n switchRoleBodySchema,\n} from './access/access.js';\nexport {\n ACTION_VALUES,\n type Action,\n type AppAbility,\n actionSchema,\n type PackedRules,\n packedRulesSchema,\n SUBJECT_VALUES,\n type Subject,\n type SubjectFields,\n type SubjectInstance,\n subjectSchema,\n} from './access/permissions.js';\nexport {\n ACTIVE_ROLE_TTL_MS,\n canGrantRole,\n isPlatformRole,\n MEMBER_ROLE,\n PLATFORM_ROLE_VALUES,\n type PlatformRole,\n platformRoleSchema,\n ROLE_GRANTED_BY,\n ROLE_VALUES,\n type Role,\n roleSchema,\n} from './access/roles.js';\n// ─── Common helpers and enums ────────────────────────────────────────────────\nexport {\n type CoordinatesQuery,\n type CoordinatesQueryInput,\n chosenUsernameSchema,\n coordinatesQuerySchema,\n emptyStringToUndefined,\n type FounderLocation,\n GENDER_VALUES,\n type Gender,\n GOAL_VALUES,\n type Goal,\n genderSchema,\n goalSchema,\n type HttpUrl,\n httpUrlSchema,\n INDUSTRY_VALUES,\n type Industry,\n industrySchema,\n isReservedUsername,\n locationSchema,\n type ObjectIdString,\n objectIdSchema,\n optionalTrimmedString,\n type PaginationQuery,\n type PaginationQueryInput,\n type Phone,\n paginationQuerySchema,\n phoneSchema,\n RESERVED_USERNAMES,\n type SafeUrl,\n SKILL_VALUES,\n type Skill,\n STARTUP_STAGE_VALUES,\n type StartupStage,\n type SuggestedLocation,\n safeUrlSchema,\n skillSchema,\n startupStageSchema,\n suggestedLocationSchema,\n USERNAME_MAX,\n USERNAME_MIN,\n type Username,\n usernameSchema,\n} from './core/common.js';\n// ─── Error codes ─────────────────────────────────────────────────────────────\nexport {\n API_ERROR_CODE,\n API_ERROR_CODE_VALUES,\n type ApiErrorCode,\n apiErrorCodeSchema,\n} from './core/errors.js';\n// ─── Limits: every length, size and count, by name ──────────────────────────\nexport {\n ABOUT_MAX,\n CHAT_PARTICIPANTS_MAX,\n CITY_MAX,\n COUNTRY_MAX,\n DISCOVER_FILTER_VALUES_MAX,\n DISCOVER_TEXT_MAX,\n DISPLAY_NAME_MAX,\n FOUNDED_YEAR_MIN,\n GOALS_MIN,\n HEADLINE_MAX,\n LINK_PREVIEW_DESCRIPTION_MAX,\n LINK_PREVIEW_TITLE_MAX,\n LINK_URL_MAX,\n MEDIA_ALT_MAX,\n MEMBER_SEARCH_MAX,\n MODERATION_EXCERPT_MAX,\n MODERATION_NOTE_MAX,\n PAGE_SIZE_DEFAULT,\n PAGE_SIZE_MAX,\n REPORT_NOTE_MAX,\n SAVED_REPLIES_MAX,\n SAVED_REPLY_BODY_MAX,\n SAVED_REPLY_TITLE_MAX,\n SKILLS_MAX,\n STATE_MAX,\n SUSPENSION_REASON_MAX,\n SUSPENSION_REASON_MIN,\n TEAM_SIZE_MAX,\n TEAM_SIZE_MIN,\n TICKET_MESSAGE_MAX,\n TICKET_MESSAGES_MAX,\n TICKET_SUBJECT_MAX,\n TICKET_SUBJECT_MIN,\n UPLOAD_MAX_BYTES,\n VENTURE_NAME_MAX,\n VENTURE_TAGLINE_MAX,\n} from './core/limits.js';\n// ─── Response envelopes ──────────────────────────────────────────────────────\nexport {\n type ApiError,\n type ApiErrorDetails,\n apiErrorDetailsSchema,\n apiErrorSchema,\n type ErrorResponse,\n errorResponseSchema,\n type IdResponse,\n idResponseSchema,\n paginatedSchema,\n successResponseSchema,\n} from './core/responses.js';\n// ─── Validation: message keys and the wire shape of a failure ───────────────\nexport {\n REQUEST_PART_VALUES,\n type RequestPart,\n requestPartSchema,\n toValidationIssues,\n VALIDATION_MESSAGE,\n type ValidationIssue,\n type ValidationMessageKey,\n validationIssueSchema,\n} from './core/validation.js';\n// ─── Account ─────────────────────────────────────────────────────────────────\nexport {\n type DeleteAccountResponse,\n deleteAccountResponseSchema,\n} from './domains/account/account.js';\nexport {\n AUDIT_ACTION_VALUES,\n type AuditAction,\n type AuditActor,\n type AuditEntry,\n type AuditPage,\n auditActionSchema,\n auditActorSchema,\n auditEntrySchema,\n auditPageSchema,\n} from './domains/audit/audit.js';\n// ─── Chat ────────────────────────────────────────────────────────────────────\nexport {\n CHAT_PRODUCT_ID,\n CHAT_SOCKET_REAUTH_SECONDS,\n CHAT_TOKEN_REFRESH_MARGIN_SECONDS,\n type ChatAuthToken,\n type ChatConfig,\n type ChatInvitation,\n type ChatInvitationBody,\n type ChatParticipant,\n type ChatParticipantsBody,\n type ChatParticipantsResponse,\n type ChatProductId,\n chatAuthTokenSchema,\n chatConfigSchema,\n chatInvitationBodySchema,\n chatInvitationSchema,\n chatParticipantSchema,\n chatParticipantsBodySchema,\n chatParticipantsResponseSchema,\n chatProductIdSchema,\n type OpenChatBody,\n type OpenChatResponse,\n openChatBodySchema,\n openChatResponseSchema,\n} from './domains/chat/chat.js';\n// ─── Staff: overview, members, moderation, support, the team, the audit log ─\nexport { type Dashboard, dashboardSchema } from './domains/dashboard/dashboard.js';\n// ─── Discover ────────────────────────────────────────────────────────────────\nexport {\n type DiscoverFacets,\n type DiscoverPage,\n type DiscoverQuery,\n type DiscoverQueryInput,\n discoverFacetsSchema,\n discoverPageSchema,\n discoverQuerySchema,\n} from './domains/discover/discover.js';\n// ─── Feed: post, poll, comment, reaction ─────────────────────────────────────\nexport {\n type AttachedMedia,\n type AuthorParams,\n attachedMediaSchema,\n authorParamsSchema,\n type CastVoteBody,\n type CastVoteResponse,\n COMMENT_MAX_BODY_CHARS,\n CONTENT_KIND_VALUES,\n type CommentPage,\n type CommentParams,\n type CommentsQuery,\n type CommentsQueryInput,\n type ContentKind,\n type ContentParams,\n type ContentTargetParams,\n type CreateCommentBody,\n type CreatePollBody,\n type CreatePostBody,\n type CreateReportBody,\n type CreateReportResponse,\n castVoteBodySchema,\n castVoteResponseSchema,\n commentPageSchema,\n commentParamsSchema,\n commentsQuerySchema,\n contentKindSchema,\n contentParamsSchema,\n contentTargetParamsSchema,\n createCommentBodySchema,\n createPollBodySchema,\n createPostBodySchema,\n createReportBodySchema,\n createReportResponseSchema,\n EDIT_WINDOW_MS,\n ENGAGEMENT_TARGET_KIND_VALUES,\n type EngagementTargetKind,\n type EngagementTargetParams,\n engagementTargetKindSchema,\n engagementTargetParamsSchema,\n FEED_SORT_VALUES,\n type FeedAuthor,\n type FeedComment,\n type FeedImage,\n type FeedItem,\n type FeedItemParams,\n type FeedMedia,\n type FeedPage,\n type FeedPoll,\n type FeedPost,\n type FeedQuery,\n type FeedQueryInput,\n type FeedSort,\n type FeedVideo,\n feedAuthorSchema,\n feedCommentSchema,\n feedImageSchema,\n feedItemParamsSchema,\n feedItemSchema,\n feedMediaSchema,\n feedPageSchema,\n feedPollSchema,\n feedPostSchema,\n feedQuerySchema,\n feedSortSchema,\n feedVideoSchema,\n type LinkPreview,\n linkPreviewSchema,\n MAX_TOPICS,\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_QUESTION_MAX_CHARS,\n POST_MAX_BODY_CHARS,\n POST_MAX_MEDIA,\n type PollOption,\n type PollParams,\n pollOptionSchema,\n pollParamsSchema,\n REACTION_TYPE_VALUES,\n REPORT_REASON_VALUES,\n type ReactionCounts,\n type ReactionType,\n type ReportReason,\n reactionCountsSchema,\n reactionTypeSchema,\n reportReasonSchema,\n type SetReactionBody,\n type SetReactionResponse,\n setReactionBodySchema,\n setReactionResponseSchema,\n type ToggleBookmarkResponse,\n toggleBookmarkResponseSchema,\n type UpdateCommentBody,\n type UpdatePostBody,\n updateCommentBodySchema,\n updatePostBodySchema,\n type ViewerState,\n viewerStateSchema,\n} from './domains/feed/feed.js';\nexport {\n MEMBER_STATUS_VALUES,\n type MemberDetail,\n type MemberDirectoryPage,\n type MemberDirectoryQuery,\n type MemberDirectoryQueryInput,\n type MemberParams,\n type MemberStatus,\n type MemberSummary,\n memberDetailSchema,\n memberDirectoryPageSchema,\n memberDirectoryQuerySchema,\n memberParamsSchema,\n memberStatusSchema,\n memberSummarySchema,\n type SuspendMemberBody,\n type Suspension,\n suspendMemberBodySchema,\n suspensionSchema,\n} from './domains/members/members.js';\nexport {\n MODERATION_ACTION_VALUES,\n MODERATION_STATE_VALUES,\n type ModerationAction,\n type ModerationContentQuery,\n type ModerationContentQueryInput,\n type ModerationDecisionBody,\n type ModerationItem,\n type ModerationPage,\n type ModerationState,\n moderationActionSchema,\n moderationContentQuerySchema,\n moderationDecisionBodySchema,\n moderationItemSchema,\n moderationPageSchema,\n moderationStateSchema,\n} from './domains/moderation/moderation.js';\n// ─── Onboarding ──────────────────────────────────────────────────────────────\nexport {\n ageInYears,\n BUSINESS_TYPE_VALUES,\n type BusinessType,\n businessTypeSchema,\n type CompleteOnboardingBody,\n type CompleteOnboardingBodyInput,\n type CompleteOnboardingResponse,\n type ContactLinks,\n completeOnboardingBodySchema,\n completeOnboardingResponseSchema,\n contactLinksSchema,\n type DateOfBirth,\n dateOfBirthSchema,\n EMPTY_ONBOARDING_VENTURE,\n FOUNDER_ONBOARDING_STEPS,\n GUIDELINES_VERSION,\n guidelinesVersionSchema,\n INTERESTS_MAX,\n INTERESTS_MIN,\n type IsoDate,\n isoDateSchema,\n MAX_AGE_YEARS,\n MIN_AGE_YEARS,\n ONBOARDING_DRAFT_KEYS,\n ONBOARDING_STEP_FIELDS,\n ONBOARDING_STEP_KEYS,\n ONBOARDING_STEP_SCHEMAS,\n ONBOARDING_TOTAL_STEPS,\n type OnboardingDraft,\n type OnboardingDraftKey,\n type OnboardingField,\n type OnboardingForm,\n type OnboardingProgress,\n type OnboardingProgressUpdate,\n type OnboardingStatus,\n type OnboardingStepBody,\n type OnboardingStepConfig,\n type OnboardingStepKey,\n onboardingDraftKeySchema,\n onboardingDraftSchema,\n onboardingFormSchema,\n onboardingProgressSchema,\n onboardingProgressUpdateSchema,\n onboardingStatusSchema,\n readOnboardingDraft,\n TEAM_SIZE_DIGITS_MAX,\n TOPIC_CATEGORIES,\n TOPIC_CATEGORY_KEYS,\n TOPIC_VALUES,\n type Topic,\n type TopicCategory,\n type TopicCategoryKey,\n topicSchema,\n} from './domains/onboarding/onboarding.js';\n// ─── Founder profile ─────────────────────────────────────────────────────────\nexport {\n type FounderCard,\n type FounderLinks,\n type FounderProfile,\n founderCardSchema,\n founderLinksSchema,\n founderProfileSchema,\n type UpdateFounderProfileBody,\n type UpdateUsernameBody,\n type UsernameAvailability,\n updateFounderProfileBodySchema,\n updateUsernameBodySchema,\n usernameAvailabilitySchema,\n type Venture,\n ventureSchema,\n} from './domains/profile/founder-profile.js';\nexport {\n type CreateTicketBody,\n createTicketBodySchema,\n type ReplyTicketBody,\n replyTicketBodySchema,\n type SavedReply,\n type SavedReplyBody,\n type SavedReplyList,\n type SavedReplyParams,\n savedReplyBodySchema,\n savedReplyListSchema,\n savedReplyParamsSchema,\n savedReplySchema,\n TICKET_ASSIGNEE_FILTER_VALUES,\n TICKET_CATEGORY_VALUES,\n TICKET_SCOPE_VALUES,\n TICKET_STATUS_VALUES,\n type TicketAssigneeFilter,\n type TicketCategory,\n type TicketDetail,\n type TicketListQuery,\n type TicketListQueryInput,\n type TicketMessage,\n type TicketPage,\n type TicketParams,\n type TicketScope,\n type TicketStatus,\n type TicketSummary,\n ticketAssigneeFilterSchema,\n ticketCategorySchema,\n ticketDetailSchema,\n ticketListQuerySchema,\n ticketMessageSchema,\n ticketPageSchema,\n ticketParamsSchema,\n ticketScopeSchema,\n ticketStatusSchema,\n ticketSummarySchema,\n} from './domains/support/support.js';\nexport {\n type SetMemberRolesBody,\n type SetMemberRolesResponse,\n setMemberRolesBodySchema,\n setMemberRolesResponseSchema,\n type TeamMember,\n type TeamMemberParams,\n type TeamPage,\n teamMemberParamsSchema,\n teamMemberSchema,\n teamPageSchema,\n} from './domains/team/team.js';\n// ─── Uploads: the key, the extensions, asking for a slot ────────────────────\nexport {\n UPLOAD_CONTENT_TYPES,\n UPLOAD_KEY_EXTENSIONS,\n UPLOAD_KEY_MAX_CHARS,\n UPLOAD_KEY_PATTERN,\n type UploadKey,\n type UploadKeyExtension,\n type UploadPresignBody,\n type UploadPresignResponse,\n uploadKeyExtensionSchema,\n uploadKeySchema,\n uploadPresignBodySchema,\n uploadPresignResponseSchema,\n} from './domains/uploads/uploads.js';\n"]}
@@ -239,18 +239,29 @@ export declare const contactLinksSchema: z.ZodObject<{
239
239
  instagram: z.ZodOptional<z.ZodURL>;
240
240
  }, z.core.$strip>;
241
241
  export type ContactLinks = z.infer<typeof contactLinksSchema>;
242
+ /** A team size has at most this many digits: `TEAM_SIZE_MAX` written out. */
243
+ export declare const TEAM_SIZE_DIGITS_MAX: number;
242
244
  /**
243
- * The wizard's working shape.
245
+ * The answers so far, keyed by the finish body's own field names: what each
246
+ * step SAVES (`PATCH /onboarding`, merged per field), what `GET` hands back
247
+ * to resume, and so the only keys a draft may hold
248
+ * (`ONBOARDING_DRAFT_KEYS`).
244
249
  *
245
- * Every choice is nullable because "not answered yet" is a real state here and
246
- * is NOT the same as "answered with nothing". Arrays start empty. Nothing in
247
- * this schema is required, on purpose: it describes a form somebody is halfway
248
- * through, and the rules that decide whether they may FINISH live in
249
- * `completeOnboardingBodySchema`.
250
+ * RAW, on purpose: a draft is what the member TYPED, not what Finish will send.
251
+ * A half-typed link is ordinary text, a team size is digits as typed, and every
252
+ * choice is `null` until made ("not answered" is not "answered with nothing").
253
+ * Nothing here is required; whether a member may FINISH is
254
+ * `completeOnboardingBodySchema`'s decision, and the client builds that body
255
+ * from these answers.
250
256
  *
251
- * Text inputs stay text here (`teamSize`, `dateOfBirth`), because that is what
252
- * an input holds while somebody types; the form converts them when it builds
253
- * the finish body, which takes real numbers.
257
+ * Screens may hold a different shape on top of this one (the web draws first
258
+ * and last name as two fields and joins them into `displayName`). Derive that
259
+ * type from `OnboardingForm` rather than writing it out, so a field added here
260
+ * reaches every screen.
261
+ *
262
+ * A stored draft is UNTRUSTED when it comes back: an older client, or another
263
+ * one, wrote it, and the server stores values opaquely. Read it with
264
+ * `readOnboardingDraft`, never by casting.
254
265
  */
255
266
  export declare const onboardingFormSchema: z.ZodObject<{
256
267
  displayName: z.ZodString;
@@ -264,11 +275,28 @@ export declare const onboardingFormSchema: z.ZodObject<{
264
275
  headline: z.ZodString;
265
276
  about: z.ZodString;
266
277
  avatarUploadKey: z.ZodNullable<z.ZodString>;
278
+ skills: z.ZodArray<z.ZodEnum<{
279
+ engineering: "engineering";
280
+ product: "product";
281
+ design: "design";
282
+ data: "data";
283
+ growth: "growth";
284
+ sales: "sales";
285
+ marketing: "marketing";
286
+ operations: "operations";
287
+ finance: "finance";
288
+ legal: "legal";
289
+ hr_people: "hr_people";
290
+ supply_chain: "supply_chain";
291
+ research: "research";
292
+ fundraising: "fundraising";
293
+ community: "community";
294
+ }>>;
267
295
  phone: z.ZodString;
268
296
  links: z.ZodObject<{
269
- linkedin: z.ZodOptional<z.ZodURL>;
270
- x: z.ZodOptional<z.ZodURL>;
271
- instagram: z.ZodOptional<z.ZodURL>;
297
+ linkedin: z.ZodString;
298
+ x: z.ZodString;
299
+ instagram: z.ZodString;
272
300
  }, z.core.$strip>;
273
301
  location: z.ZodNullable<z.ZodObject<{
274
302
  city: z.ZodString;
@@ -360,9 +388,8 @@ export declare const onboardingFormSchema: z.ZodObject<{
360
388
  social_enterprise: "social_enterprise";
361
389
  education_access: "education_access";
362
390
  }>>;
363
- venture: z.ZodNullable<z.ZodObject<{
391
+ venture: z.ZodObject<{
364
392
  name: z.ZodString;
365
- tagline: z.ZodString;
366
393
  website: z.ZodString;
367
394
  industry: z.ZodNullable<z.ZodEnum<{
368
395
  agritech: "agritech";
@@ -398,32 +425,31 @@ export declare const onboardingFormSchema: z.ZodObject<{
398
425
  exited: "exited";
399
426
  }>>;
400
427
  teamSize: z.ZodString;
401
- }, z.core.$strip>>;
428
+ }, z.core.$strip>;
402
429
  businessType: z.ZodNullable<z.ZodEnum<{
403
430
  startup: "startup";
404
431
  sme: "sme";
405
432
  enterprise: "enterprise";
406
433
  }>>;
407
- skills: z.ZodArray<z.ZodEnum<{
408
- engineering: "engineering";
409
- product: "product";
410
- design: "design";
411
- data: "data";
412
- growth: "growth";
413
- sales: "sales";
414
- marketing: "marketing";
415
- operations: "operations";
416
- finance: "finance";
417
- legal: "legal";
418
- hr_people: "hr_people";
419
- supply_chain: "supply_chain";
420
- research: "research";
421
- fundraising: "fundraising";
422
- community: "community";
423
- }>>;
424
434
  guidelinesVersion: z.ZodNullable<z.ZodString>;
425
435
  }, z.core.$strip>;
426
436
  export type OnboardingForm = z.infer<typeof onboardingFormSchema>;
437
+ /** The business step before anything is chosen. */
438
+ export declare const EMPTY_ONBOARDING_VENTURE: OnboardingForm['venture'];
439
+ /**
440
+ * A stored draft as an `OnboardingForm`, FIELD BY FIELD.
441
+ *
442
+ * Every field is checked against its own vocabulary and cut to its own limit;
443
+ * one that does not fit becomes "not answered" (`''`, `null`, `[]`) and the
444
+ * rest of the draft survives. Never coerced into a different answer: a value
445
+ * outside a vocabulary is dropped, not mapped to the nearest one. A photo key
446
+ * is never restored (see `avatarUploadKey`), and agreement only counts for the
447
+ * CURRENT guidelines.
448
+ *
449
+ * It fills in no answer the member did not give: a blank country stays blank.
450
+ * Whatever a screen shows by default is that screen's choice.
451
+ */
452
+ export declare function readOnboardingDraft(draft: unknown): OnboardingForm;
427
453
  /**
428
454
  * What the client sends to finish. Completed answers only.
429
455
  *
@@ -1 +1 @@
1
- {"version":3,"file":"onboarding.d.ts","sourceRoot":"","sources":["../src/onboarding.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"onboarding.d.ts","sourceRoot":"","sources":["../src/onboarding.ts"],"names":[],"mappings":"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"}