{
  "schemaVersion": "2.0",
  "pages": [
    {
      "id": "5c0de888-0000-4000-8000-000000000048",
      "name": "List lab",
      "width": 595,
      "height": 842,
      "pageFormat": "A4",
      "backgroundColor": "#f6f1e7",
      "elements": [
        {
          "$type": "text",
          "id": "5c0de888-0000-4000-8000-000000000001",
          "name": "L A ROWS THAT GROW · BADGE FROM A FLAG · NESTED TAGS",
          "left": 40,
          "top": 44,
          "width": 300,
          "height": 12,
          "text": "A ROWS THAT GROW · BADGE FROM A FLAG · NESTED TAGS",
          "fontFamily": "Montserrat",
          "fontSize": 7,
          "fill": "#c0643a",
          "lineHeight": 1.25,
          "fontWeight": "bold",
          "charSpacing": 120
        },
        {
          "$type": "repeat_region",
          "id": "5c0de888-0000-4000-8000-000000000002",
          "name": "Menu",
          "left": 40,
          "top": 60,
          "width": 515,
          "height": 250,
          "sourceCode": "dishes",
          "maxItems": 6,
          "overflowPolicy": "fail",
          "placeholder": {
            "id": "5c0de888-0000-4000-8000-000000000003",
            "name": "Dishes",
            "code": "dishes",
            "placeholderType": "json",
            "required": true
          },
          "layout": {
            "mode": "vertical",
            "rowGap": 6
          },
          "itemFields": [
            {
              "code": "sold_out",
              "name": "Sold out",
              "type": "boolean",
              "description": "True when the dish is finished for today."
            }
          ],
          "children": [
            {
              "$type": "rectangle",
              "id": "5c0de888-0000-4000-8000-000000000004",
              "name": "Row card",
              "left": 0,
              "top": 0,
              "width": 515,
              "height": 46,
              "fill": "#ffffff",
              "stroke": "#e4e7ec",
              "strokeWidth": 0.75,
              "rx": 6,
              "ry": 6,
              "followsRowHeight": true
            },
            {
              "$type": "layout_region",
              "id": "5c0de888-0000-4000-8000-000000000005",
              "name": "Dish block",
              "left": 12,
              "top": 8,
              "width": 330,
              "height": 32,
              "layout": {
                "mode": "vertical",
                "sizing": "hug",
                "childSizing": "content",
                "rowGap": 4
              },
              "children": [
                {
                  "$type": "text",
                  "id": "5c0de888-0000-4000-8000-000000000007",
                  "name": "Dish",
                  "left": 0,
                  "top": 0,
                  "width": 330,
                  "height": 16,
                  "text": "Dish",
                  "fontFamily": "Playfair Display",
                  "fontSize": 13,
                  "fill": "#1c2430",
                  "lineHeight": 1.25,
                  "fontWeight": "bold",
                  "placeholder": {
                    "id": "5c0de888-0000-4000-8000-000000000006",
                    "name": "Dish",
                    "code": "row_name_6",
                    "placeholderType": "text",
                    "required": false,
                    "bindingPath": "item.name"
                  },
                  "grow": {
                    "maxLines": 3,
                    "beyond": "ellipsis",
                    "height": "content"
                  }
                },
                {
                  "$type": "repeat_region",
                  "id": "5c0de888-0000-4000-8000-000000000008",
                  "name": "Tags",
                  "left": 0,
                  "top": 20,
                  "width": 330,
                  "height": 12,
                  "sourceCode": "item.tags",
                  "maxItems": 6,
                  "overflowPolicy": "clip",
                  "layout": {
                    "mode": "horizontal",
                    "columnGap": 6
                  },
                  "children": [
                    {
                      "$type": "text",
                      "id": "5c0de888-0000-4000-8000-000000000010",
                      "name": "Tag",
                      "left": 0,
                      "top": 0,
                      "width": 70,
                      "height": 12,
                      "text": "tag",
                      "fontFamily": "Inter",
                      "fontSize": 8,
                      "fill": "#23493a",
                      "lineHeight": 1.25,
                      "fontWeight": "bold",
                      "placeholder": {
                        "id": "5c0de888-0000-4000-8000-000000000009",
                        "name": "Tag",
                        "code": "row_label_9",
                        "placeholderType": "text",
                        "required": false,
                        "bindingPath": "item.label"
                      }
                    }
                  ]
                }
              ]
            },
            {
              "$type": "text",
              "id": "5c0de888-0000-4000-8000-000000000012",
              "name": "Price",
              "left": 400,
              "top": 8,
              "width": 103,
              "height": 16,
              "text": "0",
              "fontFamily": "Inter",
              "fontSize": 12,
              "fill": "#1c2430",
              "lineHeight": 1.25,
              "fontWeight": "bold",
              "textAlign": "right",
              "placeholder": {
                "id": "5c0de888-0000-4000-8000-000000000011",
                "name": "Price",
                "code": "row_price_11",
                "placeholderType": "number",
                "required": false,
                "bindingPath": "item.price",
                "format": {
                  "locale": "en-GB",
                  "numberStyle": "currency",
                  "currency": "GBP",
                  "currencyDisplay": "symbol",
                  "minimumFractionDigits": 2,
                  "maximumFractionDigits": 2
                }
              }
            },
            {
              "$type": "text",
              "id": "5c0de888-0000-4000-8000-000000000013",
              "name": "Sold out",
              "left": 400,
              "top": 26,
              "width": 103,
              "height": 12,
              "text": "SOLD OUT",
              "fontFamily": "Montserrat",
              "fontSize": 7,
              "fill": "#c0643a",
              "lineHeight": 1.25,
              "fontWeight": "bold",
              "charSpacing": 120,
              "textAlign": "right",
              "condition": {
                "operator": "equals",
                "placeholderCode": "item.sold_out",
                "literal": "true"
              }
            }
          ]
        },
        {
          "$type": "text",
          "id": "5c0de888-0000-4000-8000-000000000014",
          "name": "L B GRID · THREE COLUMNS · ROUNDED PHOTOS",
          "left": 40,
          "top": 334,
          "width": 300,
          "height": 12,
          "text": "B GRID · THREE COLUMNS · ROUNDED PHOTOS",
          "fontFamily": "Montserrat",
          "fontSize": 7,
          "fill": "#c0643a",
          "lineHeight": 1.25,
          "fontWeight": "bold",
          "charSpacing": 120
        },
        {
          "$type": "repeat_region",
          "id": "5c0de888-0000-4000-8000-000000000015",
          "name": "Products",
          "left": 40,
          "top": 350,
          "width": 515,
          "height": 330,
          "sourceCode": "products",
          "maxItems": 6,
          "overflowPolicy": "fail",
          "placeholder": {
            "id": "5c0de888-0000-4000-8000-000000000016",
            "name": "Products",
            "code": "products",
            "placeholderType": "json",
            "required": true
          },
          "layout": {
            "mode": "grid",
            "columns": 3,
            "rowGap": 12,
            "columnGap": 12
          },
          "children": [
            {
              "$type": "rectangle",
              "id": "5c0de888-0000-4000-8000-000000000017",
              "name": "Card",
              "left": 0,
              "top": 0,
              "width": 163,
              "height": 155,
              "fill": "#ffffff",
              "rx": 10,
              "ry": 10
            },
            {
              "$type": "image",
              "id": "5c0de888-0000-4000-8000-000000000018",
              "name": "Photo",
              "left": 8,
              "top": 8,
              "width": 147,
              "height": 96,
              "src": "",
              "fitMode": "fill",
              "frame": {
                "focalX": 0.5,
                "focalY": 0.5,
                "scale": 1,
                "offsetX": 0,
                "offsetY": 0,
                "rotation": 0
              },
              "clipPath": {
                "units": "user_space_on_use",
                "transform": [],
                "shapes": [
                  {
                    "pathData": "M 8 0 H 139 Q 147 0 147 8 V 88 Q 147 96 139 96 H 8 Q 0 96 0 88 V 8 Q 0 0 8 0 Z",
                    "fillRule": "non_zero",
                    "transform": [],
                    "opacity": 1,
                    "luminance": 1,
                    "color": "#000000"
                  }
                ]
              },
              "placeholder": {
                "id": "5c0de888-0000-4000-8000-000000000019",
                "name": "Photo",
                "code": "row_photo_19",
                "placeholderType": "image",
                "required": false,
                "bindingPath": "item.photo",
                "fitMode": "fill",
                "alignment": "center"
              }
            },
            {
              "$type": "text",
              "id": "5c0de888-0000-4000-8000-000000000021",
              "name": "Name",
              "left": 10,
              "top": 110,
              "width": 143,
              "height": 16,
              "text": "Name",
              "fontFamily": "Inter",
              "fontSize": 10,
              "fill": "#1c2430",
              "lineHeight": 1.25,
              "fontWeight": "bold",
              "placeholder": {
                "id": "5c0de888-0000-4000-8000-000000000020",
                "name": "Name",
                "code": "row_name_20",
                "placeholderType": "text",
                "required": false,
                "bindingPath": "item.name"
              }
            },
            {
              "$type": "text",
              "id": "5c0de888-0000-4000-8000-000000000023",
              "name": "Price",
              "left": 10,
              "top": 128,
              "width": 143,
              "height": 16,
              "text": "0",
              "fontFamily": "Inter",
              "fontSize": 11,
              "fill": "#c0643a",
              "lineHeight": 1.25,
              "fontWeight": "bold",
              "placeholder": {
                "id": "5c0de888-0000-4000-8000-000000000022",
                "name": "Price",
                "code": "row_price_22",
                "placeholderType": "number",
                "required": false,
                "bindingPath": "item.price",
                "format": {
                  "locale": "en-GB",
                  "numberStyle": "currency",
                  "currency": "GBP",
                  "currencyDisplay": "symbol",
                  "minimumFractionDigits": 2,
                  "maximumFractionDigits": 2
                }
              }
            }
          ]
        },
        {
          "$type": "text",
          "id": "5c0de888-0000-4000-8000-000000000024",
          "name": "L C OVERFLOW FIT · 8 ITEMS IN ROOM FOR 4",
          "left": 40,
          "top": 704,
          "width": 300,
          "height": 12,
          "text": "C OVERFLOW FIT · 8 ITEMS IN ROOM FOR 4",
          "fontFamily": "Montserrat",
          "fontSize": 7,
          "fill": "#c0643a",
          "lineHeight": 1.25,
          "fontWeight": "bold",
          "charSpacing": 120
        },
        {
          "$type": "repeat_region",
          "id": "5c0de888-0000-4000-8000-000000000025",
          "name": "Fit list",
          "left": 40,
          "top": 720,
          "width": 240,
          "height": 80,
          "sourceCode": "hours",
          "maxItems": 10,
          "overflowPolicy": "fit",
          "placeholder": {
            "id": "5c0de888-0000-4000-8000-000000000026",
            "name": "Opening hours",
            "code": "hours",
            "placeholderType": "json",
            "required": true
          },
          "layout": {
            "mode": "vertical",
            "rowGap": 2
          },
          "children": [
            {
              "$type": "text",
              "id": "5c0de888-0000-4000-8000-000000000028",
              "name": "Day",
              "left": 0,
              "top": 0,
              "width": 240,
              "height": 18,
              "text": "Mon 9–18",
              "fontFamily": "Inter",
              "fontSize": 11,
              "fill": "#1c2430",
              "lineHeight": 1.25,
              "placeholder": {
                "id": "5c0de888-0000-4000-8000-000000000027",
                "name": "Day",
                "code": "row_line_27",
                "placeholderType": "text",
                "required": false,
                "bindingPath": "item.line"
              }
            }
          ]
        },
        {
          "$type": "text",
          "id": "5c0de888-0000-4000-8000-000000000029",
          "name": "L D AN EMPTY LIST SHOWS A MESSAGE",
          "left": 315,
          "top": 704,
          "width": 300,
          "height": 12,
          "text": "D AN EMPTY LIST SHOWS A MESSAGE",
          "fontFamily": "Montserrat",
          "fontSize": 7,
          "fill": "#c0643a",
          "lineHeight": 1.25,
          "fontWeight": "bold",
          "charSpacing": 120
        },
        {
          "$type": "repeat_region",
          "id": "5c0de888-0000-4000-8000-000000000030",
          "name": "Extras",
          "left": 315,
          "top": 720,
          "width": 240,
          "height": 60,
          "sourceCode": "extras",
          "maxItems": 5,
          "overflowPolicy": "clip",
          "placeholder": {
            "id": "5c0de888-0000-4000-8000-000000000031",
            "name": "Extras",
            "code": "extras",
            "placeholderType": "json",
            "required": false
          },
          "layout": {
            "mode": "vertical",
            "rowGap": 2
          },
          "children": [
            {
              "$type": "text",
              "id": "5c0de888-0000-4000-8000-000000000033",
              "name": "Extra",
              "left": 0,
              "top": 0,
              "width": 240,
              "height": 16,
              "text": "Extra",
              "fontFamily": "Inter",
              "fontSize": 11,
              "fill": "#1c2430",
              "lineHeight": 1.25,
              "placeholder": {
                "id": "5c0de888-0000-4000-8000-000000000032",
                "name": "Extra",
                "code": "row_line_32",
                "placeholderType": "text",
                "required": false,
                "bindingPath": "item.line"
              }
            }
          ]
        },
        {
          "$type": "text",
          "id": "5c0de888-0000-4000-8000-000000000034",
          "name": "No extras",
          "left": 315,
          "top": 720,
          "width": 240,
          "height": 16,
          "text": "No extras on this menu today.",
          "fontFamily": "Inter",
          "fontSize": 11,
          "fill": "#5c6663",
          "lineHeight": 1.25,
          "fontStyle": "italic",
          "condition": {
            "operator": "not",
            "conditions": [
              {
                "operator": "not_empty",
                "placeholderCode": "extras"
              }
            ]
          }
        }
      ]
    },
    {
      "id": "5c0de888-0000-4000-8000-000000000036",
      "name": "Catalogue",
      "width": 595,
      "height": 842,
      "pageFormat": "A4",
      "backgroundColor": "#ffffff",
      "elements": [
        {
          "$type": "rectangle",
          "id": "5c0de888-0000-4000-8000-000000000037",
          "name": "Band",
          "left": 0,
          "top": 0,
          "width": 595,
          "height": 120,
          "fill": "#23493a"
        },
        {
          "$type": "text",
          "id": "5c0de888-0000-4000-8000-000000000038",
          "name": "Catalogue title",
          "left": 40,
          "top": 44,
          "width": 515,
          "height": 40,
          "text": "Spare parts catalogue",
          "fontFamily": "Playfair Display",
          "fontSize": 30,
          "fill": "#ffffff",
          "lineHeight": 1.25,
          "fontWeight": "bold"
        },
        {
          "$type": "repeat_region",
          "id": "5c0de888-0000-4000-8000-000000000035",
          "name": "Catalogue",
          "left": 40,
          "top": 150,
          "width": 515,
          "height": 600,
          "sourceCode": "parts",
          "maxItems": 60,
          "overflowPolicy": "continue_page",
          "placeholder": {
            "id": "5c0de888-0000-4000-8000-000000000039",
            "name": "Parts",
            "code": "parts",
            "placeholderType": "json",
            "required": true
          },
          "layout": {
            "mode": "vertical",
            "rowGap": 0
          },
          "children": [
            {
              "$type": "line",
              "id": "5c0de888-0000-4000-8000-000000000040",
              "name": "Rule",
              "left": 0,
              "top": 43,
              "width": 515,
              "height": 0,
              "x1": 0,
              "y1": 0,
              "x2": 515,
              "y2": 0,
              "stroke": "#d0d5dd",
              "strokeWidth": 0.75
            },
            {
              "$type": "text",
              "id": "5c0de888-0000-4000-8000-000000000042",
              "name": "Code",
              "left": 0,
              "top": 8,
              "width": 70,
              "height": 14,
              "text": "A-000",
              "fontFamily": "Montserrat",
              "fontSize": 8,
              "fill": "#5c6663",
              "lineHeight": 1.25,
              "fontWeight": "bold",
              "placeholder": {
                "id": "5c0de888-0000-4000-8000-000000000041",
                "name": "Code",
                "code": "row_code_41",
                "placeholderType": "text",
                "required": false,
                "bindingPath": "item.code"
              }
            },
            {
              "$type": "text",
              "id": "5c0de888-0000-4000-8000-000000000044",
              "name": "Item",
              "left": 80,
              "top": 6,
              "width": 330,
              "height": 16,
              "text": "Item",
              "fontFamily": "Inter",
              "fontSize": 11,
              "fill": "#1c2430",
              "lineHeight": 1.25,
              "placeholder": {
                "id": "5c0de888-0000-4000-8000-000000000043",
                "name": "Item",
                "code": "row_name_43",
                "placeholderType": "text",
                "required": false,
                "bindingPath": "item.name"
              }
            },
            {
              "$type": "text",
              "id": "5c0de888-0000-4000-8000-000000000046",
              "name": "Price",
              "left": 415,
              "top": 6,
              "width": 100,
              "height": 16,
              "text": "0",
              "fontFamily": "Inter",
              "fontSize": 11,
              "fill": "#1c2430",
              "lineHeight": 1.25,
              "fontWeight": "bold",
              "textAlign": "right",
              "placeholder": {
                "id": "5c0de888-0000-4000-8000-000000000045",
                "name": "Price",
                "code": "row_price_45",
                "placeholderType": "number",
                "required": false,
                "bindingPath": "item.price",
                "format": {
                  "locale": "en-GB",
                  "numberStyle": "currency",
                  "currency": "GBP",
                  "currencyDisplay": "symbol",
                  "minimumFractionDigits": 2,
                  "maximumFractionDigits": 2
                }
              }
            }
          ]
        },
        {
          "$type": "text",
          "id": "5c0de888-0000-4000-8000-000000000047",
          "name": "Page number",
          "left": 40,
          "top": 790,
          "width": 515,
          "height": 14,
          "text": "Page {{page}} of {{pages}}",
          "fontFamily": "Inter",
          "fontSize": 9,
          "fill": "#5c6663",
          "lineHeight": 1.25,
          "textAlign": "right"
        }
      ]
    }
  ],
  "sampleSets": [
    {
      "id": "5c0de888-0000-4000-8000-000000000999",
      "name": "Lab",
      "values": {
        "dishes": [
          {
            "name": "Burrata, heirloom tomatoes, basil oil",
            "price": 12.5,
            "sold_out": false,
            "tags": [
              {
                "label": "VEGETARIAN"
              },
              {
                "label": "LOCAL"
              }
            ]
          },
          {
            "name": "Hand-cut tagliatelle with slow-cooked beef ragù, aged parmesan and a hint of nutmeg",
            "price": 18,
            "sold_out": true,
            "tags": [
              {
                "label": "HOUSE CLASSIC"
              }
            ]
          },
          {
            "name": "Grilled sea bass, fennel, lemon",
            "price": 24,
            "sold_out": false,
            "tags": []
          }
        ],
        "products": [
          {
            "name": "Denim shirt",
            "price": 49,
            "photo": "https://images.unsplash.com/photo-1596755094514-f87e34085b2c?w=600"
          },
          {
            "name": "Canvas tote",
            "price": 25,
            "photo": "https://images.unsplash.com/photo-1544816155-12df9643f363?w=600"
          },
          {
            "name": "City backpack",
            "price": 89,
            "photo": "https://images.unsplash.com/photo-1553062407-98eeb64c6a62?w=600"
          },
          {
            "name": "Barista class",
            "price": 45,
            "photo": "https://images.unsplash.com/photo-1520903920243-00d872a2d1c9?w=600"
          },
          {
            "name": "Washed cap",
            "price": 32,
            "photo": "https://images.unsplash.com/photo-1521369909029-2afed882baee?w=600"
          }
        ],
        "hours": [
          {
            "line": "Mon 9–18"
          },
          {
            "line": "Tue 9–18"
          },
          {
            "line": "Wed 9–18"
          },
          {
            "line": "Thu 9–21"
          },
          {
            "line": "Fri 9–21"
          },
          {
            "line": "Sat 10–22"
          },
          {
            "line": "Sun 10–16"
          },
          {
            "line": "Holidays closed"
          }
        ],
        "extras": [],
        "parts": [
          {
            "code": "A-101",
            "name": "Replacement part number 1",
            "price": 4.5
          },
          {
            "code": "A-102",
            "name": "Replacement part number 2",
            "price": 5.75
          },
          {
            "code": "A-103",
            "name": "Replacement part number 3",
            "price": 7
          },
          {
            "code": "A-104",
            "name": "Replacement part number 4",
            "price": 8.25
          },
          {
            "code": "A-105",
            "name": "Replacement part number 5",
            "price": 9.5
          },
          {
            "code": "A-106",
            "name": "Replacement part number 6",
            "price": 10.75
          },
          {
            "code": "A-107",
            "name": "Replacement part number 7",
            "price": 12
          },
          {
            "code": "A-108",
            "name": "Replacement part number 8",
            "price": 13.25
          },
          {
            "code": "A-109",
            "name": "Replacement part number 9",
            "price": 14.5
          },
          {
            "code": "A-110",
            "name": "Replacement part number 10",
            "price": 15.75
          },
          {
            "code": "A-111",
            "name": "Replacement part number 11",
            "price": 17
          },
          {
            "code": "A-112",
            "name": "Replacement part number 12",
            "price": 18.25
          },
          {
            "code": "A-113",
            "name": "Replacement part number 13",
            "price": 19.5
          },
          {
            "code": "A-114",
            "name": "Replacement part number 14",
            "price": 20.75
          },
          {
            "code": "A-115",
            "name": "Replacement part number 15",
            "price": 22
          },
          {
            "code": "A-116",
            "name": "Replacement part number 16",
            "price": 23.25
          },
          {
            "code": "A-117",
            "name": "Replacement part number 17",
            "price": 24.5
          },
          {
            "code": "A-118",
            "name": "Replacement part number 18",
            "price": 25.75
          },
          {
            "code": "A-119",
            "name": "Replacement part number 19",
            "price": 27
          },
          {
            "code": "A-120",
            "name": "Replacement part number 20",
            "price": 28.25
          },
          {
            "code": "A-121",
            "name": "Replacement part number 21",
            "price": 29.5
          },
          {
            "code": "A-122",
            "name": "Replacement part number 22",
            "price": 30.75
          },
          {
            "code": "A-123",
            "name": "Replacement part number 23",
            "price": 32
          },
          {
            "code": "A-124",
            "name": "Replacement part number 24",
            "price": 33.25
          },
          {
            "code": "A-125",
            "name": "Replacement part number 25",
            "price": 34.5
          },
          {
            "code": "A-126",
            "name": "Replacement part number 26",
            "price": 35.75
          }
        ]
      }
    }
  ]
}
