decord/source/modules/parent_tools/native/FamilyCenterBannerButton.tsx
github-actions da5b5e5efe chore: update source for alpha 346.6
Skipped 1 file(s) >100MB (GitHub limit): source/__polyfill/04xxx/module_4821.js (118.4 MB)
2026-09-12 13:45:10 +00:00

177 lines
8.6 KiB
TypeScript

// Module ID: 14965
// Function ID: 14966
// Name: FamilyCenterBannerButton
// Dependencies: [19, 17, 1371, 7640, 7641, 1074, 4846, 21, 4636, 576, 8768, 4334, 1114, 12046, 563, 14966, 1242, 14967, 4603, 14968, 1896, 5054, 5056, 9182, 2396, 14971, 4839, 1365, 12043, 1608, 5220, 13955, 2]
// Exports: FamilyCenterParentQRCodeButton, FamilyCenterTeenQRCodeButton
// Module 14965 (FamilyCenterBannerButton)
import nativeDefault from "native" /* 576 */;
import AnalyticsUtilsDefault from "AnalyticsUtils" /* 1242 */;
import MetaQuestUtils from "MetaQuestUtils" /* 1608 */;
import asyncRequireImpl from "asyncRequireImpl" /* 1896 */;
import _modDef2396 from "module_2396" /* 2396 */;
import ActionSheetActionCreatorsDefault from "ActionSheetActionCreators" /* 4603 */;
import components_Button_Button from "components/Button/Button" /* 5056 */;
import shareGuardianConnectLink from "shareGuardianConnectLink" /* 14967 */;
import QrCodeIcon from "QrCodeIcon" /* 14971 */;
import noop from "module_19" /* 19 */;
import UserStore from "UserStore" /* 1371 */;
import FamilyCenterStore from "FamilyCenterStore" /* 7640 */;
const require = globalThis.__r;
const NativePermissionUtilsDefault = tmp(5220);
require = fn;
function FamilyCenterTeenQRCodeButtonInner() {
const callback = stateFromStores1.useCallback(() => {
const intl = getLinkCode(stateFromStores[12]).intl;
getLinkCode(stateFromStores[11]).presentFailedToast(intl.string(getLinkCode(stateFromStores[12]).t.R0RpRX));
}, []);
const tmp = closure_14();
getLinkCode = getLinkCode(stateFromStores[13]).useFamilyCenterActions().getLinkCode;
let obj2 = getLinkCode(stateFromStores[13]);
const getLinkCode2 = getLinkCode(stateFromStores[13]).useFamilyCenterActions({ onError: callback }).getLinkCode;
let obj3 = getLinkCode(stateFromStores[13]);
const items = [UserStore];
stateFromStores = getLinkCode(stateFromStores[14]).useStateFromStores(items, () => currentUser.getCurrentUser());
let obj4 = getLinkCode(stateFromStores[14]);
const items1 = [FamilyCenterStore];
stateFromStores1 = getLinkCode(stateFromStores[14]).useStateFromStores(items1, () => FamilyCenterStore.getLinkCode());
const obj5 = getLinkCode(stateFromStores[14]);
const items2 = [FamilyCenterStore];
const stateFromStores2 = getLinkCode(stateFromStores[14]).useStateFromStores(items2, () => FamilyCenterStore.getLinkCodeExpiresAt());
const obj6 = getLinkCode(stateFromStores[14]);
const userQRLinkUrl = getLinkCode(stateFromStores[10]).useUserQRLinkUrl();
const effect = stateFromStores1.useEffect(() => {
getLinkCode();
}, []);
getLinkCode2(stateFromStores[15])(stateFromStores2, getLinkCode);
const items3 = [stateFromStores, stateFromStores1];
const items4 = [stateFromStores1, stateFromStores2, getLinkCode2];
const callback1 = obj.useCallback(() => {
let tmp2 = null != stateFromStores;
if (tmp2) {
tmp2 = null != stateFromStores1;
}
if (tmp2) {
const obj2 = { action: React7.ShareLink };
AnalyticsUtilsDefault.track(AnalyticEvents.FAMILY_CENTER_ACTION, obj2);
const result = shareGuardianConnectLink.shareGuardianConnectLink(stateFromStores, stateFromStores1);
}
}, items3);
const callback2 = obj.useCallback(() => {
let tmp2 = null != stateFromStores1;
if (tmp2) {
tmp2 = null != stateFromStores2;
}
if (tmp2) {
const obj2 = { action: React7.ShowQRCodeModal };
AnalyticsUtilsDefault.track(AnalyticEvents.FAMILY_CENTER_ACTION, obj2);
const obj4 = { linkCode: stateFromStores1, expiresAt: stateFromStores2, onRefresh: getLinkCode2 };
ActionSheetActionCreatorsDefault.openLazy(asyncRequireImpl(14968, dependencyMap.paths), React5, obj4);
}
}, items4);
const obj8 = { direction: "horizontal", spacing: getLinkCode2(stateFromStores[9]).space.PX_8, style: tmp.container, children: null };
const obj9 = { grow: true, shrink: true, size: "md", variant: "primary", text: null, disabled: null, onPress: null, icon: null, iconPosition: "start" };
let intl = tmp3(tmp4[12]).intl;
obj9.text = intl.string(getLinkCode(stateFromStores[12]).t.Ej3B3Y);
obj9.disabled = null == userQRLinkUrl || null == stateFromStores1 || null == stateFromStores2;
obj9.onPress = callback1;
obj9.icon = closure_12(getLinkCode(stateFromStores[23]).ShareIcon, { size: "sm", color: "control-primary-text-default" });
const items5 = [closure_12(getLinkCode(stateFromStores[22]).Button, obj9), ];
const obj10 = { grow: true, shrink: true, size: "md", variant: "secondary", text: null, disabled: null, onPress: null, icon: null, iconPosition: "start" };
const intl2 = tmp3(tmp4[12]).intl;
obj10.text = intl2.string(getLinkCode2(stateFromStores[24]).wd4yrz);
obj10.disabled = null == userQRLinkUrl || null == stateFromStores1 || null == stateFromStores2;
obj10.onPress = callback2;
obj10.icon = closure_12(getLinkCode(stateFromStores[25]).QrCodeIcon, { size: "sm", color: "control-secondary-text-default" });
items5[1] = closure_12(getLinkCode(stateFromStores[22]).Button, obj10);
obj8.children = items5;
return closure_13(getLinkCode(stateFromStores[21]).Stack, obj8);
}
class FamilyCenterBannerButton {
constructor(arg0) {
({ onPress, text, loading } = global);
tmp = closure_16();
obj = { style: tmp.button, children: null };
obj1 = { grow: true, shrink: true, size: "md", variant: "primary", text, onPress, loading, icon: null, iconPosition: "start" };
obj4 = { style: tmp.art, size: "custom", color: "white" };
obj1.icon = jsx(closure_0(closure_2[25]).QrCodeIcon, obj4);
obj.children = jsx(closure_0(closure_2[22]).Button, obj1);
return jsx(View, obj);
}
}
const View = fn(17).View;
const FamilyCenterConstants = fn(7641);
({ CONNECT_GUARDIAN_BOTTOM_SHEET_KEY: closure_7, FAMILY_CENTER_LINK_REQUEST_REGEX: closure_8, FamilyCenterAction: closure_9 } = FamilyCenterConstants);
const AnalyticEvents = fn(1074).AnalyticEvents;
const NativePermissionTypes = fn(4846).NativePermissionTypes;
const jsxProd = fn(21);
({ jsx: closure_12, jsxs: map1 } = jsxProd);
let createStyles = fn(4636);
let obj2 = { container: { marginTop: nativeDefault.space.PX_16 } };
let closure_14 = createStyles.createStyles(obj2);
createStyles = fn(4636);
const value = createStyles.createStyles({ button: { height: 50, width: "100%", marginTop: 16 }, art: { width: 18, height: 18, marginRight: 6 } });
const size = fn(2);
let result = size.fileFinishedImporting("modules/parent_tools/native/FamilyCenterBannerButton.tsx");
export default FamilyCenterBannerButton;
export const FamilyCenterTeenQRCodeButton = function FamilyCenterTeenQRCodeButton() {
let tmp = null;
if (!obj.useHasMaxConnections()) {
tmp = closure_1_12(FamilyCenterTeenQRCodeButtonInner, {});
}
return tmp;
};
export const FamilyCenterParentQRCodeButton = function FamilyCenterParentQRCodeButton() {
function handleQrCodeScanSucess(dependencyMap) {
require("ModalActionCreators").pop();
const arr = require("ModalActionCreators");
const tmp = importDefault;
let toURLSafeResult = require("URLUtils").toURLSafe(dependencyMap);
if (toURLSafeResult == null) {
toURLSafeResult = {};
}
({ hostname, pathname } = toURLSafeResult);
let tmp4 = null;
if (null != hostname) {
tmp4 = null;
if (null != pathname) {
tmp4 = null;
if (tmpResult.isDiscordHostname(hostname)) {
if (null !== pathname.match(closure_1_8)) {
const result = handleQrCodeScanSucess(tmp2[28]).handleFamilyCenterQRCodeScan(pathname, "FamilyCenterQRCodeScan");
const obj4 = handleQrCodeScanSucess(tmp2[28]);
}
tmp4 = tmp6;
}
tmpResult = tmp(tmp2[27]);
}
}
return tmp4;
}
if (obj.useHasMaxConnections()) {
return null;
} else {
let obj2 = { text: null, onPress: null };
const intl = tmp(1114).intl;
obj2.text = intl.string(_modDef2396.z4a9HP);
obj2.onPress = function onPress() {
AnalyticsUtilsDefault.track(AnalyticEvents.FAMILY_CENTER_ACTION, { action: React7.ScanQRCodeButton });
let obj2 = { action: React7.ScanQRCodeButton };
const tmp5 = MetaQuestUtils.isMetaQuest() ? NativePermissionTypes.HEADSET_CAMERA : NativePermissionTypes.CAMERA;
const permission = NativePermissionUtilsDefault.requestPermission(tmp5);
permission.then((result) => {
if (result) {
const obj2 = { showHelp: false, onScanSuccess };
require("ModalActionCreators").pushLazy(handleQrCodeScanSucess(paths[20])(paths[31], paths.paths), obj2);
const obj = require("ModalActionCreators");
}
});
};
return closure_12(FamilyCenterBannerButton, obj2);
}
obj = handleQrCodeScanSucess(8768);
tmp = handleQrCodeScanSucess;
};