react-native-permissions
Version:
An unified permissions API for React Native on iOS, Android and Windows
87 lines (86 loc) • 3.29 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.PERMISSIONS = void 0;
Object.defineProperty(exports, "RESULTS", {
enumerable: true,
get: function () {
return _results.RESULTS;
}
});
exports.requestNotifications = exports.requestMultiple = exports.requestLocationAccuracy = exports.request = exports.openSettings = exports.openPhotoPicker = exports.default = exports.checkNotifications = exports.checkMultiple = exports.checkLocationAccuracy = exports.check = exports.canUseFullScreenIntent = exports.canScheduleExactAlarms = void 0;
var _permissionsAndroid = require("../permissions.android.js");
var _permissionsIos = require("../permissions.ios.js");
var _permissionsWindows = require("../permissions.windows.js");
var _results = require("../results.js");
const PERMISSIONS = exports.PERMISSIONS = {
ANDROID: _permissionsAndroid.PERMISSIONS.ANDROID,
IOS: _permissionsIos.PERMISSIONS.IOS,
WINDOWS: _permissionsWindows.PERMISSIONS.WINDOWS
};
const canScheduleExactAlarms = exports.canScheduleExactAlarms = jest.fn(async () => true);
const canUseFullScreenIntent = exports.canUseFullScreenIntent = jest.fn(async () => true);
const check = exports.check = jest.fn(async () => _results.RESULTS.GRANTED);
const checkLocationAccuracy = exports.checkLocationAccuracy = jest.fn(async () => 'full');
const openPhotoPicker = exports.openPhotoPicker = jest.fn(async () => {});
const openSettings = exports.openSettings = jest.fn(async () => {});
const request = exports.request = jest.fn(async () => _results.RESULTS.GRANTED);
const requestLocationAccuracy = exports.requestLocationAccuracy = jest.fn(async () => 'full');
const notificationOptions = new Set(['alert', 'badge', 'sound', 'carPlay', 'criticalAlert', 'provisional', 'providesAppSettings']);
const notificationSettings = {
alert: true,
badge: true,
sound: true,
carPlay: true,
criticalAlert: true,
provisional: true,
providesAppSettings: true,
lockScreen: true,
notificationCenter: true
};
const checkNotifications = exports.checkNotifications = jest.fn(async () => ({
status: _results.RESULTS.GRANTED,
settings: notificationSettings
}));
const requestNotifications = exports.requestNotifications = jest.fn(async (options = []) => ({
status: _results.RESULTS.GRANTED,
settings: options.filter(option => notificationOptions.has(option)).reduce((acc, option) => ({
...acc,
[option]: true
}), {
lockScreen: true,
notificationCenter: true
})
}));
const checkMultiple = exports.checkMultiple = jest.fn(async permissions => {
const output = {};
for (const permission of permissions) {
output[permission] = _results.RESULTS.GRANTED;
}
return output;
});
const requestMultiple = exports.requestMultiple = jest.fn(async permissions => {
const output = {};
for (const permission of permissions) {
output[permission] = _results.RESULTS.GRANTED;
}
return output;
});
var _default = exports.default = {
PERMISSIONS,
RESULTS: _results.RESULTS,
canScheduleExactAlarms,
canUseFullScreenIntent,
check,
checkLocationAccuracy,
checkMultiple,
checkNotifications,
openPhotoPicker,
openSettings,
request,
requestLocationAccuracy,
requestMultiple,
requestNotifications
};
//# sourceMappingURL=mock.js.map