aboutsummaryrefslogtreecommitdiffstats
path: root/apps/mobile/plugins/camera-not-required.js
diff options
context:
space:
mode:
authorxuatz <xzlow10@gmail.com>2025-08-20 16:49:19 +0900
committerGitHub <noreply@github.com>2025-08-20 08:49:19 +0100
commitdf6814f292f56aa0f650af3d093ba1ca7f159726 (patch)
tree55fcb5c2d57076576e058f172028dca7b3523249 /apps/mobile/plugins/camera-not-required.js
parent6e525eb1bc9e3f4a1284893dd51a826540e7a6ba (diff)
downloadkarakeep-df6814f292f56aa0f650af3d093ba1ca7f159726.tar.zst
fix(mobile): remove type: module so expo works (#1846)
Diffstat (limited to 'apps/mobile/plugins/camera-not-required.js')
-rw-r--r--apps/mobile/plugins/camera-not-required.js23
1 files changed, 23 insertions, 0 deletions
diff --git a/apps/mobile/plugins/camera-not-required.js b/apps/mobile/plugins/camera-not-required.js
new file mode 100644
index 00000000..75116604
--- /dev/null
+++ b/apps/mobile/plugins/camera-not-required.js
@@ -0,0 +1,23 @@
+const { withAndroidManifest } = require("@expo/config-plugins");
+
+const withCameraNotRequired = (config) => {
+ return withAndroidManifest(config, async (config) => {
+ config.modResults = await setCustomConfigAsync(config, config.modResults);
+ return config;
+ });
+};
+
+async function setCustomConfigAsync(_config, androidManifest) {
+ const usesFeature = androidManifest.manifest["uses-feature"] ?? [];
+ usesFeature.push({
+ $: {
+ "android:name": "android.hardware.camera",
+ "android:required": "false",
+ },
+ });
+ androidManifest.manifest["uses-feature"] = usesFeature;
+
+ return androidManifest;
+}
+
+module.exports = withCameraNotRequired;