Workaround for broken dynamic imports on Safari 17.2

This commit is contained in:
Foxster
2023-12-14 19:33:38 -08:00
parent 097ffb0dfe
commit e0116394d4
3 changed files with 73 additions and 60 deletions

View File

@@ -13,117 +13,127 @@ export const sourceURL = urlSearchParams.get('source')?.replaceAll("+", "%2B");
// https://stackoverflow.com/a/8943487
export const urlRegex = /(\b(https?|ftp|file):\/\/[-A-Z0-9+&@#\/%?=~_|!:,.;]*[-A-Z0-9+&@#\/%=~_|])/ig;
export const sources = [
"https://therealfoxster.github.io/altsource/apps.json",
"https://qnblackcat.github.io/AltStore/apps.json",
"https://quarksources.github.io/dist/quantumsource.min.json",
"https://quarksources.github.io/dist/quantumsource%2B%2B.min.json",
"https://alt.getutm.app",
"https://flyinghead.github.io/flycast-builds/altstore.json",
"https://provenance-emu.com/apps.json"
];
export const entitlements = {
"com.apple.security.application-groups": {
name: "App Groups",
description: "Allow app to share files with other apps and app extensions in the same App Group.",
icon: "columns-gap"
"name": "App Groups",
"description": "Allow app to share files with other apps and app extensions in the same App Group.",
"icon": "columns-gap"
},
"com.apple.developer.associated-domains": {
name: "Associated Domains",
description: "The associated domains for specific services, such as shared web credentials, universal links, and App Clips.",
icon: "globe2"
"name": "Associated Domains",
"description": "The associated domains for specific services, such as shared web credentials, universal links, and App Clips.",
"icon": "globe2"
},
"com.apple.developer.carplay-audio": {
name: "CarPlay Audio",
description: "Allows the app the provide audio content for CarPlay.",
icon: "car-front-fill"
"name": "CarPlay Audio",
"description": "Allows the app the provide audio content for CarPlay.",
"icon": "car-front-fill"
},
"get-task-allow": {
name: "Debuggable",
description: "Allow developers to attach a debugger to this app. This permission is required for JIT to work.",
icon: "tools"
"name": "Debuggable",
"description": "Allow developers to attach a debugger to this app. This permission is required for JIT to work.",
"icon": "tools"
},
"com.apple.developer.device-information.user-assigned-device-name": {
name: "Device Name",
description: "Grants access to the user-assigned device name instead of a generic device name.",
icon: "phone-fill"
"name": "Device Name",
"description": "Grants access to the user-assigned device name instead of a generic device name.",
"icon": "phone-fill"
},
"keychain-access-groups": {
name: "Keychain",
description: "Allows app to read and write secure data to the system's keychain.",
icon: "key-fill"
"name": "Keychain",
"description": "Allows app to read and write secure data to the system's keychain.",
"icon": "key-fill"
},
"com.apple.developer.networking.multicast": {
name: "Multicast",
description: "App can send or receive IP multicast traffic.",
icon: "globe2"
"name": "Multicast",
"description": "App can send or receive IP multicast traffic.",
"icon": "globe2"
},
"aps-environment": {
name: "Push Notifications",
description: "App can send push notifications.",
icon: "app-indicator"
"name": "Push Notifications",
"description": "App can send push notifications.",
"icon": "app-indicator"
},
"com.apple.developer.applesignin": {
name: "Sign in with Apple",
description: "Allows sign in with Apple.",
icon: "apple"
"name": "Sign in with Apple",
"description": "Allows sign in with Apple.",
"icon": "apple"
},
"com.apple.developer.siri": {
name: "Siri",
description: "Allows app to handle Siri requests.",
icon: "mic-fill"
"name": "Siri",
"description": "Allows app to handle Siri requests.",
"icon": "mic-fill"
},
"com.apple.developer.networking.wifi-info": {
name: "Wi-Fi Information Access",
description: "Allows app to access information about the connected Wi-Fi network.",
icon: "wifi"
"name": "Wi-Fi Information Access",
"description": "Allows app to access information about the connected Wi-Fi network.",
"icon": "wifi"
}
};
export const privacy = {
"AppleMusic": {
icon: "music-note-beamed"
"icon": "music-note-beamed"
},
"BluetoothAlways": {
name: "Bluetooth",
icon: "bluetooth"
"name": "Bluetooth",
"icon": "bluetooth"
},
"BluetoothPeripheral": {
name: "Bluetooth (Peripherals)",
icon: "bluetooth"
"name": "Bluetooth (Peripherals)",
"icon": "bluetooth"
},
"Contacts": {
icon: "person-circle"
"icon": "person-circle"
},
"Camera": {
icon: "camera-fill"
"icon": "camera-fill"
},
"FaceID": {
name: "Face ID",
icon: "person-bounding-box"
"name": "Face ID",
"icon": "person-bounding-box"
},
"LocalNetwork": {
icon: "globe2"
"icon": "globe2"
},
"LocationWhenInUse": {
name: "Location (When Using)",
icon: "cursor-fill"
"name": "Location (When Using)",
"icon": "cursor-fill"
},
"Microphone": {
icon: "mic-fill"
"icon": "mic-fill"
},
"PhotoLibrary": {
name: "Photos",
icon: "images"
"name": "Photos",
"icon": "images"
},
"PhotoLibraryAdd": {
name: "Photos (Add)",
icon: "image"
"name": "Photos (Add)",
"icon": "image"
},
"UserTracking": {
icon: "person-vcard-fill"
},
"icon": "person-vcard-fill"
}
};
export const legacyPermissions = {
"background-audio": {
icon: "volume-up-fill"
"icon": "volume-up-fill"
},
"background-fetch": {
icon: "arrow-repeat"
"icon": "arrow-repeat"
},
"photos": {
icon: "images"
"icon": "images"
}
};