feat: support external and step images with structured cooking instructions
This commit is contained in:
1 parent
361862ad0b
commit
0ec1d45bdb
34 files changed
+898
-92
No files matched your search
@@ -37,8 +37,17 @@
|
||||
"default": "",
|
||||
"anyOf": [
|
||||
{
|
||||
"type": "string",
|
||||
"pattern": "^\\/(?:media\\/[a-f0-9-]+\\.webp|images\\/[a-z0-9-]+\\.(?:webp|jpg|svg))$"
|
||||
"anyOf": [
|
||||
{
|
||||
"type": "string",
|
||||
"pattern": "^\\/(?:media\\/[a-f0-9-]+\\.webp|images\\/[a-z0-9-]+\\.(?:webp|jpg|svg))$"
|
||||
},
|
||||
{
|
||||
"type": "string",
|
||||
"maxLength": 2048,
|
||||
"pattern": "^https:\\/\\/[^@\\s/\\\\]+(?:[/?#][^\\s\\\\]*)?$"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"type": "string",
|
||||
@@ -51,8 +60,17 @@
|
||||
"maxItems": 20,
|
||||
"type": "array",
|
||||
"items": {
|
||||
"type": "string",
|
||||
"pattern": "^\\/(?:media\\/[a-f0-9-]+\\.webp|images\\/[a-z0-9-]+\\.(?:webp|jpg|svg))$"
|
||||
"anyOf": [
|
||||
{
|
||||
"type": "string",
|
||||
"pattern": "^\\/(?:media\\/[a-f0-9-]+\\.webp|images\\/[a-z0-9-]+\\.(?:webp|jpg|svg))$"
|
||||
},
|
||||
{
|
||||
"type": "string",
|
||||
"maxLength": 2048,
|
||||
"pattern": "^https:\\/\\/[^@\\s/\\\\]+(?:[/?#][^\\s\\\\]*)?$"
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"categories": {
|
||||
@@ -214,6 +232,24 @@
|
||||
"pattern": "^[a-zA-Z0-9_-]{1,80}$"
|
||||
}
|
||||
},
|
||||
"images": {
|
||||
"default": [],
|
||||
"maxItems": 10,
|
||||
"type": "array",
|
||||
"items": {
|
||||
"anyOf": [
|
||||
{
|
||||
"type": "string",
|
||||
"pattern": "^\\/(?:media\\/[a-f0-9-]+\\.webp|images\\/[a-z0-9-]+\\.(?:webp|jpg|svg))$"
|
||||
},
|
||||
{
|
||||
"type": "string",
|
||||
"maxLength": 2048,
|
||||
"pattern": "^https:\\/\\/[^@\\s/\\\\]+(?:[/?#][^\\s\\\\]*)?$"
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"timers": {
|
||||
"default": [],
|
||||
"maxItems": 10,
|
||||
@@ -250,6 +286,7 @@
|
||||
"title",
|
||||
"text",
|
||||
"ingredients",
|
||||
"images",
|
||||
"timers"
|
||||
],
|
||||
"additionalProperties": false
|
||||
|
||||
@@ -97,6 +97,7 @@
|
||||
"kaese",
|
||||
"salz"
|
||||
],
|
||||
"images": [],
|
||||
"timers": []
|
||||
},
|
||||
{
|
||||
@@ -109,6 +110,7 @@
|
||||
"oel",
|
||||
"kaese"
|
||||
],
|
||||
"images": [],
|
||||
"timers": [
|
||||
{
|
||||
"id": "roesten",
|
||||
@@ -124,6 +126,7 @@
|
||||
"ingredients": [
|
||||
"pasta"
|
||||
],
|
||||
"images": [],
|
||||
"timers": [
|
||||
{
|
||||
"id": "nudeln",
|
||||
@@ -140,6 +143,7 @@
|
||||
"zitrone",
|
||||
"salz"
|
||||
],
|
||||
"images": [],
|
||||
"timers": []
|
||||
}
|
||||
],
|
||||
@@ -256,6 +260,7 @@
|
||||
"tomaten",
|
||||
"gurke"
|
||||
],
|
||||
"images": [],
|
||||
"timers": []
|
||||
},
|
||||
{
|
||||
@@ -265,6 +270,7 @@
|
||||
"ingredients": [
|
||||
"kichererbsen"
|
||||
],
|
||||
"images": [],
|
||||
"timers": [
|
||||
{
|
||||
"id": "roesten",
|
||||
@@ -283,6 +289,7 @@
|
||||
"wasser",
|
||||
"salz"
|
||||
],
|
||||
"images": [],
|
||||
"timers": []
|
||||
}
|
||||
],
|
||||
@@ -386,6 +393,7 @@
|
||||
"kartoffeln",
|
||||
"zwiebel"
|
||||
],
|
||||
"images": [],
|
||||
"timers": []
|
||||
},
|
||||
{
|
||||
@@ -396,6 +404,7 @@
|
||||
"oel",
|
||||
"bruehe"
|
||||
],
|
||||
"images": [],
|
||||
"timers": [
|
||||
{
|
||||
"id": "suppe",
|
||||
@@ -412,6 +421,7 @@
|
||||
"bohnen",
|
||||
"kraeuter"
|
||||
],
|
||||
"images": [],
|
||||
"timers": [
|
||||
{
|
||||
"id": "bohnen",
|
||||
|
||||
@@ -107,6 +107,7 @@
|
||||
"wasser",
|
||||
"pfeffer"
|
||||
],
|
||||
"images": [],
|
||||
"timers": []
|
||||
},
|
||||
{
|
||||
@@ -114,6 +115,7 @@
|
||||
"title": "Geschmack entwickeln lassen",
|
||||
"text": "Die Masse zugedeckt mindestens eine Stunde im Kühlschrank ruhen lassen.",
|
||||
"ingredients": [],
|
||||
"images": [],
|
||||
"timers": [
|
||||
{
|
||||
"id": "ruhezeit",
|
||||
@@ -127,6 +129,7 @@
|
||||
"title": "Flache Laibchen formen",
|
||||
"text": "Mit angefeuchteten Händen je Portion ein etwa 1,5 cm dickes Laibchen formen. In die Mitte eine leichte Mulde drücken.",
|
||||
"ingredients": [],
|
||||
"images": [],
|
||||
"timers": []
|
||||
},
|
||||
{
|
||||
@@ -134,6 +137,7 @@
|
||||
"title": "Kräftig grillen",
|
||||
"text": "Grill oder Grillpfanne vorheizen. Laibchen von beiden Seiten je etwa fünf bis sechs Minuten braten. Faschiertes vollständig durchgaren: im Kern mindestens 70 °C für zwei Minuten erreichen.",
|
||||
"ingredients": [],
|
||||
"images": [],
|
||||
"timers": [
|
||||
{
|
||||
"id": "erste-seite",
|
||||
@@ -155,6 +159,7 @@
|
||||
"brot",
|
||||
"ajvar"
|
||||
],
|
||||
"images": [],
|
||||
"timers": []
|
||||
}
|
||||
],
|
||||
|
||||
@@ -107,6 +107,7 @@
|
||||
<ref>wasser</ref>
|
||||
<ref>pfeffer</ref>
|
||||
</ingredients>
|
||||
<images></images>
|
||||
<timers></timers>
|
||||
</step>
|
||||
<step>
|
||||
@@ -114,6 +115,7 @@
|
||||
<title>Geschmack entwickeln lassen</title>
|
||||
<text>Die Masse zugedeckt mindestens eine Stunde im Kühlschrank ruhen lassen.</text>
|
||||
<ingredients></ingredients>
|
||||
<images></images>
|
||||
<timers>
|
||||
<timer>
|
||||
<id>ruhezeit</id>
|
||||
@@ -127,6 +129,7 @@
|
||||
<title>Flache Laibchen formen</title>
|
||||
<text>Mit angefeuchteten Händen je Portion ein etwa 1,5 cm dickes Laibchen formen. In die Mitte eine leichte Mulde drücken.</text>
|
||||
<ingredients></ingredients>
|
||||
<images></images>
|
||||
<timers></timers>
|
||||
</step>
|
||||
<step>
|
||||
@@ -134,6 +137,7 @@
|
||||
<title>Kräftig grillen</title>
|
||||
<text>Grill oder Grillpfanne vorheizen. Laibchen von beiden Seiten je etwa fünf bis sechs Minuten braten. Faschiertes vollständig durchgaren: im Kern mindestens 70 °C für zwei Minuten erreichen.</text>
|
||||
<ingredients></ingredients>
|
||||
<images></images>
|
||||
<timers>
|
||||
<timer>
|
||||
<id>erste-seite</id>
|
||||
@@ -155,6 +159,7 @@
|
||||
<ref>brot</ref>
|
||||
<ref>ajvar</ref>
|
||||
</ingredients>
|
||||
<images></images>
|
||||
<timers></timers>
|
||||
</step>
|
||||
</steps>
|
||||
|
||||
Reference in new issue
Block a user