LogoLogo

Schema Benchmarks

    • home
      Home

    • download_2
      Download

    • timer
      Initialization
    • check_circle
      Validation
    • output_circle
      Parsing
    • swap_horiz
      Codec
    • schema
      Standard Schema
    • format_quote
      String

    • error
      Stack

  • JSON Schema

    • data_object
      Schema to JSON
    • code
      JSON to Schema
    • verified
      Compliance

    • deployed_code
      Libraries

    • article
      Blog
Expand sidebarExpand sidebar
yup/SourceSource
github
GitHubGitHub
DiscordDiscord
PreferencesPreferences
Created by eskimojo for Open Circle

Preferences

Style
Theme
NPM browser
Code ligatures
schemas/libraries/yup/download/index.ts
Copy to clipboardCopy to clipboard
schemas/libraries/yup/download/index.ts
Copy to clipboardCopy to clipboard
schemas/libraries/yup/download/index.ts
Copy to clipboardCopy to clipboard
import * as yup from "yup"; import type { ProductData } from "#src"; const imageSchema = yup.object({ id: yup.number().required(), created: yup.date().required(), title: yup .string() .min(1) .max(100) .required(), type: yup .string() .oneOf(["jpg", "png"]) .required(), size: yup.number().required(), url: yup.string().url().required(), }); const ratingSchema = yup.object({ id: yup.number().required(), stars: yup .number() .min(1) .max(5) .required(), title: yup .string() .min(1) .max(100) .required(), text: yup .string() .min(1) .max(1000) .required(), images: yup .array(imageSchema) .required(), }); const productSchema = yup.object({ id: yup.number().required(), created: yup.date().required(), title: yup .string() .min(1) .max(100) .required(), brand: yup .string() .min(1) .max(30) .required(), description: yup .string() .min(1) .max(500) .required(), price: yup .number() .min(1) .max(10000) .required(), discount: yup .number() .min(1) .max(100) .required() .nullable(), quantity: yup .number() .min(0) .max(10) .required(), tags: yup .array( yup .string() .min(1) .max(30) .required(), ) .required(), images: yup .array(imageSchema) .required(), ratings: yup .array(ratingSchema) .required(), }) satisfies yup.Schema<ProductData>; productSchema.validate({});
import * as yup from "yup"; import type { ProductData } from "#src"; const imageSchema = yup.object({ id: yup.number().required(), created: yup.date().required(), title: yup.string().min(1).max(100).required(), type: yup.string().oneOf(["jpg", "png"]).required(), size: yup.number().required(), url: yup.string().url().required(), }); const ratingSchema = yup.object({ id: yup.number().required(), stars: yup.number().min(1).max(5).required(), title: yup.string().min(1).max(100).required(), text: yup.string().min(1).max(1000).required(), images: yup.array(imageSchema).required(), }); const productSchema = yup.object({ id: yup.number().required(), created: yup.date().required(), title: yup.string().min(1).max(100).required(), brand: yup.string().min(1).max(30).required(), description: yup.string().min(1).max(500).required(), price: yup.number().min(1).max(10000).required(), discount: yup .number() .min(1) .max(100) .required() .nullable(), quantity: yup.number().min(0).max(10).required(), tags: yup .array(yup.string().min(1).max(30).required()) .required(), images: yup.array(imageSchema).required(), ratings: yup.array(ratingSchema).required(), }) satisfies yup.Schema<ProductData>; productSchema.validate({});
import * as yup from "yup"; import type { ProductData } from "#src"; const imageSchema = yup.object({ id: yup.number().required(), created: yup.date().required(), title: yup.string().min(1).max(100).required(), type: yup.string().oneOf(["jpg", "png"]).required(), size: yup.number().required(), url: yup.string().url().required(), }); const ratingSchema = yup.object({ id: yup.number().required(), stars: yup.number().min(1).max(5).required(), title: yup.string().min(1).max(100).required(), text: yup.string().min(1).max(1000).required(), images: yup.array(imageSchema).required(), }); const productSchema = yup.object({ id: yup.number().required(), created: yup.date().required(), title: yup.string().min(1).max(100).required(), brand: yup.string().min(1).max(30).required(), description: yup.string().min(1).max(500).required(), price: yup.number().min(1).max(10000).required(), discount: yup.number().min(1).max(100).required().nullable(), quantity: yup.number().min(0).max(10).required(), tags: yup.array(yup.string().min(1).max(30).required()).required(), images: yup.array(imageSchema).required(), ratings: yup.array(ratingSchema).required(), }) satisfies yup.Schema<ProductData>; productSchema.validate({});