Bluesky app fork with some witchin' additions 馃挮
1const {withAndroidManifest} = require('expo/config-plugins')
2
3const withIntentFilters = config => {
4 return withAndroidManifest(config, config => {
5 const intents = [
6 {
7 action: [
8 {
9 $: {
10 'android:name': 'android.intent.action.SEND',
11 },
12 },
13 ],
14 category: [
15 {
16 $: {
17 'android:name': 'android.intent.category.DEFAULT',
18 },
19 },
20 ],
21 data: [
22 {
23 $: {
24 'android:mimeType': 'image/*',
25 },
26 },
27 ],
28 },
29 {
30 action: [
31 {
32 $: {
33 'android:name': 'android.intent.action.SEND',
34 },
35 },
36 ],
37 category: [
38 {
39 $: {
40 'android:name': 'android.intent.category.DEFAULT',
41 },
42 },
43 ],
44 data: [
45 {
46 $: {
47 'android:mimeType': 'video/*',
48 },
49 },
50 ],
51 },
52 {
53 action: [
54 {
55 $: {
56 'android:name': 'android.intent.action.SEND',
57 },
58 },
59 ],
60 category: [
61 {
62 $: {
63 'android:name': 'android.intent.category.DEFAULT',
64 },
65 },
66 ],
67 data: [
68 {
69 $: {
70 'android:mimeType': 'text/plain',
71 },
72 },
73 ],
74 },
75 {
76 action: [
77 {
78 $: {
79 'android:name': 'android.intent.action.SEND_MULTIPLE',
80 },
81 },
82 ],
83 category: [
84 {
85 $: {
86 'android:name': 'android.intent.category.DEFAULT',
87 },
88 },
89 ],
90 data: [
91 {
92 $: {
93 'android:mimeType': 'image/*',
94 },
95 },
96 ],
97 },
98 ]
99
100 const intentFilter =
101 config.modResults.manifest.application?.[0].activity?.[0]['intent-filter']
102
103 if (intentFilter) {
104 intentFilter.push(...intents)
105 }
106
107 return config
108 })
109}
110
111module.exports = {withIntentFilters}