{
  "page_ir": {
    "page_id": "system_config",
    "page_goal": "Allow administrators to view and modify system configuration settings organized by category (Loan, Reservation, Fine settings) with individual save buttons and reset to defaults functionality",
    "style": {
      "tone": "professional",
      "theme": "light",
      "density": "comfortable",
      "color_intent": "neutral with primary accents on save buttons"
    },
    "accessibility": {
      "required_labels": [
        "loan_period_input",
        "max_renewals_input",
        "max_concurrent_loans_input",
        "max_reservations_input",
        "pickup_expiration_input",
        "daily_fine_rate_input",
        "max_fine_input",
        "fine_threshold_input",
        "grace_period_input"
      ],
      "skip_navigation": true,
      "focus_management": true,
      "announce_changes": []
    },
    "responsive": {
      "breakpoints": {
        "sm": 576,
        "md": 768,
        "lg": 1200
      },
      "collapse_rules": [
        "cards stack vertically on small screens"
      ],
      "hidden_on_small": [],
      "stack_on_small": []
    },
    "constraints": [
      "Only administrators can access this page",
      "Changes are logged to audit trail"
    ],
    "seo_title": null,
    "seo_description": null
  },
  "data_ir": {
    "types": {},
    "state": {
      "configurations": {
        "type": "array",
        "initial": [],
        "required": true,
        "constraints": {},
        "item_type": null
      },
      "loading": {
        "type": "boolean",
        "initial": true,
        "required": false,
        "constraints": {},
        "item_type": null
      },
      "savingKey": {
        "type": "string",
        "initial": "",
        "required": false,
        "constraints": {},
        "item_type": null
      }
    },
    "derived": {}
  },
  "data_fetch_ir": {
    "endpoints": {
      "732e10389a6b4cafbf1b9ea33dda38a1": {
        "endpoint_id": "732e10389a6b4cafbf1b9ea33dda38a1",
        "module": "System",
        "endpoint": "/system/configurations",
        "method": "GET",
        "path_params": {},
        "query_params": {
          "limit": 50
        },
        "body": null,
        "fields": [
          "id",
          "config_key",
          "config_value",
          "data_type",
          "description",
          "is_editable",
          "created_at",
          "updated_at"
        ],
        "response_target": "configurations",
        "response_transform": null,
        "trigger": "on_mount",
        "depends_on": [],
        "debounce_ms": null,
        "loading_field": null,
        "error_field": null
      },
      "1fd60112299f4889bcd79c83137fcfe7": {
        "endpoint_id": "1fd60112299f4889bcd79c83137fcfe7",
        "module": "System",
        "endpoint": "/system/configurations/{config_id}",
        "method": "PUT",
        "path_params": {
          "config_id": "$action.payload.config_id"
        },
        "query_params": {},
        "body": null,
        "fields": [
          "id",
          "config_key",
          "config_value",
          "data_type",
          "description",
          "is_editable"
        ],
        "response_target": "configurations",
        "response_transform": null,
        "trigger": "manual",
        "depends_on": [],
        "debounce_ms": null,
        "loading_field": null,
        "error_field": null
      },
      "d2cc39a717554ec0acbadcfdcca75252": {
        "endpoint_id": "d2cc39a717554ec0acbadcfdcca75252",
        "module": "System",
        "endpoint": "/system/audit-logs",
        "method": "POST",
        "path_params": {},
        "query_params": {},
        "body": null,
        "fields": [
          "id",
          "user_id",
          "action_type",
          "entity_type",
          "entity_id",
          "timestamp",
          "details"
        ],
        "response_target": "createAuditLog_data",
        "response_transform": null,
        "trigger": "manual",
        "depends_on": [],
        "debounce_ms": null,
        "loading_field": null,
        "error_field": null
      }
    }
  },
  "data_model_ir": {
    "entities": {
      "system_configuration": {
        "name": "SystemConfiguration",
        "backend_module": "System",
        "fields": [
          "id",
          "config_key",
          "config_value",
          "data_type",
          "description",
          "is_editable",
          "created_at",
          "updated_at"
        ],
        "computed": [],
        "display_fields": [
          "config_key",
          "config_value",
          "description",
          "data_type"
        ],
        "search_fields": [],
        "filters": [
          "data_type",
          "is_editable"
        ],
        "default_sort": null,
        "default_sort_dir": "asc"
      }
    },
    "relationships": []
  },
  "behaviour_ir": {
    "events": {
      "onConfigValueChange": {
        "type": "mutation",
        "updates": [
          {
            "target": "state.configurations",
            "expr": "state.configurations.map(c => c.config_key === payload.key ? {...c, config_value: payload.value} : c)"
          }
        ],
        "description": ""
      }
    },
    "actions": {
      "819b1a853e68490ba9fb925d207953cd": {
        "action_id": "819b1a853e68490ba9fb925d207953cd",
        "trigger": "button_click",
        "target_component_id": "save_loan_period_btn",
        "operation": "update",
        "description": "",
        "payload": {
          "config_key": "loan_period_days"
        },
        "guard": null,
        "requires_confirmation": false,
        "confirmation_message": null,
        "validation_rules": [
          {
            "rule_id": "val_0",
            "field": null,
            "type": "custom",
            "value": null,
            "expression": "{\"field\": \"loan_period_days\", \"message\": \"Loan period is required\", \"rule_id\": \"val_loan_period\", \"type\": \"required\"}",
            "message": "{\"field\": \"loan_period_days\", \"message\": \"Loan period is required\", \"rule_id\": \"val_loan_period\", \"type\": \"required\"}"
          },
          {
            "rule_id": "val_1",
            "field": null,
            "type": "custom",
            "value": null,
            "expression": "{\"field\": \"loan_period_days\", \"message\": \"Loan period must be at least 1 day\", \"rule_id\": \"val_loan_period_min\", \"type\": \"min\", \"value\": 1}",
            "message": "{\"field\": \"loan_period_days\", \"message\": \"Loan period must be at least 1 day\", \"rule_id\": \"val_loan_period_min\", \"type\": \"min\", \"value\": 1}"
          }
        ],
        "validation_messages": {},
        "updates": [
          {
            "target": "state.savingKey",
            "expr": "'loan_period_days'"
          }
        ],
        "api_endpoint": "1fd60112299f4889bcd79c83137fcfe7",
        "api_body": "{ config_value: String(formValues.loan_period_days), config_key: 'loan_period_days', data_type: 'INTEGER' }",
        "side_effects": [
          {
            "type": "toast",
            "config": {
              "message": "Loan period updated successfully",
              "type": "success"
            }
          }
        ],
        "then": null,
        "catch": null,
        "data_action": null
      },
      "2f9e96d76568476abb32eda044821568": {
        "action_id": "2f9e96d76568476abb32eda044821568",
        "trigger": "button_click",
        "target_component_id": "save_max_renewals_btn",
        "operation": "update",
        "description": "",
        "payload": {
          "config_key": "max_renewals"
        },
        "guard": null,
        "requires_confirmation": false,
        "confirmation_message": null,
        "validation_rules": [
          {
            "rule_id": "val_0",
            "field": null,
            "type": "custom",
            "value": null,
            "expression": "{\"field\": \"max_renewals\", \"message\": \"Maximum renewals is required\", \"rule_id\": \"val_max_renewals\", \"type\": \"required\"}",
            "message": "{\"field\": \"max_renewals\", \"message\": \"Maximum renewals is required\", \"rule_id\": \"val_max_renewals\", \"type\": \"required\"}"
          },
          {
            "rule_id": "val_1",
            "field": null,
            "type": "custom",
            "value": null,
            "expression": "{\"field\": \"max_renewals\", \"message\": \"Must be at least 0\", \"rule_id\": \"val_max_renewals_min\", \"type\": \"min\", \"value\": 0}",
            "message": "{\"field\": \"max_renewals\", \"message\": \"Must be at least 0\", \"rule_id\": \"val_max_renewals_min\", \"type\": \"min\", \"value\": 0}"
          }
        ],
        "validation_messages": {},
        "updates": [
          {
            "target": "state.savingKey",
            "expr": "'max_renewals'"
          }
        ],
        "api_endpoint": "1fd60112299f4889bcd79c83137fcfe7",
        "api_body": "{ config_value: String(formValues.max_renewals), config_key: 'max_renewals', data_type: 'INTEGER' }",
        "side_effects": [
          {
            "type": "toast",
            "config": {
              "message": "Maximum renewals updated successfully",
              "type": "success"
            }
          }
        ],
        "then": null,
        "catch": null,
        "data_action": null
      },
      "848ca1112c524437b85005927750ddf4": {
        "action_id": "848ca1112c524437b85005927750ddf4",
        "trigger": "button_click",
        "target_component_id": "save_max_loans_btn",
        "operation": "update",
        "description": "",
        "payload": {
          "config_key": "max_concurrent_loans"
        },
        "guard": null,
        "requires_confirmation": false,
        "confirmation_message": null,
        "validation_rules": [
          {
            "rule_id": "val_0",
            "field": null,
            "type": "custom",
            "value": null,
            "expression": "{\"field\": \"max_concurrent_loans\", \"message\": \"Maximum concurrent loans is required\", \"rule_id\": \"val_max_loans\", \"type\": \"required\"}",
            "message": "{\"field\": \"max_concurrent_loans\", \"message\": \"Maximum concurrent loans is required\", \"rule_id\": \"val_max_loans\", \"type\": \"required\"}"
          },
          {
            "rule_id": "val_1",
            "field": null,
            "type": "custom",
            "value": null,
            "expression": "{\"field\": \"max_concurrent_loans\", \"message\": \"Must be at least 1\", \"rule_id\": \"val_max_loans_min\", \"type\": \"min\", \"value\": 1}",
            "message": "{\"field\": \"max_concurrent_loans\", \"message\": \"Must be at least 1\", \"rule_id\": \"val_max_loans_min\", \"type\": \"min\", \"value\": 1}"
          }
        ],
        "validation_messages": {},
        "updates": [
          {
            "target": "state.savingKey",
            "expr": "'max_concurrent_loans'"
          }
        ],
        "api_endpoint": "1fd60112299f4889bcd79c83137fcfe7",
        "api_body": "{ config_value: String(formValues.max_concurrent_loans), config_key: 'max_concurrent_loans', data_type: 'INTEGER' }",
        "side_effects": [
          {
            "type": "toast",
            "config": {
              "message": "Maximum concurrent loans updated successfully",
              "type": "success"
            }
          }
        ],
        "then": null,
        "catch": null,
        "data_action": null
      },
      "a2cf222591f8442ca30ec5a19598595e": {
        "action_id": "a2cf222591f8442ca30ec5a19598595e",
        "trigger": "button_click",
        "target_component_id": "save_max_reservations_btn",
        "operation": "update",
        "description": "",
        "payload": {
          "config_key": "max_reservations"
        },
        "guard": null,
        "requires_confirmation": false,
        "confirmation_message": null,
        "validation_rules": [
          {
            "rule_id": "val_0",
            "field": null,
            "type": "custom",
            "value": null,
            "expression": "{\"field\": \"max_reservations\", \"message\": \"Maximum reservations is required\", \"rule_id\": \"val_max_reservations\", \"type\": \"required\"}",
            "message": "{\"field\": \"max_reservations\", \"message\": \"Maximum reservations is required\", \"rule_id\": \"val_max_reservations\", \"type\": \"required\"}"
          },
          {
            "rule_id": "val_1",
            "field": null,
            "type": "custom",
            "value": null,
            "expression": "{\"field\": \"max_reservations\", \"message\": \"Must be at least 1\", \"rule_id\": \"val_max_reservations_min\", \"type\": \"min\", \"value\": 1}",
            "message": "{\"field\": \"max_reservations\", \"message\": \"Must be at least 1\", \"rule_id\": \"val_max_reservations_min\", \"type\": \"min\", \"value\": 1}"
          }
        ],
        "validation_messages": {},
        "updates": [
          {
            "target": "state.savingKey",
            "expr": "'max_reservations'"
          }
        ],
        "api_endpoint": "1fd60112299f4889bcd79c83137fcfe7",
        "api_body": "{ config_value: String(formValues.max_reservations), config_key: 'max_reservations', data_type: 'INTEGER' }",
        "side_effects": [
          {
            "type": "toast",
            "config": {
              "message": "Maximum reservations updated successfully",
              "type": "success"
            }
          }
        ],
        "then": null,
        "catch": null,
        "data_action": null
      },
      "d429f7daf1534417a86b363c75722d09": {
        "action_id": "d429f7daf1534417a86b363c75722d09",
        "trigger": "button_click",
        "target_component_id": "save_pickup_expiration_btn",
        "operation": "update",
        "description": "",
        "payload": {
          "config_key": "pickup_expiration_hours"
        },
        "guard": null,
        "requires_confirmation": false,
        "confirmation_message": null,
        "validation_rules": [
          {
            "rule_id": "val_0",
            "field": null,
            "type": "custom",
            "value": null,
            "expression": "{\"field\": \"pickup_expiration_hours\", \"message\": \"Pickup expiration is required\", \"rule_id\": \"val_pickup_exp\", \"type\": \"required\"}",
            "message": "{\"field\": \"pickup_expiration_hours\", \"message\": \"Pickup expiration is required\", \"rule_id\": \"val_pickup_exp\", \"type\": \"required\"}"
          },
          {
            "rule_id": "val_1",
            "field": null,
            "type": "custom",
            "value": null,
            "expression": "{\"field\": \"pickup_expiration_hours\", \"message\": \"Must be at least 1 hour\", \"rule_id\": \"val_pickup_exp_min\", \"type\": \"min\", \"value\": 1}",
            "message": "{\"field\": \"pickup_expiration_hours\", \"message\": \"Must be at least 1 hour\", \"rule_id\": \"val_pickup_exp_min\", \"type\": \"min\", \"value\": 1}"
          }
        ],
        "validation_messages": {},
        "updates": [
          {
            "target": "state.savingKey",
            "expr": "'pickup_expiration_hours'"
          }
        ],
        "api_endpoint": "1fd60112299f4889bcd79c83137fcfe7",
        "api_body": "{ config_value: String(formValues.pickup_expiration_hours), config_key: 'pickup_expiration_hours', data_type: 'INTEGER' }",
        "side_effects": [
          {
            "type": "toast",
            "config": {
              "message": "Pickup expiration updated successfully",
              "type": "success"
            }
          }
        ],
        "then": null,
        "catch": null,
        "data_action": null
      },
      "f60cfa8ca6cf48f4ba26232746922339": {
        "action_id": "f60cfa8ca6cf48f4ba26232746922339",
        "trigger": "button_click",
        "target_component_id": "save_daily_fine_btn",
        "operation": "update",
        "description": "",
        "payload": {
          "config_key": "daily_fine_rate"
        },
        "guard": null,
        "requires_confirmation": false,
        "confirmation_message": null,
        "validation_rules": [
          {
            "rule_id": "val_0",
            "field": null,
            "type": "custom",
            "value": null,
            "expression": "{\"field\": \"daily_fine_rate\", \"message\": \"Daily fine rate is required\", \"rule_id\": \"val_daily_fine\", \"type\": \"required\"}",
            "message": "{\"field\": \"daily_fine_rate\", \"message\": \"Daily fine rate is required\", \"rule_id\": \"val_daily_fine\", \"type\": \"required\"}"
          },
          {
            "rule_id": "val_1",
            "field": null,
            "type": "custom",
            "value": null,
            "expression": "{\"field\": \"daily_fine_rate\", \"message\": \"Must be at least 0\", \"rule_id\": \"val_daily_fine_min\", \"type\": \"min\", \"value\": 0}",
            "message": "{\"field\": \"daily_fine_rate\", \"message\": \"Must be at least 0\", \"rule_id\": \"val_daily_fine_min\", \"type\": \"min\", \"value\": 0}"
          }
        ],
        "validation_messages": {},
        "updates": [
          {
            "target": "state.savingKey",
            "expr": "'daily_fine_rate'"
          }
        ],
        "api_endpoint": "1fd60112299f4889bcd79c83137fcfe7",
        "api_body": "{ config_value: String(formValues.daily_fine_rate), config_key: 'daily_fine_rate', data_type: 'DECIMAL' }",
        "side_effects": [
          {
            "type": "toast",
            "config": {
              "message": "Daily fine rate updated successfully",
              "type": "success"
            }
          }
        ],
        "then": null,
        "catch": null,
        "data_action": null
      },
      "c0f9389233f04c4bb36e7e47f65f1471": {
        "action_id": "c0f9389233f04c4bb36e7e47f65f1471",
        "trigger": "button_click",
        "target_component_id": "save_max_fine_btn",
        "operation": "update",
        "description": "",
        "payload": {
          "config_key": "max_fine_per_item"
        },
        "guard": null,
        "requires_confirmation": false,
        "confirmation_message": null,
        "validation_rules": [
          {
            "rule_id": "val_0",
            "field": null,
            "type": "custom",
            "value": null,
            "expression": "{\"field\": \"max_fine_per_item\", \"message\": \"Maximum fine is required\", \"rule_id\": \"val_max_fine\", \"type\": \"required\"}",
            "message": "{\"field\": \"max_fine_per_item\", \"message\": \"Maximum fine is required\", \"rule_id\": \"val_max_fine\", \"type\": \"required\"}"
          },
          {
            "rule_id": "val_1",
            "field": null,
            "type": "custom",
            "value": null,
            "expression": "{\"field\": \"max_fine_per_item\", \"message\": \"Must be at least 0\", \"rule_id\": \"val_max_fine_min\", \"type\": \"min\", \"value\": 0}",
            "message": "{\"field\": \"max_fine_per_item\", \"message\": \"Must be at least 0\", \"rule_id\": \"val_max_fine_min\", \"type\": \"min\", \"value\": 0}"
          }
        ],
        "validation_messages": {},
        "updates": [
          {
            "target": "state.savingKey",
            "expr": "'max_fine_per_item'"
          }
        ],
        "api_endpoint": "1fd60112299f4889bcd79c83137fcfe7",
        "api_body": "{ config_value: String(formValues.max_fine_per_item), config_key: 'max_fine_per_item', data_type: 'DECIMAL' }",
        "side_effects": [
          {
            "type": "toast",
            "config": {
              "message": "Maximum fine per item updated successfully",
              "type": "success"
            }
          }
        ],
        "then": null,
        "catch": null,
        "data_action": null
      },
      "3de4f54b5d4b4793a38f7b7d3c51db4f": {
        "action_id": "3de4f54b5d4b4793a38f7b7d3c51db4f",
        "trigger": "button_click",
        "target_component_id": "save_fine_threshold_btn",
        "operation": "update",
        "description": "",
        "payload": {
          "config_key": "fine_threshold"
        },
        "guard": null,
        "requires_confirmation": false,
        "confirmation_message": null,
        "validation_rules": [
          {
            "rule_id": "val_0",
            "field": null,
            "type": "custom",
            "value": null,
            "expression": "{\"field\": \"fine_threshold\", \"message\": \"Fine threshold is required\", \"rule_id\": \"val_fine_threshold\", \"type\": \"required\"}",
            "message": "{\"field\": \"fine_threshold\", \"message\": \"Fine threshold is required\", \"rule_id\": \"val_fine_threshold\", \"type\": \"required\"}"
          },
          {
            "rule_id": "val_1",
            "field": null,
            "type": "custom",
            "value": null,
            "expression": "{\"field\": \"fine_threshold\", \"message\": \"Must be at least 0\", \"rule_id\": \"val_fine_threshold_min\", \"type\": \"min\", \"value\": 0}",
            "message": "{\"field\": \"fine_threshold\", \"message\": \"Must be at least 0\", \"rule_id\": \"val_fine_threshold_min\", \"type\": \"min\", \"value\": 0}"
          }
        ],
        "validation_messages": {},
        "updates": [
          {
            "target": "state.savingKey",
            "expr": "'fine_threshold'"
          }
        ],
        "api_endpoint": "1fd60112299f4889bcd79c83137fcfe7",
        "api_body": "{ config_value: String(formValues.fine_threshold), config_key: 'fine_threshold', data_type: 'DECIMAL' }",
        "side_effects": [
          {
            "type": "toast",
            "config": {
              "message": "Fine threshold updated successfully",
              "type": "success"
            }
          }
        ],
        "then": null,
        "catch": null,
        "data_action": null
      },
      "d53a00d2a7ba4e66aa71f14dd4ed8bc2": {
        "action_id": "d53a00d2a7ba4e66aa71f14dd4ed8bc2",
        "trigger": "button_click",
        "target_component_id": "save_grace_period_btn",
        "operation": "update",
        "description": "",
        "payload": {
          "config_key": "grace_period_days"
        },
        "guard": null,
        "requires_confirmation": false,
        "confirmation_message": null,
        "validation_rules": [
          {
            "rule_id": "val_0",
            "field": null,
            "type": "custom",
            "value": null,
            "expression": "{\"field\": \"grace_period_days\", \"message\": \"Grace period is required\", \"rule_id\": \"val_grace_period\", \"type\": \"required\"}",
            "message": "{\"field\": \"grace_period_days\", \"message\": \"Grace period is required\", \"rule_id\": \"val_grace_period\", \"type\": \"required\"}"
          },
          {
            "rule_id": "val_1",
            "field": null,
            "type": "custom",
            "value": null,
            "expression": "{\"field\": \"grace_period_days\", \"message\": \"Must be at least 0\", \"rule_id\": \"val_grace_period_min\", \"type\": \"min\", \"value\": 0}",
            "message": "{\"field\": \"grace_period_days\", \"message\": \"Must be at least 0\", \"rule_id\": \"val_grace_period_min\", \"type\": \"min\", \"value\": 0}"
          }
        ],
        "validation_messages": {},
        "updates": [
          {
            "target": "state.savingKey",
            "expr": "'grace_period_days'"
          }
        ],
        "api_endpoint": "1fd60112299f4889bcd79c83137fcfe7",
        "api_body": "{ config_value: String(formValues.grace_period_days), config_key: 'grace_period_days', data_type: 'INTEGER' }",
        "side_effects": [
          {
            "type": "toast",
            "config": {
              "message": "Grace period updated successfully",
              "type": "success"
            }
          }
        ],
        "then": null,
        "catch": null,
        "data_action": null
      },
      "0b5cbb653720487da0f9787be50ee925": {
        "action_id": "0b5cbb653720487da0f9787be50ee925",
        "trigger": "button_click",
        "target_component_id": "reset_defaults_btn",
        "operation": "custom",
        "description": "",
        "payload": {},
        "guard": null,
        "requires_confirmation": true,
        "confirmation_message": null,
        "validation_rules": [],
        "validation_messages": {},
        "updates": [],
        "api_endpoint": "1fd60112299f4889bcd79c83137fcfe7",
        "api_body": null,
        "side_effects": [
          {
            "type": "toast",
            "config": {
              "message": "All settings reset to defaults",
              "type": "success"
            }
          },
          {
            "type": "refresh",
            "config": {}
          }
        ],
        "then": null,
        "catch": null,
        "data_action": null
      },
      "8308cf5f82b24eb685ad4672f1c38e54": {
        "action_id": "8308cf5f82b24eb685ad4672f1c38e54",
        "trigger": "button_click",
        "target_component_id": "back_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": "/admin/dashboard"
            }
          }
        ],
        "then": null,
        "catch": null,
        "data_action": null
      }
    },
    "feedback": {
      "819b1a853e68490ba9fb925d207953cd": {
        "action_id": "819b1a853e68490ba9fb925d207953cd",
        "loading_indicator": "spinner",
        "loading_text": null,
        "success_message": "Loan period updated successfully",
        "error_message": "Failed to update loan period",
        "ui_updates": []
      },
      "2f9e96d76568476abb32eda044821568": {
        "action_id": "2f9e96d76568476abb32eda044821568",
        "loading_indicator": "spinner",
        "loading_text": null,
        "success_message": "Maximum renewals updated successfully",
        "error_message": "Failed to update maximum renewals",
        "ui_updates": []
      },
      "848ca1112c524437b85005927750ddf4": {
        "action_id": "848ca1112c524437b85005927750ddf4",
        "loading_indicator": "spinner",
        "loading_text": null,
        "success_message": "Maximum concurrent loans updated successfully",
        "error_message": "Failed to update maximum concurrent loans",
        "ui_updates": []
      },
      "a2cf222591f8442ca30ec5a19598595e": {
        "action_id": "a2cf222591f8442ca30ec5a19598595e",
        "loading_indicator": "spinner",
        "loading_text": null,
        "success_message": "Maximum reservations updated successfully",
        "error_message": "Failed to update maximum reservations",
        "ui_updates": []
      },
      "d429f7daf1534417a86b363c75722d09": {
        "action_id": "d429f7daf1534417a86b363c75722d09",
        "loading_indicator": "spinner",
        "loading_text": null,
        "success_message": "Pickup expiration updated successfully",
        "error_message": "Failed to update pickup expiration",
        "ui_updates": []
      },
      "f60cfa8ca6cf48f4ba26232746922339": {
        "action_id": "f60cfa8ca6cf48f4ba26232746922339",
        "loading_indicator": "spinner",
        "loading_text": null,
        "success_message": "Daily fine rate updated successfully",
        "error_message": "Failed to update daily fine rate",
        "ui_updates": []
      },
      "c0f9389233f04c4bb36e7e47f65f1471": {
        "action_id": "c0f9389233f04c4bb36e7e47f65f1471",
        "loading_indicator": "spinner",
        "loading_text": null,
        "success_message": "Maximum fine per item updated successfully",
        "error_message": "Failed to update maximum fine",
        "ui_updates": []
      },
      "3de4f54b5d4b4793a38f7b7d3c51db4f": {
        "action_id": "3de4f54b5d4b4793a38f7b7d3c51db4f",
        "loading_indicator": "spinner",
        "loading_text": null,
        "success_message": "Fine threshold updated successfully",
        "error_message": "Failed to update fine threshold",
        "ui_updates": []
      },
      "d53a00d2a7ba4e66aa71f14dd4ed8bc2": {
        "action_id": "d53a00d2a7ba4e66aa71f14dd4ed8bc2",
        "loading_indicator": "spinner",
        "loading_text": null,
        "success_message": "Grace period updated successfully",
        "error_message": "Failed to update grace period",
        "ui_updates": []
      },
      "0b5cbb653720487da0f9787be50ee925": {
        "action_id": "0b5cbb653720487da0f9787be50ee925",
        "loading_indicator": "spinner",
        "loading_text": null,
        "success_message": "All settings reset to defaults",
        "error_message": "Failed to reset settings",
        "ui_updates": []
      },
      "8308cf5f82b24eb685ad4672f1c38e54": {
        "action_id": "8308cf5f82b24eb685ad4672f1c38e54",
        "loading_indicator": null,
        "loading_text": null,
        "success_message": null,
        "error_message": null,
        "ui_updates": []
      }
    }
  },
  "component_ir": {
    "library": "antd",
    "theme": {
      "primaryColor": "#1677ff",
      "secondaryColor": "#000000",
      "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%",
          "padding": "24px",
          "backgroundColor": "#f5f5f5"
        },
        "dynamic_styles": {},
        "class_name": null,
        "dynamic_class": null,
        "transitions": [],
        "visible_when": null,
        "disabled_when": null,
        "repeat": null,
        "slots": {},
        "a11y_role": null,
        "a11y_label": null
      },
      "page_header": {
        "type": "div",
        "label": null,
        "description": null,
        "bind": null,
        "onClick": null,
        "onChange": null,
        "onSubmit": null,
        "onHover": null,
        "onKeyPress": null,
        "props": {},
        "dynamic_props": {},
        "styles": {
          "display": "flex",
          "justifyContent": "space-between",
          "alignItems": "center",
          "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
      },
      "header_left": {
        "type": "div",
        "label": null,
        "description": null,
        "bind": null,
        "onClick": null,
        "onChange": null,
        "onSubmit": null,
        "onHover": null,
        "onKeyPress": null,
        "props": {},
        "dynamic_props": {},
        "styles": {
          "display": "flex",
          "alignItems": "center",
          "gap": "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
      },
      "back_btn": {
        "type": "Button",
        "label": "Back",
        "description": null,
        "bind": null,
        "onClick": "navigateBack",
        "onChange": null,
        "onSubmit": null,
        "onHover": null,
        "onKeyPress": null,
        "props": {
          "icon": "ArrowLeftOutlined",
          "type": "text"
        },
        "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
      },
      "page_title": {
        "type": "Typography.Title",
        "label": "System Configuration",
        "description": null,
        "bind": null,
        "onClick": null,
        "onChange": null,
        "onSubmit": null,
        "onHover": null,
        "onKeyPress": null,
        "props": {
          "level": 2
        },
        "dynamic_props": {},
        "styles": {
          "margin": 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
      },
      "reset_defaults_btn": {
        "type": "Button",
        "label": "Reset to Defaults",
        "description": null,
        "bind": null,
        "onClick": "resetToDefaults",
        "onChange": null,
        "onSubmit": null,
        "onHover": null,
        "onKeyPress": null,
        "props": {
          "type": "default",
          "danger": true,
          "icon": "UndoOutlined"
        },
        "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
      },
      "loan_settings_card": {
        "type": "Card",
        "label": null,
        "description": null,
        "bind": null,
        "onClick": null,
        "onChange": null,
        "onSubmit": null,
        "onHover": null,
        "onKeyPress": null,
        "props": {
          "title": "Loan Settings",
          "bordered": true
        },
        "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
      },
      "loan_period_row": {
        "type": "div",
        "label": null,
        "description": null,
        "bind": null,
        "onClick": null,
        "onChange": null,
        "onSubmit": null,
        "onHover": null,
        "onKeyPress": null,
        "props": {},
        "dynamic_props": {},
        "styles": {
          "display": "flex",
          "alignItems": "center",
          "justifyContent": "space-between",
          "padding": "12px 0",
          "borderBottom": "1px solid #f0f0f0"
        },
        "dynamic_styles": {},
        "class_name": null,
        "dynamic_class": null,
        "transitions": [],
        "visible_when": null,
        "disabled_when": null,
        "repeat": null,
        "slots": {},
        "a11y_role": null,
        "a11y_label": null
      },
      "loan_period_label_group": {
        "type": "div",
        "label": null,
        "description": null,
        "bind": null,
        "onClick": null,
        "onChange": null,
        "onSubmit": null,
        "onHover": null,
        "onKeyPress": null,
        "props": {},
        "dynamic_props": {},
        "styles": {
          "display": "flex",
          "alignItems": "center",
          "gap": "8px",
          "flex": 1
        },
        "dynamic_styles": {},
        "class_name": null,
        "dynamic_class": null,
        "transitions": [],
        "visible_when": null,
        "disabled_when": null,
        "repeat": null,
        "slots": {},
        "a11y_role": null,
        "a11y_label": null
      },
      "loan_period_label": {
        "type": "Typography.Text",
        "label": "Loan Period (days)",
        "description": null,
        "bind": null,
        "onClick": null,
        "onChange": null,
        "onSubmit": null,
        "onHover": null,
        "onKeyPress": null,
        "props": {
          "strong": true
        },
        "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
      },
      "loan_period_tooltip": {
        "type": "Tooltip",
        "label": null,
        "description": null,
        "bind": null,
        "onClick": null,
        "onChange": null,
        "onSubmit": null,
        "onHover": null,
        "onKeyPress": null,
        "props": {
          "title": "Number of days a member can keep a borrowed book before it becomes overdue"
        },
        "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
      },
      "loan_period_input": {
        "type": "InputNumber",
        "label": "Loan Period",
        "description": null,
        "bind": "state.configurations.loan_period_days",
        "onClick": null,
        "onChange": null,
        "onSubmit": null,
        "onHover": null,
        "onKeyPress": null,
        "props": {
          "min": 1,
          "max": 90,
          "defaultValue": 14,
          "style": {
            "width": "120px"
          }
        },
        "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
      },
      "save_loan_period_btn": {
        "type": "Button",
        "label": "Save",
        "description": null,
        "bind": null,
        "onClick": "saveLoanPeriod",
        "onChange": null,
        "onSubmit": null,
        "onHover": null,
        "onKeyPress": null,
        "props": {
          "type": "primary",
          "size": "small"
        },
        "dynamic_props": {},
        "styles": {
          "marginLeft": "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
      },
      "max_renewals_row": {
        "type": "div",
        "label": null,
        "description": null,
        "bind": null,
        "onClick": null,
        "onChange": null,
        "onSubmit": null,
        "onHover": null,
        "onKeyPress": null,
        "props": {},
        "dynamic_props": {},
        "styles": {
          "display": "flex",
          "alignItems": "center",
          "justifyContent": "space-between",
          "padding": "12px 0",
          "borderBottom": "1px solid #f0f0f0"
        },
        "dynamic_styles": {},
        "class_name": null,
        "dynamic_class": null,
        "transitions": [],
        "visible_when": null,
        "disabled_when": null,
        "repeat": null,
        "slots": {},
        "a11y_role": null,
        "a11y_label": null
      },
      "max_renewals_label_group": {
        "type": "div",
        "label": null,
        "description": null,
        "bind": null,
        "onClick": null,
        "onChange": null,
        "onSubmit": null,
        "onHover": null,
        "onKeyPress": null,
        "props": {},
        "dynamic_props": {},
        "styles": {
          "display": "flex",
          "alignItems": "center",
          "gap": "8px",
          "flex": 1
        },
        "dynamic_styles": {},
        "class_name": null,
        "dynamic_class": null,
        "transitions": [],
        "visible_when": null,
        "disabled_when": null,
        "repeat": null,
        "slots": {},
        "a11y_role": null,
        "a11y_label": null
      },
      "max_renewals_label": {
        "type": "Typography.Text",
        "label": "Maximum Renewals",
        "description": null,
        "bind": null,
        "onClick": null,
        "onChange": null,
        "onSubmit": null,
        "onHover": null,
        "onKeyPress": null,
        "props": {
          "strong": true
        },
        "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
      },
      "max_renewals_tooltip": {
        "type": "Tooltip",
        "label": null,
        "description": null,
        "bind": null,
        "onClick": null,
        "onChange": null,
        "onSubmit": null,
        "onHover": null,
        "onKeyPress": null,
        "props": {
          "title": "Maximum number of times a member can renew a single loan"
        },
        "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
      },
      "max_renewals_input": {
        "type": "InputNumber",
        "label": "Maximum Renewals",
        "description": null,
        "bind": "state.configurations.max_renewals",
        "onClick": null,
        "onChange": null,
        "onSubmit": null,
        "onHover": null,
        "onKeyPress": null,
        "props": {
          "min": 0,
          "max": 10,
          "defaultValue": 2,
          "style": {
            "width": "120px"
          }
        },
        "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
      },
      "save_max_renewals_btn": {
        "type": "Button",
        "label": "Save",
        "description": null,
        "bind": null,
        "onClick": "saveMaxRenewals",
        "onChange": null,
        "onSubmit": null,
        "onHover": null,
        "onKeyPress": null,
        "props": {
          "type": "primary",
          "size": "small"
        },
        "dynamic_props": {},
        "styles": {
          "marginLeft": "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
      },
      "max_loans_row": {
        "type": "div",
        "label": null,
        "description": null,
        "bind": null,
        "onClick": null,
        "onChange": null,
        "onSubmit": null,
        "onHover": null,
        "onKeyPress": null,
        "props": {},
        "dynamic_props": {},
        "styles": {
          "display": "flex",
          "alignItems": "center",
          "justifyContent": "space-between",
          "padding": "12px 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
      },
      "max_loans_label_group": {
        "type": "div",
        "label": null,
        "description": null,
        "bind": null,
        "onClick": null,
        "onChange": null,
        "onSubmit": null,
        "onHover": null,
        "onKeyPress": null,
        "props": {},
        "dynamic_props": {},
        "styles": {
          "display": "flex",
          "alignItems": "center",
          "gap": "8px",
          "flex": 1
        },
        "dynamic_styles": {},
        "class_name": null,
        "dynamic_class": null,
        "transitions": [],
        "visible_when": null,
        "disabled_when": null,
        "repeat": null,
        "slots": {},
        "a11y_role": null,
        "a11y_label": null
      },
      "max_loans_label": {
        "type": "Typography.Text",
        "label": "Maximum Concurrent Loans",
        "description": null,
        "bind": null,
        "onClick": null,
        "onChange": null,
        "onSubmit": null,
        "onHover": null,
        "onKeyPress": null,
        "props": {
          "strong": true
        },
        "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
      },
      "max_loans_tooltip": {
        "type": "Tooltip",
        "label": null,
        "description": null,
        "bind": null,
        "onClick": null,
        "onChange": null,
        "onSubmit": null,
        "onHover": null,
        "onKeyPress": null,
        "props": {
          "title": "Maximum number of books a member can have checked out at the same time"
        },
        "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
      },
      "max_loans_input": {
        "type": "InputNumber",
        "label": "Maximum Concurrent Loans",
        "description": null,
        "bind": "state.configurations.max_concurrent_loans",
        "onClick": null,
        "onChange": null,
        "onSubmit": null,
        "onHover": null,
        "onKeyPress": null,
        "props": {
          "min": 1,
          "max": 20,
          "defaultValue": 5,
          "style": {
            "width": "120px"
          }
        },
        "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
      },
      "save_max_loans_btn": {
        "type": "Button",
        "label": "Save",
        "description": null,
        "bind": null,
        "onClick": "saveMaxConcurrentLoans",
        "onChange": null,
        "onSubmit": null,
        "onHover": null,
        "onKeyPress": null,
        "props": {
          "type": "primary",
          "size": "small"
        },
        "dynamic_props": {},
        "styles": {
          "marginLeft": "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
      },
      "reservation_settings_card": {
        "type": "Card",
        "label": null,
        "description": null,
        "bind": null,
        "onClick": null,
        "onChange": null,
        "onSubmit": null,
        "onHover": null,
        "onKeyPress": null,
        "props": {
          "title": "Reservation Settings",
          "bordered": true
        },
        "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
      },
      "max_reservations_row": {
        "type": "div",
        "label": null,
        "description": null,
        "bind": null,
        "onClick": null,
        "onChange": null,
        "onSubmit": null,
        "onHover": null,
        "onKeyPress": null,
        "props": {},
        "dynamic_props": {},
        "styles": {
          "display": "flex",
          "alignItems": "center",
          "justifyContent": "space-between",
          "padding": "12px 0",
          "borderBottom": "1px solid #f0f0f0"
        },
        "dynamic_styles": {},
        "class_name": null,
        "dynamic_class": null,
        "transitions": [],
        "visible_when": null,
        "disabled_when": null,
        "repeat": null,
        "slots": {},
        "a11y_role": null,
        "a11y_label": null
      },
      "max_reservations_label_group": {
        "type": "div",
        "label": null,
        "description": null,
        "bind": null,
        "onClick": null,
        "onChange": null,
        "onSubmit": null,
        "onHover": null,
        "onKeyPress": null,
        "props": {},
        "dynamic_props": {},
        "styles": {
          "display": "flex",
          "alignItems": "center",
          "gap": "8px",
          "flex": 1
        },
        "dynamic_styles": {},
        "class_name": null,
        "dynamic_class": null,
        "transitions": [],
        "visible_when": null,
        "disabled_when": null,
        "repeat": null,
        "slots": {},
        "a11y_role": null,
        "a11y_label": null
      },
      "max_reservations_label": {
        "type": "Typography.Text",
        "label": "Maximum Concurrent Reservations",
        "description": null,
        "bind": null,
        "onClick": null,
        "onChange": null,
        "onSubmit": null,
        "onHover": null,
        "onKeyPress": null,
        "props": {
          "strong": true
        },
        "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
      },
      "max_reservations_tooltip": {
        "type": "Tooltip",
        "label": null,
        "description": null,
        "bind": null,
        "onClick": null,
        "onChange": null,
        "onSubmit": null,
        "onHover": null,
        "onKeyPress": null,
        "props": {
          "title": "Maximum number of active reservations a member can have at one time"
        },
        "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
      },
      "max_reservations_input": {
        "type": "InputNumber",
        "label": "Maximum Concurrent Reservations",
        "description": null,
        "bind": "state.configurations.max_reservations",
        "onClick": null,
        "onChange": null,
        "onSubmit": null,
        "onHover": null,
        "onKeyPress": null,
        "props": {
          "min": 1,
          "max": 10,
          "defaultValue": 3,
          "style": {
            "width": "120px"
          }
        },
        "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
      },
      "save_max_reservations_btn": {
        "type": "Button",
        "label": "Save",
        "description": null,
        "bind": null,
        "onClick": "saveMaxReservations",
        "onChange": null,
        "onSubmit": null,
        "onHover": null,
        "onKeyPress": null,
        "props": {
          "type": "primary",
          "size": "small"
        },
        "dynamic_props": {},
        "styles": {
          "marginLeft": "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
      },
      "pickup_expiration_row": {
        "type": "div",
        "label": null,
        "description": null,
        "bind": null,
        "onClick": null,
        "onChange": null,
        "onSubmit": null,
        "onHover": null,
        "onKeyPress": null,
        "props": {},
        "dynamic_props": {},
        "styles": {
          "display": "flex",
          "alignItems": "center",
          "justifyContent": "space-between",
          "padding": "12px 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
      },
      "pickup_expiration_label_group": {
        "type": "div",
        "label": null,
        "description": null,
        "bind": null,
        "onClick": null,
        "onChange": null,
        "onSubmit": null,
        "onHover": null,
        "onKeyPress": null,
        "props": {},
        "dynamic_props": {},
        "styles": {
          "display": "flex",
          "alignItems": "center",
          "gap": "8px",
          "flex": 1
        },
        "dynamic_styles": {},
        "class_name": null,
        "dynamic_class": null,
        "transitions": [],
        "visible_when": null,
        "disabled_when": null,
        "repeat": null,
        "slots": {},
        "a11y_role": null,
        "a11y_label": null
      },
      "pickup_expiration_label": {
        "type": "Typography.Text",
        "label": "Pickup Expiration (hours)",
        "description": null,
        "bind": null,
        "onClick": null,
        "onChange": null,
        "onSubmit": null,
        "onHover": null,
        "onKeyPress": null,
        "props": {
          "strong": true
        },
        "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
      },
      "pickup_expiration_tooltip": {
        "type": "Tooltip",
        "label": null,
        "description": null,
        "bind": null,
        "onClick": null,
        "onChange": null,
        "onSubmit": null,
        "onHover": null,
        "onKeyPress": null,
        "props": {
          "title": "Number of hours a member has to pick up a reserved book after notification"
        },
        "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
      },
      "pickup_expiration_input": {
        "type": "InputNumber",
        "label": "Pickup Expiration Hours",
        "description": null,
        "bind": "state.configurations.pickup_expiration_hours",
        "onClick": null,
        "onChange": null,
        "onSubmit": null,
        "onHover": null,
        "onKeyPress": null,
        "props": {
          "min": 1,
          "max": 168,
          "defaultValue": 48,
          "style": {
            "width": "120px"
          }
        },
        "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
      },
      "save_pickup_expiration_btn": {
        "type": "Button",
        "label": "Save",
        "description": null,
        "bind": null,
        "onClick": "savePickupExpiration",
        "onChange": null,
        "onSubmit": null,
        "onHover": null,
        "onKeyPress": null,
        "props": {
          "type": "primary",
          "size": "small"
        },
        "dynamic_props": {},
        "styles": {
          "marginLeft": "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
      },
      "fine_settings_card": {
        "type": "Card",
        "label": null,
        "description": null,
        "bind": null,
        "onClick": null,
        "onChange": null,
        "onSubmit": null,
        "onHover": null,
        "onKeyPress": null,
        "props": {
          "title": "Fine Settings",
          "bordered": true
        },
        "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
      },
      "daily_fine_row": {
        "type": "div",
        "label": null,
        "description": null,
        "bind": null,
        "onClick": null,
        "onChange": null,
        "onSubmit": null,
        "onHover": null,
        "onKeyPress": null,
        "props": {},
        "dynamic_props": {},
        "styles": {
          "display": "flex",
          "alignItems": "center",
          "justifyContent": "space-between",
          "padding": "12px 0",
          "borderBottom": "1px solid #f0f0f0"
        },
        "dynamic_styles": {},
        "class_name": null,
        "dynamic_class": null,
        "transitions": [],
        "visible_when": null,
        "disabled_when": null,
        "repeat": null,
        "slots": {},
        "a11y_role": null,
        "a11y_label": null
      },
      "daily_fine_label_group": {
        "type": "div",
        "label": null,
        "description": null,
        "bind": null,
        "onClick": null,
        "onChange": null,
        "onSubmit": null,
        "onHover": null,
        "onKeyPress": null,
        "props": {},
        "dynamic_props": {},
        "styles": {
          "display": "flex",
          "alignItems": "center",
          "gap": "8px",
          "flex": 1
        },
        "dynamic_styles": {},
        "class_name": null,
        "dynamic_class": null,
        "transitions": [],
        "visible_when": null,
        "disabled_when": null,
        "repeat": null,
        "slots": {},
        "a11y_role": null,
        "a11y_label": null
      },
      "daily_fine_label": {
        "type": "Typography.Text",
        "label": "Daily Overdue Rate ($)",
        "description": null,
        "bind": null,
        "onClick": null,
        "onChange": null,
        "onSubmit": null,
        "onHover": null,
        "onKeyPress": null,
        "props": {
          "strong": true
        },
        "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
      },
      "daily_fine_tooltip": {
        "type": "Tooltip",
        "label": null,
        "description": null,
        "bind": null,
        "onClick": null,
        "onChange": null,
        "onSubmit": null,
        "onHover": null,
        "onKeyPress": null,
        "props": {
          "title": "Amount charged per day for each overdue book"
        },
        "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
      },
      "daily_fine_input": {
        "type": "InputNumber",
        "label": "Daily Overdue Rate",
        "description": null,
        "bind": "state.configurations.daily_fine_rate",
        "onClick": null,
        "onChange": null,
        "onSubmit": null,
        "onHover": null,
        "onKeyPress": null,
        "props": {
          "min": 0,
          "max": 10,
          "step": 0.1,
          "defaultValue": 0.5,
          "precision": 2,
          "prefix": "$",
          "style": {
            "width": "120px"
          }
        },
        "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
      },
      "save_daily_fine_btn": {
        "type": "Button",
        "label": "Save",
        "description": null,
        "bind": null,
        "onClick": "saveDailyFineRate",
        "onChange": null,
        "onSubmit": null,
        "onHover": null,
        "onKeyPress": null,
        "props": {
          "type": "primary",
          "size": "small"
        },
        "dynamic_props": {},
        "styles": {
          "marginLeft": "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
      },
      "max_fine_row": {
        "type": "div",
        "label": null,
        "description": null,
        "bind": null,
        "onClick": null,
        "onChange": null,
        "onSubmit": null,
        "onHover": null,
        "onKeyPress": null,
        "props": {},
        "dynamic_props": {},
        "styles": {
          "display": "flex",
          "alignItems": "center",
          "justifyContent": "space-between",
          "padding": "12px 0",
          "borderBottom": "1px solid #f0f0f0"
        },
        "dynamic_styles": {},
        "class_name": null,
        "dynamic_class": null,
        "transitions": [],
        "visible_when": null,
        "disabled_when": null,
        "repeat": null,
        "slots": {},
        "a11y_role": null,
        "a11y_label": null
      },
      "max_fine_label_group": {
        "type": "div",
        "label": null,
        "description": null,
        "bind": null,
        "onClick": null,
        "onChange": null,
        "onSubmit": null,
        "onHover": null,
        "onKeyPress": null,
        "props": {},
        "dynamic_props": {},
        "styles": {
          "display": "flex",
          "alignItems": "center",
          "gap": "8px",
          "flex": 1
        },
        "dynamic_styles": {},
        "class_name": null,
        "dynamic_class": null,
        "transitions": [],
        "visible_when": null,
        "disabled_when": null,
        "repeat": null,
        "slots": {},
        "a11y_role": null,
        "a11y_label": null
      },
      "max_fine_label": {
        "type": "Typography.Text",
        "label": "Maximum Fine Per Item ($)",
        "description": null,
        "bind": null,
        "onClick": null,
        "onChange": null,
        "onSubmit": null,
        "onHover": null,
        "onKeyPress": null,
        "props": {
          "strong": true
        },
        "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
      },
      "max_fine_tooltip": {
        "type": "Tooltip",
        "label": null,
        "description": null,
        "bind": null,
        "onClick": null,
        "onChange": null,
        "onSubmit": null,
        "onHover": null,
        "onKeyPress": null,
        "props": {
          "title": "Maximum total fine that can be charged for a single overdue item"
        },
        "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
      },
      "max_fine_input": {
        "type": "InputNumber",
        "label": "Maximum Fine Per Item",
        "description": null,
        "bind": "state.configurations.max_fine_per_item",
        "onClick": null,
        "onChange": null,
        "onSubmit": null,
        "onHover": null,
        "onKeyPress": null,
        "props": {
          "min": 0,
          "max": 100,
          "step": 1,
          "defaultValue": 10,
          "precision": 2,
          "prefix": "$",
          "style": {
            "width": "120px"
          }
        },
        "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
      },
      "save_max_fine_btn": {
        "type": "Button",
        "label": "Save",
        "description": null,
        "bind": null,
        "onClick": "saveMaxFine",
        "onChange": null,
        "onSubmit": null,
        "onHover": null,
        "onKeyPress": null,
        "props": {
          "type": "primary",
          "size": "small"
        },
        "dynamic_props": {},
        "styles": {
          "marginLeft": "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
      },
      "fine_threshold_row": {
        "type": "div",
        "label": null,
        "description": null,
        "bind": null,
        "onClick": null,
        "onChange": null,
        "onSubmit": null,
        "onHover": null,
        "onKeyPress": null,
        "props": {},
        "dynamic_props": {},
        "styles": {
          "display": "flex",
          "alignItems": "center",
          "justifyContent": "space-between",
          "padding": "12px 0",
          "borderBottom": "1px solid #f0f0f0"
        },
        "dynamic_styles": {},
        "class_name": null,
        "dynamic_class": null,
        "transitions": [],
        "visible_when": null,
        "disabled_when": null,
        "repeat": null,
        "slots": {},
        "a11y_role": null,
        "a11y_label": null
      },
      "fine_threshold_label_group": {
        "type": "div",
        "label": null,
        "description": null,
        "bind": null,
        "onClick": null,
        "onChange": null,
        "onSubmit": null,
        "onHover": null,
        "onKeyPress": null,
        "props": {},
        "dynamic_props": {},
        "styles": {
          "display": "flex",
          "alignItems": "center",
          "gap": "8px",
          "flex": 1
        },
        "dynamic_styles": {},
        "class_name": null,
        "dynamic_class": null,
        "transitions": [],
        "visible_when": null,
        "disabled_when": null,
        "repeat": null,
        "slots": {},
        "a11y_role": null,
        "a11y_label": null
      },
      "fine_threshold_label": {
        "type": "Typography.Text",
        "label": "Fine Threshold for Suspension ($)",
        "description": null,
        "bind": null,
        "onClick": null,
        "onChange": null,
        "onSubmit": null,
        "onHover": null,
        "onKeyPress": null,
        "props": {
          "strong": true
        },
        "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
      },
      "fine_threshold_tooltip": {
        "type": "Tooltip",
        "label": null,
        "description": null,
        "bind": null,
        "onClick": null,
        "onChange": null,
        "onSubmit": null,
        "onHover": null,
        "onKeyPress": null,
        "props": {
          "title": "Total outstanding fine amount that triggers borrowing suspension for a member"
        },
        "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
      },
      "fine_threshold_input": {
        "type": "InputNumber",
        "label": "Fine Threshold for Suspension",
        "description": null,
        "bind": "state.configurations.fine_threshold",
        "onClick": null,
        "onChange": null,
        "onSubmit": null,
        "onHover": null,
        "onKeyPress": null,
        "props": {
          "min": 0,
          "max": 100,
          "step": 1,
          "defaultValue": 10,
          "precision": 2,
          "prefix": "$",
          "style": {
            "width": "120px"
          }
        },
        "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
      },
      "save_fine_threshold_btn": {
        "type": "Button",
        "label": "Save",
        "description": null,
        "bind": null,
        "onClick": "saveFineThreshold",
        "onChange": null,
        "onSubmit": null,
        "onHover": null,
        "onKeyPress": null,
        "props": {
          "type": "primary",
          "size": "small"
        },
        "dynamic_props": {},
        "styles": {
          "marginLeft": "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
      },
      "grace_period_row": {
        "type": "div",
        "label": null,
        "description": null,
        "bind": null,
        "onClick": null,
        "onChange": null,
        "onSubmit": null,
        "onHover": null,
        "onKeyPress": null,
        "props": {},
        "dynamic_props": {},
        "styles": {
          "display": "flex",
          "alignItems": "center",
          "justifyContent": "space-between",
          "padding": "12px 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
      },
      "grace_period_label_group": {
        "type": "div",
        "label": null,
        "description": null,
        "bind": null,
        "onClick": null,
        "onChange": null,
        "onSubmit": null,
        "onHover": null,
        "onKeyPress": null,
        "props": {},
        "dynamic_props": {},
        "styles": {
          "display": "flex",
          "alignItems": "center",
          "gap": "8px",
          "flex": 1
        },
        "dynamic_styles": {},
        "class_name": null,
        "dynamic_class": null,
        "transitions": [],
        "visible_when": null,
        "disabled_when": null,
        "repeat": null,
        "slots": {},
        "a11y_role": null,
        "a11y_label": null
      },
      "grace_period_label": {
        "type": "Typography.Text",
        "label": "Grace Period (days)",
        "description": null,
        "bind": null,
        "onClick": null,
        "onChange": null,
        "onSubmit": null,
        "onHover": null,
        "onKeyPress": null,
        "props": {
          "strong": true
        },
        "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
      },
      "grace_period_tooltip": {
        "type": "Tooltip",
        "label": null,
        "description": null,
        "bind": null,
        "onClick": null,
        "onChange": null,
        "onSubmit": null,
        "onHover": null,
        "onKeyPress": null,
        "props": {
          "title": "Number of days after the due date before overdue fines start accruing"
        },
        "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
      },
      "grace_period_input": {
        "type": "InputNumber",
        "label": "Grace Period Days",
        "description": null,
        "bind": "state.configurations.grace_period_days",
        "onClick": null,
        "onChange": null,
        "onSubmit": null,
        "onHover": null,
        "onKeyPress": null,
        "props": {
          "min": 0,
          "max": 14,
          "defaultValue": 1,
          "style": {
            "width": "120px"
          }
        },
        "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
      },
      "save_grace_period_btn": {
        "type": "Button",
        "label": "Save",
        "description": null,
        "bind": null,
        "onClick": "saveGracePeriod",
        "onChange": null,
        "onSubmit": null,
        "onHover": null,
        "onKeyPress": null,
        "props": {
          "type": "primary",
          "size": "small"
        },
        "dynamic_props": {},
        "styles": {
          "marginLeft": "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
      }
    }
  },
  "layout_ir": {
    "root": "main_container",
    "children": {
      "main_container": [
        "page_header",
        "loan_settings_card",
        "reservation_settings_card",
        "fine_settings_card"
      ],
      "page_header": [
        "header_left",
        "reset_defaults_btn"
      ],
      "header_left": [
        "back_btn",
        "page_title"
      ],
      "loan_settings_card": [
        "loan_period_row",
        "max_renewals_row",
        "max_loans_row"
      ],
      "loan_period_row": [
        "loan_period_label_group",
        "loan_period_input",
        "save_loan_period_btn"
      ],
      "loan_period_label_group": [
        "loan_period_label",
        "loan_period_tooltip"
      ],
      "max_renewals_row": [
        "max_renewals_label_group",
        "max_renewals_input",
        "save_max_renewals_btn"
      ],
      "max_renewals_label_group": [
        "max_renewals_label",
        "max_renewals_tooltip"
      ],
      "max_loans_row": [
        "max_loans_label_group",
        "max_loans_input",
        "save_max_loans_btn"
      ],
      "max_loans_label_group": [
        "max_loans_label",
        "max_loans_tooltip"
      ],
      "reservation_settings_card": [
        "max_reservations_row",
        "pickup_expiration_row"
      ],
      "max_reservations_row": [
        "max_reservations_label_group",
        "max_reservations_input",
        "save_max_reservations_btn"
      ],
      "max_reservations_label_group": [
        "max_reservations_label",
        "max_reservations_tooltip"
      ],
      "pickup_expiration_row": [
        "pickup_expiration_label_group",
        "pickup_expiration_input",
        "save_pickup_expiration_btn"
      ],
      "pickup_expiration_label_group": [
        "pickup_expiration_label",
        "pickup_expiration_tooltip"
      ],
      "fine_settings_card": [
        "daily_fine_row",
        "max_fine_row",
        "fine_threshold_row",
        "grace_period_row"
      ],
      "daily_fine_row": [
        "daily_fine_label_group",
        "daily_fine_input",
        "save_daily_fine_btn"
      ],
      "daily_fine_label_group": [
        "daily_fine_label",
        "daily_fine_tooltip"
      ],
      "max_fine_row": [
        "max_fine_label_group",
        "max_fine_input",
        "save_max_fine_btn"
      ],
      "max_fine_label_group": [
        "max_fine_label",
        "max_fine_tooltip"
      ],
      "fine_threshold_row": [
        "fine_threshold_label_group",
        "fine_threshold_input",
        "save_fine_threshold_btn"
      ],
      "fine_threshold_label_group": [
        "fine_threshold_label",
        "fine_threshold_tooltip"
      ],
      "grace_period_row": [
        "grace_period_label_group",
        "grace_period_input",
        "save_grace_period_btn"
      ],
      "grace_period_label_group": [
        "grace_period_label",
        "grace_period_tooltip"
      ]
    },
    "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
      },
      "page_header": {
        "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
      },
      "header_left": {
        "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
      },
      "loan_settings_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
      },
      "loan_period_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
      },
      "loan_period_label_group": {
        "type": "horizontal",
        "gap": 8,
        "padding": null,
        "columns": null,
        "column_template": null,
        "row_template": null,
        "align_items": null,
        "justify_content": null,
        "wrap": false,
        "min_height": null,
        "overflow": null
      },
      "max_renewals_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
      },
      "max_renewals_label_group": {
        "type": "horizontal",
        "gap": 8,
        "padding": null,
        "columns": null,
        "column_template": null,
        "row_template": null,
        "align_items": null,
        "justify_content": null,
        "wrap": false,
        "min_height": null,
        "overflow": null
      },
      "max_loans_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
      },
      "max_loans_label_group": {
        "type": "horizontal",
        "gap": 8,
        "padding": null,
        "columns": null,
        "column_template": null,
        "row_template": null,
        "align_items": null,
        "justify_content": null,
        "wrap": false,
        "min_height": null,
        "overflow": null
      },
      "reservation_settings_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
      },
      "max_reservations_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
      },
      "max_reservations_label_group": {
        "type": "horizontal",
        "gap": 8,
        "padding": null,
        "columns": null,
        "column_template": null,
        "row_template": null,
        "align_items": null,
        "justify_content": null,
        "wrap": false,
        "min_height": null,
        "overflow": null
      },
      "pickup_expiration_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
      },
      "pickup_expiration_label_group": {
        "type": "horizontal",
        "gap": 8,
        "padding": null,
        "columns": null,
        "column_template": null,
        "row_template": null,
        "align_items": null,
        "justify_content": null,
        "wrap": false,
        "min_height": null,
        "overflow": null
      },
      "fine_settings_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
      },
      "daily_fine_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
      },
      "daily_fine_label_group": {
        "type": "horizontal",
        "gap": 8,
        "padding": null,
        "columns": null,
        "column_template": null,
        "row_template": null,
        "align_items": null,
        "justify_content": null,
        "wrap": false,
        "min_height": null,
        "overflow": null
      },
      "max_fine_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
      },
      "max_fine_label_group": {
        "type": "horizontal",
        "gap": 8,
        "padding": null,
        "columns": null,
        "column_template": null,
        "row_template": null,
        "align_items": null,
        "justify_content": null,
        "wrap": false,
        "min_height": null,
        "overflow": null
      },
      "fine_threshold_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
      },
      "fine_threshold_label_group": {
        "type": "horizontal",
        "gap": 8,
        "padding": null,
        "columns": null,
        "column_template": null,
        "row_template": null,
        "align_items": null,
        "justify_content": null,
        "wrap": false,
        "min_height": null,
        "overflow": null
      },
      "grace_period_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
      },
      "grace_period_label_group": {
        "type": "horizontal",
        "gap": 8,
        "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": "Main page container with vertical stacking of cards"
      }
    ],
    "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
}
