mirror of
https://github.com/Sea-Haven-Industries/meal-order-manager.git
synced 2026-09-30 21:43:13 +00:00
* fix(form): add status regions, live total, and a11y CSS Dual alert/status slots for form and admin, aria-live on the sticky total, success heading focus target, More/Less affordance styles, and 44px coarse-pointer chip padding. * fix(form): wire a11y labels, status helper, and desc expand Meal-scoped qty labels at card create time, aria-pressed filter chips, dual-node showStatus replacing all alert() calls (confirm retained), overflow-gated More/Less, and success-heading focus after submit. * test(form): cover a11y labels, status region, and desc toggle Structural checks for dual status nodes and no alert(); Playwright for init-time qty labels, aria-pressed chips, overflow More/Less, and failed-submit text landing in role=alert. * fix: address review comments
60 lines
No EOL
1.5 KiB
JSON
60 lines
No EOL
1.5 KiB
JSON
{
|
|
"scraped_at": "2026-07-27T12:00:00+00:00",
|
|
"meal_count": 5,
|
|
"meals": [
|
|
{
|
|
"name": "Chicken Bowl",
|
|
"price": 12.0,
|
|
"calories": "500",
|
|
"protein": "40g",
|
|
"description": "Simple bowl",
|
|
"dietary_tags": [
|
|
"High Protein"
|
|
],
|
|
"image_url": "",
|
|
"is_new": false
|
|
},
|
|
{
|
|
"name": "Luis' Lomo Saltado",
|
|
"price": 14.5,
|
|
"calories": "620",
|
|
"protein": "35g",
|
|
"description": "Stir-fried beef tenderloin with onions, tomatoes, and soy sauce, served over french fries with a side of steamed white rice and aji amarillo. A long fixture blurb used to exercise the three-line clamp and the More expand control in accessibility tests.",
|
|
"dietary_tags": [],
|
|
"image_url": "",
|
|
"is_new": true
|
|
},
|
|
{
|
|
"name": "Meal with \"quotes\"",
|
|
"price": 11.0,
|
|
"calories": "400",
|
|
"protein": "20g",
|
|
"description": "Quoted",
|
|
"dietary_tags": [
|
|
"<b>tag</b>"
|
|
],
|
|
"image_url": "",
|
|
"is_new": false
|
|
},
|
|
{
|
|
"name": "</script><script>alert(1)</script>",
|
|
"price": 9.0,
|
|
"calories": "300",
|
|
"protein": "10g",
|
|
"description": "Hostile script",
|
|
"dietary_tags": [],
|
|
"image_url": "",
|
|
"is_new": false
|
|
},
|
|
{
|
|
"name": "<!--<script>alert(1)</script>-->",
|
|
"price": 9.0,
|
|
"calories": "300",
|
|
"protein": "10g",
|
|
"description": "Hostile script comment",
|
|
"dietary_tags": [],
|
|
"image_url": "",
|
|
"is_new": false
|
|
}
|
|
]
|
|
} |