Rename custom-formats.yaml
to string-formats.yaml
(#1977)
It does not contain only custom formats, so the name didn't fit anymore. Update also the docs to reflect that.
This commit is contained in:
parent
88f0c56ad9
commit
1e0919ad12
4 changed files with 30 additions and 16 deletions
1
changelogs/internal/newsfragments/1977.clarification
Normal file
1
changelogs/internal/newsfragments/1977.clarification
Normal file
|
@ -0,0 +1 @@
|
||||||
|
Rename `custom-formats.yaml` to `string-formats.yaml` and update its docs.
|
|
@ -12,15 +12,29 @@
|
||||||
# See the License for the specific language governing permissions and
|
# See the License for the specific language governing permissions and
|
||||||
# limitations under the License.
|
# 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
|
# and the `x-pattern-format` extension within JSON Schema objects in the
|
||||||
# details).
|
# OpenAPI documents within the Matrix Specification. See
|
||||||
|
# `openapi_extensions.md` [1] for more details.
|
||||||
#
|
#
|
||||||
# Each entry must use the `mx-` prefix and have the form:
|
# [1]: https://github.com/matrix-org/matrix-spec/blob/main/openapi_extensions.md#custom-x-pattern-format-key-and-custom-formats
|
||||||
#
|
#
|
||||||
# mx-custom-key:
|
# 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.
|
||||||
|
#
|
||||||
|
# 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
|
# title: The title rendered in the specification
|
||||||
# url: /url/to#definition
|
# 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:
|
mx-user-id:
|
||||||
title: User ID
|
title: User ID
|
||||||
|
@ -49,5 +63,4 @@ mx-mxc-uri:
|
||||||
|
|
||||||
uri:
|
uri:
|
||||||
title: URI
|
title: URI
|
||||||
url: http://tools.ietf.org/html/rfc3986
|
url: https://datatracker.ietf.org/doc/html/rfc3986
|
||||||
# no regex
|
|
|
@ -157,7 +157,7 @@ resolve-additional-types.)
|
||||||
|
|
||||||
{{/* If the string uses a known format, use it. */}}
|
{{/* If the string uses a known format, use it. */}}
|
||||||
{{ with .format }}
|
{{ with .format }}
|
||||||
{{ with partial "custom-format" . }}
|
{{ with partial "string-format" . }}
|
||||||
{{ $type = . }}
|
{{ $type = . }}
|
||||||
{{ end }}
|
{{ end }}
|
||||||
{{ end }}
|
{{ end }}
|
||||||
|
@ -264,7 +264,7 @@ resolve-additional-types.)
|
||||||
{{ range $formatId, $formatType := $formatMap.Values }}
|
{{ range $formatId, $formatType := $formatMap.Values }}
|
||||||
{{ $formatKey := "string" }}
|
{{ $formatKey := "string" }}
|
||||||
{{ if ne $formatId "string" }}
|
{{ if ne $formatId "string" }}
|
||||||
{{ with partial "custom-format" $formatId }}
|
{{ with partial "string-format" $formatId }}
|
||||||
{{ $formatKey = . }}
|
{{ $formatKey = . }}
|
||||||
{{ else }}
|
{{ else }}
|
||||||
{{ errorf "Unsupported value for `x-pattern-format`: %s" $formatId }}
|
{{ errorf "Unsupported value for `x-pattern-format`: %s" $formatId }}
|
||||||
|
@ -331,12 +331,12 @@ resolve-additional-types.)
|
||||||
Computes the type to display for a string format, given the identifier of
|
Computes the type to display for a string format, given the identifier of
|
||||||
the format as a string.
|
the format as a string.
|
||||||
*/}}
|
*/}}
|
||||||
{{ define "partials/custom-format" }}
|
{{ define "partials/string-format" }}
|
||||||
{{ $customFormat := "" }}
|
{{ $stringFormat := "" }}
|
||||||
|
|
||||||
{{ with index site.Data "custom-formats" . }}
|
{{ with index site.Data "string-formats" . }}
|
||||||
{{ $customFormat = printf "<a href=\"%s\">%s</a>" (htmlEscape .url) (htmlEscape .title) }}
|
{{ $stringFormat = printf "<a href=\"%s\">%s</a>" (htmlEscape .url) (htmlEscape .title) }}
|
||||||
{{ end }}
|
{{ end }}
|
||||||
|
|
||||||
{{ return $customFormat }}
|
{{ return $stringFormat }}
|
||||||
{{ end }}
|
{{ end }}
|
||||||
|
|
|
@ -39,8 +39,8 @@ 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
|
`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
|
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
|
define custom values for formats with the `mx-` prefix in
|
||||||
`data/custom-formats.yaml`. Those values are recognized in the rendered
|
`data/string-formats.yaml`. The values in this file are recognized in the
|
||||||
specification and link to the definition of the format.
|
rendered specification and link to the definition of the format.
|
||||||
|
|
||||||
## Custom `x-weight` key
|
## Custom `x-weight` key
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue