From 7b9434007e694133476fb089508965e9d02ddc58 Mon Sep 17 00:00:00 2001 From: GitHub workflow <2769109+epoberezkin@users.noreply.github.com> Date: Tue, 4 Jun 2024 19:04:36 +0000 Subject: [PATCH] updated by ajv workflow https://github.com/ajv-validator/ajv/actions/runs/9372272392 --- 404.html | 6 +++--- api.html | 6 +++--- assets/css/0.styles.65997161.css | 1 + assets/img/contributors.d37a7073.jpg | Bin 0 -> 242916 bytes assets/js/21.3036754c.js | 1 + assets/js/48.92467b64.js | 1 + assets/js/50.29b85cee.js | 1 + assets/js/74.7e6066ee.js | 1 + assets/js/78.25350e8e.js | 1 + assets/js/app.ede0789a.js | 16 ++++++++++++++++ code_of_conduct/index.html | 6 +++--- codegen.html | 6 +++--- coercion.html | 6 +++--- components.html | 6 +++--- contributing/index.html | 6 +++--- faq.html | 6 +++--- guide/async-validation.html | 6 +++--- guide/combining-schemas.html | 6 +++--- guide/environments.html | 6 +++--- guide/formats.html | 6 +++--- guide/getting-started.html | 6 +++--- guide/managing-schemas.html | 6 +++--- guide/modifying-data.html | 6 +++--- guide/schema-language.html | 6 +++--- guide/typescript.html | 6 +++--- guide/user-keywords.html | 6 +++--- guide/why-ajv.html | 6 +++--- index.html | 12 ++++++------ json-schema.html | 6 +++--- json-type-definition.html | 6 +++--- keywords.html | 6 +++--- license.html | 6 +++--- ...-08-14-mozilla-grant-openjs-foundation.html | 6 +++--- news/2020-12-15-ajv-version-7-released.html | 6 +++--- ...3-07-ajv-supports-json-type-definition.html | 6 +++--- news/2021-03-27-ajv-version-8-released.html | 6 +++--- news/2021-04-24-ajv-online-event.html | 6 +++--- news/2021-05-24-ajv-online-event-video.html | 6 +++--- ...21-07-22-ajv-microsoft-foss-fund-award.html | 6 +++--- news/index.html | 6 +++--- options.html | 8 ++++---- packages/ajv-cli.html | 6 +++--- packages/ajv-errors.html | 6 +++--- packages/ajv-formats.html | 6 +++--- packages/ajv-i18n.html | 6 +++--- packages/ajv-keywords.html | 6 +++--- packages/index.html | 6 +++--- security.html | 6 +++--- standalone.html | 6 +++--- strict-mode.html | 6 +++--- testimonials.html | 6 +++--- v6-to-v8-migration.html | 6 +++--- 52 files changed, 158 insertions(+), 136 deletions(-) create mode 100644 assets/css/0.styles.65997161.css create mode 100644 assets/img/contributors.d37a7073.jpg create mode 100644 assets/js/21.3036754c.js create mode 100644 assets/js/48.92467b64.js create mode 100644 assets/js/50.29b85cee.js create mode 100644 assets/js/74.7e6066ee.js create mode 100644 assets/js/78.25350e8e.js create mode 100644 assets/js/app.ede0789a.js diff --git a/404.html b/404.html index e5d6787ec..c4b853db5 100644 --- a/404.html +++ b/404.html @@ -18,13 +18,13 @@ - - + +

404

There's nothing here.
Take me home.
- + diff --git a/api.html b/api.html index 6f7c4c279..9e0954598 100644 --- a/api.html +++ b/api.html @@ -18,8 +18,8 @@ - - + +
- + diff --git a/assets/css/0.styles.65997161.css b/assets/css/0.styles.65997161.css new file mode 100644 index 000000000..a3a0161b6 --- /dev/null +++ b/assets/css/0.styles.65997161.css @@ -0,0 +1 @@ +code[class*=language-],pre[class*=language-]{color:#ccc;background:none;font-family:Consolas,Monaco,Andale Mono,Ubuntu Mono,monospace;font-size:1em;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;hyphens:none}pre[class*=language-]{padding:1em;margin:.5em 0;overflow:auto}:not(pre)>code[class*=language-],pre[class*=language-]{background:#2d2d2d}:not(pre)>code[class*=language-]{padding:.1em;border-radius:.3em;white-space:normal}.token.block-comment,.token.cdata,.token.comment,.token.doctype,.token.prolog{color:#999}.token.punctuation{color:#ccc}.token.attr-name,.token.deleted,.token.namespace,.token.tag{color:#e2777a}.token.function-name{color:#6196cc}.token.boolean,.token.function,.token.number{color:#f08d49}.token.class-name,.token.constant,.token.property,.token.symbol{color:#f8c555}.token.atrule,.token.builtin,.token.important,.token.keyword,.token.selector{color:#cc99cd}.token.attr-value,.token.char,.token.regex,.token.string,.token.variable{color:#7ec699}.token.entity,.token.operator,.token.url{color:#67cdcc}.token.bold,.token.important{font-weight:700}.token.italic{font-style:italic}.token.entity{cursor:help}.token.inserted{color:green}.theme-default-content code{color:#545252;padding:.25rem .5rem;margin:0;font-size:.85em;background-color:rgba(27,31,35,.05);border-radius:3px}.theme-default-content code .token.deleted{color:#ec5975}.theme-default-content code .token.inserted{color:#07aab4}.theme-default-content pre,.theme-default-content pre[class*=language-]{line-height:1.4;padding:1.25rem 1.5rem;margin:.85rem 0;background-color:#282c34;border-radius:6px;overflow:auto}.theme-default-content pre[class*=language-] code,.theme-default-content pre code{color:#fff;padding:0;background-color:transparent;border-radius:0}div[class*=language-]{position:relative;background-color:#282c34;border-radius:6px}div[class*=language-] .highlight-lines{-webkit-user-select:none;user-select:none;padding-top:1.3rem;position:absolute;top:0;left:0;width:100%;line-height:1.4}div[class*=language-] .highlight-lines .highlighted{background-color:rgba(0,0,0,.66)}div[class*=language-] pre,div[class*=language-] pre[class*=language-]{background:transparent;position:relative;z-index:1}div[class*=language-]:before{position:absolute;z-index:3;top:.8em;right:1em;font-size:.75rem;color:hsla(0,0%,100%,.4)}div[class*=language-]:not(.line-numbers-mode) .line-numbers-wrapper{display:none}div[class*=language-].line-numbers-mode .highlight-lines .highlighted{position:relative}div[class*=language-].line-numbers-mode .highlight-lines .highlighted:before{content:" ";position:absolute;z-index:3;left:0;top:0;display:block;width:3.5rem;height:100%;background-color:rgba(0,0,0,.66)}div[class*=language-].line-numbers-mode pre{padding-left:4.5rem;vertical-align:middle}div[class*=language-].line-numbers-mode .line-numbers-wrapper{position:absolute;top:0;width:3.5rem;text-align:center;color:hsla(0,0%,100%,.3);padding:1.25rem 0;line-height:1.4}div[class*=language-].line-numbers-mode .line-numbers-wrapper br{-webkit-user-select:none;user-select:none}div[class*=language-].line-numbers-mode .line-numbers-wrapper .line-number{position:relative;z-index:4;-webkit-user-select:none;user-select:none;font-size:.85em}div[class*=language-].line-numbers-mode:after{content:"";position:absolute;z-index:2;top:0;left:0;width:3.5rem;height:100%;border-radius:6px 0 0 6px;border-right:1px solid rgba(0,0,0,.66);background-color:#282c34}div[class~=language-js]:before{content:"js"}div[class~=language-ts]:before{content:"ts"}div[class~=language-html]:before{content:"html"}div[class~=language-md]:before{content:"md"}div[class~=language-vue]:before{content:"vue"}div[class~=language-css]:before{content:"css"}div[class~=language-sass]:before{content:"sass"}div[class~=language-scss]:before{content:"scss"}div[class~=language-less]:before{content:"less"}div[class~=language-stylus]:before{content:"stylus"}div[class~=language-go]:before{content:"go"}div[class~=language-java]:before{content:"java"}div[class~=language-c]:before{content:"c"}div[class~=language-sh]:before{content:"sh"}div[class~=language-yaml]:before{content:"yaml"}div[class~=language-py]:before{content:"py"}div[class~=language-docker]:before{content:"docker"}div[class~=language-dockerfile]:before{content:"dockerfile"}div[class~=language-makefile]:before{content:"makefile"}div[class~=language-javascript]:before{content:"js"}div[class~=language-typescript]:before{content:"ts"}div[class~=language-markup]:before{content:"html"}div[class~=language-markdown]:before{content:"md"}div[class~=language-json]:before{content:"json"}div[class~=language-ruby]:before{content:"rb"}div[class~=language-python]:before{content:"py"}div[class~=language-bash]:before{content:"sh"}div[class~=language-php]:before{content:"php"}.custom-block .custom-block-title{font-weight:600;margin-bottom:-.4rem}.custom-block.danger,.custom-block.tip,.custom-block.warning{padding:.1rem 1.5rem;border-left-width:.5rem;border-left-style:solid;margin:1rem 0}.custom-block.tip{background-color:#f3f5f7;border-color:#42b983}.custom-block.warning{background-color:rgba(255,229,100,.3);border-color:#e7c000;color:#6b5900}.custom-block.warning .custom-block-title{color:#b29400}.custom-block.warning a{color:#292828}.custom-block.danger{background-color:#ffe6e6;border-color:#c00;color:#4d0000}.custom-block.danger .custom-block-title{color:#900}.custom-block.danger a{color:#292828}.custom-block.details{display:block;position:relative;border-radius:2px;margin:1.6em 0;padding:1.6em;background-color:#eee}.custom-block.details h4{margin-top:0}.custom-block.details figure:last-child,.custom-block.details p:last-child{margin-bottom:0;padding-bottom:0}.custom-block.details summary{outline:none;cursor:pointer}.arrow{display:inline-block;width:0;height:0}.arrow.up{border-bottom:6px solid #ccc}.arrow.down,.arrow.up{border-left:4px solid transparent;border-right:4px solid transparent}.arrow.down{border-top:6px solid #ccc}.arrow.right{border-left:6px solid #ccc}.arrow.left,.arrow.right{border-top:4px solid transparent;border-bottom:4px solid transparent}.arrow.left{border-right:6px solid #ccc}.theme-default-content:not(.custom){max-width:740px;margin:0 auto;padding:2rem 2.5rem}@media (max-width:959px){.theme-default-content:not(.custom){padding:2rem}}@media (max-width:480px){.theme-default-content:not(.custom){padding:1.5rem}}.table-of-contents .badge{vertical-align:middle}body,html{padding:0;margin:0;background-color:#fff}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px;color:#292828}.page{padding-left:20rem}.navbar{z-index:20;right:0;height:3.6rem;background-color:#fff;box-sizing:border-box;border-bottom:1px solid #eaecef}.navbar,.sidebar-mask{position:fixed;top:0;left:0}.sidebar-mask{z-index:9;width:100vw;height:100vh;display:none}.sidebar{font-size:16px;background-color:#fff;width:20rem;position:fixed;z-index:10;margin:0;top:3.6rem;left:0;bottom:0;box-sizing:border-box;border-right:1px solid #eaecef;overflow-y:auto}.theme-default-content:not(.custom)>:first-child{margin-top:3.6rem}.theme-default-content:not(.custom) a:hover{text-decoration:underline}.theme-default-content:not(.custom) p.demo{padding:1rem 1.5rem;border:1px solid #ddd;border-radius:4px}.theme-default-content:not(.custom) img{max-width:100%}.theme-default-content.custom{padding:0;margin:0}.theme-default-content.custom img{max-width:100%}a{font-weight:500;text-decoration:none}a,p a code{color:#07aab4}p a code{font-weight:400}kbd{background:#eee;border:.15rem solid #ddd;border-bottom:.25rem solid #ddd;border-radius:.15rem;padding:0 .15em}blockquote{font-size:1rem;color:#999;border-left:.2rem solid #dfe2e5;margin:1rem 0;padding:.25rem 0 .25rem 1rem}blockquote>p{margin:0}ol,ul{padding-left:1.2em}strong{font-weight:600}h1,h2,h3,h4,h5,h6{font-weight:600;line-height:1.25}.theme-default-content:not(.custom)>h1,.theme-default-content:not(.custom)>h2,.theme-default-content:not(.custom)>h3,.theme-default-content:not(.custom)>h4,.theme-default-content:not(.custom)>h5,.theme-default-content:not(.custom)>h6{margin-top:-3.1rem;padding-top:4.6rem;margin-bottom:0}.theme-default-content:not(.custom)>h1:first-child,.theme-default-content:not(.custom)>h2:first-child,.theme-default-content:not(.custom)>h3:first-child,.theme-default-content:not(.custom)>h4:first-child,.theme-default-content:not(.custom)>h5:first-child,.theme-default-content:not(.custom)>h6:first-child{margin-top:-1.5rem;margin-bottom:1rem}.theme-default-content:not(.custom)>h1:first-child+.custom-block,.theme-default-content:not(.custom)>h1:first-child+p,.theme-default-content:not(.custom)>h1:first-child+pre,.theme-default-content:not(.custom)>h2:first-child+.custom-block,.theme-default-content:not(.custom)>h2:first-child+p,.theme-default-content:not(.custom)>h2:first-child+pre,.theme-default-content:not(.custom)>h3:first-child+.custom-block,.theme-default-content:not(.custom)>h3:first-child+p,.theme-default-content:not(.custom)>h3:first-child+pre,.theme-default-content:not(.custom)>h4:first-child+.custom-block,.theme-default-content:not(.custom)>h4:first-child+p,.theme-default-content:not(.custom)>h4:first-child+pre,.theme-default-content:not(.custom)>h5:first-child+.custom-block,.theme-default-content:not(.custom)>h5:first-child+p,.theme-default-content:not(.custom)>h5:first-child+pre,.theme-default-content:not(.custom)>h6:first-child+.custom-block,.theme-default-content:not(.custom)>h6:first-child+p,.theme-default-content:not(.custom)>h6:first-child+pre{margin-top:2rem}h1:focus .header-anchor,h1:hover .header-anchor,h2:focus .header-anchor,h2:hover .header-anchor,h3:focus .header-anchor,h3:hover .header-anchor,h4:focus .header-anchor,h4:hover .header-anchor,h5:focus .header-anchor,h5:hover .header-anchor,h6:focus .header-anchor,h6:hover .header-anchor{opacity:1}h1{font-size:2.2rem}h2{font-size:1.65rem;padding-bottom:.3rem;border-bottom:1px solid #eaecef}h3{font-size:1.35rem}a.header-anchor{font-size:.85em;float:left;margin-left:-.87em;padding-right:.23em;margin-top:.125em;opacity:0}a.header-anchor:focus,a.header-anchor:hover{text-decoration:none}.line-number,code,kbd{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}ol,p,ul{line-height:1.7}hr{border:0;border-top:1px solid #eaecef}table{border-collapse:collapse;margin:1rem 0;display:block;overflow-x:auto}tr{border-top:1px solid #dfe2e5}tr:nth-child(2n){background-color:#f6f8fa}td,th{border:1px solid #dfe2e5;padding:.6em 1em}.theme-container.sidebar-open .sidebar-mask{display:block}.theme-container.no-navbar .theme-default-content:not(.custom)>h1,.theme-container.no-navbar h2,.theme-container.no-navbar h3,.theme-container.no-navbar h4,.theme-container.no-navbar h5,.theme-container.no-navbar h6{margin-top:1.5rem;padding-top:0}.theme-container.no-navbar .sidebar{top:0}@media (min-width:720px){.theme-container.no-sidebar .sidebar{display:none}.theme-container.no-sidebar .page{padding-left:0}}@media (max-width:959px){.sidebar{font-size:15px;width:16.4rem}.page{padding-left:16.4rem}}@media (max-width:719px){.sidebar{top:0;padding-top:3.6rem;transform:translateX(-100%);transition:transform .2s ease}.page{padding-left:0}.theme-container.sidebar-open .sidebar{transform:translateX(0)}.theme-container.no-navbar .sidebar{padding-top:0}}@media (max-width:480px){h1{font-size:1.9rem}.theme-default-content div[class*=language-]{margin:.85rem -1.5rem;border-radius:0}}img+span>.icon.outbound{display:none}body{font-family:Raleway;font-weight:400}strong{font-weight:550}h1,h2,h3,h4,h5,h6{font-family:IstokWeb;font-weight:400}.custom-block.tip{border-color:#23c8d2;background-color:#f7f7f3;color:#292828}.custom-block.tip .custom-block-title{color:#292828}.custom-block.warning{border-color:#f1f440;background-color:#f7f7f3;color:#292828}.custom-block.warning .custom-block-title{color:#292828}.custom-block.danger{border-color:#f5775b;background-color:#f7f7f3;color:#292828}.custom-block.danger .custom-block-title{color:#292828}.sidebar nav.nav-links div.nav-item{display:none}span.badge{font-family:Raleway;font-weight:500}.theme-code-group .token.string{color:#7ec699}.theme-code-group button.theme-code-group__nav-tab.theme-code-group__nav-tab-active{border-color:#7ec699}.navbar span.site-name{font-family:IstokWeb;font-weight:500;font-size:1.6em}p.sidebar-heading{font-weight:500;font-size:1em}a.sidebar-link.active{font-weight:500!important}@font-face{font-family:Raleway;src:url(/fonts/Raleway-VariableFont_wght.ttf)}@font-face{font-family:IstokWeb;src:url(/fonts/IstokWeb-Regular.ttf);font-weight:400}#nprogress{pointer-events:none}#nprogress .bar{background:#07aab4;position:fixed;z-index:1031;top:0;left:0;width:100%;height:2px}#nprogress .peg{display:block;position:absolute;right:0;width:100px;height:100%;box-shadow:0 0 10px #07aab4,0 0 5px #07aab4;opacity:1;transform:rotate(3deg) translateY(-4px)}#nprogress .spinner{display:block;position:fixed;z-index:1031;top:15px;right:15px}#nprogress .spinner-icon{width:18px;height:18px;box-sizing:border-box;border-color:#07aab4 transparent transparent #07aab4;border-style:solid;border-width:2px;border-radius:50%;animation:nprogress-spinner .4s linear infinite}.nprogress-custom-parent{overflow:hidden;position:relative}.nprogress-custom-parent #nprogress .bar,.nprogress-custom-parent #nprogress .spinner{position:absolute}@keyframes nprogress-spinner{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.icon.outbound{color:#aaa;display:inline-block;vertical-align:middle;position:relative;top:-1px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.algolia-search-wrapper>span{vertical-align:middle}.algolia-search-wrapper .algolia-autocomplete{line-height:normal}.algolia-search-wrapper .algolia-autocomplete .ds-dropdown-menu{background-color:#fff;border:1px solid #999;border-radius:4px;font-size:16px;margin:6px 0 0;padding:4px;text-align:left}.algolia-search-wrapper .algolia-autocomplete .ds-dropdown-menu:before{border-color:#999}.algolia-search-wrapper .algolia-autocomplete .ds-dropdown-menu [class*=ds-dataset-]{border:none;padding:0}.algolia-search-wrapper .algolia-autocomplete .ds-dropdown-menu .ds-suggestions{margin-top:0}.algolia-search-wrapper .algolia-autocomplete .ds-dropdown-menu .ds-suggestion{border-bottom:1px solid #eaecef}.algolia-search-wrapper .algolia-autocomplete .algolia-docsearch-suggestion--highlight{color:#2c815b}.algolia-search-wrapper .algolia-autocomplete .algolia-docsearch-suggestion{border-color:#eaecef;padding:0}.algolia-search-wrapper .algolia-autocomplete .algolia-docsearch-suggestion .algolia-docsearch-suggestion--category-header{padding:5px 10px;margin-top:0;background:#07aab4;color:#fff;font-weight:600}.algolia-search-wrapper .algolia-autocomplete .algolia-docsearch-suggestion .algolia-docsearch-suggestion--category-header .algolia-docsearch-suggestion--highlight{background:hsla(0,0%,100%,.6)}.algolia-search-wrapper .algolia-autocomplete .algolia-docsearch-suggestion .algolia-docsearch-suggestion--wrapper{padding:0}.algolia-search-wrapper .algolia-autocomplete .algolia-docsearch-suggestion .algolia-docsearch-suggestion--title{font-weight:600;margin-bottom:0;color:#292828}.algolia-search-wrapper .algolia-autocomplete .algolia-docsearch-suggestion .algolia-docsearch-suggestion--subcategory-column{vertical-align:top;padding:5px 7px 5px 5px;border-color:#eaecef;background:#f1f3f5}.algolia-search-wrapper .algolia-autocomplete .algolia-docsearch-suggestion .algolia-docsearch-suggestion--subcategory-column:after{display:none}.algolia-search-wrapper .algolia-autocomplete .algolia-docsearch-suggestion .algolia-docsearch-suggestion--subcategory-column-text{color:#555}.algolia-search-wrapper .algolia-autocomplete .algolia-docsearch-footer{border-color:#eaecef}.algolia-search-wrapper .algolia-autocomplete .ds-cursor .algolia-docsearch-suggestion--content{background-color:#e7edf3!important;color:#292828}@media (min-width:719px){.algolia-search-wrapper .algolia-autocomplete .algolia-docsearch-suggestion .algolia-docsearch-suggestion--subcategory-column{float:none;width:150px;min-width:150px;display:table-cell}.algolia-search-wrapper .algolia-autocomplete .algolia-docsearch-suggestion .algolia-docsearch-suggestion--content{float:none;display:table-cell;width:100%;vertical-align:top}.algolia-search-wrapper .algolia-autocomplete .algolia-docsearch-suggestion .ds-dropdown-menu{min-width:515px!important}}@media (max-width:719px){.algolia-search-wrapper .ds-dropdown-menu{min-width:calc(100vw - 4rem)!important;max-width:calc(100vw - 4rem)!important}.algolia-search-wrapper .algolia-docsearch-suggestion--wrapper{padding:5px 7px 5px 5px!important}.algolia-search-wrapper .algolia-docsearch-suggestion--subcategory-column{padding:0!important;background:#fff!important}.algolia-search-wrapper .algolia-docsearch-suggestion--subcategory-column-text:after{content:" > ";font-size:10px;line-height:14.4px;display:inline-block;width:5px;margin:-3px 3px 0;vertical-align:middle}}.home{padding:3.6rem 2rem 0;max-width:960px;margin:0 auto;display:block}.home .hero{text-align:center}.home .hero img{max-width:100%;max-height:280px;display:block;margin:3rem auto 1.5rem}.home .hero h1{font-size:3rem}.home .hero .action,.home .hero .description,.home .hero h1{margin:1.8rem auto}.home .hero .description{max-width:35rem;font-size:1.6rem;line-height:1.3;color:#807d7d}.home .hero .action-button{display:inline-block;font-size:1.2rem;color:#fff;background-color:#07aab4;padding:.8rem 1.6rem;border-radius:4px;transition:background-color .1s ease;box-sizing:border-box;border-bottom:1px solid #0699a2}.home .hero .action-button:hover{background-color:#08c7d3}.home .features{border-top:1px solid #eaecef;padding:1.2rem 0;margin-top:2.5rem;display:flex;flex-wrap:wrap;align-items:flex-start;align-content:stretch;justify-content:space-between}.home .feature{flex-grow:1;flex-basis:30%;max-width:30%}.home .feature h2{font-size:1.4rem;font-weight:500;border-bottom:none;padding-bottom:0;color:#3f3d3d}.home .feature p{color:#5f5d5d}.home .footer{padding:2.5rem;border-top:1px solid #eaecef;text-align:center;color:#5f5d5d}@media (max-width:719px){.home .features{flex-direction:column}.home .feature{max-width:100%;padding:0 2.5rem}}@media (max-width:480px){.home{padding-left:1.5rem;padding-right:1.5rem}.home .hero img{max-height:210px;margin:2rem auto 1.2rem}.home .hero h1{font-size:2rem}.home .hero .action,.home .hero .description,.home .hero h1{margin:1.2rem auto}.home .hero .description{font-size:1.2rem}.home .hero .action-button{font-size:1rem;padding:.6rem 1.2rem}.home .feature h2{font-size:1.25rem}}.search-box{display:inline-block;position:relative;margin-right:1rem}.search-box input{cursor:text;width:10rem;height:2rem;color:#5f5d5d;display:inline-block;border:1px solid #cfd4db;border-radius:2rem;font-size:.9rem;line-height:2rem;padding:0 .5rem 0 2rem;outline:none;transition:all .2s ease;background:#fff url(/assets/img/search.83621669.svg) .6rem .5rem no-repeat;background-size:1rem}.search-box input:focus{cursor:auto;border-color:#07aab4}.search-box .suggestions{background:#fff;width:20rem;position:absolute;top:2rem;border:1px solid #cfd4db;border-radius:6px;padding:.4rem;list-style-type:none}.search-box .suggestions.align-right{right:0}.search-box .suggestion{line-height:1.4;padding:.4rem .6rem;border-radius:4px;cursor:pointer}.search-box .suggestion a{white-space:normal;color:#757272}.search-box .suggestion a .page-title{font-weight:600}.search-box .suggestion a .header{font-size:.9em;margin-left:.25em}.search-box .suggestion.focused{background-color:#f3f4f5}.search-box .suggestion.focused a{color:#07aab4}@media (max-width:959px){.search-box input{cursor:pointer;width:0;border-color:transparent;position:relative}.search-box input:focus{cursor:text;left:0;width:10rem}}@media (-ms-high-contrast:none){.search-box input{height:2rem}}@media (max-width:959px) and (min-width:719px){.search-box .suggestions{left:0}}@media (max-width:719px){.search-box{margin-right:0}.search-box input{left:1rem}.search-box .suggestions{right:0}}@media (max-width:480px){.search-box .suggestions{width:calc(100vw - 4rem)}.search-box input:focus{width:8rem}}.sidebar-button{cursor:pointer;display:none;width:1.25rem;height:1.25rem;position:absolute;padding:.6rem;top:.6rem;left:1rem}.sidebar-button .icon{display:block;width:1.25rem;height:1.25rem}@media (max-width:719px){.sidebar-button{display:block}}.dropdown-enter,.dropdown-leave-to{height:0!important}.badge[data-v-6eb0829b]{display:inline-block;font-size:14px;height:18px;line-height:18px;border-radius:3px;padding:0 6px;color:#fff;background-color:#42b983}.badge.green[data-v-6eb0829b],.badge.tip[data-v-6eb0829b]{background-color:#23c8d2}.badge.error[data-v-6eb0829b]{background-color:#f5775b}.badge.warn[data-v-6eb0829b],.badge.warning[data-v-6eb0829b],.badge.yellow[data-v-6eb0829b]{background-color:#e9c400}.badge+.badge[data-v-6eb0829b]{margin-left:5px}.theme-code-block[data-v-311ec9b4]{display:none}.theme-code-block__active[data-v-311ec9b4]{display:block}.theme-code-block>pre[data-v-311ec9b4]{background-color:orange}.theme-code-group__nav[data-v-5cad0a2e]{margin-bottom:-35px;background-color:#282c34;padding-bottom:22px;border-top-left-radius:6px;border-top-right-radius:6px;padding-left:10px;padding-top:10px}.theme-code-group__ul[data-v-5cad0a2e]{margin:auto 0;padding-left:0;display:inline-flex;list-style:none}.theme-code-group__nav-tab[data-v-5cad0a2e]{border:0;padding:5px;cursor:pointer;background-color:transparent;font-size:.85em;line-height:1.4;color:hsla(0,0%,100%,.9);font-weight:600}.theme-code-group__nav-tab-active[data-v-5cad0a2e]{border-bottom:1px solid #42b983}.pre-blank[data-v-5cad0a2e]{color:#42b983}a.button[data-v-439d4a3b]{display:block;width:114px;height:38px;line-height:38px;background-color:#23c8d2;border-radius:6px;color:#fff;text-align:center;font-weight:600}.column[data-v-71066fea]{margin-bottom:22px}@media only screen and (min-width:719px){.column.left[data-v-71066fea]{width:33%;margin-right:5%}.column.right[data-v-71066fea]{width:62%}}@media only screen and (min-width:719px){.columns[data-v-6d930324]{display:flex}}.contributor[data-v-074475b8]{width:3.26em;height:3.26em;border-radius:50%;text-indent:-9999px;display:inline-block;background:no-repeat url(/assets/img/contributors.d37a7073.jpg);background-size:auto 102%;margin:0 .67em .67em 0;border:2px solid var(--second)}@media only screen and (min-width:414px){.contributor[data-v-074475b8]{width:3.625em;height:3.625em;margin:0 .8em .8em 0}}div[data-v-20681dd8]{height:200px;box-sizing:border-box;padding:28px;border-radius:8px;position:relative;color:#fff;margin-bottom:25px}@media only screen and (min-width:480px){div[data-v-20681dd8]{height:160px}}@media only screen and (min-width:719px){div[data-v-20681dd8]{width:31.25%;height:225px;margin-right:3%;margin-bottom:0}}div h3[data-v-20681dd8]{margin:0}@media only screen and (min-width:959px){div h3[data-v-20681dd8]{font-size:1.75em}}div h3 .header-anchor[data-v-20681dd8]{display:none}@media only screen and (min-width:959px){div p[data-v-20681dd8]{font-size:1.25em}}div.less-code[data-v-20681dd8]{background-color:#23c8d2}div.fast-secure[data-v-20681dd8]{background-color:#409cff}div.multi-spec[data-v-20681dd8]{background-color:#f5775b}@media only screen and (min-width:719px){div[data-v-20681dd8]:last-child{margin-right:0}}a[data-v-20681dd8]{position:absolute;bottom:24px;right:24px;color:#fff}.features[data-v-30c230c6]{padding:60px 0}@media only screen and (min-width:719px){.features[data-v-30c230c6]{display:flex}}@media only screen and (min-width:719px){div[data-v-f7c18a96]{width:25%}}p a[data-v-f7c18a96]{color:#292828;font-weight:400}p a[data-v-f7c18a96]:hover{text-decoration:underline}@media only screen and (max-width:719px){p[data-v-f7c18a96]{margin:0;line-height:30px}}.column img[data-v-f7c18a96]{display:block;margin:0 auto}.column.ajv img[data-v-f7c18a96]{margin:0;width:100px}@media only screen and (max-width:719px){.column.ajv img[data-v-f7c18a96]{margin-bottom:34px}}.column.links a[data-v-f7c18a96]{color:#292828;font-weight:400}@media only screen and (max-width:719px){.column.sponsors a[data-v-f7c18a96]:first-child{display:block;margin-top:80px}}.column.sponsors img[data-v-f7c18a96]{width:140px;padding:0 20px 15px}.footer-columns[data-v-de1d7950]{padding:20px 0 60px;border-bottom:1px solid #c4c4c4}@media only screen and (min-width:719px){.footer-columns[data-v-de1d7950]{display:flex}}span[data-v-3ac601d9]{vertical-align:-8px;padding-left:20px}@media only screen and (max-width:719px){span[data-v-3ac601d9]{vertical-align:-21px}}.hero-section[data-v-37c67372]{width:100%;padding:3.6rem 0 50px;overflow:hidden;background:linear-gradient(304.33deg,hsla(0,0%,92.9%,.31) -7.48%,#c6e1ff 30.07%,hsla(0,0%,92.9%,.26) 82.76%)}.hero-section .section-content[data-v-37c67372]{position:relative;max-width:1000px;padding:0 50px;margin:0 auto}@media only screen and (max-width:719px){.hero-section .section-content[data-v-37c67372]{padding:0 40px}}@media only screen and (max-width:480px){.hero-section .section-content[data-v-37c67372]{padding:0 30px}}.hero-section .section-content .section-content-wrapper[data-v-37c67372]{position:relative;z-index:2}.hero-section .hero-image[data-v-37c67372]{position:absolute;z-index:1;width:658px;top:-400px;left:-25px}@media only screen and (min-width:480px){.hero-section .hero-image[data-v-37c67372]{width:823px;top:-500px;left:50px}}@media only screen and (min-width:719px){.hero-section .hero-image[data-v-37c67372]{top:-430px;left:330px}}@media only screen and (min-width:959px){.hero-section .hero-image[data-v-37c67372]{width:1097px;top:-575px;left:425px}}.hero-section .header-anchor[data-v-37c67372]{display:none}.hero-section h1[data-v-37c67372]{font-size:2em;margin-top:200px}.hero-section h2[data-v-37c67372]{border-bottom:none}@media only screen and (min-width:480px){.hero-section h1[data-v-37c67372]{font-size:3em}.hero-section h2[data-v-37c67372]{font-size:1.75em}}@media only screen and (min-width:719px){.hero-section h1[data-v-37c67372],.hero-section h2[data-v-37c67372]{margin-left:48px}}@media only screen and (min-width:959px){.hero-section h1[data-v-37c67372]{font-size:4em}.hero-section h2[data-v-37c67372]{font-size:2.25em}.hero-section h1[data-v-37c67372],.hero-section h2[data-v-37c67372]{margin-left:64px}}.homepage[data-v-07ee638e]{padding:0;box-sizing:content-box}.home-section[data-v-aed41194]{width:100%;padding:3.6rem 0 50px}.home-section .section-content[data-v-aed41194]{max-width:1000px;padding:0 50px;margin:0 auto}@media only screen and (max-width:719px){.home-section .section-content[data-v-aed41194]{padding:0 40px}}@media only screen and (max-width:480px){.home-section .section-content[data-v-aed41194]{padding:0 30px}}.home-section[data-v-aed41194] .theme-code-group button{position:relative;outline:none;z-index:1}.home-section.contributors[data-v-aed41194],.home-section.footer[data-v-aed41194],.home-section.testimonials[data-v-aed41194]{background:linear-gradient(295.26deg,hsla(0,0%,91%,.8) 26.65%,hsla(0,0%,100%,.04) 83.48%)}.home-section.footer p[data-v-aed41194]{padding:20px 0 0;text-align:center;color:#292828}.home-section.footer p a[data-v-aed41194]{color:#292828;font-weight:400}.home-section.footer p a[data-v-aed41194]:hover{text-decoration:underline}.post[data-v-a228e400]{display:flex;border-bottom:1px solid #eaecef}.post[data-v-a228e400]:last-child{border-bottom:none}.post a.read-more[data-v-a228e400]{float:right;margin:28px 0}p.subscribe[data-v-a228e400]{margin-top:2em}p.subscribe a.all-news[data-v-a228e400]{display:block;margin-top:1rem}@media only screen and (min-width:480px){p.subscribe a.all-news[data-v-a228e400]{display:inline-block;float:right;margin-top:0}}.projects p[data-v-7ef3dfe8]{max-width:1100px;padding:0}.projects img[data-v-7ef3dfe8]{display:inline-block;max-width:240px;height:40px;line-height:40px;vertical-align:middle}@media only screen and (max-width:719px){.projects img[data-v-7ef3dfe8]{max-width:160px;height:30px;line-height:30px}}.projects a[data-v-7ef3dfe8]{display:inline-block;height:40px;line-height:40px;vertical-align:middle;margin:0 36px 30px 0;font-size:28px;font-weight:500;color:#292828}@media only screen and (max-width:719px){.projects a[data-v-7ef3dfe8]{margin:0 24px 20px 0;height:30px;line-height:30px;font-size:20px}}.projects a[data-v-7ef3dfe8]:hover{text-decoration:none}.projects a span[data-v-7ef3dfe8]{display:none}.post-meta>div[data-v-f7ce3066]{display:inline-flex}.pub-date[data-v-f7ce3066]{color:grey}.sponsors[data-v-c1b00a8c]{max-width:800px;margin:0 auto}.sponsors h2[data-v-c1b00a8c]{margin-left:0;text-decoration:none}.sponsors h2 a.header-anchor[data-v-c1b00a8c]{width:auto;margin-right:0}.sponsors p[data-v-c1b00a8c]{font-size:24px}.sponsors.bronze img[data-v-c1b00a8c],.sponsors.gold img[data-v-c1b00a8c],.sponsors.platinum img[data-v-c1b00a8c]{width:100%}.sponsors.bronze a[data-v-c1b00a8c],.sponsors.gold a[data-v-c1b00a8c],.sponsors.platinum a[data-v-c1b00a8c]{margin-bottom:10px;display:inline-block}@media only screen and (min-width:480px){.sponsors.bronze a[data-v-c1b00a8c],.sponsors.gold a[data-v-c1b00a8c],.sponsors.platinum a[data-v-c1b00a8c]{margin-bottom:0}}.sponsors.bronze a[data-v-c1b00a8c]:last-child,.sponsors.gold a[data-v-c1b00a8c]:last-child,.sponsors.platinum a[data-v-c1b00a8c]:last-child{margin-right:0}.sponsors.platinum a[data-v-c1b00a8c]{width:100%;display:block}@media only screen and (min-width:480px){.sponsors.platinum a[data-v-c1b00a8c]{display:inline-block;width:45%;margin-right:8%}}.sponsors.gold a[data-v-c1b00a8c]{width:45%;margin-right:4%}@media only screen and (min-width:480px){.sponsors.gold a[data-v-c1b00a8c]{width:31%;margin-right:2%}}.sponsors.bronze a[data-v-c1b00a8c]{width:45%;margin-right:4%}@media only screen and (min-width:480px){.sponsors.bronze a[data-v-c1b00a8c]{width:22%;margin-right:3%}}form[data-v-410e8fc2]{display:inline-block}label[data-v-410e8fc2]{display:block;margin-bottom:1rem}@media only screen and (min-width:719px){label[data-v-410e8fc2]{display:inline-block;margin-bottom:0}}button[data-v-410e8fc2],input[data-v-410e8fc2]{font-family:Raleway;font-size:16px;border:0 solid;outline:none}input[data-v-410e8fc2]{border:1px solid #cfd4db;height:2rem;width:180px;border-radius:2rem;padding:0 .5rem;margin:0 .5rem 0 0}input[data-v-410e8fc2]:focus{border-color:#07aab4}@media only screen and (min-width:719px){input[data-v-410e8fc2]{width:200px;margin:0 1rem}}button[data-v-410e8fc2]{width:114px;height:36px;line-height:36px;padding-top:0;background-color:#23c8d2;border-radius:6px;color:#fff;text-align:center;font-weight:600;display:block;margin-top:1em}@media only screen and (min-width:414px){button[data-v-410e8fc2]{display:inline-block;margin-top:0}}div.testimonial-content[data-v-2c05e654]{background-position:50%;overflow:hidden;width:280px;background-repeat:no-repeat}div.testimonial-content.blue[data-v-2c05e654]{background-image:url(/assets/img/testimonials-blue.868231a8.svg)}div.testimonial-content.green[data-v-2c05e654]{background-image:url(/assets/img/testimonials-green.6fdaa89c.svg)}div.testimonial-content p[data-v-2c05e654]{margin:.9em 0;font-size:15px}@media only screen and (max-width:374px){div.testimonial-content.blue[data-v-2c05e654],div.testimonial-content.green[data-v-2c05e654]{background-image:none;padding:0}div.testimonial-content.blue p[data-v-2c05e654],div.testimonial-content.green p[data-v-2c05e654]{font-size:15px}}@media only screen and (max-width:500px){div.testimonial-content[data-v-2c05e654]{width:100%;background-size:350px 156px;padding:0 calc(50% - 100px);box-sizing:border-box}div.testimonial-content p[data-v-2c05e654]{font-size:12px}}@media only screen and (min-width:500px){div.testimonial-content[data-v-2c05e654]{height:212px;padding:0 75px;margin:40px auto 0}}@media only screen and (min-width:959px){div.testimonial-content[data-v-2c05e654]{padding:0 calc(25% - 140px)}}.header-anchor[data-v-2c05e654]{display:none}.testimonials[data-v-729b0721]{padding:20px 0}@media only screen and (min-width:959px){.testimonials[data-v-729b0721]{display:flex}}.searchbox{display:inline-block;position:relative;width:200px;height:32px!important;white-space:nowrap;box-sizing:border-box;visibility:visible!important}.searchbox .algolia-autocomplete{display:block;width:100%;height:100%}.searchbox__wrapper{width:100%;height:100%;z-index:999;position:relative}.searchbox__input{display:inline-block;box-sizing:border-box;transition:box-shadow .4s ease,background .4s ease;border:0;border-radius:16px;box-shadow:inset 0 0 0 1px #ccc;background:#fff!important;padding:0 26px 0 32px;width:100%;height:100%;vertical-align:middle;white-space:normal;font-size:12px;-webkit-appearance:none;-moz-appearance:none;appearance:none}.searchbox__input::-webkit-search-cancel-button,.searchbox__input::-webkit-search-decoration,.searchbox__input::-webkit-search-results-button,.searchbox__input::-webkit-search-results-decoration{display:none}.searchbox__input:hover{box-shadow:inset 0 0 0 1px #b3b3b3}.searchbox__input:active,.searchbox__input:focus{outline:0;box-shadow:inset 0 0 0 1px #aaa;background:#fff}.searchbox__input::-moz-placeholder{color:#aaa}.searchbox__input::placeholder{color:#aaa}.searchbox__submit{position:absolute;top:0;margin:0;border:0;border-radius:16px 0 0 16px;background-color:rgba(69,142,225,0);padding:0;width:32px;height:100%;vertical-align:middle;text-align:center;font-size:inherit;-webkit-user-select:none;-moz-user-select:none;user-select:none;right:inherit;left:0}.searchbox__submit:before{display:inline-block;margin-right:-4px;height:100%;vertical-align:middle;content:""}.searchbox__submit:active,.searchbox__submit:hover{cursor:pointer}.searchbox__submit:focus{outline:0}.searchbox__submit svg{width:14px;height:14px;vertical-align:middle;fill:#6d7e96}.searchbox__reset{display:block;position:absolute;top:8px;right:8px;margin:0;border:0;background:none;cursor:pointer;padding:0;font-size:inherit;-webkit-user-select:none;-moz-user-select:none;user-select:none;fill:rgba(0,0,0,.5)}.searchbox__reset.hide{display:none}.searchbox__reset:focus{outline:0}.searchbox__reset svg{display:block;margin:4px;width:8px;height:8px}.searchbox__input:valid~.searchbox__reset{display:block;animation-name:sbx-reset-in;animation-duration:.15s}@keyframes sbx-reset-in{0%{transform:translate3d(-20%,0,0);opacity:0}to{transform:none;opacity:1}}.algolia-autocomplete.algolia-autocomplete-right .ds-dropdown-menu{right:0!important;left:inherit!important}.algolia-autocomplete.algolia-autocomplete-right .ds-dropdown-menu:before{right:48px}.algolia-autocomplete.algolia-autocomplete-left .ds-dropdown-menu{left:0!important;right:inherit!important}.algolia-autocomplete.algolia-autocomplete-left .ds-dropdown-menu:before{left:48px}.algolia-autocomplete .ds-dropdown-menu{top:-6px;border-radius:4px;margin:6px 0 0;padding:0;text-align:left;height:auto;position:relative;background:transparent;border:none;z-index:999;max-width:600px;min-width:500px;box-shadow:0 1px 0 0 rgba(0,0,0,.2),0 2px 3px 0 rgba(0,0,0,.1)}.algolia-autocomplete .ds-dropdown-menu:before{display:block;position:absolute;content:"";width:14px;height:14px;background:#fff;z-index:1000;top:-7px;border-top:1px solid #d9d9d9;border-right:1px solid #d9d9d9;transform:rotate(-45deg);border-radius:2px}.algolia-autocomplete .ds-dropdown-menu .ds-suggestions{position:relative;z-index:1000;margin-top:8px}.algolia-autocomplete .ds-dropdown-menu .ds-suggestions a:hover{text-decoration:none}.algolia-autocomplete .ds-dropdown-menu .ds-suggestion{cursor:pointer}.algolia-autocomplete .ds-dropdown-menu .ds-suggestion.ds-cursor .algolia-docsearch-suggestion.suggestion-layout-simple,.algolia-autocomplete .ds-dropdown-menu .ds-suggestion.ds-cursor .algolia-docsearch-suggestion:not(.suggestion-layout-simple) .algolia-docsearch-suggestion--content{background-color:rgba(69,142,225,.05)}.algolia-autocomplete .ds-dropdown-menu [class^=ds-dataset-]{position:relative;border:1px solid #d9d9d9;background:#fff;border-radius:4px;overflow:auto;padding:0 8px 8px}.algolia-autocomplete .ds-dropdown-menu *{box-sizing:border-box}.algolia-autocomplete .algolia-docsearch-suggestion{display:block;position:relative;padding:0 8px;background:#fff;color:#02060c;overflow:hidden}.algolia-autocomplete .algolia-docsearch-suggestion--highlight{color:#174d8c;background:rgba(143,187,237,.1);padding:.1em .05em}.algolia-autocomplete .algolia-docsearch-suggestion--category-header .algolia-docsearch-suggestion--category-header-lvl0 .algolia-docsearch-suggestion--highlight,.algolia-autocomplete .algolia-docsearch-suggestion--category-header .algolia-docsearch-suggestion--category-header-lvl1 .algolia-docsearch-suggestion--highlight,.algolia-autocomplete .algolia-docsearch-suggestion--text .algolia-docsearch-suggestion--highlight{padding:0 0 1px;background:inherit;box-shadow:inset 0 -2px 0 0 rgba(69,142,225,.8);color:inherit}.algolia-autocomplete .algolia-docsearch-suggestion--content{display:block;float:right;width:70%;position:relative;padding:5.33333px 0 5.33333px 10.66667px;cursor:pointer}.algolia-autocomplete .algolia-docsearch-suggestion--content:before{content:"";position:absolute;display:block;top:0;height:100%;width:1px;background:#ddd;left:-1px}.algolia-autocomplete .algolia-docsearch-suggestion--category-header{position:relative;border-bottom:1px solid #ddd;display:none;margin-top:8px;padding:4px 0;font-size:1em;color:#33363d}.algolia-autocomplete .algolia-docsearch-suggestion--wrapper{width:100%;float:left;padding:8px 0 0}.algolia-autocomplete .algolia-docsearch-suggestion--subcategory-column{float:left;width:30%;text-align:right;position:relative;padding:5.33333px 10.66667px;color:#a4a7ae;font-size:.9em;word-wrap:break-word}.algolia-autocomplete .algolia-docsearch-suggestion--subcategory-column:before{content:"";position:absolute;display:block;top:0;height:100%;width:1px;background:#ddd;right:0}.algolia-autocomplete .algolia-docsearch-suggestion--subcategory-inline{display:none}.algolia-autocomplete .algolia-docsearch-suggestion--title{margin-bottom:4px;color:#02060c;font-size:.9em;font-weight:700}.algolia-autocomplete .algolia-docsearch-suggestion--text{display:block;line-height:1.2em;font-size:.85em;color:#63676d}.algolia-autocomplete .algolia-docsearch-suggestion--no-results{width:100%;padding:8px 0;text-align:center;font-size:1.2em}.algolia-autocomplete .algolia-docsearch-suggestion--no-results:before{display:none}.algolia-autocomplete .algolia-docsearch-suggestion code{padding:1px 5px;font-size:90%;border:none;color:#222;background-color:#ebebeb;border-radius:3px;font-family:Menlo,Monaco,Consolas,Courier New,monospace}.algolia-autocomplete .algolia-docsearch-suggestion code .algolia-docsearch-suggestion--highlight{background:none}.algolia-autocomplete .algolia-docsearch-suggestion.algolia-docsearch-suggestion__main .algolia-docsearch-suggestion--category-header,.algolia-autocomplete .algolia-docsearch-suggestion.algolia-docsearch-suggestion__secondary{display:block}@media (min-width:768px){.algolia-autocomplete .algolia-docsearch-suggestion .algolia-docsearch-suggestion--subcategory-column{display:block}}@media (max-width:768px){.algolia-autocomplete .algolia-docsearch-suggestion .algolia-docsearch-suggestion--subcategory-column{display:inline-block;width:auto;float:left;padding:0;color:#02060c;font-size:.9em;font-weight:700;text-align:left;opacity:.5}.algolia-autocomplete .algolia-docsearch-suggestion .algolia-docsearch-suggestion--subcategory-column:before{display:none}.algolia-autocomplete .algolia-docsearch-suggestion .algolia-docsearch-suggestion--subcategory-column:after{content:"|"}.algolia-autocomplete .algolia-docsearch-suggestion .algolia-docsearch-suggestion--content{display:inline-block;width:auto;text-align:left;float:left;padding:0}.algolia-autocomplete .algolia-docsearch-suggestion .algolia-docsearch-suggestion--content:before{display:none}}.algolia-autocomplete .suggestion-layout-simple.algolia-docsearch-suggestion{border-bottom:1px solid #eee;padding:8px;margin:0}.algolia-autocomplete .suggestion-layout-simple .algolia-docsearch-suggestion--content{width:100%;padding:0}.algolia-autocomplete .suggestion-layout-simple .algolia-docsearch-suggestion--content:before{display:none}.algolia-autocomplete .suggestion-layout-simple .algolia-docsearch-suggestion--category-header{margin:0;padding:0;display:block;width:100%;border:none}.algolia-autocomplete .suggestion-layout-simple .algolia-docsearch-suggestion--category-header-lvl0,.algolia-autocomplete .suggestion-layout-simple .algolia-docsearch-suggestion--category-header-lvl1{opacity:.6;font-size:.85em}.algolia-autocomplete .suggestion-layout-simple .algolia-docsearch-suggestion--category-header-lvl1:before{background-image:url('data:image/svg+xml;utf8,');content:"";width:10px;height:10px;display:inline-block}.algolia-autocomplete .suggestion-layout-simple .algolia-docsearch-suggestion--wrapper{width:100%;float:left;margin:0;padding:0}.algolia-autocomplete .suggestion-layout-simple .algolia-docsearch-suggestion--duplicate-content,.algolia-autocomplete .suggestion-layout-simple .algolia-docsearch-suggestion--subcategory-inline{display:none!important}.algolia-autocomplete .suggestion-layout-simple .algolia-docsearch-suggestion--title{margin:0;color:#458ee1;font-size:.9em;font-weight:400}.algolia-autocomplete .suggestion-layout-simple .algolia-docsearch-suggestion--title:before{content:"#";font-weight:700;color:#458ee1;display:inline-block}.algolia-autocomplete .suggestion-layout-simple .algolia-docsearch-suggestion--text{margin:4px 0 0;display:block;line-height:1.4em;padding:5.33333px 8px;background:#f8f8f8;font-size:.85em;opacity:.8}.algolia-autocomplete .suggestion-layout-simple .algolia-docsearch-suggestion--text .algolia-docsearch-suggestion--highlight{color:#3f4145;font-weight:700;box-shadow:none}.algolia-autocomplete .algolia-docsearch-footer{width:134px;height:20px;z-index:2000;margin-top:10.66667px;float:right;font-size:0;line-height:0}.algolia-autocomplete .algolia-docsearch-footer--logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='168' height='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cpath d='M78.988.938h16.594a2.968 2.968 0 012.966 2.966V20.5a2.967 2.967 0 01-2.966 2.964H78.988a2.967 2.967 0 01-2.966-2.964V3.897A2.961 2.961 0 0178.988.938zm41.937 17.866c-4.386.02-4.386-3.54-4.386-4.106l-.007-13.336 2.675-.424v13.254c0 .322 0 2.358 1.718 2.364v2.248zm-10.846-2.18c.821 0 1.43-.047 1.855-.129v-2.719a6.334 6.334 0 00-1.574-.199 5.7 5.7 0 00-.897.069 2.699 2.699 0 00-.814.24c-.24.116-.439.28-.582.491-.15.212-.219.335-.219.656 0 .628.219.991.616 1.23s.938.362 1.615.362zm-.233-9.7c.883 0 1.629.109 2.231.328.602.218 1.088.525 1.444.915.363.396.609.922.76 1.483.157.56.232 1.175.232 1.85v6.874a32.5 32.5 0 01-1.868.314c-.834.123-1.772.185-2.813.185-.69 0-1.327-.069-1.895-.198a4.001 4.001 0 01-1.471-.636 3.085 3.085 0 01-.951-1.134c-.226-.465-.343-1.12-.343-1.803 0-.656.13-1.073.384-1.525a3.24 3.24 0 011.047-1.106c.445-.287.95-.492 1.532-.615a8.8 8.8 0 011.82-.185 8.404 8.404 0 011.972.24v-.438c0-.307-.035-.6-.11-.874a1.88 1.88 0 00-.384-.73 1.784 1.784 0 00-.724-.493 3.164 3.164 0 00-1.143-.205c-.616 0-1.177.075-1.69.164a7.735 7.735 0 00-1.26.307l-.321-2.192c.335-.117.834-.233 1.478-.349a10.98 10.98 0 012.073-.178zm52.842 9.626c.822 0 1.43-.048 1.854-.13V13.7a6.347 6.347 0 00-1.574-.199c-.294 0-.595.021-.896.069a2.7 2.7 0 00-.814.24 1.46 1.46 0 00-.582.491c-.15.212-.218.335-.218.656 0 .628.218.991.615 1.23.404.245.938.362 1.615.362zm-.226-9.694c.883 0 1.629.108 2.231.327.602.219 1.088.526 1.444.915.355.39.609.923.759 1.483a6.8 6.8 0 01.233 1.852v6.873c-.41.088-1.034.19-1.868.314-.834.123-1.772.184-2.813.184-.69 0-1.327-.068-1.895-.198a4.001 4.001 0 01-1.471-.635 3.085 3.085 0 01-.951-1.134c-.226-.465-.343-1.12-.343-1.804 0-.656.13-1.073.384-1.524.26-.45.608-.82 1.047-1.107.445-.286.95-.491 1.532-.614a8.803 8.803 0 012.751-.13c.329.034.671.096 1.04.185v-.437a3.3 3.3 0 00-.109-.875 1.873 1.873 0 00-.384-.731 1.784 1.784 0 00-.724-.492 3.165 3.165 0 00-1.143-.205c-.616 0-1.177.075-1.69.164a7.75 7.75 0 00-1.26.307l-.321-2.193c.335-.116.834-.232 1.478-.348a11.633 11.633 0 012.073-.177zm-8.034-1.271a1.626 1.626 0 01-1.628-1.62c0-.895.725-1.62 1.628-1.62.904 0 1.63.725 1.63 1.62 0 .895-.733 1.62-1.63 1.62zm1.348 13.22h-2.689V7.27l2.69-.423v11.956zm-4.714 0c-4.386.02-4.386-3.54-4.386-4.107l-.008-13.336 2.676-.424v13.254c0 .322 0 2.358 1.718 2.364v2.248zm-8.698-5.903c0-1.156-.253-2.119-.746-2.788-.493-.677-1.183-1.01-2.067-1.01-.882 0-1.574.333-2.065 1.01-.493.676-.733 1.632-.733 2.788 0 1.168.246 1.953.74 2.63.492.683 1.183 1.018 2.066 1.018.882 0 1.574-.342 2.067-1.019.492-.683.738-1.46.738-2.63zm2.737-.007c0 .902-.13 1.584-.397 2.33a5.52 5.52 0 01-1.128 1.906 4.986 4.986 0 01-1.752 1.223c-.685.286-1.739.45-2.265.45-.528-.006-1.574-.157-2.252-.45a5.096 5.096 0 01-1.744-1.223c-.487-.527-.863-1.162-1.137-1.906a6.345 6.345 0 01-.41-2.33c0-.902.123-1.77.397-2.508a5.554 5.554 0 011.15-1.892 5.133 5.133 0 011.75-1.216c.679-.287 1.425-.423 2.232-.423.808 0 1.553.142 2.237.423a4.88 4.88 0 011.753 1.216 5.644 5.644 0 011.135 1.892c.287.738.431 1.606.431 2.508zm-20.138 0c0 1.12.246 2.363.738 2.882.493.52 1.13.78 1.91.78.424 0 .828-.062 1.204-.178.377-.116.677-.253.917-.417V9.33a10.476 10.476 0 00-1.766-.226c-.971-.028-1.71.37-2.23 1.004-.513.636-.773 1.75-.773 2.788zm7.438 5.274c0 1.824-.466 3.156-1.404 4.004-.936.846-2.367 1.27-4.296 1.27-.705 0-2.17-.137-3.34-.396l.431-2.118c.98.205 2.272.26 2.95.26 1.074 0 1.84-.219 2.299-.656.459-.437.684-1.086.684-1.948v-.437a8.07 8.07 0 01-1.047.397c-.43.13-.93.198-1.492.198-.739 0-1.41-.116-2.018-.349a4.206 4.206 0 01-1.567-1.025c-.431-.45-.774-1.017-1.013-1.694-.24-.677-.363-1.885-.363-2.773 0-.834.13-1.88.384-2.577.26-.696.629-1.298 1.129-1.796.493-.498 1.095-.881 1.8-1.162a6.605 6.605 0 012.428-.457c.87 0 1.67.109 2.45.24.78.129 1.444.265 1.985.415V18.17z' fill='%235468FF'/%3E%3Cpath d='M6.972 6.677v1.627c-.712-.446-1.52-.67-2.425-.67-.585 0-1.045.13-1.38.391a1.24 1.24 0 00-.502 1.03c0 .425.164.765.494 1.02.33.256.835.532 1.516.83.447.192.795.356 1.045.495.25.138.537.332.862.582.324.25.563.548.718.894.154.345.23.741.23 1.188 0 .947-.334 1.691-1.004 2.234-.67.542-1.537.814-2.601.814-1.18 0-2.16-.229-2.936-.686v-1.708c.84.628 1.814.942 2.92.942.585 0 1.048-.136 1.388-.407.34-.271.51-.646.51-1.125 0-.287-.1-.55-.302-.79-.203-.24-.42-.42-.655-.542-.234-.123-.585-.29-1.053-.503a61.27 61.27 0 01-.582-.271 13.67 13.67 0 01-.55-.287 4.275 4.275 0 01-.567-.351 6.92 6.92 0 01-.455-.4c-.18-.17-.31-.34-.39-.51-.08-.17-.155-.37-.224-.598a2.553 2.553 0 01-.104-.742c0-.915.333-1.638.998-2.17.664-.532 1.523-.798 2.576-.798.968 0 1.793.17 2.473.51zm7.468 5.696v-.287c-.022-.607-.187-1.088-.495-1.444-.309-.357-.75-.535-1.324-.535-.532 0-.99.194-1.373.583-.382.388-.622.949-.717 1.683h3.909zm1.005 2.792v1.404c-.596.34-1.383.51-2.362.51-1.255 0-2.255-.377-3-1.132-.744-.755-1.116-1.744-1.116-2.968 0-1.297.34-2.316 1.021-3.055.68-.74 1.548-1.11 2.6-1.11 1.033 0 1.852.323 2.458.966.606.644.91 1.572.91 2.784 0 .33-.033.676-.096 1.038h-5.314c.107.702.405 1.239.894 1.611.49.372 1.106.558 1.85.558.862 0 1.58-.202 2.155-.606zm6.605-1.77h-1.212c-.596 0-1.045.116-1.349.35-.303.234-.454.532-.454.894 0 .372.117.664.35.877.235.213.575.32 1.022.32.51 0 .912-.142 1.204-.424.293-.281.44-.651.44-1.108v-.91zm-4.068-2.554V9.325c.627-.361 1.457-.542 2.489-.542 2.116 0 3.175 1.026 3.175 3.08V17h-1.548v-.957c-.415.68-1.143 1.02-2.186 1.02-.766 0-1.38-.22-1.843-.661-.462-.442-.694-1.003-.694-1.684 0-.776.293-1.38.878-1.81.585-.431 1.404-.647 2.457-.647h1.34V11.8c0-.554-.133-.971-.399-1.253-.266-.282-.707-.423-1.324-.423a4.07 4.07 0 00-2.345.718zm9.333-1.93v1.42c.394-1 1.101-1.5 2.123-1.5.148 0 .313.016.494.048v1.531a1.885 1.885 0 00-.75-.143c-.542 0-.989.24-1.34.718-.351.479-.527 1.048-.527 1.707V17h-1.563V8.91h1.563zm5.01 4.084c.022.82.272 1.492.75 2.019.479.526 1.15.79 2.01.79.639 0 1.235-.176 1.788-.527v1.404c-.521.319-1.186.479-1.995.479-1.265 0-2.276-.4-3.031-1.197-.755-.798-1.133-1.792-1.133-2.984 0-1.16.38-2.151 1.14-2.975.761-.825 1.79-1.237 3.088-1.237.702 0 1.346.149 1.93.447v1.436a3.242 3.242 0 00-1.77-.495c-.84 0-1.513.266-2.019.798-.505.532-.758 1.213-.758 2.042zM40.24 5.72v4.579c.458-1 1.293-1.5 2.505-1.5.787 0 1.42.245 1.899.734.479.49.718 1.17.718 2.042V17h-1.564v-5.106c0-.553-.14-.98-.422-1.284-.282-.303-.652-.455-1.11-.455-.531 0-1.002.202-1.411.606-.41.405-.615 1.022-.615 1.851V17h-1.563V5.72h1.563zm14.966 10.02c.596 0 1.096-.253 1.5-.758.404-.506.606-1.157.606-1.955 0-.915-.202-1.62-.606-2.114-.404-.495-.92-.742-1.548-.742-.553 0-1.05.224-1.491.67-.442.447-.662 1.133-.662 2.058 0 .958.212 1.67.638 2.138.425.469.946.703 1.563.703zM53.004 5.72v4.42c.574-.894 1.388-1.341 2.44-1.341 1.022 0 1.857.383 2.506 1.149.649.766.973 1.781.973 3.047 0 1.138-.309 2.109-.925 2.912-.617.803-1.463 1.205-2.537 1.205-1.075 0-1.894-.447-2.457-1.34V17h-1.58V5.72h1.58zm9.908 11.104l-3.223-7.913h1.739l1.005 2.632 1.26 3.415c.096-.32.48-1.458 1.15-3.415l.909-2.632h1.66l-2.92 7.866c-.777 2.074-1.963 3.11-3.559 3.11a2.92 2.92 0 01-.734-.079v-1.34c.17.042.351.064.543.064 1.032 0 1.755-.57 2.17-1.708z' fill='%235D6494'/%3E%3Cpath d='M89.632 5.967v-.772a.978.978 0 00-.978-.977h-2.28a.978.978 0 00-.978.977v.793c0 .088.082.15.171.13a7.127 7.127 0 011.984-.28c.65 0 1.295.088 1.917.259.082.02.164-.04.164-.13m-6.248 1.01l-.39-.389a.977.977 0 00-1.382 0l-.465.465a.973.973 0 000 1.38l.383.383c.062.061.15.047.205-.014.226-.307.472-.601.746-.874.281-.28.568-.526.883-.751.068-.042.075-.137.02-.2m4.16 2.453v3.341c0 .096.104.165.192.117l2.97-1.537c.068-.034.089-.117.055-.184a3.695 3.695 0 00-3.08-1.866c-.068 0-.136.054-.136.13m0 8.048a4.489 4.489 0 01-4.49-4.482 4.488 4.488 0 014.49-4.482 4.488 4.488 0 014.489 4.482 4.484 4.484 0 01-4.49 4.482m0-10.85a6.363 6.363 0 100 12.729 6.37 6.37 0 006.372-6.368 6.358 6.358 0 00-6.371-6.36' fill='%23FFF'/%3E%3C/g%3E%3C/svg%3E");background-repeat:no-repeat;background-position:50%;background-size:100%;overflow:hidden;text-indent:-9000px;padding:0!important;width:100%;height:100%;display:block}.dropdown-wrapper{cursor:pointer}.dropdown-wrapper .dropdown-title,.dropdown-wrapper .mobile-dropdown-title{display:block;font-size:.9rem;font-family:inherit;cursor:inherit;padding:inherit;line-height:1.4rem;background:transparent;border:none;font-weight:500;color:#292828}.dropdown-wrapper .dropdown-title:hover,.dropdown-wrapper .mobile-dropdown-title:hover{border-color:transparent}.dropdown-wrapper .dropdown-title .arrow,.dropdown-wrapper .mobile-dropdown-title .arrow{vertical-align:middle;margin-top:-1px;margin-left:.4rem}.dropdown-wrapper .mobile-dropdown-title{display:none;font-weight:600}.dropdown-wrapper .mobile-dropdown-title font-size inherit:hover{color:#07aab4}.dropdown-wrapper .nav-dropdown .dropdown-item{color:inherit;line-height:1.7rem}.dropdown-wrapper .nav-dropdown .dropdown-item h4{margin:.45rem 0 0;border-top:1px solid #eee;padding:1rem 1.5rem .45rem 1.25rem}.dropdown-wrapper .nav-dropdown .dropdown-item .dropdown-subitem-wrapper{padding:0;list-style:none}.dropdown-wrapper .nav-dropdown .dropdown-item .dropdown-subitem-wrapper .dropdown-subitem{font-size:.9em}.dropdown-wrapper .nav-dropdown .dropdown-item a{display:block;line-height:1.7rem;position:relative;border-bottom:none;font-weight:400;margin-bottom:0;padding:0 1.5rem 0 1.25rem}.dropdown-wrapper .nav-dropdown .dropdown-item a.router-link-active,.dropdown-wrapper .nav-dropdown .dropdown-item a:hover{color:#07aab4}.dropdown-wrapper .nav-dropdown .dropdown-item a.router-link-active:after{content:"";width:0;height:0;border-left:5px solid #07aab4;border-top:3px solid transparent;border-bottom:3px solid transparent;position:absolute;top:calc(50% - 2px);left:9px}.dropdown-wrapper .nav-dropdown .dropdown-item:first-child h4{margin-top:0;padding-top:0;border-top:0}@media (max-width:719px){.dropdown-wrapper.open .dropdown-title{margin-bottom:.5rem}.dropdown-wrapper .dropdown-title{display:none}.dropdown-wrapper .mobile-dropdown-title{display:block}.dropdown-wrapper .nav-dropdown{transition:height .1s ease-out;overflow:hidden}.dropdown-wrapper .nav-dropdown .dropdown-item h4{border-top:0;margin-top:0;padding-top:0}.dropdown-wrapper .nav-dropdown .dropdown-item>a,.dropdown-wrapper .nav-dropdown .dropdown-item h4{font-size:15px;line-height:2rem}.dropdown-wrapper .nav-dropdown .dropdown-item .dropdown-subitem{font-size:14px;padding-left:1rem}}@media (min-width:719px){.dropdown-wrapper{height:1.8rem}.dropdown-wrapper.open .nav-dropdown,.dropdown-wrapper:hover .nav-dropdown{display:block!important}.dropdown-wrapper.open:blur{display:none}.dropdown-wrapper .nav-dropdown{display:none;height:auto!important;box-sizing:border-box;max-height:calc(100vh - 2.7rem);overflow-y:auto;position:absolute;top:100%;right:0;background-color:#fff;padding:.6rem 0;border:1px solid;border-color:#ddd #ddd #ccc;text-align:left;border-radius:.25rem;white-space:nowrap;margin:0}}.nav-links{display:inline-block}.nav-links a{line-height:1.4rem;color:inherit}.nav-links a.router-link-active,.nav-links a:hover{color:#07aab4}.nav-links .nav-item{position:relative;display:inline-block;margin-left:1.5rem;line-height:2rem}.nav-links .nav-item:first-child{margin-left:0}.nav-links .repo-link{margin-left:1.5rem}@media (max-width:719px){.nav-links .nav-item,.nav-links .repo-link{margin-left:0}}@media (min-width:719px){.nav-links a.router-link-active,.nav-links a:hover{color:#292828}.nav-item>a:not(.external).router-link-active,.nav-item>a:not(.external):hover{margin-bottom:-2px;border-bottom:2px solid #08c1cd}}.navbar{padding:.7rem 1.5rem;line-height:2.2rem}.navbar a,.navbar img,.navbar span{display:inline-block}.navbar .logo{height:2.2rem;min-width:2.2rem;margin-right:.8rem;vertical-align:top}.navbar .site-name{font-size:1.3rem;font-weight:600;color:#292828;position:relative}.navbar .links{padding-left:1.5rem;box-sizing:border-box;background-color:#fff;white-space:nowrap;font-size:.9rem;position:absolute;right:1.5rem;top:.7rem;display:flex}.navbar .links .search-box{flex:0 0 auto;vertical-align:top}@media (max-width:719px){.navbar{padding-left:4rem}.navbar .can-hide{display:none}.navbar .links{padding-left:1.5rem}.navbar .site-name{width:calc(100vw - 9.4rem);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}}.page-edit{max-width:740px;margin:0 auto;padding:2rem 2.5rem}@media (max-width:959px){.page-edit{padding:2rem}}@media (max-width:480px){.page-edit{padding:1.5rem}}.page-edit{padding-top:1rem;padding-bottom:1rem;overflow:auto}.page-edit .edit-link{display:inline-block}.page-edit .edit-link a{color:#5f5d5d;margin-right:.25rem}.page-edit .last-updated{float:right;font-size:.9em}.page-edit .last-updated .prefix{font-weight:500;color:#5f5d5d}.page-edit .last-updated .time{font-weight:400;color:#767676}@media (max-width:719px){.page-edit .edit-link{margin-bottom:.5rem}.page-edit .last-updated{font-size:.8em;float:none;text-align:left}}.page-nav{max-width:740px;margin:0 auto;padding:2rem 2.5rem}@media (max-width:959px){.page-nav{padding:2rem}}@media (max-width:480px){.page-nav{padding:1.5rem}}.page-nav{padding-top:1rem;padding-bottom:0}.page-nav .inner{min-height:2rem;margin-top:0;border-top:1px solid #eaecef;padding-top:1rem;overflow:auto}.page-nav .next{float:right}.page,.page[data-v-22624a70]{padding-bottom:2rem;display:block}.sidebar-group .sidebar-group{padding-left:.5em}.sidebar-group:not(.collapsable) .sidebar-heading:not(.clickable){cursor:auto;color:inherit}.sidebar-group.is-sub-group{padding-left:0}.sidebar-group.is-sub-group>.sidebar-heading{font-size:.95em;line-height:1.4;font-weight:400;padding-left:2rem}.sidebar-group.is-sub-group>.sidebar-heading:not(.clickable){opacity:.5}.sidebar-group.is-sub-group>.sidebar-group-items{padding-left:1rem}.sidebar-group.is-sub-group>.sidebar-group-items>li>.sidebar-link{font-size:.95em;border-left:none}.sidebar-group.depth-2>.sidebar-heading{border-left:none}.sidebar-heading{color:#292828;transition:color .15s ease;cursor:pointer;font-size:1.1em;font-weight:700;padding:.35rem 1.5rem .35rem 1.25rem;width:100%;box-sizing:border-box;margin:0;border-left:.25rem solid transparent}.sidebar-heading.open,.sidebar-heading:hover{color:inherit}.sidebar-heading .arrow{position:relative;top:-.12em;left:.5em}.sidebar-heading.clickable.active{font-weight:600;color:#07aab4;border-left-color:#07aab4}.sidebar-heading.clickable:hover{color:#07aab4}.sidebar-group-items{transition:height .1s ease-out;font-size:.95em;overflow:hidden}.sidebar .sidebar-sub-headers{padding-left:1rem;font-size:.95em}a.sidebar-link{font-size:1em;font-weight:400;display:inline-block;color:#292828;border-left:.25rem solid transparent;padding:.35rem 1rem .35rem 1.25rem;line-height:1.4;width:100%;box-sizing:border-box}a.sidebar-link:hover{color:#07aab4}a.sidebar-link.active{font-weight:600;color:#07aab4;border-left-color:#07aab4}.sidebar-group a.sidebar-link{padding-left:2rem}.sidebar-sub-headers a.sidebar-link{padding-top:.25rem;padding-bottom:.25rem;border-left:none}.sidebar-sub-headers a.sidebar-link.active{font-weight:500}.sidebar ul{padding:0;margin:0;list-style-type:none}.sidebar a{display:inline-block}.sidebar .nav-links{display:none;border-bottom:1px solid #eaecef;padding:.5rem 0 .75rem}.sidebar .nav-links a{font-weight:600}.sidebar .nav-links .nav-item,.sidebar .nav-links .repo-link{display:block;line-height:1.25rem;font-size:1.1em;padding:.5rem 0 .5rem 1.5rem}.sidebar>.sidebar-links{padding:1.5rem 0}.sidebar>.sidebar-links>li>a.sidebar-link{font-size:1.1em;line-height:1.7;font-weight:700}.sidebar>.sidebar-links>li:not(:first-child){margin-top:.75rem}@media (max-width:719px){.sidebar .nav-links{display:block}.sidebar .nav-links .dropdown-wrapper .nav-dropdown .dropdown-item a.router-link-active:after{top:calc(1rem - 2px)}.sidebar>.sidebar-links{padding:1rem 0}} \ No newline at end of file diff --git a/assets/img/contributors.d37a7073.jpg b/assets/img/contributors.d37a7073.jpg new file mode 100644 index 0000000000000000000000000000000000000000..c4f926679876469aa4d08aca8a8f732892770b51 GIT binary patch literal 242916 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�qp*&TdE1j#}(oaF}S;2W=`5J5F>GHbN_kdF&erl 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 Yl7%V02g1e*g(9Wk^mNv&-hXEQ3%oa8E&u=k literal 0 HcmV?d00001 diff --git a/assets/js/21.3036754c.js b/assets/js/21.3036754c.js new file mode 100644 index 000000000..543ec3f71 --- /dev/null +++ b/assets/js/21.3036754c.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[21],{282:function(a,e,n){},347:function(a,e){a.exports=["epoberezkin","spaced4ndy","erikbrinkman","jasoniangreen","dependabot[bot]","PBug90","blakeembrey","sambauers","gajus","meirotstein","Tyharo1","igor-savin-ht","b4h0-c4t","willfarrell","boenrobot","yume-chan","GrahamLea","franciscomorais","asaid-0","domoritz","imbstack","pithu","realityking","efebarlas","awlayton","pcwiek","rehanvdm","farrago","SoAsEr","kroky","Delagen","YChebotaev","bhvngt","t7yang","teq0","wuweiss","zekth","egfx-notifications","brendo","HotelDon","donaldpipowitch","mummybot","G-Rath","HolgerJeromin","Nonemoticoner","MichaelDeBoey","mattpolzin","monkeywithacupcake","ktrueda","marshall007","lucassaid","philsturgeon","carlo-quinonez","radekmie","merlindorin","Romakita","rbuckton","ryanmeador","mighty1231","simon04","SirLich","krenor","stuartpb","TIBCOeddie","bearmini","not-an-aardvark","mxsgx","m00s","mbroadst","MattiAstedrone","MikeRalphson","tyok","MrJithil","mychaelgo","natflow","nwoltman","nimerritt","nicksrandall","Noam3kCH","eventlistener","Opticsponge","orgads","papb","thernstig","jsdevel","oldmud0","ossdev07","pskfyi","qwertyforce","rek","sahilda","schokotets","superfaz","tridium","vlbee","aladdin-add","wyfo","duxing","anchnk","ChALkeR","TommyDew42","koba04","isTravis","cvlab","vargaeric","villasv","aristov","billytrend","byr-gdp","cjancsar","dfeufel","ehmicky","fpicalausa","franrolando","fridays","jonganc","ahmdsolmn","caub","dalcib","dannyb648","dancasey","rotu","FunkyDck","darcyparker","daveisfera","dsanders11","Delapouite","dimitropoulos","keyten","thetric","rubiagatra","forivall","ecwyne","Alexsey","avanelli","anslzo","asprouse","andyscott","vixalien","kulakowka","vendeza","benasher44","bradjones1","eventualbuddha","cbrwflo","cpillsbury","ChuntaoLu","delavara","smithc10","EtaiG","jboavida","justinpowers","kapouer","lehni","platinumazure","kpping","laurens","johanlelan","leonardovillela","LinusU","alazyzombie","jsbrain","Eomm","VIEWVIEWVIEW","mduu","dzuremar","gj","rgeerts","garrows","hadrien-toma","seriousme","hans-kinnek","handrews","is2ei","idangozlan","ivansieder","P0lip","JamesJansson","mrjgreen","jrr","jonasfj","jonathanGB"]},348:function(a,e,n){"use strict";n(282)},379:function(a,e,n){"use strict";n.r(e);var r=n(347),i=n.n(r),o={data:()=>({contributors:i.a})},t=(n(348),n(14)),s=Object(t.a)(o,(function(){var a=this,e=a._self._c;return e("div",a._l(a.contributors,(function(n,r){return e("a",{staticClass:"contributor",style:"background-position: "+100*r/(a.contributors.length-1)+"% 0",attrs:{href:"https://github.com/"+n}},[a._v("\n "+a._s(n)+"\n ")])})),0)}),[],!1,null,"074475b8",null);e.default=s.exports}}]); \ No newline at end of file diff --git a/assets/js/48.92467b64.js b/assets/js/48.92467b64.js new file mode 100644 index 000000000..4cd2d7403 --- /dev/null +++ b/assets/js/48.92467b64.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[48],{401:function(e,t,a){"use strict";a.r(t);var r=a(14),o=Object(r.a)({},(function(){var e=this,t=e._self._c;return t("ContentSlotsDistributor",{attrs:{"slot-key":e.$parent.slotKey}},[t("h1",{attrs:{id:"code-components"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#code-components"}},[e._v("#")]),e._v(" Code components")]),e._v(" "),t("p"),t("div",{staticClass:"table-of-contents"},[t("ul",[t("li",[t("a",{attrs:{href:"#ajv-classes"}},[e._v("Ajv classes")])]),t("li",[t("a",{attrs:{href:"#schema-compilation"}},[e._v("Schema compilation")])]),t("li",[t("a",{attrs:{href:"#other-components"}},[e._v("Other components")])])])]),t("p"),e._v(" "),t("h2",{attrs:{id:"ajv-classes"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#ajv-classes"}},[e._v("#")]),e._v(" Ajv classes")]),e._v(" "),t("p",[t("a",{attrs:{href:"https://github.com/ajv-validator/ajv/blob/master/lib/core.ts",target:"_blank",rel:"noopener noreferrer"}},[e._v("lib/core.ts"),t("OutboundLink")],1),e._v(" - core Ajv class without any keywords. All Ajv methods for managing schemas and extensions are defined in this class.")]),e._v(" "),t("p",[t("a",{attrs:{href:"https://github.com/ajv-validator/ajv/blob/master/lib/ajv.ts",target:"_blank",rel:"noopener noreferrer"}},[e._v("lib/ajv.ts"),t("OutboundLink")],1),e._v(" - subclass of Ajv core with JSON Schema draft-07 keywords.")]),e._v(" "),t("p",[t("a",{attrs:{href:"https://github.com/ajv-validator/ajv/blob/master/lib/2019.ts",target:"_blank",rel:"noopener noreferrer"}},[e._v("lib/2019.ts"),t("OutboundLink")],1),e._v(" - subclass of Ajv core with JSON Schema draft-2019-09 keywords.")]),e._v(" "),t("p",[t("a",{attrs:{href:"https://github.com/ajv-validator/ajv/blob/master/lib/jtd.ts",target:"_blank",rel:"noopener noreferrer"}},[e._v("lib/jtd.ts"),t("OutboundLink")],1),e._v(" - subclass of Ajv core with JSON Type Definition support.")]),e._v(" "),t("h2",{attrs:{id:"schema-compilation"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#schema-compilation"}},[e._v("#")]),e._v(" Schema compilation")]),e._v(" "),t("p",[t("a",{attrs:{href:"https://github.com/ajv-validator/ajv/blob/master/lib/compile",target:"_blank",rel:"noopener noreferrer"}},[e._v("lib/compile"),t("OutboundLink")],1),e._v(" - code for schema compilation")]),e._v(" "),t("p",[t("a",{attrs:{href:"https://github.com/ajv-validator/ajv/blob/master/lib/compile/index.ts",target:"_blank",rel:"noopener noreferrer"}},[e._v("lib/compile/index.ts"),t("OutboundLink")],1),e._v(" - the main recursive function code for schema compilation, functions for reference resolution, the interface for schema compilation context ("),t("code",[e._v("SchemaCxt")]),e._v(").")]),e._v(" "),t("p",[t("a",{attrs:{href:"https://github.com/ajv-validator/ajv/blob/master/lib/compile/context.ts",target:"_blank",rel:"noopener noreferrer"}},[e._v("lib/compile/context.ts"),t("OutboundLink")],1),e._v(" - the class for keyword code generation "),t("code",[e._v("KeywordCxt")]),e._v(". All pre-defined keywords and user-defined keywords that use "),t("code",[e._v("code")]),e._v(" function are passed an instance of this class.")]),e._v(" "),t("p",[t("a",{attrs:{href:"https://github.com/ajv-validator/ajv/blob/master/lib/compile/rules.ts",target:"_blank",rel:"noopener noreferrer"}},[e._v("lib/compile/rules.ts"),t("OutboundLink")],1),e._v(" - data structure to store references to all all keyword definitions that were added to Ajv instance, organised by data type.")]),e._v(" "),t("p",[t("a",{attrs:{href:"https://github.com/ajv-validator/ajv/blob/master/lib/compile/subschema.ts",target:"_blank",rel:"noopener noreferrer"}},[e._v("lib/compile/subschema.ts"),t("OutboundLink")],1),e._v(" - creates schema context ("),t("code",[e._v("SchemaCxt")]),e._v(") to generate code for subschemas - used by all applicator keywords in "),t("a",{attrs:{href:"https://github.com/ajv-validator/ajv/blob/master/lib/vocabularies/applicator",target:"_blank",rel:"noopener noreferrer"}},[e._v("lib/vocabularies/applicator"),t("OutboundLink")],1),e._v(".")]),e._v(" "),t("p",[t("a",{attrs:{href:"https://github.com/ajv-validator/ajv/blob/master/lib/compile/codegen",target:"_blank",rel:"noopener noreferrer"}},[e._v("lib/compile/codegen"),t("OutboundLink")],1),e._v(" - the api for "),t("RouterLink",{attrs:{to:"/codegen.html"}},[e._v("code generation")]),e._v(".")],1),e._v(" "),t("p",[t("a",{attrs:{href:"https://github.com/ajv-validator/ajv/blob/master/lib/compile/validate",target:"_blank",rel:"noopener noreferrer"}},[e._v("lib/compile/validate"),t("OutboundLink")],1),e._v(" - code to iterate the schema to generate code of validation function.")]),e._v(" "),t("h2",{attrs:{id:"other-components"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#other-components"}},[e._v("#")]),e._v(" Other components")]),e._v(" "),t("p",[t("a",{attrs:{href:"https://github.com/ajv-validator/ajv/blob/master/lib/standalone",target:"_blank",rel:"noopener noreferrer"}},[e._v("lib/standalone"),t("OutboundLink")],1),e._v(" - module to generate "),t("RouterLink",{attrs:{to:"/standalone.html"}},[e._v("standalone validation code")]),e._v(".")],1),e._v(" "),t("p",[t("a",{attrs:{href:"https://github.com/ajv-validator/ajv/blob/master/lib/vocabularies",target:"_blank",rel:"noopener noreferrer"}},[e._v("lib/vocabularies"),t("OutboundLink")],1),e._v(" - pre-defined validation keywords.")]),e._v(" "),t("p",[t("a",{attrs:{href:"https://github.com/ajv-validator/ajv/blob/master/lib/refs",target:"_blank",rel:"noopener noreferrer"}},[e._v("lib/refs"),t("OutboundLink")],1),e._v(" - JSON Schema meta-schemas.")])])}),[],!1,null,null,null);t.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/50.29b85cee.js b/assets/js/50.29b85cee.js new file mode 100644 index 000000000..a84ed6c86 --- /dev/null +++ b/assets/js/50.29b85cee.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[50],{396:function(e,t,a){"use strict";a.r(t);var r=a(14),s=Object(r.a)({},(function(){var e=this,t=e._self._c;return t("ContentSlotsDistributor",{attrs:{"slot-key":e.$parent.slotKey}},[t("h1",{attrs:{id:"frequently-asked-questions"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#frequently-asked-questions"}},[e._v("#")]),e._v(" Frequently Asked Questions")]),e._v(" "),t("p",[e._v("The purpose of this document is to help find answers quicker. I am happy to continue the discussion about these issues, so please comment on some of the issues mentioned below or create a new issue if it seems more appropriate.")]),e._v(" "),t("p"),t("div",{staticClass:"table-of-contents"},[t("ul",[t("li",[t("a",{attrs:{href:"#using-json-schema"}},[e._v("Using JSON schema")]),t("ul",[t("li",[t("a",{attrs:{href:"#why-ajv-validates-empty-object-as-valid"}},[e._v("Why Ajv validates empty object as valid?")])]),t("li",[t("a",{attrs:{href:"#why-ajv-validates-only-the-first-item-of-the-array"}},[e._v("Why Ajv validates only the first item of the array?")])])])]),t("li",[t("a",{attrs:{href:"#ajv-api-for-returning-validation-errors"}},[e._v("Ajv API for returning validation errors")]),t("ul",[t("li",[t("a",{attrs:{href:"#why-ajv-assigns-errors-as-a-property-of-validation-function-or-instance-instead-of-returning-an-object-with-validation-results-and-errors"}},[e._v("Why Ajv assigns errors as a property of validation function (or instance) instead of returning an object with validation results and errors?")])]),t("li",[t("a",{attrs:{href:"#would-errors-get-overwritten-in-case-of-concurrent-validations"}},[e._v('Would errors get overwritten in case of "concurrent" validations?')])]),t("li",[t("a",{attrs:{href:"#can-we-change-extend-api-to-add-a-method-that-would-return-errors-rather-than-assign-them-to-errors-property"}},[e._v("Can we change / extend API to add a method that would return errors (rather than assign them to errors property)?")])]),t("li",[t("a",{attrs:{href:"#why-don-t-additionalproperties-false-errors-display-the-property-name"}},[e._v('Why don\'t "additionalProperties": false errors display the property name?')])])])]),t("li",[t("a",{attrs:{href:"#additional-properties-inside-compound-keywords-anyof-oneof-etc"}},[e._v("Additional properties inside compound keywords anyOf, oneOf, etc.")]),t("ul",[t("li",[t("a",{attrs:{href:"#why-the-keyword-additionalproperties-false-fails-validation-when-some-properties-are-declared-inside-a-subschema-in-anyof-etc"}},[e._v('Why the keyword additionalProperties: false fails validation when some properties are "declared" inside a subschema in anyOf/etc.?')])]),t("li",[t("a",{attrs:{href:"#why-the-validation-fails-when-i-use-option-removeadditional-with-the-keyword-anyof-etc"}},[e._v("Why the validation fails when I use option removeAdditional with the keyword anyOf/etc.?")])])])]),t("li",[t("a",{attrs:{href:"#generating-schemas-with-resolved-references-ref"}},[e._v("Generating schemas with resolved references ($ref)")]),t("ul",[t("li",[t("a",{attrs:{href:"#why-ajv-does-not-replace-references-ref-with-the-actual-referenced-schemas-as-some-validators-do"}},[e._v("Why Ajv does not replace references ($ref) with the actual referenced schemas as some validators do?")])]),t("li",[t("a",{attrs:{href:"#how-can-i-generate-a-schema-where-ref-keywords-are-replaced-with-referenced-schemas"}},[e._v("How can I generate a schema where $ref keywords are replaced with referenced schemas?")])])])])])]),t("p"),e._v(" "),t("h2",{attrs:{id:"using-json-schema"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#using-json-schema"}},[e._v("#")]),e._v(" Using JSON schema")]),e._v(" "),t("p",[e._v("Ajv implements JSON schema specification. Before submitting the issue about the behaviour of any validation keywords please review them in:")]),e._v(" "),t("ul",[t("li",[t("a",{attrs:{href:"https://tools.ietf.org/html/draft-handrews-json-schema-validation-00",target:"_blank",rel:"noopener noreferrer"}},[e._v("JSON Schema specification"),t("OutboundLink")],1),e._v(" (draft-07)")]),e._v(" "),t("li",[t("RouterLink",{attrs:{to:"/json-schema.html"}},[e._v("JSON Schema reference")]),e._v(" in Ajv documentation")],1),e._v(" "),t("li",[t("a",{attrs:{href:"https://spacetelescope.github.io/understanding-json-schema/",target:"_blank",rel:"noopener noreferrer"}},[e._v("JSON Schema tutorial"),t("OutboundLink")],1),e._v(" (for draft-04)")])]),e._v(" "),t("h4",{attrs:{id:"why-ajv-validates-empty-object-as-valid"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#why-ajv-validates-empty-object-as-valid"}},[e._v("#")]),e._v(" Why Ajv validates empty object as valid?")]),e._v(" "),t("p",[e._v('"properties" keyword does not require the presence of any properties, you need to use "required" keyword. It also doesn\'t require that the data is an object, so any other type of data will also be valid. To require a specific type use "type" keyword. '),t("RouterLink",{attrs:{to:"/strict-mode.html#strict-types"}},[e._v("Strict types mode")]),e._v(' introduced in v7 requires presence of "type" when "properties" are used, so the mistakes are less likely.')],1),e._v(" "),t("h4",{attrs:{id:"why-ajv-validates-only-the-first-item-of-the-array"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#why-ajv-validates-only-the-first-item-of-the-array"}},[e._v("#")]),e._v(" Why Ajv validates only the first item of the array?")]),e._v(" "),t("p",[e._v('"items" keyword support '),t("RouterLink",{attrs:{to:"/json-schema.html#items"}},[e._v("two syntaxes")]),e._v(" - 1) when the schema applies to all items; 2) when there is a different schema for each item in the beginning of the array. This problem means you are using the second syntax.")],1),e._v(" "),t("p",[e._v("In v7 with option "),t("code",[e._v("strictTuples")]),e._v(" ("),t("code",[e._v('"log"')]),e._v(' by default) this problem is less likely to happen, as Ajv would log warning about missing "minItems" and other keywords that are required to constrain tuple size.')]),e._v(" "),t("h2",{attrs:{id:"ajv-api-for-returning-validation-errors"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#ajv-api-for-returning-validation-errors"}},[e._v("#")]),e._v(" Ajv API for returning validation errors")]),e._v(" "),t("p",[e._v("See "),t("a",{attrs:{href:"https://github.com/ajv-validator/ajv/issues/65",target:"_blank",rel:"noopener noreferrer"}},[e._v("#65"),t("OutboundLink")],1),e._v(", "),t("a",{attrs:{href:"https://github.com/ajv-validator/ajv/issues/212",target:"_blank",rel:"noopener noreferrer"}},[e._v("#212"),t("OutboundLink")],1),e._v(", "),t("a",{attrs:{href:"https://github.com/ajv-validator/ajv/issues/236",target:"_blank",rel:"noopener noreferrer"}},[e._v("#236"),t("OutboundLink")],1),e._v(", "),t("a",{attrs:{href:"https://github.com/ajv-validator/ajv/issues/242",target:"_blank",rel:"noopener noreferrer"}},[e._v("#242"),t("OutboundLink")],1),e._v(", "),t("a",{attrs:{href:"https://github.com/ajv-validator/ajv/issues/256",target:"_blank",rel:"noopener noreferrer"}},[e._v("#256"),t("OutboundLink")],1),e._v(".")]),e._v(" "),t("h4",{attrs:{id:"why-ajv-assigns-errors-as-a-property-of-validation-function-or-instance-instead-of-returning-an-object-with-validation-results-and-errors"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#why-ajv-assigns-errors-as-a-property-of-validation-function-or-instance-instead-of-returning-an-object-with-validation-results-and-errors"}},[e._v("#")]),e._v(" Why Ajv assigns errors as a property of validation function (or instance) instead of returning an object with validation results and errors?")]),e._v(" "),t("p",[e._v("The reasons are history (other fast validators with the same api) and performance (returning boolean is faster). Although more code is written to process errors than to handle successful results, almost all server-side validations pass. The existing API is more efficient from the performance point of view.")]),e._v(" "),t("p",[e._v("Ajv also supports asynchronous validation (with asynchronous formats and keywords) that returns a promise that either resolves to "),t("code",[e._v("true")]),e._v(" or rejects with an error.")]),e._v(" "),t("h4",{attrs:{id:"would-errors-get-overwritten-in-case-of-concurrent-validations"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#would-errors-get-overwritten-in-case-of-concurrent-validations"}},[e._v("#")]),e._v(' Would errors get overwritten in case of "concurrent" validations?')]),e._v(" "),t("p",[e._v("No. There is no parallel execution in JavaScript, and the cooperative concurrency model of javascript makes this pattern safe. While a validation is run, no other JavaScript code that can access the same memory can be executed. As long as the errors are used in the same execution block, the errors will not be overwritten.")]),e._v(" "),t("h4",{attrs:{id:"can-we-change-extend-api-to-add-a-method-that-would-return-errors-rather-than-assign-them-to-errors-property"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#can-we-change-extend-api-to-add-a-method-that-would-return-errors-rather-than-assign-them-to-errors-property"}},[e._v("#")]),e._v(" Can we change / extend API to add a method that would return errors (rather than assign them to "),t("code",[e._v("errors")]),e._v(" property)?")]),e._v(" "),t("p",[e._v("No. In many cases there is a module responsible for the validation in the application, usually to load schemas and to process errors. This module is the right place to introduce any user-defined API. Convenience is a subjective thing, changing or extending API purely because of convenience would either break backward compatibility (even if it's done in a new major version it still complicates migration) or bloat API (making it more difficult to maintain).")]),e._v(" "),t("h4",{attrs:{id:"why-don-t-additionalproperties-false-errors-display-the-property-name"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#why-don-t-additionalproperties-false-errors-display-the-property-name"}},[e._v("#")]),e._v(" Why don't "),t("code",[e._v('"additionalProperties": false')]),e._v(" errors display the property name?")]),e._v(" "),t("p",[e._v("Doing this would create a precedent where validated data is used in error messages, creating a vulnerability (e.g., when ajv is used to validate API data/parameters and error messages are logged).")]),e._v(" "),t("p",[e._v("Since the property name is already in the params object, in an application you can modify the messages in any way you need. ajv-errors package allows modifying messages as well.")]),e._v(" "),t("h2",{attrs:{id:"additional-properties-inside-compound-keywords-anyof-oneof-etc"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#additional-properties-inside-compound-keywords-anyof-oneof-etc"}},[e._v("#")]),e._v(" Additional properties inside compound keywords anyOf, oneOf, etc.")]),e._v(" "),t("p",[e._v("See "),t("a",{attrs:{href:"https://github.com/ajv-validator/ajv/issues/127",target:"_blank",rel:"noopener noreferrer"}},[e._v("#127"),t("OutboundLink")],1),e._v(", "),t("a",{attrs:{href:"https://github.com/ajv-validator/ajv/issues/129",target:"_blank",rel:"noopener noreferrer"}},[e._v("#129"),t("OutboundLink")],1),e._v(", "),t("a",{attrs:{href:"https://github.com/ajv-validator/ajv/issues/134",target:"_blank",rel:"noopener noreferrer"}},[e._v("#134"),t("OutboundLink")],1),e._v(", "),t("a",{attrs:{href:"https://github.com/ajv-validator/ajv/issues/140",target:"_blank",rel:"noopener noreferrer"}},[e._v("#140"),t("OutboundLink")],1),e._v(", "),t("a",{attrs:{href:"https://github.com/ajv-validator/ajv/issues/193",target:"_blank",rel:"noopener noreferrer"}},[e._v("#193"),t("OutboundLink")],1),e._v(", "),t("a",{attrs:{href:"https://github.com/ajv-validator/ajv/issues/205",target:"_blank",rel:"noopener noreferrer"}},[e._v("#205"),t("OutboundLink")],1),e._v(", "),t("a",{attrs:{href:"https://github.com/ajv-validator/ajv/issues/238",target:"_blank",rel:"noopener noreferrer"}},[e._v("#238"),t("OutboundLink")],1),e._v(", "),t("a",{attrs:{href:"https://github.com/ajv-validator/ajv/issues/264",target:"_blank",rel:"noopener noreferrer"}},[e._v("#264"),t("OutboundLink")],1),e._v(".")]),e._v(" "),t("h4",{attrs:{id:"why-the-keyword-additionalproperties-false-fails-validation-when-some-properties-are-declared-inside-a-subschema-in-anyof-etc"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#why-the-keyword-additionalproperties-false-fails-validation-when-some-properties-are-declared-inside-a-subschema-in-anyof-etc"}},[e._v("#")]),e._v(" Why the keyword "),t("code",[e._v("additionalProperties: false")]),e._v(' fails validation when some properties are "declared" inside a subschema in '),t("code",[e._v("anyOf")]),e._v("/etc.?")]),e._v(" "),t("p",[e._v("The keyword "),t("code",[e._v("additionalProperties")]),e._v(" creates the restriction on validated data based on its own value ("),t("code",[e._v("false")]),e._v(" or schema object) and on the keywords "),t("code",[e._v("properties")]),e._v(" and "),t("code",[e._v("patternProperties")]),e._v(" in the SAME schema object. JSON Schema validators must NOT take into account properties used in other schema objects.")]),e._v(" "),t("p",[e._v("While you can expect that the schema below would allow the objects either with properties "),t("code",[e._v("foo")]),e._v(" and "),t("code",[e._v("bar")]),e._v(" or with properties "),t("code",[e._v("foo")]),e._v(" and "),t("code",[e._v("baz")]),e._v(" and all other properties will be prohibited, this schema will only allow objects with one property "),t("code",[e._v("foo")]),e._v(" (an empty object and any non-objects will also be valid):")]),e._v(" "),t("div",{staticClass:"language-javascript extra-class"},[t("pre",{pre:!0,attrs:{class:"language-javascript"}},[t("code",[t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v("{")]),e._v("\n "),t("span",{pre:!0,attrs:{class:"token literal-property property"}},[e._v("type")]),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v(":")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[e._v('"object"')]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v(",")]),e._v("\n "),t("span",{pre:!0,attrs:{class:"token literal-property property"}},[e._v("properties")]),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v(":")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v("{")]),t("span",{pre:!0,attrs:{class:"token literal-property property"}},[e._v("foo")]),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v(":")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v("{")]),t("span",{pre:!0,attrs:{class:"token literal-property property"}},[e._v("type")]),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v(":")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[e._v('"number"')]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v("}")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v("}")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v(",")]),e._v("\n "),t("span",{pre:!0,attrs:{class:"token literal-property property"}},[e._v("additionalProperties")]),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v(":")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token boolean"}},[e._v("false")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v(",")]),e._v("\n "),t("span",{pre:!0,attrs:{class:"token literal-property property"}},[e._v("oneOf")]),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v(":")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v("[")]),e._v("\n "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v("{")]),t("span",{pre:!0,attrs:{class:"token literal-property property"}},[e._v("properties")]),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v(":")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v("{")]),t("span",{pre:!0,attrs:{class:"token literal-property property"}},[e._v("bar")]),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v(":")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v("{")]),t("span",{pre:!0,attrs:{class:"token literal-property property"}},[e._v("type")]),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v(":")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[e._v('"number"')]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v("}")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v("}")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v("}")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v(",")]),e._v("\n "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v("{")]),t("span",{pre:!0,attrs:{class:"token literal-property property"}},[e._v("properties")]),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v(":")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v("{")]),t("span",{pre:!0,attrs:{class:"token literal-property property"}},[e._v("baz")]),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v(":")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v("{")]),t("span",{pre:!0,attrs:{class:"token literal-property property"}},[e._v("type")]),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v(":")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[e._v('"number"')]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v("}")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v("}")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v("}")]),e._v("\n "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v("]")]),e._v("\n"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v("}")]),e._v("\n")])])]),t("p",[e._v("The reason for that is that "),t("code",[e._v("additionalProperties")]),e._v(" keyword ignores properties inside "),t("code",[e._v("oneOf")]),e._v(" keyword subschemas. That's not the limitation of Ajv or any other validator, that's how it must work according to the standard.")]),e._v(" "),t("p",[e._v("There are several ways to implement the described logic that would allow two properties, please see the suggestions in the issues mentioned above.")]),e._v(" "),t("h4",{attrs:{id:"why-the-validation-fails-when-i-use-option-removeadditional-with-the-keyword-anyof-etc"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#why-the-validation-fails-when-i-use-option-removeadditional-with-the-keyword-anyof-etc"}},[e._v("#")]),e._v(" Why the validation fails when I use option "),t("code",[e._v("removeAdditional")]),e._v(" with the keyword "),t("code",[e._v("anyOf")]),e._v("/etc.?")]),e._v(" "),t("p",[e._v("This problem is related to the problem explained above - properties treated as additional in the sense of "),t("code",[e._v("additionalProperties")]),e._v(" keyword, based on "),t("code",[e._v("properties")]),e._v("/"),t("code",[e._v("patternProperties")]),e._v(" keyword in the same schema object.")]),e._v(" "),t("p",[e._v("See the example in the "),t("a",{attrs:{href:"https://ajv.js.org/guide/modifying-data.html#removing-additional-properties",target:"_blank",rel:"noopener noreferrer"}},[e._v("Removing Additional Data"),t("OutboundLink")],1),e._v(" section of the docs.")]),e._v(" "),t("h2",{attrs:{id:"generating-schemas-with-resolved-references-ref"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#generating-schemas-with-resolved-references-ref"}},[e._v("#")]),e._v(" Generating schemas with resolved references ($ref)")]),e._v(" "),t("p",[e._v("See "),t("a",{attrs:{href:"https://github.com/ajv-validator/ajv/issues/22",target:"_blank",rel:"noopener noreferrer"}},[e._v("#22"),t("OutboundLink")],1),e._v(", "),t("a",{attrs:{href:"https://github.com/ajv-validator/ajv/issues/125",target:"_blank",rel:"noopener noreferrer"}},[e._v("#125"),t("OutboundLink")],1),e._v(", "),t("a",{attrs:{href:"https://github.com/ajv-validator/ajv/issues/146",target:"_blank",rel:"noopener noreferrer"}},[e._v("#146"),t("OutboundLink")],1),e._v(", "),t("a",{attrs:{href:"https://github.com/ajv-validator/ajv/issues/228",target:"_blank",rel:"noopener noreferrer"}},[e._v("#228"),t("OutboundLink")],1),e._v(", "),t("a",{attrs:{href:"https://github.com/ajv-validator/ajv/issues/336",target:"_blank",rel:"noopener noreferrer"}},[e._v("#336"),t("OutboundLink")],1),e._v(", "),t("a",{attrs:{href:"https://github.com/ajv-validator/ajv/issues/454",target:"_blank",rel:"noopener noreferrer"}},[e._v("#454"),t("OutboundLink")],1),e._v(".")]),e._v(" "),t("h4",{attrs:{id:"why-ajv-does-not-replace-references-ref-with-the-actual-referenced-schemas-as-some-validators-do"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#why-ajv-does-not-replace-references-ref-with-the-actual-referenced-schemas-as-some-validators-do"}},[e._v("#")]),e._v(" Why Ajv does not replace references ($ref) with the actual referenced schemas as some validators do?")]),e._v(" "),t("ol",[t("li",[e._v("The scope of Ajv is validating data against JSON Schemas; inlining referenced schemas is not necessary for validation. When Ajv generates code for validation it either inlines the code of referenced schema or uses function calls. Doing schema manipulation is more complex and out of scope.")]),e._v(" "),t("li",[e._v("When schemas are recursive (or mutually recursive) resolving references would result in self-referencing recursive data-structures that can be difficult to process.")]),e._v(" "),t("li",[e._v("There are cases when such inlining would also require adding (or modifying) "),t("code",[e._v("id")]),e._v(" attribute in the inlined schema fragment to make the resulting schema equivalent.")])]),e._v(" "),t("p",[e._v("There were many conversations about the meaning of "),t("code",[e._v("$ref")]),e._v(" in "),t("a",{attrs:{href:"https://github.com/json-schema-org",target:"_blank",rel:"noopener noreferrer"}},[e._v("JSON Schema GitHub organisation"),t("OutboundLink")],1),e._v(". The consensus is that while it is possible to treat "),t("code",[e._v("$ref")]),e._v(" as schema inclusion with two caveats (above), this interpretation is unnecessary complex. A more efficient approach is to treat "),t("code",[e._v("$ref")]),e._v(" as a delegation, i.e. a special keyword that validates the current data instance against the referenced schema. The analogy with programming languages is that "),t("code",[e._v("$ref")]),e._v(" is a function call rather than a macro. See "),t("a",{attrs:{href:"https://github.com/json-schema-org/json-schema-spec/issues/279",target:"_blank",rel:"noopener noreferrer"}},[e._v("here"),t("OutboundLink")],1),e._v(", for example.")]),e._v(" "),t("h4",{attrs:{id:"how-can-i-generate-a-schema-where-ref-keywords-are-replaced-with-referenced-schemas"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#how-can-i-generate-a-schema-where-ref-keywords-are-replaced-with-referenced-schemas"}},[e._v("#")]),e._v(" How can I generate a schema where "),t("code",[e._v("$ref")]),e._v(" keywords are replaced with referenced schemas?")]),e._v(" "),t("p",[e._v("There are two possible approaches:")]),e._v(" "),t("ol",[t("li",[e._v("Traverse schema (e.g. with json-schema-traverse) and replace every "),t("code",[e._v("$ref")]),e._v(" with the referenced schema.")]),e._v(" "),t("li",[e._v("Use a specially constructed JSON Schema with a "),t("RouterLink",{attrs:{to:"/keywords.html"}},[e._v("user-defined keyword")]),e._v(" to traverse and modify your schema.")],1)])])}),[],!1,null,null,null);t.default=s.exports}}]); \ No newline at end of file diff --git a/assets/js/74.7e6066ee.js b/assets/js/74.7e6066ee.js new file mode 100644 index 000000000..66eb08086 --- /dev/null +++ b/assets/js/74.7e6066ee.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[74],{425:function(t,e,a){"use strict";a.r(e);var s=a(14),r=Object(s.a)({},(function(){var t=this,e=t._self._c;return e("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[e("h1",{attrs:{id:"ajv-options"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#ajv-options"}},[t._v("#")]),t._v(" Ajv options")]),t._v(" "),e("p"),e("div",{staticClass:"table-of-contents"},[e("ul",[e("li",[e("a",{attrs:{href:"#usage"}},[t._v("Usage")])]),e("li",[e("a",{attrs:{href:"#option-defaults"}},[t._v("Option defaults")])]),e("li",[e("a",{attrs:{href:"#strict-mode-options"}},[t._v("Strict mode options "),e("Badge",{attrs:{text:"v7"}})],1),e("ul",[e("li",[e("a",{attrs:{href:"#strict"}},[t._v("strict")])]),e("li",[e("a",{attrs:{href:"#strictschema"}},[t._v("strictSchema")])]),e("li",[e("a",{attrs:{href:"#strictnumbers"}},[t._v("strictNumbers")])]),e("li",[e("a",{attrs:{href:"#stricttypes"}},[t._v("strictTypes")])]),e("li",[e("a",{attrs:{href:"#stricttuples"}},[t._v("strictTuples")])]),e("li",[e("a",{attrs:{href:"#strictrequired"}},[t._v("strictRequired")])]),e("li",[e("a",{attrs:{href:"#allowuniontypes"}},[t._v("allowUnionTypes")])]),e("li",[e("a",{attrs:{href:"#allowmatchingproperties"}},[t._v("allowMatchingProperties")])]),e("li",[e("a",{attrs:{href:"#validateformats"}},[t._v("validateFormats")])])])]),e("li",[e("a",{attrs:{href:"#validation-and-reporting-options"}},[t._v("Validation and reporting options")]),e("ul",[e("li",[e("a",{attrs:{href:"#data"}},[t._v("$data")])]),e("li",[e("a",{attrs:{href:"#allerrors"}},[t._v("allErrors")])]),e("li",[e("a",{attrs:{href:"#verbose"}},[t._v("verbose")])]),e("li",[e("a",{attrs:{href:"#discriminator"}},[t._v("discriminator")])]),e("li",[e("a",{attrs:{href:"#unicoderegexp"}},[t._v("unicodeRegExp")])]),e("li",[e("a",{attrs:{href:"#timestamp"}},[t._v("timestamp "),e("Badge",{attrs:{text:"JTD only"}})],1)]),e("li",[e("a",{attrs:{href:"#parsedate"}},[t._v("parseDate "),e("Badge",{attrs:{text:"JTD only"}})],1)]),e("li",[e("a",{attrs:{href:"#allowdate"}},[t._v("allowDate "),e("Badge",{attrs:{text:"JTD only"}})],1)]),e("li",[e("a",{attrs:{href:"#int32range"}},[t._v("int32range "),e("Badge",{attrs:{text:"JTD only"}})],1)]),e("li",[e("a",{attrs:{href:"#comment"}},[t._v("$comment")])]),e("li",[e("a",{attrs:{href:"#formats"}},[t._v("formats")])]),e("li",[e("a",{attrs:{href:"#keywords"}},[t._v("keywords")])]),e("li",[e("a",{attrs:{href:"#schemas"}},[t._v("schemas")])]),e("li",[e("a",{attrs:{href:"#logger"}},[t._v("logger")])]),e("li",[e("a",{attrs:{href:"#loadschema"}},[t._v("loadSchema")])])])]),e("li",[e("a",{attrs:{href:"#options-to-modify-validated-data"}},[t._v("Options to modify validated data")]),e("ul",[e("li",[e("a",{attrs:{href:"#removeadditional"}},[t._v("removeAdditional")])]),e("li",[e("a",{attrs:{href:"#usedefaults"}},[t._v("useDefaults")])]),e("li",[e("a",{attrs:{href:"#coercetypes"}},[t._v("coerceTypes")])])])]),e("li",[e("a",{attrs:{href:"#advanced-options"}},[t._v("Advanced options")]),e("ul",[e("li",[e("a",{attrs:{href:"#meta"}},[t._v("meta")])]),e("li",[e("a",{attrs:{href:"#validateschema"}},[t._v("validateSchema")])]),e("li",[e("a",{attrs:{href:"#addusedschema"}},[t._v("addUsedSchema")])]),e("li",[e("a",{attrs:{href:"#inlinerefs"}},[t._v("inlineRefs")])]),e("li",[e("a",{attrs:{href:"#passcontext"}},[t._v("passContext")])]),e("li",[e("a",{attrs:{href:"#looprequired"}},[t._v("loopRequired")])]),e("li",[e("a",{attrs:{href:"#loopenum"}},[t._v("loopEnum "),e("Badge",{attrs:{text:"v7"}})],1)]),e("li",[e("a",{attrs:{href:"#ownproperties"}},[t._v("ownProperties")])]),e("li",[e("a",{attrs:{href:"#multipleofprecision"}},[t._v("multipleOfPrecision")])]),e("li",[e("a",{attrs:{href:"#messages"}},[t._v("messages")])]),e("li",[e("a",{attrs:{href:"#uriresolver"}},[t._v("uriResolver")])]),e("li",[e("a",{attrs:{href:"#code"}},[t._v("code "),e("Badge",{attrs:{text:"v7"}})],1)])])])])]),e("p"),t._v(" "),e("h2",{attrs:{id:"usage"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#usage"}},[t._v("#")]),t._v(" Usage")]),t._v(" "),e("p",[t._v("This page describes properties of the options object that can be passed to Ajv constructor.")]),t._v(" "),e("p",[t._v("For example, to report all validation errors (rather than failing on the first errors) you should pass "),e("code",[t._v("allErrors")]),t._v(" option to constructor:")]),t._v(" "),e("div",{staticClass:"language-javascript extra-class"},[e("pre",{pre:!0,attrs:{class:"language-javascript"}},[e("code",[e("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("const")]),t._v(" ajv "),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("new")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token class-name"}},[t._v("Ajv")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),e("span",{pre:!0,attrs:{class:"token literal-property property"}},[t._v("allErrors")]),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token boolean"}},[t._v("true")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n")])])]),e("h2",{attrs:{id:"option-defaults"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#option-defaults"}},[t._v("#")]),t._v(" Option defaults")]),t._v(" "),e("div",{staticClass:"custom-block tip"},[e("p",{staticClass:"custom-block-title"},[t._v("Do NOT pass default options")]),t._v(" "),e("p",[t._v("Passing the value below for some of the options is equivalent to not passing this option at all. There is no need to pass default option values - it is recommended to only pass option values that are different from defaults.")])]),t._v(" "),e("div",{staticClass:"language-javascript extra-class"},[e("pre",{pre:!0,attrs:{class:"language-javascript"}},[e("code",[e("span",{pre:!0,attrs:{class:"token comment"}},[t._v("// see types/index.ts for actual types")]),t._v("\n"),e("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("const")]),t._v(" defaultOptions "),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n "),e("span",{pre:!0,attrs:{class:"token comment"}},[t._v("// strict mode options (NEW)")]),t._v("\n "),e("span",{pre:!0,attrs:{class:"token literal-property property"}},[t._v("strict")]),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("undefined")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token comment"}},[t._v("// *")]),t._v("\n "),e("span",{pre:!0,attrs:{class:"token literal-property property"}},[t._v("strictSchema")]),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token boolean"}},[t._v("true")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token comment"}},[t._v("// *")]),t._v("\n "),e("span",{pre:!0,attrs:{class:"token literal-property property"}},[t._v("strictNumbers")]),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token boolean"}},[t._v("true")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token comment"}},[t._v("// *")]),t._v("\n "),e("span",{pre:!0,attrs:{class:"token literal-property property"}},[t._v("strictTypes")]),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token string"}},[t._v('"log"')]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token comment"}},[t._v("// *")]),t._v("\n "),e("span",{pre:!0,attrs:{class:"token literal-property property"}},[t._v("strictTuples")]),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token string"}},[t._v('"log"')]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token comment"}},[t._v("// *")]),t._v("\n "),e("span",{pre:!0,attrs:{class:"token literal-property property"}},[t._v("strictRequired")]),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token boolean"}},[t._v("false")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token comment"}},[t._v("// *")]),t._v("\n "),e("span",{pre:!0,attrs:{class:"token literal-property property"}},[t._v("allowUnionTypes")]),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token boolean"}},[t._v("false")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token comment"}},[t._v("// *")]),t._v("\n "),e("span",{pre:!0,attrs:{class:"token literal-property property"}},[t._v("allowMatchingProperties")]),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token boolean"}},[t._v("false")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token comment"}},[t._v("// *")]),t._v("\n "),e("span",{pre:!0,attrs:{class:"token literal-property property"}},[t._v("validateFormats")]),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token boolean"}},[t._v("true")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token comment"}},[t._v("// *")]),t._v("\n "),e("span",{pre:!0,attrs:{class:"token comment"}},[t._v("// validation and reporting options:")]),t._v("\n "),e("span",{pre:!0,attrs:{class:"token literal-property property"}},[t._v("$data")]),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token boolean"}},[t._v("false")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token comment"}},[t._v("// *")]),t._v("\n "),e("span",{pre:!0,attrs:{class:"token literal-property property"}},[t._v("allErrors")]),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token boolean"}},[t._v("false")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v("\n "),e("span",{pre:!0,attrs:{class:"token literal-property property"}},[t._v("verbose")]),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token boolean"}},[t._v("false")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v("\n "),e("span",{pre:!0,attrs:{class:"token literal-property property"}},[t._v("discriminator")]),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token boolean"}},[t._v("false")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token comment"}},[t._v("// *")]),t._v("\n "),e("span",{pre:!0,attrs:{class:"token literal-property property"}},[t._v("unicodeRegExp")]),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token boolean"}},[t._v("true")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token comment"}},[t._v("// *")]),t._v("\n "),e("span",{pre:!0,attrs:{class:"token literal-property property"}},[t._v("timestamp")]),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("undefined")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token comment"}},[t._v("// **")]),t._v("\n "),e("span",{pre:!0,attrs:{class:"token literal-property property"}},[t._v("parseDate")]),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token boolean"}},[t._v("false")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token comment"}},[t._v("// **")]),t._v("\n "),e("span",{pre:!0,attrs:{class:"token literal-property property"}},[t._v("allowDate")]),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token boolean"}},[t._v("false")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token comment"}},[t._v("// **")]),t._v("\n "),e("span",{pre:!0,attrs:{class:"token literal-property property"}},[t._v("int32range")]),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token boolean"}},[t._v("true")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token comment"}},[t._v("// **")]),t._v("\n "),e("span",{pre:!0,attrs:{class:"token literal-property property"}},[t._v("$comment")]),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token boolean"}},[t._v("false")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token comment"}},[t._v("// *")]),t._v("\n "),e("span",{pre:!0,attrs:{class:"token literal-property property"}},[t._v("formats")]),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v("\n "),e("span",{pre:!0,attrs:{class:"token literal-property property"}},[t._v("keywords")]),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v("\n "),e("span",{pre:!0,attrs:{class:"token literal-property property"}},[t._v("schemas")]),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v("\n "),e("span",{pre:!0,attrs:{class:"token literal-property property"}},[t._v("logger")]),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("undefined")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v("\n "),e("span",{pre:!0,attrs:{class:"token literal-property property"}},[t._v("loadSchema")]),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("undefined")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token comment"}},[t._v("// *, function(uri: string): Promise {}")]),t._v("\n "),e("span",{pre:!0,attrs:{class:"token comment"}},[t._v("// options to modify validated data:")]),t._v("\n "),e("span",{pre:!0,attrs:{class:"token literal-property property"}},[t._v("removeAdditional")]),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token boolean"}},[t._v("false")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v("\n "),e("span",{pre:!0,attrs:{class:"token literal-property property"}},[t._v("useDefaults")]),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token boolean"}},[t._v("false")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token comment"}},[t._v("// *")]),t._v("\n "),e("span",{pre:!0,attrs:{class:"token literal-property property"}},[t._v("coerceTypes")]),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token boolean"}},[t._v("false")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token comment"}},[t._v("// *")]),t._v("\n "),e("span",{pre:!0,attrs:{class:"token comment"}},[t._v("// advanced options:")]),t._v("\n "),e("span",{pre:!0,attrs:{class:"token literal-property property"}},[t._v("meta")]),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token boolean"}},[t._v("true")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v("\n "),e("span",{pre:!0,attrs:{class:"token literal-property property"}},[t._v("validateSchema")]),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token boolean"}},[t._v("true")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v("\n "),e("span",{pre:!0,attrs:{class:"token literal-property property"}},[t._v("addUsedSchema")]),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token boolean"}},[t._v("true")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v("\n "),e("span",{pre:!0,attrs:{class:"token literal-property property"}},[t._v("inlineRefs")]),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token boolean"}},[t._v("true")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v("\n "),e("span",{pre:!0,attrs:{class:"token literal-property property"}},[t._v("passContext")]),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token boolean"}},[t._v("false")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v("\n "),e("span",{pre:!0,attrs:{class:"token literal-property property"}},[t._v("loopRequired")]),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token number"}},[t._v("200")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token comment"}},[t._v("// *")]),t._v("\n "),e("span",{pre:!0,attrs:{class:"token literal-property property"}},[t._v("loopEnum")]),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token number"}},[t._v("200")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token comment"}},[t._v("// NEW")]),t._v("\n "),e("span",{pre:!0,attrs:{class:"token literal-property property"}},[t._v("ownProperties")]),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token boolean"}},[t._v("false")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v("\n "),e("span",{pre:!0,attrs:{class:"token literal-property property"}},[t._v("multipleOfPrecision")]),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("undefined")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token comment"}},[t._v("// *")]),t._v("\n "),e("span",{pre:!0,attrs:{class:"token literal-property property"}},[t._v("messages")]),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token boolean"}},[t._v("true")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token comment"}},[t._v("// false with JTD")]),t._v("\n "),e("span",{pre:!0,attrs:{class:"token literal-property property"}},[t._v("uriResolver")]),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("undefined")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v("\n "),e("span",{pre:!0,attrs:{class:"token literal-property property"}},[t._v("code")]),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n "),e("span",{pre:!0,attrs:{class:"token comment"}},[t._v("// NEW")]),t._v("\n "),e("span",{pre:!0,attrs:{class:"token literal-property property"}},[t._v("es5")]),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token boolean"}},[t._v("false")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v("\n "),e("span",{pre:!0,attrs:{class:"token literal-property property"}},[t._v("esm")]),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token boolean"}},[t._v("false")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v("\n "),e("span",{pre:!0,attrs:{class:"token literal-property property"}},[t._v("lines")]),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token boolean"}},[t._v("false")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v("\n "),e("span",{pre:!0,attrs:{class:"token literal-property property"}},[t._v("source")]),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token boolean"}},[t._v("false")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v("\n "),e("span",{pre:!0,attrs:{class:"token literal-property property"}},[t._v("process")]),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("undefined")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token comment"}},[t._v("// (code: string) => string")]),t._v("\n "),e("span",{pre:!0,attrs:{class:"token literal-property property"}},[t._v("optimize")]),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token boolean"}},[t._v("true")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v("\n "),e("span",{pre:!0,attrs:{class:"token literal-property property"}},[t._v("regExp")]),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" RegExp\n "),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v("\n"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n")])])]),e("p",[e("sup",[t._v("*")]),t._v(" only with JSON Schema")]),t._v(" "),e("p",[e("sup",[t._v("**")]),t._v(" only with JSON Type Definition")]),t._v(" "),e("h2",{attrs:{id:"strict-mode-options"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#strict-mode-options"}},[t._v("#")]),t._v(" Strict mode options "),e("Badge",{attrs:{text:"v7"}})],1),t._v(" "),e("h3",{attrs:{id:"strict"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#strict"}},[t._v("#")]),t._v(" strict")]),t._v(" "),e("p",[t._v("By default Ajv executes in strict mode, that is designed to prevent any unexpected behaviours or silently ignored mistakes in schemas (see "),e("RouterLink",{attrs:{to:"/strict-mode.html"}},[t._v("Strict Mode")]),t._v(" for more details). It does not change any validation results, but it makes some schemas invalid that would be otherwise valid according to JSON Schema specification.")],1),t._v(" "),e("p",[t._v("Option values:")]),t._v(" "),e("ul",[e("li",[e("code",[t._v("true")]),t._v(" - throw an exception when any strict mode restriction is violated.")]),t._v(" "),e("li",[e("code",[t._v('"log"')]),t._v(" - log warning when any strict mode restriction is violated.")]),t._v(" "),e("li",[e("code",[t._v("false")]),t._v(" - ignore all strict mode violations.")]),t._v(" "),e("li",[e("code",[t._v("undefined")]),t._v(" (default) - use defaults for options strictSchema, strictNumbers, strictTypes, strictTuples and strictRequired.")])]),t._v(" "),e("h3",{attrs:{id:"strictschema"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#strictschema"}},[t._v("#")]),t._v(" strictSchema")]),t._v(" "),e("p",[t._v("Prevent unknown keywords, formats etc. (see "),e("RouterLink",{attrs:{to:"/strict-mode.html#strict-schema"}},[t._v("Strict schema")]),t._v(")")],1),t._v(" "),e("p",[t._v("Option values:")]),t._v(" "),e("ul",[e("li",[e("code",[t._v("true")]),t._v(" (default) - throw an exception when any strict schema restriction is violated.")]),t._v(" "),e("li",[e("code",[t._v('"log"')]),t._v(" - log warning when any strict schema restriction is violated.")]),t._v(" "),e("li",[e("code",[t._v("false")]),t._v(" - ignore all strict schema violations.")])]),t._v(" "),e("h3",{attrs:{id:"strictnumbers"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#strictnumbers"}},[t._v("#")]),t._v(" strictNumbers")]),t._v(" "),e("p",[t._v("Whether to accept "),e("code",[t._v("NaN")]),t._v(" and "),e("code",[t._v("Infinity")]),t._v(" as number types during validation.")]),t._v(" "),e("p",[t._v("Option values:")]),t._v(" "),e("ul",[e("li",[e("code",[t._v("true")]),t._v(" (default) - fail validation if "),e("code",[t._v("NaN")]),t._v(" or "),e("code",[t._v("Infinity")]),t._v(" is passed where number is expected.")]),t._v(" "),e("li",[e("code",[t._v("false")]),t._v(" - allow "),e("code",[t._v("NaN")]),t._v(" and "),e("code",[t._v("Infinity")]),t._v(" as number.")])]),t._v(" "),e("h3",{attrs:{id:"stricttypes"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#stricttypes"}},[t._v("#")]),t._v(" strictTypes")]),t._v(" "),e("p",[t._v("See "),e("RouterLink",{attrs:{to:"/strict-mode.html#strict-types"}},[t._v("Strict types")])],1),t._v(" "),e("p",[t._v("Option values:")]),t._v(" "),e("ul",[e("li",[e("code",[t._v("true")]),t._v(" - throw an exception when any strict types restriction is violated.")]),t._v(" "),e("li",[e("code",[t._v('"log"')]),t._v(" (default) - log warning when any strict types restriction is violated.")]),t._v(" "),e("li",[e("code",[t._v("false")]),t._v(" - ignore all strict types violations.")])]),t._v(" "),e("h3",{attrs:{id:"stricttuples"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#stricttuples"}},[t._v("#")]),t._v(" strictTuples")]),t._v(" "),e("p",[t._v("See "),e("RouterLink",{attrs:{to:"/strict-mode.html#unconstrained-tuples"}},[t._v("Unconstrained tuples")])],1),t._v(" "),e("p",[t._v("Option values:")]),t._v(" "),e("ul",[e("li",[e("code",[t._v("true")]),t._v(" - throw an exception when any strict tuples restriction is violated.")]),t._v(" "),e("li",[e("code",[t._v('"log"')]),t._v(" (default) - log warning when any strict tuples restriction is violated.")]),t._v(" "),e("li",[e("code",[t._v("false")]),t._v(" - ignore all strict tuples violations.")])]),t._v(" "),e("h3",{attrs:{id:"strictrequired"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#strictrequired"}},[t._v("#")]),t._v(" strictRequired")]),t._v(" "),e("p",[t._v("See "),e("RouterLink",{attrs:{to:"/strict-mode.html#defined-required-properties"}},[t._v("Defined required properties")])],1),t._v(" "),e("p",[t._v("Option values:")]),t._v(" "),e("ul",[e("li",[e("code",[t._v("true")]),t._v(" - throw an exception when strict required restriction is violated.")]),t._v(" "),e("li",[e("code",[t._v('"log"')]),t._v(" - log warning when strict required restriction is violated.")]),t._v(" "),e("li",[e("code",[t._v("false")]),t._v(" (default) - ignore strict required violations.")])]),t._v(" "),e("h3",{attrs:{id:"allowuniontypes"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#allowuniontypes"}},[t._v("#")]),t._v(" allowUnionTypes")]),t._v(" "),e("p",[t._v('Pass true to allow using multiple non-null types in "type" keyword (one of '),e("code",[t._v("strictTypes")]),t._v(" restrictions). see "),e("RouterLink",{attrs:{to:"/strict-mode.html#strict-types"}},[t._v("Strict types")])],1),t._v(" "),e("h3",{attrs:{id:"allowmatchingproperties"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#allowmatchingproperties"}},[t._v("#")]),t._v(" allowMatchingProperties")]),t._v(" "),e("p",[t._v('Pass true to allow overlap between "properties" and "patternProperties". Does not affect other strict mode restrictions. See '),e("RouterLink",{attrs:{to:"/strict-mode.html"}},[t._v("Strict Mode")]),t._v(".")],1),t._v(" "),e("h3",{attrs:{id:"validateformats"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#validateformats"}},[t._v("#")]),t._v(" validateFormats")]),t._v(" "),e("p",[t._v("Format validation.")]),t._v(" "),e("p",[t._v("Option values:")]),t._v(" "),e("ul",[e("li",[e("code",[t._v("true")]),t._v(" (default) - validate formats (see "),e("RouterLink",{attrs:{to:"/guide/formats.html"}},[t._v("Formats")]),t._v("). In "),e("RouterLink",{attrs:{to:"/strict-mode.html"}},[t._v("strict mode")]),t._v(" unknown formats will throw exception during schema compilation (and fail validation in case format keyword value is "),e("RouterLink",{attrs:{to:"/guide/combining-schemas.html#data-reference"}},[t._v("$data reference")]),t._v(").")],1),t._v(" "),e("li",[e("code",[t._v("false")]),t._v(" - do not validate any format keywords (TODO they will still collect annotations once supported).")])]),t._v(" "),e("h2",{attrs:{id:"validation-and-reporting-options"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#validation-and-reporting-options"}},[t._v("#")]),t._v(" Validation and reporting options")]),t._v(" "),e("h3",{attrs:{id:"data"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#data"}},[t._v("#")]),t._v(" $data")]),t._v(" "),e("p",[t._v("Support "),e("RouterLink",{attrs:{to:"/guide/combining-schemas.html#data-reference"}},[t._v("$data references")]),t._v(". Draft 6 meta-schema that is added by default will be extended to allow them. If you want to use another meta-schema you need to use $dataMetaSchema method to add support for $data reference. See "),e("a",{attrs:{href:"#ajv-constructor-and-methods"}},[t._v("API")]),t._v(".")],1),t._v(" "),e("h3",{attrs:{id:"allerrors"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#allerrors"}},[t._v("#")]),t._v(" allErrors")]),t._v(" "),e("p",[t._v("Check all rules collecting all errors. Default is to return after the first error.")]),t._v(" "),e("h3",{attrs:{id:"verbose"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#verbose"}},[t._v("#")]),t._v(" verbose")]),t._v(" "),e("p",[t._v("Include the reference to the part of the schema ("),e("code",[t._v("schema")]),t._v(" and "),e("code",[t._v("parentSchema")]),t._v(") and validated data in errors (false by default).")]),t._v(" "),e("h3",{attrs:{id:"discriminator"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#discriminator"}},[t._v("#")]),t._v(" discriminator")]),t._v(" "),e("p",[t._v("Support "),e("RouterLink",{attrs:{to:"/json-schema.html#discriminator"}},[t._v("discriminator keyword")]),t._v(" from "),e("a",{attrs:{href:"https://github.com/OAI/OpenAPI-Specification/blob/master/versions/3.1.0.md",target:"_blank",rel:"noopener noreferrer"}},[t._v("OpenAPI specification"),e("OutboundLink")],1),t._v(".")],1),t._v(" "),e("h3",{attrs:{id:"unicoderegexp"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#unicoderegexp"}},[t._v("#")]),t._v(" unicodeRegExp")]),t._v(" "),e("p",[t._v('By default Ajv uses unicode flag "u" with "pattern" and "patternProperties", as per JSON Schema spec. See '),e("a",{attrs:{href:"https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/RegExp/unicode",target:"_blank",rel:"noopener noreferrer"}},[t._v("RegExp.prototype.unicode"),e("OutboundLink")],1),t._v(" .")]),t._v(" "),e("p",[t._v("Option values:")]),t._v(" "),e("ul",[e("li",[e("code",[t._v("true")]),t._v(' (default) - use unicode flag "u".')]),t._v(" "),e("li",[e("code",[t._v("false")]),t._v(' - do not use flag "u".')])]),t._v(" "),e("h3",{attrs:{id:"timestamp"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#timestamp"}},[t._v("#")]),t._v(" timestamp "),e("Badge",{attrs:{text:"JTD only"}})],1),t._v(" "),e("p",[t._v("Defines which Javascript types will be accepted for the "),e("a",{attrs:{href:"./json-type-definition#type-form"}},[t._v("JTD timestamp type")]),t._v(".")]),t._v(" "),e("p",[t._v("By default Ajv will accept both Date objects and "),e("a",{attrs:{href:"https://datatracker.ietf.org/doc/rfc3339/",target:"_blank",rel:"noopener noreferrer"}},[t._v("RFC3339"),e("OutboundLink")],1),t._v(" strings. You can specify allowed values with the option "),e("code",[t._v('timestamp: "date"')]),t._v(" or "),e("code",[t._v('timestamp: "string"')]),t._v(".")]),t._v(" "),e("h3",{attrs:{id:"parsedate"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#parsedate"}},[t._v("#")]),t._v(" parseDate "),e("Badge",{attrs:{text:"JTD only"}})],1),t._v(" "),e("p",[t._v("Defines how date-time strings are parsed by "),e("RouterLink",{attrs:{to:"/api.html#jtd-parse"}},[t._v("JTD parsers")]),t._v(". By default Ajv parses date-time strings as string. Use "),e("code",[t._v("parseDate: true")]),t._v(" to parse them as Date objects.")],1),t._v(" "),e("h3",{attrs:{id:"allowdate"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#allowdate"}},[t._v("#")]),t._v(" allowDate "),e("Badge",{attrs:{text:"JTD only"}})],1),t._v(" "),e("p",[t._v("Defines how date-time strings are parsed and validated. By default Ajv only allows full date-time strings, as required by JTD specification. Use "),e("code",[t._v("allowDate: true")]),t._v(" to allow date strings both for validation and for parsing.")]),t._v(" "),e("div",{staticClass:"custom-block warning"},[e("p",{staticClass:"custom-block-title"},[t._v("Option allowDate is not portable")]),t._v(" "),e("p",[t._v("This option makes JTD validation and parsing more permissive and non-standard. The date strings without time part will be accepted by Ajv, but will be rejected by other JTD validators.")])]),t._v(" "),e("h3",{attrs:{id:"int32range"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#int32range"}},[t._v("#")]),t._v(" int32range "),e("Badge",{attrs:{text:"JTD only"}})],1),t._v(" "),e("p",[t._v("Can be used to disable range checking for "),e("code",[t._v("int32")]),t._v(" and "),e("code",[t._v("uint32")]),t._v(" types.")]),t._v(" "),e("p",[t._v("By default Ajv limits the range of these types to "),e("code",[t._v("[-2**31, 2**31 - 1]")]),t._v(" for "),e("code",[t._v("int32")]),t._v(" and to "),e("code",[t._v("[0, 2**32-1]")]),t._v(" for "),e("code",[t._v("uint32")]),t._v(" when validating and parsing.")]),t._v(" "),e("p",[t._v("With option "),e("code",[t._v("int32range: false")]),t._v(" Ajv only requires that "),e("code",[t._v("uint32")]),t._v(" is non-negative, otherwise does not check the range. Parser will limit the number size to 16 digits (approx. "),e("code",[t._v("2**53")]),t._v(" - safe integer range).")]),t._v(" "),e("div",{staticClass:"custom-block warning"},[e("p",{staticClass:"custom-block-title"},[t._v("Option int32range is not portable")]),t._v(" "),e("p",[t._v("This option makes JTD validation and parsing more permissive and non-standard. The integers within a wider range will be accepted by Ajv, but will be rejected by other JTD validators.")])]),t._v(" "),e("h3",{attrs:{id:"comment"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#comment"}},[t._v("#")]),t._v(" $comment")]),t._v(" "),e("p",[t._v("Log or pass the value of "),e("code",[t._v("$comment")]),t._v(" keyword to a function.")]),t._v(" "),e("p",[t._v("Option values:")]),t._v(" "),e("ul",[e("li",[e("code",[t._v("false")]),t._v(" (default): ignore $comment keyword.")]),t._v(" "),e("li",[e("code",[t._v("true")]),t._v(": log the keyword value to console.")]),t._v(" "),e("li",[t._v("function: pass the keyword value, its schema path and root schema to the specified function")])]),t._v(" "),e("h3",{attrs:{id:"formats"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#formats"}},[t._v("#")]),t._v(" formats")]),t._v(" "),e("p",[t._v("An object with format definitions. Keys and values will be passed to "),e("code",[t._v("addFormat")]),t._v(" method. Pass "),e("code",[t._v("true")]),t._v(" as format definition to ignore some formats.")]),t._v(" "),e("h3",{attrs:{id:"keywords"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#keywords"}},[t._v("#")]),t._v(" keywords")]),t._v(" "),e("p",[t._v("An array of keyword definitions or strings. Values will be passed to "),e("code",[t._v("addKeyword")]),t._v(" method.")]),t._v(" "),e("h3",{attrs:{id:"schemas"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#schemas"}},[t._v("#")]),t._v(" schemas")]),t._v(" "),e("p",[t._v("An array or object of schemas that will be added to the instance. In case you pass the array the schemas must have IDs in them. When the object is passed the method "),e("code",[t._v("addSchema(value, key)")]),t._v(" will be called for each schema in this object.")]),t._v(" "),e("h3",{attrs:{id:"logger"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#logger"}},[t._v("#")]),t._v(" logger")]),t._v(" "),e("p",[t._v("Sets the logging method. Default is the global "),e("code",[t._v("console")]),t._v(" object that should have methods "),e("code",[t._v("log")]),t._v(", "),e("code",[t._v("warn")]),t._v(" and "),e("code",[t._v("error")]),t._v(". See "),e("RouterLink",{attrs:{to:"/api.html#error-logging"}},[t._v("Error logging")]),t._v(".")],1),t._v(" "),e("p",[t._v("Option values:")]),t._v(" "),e("ul",[e("li",[t._v("logger instance - it should have methods "),e("code",[t._v("log")]),t._v(", "),e("code",[t._v("warn")]),t._v(" and "),e("code",[t._v("error")]),t._v(". If any of these methods is missing an exception will be thrown.")]),t._v(" "),e("li",[e("code",[t._v("false")]),t._v(" - logging is disabled.")])]),t._v(" "),e("h3",{attrs:{id:"loadschema"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#loadschema"}},[t._v("#")]),t._v(" loadSchema")]),t._v(" "),e("p",[t._v("Asynchronous function that will be used to load remote schemas when "),e("code",[t._v("compileAsync")]),t._v(" "),e("a",{attrs:{href:"#api-compileAsync"}},[t._v("method")]),t._v(" is used and some reference is missing (option "),e("code",[t._v("missingRefs")]),t._v(" should NOT be 'fail' or 'ignore'). This function should accept remote schema uri as a parameter and return a Promise that resolves to a schema. See example in "),e("RouterLink",{attrs:{to:"/guide/managing-schemas.html#asynchronous-schema-compilation"}},[t._v("Asynchronous compilation")]),t._v(".")],1),t._v(" "),e("h2",{attrs:{id:"options-to-modify-validated-data"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#options-to-modify-validated-data"}},[t._v("#")]),t._v(" Options to modify validated data")]),t._v(" "),e("h3",{attrs:{id:"removeadditional"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#removeadditional"}},[t._v("#")]),t._v(" removeAdditional")]),t._v(" "),e("p",[t._v("Remove additional properties - see example in "),e("RouterLink",{attrs:{to:"/guide/modifying-data.html#removing-additional-properties"}},[t._v("Removing additional properties")]),t._v(".")],1),t._v(" "),e("p",[t._v("This option is not used if schema is added with "),e("code",[t._v("addMetaSchema")]),t._v(" method.")]),t._v(" "),e("p",[t._v("Option values:")]),t._v(" "),e("ul",[e("li",[e("code",[t._v("false")]),t._v(" (default) - not to remove additional properties")]),t._v(" "),e("li",[e("code",[t._v('"all"')]),t._v(" - all additional properties are removed, regardless of "),e("code",[t._v("additionalProperties")]),t._v(" keyword in schema (and no validation is made for them).")]),t._v(" "),e("li",[e("code",[t._v("true")]),t._v(" - only additional properties with "),e("code",[t._v("additionalProperties")]),t._v(" keyword equal to "),e("code",[t._v("false")]),t._v(" are removed.")]),t._v(" "),e("li",[e("code",[t._v('"failing"')]),t._v(" - additional properties that fail schema validation will be removed (where "),e("code",[t._v("additionalProperties")]),t._v(" keyword is "),e("code",[t._v("false")]),t._v(" or schema).")])]),t._v(" "),e("h3",{attrs:{id:"usedefaults"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#usedefaults"}},[t._v("#")]),t._v(" useDefaults")]),t._v(" "),e("p",[t._v("Replace missing or undefined properties and items with the values from corresponding "),e("code",[t._v("default")]),t._v(" keywords. Default behaviour is to ignore "),e("code",[t._v("default")]),t._v(" keywords. This option is not used if schema is added with "),e("code",[t._v("addMetaSchema")]),t._v(" method.")]),t._v(" "),e("p",[t._v("See examples in "),e("RouterLink",{attrs:{to:"/guide/modifying-data.html#assigning-defaults"}},[t._v("Assigning defaults")]),t._v(".")],1),t._v(" "),e("p",[t._v("Option values:")]),t._v(" "),e("ul",[e("li",[e("code",[t._v("false")]),t._v(" (default) - do not use defaults")]),t._v(" "),e("li",[e("code",[t._v("true")]),t._v(" - insert defaults by value (object literal is used).")]),t._v(" "),e("li",[e("code",[t._v('"empty"')]),t._v(" - in addition to missing or undefined, use defaults for properties and items that are equal to "),e("code",[t._v("null")]),t._v(" or "),e("code",[t._v('""')]),t._v(" (an empty string).")])]),t._v(" "),e("h3",{attrs:{id:"coercetypes"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#coercetypes"}},[t._v("#")]),t._v(" coerceTypes")]),t._v(" "),e("p",[t._v("Change data type of data to match "),e("code",[t._v("type")]),t._v(" keyword. See the example in "),e("RouterLink",{attrs:{to:"/guide/modifying-data.html#coercing-data-types"}},[t._v("Coercing data types")]),t._v(" and "),e("RouterLink",{attrs:{to:"/coercion.html"}},[t._v("coercion rules")]),t._v(".")],1),t._v(" "),e("p",[t._v("Option values:")]),t._v(" "),e("ul",[e("li",[e("code",[t._v("false")]),t._v(" (default) - no type coercion.")]),t._v(" "),e("li",[e("code",[t._v("true")]),t._v(" - coerce scalar data types.")]),t._v(" "),e("li",[e("code",[t._v('"array"')]),t._v(" - in addition to coercions between scalar types, coerce scalar data to an array with one element and vice versa (as required by the schema).")])]),t._v(" "),e("h2",{attrs:{id:"advanced-options"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#advanced-options"}},[t._v("#")]),t._v(" Advanced options")]),t._v(" "),e("h3",{attrs:{id:"meta"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#meta"}},[t._v("#")]),t._v(" meta")]),t._v(" "),e("p",[t._v("Add "),e("a",{attrs:{href:"http://json-schema.org/documentation.html",target:"_blank",rel:"noopener noreferrer"}},[t._v("meta-schema"),e("OutboundLink")],1),t._v(" so it can be used by other schemas (true by default). If an object is passed, it will be used as the default meta-schema for schemas that have no "),e("code",[t._v("$schema")]),t._v(" keyword. This default meta-schema MUST have "),e("code",[t._v("$schema")]),t._v(" keyword.")]),t._v(" "),e("h3",{attrs:{id:"validateschema"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#validateschema"}},[t._v("#")]),t._v(" validateSchema")]),t._v(" "),e("p",[t._v("Validate added/compiled schemas against meta-schema (true by default). "),e("code",[t._v("$schema")]),t._v(" property in the schema can be http://json-schema.org/draft-07/schema or absent (draft-07 meta-schema will be used) or can be a reference to the schema previously added with "),e("code",[t._v("addMetaSchema")]),t._v(" method.")]),t._v(" "),e("p",[t._v("Option values:")]),t._v(" "),e("ul",[e("li",[e("code",[t._v("true")]),t._v(" (default) - if the validation fails, throw the exception.")]),t._v(" "),e("li",[e("code",[t._v('"log"')]),t._v(" - if the validation fails, log error.")]),t._v(" "),e("li",[e("code",[t._v("false")]),t._v(" - skip schema validation.")])]),t._v(" "),e("h3",{attrs:{id:"addusedschema"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#addusedschema"}},[t._v("#")]),t._v(" addUsedSchema")]),t._v(" "),e("p",[t._v("By default methods "),e("code",[t._v("compile")]),t._v(" and "),e("code",[t._v("validate")]),t._v(" add schemas to the instance if they have "),e("code",[t._v("$id")]),t._v(" (or "),e("code",[t._v("id")]),t._v(') property that doesn\'t start with "#". If '),e("code",[t._v("$id")]),t._v(" is present and it is not unique the exception will be thrown. Set this option to "),e("code",[t._v("false")]),t._v(" to skip adding schemas to the instance and the "),e("code",[t._v("$id")]),t._v(" uniqueness check when these methods are used. This option does not affect "),e("code",[t._v("addSchema")]),t._v(" method.")]),t._v(" "),e("h3",{attrs:{id:"inlinerefs"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#inlinerefs"}},[t._v("#")]),t._v(" inlineRefs")]),t._v(" "),e("p",[t._v("Affects compilation of referenced schemas.")]),t._v(" "),e("p",[t._v("Option values:")]),t._v(" "),e("ul",[e("li",[e("code",[t._v("true")]),t._v(" (default) - the referenced schemas that don't have refs in them are inlined, regardless of their size - it improves performance.")]),t._v(" "),e("li",[e("code",[t._v("false")]),t._v(" - to not inline referenced schemas (they will always be compiled as separate functions).")]),t._v(" "),e("li",[t._v("integer number - to limit the maximum number of keywords of the schema that will be inlined (to balance the total size of compiled functions and performance).")])]),t._v(" "),e("h3",{attrs:{id:"passcontext"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#passcontext"}},[t._v("#")]),t._v(" passContext")]),t._v(" "),e("p",[t._v("Pass validation context to "),e("em",[t._v("compile")]),t._v(" and "),e("em",[t._v("validate")]),t._v(" keyword functions. If this option is "),e("code",[t._v("true")]),t._v(" and you pass some context to the compiled validation function with "),e("code",[t._v("validate.call(context, data)")]),t._v(", the "),e("code",[t._v("context")]),t._v(" will be available as "),e("code",[t._v("this")]),t._v(" in your keywords. By default "),e("code",[t._v("this")]),t._v(" is Ajv instance.")]),t._v(" "),e("h3",{attrs:{id:"looprequired"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#looprequired"}},[t._v("#")]),t._v(" loopRequired")]),t._v(" "),e("p",[t._v("By default "),e("code",[t._v("required")]),t._v(" keyword is compiled into a single expression (or a sequence of statements in "),e("code",[t._v("allErrors")]),t._v(" mode) up to 200 required properties. Pass integer to set a different number of properties above which "),e("code",[t._v("required")]),t._v(" keyword will be validated in a loop (with a smaller validation function size and worse performance).")]),t._v(" "),e("h3",{attrs:{id:"loopenum"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#loopenum"}},[t._v("#")]),t._v(" loopEnum "),e("Badge",{attrs:{text:"v7"}})],1),t._v(" "),e("p",[t._v("By default "),e("code",[t._v("enum")]),t._v(" keyword is compiled into a single expression with up to 200 allowed values. Pass integer to set the number of values above which "),e("code",[t._v("enum")]),t._v(" keyword will be validated in a loop (with a smaller validation function size and worse performance).")]),t._v(" "),e("h3",{attrs:{id:"ownproperties"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#ownproperties"}},[t._v("#")]),t._v(" ownProperties")]),t._v(" "),e("p",[t._v("By default Ajv iterates over all enumerable object properties; when this option is "),e("code",[t._v("true")]),t._v(" only own enumerable object properties (i.e. found directly on the object rather than on its prototype) are iterated. Contributed by @mbroadst.")]),t._v(" "),e("h3",{attrs:{id:"multipleofprecision"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#multipleofprecision"}},[t._v("#")]),t._v(" multipleOfPrecision")]),t._v(" "),e("p",[t._v("By default "),e("code",[t._v("multipleOf")]),t._v(" keyword is validated by comparing the result of division with "),e("code",[t._v("parseInt()")]),t._v(" of that result. It works for dividers that are bigger than 1. For small dividers such as 0.01 the result of the division is usually not integer (even when it should be integer, see issue "),e("a",{attrs:{href:"https://github.com/ajv-validator/ajv/issues/84",target:"_blank",rel:"noopener noreferrer"}},[t._v("#84"),e("OutboundLink")],1),t._v("). If you need to use fractional dividers set this option to some positive integer N to have "),e("code",[t._v("multipleOf")]),t._v(" validated using this formula: "),e("code",[t._v("Math.abs(Math.round(division) - division) < 1e-N")]),t._v(" (it is slower but allows for float arithmetic deviations).")]),t._v(" "),e("h3",{attrs:{id:"messages"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#messages"}},[t._v("#")]),t._v(" messages")]),t._v(" "),e("p",[t._v("Include human-readable messages in errors. "),e("code",[t._v("true")]),t._v(" by default. "),e("code",[t._v("false")]),t._v(" can be passed when messages are generated outside of Ajv code (e.g. with "),e("a",{attrs:{href:"https://github.com/ajv-validator/ajv-i18n",target:"_blank",rel:"noopener noreferrer"}},[t._v("ajv-i18n"),e("OutboundLink")],1),t._v(").")]),t._v(" "),e("h3",{attrs:{id:"uriresolver"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#uriresolver"}},[t._v("#")]),t._v(" uriResolver")]),t._v(" "),e("p",[t._v("By default "),e("code",[t._v("uriResolver")]),t._v(" is undefined and relies on the embedded uriResolver "),e("a",{attrs:{href:"https://github.com/garycourt/uri-js",target:"_blank",rel:"noopener noreferrer"}},[t._v("uri-js"),e("OutboundLink")],1),t._v(". Pass an object that satisfies the interface "),e("a",{attrs:{href:"https://github.com/ajv-validator/ajv/blob/master/lib/types/index.ts",target:"_blank",rel:"noopener noreferrer"}},[t._v("UriResolver"),e("OutboundLink")],1),t._v(" to be used in replacement. One alternative is "),e("a",{attrs:{href:"https://github.com/fastify/fast-uri",target:"_blank",rel:"noopener noreferrer"}},[t._v("fast-uri"),e("OutboundLink")],1),t._v(".")]),t._v(" "),e("h3",{attrs:{id:"code"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#code"}},[t._v("#")]),t._v(" code "),e("Badge",{attrs:{text:"v7"}})],1),t._v(" "),e("p",[t._v("Code generation options:")]),t._v(" "),e("div",{staticClass:"language-typescript extra-class"},[e("pre",{pre:!0,attrs:{class:"language-typescript"}},[e("code",[e("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("type")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token class-name"}},[t._v("CodeOptions")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n es5"),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v("?")]),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token builtin"}},[t._v("boolean")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token comment"}},[t._v('// to generate es5 code - by default code is es6, with "for-of" loops, "let" and "const"')]),t._v("\n esm"),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v("?")]),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token builtin"}},[t._v("boolean")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token comment"}},[t._v("// how functions should be exported - by default CJS is used, so the validate function(s) ")]),t._v("\n "),e("span",{pre:!0,attrs:{class:"token comment"}},[t._v("// file can be `required`. Set this value to true to export the validate function(s) as ES Modules, enabling ")]),t._v("\n "),e("span",{pre:!0,attrs:{class:"token comment"}},[t._v("// bunlers to do their job.")]),t._v("\n lines"),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v("?")]),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token builtin"}},[t._v("boolean")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token comment"}},[t._v("// add line-breaks to code - to simplify debugging of generated functions")]),t._v("\n source"),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v("?")]),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token builtin"}},[t._v("boolean")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token comment"}},[t._v("// add `source` property (see Source below) to validating function.")]),t._v("\n process"),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v("?")]),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("code"),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token builtin"}},[t._v("string")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" schema"),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v("?")]),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" SchemaEnv"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=>")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token builtin"}},[t._v("string")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token comment"}},[t._v("// an optional function to process generated code")]),t._v("\n "),e("span",{pre:!0,attrs:{class:"token comment"}},[t._v("// before it is passed to Function constructor.")]),t._v("\n "),e("span",{pre:!0,attrs:{class:"token comment"}},[t._v("// It can be used to either beautify or to transpile code.")]),t._v("\n optimize"),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v("?")]),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token builtin"}},[t._v("boolean")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v("|")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token builtin"}},[t._v("number")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token comment"}},[t._v("// code optimization flag or number of passes, 1 pass by default,")]),t._v("\n "),e("span",{pre:!0,attrs:{class:"token comment"}},[t._v("// code optimizations reduce the size of the generated code (bytes, based on the tests) by over 10%,")]),t._v("\n "),e("span",{pre:!0,attrs:{class:"token comment"}},[t._v("// the number of code tree nodes by nearly 17%.")]),t._v("\n "),e("span",{pre:!0,attrs:{class:"token comment"}},[t._v("// You would almost never need more than one optimization pass, unless you have some really complex schemas -")]),t._v("\n "),e("span",{pre:!0,attrs:{class:"token comment"}},[t._v("// the second pass in the tests (it has quite complex schemas) only improves optimization by less than 0.1%.")]),t._v("\n "),e("span",{pre:!0,attrs:{class:"token comment"}},[t._v("// See [Code optimization](./codegen.md#code-optimization) for details.")]),t._v("\n formats"),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v("?")]),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" Code\n "),e("span",{pre:!0,attrs:{class:"token comment"}},[t._v("// Code snippet created with `_` tagged template literal that contains all format definitions,")]),t._v("\n "),e("span",{pre:!0,attrs:{class:"token comment"}},[t._v("// it can be the code of actual definitions or `require` call:")]),t._v("\n "),e("span",{pre:!0,attrs:{class:"token comment"}},[t._v('// _`require("./my-formats")`')]),t._v("\n regExp"),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" RegExpEngine\n "),e("span",{pre:!0,attrs:{class:"token comment"}},[t._v("// Pass non-standard RegExp engine to mitigate ReDoS, e.g. node-re2.")]),t._v("\n "),e("span",{pre:!0,attrs:{class:"token comment"}},[t._v("// During validation of a schema, code.regExp will be ")]),t._v("\n "),e("span",{pre:!0,attrs:{class:"token comment"}},[t._v("// used to match strings against regular expressions.")]),t._v("\n "),e("span",{pre:!0,attrs:{class:"token comment"}},[t._v("// The supplied function must support the interface:")]),t._v("\n "),e("span",{pre:!0,attrs:{class:"token comment"}},[t._v("// regExp(regex, unicodeFlag).test(string) => boolean")]),t._v("\n"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n\n"),e("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("type")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token class-name"}},[t._v("Source")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n code"),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token builtin"}},[t._v("string")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token comment"}},[t._v("// unlike func.toString() it includes assignments external to function scope")]),t._v("\n scope"),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" Scope "),e("span",{pre:!0,attrs:{class:"token comment"}},[t._v("// see Code generation (TODO)")]),t._v("\n"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n")])])])])}),[],!1,null,null,null);e.default=r.exports}}]); \ No newline at end of file diff --git a/assets/js/78.25350e8e.js b/assets/js/78.25350e8e.js new file mode 100644 index 000000000..d2385dfe1 --- /dev/null +++ b/assets/js/78.25350e8e.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[78],{424:function(t,a,e){"use strict";e.r(a);var s=e(14),r=Object(s.a)({},(function(){var t=this,a=t._self._c;return a("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[a("p",[a("a",{attrs:{href:"https://github.com/ajv-validator/ajv-formats",target:"_blank",rel:"noopener noreferrer"}},[t._v("ajv-formats repository"),a("OutboundLink")],1)]),t._v(" "),a("h1",{attrs:{id:"ajv-formats"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#ajv-formats"}},[t._v("#")]),t._v(" ajv-formats")]),t._v(" "),a("p",[t._v("JSON Schema formats for Ajv")]),t._v(" "),a("p",[a("a",{attrs:{href:"https://travis-ci.org/ajv-validator/ajv-formats",target:"_blank",rel:"noopener noreferrer"}},[a("img",{attrs:{src:"https://travis-ci.org/ajv-validator/ajv-formats.svg?branch=master",alt:"Build Status"}}),a("OutboundLink")],1),t._v(" "),a("a",{attrs:{href:"https://www.npmjs.com/package/ajv-formats",target:"_blank",rel:"noopener noreferrer"}},[a("img",{attrs:{src:"https://img.shields.io/npm/v/ajv-formats.svg",alt:"npm"}}),a("OutboundLink")],1),t._v(" "),a("a",{attrs:{href:"https://gitter.im/ajv-validator/ajv",target:"_blank",rel:"noopener noreferrer"}},[a("img",{attrs:{src:"https://img.shields.io/gitter/room/ajv-validator/ajv.svg",alt:"Gitter"}}),a("OutboundLink")],1),t._v(" "),a("a",{attrs:{href:"https://github.com/sponsors/epoberezkin",target:"_blank",rel:"noopener noreferrer"}},[a("img",{attrs:{src:"https://img.shields.io/badge/$-sponsors-brightgreen",alt:"GitHub Sponsors"}}),a("OutboundLink")],1)]),t._v(" "),a("h2",{attrs:{id:"usage"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#usage"}},[t._v("#")]),t._v(" Usage")]),t._v(" "),a("div",{staticClass:"language-javascript extra-class"},[a("pre",{pre:!0,attrs:{class:"language-javascript"}},[a("code",[a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("// ESM/TypeScript import")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("import")]),t._v(" Ajv "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("from")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"ajv"')]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("import")]),t._v(" addFormats "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("from")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"ajv-formats"')]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("// Node.js require:")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("const")]),t._v(" Ajv "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("require")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"ajv"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("const")]),t._v(" addFormats "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("require")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"ajv-formats"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n\n"),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("const")]),t._v(" ajv "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("new")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token class-name"}},[t._v("Ajv")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("addFormats")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("ajv"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n")])])]),a("h2",{attrs:{id:"formats"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#formats"}},[t._v("#")]),t._v(" Formats")]),t._v(" "),a("p",[t._v("The package defines these formats:")]),t._v(" "),a("ul",[a("li",[a("em",[t._v("date")]),t._v(": full-date according to "),a("a",{attrs:{href:"http://tools.ietf.org/html/rfc3339#section-5.6",target:"_blank",rel:"noopener noreferrer"}},[t._v("RFC3339"),a("OutboundLink")],1),t._v(".")]),t._v(" "),a("li",[a("em",[t._v("time")]),t._v(": time (time-zone is mandatory).")]),t._v(" "),a("li",[a("em",[t._v("date-time")]),t._v(": date-time (time-zone is mandatory).")]),t._v(" "),a("li",[a("em",[t._v("iso-time")]),t._v(": time with optional time-zone.")]),t._v(" "),a("li",[a("em",[t._v("iso-date-time")]),t._v(": date-time with optional time-zone.")]),t._v(" "),a("li",[a("em",[t._v("duration")]),t._v(": duration from "),a("a",{attrs:{href:"https://tools.ietf.org/html/rfc3339#appendix-A",target:"_blank",rel:"noopener noreferrer"}},[t._v("RFC3339"),a("OutboundLink")],1)]),t._v(" "),a("li",[a("em",[t._v("uri")]),t._v(": full URI.")]),t._v(" "),a("li",[a("em",[t._v("uri-reference")]),t._v(": URI reference, including full and relative URIs.")]),t._v(" "),a("li",[a("em",[t._v("uri-template")]),t._v(": URI template according to "),a("a",{attrs:{href:"https://tools.ietf.org/html/rfc6570",target:"_blank",rel:"noopener noreferrer"}},[t._v("RFC6570"),a("OutboundLink")],1)]),t._v(" "),a("li",[a("em",[t._v("url")]),t._v(" (deprecated): "),a("a",{attrs:{href:"https://url.spec.whatwg.org/#concept-url",target:"_blank",rel:"noopener noreferrer"}},[t._v("URL record"),a("OutboundLink")],1),t._v(".")]),t._v(" "),a("li",[a("em",[t._v("email")]),t._v(": email address.")]),t._v(" "),a("li",[a("em",[t._v("hostname")]),t._v(": host name according to "),a("a",{attrs:{href:"http://tools.ietf.org/html/rfc1034#section-3.5",target:"_blank",rel:"noopener noreferrer"}},[t._v("RFC1034"),a("OutboundLink")],1),t._v(".")]),t._v(" "),a("li",[a("em",[t._v("ipv4")]),t._v(": IP address v4.")]),t._v(" "),a("li",[a("em",[t._v("ipv6")]),t._v(": IP address v6.")]),t._v(" "),a("li",[a("em",[t._v("regex")]),t._v(": tests whether a string is a valid regular expression by passing it to RegExp constructor.")]),t._v(" "),a("li",[a("em",[t._v("uuid")]),t._v(": Universally Unique IDentifier according to "),a("a",{attrs:{href:"http://tools.ietf.org/html/rfc4122",target:"_blank",rel:"noopener noreferrer"}},[t._v("RFC4122"),a("OutboundLink")],1),t._v(".")]),t._v(" "),a("li",[a("em",[t._v("json-pointer")]),t._v(": JSON-pointer according to "),a("a",{attrs:{href:"https://tools.ietf.org/html/rfc6901",target:"_blank",rel:"noopener noreferrer"}},[t._v("RFC6901"),a("OutboundLink")],1),t._v(".")]),t._v(" "),a("li",[a("em",[t._v("relative-json-pointer")]),t._v(": relative JSON-pointer according to "),a("a",{attrs:{href:"http://tools.ietf.org/html/draft-luff-relative-json-pointer-00",target:"_blank",rel:"noopener noreferrer"}},[t._v("this draft"),a("OutboundLink")],1),t._v(".")]),t._v(" "),a("li",[a("em",[t._v("byte")]),t._v(": base64 encoded data according to the "),a("a",{attrs:{href:"https://spec.openapis.org/oas/v3.0.0#data-types",target:"_blank",rel:"noopener noreferrer"}},[t._v("openApi 3.0.0 specification"),a("OutboundLink")],1)]),t._v(" "),a("li",[a("em",[t._v("int32")]),t._v(": signed 32 bits integer according to the "),a("a",{attrs:{href:"https://spec.openapis.org/oas/v3.0.0#data-types",target:"_blank",rel:"noopener noreferrer"}},[t._v("openApi 3.0.0 specification"),a("OutboundLink")],1)]),t._v(" "),a("li",[a("em",[t._v("int64")]),t._v(": signed 64 bits according to the "),a("a",{attrs:{href:"https://spec.openapis.org/oas/v3.0.0#data-types",target:"_blank",rel:"noopener noreferrer"}},[t._v("openApi 3.0.0 specification"),a("OutboundLink")],1)]),t._v(" "),a("li",[a("em",[t._v("float")]),t._v(": float according to the "),a("a",{attrs:{href:"https://spec.openapis.org/oas/v3.0.0#data-types",target:"_blank",rel:"noopener noreferrer"}},[t._v("openApi 3.0.0 specification"),a("OutboundLink")],1)]),t._v(" "),a("li",[a("em",[t._v("double")]),t._v(": double according to the "),a("a",{attrs:{href:"https://spec.openapis.org/oas/v3.0.0#data-types",target:"_blank",rel:"noopener noreferrer"}},[t._v("openApi 3.0.0 specification"),a("OutboundLink")],1)]),t._v(" "),a("li",[a("em",[t._v("password")]),t._v(": password string according to the "),a("a",{attrs:{href:"https://spec.openapis.org/oas/v3.0.0#data-types",target:"_blank",rel:"noopener noreferrer"}},[t._v("openApi 3.0.0 specification"),a("OutboundLink")],1)]),t._v(" "),a("li",[a("em",[t._v("binary")]),t._v(": binary string according to the "),a("a",{attrs:{href:"https://spec.openapis.org/oas/v3.0.0#data-types",target:"_blank",rel:"noopener noreferrer"}},[t._v("openApi 3.0.0 specification"),a("OutboundLink")],1)])]),t._v(" "),a("p",[t._v("See regular expressions used for format validation and the sources that were used in "),a("a",{attrs:{href:"https://github.com/ajv-validator/ajv-formats/blob/master/src/formats.ts",target:"_blank",rel:"noopener noreferrer"}},[t._v("formats.ts"),a("OutboundLink")],1),t._v(".")]),t._v(" "),a("p",[a("strong",[t._v("Please note")]),t._v(": JSON Schema draft-07 also defines formats "),a("code",[t._v("iri")]),t._v(", "),a("code",[t._v("iri-reference")]),t._v(", "),a("code",[t._v("idn-hostname")]),t._v(" and "),a("code",[t._v("idn-email")]),t._v(" for URLs, hostnames and emails with international characters. These formats are available in "),a("a",{attrs:{href:"https://github.com/luzlab/ajv-formats-draft2019",target:"_blank",rel:"noopener noreferrer"}},[t._v("ajv-formats-draft2019"),a("OutboundLink")],1),t._v(" plugin.")]),t._v(" "),a("h2",{attrs:{id:"keywords-to-compare-values-formatmaximum-formatminimum-and-formatexclusivemaximum-formatexclusiveminimum"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#keywords-to-compare-values-formatmaximum-formatminimum-and-formatexclusivemaximum-formatexclusiveminimum"}},[t._v("#")]),t._v(" Keywords to compare values: "),a("code",[t._v("formatMaximum")]),t._v(" / "),a("code",[t._v("formatMinimum")]),t._v(" and "),a("code",[t._v("formatExclusiveMaximum")]),t._v(" / "),a("code",[t._v("formatExclusiveMinimum")])]),t._v(" "),a("p",[t._v("These keywords allow to define minimum/maximum constraints when the format keyword defines ordering ("),a("code",[t._v("compare")]),t._v(" function in format definition).")]),t._v(" "),a("p",[t._v("These keywords are added to ajv instance when ajv-formats is used without options or with option "),a("code",[t._v("keywords: true")]),t._v(".")]),t._v(" "),a("p",[t._v("These keywords apply only to strings. If the data is not a string, the validation succeeds.")]),t._v(" "),a("p",[t._v("The value of keywords "),a("code",[t._v("formatMaximum")]),t._v("/"),a("code",[t._v("formatMinimum")]),t._v(" and "),a("code",[t._v("formatExclusiveMaximum")]),t._v("/"),a("code",[t._v("formatExclusiveMinimum")]),t._v(" should be a string or "),a("a",{attrs:{href:"https://github.com/ajv-validator/ajv/blob/master/docs/guide/combining-schemas.md#data-reference",target:"_blank",rel:"noopener noreferrer"}},[t._v("$data reference"),a("OutboundLink")],1),t._v(". This value is the maximum (minimum) allowed value for the data to be valid as determined by "),a("code",[t._v("format")]),t._v(" keyword. If "),a("code",[t._v("format")]),t._v(" keyword is not present schema compilation will throw exception.")]),t._v(" "),a("p",[t._v("When these keyword are added, they also add comparison functions to formats "),a("code",[t._v('"date"')]),t._v(", "),a("code",[t._v('"time"')]),t._v(" and "),a("code",[t._v('"date-time"')]),t._v(". User-defined formats also can have comparison functions. See "),a("a",{attrs:{href:"https://github.com/ajv-validator/ajv/blob/master/docs/api.md#api-addformat",target:"_blank",rel:"noopener noreferrer"}},[t._v("addFormat"),a("OutboundLink")],1),t._v(" method.")]),t._v(" "),a("div",{staticClass:"language-javascript extra-class"},[a("pre",{pre:!0,attrs:{class:"language-javascript"}},[a("code",[a("span",{pre:!0,attrs:{class:"token function"}},[t._v("require")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"ajv-formats"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("ajv"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n\n"),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("const")]),t._v(" schema "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token literal-property property"}},[t._v("type")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"string"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token literal-property property"}},[t._v("format")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"date"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token literal-property property"}},[t._v("formatMinimum")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"2016-02-06"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token literal-property property"}},[t._v("formatExclusiveMaximum")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"2016-12-27"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n\n"),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("const")]),t._v(" validDataList "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"2016-02-06"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"2016-12-26"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\n\n"),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("const")]),t._v(" invalidDataList "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"2016-02-05"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"2016-12-27"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"abc"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\n")])])]),a("h2",{attrs:{id:"options"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#options"}},[t._v("#")]),t._v(" Options")]),t._v(" "),a("p",[t._v("Options can be passed via the second parameter. Options value can be")]),t._v(" "),a("ol",[a("li",[t._v("The list of format names that will be added to ajv instance:")])]),t._v(" "),a("div",{staticClass:"language-javascript extra-class"},[a("pre",{pre:!0,attrs:{class:"language-javascript"}},[a("code",[a("span",{pre:!0,attrs:{class:"token function"}},[t._v("addFormats")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("ajv"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"date"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"time"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n")])])]),a("p",[a("strong",[t._v("Please note")]),t._v(": when ajv encounters an undefined format it throws exception (unless ajv instance was configured with "),a("code",[t._v("strict: false")]),t._v(" option). To allow specific undefined formats they have to be passed to ajv instance via "),a("code",[t._v("formats")]),t._v(" option with "),a("code",[t._v("true")]),t._v(" value:")]),t._v(" "),a("div",{staticClass:"language-javascript extra-class"},[a("pre",{pre:!0,attrs:{class:"language-javascript"}},[a("code",[a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("const")]),t._v(" ajv "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("new")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token class-name"}},[t._v("Ajv")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),a("span",{pre:!0,attrs:{class:"token literal-property property"}},[t._v("formats")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),a("span",{pre:!0,attrs:{class:"token literal-property property"}},[t._v("date")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token boolean"}},[t._v("true")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token literal-property property"}},[t._v("time")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token boolean"}},[t._v("true")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v('// to ignore "date" and "time" formats in schemas.')]),t._v("\n")])])]),a("ol",{attrs:{start:"2"}},[a("li",[t._v("Format validation mode (default is "),a("code",[t._v('"full"')]),t._v(") with optional list of format names and "),a("code",[t._v("keywords")]),t._v(" option to add additional format comparison keywords:")])]),t._v(" "),a("div",{staticClass:"language-javascript extra-class"},[a("pre",{pre:!0,attrs:{class:"language-javascript"}},[a("code",[a("span",{pre:!0,attrs:{class:"token function"}},[t._v("addFormats")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("ajv"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),a("span",{pre:!0,attrs:{class:"token literal-property property"}},[t._v("mode")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"fast"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n")])])]),a("p",[t._v("or")]),t._v(" "),a("div",{staticClass:"language-javascript extra-class"},[a("pre",{pre:!0,attrs:{class:"language-javascript"}},[a("code",[a("span",{pre:!0,attrs:{class:"token function"}},[t._v("addFormats")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("ajv"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),a("span",{pre:!0,attrs:{class:"token literal-property property"}},[t._v("mode")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"fast"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token literal-property property"}},[t._v("formats")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"date"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"time"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token literal-property property"}},[t._v("keywords")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token boolean"}},[t._v("true")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n")])])]),a("p",[t._v("In "),a("code",[t._v('"fast"')]),t._v(" mode the following formats are simplified: "),a("code",[t._v('"date"')]),t._v(", "),a("code",[t._v('"time"')]),t._v(", "),a("code",[t._v('"date-time"')]),t._v(", "),a("code",[t._v('"iso-time"')]),t._v(", "),a("code",[t._v('"iso-date-time"')]),t._v(", "),a("code",[t._v('"uri"')]),t._v(", "),a("code",[t._v('"uri-reference"')]),t._v(", "),a("code",[t._v('"email"')]),t._v(". For example, "),a("code",[t._v('"date"')]),t._v(", "),a("code",[t._v('"time"')]),t._v(" and "),a("code",[t._v('"date-time"')]),t._v(" do not validate ranges in "),a("code",[t._v('"fast"')]),t._v(" mode, only string structure, and other formats have simplified regular expressions.")]),t._v(" "),a("h2",{attrs:{id:"tests"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#tests"}},[t._v("#")]),t._v(" Tests")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token function"}},[t._v("npm")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("install")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("git")]),t._v(" submodule update "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("--init")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("npm")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v("test")]),t._v("\n")])])]),a("h2",{attrs:{id:"license"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#license"}},[t._v("#")]),t._v(" License")]),t._v(" "),a("p",[a("a",{attrs:{href:"https://github.com/ajv-validator/ajv-formats/blob/master/LICENSE",target:"_blank",rel:"noopener noreferrer"}},[t._v("MIT"),a("OutboundLink")],1)])])}),[],!1,null,null,null);a.default=r.exports}}]); \ No newline at end of file diff --git a/assets/js/app.ede0789a.js b/assets/js/app.ede0789a.js new file mode 100644 index 000000000..c3a648859 --- /dev/null +++ b/assets/js/app.ede0789a.js @@ -0,0 +1,16 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[0],[]]);!function(e){function t(t){for(var r,a,s=t[0],l=t[1],u=t[2],f=0,p=[];f

'};function o(e,t,n){return en?n:e}function i(e){return 100*(-1+e)}n.configure=function(e){var t,n;for(t in e)void 0!==(n=e[t])&&e.hasOwnProperty(t)&&(r[t]=n);return this},n.status=null,n.set=function(e){var t=n.isStarted();e=o(e,r.minimum,1),n.status=1===e?null:e;var l=n.render(!t),u=l.querySelector(r.barSelector),c=r.speed,f=r.easing;return l.offsetWidth,a((function(t){""===r.positionUsing&&(r.positionUsing=n.getPositioningCSS()),s(u,function(e,t,n){var o;return(o="translate3d"===r.positionUsing?{transform:"translate3d("+i(e)+"%,0,0)"}:"translate"===r.positionUsing?{transform:"translate("+i(e)+"%,0)"}:{"margin-left":i(e)+"%"}).transition="all "+t+"ms "+n,o}(e,c,f)),1===e?(s(l,{transition:"none",opacity:1}),l.offsetWidth,setTimeout((function(){s(l,{transition:"all "+c+"ms linear",opacity:0}),setTimeout((function(){n.remove(),t()}),c)}),c)):setTimeout(t,c)})),this},n.isStarted=function(){return"number"==typeof n.status},n.start=function(){n.status||n.set(0);var e=function(){setTimeout((function(){n.status&&(n.trickle(),e())}),r.trickleSpeed)};return r.trickle&&e(),this},n.done=function(e){return e||n.status?n.inc(.3+.5*Math.random()).set(1):this},n.inc=function(e){var t=n.status;return t?("number"!=typeof e&&(e=(1-t)*o(Math.random()*t,.1,.95)),t=o(t+e,0,.994),n.set(t)):n.start()},n.trickle=function(){return n.inc(Math.random()*r.trickleRate)},e=0,t=0,n.promise=function(r){return r&&"resolved"!==r.state()?(0===t&&n.start(),e++,t++,r.always((function(){0==--t?(e=0,n.done()):n.set((e-t)/e)})),this):this},n.render=function(e){if(n.isRendered())return document.getElementById("nprogress");u(document.documentElement,"nprogress-busy");var t=document.createElement("div");t.id="nprogress",t.innerHTML=r.template;var o,a=t.querySelector(r.barSelector),l=e?"-100":i(n.status||0),c=document.querySelector(r.parent);return s(a,{transition:"all 0 linear",transform:"translate3d("+l+"%,0,0)"}),r.showSpinner||(o=t.querySelector(r.spinnerSelector))&&p(o),c!=document.body&&u(c,"nprogress-custom-parent"),c.appendChild(t),t},n.remove=function(){c(document.documentElement,"nprogress-busy"),c(document.querySelector(r.parent),"nprogress-custom-parent");var e=document.getElementById("nprogress");e&&p(e)},n.isRendered=function(){return!!document.getElementById("nprogress")},n.getPositioningCSS=function(){var e=document.body.style,t="WebkitTransform"in e?"Webkit":"MozTransform"in e?"Moz":"msTransform"in e?"ms":"OTransform"in e?"O":"";return t+"Perspective"in e?"translate3d":t+"Transform"in e?"translate":"margin"};var a=function(){var e=[];function t(){var n=e.shift();n&&n(t)}return function(n){e.push(n),1==e.length&&t()}}(),s=function(){var e=["Webkit","O","Moz","ms"],t={};function n(n){return n=n.replace(/^-ms-/,"ms-").replace(/-([\da-z])/gi,(function(e,t){return t.toUpperCase()})),t[n]||(t[n]=function(t){var n=document.body.style;if(t in n)return t;for(var r,o=e.length,i=t.charAt(0).toUpperCase()+t.slice(1);o--;)if((r=e[o]+i)in n)return r;return t}(n))}function r(e,t,r){t=n(t),e.style[t]=r}return function(e,t){var n,o,i=arguments;if(2==i.length)for(n in t)void 0!==(o=t[n])&&t.hasOwnProperty(n)&&r(e,n,o);else r(e,i[1],i[2])}}();function l(e,t){return("string"==typeof e?e:f(e)).indexOf(" "+t+" ")>=0}function u(e,t){var n=f(e),r=n+t;l(n,t)||(e.className=r.substring(1))}function c(e,t){var n,r=f(e);l(e,t)&&(n=r.replace(" "+t+" "," "),e.className=n.substring(1,n.length-1))}function f(e){return(" "+(e.className||"")+" ").replace(/\s+/gi," ")}function p(e){e&&e.parentNode&&e.parentNode.removeChild(e)}return n})?r.call(t,n,t,e):r)||(e.exports=o)},function(e,t,n){"use strict";var r=n(0),o=n(45).f,i=n(12),a=n(90),s=n(33),l=n(60),u=n(118);e.exports=function(e,t){var n,c,f,p,d,v=e.target,h=e.global,m=e.stat;if(n=h?r:m?r[v]||s(v,{}):r[v]&&r[v].prototype)for(c in t){if(p=t[c],f=e.dontCallGetSet?(d=o(n,c))&&d.value:n[c],!u(h?c:v+(m?".":"#")+c,e.forced)&&void 0!==f){if(typeof p==typeof f)continue;l(p,f)}(e.sham||f&&f.sham)&&i(p,"sham",!0),a(n,c,p,e)}}},function(e,t,n){"use strict";var r=n(25),o=Function.prototype.call;e.exports=r?o.bind(o):function(){return o.apply(o,arguments)}},function(e,t,n){"use strict";var r=n(3);e.exports=!r((function(){var e=function(){}.bind();return"function"!=typeof e||e.hasOwnProperty("prototype")}))},function(e,t,n){"use strict";e.exports=function(e,t){return{enumerable:!(1&e),configurable:!(2&e),writable:!(4&e),value:t}}},function(e,t,n){"use strict";var r=n(46),o=n(28);e.exports=function(e){return r(o(e))}},function(e,t,n){"use strict";var r=n(47),o=TypeError;e.exports=function(e){if(r(e))throw new o("Can't call method on "+e);return e}},function(e,t,n){"use strict";var r=n(0),o=n(1),i=function(e){return o(e)?e:void 0};e.exports=function(e,t){return arguments.length<2?i(r[e]):r[e]&&r[e][t]}},function(e,t,n){"use strict";var r=n(1),o=n(100),i=TypeError;e.exports=function(e){if(r(e))return e;throw new i(o(e)+" is not a function")}},function(e,t,n){"use strict";var r=n(0),o=n(54),i=n(8),a=n(56),s=n(52),l=n(51),u=r.Symbol,c=o("wks"),f=l?u.for||u:u&&u.withoutSetter||a;e.exports=function(e){return i(c,e)||(c[e]=s&&i(u,e)?u[e]:f("Symbol."+e)),c[e]}},function(e,t,n){"use strict";var r=n(55),o=n(0),i=n(33),a=e.exports=o["__core-js_shared__"]||i("__core-js_shared__",{});(a.versions||(a.versions=[])).push({version:"3.37.1",mode:r?"pure":"global",copyright:"© 2014-2024 Denis Pushkarev (zloirock.ru)",license:"https://github.com/zloirock/core-js/blob/v3.37.1/LICENSE",source:"https://github.com/zloirock/core-js"})},function(e,t,n){"use strict";var r=n(0),o=Object.defineProperty;e.exports=function(e,t){try{o(r,e,{value:t,configurable:!0,writable:!0})}catch(n){r[e]=t}return t}},function(e,t,n){"use strict";var r=n(28),o=Object;e.exports=function(e){return o(r(e))}},function(e,t,n){"use strict";var r=n(115);e.exports=function(e){return r(e.length)}},function(e,t,n){var r=n(142),o=n(10),i=Object.prototype,a=i.hasOwnProperty,s=i.propertyIsEnumerable,l=r(function(){return arguments}())?r:function(e){return o(e)&&a.call(e,"callee")&&!s.call(e,"callee")};e.exports=l},function(e,t,n){var r=n(9)(n(7),"Map");e.exports=r},function(e,t){e.exports=function(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}},function(e,t,n){var r=n(162),o=n(169),i=n(171),a=n(172),s=n(173);function l(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t-1&&e%1==0&&e<=9007199254740991}},function(e,t,n){var r=n(4),o=n(43),i=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,a=/^\w*$/;e.exports=function(e,t){if(r(e))return!1;var n=typeof e;return!("number"!=n&&"symbol"!=n&&"boolean"!=n&&null!=e&&!o(e))||(a.test(e)||!i.test(e)||null!=t&&e in Object(t))}},function(e,t,n){var r=n(11),o=n(10);e.exports=function(e){return"symbol"==typeof e||o(e)&&"[object Symbol]"==r(e)}},function(e,t){e.exports=function(e){return e}},function(e,t,n){"use strict";var r=n(5),o=n(24),i=n(96),a=n(26),s=n(27),l=n(48),u=n(8),c=n(57),f=Object.getOwnPropertyDescriptor;t.f=r?f:function(e,t){if(e=s(e),t=l(t),c)try{return f(e,t)}catch(e){}if(u(e,t))return a(!o(i.f,e,t),e[t])}},function(e,t,n){"use strict";var r=n(2),o=n(3),i=n(16),a=Object,s=r("".split);e.exports=o((function(){return!a("z").propertyIsEnumerable(0)}))?function(e){return"String"===i(e)?s(e,""):a(e)}:a},function(e,t,n){"use strict";e.exports=function(e){return null==e}},function(e,t,n){"use strict";var r=n(97),o=n(49);e.exports=function(e){var t=r(e,"string");return o(t)?t:t+""}},function(e,t,n){"use strict";var r=n(29),o=n(1),i=n(50),a=n(51),s=Object;e.exports=a?function(e){return"symbol"==typeof e}:function(e){var t=r("Symbol");return o(t)&&i(t.prototype,s(e))}},function(e,t,n){"use strict";var r=n(2);e.exports=r({}.isPrototypeOf)},function(e,t,n){"use strict";var r=n(52);e.exports=r&&!Symbol.sham&&"symbol"==typeof Symbol.iterator},function(e,t,n){"use strict";var r=n(53),o=n(3),i=n(0).String;e.exports=!!Object.getOwnPropertySymbols&&!o((function(){var e=Symbol("symbol detection");return!i(e)||!(Object(e)instanceof Symbol)||!Symbol.sham&&r&&r<41}))},function(e,t,n){"use strict";var r,o,i=n(0),a=n(98),s=i.process,l=i.Deno,u=s&&s.versions||l&&l.version,c=u&&u.v8;c&&(o=(r=c.split("."))[0]>0&&r[0]<4?1:+(r[0]+r[1])),!o&&a&&(!(r=a.match(/Edge\/(\d+)/))||r[1]>=74)&&(r=a.match(/Chrome\/(\d+)/))&&(o=+r[1]),e.exports=o},function(e,t,n){"use strict";var r=n(32);e.exports=function(e,t){return r[e]||(r[e]=t||{})}},function(e,t,n){"use strict";e.exports=!1},function(e,t,n){"use strict";var r=n(2),o=0,i=Math.random(),a=r(1..toString);e.exports=function(e){return"Symbol("+(void 0===e?"":e)+")_"+a(++o+i,36)}},function(e,t,n){"use strict";var r=n(5),o=n(3),i=n(102);e.exports=!r&&!o((function(){return 7!==Object.defineProperty(i("div"),"a",{get:function(){return 7}}).a}))},function(e,t,n){"use strict";var r=n(6),o=String,i=TypeError;e.exports=function(e){if(r(e))return e;throw new i(o(e)+" is not an object")}},function(e,t,n){"use strict";e.exports={}},function(e,t,n){"use strict";var r=n(8),o=n(109),i=n(45),a=n(15);e.exports=function(e,t,n){for(var s=o(t),l=a.f,u=i.f,c=0;cc))return!1;var p=l.get(e),d=l.get(t);if(p&&d)return p==t&&d==e;var v=-1,h=!0,m=2&n?new r:void 0;for(l.set(e,t),l.set(t,e);++v-1&&e%1==0&&e]/;e.exports=function(e){var t,n=""+e,o=r.exec(n);if(!o)return n;var i="",a=0,s=0;for(a=o.index;a79&&a<83||!i("reduce")},{reduce:function(e){var t=arguments.length;return o(this,e,t,t>1?arguments[1]:void 0)}})},function(e,t,n){"use strict";var r={}.propertyIsEnumerable,o=Object.getOwnPropertyDescriptor,i=o&&!r.call({1:2},1);t.f=i?function(e){var t=o(this,e);return!!t&&t.enumerable}:r},function(e,t,n){"use strict";var r=n(24),o=n(6),i=n(49),a=n(99),s=n(101),l=n(31),u=TypeError,c=l("toPrimitive");e.exports=function(e,t){if(!o(e)||i(e))return e;var n,l=a(e,c);if(l){if(void 0===t&&(t="default"),n=r(l,e,t),!o(n)||i(n))return n;throw new u("Can't convert object to primitive value")}return void 0===t&&(t="number"),s(e,t)}},function(e,t,n){"use strict";e.exports="undefined"!=typeof navigator&&String(navigator.userAgent)||""},function(e,t,n){"use strict";var r=n(30),o=n(47);e.exports=function(e,t){var n=e[t];return o(n)?void 0:r(n)}},function(e,t,n){"use strict";var r=String;e.exports=function(e){try{return r(e)}catch(e){return"Object"}}},function(e,t,n){"use strict";var r=n(24),o=n(1),i=n(6),a=TypeError;e.exports=function(e,t){var n,s;if("string"===t&&o(n=e.toString)&&!i(s=r(n,e)))return s;if(o(n=e.valueOf)&&!i(s=r(n,e)))return s;if("string"!==t&&o(n=e.toString)&&!i(s=r(n,e)))return s;throw new a("Can't convert object to primitive value")}},function(e,t,n){"use strict";var r=n(0),o=n(6),i=r.document,a=o(i)&&o(i.createElement);e.exports=function(e){return a?i.createElement(e):{}}},function(e,t,n){"use strict";var r=n(5),o=n(3);e.exports=r&&o((function(){return 42!==Object.defineProperty((function(){}),"prototype",{value:42,writable:!1}).prototype}))},function(e,t,n){"use strict";var r=n(5),o=n(8),i=Function.prototype,a=r&&Object.getOwnPropertyDescriptor,s=o(i,"name"),l=s&&"something"===function(){}.name,u=s&&(!r||r&&a(i,"name").configurable);e.exports={EXISTS:s,PROPER:l,CONFIGURABLE:u}},function(e,t,n){"use strict";var r=n(2),o=n(1),i=n(32),a=r(Function.toString);o(i.inspectSource)||(i.inspectSource=function(e){return a(e)}),e.exports=i.inspectSource},function(e,t,n){"use strict";var r,o,i,a=n(107),s=n(0),l=n(6),u=n(12),c=n(8),f=n(32),p=n(108),d=n(59),v=s.TypeError,h=s.WeakMap;if(a||f.state){var m=f.state||(f.state=new h);m.get=m.get,m.has=m.has,m.set=m.set,r=function(e,t){if(m.has(e))throw new v("Object already initialized");return t.facade=e,m.set(e,t),t},o=function(e){return m.get(e)||{}},i=function(e){return m.has(e)}}else{var g=p("state");d[g]=!0,r=function(e,t){if(c(e,g))throw new v("Object already initialized");return t.facade=e,u(e,g,t),t},o=function(e){return c(e,g)?e[g]:{}},i=function(e){return c(e,g)}}e.exports={set:r,get:o,has:i,enforce:function(e){return i(e)?o(e):r(e,{})},getterFor:function(e){return function(t){var n;if(!l(t)||(n=o(t)).type!==e)throw new v("Incompatible receiver, "+e+" required");return n}}}},function(e,t,n){"use strict";var r=n(0),o=n(1),i=r.WeakMap;e.exports=o(i)&&/native code/.test(String(i))},function(e,t,n){"use strict";var r=n(54),o=n(56),i=r("keys");e.exports=function(e){return i[e]||(i[e]=o(e))}},function(e,t,n){"use strict";var r=n(29),o=n(2),i=n(110),a=n(117),s=n(58),l=o([].concat);e.exports=r("Reflect","ownKeys")||function(e){var t=i.f(s(e)),n=a.f;return n?l(t,n(e)):t}},function(e,t,n){"use strict";var r=n(111),o=n(116).concat("length","prototype");t.f=Object.getOwnPropertyNames||function(e){return r(e,o)}},function(e,t,n){"use strict";var r=n(2),o=n(8),i=n(27),a=n(112).indexOf,s=n(59),l=r([].push);e.exports=function(e,t){var n,r=i(e),u=0,c=[];for(n in r)!o(s,n)&&o(r,n)&&l(c,n);for(;t.length>u;)o(r,n=t[u++])&&(~a(c,n)||l(c,n));return c}},function(e,t,n){"use strict";var r=n(27),o=n(113),i=n(35),a=function(e){return function(t,n,a){var s=r(t),l=i(s);if(0===l)return!e&&-1;var u,c=o(a,l);if(e&&n!=n){for(;l>c;)if((u=s[c++])!=u)return!0}else for(;l>c;c++)if((e||c in s)&&s[c]===n)return e||c||0;return!e&&-1}};e.exports={includes:a(!0),indexOf:a(!1)}},function(e,t,n){"use strict";var r=n(61),o=Math.max,i=Math.min;e.exports=function(e,t){var n=r(e);return n<0?o(n+t,0):i(n,t)}},function(e,t,n){"use strict";var r=Math.ceil,o=Math.floor;e.exports=Math.trunc||function(e){var t=+e;return(t>0?o:r)(t)}},function(e,t,n){"use strict";var r=n(61),o=Math.min;e.exports=function(e){var t=r(e);return t>0?o(t,9007199254740991):0}},function(e,t,n){"use strict";e.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]},function(e,t,n){"use strict";t.f=Object.getOwnPropertySymbols},function(e,t,n){"use strict";var r=n(3),o=n(1),i=/#|\.prototype\./,a=function(e,t){var n=l[s(e)];return n===c||n!==u&&(o(t)?r(t):!!t)},s=a.normalize=function(e){return String(e).replace(i,".").toLowerCase()},l=a.data={},u=a.NATIVE="N",c=a.POLYFILL="P";e.exports=a},function(e,t,n){"use strict";var r=n(30),o=n(34),i=n(46),a=n(35),s=TypeError,l="Reduce of empty array with no initial value",u=function(e){return function(t,n,u,c){var f=o(t),p=i(f),d=a(f);if(r(n),0===d&&u<2)throw new s(l);var v=e?d-1:0,h=e?-1:1;if(u<2)for(;;){if(v in p){c=p[v],v+=h;break}if(v+=h,e?v<0:d<=v)throw new s(l)}for(;e?v>=0:d>v;v+=h)v in p&&(c=n(c,p[v],v,f));return c}};e.exports={left:u(!1),right:u(!0)}},function(e,t,n){"use strict";var r=n(3);e.exports=function(e,t){var n=[][e];return!!n&&r((function(){n.call(null,t||function(){return 1},1)}))}},function(e,t,n){"use strict";var r=n(0),o=n(16);e.exports="process"===o(r.process)},function(e,t,n){"use strict";var r=n(23),o=n(0),i=n(123),a=n(124),s=o.WebAssembly,l=7!==new Error("e",{cause:7}).cause,u=function(e,t){var n={};n[e]=a(e,t,l),r({global:!0,constructor:!0,arity:1,forced:l},n)},c=function(e,t){if(s&&s[e]){var n={};n[e]=a("WebAssembly."+e,t,l),r({target:"WebAssembly",stat:!0,constructor:!0,arity:1,forced:l},n)}};u("Error",(function(e){return function(t){return i(e,this,arguments)}})),u("EvalError",(function(e){return function(t){return i(e,this,arguments)}})),u("RangeError",(function(e){return function(t){return i(e,this,arguments)}})),u("ReferenceError",(function(e){return function(t){return i(e,this,arguments)}})),u("SyntaxError",(function(e){return function(t){return i(e,this,arguments)}})),u("TypeError",(function(e){return function(t){return i(e,this,arguments)}})),u("URIError",(function(e){return function(t){return i(e,this,arguments)}})),c("CompileError",(function(e){return function(t){return i(e,this,arguments)}})),c("LinkError",(function(e){return function(t){return i(e,this,arguments)}})),c("RuntimeError",(function(e){return function(t){return i(e,this,arguments)}}))},function(e,t,n){"use strict";var r=n(25),o=Function.prototype,i=o.apply,a=o.call;e.exports="object"==typeof Reflect&&Reflect.apply||(r?a.bind(i):function(){return a.apply(i,arguments)})},function(e,t,n){"use strict";var r=n(29),o=n(8),i=n(12),a=n(50),s=n(62),l=n(60),u=n(128),c=n(129),f=n(130),p=n(133),d=n(134),v=n(5),h=n(55);e.exports=function(e,t,n,m){var g=m?2:1,y=e.split("."),b=y[y.length-1],_=r.apply(null,y);if(_){var w=_.prototype;if(!h&&o(w,"cause")&&delete w.cause,!n)return _;var x=r("Error"),j=t((function(e,t){var n=f(m?t:e,void 0),r=m?new _(e):new _;return void 0!==n&&i(r,"message",n),d(r,j,r.stack,2),this&&a(w,this)&&c(r,this,j),arguments.length>g&&p(r,arguments[g]),r}));if(j.prototype=w,"Error"!==b?s?s(j,x):l(j,x,{name:!0}):v&&"stackTraceLimit"in _&&(u(j,_,"stackTraceLimit"),u(j,_,"prepareStackTrace")),l(j,_),!h)try{w.name!==b&&i(w,"name",b),w.constructor=j}catch(e){}return j}}},function(e,t,n){"use strict";var r=n(2),o=n(30);e.exports=function(e,t,n){try{return r(o(Object.getOwnPropertyDescriptor(e,t)[n]))}catch(e){}}},function(e,t,n){"use strict";var r=n(127),o=String,i=TypeError;e.exports=function(e){if(r(e))return e;throw new i("Can't set "+o(e)+" as a prototype")}},function(e,t,n){"use strict";var r=n(6);e.exports=function(e){return r(e)||null===e}},function(e,t,n){"use strict";var r=n(15).f;e.exports=function(e,t,n){n in e||r(e,n,{configurable:!0,get:function(){return t[n]},set:function(e){t[n]=e}})}},function(e,t,n){"use strict";var r=n(1),o=n(6),i=n(62);e.exports=function(e,t,n){var a,s;return i&&r(a=t.constructor)&&a!==n&&o(s=a.prototype)&&s!==n.prototype&&i(e,s),e}},function(e,t,n){"use strict";var r=n(91);e.exports=function(e,t){return void 0===e?arguments.length<2?"":t:r(e)}},function(e,t,n){"use strict";var r=n(132),o=n(1),i=n(16),a=n(31)("toStringTag"),s=Object,l="Arguments"===i(function(){return arguments}());e.exports=r?i:function(e){var t,n,r;return void 0===e?"Undefined":null===e?"Null":"string"==typeof(n=function(e,t){try{return e[t]}catch(e){}}(t=s(e),a))?n:l?i(t):"Object"===(r=i(t))&&o(t.callee)?"Arguments":r}},function(e,t,n){"use strict";var r={};r[n(31)("toStringTag")]="z",e.exports="[object z]"===String(r)},function(e,t,n){"use strict";var r=n(6),o=n(12);e.exports=function(e,t){r(t)&&"cause"in t&&o(e,"cause",t.cause)}},function(e,t,n){"use strict";var r=n(12),o=n(135),i=n(136),a=Error.captureStackTrace;e.exports=function(e,t,n,s){i&&(a?a(e,t):r(e,"stack",o(n,s)))}},function(e,t,n){"use strict";var r=n(2),o=Error,i=r("".replace),a=String(new o("zxcasd").stack),s=/\n\s*at [^:]*:[^\n]*/,l=s.test(a);e.exports=function(e,t){if(l&&"string"==typeof e&&!o.prepareStackTrace)for(;t--;)e=i(e,s,"");return e}},function(e,t,n){"use strict";var r=n(3),o=n(26);e.exports=!r((function(){var e=new Error("a");return!("stack"in e)||(Object.defineProperty(e,"stack",o(1,7)),7!==e.stack)}))},function(e,t,n){"use strict";var r=n(5),o=n(138),i=TypeError,a=Object.getOwnPropertyDescriptor,s=r&&!function(){if(void 0!==this)return!0;try{Object.defineProperty([],"length",{writable:!1}).length=1}catch(e){return e instanceof TypeError}}();e.exports=s?function(e,t){if(o(e)&&!a(e,"length").writable)throw new i("Cannot set read only .length");return e.length=t}:function(e,t){return e.length=t}},function(e,t,n){"use strict";var r=n(16);e.exports=Array.isArray||function(e){return"Array"===r(e)}},function(e,t,n){"use strict";var r=TypeError;e.exports=function(e){if(e>9007199254740991)throw r("Maximum allowed index exceeded");return e}},function(e,t,n){var r=n(63),o=n(141);e.exports=function e(t,n,i,a,s){var l=-1,u=t.length;for(i||(i=o),s||(s=[]);++l0&&i(c)?n>1?e(c,n-1,i,a,s):r(s,c):a||(s[s.length]=c)}return s}},function(e,t,n){var r=n(13),o=n(36),i=n(4),a=r?r.isConcatSpreadable:void 0;e.exports=function(e){return i(e)||o(e)||!!(a&&e&&e[a])}},function(e,t,n){var r=n(11),o=n(10);e.exports=function(e){return o(e)&&"[object Arguments]"==r(e)}},function(e,t,n){var r=n(13),o=Object.prototype,i=o.hasOwnProperty,a=o.toString,s=r?r.toStringTag:void 0;e.exports=function(e){var t=i.call(e,s),n=e[s];try{e[s]=void 0;var r=!0}catch(e){}var o=a.call(e);return r&&(t?e[s]=n:delete e[s]),o}},function(e,t){var n=Object.prototype.toString;e.exports=function(e){return n.call(e)}},function(e,t,n){var r=n(146),o=n(202),i=n(44),a=n(4),s=n(212);e.exports=function(e){return"function"==typeof e?e:null==e?i:"object"==typeof e?a(e)?o(e[0],e[1]):r(e):s(e)}},function(e,t,n){var r=n(147),o=n(201),i=n(81);e.exports=function(e){var t=o(e);return 1==t.length&&t[0][2]?i(t[0][0],t[0][1]):function(n){return n===e||r(n,e,t)}}},function(e,t,n){var r=n(65),o=n(69);e.exports=function(e,t,n,i){var a=n.length,s=a,l=!i;if(null==e)return!s;for(e=Object(e);a--;){var u=n[a];if(l&&u[2]?u[1]!==e[u[0]]:!(u[0]in e))return!1}for(;++a-1}},function(e,t,n){var r=n(18);e.exports=function(e,t){var n=this.__data__,o=r(n,e);return o<0?(++this.size,n.push([e,t])):n[o][1]=t,this}},function(e,t,n){var r=n(17);e.exports=function(){this.__data__=new r,this.size=0}},function(e,t){e.exports=function(e){var t=this.__data__,n=t.delete(e);return this.size=t.size,n}},function(e,t){e.exports=function(e){return this.__data__.get(e)}},function(e,t){e.exports=function(e){return this.__data__.has(e)}},function(e,t,n){var r=n(17),o=n(37),i=n(39);e.exports=function(e,t){var n=this.__data__;if(n instanceof r){var a=n.__data__;if(!o||a.length<199)return a.push([e,t]),this.size=++n.size,this;n=this.__data__=new i(a)}return n.set(e,t),this.size=n.size,this}},function(e,t,n){var r=n(67),o=n(159),i=n(38),a=n(68),s=/^\[object .+?Constructor\]$/,l=Function.prototype,u=Object.prototype,c=l.toString,f=u.hasOwnProperty,p=RegExp("^"+c.call(f).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");e.exports=function(e){return!(!i(e)||o(e))&&(r(e)?p:s).test(a(e))}},function(e,t,n){var r,o=n(160),i=(r=/[^.]+$/.exec(o&&o.keys&&o.keys.IE_PROTO||""))?"Symbol(src)_1."+r:"";e.exports=function(e){return!!i&&i in e}},function(e,t,n){var r=n(7)["__core-js_shared__"];e.exports=r},function(e,t){e.exports=function(e,t){return null==e?void 0:e[t]}},function(e,t,n){var r=n(163),o=n(17),i=n(37);e.exports=function(){this.size=0,this.__data__={hash:new r,map:new(i||o),string:new r}}},function(e,t,n){var r=n(164),o=n(165),i=n(166),a=n(167),s=n(168);function l(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t0){if(++t>=800)return arguments[0]}else t=0;return e.apply(void 0,arguments)}}},function(e,t,n){var r=n(71),o=n(224),i=n(229),a=n(72),s=n(230),l=n(40);e.exports=function(e,t,n){var u=-1,c=o,f=e.length,p=!0,d=[],v=d;if(n)p=!1,c=i;else if(f>=200){var h=t?null:s(e);if(h)return l(h);p=!1,c=a,v=new r}else v=t?[]:d;e:for(;++u-1}},function(e,t,n){var r=n(226),o=n(227),i=n(228);e.exports=function(e,t,n){return t==t?i(e,t,n):r(e,o,n)}},function(e,t){e.exports=function(e,t,n,r){for(var o=e.length,i=n+(r?1:-1);r?i--:++i=0&&Math.floor(t)===t&&isFinite(e)}function h(e){return a(e)&&"function"==typeof e.then&&"function"==typeof e.catch}function m(e){return null==e?"":Array.isArray(e)||p(e)&&e.toString===f?JSON.stringify(e,g,2):String(e)}function g(e,t){return t&&t.__v_isRef?t.value:t}function y(e){var t=parseFloat(e);return isNaN(t)?e:t}function b(e,t){for(var n=Object.create(null),r=e.split(","),o=0;o-1)return e.splice(r,1)}}var x=Object.prototype.hasOwnProperty;function j(e,t){return x.call(e,t)}function k(e){var t=Object.create(null);return function(n){return t[n]||(t[n]=e(n))}}var S=/-(\w)/g,O=k((function(e){return e.replace(S,(function(e,t){return t?t.toUpperCase():""}))})),C=k((function(e){return e.charAt(0).toUpperCase()+e.slice(1)})),P=/\B([A-Z])/g,$=k((function(e){return e.replace(P,"-$1").toLowerCase()}));var E=Function.prototype.bind?function(e,t){return e.bind(t)}:function(e,t){function n(n){var r=arguments.length;return r?r>1?e.apply(t,arguments):e.call(t,n):e.call(t)}return n._length=e.length,n};function A(e,t){t=t||0;for(var n=e.length-t,r=new Array(n);n--;)r[n]=e[n+t];return r}function T(e,t){for(var n in t)e[n]=t[n];return e}function L(e){for(var t={},n=0;n0,Y=Z&&Z.indexOf("edge/")>0;Z&&Z.indexOf("android");var ee=Z&&/iphone|ipad|ipod|ios/.test(Z);Z&&/chrome\/\d+/.test(Z),Z&&/phantomjs/.test(Z);var te,ne=Z&&Z.match(/firefox\/(\d+)/),re={}.watch,oe=!1;if(G)try{var ie={};Object.defineProperty(ie,"passive",{get:function(){oe=!0}}),window.addEventListener("test-passive",null,ie)}catch(e){}var ae=function(){return void 0===te&&(te=!G&&"undefined"!=typeof global&&(global.process&&"server"===global.process.env.VUE_ENV)),te},se=G&&window.__VUE_DEVTOOLS_GLOBAL_HOOK__;function le(e){return"function"==typeof e&&/native code/.test(e.toString())}var ue,ce="undefined"!=typeof Symbol&&le(Symbol)&&"undefined"!=typeof Reflect&&le(Reflect.ownKeys);ue="undefined"!=typeof Set&&le(Set)?Set:function(){function e(){this.set=Object.create(null)}return e.prototype.has=function(e){return!0===this.set[e]},e.prototype.add=function(e){this.set[e]=!0},e.prototype.clear=function(){this.set=Object.create(null)},e}();var fe=null;function pe(e){void 0===e&&(e=null),e||fe&&fe._scope.off(),fe=e,e&&e._scope.on()}var de=function(){function e(e,t,n,r,o,i,a,s){this.tag=e,this.data=t,this.children=n,this.text=r,this.elm=o,this.ns=void 0,this.context=i,this.fnContext=void 0,this.fnOptions=void 0,this.fnScopeId=void 0,this.key=t&&t.key,this.componentOptions=a,this.componentInstance=void 0,this.parent=void 0,this.raw=!1,this.isStatic=!1,this.isRootInsert=!0,this.isComment=!1,this.isCloned=!1,this.isOnce=!1,this.asyncFactory=s,this.asyncMeta=void 0,this.isAsyncPlaceholder=!1}return Object.defineProperty(e.prototype,"child",{get:function(){return this.componentInstance},enumerable:!1,configurable:!0}),e}(),ve=function(e){void 0===e&&(e="");var t=new de;return t.text=e,t.isComment=!0,t};function he(e){return new de(void 0,void 0,void 0,String(e))}function me(e){var t=new de(e.tag,e.data,e.children&&e.children.slice(),e.text,e.elm,e.context,e.componentOptions,e.asyncFactory);return t.ns=e.ns,t.isStatic=e.isStatic,t.key=e.key,t.isComment=e.isComment,t.fnContext=e.fnContext,t.fnOptions=e.fnOptions,t.fnScopeId=e.fnScopeId,t.asyncMeta=e.asyncMeta,t.isCloned=!0,t}"function"==typeof SuppressedError&&SuppressedError;var ge=0,ye=[],be=function(){function e(){this._pending=!1,this.id=ge++,this.subs=[]}return e.prototype.addSub=function(e){this.subs.push(e)},e.prototype.removeSub=function(e){this.subs[this.subs.indexOf(e)]=null,this._pending||(this._pending=!0,ye.push(this))},e.prototype.depend=function(t){e.target&&e.target.addDep(this)},e.prototype.notify=function(e){var t=this.subs.filter((function(e){return e}));for(var n=0,r=t.length;n0&&(Ze((u=e(u,"".concat(n||"","_").concat(r)))[0])&&Ze(f)&&(p[c]=he(f.text+u[0].text),u.shift()),p.push.apply(p,u)):l(u)?Ze(f)?p[c]=he(f.text+u):""!==u&&p.push(he(u)):Ze(u)&&Ze(f)?p[c]=he(f.text+u.text):(s(t._isVList)&&a(u.tag)&&i(u.key)&&a(n)&&(u.key="__vlist".concat(n,"_").concat(r,"__")),p.push(u)));return p}(e):void 0}function Ze(e){return a(e)&&a(e.text)&&!1===e.isComment}function Xe(e,t){var n,r,i,s,l=null;if(o(e)||"string"==typeof e)for(l=new Array(e.length),n=0,r=e.length;n0,s=t?!!t.$stable:!a,l=t&&t.$key;if(t){if(t._normalized)return t._normalized;if(s&&o&&o!==r&&l===o.$key&&!a&&!o.$hasNormal)return o;for(var u in i={},t)t[u]&&"$"!==u[0]&&(i[u]=mt(e,n,u,t[u]))}else i={};for(var c in n)c in i||(i[c]=gt(n,c));return t&&Object.isExtensible(t)&&(t._normalized=i),H(i,"$stable",s),H(i,"$key",l),H(i,"$hasNormal",a),i}function mt(e,t,n,r){var i=function(){var t=fe;pe(e);var n=arguments.length?r.apply(null,arguments):r({}),i=(n=n&&"object"==typeof n&&!o(n)?[n]:Ge(n))&&n[0];return pe(t),n&&(!i||1===n.length&&i.isComment&&!vt(i))?void 0:n};return r.proxy&&Object.defineProperty(t,n,{get:i,enumerable:!0,configurable:!0}),i}function gt(e,t){return function(){return e[t]}}function yt(e){return{get attrs(){if(!e._attrsProxy){var t=e._attrsProxy={};H(t,"_v_attr_proxy",!0),bt(t,e.$attrs,r,e,"$attrs")}return e._attrsProxy},get listeners(){e._listenersProxy||bt(e._listenersProxy={},e.$listeners,r,e,"$listeners");return e._listenersProxy},get slots(){return function(e){e._slotsProxy||wt(e._slotsProxy={},e.$scopedSlots);return e._slotsProxy}(e)},emit:E(e.$emit,e),expose:function(t){t&&Object.keys(t).forEach((function(n){return Ue(e,t,n)}))}}}function bt(e,t,n,r,o){var i=!1;for(var a in t)a in e?t[a]!==n[a]&&(i=!0):(i=!0,_t(e,a,r,o));for(var a in e)a in t||(i=!0,delete e[a]);return i}function _t(e,t,n,r){Object.defineProperty(e,t,{enumerable:!0,configurable:!0,get:function(){return n[r][t]}})}function wt(e,t){for(var n in t)e[n]=t[n];for(var n in e)n in t||delete e[n]}var xt=null;function jt(e,t){return(e.__esModule||ce&&"Module"===e[Symbol.toStringTag])&&(e=e.default),c(e)?t.extend(e):e}function kt(e){if(o(e))for(var t=0;tdocument.createEvent("Event").timeStamp&&(un=function(){return cn.now()})}var fn=function(e,t){if(e.post){if(!t.post)return 1}else if(t.post)return-1;return e.id-t.id};function pn(){var e,t;for(ln=un(),an=!0,tn.sort(fn),sn=0;snsn&&tn[n].id>e.id;)n--;tn.splice(n+1,0,e)}else tn.push(e);on||(on=!0,Ft(pn))}}function vn(e,t){if(e){for(var n=Object.create(null),r=ce?Reflect.ownKeys(e):Object.keys(e),o=0;o-1)if(i&&!j(o,"default"))a=!1;else if(""===a||a===$(e)){var l=Nn(String,o.type);(l<0||s-1:"string"==typeof e?e.split(",").indexOf(t)>-1:!!d(e)&&e.test(t)}function Xn(e,t){var n=e.cache,r=e.keys,o=e._vnode,i=e.$vnode;for(var a in n){var s=n[a];if(s){var l=s.name;l&&!t(l)&&Qn(n,a,r,o)}}i.componentOptions.children=void 0}function Qn(e,t,n,r){var o=e[t];!o||r&&o.tag===r.tag||o.componentInstance.$destroy(),e[t]=null,w(n,t)}Kn.prototype._init=function(e){var t=this;t._uid=Vn++,t._isVue=!0,t.__v_skip=!0,t._scope=new Je(!0),t._scope.parent=void 0,t._scope._vm=!0,e&&e._isComponent?function(e,t){var n=e.$options=Object.create(e.constructor.options),r=t._parentVnode;n.parent=t.parent,n._parentVnode=r;var o=r.componentOptions;n.propsData=o.propsData,n._parentListeners=o.listeners,n._renderChildren=o.children,n._componentTag=o.tag,t.render&&(n.render=t.render,n.staticRenderFns=t.staticRenderFns)}(t,e):t.$options=En(Hn(t.constructor),e||{},t),t._renderProxy=t,t._self=t,function(e){var t=e.$options,n=t.parent;if(n&&!t.abstract){for(;n.$options.abstract&&n.$parent;)n=n.$parent;n.$children.push(e)}e.$parent=n,e.$root=n?n.$root:e,e.$children=[],e.$refs={},e._provided=n?n._provided:Object.create(null),e._watcher=null,e._inactive=null,e._directInactive=!1,e._isMounted=!1,e._isDestroyed=!1,e._isBeingDestroyed=!1}(t),function(e){e._events=Object.create(null),e._hasHookEvent=!1;var t=e.$options._parentListeners;t&&Gt(e,t)}(t),function(e){e._vnode=null,e._staticTrees=null;var t=e.$options,n=e.$vnode=t._parentVnode,o=n&&n.context;e.$slots=pt(t._renderChildren,o),e.$scopedSlots=n?ht(e.$parent,n.data.scopedSlots,e.$slots):r,e._c=function(t,n,r,o){return St(e,t,n,r,o,!1)},e.$createElement=function(t,n,r,o){return St(e,t,n,r,o,!0)};var i=n&&n.data;Te(e,"$attrs",i&&i.attrs||r,null,!0),Te(e,"$listeners",t._parentListeners||r,null,!0)}(t),en(t,"beforeCreate",void 0,!1),function(e){var t=vn(e.$options.inject,e);t&&(Pe(!1),Object.keys(t).forEach((function(n){Te(e,n,t[n])})),Pe(!0))}(t),Fn(t),function(e){var t=e.$options.provide;if(t){var n=u(t)?t.call(e):t;if(!c(n))return;for(var r=Be(e),o=ce?Reflect.ownKeys(n):Object.keys(n),i=0;i1?A(n):n;for(var r=A(arguments,1),o='event handler for "'.concat(e,'"'),i=0,a=n.length;iparseInt(this.max)&&Qn(e,t[0],t,this._vnode),this.vnodeToCache=null}}},created:function(){this.cache=Object.create(null),this.keys=[]},destroyed:function(){for(var e in this.cache)Qn(this.cache,e,this.keys)},mounted:function(){var e=this;this.cacheVNode(),this.$watch("include",(function(t){Xn(e,(function(e){return Zn(t,e)}))})),this.$watch("exclude",(function(t){Xn(e,(function(e){return!Zn(t,e)}))}))},updated:function(){this.cacheVNode()},render:function(){var e=this.$slots.default,t=kt(e),n=t&&t.componentOptions;if(n){var r=Gn(n),o=this.include,i=this.exclude;if(o&&(!r||!Zn(o,r))||i&&r&&Zn(i,r))return t;var a=this.cache,s=this.keys,l=null==t.key?n.Ctor.cid+(n.tag?"::".concat(n.tag):""):t.key;a[l]?(t.componentInstance=a[l].componentInstance,w(s,l),s.push(l)):(this.vnodeToCache=t,this.keyToCache=l),t.data.keepAlive=!0}return t||e&&e[0]}}};!function(e){var t={get:function(){return B}};Object.defineProperty(e,"config",t),e.util={warn:jn,extend:T,mergeOptions:En,defineReactive:Te},e.set=Le,e.delete=Re,e.nextTick=Ft,e.observable=function(e){return Ae(e),e},e.options=Object.create(null),z.forEach((function(t){e.options[t+"s"]=Object.create(null)})),e.options._base=e,T(e.options.components,er),function(e){e.use=function(e){var t=this._installedPlugins||(this._installedPlugins=[]);if(t.indexOf(e)>-1)return this;var n=A(arguments,1);return n.unshift(this),u(e.install)?e.install.apply(e,n):u(e)&&e.apply(null,n),t.push(e),this}}(e),function(e){e.mixin=function(e){return this.options=En(this.options,e),this}}(e),Wn(e),function(e){z.forEach((function(t){e[t]=function(e,n){return n?("component"===t&&p(n)&&(n.name=n.name||e,n=this.options._base.extend(n)),"directive"===t&&u(n)&&(n={bind:n,update:n}),this.options[t+"s"][e]=n,n):this.options[t+"s"][e]}}))}(e)}(Kn),Object.defineProperty(Kn.prototype,"$isServer",{get:ae}),Object.defineProperty(Kn.prototype,"$ssrContext",{get:function(){return this.$vnode&&this.$vnode.ssrContext}}),Object.defineProperty(Kn,"FunctionalRenderContext",{value:hn}),Kn.version="2.7.16";var tr=b("style,class"),nr=b("input,textarea,option,select,progress"),rr=b("contenteditable,draggable,spellcheck"),or=b("events,caret,typing,plaintext-only"),ir=b("allowfullscreen,async,autofocus,autoplay,checked,compact,controls,declare,default,defaultchecked,defaultmuted,defaultselected,defer,disabled,enabled,formnovalidate,hidden,indeterminate,inert,ismap,itemscope,loop,multiple,muted,nohref,noresize,noshade,novalidate,nowrap,open,pauseonexit,readonly,required,reversed,scoped,seamless,selected,sortable,truespeed,typemustmatch,visible"),ar="http://www.w3.org/1999/xlink",sr=function(e){return":"===e.charAt(5)&&"xlink"===e.slice(0,5)},lr=function(e){return sr(e)?e.slice(6,e.length):""},ur=function(e){return null==e||!1===e};function cr(e){for(var t=e.data,n=e,r=e;a(r.componentInstance);)(r=r.componentInstance._vnode)&&r.data&&(t=fr(r.data,t));for(;a(n=n.parent);)n&&n.data&&(t=fr(t,n.data));return function(e,t){if(a(e)||a(t))return pr(e,dr(t));return""}(t.staticClass,t.class)}function fr(e,t){return{staticClass:pr(e.staticClass,t.staticClass),class:a(e.class)?[e.class,t.class]:t.class}}function pr(e,t){return e?t?e+" "+t:e:t||""}function dr(e){return Array.isArray(e)?function(e){for(var t,n="",r=0,o=e.length;r-1?Ir(e,t,n):ir(t)?ur(n)?e.removeAttribute(t):(n="allowfullscreen"===t&&"EMBED"===e.tagName?"true":t,e.setAttribute(t,n)):rr(t)?e.setAttribute(t,function(e,t){return ur(t)||"false"===t?"false":"contenteditable"===e&&or(t)?t:"true"}(t,n)):sr(t)?ur(n)?e.removeAttributeNS(ar,lr(t)):e.setAttributeNS(ar,t,n):Ir(e,t,n)}function Ir(e,t,n){if(ur(n))e.removeAttribute(t);else{if(X&&!Q&&"TEXTAREA"===e.tagName&&"placeholder"===t&&""!==n&&!e.__ieph){var r=function(t){t.stopImmediatePropagation(),e.removeEventListener("input",r)};e.addEventListener("input",r),e.__ieph=!0}e.setAttribute(t,n)}}var Dr={create:Mr,update:Mr};function Fr(e,t){var n=t.elm,r=t.data,o=e.data;if(!(i(r.staticClass)&&i(r.class)&&(i(o)||i(o.staticClass)&&i(o.class)))){var s=cr(t),l=n._transitionClasses;a(l)&&(s=pr(s,dr(l))),s!==n._prevClass&&(n.setAttribute("class",s),n._prevClass=s)}}var Ur,zr={create:Fr,update:Fr};function Jr(e,t,n){var r=Ur;return function o(){var i=t.apply(null,arguments);null!==i&&Vr(e,o,n,r)}}var Br=At&&!(ne&&Number(ne[1])<=53);function qr(e,t,n,r){if(Br){var o=ln,i=t;t=i._wrapper=function(e){if(e.target===e.currentTarget||e.timeStamp>=o||e.timeStamp<=0||e.target.ownerDocument!==document)return i.apply(this,arguments)}}Ur.addEventListener(e,t,oe?{capture:n,passive:r}:n)}function Vr(e,t,n,r){(r||Ur).removeEventListener(e,t._wrapper||t,n)}function Hr(e,t){if(!i(e.data.on)||!i(t.data.on)){var n=t.data.on||{},r=e.data.on||{};Ur=t.elm||e.elm,function(e){if(a(e.__r)){var t=X?"change":"input";e[t]=[].concat(e.__r,e[t]||[]),delete e.__r}a(e.__c)&&(e.change=[].concat(e.__c,e.change||[]),delete e.__c)}(n),He(n,r,qr,Vr,Jr,t.context),Ur=void 0}}var Kr,Wr={create:Hr,update:Hr,destroy:function(e){return Hr(e,kr)}};function Gr(e,t){if(!i(e.data.domProps)||!i(t.data.domProps)){var n,r,o=t.elm,l=e.data.domProps||{},u=t.data.domProps||{};for(n in(a(u.__ob__)||s(u._v_attr_proxy))&&(u=t.data.domProps=T({},u)),l)n in u||(o[n]="");for(n in u){if(r=u[n],"textContent"===n||"innerHTML"===n){if(t.children&&(t.children.length=0),r===l[n])continue;1===o.childNodes.length&&o.removeChild(o.childNodes[0])}if("value"===n&&"PROGRESS"!==o.tagName){o._value=r;var c=i(r)?"":String(r);Zr(o,c)&&(o.value=c)}else if("innerHTML"===n&&mr(o.tagName)&&i(o.innerHTML)){(Kr=Kr||document.createElement("div")).innerHTML="".concat(r,"");for(var f=Kr.firstChild;o.firstChild;)o.removeChild(o.firstChild);for(;f.firstChild;)o.appendChild(f.firstChild)}else if(r!==l[n])try{o[n]=r}catch(e){}}}}function Zr(e,t){return!e.composing&&("OPTION"===e.tagName||function(e,t){var n=!0;try{n=document.activeElement!==e}catch(e){}return n&&e.value!==t}(e,t)||function(e,t){var n=e.value,r=e._vModifiers;if(a(r)){if(r.number)return y(n)!==y(t);if(r.trim)return n.trim()!==t.trim()}return n!==t}(e,t))}var Xr={create:Gr,update:Gr},Qr=k((function(e){var t={},n=/:(.+)/;return e.split(/;(?![^(]*\))/g).forEach((function(e){if(e){var r=e.split(n);r.length>1&&(t[r[0].trim()]=r[1].trim())}})),t}));function Yr(e){var t=eo(e.style);return e.staticStyle?T(e.staticStyle,t):t}function eo(e){return Array.isArray(e)?L(e):"string"==typeof e?Qr(e):e}var to,no=/^--/,ro=/\s*!important$/,oo=function(e,t,n){if(no.test(t))e.style.setProperty(t,n);else if(ro.test(n))e.style.setProperty($(t),n.replace(ro,""),"important");else{var r=ao(t);if(Array.isArray(n))for(var o=0,i=n.length;o-1?t.split(uo).forEach((function(t){return e.classList.add(t)})):e.classList.add(t);else{var n=" ".concat(e.getAttribute("class")||""," ");n.indexOf(" "+t+" ")<0&&e.setAttribute("class",(n+t).trim())}}function fo(e,t){if(t&&(t=t.trim()))if(e.classList)t.indexOf(" ")>-1?t.split(uo).forEach((function(t){return e.classList.remove(t)})):e.classList.remove(t),e.classList.length||e.removeAttribute("class");else{for(var n=" ".concat(e.getAttribute("class")||""," "),r=" "+t+" ";n.indexOf(r)>=0;)n=n.replace(r," ");(n=n.trim())?e.setAttribute("class",n):e.removeAttribute("class")}}function po(e){if(e){if("object"==typeof e){var t={};return!1!==e.css&&T(t,vo(e.name||"v")),T(t,e),t}return"string"==typeof e?vo(e):void 0}}var vo=k((function(e){return{enterClass:"".concat(e,"-enter"),enterToClass:"".concat(e,"-enter-to"),enterActiveClass:"".concat(e,"-enter-active"),leaveClass:"".concat(e,"-leave"),leaveToClass:"".concat(e,"-leave-to"),leaveActiveClass:"".concat(e,"-leave-active")}})),ho=G&&!Q,mo="transition",go="transitionend",yo="animation",bo="animationend";ho&&(void 0===window.ontransitionend&&void 0!==window.onwebkittransitionend&&(mo="WebkitTransition",go="webkitTransitionEnd"),void 0===window.onanimationend&&void 0!==window.onwebkitanimationend&&(yo="WebkitAnimation",bo="webkitAnimationEnd"));var _o=G?window.requestAnimationFrame?window.requestAnimationFrame.bind(window):setTimeout:function(e){return e()};function wo(e){_o((function(){_o(e)}))}function xo(e,t){var n=e._transitionClasses||(e._transitionClasses=[]);n.indexOf(t)<0&&(n.push(t),co(e,t))}function jo(e,t){e._transitionClasses&&w(e._transitionClasses,t),fo(e,t)}function ko(e,t,n){var r=Oo(e,t),o=r.type,i=r.timeout,a=r.propCount;if(!o)return n();var s="transition"===o?go:bo,l=0,u=function(){e.removeEventListener(s,c),n()},c=function(t){t.target===e&&++l>=a&&u()};setTimeout((function(){l0&&(n="transition",c=a,f=i.length):"animation"===t?u>0&&(n="animation",c=u,f=l.length):f=(n=(c=Math.max(a,u))>0?a>u?"transition":"animation":null)?"transition"===n?i.length:l.length:0,{type:n,timeout:c,propCount:f,hasTransform:"transition"===n&&So.test(r[mo+"Property"])}}function Co(e,t){for(;e.length1}function Lo(e,t){!0!==t.data.show&&$o(t)}var Ro=function(e){var t,n,r={},u=e.modules,c=e.nodeOps;for(t=0;tv?_(e,i(n[g+1])?null:n[g+1].elm,n,d,g,r):d>g&&x(t,f,v)}(f,h,g,n,u):a(g)?(a(e.text)&&c.setTextContent(f,""),_(f,null,g,0,g.length-1,n)):a(h)?x(h,0,h.length-1):a(e.text)&&c.setTextContent(f,""):e.text!==t.text&&c.setTextContent(f,t.text),a(v)&&a(d=v.hook)&&a(d=d.postpatch)&&d(e,t)}}}function O(e,t,n){if(s(n)&&a(e.parent))e.parent.data.pendingInsert=t;else for(var r=0;r-1,a.selected!==i&&(a.selected=i);else if(I(Fo(a),r))return void(e.selectedIndex!==s&&(e.selectedIndex=s));o||(e.selectedIndex=-1)}}function Do(e,t){return t.every((function(t){return!I(t,e)}))}function Fo(e){return"_value"in e?e._value:e.value}function Uo(e){e.target.composing=!0}function zo(e){e.target.composing&&(e.target.composing=!1,Jo(e.target,"input"))}function Jo(e,t){var n=document.createEvent("HTMLEvents");n.initEvent(t,!0,!0),e.dispatchEvent(n)}function Bo(e){return!e.componentInstance||e.data&&e.data.transition?e:Bo(e.componentInstance._vnode)}var qo={model:Mo,show:{bind:function(e,t,n){var r=t.value,o=(n=Bo(n)).data&&n.data.transition,i=e.__vOriginalDisplay="none"===e.style.display?"":e.style.display;r&&o?(n.data.show=!0,$o(n,(function(){e.style.display=i}))):e.style.display=r?i:"none"},update:function(e,t,n){var r=t.value;!r!=!t.oldValue&&((n=Bo(n)).data&&n.data.transition?(n.data.show=!0,r?$o(n,(function(){e.style.display=e.__vOriginalDisplay})):Eo(n,(function(){e.style.display="none"}))):e.style.display=r?e.__vOriginalDisplay:"none")},unbind:function(e,t,n,r,o){o||(e.style.display=e.__vOriginalDisplay)}}},Vo={name:String,appear:Boolean,css:Boolean,mode:String,type:String,enterClass:String,leaveClass:String,enterToClass:String,leaveToClass:String,enterActiveClass:String,leaveActiveClass:String,appearClass:String,appearActiveClass:String,appearToClass:String,duration:[Number,String,Object]};function Ho(e){var t=e&&e.componentOptions;return t&&t.Ctor.options.abstract?Ho(kt(t.children)):e}function Ko(e){var t={},n=e.$options;for(var r in n.propsData)t[r]=e[r];var o=n._parentListeners;for(var r in o)t[O(r)]=o[r];return t}function Wo(e,t){if(/\d-keep-alive$/.test(t.tag))return e("keep-alive",{props:t.componentOptions.propsData})}var Go=function(e){return e.tag||vt(e)},Zo=function(e){return"show"===e.name},Xo={name:"transition",props:Vo,abstract:!0,render:function(e){var t=this,n=this.$slots.default;if(n&&(n=n.filter(Go)).length){0;var r=this.mode;0;var o=n[0];if(function(e){for(;e=e.parent;)if(e.data.transition)return!0}(this.$vnode))return o;var i=Ho(o);if(!i)return o;if(this._leaving)return Wo(e,o);var a="__transition-".concat(this._uid,"-");i.key=null==i.key?i.isComment?a+"comment":a+i.tag:l(i.key)?0===String(i.key).indexOf(a)?i.key:a+i.key:i.key;var s=(i.data||(i.data={})).transition=Ko(this),u=this._vnode,c=Ho(u);if(i.data.directives&&i.data.directives.some(Zo)&&(i.data.show=!0),c&&c.data&&!function(e,t){return t.key===e.key&&t.tag===e.tag}(i,c)&&!vt(c)&&(!c.componentInstance||!c.componentInstance._vnode.isComment)){var f=c.data.transition=T({},s);if("out-in"===r)return this._leaving=!0,Ke(f,"afterLeave",(function(){t._leaving=!1,t.$forceUpdate()})),Wo(e,o);if("in-out"===r){if(vt(i))return u;var p,d=function(){p()};Ke(s,"afterEnter",d),Ke(s,"enterCancelled",d),Ke(f,"delayLeave",(function(e){p=e}))}}return o}}},Qo=T({tag:String,moveClass:String},Vo);function Yo(e){e.elm._moveCb&&e.elm._moveCb(),e.elm._enterCb&&e.elm._enterCb()}function ei(e){e.data.newPos=e.elm.getBoundingClientRect()}function ti(e){var t=e.data.pos,n=e.data.newPos,r=t.left-n.left,o=t.top-n.top;if(r||o){e.data.moved=!0;var i=e.elm.style;i.transform=i.WebkitTransform="translate(".concat(r,"px,").concat(o,"px)"),i.transitionDuration="0s"}}delete Qo.mode;var ni={Transition:Xo,TransitionGroup:{props:Qo,beforeMount:function(){var e=this,t=this._update;this._update=function(n,r){var o=Xt(e);e.__patch__(e._vnode,e.kept,!1,!0),e._vnode=e.kept,o(),t.call(e,n,r)}},render:function(e){for(var t=this.tag||this.$vnode.data.tag||"span",n=Object.create(null),r=this.prevChildren=this.children,o=this.$slots.default||[],i=this.children=[],a=Ko(this),s=0;s-1?yr[e]=t.constructor===window.HTMLUnknownElement||t.constructor===window.HTMLElement:yr[e]=/HTMLUnknownElement/.test(t.toString())},T(Kn.options.directives,qo),T(Kn.options.components,ni),Kn.prototype.__patch__=G?Ro:R,Kn.prototype.$mount=function(e,t){return function(e,t,n){var r;e.$el=t,e.$options.render||(e.$options.render=ve),en(e,"beforeMount"),r=function(){e._update(e._render(),n)},new Vt(e,r,R,{before:function(){e._isMounted&&!e._isDestroyed&&en(e,"beforeUpdate")}},!0),n=!1;var o=e._preWatchers;if(o)for(var i=0;i=0&&(t=e.slice(r),e=e.slice(0,r));var o=e.indexOf("?");return o>=0&&(n=e.slice(o+1),e=e.slice(0,o)),{path:e,query:n,hash:t}}(o.path||""),u=t&&t.path||"/",c=l.path?ji(l.path,u,n||o.append):u,f=function(e,t,n){void 0===t&&(t={});var r,o=n||ci;try{r=o(e||"")}catch(e){r={}}for(var i in t){var a=t[i];r[i]=Array.isArray(a)?a.map(ui):ui(a)}return r}(l.query,o.query,r&&r.options.parseQuery),p=o.hash||l.hash;return p&&"#"!==p.charAt(0)&&(p="#"+p),{_normalized:!0,path:c,query:f,hash:p}}var qi,Vi=function(){},Hi={name:"RouterLink",props:{to:{type:[String,Object],required:!0},tag:{type:String,default:"a"},custom:Boolean,exact:Boolean,exactPath:Boolean,append:Boolean,replace:Boolean,activeClass:String,exactActiveClass:String,ariaCurrentValue:{type:String,default:"page"},event:{type:[String,Array],default:"click"}},render:function(e){var t=this,n=this.$router,r=this.$route,o=n.resolve(this.to,r,this.append),i=o.location,a=o.route,s=o.href,l={},u=n.options.linkActiveClass,c=n.options.linkExactActiveClass,f=null==u?"router-link-active":u,p=null==c?"router-link-exact-active":c,d=null==this.activeClass?f:this.activeClass,v=null==this.exactActiveClass?p:this.exactActiveClass,h=a.redirectedFrom?di(null,Bi(a.redirectedFrom),null,n):a;l[v]=yi(r,h,this.exactPath),l[d]=this.exact||this.exactPath?l[v]:function(e,t){return 0===e.path.replace(pi,"/").indexOf(t.path.replace(pi,"/"))&&(!t.hash||e.hash===t.hash)&&function(e,t){for(var n in t)if(!(n in e))return!1;return!0}(e.query,t.query)}(r,h);var m=l[v]?this.ariaCurrentValue:null,g=function(e){Ki(e)&&(t.replace?n.replace(i,Vi):n.push(i,Vi))},y={click:Ki};Array.isArray(this.event)?this.event.forEach((function(e){y[e]=g})):y[this.event]=g;var b={class:l},_=!this.$scopedSlots.$hasNormal&&this.$scopedSlots.default&&this.$scopedSlots.default({href:s,route:a,navigate:g,isActive:l[d],isExactActive:l[v]});if(_){if(1===_.length)return _[0];if(_.length>1||!_.length)return 0===_.length?e():e("span",{},_)}if("a"===this.tag)b.on=y,b.attrs={href:s,"aria-current":m};else{var w=function e(t){var n;if(t)for(var r=0;r-1&&(s.params[p]=n.params[p]);return s.path=Ji(c.path,s.params),l(c,s,a)}if(s.path){s.params={};for(var d=0;d-1}function ka(e,t){return ja(e)&&e._isRouter&&(null==t||e.type===t)}function Sa(e,t,n){var r=function(o){o>=e.length?n():e[o]?t(e[o],(function(){r(o+1)})):r(o+1)};r(0)}function Oa(e){return function(t,n,r){var o=!1,i=0,a=null;Ca(e,(function(e,t,n,s){if("function"==typeof e&&void 0===e.cid){o=!0,i++;var l,u=Ea((function(t){var o;((o=t).__esModule||$a&&"Module"===o[Symbol.toStringTag])&&(t=t.default),e.resolved="function"==typeof t?t:qi.extend(t),n.components[s]=t,--i<=0&&r()})),c=Ea((function(e){var t="Failed to resolve async component "+s+": "+e;a||(a=ja(e)?e:new Error(t),r(a))}));try{l=e(u,c)}catch(e){c(e)}if(l)if("function"==typeof l.then)l.then(u,c);else{var f=l.component;f&&"function"==typeof f.then&&f.then(u,c)}}})),o||r()}}function Ca(e,t){return Pa(e.map((function(e){return Object.keys(e.components).map((function(n){return t(e.components[n],e.instances[n],e,n)}))})))}function Pa(e){return Array.prototype.concat.apply([],e)}var $a="function"==typeof Symbol&&"symbol"==typeof Symbol.toStringTag;function Ea(e){var t=!1;return function(){for(var n=[],r=arguments.length;r--;)n[r]=arguments[r];if(!t)return t=!0,e.apply(this,n)}}var Aa=function(e,t){this.router=e,this.base=function(e){if(!e)if(Wi){var t=document.querySelector("base");e=(e=t&&t.getAttribute("href")||"/").replace(/^https?:\/\/[^\/]+/,"")}else e="/";"/"!==e.charAt(0)&&(e="/"+e);return e.replace(/\/$/,"")}(t),this.current=hi,this.pending=null,this.ready=!1,this.readyCbs=[],this.readyErrorCbs=[],this.errorCbs=[],this.listeners=[]};function Ta(e,t,n,r){var o=Ca(e,(function(e,r,o,i){var a=function(e,t){"function"!=typeof e&&(e=qi.extend(e));return e.options[t]}(e,t);if(a)return Array.isArray(a)?a.map((function(e){return n(e,r,o,i)})):n(a,r,o,i)}));return Pa(r?o.reverse():o)}function La(e,t){if(t)return function(){return e.apply(t,arguments)}}Aa.prototype.listen=function(e){this.cb=e},Aa.prototype.onReady=function(e,t){this.ready?e():(this.readyCbs.push(e),t&&this.readyErrorCbs.push(t))},Aa.prototype.onError=function(e){this.errorCbs.push(e)},Aa.prototype.transitionTo=function(e,t,n){var r,o=this;try{r=this.router.match(e,this.current)}catch(e){throw this.errorCbs.forEach((function(t){t(e)})),e}var i=this.current;this.confirmTransition(r,(function(){o.updateRoute(r),t&&t(r),o.ensureURL(),o.router.afterHooks.forEach((function(e){e&&e(r,i)})),o.ready||(o.ready=!0,o.readyCbs.forEach((function(e){e(r)})))}),(function(e){n&&n(e),e&&!o.ready&&(ka(e,ya.redirected)&&i===hi||(o.ready=!0,o.readyErrorCbs.forEach((function(t){t(e)}))))}))},Aa.prototype.confirmTransition=function(e,t,n){var r=this,o=this.current;this.pending=e;var i,a,s=function(e){!ka(e)&&ja(e)&&(r.errorCbs.length?r.errorCbs.forEach((function(t){t(e)})):console.error(e)),n&&n(e)},l=e.matched.length-1,u=o.matched.length-1;if(yi(e,o)&&l===u&&e.matched[l]===o.matched[u])return this.ensureURL(),e.hash&&aa(this.router,o,e,!1),s(((a=wa(i=o,e,ya.duplicated,'Avoided redundant navigation to current location: "'+i.fullPath+'".')).name="NavigationDuplicated",a));var c=function(e,t){var n,r=Math.max(e.length,t.length);for(n=0;n0)){var t=this.router,n=t.options.scrollBehavior,r=ha&&n;r&&this.listeners.push(ia());var o=function(){var n=e.current,o=Ma(e.base);e.current===hi&&o===e._startLocation||e.transitionTo(o,(function(e){r&&aa(t,e,n,!0)}))};window.addEventListener("popstate",o),this.listeners.push((function(){window.removeEventListener("popstate",o)}))}},t.prototype.go=function(e){window.history.go(e)},t.prototype.push=function(e,t,n){var r=this,o=this.current;this.transitionTo(e,(function(e){ma(ki(r.base+e.fullPath)),aa(r.router,e,o,!1),t&&t(e)}),n)},t.prototype.replace=function(e,t,n){var r=this,o=this.current;this.transitionTo(e,(function(e){ga(ki(r.base+e.fullPath)),aa(r.router,e,o,!1),t&&t(e)}),n)},t.prototype.ensureURL=function(e){if(Ma(this.base)!==this.current.fullPath){var t=ki(this.base+this.current.fullPath);e?ma(t):ga(t)}},t.prototype.getCurrentLocation=function(){return Ma(this.base)},t}(Aa);function Ma(e){var t=window.location.pathname,n=t.toLowerCase(),r=e.toLowerCase();return!e||n!==r&&0!==n.indexOf(ki(r+"/"))||(t=t.slice(e.length)),(t||"/")+window.location.search+window.location.hash}var Na=function(e){function t(t,n,r){e.call(this,t,n),r&&function(e){var t=Ma(e);if(!/^\/#/.test(t))return window.location.replace(ki(e+"/#"+t)),!0}(this.base)||Ia()}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.setupListeners=function(){var e=this;if(!(this.listeners.length>0)){var t=this.router.options.scrollBehavior,n=ha&&t;n&&this.listeners.push(ia());var r=function(){var t=e.current;Ia()&&e.transitionTo(Da(),(function(r){n&&aa(e.router,r,t,!0),ha||za(r.fullPath)}))},o=ha?"popstate":"hashchange";window.addEventListener(o,r),this.listeners.push((function(){window.removeEventListener(o,r)}))}},t.prototype.push=function(e,t,n){var r=this,o=this.current;this.transitionTo(e,(function(e){Ua(e.fullPath),aa(r.router,e,o,!1),t&&t(e)}),n)},t.prototype.replace=function(e,t,n){var r=this,o=this.current;this.transitionTo(e,(function(e){za(e.fullPath),aa(r.router,e,o,!1),t&&t(e)}),n)},t.prototype.go=function(e){window.history.go(e)},t.prototype.ensureURL=function(e){var t=this.current.fullPath;Da()!==t&&(e?Ua(t):za(t))},t.prototype.getCurrentLocation=function(){return Da()},t}(Aa);function Ia(){var e=Da();return"/"===e.charAt(0)||(za("/"+e),!1)}function Da(){var e=window.location.href,t=e.indexOf("#");return t<0?"":e=e.slice(t+1)}function Fa(e){var t=window.location.href,n=t.indexOf("#");return(n>=0?t.slice(0,n):t)+"#"+e}function Ua(e){ha?ma(Fa(e)):window.location.hash=e}function za(e){ha?ga(Fa(e)):window.location.replace(Fa(e))}var Ja=function(e){function t(t,n){e.call(this,t,n),this.stack=[],this.index=-1}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.push=function(e,t,n){var r=this;this.transitionTo(e,(function(e){r.stack=r.stack.slice(0,r.index+1).concat(e),r.index++,t&&t(e)}),n)},t.prototype.replace=function(e,t,n){var r=this;this.transitionTo(e,(function(e){r.stack=r.stack.slice(0,r.index).concat(e),t&&t(e)}),n)},t.prototype.go=function(e){var t=this,n=this.index+e;if(!(n<0||n>=this.stack.length)){var r=this.stack[n];this.confirmTransition(r,(function(){var e=t.current;t.index=n,t.updateRoute(r),t.router.afterHooks.forEach((function(t){t&&t(r,e)}))}),(function(e){ka(e,ya.duplicated)&&(t.index=n)}))}},t.prototype.getCurrentLocation=function(){var e=this.stack[this.stack.length-1];return e?e.fullPath:"/"},t.prototype.ensureURL=function(){},t}(Aa),Ba=function(e){void 0===e&&(e={}),this.app=null,this.apps=[],this.options=e,this.beforeHooks=[],this.resolveHooks=[],this.afterHooks=[],this.matcher=Xi(e.routes||[],this);var t=e.mode||"hash";switch(this.fallback="history"===t&&!ha&&!1!==e.fallback,this.fallback&&(t="hash"),Wi||(t="abstract"),this.mode=t,t){case"history":this.history=new Ra(this,e.base);break;case"hash":this.history=new Na(this,e.base,this.fallback);break;case"abstract":this.history=new Ja(this,e.base);break;default:0}},qa={currentRoute:{configurable:!0}};Ba.prototype.match=function(e,t,n){return this.matcher.match(e,t,n)},qa.currentRoute.get=function(){return this.history&&this.history.current},Ba.prototype.init=function(e){var t=this;if(this.apps.push(e),e.$once("hook:destroyed",(function(){var n=t.apps.indexOf(e);n>-1&&t.apps.splice(n,1),t.app===e&&(t.app=t.apps[0]||null),t.app||t.history.teardown()})),!this.app){this.app=e;var n=this.history;if(n instanceof Ra||n instanceof Na){var r=function(e){n.setupListeners(),function(e){var r=n.current,o=t.options.scrollBehavior;ha&&o&&"fullPath"in e&&aa(t,e,r,!1)}(e)};n.transitionTo(n.getCurrentLocation(),r,r)}n.listen((function(e){t.apps.forEach((function(t){t._route=e}))}))}},Ba.prototype.beforeEach=function(e){return Ha(this.beforeHooks,e)},Ba.prototype.beforeResolve=function(e){return Ha(this.resolveHooks,e)},Ba.prototype.afterEach=function(e){return Ha(this.afterHooks,e)},Ba.prototype.onReady=function(e,t){this.history.onReady(e,t)},Ba.prototype.onError=function(e){this.history.onError(e)},Ba.prototype.push=function(e,t,n){var r=this;if(!t&&!n&&"undefined"!=typeof Promise)return new Promise((function(t,n){r.history.push(e,t,n)}));this.history.push(e,t,n)},Ba.prototype.replace=function(e,t,n){var r=this;if(!t&&!n&&"undefined"!=typeof Promise)return new Promise((function(t,n){r.history.replace(e,t,n)}));this.history.replace(e,t,n)},Ba.prototype.go=function(e){this.history.go(e)},Ba.prototype.back=function(){this.go(-1)},Ba.prototype.forward=function(){this.go(1)},Ba.prototype.getMatchedComponents=function(e){var t=e?e.matched?e:this.resolve(e).route:this.currentRoute;return t?[].concat.apply([],t.matched.map((function(e){return Object.keys(e.components).map((function(t){return e.components[t]}))}))):[]},Ba.prototype.resolve=function(e,t,n){var r=Bi(e,t=t||this.history.current,n,this),o=this.match(r,t),i=o.redirectedFrom||o.fullPath;return{location:r,route:o,href:function(e,t,n){var r="hash"===n?"#"+t:t;return e?ki(e+"/"+r):r}(this.history.base,i,this.mode),normalizedTo:r,resolved:o}},Ba.prototype.getRoutes=function(){return this.matcher.getRoutes()},Ba.prototype.addRoute=function(e,t){this.matcher.addRoute(e,t),this.history.current!==hi&&this.history.transitionTo(this.history.getCurrentLocation())},Ba.prototype.addRoutes=function(e){this.matcher.addRoutes(e),this.history.current!==hi&&this.history.transitionTo(this.history.getCurrentLocation())},Object.defineProperties(Ba.prototype,qa);var Va=Ba;function Ha(e,t){return e.push(t),function(){var n=e.indexOf(t);n>-1&&e.splice(n,1)}}Ba.install=function e(t){if(!e.installed||qi!==t){e.installed=!0,qi=t;var n=function(e){return void 0!==e},r=function(e,t){var r=e.$options._parentVnode;n(r)&&n(r=r.data)&&n(r=r.registerRouteInstance)&&r(e,t)};t.mixin({beforeCreate:function(){n(this.$options.router)?(this._routerRoot=this,this._router=this.$options.router,this._router.init(this),t.util.defineReactive(this,"_route",this._router.history.current)):this._routerRoot=this.$parent&&this.$parent._routerRoot||this,r(this,this)},destroyed:function(){r(this)}}),Object.defineProperty(t.prototype,"$router",{get:function(){return this._routerRoot._router}}),Object.defineProperty(t.prototype,"$route",{get:function(){return this._routerRoot._route}}),t.component("RouterView",wi),t.component("RouterLink",Hi);var o=t.config.optionMergeStrategies;o.beforeRouteEnter=o.beforeRouteLeave=o.beforeRouteUpdate=o.created}},Ba.version="3.6.5",Ba.isNavigationFailure=ka,Ba.NavigationFailureType=ya,Ba.START_LOCATION=hi,Wi&&window.Vue&&window.Vue.use(Ba);n(95);n(122),n(88);var Ka={"components/AlgoliaSearchBox":()=>Promise.all([n.e(0),n.e(15)]).then(n.bind(null,372)),"components/DropdownLink":()=>Promise.all([n.e(0),n.e(16)]).then(n.bind(null,254)),"components/DropdownTransition":()=>Promise.all([n.e(0),n.e(40)]).then(n.bind(null,241)),"components/Home":()=>Promise.all([n.e(0),n.e(19)]).then(n.bind(null,299)),"components/NavLink":()=>n.e(42).then(n.bind(null,240)),"components/NavLinks":()=>Promise.all([n.e(0),n.e(13)]).then(n.bind(null,265)),"components/Navbar":()=>Promise.all([n.e(0),n.e(1)]).then(n.bind(null,369)),"components/Page":()=>Promise.all([n.e(0),n.e(12)]).then(n.bind(null,300)),"components/PageEdit":()=>Promise.all([n.e(0),n.e(20)]).then(n.bind(null,255)),"components/PageNav":()=>Promise.all([n.e(0),n.e(17)]).then(n.bind(null,267)),"components/Sidebar":()=>Promise.all([n.e(0),n.e(11)]).then(n.bind(null,301)),"components/SidebarButton":()=>Promise.all([n.e(0),n.e(41)]).then(n.bind(null,302)),"components/SidebarGroup":()=>Promise.all([n.e(0),n.e(3)]).then(n.bind(null,266)),"components/SidebarLink":()=>Promise.all([n.e(0),n.e(24)]).then(n.bind(null,256)),"components/SidebarLinks":()=>Promise.all([n.e(0),n.e(3)]).then(n.bind(null,253)),"global-components/Badge":()=>Promise.all([n.e(0),n.e(4)]).then(n.bind(null,390)),"global-components/CodeBlock":()=>Promise.all([n.e(0),n.e(5)]).then(n.bind(null,373)),"global-components/CodeGroup":()=>Promise.all([n.e(0),n.e(6)]).then(n.bind(null,374)),"layouts/404":()=>n.e(7).then(n.bind(null,375)),"layouts/Layout":()=>Promise.all([n.e(0),n.e(1),n.e(2)]).then(n.bind(null,376)),NotFound:()=>n.e(7).then(n.bind(null,375)),Layout:()=>Promise.all([n.e(0),n.e(1),n.e(2)]).then(n.bind(null,376))},Wa={"v-2216e8dc":()=>n.e(10).then(n.bind(null,391)),"v-0b4d4089":()=>n.e(44).then(n.bind(null,392)),"v-7eb94829":()=>n.e(46).then(n.bind(null,393)),"v-094b9dee":()=>n.e(45).then(n.bind(null,394)),"v-29ebca8e":()=>n.e(47).then(n.bind(null,395)),"v-003ee409":()=>n.e(50).then(n.bind(null,396)),"v-126ea6be":()=>n.e(49).then(n.bind(null,397)),"v-4d7f1c8a":()=>n.e(51).then(n.bind(null,398)),"v-83a41dee":()=>n.e(52).then(n.bind(null,399)),"v-d1f646ae":()=>n.e(54).then(n.bind(null,400)),"v-51aaf849":()=>n.e(48).then(n.bind(null,401)),"v-49301ee2":()=>n.e(53).then(n.bind(null,402)),"v-464fd629":()=>n.e(55).then(n.bind(null,403)),"v-7cca31fe":()=>n.e(56).then(n.bind(null,404)),"v-b5351e9e":()=>n.e(57).then(n.bind(null,405)),"v-76cafeae":()=>n.e(58).then(n.bind(null,406)),"v-62aa1369":()=>n.e(60).then(n.bind(null,407)),"v-3ad539ae":()=>n.e(61).then(n.bind(null,408)),"v-f3391bf6":()=>n.e(59).then(n.bind(null,409)),"v-5e92fa09":()=>n.e(62).then(n.bind(null,410)),"v-8de1af1a":()=>n.e(63).then(n.bind(null,411)),"v-48953121":()=>n.e(64).then(n.bind(null,412)),"v-1f38ca2e":()=>n.e(65).then(n.bind(null,413)),"v-1dfe032e":()=>n.e(66).then(n.bind(null,414)),"v-67c77489":()=>n.e(68).then(n.bind(null,415)),"v-27531941":()=>n.e(67).then(n.bind(null,416)),"v-c918a5fa":()=>n.e(69).then(n.bind(null,417)),"v-5a94ae89":()=>n.e(70).then(n.bind(null,418)),"v-2abeb1ab":()=>n.e(71).then(n.bind(null,419)),"v-959a2c2e":()=>n.e(72).then(n.bind(null,420)),"v-506a67bc":()=>n.e(73).then(n.bind(null,421)),"v-07fb5e62":()=>n.e(75).then(n.bind(null,422)),"v-19f2c039":()=>n.e(76).then(n.bind(null,423)),"v-6731dec1":()=>n.e(78).then(n.bind(null,424)),"v-7bf93309":()=>n.e(74).then(n.bind(null,425)),"v-b99d2c2e":()=>n.e(77).then(n.bind(null,426)),"v-7f55ccc9":()=>n.e(79).then(n.bind(null,427)),"v-bf7e876e":()=>n.e(80).then(n.bind(null,428)),"v-bb53a316":()=>n.e(81).then(n.bind(null,429)),"v-74774829":()=>n.e(83).then(n.bind(null,430)),"v-20f55eeb":()=>n.e(82).then(n.bind(null,431)),"v-90fdf4e6":()=>n.e(84).then(n.bind(null,432)),"v-114a7465":()=>n.e(85).then(n.bind(null,433))};function Ga(e){const t=Object.create(null);return function(n){return t[n]||(t[n]=e(n))}}const Za=/-(\w)/g,Xa=Ga(e=>e.replace(Za,(e,t)=>t?t.toUpperCase():"")),Qa=/\B([A-Z])/g,Ya=Ga(e=>e.replace(Qa,"-$1").toLowerCase()),es=Ga(e=>e.charAt(0).toUpperCase()+e.slice(1));function ts(e,t){if(!t)return;if(e(t))return e(t);return t.includes("-")?e(es(Xa(t))):e(es(t))||e(Ya(t))}const ns=Object.assign({},Ka,Wa),rs=e=>ns[e],os=e=>Wa[e],is=e=>Ka[e],as=e=>Kn.component(e);function ss(e){return ts(os,e)}function ls(e){return ts(is,e)}function us(e){return ts(rs,e)}function cs(e){return ts(as,e)}function fs(...e){return Promise.all(e.filter(e=>e).map(async e=>{if(!cs(e)&&us(e)){const t=await us(e)();Kn.component(e,t.default)}}))}function ps(e,t){"undefined"!=typeof window&&window.__VUEPRESS__&&(window.__VUEPRESS__[e]=t)}var ds=n(86),vs=n.n(ds),hs=n(87),ms=n.n(hs),gs={created(){if(this.siteMeta=this.$site.headTags.filter(([e])=>"meta"===e).map(([e,t])=>t),this.$ssrContext){const t=this.getMergedMetaTags();this.$ssrContext.title=this.$title,this.$ssrContext.lang=this.$lang,this.$ssrContext.pageMeta=(e=t)?e.map(e=>{let t="{t+=` ${n}="${ms()(e[n])}"`}),t+">"}).join("\n "):"",this.$ssrContext.canonicalLink=bs(this.$canonicalUrl)}var e},mounted(){this.currentMetaTags=[...document.querySelectorAll("meta")],this.updateMeta(),this.updateCanonicalLink()},methods:{updateMeta(){document.title=this.$title,document.documentElement.lang=this.$lang;const e=this.getMergedMetaTags();this.currentMetaTags=_s(e,this.currentMetaTags)},getMergedMetaTags(){const e=this.$page.frontmatter.meta||[];return vs()([{name:"description",content:this.$description}],e,this.siteMeta,ws)},updateCanonicalLink(){ys(),this.$canonicalUrl&&document.head.insertAdjacentHTML("beforeend",bs(this.$canonicalUrl))}},watch:{$page(){this.updateMeta(),this.updateCanonicalLink()}},beforeDestroy(){_s(null,this.currentMetaTags),ys()}};function ys(){const e=document.querySelector("link[rel='canonical']");e&&e.remove()}function bs(e=""){return e?``:""}function _s(e,t){if(t&&[...t].filter(e=>e.parentNode===document.head).forEach(e=>document.head.removeChild(e)),e)return e.map(e=>{const t=document.createElement("meta");return Object.keys(e).forEach(n=>{t.setAttribute(n,e[n])}),document.head.appendChild(t),t})}function ws(e){for(const t of["name","property","itemprop"])if(e.hasOwnProperty(t))return e[t]+t;return JSON.stringify(e)}var xs=n(22),js=n.n(xs),ks=[gs,{mounted(){js.a.configure({showSpinner:!1}),this.$router.beforeEach((e,t,n)=>{e.path===t.path||Kn.component(e.name)||js.a.start(),n()}),this.$router.afterEach(()=>{js.a.done(),this.isSidebarOpen=!1})}}],Ss={name:"GlobalLayout",computed:{layout(){const e=this.getLayout();return ps("layout",e),Kn.component(e)}},methods:{getLayout(){if(this.$page.path){const e=this.$page.frontmatter.layout;return e&&(this.$vuepress.getLayoutAsyncComponent(e)||this.$vuepress.getVueComponent(e))?e:"Layout"}return"NotFound"}}},Os=n(14),Cs=Object(Os.a)(Ss,(function(){return(0,this._self._c)(this.layout,{tag:"component"})}),[],!1,null,null,null).exports;!function(e,t,n){switch(t){case"components":e[t]||(e[t]={}),Object.assign(e[t],n);break;case"mixins":e[t]||(e[t]=[]),e[t].push(...n);break;default:throw new Error("Unknown option name.")}}(Cs,"mixins",ks);const Ps=[{name:"v-2216e8dc",path:"/",component:Cs,beforeEnter:(e,t,n)=>{fs("Layout","v-2216e8dc").then(n)}},{path:"/index.html",redirect:"/"},{name:"v-0b4d4089",path:"/api.html",component:Cs,beforeEnter:(e,t,n)=>{fs("Layout","v-0b4d4089").then(n)}},{name:"v-7eb94829",path:"/codegen.html",component:Cs,beforeEnter:(e,t,n)=>{fs("Layout","v-7eb94829").then(n)}},{name:"v-094b9dee",path:"/code_of_conduct/",component:Cs,beforeEnter:(e,t,n)=>{fs("Layout","v-094b9dee").then(n)}},{path:"/code_of_conduct/index.html",redirect:"/code_of_conduct/"},{path:"/code_of_conduct.html",redirect:"/code_of_conduct/"},{name:"v-29ebca8e",path:"/coercion.html",component:Cs,beforeEnter:(e,t,n)=>{fs("Layout","v-29ebca8e").then(n)}},{name:"v-003ee409",path:"/faq.html",component:Cs,beforeEnter:(e,t,n)=>{fs("Layout","v-003ee409").then(n)}},{name:"v-126ea6be",path:"/contributing/",component:Cs,beforeEnter:(e,t,n)=>{fs("Layout","v-126ea6be").then(n)}},{path:"/contributing/index.html",redirect:"/contributing/"},{path:"/contributing.html",redirect:"/contributing/"},{name:"v-4d7f1c8a",path:"/guide/async-validation.html",component:Cs,beforeEnter:(e,t,n)=>{fs("Layout","v-4d7f1c8a").then(n)}},{name:"v-83a41dee",path:"/guide/combining-schemas.html",component:Cs,beforeEnter:(e,t,n)=>{fs("Layout","v-83a41dee").then(n)}},{name:"v-d1f646ae",path:"/guide/formats.html",component:Cs,beforeEnter:(e,t,n)=>{fs("Layout","v-d1f646ae").then(n)}},{name:"v-51aaf849",path:"/components.html",component:Cs,beforeEnter:(e,t,n)=>{fs("Layout","v-51aaf849").then(n)}},{name:"v-49301ee2",path:"/guide/environments.html",component:Cs,beforeEnter:(e,t,n)=>{fs("Layout","v-49301ee2").then(n)}},{name:"v-464fd629",path:"/guide/getting-started.html",component:Cs,beforeEnter:(e,t,n)=>{fs("Layout","v-464fd629").then(n)}},{name:"v-7cca31fe",path:"/guide/managing-schemas.html",component:Cs,beforeEnter:(e,t,n)=>{fs("Layout","v-7cca31fe").then(n)}},{name:"v-b5351e9e",path:"/guide/modifying-data.html",component:Cs,beforeEnter:(e,t,n)=>{fs("Layout","v-b5351e9e").then(n)}},{name:"v-76cafeae",path:"/guide/schema-language.html",component:Cs,beforeEnter:(e,t,n)=>{fs("Layout","v-76cafeae").then(n)}},{name:"v-62aa1369",path:"/guide/user-keywords.html",component:Cs,beforeEnter:(e,t,n)=>{fs("Layout","v-62aa1369").then(n)}},{name:"v-3ad539ae",path:"/guide/why-ajv.html",component:Cs,beforeEnter:(e,t,n)=>{fs("Layout","v-3ad539ae").then(n)}},{name:"v-f3391bf6",path:"/guide/typescript.html",component:Cs,beforeEnter:(e,t,n)=>{fs("Layout","v-f3391bf6").then(n)}},{name:"v-5e92fa09",path:"/json-schema.html",component:Cs,beforeEnter:(e,t,n)=>{fs("Layout","v-5e92fa09").then(n)}},{name:"v-8de1af1a",path:"/json-type-definition.html",component:Cs,beforeEnter:(e,t,n)=>{fs("Layout","v-8de1af1a").then(n)}},{name:"v-48953121",path:"/keywords.html",component:Cs,beforeEnter:(e,t,n)=>{fs("Layout","v-48953121").then(n)}},{name:"v-1f38ca2e",path:"/license.html",component:Cs,beforeEnter:(e,t,n)=>{fs("Layout","v-1f38ca2e").then(n)}},{name:"v-1dfe032e",path:"/news/2020-08-14-mozilla-grant-openjs-foundation.html",component:Cs,beforeEnter:(e,t,n)=>{fs("Layout","v-1dfe032e").then(n)}},{name:"v-67c77489",path:"/news/2021-03-07-ajv-supports-json-type-definition.html",component:Cs,beforeEnter:(e,t,n)=>{fs("Layout","v-67c77489").then(n)}},{name:"v-27531941",path:"/news/2020-12-15-ajv-version-7-released.html",component:Cs,beforeEnter:(e,t,n)=>{fs("Layout","v-27531941").then(n)}},{name:"v-c918a5fa",path:"/news/2021-03-27-ajv-version-8-released.html",component:Cs,beforeEnter:(e,t,n)=>{fs("Layout","v-c918a5fa").then(n)}},{name:"v-5a94ae89",path:"/news/2021-04-24-ajv-online-event.html",component:Cs,beforeEnter:(e,t,n)=>{fs("Layout","v-5a94ae89").then(n)}},{name:"v-2abeb1ab",path:"/news/2021-05-24-ajv-online-event-video.html",component:Cs,beforeEnter:(e,t,n)=>{fs("Layout","v-2abeb1ab").then(n)}},{name:"v-959a2c2e",path:"/news/2021-07-22-ajv-microsoft-foss-fund-award.html",component:Cs,beforeEnter:(e,t,n)=>{fs("Layout","v-959a2c2e").then(n)}},{name:"v-506a67bc",path:"/news/",component:Cs,beforeEnter:(e,t,n)=>{fs("Layout","v-506a67bc").then(n)}},{path:"/news/index.html",redirect:"/news/"},{name:"v-07fb5e62",path:"/packages/",component:Cs,beforeEnter:(e,t,n)=>{fs("Layout","v-07fb5e62").then(n)}},{path:"/packages/index.html",redirect:"/packages/"},{name:"v-19f2c039",path:"/packages/ajv-cli.html",component:Cs,beforeEnter:(e,t,n)=>{fs("Layout","v-19f2c039").then(n)}},{name:"v-6731dec1",path:"/packages/ajv-formats.html",component:Cs,beforeEnter:(e,t,n)=>{fs("Layout","v-6731dec1").then(n)}},{name:"v-7bf93309",path:"/options.html",component:Cs,beforeEnter:(e,t,n)=>{fs("Layout","v-7bf93309").then(n)}},{name:"v-b99d2c2e",path:"/packages/ajv-errors.html",component:Cs,beforeEnter:(e,t,n)=>{fs("Layout","v-b99d2c2e").then(n)}},{name:"v-7f55ccc9",path:"/packages/ajv-i18n.html",component:Cs,beforeEnter:(e,t,n)=>{fs("Layout","v-7f55ccc9").then(n)}},{name:"v-bf7e876e",path:"/packages/ajv-keywords.html",component:Cs,beforeEnter:(e,t,n)=>{fs("Layout","v-bf7e876e").then(n)}},{name:"v-bb53a316",path:"/security.html",component:Cs,beforeEnter:(e,t,n)=>{fs("Layout","v-bb53a316").then(n)}},{name:"v-74774829",path:"/strict-mode.html",component:Cs,beforeEnter:(e,t,n)=>{fs("Layout","v-74774829").then(n)}},{name:"v-20f55eeb",path:"/standalone.html",component:Cs,beforeEnter:(e,t,n)=>{fs("Layout","v-20f55eeb").then(n)}},{name:"v-90fdf4e6",path:"/testimonials.html",component:Cs,beforeEnter:(e,t,n)=>{fs("Layout","v-90fdf4e6").then(n)}},{name:"v-114a7465",path:"/v6-to-v8-migration.html",component:Cs,beforeEnter:(e,t,n)=>{fs("Layout","v-114a7465").then(n)}},{path:"*",component:Cs}],$s={title:"Ajv JSON schema validator",description:"The fastest JSON schema Validator. Supports JSON Schema draft-04/06/07/2019-09/2020-12 and JSON Type Definition (RFC8927)",base:"/",headTags:[["link",{rel:"icon",href:"/favicon.ico"}],["meta",{charset:"utf-8"}],["meta",{property:"og:title",content:"Ajv JSON schema validator"}],["meta",{property:"og:description",content:"The fastest JSON schema Validator. Supports JSON Schema draft-04/06/07/2019-09/2020-12 and JSON Type Definition (RFC8927)"}],["meta",{property:"og:image",content:"https://ajv.js.org/img/ajv.png"}],["meta",{itemprop:"image",content:"https://ajv.js.org/img/ajv.png"}],["meta",{name:"twitter:card",content:"summary"}],["meta",{name:"twitter:title",content:"Ajv JSON schema validator"}],["meta",{name:"twitter:image:src",content:"https://ajv.js.org/img/ajv.png"}],["meta",{name:"apple-mobile-web-app-capable",content:"yes"}],["link",{rel:"apple-touch-icon",href:"/img/apple-touch-icon.png"}]],pages:[{frontmatter:{homepage:!0,sidebar:!1},regularPath:"/",relativePath:"README.md",key:"v-2216e8dc",path:"/",headers:[{level:2,title:"Security and reliability for JavaScript applications",slug:"security-and-reliability-for-javascript-applications"},{level:3,title:"Write less code",slug:"write-less-code"},{level:3,title:"Super fast & secure",slug:"super-fast-secure"},{level:3,title:"Multi-standard",slug:"multi-standard"},{level:2,title:"Ajv sponsors",slug:"ajv-sponsors"},{level:2,title:"What users say",slug:"what-users-say"},{level:2,title:"News",slug:"news"},{level:2,title:"Who uses Ajv",slug:"who-uses-ajv"},{level:2,title:"Contributors",slug:"contributors"}]},{title:"API Reference",frontmatter:{},regularPath:"/api.html",relativePath:"api.md",key:"v-0b4d4089",path:"/api.html",headers:[{level:2,title:"Ajv constructor and methods",slug:"ajv-constructor-and-methods"},{level:3,title:"new Ajv(options: object)",slug:"new-ajv-options-object"},{level:3,title:"ajv.compile(schema: object): (data: any) => boolean | Promise",slug:"ajv-compile-schema-object-data-any-boolean-promise-any"},{level:3,title:"ajv.compileSerializer(schema: object): (data: any) => string",slug:"ajv-compileserializer-schema-object-data-any-string"},{level:3,title:"ajv.compileParser(schema: object): (json: string) => any",slug:"ajv-compileparser-schema-object-json-string-any"},{level:3,title:"ajv.compileAsync(schema: object, meta?: boolean): Promise",slug:"ajv-compileasync-schema-object-meta-boolean-promise-function"},{level:3,title:"ajv.validate(schemaOrRef: object | string, data: any): boolean",slug:"ajv-validate-schemaorref-object-string-data-any-boolean"},{level:3,title:"ajv.addSchema(schema: object | object[], key?: string): Ajv",slug:"ajv-addschema-schema-object-object-key-string-ajv"},{level:3,title:"ajv.addMetaSchema(schema: object | object[], key?: string): Ajv",slug:"ajv-addmetaschema-schema-object-object-key-string-ajv"},{level:3,title:"ajv.validateSchema(schema: object): boolean",slug:"ajv-validateschema-schema-object-boolean"},{level:3,title:"ajv.getSchema(key: string): undefined | ((data: any) => boolean | Promise )",slug:"ajv-getschema-key-string-undefined-data-any-boolean-promise-any"},{level:3,title:"ajv.removeSchema(schemaOrRef: object | string | RegExp): Ajv",slug:"ajv-removeschema-schemaorref-object-string-regexp-ajv"},{level:3,title:"ajv.addFormat(name: string, format: Format): Ajv",slug:"ajv-addformat-name-string-format-format-ajv"},{level:3,title:"ajv.addKeyword(definition: string | object): Ajv",slug:"ajv-addkeyword-definition-string-object-ajv"},{level:3,title:"ajv.getKeyword(keyword: string): object | boolean",slug:"ajv-getkeyword-keyword-string-object-boolean"},{level:3,title:"ajv.removeKeyword(keyword: string): Ajv",slug:"ajv-removekeyword-keyword-string-ajv"},{level:3,title:"ajv.errorsText(errors?: object[], options?: object): string",slug:"ajv-errorstext-errors-object-options-object-string"},{level:2,title:"Validation errors",slug:"validation-errors"},{level:3,title:"Error objects",slug:"error-objects"},{level:3,title:"Error parameters",slug:"error-parameters"},{level:3,title:"Errors i18n",slug:"errors-i18n"},{level:3,title:"Error logging",slug:"error-logging"}]},{title:"Code generation design",frontmatter:{},regularPath:"/codegen.html",relativePath:"codegen.md",key:"v-7eb94829",path:"/codegen.html",headers:[{level:2,title:"Safe code generation",slug:"safe-code-generation"},{level:2,title:"Code optimization",slug:"code-optimization"},{level:2,title:"User-defined keywords",slug:"user-defined-keywords"}]},{title:"Contributor Covenant Code of Conduct",frontmatter:{permalink:"/code_of_conduct"},regularPath:"/code_of_conduct.html",relativePath:"code_of_conduct.md",key:"v-094b9dee",path:"/code_of_conduct/",headers:[{level:3,title:"Our Pledge",slug:"our-pledge"},{level:3,title:"Our Standards",slug:"our-standards"},{level:3,title:"Our Responsibilities",slug:"our-responsibilities"},{level:3,title:"Scope",slug:"scope"},{level:3,title:"Enforcement",slug:"enforcement"},{level:3,title:"Attribution",slug:"attribution"}]},{title:"Type coercion rules",frontmatter:{},regularPath:"/coercion.html",relativePath:"coercion.md",key:"v-29ebca8e",path:"/coercion.html",headers:[{level:2,title:"Coercion from string values",slug:"coercion-from-string-values"},{level:2,title:"Coercion from number values",slug:"coercion-from-number-values"},{level:2,title:"Coercion from boolean values",slug:"coercion-from-boolean-values"},{level:2,title:"Coercion from null",slug:"coercion-from-null"},{level:2,title:"Coercion to and from array",slug:"coercion-to-and-from-array"}]},{title:"Frequently Asked Questions",frontmatter:{},regularPath:"/faq.html",relativePath:"faq.md",key:"v-003ee409",path:"/faq.html",headers:[{level:2,title:"Using JSON schema",slug:"using-json-schema"},{level:2,title:"Ajv API for returning validation errors",slug:"ajv-api-for-returning-validation-errors"},{level:2,title:"Additional properties inside compound keywords anyOf, oneOf, etc.",slug:"additional-properties-inside-compound-keywords-anyof-oneof-etc"},{level:2,title:"Generating schemas with resolved references ($ref)",slug:"generating-schemas-with-resolved-references-ref"}]},{title:"Contributing guide",frontmatter:{permalink:"/contributing"},regularPath:"/contributing.html",relativePath:"contributing.md",key:"v-126ea6be",path:"/contributing/",headers:[{level:2,title:"Documentation",slug:"documentation"},{level:2,title:"Issues",slug:"issues"},{level:3,title:"Bug reports",slug:"bug-reports"},{level:3,title:"Security vulnerabilities",slug:"security-vulnerabilities"},{level:3,title:"Change proposals",slug:"change-proposals"},{level:3,title:"Browser and compatibility issues",slug:"browser-and-compatibility-issues"},{level:3,title:"Installation and dependency issues",slug:"installation-and-dependency-issues"},{level:3,title:"Using JSON Schema standard",slug:"using-json-schema-standard"},{level:3,title:"Ajv usage questions",slug:"ajv-usage-questions"},{level:2,title:"Code",slug:"code"},{level:3,title:"How we make decisions",slug:"how-we-make-decisions"},{level:3,title:"Development",slug:"development"},{level:3,title:"Pull requests",slug:"pull-requests"},{level:3,title:"Contributions license",slug:"contributions-license"}]},{title:"Asynchronous validation",frontmatter:{},regularPath:"/guide/async-validation.html",relativePath:"guide/async-validation.md",key:"v-4d7f1c8a",path:"/guide/async-validation.html",headers:[{level:3,title:"Using transpilers",slug:"using-transpilers"}]},{title:"Combining schemas",frontmatter:{},regularPath:"/guide/combining-schemas.html",relativePath:"guide/combining-schemas.md",key:"v-83a41dee",path:"/guide/combining-schemas.html",headers:[{level:2,title:"Combining schemas with $ref",slug:"combining-schemas-with-ref"},{level:2,title:"Extending recursive schemas",slug:"extending-recursive-schemas"},{level:2,title:"$data reference",slug:"data-reference"},{level:2,title:"$merge and $patch keywords",slug:"merge-and-patch-keywords"}]},{title:"Format validation",frontmatter:{},regularPath:"/guide/formats.html",relativePath:"guide/formats.md",key:"v-d1f646ae",path:"/guide/formats.html",headers:[{level:2,title:"String formats",slug:"string-formats"},{level:2,title:"User-defined formats",slug:"user-defined-formats"},{level:2,title:"Formats and standalone validation code",slug:"formats-and-standalone-validation-code"}]},{title:"Code components",frontmatter:{},regularPath:"/components.html",relativePath:"components.md",key:"v-51aaf849",path:"/components.html",headers:[{level:2,title:"Ajv classes",slug:"ajv-classes"},{level:2,title:"Schema compilation",slug:"schema-compilation"},{level:2,title:"Other components",slug:"other-components"}]},{title:"Execution environments",frontmatter:{},regularPath:"/guide/environments.html",relativePath:"guide/environments.md",key:"v-49301ee2",path:"/guide/environments.html",headers:[{level:2,title:"Server-side Node.js",slug:"server-side-node-js"},{level:2,title:"Short-lived environments",slug:"short-lived-environments"},{level:2,title:"Browsers",slug:"browsers"},{level:2,title:"ES5 environments",slug:"es5-environments"},{level:2,title:"CJS vs ESM exports",slug:"cjs-vs-esm-exports"},{level:2,title:"Other JavaScript environments",slug:"other-javascript-environments"},{level:2,title:"Command line interface",slug:"command-line-interface"}]},{title:"Getting started",frontmatter:{},regularPath:"/guide/getting-started.html",relativePath:"guide/getting-started.md",key:"v-464fd629",path:"/guide/getting-started.html",headers:[{level:2,title:"Install",slug:"install"},{level:2,title:"Basic data validation",slug:"basic-data-validation"},{level:2,title:"Parsing and serializing JSON",slug:"parsing-and-serializing-json"}]},{title:"Managing schemas",frontmatter:{},regularPath:"/guide/managing-schemas.html",relativePath:"guide/managing-schemas.md",key:"v-7cca31fe",path:"/guide/managing-schemas.html",headers:[{level:2,title:"Re-using validation functions",slug:"re-using-validation-functions"},{level:2,title:"Standalone validation code",slug:"standalone-validation-code"},{level:2,title:"Compiling during initialization",slug:"compiling-during-initialization"},{level:2,title:"Using Ajv instance cache",slug:"using-ajv-instance-cache"},{level:3,title:"Cache key: schema vs key vs $id",slug:"cache-key-schema-vs-key-vs-id"},{level:3,title:"Pre-adding all schemas vs adding on demand",slug:"pre-adding-all-schemas-vs-adding-on-demand"},{level:3,title:"Asynchronous schema loading",slug:"asynchronous-schema-loading"},{level:2,title:"Caching schemas in your code",slug:"caching-schemas-in-your-code"}]},{title:"Modifying data during validation",frontmatter:{},regularPath:"/guide/modifying-data.html",relativePath:"guide/modifying-data.md",key:"v-b5351e9e",path:"/guide/modifying-data.html",headers:[{level:2,title:"General considerations",slug:"general-considerations"},{level:2,title:"Removing additional properties",slug:"removing-additional-properties"},{level:2,title:"Assigning defaults",slug:"assigning-defaults"},{level:2,title:"Coercing data types",slug:"coercing-data-types"}]},{title:"Choosing schema language",frontmatter:{tags:["JTD"]},regularPath:"/guide/schema-language.html",relativePath:"guide/schema-language.md",key:"v-76cafeae",path:"/guide/schema-language.html",headers:[{level:2,title:"JSON Type Definition",slug:"json-type-definition"},{level:2,title:"JSON Schema",slug:"json-schema"},{level:3,title:"draft-04",slug:"draft-04"},{level:3,title:"draft-07 (and draft-06)",slug:"draft-07-and-draft-06"},{level:3,title:"draft 2019-09 (and draft-2020-12)",slug:"draft-2019-09-and-draft-2020-12"},{level:2,title:"Comparison",slug:"comparison"},{level:3,title:"JSON Schema",slug:"json-schema-2"},{level:3,title:"JSON Type Definition",slug:"json-type-definition-2"}]},{title:"User-defined keywords",frontmatter:{},regularPath:"/guide/user-keywords.html",relativePath:"guide/user-keywords.md",key:"v-62aa1369",path:"/guide/user-keywords.html"},{title:"Why use AJV",frontmatter:{},regularPath:"/guide/why-ajv.html",relativePath:"guide/why-ajv.md",key:"v-3ad539ae",path:"/guide/why-ajv.html",headers:[{level:2,title:"Write less code",slug:"write-less-code"},{level:2,title:"Super fast & secure",slug:"super-fast-secure"},{level:2,title:"Multi-standard",slug:"multi-standard"}]},{title:"Using with TypeScript",frontmatter:{},regularPath:"/guide/typescript.html",relativePath:"guide/typescript.md",key:"v-f3391bf6",path:"/guide/typescript.html",headers:[{level:2,title:"Additional functionality",slug:"additional-functionality"},{level:2,title:"Utility types for schemas",slug:"utility-types-for-schemas"},{level:2,title:"Utility type for JTD data type",slug:"utility-type-for-jtd-data-type"},{level:2,title:"Type-safe error handling",slug:"type-safe-error-handling"},{level:2,title:"Type-safe parsers and serializers",slug:"type-safe-parsers-and-serializers"},{level:2,title:"Type-safe unions",slug:"type-safe-unions"}]},{title:"JSON Schema",frontmatter:{},regularPath:"/json-schema.html",relativePath:"json-schema.md",key:"v-5e92fa09",path:"/json-schema.html",headers:[{level:2,title:"JSON Schema versions",slug:"json-schema-versions"},{level:3,title:"draft-07",slug:"draft-07"},{level:3,title:"draft-2019-09",slug:"draft-2019-09"},{level:3,title:"draft-2020-12",slug:"draft-2020-12"},{level:3,title:"draft-06",slug:"draft-06"},{level:3,title:"draft-04",slug:"draft-04"},{level:2,title:"OpenAPI support",slug:"openapi-support"},{level:2,title:"JSON data type",slug:"json-data-type"},{level:3,title:"type",slug:"type"},{level:3,title:"nullable",slug:"nullable"},{level:2,title:"Keywords for numbers",slug:"keywords-for-numbers"},{level:3,title:"maximum / minimum and exclusiveMaximum / exclusiveMinimum",slug:"maximum-minimum-and-exclusivemaximum-exclusiveminimum"},{level:3,title:"multipleOf",slug:"multipleof"},{level:2,title:"Keywords for strings",slug:"keywords-for-strings"},{level:3,title:"maxLength / minLength",slug:"maxlength-minlength"},{level:3,title:"pattern",slug:"pattern"},{level:3,title:"format",slug:"format"},{level:2,title:"Keywords for arrays",slug:"keywords-for-arrays"},{level:3,title:"maxItems / minItems",slug:"maxitems-minitems"},{level:3,title:"uniqueItems",slug:"uniqueitems"},{level:3,title:"items",slug:"items"},{level:3,title:"prefixItems",slug:"prefixitems"},{level:3,title:"additionalItems",slug:"additionalitems"},{level:3,title:"contains",slug:"contains"},{level:3,title:"maxContains / minContains",slug:"maxcontains-mincontains"},{level:3,title:"unevaluatedItems",slug:"unevaluateditems"},{level:2,title:"Keywords for objects",slug:"keywords-for-objects"},{level:3,title:"maxProperties / minProperties",slug:"maxproperties-minproperties"},{level:3,title:"required",slug:"required"},{level:3,title:"properties",slug:"properties"},{level:3,title:"patternProperties",slug:"patternproperties"},{level:3,title:"additionalProperties",slug:"additionalproperties"},{level:3,title:"dependencies",slug:"dependencies"},{level:3,title:"dependentRequired",slug:"dependentrequired"},{level:3,title:"dependentSchemas",slug:"dependentschemas"},{level:3,title:"propertyNames",slug:"propertynames"},{level:3,title:"unevaluatedProperties",slug:"unevaluatedproperties"},{level:3,title:"discriminator",slug:"discriminator"},{level:2,title:"Keywords for all types",slug:"keywords-for-all-types"},{level:3,title:"enum",slug:"enum"},{level:3,title:"const",slug:"const"},{level:2,title:"Compound keywords",slug:"compound-keywords"},{level:3,title:"not",slug:"not"},{level:3,title:"oneOf",slug:"oneof"},{level:3,title:"anyOf",slug:"anyof"},{level:3,title:"allOf",slug:"allof"},{level:3,title:"if/then/else",slug:"if-then-else"},{level:2,title:"Metadata keywords",slug:"metadata-keywords"}]},{title:"JSON Type Definition",frontmatter:{},regularPath:"/json-type-definition.html",relativePath:"json-type-definition.md",key:"v-8de1af1a",path:"/json-type-definition.html",headers:[{level:2,title:"JTD schema forms",slug:"jtd-schema-forms"},{level:3,title:"Type form",slug:"type-form"},{level:3,title:"Enum form",slug:"enum-form"},{level:3,title:"Elements form",slug:"elements-form"},{level:3,title:"Properties form",slug:"properties-form"},{level:3,title:"Discriminator form",slug:"discriminator-form"},{level:3,title:"Values form",slug:"values-form"},{level:3,title:"Ref form",slug:"ref-form"},{level:3,title:"Empty form",slug:"empty-form"},{level:2,title:"JTDSchemaType",slug:"jtdschematype"},{level:3,title:"Most Schemas",slug:"most-schemas"},{level:3,title:"Ref Schemas",slug:"ref-schemas"},{level:3,title:"Notable Omissions",slug:"notable-omissions"},{level:2,title:"Extending JTD",slug:"extending-jtd"},{level:3,title:"Metadata schema member",slug:"metadata-schema-member"},{level:3,title:"Union keyword",slug:"union-keyword"},{level:3,title:"User-defined keywords",slug:"user-defined-keywords"},{level:2,title:"Validation errors",slug:"validation-errors"}]},{title:"User defined keywords",frontmatter:{},regularPath:"/keywords.html",relativePath:"keywords.md",key:"v-48953121",path:"/keywords.html",headers:[{level:2,title:"Common attributes of keyword definitions",slug:"common-attributes-of-keyword-definitions"},{level:3,title:"Define keyword with code generation function",slug:"define-keyword-with-code-generation-function"},{level:3,title:'Define keyword with "validate" function',slug:"define-keyword-with-validate-function"},{level:3,title:'Define keyword with "compile" function',slug:"define-keyword-with-compile-function"},{level:3,title:'Define keyword with "macro" function',slug:"define-keyword-with-macro-function"},{level:2,title:"Schema compilation context",slug:"schema-compilation-context"},{level:2,title:"Validation time variables",slug:"validation-time-variables"},{level:2,title:"Reporting errors",slug:"reporting-errors"}]},{frontmatter:{},regularPath:"/license.html",relativePath:"license.md",key:"v-1f38ca2e",path:"/license.html"},{title:"Mozilla MOSS grant and OpenJS Foundation",frontmatter:{news:!0,title:"Mozilla MOSS grant and OpenJS Foundation",date:"2020-08-14T00:00:00.000Z"},regularPath:"/news/2020-08-14-mozilla-grant-openjs-foundation.html",relativePath:"news/2020-08-14-mozilla-grant-openjs-foundation.md",key:"v-1dfe032e",path:"/news/2020-08-14-mozilla-grant-openjs-foundation.html",excerpt:'

\n

Ajv has been awarded a grant from Mozilla’s Open Source Support (MOSS) program in the “Foundational Technology” track! It will sponsor the development of Ajv support of JSON Schema version 2019-09 and of JSON Type Definition (RFC8927).

\n

Ajv also joined OpenJS Foundation – having this support will help ensure the longevity and stability of Ajv for all its users.

\n'},{title:"Ajv supports JSON Type Definition",frontmatter:{news:!0,title:"Ajv supports JSON Type Definition",date:"2021-03-07T00:00:00.000Z"},regularPath:"/news/2021-03-07-ajv-supports-json-type-definition.html",relativePath:"news/2021-03-07-ajv-supports-json-type-definition.md",key:"v-67c77489",path:"/news/2021-03-07-ajv-supports-json-type-definition.html",excerpt:'

JSON Type Definition (JTD) is a new specification for defining JSON structures that is very simple to use, comparing with JSON Schema, less error prone, and it is published as RFC8927.

\n

See Choosing schema language for a detailed comparison between JSON Schema and JSON Type definition and informal specification.

\n'},{title:"Ajv version 7 is released!",frontmatter:{news:!0,title:"Ajv version 7 is released!",date:"2020-12-15T00:00:00.000Z"},regularPath:"/news/2020-12-15-ajv-version-7-released.html",relativePath:"news/2020-12-15-ajv-version-7-released.md",key:"v-27531941",path:"/news/2020-12-15-ajv-version-7-released.html",excerpt:'

Ajv version 7 has these new features:

\n\n'},{title:"Ajv version 8 is released!",frontmatter:{news:!0,title:"Ajv version 8 is released!",date:"2021-03-27T00:00:00.000Z"},regularPath:"/news/2021-03-27-ajv-version-8-released.html",relativePath:"news/2021-03-27-ajv-version-8-released.md",key:"v-c918a5fa",path:"/news/2021-03-27-ajv-version-8-released.html",excerpt:'

Ajv version 8 has these new features:

\n\n'},{title:"Ajv online event - May 20, 10am PT / 6pm UK",frontmatter:{news:!0,title:"Ajv online event - May 20, 10am PT / 6pm UK",date:"2021-04-24T00:00:00.000Z",more:!1},regularPath:"/news/2021-04-24-ajv-online-event.html",relativePath:"news/2021-04-24-ajv-online-event.md",key:"v-5a94ae89",path:"/news/2021-04-24-ajv-online-event.html",excerpt:'

We will talk about:

\n
    \n
  • new features of Ajv version 8.
  • \n
  • the improvements sponsored by Mozilla\'s MOSS grant.
  • \n
  • how Ajv is used in JavaScript applications.
  • \n
\n

Speakers:

\n
    \n
  • Evgeny Poberezkin, the creator of Ajv.
  • \n
  • Mehan Jayasuriya, Program Officer at Mozilla Foundation, leading the MOSS and other programs investing in the open source and community ecosystems.
  • \n
  • Matteo Collina, Technical Director at NearForm and Node.js Technical Steering Committee member, creator of Fastify web framework.
  • \n
  • Kin Lane, Chief Evangelist at Postman. Studying the tech, business & politics of APIs since 2010. Presidential Innovation Fellow during the Obama administration.
  • \n
  • Ulysse Carion, the creator of JSON Type Definition specification.
  • \n
\n

Gajus Kuizinas will host the event.

\n

Please register here.

\n'},{title:"Ajv online event video uploaded",frontmatter:{news:!0,title:"Ajv online event video uploaded",date:"2021-05-24T00:00:00.000Z",more:!1},regularPath:"/news/2021-05-24-ajv-online-event-video.html",relativePath:"news/2021-05-24-ajv-online-event-video.md",key:"v-2abeb1ab",path:"/news/2021-05-24-ajv-online-event-video.html",excerpt:'

Huge thanks to everybody who joined, and to the speakers! The video of the event is available on YouTube.

\n'},{title:"Microsoft FOSS award",frontmatter:{news:!0,title:"Microsoft FOSS award",date:"2021-07-22T00:00:00.000Z",more:!1},regularPath:"/news/2021-07-22-ajv-microsoft-foss-fund-award.html",relativePath:"news/2021-07-22-ajv-microsoft-foss-fund-award.md",key:"v-959a2c2e",path:"/news/2021-07-22-ajv-microsoft-foss-fund-award.html",excerpt:'

Ajv was awarded a sponsorship from Microsoft FOSS fund - huge thanks to Microsoft and the engineers who voted to support Ajv development.

\n

This award will contribute to a long term maintenance of Ajv.

\n'},{title:"Ajv News",frontmatter:{newsIndex:!0,editLink:!1},regularPath:"/news/",relativePath:"news/README.md",key:"v-506a67bc",path:"/news/"},{title:"Extending Ajv",frontmatter:{},regularPath:"/packages/",relativePath:"packages/README.md",key:"v-07fb5e62",path:"/packages/",headers:[{level:2,title:"Plugins",slug:"plugins"},{level:2,title:"Related packages",slug:"related-packages"}]},{frontmatter:{editLink:"https://github.com/ajv-validator/ajv-cli/edit/master/README.md"},regularPath:"/packages/ajv-cli.html",relativePath:"packages/ajv-cli.md",key:"v-19f2c039",path:"/packages/ajv-cli.html",headers:[{level:2,title:"Contents",slug:"contents"},{level:2,title:"Installation",slug:"installation"},{level:2,title:"JSON schema language and version",slug:"json-schema-language-and-version"},{level:2,title:"Commands",slug:"commands"},{level:3,title:"Help command",slug:"help-command"},{level:3,title:"Validate data",slug:"validate-data"},{level:3,title:"Compile schemas",slug:"compile-schemas"},{level:3,title:"Migrate schemas",slug:"migrate-schemas"},{level:3,title:"Test validation result",slug:"test-validation-result"},{level:2,title:"Ajv options",slug:"ajv-options"},{level:2,title:"Version History",slug:"version-history"},{level:2,title:"Licence",slug:"licence"}]},{frontmatter:{editLink:"https://github.com/ajv-validator/ajv-formats/edit/master/README.md"},regularPath:"/packages/ajv-formats.html",relativePath:"packages/ajv-formats.md",key:"v-6731dec1",path:"/packages/ajv-formats.html",headers:[{level:2,title:"Usage",slug:"usage"},{level:2,title:"Formats",slug:"formats"},{level:2,title:"Keywords to compare values: formatMaximum / formatMinimum and formatExclusiveMaximum / formatExclusiveMinimum",slug:"keywords-to-compare-values-formatmaximum-formatminimum-and-formatexclusivemaximum-formatexclusiveminimum"},{level:2,title:"Options",slug:"options"},{level:2,title:"Tests",slug:"tests"},{level:2,title:"License",slug:"license"}]},{title:"Ajv options",frontmatter:{},regularPath:"/options.html",relativePath:"options.md",key:"v-7bf93309",path:"/options.html",headers:[{level:2,title:"Usage",slug:"usage"},{level:2,title:"Option defaults",slug:"option-defaults"},{level:2,title:"Strict mode options",slug:"strict-mode-options"},{level:3,title:"strict",slug:"strict"},{level:3,title:"strictSchema",slug:"strictschema"},{level:3,title:"strictNumbers",slug:"strictnumbers"},{level:3,title:"strictTypes",slug:"stricttypes"},{level:3,title:"strictTuples",slug:"stricttuples"},{level:3,title:"strictRequired",slug:"strictrequired"},{level:3,title:"allowUnionTypes",slug:"allowuniontypes"},{level:3,title:"allowMatchingProperties",slug:"allowmatchingproperties"},{level:3,title:"validateFormats",slug:"validateformats"},{level:2,title:"Validation and reporting options",slug:"validation-and-reporting-options"},{level:3,title:"$data",slug:"data"},{level:3,title:"allErrors",slug:"allerrors"},{level:3,title:"verbose",slug:"verbose"},{level:3,title:"discriminator",slug:"discriminator"},{level:3,title:"unicodeRegExp",slug:"unicoderegexp"},{level:3,title:"timestamp",slug:"timestamp"},{level:3,title:"parseDate",slug:"parsedate"},{level:3,title:"allowDate",slug:"allowdate"},{level:3,title:"int32range",slug:"int32range"},{level:3,title:"$comment",slug:"comment"},{level:3,title:"formats",slug:"formats"},{level:3,title:"keywords",slug:"keywords"},{level:3,title:"schemas",slug:"schemas"},{level:3,title:"logger",slug:"logger"},{level:3,title:"loadSchema",slug:"loadschema"},{level:2,title:"Options to modify validated data",slug:"options-to-modify-validated-data"},{level:3,title:"removeAdditional",slug:"removeadditional"},{level:3,title:"useDefaults",slug:"usedefaults"},{level:3,title:"coerceTypes",slug:"coercetypes"},{level:2,title:"Advanced options",slug:"advanced-options"},{level:3,title:"meta",slug:"meta"},{level:3,title:"validateSchema",slug:"validateschema"},{level:3,title:"addUsedSchema",slug:"addusedschema"},{level:3,title:"inlineRefs",slug:"inlinerefs"},{level:3,title:"passContext",slug:"passcontext"},{level:3,title:"loopRequired",slug:"looprequired"},{level:3,title:"loopEnum",slug:"loopenum"},{level:3,title:"ownProperties",slug:"ownproperties"},{level:3,title:"multipleOfPrecision",slug:"multipleofprecision"},{level:3,title:"messages",slug:"messages"},{level:3,title:"uriResolver",slug:"uriresolver"},{level:3,title:"code",slug:"code"}]},{frontmatter:{editLink:"https://github.com/ajv-validator/ajv-errors/edit/master/README.md"},regularPath:"/packages/ajv-errors.html",relativePath:"packages/ajv-errors.md",key:"v-b99d2c2e",path:"/packages/ajv-errors.html",headers:[{level:2,title:"Contents",slug:"contents"},{level:2,title:"Install",slug:"install"},{level:2,title:"Usage",slug:"usage"},{level:3,title:"Single message",slug:"single-message"},{level:3,title:"Messages for keywords",slug:"messages-for-keywords"},{level:3,title:"Messages for properties and items",slug:"messages-for-properties-and-items"},{level:3,title:"Default message",slug:"default-message"},{level:2,title:"Templates",slug:"templates"},{level:2,title:"Options",slug:"options"},{level:2,title:"Supporters",slug:"supporters"},{level:2,title:"Enterprise support",slug:"enterprise-support"},{level:2,title:"Security contact",slug:"security-contact"},{level:2,title:"License",slug:"license"}]},{frontmatter:{editLink:"https://github.com/ajv-validator/ajv-i18n/edit/master/README.md"},regularPath:"/packages/ajv-i18n.html",relativePath:"packages/ajv-i18n.md",key:"v-7f55ccc9",path:"/packages/ajv-i18n.html",headers:[{level:2,title:"Supported locales",slug:"supported-locales"},{level:2,title:"Install",slug:"install"},{level:2,title:"Usage",slug:"usage"},{level:2,title:"Tests",slug:"tests"},{level:2,title:"Contributing",slug:"contributing"},{level:2,title:"Contributors of locales",slug:"contributors-of-locales"},{level:2,title:"Enterprise support",slug:"enterprise-support"},{level:2,title:"Security contact",slug:"security-contact"},{level:2,title:"License",slug:"license"}]},{frontmatter:{editLink:"https://github.com/ajv-validator/ajv-keywords/edit/master/README.md"},regularPath:"/packages/ajv-keywords.html",relativePath:"packages/ajv-keywords.md",key:"v-bf7e876e",path:"/packages/ajv-keywords.html",headers:[{level:2,title:"Contents",slug:"contents"},{level:2,title:"Install",slug:"install"},{level:2,title:"Usage",slug:"usage"},{level:2,title:"Keywords",slug:"keywords"},{level:3,title:"Types",slug:"types"},{level:3,title:"Keywords for numbers",slug:"keywords-for-numbers"},{level:3,title:"Keywords for strings",slug:"keywords-for-strings"},{level:3,title:"Keywords for arrays",slug:"keywords-for-arrays"},{level:3,title:"Keywords for objects",slug:"keywords-for-objects"},{level:3,title:"Keywords for all types",slug:"keywords-for-all-types"},{level:2,title:"Security contact",slug:"security-contact"},{level:2,title:"Open-source software support",slug:"open-source-software-support"},{level:2,title:"License",slug:"license"}]},{title:"Security considerations",frontmatter:{},regularPath:"/security.html",relativePath:"security.md",key:"v-bb53a316",path:"/security.html",headers:[{level:2,title:"Security contact",slug:"security-contact"},{level:2,title:"Untrusted schemas",slug:"untrusted-schemas"},{level:2,title:"Circular references in JavaScript objects",slug:"circular-references-in-javascript-objects"},{level:2,title:"Security risks of trusted schemas",slug:"security-risks-of-trusted-schemas"},{level:2,title:"ReDoS attack",slug:"redos-attack"},{level:2,title:"Content Security Policy",slug:"content-security-policy"}]},{title:"Strict mode",frontmatter:{},regularPath:"/strict-mode.html",relativePath:"strict-mode.md",key:"v-74774829",path:"/strict-mode.html",headers:[{level:2,title:"JSON Type Definition schemas",slug:"json-type-definition-schemas"},{level:2,title:"JSON Schema schemas",slug:"json-schema-schemas"},{level:3,title:"Prohibit ignored keywords",slug:"prohibit-ignored-keywords"},{level:3,title:"Prevent unexpected validation",slug:"prevent-unexpected-validation"},{level:3,title:"Strict types",slug:"strict-types"},{level:3,title:"Strict number validation",slug:"strict-number-validation"}]},{title:"Standalone validation code",frontmatter:{},regularPath:"/standalone.html",relativePath:"standalone.md",key:"v-20f55eeb",path:"/standalone.html",headers:[{level:2,title:"Two-step process",slug:"two-step-process"},{level:3,title:"Generating function(s) using CLI",slug:"generating-function-s-using-cli"},{level:3,title:"Generating using the JS library",slug:"generating-using-the-js-library"},{level:2,title:"Using the validation function(s)",slug:"using-the-validation-function-s"},{level:3,title:"Validating a single schemas using the JS library - ES6 and CJS",slug:"validating-a-single-schemas-using-the-js-library-es6-and-cjs"},{level:3,title:"Validating multiple schemas using the JS library - ES6 and CJS",slug:"validating-multiple-schemas-using-the-js-library-es6-and-cjs"},{level:3,title:"Validating multiple schemas using the JS library - ES6 and ESM",slug:"validating-multiple-schemas-using-the-js-library-es6-and-esm"},{level:3,title:"Requirement at runtime",slug:"requirement-at-runtime"},{level:2,title:"Configuration and limitations",slug:"configuration-and-limitations"}]},{title:"What users say",frontmatter:{},regularPath:"/testimonials.html",relativePath:"testimonials.md",key:"v-90fdf4e6",path:"/testimonials.html"},{title:"Changes from Ajv v6.12.6 to v8.0.0",frontmatter:{},regularPath:"/v6-to-v8-migration.html",relativePath:"v6-to-v8-migration.md",key:"v-114a7465",path:"/v6-to-v8-migration.html",headers:[{level:2,title:"New features",slug:"new-features"},{level:2,title:"Better TypeScript support",slug:"better-typescript-support"},{level:2,title:"Potential migration difficulties",slug:"potential-migration-difficulties"},{level:2,title:"API changes",slug:"api-changes"},{level:3,title:"Added options",slug:"added-options"},{level:3,title:"Changed options",slug:"changed-options"},{level:3,title:"Removed options",slug:"removed-options"}]}],themeConfig:{logo:"/img/ajv.svg",nav:[{text:"Home",link:"/"},{text:"Guide",items:[{link:"/guide/why-ajv",text:"Why use Ajv"},{link:"/guide/getting-started",text:"Getting started"},{link:"/guide/typescript",text:"Using with TypeScript"},{link:"/guide/schema-language",text:"Choosing schema language"},{link:"/guide/managing-schemas",text:"Managing schemas"},{link:"/guide/combining-schemas",text:"Combining schemas"},{link:"/guide/formats",text:"Format validation"},{link:"/guide/modifying-data",text:"Modifying data"},{link:"/guide/user-keywords",text:"User-defined keywords"},{link:"/guide/async-validation",text:"Asynchronous validation"},{link:"/guide/environments",text:"Execution environments"}]},{text:"Reference",items:[{link:"/api",text:"API Reference"},{link:"/options",text:"Ajv options"},{link:"/json-schema",text:"JSON Schema"},{link:"/json-type-definition",text:"JSON Type Definition"},{link:"/strict-mode",text:"Strict mode"},{link:"/standalone",text:"Standalone validation code"},{link:"/keywords",text:"User defined keywords"},{link:"/coercion",text:"Type coercion rules"}]},{text:"Learn more",items:[{text:"Extending Ajv",items:[{link:"/packages/",text:"Extending Ajv"},{link:"/packages/ajv-cli",text:"ajv-cli"},{link:"/packages/ajv-errors",text:"ajv-errors"},{link:"/packages/ajv-formats",text:"ajv-formats"},{link:"/packages/ajv-i18n",text:"ajv-i18n"},{link:"/packages/ajv-keywords",text:"ajv-keywords"}]},{text:"Contributors",items:[{link:"/contributing",text:"Contributing guide"},{link:"/codegen",text:"Code generation design"},{link:"/components",text:"Code components"},{link:"/code_of_conduct",text:"Code of Conduct"}]},{text:"Information",items:[{link:"/news/",text:"News"},{link:"/faq",text:"FAQ"},{link:"/security",text:"Security"},{link:"/v6-to-v8-migration",text:"Migrate from v6"},{link:"/testimonials",text:"What users say"},{link:"/license",text:"License"}]}]}],sidebar:[{title:"Guide",children:["/guide/why-ajv","/guide/getting-started","/guide/typescript","/guide/schema-language","/guide/managing-schemas","/guide/combining-schemas","/guide/formats","/guide/modifying-data","/guide/user-keywords","/guide/async-validation","/guide/environments"]},{title:"Reference",children:["/api","/options","/json-schema","/json-type-definition","/strict-mode","/standalone","/keywords","/coercion"]},{title:"Extending Ajv",children:[["/packages/","Extending Ajv"],["/packages/ajv-formats","ajv-formats"],["/packages/ajv-keywords","ajv-keywords"],["/packages/ajv-errors","ajv-errors"],["/packages/ajv-i18n","ajv-i18n"],["/packages/ajv-cli","ajv-cli"]]},{title:"Contributors",children:["/contributing","/codegen","/components",["/code_of_conduct","Code of conduct"]]},{title:"Information",children:["/news/","/faq","/security",["/v6-to-v8-migration","Migrate from v6 to v8"],"/testimonials",["/license","License"]]}],repo:"ajv-validator/ajv",docsDir:"docs",editLinks:!0,activeHeaderLinks:!1}};n(233);Kn.component("Button",()=>Promise.all([n.e(0),n.e(25)]).then(n.bind(null,377))),Kn.component("Column",()=>Promise.all([n.e(0),n.e(26)]).then(n.bind(null,378))),Kn.component("Columns",()=>Promise.all([n.e(0),n.e(27)]).then(n.bind(null,434))),Kn.component("Contributors",()=>Promise.all([n.e(0),n.e(21)]).then(n.bind(null,379))),Kn.component("Feature",()=>Promise.all([n.e(0),n.e(22)]).then(n.bind(null,380))),Kn.component("Features",()=>Promise.all([n.e(0),n.e(28)]).then(n.bind(null,435))),Kn.component("FooterColumn",()=>Promise.all([n.e(0),n.e(29)]).then(n.bind(null,381))),Kn.component("FooterColumns",()=>Promise.all([n.e(0),n.e(30)]).then(n.bind(null,436))),Kn.component("GitHub",()=>Promise.all([n.e(0),n.e(31)]).then(n.bind(null,382))),Kn.component("HeroSection",()=>Promise.all([n.e(0),n.e(23)]).then(n.bind(null,437))),Kn.component("HomePage",()=>Promise.all([n.e(0),n.e(32)]).then(n.bind(null,438))),Kn.component("HomeSection",()=>Promise.all([n.e(0),n.e(33)]).then(n.bind(null,383))),Kn.component("NewsHome",()=>Promise.all([n.e(0),n.e(34)]).then(n.bind(null,384))),Kn.component("NewsIndex",()=>n.e(43).then(n.bind(null,385))),Kn.component("NewsPost",()=>Promise.all([n.e(0),n.e(14)]).then(n.bind(null,386))),Kn.component("Projects",()=>Promise.all([n.e(0),n.e(35)]).then(n.bind(null,439))),Kn.component("NewsPostMeta",()=>Promise.all([n.e(0),n.e(18)]).then(n.bind(null,387))),Kn.component("Sponsors",()=>Promise.all([n.e(0),n.e(36)]).then(n.bind(null,388))),Kn.component("Subscribe",()=>Promise.all([n.e(0),n.e(37)]).then(n.bind(null,440))),Kn.component("Testimonial",()=>Promise.all([n.e(0),n.e(38)]).then(n.bind(null,389))),Kn.component("Testimonials",()=>Promise.all([n.e(0),n.e(39)]).then(n.bind(null,441))),Kn.component("Badge",()=>Promise.all([n.e(0),n.e(4)]).then(n.bind(null,390))),Kn.component("CodeBlock",()=>Promise.all([n.e(0),n.e(5)]).then(n.bind(null,373))),Kn.component("CodeGroup",()=>Promise.all([n.e(0),n.e(6)]).then(n.bind(null,374)));n(234);var Es=[{},({Vue:e})=>{e.mixin({computed:{$dataBlock(){return this.$options.__data__block__}}})},{},{}],As=[];class Ts extends class{constructor(){this.store=new Kn({data:{state:{}}})}$get(e){return this.store.state[e]}$set(e,t){Kn.set(this.store.state,e,t)}$emit(...e){this.store.$emit(...e)}$on(...e){this.store.$on(...e)}}{}Object.assign(Ts.prototype,{getPageAsyncComponent:ss,getLayoutAsyncComponent:ls,getAsyncComponent:us,getVueComponent:cs});var Ls={install(e){const t=new Ts;e.$vuepress=t,e.prototype.$vuepress=t}};function Rs(e,t){const n=t.toLowerCase();return e.options.routes.some(e=>e.path.toLowerCase()===n)}var Ms={props:{pageKey:String,slotKey:{type:String,default:"default"}},render(e){const t=this.pageKey||this.$parent.$page.key;return ps("pageKey",t),Kn.component(t)||Kn.component(t,ss(t)),Kn.component(t)?e(t):e("")}},Ns={functional:!0,props:{slotKey:String,required:!0},render:(e,{props:t,slots:n})=>e("div",{class:["content__"+t.slotKey]},n()[t.slotKey])},Is={computed:{openInNewWindowTitle(){return this.$themeLocaleConfig.openNewWindowText||"(opens new window)"}}},Ds=(n(235),n(236),Object(Os.a)(Is,(function(){var e=this._self._c;return e("span",[e("svg",{staticClass:"icon outbound",attrs:{xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",focusable:"false",x:"0px",y:"0px",viewBox:"0 0 100 100",width:"15",height:"15"}},[e("path",{attrs:{fill:"currentColor",d:"M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"}}),this._v(" "),e("polygon",{attrs:{fill:"currentColor",points:"45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"}})]),this._v(" "),e("span",{staticClass:"sr-only"},[this._v(this._s(this.openInNewWindowTitle))])])}),[],!1,null,null,null).exports),Fs={functional:!0,render(e,{parent:t,children:n}){if(t._isMounted)return n;t.$once("hook:mounted",()=>{t.$forceUpdate()})}};Kn.config.productionTip=!1,Kn.use(Va),Kn.use(Ls),Kn.mixin(function(e,t,n=Kn){!function(e){e.locales&&Object.keys(e.locales).forEach(t=>{e.locales[t].path=t});Object.freeze(e)}(t),n.$vuepress.$set("siteData",t);const r=new(e(n.$vuepress.$get("siteData"))),o=Object.getOwnPropertyDescriptors(Object.getPrototypeOf(r)),i={};return Object.keys(o).reduce((e,t)=>(t.startsWith("$")&&(e[t]=o[t].get),e),i),{computed:i}}(e=>class{setPage(e){this.__page=e}get $site(){return e}get $themeConfig(){return this.$site.themeConfig}get $frontmatter(){return this.$page.frontmatter}get $localeConfig(){const{locales:e={}}=this.$site;let t,n;for(const r in e)"/"===r?n=e[r]:0===this.$page.path.indexOf(r)&&(t=e[r]);return t||n||{}}get $siteTitle(){return this.$localeConfig.title||this.$site.title||""}get $canonicalUrl(){const{canonicalUrl:e}=this.$page.frontmatter;return"string"==typeof e&&e}get $title(){const e=this.$page,{metaTitle:t}=this.$page.frontmatter;if("string"==typeof t)return t;const n=this.$siteTitle,r=e.frontmatter.home?null:e.frontmatter.title||e.title;return n?r?r+" | "+n:n:r||"VuePress"}get $description(){const e=function(e){if(e){const t=e.filter(e=>"description"===e.name)[0];if(t)return t.content}}(this.$page.frontmatter.meta);return e||(this.$page.frontmatter.description||this.$localeConfig.description||this.$site.description||"")}get $lang(){return this.$page.frontmatter.lang||this.$localeConfig.lang||"en-US"}get $localePath(){return this.$localeConfig.path||"/"}get $themeLocaleConfig(){return(this.$site.themeConfig.locales||{})[this.$localePath]||{}}get $page(){return this.__page?this.__page:function(e,t){for(let n=0;nn||(e.hash?!Kn.$vuepress.$get("disableScrollBehavior")&&{selector:decodeURIComponent(e.hash)}:{x:0,y:0})});!function(e){e.beforeEach((t,n,r)=>{if(Rs(e,t.path))r();else if(/(\/|\.html)$/.test(t.path))if(/\/$/.test(t.path)){const n=t.path.replace(/\/$/,"")+".html";Rs(e,n)?r(n):r()}else r();else{const n=t.path+"/",o=t.path+".html";Rs(e,o)?r(o):Rs(e,n)?r(n):r()}})}(n);const r={};try{await Promise.all(Es.filter(e=>"function"==typeof e).map(t=>t({Vue:Kn,options:r,router:n,siteData:$s,isServer:e})))}catch(e){console.error(e)}return{app:new Kn(Object.assign(r,{router:n,render:e=>e("div",{attrs:{id:"app"}},[e("RouterView",{ref:"layout"}),e("div",{class:"global-ui"},As.map(t=>e(t)))])})),router:n}}(!1).then(({app:e,router:t})=>{t.onReady(()=>{e.$mount("#app")})})}]); \ No newline at end of file diff --git a/code_of_conduct/index.html b/code_of_conduct/index.html index a145c3e02..11dd6fe32 100644 --- a/code_of_conduct/index.html +++ b/code_of_conduct/index.html @@ -18,8 +18,8 @@ - - + +
- + diff --git a/codegen.html b/codegen.html index af1b842c4..9d4a4c006 100644 --- a/codegen.html +++ b/codegen.html @@ -18,8 +18,8 @@ - - + +
- + diff --git a/coercion.html b/coercion.html index 57f7ff1d7..083033069 100644 --- a/coercion.html +++ b/coercion.html @@ -18,8 +18,8 @@ - - + +
- + diff --git a/components.html b/components.html index d80036826..fa194a9ca 100644 --- a/components.html +++ b/components.html @@ -18,8 +18,8 @@ - - + +
- + diff --git a/contributing/index.html b/contributing/index.html index ea3533c97..f287c0fbb 100644 --- a/contributing/index.html +++ b/contributing/index.html @@ -18,8 +18,8 @@ - - + +
- + diff --git a/faq.html b/faq.html index 5b615e30a..ecbbf974b 100644 --- a/faq.html +++ b/faq.html @@ -18,8 +18,8 @@ - - + +
- + diff --git a/guide/async-validation.html b/guide/async-validation.html index b8ac32032..f704d9798 100644 --- a/guide/async-validation.html +++ b/guide/async-validation.html @@ -18,8 +18,8 @@ - - + +
- + diff --git a/guide/combining-schemas.html b/guide/combining-schemas.html index e374756bf..bd79b9d3e 100644 --- a/guide/combining-schemas.html +++ b/guide/combining-schemas.html @@ -18,8 +18,8 @@ - - + +
- + diff --git a/guide/environments.html b/guide/environments.html index 650701b8d..3781b753c 100644 --- a/guide/environments.html +++ b/guide/environments.html @@ -18,8 +18,8 @@ - - + +
- + diff --git a/guide/formats.html b/guide/formats.html index 5895abd19..4a752e834 100644 --- a/guide/formats.html +++ b/guide/formats.html @@ -18,8 +18,8 @@ - - + +
- + diff --git a/guide/getting-started.html b/guide/getting-started.html index 71c24d779..ec855c8f2 100644 --- a/guide/getting-started.html +++ b/guide/getting-started.html @@ -18,8 +18,8 @@ - - + +
- + diff --git a/guide/managing-schemas.html b/guide/managing-schemas.html index 7305ad657..482885104 100644 --- a/guide/managing-schemas.html +++ b/guide/managing-schemas.html @@ -18,8 +18,8 @@ - - + +
- + diff --git a/guide/modifying-data.html b/guide/modifying-data.html index 117213449..533124015 100644 --- a/guide/modifying-data.html +++ b/guide/modifying-data.html @@ -18,8 +18,8 @@ - - + +
- + diff --git a/guide/schema-language.html b/guide/schema-language.html index eaedd2420..e0948660c 100644 --- a/guide/schema-language.html +++ b/guide/schema-language.html @@ -18,8 +18,8 @@ - - + +
- + diff --git a/guide/typescript.html b/guide/typescript.html index 646394787..1ec769d0d 100644 --- a/guide/typescript.html +++ b/guide/typescript.html @@ -18,8 +18,8 @@ - - + +
- + diff --git a/guide/user-keywords.html b/guide/user-keywords.html index 6abf383dc..99049b1d6 100644 --- a/guide/user-keywords.html +++ b/guide/user-keywords.html @@ -18,8 +18,8 @@ - - + +
- + diff --git a/guide/why-ajv.html b/guide/why-ajv.html index 3be777de6..caf39f446 100644 --- a/guide/why-ajv.html +++ b/guide/why-ajv.html @@ -18,8 +18,8 @@ - - + +
- + diff --git a/json-schema.html b/json-schema.html index 17550154e..ad4821e32 100644 --- a/json-schema.html +++ b/json-schema.html @@ -18,8 +18,8 @@ - - + +
- + diff --git a/json-type-definition.html b/json-type-definition.html index 2b3cc7f9e..213323d03 100644 --- a/json-type-definition.html +++ b/json-type-definition.html @@ -18,8 +18,8 @@ - - + +
- + diff --git a/keywords.html b/keywords.html index 356922e02..15177dd17 100644 --- a/keywords.html +++ b/keywords.html @@ -18,8 +18,8 @@ - - + +
- + diff --git a/license.html b/license.html index fccbe5421..1682dceac 100644 --- a/license.html +++ b/license.html @@ -18,8 +18,8 @@ - - + +
- + diff --git a/news/2020-08-14-mozilla-grant-openjs-foundation.html b/news/2020-08-14-mozilla-grant-openjs-foundation.html index d3f0a2fad..4b3860bb3 100644 --- a/news/2020-08-14-mozilla-grant-openjs-foundation.html +++ b/news/2020-08-14-mozilla-grant-openjs-foundation.html @@ -18,8 +18,8 @@ - - + +
- + diff --git a/news/2020-12-15-ajv-version-7-released.html b/news/2020-12-15-ajv-version-7-released.html index 12f49fe45..a961ba8b4 100644 --- a/news/2020-12-15-ajv-version-7-released.html +++ b/news/2020-12-15-ajv-version-7-released.html @@ -18,8 +18,8 @@ - - + +
- + diff --git a/news/2021-03-07-ajv-supports-json-type-definition.html b/news/2021-03-07-ajv-supports-json-type-definition.html index f3ba72ed1..7ad137aca 100644 --- a/news/2021-03-07-ajv-supports-json-type-definition.html +++ b/news/2021-03-07-ajv-supports-json-type-definition.html @@ -18,8 +18,8 @@ - - + +
- + diff --git a/news/2021-03-27-ajv-version-8-released.html b/news/2021-03-27-ajv-version-8-released.html index dcd9464b4..616b588ca 100644 --- a/news/2021-03-27-ajv-version-8-released.html +++ b/news/2021-03-27-ajv-version-8-released.html @@ -18,8 +18,8 @@ - - + +
- + diff --git a/news/2021-04-24-ajv-online-event.html b/news/2021-04-24-ajv-online-event.html index 9c6770642..d5380fbb5 100644 --- a/news/2021-04-24-ajv-online-event.html +++ b/news/2021-04-24-ajv-online-event.html @@ -18,8 +18,8 @@ - - + +
- + diff --git a/news/2021-05-24-ajv-online-event-video.html b/news/2021-05-24-ajv-online-event-video.html index 7e7715b97..cddb49a3c 100644 --- a/news/2021-05-24-ajv-online-event-video.html +++ b/news/2021-05-24-ajv-online-event-video.html @@ -18,8 +18,8 @@ - - + + - + diff --git a/news/2021-07-22-ajv-microsoft-foss-fund-award.html b/news/2021-07-22-ajv-microsoft-foss-fund-award.html index 2476a06a2..065e4e1ea 100644 --- a/news/2021-07-22-ajv-microsoft-foss-fund-award.html +++ b/news/2021-07-22-ajv-microsoft-foss-fund-award.html @@ -18,8 +18,8 @@ - - + +
- + diff --git a/news/index.html b/news/index.html index b6b83cead..31438c80c 100644 --- a/news/index.html +++ b/news/index.html @@ -18,8 +18,8 @@ - - + +
- + diff --git a/options.html b/options.html index ef03bce54..b950e5720 100644 --- a/options.html +++ b/options.html @@ -18,8 +18,8 @@ - - + +
- + diff --git a/packages/ajv-cli.html b/packages/ajv-cli.html index ebdb4239a..59ca5a35d 100644 --- a/packages/ajv-cli.html +++ b/packages/ajv-cli.html @@ -18,8 +18,8 @@ - - + +
- + diff --git a/packages/ajv-errors.html b/packages/ajv-errors.html index df93d7236..918cc8015 100644 --- a/packages/ajv-errors.html +++ b/packages/ajv-errors.html @@ -18,8 +18,8 @@ - - + +
- + diff --git a/packages/ajv-formats.html b/packages/ajv-formats.html index 8cdff8c81..e14077bbb 100644 --- a/packages/ajv-formats.html +++ b/packages/ajv-formats.html @@ -18,8 +18,8 @@ - - + +
- + diff --git a/packages/ajv-i18n.html b/packages/ajv-i18n.html index 42c7a79de..64e4017be 100644 --- a/packages/ajv-i18n.html +++ b/packages/ajv-i18n.html @@ -18,8 +18,8 @@ - - + +
- + diff --git a/packages/ajv-keywords.html b/packages/ajv-keywords.html index e7bb42ff1..219468ff7 100644 --- a/packages/ajv-keywords.html +++ b/packages/ajv-keywords.html @@ -18,8 +18,8 @@ - - + +
- + diff --git a/packages/index.html b/packages/index.html index 7f6463974..f56ed6fb2 100644 --- a/packages/index.html +++ b/packages/index.html @@ -18,8 +18,8 @@ - - + +
- + diff --git a/security.html b/security.html index 2322c4596..13c539c7f 100644 --- a/security.html +++ b/security.html @@ -18,8 +18,8 @@ - - + +
- + diff --git a/standalone.html b/standalone.html index 503b576a8..b7f563116 100644 --- a/standalone.html +++ b/standalone.html @@ -18,8 +18,8 @@ - - + +
- + diff --git a/strict-mode.html b/strict-mode.html index 48e9b7f74..8983aa041 100644 --- a/strict-mode.html +++ b/strict-mode.html @@ -18,8 +18,8 @@ - - + +
- + diff --git a/testimonials.html b/testimonials.html index 54775d83c..b9994a67d 100644 --- a/testimonials.html +++ b/testimonials.html @@ -18,8 +18,8 @@ - - + +
- + diff --git a/v6-to-v8-migration.html b/v6-to-v8-migration.html index 2929069d6..3cf51d69d 100644 --- a/v6-to-v8-migration.html +++ b/v6-to-v8-migration.html @@ -18,8 +18,8 @@ - - + +