decord/source/1171__isNativeReflectConstruct.js
2026-07-21 22:01:30 +00:00

262 lines
11 KiB
JavaScript

// Module ID: 1171
// Function ID: 13314
// Name: _isNativeReflectConstruct
// Dependencies: []
// Module 1171 (_isNativeReflectConstruct)
let Platform;
function _isNativeReflectConstruct() {
let closure_0 = !valueOf.call(Reflect.construct(Boolean, [], () => {
}));
function _isNativeReflectConstruct() {
return closure_0;
}
const result = _isNativeReflectConstruct();
}
let closure_2 = importDefault(dependencyMap[0]);
let closure_3 = importDefault(dependencyMap[1]);
let closure_4 = importDefault(dependencyMap[2]);
let closure_5 = importDefault(dependencyMap[3]);
let closure_6 = importDefault(dependencyMap[4]);
const importAllResult = importAll(dependencyMap[5]);
({ Animated: closure_8, Appearance: closure_9, Dimensions: closure_10, Easing: closure_11, Modal: closure_12, PanResponder: closure_13, Platform, ScrollView: closure_14, View: closure_15 } = arg1(dependencyMap[6]));
const tmp3 = arg1(dependencyMap[6]);
let closure_16 = arg1(dependencyMap[7]).isNativeDriverSupportedForColorAnimations();
export const FeedbackWidgetProvider = (Component) => {
class FeedbackWidgetProvider {
constructor(arg0) {
self = this;
tmp = closure_2(this, FeedbackWidgetProvider);
items = [];
items[0] = Component;
obj = closure_5(FeedbackWidgetProvider);
tmp2 = closure_4;
if (closure_17()) {
tmp4 = globalThis;
_Reflect = Reflect;
tmp5 = closure_5;
constructResult = Reflect.construct(obj, items, closure_5(self).constructor);
} else {
constructResult = obj.apply(self, items);
}
tmp2Result = tmp2(self, constructResult);
FeedbackWidgetProvider = tmp2Result;
obj = { 9223372036854775807: true, 9223372036854775807: null, 0: 16, 9223372036854775807: 5, -9223372036854775808: false, 0: 79.82 };
value = new closure_8.Value(0);
obj.backgroundOpacity = value;
value1 = new closure_8.Value(closure_10.get("screen").height);
obj.panY = value1;
tmp2Result.state = obj;
obj1 = {
onStartShouldSetPanResponder(arg0, dy) {
let isScrollAtTop = tmp2Result(closure_1[8]).notWeb();
if (isScrollAtTop) {
isScrollAtTop = tmp2Result.state.isScrollAtTop;
}
if (isScrollAtTop) {
isScrollAtTop = dy.dy > 0;
}
return isScrollAtTop;
},
onMoveShouldSetPanResponder(arg0, dy) {
let isScrollAtTop = tmp2Result(closure_1[8]).notWeb();
if (isScrollAtTop) {
isScrollAtTop = tmp2Result.state.isScrollAtTop;
}
if (isScrollAtTop) {
isScrollAtTop = dy.dy > 0;
}
return isScrollAtTop;
},
onPanResponderMove(arg0, dy) {
if (dy.dy > 0) {
const panY = tmp2Result.state.panY;
panY.setValue(dy.dy);
}
},
onPanResponderRelease(arg0, dy) {
if (dy.dy > tmp2Result(closure_1[9]).PULL_DOWN_CLOSE_THRESHOLD) {
const obj = { toValue: store.get("screen").height, duration: tmp2Result(closure_1[9]).SLIDE_ANIMATION_DURATION, useNativeDriver: true };
closure_8.timing(tmp2Result.state.panY, obj).start(() => {
closure_0._handleClose();
});
const timingResult = closure_8.timing(tmp2Result.state.panY, obj);
} else {
closure_8.spring(tmp2Result.state.panY, { resourceTimingToSpanAttributes: "info", esrb: "/" }).start();
const springResult = closure_8.spring(tmp2Result.state.panY, { resourceTimingToSpanAttributes: "info", esrb: "/" });
}
}
};
tmp2Result._panResponder = closure_13.create(obj1);
tmp2Result._handleScroll = (nativeEvent) => {
tmp2Result.setState({ isScrollAtTop: nativeEvent.nativeEvent.contentOffset.y <= 0 });
};
tmp2Result._setVisibilityFunction = (arg0) => {
let parallel;
let timing;
function updateState() {
arg0.setState({ isVisible: arg0 });
}
if (arg0) {
updateState();
} else {
let obj = {};
({ parallel, timing } = closure_8);
obj.toValue = store.get("screen").height;
obj.duration = tmp2Result(updateState[9]).SLIDE_ANIMATION_DURATION;
obj.useNativeDriver = true;
obj.easing = closure_11.out(closure_11.quad);
const items = [timing(tmp2Result.state.panY, obj), ];
obj = { toValue: 0, duration: tmp2Result(updateState[9]).BACKGROUND_ANIMATION_DURATION, useNativeDriver: closure_16, easing: closure_11.out(closure_11.quad) };
items[1] = closure_8.timing(tmp2Result.state.backgroundOpacity, obj);
parallel(items).start(() => {
updateState();
});
const parallelResult = parallel(items);
}
};
tmp2Result._setButtonVisibilityFunction = (isButtonVisible) => {
tmp2Result.setState({ isButtonVisible });
};
tmp2Result._setScreenshotButtonVisibilityFunction = (isScreenshotButtonVisible) => {
tmp2Result.setState({ isScreenshotButtonVisible });
};
tmp2Result._handleClose = () => {
const FeedbackWidgetManager = tmp2Result(closure_1[9]).FeedbackWidgetManager;
FeedbackWidgetManager.hide();
};
FeedbackButtonManager = FeedbackWidgetProvider(closure_1[9]).FeedbackButtonManager;
initializeResult = FeedbackButtonManager.initialize(tmp2Result._setButtonVisibilityFunction);
ScreenshotButtonManager = FeedbackWidgetProvider(closure_1[9]).ScreenshotButtonManager;
initializeResult1 = ScreenshotButtonManager.initialize(tmp2Result._setScreenshotButtonVisibilityFunction);
FeedbackWidgetManager = FeedbackWidgetProvider(closure_1[9]).FeedbackWidgetManager;
initializeResult2 = FeedbackWidgetManager.initialize(tmp2Result._setVisibilityFunction);
return tmp2Result;
}
}
const arg1 = FeedbackWidgetProvider;
callback2(FeedbackWidgetProvider, Component);
let obj = {
key: "componentDidMount",
value: function componentDidMount() {
const FeedbackWidgetProvider = this;
this._themeListener = closure_9.addChangeListener(() => {
self.forceUpdate();
});
}
};
const items = [obj, , , ];
obj = {
key: "componentWillUnmount",
value: function componentWillUnmount() {
if (this._themeListener) {
const _themeListener = this._themeListener;
_themeListener.remove();
}
}
};
items[1] = obj;
obj = {
key: "componentDidUpdate",
value: function componentDidUpdate(arg0, isVisible) {
let parallel;
let timing;
const self = this;
if (!isVisible.isVisible) {
if (self.state.isVisible) {
let obj = { toValue: 1 };
({ parallel, timing } = RN);
obj.duration = FeedbackWidgetProvider(closure_1[9]).BACKGROUND_ANIMATION_DURATION;
obj.useNativeDriver = closure_16;
obj.easing = closure_11.in(closure_11.quad);
const items = [timing(self.state.backgroundOpacity, obj), ];
obj = { 0: "<string:8912898>", 9223372036854775807: "<string:2919038977>", 9223372036854775807: "<string:2024931329>", duration: FeedbackWidgetProvider(closure_1[9]).SLIDE_ANIMATION_DURATION, easing: closure_11.in(closure_11.quad) };
items[1] = RN.timing(self.state.panY, obj);
parallel(items).start(() => {
const debug = callback(closure_1[10]).debug;
debug.log("FeedbackWidgetProvider componentDidUpdate");
});
const parallelResult = parallel(items);
}
}
if (tmp7) {
const backgroundOpacity = self.state.backgroundOpacity;
backgroundOpacity.setValue(0);
}
}
};
items[2] = obj;
items[3] = {
key: "render",
value: function render() {
let backgroundOpacity;
let createElement;
let createElement2;
let createElement3;
let createElement4;
let isButtonVisible;
let isScreenshotButtonVisible;
let isVisible;
const self = this;
let obj = FeedbackWidgetProvider(closure_1[7]);
if (obj.isModalSupported()) {
({ isButtonVisible, isScreenshotButtonVisible, isVisible, backgroundOpacity } = self.state);
obj = { inputRange: ["replace", "then"], outputRange: ["discord_protos.discord_users.v1.InboxTab", "discord_protos.discord_users.v1.AllGuildSettings"] };
const theme = tmp(tmp2[11]).getTheme();
const Fragment = React.Fragment;
const children = self.props.children;
const tmp8 = React;
const tmpResult = tmp(tmp2[11]);
if (isButtonVisible) {
const _Object = Object;
let obj3 = FeedbackWidgetProvider(closure_1[13]);
isButtonVisible = React.createElement(FeedbackWidgetProvider(closure_1[12]).FeedbackButton, Object.assign({}, obj3.getFeedbackButtonOptions()));
}
if (isScreenshotButtonVisible) {
const _Object2 = Object;
let obj4 = FeedbackWidgetProvider(closure_1[13]);
isScreenshotButtonVisible = React.createElement(FeedbackWidgetProvider(closure_1[14]).ScreenshotButton, Object.assign({}, obj4.getScreenshotButtonOptions()));
}
let element = isVisible;
if (isVisible) {
obj = {};
const items = [FeedbackWidgetProvider(closure_1[15]).modalWrapper, ];
const obj1 = { backgroundColor: interpolateResult };
items[1] = obj1;
obj.style = items;
const obj2 = { visible: isVisible, onRequestClose: self._handleClose };
obj3 = {};
({ createElement, createElement: createElement2 } = React);
obj3.style = FeedbackWidgetProvider(closure_1[15]).topSpacer;
const element2 = createElement2(closure_15, obj3);
const _Object3 = Object;
obj4 = {};
const items1 = [FeedbackWidgetProvider(closure_1[15]).modalSheetContainer(theme), ];
const obj5 = {};
const obj6 = { translateY: self.state.panY };
const items2 = [obj6];
obj5.transform = items2;
items1[1] = obj5;
obj4.style = items1;
const obj7 = { 9223372036854775807: true, alignItems: true, accessible: true, onScroll: self._handleScroll };
const merged = Object.assign(obj4, self._panResponder.panHandlers);
({ createElement: createElement3, createElement: createElement4 } = React);
const _Object4 = Object;
const obj11 = FeedbackWidgetProvider(closure_1[15]);
({ _handleClose: obj16.onFormClose, _handleClose: obj16.onFormSubmitted } = self);
element = <RN.View {......obj}><closure_12 {......obj2}>{element2}<RN.View {......merged}>{createElement3(closure_14, obj7, createElement4(FeedbackWidgetProvider(closure_1[16]).FeedbackWidget, Object.assign({}, FeedbackWidgetProvider(closure_1[13]).getFeedbackOptions(), {})))}</RN.View></closure_12></RN.View>;
const obj15 = FeedbackWidgetProvider(closure_1[13]);
const obj8 = {};
}
return <>{children}{isButtonVisible}{isScreenshotButtonVisible}{element}</>;
} else {
const debug = tmp(tmp2[10]).debug;
debug.error("FeedbackWidget Modal is not supported in React Native < 0.71 with Fabric renderer.");
return <>{self.props.children}</>;
}
}
};
return callback(FeedbackWidgetProvider, items);
}(importAllResult.Component);