UNPKG

@dfinity/zod-schemas

Version:

A collection of reusable Zod schemas and validators for common data patterns in ICP applications

5 lines (4 loc) 744 B
import { createRequire as topLevelCreateRequire } from 'module'; const require = topLevelCreateRequire(import.meta.url); import{Principal as i}from"@icp-sdk/core/principal";import*as n from"zod";var f=n.string().refine(r=>{try{return i.fromText(r),!0}catch{return!1}},{error:"Invalid textual representation of a Principal."});import*as l from"zod";var p=({additionalProtocols:r=[],allowHttpLocally:o=!0})=>l.url().refine(a=>{try{let t=[...new Set(["https:",...r])],{protocol:e,hostname:c}=new URL(a);return o&&["localhost","127.0.0.1"].includes(c)?["http:",...t].includes(e):t.includes(e)}catch{return!1}},{error:"Invalid URL."}),u=p({});export{f as PrincipalTextSchema,u as UrlSchema,p as createUrlSchema}; //# sourceMappingURL=index.mjs.map