/* Metro module 15210; source: modules/integration_settings/native/IntegrationsSettingsEditWebhook.tsx; dependencies: [6, 7, 15, 17, 18, 31, 1935, 3784, 3793, 1878, 661, 33, 4501, 697, 15205, 11265, 507, 6797, 4496, 1244, 4596, 5282, 5277, 4573, 7972, 4572, 15211, 1423, 7981, 6231, 6238, 4805, 1305, 6647, 3868, 1484, 5462, 2] */
function _fun116316(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#116316, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15407:6, offset: 0x0248476b, size: 536 bytes, params: 8, frame: 23
var object2;
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_3 = importDefault(6) /* metro dependency 6 */;
const env0_4 = importDefault(7) /* metro dependency 7 */;
const env0_5 = importDefault(15) /* metro dependency 15 */;
const env0_6 = importDefault(17) /* metro dependency 17 */;
const env0_7 = importDefault(18) /* metro dependency 18 */;
let value = importAll(31) /* metro dependency 31 */;
const env0_8 = (require(1935) /* metro dependency 1935: GuildChannelStore */).GUILD_SELECTABLE_CHANNELS_KEY;
const permissionStore = importDefault(3784) /* metro dependency 3784: PermissionStore */;
const relationshipStore = importDefault(3793) /* metro dependency 3793: RelationshipStore */;
const userStore = importDefault(1878) /* metro dependency 1878: UserStore */;
const constantsModule = require(661) /* metro dependency 661: Constants */;
const env0_12 = constantsModule.Endpoints;
const env0_13 = constantsModule.NON_USER_BOT_DISCRIMINATOR;
const env0_14 = constantsModule.Permissions;
const env0_15 = constantsModule.WebhookTypes;
const value3 = require(33) /* metro dependency 33 */;
const env0_16 = value3.jsx;
const env0_17 = value3.jsxs;
const env0_18 = value3.Fragment;
const createStylesModule = require(4501) /* metro dependency 4501: createStyles */;
const createLegacyClassComponentStyles = createStylesModule.createLegacyClassComponentStyles;
object2 = {};
const BACKGROUND_BASE_LOWER = (importDefault(697) /* metro dependency 697: native */).colors.BACKGROUND_BASE_LOWER;
object2.form = {backgroundColor: BACKGROUND_BASE_LOWER};
const TABLE_ROW_PADDING = (importDefault(697) /* metro dependency 697: native */).modules.mobile.TABLE_ROW_PADDING;
object2.row = {padding: TABLE_ROW_PADDING};
object2.channelIcon = {'height': 16, 'width': 16, 'opacity': 0.6};
const env0_19 = Reflect.apply(createLegacyClassComponentStyles, createStylesModule, [object2]);
const PureComponent = value.PureComponent;
value = _fun116320(PureComponent);
const ThemeContext = (require(3868) /* metro dependency 3868: native */).ThemeContext;
value.contextType = ThemeContext;
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/integration_settings/native/IntegrationsSettingsEditWebhook.tsx');
exports.default = ConnectedEditWebhook;
}
function _isNativeReflectConstruct_116317() { // fn#116317, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15407:358, offset: 0x02484983, size: 98 bytes, params: 1, frame: 18
var Boolean;
var prototype;
var valueOf;
var call;
var Reflect;
var construct;
var closure;
var value;
var error;
try {
Boolean = global.Boolean;
prototype = Boolean.prototype;
valueOf = prototype.valueOf;
call = valueOf.call;
Reflect = global.Reflect;
construct = Reflect.construct;
Boolean = global.Boolean;
closure = function() {
};
value = Reflect.apply(construct, Reflect, [Boolean, [], closure]);
value = Reflect.apply(call, valueOf, [value]);
var result = !value;
} catch (error) {
}
return (_isNativeReflectConstruct_116317_isNativeReflectConstruct = function() {
return !!result;
})();
}
function _fun116320(a0) { // fn#116320, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15407:765, offset: 0x024849e5, size: 97 bytes, params: 2, frame: 16
const closure = EditWebhook;
env0_7(closure, a0);
return env0_4(closure, [{key: 'componentDidUpdate', value: value_116337}, {key: 'render', value: value_116342}]);
}
function ConnectedEditWebhook(a0) { // fn#116344, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15407:5341, offset: 0x0248586b, size: 126 bytes, params: 2, frame: 19
const value2 = (require(1484) /* metro dependency 1484: useNavigationNative */).useNavigation();
const jsxRuntimeEnv0_18Binding = jsxRuntimeEnv0_18;
const env0_202 = ((Component) => )(env0_20);
const NavScrim = (require(5462) /* metro dependency 5462: NavScrimAndroid */).NavScrim;
return (
<>
{env0_202}
>
);
}
function EditWebhook(a0) { // fn#116321, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15407:777, offset: 0x02484a46, size: 301 bytes, params: 2, frame: 20
var r0;
var Reflect;
let value = copyRestArgs(0, undefined);
let binding = env1_3;
binding(this, EditWebhook);
const items = [];
arraySpread(items, value, 0, items);
value = env1_6(EditWebhook);
binding = env1_5;
if (_isNativeReflectConstruct_116317()) {
Reflect = global.Reflect;
value = Reflect.construct(value, items, env1_6(this).constructor);
r0 = value;
} else {
value = value.apply(this, items);
r0 = value;
}
value = binding(this, r0);
value.state = {'avatar': null, 'name': null, 'channel': null, 'hasChanges': false, 'submitting': false,
'copied': false, avatar: value.props.avatar, name: value.props.name, channel: value.props.channel};
value.handleSave = handleSave;
value.handleGuildIconUpload = handleGuildIconUpload;
value.handleNameChange = handleNameChange;
value.handleChannelChange = handleChannelChange;
value.handleCopyUrl = handleCopyUrl;
value.handleConfirmDeleteWebhook = handleConfirmDeleteWebhook;
value.handleDeleteWebhook = handleDeleteWebhook;
value.handleCancelChanges = handleCancelChanges;
return value;
}
function value_116337(a0, a1) { // fn#116337, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15407:2964, offset: 0x02485152, size: 157 bytes, params: 3, frame: 14
var setOptions;
var object2;
const navigation = this.props.navigation;
const {submitting, hasChanges} = this.state;
if (submitting !== true) {
setOptions = navigation.setOptions;
object2 = {};
if (hasChanges) {
object2.headerRight = headerRight_116338;
object2.headerLeft = headerLeft_116339;
Reflect.apply(setOptions, navigation, [object2]);
} else {
object2.headerRight = undefined;
object2.headerLeft = undefined;
Reflect.apply(setOptions, navigation, [object2]);
}
} else if (a1.submitting) {
setOptions = navigation.setOptions;
object2 = {};
if (hasChanges) {
object2.headerRight = headerRight_116338;
object2.headerLeft = headerLeft_116339;
Reflect.apply(setOptions, navigation, [object2]);
} else {
object2.headerRight = undefined;
object2.headerLeft = undefined;
Reflect.apply(setOptions, navigation, [object2]);
}
} else {
navigation.setOptions({headerRight: headerRight_116340, headerLeft: function() {
return null;
}});
}
}
function value_116342() { // fn#116342, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15407:3506, offset: 0x024852fe, size: 1321 bytes, params: 1, frame: 42
var r8;
var IconLabelBlock;
var object5;
const binding = env1_19;
const context = this.context;
const value2 = undefined;
const value3 = binding(context);
const {webhookId, webhookType, token} = this.props;
const {avatar, name, channel, copied, errors} = this.state;
const Text = (require(4573) /* metro dependency 4573: Text */).Text;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
let string = intl.string;
const t = (require(1244) /* metro dependency 1244: indexNative */).t;
const text = {copied ? Reflect.apply(string, intl,
[t.t5VZ88]) : Reflect.apply(string, intl, [t.OpuAlK])};
const Form = (require(7972) /* metro dependency 7972: native */).Form;
const form = value3.form;
const items3 = [{paddingTop: 16}];
items3[1] = this.props.contentContainerStyle;
const Stack = (require(4572) /* metro dependency 4572: StackNative */).Stack;
const PX_24 = (importDefault(697) /* metro dependency 697: native */).space.PX_24;
const object = {};
object.paddingHorizontal = value3.row.padding;
const CHANNEL_FOLLOWER = WebhookTypes.CHANNEL_FOLLOWER;
const value7 = null;
if (webhookType === CHANNEL_FOLLOWER) {
r8 = value7;
} else {
IconLabelBlock = importDefault(15211) /* metro dependency 15211: IconLabelBlock */;
r8 = ;
}
const items2 = [r8];
const TextInput = (require(7981) /* metro dependency 7981: TextInputNative */).TextInput;
items2[1] = ;
const TableRowGroup = (require(6231) /* metro dependency 6231: TableRowGroupNative */).TableRowGroup;
string = intl.string;
const GK18KJ = (require(1244) /* metro dependency 1244: indexNative */).t.GK18KJ;
const TableRow = (require(6238) /* metro dependency 6238: TableRowNative */).TableRow;
const useChannelNameModule = require(4805) /* metro dependency 4805: useChannelName */;
const computeChannelName = useChannelNameModule.computeChannelName;
const handleChannelChange = this.handleChannelChange;
const Icon = (require(1305) /* metro dependency 1305: native */).Icon;
const Icon2 = (require(1305) /* metro dependency 1305: native */).Icon;
const Sizes = Icon2.Sizes;
const CUSTOM = Sizes.CUSTOM;
items2[2] = } />;
items2[3] = value7 != token ? : value7;
items2[4] = ;
return (
);
}
function EditWebhookHandleSave() { // fn#116322, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15407:1121, owner: EditWebhook.handleSave, offset: 0x02484b73, size: 194 bytes, params: 1, frame: 18
var environment;
var binding;
var avatar;
var name;
var channel;
var props;
var guildId;
var webhookId;
var navigation;
var object2;
var value;
let state = env0_0.state;
if (state.hasChanges) {
binding = env0_0;
state = binding.state;
avatar = state.avatar;
name = state.name;
channel = state.channel;
props = binding.props;
guildId = props.guildId;
webhookId = props.webhookId;
navigation = props.navigation;
object2 = {name: name};
object2.channel_id = channel.id;
object2.avatar = avatar;
binding.setState({submitting: true});
value = environment.__proto__.__proto__;
value = importDefault(15205) /* metro dependency 15205: WebhooksActionCreators */;
value = value.update(guildId, webhookId, object2);
value = value.then(function() {
navigation.pop();
});
value.catch(_fun116324);
}
}
function handleGuildIconUpload(a0) { // fn#116325, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15407:1441, owner: EditWebhook.handleGuildIconUpload, offset: 0x02484c76, size: 89 bytes, params: 2, frame: 15
var binding;
const avatar = env0_0.props.avatar;
if (a0 !== avatar) {
env0_0.setState({hasChanges: true, avatar: a0});
} else {
binding = env0_0;
binding.setState({hasChanges: false, avatar: avatar});
}
}
function EditWebhookHandleNameChange(a0) { // fn#116326, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15407:1566, owner: EditWebhook.handleNameChange, offset: 0x02484ccf, size: 86 bytes, params: 2, frame: 15
var binding;
const name = env0_0.props.name;
if (a0 !== name) {
env0_0.setState({hasChanges: true, name: a0});
} else {
binding = env0_0;
binding.setState({hasChanges: false, name: name});
}
}
function handleChannelChange() { // fn#116327, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15407:1688, owner: EditWebhook.handleChannelChange, offset: 0x02484d25, size: 109 bytes, params: 1, frame: 15
const binding = env0_0;
(importDefault(11265) /* metro dependency 11265: openChannelPicker */)({guildId: binding.props.guildId,
channelType: GUILD_SELECTABLE_CHANNELS_KEY, filterFn: function({channel}) {
return PermissionStore.can(Permissions.MANAGE_WEBHOOKS, channel);
}, selectedChannel: binding.props.channel, onSelect: onSelect_116329});
}
function handleCopyUrl() { // fn#116330, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15407:1953, owner: EditWebhook.handleCopyUrl, offset: 0x02484e19, size: 144 bytes, params: 1, frame: 18
var environment;
var aPIBaseURL;
var value;
const props = env0_0.props;
const token = props.token;
if (token != null) {
value = environment.__proto__.__proto__;
aPIBaseURL = (require(507) /* metro dependency 507: HTTPUtils */).getAPIBaseURL(false);
value = Endpoints.WEBHOOK_INTEGRATION(props.webhookId, token);
value = '' + aPIBaseURL + value;
(require(6797) /* metro dependency 6797: ClipboardUtilsNative */).copy(value, _fun116331);
}
}
function handleConfirmDeleteWebhook() { // fn#116332, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15407:2153, owner: EditWebhook.handleConfirmDeleteWebhook, offset: 0x02484ec6, size: 108 bytes, params: 1, frame: 15
var environment;
const props = env0_0.props;
const guildId = props.guildId;
const webhookId = props.webhookId;
var env0_0 = props.navigation;
let value = environment.__proto__.__proto__;
value = importDefault(15205) /* metro dependency 15205: WebhooksActionCreators */;
value = value.delete(guildId, webhookId);
value = value.then(function() {
navigation.pop();
});
value.catch(_fun116334);
}
function handleDeleteWebhook() { // fn#116335, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15407:2405, owner: EditWebhook.handleDeleteWebhook, offset: 0x02484fc5, size: 316 bytes, params: 1, frame: 24
const binding = env0_0;
const name = binding.props.name;
const defaultImport = importDefault(4496) /* metro dependency 4496: AlertActionCreators */;
const show = defaultImport.show;
const object2 = {};
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
const formatToPlainString = intl.formatToPlainString;
const t = (require(1244) /* metro dependency 1244: indexNative */).t;
const QVFjHh = t.QVFjHh;
object2.title = Reflect.apply(formatToPlainString, intl, [QVFjHh, {name: name}]);
object2.body = intl.format(t['rIWe+5'], {name: name});
object2.cancelText = intl.string(t.gm1Vej);
object2.confirmText = intl.string(t.p89ACt);
object2.onConfirm = binding.handleConfirmDeleteWebhook;
const Colors = (importDefault(4596) /* metro dependency 4596: Alert */).Colors;
const RED = Colors.RED;
object2.confirmColor = RED;
Reflect.apply(show, defaultImport, [object2]);
}
function handleCancelChanges() { // fn#116336, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15407:2769, owner: EditWebhook.handleCancelChanges, offset: 0x02485101, size: 81 bytes, params: 1, frame: 12
const binding = env0_0;
binding.setState({'avatar': null, 'name': null, 'channel': null, 'hasChanges': false, 'submitting': false,
'copied': false, avatar: binding.props.avatar, name: binding.props.name, channel: binding.props.channel});
}
function value_116337HeaderRight() { // fn#116338, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15407:3098, owner: value_116337.headerRight, offset: 0x024851ef, size: 113 bytes, params: 1, frame: 18
const HeaderActionButton = (require(5277) /* metro dependency 5277: HeaderActionButtonNative */).HeaderActionButton;
const handleSave = env0_0.handleSave;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
return (
);
}
function value_116337HeaderLeft() { // fn#116339, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15407:3218, owner: value_116337.headerLeft, offset: 0x02485260, size: 113 bytes, params: 1, frame: 18
const HeaderActionButton = (require(5277) /* metro dependency 5277: HeaderActionButtonNative */).HeaderActionButton;
const handleCancelChanges = env0_0.handleCancelChanges;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
return (
);
}
function value_116337HeaderRight_116340() { // fn#116340, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15407:3417, owner: value_116337.headerRight, offset: 0x024852d1, size: 45 bytes, params: 1, frame: 13
const HeaderSubmittingIndicator = (require(5282) /* metro dependency 5282: NavigatorHeaderNative */).HeaderSubmittingIndicator;
return ;
}
function _fun116324({body}) { // fn#116324, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15407:1362, offset: 0x02484c4a, size: 44 bytes, params: 2, frame: 12
const binding = env1_0;
binding.setState({errors: body, submitting: false});
}
function handleChannelChangeOnSelect(a0) { // fn#116329, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15407:1841, owner: EditWebhook.handleChannelChange.onSelect, offset: 0x02484db9, size: 96 bytes, params: 2, frame: 14
var value2;
if (a0.id !== channel.id) {
value = environment.__proto__;
env1_0.setState({hasChanges: true, channel: a0});
} else {
value2 = environment.__proto__;
env1_0.setState({hasChanges: false, channel: channel});
}
}
function _fun116331() { // fn#116331, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15407:2092, offset: 0x02484ea9, size: 29 bytes, params: 1, frame: 12
return env1_0.setState({copied: true});
}
function _fun116334() { // fn#116334, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15407:2263, offset: 0x02484f32, size: 147 bytes, params: 1, frame: 18
const defaultImport = importDefault(4496) /* metro dependency 4496: AlertActionCreators */;
const show = defaultImport.show;
const object2 = {};
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
const string = intl.string;
const t = (require(1244) /* metro dependency 1244: indexNative */).t;
const N5riYn = t.N5riYn;
object2.title = Reflect.apply(string, intl, [N5riYn]);
object2.body = intl.string(t['/4TwKf']);
Reflect.apply(show, defaultImport, [object2]);
}