{
  "page_ir": {
    "page_id": "booking_confirm",
    "page_goal": "Display booking confirmation with success message, booking details, ticket with QR code, and navigation actions after successful payment",
    "style": {
      "tone": "celebratory",
      "theme": "light",
      "density": "comfortable",
      "color_intent": "success-focused with green checkmark and blue primary actions"
    },
    "accessibility": {
      "required_labels": [
        "Booking confirmed status",
        "Booking reference number",
        "Route details",
        "Departure and arrival times",
        "Seat numbers",
        "Total amount paid",
        "Ticket number",
        "Download ticket button",
        "View booking details button",
        "Search more buses button"
      ],
      "skip_navigation": true,
      "focus_management": true,
      "announce_changes": []
    },
    "responsive": {
      "breakpoints": {
        "xs": 480,
        "sm": 576,
        "md": 768,
        "lg": 992,
        "xl": 1200
      },
      "collapse_rules": [
        "Action buttons stack vertically on xs/sm",
        "Booking details card takes full width on mobile",
        "Ticket section stacks below booking details on mobile"
      ],
      "hidden_on_small": [],
      "stack_on_small": []
    },
    "constraints": [
      "Page requires bookingId route parameter",
      "User must be authenticated to view this page",
      "Booking data fetched on mount using bookingId"
    ],
    "seo_title": null,
    "seo_description": null
  },
  "data_ir": {
    "types": {},
    "state": {
      "bookingDetails": {
        "type": "object",
        "initial": null,
        "required": true,
        "constraints": {
          "description": "Full booking detail object from API including user, schedule, seats, ticket, payments"
        },
        "item_type": null
      },
      "loading": {
        "type": "boolean",
        "initial": true,
        "required": false,
        "constraints": {},
        "item_type": null
      },
      "downloadingTicket": {
        "type": "boolean",
        "initial": false,
        "required": false,
        "constraints": {},
        "item_type": null
      }
    },
    "derived": {
      "bookingReference": {
        "type": "string",
        "expr": "state.bookingDetails?.booking_reference || ''",
        "deps": []
      },
      "routeDisplay": {
        "type": "string",
        "expr": "state.bookingDetails?.schedule?.route?.origin_city + ' → ' + state.bookingDetails?.schedule?.route?.destination_city",
        "deps": []
      },
      "departureDateTime": {
        "type": "string",
        "expr": "state.bookingDetails?.schedule?.departure_datetime",
        "deps": []
      },
      "arrivalDateTime": {
        "type": "string",
        "expr": "state.bookingDetails?.schedule?.arrival_datetime",
        "deps": []
      },
      "busNumber": {
        "type": "string",
        "expr": "state.bookingDetails?.schedule?.bus?.bus_number || ''",
        "deps": []
      },
      "busType": {
        "type": "string",
        "expr": "state.bookingDetails?.schedule?.bus?.bus_type || ''",
        "deps": []
      },
      "seatNumbers": {
        "type": "string",
        "expr": "(state.bookingDetails?.booking_seats || []).map(s => s.seat_number).join(', ')",
        "deps": []
      },
      "totalAmount": {
        "type": "number",
        "expr": "state.bookingDetails?.total_amount || 0",
        "deps": []
      },
      "paymentMethod": {
        "type": "string",
        "expr": "(state.bookingDetails?.payments && state.bookingDetails.payments.length > 0) ? state.bookingDetails.payments[0].payment_method : 'N/A'",
        "deps": []
      },
      "paymentStatus": {
        "type": "string",
        "expr": "state.bookingDetails?.payment_status || ''",
        "deps": []
      },
      "bookingDateTime": {
        "type": "string",
        "expr": "state.bookingDetails?.booking_datetime",
        "deps": []
      },
      "ticketNumber": {
        "type": "string",
        "expr": "state.bookingDetails?.ticket?.ticket_number || ''",
        "deps": []
      },
      "qrCode": {
        "type": "string",
        "expr": "state.bookingDetails?.ticket?.qr_code || ''",
        "deps": []
      },
      "bookingStatus": {
        "type": "string",
        "expr": "state.bookingDetails?.status || ''",
        "deps": []
      }
    }
  },
  "data_fetch_ir": {
    "endpoints": {
      "10b3f21799174d0f884fb9972d734664": {
        "endpoint_id": "10b3f21799174d0f884fb9972d734664",
        "module": "Booking Management",
        "endpoint": "/bookings/{booking_id}/details",
        "method": "GET",
        "path_params": {
          "booking_id": "$route.bookingId"
        },
        "query_params": {},
        "body": null,
        "fields": [
          "id",
          "reservation_id",
          "booking_datetime",
          "total_amount",
          "payment_status",
          "booking_reference",
          "status",
          "created_at",
          "updated_at",
          "user",
          "schedule",
          "booking_seats",
          "ticket",
          "payments"
        ],
        "response_target": "bookingDetails",
        "response_transform": null,
        "trigger": "on_mount",
        "depends_on": [],
        "debounce_ms": null,
        "loading_field": null,
        "error_field": null
      }
    }
  },
  "data_model_ir": {
    "entities": {
      "booking": {
        "name": "Booking",
        "backend_module": "Booking Management",
        "fields": [
          "id",
          "reservation_id",
          "booking_datetime",
          "total_amount",
          "payment_status",
          "booking_reference",
          "status",
          "created_at",
          "updated_at"
        ],
        "computed": [],
        "display_fields": [
          "booking_reference",
          "total_amount",
          "payment_status",
          "status",
          "booking_datetime"
        ],
        "search_fields": [],
        "filters": [],
        "default_sort": null,
        "default_sort_dir": "asc"
      },
      "bookingDetail": {
        "name": "BookingDetail",
        "backend_module": "Booking Management",
        "fields": [
          "id",
          "reservation_id",
          "booking_datetime",
          "total_amount",
          "payment_status",
          "booking_reference",
          "status",
          "created_at",
          "updated_at",
          "user",
          "schedule",
          "booking_seats",
          "ticket",
          "payments"
        ],
        "computed": [],
        "display_fields": [
          "booking_reference",
          "total_amount",
          "payment_status",
          "status",
          "booking_datetime",
          "booking_seats",
          "ticket"
        ],
        "search_fields": [],
        "filters": [],
        "default_sort": null,
        "default_sort_dir": "asc"
      },
      "ticket": {
        "name": "Ticket",
        "backend_module": "Booking Management",
        "fields": [
          "id",
          "booking_id",
          "ticket_number",
          "qr_code",
          "issue_datetime",
          "validity_status",
          "created_at",
          "updated_at"
        ],
        "computed": [],
        "display_fields": [
          "ticket_number",
          "qr_code",
          "validity_status"
        ],
        "search_fields": [],
        "filters": [],
        "default_sort": null,
        "default_sort_dir": "asc"
      }
    },
    "relationships": []
  },
  "behaviour_ir": {
    "events": {
      "onBookingLoaded": {
        "type": "mutation",
        "updates": [
          {
            "target": "state.loading",
            "expr": "false"
          }
        ],
        "description": ""
      }
    },
    "actions": {
      "44fbee577b344199b481d91d365977d2": {
        "action_id": "44fbee577b344199b481d91d365977d2",
        "trigger": "button_click",
        "target_component_id": "download_ticket_btn",
        "operation": "custom",
        "description": "",
        "payload": {
          "bookingId": "$route.bookingId",
          "ticketNumber": "derived.ticketNumber"
        },
        "guard": null,
        "requires_confirmation": false,
        "confirmation_message": null,
        "validation_rules": [],
        "validation_messages": {},
        "updates": [
          {
            "target": "state.downloadingTicket",
            "expr": "true"
          }
        ],
        "api_endpoint": null,
        "api_body": null,
        "side_effects": [
          {
            "type": "download",
            "config": {
              "filename": "ticket_${derived.ticketNumber}.pdf",
              "source": "generated_pdf"
            }
          },
          {
            "type": "toast",
            "config": {
              "message": "Ticket downloaded successfully!",
              "type": "success"
            }
          }
        ],
        "then": null,
        "catch": null,
        "data_action": null
      },
      "c9a1326e98ff4322872905b37377f02d": {
        "action_id": "c9a1326e98ff4322872905b37377f02d",
        "trigger": "button_click",
        "target_component_id": "view_details_btn",
        "operation": "custom",
        "description": "",
        "payload": {},
        "guard": null,
        "requires_confirmation": false,
        "confirmation_message": null,
        "validation_rules": [],
        "validation_messages": {},
        "updates": [],
        "api_endpoint": null,
        "api_body": null,
        "side_effects": [
          {
            "type": "navigate",
            "config": {
              "path": "/bookings/${$route.bookingId}"
            }
          }
        ],
        "then": null,
        "catch": null,
        "data_action": null
      },
      "8964edea21b54585bcb39f93e895cf82": {
        "action_id": "8964edea21b54585bcb39f93e895cf82",
        "trigger": "button_click",
        "target_component_id": "search_buses_btn",
        "operation": "custom",
        "description": "",
        "payload": {},
        "guard": null,
        "requires_confirmation": false,
        "confirmation_message": null,
        "validation_rules": [],
        "validation_messages": {},
        "updates": [],
        "api_endpoint": null,
        "api_body": null,
        "side_effects": [
          {
            "type": "navigate",
            "config": {
              "path": "/"
            }
          }
        ],
        "then": null,
        "catch": null,
        "data_action": null
      },
      "33355f92d9c3421aa93b076173baa45e": {
        "action_id": "33355f92d9c3421aa93b076173baa45e",
        "trigger": "button_click",
        "target_component_id": "booking_history_link",
        "operation": "custom",
        "description": "",
        "payload": {},
        "guard": null,
        "requires_confirmation": false,
        "confirmation_message": null,
        "validation_rules": [],
        "validation_messages": {},
        "updates": [],
        "api_endpoint": null,
        "api_body": null,
        "side_effects": [
          {
            "type": "navigate",
            "config": {
              "path": "/bookings"
            }
          }
        ],
        "then": null,
        "catch": null,
        "data_action": null
      }
    },
    "feedback": {
      "44fbee577b344199b481d91d365977d2": {
        "action_id": "44fbee577b344199b481d91d365977d2",
        "loading_indicator": "spinner",
        "loading_text": null,
        "success_message": "Ticket downloaded successfully!",
        "error_message": "Failed to download ticket. Please try again.",
        "ui_updates": [
          "state.downloadingTicket = false"
        ]
      },
      "c9a1326e98ff4322872905b37377f02d": {
        "action_id": "c9a1326e98ff4322872905b37377f02d",
        "loading_indicator": null,
        "loading_text": null,
        "success_message": null,
        "error_message": null,
        "ui_updates": []
      },
      "8964edea21b54585bcb39f93e895cf82": {
        "action_id": "8964edea21b54585bcb39f93e895cf82",
        "loading_indicator": null,
        "loading_text": null,
        "success_message": null,
        "error_message": null,
        "ui_updates": []
      },
      "33355f92d9c3421aa93b076173baa45e": {
        "action_id": "33355f92d9c3421aa93b076173baa45e",
        "loading_indicator": null,
        "loading_text": null,
        "success_message": null,
        "error_message": null,
        "ui_updates": []
      }
    }
  },
  "component_ir": {
    "library": "antd",
    "theme": {
      "primaryColor": "#1677ff",
      "secondaryColor": "#52c41a",
      "successColor": null,
      "warningColor": null,
      "errorColor": null,
      "fontFamily": "sans-serif",
      "fontSize": null,
      "borderRadius": 6
    },
    "components": {
      "main_container": {
        "type": "div",
        "label": null,
        "description": null,
        "bind": null,
        "onClick": null,
        "onChange": null,
        "onSubmit": null,
        "onHover": null,
        "onKeyPress": null,
        "props": {},
        "dynamic_props": {},
        "styles": {
          "minHeight": "100vh",
          "width": "100%",
          "backgroundColor": "#f5f5f5",
          "display": "flex",
          "flexDirection": "column",
          "alignItems": "center",
          "padding": "24px 16px"
        },
        "dynamic_styles": {},
        "class_name": null,
        "dynamic_class": null,
        "transitions": [],
        "visible_when": null,
        "disabled_when": null,
        "repeat": null,
        "slots": {},
        "a11y_role": null,
        "a11y_label": null
      },
      "content_wrapper": {
        "type": "div",
        "label": null,
        "description": null,
        "bind": null,
        "onClick": null,
        "onChange": null,
        "onSubmit": null,
        "onHover": null,
        "onKeyPress": null,
        "props": {},
        "dynamic_props": {},
        "styles": {
          "maxWidth": "720px",
          "width": "100%"
        },
        "dynamic_styles": {},
        "class_name": null,
        "dynamic_class": null,
        "transitions": [],
        "visible_when": null,
        "disabled_when": null,
        "repeat": null,
        "slots": {},
        "a11y_role": null,
        "a11y_label": null
      },
      "success_section": {
        "type": "Card",
        "label": null,
        "description": null,
        "bind": null,
        "onClick": null,
        "onChange": null,
        "onSubmit": null,
        "onHover": null,
        "onKeyPress": null,
        "props": {
          "bordered": false
        },
        "dynamic_props": {},
        "styles": {
          "textAlign": "center",
          "marginBottom": "24px",
          "borderRadius": "8px"
        },
        "dynamic_styles": {},
        "class_name": null,
        "dynamic_class": null,
        "transitions": [],
        "visible_when": null,
        "disabled_when": null,
        "repeat": null,
        "slots": {},
        "a11y_role": null,
        "a11y_label": null
      },
      "success_icon": {
        "type": "Result",
        "label": null,
        "description": null,
        "bind": null,
        "onClick": null,
        "onChange": null,
        "onSubmit": null,
        "onHover": null,
        "onKeyPress": null,
        "props": {
          "status": "success",
          "title": "Booking Confirmed!",
          "subTitle": "Your booking has been successfully confirmed. Here are your booking details."
        },
        "dynamic_props": {},
        "styles": {
          "paddingBottom": "0"
        },
        "dynamic_styles": {},
        "class_name": null,
        "dynamic_class": null,
        "transitions": [],
        "visible_when": null,
        "disabled_when": null,
        "repeat": null,
        "slots": {},
        "a11y_role": null,
        "a11y_label": null
      },
      "booking_reference_section": {
        "type": "div",
        "label": null,
        "description": null,
        "bind": null,
        "onClick": null,
        "onChange": null,
        "onSubmit": null,
        "onHover": null,
        "onKeyPress": null,
        "props": {},
        "dynamic_props": {},
        "styles": {
          "textAlign": "center",
          "padding": "16px 0",
          "marginBottom": "8px"
        },
        "dynamic_styles": {},
        "class_name": null,
        "dynamic_class": null,
        "transitions": [],
        "visible_when": null,
        "disabled_when": null,
        "repeat": null,
        "slots": {},
        "a11y_role": null,
        "a11y_label": null
      },
      "reference_label": {
        "type": "Typography.Text",
        "label": "Booking Reference",
        "description": null,
        "bind": null,
        "onClick": null,
        "onChange": null,
        "onSubmit": null,
        "onHover": null,
        "onKeyPress": null,
        "props": {
          "type": "secondary"
        },
        "dynamic_props": {},
        "styles": {
          "fontSize": "14px",
          "display": "block",
          "marginBottom": "4px"
        },
        "dynamic_styles": {},
        "class_name": null,
        "dynamic_class": null,
        "transitions": [],
        "visible_when": null,
        "disabled_when": null,
        "repeat": null,
        "slots": {},
        "a11y_role": null,
        "a11y_label": null
      },
      "reference_number": {
        "type": "Typography.Title",
        "label": null,
        "description": null,
        "bind": "derived.bookingReference",
        "onClick": null,
        "onChange": null,
        "onSubmit": null,
        "onHover": null,
        "onKeyPress": null,
        "props": {
          "level": 2,
          "copyable": true
        },
        "dynamic_props": {},
        "styles": {
          "color": "#1677ff",
          "margin": "0",
          "letterSpacing": "2px"
        },
        "dynamic_styles": {},
        "class_name": null,
        "dynamic_class": null,
        "transitions": [],
        "visible_when": null,
        "disabled_when": null,
        "repeat": null,
        "slots": {},
        "a11y_role": null,
        "a11y_label": null
      },
      "booking_details_card": {
        "type": "Card",
        "label": "Booking Details",
        "description": null,
        "bind": null,
        "onClick": null,
        "onChange": null,
        "onSubmit": null,
        "onHover": null,
        "onKeyPress": null,
        "props": {
          "title": "Booking Details",
          "bordered": false
        },
        "dynamic_props": {},
        "styles": {
          "marginBottom": "24px",
          "borderRadius": "8px"
        },
        "dynamic_styles": {},
        "class_name": null,
        "dynamic_class": null,
        "transitions": [],
        "visible_when": null,
        "disabled_when": null,
        "repeat": null,
        "slots": {},
        "a11y_role": null,
        "a11y_label": null
      },
      "details_descriptions": {
        "type": "Descriptions",
        "label": null,
        "description": null,
        "bind": null,
        "onClick": null,
        "onChange": null,
        "onSubmit": null,
        "onHover": null,
        "onKeyPress": null,
        "props": {
          "column": {
            "xs": 1,
            "sm": 2
          },
          "bordered": true,
          "size": "middle",
          "items": [
            {
              "key": "route",
              "label": "Route",
              "children": "derived.routeDisplay"
            },
            {
              "key": "departure",
              "label": "Departure",
              "children": "derived.departureDateTime"
            },
            {
              "key": "arrival",
              "label": "Arrival",
              "children": "derived.arrivalDateTime"
            },
            {
              "key": "bus_number",
              "label": "Bus Number",
              "children": "derived.busNumber"
            },
            {
              "key": "bus_type",
              "label": "Bus Type",
              "children": "derived.busType"
            },
            {
              "key": "seats",
              "label": "Seat Numbers",
              "children": "derived.seatNumbers"
            },
            {
              "key": "total_amount",
              "label": "Total Amount Paid",
              "children": "derived.totalAmount"
            },
            {
              "key": "payment_method",
              "label": "Payment Method",
              "children": "derived.paymentMethod"
            },
            {
              "key": "booking_datetime",
              "label": "Booking Date & Time",
              "children": "derived.bookingDateTime"
            },
            {
              "key": "status",
              "label": "Status",
              "children": "derived.bookingStatus"
            }
          ]
        },
        "dynamic_props": {},
        "styles": {},
        "dynamic_styles": {},
        "class_name": null,
        "dynamic_class": null,
        "transitions": [],
        "visible_when": null,
        "disabled_when": null,
        "repeat": null,
        "slots": {},
        "a11y_role": null,
        "a11y_label": null
      },
      "ticket_card": {
        "type": "Card",
        "label": "Your Ticket",
        "description": null,
        "bind": null,
        "onClick": null,
        "onChange": null,
        "onSubmit": null,
        "onHover": null,
        "onKeyPress": null,
        "props": {
          "title": "Your Ticket",
          "bordered": false
        },
        "dynamic_props": {},
        "styles": {
          "marginBottom": "24px",
          "borderRadius": "8px",
          "textAlign": "center"
        },
        "dynamic_styles": {},
        "class_name": null,
        "dynamic_class": null,
        "transitions": [],
        "visible_when": null,
        "disabled_when": null,
        "repeat": null,
        "slots": {},
        "a11y_role": null,
        "a11y_label": null
      },
      "ticket_content_wrapper": {
        "type": "div",
        "label": null,
        "description": null,
        "bind": null,
        "onClick": null,
        "onChange": null,
        "onSubmit": null,
        "onHover": null,
        "onKeyPress": null,
        "props": {},
        "dynamic_props": {},
        "styles": {
          "display": "flex",
          "flexDirection": "column",
          "alignItems": "center",
          "gap": "16px"
        },
        "dynamic_styles": {},
        "class_name": null,
        "dynamic_class": null,
        "transitions": [],
        "visible_when": null,
        "disabled_when": null,
        "repeat": null,
        "slots": {},
        "a11y_role": null,
        "a11y_label": null
      },
      "qr_code_image": {
        "type": "Image",
        "label": "QR Code",
        "description": null,
        "bind": "derived.qrCode",
        "onClick": null,
        "onChange": null,
        "onSubmit": null,
        "onHover": null,
        "onKeyPress": null,
        "props": {
          "width": 200,
          "height": 200,
          "alt": "Ticket QR Code",
          "preview": false,
          "fallback": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAADUlEQVR42mNk+M9QDwADhgGAWjR9awAAAABJRU5ErkJggg=="
        },
        "dynamic_props": {},
        "styles": {
          "border": "1px solid #f0f0f0",
          "borderRadius": "8px",
          "padding": "8px"
        },
        "dynamic_styles": {},
        "class_name": null,
        "dynamic_class": null,
        "transitions": [],
        "visible_when": null,
        "disabled_when": null,
        "repeat": null,
        "slots": {},
        "a11y_role": null,
        "a11y_label": null
      },
      "ticket_number_label": {
        "type": "Typography.Text",
        "label": "Ticket Number",
        "description": null,
        "bind": null,
        "onClick": null,
        "onChange": null,
        "onSubmit": null,
        "onHover": null,
        "onKeyPress": null,
        "props": {
          "type": "secondary"
        },
        "dynamic_props": {},
        "styles": {
          "fontSize": "13px"
        },
        "dynamic_styles": {},
        "class_name": null,
        "dynamic_class": null,
        "transitions": [],
        "visible_when": null,
        "disabled_when": null,
        "repeat": null,
        "slots": {},
        "a11y_role": null,
        "a11y_label": null
      },
      "ticket_number_value": {
        "type": "Typography.Text",
        "label": null,
        "description": null,
        "bind": "derived.ticketNumber",
        "onClick": null,
        "onChange": null,
        "onSubmit": null,
        "onHover": null,
        "onKeyPress": null,
        "props": {
          "strong": true,
          "copyable": true
        },
        "dynamic_props": {},
        "styles": {
          "fontSize": "18px",
          "letterSpacing": "1px"
        },
        "dynamic_styles": {},
        "class_name": null,
        "dynamic_class": null,
        "transitions": [],
        "visible_when": null,
        "disabled_when": null,
        "repeat": null,
        "slots": {},
        "a11y_role": null,
        "a11y_label": null
      },
      "ticket_validity_tag": {
        "type": "Tag",
        "label": null,
        "description": null,
        "bind": null,
        "onClick": null,
        "onChange": null,
        "onSubmit": null,
        "onHover": null,
        "onKeyPress": null,
        "props": {
          "color": "green",
          "children": "VALID"
        },
        "dynamic_props": {},
        "styles": {
          "fontSize": "14px",
          "padding": "4px 12px"
        },
        "dynamic_styles": {},
        "class_name": null,
        "dynamic_class": null,
        "transitions": [],
        "visible_when": null,
        "disabled_when": null,
        "repeat": null,
        "slots": {},
        "a11y_role": null,
        "a11y_label": null
      },
      "actions_section": {
        "type": "div",
        "label": null,
        "description": null,
        "bind": null,
        "onClick": null,
        "onChange": null,
        "onSubmit": null,
        "onHover": null,
        "onKeyPress": null,
        "props": {},
        "dynamic_props": {},
        "styles": {
          "marginBottom": "24px"
        },
        "dynamic_styles": {},
        "class_name": null,
        "dynamic_class": null,
        "transitions": [],
        "visible_when": null,
        "disabled_when": null,
        "repeat": null,
        "slots": {},
        "a11y_role": null,
        "a11y_label": null
      },
      "action_buttons_row": {
        "type": "Space",
        "label": null,
        "description": null,
        "bind": null,
        "onClick": null,
        "onChange": null,
        "onSubmit": null,
        "onHover": null,
        "onKeyPress": null,
        "props": {
          "direction": "horizontal",
          "size": "middle",
          "wrap": true
        },
        "dynamic_props": {},
        "styles": {
          "display": "flex",
          "justifyContent": "center",
          "width": "100%"
        },
        "dynamic_styles": {},
        "class_name": null,
        "dynamic_class": null,
        "transitions": [],
        "visible_when": null,
        "disabled_when": null,
        "repeat": null,
        "slots": {},
        "a11y_role": null,
        "a11y_label": null
      },
      "download_ticket_btn": {
        "type": "Button",
        "label": "Download Ticket",
        "description": null,
        "bind": null,
        "onClick": "downloadTicket",
        "onChange": null,
        "onSubmit": null,
        "onHover": null,
        "onKeyPress": null,
        "props": {
          "type": "primary",
          "icon": "DownloadOutlined",
          "size": "large",
          "loading": "state.downloadingTicket"
        },
        "dynamic_props": {},
        "styles": {
          "minWidth": "180px"
        },
        "dynamic_styles": {},
        "class_name": null,
        "dynamic_class": null,
        "transitions": [],
        "visible_when": null,
        "disabled_when": null,
        "repeat": null,
        "slots": {},
        "a11y_role": null,
        "a11y_label": null
      },
      "view_details_btn": {
        "type": "Button",
        "label": "View Booking Details",
        "description": null,
        "bind": null,
        "onClick": "viewBookingDetails",
        "onChange": null,
        "onSubmit": null,
        "onHover": null,
        "onKeyPress": null,
        "props": {
          "type": "default",
          "icon": "EyeOutlined",
          "size": "large"
        },
        "dynamic_props": {},
        "styles": {
          "minWidth": "180px"
        },
        "dynamic_styles": {},
        "class_name": null,
        "dynamic_class": null,
        "transitions": [],
        "visible_when": null,
        "disabled_when": null,
        "repeat": null,
        "slots": {},
        "a11y_role": null,
        "a11y_label": null
      },
      "search_buses_btn": {
        "type": "Button",
        "label": "Search More Buses",
        "description": null,
        "bind": null,
        "onClick": "searchMoreBuses",
        "onChange": null,
        "onSubmit": null,
        "onHover": null,
        "onKeyPress": null,
        "props": {
          "type": "default",
          "icon": "SearchOutlined",
          "size": "large"
        },
        "dynamic_props": {},
        "styles": {
          "minWidth": "180px"
        },
        "dynamic_styles": {},
        "class_name": null,
        "dynamic_class": null,
        "transitions": [],
        "visible_when": null,
        "disabled_when": null,
        "repeat": null,
        "slots": {},
        "a11y_role": null,
        "a11y_label": null
      },
      "booking_history_section": {
        "type": "div",
        "label": null,
        "description": null,
        "bind": null,
        "onClick": null,
        "onChange": null,
        "onSubmit": null,
        "onHover": null,
        "onKeyPress": null,
        "props": {},
        "dynamic_props": {},
        "styles": {
          "textAlign": "center",
          "paddingBottom": "24px"
        },
        "dynamic_styles": {},
        "class_name": null,
        "dynamic_class": null,
        "transitions": [],
        "visible_when": null,
        "disabled_when": null,
        "repeat": null,
        "slots": {},
        "a11y_role": null,
        "a11y_label": null
      },
      "booking_history_link": {
        "type": "Button",
        "label": "View My Bookings",
        "description": null,
        "bind": null,
        "onClick": "goToBookingHistory",
        "onChange": null,
        "onSubmit": null,
        "onHover": null,
        "onKeyPress": null,
        "props": {
          "type": "link",
          "icon": "HistoryOutlined"
        },
        "dynamic_props": {},
        "styles": {
          "fontSize": "15px"
        },
        "dynamic_styles": {},
        "class_name": null,
        "dynamic_class": null,
        "transitions": [],
        "visible_when": null,
        "disabled_when": null,
        "repeat": null,
        "slots": {},
        "a11y_role": null,
        "a11y_label": null
      },
      "loading_spinner": {
        "type": "Spin",
        "label": null,
        "description": null,
        "bind": "state.loading",
        "onClick": null,
        "onChange": null,
        "onSubmit": null,
        "onHover": null,
        "onKeyPress": null,
        "props": {
          "size": "large",
          "tip": "Loading booking details..."
        },
        "dynamic_props": {},
        "styles": {
          "display": "flex",
          "justifyContent": "center",
          "alignItems": "center",
          "minHeight": "400px",
          "width": "100%"
        },
        "dynamic_styles": {},
        "class_name": null,
        "dynamic_class": null,
        "transitions": [],
        "visible_when": null,
        "disabled_when": null,
        "repeat": null,
        "slots": {},
        "a11y_role": null,
        "a11y_label": null
      },
      "divider_before_actions": {
        "type": "Divider",
        "label": null,
        "description": null,
        "bind": null,
        "onClick": null,
        "onChange": null,
        "onSubmit": null,
        "onHover": null,
        "onKeyPress": null,
        "props": {},
        "dynamic_props": {},
        "styles": {},
        "dynamic_styles": {},
        "class_name": null,
        "dynamic_class": null,
        "transitions": [],
        "visible_when": null,
        "disabled_when": null,
        "repeat": null,
        "slots": {},
        "a11y_role": null,
        "a11y_label": null
      }
    }
  },
  "layout_ir": {
    "root": "main_container",
    "children": {
      "main_container": [
        "content_wrapper",
        "loading_spinner"
      ],
      "content_wrapper": [
        "success_section",
        "booking_details_card",
        "ticket_card",
        "divider_before_actions",
        "actions_section",
        "booking_history_section"
      ],
      "success_section": [
        "success_icon",
        "booking_reference_section"
      ],
      "booking_reference_section": [
        "reference_label",
        "reference_number"
      ],
      "booking_details_card": [
        "details_descriptions"
      ],
      "ticket_card": [
        "ticket_content_wrapper"
      ],
      "ticket_content_wrapper": [
        "qr_code_image",
        "ticket_number_label",
        "ticket_number_value",
        "ticket_validity_tag"
      ],
      "actions_section": [
        "action_buttons_row"
      ],
      "action_buttons_row": [
        "download_ticket_btn",
        "view_details_btn",
        "search_buses_btn"
      ],
      "booking_history_section": [
        "booking_history_link"
      ]
    },
    "layout": {
      "main_container": {
        "type": "vertical",
        "gap": 0,
        "padding": null,
        "columns": null,
        "column_template": null,
        "row_template": null,
        "align_items": null,
        "justify_content": null,
        "wrap": false,
        "min_height": null,
        "overflow": null
      },
      "content_wrapper": {
        "type": "vertical",
        "gap": 0,
        "padding": null,
        "columns": null,
        "column_template": null,
        "row_template": null,
        "align_items": null,
        "justify_content": null,
        "wrap": false,
        "min_height": null,
        "overflow": null
      },
      "success_section": {
        "type": "vertical",
        "gap": 0,
        "padding": null,
        "columns": null,
        "column_template": null,
        "row_template": null,
        "align_items": null,
        "justify_content": null,
        "wrap": false,
        "min_height": null,
        "overflow": null
      },
      "booking_reference_section": {
        "type": "vertical",
        "gap": 4,
        "padding": null,
        "columns": null,
        "column_template": null,
        "row_template": null,
        "align_items": null,
        "justify_content": null,
        "wrap": false,
        "min_height": null,
        "overflow": null
      },
      "booking_details_card": {
        "type": "vertical",
        "gap": 0,
        "padding": null,
        "columns": null,
        "column_template": null,
        "row_template": null,
        "align_items": null,
        "justify_content": null,
        "wrap": false,
        "min_height": null,
        "overflow": null
      },
      "ticket_card": {
        "type": "vertical",
        "gap": 0,
        "padding": null,
        "columns": null,
        "column_template": null,
        "row_template": null,
        "align_items": null,
        "justify_content": null,
        "wrap": false,
        "min_height": null,
        "overflow": null
      },
      "ticket_content_wrapper": {
        "type": "vertical",
        "gap": 12,
        "padding": null,
        "columns": null,
        "column_template": null,
        "row_template": null,
        "align_items": null,
        "justify_content": null,
        "wrap": false,
        "min_height": null,
        "overflow": null
      },
      "actions_section": {
        "type": "vertical",
        "gap": 0,
        "padding": null,
        "columns": null,
        "column_template": null,
        "row_template": null,
        "align_items": null,
        "justify_content": null,
        "wrap": false,
        "min_height": null,
        "overflow": null
      },
      "action_buttons_row": {
        "type": "horizontal",
        "gap": 12,
        "padding": null,
        "columns": null,
        "column_template": null,
        "row_template": null,
        "align_items": null,
        "justify_content": null,
        "wrap": false,
        "min_height": null,
        "overflow": null
      },
      "booking_history_section": {
        "type": "vertical",
        "gap": 0,
        "padding": null,
        "columns": null,
        "column_template": null,
        "row_template": null,
        "align_items": null,
        "justify_content": null,
        "wrap": false,
        "min_height": null,
        "overflow": null
      }
    },
    "layout_zones": [
      {
        "zone_id": "main_zone",
        "component": "main_container",
        "anchor": "center",
        "size_hint": "full-width",
        "z_layer": "base",
        "notes": "Root page container centered with full viewport height"
      },
      {
        "zone_id": "content_zone",
        "component": "content_wrapper",
        "anchor": "center",
        "size_hint": "auto",
        "z_layer": "base",
        "notes": "Max-width content wrapper for readable layout"
      },
      {
        "zone_id": "loading_zone",
        "component": "loading_spinner",
        "anchor": "center",
        "size_hint": "full-width",
        "z_layer": "overlay",
        "notes": "Loading spinner shown while fetching booking details"
      }
    ],
    "responsive_overrides": []
  },
  "navigation_ir": {
    "tabs": [],
    "modals": {},
    "drawers": {},
    "routes": [],
    "breadcrumb": null,
    "default_tab": null
  },
  "realtime_ir": {
    "timers": {},
    "polling": {}
  },
  "metadata": {
    "ir_version": "3.5",
    "generated_at": "",
    "source_prompt": null,
    "schema_session_id": null,
    "warnings": []
  },
  "page_data_contract": null,
  "schema_ir": null
}
