Files
shields/module-services_validators.html
2024-12-20 19:41:00 +00:00

788 lines
17 KiB
HTML

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>JSDoc: Module: services/validators</title>
<script src="scripts/prettify/prettify.js"> </script>
<script src="scripts/prettify/lang-css.js"> </script>
<!--[if lt IE 9]>
<script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
<link type="text/css" rel="stylesheet" href="styles/prettify-tomorrow.css">
<link type="text/css" rel="stylesheet" href="styles/jsdoc-default.css">
</head>
<body>
<div id="main">
<h1 class="page-title">Module: services/validators</h1>
<section>
<header>
</header>
<article>
<div class="container-overview">
<div class="description"><p>This module contains commonly used validators.</p></div>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="services_validators.js.html">services/validators.js</a>, <a href="services_validators.js.html#line1">line 1</a>
</li></ul></dd>
</dl>
</div>
<h3 class="subsection-title">Members</h3>
<h4 class="name" id=".anyInteger"><span class="type-signature">(static, constant) </span>anyInteger<span class="type-signature"> :Joi</span></h4>
<div class="description">
<p>Joi validator that checks if a value is a number, an integer and the value must be present.</p>
</div>
<h5>Type:</h5>
<ul>
<li>
<span class="param-type">Joi</span>
</li>
</ul>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="services_validators.js.html">services/validators.js</a>, <a href="services_validators.js.html#line35">line 35</a>
</li></ul></dd>
</dl>
<h4 class="name" id=".fileSize"><span class="type-signature">(static, constant) </span>fileSize<span class="type-signature"> :Joi</span></h4>
<div class="description">
<p>Joi validator for a file size we are going to pass to bytes.parse
see https://github.com/visionmedia/bytes.js#bytesparsestringnumber-value-numbernull</p>
</div>
<h5>Type:</h5>
<ul>
<li>
<span class="param-type">Joi</span>
</li>
</ul>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="services_validators.js.html">services/validators.js</a>, <a href="services_validators.js.html#line79">line 79</a>
</li></ul></dd>
</dl>
<h4 class="name" id=".nonNegativeInteger"><span class="type-signature">(static, constant) </span>nonNegativeInteger<span class="type-signature"> :Joi</span></h4>
<div class="description">
<p>Joi validator that checks if a value is a number, an integer, greater than or equal to zero and the value must be present.</p>
</div>
<h5>Type:</h5>
<ul>
<li>
<span class="param-type">Joi</span>
</li>
</ul>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="services_validators.js.html">services/validators.js</a>, <a href="services_validators.js.html#line28">line 28</a>
</li></ul></dd>
</dl>
<h4 class="name" id=".optionalDottedVersionNClausesWithOptionalSuffix"><span class="type-signature">(static, constant) </span>optionalDottedVersionNClausesWithOptionalSuffix<span class="type-signature"> :Joi</span></h4>
<div class="description">
<p>Joi validator that checks if a value is a string that matches a regular expression.
The regular expression matches strings that start with one or more digits, followed by zero or more groups of a dot and one or more digits,
followed by an optional suffix that starts with a dash or a plus sign and can contain any characters.
This validator can be used to validate properties that can be version strings with an optional suffix or absent.
For example, some valid values for this validator are: 1, 1.0, 1.0.0, 1.0.0-beta
Some invalid values for this validator are: abc, 1.a, 1.0-, .1</p>
</div>
<h5>Type:</h5>
<ul>
<li>
<span class="param-type">Joi</span>
</li>
</ul>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="services_validators.js.html">services/validators.js</a>, <a href="services_validators.js.html#line61">line 61</a>
</li></ul></dd>
</dl>
<h4 class="name" id=".optionalUrl"><span class="type-signature">(static, constant) </span>optionalUrl<span class="type-signature"> :Joi</span></h4>
<div class="description">
<p>Joi validator that checks if a value is a URL</p>
<p>TODO: This accepts URLs with query strings and fragments, which for some purposes should be rejected.</p>
</div>
<h5>Type:</h5>
<ul>
<li>
<span class="param-type">Joi</span>
</li>
</ul>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="services_validators.js.html">services/validators.js</a>, <a href="services_validators.js.html#line71">line 71</a>
</li></ul></dd>
</dl>
<h4 class="name" id=".relativeUri"><span class="type-signature">(static, constant) </span>relativeUri<span class="type-signature"> :Joi</span></h4>
<div class="description">
<p>Joi validator that checks if a value is a relative-only URI</p>
</div>
<h5>Type:</h5>
<ul>
<li>
<span class="param-type">Joi</span>
</li>
</ul>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="services_validators.js.html">services/validators.js</a>, <a href="services_validators.js.html#line88">line 88</a>
</li></ul></dd>
</dl>
<h4 class="name" id=".semver"><span class="type-signature">(static, constant) </span>semver<span class="type-signature"> :Joi</span></h4>
<div class="description">
<p>Joi validator that checks if a value is a valid semantic versioning string and the value must be present.</p>
</div>
<h5>Type:</h5>
<ul>
<li>
<span class="param-type">Joi</span>
</li>
</ul>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="services_validators.js.html">services/validators.js</a>, <a href="services_validators.js.html#line42">line 42</a>
</li></ul></dd>
</dl>
<h4 class="name" id=".semverRange"><span class="type-signature">(static, constant) </span>semverRange<span class="type-signature"> :Joi</span></h4>
<div class="description">
<p>Joi validator that checks if a value is a valid semantic versioning range and the value must be present.</p>
</div>
<h5>Type:</h5>
<ul>
<li>
<span class="param-type">Joi</span>
</li>
</ul>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="services_validators.js.html">services/validators.js</a>, <a href="services_validators.js.html#line49">line 49</a>
</li></ul></dd>
</dl>
<h4 class="name" id="~optionalNonNegativeInteger"><span class="type-signature">(inner, constant) </span>optionalNonNegativeInteger<span class="type-signature"> :Joi</span></h4>
<div class="description">
<p>Joi validator that checks if a value is a number, an integer, and greater than or equal to zero.</p>
</div>
<h5>Type:</h5>
<ul>
<li>
<span class="param-type">Joi</span>
</li>
</ul>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="services_validators.js.html">services/validators.js</a>, <a href="services_validators.js.html#line19">line 19</a>
</li></ul></dd>
</dl>
</article>
</section>
</div>
<nav>
<h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-badge-maker.html">badge-maker</a></li><li><a href="module-badge-maker_lib_xml.html">badge-maker/lib/xml</a></li><li><a href="module-core_base-service_base.html">core/base-service/base</a></li><li><a href="module-core_base-service_base-graphql.html">core/base-service/base-graphql</a></li><li><a href="module-core_base-service_base-json.html">core/base-service/base-json</a></li><li><a href="module-core_base-service_base-svg-scraping.html">core/base-service/base-svg-scraping</a></li><li><a href="module-core_base-service_base-toml.html">core/base-service/base-toml</a></li><li><a href="module-core_base-service_base-xml.html">core/base-service/base-xml</a></li><li><a href="module-core_base-service_base-yaml.html">core/base-service/base-yaml</a></li><li><a href="module-core_base-service_errors.html">core/base-service/errors</a></li><li><a href="module-core_base-service_graphql.html">core/base-service/graphql</a></li><li><a href="module-core_base-service_openapi.html">core/base-service/openapi</a></li><li><a href="module-core_base-service_resource-cache.html">core/base-service/resource-cache</a></li><li><a href="module-core_base-service_service-definitions.html">core/base-service/service-definitions</a></li><li><a href="module-core_server_server.html">core/server/server</a></li><li><a href="module-core_service-test-runner_create-service-tester.html">core/service-test-runner/create-service-tester</a></li><li><a href="module-core_service-test-runner_icedfrisby-shields.html">core/service-test-runner/icedfrisby-shields</a></li><li><a href="module-core_service-test-runner_runner.html">core/service-test-runner/runner</a></li><li><a href="module-core_service-test-runner_service-tester.html">core/service-test-runner/service-tester</a></li><li><a href="module-core_service-test-runner_services-for-title.html">core/service-test-runner/services-for-title</a></li><li><a href="module-core_token-pooling_token-pool.html">core/token-pooling/token-pool</a></li><li><a href="module-services_build-status.html">services/build-status</a></li><li><a href="module-services_color-formatters.html">services/color-formatters</a></li><li><a href="module-services_contributor-count.html">services/contributor-count</a></li><li><a href="module-services_date.html">services/date</a></li><li><a href="module-services_downloads.html">services/downloads</a></li><li><a href="module-services_dynamic-common.html">services/dynamic-common</a></li><li><a href="module-services_dynamic_json-path.html">services/dynamic/json-path</a></li><li><a href="module-services_endpoint-common.html">services/endpoint-common</a></li><li><a href="module-services_licenses.html">services/licenses</a></li><li><a href="module-services_package-json-helpers.html">services/package-json-helpers</a></li><li><a href="module-services_php-version.html">services/php-version</a></li><li><a href="module-services_pipenv-helpers.html">services/pipenv-helpers</a></li><li><a href="module-services_route-builder.html">services/route-builder</a></li><li><a href="module-services_size.html">services/size</a></li><li><a href="module-services_steam_steam-base.html">services/steam/steam-base</a></li><li><a href="module-services_text-formatters.html">services/text-formatters</a></li><li><a href="module-services_validators.html">services/validators</a></li><li><a href="module-services_version.html">services/version</a></li><li><a href="module-services_website-status.html">services/website-status</a></li><li><a href="module-services_winget_version.html">services/winget/version</a></li></ul><h3>Classes</h3><ul><li><a href="BaseThunderstoreService.html">BaseThunderstoreService</a></li><li><a href="module-badge-maker_lib_xml-ElementList.html">ElementList</a></li><li><a href="module-badge-maker_lib_xml-XmlElement.html">XmlElement</a></li><li><a href="module-core_base-service_base-graphql-BaseGraphqlService.html">BaseGraphqlService</a></li><li><a href="module-core_base-service_base-json-BaseJsonService.html">BaseJsonService</a></li><li><a href="module-core_base-service_base-svg-scraping-BaseSvgScrapingService.html">BaseSvgScrapingService</a></li><li><a href="module-core_base-service_base-toml-BaseTomlService.html">BaseTomlService</a></li><li><a href="module-core_base-service_base-xml-BaseXmlService.html">BaseXmlService</a></li><li><a href="module-core_base-service_base-yaml-BaseYamlService.html">BaseYamlService</a></li><li><a href="module-core_base-service_base-BaseService.html">BaseService</a></li><li><a href="module-core_base-service_errors-Deprecated.html">Deprecated</a></li><li><a href="module-core_base-service_errors-ImproperlyConfigured.html">ImproperlyConfigured</a></li><li><a href="module-core_base-service_errors-Inaccessible.html">Inaccessible</a></li><li><a href="module-core_base-service_errors-InvalidParameter.html">InvalidParameter</a></li><li><a href="module-core_base-service_errors-InvalidResponse.html">InvalidResponse</a></li><li><a href="module-core_base-service_errors-NotFound.html">NotFound</a></li><li><a href="module-core_base-service_errors-ShieldsRuntimeError.html">ShieldsRuntimeError</a></li><li><a href="module-core_server_server-Server.html">Server</a></li><li><a href="module-core_service-test-runner_runner-Runner.html">Runner</a></li><li><a href="module-core_service-test-runner_service-tester-ServiceTester.html">ServiceTester</a></li><li><a href="module-core_token-pooling_token-pool-Token.html">Token</a></li><li><a href="module-core_token-pooling_token-pool-TokenPool.html">TokenPool</a></li><li><a href="module-services_route-builder.html">services/route-builder</a></li><li><a href="module-services_steam_steam-base-BaseSteamAPI.html">BaseSteamAPI</a></li></ul><h3>Tutorials</h3><ul><li><a href="tutorial-TUTORIAL.html">TUTORIAL</a></li><li><a href="tutorial-adding-new-config-values.html">adding-new-config-values</a></li><li><a href="tutorial-authentication.html">authentication</a></li><li><a href="tutorial-badge-urls.html">badge-urls</a></li><li><a href="tutorial-code-walkthrough.html">code-walkthrough</a></li><li><a href="tutorial-deprecating-badges.html">deprecating-badges</a></li><li><a href="tutorial-input-validation.html">input-validation</a></li><li><a href="tutorial-json-format.html">json-format</a></li><li><a href="tutorial-performance-testing.html">performance-testing</a></li><li><a href="tutorial-production-hosting.html">production-hosting</a></li><li><a href="tutorial-releases.html">releases</a></li><li><a href="tutorial-self-hosting.html">self-hosting</a></li><li><a href="tutorial-server-secrets.html">server-secrets</a></li><li><a href="tutorial-service-tests.html">service-tests</a></li><li><a href="tutorial-static-badges.html">static-badges</a></li></ul><h3>Global</h3><ul><li><a href="global.html#createNumRequestCounter">createNumRequestCounter</a></li><li><a href="global.html#fakeJwtToken">fakeJwtToken</a></li><li><a href="global.html#generateFakeConfig">generateFakeConfig</a></li><li><a href="global.html#getBadgeExampleCall">getBadgeExampleCall</a></li><li><a href="global.html#getServiceClassAuthOrigin">getServiceClassAuthOrigin</a></li><li><a href="global.html#isMetricWithPattern">isMetricWithPattern</a></li><li><a href="global.html#testAuth">testAuth</a></li></ul>
</nav>
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc/jsdoc">JSDoc 4.0.4</a> on Fri Dec 20 2024 19:40:59 GMT+0000 (Coordinated Universal Time)
</footer>
<script> prettyPrint(); </script>
<script src="scripts/linenumber.js"> </script>
</body>
</html>