"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.default = ModActions;
const tslib_1 = require("tslib");
const jsx_runtime_1 = require("react/jsx-runtime");
const lucide_react_native_1 = require("lucide-react-native");
const react_native_1 = require("react-native");
const zero = tslib_1.__importStar(require("../../ui"));
const { flex, bg, r, borders, p, text, layout, gap, mb } = zero;
const defaultActions = [
    {
        icon: lucide_react_native_1.Shield,
        label: "Ban User",
        color: "red",
        action: () => console.log("Ban user action"),
    },
    {
        icon: lucide_react_native_1.MessageCircle,
        label: "Timeout",
        color: "yellow",
        action: () => console.log("Timeout user action"),
    },
    {
        icon: lucide_react_native_1.Eye,
        label: "Monitor",
        color: "blue",
        action: () => console.log("Monitor stream action"),
    },
    {
        icon: lucide_react_native_1.AlertTriangle,
        label: "Report",
        color: "orange",
        action: () => console.log("Report content action"),
    },
];
function ModActions({ isLive, isConnected, messageCount = 0, actions = defaultActions, }) {
    const canModerate = isLive && isConnected;
    return ((0, jsx_runtime_1.jsxs)(react_native_1.View, { style: [
            flex.values[1],
            bg.gray[800],
            r[3],
            borders.width.thin,
            borders.color.gray[700],
            p[4],
        ], children: [(0, jsx_runtime_1.jsxs)(react_native_1.View, { style: [
                    layout.flex.row,
                    layout.flex.spaceBetween,
                    layout.flex.alignCenter,
                    mb[4],
                ], children: [(0, jsx_runtime_1.jsx)(react_native_1.Text, { style: [text.white, { fontSize: 18, fontWeight: "600" }], children: "Moderation" }), (0, jsx_runtime_1.jsxs)(react_native_1.Text, { style: [text.gray[400], { fontSize: 12 }], children: [messageCount, " messages"] })] }), (0, jsx_runtime_1.jsx)(react_native_1.View, { style: [layout.flex.row, gap.all[3]], children: actions.map((action, index) => ((0, jsx_runtime_1.jsxs)(react_native_1.Pressable, { style: [
                        flex.grow[1],
                        bg.gray[700],
                        r[2],
                        p[3],
                        layout.flex.row,
                        layout.flex.alignCenter,
                        gap.all[2],
                        borders.width.thin,
                        borders.color.gray[600],
                    ], disabled: !canModerate, onPress: action.action, children: [(0, jsx_runtime_1.jsx)(action.icon, { size: 20, color: canModerate ? "#ffffff" : "#6b7280" }), (0, jsx_runtime_1.jsx)(react_native_1.Text, { style: [
                                canModerate ? text.white : text.gray[400],
                                { fontSize: 14, fontWeight: "500" },
                            ], children: action.label })] }, index))) }), !canModerate && ((0, jsx_runtime_1.jsx)(react_native_1.Text, { style: [
                    text.gray[500],
                    { fontSize: 12, textAlign: "center", marginTop: 16 },
                ], children: !isLive
                    ? "Moderation tools available when live"
                    : !isConnected
                        ? "Waiting for stream connection..."
                        : "Moderation tools unavailable" }))] }));
}
//# sourceMappingURL=mod-actions.js.map