fix(blocks-antd): Fix Descriptions block items schema

This commit is contained in:
SamTolmay 2021-08-20 14:36:53 +02:00
parent 7c497ac1bb
commit 525e8eb8e3
No known key found for this signature in database
GPG Key ID: 655CB3F5AA745CF8
4 changed files with 43 additions and 796 deletions

View File

@ -164,12 +164,12 @@
value: 2
- label: label 4
value: <a>value three</a>
- id: 'properties.title html value'
type: Descriptions
properties:
title: '<div style="color: blue;">hello</div>'
items:
field_one: value one
field_two: 2
field_three: value three
field_four: [value 4, value 5]
# - id: 'properties.title html value'
# type: Descriptions
# properties:
# title: '<div style="color: blue;">hello</div>'
# items:
# field_one: value one
# field_two: 2
# field_three: value three
# field_four: [value 4, value 5]

View File

@ -110,20 +110,8 @@
"description": "Item label - supports html."
},
"value": {
"oneOf": [
{
"type": "string",
"description": "Value of item - supports html."
},
{
"type": "number",
"description": "Value of item."
},
{
"type": "array",
"description": "Value of item."
}
]
"type": "string",
"description": "Value of item - supports html."
},
"span": {
"type": "integer",

View File

@ -7604,664 +7604,3 @@ Array [
],
]
`;
exports[`Mock render - properties.title html value - value[0] - default 1`] = `
Array [
Array [
Object {
"bordered": undefined,
"children": Array [
<mockConstructor
className="{\\"style\\":[{\\"whiteSpace\\":\\"pre-wrap\\"},null,null]}"
label={
<RenderHtml
html="field_one"
methods={
Object {
"makeCssClass": [MockFunction] {
"calls": Array [
Array [
Array [
Object {
"whiteSpace": "pre-wrap",
},
undefined,
undefined,
],
],
Array [
Array [
Object {
"whiteSpace": "pre-wrap",
},
undefined,
undefined,
],
],
Array [
Array [
Object {
"whiteSpace": "pre-wrap",
},
undefined,
undefined,
],
],
Array [
Array [
Object {
"whiteSpace": "pre-wrap",
},
undefined,
undefined,
],
],
],
"results": Array [
Object {
"type": "return",
"value": "{\\"style\\":[{\\"whiteSpace\\":\\"pre-wrap\\"},null,null]}",
},
Object {
"type": "return",
"value": "{\\"style\\":[{\\"whiteSpace\\":\\"pre-wrap\\"},null,null]}",
},
Object {
"type": "return",
"value": "{\\"style\\":[{\\"whiteSpace\\":\\"pre-wrap\\"},null,null]}",
},
Object {
"type": "return",
"value": "{\\"style\\":[{\\"whiteSpace\\":\\"pre-wrap\\"},null,null]}",
},
],
},
"registerEvent": [Function],
"registerMethod": [Function],
"triggerEvent": [Function],
}
}
/>
}
>
<RenderHtml
html="value one"
methods={
Object {
"makeCssClass": [MockFunction] {
"calls": Array [
Array [
Array [
Object {
"whiteSpace": "pre-wrap",
},
undefined,
undefined,
],
],
Array [
Array [
Object {
"whiteSpace": "pre-wrap",
},
undefined,
undefined,
],
],
Array [
Array [
Object {
"whiteSpace": "pre-wrap",
},
undefined,
undefined,
],
],
Array [
Array [
Object {
"whiteSpace": "pre-wrap",
},
undefined,
undefined,
],
],
],
"results": Array [
Object {
"type": "return",
"value": "{\\"style\\":[{\\"whiteSpace\\":\\"pre-wrap\\"},null,null]}",
},
Object {
"type": "return",
"value": "{\\"style\\":[{\\"whiteSpace\\":\\"pre-wrap\\"},null,null]}",
},
Object {
"type": "return",
"value": "{\\"style\\":[{\\"whiteSpace\\":\\"pre-wrap\\"},null,null]}",
},
Object {
"type": "return",
"value": "{\\"style\\":[{\\"whiteSpace\\":\\"pre-wrap\\"},null,null]}",
},
],
},
"registerEvent": [Function],
"registerMethod": [Function],
"triggerEvent": [Function],
}
}
/>
</mockConstructor>,
<mockConstructor
className="{\\"style\\":[{\\"whiteSpace\\":\\"pre-wrap\\"},null,null]}"
label={
<RenderHtml
html="field_two"
methods={
Object {
"makeCssClass": [MockFunction] {
"calls": Array [
Array [
Array [
Object {
"whiteSpace": "pre-wrap",
},
undefined,
undefined,
],
],
Array [
Array [
Object {
"whiteSpace": "pre-wrap",
},
undefined,
undefined,
],
],
Array [
Array [
Object {
"whiteSpace": "pre-wrap",
},
undefined,
undefined,
],
],
Array [
Array [
Object {
"whiteSpace": "pre-wrap",
},
undefined,
undefined,
],
],
],
"results": Array [
Object {
"type": "return",
"value": "{\\"style\\":[{\\"whiteSpace\\":\\"pre-wrap\\"},null,null]}",
},
Object {
"type": "return",
"value": "{\\"style\\":[{\\"whiteSpace\\":\\"pre-wrap\\"},null,null]}",
},
Object {
"type": "return",
"value": "{\\"style\\":[{\\"whiteSpace\\":\\"pre-wrap\\"},null,null]}",
},
Object {
"type": "return",
"value": "{\\"style\\":[{\\"whiteSpace\\":\\"pre-wrap\\"},null,null]}",
},
],
},
"registerEvent": [Function],
"registerMethod": [Function],
"triggerEvent": [Function],
}
}
/>
}
>
<RenderHtml
html={2}
methods={
Object {
"makeCssClass": [MockFunction] {
"calls": Array [
Array [
Array [
Object {
"whiteSpace": "pre-wrap",
},
undefined,
undefined,
],
],
Array [
Array [
Object {
"whiteSpace": "pre-wrap",
},
undefined,
undefined,
],
],
Array [
Array [
Object {
"whiteSpace": "pre-wrap",
},
undefined,
undefined,
],
],
Array [
Array [
Object {
"whiteSpace": "pre-wrap",
},
undefined,
undefined,
],
],
],
"results": Array [
Object {
"type": "return",
"value": "{\\"style\\":[{\\"whiteSpace\\":\\"pre-wrap\\"},null,null]}",
},
Object {
"type": "return",
"value": "{\\"style\\":[{\\"whiteSpace\\":\\"pre-wrap\\"},null,null]}",
},
Object {
"type": "return",
"value": "{\\"style\\":[{\\"whiteSpace\\":\\"pre-wrap\\"},null,null]}",
},
Object {
"type": "return",
"value": "{\\"style\\":[{\\"whiteSpace\\":\\"pre-wrap\\"},null,null]}",
},
],
},
"registerEvent": [Function],
"registerMethod": [Function],
"triggerEvent": [Function],
}
}
/>
</mockConstructor>,
<mockConstructor
className="{\\"style\\":[{\\"whiteSpace\\":\\"pre-wrap\\"},null,null]}"
label={
<RenderHtml
html="field_three"
methods={
Object {
"makeCssClass": [MockFunction] {
"calls": Array [
Array [
Array [
Object {
"whiteSpace": "pre-wrap",
},
undefined,
undefined,
],
],
Array [
Array [
Object {
"whiteSpace": "pre-wrap",
},
undefined,
undefined,
],
],
Array [
Array [
Object {
"whiteSpace": "pre-wrap",
},
undefined,
undefined,
],
],
Array [
Array [
Object {
"whiteSpace": "pre-wrap",
},
undefined,
undefined,
],
],
],
"results": Array [
Object {
"type": "return",
"value": "{\\"style\\":[{\\"whiteSpace\\":\\"pre-wrap\\"},null,null]}",
},
Object {
"type": "return",
"value": "{\\"style\\":[{\\"whiteSpace\\":\\"pre-wrap\\"},null,null]}",
},
Object {
"type": "return",
"value": "{\\"style\\":[{\\"whiteSpace\\":\\"pre-wrap\\"},null,null]}",
},
Object {
"type": "return",
"value": "{\\"style\\":[{\\"whiteSpace\\":\\"pre-wrap\\"},null,null]}",
},
],
},
"registerEvent": [Function],
"registerMethod": [Function],
"triggerEvent": [Function],
}
}
/>
}
>
<RenderHtml
html="value three"
methods={
Object {
"makeCssClass": [MockFunction] {
"calls": Array [
Array [
Array [
Object {
"whiteSpace": "pre-wrap",
},
undefined,
undefined,
],
],
Array [
Array [
Object {
"whiteSpace": "pre-wrap",
},
undefined,
undefined,
],
],
Array [
Array [
Object {
"whiteSpace": "pre-wrap",
},
undefined,
undefined,
],
],
Array [
Array [
Object {
"whiteSpace": "pre-wrap",
},
undefined,
undefined,
],
],
],
"results": Array [
Object {
"type": "return",
"value": "{\\"style\\":[{\\"whiteSpace\\":\\"pre-wrap\\"},null,null]}",
},
Object {
"type": "return",
"value": "{\\"style\\":[{\\"whiteSpace\\":\\"pre-wrap\\"},null,null]}",
},
Object {
"type": "return",
"value": "{\\"style\\":[{\\"whiteSpace\\":\\"pre-wrap\\"},null,null]}",
},
Object {
"type": "return",
"value": "{\\"style\\":[{\\"whiteSpace\\":\\"pre-wrap\\"},null,null]}",
},
],
},
"registerEvent": [Function],
"registerMethod": [Function],
"triggerEvent": [Function],
}
}
/>
</mockConstructor>,
<mockConstructor
className="{\\"style\\":[{\\"whiteSpace\\":\\"pre-wrap\\"},null,null]}"
label={
<RenderHtml
html="field_four"
methods={
Object {
"makeCssClass": [MockFunction] {
"calls": Array [
Array [
Array [
Object {
"whiteSpace": "pre-wrap",
},
undefined,
undefined,
],
],
Array [
Array [
Object {
"whiteSpace": "pre-wrap",
},
undefined,
undefined,
],
],
Array [
Array [
Object {
"whiteSpace": "pre-wrap",
},
undefined,
undefined,
],
],
Array [
Array [
Object {
"whiteSpace": "pre-wrap",
},
undefined,
undefined,
],
],
],
"results": Array [
Object {
"type": "return",
"value": "{\\"style\\":[{\\"whiteSpace\\":\\"pre-wrap\\"},null,null]}",
},
Object {
"type": "return",
"value": "{\\"style\\":[{\\"whiteSpace\\":\\"pre-wrap\\"},null,null]}",
},
Object {
"type": "return",
"value": "{\\"style\\":[{\\"whiteSpace\\":\\"pre-wrap\\"},null,null]}",
},
Object {
"type": "return",
"value": "{\\"style\\":[{\\"whiteSpace\\":\\"pre-wrap\\"},null,null]}",
},
],
},
"registerEvent": [Function],
"registerMethod": [Function],
"triggerEvent": [Function],
}
}
/>
}
>
<RenderHtml
html={
Array [
"value 4",
"value 5",
]
}
methods={
Object {
"makeCssClass": [MockFunction] {
"calls": Array [
Array [
Array [
Object {
"whiteSpace": "pre-wrap",
},
undefined,
undefined,
],
],
Array [
Array [
Object {
"whiteSpace": "pre-wrap",
},
undefined,
undefined,
],
],
Array [
Array [
Object {
"whiteSpace": "pre-wrap",
},
undefined,
undefined,
],
],
Array [
Array [
Object {
"whiteSpace": "pre-wrap",
},
undefined,
undefined,
],
],
],
"results": Array [
Object {
"type": "return",
"value": "{\\"style\\":[{\\"whiteSpace\\":\\"pre-wrap\\"},null,null]}",
},
Object {
"type": "return",
"value": "{\\"style\\":[{\\"whiteSpace\\":\\"pre-wrap\\"},null,null]}",
},
Object {
"type": "return",
"value": "{\\"style\\":[{\\"whiteSpace\\":\\"pre-wrap\\"},null,null]}",
},
Object {
"type": "return",
"value": "{\\"style\\":[{\\"whiteSpace\\":\\"pre-wrap\\"},null,null]}",
},
],
},
"registerEvent": [Function],
"registerMethod": [Function],
"triggerEvent": [Function],
}
}
/>
</mockConstructor>,
],
"colon": undefined,
"column": undefined,
"id": "properties.title html value",
"layout": undefined,
"size": undefined,
"title": <RenderHtml
html=<div style="color: blue;">
hello
</div>
methods={
Object {
"makeCssClass": [MockFunction] {
"calls": Array [
Array [
Array [
Object {
"whiteSpace": "pre-wrap",
},
undefined,
undefined,
],
],
Array [
Array [
Object {
"whiteSpace": "pre-wrap",
},
undefined,
undefined,
],
],
Array [
Array [
Object {
"whiteSpace": "pre-wrap",
},
undefined,
undefined,
],
],
Array [
Array [
Object {
"whiteSpace": "pre-wrap",
},
undefined,
undefined,
],
],
],
"results": Array [
Object {
"type": "return",
"value": "{\\"style\\":[{\\"whiteSpace\\":\\"pre-wrap\\"},null,null]}",
},
Object {
"type": "return",
"value": "{\\"style\\":[{\\"whiteSpace\\":\\"pre-wrap\\"},null,null]}",
},
Object {
"type": "return",
"value": "{\\"style\\":[{\\"whiteSpace\\":\\"pre-wrap\\"},null,null]}",
},
Object {
"type": "return",
"value": "{\\"style\\":[{\\"whiteSpace\\":\\"pre-wrap\\"},null,null]}",
},
],
},
"registerEvent": [Function],
"registerMethod": [Function],
"triggerEvent": [Function],
}
}
/>,
},
Object {},
],
]
`;

View File

@ -1379,112 +1379,6 @@ exports[`Render properties.size: small, properties.bordered: true - value[0] 1`]
</div>
`;
exports[`Render properties.title html value - value[0] 1`] = `
<div
className="ant-descriptions"
>
<div
className="ant-descriptions-title"
>
<div
className="{\\"style\\":[{\\"display\\":\\"inline-block\\"},null]}"
/>
</div>
<div
className="ant-descriptions-view"
>
<table>
<tbody>
<tr
className="ant-descriptions-row"
>
<td
className="ant-descriptions-item {\\"style\\":[{\\"whiteSpace\\":\\"pre-wrap\\"},null,null]}"
colSpan={1}
>
<span
className="ant-descriptions-item-label"
>
<div
className="{\\"style\\":[{\\"display\\":\\"inline-block\\"},null]}"
/>
</span>
<span
className="ant-descriptions-item-content"
>
<div
className="{\\"style\\":[{\\"display\\":\\"inline-block\\"},null]}"
/>
</span>
</td>
<td
className="ant-descriptions-item {\\"style\\":[{\\"whiteSpace\\":\\"pre-wrap\\"},null,null]}"
colSpan={1}
>
<span
className="ant-descriptions-item-label"
>
<div
className="{\\"style\\":[{\\"display\\":\\"inline-block\\"},null]}"
/>
</span>
<span
className="ant-descriptions-item-content"
>
<div
className="{\\"style\\":[{\\"display\\":\\"inline-block\\"},null]}"
/>
</span>
</td>
<td
className="ant-descriptions-item {\\"style\\":[{\\"whiteSpace\\":\\"pre-wrap\\"},null,null]}"
colSpan={1}
>
<span
className="ant-descriptions-item-label"
>
<div
className="{\\"style\\":[{\\"display\\":\\"inline-block\\"},null]}"
/>
</span>
<span
className="ant-descriptions-item-content"
>
<div
className="{\\"style\\":[{\\"display\\":\\"inline-block\\"},null]}"
/>
</span>
</td>
</tr>
<tr
className="ant-descriptions-row"
>
<td
className="ant-descriptions-item {\\"style\\":[{\\"whiteSpace\\":\\"pre-wrap\\"},null,null]}"
colSpan={3}
>
<span
className="ant-descriptions-item-label"
>
<div
className="{\\"style\\":[{\\"display\\":\\"inline-block\\"},null]}"
/>
</span>
<span
className="ant-descriptions-item-content"
>
<div
className="{\\"style\\":[{\\"display\\":\\"inline-block\\"},null]}"
/>
</span>
</td>
</tr>
</tbody>
</table>
</div>
</div>
`;
exports[`Test Schema default 1`] = `true`;
exports[`Test Schema default 2`] = `null`;
@ -1513,9 +1407,39 @@ exports[`Test Schema properties.itemOptions.style 1`] = `true`;
exports[`Test Schema properties.itemOptions.style 2`] = `null`;
exports[`Test Schema properties.items html values 1`] = `true`;
exports[`Test Schema properties.items html values 1`] = `false`;
exports[`Test Schema properties.items html values 2`] = `null`;
exports[`Test Schema properties.items html values 2`] = `
Array [
Object {
"dataPath": "/properties/items/2/value",
"keyword": "type",
"message": "should be string",
"params": Object {
"type": "string",
},
"schemaPath": "#/properties/properties/properties/items/oneOf/0/items/properties/value/type",
},
Object {
"dataPath": "/properties/items",
"keyword": "type",
"message": "should be object",
"params": Object {
"type": "object",
},
"schemaPath": "#/properties/properties/properties/items/oneOf/1/type",
},
Object {
"dataPath": "/properties/items",
"keyword": "oneOf",
"message": "should match exactly one schema in oneOf",
"params": Object {
"passingSchemas": null,
},
"schemaPath": "#/properties/properties/properties/items/oneOf",
},
]
`;
exports[`Test Schema properties.items-list 1`] = `true`;
@ -1552,7 +1476,3 @@ exports[`Test Schema properties.size: small 2`] = `null`;
exports[`Test Schema properties.size: small, properties.bordered: true 1`] = `true`;
exports[`Test Schema properties.size: small, properties.bordered: true 2`] = `null`;
exports[`Test Schema properties.title html value 1`] = `true`;
exports[`Test Schema properties.title html value 2`] = `null`;