Rename custom-formats to string-formats

It does not contain only custom formats, so the name didn't fit anymore.
Update also the docs to reflect that.

Signed-off-by: Kévin Commaille <zecakeh@tedomum.fr>
This commit is contained in:
Kévin Commaille 2024-10-15 11:55:49 +02:00
parent 69d7dbf703
commit 91c40bb6d0
No known key found for this signature in database
GPG key ID: 0C971D9DBC9D678D
3 changed files with 23 additions and 13 deletions

View file

@ -12,15 +12,26 @@
# See the License for the specific language governing permissions and
# limitations under the License.
# This file contains the list of custom formats supported for the `format` key
# This file contains the list of string formats supported for the `format` key
# and the `x-pattern-format` extension (see `openapi_extensions.md` for more
# details).
#
# Each entry must use the `mx-` prefix and have the form:
# Custom formats defined in the Matrix specification should always use the `mx-`
# prefix. They should link to the section containing the definition of the
# format in the spec.
#
# mx-custom-key:
# Formats that are already supported in the JSON Schema specification should
# link to the RFC where they are defined, and should not use a regex to allow
# tools that recognize the format to validate it properly.
# See <https://json-schema.org/understanding-json-schema/reference/string#built-in-formats>.
#
# All entries have the form:
#
# key:
# title: The title rendered in the specification
# url: /url/to#definition
# # regex: A regex that can be used to validate the custom format if possible.
# It should be used as the `pattern` of the string.
mx-user-id:
title: User ID
@ -50,4 +61,3 @@ mx-mxc-uri:
uri:
title: URI
url: http://tools.ietf.org/html/rfc3986
# no regex

View file

@ -157,7 +157,7 @@ resolve-additional-types.)
{{/* If the string uses a known format, use it. */}}
{{ with .format }}
{{ with partial "custom-format" . }}
{{ with partial "string-format" . }}
{{ $type = . }}
{{ end }}
{{ end }}
@ -264,7 +264,7 @@ resolve-additional-types.)
{{ range $formatId, $formatType := $formatMap.Values }}
{{ $formatKey := "string" }}
{{ if ne $formatId "string" }}
{{ with partial "custom-format" $formatId }}
{{ with partial "string-format" $formatId }}
{{ $formatKey = . }}
{{ else }}
{{ errorf "Unsupported value for `x-pattern-format`: %s" $formatId }}
@ -319,12 +319,12 @@ resolve-additional-types.)
Computes the type to display for a string format, given the identifier of
the format as a string.
*/}}
{{ define "partials/custom-format" }}
{{ $customFormat := "" }}
{{ define "partials/string-format" }}
{{ $stringFormat := "" }}
{{ with index site.Data "custom-formats" . }}
{{ $customFormat = printf "<a href=\"%s\">%s</a>" (htmlEscape .url) (htmlEscape .title) }}
{{ with index site.Data "string-formats" . }}
{{ $stringFormat = printf "<a href=\"%s\">%s</a>" (htmlEscape .url) (htmlEscape .title) }}
{{ end }}
{{ return $customFormat }}
{{ return $stringFormat }}
{{ end }}

View file

@ -39,5 +39,5 @@ is a property to convey semantic information about a schema. We define
`x-pattern-format` as a key on the schemas under `patternProperties` with the
same use as `format`, but that applies to the pattern of the property. We also
define custom values for formats with the `mx-` prefix in
`data/custom-formats.yaml`. Those values are recognized in the rendered
specification and link to the definition of the format.
`data/string-formats.yaml`. The values in this file are recognized in the
rendered specification and link to the definition of the format.