371 lines
13 KiB
TypeScript
371 lines
13 KiB
TypeScript
// Module ID: 12211
|
|
// Function ID: 12212
|
|
// Name: _requestPushNotificationPermission
|
|
// Dependencies: [32, 5, 19, 17, 12209, 12210, 673, 4731, 9677, 695, 12212, 12218, 12219, 586, 2]
|
|
// Exports: enableProvisionalPushNotification, requestPushNotificationPermission, useCanSeePushNotificationNudge, useShouldShowPushNotificationNudgeByPromptType, useShowReactivationPrompt
|
|
|
|
// Module 12211 (_requestPushNotificationPermission)
|
|
import initialize from "initialize" /* 586 */;
|
|
import set from "set" /* 12219 */;
|
|
import closure_3 from "_slicedToArray" /* 32 */;
|
|
import closure_4 from "asyncGeneratorStep" /* 5 */;
|
|
import closure_5 from "noop" /* 19 */;
|
|
import { NativeModules } from "get ActivityIndicator" /* 17 */;
|
|
import closure_7 from "set" /* 12209 */;
|
|
import { EventActionType } from "EventActionType" /* 12210 */;
|
|
import { AnalyticEvents } from "ME" /* 673 */;
|
|
import { NotificationAuthorizationStatus as closure_10 } from "NativePermissionStatus" /* 4731 */;
|
|
|
|
require = arg1;
|
|
function _requestPushNotificationPermission() {
|
|
const self = this;
|
|
const tmp = callback2((arg0, arg1, arg2) => {
|
|
closure_0 = arg0;
|
|
closure_1 = arg1;
|
|
closure_2 = arg2;
|
|
c5 = 0;
|
|
c6 = 0;
|
|
return (function*(arg0, arg1, arg2) {
|
|
if (obj === 2) {
|
|
obj = 3;
|
|
HermesBuiltin.throwTypeError();
|
|
} else if (tmp4 === 3) {
|
|
if (arg0 === 1) {
|
|
throw arg1;
|
|
} else if (arg0 === 2) {
|
|
obj = { value: null, done: true };
|
|
obj[0] = arg1;
|
|
return obj;
|
|
} else {
|
|
return { value: "HermesInternal", done: null };
|
|
}
|
|
} else {
|
|
try {
|
|
obj = 2;
|
|
if (0 === c5) {
|
|
if (arg0 === 1) {
|
|
obj = 3;
|
|
throw arg1;
|
|
} else if (arg0 === 2) {
|
|
obj = 3;
|
|
obj = { value: null, done: true };
|
|
obj[0] = arg1;
|
|
return obj;
|
|
} else {
|
|
closure_4 = tmp5;
|
|
closure_3 = tmp2;
|
|
closure_3 = undefined;
|
|
const NativePermissionManager = obj.NativePermissionManager;
|
|
c5 = 1;
|
|
obj = 1;
|
|
obj1 = { value: null, done: false };
|
|
obj1[0] = NativePermissionManager.getNotificationAuthorizationStatus();
|
|
return obj1;
|
|
}
|
|
} else if (arg0 === 1) {
|
|
obj = 3;
|
|
throw arg1;
|
|
} else if (arg0 === 2) {
|
|
obj = 3;
|
|
let obj2 = { value: null, done: true };
|
|
obj2[0] = arg1;
|
|
return obj2;
|
|
} else {
|
|
closure_3 = arg1;
|
|
if (closure_3 === constants3.DENIED) {
|
|
callback2(9677)();
|
|
obj2 = callback2(695);
|
|
const obj3 = { action_type: null, action_location: null };
|
|
obj3[0] = constants.TO_SETTINGS;
|
|
obj3[1] = callback2;
|
|
obj2.track(constants2.NOTIFICATION_PERMISSION_PREPROMPT_ACKED, obj3);
|
|
dependencyMap();
|
|
obj = 3;
|
|
} else if (closure_3 !== constants3.AUTHORIZED) {
|
|
obj = callback2(12218);
|
|
const permission = obj.requestPermission((permission_granted) => {
|
|
let obj = callback(695);
|
|
obj = { action_type: closure_0, action_location: callback, permission_granted };
|
|
obj.track(closure_1_9.NOTIFICATION_PERMISSION_PREPROMPT_ACKED, obj);
|
|
dependencyMap();
|
|
});
|
|
}
|
|
obj1 = callback(12212);
|
|
const result = obj1.updateNotificationAuthorizationStatus(closure_3);
|
|
dependencyMap();
|
|
}
|
|
} catch (tmp36) {
|
|
obj = tmp;
|
|
throw tmp36;
|
|
}
|
|
}
|
|
})();
|
|
});
|
|
closure_11 = tmp;
|
|
const apply = tmp.apply;
|
|
if (typeof apply === "unknown") {
|
|
let applyArgumentsResult = HermesBuiltin.applyArguments(self);
|
|
} else {
|
|
applyArgumentsResult = apply(self, arguments);
|
|
}
|
|
return applyArgumentsResult;
|
|
}
|
|
function _enableProvisionalPushNotification() {
|
|
const self = this;
|
|
const tmp = callback2(function*() {
|
|
if (c3 === 2) {
|
|
c3 = 3;
|
|
HermesBuiltin.throwTypeError();
|
|
} else if (tmp3 === 3) {
|
|
if (arg0 === 1) {
|
|
throw arg1;
|
|
} else if (arg0 === 2) {
|
|
let obj = { value: null, done: true };
|
|
obj[0] = arg1;
|
|
return obj;
|
|
} else {
|
|
return { value: "HermesInternal", done: null };
|
|
}
|
|
} else {
|
|
try {
|
|
c3 = 2;
|
|
if (0 === c2) {
|
|
if (arg0 === 1) {
|
|
c3 = 3;
|
|
throw arg1;
|
|
} else if (arg0 === 2) {
|
|
c3 = 3;
|
|
obj = { value: null, done: true };
|
|
obj[0] = arg1;
|
|
return obj;
|
|
} else {
|
|
closure_1 = tmp4;
|
|
closure_0 = tmp4;
|
|
let NativePermissionManager = closure_1_6.NativePermissionManager;
|
|
c2 = 1;
|
|
c3 = 1;
|
|
obj1 = { value: null, done: false };
|
|
obj1[0] = NativePermissionManager.getNotificationAuthorizationStatus();
|
|
return obj1;
|
|
}
|
|
} else if (arg0 === 1) {
|
|
c3 = 3;
|
|
throw arg1;
|
|
} else if (arg0 === 2) {
|
|
c3 = 3;
|
|
obj = { value: null, done: true };
|
|
obj[0] = arg1;
|
|
return obj;
|
|
} else {
|
|
if (arg1 === constants.UNDETERMINED) {
|
|
const DCDProvisionalNotificationUtils = obj.DCDProvisionalNotificationUtils;
|
|
let result = DCDProvisionalNotificationUtils.registerProvisionalNotification((arg0) => {
|
|
let obj = callback(table[9]);
|
|
let str = "denied";
|
|
if (arg0) {
|
|
str = "accepted";
|
|
}
|
|
obj.track(constants.PERMISSIONS_ACKED, { type: "provisional_notification", action: str });
|
|
const NativePermissionManager = obj.NativePermissionManager;
|
|
const notificationAuthorizationStatus = NativePermissionManager.getNotificationAuthorizationStatus();
|
|
notificationAuthorizationStatus.then((closure_0) => {
|
|
if (null != closure_0) {
|
|
const result = callback(table[10]).updateNotificationAuthorizationStatus(closure_0);
|
|
const obj = callback(table[10]);
|
|
}
|
|
});
|
|
});
|
|
}
|
|
c3 = 3;
|
|
return { value: "HermesInternal", done: null };
|
|
}
|
|
} catch (tmp12) {
|
|
c3 = tmp;
|
|
throw tmp12;
|
|
}
|
|
}
|
|
});
|
|
closure_12 = tmp;
|
|
const apply = tmp.apply;
|
|
if (typeof apply === "unknown") {
|
|
let applyArgumentsResult = HermesBuiltin.applyArguments(self);
|
|
} else {
|
|
applyArgumentsResult = apply(self, arguments);
|
|
}
|
|
return applyArgumentsResult;
|
|
}
|
|
let result = require("set").fileFinishedImporting("modules/nuf/native/NotificationPermissionUtil.tsx");
|
|
|
|
export const requestPushNotificationPermission = function requestPushNotificationPermission(ALLOW_TO_REQUEST, ALERT, callback) {
|
|
const self = this;
|
|
const apply = _requestPushNotificationPermission.apply;
|
|
if (typeof apply === "unknown") {
|
|
let applyArgumentsResult = HermesBuiltin.applyArguments(self);
|
|
} else {
|
|
applyArgumentsResult = apply(self, arguments);
|
|
}
|
|
return applyArgumentsResult;
|
|
};
|
|
export const useShowReactivationPrompt = function useShowReactivationPrompt() {
|
|
[tmp2, require] = callback(React.useState(false), 2);
|
|
const effect = React.useEffect(() => {
|
|
function _shouldShowReactivationPrompts() {
|
|
const self = this;
|
|
const tmp = closure_2_4(function*() {
|
|
if (c2 === 2) {
|
|
c2 = 3;
|
|
HermesBuiltin.throwTypeError();
|
|
} else if (tmp3 === 3) {
|
|
if (arg0 === 1) {
|
|
throw arg1;
|
|
} else if (arg0 === 2) {
|
|
let obj = { value: null, done: true };
|
|
obj[0] = arg1;
|
|
return obj;
|
|
} else {
|
|
return { value: "HermesInternal", done: null };
|
|
}
|
|
} else {
|
|
try {
|
|
c2 = 2;
|
|
if (0 === c1) {
|
|
if (arg0 === 1) {
|
|
c2 = 3;
|
|
throw arg1;
|
|
} else if (arg0 === 2) {
|
|
c2 = 3;
|
|
obj = { value: null, done: true };
|
|
obj[0] = arg1;
|
|
return obj;
|
|
} else {
|
|
closure_0 = tmp4;
|
|
const NativePermissionManager = closure_2_6.NativePermissionManager;
|
|
c1 = 1;
|
|
c2 = 1;
|
|
obj1 = { value: null, done: false };
|
|
obj1[0] = NativePermissionManager.getNotificationAuthorizationStatus();
|
|
return obj1;
|
|
}
|
|
} else if (arg0 === 1) {
|
|
c2 = 3;
|
|
throw arg1;
|
|
} else if (arg0 === 2) {
|
|
c2 = 3;
|
|
obj = { value: null, done: true };
|
|
obj[0] = arg1;
|
|
return obj;
|
|
} else {
|
|
if (arg1 !== closure_2_10.AUTHORIZED) {
|
|
closure_1_0(true);
|
|
}
|
|
c2 = 3;
|
|
return { value: "HermesInternal", done: null };
|
|
}
|
|
} catch (tmp11) {
|
|
c2 = tmp;
|
|
throw tmp11;
|
|
}
|
|
}
|
|
});
|
|
closure_0 = tmp;
|
|
const apply = tmp.apply;
|
|
if (typeof apply === "unknown") {
|
|
let applyArgumentsResult = HermesBuiltin.applyArguments(self);
|
|
} else {
|
|
applyArgumentsResult = apply(self, arguments);
|
|
}
|
|
return applyArgumentsResult;
|
|
}
|
|
!(function shouldShowReactivationPrompts() {
|
|
const self = this;
|
|
const apply = _shouldShowReactivationPrompts.apply;
|
|
if (typeof apply === "unknown") {
|
|
let applyArgumentsResult = HermesBuiltin.applyArguments(self);
|
|
} else {
|
|
applyArgumentsResult = apply(self, arguments);
|
|
}
|
|
return applyArgumentsResult;
|
|
})();
|
|
}, []);
|
|
return tmp2;
|
|
};
|
|
export const enableProvisionalPushNotification = function enableProvisionalPushNotification() {
|
|
const self = this;
|
|
const apply = _enableProvisionalPushNotification.apply;
|
|
if (typeof apply === "unknown") {
|
|
let applyArgumentsResult = HermesBuiltin.applyArguments(self);
|
|
} else {
|
|
applyArgumentsResult = apply(self, arguments);
|
|
}
|
|
return applyArgumentsResult;
|
|
};
|
|
export const useCanSeePushNotificationNudge = function useCanSeePushNotificationNudge() {
|
|
const isTeenInStrictCountry = set.useIsTeenInStrictCountry();
|
|
const obj = set;
|
|
const items = [closure_7];
|
|
const stateFromStores = initialize.useStateFromStores(items, () => state.authorizationStatus);
|
|
const obj2 = initialize;
|
|
[tmp4, require] = callback(React.useState(false), 2);
|
|
const effect = React.useEffect(() => {
|
|
const NativePermissionManager = closure_1_6.NativePermissionManager;
|
|
const notificationAuthorizationStatus = NativePermissionManager.getNotificationAuthorizationStatus();
|
|
notificationAuthorizationStatus.then((closure_0) => {
|
|
if (null != closure_0) {
|
|
const result = closure_1_0(closure_1_2[10]).updateNotificationAuthorizationStatus(closure_0);
|
|
const obj = closure_1_0(closure_1_2[10]);
|
|
}
|
|
callback(true);
|
|
});
|
|
}, []);
|
|
if (hasItem) {
|
|
hasItem = !isTeenInStrictCountry;
|
|
}
|
|
if (hasItem) {
|
|
hasItem = null != stateFromStores;
|
|
}
|
|
if (hasItem) {
|
|
const items1 = [, , ];
|
|
({ DENIED: arr2[0], PROVISIONAL: arr2[1], UNDETERMINED: arr2[2] } = closure_10);
|
|
hasItem = items1.includes(stateFromStores);
|
|
}
|
|
return hasItem;
|
|
};
|
|
export const useShouldShowPushNotificationNudgeByPromptType = function useShouldShowPushNotificationNudgeByPromptType(CHANNEL_BANNER) {
|
|
const isTeenInStrictCountry = set.useIsTeenInStrictCountry();
|
|
let obj = set;
|
|
const tmp = require;
|
|
const items = [closure_7];
|
|
const stateFromStores = initialize.useStateFromStores(items, () => state.authorizationStatus);
|
|
const obj2 = initialize;
|
|
const tmp4 = closure_7;
|
|
[tmp7, require] = callback(React.useState(false), 2);
|
|
const effect = React.useEffect(() => {
|
|
const NativePermissionManager = closure_1_6.NativePermissionManager;
|
|
const notificationAuthorizationStatus = NativePermissionManager.getNotificationAuthorizationStatus();
|
|
notificationAuthorizationStatus.then((closure_0) => {
|
|
if (null != closure_0) {
|
|
const result = closure_1_0(closure_1_2[10]).updateNotificationAuthorizationStatus(closure_0);
|
|
const obj = closure_1_0(closure_1_2[10]);
|
|
}
|
|
callback(true);
|
|
});
|
|
}, []);
|
|
if (hasItem) {
|
|
hasItem = !isTeenInStrictCountry;
|
|
}
|
|
if (hasItem) {
|
|
hasItem = null != stateFromStores;
|
|
}
|
|
if (hasItem) {
|
|
const items1 = [, , ];
|
|
({ DENIED: arr2[0], PROVISIONAL: arr2[1], UNDETERMINED: arr2[2] } = closure_10);
|
|
hasItem = items1.includes(stateFromStores);
|
|
}
|
|
const tmp6 = callback(React.useState(false), 2);
|
|
const items2 = [tmp4];
|
|
const stateFromStores1 = initialize.useStateFromStores(items2, () => state.getState().eligiblePromptTypes);
|
|
if (hasItem) {
|
|
hasItem = stateFromStores1.has(CHANNEL_BANNER);
|
|
}
|
|
return hasItem;
|
|
};
|