diff --git a/badge-maker_lib_index.js.html b/badge-maker_lib_index.js.html index f5d0c60b7a..6436be7187 100644 --- a/badge-maker_lib_index.js.html +++ b/badge-maker_lib_index.js.html @@ -117,13 +117,13 @@ module.exports = {
diff --git a/badge-maker_lib_xml.js.html b/badge-maker_lib_xml.js.html index 5f660cf32f..97d01922f9 100644 --- a/badge-maker_lib_xml.js.html +++ b/badge-maker_lib_xml.js.html @@ -132,13 +132,13 @@ module.exports = { escapeXml, stripXmlWhitespace, XmlElement, ElementList }
diff --git a/core_base-service_base-graphql.js.html b/core_base-service_base-graphql.js.html index c2a5d0ee8a..08e1a01f9d 100644 --- a/core_base-service_base-graphql.js.html +++ b/core_base-service_base-graphql.js.html @@ -138,13 +138,13 @@ export default BaseGraphqlService
diff --git a/core_base-service_base-json.js.html b/core_base-service_base-json.js.html index e2d2fbefda..49c28fdd05 100644 --- a/core_base-service_base-json.js.html +++ b/core_base-service_base-json.js.html @@ -104,13 +104,13 @@ export default BaseJsonService
diff --git a/core_base-service_base-svg-scraping.js.html b/core_base-service_base-svg-scraping.js.html index 59154bd1d1..319d5e0f26 100644 --- a/core_base-service_base-svg-scraping.js.html +++ b/core_base-service_base-svg-scraping.js.html @@ -135,13 +135,13 @@ export default BaseSvgScrapingService
diff --git a/core_base-service_base-xml.js.html b/core_base-service_base-xml.js.html index 726726aba1..2f5a8606cc 100644 --- a/core_base-service_base-xml.js.html +++ b/core_base-service_base-xml.js.html @@ -114,13 +114,13 @@ export default BaseXmlService
diff --git a/core_base-service_base-yaml.js.html b/core_base-service_base-yaml.js.html index 8a72cfdca4..c1c25549d7 100644 --- a/core_base-service_base-yaml.js.html +++ b/core_base-service_base-yaml.js.html @@ -117,13 +117,13 @@ export default BaseYamlService
diff --git a/core_base-service_base.js.html b/core_base-service_base.js.html index aab7a2b89a..d874c5ea74 100644 --- a/core_base-service_base.js.html +++ b/core_base-service_base.js.html @@ -217,6 +217,22 @@ class BaseService { this.examples.forEach((example, index) => validateExample(example, index, this), ) + + // ensure openApi spec matches route + if (this.openApi) { + const preparedRoute = prepareRoute(this.route) + for (const [key, value] of Object.entries(this.openApi)) { + let example = key + for (const param of value.get.parameters) { + example = example.replace(`{${param.name}}`, param.example) + } + if (!example.match(preparedRoute.regex)) { + throw new Error( + `Inconsistent Open Api spec and Route found for service ${this.name}`, + ) + } + } + } } static getDefinition() { @@ -636,13 +652,13 @@ export default BaseService
diff --git a/core_base-service_errors.js.html b/core_base-service_errors.js.html index e139d4fcb0..b795618694 100644 --- a/core_base-service_errors.js.html +++ b/core_base-service_errors.js.html @@ -259,13 +259,13 @@ export {
diff --git a/core_base-service_graphql.js.html b/core_base-service_graphql.js.html index 69300bb893..d3f5fbda5e 100644 --- a/core_base-service_graphql.js.html +++ b/core_base-service_graphql.js.html @@ -87,13 +87,13 @@ export { mergeQueries }
diff --git a/core_base-service_openapi.js.html b/core_base-service_openapi.js.html new file mode 100644 index 0000000000..8c1c5dc776 --- /dev/null +++ b/core_base-service_openapi.js.html @@ -0,0 +1,520 @@ + + + + + JSDoc: Source: core/base-service/openapi.js + + + + + + + + + + +
+ +

Source: core/base-service/openapi.js

+ + + + + + +
+
+
/**
+ * Functions for publishing the shields.io URL schema as an OpenAPI Document
+ *
+ * @module
+ */
+
+const baseUrl = process.env.BASE_URL
+const globalParamRefs = [
+  { $ref: '#/components/parameters/style' },
+  { $ref: '#/components/parameters/logo' },
+  { $ref: '#/components/parameters/logoColor' },
+  { $ref: '#/components/parameters/label' },
+  { $ref: '#/components/parameters/labelColor' },
+  { $ref: '#/components/parameters/color' },
+  { $ref: '#/components/parameters/cacheSeconds' },
+  { $ref: '#/components/parameters/link' },
+]
+
+function getCodeSamples(altText) {
+  return [
+    {
+      lang: 'URL',
+      label: 'URL',
+      source: '$url',
+    },
+    {
+      lang: 'Markdown',
+      label: 'Markdown',
+      source: `![${altText}]($url)`,
+    },
+    {
+      lang: 'reStructuredText',
+      label: 'rSt',
+      source: `.. image:: $url\n:   alt: ${altText}`,
+    },
+    {
+      lang: 'AsciiDoc',
+      label: 'AsciiDoc',
+      source: `image:$url[${altText}]`,
+    },
+    {
+      lang: 'HTML',
+      label: 'HTML',
+      source: `<img alt="${altText}" src="$url">`,
+    },
+  ]
+}
+
+function pattern2openapi(pattern) {
+  return pattern
+    .replace(/:([A-Za-z0-9_\-.]+)(?=[/]?)/g, (matches, grp1) => `{${grp1}}`)
+    .replace(/\([^)]*\)/g, '')
+    .replace(/\+$/, '')
+}
+
+function getEnum(pattern, paramName) {
+  const re = new RegExp(`${paramName}\\(([A-Za-z0-9_\\-|]+)\\)`)
+  const match = pattern.match(re)
+  if (match === null) {
+    return undefined
+  }
+  if (!match[1].includes('|')) {
+    return undefined
+  }
+  return match[1].split('|')
+}
+
+function param2openapi(pattern, paramName, exampleValue, paramType) {
+  const outParam = {}
+  outParam.name = paramName
+  // We don't have description if we are building the OpenAPI spec from examples[]
+  outParam.in = paramType
+  if (paramType === 'path') {
+    outParam.required = true
+  } else {
+    /* Occasionally we do have required query params, but we can't
+    detect this if we are building the OpenAPI spec from examples[]
+    so just assume all query params are optional */
+    outParam.required = false
+  }
+
+  if (exampleValue === null && paramType === 'query') {
+    outParam.schema = { type: 'boolean' }
+    outParam.allowEmptyValue = true
+  } else {
+    outParam.schema = { type: 'string' }
+  }
+
+  if (paramType === 'path') {
+    outParam.schema.enum = getEnum(pattern, paramName)
+  }
+
+  outParam.example = exampleValue
+  return outParam
+}
+
+function getVariants(pattern) {
+  /*
+  given a URL pattern (which may include '/one/or/:more?/:optional/:parameters*')
+  return an array of all possible permutations:
+  [
+    '/one/or/:more/:optional/:parameters',
+    '/one/or/:optional/:parameters',
+    '/one/or/:more/:optional',
+    '/one/or/:optional',
+  ]
+  */
+  const patterns = [pattern.split('/')]
+  while (patterns.flat().find(p => p.endsWith('?') || p.endsWith('*'))) {
+    for (let i = 0; i < patterns.length; i++) {
+      const pattern = patterns[i]
+      for (let j = 0; j < pattern.length; j++) {
+        const path = pattern[j]
+        if (path.endsWith('?') || path.endsWith('*')) {
+          pattern[j] = path.slice(0, -1)
+          patterns.push(patterns[i].filter(p => p !== pattern[j]))
+        }
+      }
+    }
+  }
+  for (let i = 0; i < patterns.length; i++) {
+    patterns[i] = patterns[i].join('/')
+  }
+  return patterns
+}
+
+function examples2openapi(examples) {
+  const paths = {}
+  for (const example of examples) {
+    const patterns = getVariants(example.example.pattern)
+
+    for (const pattern of patterns) {
+      const openApiPattern = pattern2openapi(pattern)
+      if (
+        openApiPattern.includes('*') ||
+        openApiPattern.includes('?') ||
+        openApiPattern.includes('+') ||
+        openApiPattern.includes('(')
+      ) {
+        throw new Error(`unexpected characters in pattern '${openApiPattern}'`)
+      }
+
+      /*
+      There's several things going on in this block:
+      1. Filter out any examples for params that don't appear
+         in this variant of the route
+      2. Make sure we add params to the array
+         in the same order they appear in the route
+      3. If there are any params we don't have an example value for,
+         make sure they still appear in the pathParams array with
+         exampleValue == undefined anyway
+      */
+      const pathParams = []
+      for (const param of openApiPattern
+        .split('/')
+        .filter(p => p.startsWith('{') && p.endsWith('}'))) {
+        const paramName = param.slice(1, -1)
+        const exampleValue = example.example.namedParams[paramName]
+        pathParams.push(param2openapi(pattern, paramName, exampleValue, 'path'))
+      }
+
+      const queryParams = example.example.queryParams || {}
+
+      const parameters = [
+        ...pathParams,
+        ...Object.entries(queryParams).map(([paramName, exampleValue]) =>
+          param2openapi(pattern, paramName, exampleValue, 'query'),
+        ),
+        ...globalParamRefs,
+      ]
+      paths[openApiPattern] = {
+        get: {
+          summary: example.title,
+          description: example?.documentation?.__html
+            .replace(/<br>/g, '<br />') // react does not like <br>
+            .replace(/{/g, '&#123;')
+            .replace(/}/g, '&#125;')
+            .replace(/<style>(.|\n)*?<\/style>/, ''), // workaround for w3c-validation TODO: remove later
+          parameters,
+          'x-code-samples': getCodeSamples(example.title),
+        },
+      }
+    }
+  }
+  return paths
+}
+
+function addGlobalProperties(endpoints) {
+  const paths = {}
+  for (const key of Object.keys(endpoints)) {
+    paths[key] = endpoints[key]
+    paths[key].get.parameters = [
+      ...paths[key].get.parameters,
+      ...globalParamRefs,
+    ]
+    paths[key].get['x-code-samples'] = getCodeSamples(paths[key].get.summary)
+  }
+  return paths
+}
+
+function services2openapi(services) {
+  const paths = {}
+  for (const service of services) {
+    if (service.openApi) {
+      // if the service declares its own OpenAPI definition, use that...
+      for (const [key, value] of Object.entries(
+        addGlobalProperties(service.openApi),
+      )) {
+        if (key in paths) {
+          throw new Error(`Conflicting route: ${key}`)
+        }
+        paths[key] = value
+      }
+    } else {
+      // ...otherwise do our best to build one from examples[]
+      for (const [key, value] of Object.entries(
+        examples2openapi(service.examples),
+      )) {
+        // allow conflicting routes for legacy examples
+        paths[key] = value
+      }
+    }
+  }
+  return paths
+}
+
+function category2openapi(category, services) {
+  const spec = {
+    openapi: '3.0.0',
+    info: {
+      version: '1.0.0',
+      title: category.name,
+      license: {
+        name: 'CC0',
+      },
+    },
+    servers: baseUrl ? [{ url: baseUrl }] : undefined,
+    components: {
+      parameters: {
+        style: {
+          name: 'style',
+          in: 'query',
+          required: false,
+          description:
+            'One of: flat (default), flat-square, plastic, for-the-badge, social',
+          schema: {
+            type: 'string',
+          },
+          example: 'flat',
+        },
+        logo: {
+          name: 'logo',
+          in: 'query',
+          required: false,
+          description:
+            'One of the named logos (bitcoin, dependabot, gitlab, npm, paypal, serverfault, stackexchange, superuser, telegram, travis) or simple-icons. All simple-icons are referenced using icon slugs. You can click the icon title on <a href="https://simpleicons.org/" rel="noopener noreferrer" target="_blank">simple-icons</a> to copy the slug or they can be found in the <a href="https://github.com/simple-icons/simple-icons/blob/master/slugs.md">slugs.md file</a> in the simple-icons repository. <a href="/docs/logos">Further info</a>.',
+          schema: {
+            type: 'string',
+          },
+          example: 'appveyor',
+        },
+        logoColor: {
+          name: 'logoColor',
+          in: 'query',
+          required: false,
+          description:
+            'The color of the logo (hex, rgb, rgba, hsl, hsla and css named colors supported). Supported for named logos and Shields logos but not for custom logos. For multicolor Shields logos, the corresponding named logo will be used and colored.',
+          schema: {
+            type: 'string',
+          },
+          example: 'violet',
+        },
+        label: {
+          name: 'label',
+          in: 'query',
+          required: false,
+          description:
+            'Override the default left-hand-side text (<a href="https://developer.mozilla.org/en-US/docs/Glossary/percent-encoding">URL-Encoding</a> needed for spaces or special characters!)',
+          schema: {
+            type: 'string',
+          },
+          example: 'healthiness',
+        },
+        labelColor: {
+          name: 'labelColor',
+          in: 'query',
+          required: false,
+          description:
+            'Background color of the left part (hex, rgb, rgba, hsl, hsla and css named colors supported).',
+          schema: {
+            type: 'string',
+          },
+          example: 'abcdef',
+        },
+        color: {
+          name: 'color',
+          in: 'query',
+          required: false,
+          description:
+            'Background color of the right part (hex, rgb, rgba, hsl, hsla and css named colors supported).',
+          schema: {
+            type: 'string',
+          },
+          example: 'fedcba',
+        },
+        cacheSeconds: {
+          name: 'cacheSeconds',
+          in: 'query',
+          required: false,
+          description:
+            'HTTP cache lifetime (rules are applied to infer a default value on a per-badge basis, any values specified below the default will be ignored).',
+          schema: {
+            type: 'string',
+          },
+          example: '3600',
+        },
+        link: {
+          name: 'link',
+          in: 'query',
+          required: false,
+          description:
+            'Specify what clicking on the left/right of a badge should do. Note that this only works when integrating your badge in an `<object>` HTML tag, but not an `<img>` tag or a markup language.',
+          style: 'form',
+          explode: true,
+          schema: {
+            type: 'array',
+            maxItems: 2,
+            items: {
+              type: 'string',
+            },
+          },
+        },
+      },
+    },
+    paths: services2openapi(services),
+  }
+
+  return spec
+}
+
+/**
+ * Helper function for assembling an OpenAPI path parameter object
+ *
+ * @param {module:core/base-service/openapi~PathParamInput} param Input param
+ * @returns {module:core/base-service/openapi~OpenApiParam} OpenAPI Parameter Object
+ * @see https://swagger.io/specification/#parameter-object
+ */
+function pathParam({
+  name,
+  example,
+  schema = { type: 'string' },
+  description,
+}) {
+  return { name, in: 'path', required: true, schema, example, description }
+}
+
+/**
+ * Helper function for assembling an array of OpenAPI path parameter objects
+ * The code
+ * ```
+ * const params = pathParams(
+ *   { name: 'name1', example: 'example1' },
+ *   { name: 'name2', example: 'example2' },
+ * )
+ * ```
+ * is equivilent to
+ * ```
+ * const params = [
+ *   pathParam({ name: 'name1', example: 'example1' }),
+ *   pathParam({ name: 'name2', example: 'example2' }),
+ * ]
+ * ```
+ *
+ * @param {...module:core/base-service/openapi~PathParamInput} params Input params
+ * @returns {Array.<module:core/base-service/openapi~OpenApiParam>} Array of OpenAPI Parameter Objects
+ * @see {@link module:core/base-service/openapi~pathParam}
+ */
+function pathParams(...params) {
+  return params.map(param => pathParam(param))
+}
+
+/**
+ * Helper function for assembling an OpenAPI query parameter object
+ *
+ * @param {module:core/base-service/openapi~QueryParamInput} param Input param
+ * @returns {module:core/base-service/openapi~OpenApiParam} OpenAPI Parameter Object
+ * @see https://swagger.io/specification/#parameter-object
+ */
+function queryParam({
+  name,
+  example,
+  schema = { type: 'string' },
+  required = false,
+  description,
+}) {
+  const param = { name, in: 'query', required, schema, example, description }
+  if (example === null && schema.type === 'boolean') {
+    param.allowEmptyValue = true
+  }
+  return param
+}
+
+/**
+ * Helper function for assembling an array of OpenAPI query parameter objects
+ * The code
+ * ```
+ * const params = queryParams(
+ *   { name: 'name1', example: 'example1' },
+ *   { name: 'name2', example: 'example2' },
+ * )
+ * ```
+ * is equivilent to
+ * ```
+ * const params = [
+ *   queryParam({ name: 'name1', example: 'example1' }),
+ *   queryParams({ name: 'name2', example: 'example2' }),
+ * ]
+ * ```
+ *
+ * @param {...module:core/base-service/openapi~QueryParamInput} params Input params
+ * @returns {Array.<module:core/base-service/openapi~OpenApiParam>} Array of OpenAPI Parameter Objects
+ * @see {@link module:core/base-service/openapi~queryParam}
+ */
+function queryParams(...params) {
+  return params.map(param => queryParam(param))
+}
+
+/**
+ * @typedef {object} PathParamInput
+ * @property {string} name The name of the parameter. Parameter names are case sensitive
+ * @property {string} example Example of a valid value for this parameter
+ * @property {object} [schema={ type: 'string' }] Parameter schema.
+ *    An [OpenAPI Schema object](https://swagger.io/specification/#schema-object)
+ *    specifying the parameter type.
+ *    Normally this should be omitted as all path parameters are strings.
+ *    Use this when we also want to pass an enum of valid parameters
+ *    to be presented as a drop-down in the frontend. e.g:
+ *    `{'type': 'string', 'enum': ['github', 'bitbucket'}` (Optional)
+ * @property {string} description A brief description of the parameter (Optional)
+ */
+
+/**
+ * @typedef {object} QueryParamInput
+ * @property {string} name The name of the parameter. Parameter names are case sensitive
+ * @property {string|null} example Example of a valid value for this parameter
+ * @property {object} [schema={ type: 'string' }] Parameter schema.
+ *    An [OpenAPI Schema object](https://swagger.io/specification/#schema-object)
+ *    specifying the parameter type. This can normally be omitted.
+ *    Query params are usually strings. (Optional)
+ * @property {boolean} [required=false] Determines whether this parameter is mandatory (Optional)
+ * @property {string} description A brief description of the parameter (Optional)
+ */
+
+/**
+ * OpenAPI Parameter Object
+ *
+ * @typedef {object} OpenApiParam
+ * @property {string} name The name of the parameter
+ * @property {string|null} example Example of a valid value for this parameter
+ * @property {('path'|'query')} in The location of the parameter
+ * @property {object} schema Parameter schema.
+ *    An [OpenAPI Schema object](https://swagger.io/specification/#schema-object)
+ *    specifying the parameter type.
+ * @property {boolean} required Determines whether this parameter is mandatory
+ * @property {string} description A brief description of the parameter
+ * @property {boolean} allowEmptyValue If true, allows the ability to pass an empty value to this parameter
+ */
+
+export { category2openapi, pathParam, pathParams, queryParam, queryParams }
+
+
+
+ + + + +
+ + + +
+ + + + + + + diff --git a/core_base-service_resource-cache.js.html b/core_base-service_resource-cache.js.html index d88f9a7020..bd7ab0ad29 100644 --- a/core_base-service_resource-cache.js.html +++ b/core_base-service_resource-cache.js.html @@ -105,13 +105,13 @@ export { getCachedResource, clearResourceCache }
diff --git a/core_server_prometheus-metrics.js.html b/core_server_prometheus-metrics.js.html index 171ef2a367..06273c7afb 100644 --- a/core_server_prometheus-metrics.js.html +++ b/core_server_prometheus-metrics.js.html @@ -121,13 +121,13 @@ export default class PrometheusMetrics {
diff --git a/core_server_server.js.html b/core_server_server.js.html index ce799d17b5..ac83170905 100644 --- a/core_server_server.js.html +++ b/core_server_server.js.html @@ -636,13 +636,13 @@ export default Server
diff --git a/core_service-test-runner_create-service-tester.js.html b/core_service-test-runner_create-service-tester.js.html index 836df37421..22ad36e34c 100644 --- a/core_service-test-runner_create-service-tester.js.html +++ b/core_service-test-runner_create-service-tester.js.html @@ -68,13 +68,13 @@ export default createServiceTester
diff --git a/core_service-test-runner_icedfrisby-shields.js.html b/core_service-test-runner_icedfrisby-shields.js.html index 2b62b98198..26312c04d5 100644 --- a/core_service-test-runner_icedfrisby-shields.js.html +++ b/core_service-test-runner_icedfrisby-shields.js.html @@ -140,13 +140,13 @@ export default factory
diff --git a/core_service-test-runner_runner.js.html b/core_service-test-runner_runner.js.html index b79a4b60bc..e8d6e065a4 100644 --- a/core_service-test-runner_runner.js.html +++ b/core_service-test-runner_runner.js.html @@ -112,13 +112,13 @@ export default Runner
diff --git a/core_service-test-runner_service-tester.js.html b/core_service-test-runner_service-tester.js.html index ee9336ce90..7523ad55cc 100644 --- a/core_service-test-runner_service-tester.js.html +++ b/core_service-test-runner_service-tester.js.html @@ -178,13 +178,13 @@ export default ServiceTester
diff --git a/core_service-test-runner_services-for-title.js.html b/core_service-test-runner_services-for-title.js.html index d5b1320329..7f9e298b75 100644 --- a/core_service-test-runner_services-for-title.js.html +++ b/core_service-test-runner_services-for-title.js.html @@ -69,13 +69,13 @@ export default servicesForTitle
diff --git a/core_token-pooling_token-pool.js.html b/core_token-pooling_token-pool.js.html index db0b49877f..ee7821b278 100644 --- a/core_token-pooling_token-pool.js.html +++ b/core_token-pooling_token-pool.js.html @@ -373,13 +373,13 @@ export { sanitizeToken, Token, TokenPool }
diff --git a/global.html b/global.html index c5a5783b8e..bc1e83f00f 100644 --- a/global.html +++ b/global.html @@ -678,13 +678,13 @@
diff --git a/index.html b/index.html index 93940f2bfb..7a29ec18c0 100644 --- a/index.html +++ b/index.html @@ -214,13 +214,13 @@ under their terms and license.


diff --git a/module-badge-maker.html b/module-badge-maker.html index bdd44cf477..d48d4048cf 100644 --- a/module-badge-maker.html +++ b/module-badge-maker.html @@ -423,13 +423,13 @@
diff --git a/module-badge-maker_lib_xml-ElementList.html b/module-badge-maker_lib_xml-ElementList.html index c05a4078b1..335f43d4c9 100644 --- a/module-badge-maker_lib_xml-ElementList.html +++ b/module-badge-maker_lib_xml-ElementList.html @@ -157,13 +157,13 @@ like an XmlElement but renders multiple XML tags (not wrapped in a ).


diff --git a/module-badge-maker_lib_xml-XmlElement.html b/module-badge-maker_lib_xml-XmlElement.html index ccab905956..8f3d486644 100644 --- a/module-badge-maker_lib_xml-XmlElement.html +++ b/module-badge-maker_lib_xml-XmlElement.html @@ -468,13 +468,13 @@ element will be rendered as a self-closing element.


diff --git a/module-badge-maker_lib_xml.html b/module-badge-maker_lib_xml.html index 19f19e7b19..73a680c9a4 100644 --- a/module-badge-maker_lib_xml.html +++ b/module-badge-maker_lib_xml.html @@ -122,13 +122,13 @@
diff --git a/module-core_base-service_base-BaseService.html b/module-core_base-service_base-BaseService.html index 59d7cfcf5e..5d81b8252b 100644 --- a/module-core_base-service_base-BaseService.html +++ b/module-core_base-service_base-BaseService.html @@ -741,7 +741,7 @@ defined in this.route.pattern or this.route.capture

Source:
@@ -809,13 +809,13 @@ defined in this.route.pattern or this.route.capture


diff --git a/module-core_base-service_base-graphql-BaseGraphqlService.html b/module-core_base-service_base-graphql-BaseGraphqlService.html index 8ed82281db..f7f28e3629 100644 --- a/module-core_base-service_base-graphql-BaseGraphqlService.html +++ b/module-core_base-service_base-graphql-BaseGraphqlService.html @@ -867,13 +867,13 @@ an InvalidResponse.


diff --git a/module-core_base-service_base-graphql.html b/module-core_base-service_base-graphql.html index f547731175..138db8a9cf 100644 --- a/module-core_base-service_base-graphql.html +++ b/module-core_base-service_base-graphql.html @@ -119,13 +119,13 @@
diff --git a/module-core_base-service_base-json-BaseJsonService.html b/module-core_base-service_base-json-BaseJsonService.html index edc4204139..518420c056 100644 --- a/module-core_base-service_base-json-BaseJsonService.html +++ b/module-core_base-service_base-json-BaseJsonService.html @@ -712,13 +712,13 @@ and module:cor
diff --git a/module-core_base-service_base-json.html b/module-core_base-service_base-json.html index d5f3724d17..1e32f59795 100644 --- a/module-core_base-service_base-json.html +++ b/module-core_base-service_base-json.html @@ -119,13 +119,13 @@
diff --git a/module-core_base-service_base-svg-scraping-BaseSvgScrapingService.html b/module-core_base-service_base-svg-scraping-BaseSvgScrapingService.html index fe6c96625e..fe27236fbc 100644 --- a/module-core_base-service_base-svg-scraping-BaseSvgScrapingService.html +++ b/module-core_base-service_base-svg-scraping-BaseSvgScrapingService.html @@ -803,13 +803,13 @@ and module:cor
diff --git a/module-core_base-service_base-svg-scraping.html b/module-core_base-service_base-svg-scraping.html index 3b17004083..b80dcb8091 100644 --- a/module-core_base-service_base-svg-scraping.html +++ b/module-core_base-service_base-svg-scraping.html @@ -119,13 +119,13 @@
diff --git a/module-core_base-service_base-xml-BaseXmlService.html b/module-core_base-service_base-xml-BaseXmlService.html index 2471867f8c..41f6293243 100644 --- a/module-core_base-service_base-xml-BaseXmlService.html +++ b/module-core_base-service_base-xml-BaseXmlService.html @@ -595,13 +595,13 @@ and module:cor
diff --git a/module-core_base-service_base-xml.html b/module-core_base-service_base-xml.html index 931eaccb97..59169c17d2 100644 --- a/module-core_base-service_base-xml.html +++ b/module-core_base-service_base-xml.html @@ -119,13 +119,13 @@
diff --git a/module-core_base-service_base-yaml-BaseYamlService.html b/module-core_base-service_base-yaml-BaseYamlService.html index bf8708f3dc..cba81cca48 100644 --- a/module-core_base-service_base-yaml-BaseYamlService.html +++ b/module-core_base-service_base-yaml-BaseYamlService.html @@ -592,13 +592,13 @@ and module:cor
diff --git a/module-core_base-service_base-yaml.html b/module-core_base-service_base-yaml.html index 44dc61ba38..5b1bdd4519 100644 --- a/module-core_base-service_base-yaml.html +++ b/module-core_base-service_base-yaml.html @@ -119,13 +119,13 @@
diff --git a/module-core_base-service_base.html b/module-core_base-service_base.html index bd98229f0b..e8aeec9ae1 100644 --- a/module-core_base-service_base.html +++ b/module-core_base-service_base.html @@ -261,7 +261,7 @@ configured credentials are present.

Source:
@@ -480,7 +480,7 @@ configured credentials are present.

Source:
@@ -673,7 +673,7 @@ configured credentials are present.

Source:
@@ -939,7 +939,7 @@ users locate relevant badges.

Source:
@@ -1172,7 +1172,7 @@ when the parameter is absent. (Note that in,
Source:
@@ -1202,13 +1202,13 @@ when the parameter is absent. (Note that in,
diff --git a/module-core_base-service_errors-Deprecated.html b/module-core_base-service_errors-Deprecated.html index bddbdee12c..5297882f3c 100644 --- a/module-core_base-service_errors-Deprecated.html +++ b/module-core_base-service_errors-Deprecated.html @@ -205,13 +205,13 @@
diff --git a/module-core_base-service_errors-ImproperlyConfigured.html b/module-core_base-service_errors-ImproperlyConfigured.html index caa669fe0d..2b68f9bd28 100644 --- a/module-core_base-service_errors-ImproperlyConfigured.html +++ b/module-core_base-service_errors-ImproperlyConfigured.html @@ -205,13 +205,13 @@
diff --git a/module-core_base-service_errors-Inaccessible.html b/module-core_base-service_errors-Inaccessible.html index 0457ed6851..fe781f36e2 100644 --- a/module-core_base-service_errors-Inaccessible.html +++ b/module-core_base-service_errors-Inaccessible.html @@ -206,13 +206,13 @@ or to wrap a 5XX response


diff --git a/module-core_base-service_errors-InvalidParameter.html b/module-core_base-service_errors-InvalidParameter.html index 6641fa8ef7..6e2cbb4089 100644 --- a/module-core_base-service_errors-InvalidParameter.html +++ b/module-core_base-service_errors-InvalidParameter.html @@ -206,13 +206,13 @@ is invalid or unexpected


diff --git a/module-core_base-service_errors-InvalidResponse.html b/module-core_base-service_errors-InvalidResponse.html index 9554482a90..b3ce89db4b 100644 --- a/module-core_base-service_errors-InvalidResponse.html +++ b/module-core_base-service_errors-InvalidResponse.html @@ -205,13 +205,13 @@
diff --git a/module-core_base-service_errors-NotFound.html b/module-core_base-service_errors-NotFound.html index a988934956..788f858420 100644 --- a/module-core_base-service_errors-NotFound.html +++ b/module-core_base-service_errors-NotFound.html @@ -205,13 +205,13 @@
diff --git a/module-core_base-service_errors-ShieldsRuntimeError.html b/module-core_base-service_errors-ShieldsRuntimeError.html index e3c9ccee7c..b1e8224628 100644 --- a/module-core_base-service_errors-ShieldsRuntimeError.html +++ b/module-core_base-service_errors-ShieldsRuntimeError.html @@ -378,13 +378,13 @@ should override this method.


diff --git a/module-core_base-service_errors.html b/module-core_base-service_errors.html index 7e5272336d..edcc1cb216 100644 --- a/module-core_base-service_errors.html +++ b/module-core_base-service_errors.html @@ -337,13 +337,13 @@ for. Defaults to the cacheLength of the service class throwing the error
diff --git a/module-core_base-service_graphql.html b/module-core_base-service_graphql.html index 60fe23d5fa..478e1cd1c7 100644 --- a/module-core_base-service_graphql.html +++ b/module-core_base-service_graphql.html @@ -290,13 +290,13 @@ but can't use that due to incorrect packaging.


diff --git a/module-core_base-service_openapi.html b/module-core_base-service_openapi.html new file mode 100644 index 0000000000..7916bc7124 --- /dev/null +++ b/module-core_base-service_openapi.html @@ -0,0 +1,1642 @@ + + + + + JSDoc: Module: core/base-service/openapi + + + + + + + + + + +
+ +

Module: core/base-service/openapi

+ + + + + + +
+ +
+ +
+ +
+
+ + +

Functions for publishing the shields.io URL schema as an OpenAPI Document

+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + +
Source:
+
+ + + + + + + +
+ + + + +
+ + + + + + + + + + + + + + + + +

Methods

+ + + + + + + +

(inner) pathParam(param) → {module:core/base-service/openapi~OpenApiParam}

+ + + + + + +
+

Helper function for assembling an OpenAPI path parameter object

+
+ + + + + + + + + +
Parameters:
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameTypeDescription
param + + +module:core/base-service/openapi~PathParamInput + + + +

Input param

+ + + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + +
Source:
+
+ + + + + +
See:
+
+ +
+ + + +
+ + + + + + + + + + + + + + + +
Returns:
+ + +
+

OpenAPI Parameter Object

+
+ + + +
+
+ Type +
+
+ +module:core/base-service/openapi~OpenApiParam + + +
+
+ + + + + + + + + + + + + +

(inner) pathParams(…params) → {Array.<module:core/base-service/openapi~OpenApiParam>}

+ + + + + + +
+

Helper function for assembling an array of OpenAPI path parameter objects +The code

+
const params = pathParams(
+  { name: 'name1', example: 'example1' },
+  { name: 'name2', example: 'example2' },
+)
+
+

is equivilent to

+
const params = [
+  pathParam({ name: 'name1', example: 'example1' }),
+  pathParam({ name: 'name2', example: 'example2' }),
+]
+
+
+ + + + + + + + + +
Parameters:
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameTypeAttributesDescription
params + + +module:core/base-service/openapi~PathParamInput + + + + + + + + + + <repeatable>
+ +

Input params

+ + + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + +
Source:
+
+ + + + + +
See:
+
+ +
+ + + +
+ + + + + + + + + + + + + + + +
Returns:
+ + +
+

Array of OpenAPI Parameter Objects

+
+ + + +
+
+ Type +
+
+ +Array.<module:core/base-service/openapi~OpenApiParam> + + +
+
+ + + + + + + + + + + + + +

(inner) queryParam(param) → {module:core/base-service/openapi~OpenApiParam}

+ + + + + + +
+

Helper function for assembling an OpenAPI query parameter object

+
+ + + + + + + + + +
Parameters:
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameTypeDescription
param + + +module:core/base-service/openapi~QueryParamInput + + + +

Input param

+ + + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + +
Source:
+
+ + + + + +
See:
+
+ +
+ + + +
+ + + + + + + + + + + + + + + +
Returns:
+ + +
+

OpenAPI Parameter Object

+
+ + + +
+
+ Type +
+
+ +module:core/base-service/openapi~OpenApiParam + + +
+
+ + + + + + + + + + + + + +

(inner) queryParams(…params) → {Array.<module:core/base-service/openapi~OpenApiParam>}

+ + + + + + +
+

Helper function for assembling an array of OpenAPI query parameter objects +The code

+
const params = queryParams(
+  { name: 'name1', example: 'example1' },
+  { name: 'name2', example: 'example2' },
+)
+
+

is equivilent to

+
const params = [
+  queryParam({ name: 'name1', example: 'example1' }),
+  queryParams({ name: 'name2', example: 'example2' }),
+]
+
+
+ + + + + + + + + +
Parameters:
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameTypeAttributesDescription
params + + +module:core/base-service/openapi~QueryParamInput + + + + + + + + + + <repeatable>
+ +

Input params

+ + + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + +
Source:
+
+ + + + + +
See:
+
+ +
+ + + +
+ + + + + + + + + + + + + + + +
Returns:
+ + +
+

Array of OpenAPI Parameter Objects

+
+ + + +
+
+ Type +
+
+ +Array.<module:core/base-service/openapi~OpenApiParam> + + +
+
+ + + + + + + + + + + +

Type Definitions

+ + + +

OpenApiParam

+ + + + +
+

OpenAPI Parameter Object

+
+ + + +
Type:
+
    +
  • + +object + + +
  • +
+ + + + + +
Properties:
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameTypeDescription
name + + +string + + + +

The name of the parameter

example + + +string +| + +null + + + +

Example of a valid value for this parameter

in + + +'path' +| + +'query' + + + +

The location of the parameter

schema + + +object + + + +

Parameter schema. +An OpenAPI Schema object +specifying the parameter type.

required + + +boolean + + + +

Determines whether this parameter is mandatory

description + + +string + + + +

A brief description of the parameter

allowEmptyValue + + +boolean + + + +

If true, allows the ability to pass an empty value to this parameter

+ + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + +
Source:
+
+ + + + + + + +
+ + + + + + + + +

PathParamInput

+ + + + + + +
Type:
+
    +
  • + +object + + +
  • +
+ + + + + +
Properties:
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameTypeAttributesDefaultDescription
name + + +string + + + + + + + + + +

The name of the parameter. Parameter names are case sensitive

example + + +string + + + + + + + + + +

Example of a valid value for this parameter

schema + + +object + + + + + + <optional>
+ + + +
+ + { type: 'string' } + +

Parameter schema. +An OpenAPI Schema object +specifying the parameter type. +Normally this should be omitted as all path parameters are strings. +Use this when we also want to pass an enum of valid parameters +to be presented as a drop-down in the frontend. e.g: +{'type': 'string', 'enum': ['github', 'bitbucket'} (Optional)

description + + +string + + + + + + + + + +

A brief description of the parameter (Optional)

+ + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + +
Source:
+
+ + + + + + + +
+ + + + + + + + +

QueryParamInput

+ + + + + + +
Type:
+
    +
  • + +object + + +
  • +
+ + + + + +
Properties:
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameTypeAttributesDefaultDescription
name + + +string + + + + + + + + + +

The name of the parameter. Parameter names are case sensitive

example + + +string +| + +null + + + + + + + + + +

Example of a valid value for this parameter

schema + + +object + + + + + + <optional>
+ + + +
+ + { type: 'string' } + +

Parameter schema. +An OpenAPI Schema object +specifying the parameter type. This can normally be omitted. +Query params are usually strings. (Optional)

required + + +boolean + + + + + + <optional>
+ + + +
+ + false + +

Determines whether this parameter is mandatory (Optional)

description + + +string + + + + + + + + + +

A brief description of the parameter (Optional)

+ + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + +
Source:
+
+ + + + + + + +
+ + + + + + + + + + +
+ +
+ + + + +
+ + + +
+ + + + + + + \ No newline at end of file diff --git a/module-core_base-service_resource-cache.html b/module-core_base-service_resource-cache.html index 186166c874..04162c23d2 100644 --- a/module-core_base-service_resource-cache.html +++ b/module-core_base-service_resource-cache.html @@ -562,13 +562,13 @@
diff --git a/module-core_server_server-Server.html b/module-core_server_server-Server.html index 6ede4c3510..36f666c011 100644 --- a/module-core_server_server-Server.html +++ b/module-core_server_server-Server.html @@ -675,13 +675,13 @@ Start listening for requests on this.baseUrl()


diff --git a/module-core_server_server.html b/module-core_server_server.html index 1c6e7c30d3..7ceb141f1a 100644 --- a/module-core_server_server.html +++ b/module-core_server_server.html @@ -119,13 +119,13 @@
diff --git a/module-core_service-test-runner_create-service-tester.html b/module-core_service-test-runner_create-service-tester.html index 163e958ce6..5709f74b94 100644 --- a/module-core_service-test-runner_create-service-tester.html +++ b/module-core_service-test-runner_create-service-tester.html @@ -230,13 +230,13 @@ service.


diff --git a/module-core_service-test-runner_icedfrisby-shields.html b/module-core_service-test-runner_icedfrisby-shields.html index 4b544225e7..33b2f82aae 100644 --- a/module-core_service-test-runner_icedfrisby-shields.html +++ b/module-core_service-test-runner_icedfrisby-shields.html @@ -286,13 +286,13 @@
diff --git a/module-core_service-test-runner_runner-Runner.html b/module-core_service-test-runner_runner-Runner.html index 0069fca765..230c2b956d 100644 --- a/module-core_service-test-runner_runner-Runner.html +++ b/module-core_service-test-runner_runner-Runner.html @@ -562,13 +562,13 @@ overridden on instances.


diff --git a/module-core_service-test-runner_runner.html b/module-core_service-test-runner_runner.html index e68a7b7bf3..21f12a4323 100644 --- a/module-core_service-test-runner_runner.html +++ b/module-core_service-test-runner_runner.html @@ -119,13 +119,13 @@
diff --git a/module-core_service-test-runner_service-tester-ServiceTester.html b/module-core_service-test-runner_service-tester-ServiceTester.html index 180181e91b..61076c782e 100644 --- a/module-core_service-test-runner_service-tester-ServiceTester.html +++ b/module-core_service-test-runner_service-tester-ServiceTester.html @@ -1120,13 +1120,13 @@ the CLI, or directly on the tester.


diff --git a/module-core_service-test-runner_service-tester.html b/module-core_service-test-runner_service-tester.html index f97c760252..9049f81c92 100644 --- a/module-core_service-test-runner_service-tester.html +++ b/module-core_service-test-runner_service-tester.html @@ -119,13 +119,13 @@
diff --git a/module-core_service-test-runner_services-for-title.html b/module-core_service-test-runner_services-for-title.html index 9e1e1b1525..db80f1b2ec 100644 --- a/module-core_service-test-runner_services-for-title.html +++ b/module-core_service-test-runner_services-for-title.html @@ -278,13 +278,13 @@ as an array of strings.


diff --git a/module-core_token-pooling_token-pool-Token.html b/module-core_token-pooling_token-pool-Token.html index 1d59e2c9db..1a44487773 100644 --- a/module-core_token-pooling_token-pool-Token.html +++ b/module-core_token-pooling_token-pool-Token.html @@ -709,13 +709,13 @@ stable ordering for a valid priority queue.


diff --git a/module-core_token-pooling_token-pool-TokenPool.html b/module-core_token-pooling_token-pool-TokenPool.html index 13d951f295..2833102494 100644 --- a/module-core_token-pooling_token-pool-TokenPool.html +++ b/module-core_token-pooling_token-pool-TokenPool.html @@ -893,13 +893,13 @@ indicate it should not be reused.


diff --git a/module-core_token-pooling_token-pool.html b/module-core_token-pooling_token-pool.html index e77f18929c..35c9a5009d 100644 --- a/module-core_token-pooling_token-pool.html +++ b/module-core_token-pooling_token-pool.html @@ -285,13 +285,13 @@
diff --git a/module-services_build-status.html b/module-services_build-status.html index 2b41c3a8fb..ae09de7bb9 100644 --- a/module-services_build-status.html +++ b/module-services_build-status.html @@ -447,13 +447,13 @@ Determines the message and color of the badge according to the build status.


diff --git a/module-services_color-formatters.html b/module-services_color-formatters.html index 3e3d834a74..87e87dff47 100644 --- a/module-services_color-formatters.html +++ b/module-services_color-formatters.html @@ -1526,13 +1526,13 @@ The color defaults to red if the score does not matches with any of the grade va
diff --git a/module-services_contributor-count.html b/module-services_contributor-count.html index 6348a2587f..a6f5ca2cf6 100644 --- a/module-services_contributor-count.html +++ b/module-services_contributor-count.html @@ -530,13 +530,13 @@ Determines the message and color of the badge according to the contributor count
diff --git a/module-services_downloads.html b/module-services_downloads.html index c27dabc2d6..0f1f82c65b 100644 --- a/module-services_downloads.html +++ b/module-services_downloads.html @@ -540,13 +540,13 @@ this value as the prefix for versioned badges, e.g. foobar@v1.23. D
diff --git a/module-services_dynamic-common.html b/module-services_dynamic-common.html index 20045c0606..ba13916b44 100644 --- a/module-services_dynamic-common.html +++ b/module-services_dynamic-common.html @@ -954,13 +954,13 @@ Sets the color of the badge to blue.


diff --git a/module-services_dynamic_json-path.html b/module-services_dynamic_json-path.html index cd4db6547b..7164c8eeea 100644 --- a/module-services_dynamic_json-path.html +++ b/module-services_dynamic_json-path.html @@ -417,13 +417,13 @@ This can be used to extend or override the
diff --git a/module-services_endpoint-common.html b/module-services_endpoint-common.html index f13fa701cf..562eb1a0ce 100644 --- a/module-services_endpoint-common.html +++ b/module-services_endpoint-common.html @@ -804,13 +804,13 @@ Optionally it prints those keys in the message to provide detailed feedback.


diff --git a/module-services_licenses.html b/module-services_licenses.html index 88ff8eacfe..65a1577003 100644 --- a/module-services_licenses.html +++ b/module-services_licenses.html @@ -644,13 +644,13 @@ Sets the badge color to the provided value, if not provided then the color is us
diff --git a/module-services_package-json-helpers.html b/module-services_package-json-helpers.html index 57fde11d7d..810a704b2b 100644 --- a/module-services_package-json-helpers.html +++ b/module-services_package-json-helpers.html @@ -650,13 +650,13 @@ Checks if the object has all the dependency types and the dependency types are v
diff --git a/module-services_php-version.html b/module-services_php-version.html index 30f9cdf941..84e78ab607 100644 --- a/module-services_php-version.html +++ b/module-services_php-version.html @@ -1466,13 +1466,13 @@ Return { numbers: [1,0,something big], modifier: 2, modifierCount: 1 }


diff --git a/module-services_pipenv-helpers.html b/module-services_pipenv-helpers.html index c2d963714f..ed215668df 100644 --- a/module-services_pipenv-helpers.html +++ b/module-services_pipenv-helpers.html @@ -610,13 +610,13 @@ Checks if the lock file object has required properties and the properties are va
diff --git a/module-services_route-builder.html b/module-services_route-builder.html index 1c3f5d77b3..40f0211126 100644 --- a/module-services_route-builder.html +++ b/module-services_route-builder.html @@ -615,13 +615,13 @@
diff --git a/module-services_steam_steam-base-BaseSteamAPI.html b/module-services_steam_steam-base-BaseSteamAPI.html index c56c735150..45e612e13e 100644 --- a/module-services_steam_steam-base-BaseSteamAPI.html +++ b/module-services_steam_steam-base-BaseSteamAPI.html @@ -374,13 +374,13 @@
diff --git a/module-services_steam_steam-base.html b/module-services_steam_steam-base.html index 2ac7b9f50c..5d048cb1ac 100644 --- a/module-services_steam_steam-base.html +++ b/module-services_steam_steam-base.html @@ -119,13 +119,13 @@
diff --git a/module-services_text-formatters.html b/module-services_text-formatters.html index f288fe60ed..4e8df4d77a 100644 --- a/module-services_text-formatters.html +++ b/module-services_text-formatters.html @@ -1674,13 +1674,13 @@ The remaining stars are empty stars until the maximum number of stars is reached
diff --git a/module-services_validators.html b/module-services_validators.html index bca5629531..a1afd0b2c6 100644 --- a/module-services_validators.html +++ b/module-services_validators.html @@ -701,13 +701,13 @@ Some invalid values for this validator are: abc, 1.a, 1.0-, .1


diff --git a/services_build-status.js.html b/services_build-status.js.html index d9cae548fe..30540ff4b7 100644 --- a/services_build-status.js.html +++ b/services_build-status.js.html @@ -134,13 +134,13 @@ export { isBuildStatus, renderBuildStatusBadge }
diff --git a/services_color-formatters.js.html b/services_color-formatters.js.html index dd0ac063ce..1aee680836 100644 --- a/services_color-formatters.js.html +++ b/services_color-formatters.js.html @@ -234,13 +234,13 @@ export {
diff --git a/services_contributor-count.js.html b/services_contributor-count.js.html index a8740901d9..4e6b66cb31 100644 --- a/services_contributor-count.js.html +++ b/services_contributor-count.js.html @@ -79,13 +79,13 @@ export { contributorColor, renderContributorBadge }
diff --git a/services_downloads.js.html b/services_downloads.js.html index abaa298268..19a4515806 100644 --- a/services_downloads.js.html +++ b/services_downloads.js.html @@ -95,13 +95,13 @@ export { renderDownloadsBadge }
diff --git a/services_dynamic-common.js.html b/services_dynamic-common.js.html index 866d90604a..9caa806319 100644 --- a/services_dynamic-common.js.html +++ b/services_dynamic-common.js.html @@ -136,13 +136,13 @@ export {
diff --git a/services_dynamic_json-path.js.html b/services_dynamic_json-path.js.html index beaba9fa63..67db8cbfc0 100644 --- a/services_dynamic_json-path.js.html +++ b/services_dynamic_json-path.js.html @@ -114,13 +114,13 @@ export default superclass =>
diff --git a/services_endpoint-common.js.html b/services_endpoint-common.js.html index 1048820cc7..e664f3ad0e 100644 --- a/services_endpoint-common.js.html +++ b/services_endpoint-common.js.html @@ -142,13 +142,13 @@ export { validateEndpointData, fetchEndpointData }
diff --git a/services_licenses.js.html b/services_licenses.js.html index eb2da2dd80..8398a18585 100644 --- a/services_licenses.js.html +++ b/services_licenses.js.html @@ -195,13 +195,13 @@ export { licenseToColor, renderLicenseBadge }
diff --git a/services_package-json-helpers.js.html b/services_package-json-helpers.js.html index b838211925..1e3333c76f 100644 --- a/services_package-json-helpers.js.html +++ b/services_package-json-helpers.js.html @@ -114,13 +114,13 @@ export { isDependencyMap, isPackageJsonWithDependencies, getDependencyVersion }
diff --git a/services_packagist_packagist-base.js.html b/services_packagist_packagist-base.js.html index fb72bc5158..77c8c30532 100644 --- a/services_packagist_packagist-base.js.html +++ b/services_packagist_packagist-base.js.html @@ -221,13 +221,13 @@ export {
diff --git a/services_php-version.js.html b/services_php-version.js.html index f5b5544ef3..d5f9e02687 100644 --- a/services_php-version.js.html +++ b/services_php-version.js.html @@ -335,13 +335,13 @@ export {
diff --git a/services_pipenv-helpers.js.html b/services_pipenv-helpers.js.html index 7a981f0a79..421e1f811c 100644 --- a/services_pipenv-helpers.js.html +++ b/services_pipenv-helpers.js.html @@ -122,13 +122,13 @@ export { isLockfile, getDependencyVersion }
diff --git a/services_route-builder.js.html b/services_route-builder.js.html index 0964d922d3..ec8dd0de7f 100644 --- a/services_route-builder.js.html +++ b/services_route-builder.js.html @@ -99,13 +99,13 @@ export default class RouteBuilder {
diff --git a/services_steam_steam-base.js.html b/services_steam_steam-base.js.html index be042e85c3..b66df9d598 100644 --- a/services_steam_steam-base.js.html +++ b/services_steam_steam-base.js.html @@ -92,13 +92,13 @@ export default BaseSteamAPI
diff --git a/services_test-validators.js.html b/services_test-validators.js.html index 9e88288afe..2c81b2285f 100644 --- a/services_test-validators.js.html +++ b/services_test-validators.js.html @@ -253,13 +253,13 @@ export {
diff --git a/services_text-formatters.js.html b/services_text-formatters.js.html index 8fc6798197..f2997d19e3 100644 --- a/services_text-formatters.js.html +++ b/services_text-formatters.js.html @@ -246,13 +246,13 @@ export {
diff --git a/services_validators.js.html b/services_validators.js.html index 12bea36414..9ffa890f32 100644 --- a/services_validators.js.html +++ b/services_validators.js.html @@ -117,13 +117,13 @@ export const fileSize = Joi.string()
diff --git a/tutorial-TUTORIAL.html b/tutorial-TUTORIAL.html index fe15f89378..e10bc02a02 100644 --- a/tutorial-TUTORIAL.html +++ b/tutorial-TUTORIAL.html @@ -371,13 +371,13 @@ will review your contribution.
diff --git a/tutorial-adding-new-config-values.html b/tutorial-adding-new-config-values.html index f236290da6..c44ff101b1 100644 --- a/tutorial-adding-new-config-values.html +++ b/tutorial-adding-new-config-values.html @@ -54,13 +54,13 @@
diff --git a/tutorial-authentication.html b/tutorial-authentication.html index ac1f322b25..fdf967a7a7 100644 --- a/tutorial-authentication.html +++ b/tutorial-authentication.html @@ -42,13 +42,13 @@
diff --git a/tutorial-badge-urls.html b/tutorial-badge-urls.html index 4dee6b7ccb..499e5c8334 100644 --- a/tutorial-badge-urls.html +++ b/tutorial-badge-urls.html @@ -77,13 +77,13 @@ badge is for issues, and the parameters are :user/:repo.
diff --git a/tutorial-code-walkthrough.html b/tutorial-code-walkthrough.html index b816627184..e9fd7d9b6f 100644 --- a/tutorial-code-walkthrough.html +++ b/tutorial-code-walkthrough.html @@ -229,13 +229,13 @@ result over the HTTPS connection.
diff --git a/tutorial-deprecating-badges.html b/tutorial-deprecating-badges.html index 730ba25858..520ecbcf82 100644 --- a/tutorial-deprecating-badges.html +++ b/tutorial-deprecating-badges.html @@ -143,13 +143,13 @@ t.create('no longer available (previously number of layers)')
diff --git a/tutorial-input-validation.html b/tutorial-input-validation.html index b2219f4e78..70d9bcf89c 100644 --- a/tutorial-input-validation.html +++ b/tutorial-input-validation.html @@ -97,13 +97,13 @@
diff --git a/tutorial-json-format.html b/tutorial-json-format.html index 84e9dec29c..dac586fffb 100644 --- a/tutorial-json-format.html +++ b/tutorial-json-format.html @@ -54,13 +54,13 @@ if you have any queries regarding the JSON format.


diff --git a/tutorial-logos.html b/tutorial-logos.html index 65abb255f5..ab4da30c61 100644 --- a/tutorial-logos.html +++ b/tutorial-logos.html @@ -80,13 +80,13 @@
diff --git a/tutorial-performance-testing.html b/tutorial-performance-testing.html index 46b109d360..adf3b40043 100644 --- a/tutorial-performance-testing.html +++ b/tutorial-performance-testing.html @@ -70,13 +70,13 @@ node --prof-process --preprocess -j isolate-00000244AB6ED3B0-11920-v8.log | flam
diff --git a/tutorial-production-hosting.html b/tutorial-production-hosting.html index 0912f585d1..c7e9305573 100644 --- a/tutorial-production-hosting.html +++ b/tutorial-production-hosting.html @@ -211,13 +211,13 @@ via local-shields-io-production.yml (see Home

Modules

Classes

Tutorials

Global

+

Home

Modules

Classes

Tutorials

Global


diff --git a/tutorial-releases.html b/tutorial-releases.html index de89556798..a79c64c0a1 100644 --- a/tutorial-releases.html +++ b/tutorial-releases.html @@ -73,13 +73,13 @@
diff --git a/tutorial-self-hosting.html b/tutorial-self-hosting.html index a396427973..e8a38b6140 100644 --- a/tutorial-self-hosting.html +++ b/tutorial-self-hosting.html @@ -174,13 +174,13 @@ Set public.requireCloudflare: true.


diff --git a/tutorial-server-secrets.html b/tutorial-server-secrets.html index 4fa129eb9b..0758b72db3 100644 --- a/tutorial-server-secrets.html +++ b/tutorial-server-secrets.html @@ -288,13 +288,13 @@ and create an API key for the YouTube Data API v3.


diff --git a/tutorial-service-tests.html b/tutorial-service-tests.html index 555f6d0616..aa2f588cfe 100644 --- a/tutorial-service-tests.html +++ b/tutorial-service-tests.html @@ -240,13 +240,13 @@ comment there instead.


diff --git a/tutorial-static-badges.html b/tutorial-static-badges.html index ed780f801c..f68c713de2 100644 --- a/tutorial-static-badges.html +++ b/tutorial-static-badges.html @@ -36,13 +36,13 @@