{
        "dataSource": "/api/credit/approval/pending/:orgId",
        "autoRefresh": 30000,
        "pagination": {
            "enabled": true,
            "pageSize": 50,
            "pageSizeOptions": [25, 50, 100]
        },
        "columns": [
            {
                "field": "request_id",
                "label": "Request ID",
                "type": "text",
                "width": "120px",
                "sortable": true,
                "template": "<code class=\"text-xs\">{{value.substring(0,8)}}</code>"
            },
            {
                "field": "priority",
                "label": "Priority",
                "type": "badge",
                "width": "100px",
                "sortable": true,
                "template": "<span class=\"badge badge-{{value === 'high' ? 'error' : value === 'medium' ? 'warning' : 'info'}}\">{{value}}</span>"
            },
            {
                "field": "customer_name",
                "label": "Customer",
                "type": "text",
                "width": "200px",
                "sortable": true
            },
            {
                "field": "request_type",
                "label": "Request Type",
                "type": "text",
                "width": "150px",
                "sortable": true,
                "template": "{{value.replace('_', ' ').toUpperCase()}}"
            },
            {
                "field": "current_limit",
                "label": "Current Limit",
                "type": "currency",
                "width": "120px",
                "sortable": true
            },
            {
                "field": "requested_amount",
                "label": "Requested",
                "type": "currency",
                "width": "120px",
                "sortable": true
            },
            {
                "field": "over_limit_amount",
                "label": "Over Limit By",
                "type": "currency",
                "width": "120px",
                "sortable": true,
                "template": "<span class=\"text-error font-semibold\">{{value | currency}}</span>"
            },
            {
                "field": "requested_by_name",
                "label": "Requested By",
                "type": "text",
                "width": "150px",
                "sortable": true
            },
            {
                "field": "expires_at",
                "label": "Expires",
                "type": "datetime",
                "width": "150px",
                "sortable": true,
                "template": "{{value | relativeTime}}"
            },
            {
                "field": "created_at",
                "label": "Created",
                "type": "datetime",
                "width": "150px",
                "sortable": true
            }
        ],
        "filters": [
            {
                "field": "priority",
                "label": "Priority",
                "type": "select",
                "options": [
                    { "value": "", "label": "All Priorities" },
                    { "value": "high", "label": "High" },
                    { "value": "medium", "label": "Medium" },
                    { "value": "low", "label": "Low" }
                ]
            },
            {
                "field": "request_type",
                "label": "Request Type",
                "type": "select",
                "options": [
                    { "value": "", "label": "All Types" },
                    { "value": "over_limit_purchase", "label": "Over Limit Purchase" },
                    { "value": "limit_increase", "label": "Limit Increase" },
                    { "value": "temporary_increase", "label": "Temporary Increase" },
                    { "value": "hold_removal", "label": "Hold Removal" }
                ]
            },
            {
                "field": "customer_id",
                "label": "Customer",
                "type": "select",
                "dataSource": "/api/customers/list/:orgId",
                "valueField": "customer_id",
                "labelField": "customer_name"
            },
            {
                "field": "date_from",
                "label": "From Date",
                "type": "date"
            },
            {
                "field": "date_to",
                "label": "To Date",
                "type": "date"
            }
        ],
        "rowActions": [
            {
                "label": "Approve",
                "icon": "fa-check",
                "action": "credit:approve-request",
                "style": "success",
                "confirm": "Approve this credit request?",
                "condition": "status === 'pending'"
            },
            {
                "label": "Reject",
                "icon": "fa-times",
                "action": "credit:reject-request",
                "style": "error",
                "confirm": "Reject this credit request?",
                "condition": "status === 'pending'"
            },
            {
                "label": "View Details",
                "icon": "fa-eye",
                "action": "credit:view-request-details",
                "style": "ghost"
            },
            {
                "label": "View Customer Credit",
                "icon": "fa-user",
                "action": "credit:view-customer-credit",
                "style": "ghost"
            },
            {
                "label": "View History",
                "icon": "fa-history",
                "action": "credit:view-history",
                "style": "ghost"
            }
        ],
        "bulkActions": [
            {
                "label": "Approve Selected",
                "icon": "fa-check-double",
                "action": "credit:approve-bulk",
                "style": "success",
                "confirm": "Approve {{count}} selected requests?"
            },
            {
                "label": "Reject Selected",
                "icon": "fa-times-circle",
                "action": "credit:reject-bulk",
                "style": "error",
                "confirm": "Reject {{count}} selected requests?"
            },
            {
                "label": "Export CSV",
                "icon": "fa-file-csv",
                "action": "credit:export-csv",
                "style": "ghost"
            }
        ],
        "summaryWidgets": [
            {
                "id": "total_pending",
                "type": "stat",
                "title": "Total Pending",
                "icon": "fa-clock",
                "color": "info",
                "value": "{{data.length}}",
                "description": "Approval requests awaiting review"
            },
            {
                "id": "high_priority",
                "type": "stat",
                "title": "High Priority",
                "icon": "fa-exclamation-triangle",
                "color": "error",
                "value": "{{data.filter(r => r.priority === 'high').length}}",
                "description": "Urgent requests requiring attention"
            },
            {
                "id": "total_requested",
                "type": "currency",
                "title": "Total Requested",
                "icon": "fa-dollar-sign",
                "color": "warning",
                "value": "{{data.reduce((sum, r) => sum + parseFloat(r.requested_amount || 0), 0)}}",
                "description": "Total amount in pending requests"
            },
            {
                "id": "expiring_soon",
                "type": "stat",
                "title": "Expiring Soon",
                "icon": "fa-hourglass-end",
                "color": "warning",
                "value": "{{data.filter(r => new Date(r.expires_at) - new Date() < 24*60*60*1000).length}}",
                "description": "Requests expiring within 24 hours"
            },
            {
                "id": "avg_over_limit",
                "type": "currency",
                "title": "Avg Over Limit",
                "icon": "fa-chart-line",
                "color": "primary",
                "value": "{{data.length > 0 ? data.reduce((sum, r) => sum + parseFloat(r.over_limit_amount || 0), 0) / data.length : 0}}",
                "description": "Average over-limit amount"
            }
        ],
        "defaultSort": {
            "field": "priority",
            "order": "desc",
            "thenBy": [
                { "field": "expires_at", "order": "asc" },
                { "field": "created_at", "order": "asc" }
            ]
        },
        "emptyStateMessage": "No pending credit approval requests",
        "emptyStateIcon": "fa-check-circle",
        "emptyStateAction": {
            "label": "View All Requests",
            "action": "credit:view-all-requests"
        }
    }