UNPKG

@smooai/utils

Version:

A collection of shared utilities and tools used across SmooAI projects. This package provides common functionality to standardize and simplify development across all SmooAI repositories.

1 lines 1.31 kB
{"version":3,"file":"phoneNumber.cjs","names":["z"],"sources":["../../src/validation/phoneNumber.ts"],"sourcesContent":["import { parsePhoneNumberWithError, PhoneNumber } from 'libphonenumber-js';\nimport { RefinementCtx, z } from 'zod';\n\nexport type * from 'libphonenumber-js';\n\nexport function validateAndTransformPhoneNumber(value: string | undefined, context: RefinementCtx): string | undefined {\n let phoneNumber: PhoneNumber;\n if (!value) return undefined;\n try {\n phoneNumber = parsePhoneNumberWithError(value, 'US');\n } catch (error) {\n let errorMessage = `Unable to parse phone number (${value}) and convert into E.164 format.`;\n if (error instanceof Error) {\n errorMessage += ` Error: ${error.message}`;\n }\n context.addIssue({\n code: z.ZodIssueCode.custom,\n message: errorMessage,\n });\n\n return z.NEVER;\n }\n\n return phoneNumber.number;\n}\n"],"mappings":";;;;;AAKA,SAAgB,gCAAgC,OAA2B,SAA4C;CACnH,IAAI;CACJ,IAAI,CAAC,OAAO,OAAO,KAAA;CACnB,IAAI;EACA,eAAA,GAAA,kBAAA,2BAAwC,OAAO,IAAI;CACvD,SAAS,OAAO;EACZ,IAAI,eAAe,iCAAiC,MAAM;EAC1D,IAAI,iBAAiB,OACjB,gBAAgB,WAAW,MAAM;EAErC,QAAQ,SAAS;GACb,MAAMA,IAAAA,EAAE,aAAa;GACrB,SAAS;EACb,CAAC;EAED,OAAOA,IAAAA,EAAE;CACb;CAEA,OAAO,YAAY;AACvB"}