decord/source/modules/guild_automod/native/AutomodSubmitFeedbackModal.tsx

179 lines
8 KiB
TypeScript
Raw Normal View History

2026-07-27 11:26:19 +00:00
// Module ID: 10995
// Function ID: 85449
2026-07-20 16:05:17 +00:00
// Name: Navbar
2026-07-27 11:26:19 +00:00
// Dependencies: [57, 31, 27, 653, 33, 4131, 689, 5121, 6695, 1212, 7640, 5746, 1557, 4127, 7575, 1273, 4544, 4325, 10996, 5745, 3831, 5517, 2]
2026-07-20 16:05:17 +00:00
// Exports: default
2026-07-27 11:26:19 +00:00
// Module 10995 (Navbar)
2026-07-23 10:11:24 +00:00
import _slicedToArray from "_slicedToArray";
import result from "result";
import { View } from "get ActivityIndicator";
import { AnalyticEvents } from "ME";
import jsxProd from "jsxProd";
import _createForOfIteratorHelperLoose from "_createForOfIteratorHelperLoose";
let closure_7;
let closure_8;
const require = arg1;
2026-07-20 16:05:17 +00:00
function Navbar(onClose) {
2026-07-23 10:11:24 +00:00
const tmp = _createForOfIteratorHelperLoose();
2026-07-20 16:05:17 +00:00
let obj = { top: true, style: tmp.header };
obj = { style: tmp.closeButtonContainer };
obj = {};
2026-07-23 10:11:24 +00:00
const intl = require(1212) /* getSystemLocale */.intl;
obj.accessibilityLabel = intl.string(require(1212) /* getSystemLocale */.t.cpT0Cq);
2026-07-20 16:05:17 +00:00
obj.onPress = onClose.onClose;
2026-07-25 08:10:48 +00:00
obj.source = importDefault(7640);
obj.children = callback2(require(6695) /* HeaderActionButton */.HeaderActionButton, obj);
2026-07-20 16:05:17 +00:00
obj.children = callback2(View, obj);
2026-07-23 10:11:24 +00:00
return callback2(require(5121) /* SafeAreaPaddingView */.SafeAreaPaddingView, obj);
2026-07-20 16:05:17 +00:00
}
function SubmitFeedbackScreen(onSubmit) {
2026-07-23 10:11:24 +00:00
let importDefault;
let require;
({ feedback: require, onChange: importDefault } = onSubmit);
2026-07-20 16:05:17 +00:00
let dependencyMap;
function label(children) {
2026-07-23 10:11:24 +00:00
const obj = { style: _undefined.formRow, variant: "text-md/semibold", color: "interactive-text-active", children };
return outer1_7(outer1_0(_undefined[13]).Text, obj);
2026-07-20 16:05:17 +00:00
}
2026-07-23 10:11:24 +00:00
const tmp = _createForOfIteratorHelperLoose();
2026-07-20 16:05:17 +00:00
dependencyMap = tmp;
2026-07-25 08:10:48 +00:00
let obj = require(5746) /* Feedback */;
2026-07-20 16:05:17 +00:00
const feedbackOptions = obj.generateFeedbackOptions();
obj = { style: tmp.container };
2026-07-23 10:11:24 +00:00
obj = { style: tmp.headerTitle, variant: "heading-xl/bold", color: "mobile-text-heading-primary" };
const intl = require(1212) /* getSystemLocale */.intl;
obj.children = intl.string(require(1212) /* getSystemLocale */.t["7bdzNo"]);
2026-07-25 08:10:48 +00:00
let items = [callback2(require(4127) /* Text */.Text, obj), , , ];
2026-07-23 10:11:24 +00:00
const obj1 = { style: tmp.headerSubtitle, variant: "text-sm/medium", color: "text-default" };
const intl2 = require(1212) /* getSystemLocale */.intl;
obj1.children = intl2.string(require(1212) /* getSystemLocale */.t.Lbpk6m);
2026-07-25 08:10:48 +00:00
items[1] = callback2(require(4127) /* Text */.Text, obj1);
2026-07-20 16:05:17 +00:00
items[2] = callback2(View, {
style: tmp.formBody,
children: feedbackOptions.map((value) => {
value = value.value;
2026-07-23 10:11:24 +00:00
let closure_0 = value;
2026-07-20 16:05:17 +00:00
let obj = {};
obj = {
onPress() {
2026-07-23 10:11:24 +00:00
return outer1_1(closure_0);
2026-07-20 16:05:17 +00:00
}
};
2026-07-23 10:11:24 +00:00
obj = { active: closure_0 === value, style: _undefined.radioIndicator };
obj.trailing = outer1_7(outer1_0(_undefined[15]).RadioIndicator, obj);
2026-07-20 16:05:17 +00:00
obj.label = label(value.name);
2026-07-23 10:11:24 +00:00
const items = [outer1_7(outer1_0(_undefined[14]).FormRow, obj), ];
2026-07-20 16:05:17 +00:00
let tmp2 = arg1 < feedbackOptions.length - 1;
if (tmp2) {
2026-07-23 10:11:24 +00:00
tmp2 = outer1_7(outer1_0(_undefined[14]).FormDivider, {});
2026-07-20 16:05:17 +00:00
}
items[1] = tmp2;
obj.children = items;
2026-07-23 10:11:24 +00:00
return outer1_8(label.Fragment, obj, value);
2026-07-20 16:05:17 +00:00
})
});
const obj3 = { style: items1 };
2026-07-23 10:11:24 +00:00
items1 = [tmp.submitButtonContainer, ];
2026-07-20 16:05:17 +00:00
const obj2 = {
style: tmp.formBody,
children: feedbackOptions.map((value) => {
value = value.value;
2026-07-23 10:11:24 +00:00
let closure_0 = value;
2026-07-20 16:05:17 +00:00
let obj = {};
obj = {
onPress() {
2026-07-23 10:11:24 +00:00
return outer1_1(closure_0);
2026-07-20 16:05:17 +00:00
}
};
2026-07-23 10:11:24 +00:00
obj = { active: closure_0 === value, style: _undefined.radioIndicator };
obj.trailing = outer1_7(outer1_0(_undefined[15]).RadioIndicator, obj);
2026-07-20 16:05:17 +00:00
obj.label = label(value.name);
2026-07-23 10:11:24 +00:00
const items = [outer1_7(outer1_0(_undefined[14]).FormRow, obj), ];
2026-07-20 16:05:17 +00:00
let tmp2 = arg1 < feedbackOptions.length - 1;
if (tmp2) {
2026-07-23 10:11:24 +00:00
tmp2 = outer1_7(outer1_0(_undefined[14]).FormDivider, {});
2026-07-20 16:05:17 +00:00
}
items[1] = tmp2;
obj.children = items;
2026-07-23 10:11:24 +00:00
return outer1_8(label.Fragment, obj, value);
2026-07-20 16:05:17 +00:00
})
};
2026-07-23 10:11:24 +00:00
items1[1] = { paddingBottom: importDefault(1557)().bottom + 16 };
2026-07-20 16:05:17 +00:00
const obj5 = { size: "md" };
2026-07-23 10:11:24 +00:00
const intl3 = require(1212) /* getSystemLocale */.intl;
obj5.text = intl3.string(require(1212) /* getSystemLocale */.t.Z6DZZ6);
2026-07-20 16:05:17 +00:00
obj5.onPress = onSubmit.onSubmit;
2026-07-25 08:10:48 +00:00
obj3.children = callback2(require(4544) /* Button */.Button, obj5);
2026-07-20 16:05:17 +00:00
items[3] = callback2(View, obj3);
obj.children = items;
return callback3(View, obj);
}
2026-07-23 10:11:24 +00:00
({ jsx: closure_7, jsxs: closure_8 } = jsxProd);
_createForOfIteratorHelperLoose = {};
_createForOfIteratorHelperLoose = { flex: 1, paddingHorizontal: 16, paddingVertical: 0, backgroundColor: require("_createForOfIteratorHelperLoose").colors.BACKGROUND_BASE_LOW, flexDirection: "column", height: "100%", paddingTop: 8 };
_createForOfIteratorHelperLoose.container = _createForOfIteratorHelperLoose;
let obj1 = { flexDirection: "row", justifyContent: "flex-end", paddingVertical: 8, backgroundColor: require("_createForOfIteratorHelperLoose").colors.BACKGROUND_BASE_LOW };
_createForOfIteratorHelperLoose.header = obj1;
_createForOfIteratorHelperLoose.headerTitle = { textAlign: "center" };
_createForOfIteratorHelperLoose.headerSubtitle = { textAlign: "center", marginTop: 8 };
_createForOfIteratorHelperLoose.closeButtonContainer = { marginVertical: 14 };
_createForOfIteratorHelperLoose.formBody = { marginTop: 24, borderRadius: require("_createForOfIteratorHelperLoose").radii.sm, backgroundColor: require("_createForOfIteratorHelperLoose").colors.BACKGROUND_SURFACE_HIGH };
_createForOfIteratorHelperLoose.formRow = { paddingVertical: 2 };
_createForOfIteratorHelperLoose.radioIndicator = { marginRight: 0 };
let obj3 = { position: "absolute", bottom: 0, left: 0, right: 0, paddingHorizontal: 16, paddingVertical: 16, backgroundColor: require("_createForOfIteratorHelperLoose").colors.BACKGROUND_BASE_LOW };
_createForOfIteratorHelperLoose.submitButtonContainer = obj3;
_createForOfIteratorHelperLoose = _createForOfIteratorHelperLoose.createStyles(_createForOfIteratorHelperLoose);
let obj2 = { marginTop: 24, borderRadius: require("_createForOfIteratorHelperLoose").radii.sm, backgroundColor: require("_createForOfIteratorHelperLoose").colors.BACKGROUND_SURFACE_HIGH };
const result = require("get ActivityIndicator").fileFinishedImporting("modules/guild_automod/native/AutomodSubmitFeedbackModal.tsx");
2026-07-20 16:05:17 +00:00
export default function AutomodSubmitFeedbackModal(onCloseModal) {
onCloseModal = onCloseModal.onCloseModal;
const automodDecision = onCloseModal.automodDecision;
2026-07-23 10:11:24 +00:00
const tmp = callback(React.useState(onCloseModal(first[11]).Feedback.BUG), 2);
first = tmp[0];
callback = tmp[1];
2026-07-20 16:05:17 +00:00
const items = [first, onCloseModal, automodDecision];
2026-07-23 10:11:24 +00:00
const screens = React.useMemo(() => (function getScreens(arg0) {
let closure_0;
let closure_1;
let closure_2;
let _slicedToArray;
({ onCloseModal: closure_0, feedback: closure_1, onChange: closure_2, onSubmit: _slicedToArray } = arg0);
2026-07-21 22:01:30 +00:00
const obj = {
2026-07-23 10:11:24 +00:00
ignoreKeyboard: true,
title: "",
2026-07-21 22:01:30 +00:00
customNavbar() {
2026-07-23 10:11:24 +00:00
return outer3_7(outer3_10, { onClose: closure_0 });
2026-07-21 22:01:30 +00:00
},
headerLeft() {
return null;
},
render() {
2026-07-23 10:11:24 +00:00
return outer3_7(outer3_11, { feedback: closure_1, onChange: closure_2, onSubmit: _slicedToArray });
2026-07-20 16:05:17 +00:00
}
};
2026-07-21 22:01:30 +00:00
return { ["SUBMIT_FEEDBACK"]: obj };
2026-07-23 10:11:24 +00:00
})({
2026-07-20 16:05:17 +00:00
onCloseModal,
feedback: first,
onChange(arg0) {
2026-07-23 10:11:24 +00:00
outer1_3(arg0);
2026-07-20 16:05:17 +00:00
},
onSubmit() {
let channel;
let messageId;
2026-07-23 10:11:24 +00:00
let obj = onCloseModal(first[17]);
obj = { feedback_type: outer1_2, message_id: outer1_1.messageId, content: outer1_1.messageContent, decision_id: outer1_1.decisionId };
obj.trackWithMetadata(outer2_6.GUILD_AUTOMOD_FEEDBACK, obj);
({ messageId, channel } = outer1_1);
onCloseModal(first[18]).executeAlertAction(messageId, channel, onCloseModal(first[19]).AutomodAlertActionType.SUBMIT_FEEDBACK);
const obj3 = onCloseModal(first[18]);
onCloseModal(first[20]).presentFeedbackSent();
outer1_0();
2026-07-20 16:05:17 +00:00
}
}), items);
2026-07-23 10:11:24 +00:00
return callback2(onCloseModal(first[21]).Navigator, { screens, initialRouteName: "SUBMIT_FEEDBACK", headerStatusBarHeight: automodDecision(first[12])().top });
2026-07-20 16:05:17 +00:00
};