@livdot-tech/contracts 1.11.12 → 1.11.13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/auth/index.js +1 -1
- package/dist/auth/index.mjs +1 -1
- package/dist/booking/index.d.mts +8 -7
- package/dist/booking/index.d.ts +8 -7
- package/dist/booking/index.js +1 -1
- package/dist/booking/index.mjs +1 -1
- package/dist/{chunk-O4FQLJ2O.mjs → chunk-42U3KNVH.mjs} +2 -2
- package/dist/{chunk-O4FQLJ2O.mjs.map → chunk-42U3KNVH.mjs.map} +1 -1
- package/dist/{chunk-L26MD3EM.mjs → chunk-B7O2NN3X.mjs} +2 -2
- package/dist/chunk-B7O2NN3X.mjs.map +1 -0
- package/dist/chunk-DWFDZJGV.js +2 -0
- package/dist/chunk-DWFDZJGV.js.map +1 -0
- package/dist/{chunk-INCJR5IC.mjs → chunk-EC7CB75Z.mjs} +2 -2
- package/dist/{chunk-INCJR5IC.mjs.map → chunk-EC7CB75Z.mjs.map} +1 -1
- package/dist/{chunk-Q223XBEP.js → chunk-JPTEPX6P.js} +2 -2
- package/dist/{chunk-Q223XBEP.js.map → chunk-JPTEPX6P.js.map} +1 -1
- package/dist/{chunk-MVQEFN65.js → chunk-MYRGUNQ4.js} +2 -2
- package/dist/chunk-MYRGUNQ4.js.map +1 -0
- package/dist/{chunk-KZ2OWUX4.mjs → chunk-PN2BNA6L.mjs} +2 -2
- package/dist/{chunk-KZ2OWUX4.mjs.map → chunk-PN2BNA6L.mjs.map} +1 -1
- package/dist/chunk-PVVPURYV.mjs +2 -0
- package/dist/chunk-PVVPURYV.mjs.map +1 -0
- package/dist/chunk-TPEL6PL7.js +2 -0
- package/dist/chunk-TPEL6PL7.js.map +1 -0
- package/dist/chunk-URFS7U34.mjs +2 -0
- package/dist/chunk-URFS7U34.mjs.map +1 -0
- package/dist/{chunk-CMQ2CLPC.js → chunk-X4MIPWKH.js} +2 -2
- package/dist/{chunk-CMQ2CLPC.js.map → chunk-X4MIPWKH.js.map} +1 -1
- package/dist/{chunk-EHIZAQ4M.js → chunk-YWRIAUWJ.js} +2 -2
- package/dist/{chunk-EHIZAQ4M.js.map → chunk-YWRIAUWJ.js.map} +1 -1
- package/dist/index.js +1 -1
- package/dist/index.mjs +1 -1
- package/dist/marketplace/index.js +1 -1
- package/dist/marketplace/index.mjs +1 -1
- package/dist/notification/index.js +1 -1
- package/dist/notification/index.mjs +1 -1
- package/dist/user/index.d.mts +2 -0
- package/dist/user/index.d.ts +2 -0
- package/dist/user/index.js +1 -1
- package/dist/user/index.mjs +1 -1
- package/package.json +1 -1
- package/dist/chunk-46C4WZYK.mjs +0 -2
- package/dist/chunk-46C4WZYK.mjs.map +0 -1
- package/dist/chunk-6X34AE7I.js +0 -2
- package/dist/chunk-6X34AE7I.js.map +0 -1
- package/dist/chunk-ET47ODLM.mjs +0 -2
- package/dist/chunk-ET47ODLM.mjs.map +0 -1
- package/dist/chunk-L26MD3EM.mjs.map +0 -1
- package/dist/chunk-MVQEFN65.js.map +0 -1
- package/dist/chunk-RAOMJYKX.js +0 -2
- package/dist/chunk-RAOMJYKX.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/auth/auth.enums.ts","../src/auth/auth.schemas.ts","../src/auth/mfa.enums.ts","../src/auth/mfa.schemas.ts"],"names":["IdentityProvider","LinkRequiredReasonEnum","OauthResolveKind","PASSWORD_REGEX","PASSWORD_MESSAGE","PasswordSchema","z","RegisterRequestSchema","UserRole","RegisterResponseSchema","LoginRequestSchema","VerifyOtpRequestSchema","ResendOtpRequestSchema","VerifyOtpResponseSchema","LoginResponseSchema","SwitchProfileRequestSchema","SwitchProfileResponseSchema","RefreshTokenRequestSchema","LogoutRequestSchema","ForgotPasswordRequestSchema","ForgotPasswordResponseSchema","ResetPasswordRequestSchema","ChangePasswordRequestSchema","OauthStartQuerySchema","OauthStartResponseSchema","OauthExchangeRequestSchema","OauthDirectTokenRequestSchema","OauthLinkCompleteRequestSchema","v","OauthLinkSendOtpRequestSchema","LinkRequiredResponseSchema","OauthLinkSendOtpResponseSchema","ProvidersListItemSchema","ProvidersListResponseSchema","OauthLinkCompleteEmailRequestSchema","ConfirmPasswordSchema","ReauthTokenResponseSchema","MFA_ACTIONS","TotpCodeSchema","RecoveryCodeSchema","EnableMfaBodySchema","DisableMfaBodySchema","MfaChallengeBodySchema","MfaVerifyBodySchema"],"mappings":"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","file":"chunk-INCJR5IC.mjs","sourcesContent":["export const IdentityProvider = {\n GOOGLE: 'GOOGLE',\n APPLE: 'APPLE',\n FACEBOOK: 'FACEBOOK',\n TWITTER: 'TWITTER',\n} as const;\nexport type IdentityProvider = (typeof IdentityProvider)[keyof typeof IdentityProvider];\nexport const LinkRequiredReasonEnum = {\n EMAIL_MATCH: 'email_match',\n EMAIL_MISS: 'email_missing',\n} as const;\nexport type LinkRequiredReasonEnum =\n (typeof LinkRequiredReasonEnum)[keyof typeof LinkRequiredReasonEnum];\nexport const OauthResolveKind = {\n SIGNED_IN: 'signed_in',\n SIGNED_UP: 'signed_up',\n LINK_REQUIRED: 'link_required',\n} as const;\nexport type OauthResolveKind = (typeof OauthResolveKind)[keyof typeof OauthResolveKind];\n","import { z } from 'zod';\nimport { UserRole } from '../user';\nimport { IdentityProvider, LinkRequiredReasonEnum } from './auth.enums';\n\nconst PASSWORD_REGEX = new RegExp(\n '^(?=.*?[A-Z])(?=.*?[a-z])(?=.*?[0-9])(?=.*?[ !\"#$%&\\'()*+,-./:;<=>?@[\\\\]^_`{|}~]).{8,}$',\n);\n\nconst PASSWORD_MESSAGE =\n 'Password must be at least 8 characters and include an uppercase letter, a lowercase letter, a number, and a special character.';\n\nexport const PasswordSchema = z\n .string()\n .min(8, PASSWORD_MESSAGE)\n .regex(PASSWORD_REGEX, PASSWORD_MESSAGE);\n\n/**\n * Zod schema for registration request.\n */\nexport const RegisterRequestSchema = z.object({\n email: z.email().toLowerCase(),\n password: PasswordSchema,\n firstName: z.string(),\n lastName: z.string(),\n role: z.enum(UserRole).optional(),\n});\n\n/**\n * Zod schema for registration response.\n */\nexport const RegisterResponseSchema = z.object({\n username: z.string(),\n reference: z.string(),\n role: z.enum(UserRole).optional(),\n});\n\n/**\n * Zod schema for login request.\n */\nexport const LoginRequestSchema = z.object({\n email: z.email().toLowerCase(),\n password: PasswordSchema,\n role: z.enum(UserRole).optional(),\n});\n\nexport const VerifyOtpRequestSchema = z.object({\n otp: z.string().length(4),\n reference: z.string(),\n type: z.enum(['registration', 'passwordReset']),\n});\n\nexport const ResendOtpRequestSchema = z.object({\n reference: z.string(),\n type: z.enum(['registration', 'passwordReset']),\n});\n\nexport const VerifyOtpResponseSchema = z.object({\n isValid: z.boolean(),\n message: z.string(),\n reference: z.string().optional(),\n});\n\n/**\n * Zod schema for login response.\n */\nexport const LoginResponseSchema = z.object({\n AccessToken: z.string(),\n RefreshToken: z.string(),\n IdToken: z.string(),\n ExpiresIn: z.number(),\n TokenType: z.literal('Bearer'),\n /** The user's roles bitmask decomposed into an array of UserRole values. */\n availableRoles: z.array(z.enum(UserRole)),\n /** The role the user was last active as, or null on first login / never-switched. */\n lastActiveRole: z.enum(UserRole).nullable(),\n});\n\n/**\n * Zod schema for switch profile request.\n */\nexport const SwitchProfileRequestSchema = z.object({\n role: z.enum(UserRole),\n});\n\n/**\n * Zod schema for switch profile response.\n */\nexport const SwitchProfileResponseSchema = z.object({\n lastActiveRole: z.enum(UserRole),\n});\n\n/**\n * Zod schema for refresh token request.\n */\nexport const RefreshTokenRequestSchema = z.object({\n refreshToken: z.string(),\n});\n\nexport const LogoutRequestSchema = z.object({\n refreshToken: z.string(),\n accessToken: z.string(),\n});\n\n/**\n * Zod schema for forgot password request.\n */\nexport const ForgotPasswordRequestSchema = z.object({\n email: z.email().toLowerCase(),\n});\n\nexport const ForgotPasswordResponseSchema = z.object({\n destination: z.string(),\n deliveryMedium: z.string(),\n attributeName: z.string(),\n});\n\n/**\n * Zod schema for reset password request.\n */\nexport const ResetPasswordRequestSchema = z.object({\n token: z.string(),\n newPassword: PasswordSchema,\n});\n\n/**\n * Zod schema for change password request.\n */\nexport const ChangePasswordRequestSchema = z.object({\n currentPassword: PasswordSchema,\n newPassword: PasswordSchema,\n});\n\nexport const OauthStartQuerySchema = z.object({\n redirectTo: z.string().min(1).max(2048).optional(),\n});\n\nexport const OauthStartResponseSchema = z.object({\n authorizeUrl: z.url(),\n});\n\nexport const OauthExchangeRequestSchema = z.object({\n handoff: z.string().min(16).max(128),\n});\n\nexport const OauthDirectTokenRequestSchema = z.object({\n idToken: z.string().min(1).max(8192),\n nonce: z.string().min(8).max(256),\n authorizationCode: z.string().min(1).max(1024).optional(),\n user: z\n .object({\n name: z\n .object({\n firstName: z.string().max(128).nullable().optional(),\n lastName: z.string().max(128).nullable().optional(),\n })\n .optional(),\n })\n .optional(),\n});\n\nexport const OauthLinkCompleteRequestSchema = z\n .object({\n linkHandoff: z.string().min(16).max(128),\n password: PasswordSchema.optional(),\n otpReference: z.string().min(1).max(128).optional(),\n otp: z.string().length(4).optional(),\n })\n .refine(\n (v) => (v.password ? true : v.otpReference && v.otp),\n 'either `password` OR (`otpReference` AND `otp`) must be provided',\n );\n\nexport const OauthLinkSendOtpRequestSchema = z.object({\n linkHandoff: z.string().min(16).max(128),\n});\n\nexport const LinkRequiredResponseSchema = z.object({\n kind: z.literal('link_required'),\n reason: z.enum(LinkRequiredReasonEnum),\n linkHandoff: z.string(),\n maskedEmail: z.string(),\n hasPassword: z.boolean(),\n provider: z.enum(IdentityProvider),\n});\n\nexport const OauthLinkSendOtpResponseSchema = z.object({\n otpReference: z.string(),\n});\n\nexport const ProvidersListItemSchema = z.object({\n name: z.enum(IdentityProvider),\n enabled: z.boolean(),\n canSignUp: z.boolean(),\n});\n\nexport const ProvidersListResponseSchema = z.object({\n providers: z.array(ProvidersListItemSchema),\n});\n\nexport const OauthLinkCompleteEmailRequestSchema = z.object({\n linkHandoff: z.string().min(16).max(128),\n email: z.email().max(320),\n});\n\nexport const ConfirmPasswordSchema = z.object({\n password: PasswordSchema,\n});\n\nexport const ReauthTokenResponseSchema = z.object({\n reauthToken: z.string(),\n expiresAt: z.iso.datetime(), // ISO date string ;\n});\n","export const MFA_ACTIONS = {\n WITHDRAW: 'WITHDRAW',\n CANCEL_EVENT: 'CANCEL_EVENT',\n END_LIVE: 'END_LIVE',\n DISABLE_MFA: 'DISABLE_MFA',\n UPDATE_SETTLEMENT_ACCOUNT: 'UPDATE_SETTLEMENT_ACCOUNT',\n} as const;\n\nexport type MfaAction = (typeof MFA_ACTIONS)[keyof typeof MFA_ACTIONS];\n","import z from 'zod';\nimport { MFA_ACTIONS } from './mfa.enums';\n\nexport const TotpCodeSchema = z\n .string()\n .trim()\n .regex(/^\\d{6}$/, 'totpCode must be 6 digits');\n\nexport const RecoveryCodeSchema = z\n .string()\n .trim()\n .regex(/^[A-Za-z0-9-]{10,12}$/, 'recoveryCode is malformed');\n\nexport const EnableMfaBodySchema = z.object({\n totpCode: TotpCodeSchema,\n});\n\nexport const DisableMfaBodySchema = z\n .object({\n totpCode: TotpCodeSchema.optional(),\n recoveryCode: RecoveryCodeSchema.optional(),\n })\n .refine(\n (v) => !!v.totpCode !== !!v.recoveryCode,\n 'Provide exactly one of totpCode or recoveryCode',\n );\n\nexport const MfaChallengeBodySchema = z.object({\n action: z.enum(MFA_ACTIONS),\n});\n\nexport const MfaVerifyBodySchema = z\n .object({\n challengeToken: z.string().min(16, 'challengeToken is required'),\n totpCode: TotpCodeSchema.optional(),\n recoveryCode: RecoveryCodeSchema.optional(),\n })\n .refine(\n (v) => !!v.totpCode !== !!v.recoveryCode,\n 'Provide exactly one of totpCode or recoveryCode',\n );\n"]}
|
|
1
|
+
{"version":3,"sources":["../src/auth/auth.enums.ts","../src/auth/auth.schemas.ts","../src/auth/mfa.enums.ts","../src/auth/mfa.schemas.ts"],"names":["IdentityProvider","LinkRequiredReasonEnum","OauthResolveKind","PASSWORD_REGEX","PASSWORD_MESSAGE","PasswordSchema","z","RegisterRequestSchema","UserRole","RegisterResponseSchema","LoginRequestSchema","VerifyOtpRequestSchema","ResendOtpRequestSchema","VerifyOtpResponseSchema","LoginResponseSchema","SwitchProfileRequestSchema","SwitchProfileResponseSchema","RefreshTokenRequestSchema","LogoutRequestSchema","ForgotPasswordRequestSchema","ForgotPasswordResponseSchema","ResetPasswordRequestSchema","ChangePasswordRequestSchema","OauthStartQuerySchema","OauthStartResponseSchema","OauthExchangeRequestSchema","OauthDirectTokenRequestSchema","OauthLinkCompleteRequestSchema","v","OauthLinkSendOtpRequestSchema","LinkRequiredResponseSchema","OauthLinkSendOtpResponseSchema","ProvidersListItemSchema","ProvidersListResponseSchema","OauthLinkCompleteEmailRequestSchema","ConfirmPasswordSchema","ReauthTokenResponseSchema","MFA_ACTIONS","TotpCodeSchema","RecoveryCodeSchema","EnableMfaBodySchema","DisableMfaBodySchema","MfaChallengeBodySchema","MfaVerifyBodySchema"],"mappings":"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","file":"chunk-EC7CB75Z.mjs","sourcesContent":["export const IdentityProvider = {\n GOOGLE: 'GOOGLE',\n APPLE: 'APPLE',\n FACEBOOK: 'FACEBOOK',\n TWITTER: 'TWITTER',\n} as const;\nexport type IdentityProvider = (typeof IdentityProvider)[keyof typeof IdentityProvider];\nexport const LinkRequiredReasonEnum = {\n EMAIL_MATCH: 'email_match',\n EMAIL_MISS: 'email_missing',\n} as const;\nexport type LinkRequiredReasonEnum =\n (typeof LinkRequiredReasonEnum)[keyof typeof LinkRequiredReasonEnum];\nexport const OauthResolveKind = {\n SIGNED_IN: 'signed_in',\n SIGNED_UP: 'signed_up',\n LINK_REQUIRED: 'link_required',\n} as const;\nexport type OauthResolveKind = (typeof OauthResolveKind)[keyof typeof OauthResolveKind];\n","import { z } from 'zod';\nimport { UserRole } from '../user';\nimport { IdentityProvider, LinkRequiredReasonEnum } from './auth.enums';\n\nconst PASSWORD_REGEX = new RegExp(\n '^(?=.*?[A-Z])(?=.*?[a-z])(?=.*?[0-9])(?=.*?[ !\"#$%&\\'()*+,-./:;<=>?@[\\\\]^_`{|}~]).{8,}$',\n);\n\nconst PASSWORD_MESSAGE =\n 'Password must be at least 8 characters and include an uppercase letter, a lowercase letter, a number, and a special character.';\n\nexport const PasswordSchema = z\n .string()\n .min(8, PASSWORD_MESSAGE)\n .regex(PASSWORD_REGEX, PASSWORD_MESSAGE);\n\n/**\n * Zod schema for registration request.\n */\nexport const RegisterRequestSchema = z.object({\n email: z.email().toLowerCase(),\n password: PasswordSchema,\n firstName: z.string(),\n lastName: z.string(),\n role: z.enum(UserRole).optional(),\n});\n\n/**\n * Zod schema for registration response.\n */\nexport const RegisterResponseSchema = z.object({\n username: z.string(),\n reference: z.string(),\n role: z.enum(UserRole).optional(),\n});\n\n/**\n * Zod schema for login request.\n */\nexport const LoginRequestSchema = z.object({\n email: z.email().toLowerCase(),\n password: PasswordSchema,\n role: z.enum(UserRole).optional(),\n});\n\nexport const VerifyOtpRequestSchema = z.object({\n otp: z.string().length(4),\n reference: z.string(),\n type: z.enum(['registration', 'passwordReset']),\n});\n\nexport const ResendOtpRequestSchema = z.object({\n reference: z.string(),\n type: z.enum(['registration', 'passwordReset']),\n});\n\nexport const VerifyOtpResponseSchema = z.object({\n isValid: z.boolean(),\n message: z.string(),\n reference: z.string().optional(),\n});\n\n/**\n * Zod schema for login response.\n */\nexport const LoginResponseSchema = z.object({\n AccessToken: z.string(),\n RefreshToken: z.string(),\n IdToken: z.string(),\n ExpiresIn: z.number(),\n TokenType: z.literal('Bearer'),\n /** The user's roles bitmask decomposed into an array of UserRole values. */\n availableRoles: z.array(z.enum(UserRole)),\n /** The role the user was last active as, or null on first login / never-switched. */\n lastActiveRole: z.enum(UserRole).nullable(),\n});\n\n/**\n * Zod schema for switch profile request.\n */\nexport const SwitchProfileRequestSchema = z.object({\n role: z.enum(UserRole),\n});\n\n/**\n * Zod schema for switch profile response.\n */\nexport const SwitchProfileResponseSchema = z.object({\n lastActiveRole: z.enum(UserRole),\n});\n\n/**\n * Zod schema for refresh token request.\n */\nexport const RefreshTokenRequestSchema = z.object({\n refreshToken: z.string(),\n});\n\nexport const LogoutRequestSchema = z.object({\n refreshToken: z.string(),\n accessToken: z.string(),\n});\n\n/**\n * Zod schema for forgot password request.\n */\nexport const ForgotPasswordRequestSchema = z.object({\n email: z.email().toLowerCase(),\n});\n\nexport const ForgotPasswordResponseSchema = z.object({\n destination: z.string(),\n deliveryMedium: z.string(),\n attributeName: z.string(),\n});\n\n/**\n * Zod schema for reset password request.\n */\nexport const ResetPasswordRequestSchema = z.object({\n token: z.string(),\n newPassword: PasswordSchema,\n});\n\n/**\n * Zod schema for change password request.\n */\nexport const ChangePasswordRequestSchema = z.object({\n currentPassword: PasswordSchema,\n newPassword: PasswordSchema,\n});\n\nexport const OauthStartQuerySchema = z.object({\n redirectTo: z.string().min(1).max(2048).optional(),\n});\n\nexport const OauthStartResponseSchema = z.object({\n authorizeUrl: z.url(),\n});\n\nexport const OauthExchangeRequestSchema = z.object({\n handoff: z.string().min(16).max(128),\n});\n\nexport const OauthDirectTokenRequestSchema = z.object({\n idToken: z.string().min(1).max(8192),\n nonce: z.string().min(8).max(256),\n authorizationCode: z.string().min(1).max(1024).optional(),\n user: z\n .object({\n name: z\n .object({\n firstName: z.string().max(128).nullable().optional(),\n lastName: z.string().max(128).nullable().optional(),\n })\n .optional(),\n })\n .optional(),\n});\n\nexport const OauthLinkCompleteRequestSchema = z\n .object({\n linkHandoff: z.string().min(16).max(128),\n password: PasswordSchema.optional(),\n otpReference: z.string().min(1).max(128).optional(),\n otp: z.string().length(4).optional(),\n })\n .refine(\n (v) => (v.password ? true : v.otpReference && v.otp),\n 'either `password` OR (`otpReference` AND `otp`) must be provided',\n );\n\nexport const OauthLinkSendOtpRequestSchema = z.object({\n linkHandoff: z.string().min(16).max(128),\n});\n\nexport const LinkRequiredResponseSchema = z.object({\n kind: z.literal('link_required'),\n reason: z.enum(LinkRequiredReasonEnum),\n linkHandoff: z.string(),\n maskedEmail: z.string(),\n hasPassword: z.boolean(),\n provider: z.enum(IdentityProvider),\n});\n\nexport const OauthLinkSendOtpResponseSchema = z.object({\n otpReference: z.string(),\n});\n\nexport const ProvidersListItemSchema = z.object({\n name: z.enum(IdentityProvider),\n enabled: z.boolean(),\n canSignUp: z.boolean(),\n});\n\nexport const ProvidersListResponseSchema = z.object({\n providers: z.array(ProvidersListItemSchema),\n});\n\nexport const OauthLinkCompleteEmailRequestSchema = z.object({\n linkHandoff: z.string().min(16).max(128),\n email: z.email().max(320),\n});\n\nexport const ConfirmPasswordSchema = z.object({\n password: PasswordSchema,\n});\n\nexport const ReauthTokenResponseSchema = z.object({\n reauthToken: z.string(),\n expiresAt: z.iso.datetime(), // ISO date string ;\n});\n","export const MFA_ACTIONS = {\n WITHDRAW: 'WITHDRAW',\n CANCEL_EVENT: 'CANCEL_EVENT',\n END_LIVE: 'END_LIVE',\n DISABLE_MFA: 'DISABLE_MFA',\n UPDATE_SETTLEMENT_ACCOUNT: 'UPDATE_SETTLEMENT_ACCOUNT',\n} as const;\n\nexport type MfaAction = (typeof MFA_ACTIONS)[keyof typeof MFA_ACTIONS];\n","import z from 'zod';\nimport { MFA_ACTIONS } from './mfa.enums';\n\nexport const TotpCodeSchema = z\n .string()\n .trim()\n .regex(/^\\d{6}$/, 'totpCode must be 6 digits');\n\nexport const RecoveryCodeSchema = z\n .string()\n .trim()\n .regex(/^[A-Za-z0-9-]{10,12}$/, 'recoveryCode is malformed');\n\nexport const EnableMfaBodySchema = z.object({\n totpCode: TotpCodeSchema,\n});\n\nexport const DisableMfaBodySchema = z\n .object({\n totpCode: TotpCodeSchema.optional(),\n recoveryCode: RecoveryCodeSchema.optional(),\n })\n .refine(\n (v) => !!v.totpCode !== !!v.recoveryCode,\n 'Provide exactly one of totpCode or recoveryCode',\n );\n\nexport const MfaChallengeBodySchema = z.object({\n action: z.enum(MFA_ACTIONS),\n});\n\nexport const MfaVerifyBodySchema = z\n .object({\n challengeToken: z.string().min(16, 'challengeToken is required'),\n totpCode: TotpCodeSchema.optional(),\n recoveryCode: RecoveryCodeSchema.optional(),\n })\n .refine(\n (v) => !!v.totpCode !== !!v.recoveryCode,\n 'Provide exactly one of totpCode or recoveryCode',\n );\n"]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
'use strict';var
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
'use strict';var chunkMYRGUNQ4_js=require('./chunk-MYRGUNQ4.js'),chunkORDM2W6R_js=require('./chunk-ORDM2W6R.js'),zod=require('zod');var o={NGN:"NGN"},I={SOUND:"sound",LIGHTING:"lighting",VIDEO:"video",STAGING:"staging",AV:"av",LOGISTICS:"logistics"},i={AUDIO:"audio",VIDEO:"video",LIGHTING:"lighting",STAGING:"staging",POWER:"power",OTHER:"other"};var R=zod.z.object({category:zod.z.string().optional(),minRate:zod.z.coerce.number().int().min(0).optional(),maxRate:zod.z.coerce.number().int().min(0).optional(),availabilityDate:zod.z.string().optional(),search:zod.z.string().trim().min(2).max(100).optional(),...chunkORDM2W6R_js.g.shape}),n=zod.z.object({id:zod.z.uuid(),name:zod.z.string(),category:zod.z.enum(i),notes:zod.z.string().nullable()}),r=zod.z.object({id:zod.z.uuid(),code:zod.z.string(),label:zod.z.string()}),A=zod.z.object({items:zod.z.array(r)}),c=zod.z.object({id:zod.z.uuid(),title:zod.z.string(),description:zod.z.string().nullable(),mediaUrl:zod.z.url().nullable(),externalUrl:zod.z.url().nullable(),createdAt:zod.z.iso.datetime()}),s=zod.z.object({id:zod.z.uuid(),label:zod.z.string(),amount:zod.z.string(),currency:zod.z.enum(o),notes:zod.z.string().nullable()}),T=zod.z.object({id:zod.z.uuid(),userId:zod.z.uuid(),displayName:zod.z.string(),avatarUrl:zod.z.url().nullable(),producerIsVerified:zod.z.boolean(),companyName:zod.z.string().nullable(),bio:zod.z.string().nullable(),yearsExperience:zod.z.number().int().nullable(),maxDistanceKm:zod.z.number().int().nullable(),isAvailable:zod.z.boolean(),averageRating:zod.z.string(),totalReviews:zod.z.number().int(),completionRate:zod.z.string(),equipmentManifest:zod.z.array(n),serviceCategories:zod.z.array(r),portfolio:zod.z.array(c),equipmentItems:zod.z.array(r),rateCard:zod.z.array(s),createdAt:zod.z.iso.datetime(),updatedAt:zod.z.iso.datetime(),recentReviews:zod.z.array(chunkMYRGUNQ4_js.c).optional()});var v={HOST:1,PRODUCER:2,VIEWER:4},U={ACTIVE:"ACTIVE",SUSPENDED:"SUSPENDED",BANNED:"BANNED",DELETED:"DELETED"},h={PENDING:"PENDING",SUBMITTED:"SUBMITTED",VERIFIED:"VERIFIED",REJECTED:"REJECTED"},L={TRUST:"TRUST",FINANCIAL:"FINANCIAL",LIVE_OPS:"LIVE_OPS",AUDIT:"AUDIT"},k={BUG:"BUG",IDEA:"IDEA",GENERAL:"GENERAL"},V={EVENT_REMINDERS:"EVENT_REMINDERS",LIVE_ALERTS:"LIVE_ALERTS",RECOMMENDATIONS:"RECOMMENDATIONS",JOB_INVITATIONS:"JOB_INVITATIONS",JOB_CONFIRMATIONS:"JOB_CONFIRMATIONS",MESSAGES:"MESSAGES",TICKET_PURCHASES:"TICKET_PURCHASES",CREW_UPDATES:"CREW_UPDATES"},l={PENDING:"PENDING",APPROVED:"APPROVED",REJECTED:"REJECTED",SUBMITTED:"SUBMITTED",SUSPENDED:"SUSPENDED"},p={BEGINNER:"BEGINNER",INTERMEDIATE:"INTERMEDIATE",EXPERT:"EXPERT"};var d=zod.z.object({name:zod.z.string().min(1).max(255),category:zod.z.enum(i),notes:zod.z.string().max(2e3).optional()}),S=zod.z.object({title:zod.z.string().min(1).max(255),description:zod.z.string().max(2e3).optional(),mediaUrl:zod.z.url().optional(),externalUrl:zod.z.url().optional()}),b=zod.z.object({label:zod.z.string().min(1).max(255),amount:zod.z.number().min(0),currency:zod.z.enum(o).default(o.NGN),notes:zod.z.string().max(2e3).optional()}),B=zod.z.object({id:zod.z.uuid(),userId:zod.z.uuid(),companyName:zod.z.string(),bio:zod.z.string(),logoUrl:zod.z.url().nullable(),experienceLevel:zod.z.enum(p),yearsExperience:zod.z.number().int().nullable(),maxDistanceKm:zod.z.number().int().nullable(),availabilityCalendar:zod.z.record(zod.z.string(),zod.z.unknown()).nullable(),verificationStatus:zod.z.enum(l),verificationReason:zod.z.string().nullable(),verifiedAt:zod.z.iso.datetime().nullable(),visibleInMarketplace:zod.z.boolean(),isAvailable:zod.z.boolean(),defaultCurrency:zod.z.enum(o),averageRating:zod.z.number(),totalReviews:zod.z.number().int(),completionRate:zod.z.number(),hasPin:zod.z.boolean(),equipmentManifest:zod.z.array(n),serviceCategories:zod.z.array(r),portfolio:zod.z.array(c),rateCard:zod.z.array(s),createdAt:zod.z.iso.datetime(),updatedAt:zod.z.iso.datetime(),equipmentItems:zod.z.array(r)}),_=zod.z.object({companyName:zod.z.string().min(1).max(120).optional(),bio:zod.z.string().min(1).max(2e3).optional(),logoUrl:zod.z.url().nullable().optional(),experienceLevel:zod.z.enum(p).optional(),yearsExperience:zod.z.number().int().min(0).optional(),serviceAreas:zod.z.array(zod.z.string()).optional(),maxDistanceKm:zod.z.number().int().min(0).nullable().optional(),availabilityCalendar:zod.z.record(zod.z.string(),zod.z.unknown()).nullable().optional(),isAvailable:zod.z.boolean().optional(),visibleInMarketplace:zod.z.boolean().optional(),equipmentManifest:zod.z.array(d).optional(),portfolio:zod.z.array(S).optional(),rateCard:zod.z.array(b).optional(),equipmentItemIds:zod.z.array(zod.z.uuid()).optional(),equipmentItemCodes:zod.z.array(zod.z.string().min(1).max(64)).optional(),categoryCodes:zod.z.array(zod.z.string()).optional()}).refine(y=>Object.keys(y).length>0,{message:"At least one field is required"}),F=zod.z.object({verificationStatus:zod.z.literal(l.SUBMITTED)}),w=zod.z.object({view:zod.z.literal("workspace").optional()});var f=zod.z.string().trim().min(5,"Reason must be at least 5 characters"),J=zod.z.object({notes:zod.z.string().max(2e3).optional()}),E=zod.z.object({reason:f,notes:zod.z.string().max(2e3).optional()}),H=E,z=E;exports.A=E;exports.B=H;exports.C=z;exports.a=v;exports.b=U;exports.c=h;exports.d=L;exports.e=k;exports.f=V;exports.g=l;exports.h=p;exports.i=o;exports.j=I;exports.k=i;exports.l=R;exports.m=n;exports.n=r;exports.o=A;exports.p=c;exports.q=s;exports.r=T;exports.s=d;exports.t=S;exports.u=b;exports.v=B;exports.w=_;exports.x=F;exports.y=w;exports.z=J;//# sourceMappingURL=chunk-JPTEPX6P.js.map
|
|
2
|
+
//# sourceMappingURL=chunk-JPTEPX6P.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/marketplace/marketplace.enums.ts","../src/marketplace/marketplace.schemas.ts","../src/user/user.enums.ts","../src/marketplace/workspace.schemas.ts","../src/marketplace/verification.schemas.ts"],"names":["MarketplaceCurrency","ServiceCategoryCode","EquipmentCategory","ListProducersQuerySchema","z","PaginationParamsSchema","PublicProducerListEquipmentItemSchema","PublicProducerListCategorySchema","ServiceCategoryListResponseSchema","PublicProducerListPortfolioItemSchema","PublicProducerListRateCardItemSchema","PublicProducerListItemSchema","ProducerRecentReviewSchema","UserRole","AccountStatus","KycStatus","AdminScopeCode","FeedbackCategory","NotificationCategory","ProducerVerificationStatus","ProducerExperienceLevel","WorkspaceEquipmentItemInputSchema","WorkspacePortfolioItemInputSchema","WorkspaceRateCardItemInputSchema","ProducerProfileWorkspaceSchema","UpsertProducerWorkspaceProfileSchema","data","SubmitProducerForVerificationSchema","GetProducerProfileQuerySchema","verificationReasonSchema","AdminApproveProducerVerificationSchema","AdminProducerVerificationReasonBodySchema","AdminRejectProducerVerificationSchema","AdminSuspendProducerVerificationSchema"],"mappings":"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","file":"chunk-Q223XBEP.js","sourcesContent":["/** ISO 4217 codes supported on marketplace rate cards. */\nexport const MarketplaceCurrency = {\n NGN: 'NGN',\n} as const;\nexport type MarketplaceCurrency = (typeof MarketplaceCurrency)[keyof typeof MarketplaceCurrency];\n\n/**\n * Known service category codes for producer capability filters.\n * Additional codes may exist in the catalog; listing responses use `z.string()` for `code`.\n */\nexport const ServiceCategoryCode = {\n SOUND: 'sound',\n LIGHTING: 'lighting',\n VIDEO: 'video',\n STAGING: 'staging',\n AV: 'av',\n LOGISTICS: 'logistics',\n} as const;\nexport type ServiceCategoryCode = (typeof ServiceCategoryCode)[keyof typeof ServiceCategoryCode];\n\n/** Equipment manifest categories on public producer listings. */\nexport const EquipmentCategory = {\n AUDIO: 'audio',\n VIDEO: 'video',\n LIGHTING: 'lighting',\n STAGING: 'staging',\n POWER: 'power',\n OTHER: 'other',\n} as const;\nexport type EquipmentCategory = (typeof EquipmentCategory)[keyof typeof EquipmentCategory];\n","import { z } from 'zod';\nimport { EquipmentCategory, MarketplaceCurrency } from './marketplace.enums';\nimport { PaginationParamsSchema } from '../common';\nimport { ProducerRecentReviewSchema } from '../booking/review.schemas';\n\nexport const ListProducersQuerySchema = z.object({\n category: z.string().optional(),\n minRate: z.coerce.number().int().min(0).optional(),\n maxRate: z.coerce.number().int().min(0).optional(),\n availabilityDate: z.string().optional(),\n /** Case-insensitive match on name, company, role/skill, or equipment */\n search: z.string().trim().min(2).max(100).optional(),\n ...PaginationParamsSchema.shape,\n});\n\nexport const PublicProducerListEquipmentItemSchema = z.object({\n id: z.uuid(),\n name: z.string(),\n category: z.enum(EquipmentCategory),\n notes: z.string().nullable(),\n});\n\nexport const PublicProducerListCategorySchema = z.object({\n id: z.uuid(),\n code: z.string(),\n label: z.string(),\n});\n\nexport const ServiceCategoryListResponseSchema = z.object({\n items: z.array(PublicProducerListCategorySchema),\n});\n\nexport const PublicProducerListPortfolioItemSchema = z.object({\n id: z.uuid(),\n title: z.string(),\n description: z.string().nullable(),\n mediaUrl: z.url().nullable(),\n externalUrl: z.url().nullable(),\n createdAt: z.iso.datetime(),\n});\n\nexport const PublicProducerListRateCardItemSchema = z.object({\n id: z.uuid(),\n label: z.string(),\n amount: z.string(),\n currency: z.enum(MarketplaceCurrency),\n notes: z.string().nullable(),\n});\n\n/** One element of `ListProducersResponse.producers`. */\nexport const PublicProducerListItemSchema = z.object({\n id: z.uuid(),\n userId: z.uuid(),\n displayName: z.string(),\n avatarUrl: z.url().nullable(),\n producerIsVerified: z.boolean(),\n companyName: z.string().nullable(),\n bio: z.string().nullable(),\n yearsExperience: z.number().int().nullable(),\n maxDistanceKm: z.number().int().nullable(),\n isAvailable: z.boolean(),\n averageRating: z.string(),\n totalReviews: z.number().int(),\n completionRate: z.string(),\n equipmentManifest: z.array(PublicProducerListEquipmentItemSchema),\n serviceCategories: z.array(PublicProducerListCategorySchema),\n portfolio: z.array(PublicProducerListPortfolioItemSchema),\n equipmentItems: z.array(PublicProducerListCategorySchema),\n rateCard: z.array(PublicProducerListRateCardItemSchema),\n createdAt: z.iso.datetime(),\n updatedAt: z.iso.datetime(),\n recentReviews: z.array(ProducerRecentReviewSchema).optional(),\n});\n","export const UserRole = {\n HOST: 1,\n PRODUCER: 2,\n VIEWER: 4,\n} as const;\nexport type UserRole = (typeof UserRole)[keyof typeof UserRole];\n\nexport const AccountStatus = {\n ACTIVE: 'ACTIVE',\n SUSPENDED: 'SUSPENDED',\n BANNED: 'BANNED',\n DELETED: 'DELETED',\n} as const;\nexport type AccountStatus = (typeof AccountStatus)[keyof typeof AccountStatus];\n\nexport const KycStatus = {\n PENDING: 'PENDING',\n SUBMITTED: 'SUBMITTED',\n VERIFIED: 'VERIFIED',\n REJECTED: 'REJECTED',\n} as const;\nexport type KycStatus = (typeof KycStatus)[keyof typeof KycStatus];\n\n/**\n * Enum for admin scope codes.\n */\nexport const AdminScopeCode = {\n TRUST: 'TRUST',\n FINANCIAL: 'FINANCIAL',\n LIVE_OPS: 'LIVE_OPS',\n AUDIT: 'AUDIT',\n} as const;\nexport type AdminScopeCode = (typeof AdminScopeCode)[keyof typeof AdminScopeCode];\n\nexport const FeedbackCategory = {\n BUG: 'BUG',\n IDEA: 'IDEA',\n GENERAL: 'GENERAL',\n} as const;\nexport type FeedbackCategory = (typeof FeedbackCategory)[keyof typeof FeedbackCategory];\n\nexport const NotificationCategory = {\n EVENT_REMINDERS: 'EVENT_REMINDERS',\n LIVE_ALERTS: 'LIVE_ALERTS',\n RECOMMENDATIONS: 'RECOMMENDATIONS',\n JOB_INVITATIONS: 'JOB_INVITATIONS',\n JOB_CONFIRMATIONS: 'JOB_CONFIRMATIONS',\n MESSAGES: 'MESSAGES',\n TICKET_PURCHASES: 'TICKET_PURCHASES',\n CREW_UPDATES: 'CREW_UPDATES',\n} as const;\nexport type NotificationCategory = (typeof NotificationCategory)[keyof typeof NotificationCategory];\n\nexport const ProducerVerificationStatus = {\n PENDING: 'PENDING',\n APPROVED: 'APPROVED',\n REJECTED: 'REJECTED',\n SUBMITTED: 'SUBMITTED',\n SUSPENDED: 'SUSPENDED',\n} as const;\nexport type ProducerVerificationStatus =\n (typeof ProducerVerificationStatus)[keyof typeof ProducerVerificationStatus];\n\nexport const ProducerExperienceLevel = {\n BEGINNER: 'BEGINNER',\n INTERMEDIATE: 'INTERMEDIATE',\n EXPERT: 'EXPERT',\n} as const;\nexport type ProducerExperienceLevel =\n (typeof ProducerExperienceLevel)[keyof typeof ProducerExperienceLevel];\n","import { z } from 'zod';\nimport { ProducerExperienceLevel, ProducerVerificationStatus } from '../user/user.enums';\nimport { EquipmentCategory, MarketplaceCurrency } from './marketplace.enums';\nimport {\n PublicProducerListCategorySchema,\n PublicProducerListEquipmentItemSchema,\n PublicProducerListPortfolioItemSchema,\n PublicProducerListRateCardItemSchema,\n} from './marketplace.schemas';\n\n/** Workspace equipment row (full manifest; public API uses the same shape). */\nexport const WorkspaceEquipmentItemInputSchema = z.object({\n name: z.string().min(1).max(255),\n category: z.enum(EquipmentCategory),\n notes: z.string().max(2000).optional(),\n});\n\nexport const WorkspacePortfolioItemInputSchema = z.object({\n title: z.string().min(1).max(255),\n description: z.string().max(2000).optional(),\n mediaUrl: z.url().optional(),\n externalUrl: z.url().optional(),\n});\n\nexport const WorkspaceRateCardItemInputSchema = z.object({\n label: z.string().min(1).max(255),\n amount: z.number().min(0),\n currency: z.enum(MarketplaceCurrency).default(MarketplaceCurrency.NGN),\n notes: z.string().max(2000).optional(),\n});\n\n/**\n * Authenticated producer workspace profile (owner view).\n * Includes verification workflow fields and raw availability; never returned on public routes.\n */\nexport const ProducerProfileWorkspaceSchema = z.object({\n id: z.uuid(),\n userId: z.uuid(),\n companyName: z.string(),\n bio: z.string(),\n logoUrl: z.url().nullable(),\n experienceLevel: z.enum(ProducerExperienceLevel),\n yearsExperience: z.number().int().nullable(),\n maxDistanceKm: z.number().int().nullable(),\n availabilityCalendar: z.record(z.string(), z.unknown()).nullable(),\n verificationStatus: z.enum(ProducerVerificationStatus),\n verificationReason: z.string().nullable(),\n verifiedAt: z.iso.datetime().nullable(),\n visibleInMarketplace: z.boolean(),\n isAvailable: z.boolean(),\n defaultCurrency: z.enum(MarketplaceCurrency),\n averageRating: z.number(),\n totalReviews: z.number().int(),\n completionRate: z.number(),\n hasPin: z.boolean(),\n equipmentManifest: z.array(PublicProducerListEquipmentItemSchema),\n serviceCategories: z.array(PublicProducerListCategorySchema),\n portfolio: z.array(PublicProducerListPortfolioItemSchema),\n rateCard: z.array(PublicProducerListRateCardItemSchema),\n createdAt: z.iso.datetime(),\n updatedAt: z.iso.datetime(),\n equipmentItems: z.array(PublicProducerListCategorySchema),\n});\n\n/** PATCH body for workspace profile updates (partial). */\nexport const UpsertProducerWorkspaceProfileSchema = z\n .object({\n companyName: z.string().min(1).max(120).optional(),\n bio: z.string().min(1).max(2000).optional(),\n logoUrl: z.url().nullable().optional(),\n experienceLevel: z.enum(ProducerExperienceLevel).optional(),\n yearsExperience: z.number().int().min(0).optional(),\n serviceAreas: z.array(z.string()).optional(),\n maxDistanceKm: z.number().int().min(0).nullable().optional(),\n availabilityCalendar: z.record(z.string(), z.unknown()).nullable().optional(),\n isAvailable: z.boolean().optional(),\n visibleInMarketplace: z.boolean().optional(),\n equipmentManifest: z.array(WorkspaceEquipmentItemInputSchema).optional(),\n portfolio: z.array(WorkspacePortfolioItemInputSchema).optional(),\n rateCard: z.array(WorkspaceRateCardItemInputSchema).optional(),\n equipmentItemIds: z.array(z.uuid()).optional(),\n equipmentItemCodes: z.array(z.string().min(1).max(64)).optional(),\n categoryCodes: z.array(z.string()).optional(),\n })\n .refine((data) => Object.keys(data).length > 0, {\n message: 'At least one field is required',\n });\n\n/** POST body for submit-for-verification (explicit intent for signing). */\nexport const SubmitProducerForVerificationSchema = z.object({\n verificationStatus: z.literal(ProducerVerificationStatus.SUBMITTED),\n});\n\n/** Query for `GET /users/me/producer-profile` — `view=workspace` returns owner workspace shape. */\nexport const GetProducerProfileQuerySchema = z.object({\n view: z.literal('workspace').optional(),\n});\n","import { z } from 'zod';\n\nconst verificationReasonSchema = z.string().trim().min(5, 'Reason must be at least 5 characters');\n\n/** Admin approves a submitted producer (SUBMITTED → APPROVED) or reinstates (SUSPENDED → APPROVED). */\nexport const AdminApproveProducerVerificationSchema = z.object({\n notes: z.string().max(2000).optional(),\n});\n\n/**\n * Shared body for admin actions that require a decision reason.\n * `reason` → producer-facing verificationReason + audit; `notes` → optional internal admin context.\n */\nexport const AdminProducerVerificationReasonBodySchema = z.object({\n reason: verificationReasonSchema,\n notes: z.string().max(2000).optional(),\n});\n\n/** Admin rejects a submitted producer (SUBMITTED → REJECTED). */\nexport const AdminRejectProducerVerificationSchema = AdminProducerVerificationReasonBodySchema;\n\n/** Admin suspends an approved producer (APPROVED → SUSPENDED). */\nexport const AdminSuspendProducerVerificationSchema = AdminProducerVerificationReasonBodySchema;\n"]}
|
|
1
|
+
{"version":3,"sources":["../src/marketplace/marketplace.enums.ts","../src/marketplace/marketplace.schemas.ts","../src/user/user.enums.ts","../src/marketplace/workspace.schemas.ts","../src/marketplace/verification.schemas.ts"],"names":["MarketplaceCurrency","ServiceCategoryCode","EquipmentCategory","ListProducersQuerySchema","z","PaginationParamsSchema","PublicProducerListEquipmentItemSchema","PublicProducerListCategorySchema","ServiceCategoryListResponseSchema","PublicProducerListPortfolioItemSchema","PublicProducerListRateCardItemSchema","PublicProducerListItemSchema","ProducerRecentReviewSchema","UserRole","AccountStatus","KycStatus","AdminScopeCode","FeedbackCategory","NotificationCategory","ProducerVerificationStatus","ProducerExperienceLevel","WorkspaceEquipmentItemInputSchema","WorkspacePortfolioItemInputSchema","WorkspaceRateCardItemInputSchema","ProducerProfileWorkspaceSchema","UpsertProducerWorkspaceProfileSchema","data","SubmitProducerForVerificationSchema","GetProducerProfileQuerySchema","verificationReasonSchema","AdminApproveProducerVerificationSchema","AdminProducerVerificationReasonBodySchema","AdminRejectProducerVerificationSchema","AdminSuspendProducerVerificationSchema"],"mappings":"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","file":"chunk-JPTEPX6P.js","sourcesContent":["/** ISO 4217 codes supported on marketplace rate cards. */\nexport const MarketplaceCurrency = {\n NGN: 'NGN',\n} as const;\nexport type MarketplaceCurrency = (typeof MarketplaceCurrency)[keyof typeof MarketplaceCurrency];\n\n/**\n * Known service category codes for producer capability filters.\n * Additional codes may exist in the catalog; listing responses use `z.string()` for `code`.\n */\nexport const ServiceCategoryCode = {\n SOUND: 'sound',\n LIGHTING: 'lighting',\n VIDEO: 'video',\n STAGING: 'staging',\n AV: 'av',\n LOGISTICS: 'logistics',\n} as const;\nexport type ServiceCategoryCode = (typeof ServiceCategoryCode)[keyof typeof ServiceCategoryCode];\n\n/** Equipment manifest categories on public producer listings. */\nexport const EquipmentCategory = {\n AUDIO: 'audio',\n VIDEO: 'video',\n LIGHTING: 'lighting',\n STAGING: 'staging',\n POWER: 'power',\n OTHER: 'other',\n} as const;\nexport type EquipmentCategory = (typeof EquipmentCategory)[keyof typeof EquipmentCategory];\n","import { z } from 'zod';\nimport { EquipmentCategory, MarketplaceCurrency } from './marketplace.enums';\nimport { PaginationParamsSchema } from '../common';\nimport { ProducerRecentReviewSchema } from '../booking/review.schemas';\n\nexport const ListProducersQuerySchema = z.object({\n category: z.string().optional(),\n minRate: z.coerce.number().int().min(0).optional(),\n maxRate: z.coerce.number().int().min(0).optional(),\n availabilityDate: z.string().optional(),\n /** Case-insensitive match on name, company, role/skill, or equipment */\n search: z.string().trim().min(2).max(100).optional(),\n ...PaginationParamsSchema.shape,\n});\n\nexport const PublicProducerListEquipmentItemSchema = z.object({\n id: z.uuid(),\n name: z.string(),\n category: z.enum(EquipmentCategory),\n notes: z.string().nullable(),\n});\n\nexport const PublicProducerListCategorySchema = z.object({\n id: z.uuid(),\n code: z.string(),\n label: z.string(),\n});\n\nexport const ServiceCategoryListResponseSchema = z.object({\n items: z.array(PublicProducerListCategorySchema),\n});\n\nexport const PublicProducerListPortfolioItemSchema = z.object({\n id: z.uuid(),\n title: z.string(),\n description: z.string().nullable(),\n mediaUrl: z.url().nullable(),\n externalUrl: z.url().nullable(),\n createdAt: z.iso.datetime(),\n});\n\nexport const PublicProducerListRateCardItemSchema = z.object({\n id: z.uuid(),\n label: z.string(),\n amount: z.string(),\n currency: z.enum(MarketplaceCurrency),\n notes: z.string().nullable(),\n});\n\n/** One element of `ListProducersResponse.producers`. */\nexport const PublicProducerListItemSchema = z.object({\n id: z.uuid(),\n userId: z.uuid(),\n displayName: z.string(),\n avatarUrl: z.url().nullable(),\n producerIsVerified: z.boolean(),\n companyName: z.string().nullable(),\n bio: z.string().nullable(),\n yearsExperience: z.number().int().nullable(),\n maxDistanceKm: z.number().int().nullable(),\n isAvailable: z.boolean(),\n averageRating: z.string(),\n totalReviews: z.number().int(),\n completionRate: z.string(),\n equipmentManifest: z.array(PublicProducerListEquipmentItemSchema),\n serviceCategories: z.array(PublicProducerListCategorySchema),\n portfolio: z.array(PublicProducerListPortfolioItemSchema),\n equipmentItems: z.array(PublicProducerListCategorySchema),\n rateCard: z.array(PublicProducerListRateCardItemSchema),\n createdAt: z.iso.datetime(),\n updatedAt: z.iso.datetime(),\n recentReviews: z.array(ProducerRecentReviewSchema).optional(),\n});\n","export const UserRole = {\n HOST: 1,\n PRODUCER: 2,\n VIEWER: 4,\n} as const;\nexport type UserRole = (typeof UserRole)[keyof typeof UserRole];\n\nexport const AccountStatus = {\n ACTIVE: 'ACTIVE',\n SUSPENDED: 'SUSPENDED',\n BANNED: 'BANNED',\n DELETED: 'DELETED',\n} as const;\nexport type AccountStatus = (typeof AccountStatus)[keyof typeof AccountStatus];\n\nexport const KycStatus = {\n PENDING: 'PENDING',\n SUBMITTED: 'SUBMITTED',\n VERIFIED: 'VERIFIED',\n REJECTED: 'REJECTED',\n} as const;\nexport type KycStatus = (typeof KycStatus)[keyof typeof KycStatus];\n\n/**\n * Enum for admin scope codes.\n */\nexport const AdminScopeCode = {\n TRUST: 'TRUST',\n FINANCIAL: 'FINANCIAL',\n LIVE_OPS: 'LIVE_OPS',\n AUDIT: 'AUDIT',\n} as const;\nexport type AdminScopeCode = (typeof AdminScopeCode)[keyof typeof AdminScopeCode];\n\nexport const FeedbackCategory = {\n BUG: 'BUG',\n IDEA: 'IDEA',\n GENERAL: 'GENERAL',\n} as const;\nexport type FeedbackCategory = (typeof FeedbackCategory)[keyof typeof FeedbackCategory];\n\nexport const NotificationCategory = {\n EVENT_REMINDERS: 'EVENT_REMINDERS',\n LIVE_ALERTS: 'LIVE_ALERTS',\n RECOMMENDATIONS: 'RECOMMENDATIONS',\n JOB_INVITATIONS: 'JOB_INVITATIONS',\n JOB_CONFIRMATIONS: 'JOB_CONFIRMATIONS',\n MESSAGES: 'MESSAGES',\n TICKET_PURCHASES: 'TICKET_PURCHASES',\n CREW_UPDATES: 'CREW_UPDATES',\n} as const;\nexport type NotificationCategory = (typeof NotificationCategory)[keyof typeof NotificationCategory];\n\nexport const ProducerVerificationStatus = {\n PENDING: 'PENDING',\n APPROVED: 'APPROVED',\n REJECTED: 'REJECTED',\n SUBMITTED: 'SUBMITTED',\n SUSPENDED: 'SUSPENDED',\n} as const;\nexport type ProducerVerificationStatus =\n (typeof ProducerVerificationStatus)[keyof typeof ProducerVerificationStatus];\n\nexport const ProducerExperienceLevel = {\n BEGINNER: 'BEGINNER',\n INTERMEDIATE: 'INTERMEDIATE',\n EXPERT: 'EXPERT',\n} as const;\nexport type ProducerExperienceLevel =\n (typeof ProducerExperienceLevel)[keyof typeof ProducerExperienceLevel];\n","import { z } from 'zod';\nimport { ProducerExperienceLevel, ProducerVerificationStatus } from '../user/user.enums';\nimport { EquipmentCategory, MarketplaceCurrency } from './marketplace.enums';\nimport {\n PublicProducerListCategorySchema,\n PublicProducerListEquipmentItemSchema,\n PublicProducerListPortfolioItemSchema,\n PublicProducerListRateCardItemSchema,\n} from './marketplace.schemas';\n\n/** Workspace equipment row (full manifest; public API uses the same shape). */\nexport const WorkspaceEquipmentItemInputSchema = z.object({\n name: z.string().min(1).max(255),\n category: z.enum(EquipmentCategory),\n notes: z.string().max(2000).optional(),\n});\n\nexport const WorkspacePortfolioItemInputSchema = z.object({\n title: z.string().min(1).max(255),\n description: z.string().max(2000).optional(),\n mediaUrl: z.url().optional(),\n externalUrl: z.url().optional(),\n});\n\nexport const WorkspaceRateCardItemInputSchema = z.object({\n label: z.string().min(1).max(255),\n amount: z.number().min(0),\n currency: z.enum(MarketplaceCurrency).default(MarketplaceCurrency.NGN),\n notes: z.string().max(2000).optional(),\n});\n\n/**\n * Authenticated producer workspace profile (owner view).\n * Includes verification workflow fields and raw availability; never returned on public routes.\n */\nexport const ProducerProfileWorkspaceSchema = z.object({\n id: z.uuid(),\n userId: z.uuid(),\n companyName: z.string(),\n bio: z.string(),\n logoUrl: z.url().nullable(),\n experienceLevel: z.enum(ProducerExperienceLevel),\n yearsExperience: z.number().int().nullable(),\n maxDistanceKm: z.number().int().nullable(),\n availabilityCalendar: z.record(z.string(), z.unknown()).nullable(),\n verificationStatus: z.enum(ProducerVerificationStatus),\n verificationReason: z.string().nullable(),\n verifiedAt: z.iso.datetime().nullable(),\n visibleInMarketplace: z.boolean(),\n isAvailable: z.boolean(),\n defaultCurrency: z.enum(MarketplaceCurrency),\n averageRating: z.number(),\n totalReviews: z.number().int(),\n completionRate: z.number(),\n hasPin: z.boolean(),\n equipmentManifest: z.array(PublicProducerListEquipmentItemSchema),\n serviceCategories: z.array(PublicProducerListCategorySchema),\n portfolio: z.array(PublicProducerListPortfolioItemSchema),\n rateCard: z.array(PublicProducerListRateCardItemSchema),\n createdAt: z.iso.datetime(),\n updatedAt: z.iso.datetime(),\n equipmentItems: z.array(PublicProducerListCategorySchema),\n});\n\n/** PATCH body for workspace profile updates (partial). */\nexport const UpsertProducerWorkspaceProfileSchema = z\n .object({\n companyName: z.string().min(1).max(120).optional(),\n bio: z.string().min(1).max(2000).optional(),\n logoUrl: z.url().nullable().optional(),\n experienceLevel: z.enum(ProducerExperienceLevel).optional(),\n yearsExperience: z.number().int().min(0).optional(),\n serviceAreas: z.array(z.string()).optional(),\n maxDistanceKm: z.number().int().min(0).nullable().optional(),\n availabilityCalendar: z.record(z.string(), z.unknown()).nullable().optional(),\n isAvailable: z.boolean().optional(),\n visibleInMarketplace: z.boolean().optional(),\n equipmentManifest: z.array(WorkspaceEquipmentItemInputSchema).optional(),\n portfolio: z.array(WorkspacePortfolioItemInputSchema).optional(),\n rateCard: z.array(WorkspaceRateCardItemInputSchema).optional(),\n equipmentItemIds: z.array(z.uuid()).optional(),\n equipmentItemCodes: z.array(z.string().min(1).max(64)).optional(),\n categoryCodes: z.array(z.string()).optional(),\n })\n .refine((data) => Object.keys(data).length > 0, {\n message: 'At least one field is required',\n });\n\n/** POST body for submit-for-verification (explicit intent for signing). */\nexport const SubmitProducerForVerificationSchema = z.object({\n verificationStatus: z.literal(ProducerVerificationStatus.SUBMITTED),\n});\n\n/** Query for `GET /users/me/producer-profile` — `view=workspace` returns owner workspace shape. */\nexport const GetProducerProfileQuerySchema = z.object({\n view: z.literal('workspace').optional(),\n});\n","import { z } from 'zod';\n\nconst verificationReasonSchema = z.string().trim().min(5, 'Reason must be at least 5 characters');\n\n/** Admin approves a submitted producer (SUBMITTED → APPROVED) or reinstates (SUSPENDED → APPROVED). */\nexport const AdminApproveProducerVerificationSchema = z.object({\n notes: z.string().max(2000).optional(),\n});\n\n/**\n * Shared body for admin actions that require a decision reason.\n * `reason` → producer-facing verificationReason + audit; `notes` → optional internal admin context.\n */\nexport const AdminProducerVerificationReasonBodySchema = z.object({\n reason: verificationReasonSchema,\n notes: z.string().max(2000).optional(),\n});\n\n/** Admin rejects a submitted producer (SUBMITTED → REJECTED). */\nexport const AdminRejectProducerVerificationSchema = AdminProducerVerificationReasonBodySchema;\n\n/** Admin suspends an approved producer (APPROVED → SUSPENDED). */\nexport const AdminSuspendProducerVerificationSchema = AdminProducerVerificationReasonBodySchema;\n"]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
'use strict';var chunkORDM2W6R_js=require('./chunk-ORDM2W6R.js'),zod=require('zod');var n=zod.z.object({bookingId:zod.z.uuid(),rating:zod.z.coerce.number().int().min(1).max(5),comment:zod.z.string().max(500).optional()}),c=zod.z.object({id:zod.z.uuid(),bookingId:zod.z.uuid(),reviewerId:zod.z.uuid(),revieweeId:zod.z.uuid(),rating:zod.z.number().int().min(1).max(5),comment:zod.z.string().nullable(),helpfulCount:zod.z.number().int().nonnegative(),createdAt:zod.z.iso.datetime(),updatedAt:zod.z.iso.datetime()}),i=zod.z.object({rating:zod.z.number().int().min(1).max(5),comment:zod.z.string().nullable(),createdAt:zod.z.iso.datetime()}),s=chunkORDM2W6R_js.g,p=zod.z.object({items:zod.z.array(i),...chunkORDM2W6R_js.k.shape});exports.a=n;exports.b=c;exports.c=i;exports.d=s;exports.e=p;//# sourceMappingURL=chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
'use strict';var chunkORDM2W6R_js=require('./chunk-ORDM2W6R.js'),zod=require('zod');var n=zod.z.object({bookingId:zod.z.uuid(),rating:zod.z.coerce.number().int().min(1).max(5),comment:zod.z.string().max(500).optional()}),c=zod.z.object({id:zod.z.uuid(),bookingId:zod.z.uuid(),reviewerId:zod.z.uuid(),revieweeId:zod.z.uuid(),rating:zod.z.number().int().min(1).max(5),comment:zod.z.string().nullable(),helpfulCount:zod.z.number().int().nonnegative(),createdAt:zod.z.iso.datetime(),updatedAt:zod.z.iso.datetime()}),i=zod.z.object({rating:zod.z.number().int().min(1).max(5),comment:zod.z.string().nullable(),createdAt:zod.z.iso.datetime()}),s=chunkORDM2W6R_js.g,p=zod.z.object({items:zod.z.array(i),...chunkORDM2W6R_js.k.shape});exports.a=n;exports.b=c;exports.c=i;exports.d=s;exports.e=p;//# sourceMappingURL=chunk-MYRGUNQ4.js.map
|
|
2
|
+
//# sourceMappingURL=chunk-MYRGUNQ4.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/booking/review.schemas.ts"],"names":["CreateMarketplaceReviewRequestSchema","z","MarketplaceReviewResponseSchema","ProducerRecentReviewSchema","ListProducerReviewsQuerySchema","PaginationParamsSchema","PagedProducerReviewsResponseSchema","PaginationResponseSchema"],"mappings":"oFAaO,IAAMA,CAAAA,CAAuCC,KAAAA,CAAE,MAAA,CAAO,CAC3D,SAAA,CAAWA,KAAAA,CAAE,IAAA,EAAK,CAClB,OAAQA,KAAAA,CAAE,MAAA,CAAO,MAAA,EAAO,CAAE,GAAA,EAAI,CAAE,GAAA,CAAI,CAAC,EAAE,GAAA,CAAI,CAAC,CAAA,CAC5C,OAAA,CAASA,KAAAA,CAAE,MAAA,EAAO,CAAE,GAAA,CAAI,GAAG,CAAA,CAAE,QAAA,EAC/B,CAAC,CAAA,CAEYC,CAAAA,CAAkCD,KAAAA,CAAE,MAAA,CAAO,CACtD,EAAA,CAAIA,KAAAA,CAAE,IAAA,EAAK,CACX,SAAA,CAAWA,KAAAA,CAAE,IAAA,GACb,UAAA,CAAYA,KAAAA,CAAE,IAAA,EAAK,CACnB,UAAA,CAAYA,KAAAA,CAAE,IAAA,EAAK,CACnB,OAAQA,KAAAA,CAAE,MAAA,EAAO,CAAE,GAAA,EAAI,CAAE,GAAA,CAAI,CAAC,CAAA,CAAE,IAAI,CAAC,CAAA,CACrC,OAAA,CAASA,KAAAA,CAAE,MAAA,EAAO,CAAE,QAAA,EAAS,CAC7B,YAAA,CAAcA,KAAAA,CAAE,MAAA,EAAO,CAAE,GAAA,EAAI,CAAE,WAAA,EAAY,CAC3C,UAAWA,KAAAA,CAAE,GAAA,CAAI,QAAA,EAAS,CAC1B,SAAA,CAAWA,KAAAA,CAAE,GAAA,CAAI,QAAA,EACnB,CAAC,CAAA,CAGYE,CAAAA,CAA6BF,KAAAA,CAAE,MAAA,CAAO,CACjD,MAAA,CAAQA,KAAAA,CAAE,QAAO,CAAE,GAAA,EAAI,CAAE,GAAA,CAAI,CAAC,CAAA,CAAE,GAAA,CAAI,CAAC,EACrC,OAAA,CAASA,KAAAA,CAAE,MAAA,EAAO,CAAE,QAAA,EAAS,CAC7B,SAAA,CAAWA,KAAAA,CAAE,IAAI,QAAA,EACnB,CAAC,CAAA,CAOYG,CAAAA,CAAiCC,kBAAAA,CAEjCC,CAAAA,CAAqCL,KAAAA,CAAE,OAAO,CACzD,KAAA,CAAOA,KAAAA,CAAE,KAAA,CAAME,CAA0B,CAAA,CACzC,GAAGI,kBAAAA,CAAyB,KAC9B,CAAC","file":"chunk-MYRGUNQ4.js","sourcesContent":["import { z } from 'zod';\nimport { PaginationParamsSchema, PaginationResponseSchema } from '../common/common.schemas';\n\n/**\n * `POST /reviews` — booking participant rates the counterparty once\n * service is complete (`SERVICE_COMPLETED` or `CLOSED`).\n *\n * - Host caller → rates the producer (required before fund release /\n * `SERVICE_COMPLETED → CLOSED`).\n * - Producer caller → rates the host (updates host `averageRating`).\n *\n * One review per `(bookingId, reviewerId)`.\n */\nexport const CreateMarketplaceReviewRequestSchema = z.object({\n bookingId: z.uuid(),\n rating: z.coerce.number().int().min(1).max(5),\n comment: z.string().max(500).optional(),\n});\n\nexport const MarketplaceReviewResponseSchema = z.object({\n id: z.uuid(),\n bookingId: z.uuid(),\n reviewerId: z.uuid(),\n revieweeId: z.uuid(),\n rating: z.number().int().min(1).max(5),\n comment: z.string().nullable(),\n helpfulCount: z.number().int().nonnegative(),\n createdAt: z.iso.datetime(),\n updatedAt: z.iso.datetime(),\n});\n\n/** Latest review snippet on public producer profile detail. */\nexport const ProducerRecentReviewSchema = z.object({\n rating: z.number().int().min(1).max(5),\n comment: z.string().nullable(),\n createdAt: z.iso.datetime(),\n});\n\n/**\n * `GET /marketplace/producers/:id/reviews` — paginated public reviews\n * for a marketplace-visible producer (privacy-safe snippets).\n * Alias of shared PaginationParamsSchema (pageNumber / pageSize).\n */\nexport const ListProducerReviewsQuerySchema = PaginationParamsSchema;\n\nexport const PagedProducerReviewsResponseSchema = z.object({\n items: z.array(ProducerRecentReviewSchema),\n ...PaginationResponseSchema.shape,\n});\n\nexport type CreateMarketplaceReviewRequest = z.infer<typeof CreateMarketplaceReviewRequestSchema>;\nexport type MarketplaceReviewResponse = z.infer<typeof MarketplaceReviewResponseSchema>;\nexport type ProducerRecentReview = z.infer<typeof ProducerRecentReviewSchema>;\nexport type ListProducerReviewsQuery = z.infer<typeof ListProducerReviewsQuerySchema>;\nexport type PagedProducerReviewsResponse = z.infer<typeof PagedProducerReviewsResponseSchema>;\n"]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import {c as c$1}from'./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import {c as c$1}from'./chunk-B7O2NN3X.mjs';import {g}from'./chunk-PAUYI2FU.mjs';import {z as z$1}from'zod';var o={NGN:"NGN"},I={SOUND:"sound",LIGHTING:"lighting",VIDEO:"video",STAGING:"staging",AV:"av",LOGISTICS:"logistics"},i={AUDIO:"audio",VIDEO:"video",LIGHTING:"lighting",STAGING:"staging",POWER:"power",OTHER:"other"};var R=z$1.object({category:z$1.string().optional(),minRate:z$1.coerce.number().int().min(0).optional(),maxRate:z$1.coerce.number().int().min(0).optional(),availabilityDate:z$1.string().optional(),search:z$1.string().trim().min(2).max(100).optional(),...g.shape}),n=z$1.object({id:z$1.uuid(),name:z$1.string(),category:z$1.enum(i),notes:z$1.string().nullable()}),r=z$1.object({id:z$1.uuid(),code:z$1.string(),label:z$1.string()}),A=z$1.object({items:z$1.array(r)}),c=z$1.object({id:z$1.uuid(),title:z$1.string(),description:z$1.string().nullable(),mediaUrl:z$1.url().nullable(),externalUrl:z$1.url().nullable(),createdAt:z$1.iso.datetime()}),s=z$1.object({id:z$1.uuid(),label:z$1.string(),amount:z$1.string(),currency:z$1.enum(o),notes:z$1.string().nullable()}),T=z$1.object({id:z$1.uuid(),userId:z$1.uuid(),displayName:z$1.string(),avatarUrl:z$1.url().nullable(),producerIsVerified:z$1.boolean(),companyName:z$1.string().nullable(),bio:z$1.string().nullable(),yearsExperience:z$1.number().int().nullable(),maxDistanceKm:z$1.number().int().nullable(),isAvailable:z$1.boolean(),averageRating:z$1.string(),totalReviews:z$1.number().int(),completionRate:z$1.string(),equipmentManifest:z$1.array(n),serviceCategories:z$1.array(r),portfolio:z$1.array(c),equipmentItems:z$1.array(r),rateCard:z$1.array(s),createdAt:z$1.iso.datetime(),updatedAt:z$1.iso.datetime(),recentReviews:z$1.array(c$1).optional()});var v={HOST:1,PRODUCER:2,VIEWER:4},U={ACTIVE:"ACTIVE",SUSPENDED:"SUSPENDED",BANNED:"BANNED",DELETED:"DELETED"},h={PENDING:"PENDING",SUBMITTED:"SUBMITTED",VERIFIED:"VERIFIED",REJECTED:"REJECTED"},L={TRUST:"TRUST",FINANCIAL:"FINANCIAL",LIVE_OPS:"LIVE_OPS",AUDIT:"AUDIT"},k={BUG:"BUG",IDEA:"IDEA",GENERAL:"GENERAL"},V={EVENT_REMINDERS:"EVENT_REMINDERS",LIVE_ALERTS:"LIVE_ALERTS",RECOMMENDATIONS:"RECOMMENDATIONS",JOB_INVITATIONS:"JOB_INVITATIONS",JOB_CONFIRMATIONS:"JOB_CONFIRMATIONS",MESSAGES:"MESSAGES",TICKET_PURCHASES:"TICKET_PURCHASES",CREW_UPDATES:"CREW_UPDATES"},l={PENDING:"PENDING",APPROVED:"APPROVED",REJECTED:"REJECTED",SUBMITTED:"SUBMITTED",SUSPENDED:"SUSPENDED"},p={BEGINNER:"BEGINNER",INTERMEDIATE:"INTERMEDIATE",EXPERT:"EXPERT"};var d=z$1.object({name:z$1.string().min(1).max(255),category:z$1.enum(i),notes:z$1.string().max(2e3).optional()}),S=z$1.object({title:z$1.string().min(1).max(255),description:z$1.string().max(2e3).optional(),mediaUrl:z$1.url().optional(),externalUrl:z$1.url().optional()}),b=z$1.object({label:z$1.string().min(1).max(255),amount:z$1.number().min(0),currency:z$1.enum(o).default(o.NGN),notes:z$1.string().max(2e3).optional()}),B=z$1.object({id:z$1.uuid(),userId:z$1.uuid(),companyName:z$1.string(),bio:z$1.string(),logoUrl:z$1.url().nullable(),experienceLevel:z$1.enum(p),yearsExperience:z$1.number().int().nullable(),maxDistanceKm:z$1.number().int().nullable(),availabilityCalendar:z$1.record(z$1.string(),z$1.unknown()).nullable(),verificationStatus:z$1.enum(l),verificationReason:z$1.string().nullable(),verifiedAt:z$1.iso.datetime().nullable(),visibleInMarketplace:z$1.boolean(),isAvailable:z$1.boolean(),defaultCurrency:z$1.enum(o),averageRating:z$1.number(),totalReviews:z$1.number().int(),completionRate:z$1.number(),hasPin:z$1.boolean(),equipmentManifest:z$1.array(n),serviceCategories:z$1.array(r),portfolio:z$1.array(c),rateCard:z$1.array(s),createdAt:z$1.iso.datetime(),updatedAt:z$1.iso.datetime(),equipmentItems:z$1.array(r)}),_=z$1.object({companyName:z$1.string().min(1).max(120).optional(),bio:z$1.string().min(1).max(2e3).optional(),logoUrl:z$1.url().nullable().optional(),experienceLevel:z$1.enum(p).optional(),yearsExperience:z$1.number().int().min(0).optional(),serviceAreas:z$1.array(z$1.string()).optional(),maxDistanceKm:z$1.number().int().min(0).nullable().optional(),availabilityCalendar:z$1.record(z$1.string(),z$1.unknown()).nullable().optional(),isAvailable:z$1.boolean().optional(),visibleInMarketplace:z$1.boolean().optional(),equipmentManifest:z$1.array(d).optional(),portfolio:z$1.array(S).optional(),rateCard:z$1.array(b).optional(),equipmentItemIds:z$1.array(z$1.uuid()).optional(),equipmentItemCodes:z$1.array(z$1.string().min(1).max(64)).optional(),categoryCodes:z$1.array(z$1.string()).optional()}).refine(y=>Object.keys(y).length>0,{message:"At least one field is required"}),F=z$1.object({verificationStatus:z$1.literal(l.SUBMITTED)}),w=z$1.object({view:z$1.literal("workspace").optional()});var f=z$1.string().trim().min(5,"Reason must be at least 5 characters"),J=z$1.object({notes:z$1.string().max(2e3).optional()}),E=z$1.object({reason:f,notes:z$1.string().max(2e3).optional()}),H=E,z=E;export{E as A,H as B,z as C,v as a,U as b,h as c,L as d,k as e,V as f,l as g,p as h,o as i,I as j,i as k,R as l,n as m,r as n,A as o,c as p,s as q,T as r,d as s,S as t,b as u,B as v,_ as w,F as x,w as y,J as z};//# sourceMappingURL=chunk-PN2BNA6L.mjs.map
|
|
2
|
+
//# sourceMappingURL=chunk-PN2BNA6L.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/marketplace/marketplace.enums.ts","../src/marketplace/marketplace.schemas.ts","../src/user/user.enums.ts","../src/marketplace/workspace.schemas.ts","../src/marketplace/verification.schemas.ts"],"names":["MarketplaceCurrency","ServiceCategoryCode","EquipmentCategory","ListProducersQuerySchema","z","PaginationParamsSchema","PublicProducerListEquipmentItemSchema","PublicProducerListCategorySchema","ServiceCategoryListResponseSchema","PublicProducerListPortfolioItemSchema","PublicProducerListRateCardItemSchema","PublicProducerListItemSchema","ProducerRecentReviewSchema","UserRole","AccountStatus","KycStatus","AdminScopeCode","FeedbackCategory","NotificationCategory","ProducerVerificationStatus","ProducerExperienceLevel","WorkspaceEquipmentItemInputSchema","WorkspacePortfolioItemInputSchema","WorkspaceRateCardItemInputSchema","ProducerProfileWorkspaceSchema","UpsertProducerWorkspaceProfileSchema","data","SubmitProducerForVerificationSchema","GetProducerProfileQuerySchema","verificationReasonSchema","AdminApproveProducerVerificationSchema","AdminProducerVerificationReasonBodySchema","AdminRejectProducerVerificationSchema","AdminSuspendProducerVerificationSchema"],"mappings":"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","file":"chunk-KZ2OWUX4.mjs","sourcesContent":["/** ISO 4217 codes supported on marketplace rate cards. */\nexport const MarketplaceCurrency = {\n NGN: 'NGN',\n} as const;\nexport type MarketplaceCurrency = (typeof MarketplaceCurrency)[keyof typeof MarketplaceCurrency];\n\n/**\n * Known service category codes for producer capability filters.\n * Additional codes may exist in the catalog; listing responses use `z.string()` for `code`.\n */\nexport const ServiceCategoryCode = {\n SOUND: 'sound',\n LIGHTING: 'lighting',\n VIDEO: 'video',\n STAGING: 'staging',\n AV: 'av',\n LOGISTICS: 'logistics',\n} as const;\nexport type ServiceCategoryCode = (typeof ServiceCategoryCode)[keyof typeof ServiceCategoryCode];\n\n/** Equipment manifest categories on public producer listings. */\nexport const EquipmentCategory = {\n AUDIO: 'audio',\n VIDEO: 'video',\n LIGHTING: 'lighting',\n STAGING: 'staging',\n POWER: 'power',\n OTHER: 'other',\n} as const;\nexport type EquipmentCategory = (typeof EquipmentCategory)[keyof typeof EquipmentCategory];\n","import { z } from 'zod';\nimport { EquipmentCategory, MarketplaceCurrency } from './marketplace.enums';\nimport { PaginationParamsSchema } from '../common';\nimport { ProducerRecentReviewSchema } from '../booking/review.schemas';\n\nexport const ListProducersQuerySchema = z.object({\n category: z.string().optional(),\n minRate: z.coerce.number().int().min(0).optional(),\n maxRate: z.coerce.number().int().min(0).optional(),\n availabilityDate: z.string().optional(),\n /** Case-insensitive match on name, company, role/skill, or equipment */\n search: z.string().trim().min(2).max(100).optional(),\n ...PaginationParamsSchema.shape,\n});\n\nexport const PublicProducerListEquipmentItemSchema = z.object({\n id: z.uuid(),\n name: z.string(),\n category: z.enum(EquipmentCategory),\n notes: z.string().nullable(),\n});\n\nexport const PublicProducerListCategorySchema = z.object({\n id: z.uuid(),\n code: z.string(),\n label: z.string(),\n});\n\nexport const ServiceCategoryListResponseSchema = z.object({\n items: z.array(PublicProducerListCategorySchema),\n});\n\nexport const PublicProducerListPortfolioItemSchema = z.object({\n id: z.uuid(),\n title: z.string(),\n description: z.string().nullable(),\n mediaUrl: z.url().nullable(),\n externalUrl: z.url().nullable(),\n createdAt: z.iso.datetime(),\n});\n\nexport const PublicProducerListRateCardItemSchema = z.object({\n id: z.uuid(),\n label: z.string(),\n amount: z.string(),\n currency: z.enum(MarketplaceCurrency),\n notes: z.string().nullable(),\n});\n\n/** One element of `ListProducersResponse.producers`. */\nexport const PublicProducerListItemSchema = z.object({\n id: z.uuid(),\n userId: z.uuid(),\n displayName: z.string(),\n avatarUrl: z.url().nullable(),\n producerIsVerified: z.boolean(),\n companyName: z.string().nullable(),\n bio: z.string().nullable(),\n yearsExperience: z.number().int().nullable(),\n maxDistanceKm: z.number().int().nullable(),\n isAvailable: z.boolean(),\n averageRating: z.string(),\n totalReviews: z.number().int(),\n completionRate: z.string(),\n equipmentManifest: z.array(PublicProducerListEquipmentItemSchema),\n serviceCategories: z.array(PublicProducerListCategorySchema),\n portfolio: z.array(PublicProducerListPortfolioItemSchema),\n equipmentItems: z.array(PublicProducerListCategorySchema),\n rateCard: z.array(PublicProducerListRateCardItemSchema),\n createdAt: z.iso.datetime(),\n updatedAt: z.iso.datetime(),\n recentReviews: z.array(ProducerRecentReviewSchema).optional(),\n});\n","export const UserRole = {\n HOST: 1,\n PRODUCER: 2,\n VIEWER: 4,\n} as const;\nexport type UserRole = (typeof UserRole)[keyof typeof UserRole];\n\nexport const AccountStatus = {\n ACTIVE: 'ACTIVE',\n SUSPENDED: 'SUSPENDED',\n BANNED: 'BANNED',\n DELETED: 'DELETED',\n} as const;\nexport type AccountStatus = (typeof AccountStatus)[keyof typeof AccountStatus];\n\nexport const KycStatus = {\n PENDING: 'PENDING',\n SUBMITTED: 'SUBMITTED',\n VERIFIED: 'VERIFIED',\n REJECTED: 'REJECTED',\n} as const;\nexport type KycStatus = (typeof KycStatus)[keyof typeof KycStatus];\n\n/**\n * Enum for admin scope codes.\n */\nexport const AdminScopeCode = {\n TRUST: 'TRUST',\n FINANCIAL: 'FINANCIAL',\n LIVE_OPS: 'LIVE_OPS',\n AUDIT: 'AUDIT',\n} as const;\nexport type AdminScopeCode = (typeof AdminScopeCode)[keyof typeof AdminScopeCode];\n\nexport const FeedbackCategory = {\n BUG: 'BUG',\n IDEA: 'IDEA',\n GENERAL: 'GENERAL',\n} as const;\nexport type FeedbackCategory = (typeof FeedbackCategory)[keyof typeof FeedbackCategory];\n\nexport const NotificationCategory = {\n EVENT_REMINDERS: 'EVENT_REMINDERS',\n LIVE_ALERTS: 'LIVE_ALERTS',\n RECOMMENDATIONS: 'RECOMMENDATIONS',\n JOB_INVITATIONS: 'JOB_INVITATIONS',\n JOB_CONFIRMATIONS: 'JOB_CONFIRMATIONS',\n MESSAGES: 'MESSAGES',\n TICKET_PURCHASES: 'TICKET_PURCHASES',\n CREW_UPDATES: 'CREW_UPDATES',\n} as const;\nexport type NotificationCategory = (typeof NotificationCategory)[keyof typeof NotificationCategory];\n\nexport const ProducerVerificationStatus = {\n PENDING: 'PENDING',\n APPROVED: 'APPROVED',\n REJECTED: 'REJECTED',\n SUBMITTED: 'SUBMITTED',\n SUSPENDED: 'SUSPENDED',\n} as const;\nexport type ProducerVerificationStatus =\n (typeof ProducerVerificationStatus)[keyof typeof ProducerVerificationStatus];\n\nexport const ProducerExperienceLevel = {\n BEGINNER: 'BEGINNER',\n INTERMEDIATE: 'INTERMEDIATE',\n EXPERT: 'EXPERT',\n} as const;\nexport type ProducerExperienceLevel =\n (typeof ProducerExperienceLevel)[keyof typeof ProducerExperienceLevel];\n","import { z } from 'zod';\nimport { ProducerExperienceLevel, ProducerVerificationStatus } from '../user/user.enums';\nimport { EquipmentCategory, MarketplaceCurrency } from './marketplace.enums';\nimport {\n PublicProducerListCategorySchema,\n PublicProducerListEquipmentItemSchema,\n PublicProducerListPortfolioItemSchema,\n PublicProducerListRateCardItemSchema,\n} from './marketplace.schemas';\n\n/** Workspace equipment row (full manifest; public API uses the same shape). */\nexport const WorkspaceEquipmentItemInputSchema = z.object({\n name: z.string().min(1).max(255),\n category: z.enum(EquipmentCategory),\n notes: z.string().max(2000).optional(),\n});\n\nexport const WorkspacePortfolioItemInputSchema = z.object({\n title: z.string().min(1).max(255),\n description: z.string().max(2000).optional(),\n mediaUrl: z.url().optional(),\n externalUrl: z.url().optional(),\n});\n\nexport const WorkspaceRateCardItemInputSchema = z.object({\n label: z.string().min(1).max(255),\n amount: z.number().min(0),\n currency: z.enum(MarketplaceCurrency).default(MarketplaceCurrency.NGN),\n notes: z.string().max(2000).optional(),\n});\n\n/**\n * Authenticated producer workspace profile (owner view).\n * Includes verification workflow fields and raw availability; never returned on public routes.\n */\nexport const ProducerProfileWorkspaceSchema = z.object({\n id: z.uuid(),\n userId: z.uuid(),\n companyName: z.string(),\n bio: z.string(),\n logoUrl: z.url().nullable(),\n experienceLevel: z.enum(ProducerExperienceLevel),\n yearsExperience: z.number().int().nullable(),\n maxDistanceKm: z.number().int().nullable(),\n availabilityCalendar: z.record(z.string(), z.unknown()).nullable(),\n verificationStatus: z.enum(ProducerVerificationStatus),\n verificationReason: z.string().nullable(),\n verifiedAt: z.iso.datetime().nullable(),\n visibleInMarketplace: z.boolean(),\n isAvailable: z.boolean(),\n defaultCurrency: z.enum(MarketplaceCurrency),\n averageRating: z.number(),\n totalReviews: z.number().int(),\n completionRate: z.number(),\n hasPin: z.boolean(),\n equipmentManifest: z.array(PublicProducerListEquipmentItemSchema),\n serviceCategories: z.array(PublicProducerListCategorySchema),\n portfolio: z.array(PublicProducerListPortfolioItemSchema),\n rateCard: z.array(PublicProducerListRateCardItemSchema),\n createdAt: z.iso.datetime(),\n updatedAt: z.iso.datetime(),\n equipmentItems: z.array(PublicProducerListCategorySchema),\n});\n\n/** PATCH body for workspace profile updates (partial). */\nexport const UpsertProducerWorkspaceProfileSchema = z\n .object({\n companyName: z.string().min(1).max(120).optional(),\n bio: z.string().min(1).max(2000).optional(),\n logoUrl: z.url().nullable().optional(),\n experienceLevel: z.enum(ProducerExperienceLevel).optional(),\n yearsExperience: z.number().int().min(0).optional(),\n serviceAreas: z.array(z.string()).optional(),\n maxDistanceKm: z.number().int().min(0).nullable().optional(),\n availabilityCalendar: z.record(z.string(), z.unknown()).nullable().optional(),\n isAvailable: z.boolean().optional(),\n visibleInMarketplace: z.boolean().optional(),\n equipmentManifest: z.array(WorkspaceEquipmentItemInputSchema).optional(),\n portfolio: z.array(WorkspacePortfolioItemInputSchema).optional(),\n rateCard: z.array(WorkspaceRateCardItemInputSchema).optional(),\n equipmentItemIds: z.array(z.uuid()).optional(),\n equipmentItemCodes: z.array(z.string().min(1).max(64)).optional(),\n categoryCodes: z.array(z.string()).optional(),\n })\n .refine((data) => Object.keys(data).length > 0, {\n message: 'At least one field is required',\n });\n\n/** POST body for submit-for-verification (explicit intent for signing). */\nexport const SubmitProducerForVerificationSchema = z.object({\n verificationStatus: z.literal(ProducerVerificationStatus.SUBMITTED),\n});\n\n/** Query for `GET /users/me/producer-profile` — `view=workspace` returns owner workspace shape. */\nexport const GetProducerProfileQuerySchema = z.object({\n view: z.literal('workspace').optional(),\n});\n","import { z } from 'zod';\n\nconst verificationReasonSchema = z.string().trim().min(5, 'Reason must be at least 5 characters');\n\n/** Admin approves a submitted producer (SUBMITTED → APPROVED) or reinstates (SUSPENDED → APPROVED). */\nexport const AdminApproveProducerVerificationSchema = z.object({\n notes: z.string().max(2000).optional(),\n});\n\n/**\n * Shared body for admin actions that require a decision reason.\n * `reason` → producer-facing verificationReason + audit; `notes` → optional internal admin context.\n */\nexport const AdminProducerVerificationReasonBodySchema = z.object({\n reason: verificationReasonSchema,\n notes: z.string().max(2000).optional(),\n});\n\n/** Admin rejects a submitted producer (SUBMITTED → REJECTED). */\nexport const AdminRejectProducerVerificationSchema = AdminProducerVerificationReasonBodySchema;\n\n/** Admin suspends an approved producer (APPROVED → SUSPENDED). */\nexport const AdminSuspendProducerVerificationSchema = AdminProducerVerificationReasonBodySchema;\n"]}
|
|
1
|
+
{"version":3,"sources":["../src/marketplace/marketplace.enums.ts","../src/marketplace/marketplace.schemas.ts","../src/user/user.enums.ts","../src/marketplace/workspace.schemas.ts","../src/marketplace/verification.schemas.ts"],"names":["MarketplaceCurrency","ServiceCategoryCode","EquipmentCategory","ListProducersQuerySchema","z","PaginationParamsSchema","PublicProducerListEquipmentItemSchema","PublicProducerListCategorySchema","ServiceCategoryListResponseSchema","PublicProducerListPortfolioItemSchema","PublicProducerListRateCardItemSchema","PublicProducerListItemSchema","ProducerRecentReviewSchema","UserRole","AccountStatus","KycStatus","AdminScopeCode","FeedbackCategory","NotificationCategory","ProducerVerificationStatus","ProducerExperienceLevel","WorkspaceEquipmentItemInputSchema","WorkspacePortfolioItemInputSchema","WorkspaceRateCardItemInputSchema","ProducerProfileWorkspaceSchema","UpsertProducerWorkspaceProfileSchema","data","SubmitProducerForVerificationSchema","GetProducerProfileQuerySchema","verificationReasonSchema","AdminApproveProducerVerificationSchema","AdminProducerVerificationReasonBodySchema","AdminRejectProducerVerificationSchema","AdminSuspendProducerVerificationSchema"],"mappings":"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","file":"chunk-PN2BNA6L.mjs","sourcesContent":["/** ISO 4217 codes supported on marketplace rate cards. */\nexport const MarketplaceCurrency = {\n NGN: 'NGN',\n} as const;\nexport type MarketplaceCurrency = (typeof MarketplaceCurrency)[keyof typeof MarketplaceCurrency];\n\n/**\n * Known service category codes for producer capability filters.\n * Additional codes may exist in the catalog; listing responses use `z.string()` for `code`.\n */\nexport const ServiceCategoryCode = {\n SOUND: 'sound',\n LIGHTING: 'lighting',\n VIDEO: 'video',\n STAGING: 'staging',\n AV: 'av',\n LOGISTICS: 'logistics',\n} as const;\nexport type ServiceCategoryCode = (typeof ServiceCategoryCode)[keyof typeof ServiceCategoryCode];\n\n/** Equipment manifest categories on public producer listings. */\nexport const EquipmentCategory = {\n AUDIO: 'audio',\n VIDEO: 'video',\n LIGHTING: 'lighting',\n STAGING: 'staging',\n POWER: 'power',\n OTHER: 'other',\n} as const;\nexport type EquipmentCategory = (typeof EquipmentCategory)[keyof typeof EquipmentCategory];\n","import { z } from 'zod';\nimport { EquipmentCategory, MarketplaceCurrency } from './marketplace.enums';\nimport { PaginationParamsSchema } from '../common';\nimport { ProducerRecentReviewSchema } from '../booking/review.schemas';\n\nexport const ListProducersQuerySchema = z.object({\n category: z.string().optional(),\n minRate: z.coerce.number().int().min(0).optional(),\n maxRate: z.coerce.number().int().min(0).optional(),\n availabilityDate: z.string().optional(),\n /** Case-insensitive match on name, company, role/skill, or equipment */\n search: z.string().trim().min(2).max(100).optional(),\n ...PaginationParamsSchema.shape,\n});\n\nexport const PublicProducerListEquipmentItemSchema = z.object({\n id: z.uuid(),\n name: z.string(),\n category: z.enum(EquipmentCategory),\n notes: z.string().nullable(),\n});\n\nexport const PublicProducerListCategorySchema = z.object({\n id: z.uuid(),\n code: z.string(),\n label: z.string(),\n});\n\nexport const ServiceCategoryListResponseSchema = z.object({\n items: z.array(PublicProducerListCategorySchema),\n});\n\nexport const PublicProducerListPortfolioItemSchema = z.object({\n id: z.uuid(),\n title: z.string(),\n description: z.string().nullable(),\n mediaUrl: z.url().nullable(),\n externalUrl: z.url().nullable(),\n createdAt: z.iso.datetime(),\n});\n\nexport const PublicProducerListRateCardItemSchema = z.object({\n id: z.uuid(),\n label: z.string(),\n amount: z.string(),\n currency: z.enum(MarketplaceCurrency),\n notes: z.string().nullable(),\n});\n\n/** One element of `ListProducersResponse.producers`. */\nexport const PublicProducerListItemSchema = z.object({\n id: z.uuid(),\n userId: z.uuid(),\n displayName: z.string(),\n avatarUrl: z.url().nullable(),\n producerIsVerified: z.boolean(),\n companyName: z.string().nullable(),\n bio: z.string().nullable(),\n yearsExperience: z.number().int().nullable(),\n maxDistanceKm: z.number().int().nullable(),\n isAvailable: z.boolean(),\n averageRating: z.string(),\n totalReviews: z.number().int(),\n completionRate: z.string(),\n equipmentManifest: z.array(PublicProducerListEquipmentItemSchema),\n serviceCategories: z.array(PublicProducerListCategorySchema),\n portfolio: z.array(PublicProducerListPortfolioItemSchema),\n equipmentItems: z.array(PublicProducerListCategorySchema),\n rateCard: z.array(PublicProducerListRateCardItemSchema),\n createdAt: z.iso.datetime(),\n updatedAt: z.iso.datetime(),\n recentReviews: z.array(ProducerRecentReviewSchema).optional(),\n});\n","export const UserRole = {\n HOST: 1,\n PRODUCER: 2,\n VIEWER: 4,\n} as const;\nexport type UserRole = (typeof UserRole)[keyof typeof UserRole];\n\nexport const AccountStatus = {\n ACTIVE: 'ACTIVE',\n SUSPENDED: 'SUSPENDED',\n BANNED: 'BANNED',\n DELETED: 'DELETED',\n} as const;\nexport type AccountStatus = (typeof AccountStatus)[keyof typeof AccountStatus];\n\nexport const KycStatus = {\n PENDING: 'PENDING',\n SUBMITTED: 'SUBMITTED',\n VERIFIED: 'VERIFIED',\n REJECTED: 'REJECTED',\n} as const;\nexport type KycStatus = (typeof KycStatus)[keyof typeof KycStatus];\n\n/**\n * Enum for admin scope codes.\n */\nexport const AdminScopeCode = {\n TRUST: 'TRUST',\n FINANCIAL: 'FINANCIAL',\n LIVE_OPS: 'LIVE_OPS',\n AUDIT: 'AUDIT',\n} as const;\nexport type AdminScopeCode = (typeof AdminScopeCode)[keyof typeof AdminScopeCode];\n\nexport const FeedbackCategory = {\n BUG: 'BUG',\n IDEA: 'IDEA',\n GENERAL: 'GENERAL',\n} as const;\nexport type FeedbackCategory = (typeof FeedbackCategory)[keyof typeof FeedbackCategory];\n\nexport const NotificationCategory = {\n EVENT_REMINDERS: 'EVENT_REMINDERS',\n LIVE_ALERTS: 'LIVE_ALERTS',\n RECOMMENDATIONS: 'RECOMMENDATIONS',\n JOB_INVITATIONS: 'JOB_INVITATIONS',\n JOB_CONFIRMATIONS: 'JOB_CONFIRMATIONS',\n MESSAGES: 'MESSAGES',\n TICKET_PURCHASES: 'TICKET_PURCHASES',\n CREW_UPDATES: 'CREW_UPDATES',\n} as const;\nexport type NotificationCategory = (typeof NotificationCategory)[keyof typeof NotificationCategory];\n\nexport const ProducerVerificationStatus = {\n PENDING: 'PENDING',\n APPROVED: 'APPROVED',\n REJECTED: 'REJECTED',\n SUBMITTED: 'SUBMITTED',\n SUSPENDED: 'SUSPENDED',\n} as const;\nexport type ProducerVerificationStatus =\n (typeof ProducerVerificationStatus)[keyof typeof ProducerVerificationStatus];\n\nexport const ProducerExperienceLevel = {\n BEGINNER: 'BEGINNER',\n INTERMEDIATE: 'INTERMEDIATE',\n EXPERT: 'EXPERT',\n} as const;\nexport type ProducerExperienceLevel =\n (typeof ProducerExperienceLevel)[keyof typeof ProducerExperienceLevel];\n","import { z } from 'zod';\nimport { ProducerExperienceLevel, ProducerVerificationStatus } from '../user/user.enums';\nimport { EquipmentCategory, MarketplaceCurrency } from './marketplace.enums';\nimport {\n PublicProducerListCategorySchema,\n PublicProducerListEquipmentItemSchema,\n PublicProducerListPortfolioItemSchema,\n PublicProducerListRateCardItemSchema,\n} from './marketplace.schemas';\n\n/** Workspace equipment row (full manifest; public API uses the same shape). */\nexport const WorkspaceEquipmentItemInputSchema = z.object({\n name: z.string().min(1).max(255),\n category: z.enum(EquipmentCategory),\n notes: z.string().max(2000).optional(),\n});\n\nexport const WorkspacePortfolioItemInputSchema = z.object({\n title: z.string().min(1).max(255),\n description: z.string().max(2000).optional(),\n mediaUrl: z.url().optional(),\n externalUrl: z.url().optional(),\n});\n\nexport const WorkspaceRateCardItemInputSchema = z.object({\n label: z.string().min(1).max(255),\n amount: z.number().min(0),\n currency: z.enum(MarketplaceCurrency).default(MarketplaceCurrency.NGN),\n notes: z.string().max(2000).optional(),\n});\n\n/**\n * Authenticated producer workspace profile (owner view).\n * Includes verification workflow fields and raw availability; never returned on public routes.\n */\nexport const ProducerProfileWorkspaceSchema = z.object({\n id: z.uuid(),\n userId: z.uuid(),\n companyName: z.string(),\n bio: z.string(),\n logoUrl: z.url().nullable(),\n experienceLevel: z.enum(ProducerExperienceLevel),\n yearsExperience: z.number().int().nullable(),\n maxDistanceKm: z.number().int().nullable(),\n availabilityCalendar: z.record(z.string(), z.unknown()).nullable(),\n verificationStatus: z.enum(ProducerVerificationStatus),\n verificationReason: z.string().nullable(),\n verifiedAt: z.iso.datetime().nullable(),\n visibleInMarketplace: z.boolean(),\n isAvailable: z.boolean(),\n defaultCurrency: z.enum(MarketplaceCurrency),\n averageRating: z.number(),\n totalReviews: z.number().int(),\n completionRate: z.number(),\n hasPin: z.boolean(),\n equipmentManifest: z.array(PublicProducerListEquipmentItemSchema),\n serviceCategories: z.array(PublicProducerListCategorySchema),\n portfolio: z.array(PublicProducerListPortfolioItemSchema),\n rateCard: z.array(PublicProducerListRateCardItemSchema),\n createdAt: z.iso.datetime(),\n updatedAt: z.iso.datetime(),\n equipmentItems: z.array(PublicProducerListCategorySchema),\n});\n\n/** PATCH body for workspace profile updates (partial). */\nexport const UpsertProducerWorkspaceProfileSchema = z\n .object({\n companyName: z.string().min(1).max(120).optional(),\n bio: z.string().min(1).max(2000).optional(),\n logoUrl: z.url().nullable().optional(),\n experienceLevel: z.enum(ProducerExperienceLevel).optional(),\n yearsExperience: z.number().int().min(0).optional(),\n serviceAreas: z.array(z.string()).optional(),\n maxDistanceKm: z.number().int().min(0).nullable().optional(),\n availabilityCalendar: z.record(z.string(), z.unknown()).nullable().optional(),\n isAvailable: z.boolean().optional(),\n visibleInMarketplace: z.boolean().optional(),\n equipmentManifest: z.array(WorkspaceEquipmentItemInputSchema).optional(),\n portfolio: z.array(WorkspacePortfolioItemInputSchema).optional(),\n rateCard: z.array(WorkspaceRateCardItemInputSchema).optional(),\n equipmentItemIds: z.array(z.uuid()).optional(),\n equipmentItemCodes: z.array(z.string().min(1).max(64)).optional(),\n categoryCodes: z.array(z.string()).optional(),\n })\n .refine((data) => Object.keys(data).length > 0, {\n message: 'At least one field is required',\n });\n\n/** POST body for submit-for-verification (explicit intent for signing). */\nexport const SubmitProducerForVerificationSchema = z.object({\n verificationStatus: z.literal(ProducerVerificationStatus.SUBMITTED),\n});\n\n/** Query for `GET /users/me/producer-profile` — `view=workspace` returns owner workspace shape. */\nexport const GetProducerProfileQuerySchema = z.object({\n view: z.literal('workspace').optional(),\n});\n","import { z } from 'zod';\n\nconst verificationReasonSchema = z.string().trim().min(5, 'Reason must be at least 5 characters');\n\n/** Admin approves a submitted producer (SUBMITTED → APPROVED) or reinstates (SUSPENDED → APPROVED). */\nexport const AdminApproveProducerVerificationSchema = z.object({\n notes: z.string().max(2000).optional(),\n});\n\n/**\n * Shared body for admin actions that require a decision reason.\n * `reason` → producer-facing verificationReason + audit; `notes` → optional internal admin context.\n */\nexport const AdminProducerVerificationReasonBodySchema = z.object({\n reason: verificationReasonSchema,\n notes: z.string().max(2000).optional(),\n});\n\n/** Admin rejects a submitted producer (SUBMITTED → REJECTED). */\nexport const AdminRejectProducerVerificationSchema = AdminProducerVerificationReasonBodySchema;\n\n/** Admin suspends an approved producer (APPROVED → SUSPENDED). */\nexport const AdminSuspendProducerVerificationSchema = AdminProducerVerificationReasonBodySchema;\n"]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import {g as g$2,n,h,c,b as b$1,f,e}from'./chunk-PN2BNA6L.mjs';import {g as g$1}from'./chunk-Q22UWX74.mjs';import {z}from'zod';var u=z.object({id:z.uuid(),userId:z.uuid(),businessName:z.string(),totalEvents:z.number(),totalSpent:z.number(),averageRating:z.number(),totalReviews:z.number().int().nonnegative(),defaultCurrency:z.string(),description:z.string().optional(),category:z.array(z.enum(g$1)),logoUrl:z.url().optional(),hasPin:z.boolean(),businessRegNumber:z.string().optional(),taxId:z.string().optional(),settlementBankCode:z.string().optional(),settlementAccountNumber:z.string().optional(),settlementAccountName:z.string().optional(),paystackSubaccountCode:z.string().optional(),createdAt:z.iso.datetime()}),d=z.object({id:z.uuid(),userId:z.uuid(),companyName:z.string(),bio:z.string(),yearsExperience:z.number().optional(),experienceLevel:z.enum(h),equipmentManifest:z.array(z.record(z.string(),z.any())),serviceCategories:z.array(n),equipmentItems:z.array(n),verificationStatus:z.enum(g$2),averageRating:z.number().positive().multipleOf(.01),totalReviews:z.number(),completionRate:z.number(),isAvailable:z.boolean(),hasPin:z.boolean(),createdAt:z.iso.datetime()}),R=z.object({id:z.uuid(),email:z.email().toLowerCase(),emailVerified:z.boolean(),emailVerifiedAt:z.iso.datetime().optional(),phoneNumber:z.string().optional(),firstName:z.string().optional(),lastName:z.string().optional(),displayName:z.string().optional(),avatarUrl:z.url().optional(),role:z.number().min(1).max(15),accountStatus:z.enum(b$1),kycStatus:z.enum(c),hostProfile:u.optional(),producerProfile:d.optional(),createdAt:z.iso.datetime(),updatedAt:z.iso.datetime(),eventCategory:z.array(z.enum(g$1)).optional()}),N=z.object({firstName:z.string().optional(),lastName:z.string().optional(),displayName:z.string().optional(),avatarUrl:z.url().optional(),phoneNumber:z.string().optional(),eventCategory:z.array(z.enum(g$1)).optional()}),v=z.object({businessName:z.string(),description:z.string().optional(),logoUrl:z.string().optional(),category:z.array(z.enum(g$1)).min(1)}),C=z.object({businessName:z.string().min(1).max(120).optional(),description:z.string().max(2e3).optional(),logoUrl:z.string().optional(),category:z.array(z.enum(g$1)).min(1).optional(),businessRegNumber:z.string().max(64).optional(),taxId:z.string().max(64).optional()}),P=z.object({companyName:z.string(),bio:z.string(),logoUrl:z.string().optional(),serviceCategoryIds:z.array(z.uuid()).optional(),serviceCategoryCodes:z.array(z.string().min(1).max(64)).optional(),equipmentItemIds:z.array(z.uuid()).optional(),equipmentItemCodes:z.array(z.string().min(1).max(64)).optional(),yearsExperience:z.number(),experienceLevel:z.enum(h),minFee:z.number(),maxFee:z.number(),isAvailable:z.boolean()}),E=z.object({pin:z.string().trim().regex(/^\d{4,8}$/,"pin must be 4-8 digits"),currentPin:z.string().trim().regex(/^\d{4,8}$/,"currentPin must be 4-8 digits").optional()}),g=new Set(["admin","support","livdot","host","producer","system","null","undefined","me","settings","viewer","auth","events","streaming","producers","marketplace","users"]),b=z.string().trim().toLowerCase().min(3,"Display name must be at least 3 characters").max(30,"Display name must be at most 30 characters").regex(/^[a-z0-9_]+$/,"Display name may only contain lowercase letters, digits, and underscores").refine(r=>!g.has(r),{message:"This display name is reserved"}),j=z.object({displayName:b}).strict(),A=z.object({preferredCurrency:z.string().trim().toUpperCase().length(3).regex(/^[A-Z]{3}$/)}).strict(),l=z.enum([f.LIVE_ALERTS,f.RECOMMENDATIONS,f.EVENT_REMINDERS]),y=z.object({category:l,enabled:z.boolean()}),U=z.object({preferences:z.array(y).min(1).max(10).refine(r=>new Set(r.map(p=>p.category)).size===r.length,{message:"Duplicate category in preferences"})}).strict(),I=z.object({category:z.enum(e),message:z.string().trim().min(10).max(2e3)}).strict(),q=z.object({id:z.uuid(),email:z.email(),emailVerified:z.boolean(),displayName:z.string().nullable(),avatarUrl:z.url().nullable(),roles:z.number().int(),preferredCurrency:z.string(),notificationsEnabledCount:z.number().int(),hasPushDevice:z.boolean()}),w=z.object({preferences:z.record(l,z.boolean())}),D=z.object({id:z.uuid()});export{u as a,d as b,R as c,N as d,v as e,C as f,P as g,E as h,g as i,b as j,j as k,A as l,y as m,U as n,I as o,q as p,w as q,D as r};//# sourceMappingURL=chunk-PVVPURYV.mjs.map
|
|
2
|
+
//# sourceMappingURL=chunk-PVVPURYV.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/user/user.schemas.ts"],"names":["HostProfileResponseSchema","z","EventCategory","ProducerProfileResponseSchema","ProducerExperienceLevel","PublicProducerListCategorySchema","ProducerVerificationStatus","UserResponseSchema","AccountStatus","KycStatus","UpdateUserRequestSchema","CreateHostProfileRequestSchema","UpdateHostProfileRequestSchema","CreateProducerProfileRequestSchema","SetProfilePinSchema","RESERVED_DISPLAY_NAMES","DisplayNameSchema","v","UpdateViewerProfileRequestSchema","UpdateViewerCurrencyRequestSchema","USER_CATEGORY","NotificationCategory","NotificationPreferenceItemSchema","UpdateNotificationPreferencesRequestSchema","items","i","SendFeedbackRequestSchema","FeedbackCategory","ViewerMeResponseSchema","NotificationPreferencesResponseSchema","SendFeedbackResponseSchema"],"mappings":"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","file":"chunk-PVVPURYV.mjs","sourcesContent":["import { z } from 'zod';\nimport {\n AccountStatus,\n FeedbackCategory,\n KycStatus,\n NotificationCategory,\n ProducerExperienceLevel,\n ProducerVerificationStatus,\n} from './user.enums';\nimport { EventCategory } from '../event';\nimport { PublicProducerListCategorySchema } from '../marketplace';\n\nexport const HostProfileResponseSchema = z.object({\n id: z.uuid(),\n userId: z.uuid(),\n businessName: z.string(),\n totalEvents: z.number(),\n totalSpent: z.number(),\n averageRating: z.number(),\n /** Count of producer→host marketplace reviews reflected in `averageRating`. */\n totalReviews: z.number().int().nonnegative(),\n defaultCurrency: z.string(),\n description: z.string().optional(),\n category: z.array(z.enum(EventCategory)),\n logoUrl: z.url().optional(),\n hasPin: z.boolean(),\n businessRegNumber: z.string().optional(),\n taxId: z.string().optional(),\n settlementBankCode: z.string().optional(),\n settlementAccountNumber: z.string().optional(),\n settlementAccountName: z.string().optional(),\n paystackSubaccountCode: z.string().optional(),\n createdAt: z.iso.datetime(),\n});\n\nexport const ProducerProfileResponseSchema = z.object({\n id: z.uuid(),\n userId: z.uuid(),\n companyName: z.string(),\n bio: z.string(),\n yearsExperience: z.number().optional(),\n experienceLevel: z.enum(ProducerExperienceLevel),\n equipmentManifest: z.array(z.record(z.string(), z.any())),\n serviceCategories: z.array(PublicProducerListCategorySchema),\n equipmentItems: z.array(PublicProducerListCategorySchema),\n verificationStatus: z.enum(ProducerVerificationStatus),\n averageRating: z.number().positive().multipleOf(0.01),\n totalReviews: z.number(),\n completionRate: z.number(),\n isAvailable: z.boolean(),\n hasPin: z.boolean(),\n createdAt: z.iso.datetime(),\n});\n\nexport const UserResponseSchema = z.object({\n id: z.uuid(),\n email: z.email().toLowerCase(),\n emailVerified: z.boolean(),\n emailVerifiedAt: z.iso.datetime().optional(),\n phoneNumber: z.string().optional(),\n firstName: z.string().optional(),\n lastName: z.string().optional(),\n displayName: z.string().optional(),\n avatarUrl: z.url().optional(),\n role: z.number().min(1).max(15),\n accountStatus: z.enum(AccountStatus),\n kycStatus: z.enum(KycStatus),\n hostProfile: HostProfileResponseSchema.optional(),\n producerProfile: ProducerProfileResponseSchema.optional(),\n createdAt: z.iso.datetime(),\n updatedAt: z.iso.datetime(),\n eventCategory: z.array(z.enum(EventCategory)).optional(),\n});\n\nexport const UpdateUserRequestSchema = z.object({\n firstName: z.string().optional(),\n lastName: z.string().optional(),\n displayName: z.string().optional(),\n avatarUrl: z.url().optional(),\n phoneNumber: z.string().optional(),\n eventCategory: z.array(z.enum(EventCategory)).optional(),\n});\n\nexport const CreateHostProfileRequestSchema = z.object({\n businessName: z.string(),\n description: z.string().optional(),\n logoUrl: z.string().optional(),\n category: z.array(z.enum(EventCategory)).min(1),\n});\n\nexport const UpdateHostProfileRequestSchema = z.object({\n businessName: z.string().min(1).max(120).optional(),\n description: z.string().max(2000).optional(),\n logoUrl: z.string().optional(),\n category: z.array(z.enum(EventCategory)).min(1).optional(),\n businessRegNumber: z.string().max(64).optional(),\n taxId: z.string().max(64).optional(),\n});\n\nexport const CreateProducerProfileRequestSchema = z.object({\n companyName: z.string(),\n bio: z.string(),\n logoUrl: z.string().optional(),\n serviceCategoryIds: z.array(z.uuid()).optional(),\n serviceCategoryCodes: z.array(z.string().min(1).max(64)).optional(),\n equipmentItemIds: z.array(z.uuid()).optional(),\n equipmentItemCodes: z.array(z.string().min(1).max(64)).optional(),\n yearsExperience: z.number(),\n experienceLevel: z.enum(ProducerExperienceLevel),\n minFee: z.number(),\n maxFee: z.number(),\n isAvailable: z.boolean(),\n});\n\nexport const SetProfilePinSchema = z.object({\n pin: z\n .string()\n .trim()\n .regex(/^\\d{4,8}$/, 'pin must be 4-8 digits'),\n currentPin: z\n .string()\n .trim()\n .regex(/^\\d{4,8}$/, 'currentPin must be 4-8 digits')\n .optional(),\n});\n\nexport const RESERVED_DISPLAY_NAMES: ReadonlySet<string> = new Set([\n 'admin',\n 'support',\n 'livdot',\n 'host',\n 'producer',\n 'system',\n 'null',\n 'undefined',\n 'me',\n 'settings',\n 'viewer',\n 'auth',\n 'events',\n 'streaming',\n 'producers',\n 'marketplace',\n 'users',\n]);\n\n/** Handle constraints — see viewer-settings.md §3.1. */\nexport const DisplayNameSchema = z\n .string()\n .trim()\n .toLowerCase()\n .min(3, 'Display name must be at least 3 characters')\n .max(30, 'Display name must be at most 30 characters')\n .regex(/^[a-z0-9_]+$/, 'Display name may only contain lowercase letters, digits, and underscores')\n .refine((v) => !RESERVED_DISPLAY_NAMES.has(v), {\n message: 'This display name is reserved',\n });\n\nexport const UpdateViewerProfileRequestSchema = z\n .object({\n displayName: DisplayNameSchema,\n })\n .strict();\n\nexport const UpdateViewerCurrencyRequestSchema = z\n .object({\n preferredCurrency: z\n .string()\n .trim()\n .toUpperCase()\n .length(3)\n .regex(/^[A-Z]{3}$/),\n })\n .strict();\nconst USER_CATEGORY = z.enum([\n NotificationCategory.LIVE_ALERTS,\n NotificationCategory.RECOMMENDATIONS,\n NotificationCategory.EVENT_REMINDERS,\n]);\n\nexport const NotificationPreferenceItemSchema = z.object({\n category: USER_CATEGORY,\n enabled: z.boolean(),\n});\n\nexport const UpdateNotificationPreferencesRequestSchema = z\n .object({\n preferences: z\n .array(NotificationPreferenceItemSchema)\n .min(1)\n .max(10)\n .refine((items) => new Set(items.map((i) => i.category)).size === items.length, {\n message: 'Duplicate category in preferences',\n }),\n })\n .strict();\n\nexport const SendFeedbackRequestSchema = z\n .object({\n category: z.enum(FeedbackCategory),\n message: z.string().trim().min(10).max(2000),\n })\n .strict();\n\nexport const ViewerMeResponseSchema = z.object({\n id: z.uuid(),\n email: z.email(),\n emailVerified: z.boolean(),\n displayName: z.string().nullable(),\n avatarUrl: z.url().nullable(),\n roles: z.number().int(),\n preferredCurrency: z.string(),\n notificationsEnabledCount: z.number().int(),\n hasPushDevice: z.boolean(),\n});\n\nexport const NotificationPreferencesResponseSchema = z.object({\n preferences: z.record(USER_CATEGORY, z.boolean()),\n});\n\nexport const SendFeedbackResponseSchema = z.object({\n id: z.uuid(),\n});\n"]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
'use strict';var chunkJPTEPX6P_js=require('./chunk-JPTEPX6P.js'),chunkW5MCRFFN_js=require('./chunk-W5MCRFFN.js'),zod=require('zod');var u=zod.z.object({id:zod.z.uuid(),userId:zod.z.uuid(),businessName:zod.z.string(),totalEvents:zod.z.number(),totalSpent:zod.z.number(),averageRating:zod.z.number(),totalReviews:zod.z.number().int().nonnegative(),defaultCurrency:zod.z.string(),description:zod.z.string().optional(),category:zod.z.array(zod.z.enum(chunkW5MCRFFN_js.g)),logoUrl:zod.z.url().optional(),hasPin:zod.z.boolean(),businessRegNumber:zod.z.string().optional(),taxId:zod.z.string().optional(),settlementBankCode:zod.z.string().optional(),settlementAccountNumber:zod.z.string().optional(),settlementAccountName:zod.z.string().optional(),paystackSubaccountCode:zod.z.string().optional(),createdAt:zod.z.iso.datetime()}),d=zod.z.object({id:zod.z.uuid(),userId:zod.z.uuid(),companyName:zod.z.string(),bio:zod.z.string(),yearsExperience:zod.z.number().optional(),experienceLevel:zod.z.enum(chunkJPTEPX6P_js.h),equipmentManifest:zod.z.array(zod.z.record(zod.z.string(),zod.z.any())),serviceCategories:zod.z.array(chunkJPTEPX6P_js.n),equipmentItems:zod.z.array(chunkJPTEPX6P_js.n),verificationStatus:zod.z.enum(chunkJPTEPX6P_js.g),averageRating:zod.z.number().positive().multipleOf(.01),totalReviews:zod.z.number(),completionRate:zod.z.number(),isAvailable:zod.z.boolean(),hasPin:zod.z.boolean(),createdAt:zod.z.iso.datetime()}),R=zod.z.object({id:zod.z.uuid(),email:zod.z.email().toLowerCase(),emailVerified:zod.z.boolean(),emailVerifiedAt:zod.z.iso.datetime().optional(),phoneNumber:zod.z.string().optional(),firstName:zod.z.string().optional(),lastName:zod.z.string().optional(),displayName:zod.z.string().optional(),avatarUrl:zod.z.url().optional(),role:zod.z.number().min(1).max(15),accountStatus:zod.z.enum(chunkJPTEPX6P_js.b),kycStatus:zod.z.enum(chunkJPTEPX6P_js.c),hostProfile:u.optional(),producerProfile:d.optional(),createdAt:zod.z.iso.datetime(),updatedAt:zod.z.iso.datetime(),eventCategory:zod.z.array(zod.z.enum(chunkW5MCRFFN_js.g)).optional()}),N=zod.z.object({firstName:zod.z.string().optional(),lastName:zod.z.string().optional(),displayName:zod.z.string().optional(),avatarUrl:zod.z.url().optional(),phoneNumber:zod.z.string().optional(),eventCategory:zod.z.array(zod.z.enum(chunkW5MCRFFN_js.g)).optional()}),v=zod.z.object({businessName:zod.z.string(),description:zod.z.string().optional(),logoUrl:zod.z.string().optional(),category:zod.z.array(zod.z.enum(chunkW5MCRFFN_js.g)).min(1)}),C=zod.z.object({businessName:zod.z.string().min(1).max(120).optional(),description:zod.z.string().max(2e3).optional(),logoUrl:zod.z.string().optional(),category:zod.z.array(zod.z.enum(chunkW5MCRFFN_js.g)).min(1).optional(),businessRegNumber:zod.z.string().max(64).optional(),taxId:zod.z.string().max(64).optional()}),P=zod.z.object({companyName:zod.z.string(),bio:zod.z.string(),logoUrl:zod.z.string().optional(),serviceCategoryIds:zod.z.array(zod.z.uuid()).optional(),serviceCategoryCodes:zod.z.array(zod.z.string().min(1).max(64)).optional(),equipmentItemIds:zod.z.array(zod.z.uuid()).optional(),equipmentItemCodes:zod.z.array(zod.z.string().min(1).max(64)).optional(),yearsExperience:zod.z.number(),experienceLevel:zod.z.enum(chunkJPTEPX6P_js.h),minFee:zod.z.number(),maxFee:zod.z.number(),isAvailable:zod.z.boolean()}),E=zod.z.object({pin:zod.z.string().trim().regex(/^\d{4,8}$/,"pin must be 4-8 digits"),currentPin:zod.z.string().trim().regex(/^\d{4,8}$/,"currentPin must be 4-8 digits").optional()}),g=new Set(["admin","support","livdot","host","producer","system","null","undefined","me","settings","viewer","auth","events","streaming","producers","marketplace","users"]),b=zod.z.string().trim().toLowerCase().min(3,"Display name must be at least 3 characters").max(30,"Display name must be at most 30 characters").regex(/^[a-z0-9_]+$/,"Display name may only contain lowercase letters, digits, and underscores").refine(r=>!g.has(r),{message:"This display name is reserved"}),j=zod.z.object({displayName:b}).strict(),A=zod.z.object({preferredCurrency:zod.z.string().trim().toUpperCase().length(3).regex(/^[A-Z]{3}$/)}).strict(),l=zod.z.enum([chunkJPTEPX6P_js.f.LIVE_ALERTS,chunkJPTEPX6P_js.f.RECOMMENDATIONS,chunkJPTEPX6P_js.f.EVENT_REMINDERS]),y=zod.z.object({category:l,enabled:zod.z.boolean()}),U=zod.z.object({preferences:zod.z.array(y).min(1).max(10).refine(r=>new Set(r.map(p=>p.category)).size===r.length,{message:"Duplicate category in preferences"})}).strict(),I=zod.z.object({category:zod.z.enum(chunkJPTEPX6P_js.e),message:zod.z.string().trim().min(10).max(2e3)}).strict(),q=zod.z.object({id:zod.z.uuid(),email:zod.z.email(),emailVerified:zod.z.boolean(),displayName:zod.z.string().nullable(),avatarUrl:zod.z.url().nullable(),roles:zod.z.number().int(),preferredCurrency:zod.z.string(),notificationsEnabledCount:zod.z.number().int(),hasPushDevice:zod.z.boolean()}),w=zod.z.object({preferences:zod.z.record(l,zod.z.boolean())}),D=zod.z.object({id:zod.z.uuid()});exports.a=u;exports.b=d;exports.c=R;exports.d=N;exports.e=v;exports.f=C;exports.g=P;exports.h=E;exports.i=g;exports.j=b;exports.k=j;exports.l=A;exports.m=y;exports.n=U;exports.o=I;exports.p=q;exports.q=w;exports.r=D;//# sourceMappingURL=chunk-TPEL6PL7.js.map
|
|
2
|
+
//# sourceMappingURL=chunk-TPEL6PL7.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/user/user.schemas.ts"],"names":["HostProfileResponseSchema","z","EventCategory","ProducerProfileResponseSchema","ProducerExperienceLevel","PublicProducerListCategorySchema","ProducerVerificationStatus","UserResponseSchema","AccountStatus","KycStatus","UpdateUserRequestSchema","CreateHostProfileRequestSchema","UpdateHostProfileRequestSchema","CreateProducerProfileRequestSchema","SetProfilePinSchema","RESERVED_DISPLAY_NAMES","DisplayNameSchema","v","UpdateViewerProfileRequestSchema","UpdateViewerCurrencyRequestSchema","USER_CATEGORY","NotificationCategory","NotificationPreferenceItemSchema","UpdateNotificationPreferencesRequestSchema","items","i","SendFeedbackRequestSchema","FeedbackCategory","ViewerMeResponseSchema","NotificationPreferencesResponseSchema","SendFeedbackResponseSchema"],"mappings":"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","file":"chunk-TPEL6PL7.js","sourcesContent":["import { z } from 'zod';\nimport {\n AccountStatus,\n FeedbackCategory,\n KycStatus,\n NotificationCategory,\n ProducerExperienceLevel,\n ProducerVerificationStatus,\n} from './user.enums';\nimport { EventCategory } from '../event';\nimport { PublicProducerListCategorySchema } from '../marketplace';\n\nexport const HostProfileResponseSchema = z.object({\n id: z.uuid(),\n userId: z.uuid(),\n businessName: z.string(),\n totalEvents: z.number(),\n totalSpent: z.number(),\n averageRating: z.number(),\n /** Count of producer→host marketplace reviews reflected in `averageRating`. */\n totalReviews: z.number().int().nonnegative(),\n defaultCurrency: z.string(),\n description: z.string().optional(),\n category: z.array(z.enum(EventCategory)),\n logoUrl: z.url().optional(),\n hasPin: z.boolean(),\n businessRegNumber: z.string().optional(),\n taxId: z.string().optional(),\n settlementBankCode: z.string().optional(),\n settlementAccountNumber: z.string().optional(),\n settlementAccountName: z.string().optional(),\n paystackSubaccountCode: z.string().optional(),\n createdAt: z.iso.datetime(),\n});\n\nexport const ProducerProfileResponseSchema = z.object({\n id: z.uuid(),\n userId: z.uuid(),\n companyName: z.string(),\n bio: z.string(),\n yearsExperience: z.number().optional(),\n experienceLevel: z.enum(ProducerExperienceLevel),\n equipmentManifest: z.array(z.record(z.string(), z.any())),\n serviceCategories: z.array(PublicProducerListCategorySchema),\n equipmentItems: z.array(PublicProducerListCategorySchema),\n verificationStatus: z.enum(ProducerVerificationStatus),\n averageRating: z.number().positive().multipleOf(0.01),\n totalReviews: z.number(),\n completionRate: z.number(),\n isAvailable: z.boolean(),\n hasPin: z.boolean(),\n createdAt: z.iso.datetime(),\n});\n\nexport const UserResponseSchema = z.object({\n id: z.uuid(),\n email: z.email().toLowerCase(),\n emailVerified: z.boolean(),\n emailVerifiedAt: z.iso.datetime().optional(),\n phoneNumber: z.string().optional(),\n firstName: z.string().optional(),\n lastName: z.string().optional(),\n displayName: z.string().optional(),\n avatarUrl: z.url().optional(),\n role: z.number().min(1).max(15),\n accountStatus: z.enum(AccountStatus),\n kycStatus: z.enum(KycStatus),\n hostProfile: HostProfileResponseSchema.optional(),\n producerProfile: ProducerProfileResponseSchema.optional(),\n createdAt: z.iso.datetime(),\n updatedAt: z.iso.datetime(),\n eventCategory: z.array(z.enum(EventCategory)).optional(),\n});\n\nexport const UpdateUserRequestSchema = z.object({\n firstName: z.string().optional(),\n lastName: z.string().optional(),\n displayName: z.string().optional(),\n avatarUrl: z.url().optional(),\n phoneNumber: z.string().optional(),\n eventCategory: z.array(z.enum(EventCategory)).optional(),\n});\n\nexport const CreateHostProfileRequestSchema = z.object({\n businessName: z.string(),\n description: z.string().optional(),\n logoUrl: z.string().optional(),\n category: z.array(z.enum(EventCategory)).min(1),\n});\n\nexport const UpdateHostProfileRequestSchema = z.object({\n businessName: z.string().min(1).max(120).optional(),\n description: z.string().max(2000).optional(),\n logoUrl: z.string().optional(),\n category: z.array(z.enum(EventCategory)).min(1).optional(),\n businessRegNumber: z.string().max(64).optional(),\n taxId: z.string().max(64).optional(),\n});\n\nexport const CreateProducerProfileRequestSchema = z.object({\n companyName: z.string(),\n bio: z.string(),\n logoUrl: z.string().optional(),\n serviceCategoryIds: z.array(z.uuid()).optional(),\n serviceCategoryCodes: z.array(z.string().min(1).max(64)).optional(),\n equipmentItemIds: z.array(z.uuid()).optional(),\n equipmentItemCodes: z.array(z.string().min(1).max(64)).optional(),\n yearsExperience: z.number(),\n experienceLevel: z.enum(ProducerExperienceLevel),\n minFee: z.number(),\n maxFee: z.number(),\n isAvailable: z.boolean(),\n});\n\nexport const SetProfilePinSchema = z.object({\n pin: z\n .string()\n .trim()\n .regex(/^\\d{4,8}$/, 'pin must be 4-8 digits'),\n currentPin: z\n .string()\n .trim()\n .regex(/^\\d{4,8}$/, 'currentPin must be 4-8 digits')\n .optional(),\n});\n\nexport const RESERVED_DISPLAY_NAMES: ReadonlySet<string> = new Set([\n 'admin',\n 'support',\n 'livdot',\n 'host',\n 'producer',\n 'system',\n 'null',\n 'undefined',\n 'me',\n 'settings',\n 'viewer',\n 'auth',\n 'events',\n 'streaming',\n 'producers',\n 'marketplace',\n 'users',\n]);\n\n/** Handle constraints — see viewer-settings.md §3.1. */\nexport const DisplayNameSchema = z\n .string()\n .trim()\n .toLowerCase()\n .min(3, 'Display name must be at least 3 characters')\n .max(30, 'Display name must be at most 30 characters')\n .regex(/^[a-z0-9_]+$/, 'Display name may only contain lowercase letters, digits, and underscores')\n .refine((v) => !RESERVED_DISPLAY_NAMES.has(v), {\n message: 'This display name is reserved',\n });\n\nexport const UpdateViewerProfileRequestSchema = z\n .object({\n displayName: DisplayNameSchema,\n })\n .strict();\n\nexport const UpdateViewerCurrencyRequestSchema = z\n .object({\n preferredCurrency: z\n .string()\n .trim()\n .toUpperCase()\n .length(3)\n .regex(/^[A-Z]{3}$/),\n })\n .strict();\nconst USER_CATEGORY = z.enum([\n NotificationCategory.LIVE_ALERTS,\n NotificationCategory.RECOMMENDATIONS,\n NotificationCategory.EVENT_REMINDERS,\n]);\n\nexport const NotificationPreferenceItemSchema = z.object({\n category: USER_CATEGORY,\n enabled: z.boolean(),\n});\n\nexport const UpdateNotificationPreferencesRequestSchema = z\n .object({\n preferences: z\n .array(NotificationPreferenceItemSchema)\n .min(1)\n .max(10)\n .refine((items) => new Set(items.map((i) => i.category)).size === items.length, {\n message: 'Duplicate category in preferences',\n }),\n })\n .strict();\n\nexport const SendFeedbackRequestSchema = z\n .object({\n category: z.enum(FeedbackCategory),\n message: z.string().trim().min(10).max(2000),\n })\n .strict();\n\nexport const ViewerMeResponseSchema = z.object({\n id: z.uuid(),\n email: z.email(),\n emailVerified: z.boolean(),\n displayName: z.string().nullable(),\n avatarUrl: z.url().nullable(),\n roles: z.number().int(),\n preferredCurrency: z.string(),\n notificationsEnabledCount: z.number().int(),\n hasPushDevice: z.boolean(),\n});\n\nexport const NotificationPreferencesResponseSchema = z.object({\n preferences: z.record(USER_CATEGORY, z.boolean()),\n});\n\nexport const SendFeedbackResponseSchema = z.object({\n id: z.uuid(),\n});\n"]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import {b as b$1,f,a,e,c,g as g$1}from'./chunk-B7B7YFFC.mjs';import {a as a$1}from'./chunk-ASVBPXYH.mjs';import {h as h$1,g,k as k$1,b as b$2}from'./chunk-PAUYI2FU.mjs';import {z as z$1}from'zod';var q=[b$1.REJECTED,b$1.CANCELLED,b$1.CLOSED],k=[...q,b$1.IN_DISPUTE],$={[b$1.DRAFT]:[b$1.AWAITING_PRODUCER_RESPONSE,b$1.CANCELLED],[b$1.REQUESTED]:[b$1.AWAITING_PRODUCER_RESPONSE,b$1.CANCELLED],[b$1.AWAITING_PRODUCER_RESPONSE]:[b$1.IN_NEGOTIATION,b$1.ACCEPTED,b$1.REJECTED,b$1.CANCELLED],[b$1.IN_NEGOTIATION]:[b$1.ACCEPTED,b$1.REJECTED,b$1.CANCELLED],[b$1.ACCEPTED]:[b$1.AWAITING_ESCROW_FUNDING,b$1.CANCELLED],[b$1.AWAITING_ESCROW_FUNDING]:[b$1.CONFIRMED,b$1.CANCELLED],[b$1.CONFIRMED]:[b$1.IN_PROGRESS,b$1.AWAITING_PRODUCER_RECONFIRM],[b$1.AWAITING_PRODUCER_RECONFIRM]:[b$1.CONFIRMED,b$1.CANCELLED],[b$1.IN_PROGRESS]:[b$1.SERVICE_COMPLETED,b$1.CANCELLED],[b$1.SERVICE_COMPLETED]:[b$1.CLOSED],[b$1.IN_DISPUTE]:[b$1.CLOSED],[b$1.REJECTED]:[],[b$1.CANCELLED]:[],[b$1.CLOSED]:[]},H={[`${b$1.DRAFT}->${b$1.AWAITING_PRODUCER_RESPONSE}`]:[f.HOST,f.SYSTEM],[`${b$1.DRAFT}->${b$1.CANCELLED}`]:[f.HOST],[`${b$1.REQUESTED}->${b$1.AWAITING_PRODUCER_RESPONSE}`]:[f.HOST,f.SYSTEM],[`${b$1.REQUESTED}->${b$1.CANCELLED}`]:[f.HOST],[`${b$1.AWAITING_PRODUCER_RESPONSE}->${b$1.IN_NEGOTIATION}`]:[f.PRODUCER],[`${b$1.AWAITING_PRODUCER_RESPONSE}->${b$1.ACCEPTED}`]:[f.PRODUCER],[`${b$1.AWAITING_PRODUCER_RESPONSE}->${b$1.REJECTED}`]:[f.PRODUCER],[`${b$1.AWAITING_PRODUCER_RESPONSE}->${b$1.CANCELLED}`]:[f.HOST,f.PRODUCER],[`${b$1.IN_NEGOTIATION}->${b$1.ACCEPTED}`]:[f.HOST,f.PRODUCER],[`${b$1.IN_NEGOTIATION}->${b$1.REJECTED}`]:[f.HOST,f.PRODUCER],[`${b$1.IN_NEGOTIATION}->${b$1.CANCELLED}`]:[f.HOST,f.PRODUCER],[`${b$1.ACCEPTED}->${b$1.AWAITING_ESCROW_FUNDING}`]:[f.HOST,f.SYSTEM],[`${b$1.ACCEPTED}->${b$1.CANCELLED}`]:[f.HOST,f.PRODUCER],[`${b$1.AWAITING_ESCROW_FUNDING}->${b$1.CONFIRMED}`]:[f.SYSTEM,f.ADMIN],[`${b$1.AWAITING_ESCROW_FUNDING}->${b$1.CANCELLED}`]:[f.HOST,f.ADMIN],[`${b$1.CONFIRMED}->${b$1.IN_PROGRESS}`]:[f.HOST,f.PRODUCER,f.ADMIN],[`${b$1.CONFIRMED}->${b$1.AWAITING_PRODUCER_RECONFIRM}`]:[f.HOST,f.SYSTEM,f.ADMIN],[`${b$1.AWAITING_PRODUCER_RECONFIRM}->${b$1.CONFIRMED}`]:[f.PRODUCER,f.ADMIN],[`${b$1.AWAITING_PRODUCER_RECONFIRM}->${b$1.CANCELLED}`]:[f.HOST,f.PRODUCER,f.ADMIN],[`${b$1.IN_PROGRESS}->${b$1.SERVICE_COMPLETED}`]:[f.PRODUCER,f.SYSTEM,f.ADMIN],[`${b$1.IN_PROGRESS}->${b$1.CANCELLED}`]:[f.HOST,f.ADMIN],[`${b$1.SERVICE_COMPLETED}->${b$1.CLOSED}`]:[f.HOST,f.ADMIN,f.SYSTEM],[`${b$1.IN_DISPUTE}->${b$1.CLOSED}`]:[f.ADMIN,f.HOST]},w=[b$1.REJECTED,b$1.CANCELLED,b$1.IN_DISPUTE];function W(i,a){return `${i}->${a}`}function F(i){let a=$[i]??[];return k.includes(i)?a:[...a,b$1.IN_DISPUTE]}function pe(i,a){return F(i).includes(a)}function z(i,a){return a===b$1.IN_DISPUTE&&!k.includes(i)?[f.HOST,f.PRODUCER]:H[W(i,a)]??[]}function ge(i,a,S){return z(i,a).includes(S)}function Ee(i,a){return w.includes(a)}var Re=z$1.object({origin:z$1.enum(a),eventId:z$1.uuid().optional(),producerId:z$1.uuid(),agreedAmount:z$1.number().min(0)}),Te=z$1.object({escrowReference:z$1.string()}),Ae=z$1.object({id:z$1.uuid(),eventId:z$1.uuid().optional(),hostId:z$1.uuid(),producerId:z$1.uuid(),quotedPrice:z$1.number(),currency:z$1.string(),scopeOfWork:z$1.record(z$1.string(),z$1.any()).optional(),requiredStartAt:z$1.iso.datetime(),requiredEndAt:z$1.iso.datetime(),bookingState:z$1.enum(b$1),paymentStatus:z$1.enum(e),escrowReference:z$1.string().optional(),completedAt:z$1.iso.datetime().optional(),createdAt:z$1.iso.datetime(),updatedAt:z$1.iso.datetime()}),Ce=z$1.object({title:z$1.string().max(255),description:z$1.string(),requiredDate:z$1.iso.datetime(),estimatedDurationMinutes:z$1.number().int().positive().optional(),location:z$1.string(),budgetRangeMin:z$1.number().optional(),budgetRangeMax:z$1.number().optional()}),De=z$1.object({id:z$1.uuid(),hostProfileId:z$1.uuid(),eventId:z$1.uuid().optional(),title:z$1.string(),description:z$1.string(),requiredDate:z$1.iso.datetime(),estimatedDurationMinutes:z$1.number().int().nullable().optional(),location:z$1.string(),budgetRangeMin:z$1.number().optional(),budgetRangeMax:z$1.number().optional(),state:z$1.enum(c),proposalCount:z$1.number(),createdAt:z$1.iso.datetime()});var d={ONSITE:"ONSITE",REMOTE:"REMOTE"},M={LOW:"LOW",MID:"MID",HIGH:"HIGH"};var P=z$1.record(z$1.string(),z$1.unknown()),Me=z$1.object({producerId:z$1.uuid(),origin:z$1.enum(a),eventId:z$1.uuid().optional(),jobListingId:z$1.uuid().optional(),sourceIoiId:z$1.uuid().optional(),agreedAmount:z$1.coerce.number().nonnegative().optional(),scopeOfWork:z$1.string().max(5e3).optional()}).superRefine((i,a$1)=>{i.origin===a.EVENT_DIRECT&&!i.eventId&&a$1.addIssue({code:"custom",message:"eventId is required when origin is EVENT_DIRECT",path:["eventId"]}),i.origin===a.MARKETPLACE_DIRECT&&(i.eventId&&a$1.addIssue({code:"custom",message:"eventId must not be set when origin is MARKETPLACE_DIRECT",path:["eventId"]}),i.sourceIoiId&&a$1.addIssue({code:"custom",message:"sourceIoiId must not be set when origin is MARKETPLACE_DIRECT",path:["sourceIoiId"]})),i.origin===a.JOB_LISTING&&(i.sourceIoiId||a$1.addIssue({code:"custom",message:"sourceIoiId is required when origin is JOB_LISTING",path:["sourceIoiId"]}),i.eventId&&a$1.addIssue({code:"custom",message:"eventId must not be set when origin is JOB_LISTING",path:["eventId"]})),i.sourceIoiId&&i.origin!==a.JOB_LISTING&&a$1.addIssue({code:"custom",message:"sourceIoiId is only allowed when origin is JOB_LISTING",path:["sourceIoiId"]});}),C=z$1.object({id:z$1.uuid(),eventId:z$1.uuid().nullable(),eventLinked:z$1.boolean(),hostProfileId:z$1.uuid(),producerProfileId:z$1.uuid(),origin:z$1.enum(a),jobListingId:z$1.uuid().nullable(),sourceIoiId:z$1.uuid().nullable(),state:z$1.enum(b$1),agreedAmount:h$1.nullable(),scopeOfWork:z$1.string().nullable(),createdAt:z$1.string(),updatedAt:z$1.string()}),Pe=z$1.object({bookingId:z$1.uuid(),booking:C}),K=z$1.string().trim().min(5).max(500),ye=z$1.object({targetState:z$1.enum(b$1),reason:K.optional()}).superRefine((i,a)=>{(i.targetState===b$1.REJECTED||i.targetState===b$1.CANCELLED||i.targetState===b$1.IN_DISPUTE)&&i.reason===void 0&&a.addIssue({code:"custom",message:"reason is required for this transition",path:["reason"]});}),_e=z$1.object({booking:C}),ve=z$1.object({notes:z$1.string().max(2e3).optional()}),Be=z$1.object({notes:z$1.string().max(2e3).optional()}),je=z$1.object({booking:C,hostAcked:z$1.boolean(),producerAcked:z$1.boolean(),completed:z$1.boolean(),forced:z$1.boolean().optional()}),V=(i,a)=>{if(i.eventId)return;i.eventTitle?.trim()||i.title?.trim()||a.addIssue({code:"custom",message:"eventTitle is required when eventId is not provided",path:["eventTitle"]});},D=(i,a)=>{i.requiredDateLocal!==void 0&&!i.timezone?.trim()&&a.addIssue({code:"custom",message:"timezone is required when requiredDateLocal is provided",path:["timezone"]});},N=z$1.object({eventTitle:z$1.string().min(1).max(200).optional(),title:z$1.string().min(1).max(200).optional(),description:z$1.string().min(1).max(5e3),responsibilities:z$1.string().min(1),requirements:z$1.string().min(1),role:z$1.string().min(1).max(120),requiredCount:z$1.coerce.number().int().min(1),requiredDateLocal:z$1.iso.datetime({local:true,offset:false}).optional(),timezone:z$1.string().min(1).optional(),requiredDate:z$1.iso.datetime().optional(),estimatedDurationMinutes:z$1.coerce.number().int().positive().optional(),location:z$1.enum(d),notes:z$1.string().max(2e3).optional(),compensation:z$1.coerce.number().nonnegative().optional(),attachments:P.optional(),eventId:z$1.uuid().optional()}),Q=N.superRefine(V).superRefine(D),Y=z$1.object({eventTitle:z$1.string().min(1).max(200).optional(),title:z$1.string().min(1).max(200).optional(),description:z$1.string().min(1).max(5e3),responsibilities:z$1.string().min(1),requirements:z$1.string().min(1),role:z$1.string().min(1).max(120),requiredCount:z$1.coerce.number().int().min(1),location:z$1.enum(d),eventId:z$1.uuid().optional()}),X=Y,Ge=N.partial().extend({saveAsDraft:z$1.boolean().optional().default(false)}).superRefine(D).superRefine((i,a)=>{if(i.saveAsDraft)return;let S=Q.safeParse(i);S.success||a.addIssue({code:"custom",message:S.error.issues.map(J=>J.message).join("; ")});}),Ue=N.partial().superRefine(D),Je=z$1.object({...g.shape,location:z$1.enum(d).optional(),search:z$1.string().trim().min(2).max(100).optional(),roles:z$1.string().trim().min(1).max(500).optional(),requiredDateFrom:z$1.string().optional(),requiredDateTo:z$1.string().optional(),minCompensation:z$1.coerce.number().int().min(0).optional(),maxCompensation:z$1.coerce.number().int().min(0).optional(),compensationTier:z$1.enum(M).optional(),matchMyAvailability:z$1.enum(["true","false"]).optional().transform(i=>i==="true")}),qe=z$1.object({...g.shape,state:z$1.enum(c).optional(),search:z$1.string().trim().min(2).max(100).optional()}),$e=X.superRefine((i,a)=>{if(i.eventId)return;i.eventTitle?.trim()||i.title?.trim()||a.addIssue({code:"custom",message:"eventTitle is required for standalone job listings",path:["eventTitle"]});}),He=z$1.object({id:z$1.uuid(),state:z$1.literal("OPEN")}),we=z$1.object({id:z$1.uuid(),hostProfileId:z$1.uuid(),eventId:z$1.uuid().nullable(),title:z$1.string(),eventTitle:z$1.string().nullable(),notes:z$1.string().nullable(),description:z$1.string(),responsibilities:z$1.string(),requirements:z$1.string(),role:z$1.string(),requiredCount:z$1.number().int().min(1),requiredDate:z$1.string().nullable(),requiredDateLocal:z$1.string().nullable(),timezone:z$1.string().nullable(),estimatedDurationMinutes:z$1.number().int().nullable(),location:z$1.enum(d),compensation:h$1.nullable(),attachments:z$1.unknown().nullable(),state:z$1.enum(c),proposalCount:z$1.number().int(),cancelledAt:z$1.string().nullable(),cancelledReason:z$1.string().nullable(),createdAt:z$1.string(),updatedAt:z$1.string()}),We=z$1.object({reason:z$1.string().trim().min(5).max(500).optional()}),Fe=z$1.object({id:z$1.uuid(),state:z$1.literal("CANCELLED"),cancelledAt:z$1.iso.datetime().nullable()}),ze=z$1.object({id:z$1.uuid(),state:z$1.literal(c.SUSPENDED)}),Ke=z$1.object({id:z$1.uuid(),state:z$1.literal(c.OPEN)}),Ve=z$1.object({coverMessage:z$1.string().min(1).max(2e3).optional(),proposedAmount:z$1.coerce.number().nonnegative().optional(),availabilityNotes:z$1.string().max(2e3).optional(),attachments:P.optional()}),y=z$1.object({id:z$1.uuid(),jobListingId:z$1.uuid(),producerProfileId:z$1.uuid(),coverMessage:z$1.string().nullable(),proposedAmount:h$1.nullable(),availabilityNotes:z$1.string().nullable(),state:z$1.enum(a$1),resultingBookingId:z$1.uuid().nullable(),withdrawnAt:z$1.string().nullable(),selectedAt:z$1.string().nullable(),createdAt:z$1.string(),updatedAt:z$1.string()}),Z=y.extend({producerCompanyName:z$1.string().nullable()}),T={CREATED_AT:"createdAt",UPDATED_AT:"updatedAt",PROPOSED_AMOUNT:"proposedAmount"},A={ASC:"asc",DESC:"desc"},Qe=z$1.object({...g.shape,jobListingId:z$1.uuid().optional(),state:z$1.enum(a$1).optional(),search:z$1.string().trim().min(2).max(100).optional(),sortBy:z$1.enum(T).default(T.CREATED_AT),sortOrder:z$1.enum(A).default(A.DESC)}),Ye=Z.extend({producerDisplayName:z$1.string(),producerAvatarUrl:z$1.url().nullable(),producerServiceCategoryLabels:z$1.array(z$1.string()),producerEquipmentLabels:z$1.array(z$1.string()),producerIsVerified:z$1.boolean(),jobListingTitle:z$1.string(),jobListingRole:z$1.string(),jobListingState:z$1.enum(c),jobListingLocation:z$1.enum(d),jobListingEventId:z$1.uuid().nullable(),jobListingEventTitle:z$1.string().nullable()}),Xe=z$1.object({...g.shape,jobListingId:z$1.uuid().optional(),state:z$1.enum(a$1).optional(),search:z$1.string().trim().min(2).max(100).optional(),sortBy:z$1.enum(T).default(T.CREATED_AT),sortOrder:z$1.enum(A).default(A.DESC)}),Ze=y.extend({hostBusinessName:z$1.string().nullable(),jobListingTitle:z$1.string(),jobListingRole:z$1.string(),jobListingState:z$1.enum(c),jobListingLocation:z$1.enum(d),jobListingEventId:z$1.uuid().nullable(),jobListingEventTitle:z$1.string().nullable(),jobListingRequiredDate:z$1.string().nullable(),jobListingCompensation:h$1.nullable()});var _={SENT:"SENT",DELIVERED:"DELIVERED",READ:"READ"};var ee=z$1.object({id:z$1.uuid(),bookingId:z$1.uuid(),hostProfileId:z$1.uuid(),producerProfileId:z$1.uuid(),createdAt:z$1.string(),updatedAt:z$1.string()}),te=z$1.object({id:z$1.uuid(),url:z$1.string(),mimeType:z$1.string(),sizeBytes:z$1.number().int(),createdAt:z$1.string()}),O=z$1.object({id:z$1.uuid(),threadId:z$1.uuid(),senderUserId:z$1.uuid(),body:z$1.string(),sentAt:z$1.string(),deliveryStatus:z$1.enum(_),readAt:z$1.string().nullable(),attachments:z$1.array(te)}),st=g,at=z$1.object({messages:z$1.array(O),...k$1.shape}),ut=z$1.object({thread:ee,messages:z$1.array(O),...k$1.shape}),ct=z$1.object({body:z$1.string().trim().min(1).max(5e3),attachments:z$1.array(z$1.object({url:z$1.string().url(),mimeType:z$1.string().min(1).max(120),sizeBytes:z$1.number().int().positive()})).max(10).optional()}),lt=z$1.object({message:O}),mt=z$1.object({url:z$1.url(),key:z$1.string().min(1),mimeType:z$1.string().min(1).max(120),sizeBytes:z$1.number().int().positive()}),dt=z$1.object({upToMessageId:z$1.uuid().optional()}),pt=z$1.object({markedCount:z$1.number().int().nonnegative()}),oe=z$1.object({threadId:z$1.uuid(),bookingId:z$1.uuid(),title:z$1.string(),lastMessagePreview:z$1.string().nullable(),lastMessageAt:z$1.string().nullable(),lastSenderUserId:z$1.uuid().nullable(),lastSenderDisplayName:z$1.string().nullable(),unreadCount:z$1.number().int().nonnegative(),bookingState:z$1.enum(b$1),producerProfileId:z$1.uuid(),producerDisplayName:z$1.string(),producerAvatarUrl:z$1.string().nullable(),hostProfileId:z$1.uuid(),hostDisplayName:z$1.string(),hostAvatarUrl:z$1.string().nullable(),counterpartyDisplayName:z$1.string(),counterpartyAvatarUrl:z$1.string().nullable(),counterpartyRole:z$1.enum(["HOST","PRODUCER"])}),gt=z$1.object({items:z$1.array(oe),...k$1.shape});var v=z$1.enum(["APPLICATIONS","UPCOMING","LIVE","COMPLETED","JOB_INVITES"]),ne=z$1.enum(["PENDING","SHORTLISTED","SELECTED","WITHDRAWN","REJECTED","CANCELLED","INVITED","NEGOTIATING","CONFIRMED","LIVE","COMPLETED","DISPUTED"]),ie=z$1.enum(["IOI","BOOKING","ASSIGNMENT"]),bt=z$1.object({tab:v,search:z$1.string().trim().min(2).max(100).optional(),...g.shape}),re=z$1.object({id:z$1.uuid(),kind:ie,eventName:z$1.string(),date:z$1.string().nullable(),role:z$1.string(),payment:h$1.nullable(),status:ne,statusCode:z$1.string(),jobListingId:z$1.uuid().nullable(),bookingId:z$1.uuid().nullable(),ioiId:z$1.uuid().nullable(),eventId:z$1.uuid().nullable(),assignmentId:z$1.uuid().nullable().optional()}),Rt=z$1.object({tab:v,items:z$1.array(re),...k$1.shape}),Tt=z$1.object({applications:z$1.number().int().nonnegative(),upcoming:z$1.number().int().nonnegative(),live:z$1.number().int().nonnegative(),completed:z$1.number().int().nonnegative(),jobInvites:z$1.number().int().nonnegative()});var se=z$1.object({id:z$1.string(),role:b$2}),L=z$1.object({reason:z$1.string().optional(),ipAddress:z$1.string().optional(),userAgent:z$1.string().optional(),traceId:z$1.string().optional()}),B=z$1.record(z$1.string(),z$1.unknown()),ae=L.extend({beforeState:B.optional(),afterState:B.optional()}),ue=L.extend({messageId:z$1.string(),bodyPreview:z$1.string(),attachmentCount:z$1.number().int().nonnegative().optional()}),ce=L.extend({messageId:z$1.string(),attachmentId:z$1.string(),url:z$1.string(),mimeType:z$1.string(),sizeBytes:z$1.number().int().nonnegative()}),h={timestamp:z$1.string().datetime(),actor:se};function b(i){return z$1.object({...h,action:z$1.literal(i),details:ae})}var le=z$1.discriminatedUnion("action",[b(g$1.STATE_CHANGED),b(g$1.TERMS_MODIFIED),b(g$1.BOOKING_CREATED),b(g$1.BOOKING_COMPLETED),b(g$1.BOOKING_CANCELLED),b(g$1.BOOKING_ACCEPTED),b(g$1.BOOKING_REJECTED),z$1.object({...h,action:z$1.literal(g$1.MESSAGE_SENT),details:ue}),z$1.object({...h,action:z$1.literal(g$1.ATTACHMENT_ADDED),details:ce})]),ht=z$1.object({items:z$1.array(le),...k$1.shape});var j={DRAFT:"DRAFT",INVITED:"INVITED",ACCEPTED:"ACCEPTED",REJECTED:"REJECTED",CANCELLED:"CANCELLED",EXPIRED:"EXPIRED"};var G=z$1.object({role:z$1.string().trim().min(1).max(120),responsibilities:z$1.string().trim().min(1).max(5e3),requirements:z$1.string().trim().min(1).max(5e3),compensation:h$1,location:z$1.enum(d),notes:z$1.string().trim().max(2e3).optional()}),yt=G.extend({producerId:z$1.uuid()}),_t=G.partial().refine(i=>Object.keys(i).length>0,{message:"At least one field is required"}),me=z$1.object({id:z$1.uuid(),companyName:z$1.string(),displayName:z$1.string().nullable(),avatarUrl:z$1.string().nullable(),producerIsVerified:z$1.boolean()}),U=z$1.object({id:z$1.uuid(),eventId:z$1.uuid(),hostId:z$1.uuid(),producerId:z$1.uuid(),role:z$1.string(),responsibilities:z$1.string(),requirements:z$1.string(),compensation:h$1,location:z$1.enum(d),notes:z$1.string().nullable(),state:z$1.enum(j),bookingId:z$1.uuid().nullable(),invitedAt:z$1.iso.datetime().nullable(),respondedAt:z$1.iso.datetime().nullable(),rejectReason:z$1.string().nullable(),createdAt:z$1.iso.datetime(),updatedAt:z$1.iso.datetime(),producer:me.optional(),eventTitle:z$1.string().optional(),eventScheduledStartLocal:z$1.iso.datetime({local:true,offset:false}).nullable().optional()}),vt=z$1.object({items:z$1.array(U)}),Bt=z$1.object({reason:z$1.string().trim().min(5).max(500)}),jt=z$1.object({assignment:U,bookingId:z$1.uuid()});export{lt as $,Ue as A,Bt as Aa,Je as B,jt as Ba,qe as C,$e as D,He as E,we as F,We as G,Fe as H,ze as I,Ke as J,Ve as K,y as L,Z as M,T as N,A as O,Qe as P,Ye as Q,Xe as R,Ze as S,_ as T,ee as U,te as V,O as W,st as X,at as Y,ut as Z,ct as _,q as a,mt as aa,$ as b,dt as ba,H as c,pt as ca,w as d,oe as da,W as e,gt as ea,F as f,v as fa,pe as g,ne as ga,z as h,ie as ha,ge as i,bt as ia,Ee as j,re as ja,Re as k,Rt as ka,Te as l,Tt as la,Ae as m,se as ma,Ce as n,L as na,De as o,B as oa,d as p,ae as pa,M as q,ue as qa,Me as r,ce as ra,C as s,le as sa,Pe as t,ht as ta,ye as u,j as ua,_e as v,yt as va,ve as w,_t as wa,Be as x,me as xa,je as y,U as ya,Ge as z,vt as za};//# sourceMappingURL=chunk-URFS7U34.mjs.map
|
|
2
|
+
//# sourceMappingURL=chunk-URFS7U34.mjs.map
|