react-native-share 8.2.2 → 9.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/RNShare.podspec +18 -1
- package/android/build.gradle +16 -0
- package/android/src/main/java/cl/json/{RNShareModule.java → RNShareImpl.java} +52 -60
- package/android/src/main/java/cl/json/RNSharePackage.java +34 -17
- package/android/src/main/java/cl/json/social/FacebookStoriesShare.java +1 -1
- package/android/src/main/java/cl/json/social/InstagramShare.java +7 -1
- package/android/src/main/java/cl/json/social/InstagramStoriesShare.java +1 -1
- package/android/src/main/java/cl/json/social/ShareIntent.java +11 -6
- package/android/src/main/java/cl/json/social/SingleShareIntent.java +15 -6
- package/android/src/main/java/cl/json/social/TargetChosenReceiver.java +23 -17
- package/android/src/newarch/cl/json/RNShare.java +55 -0
- package/android/src/oldarch/cl/json/RNShare.java +52 -0
- package/ios/EmailShare.h +1 -1
- package/ios/EmailShare.m +5 -5
- package/ios/FacebookStories.h +1 -1
- package/ios/FacebookStories.m +4 -4
- package/ios/GenericShare.h +1 -1
- package/ios/GenericShare.m +5 -5
- package/ios/GooglePlusShare.h +1 -1
- package/ios/GooglePlusShare.m +4 -4
- package/ios/InstagramShare.h +3 -3
- package/ios/InstagramShare.m +16 -16
- package/ios/InstagramStories.h +1 -1
- package/ios/InstagramStories.m +4 -4
- package/ios/MessengerShare.h +1 -1
- package/ios/MessengerShare.m +3 -3
- package/ios/RNShare.h +16 -2
- package/ios/{RNShare.m → RNShare.mm} +71 -25
- package/ios/TelegramShare.h +1 -1
- package/ios/TelegramShare.m +4 -4
- package/ios/ViberShare.h +1 -1
- package/ios/ViberShare.m +4 -4
- package/ios/WhatsAppShare.h +1 -1
- package/ios/WhatsAppShare.m +8 -8
- package/lib/commonjs/components/Button.js +21 -25
- package/lib/commonjs/components/Button.js.map +1 -1
- package/lib/commonjs/components/Overlay.js +7 -15
- package/lib/commonjs/components/Overlay.js.map +1 -1
- package/lib/commonjs/components/ShareSheet.js +10 -21
- package/lib/commonjs/components/ShareSheet.js.map +1 -1
- package/lib/commonjs/components/Sheet.js +7 -13
- package/lib/commonjs/components/Sheet.js.map +1 -1
- package/lib/commonjs/helpers/requireAndAskPermissions.js +6 -16
- package/lib/commonjs/helpers/requireAndAskPermissions.js.map +1 -1
- package/lib/commonjs/index.js +40 -68
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/types.js +9 -12
- package/lib/commonjs/types.js.map +1 -1
- package/lib/module/components/Button.js +19 -18
- package/lib/module/components/Button.js.map +1 -1
- package/lib/module/components/Overlay.js +5 -7
- package/lib/module/components/Overlay.js.map +1 -1
- package/lib/module/components/ShareSheet.js +8 -10
- package/lib/module/components/ShareSheet.js.map +1 -1
- package/lib/module/components/Sheet.js +5 -6
- package/lib/module/components/Sheet.js.map +1 -1
- package/lib/module/helpers/requireAndAskPermissions.js +6 -15
- package/lib/module/helpers/requireAndAskPermissions.js.map +1 -1
- package/lib/module/index.js +31 -50
- package/lib/module/index.js.map +1 -1
- package/lib/module/types.js +8 -9
- package/lib/module/types.js.map +1 -1
- package/lib/typescript/codegenSpec/NativeRNShare.d.ts +39 -0
- package/lib/typescript/{index.d.ts → src/index.d.ts} +17 -17
- package/lib/typescript/{types.d.ts → src/types.d.ts} +1 -0
- package/package.json +11 -3
- package/src/helpers/requireAndAskPermissions.ts +9 -9
- package/src/index.tsx +46 -60
- package/src/types.ts +1 -0
- package/CHANGELOG.md +0 -133
- package/lib/commonjs/typings/react-native.d.js +0 -4
- package/lib/commonjs/typings/react-native.d.js.map +0 -1
- package/lib/module/typings/react-native.d.js +0 -2
- package/lib/module/typings/react-native.d.js.map +0 -1
- package/src/typings/react-native.d.ts +0 -58
- package/windows/.gitignore +0 -92
- /package/lib/typescript/{components → src/components}/Button.d.ts +0 -0
- /package/lib/typescript/{components → src/components}/Overlay.d.ts +0 -0
- /package/lib/typescript/{components → src/components}/ShareSheet.d.ts +0 -0
- /package/lib/typescript/{components → src/components}/Sheet.d.ts +0 -0
- /package/lib/typescript/{helpers → src/helpers}/requireAndAskPermissions.d.ts +0 -0
package/lib/commonjs/index.js
CHANGED
|
@@ -3,22 +3,22 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
Object.defineProperty(exports, "
|
|
6
|
+
Object.defineProperty(exports, "Button", {
|
|
7
7
|
enumerable: true,
|
|
8
8
|
get: function () {
|
|
9
|
-
return
|
|
9
|
+
return _Button.default;
|
|
10
10
|
}
|
|
11
11
|
});
|
|
12
|
-
Object.defineProperty(exports, "
|
|
12
|
+
Object.defineProperty(exports, "Overlay", {
|
|
13
13
|
enumerable: true,
|
|
14
14
|
get: function () {
|
|
15
|
-
return
|
|
15
|
+
return _Overlay.default;
|
|
16
16
|
}
|
|
17
17
|
});
|
|
18
|
-
Object.defineProperty(exports, "
|
|
18
|
+
Object.defineProperty(exports, "ShareAsset", {
|
|
19
19
|
enumerable: true,
|
|
20
20
|
get: function () {
|
|
21
|
-
return
|
|
21
|
+
return _types.ShareAsset;
|
|
22
22
|
}
|
|
23
23
|
});
|
|
24
24
|
Object.defineProperty(exports, "ShareSheet", {
|
|
@@ -27,61 +27,52 @@ Object.defineProperty(exports, "ShareSheet", {
|
|
|
27
27
|
return _ShareSheet.default;
|
|
28
28
|
}
|
|
29
29
|
});
|
|
30
|
-
Object.defineProperty(exports, "
|
|
30
|
+
Object.defineProperty(exports, "Sheet", {
|
|
31
31
|
enumerable: true,
|
|
32
32
|
get: function () {
|
|
33
|
-
return
|
|
33
|
+
return _Sheet.default;
|
|
34
34
|
}
|
|
35
35
|
});
|
|
36
|
-
Object.defineProperty(exports, "
|
|
36
|
+
Object.defineProperty(exports, "Social", {
|
|
37
37
|
enumerable: true,
|
|
38
38
|
get: function () {
|
|
39
|
-
return _types.
|
|
39
|
+
return _types.Social;
|
|
40
40
|
}
|
|
41
41
|
});
|
|
42
42
|
exports.default = void 0;
|
|
43
|
-
|
|
44
43
|
var _reactNative = require("react-native");
|
|
45
|
-
|
|
44
|
+
var _NativeRNShare = _interopRequireDefault(require("../codegenSpec/NativeRNShare"));
|
|
46
45
|
var _Overlay = _interopRequireDefault(require("./components/Overlay"));
|
|
47
|
-
|
|
48
46
|
var _Sheet = _interopRequireDefault(require("./components/Sheet"));
|
|
49
|
-
|
|
50
47
|
var _Button = _interopRequireDefault(require("./components/Button"));
|
|
51
|
-
|
|
52
48
|
var _ShareSheet = _interopRequireDefault(require("./components/ShareSheet"));
|
|
53
|
-
|
|
54
49
|
var _requireAndAskPermissions = _interopRequireDefault(require("./helpers/requireAndAskPermissions"));
|
|
55
|
-
|
|
56
50
|
var _types = require("./types");
|
|
57
|
-
|
|
58
51
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
59
|
-
|
|
60
52
|
const RNShare = {
|
|
61
53
|
Button: _Button.default,
|
|
62
54
|
ShareSheet: _ShareSheet.default,
|
|
63
55
|
Overlay: _Overlay.default,
|
|
64
56
|
Sheet: _Sheet.default,
|
|
65
57
|
Social: {
|
|
66
|
-
FACEBOOK:
|
|
67
|
-
FACEBOOK_STORIES:
|
|
68
|
-
PAGESMANAGER:
|
|
69
|
-
TWITTER:
|
|
70
|
-
WHATSAPP:
|
|
71
|
-
WHATSAPPBUSINESS:
|
|
72
|
-
INSTAGRAM:
|
|
73
|
-
INSTAGRAM_STORIES:
|
|
74
|
-
GOOGLEPLUS:
|
|
75
|
-
EMAIL:
|
|
76
|
-
PINTEREST:
|
|
77
|
-
LINKEDIN:
|
|
78
|
-
SMS:
|
|
79
|
-
TELEGRAM:
|
|
80
|
-
MESSENGER:
|
|
81
|
-
SNAPCHAT:
|
|
82
|
-
VIBER:
|
|
58
|
+
FACEBOOK: _NativeRNShare.default.getConstants().FACEBOOK || _types.Social.Facebook,
|
|
59
|
+
FACEBOOK_STORIES: _NativeRNShare.default.getConstants().FACEBOOKSTORIES || _types.Social.FacebookStories,
|
|
60
|
+
PAGESMANAGER: _NativeRNShare.default.getConstants().PAGESMANAGER || _types.Social.Pagesmanager,
|
|
61
|
+
TWITTER: _NativeRNShare.default.getConstants().TWITTER || _types.Social.Twitter,
|
|
62
|
+
WHATSAPP: _NativeRNShare.default.getConstants().WHATSAPP || _types.Social.Whatsapp,
|
|
63
|
+
WHATSAPPBUSINESS: _NativeRNShare.default.getConstants().WHATSAPPBUSINESS || _types.Social.Whatsappbusiness,
|
|
64
|
+
INSTAGRAM: _NativeRNShare.default.getConstants().INSTAGRAM || _types.Social.Instagram,
|
|
65
|
+
INSTAGRAM_STORIES: _NativeRNShare.default.getConstants().INSTAGRAMSTORIES || _types.Social.InstagramStories,
|
|
66
|
+
GOOGLEPLUS: _NativeRNShare.default.getConstants().GOOGLEPLUS || _types.Social.Googleplus,
|
|
67
|
+
EMAIL: _NativeRNShare.default.getConstants().EMAIL || _types.Social.Email,
|
|
68
|
+
PINTEREST: _NativeRNShare.default.getConstants().PINTEREST || _types.Social.Pinterest,
|
|
69
|
+
LINKEDIN: _NativeRNShare.default.getConstants().LINKEDIN || _types.Social.Linkedin,
|
|
70
|
+
SMS: _NativeRNShare.default.getConstants().SMS || _types.Social.Sms,
|
|
71
|
+
TELEGRAM: _NativeRNShare.default.getConstants().TELEGRAM || _types.Social.Telegram,
|
|
72
|
+
MESSENGER: _NativeRNShare.default.getConstants().MESSENGER || _types.Social.Messenger,
|
|
73
|
+
SNAPCHAT: _NativeRNShare.default.getConstants().SNAPCHAT || _types.Social.Snapchat,
|
|
74
|
+
VIBER: _NativeRNShare.default.getConstants().VIBER || _types.Social.Viber
|
|
83
75
|
},
|
|
84
|
-
|
|
85
76
|
open(options) {
|
|
86
77
|
return new Promise((resolve, reject) => {
|
|
87
78
|
(0, _requireAndAskPermissions.default)(options).then(() => {
|
|
@@ -90,27 +81,21 @@ const RNShare = {
|
|
|
90
81
|
const url = options.url;
|
|
91
82
|
delete options.url;
|
|
92
83
|
options.urls = [url];
|
|
93
|
-
|
|
94
84
|
if (options.filename && !options.filenames) {
|
|
95
85
|
options.filenames = [options.filename];
|
|
96
86
|
}
|
|
97
87
|
}
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
return reject({
|
|
101
|
-
error
|
|
102
|
-
});
|
|
103
|
-
}, (success, message) => {
|
|
104
|
-
if (success) {
|
|
88
|
+
_NativeRNShare.default.open(options).then(ret => {
|
|
89
|
+
if (ret.success) {
|
|
105
90
|
return resolve({
|
|
106
|
-
success,
|
|
107
|
-
message
|
|
91
|
+
success: ret.success,
|
|
92
|
+
message: ret.message
|
|
108
93
|
});
|
|
109
94
|
} else if (options.failOnCancel === false) {
|
|
110
95
|
return resolve({
|
|
111
96
|
dismissedAction: true,
|
|
112
|
-
success,
|
|
113
|
-
message
|
|
97
|
+
success: ret.success,
|
|
98
|
+
message: ret.message
|
|
114
99
|
});
|
|
115
100
|
} else {
|
|
116
101
|
reject(new Error('User did not share'));
|
|
@@ -119,7 +104,6 @@ const RNShare = {
|
|
|
119
104
|
}).catch(e => reject(e));
|
|
120
105
|
});
|
|
121
106
|
},
|
|
122
|
-
|
|
123
107
|
shareSingle(options) {
|
|
124
108
|
if (_reactNative.Platform.OS === 'ios' || _reactNative.Platform.OS === 'android') {
|
|
125
109
|
return new Promise((resolve, reject) => {
|
|
@@ -127,50 +111,38 @@ const RNShare = {
|
|
|
127
111
|
if (options.url) {
|
|
128
112
|
options.urls = [options.url];
|
|
129
113
|
}
|
|
130
|
-
|
|
131
114
|
if (options.social === RNShare.Social.INSTAGRAM_STORIES && !options.appId) {
|
|
132
115
|
return reject({
|
|
133
116
|
success: false,
|
|
134
117
|
message: 'Instagram Story share requires an appId based on Meta policy.'
|
|
135
118
|
});
|
|
136
119
|
}
|
|
137
|
-
|
|
138
|
-
_reactNative.NativeModules.RNShare.shareSingle(options, error => {
|
|
139
|
-
return reject({
|
|
140
|
-
error
|
|
141
|
-
});
|
|
142
|
-
}, (success, message) => {
|
|
120
|
+
_NativeRNShare.default.shareSingle(options).then(ret => {
|
|
143
121
|
return resolve({
|
|
144
|
-
success: Boolean(success),
|
|
145
|
-
message
|
|
122
|
+
success: Boolean(ret.success),
|
|
123
|
+
message: ret.message
|
|
146
124
|
});
|
|
147
|
-
});
|
|
125
|
+
}).catch(e => reject(e));
|
|
148
126
|
}).catch(e => reject(e));
|
|
149
127
|
});
|
|
150
128
|
} else {
|
|
151
129
|
throw new Error('Not implemented');
|
|
152
130
|
}
|
|
153
131
|
},
|
|
154
|
-
|
|
155
132
|
isPackageInstalled(packageName) {
|
|
156
133
|
if (_reactNative.Platform.OS === 'android') {
|
|
157
134
|
return new Promise((resolve, reject) => {
|
|
158
|
-
|
|
159
|
-
return reject({
|
|
160
|
-
error
|
|
161
|
-
});
|
|
162
|
-
}, isInstalled => {
|
|
135
|
+
_NativeRNShare.default.isPackageInstalled(packageName).then(isInstalled => {
|
|
163
136
|
return resolve({
|
|
164
137
|
isInstalled,
|
|
165
138
|
message: 'Package is Installed'
|
|
166
139
|
});
|
|
167
|
-
});
|
|
140
|
+
}).catch(e => reject(e));
|
|
168
141
|
});
|
|
169
142
|
} else {
|
|
170
143
|
throw new Error('Not implemented');
|
|
171
144
|
}
|
|
172
145
|
}
|
|
173
|
-
|
|
174
146
|
};
|
|
175
147
|
var _default = RNShare;
|
|
176
148
|
exports.default = _default;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["index.tsx"],"names":["RNShare","Button","ShareSheet","Overlay","Sheet","Social","FACEBOOK","NativeModules","Facebook","FACEBOOK_STORIES","FACEBOOKSTORIES","FacebookStories","PAGESMANAGER","Pagesmanager","TWITTER","Twitter","WHATSAPP","Whatsapp","WHATSAPPBUSINESS","Whatsappbusiness","INSTAGRAM","Instagram","INSTAGRAM_STORIES","INSTAGRAMSTORIES","InstagramStories","GOOGLEPLUS","Googleplus","EMAIL","Email","PINTEREST","Pinterest","LINKEDIN","Linkedin","SMS","Sms","TELEGRAM","Telegram","MESSENGER","Messenger","SNAPCHAT","Snapchat","VIBER","Viber","open","options","Promise","resolve","reject","then","Platform","OS","url","urls","filename","filenames","error","success","message","failOnCancel","dismissedAction","Error","catch","e","shareSingle","social","appId","Boolean","isPackageInstalled","packageName","isInstalled"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AAEA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;AAWA,MAAMA,OAAO,GAAG;AACdC,EAAAA,MAAM,EAANA,eADc;AAEdC,EAAAA,UAAU,EAAVA,mBAFc;AAGdC,EAAAA,OAAO,EAAPA,gBAHc;AAIdC,EAAAA,KAAK,EAALA,cAJc;AAMdC,EAAAA,MAAM,EAAE;AACNC,IAAAA,QAAQ,EAAEC,2BAAcP,OAAd,CAAsBM,QAAtB,IAAkCD,cAAOG,QAD7C;AAENC,IAAAA,gBAAgB,EAAEF,2BAAcP,OAAd,CAAsBU,eAAtB,IAAyCL,cAAOM,eAF5D;AAGNC,IAAAA,YAAY,EAAEL,2BAAcP,OAAd,CAAsBY,YAAtB,IAAsCP,cAAOQ,YAHrD;AAINC,IAAAA,OAAO,EAAEP,2BAAcP,OAAd,CAAsBc,OAAtB,IAAiCT,cAAOU,OAJ3C;AAKNC,IAAAA,QAAQ,EAAET,2BAAcP,OAAd,CAAsBgB,QAAtB,IAAkCX,cAAOY,QAL7C;AAMNC,IAAAA,gBAAgB,EAAEX,2BAAcP,OAAd,CAAsBkB,gBAAtB,IAA0Cb,cAAOc,gBAN7D;AAONC,IAAAA,SAAS,EAAEb,2BAAcP,OAAd,CAAsBoB,SAAtB,IAAmCf,cAAOgB,SAP/C;AAQNC,IAAAA,iBAAiB,EAAEf,2BAAcP,OAAd,CAAsBuB,gBAAtB,IAA0ClB,cAAOmB,gBAR9D;AASNC,IAAAA,UAAU,EAAElB,2BAAcP,OAAd,CAAsByB,UAAtB,IAAoCpB,cAAOqB,UATjD;AAUNC,IAAAA,KAAK,EAAEpB,2BAAcP,OAAd,CAAsB2B,KAAtB,IAA+BtB,cAAOuB,KAVvC;AAWNC,IAAAA,SAAS,EAAEtB,2BAAcP,OAAd,CAAsB6B,SAAtB,IAAmCxB,cAAOyB,SAX/C;AAYNC,IAAAA,QAAQ,EAAExB,2BAAcP,OAAd,CAAsB+B,QAAtB,IAAkC1B,cAAO2B,QAZ7C;AAaNC,IAAAA,GAAG,EAAE1B,2BAAcP,OAAd,CAAsBiC,GAAtB,IAA6B5B,cAAO6B,GAbnC;AAcNC,IAAAA,QAAQ,EAAE5B,2BAAcP,OAAd,CAAsBmC,QAAtB,IAAkC9B,cAAO+B,QAd7C;AAeNC,IAAAA,SAAS,EAAE9B,2BAAcP,OAAd,CAAsBqC,SAAtB,IAAmChC,cAAOiC,SAf/C;AAgBNC,IAAAA,QAAQ,EAAEhC,2BAAcP,OAAd,CAAsBuC,QAAtB,IAAkClC,cAAOmC,QAhB7C;AAiBNC,IAAAA,KAAK,EAAElC,2BAAcP,OAAd,CAAsByC,KAAtB,IAA+BpC,cAAOqC;AAjBvC,GANM;;AA0BdC,EAAAA,IAAI,CAACC,OAAD,EAA0D;AAC5D,WAAO,IAAIC,OAAJ,CAAY,CAACC,OAAD,EAAUC,MAAV,KAAqB;AACtC,6CAAyBH,OAAzB,EACGI,IADH,CACQ,MAAM;AACV,YAAIC,sBAASC,EAAT,KAAgB,KAAhB,IAAyBN,OAAO,CAACO,GAAjC,IAAwC,CAACP,OAAO,CAACQ,IAArD,EAA2D;AACzD;AACA,gBAAMD,GAAG,GAAGP,OAAO,CAACO,GAApB;AACA,iBAAOP,OAAO,CAACO,GAAf;AAEAP,UAAAA,OAAO,CAACQ,IAAR,GAAe,CAACD,GAAD,CAAf;;AAEA,cAAIP,OAAO,CAACS,QAAR,IAAoB,CAACT,OAAO,CAACU,SAAjC,EAA4C;AAC1CV,YAAAA,OAAO,CAACU,SAAR,GAAoB,CAACV,OAAO,CAACS,QAAT,CAApB;AACD;AACF;;AAED9C,mCAAcP,OAAd,CAAsB2C,IAAtB,CACEC,OADF,EAEGW,KAAD,IAAW;AACT,iBAAOR,MAAM,CAAC;AAAEQ,YAAAA;AAAF,WAAD,CAAb;AACD,SAJH,EAKE,CAACC,OAAD,EAAUC,OAAV,KAAsB;AACpB,cAAID,OAAJ,EAAa;AACX,mBAAOV,OAAO,CAAC;AACbU,cAAAA,OADa;AAEbC,cAAAA;AAFa,aAAD,CAAd;AAID,WALD,MAKO,IAAIb,OAAO,CAACc,YAAR,KAAyB,KAA7B,EAAoC;AACzC,mBAAOZ,OAAO,CAAC;AACba,cAAAA,eAAe,EAAE,IADJ;AAEbH,cAAAA,OAFa;AAGbC,cAAAA;AAHa,aAAD,CAAd;AAKD,WANM,MAMA;AACLV,YAAAA,MAAM,CAAC,IAAIa,KAAJ,CAAU,oBAAV,CAAD,CAAN;AACD;AACF,SApBH;AAsBD,OApCH,EAqCGC,KArCH,CAqCUC,CAAD,IAAgBf,MAAM,CAACe,CAAD,CArC/B;AAsCD,KAvCM,CAAP;AAwCD,GAnEa;;AAqEdC,EAAAA,WAAW,CAACnB,OAAD,EAAkE;AAC3E,QAAIK,sBAASC,EAAT,KAAgB,KAAhB,IAAyBD,sBAASC,EAAT,KAAgB,SAA7C,EAAwD;AACtD,aAAO,IAAIL,OAAJ,CAAY,CAACC,OAAD,EAAUC,MAAV,KAAqB;AACtC,+CAAyBH,OAAzB,EACGI,IADH,CACQ,MAAM;AACV,cAAIJ,OAAO,CAACO,GAAZ,EAAiB;AACfP,YAAAA,OAAO,CAACQ,IAAR,GAAe,CAACR,OAAO,CAACO,GAAT,CAAf;AACD;;AAED,cAAIP,OAAO,CAACoB,MAAR,KAAmBhE,OAAO,CAACK,MAAR,CAAeiB,iBAAlC,IAAuD,CAACsB,OAAO,CAACqB,KAApE,EAA2E;AACzE,mBAAOlB,MAAM,CAAC;AACZS,cAAAA,OAAO,EAAE,KADG;AAEZC,cAAAA,OAAO,EAAE;AAFG,aAAD,CAAb;AAID;;AAEDlD,qCAAcP,OAAd,CAAsB+D,WAAtB,CACEnB,OADF,EAEGW,KAAD,IAAW;AACT,mBAAOR,MAAM,CAAC;AAAEQ,cAAAA;AAAF,aAAD,CAAb;AACD,WAJH,EAKE,CAACC,OAAD,EAAUC,OAAV,KAAsB;AACpB,mBAAOX,OAAO,CAAC;AACbU,cAAAA,OAAO,EAAEU,OAAO,CAACV,OAAD,CADH;AAEbC,cAAAA;AAFa,aAAD,CAAd;AAID,WAVH;AAYD,SAzBH,EA0BGI,KA1BH,CA0BUC,CAAD,IAAgBf,MAAM,CAACe,CAAD,CA1B/B;AA2BD,OA5BM,CAAP;AA6BD,KA9BD,MA8BO;AACL,YAAM,IAAIF,KAAJ,CAAU,iBAAV,CAAN;AACD;AACF,GAvGa;;AAyGdO,EAAAA,kBAAkB,CAACC,WAAD,EAAiE;AACjF,QAAInB,sBAASC,EAAT,KAAgB,SAApB,EAA+B;AAC7B,aAAO,IAAIL,OAAJ,CAAY,CAACC,OAAD,EAAUC,MAAV,KAAqB;AACtCxC,mCAAcP,OAAd,CAAsBmE,kBAAtB,CACEC,WADF,EAEGb,KAAD,IAAW;AACT,iBAAOR,MAAM,CAAC;AAAEQ,YAAAA;AAAF,WAAD,CAAb;AACD,SAJH,EAKGc,WAAD,IAAiB;AACf,iBAAOvB,OAAO,CAAC;AACbuB,YAAAA,WADa;AAEbZ,YAAAA,OAAO,EAAE;AAFI,WAAD,CAAd;AAID,SAVH;AAYD,OAbM,CAAP;AAcD,KAfD,MAeO;AACL,YAAM,IAAIG,KAAJ,CAAU,iBAAV,CAAN;AACD;AACF;;AA5Ha,CAAhB;eAqIe5D,O","sourcesContent":["import { NativeModules, Platform } from 'react-native';\n\nimport Overlay from './components/Overlay';\nimport Sheet from './components/Sheet';\nimport Button from './components/Button';\nimport ShareSheet from './components/ShareSheet';\nimport requireAndAskPermissions from './helpers/requireAndAskPermissions';\nimport {\n Social,\n IsPackageInstalledResult,\n ActivityType,\n ShareOpenResult,\n ShareAsset,\n ShareOptions,\n ShareSingleOptions,\n ShareSingleResult,\n} from './types';\n\nconst RNShare = {\n Button,\n ShareSheet,\n Overlay,\n Sheet,\n\n Social: {\n FACEBOOK: NativeModules.RNShare.FACEBOOK || Social.Facebook,\n FACEBOOK_STORIES: NativeModules.RNShare.FACEBOOKSTORIES || Social.FacebookStories,\n PAGESMANAGER: NativeModules.RNShare.PAGESMANAGER || Social.Pagesmanager,\n TWITTER: NativeModules.RNShare.TWITTER || Social.Twitter,\n WHATSAPP: NativeModules.RNShare.WHATSAPP || Social.Whatsapp,\n WHATSAPPBUSINESS: NativeModules.RNShare.WHATSAPPBUSINESS || Social.Whatsappbusiness,\n INSTAGRAM: NativeModules.RNShare.INSTAGRAM || Social.Instagram,\n INSTAGRAM_STORIES: NativeModules.RNShare.INSTAGRAMSTORIES || Social.InstagramStories,\n GOOGLEPLUS: NativeModules.RNShare.GOOGLEPLUS || Social.Googleplus,\n EMAIL: NativeModules.RNShare.EMAIL || Social.Email,\n PINTEREST: NativeModules.RNShare.PINTEREST || Social.Pinterest,\n LINKEDIN: NativeModules.RNShare.LINKEDIN || Social.Linkedin,\n SMS: NativeModules.RNShare.SMS || Social.Sms,\n TELEGRAM: NativeModules.RNShare.TELEGRAM || Social.Telegram,\n MESSENGER: NativeModules.RNShare.MESSENGER || Social.Messenger,\n SNAPCHAT: NativeModules.RNShare.SNAPCHAT || Social.Snapchat,\n VIBER: NativeModules.RNShare.VIBER || Social.Viber,\n },\n\n open(options: ShareOptions): Promise<ShareOpenResult | never> {\n return new Promise((resolve, reject) => {\n requireAndAskPermissions(options)\n .then(() => {\n if (Platform.OS === 'ios' && options.url && !options.urls) {\n // Backward compatibility with { Share } from react-native\n const url = options.url;\n delete options.url;\n\n options.urls = [url];\n\n if (options.filename && !options.filenames) {\n options.filenames = [options.filename];\n }\n }\n\n NativeModules.RNShare.open(\n options,\n (error) => {\n return reject({ error });\n },\n (success, message) => {\n if (success) {\n return resolve({\n success,\n message,\n });\n } else if (options.failOnCancel === false) {\n return resolve({\n dismissedAction: true,\n success,\n message,\n });\n } else {\n reject(new Error('User did not share'));\n }\n },\n );\n })\n .catch((e: unknown) => reject(e));\n });\n },\n\n shareSingle(options: ShareSingleOptions): Promise<ShareSingleResult | never> {\n if (Platform.OS === 'ios' || Platform.OS === 'android') {\n return new Promise((resolve, reject) => {\n requireAndAskPermissions(options)\n .then(() => {\n if (options.url) {\n options.urls = [options.url];\n }\n\n if (options.social === RNShare.Social.INSTAGRAM_STORIES && !options.appId) {\n return reject({\n success: false,\n message: 'Instagram Story share requires an appId based on Meta policy.',\n });\n }\n\n NativeModules.RNShare.shareSingle(\n options,\n (error) => {\n return reject({ error });\n },\n (success, message) => {\n return resolve({\n success: Boolean(success),\n message,\n });\n },\n );\n })\n .catch((e: unknown) => reject(e));\n });\n } else {\n throw new Error('Not implemented');\n }\n },\n\n isPackageInstalled(packageName: string): Promise<IsPackageInstalledResult | never> {\n if (Platform.OS === 'android') {\n return new Promise((resolve, reject) => {\n NativeModules.RNShare.isPackageInstalled(\n packageName,\n (error) => {\n return reject({ error });\n },\n (isInstalled) => {\n return resolve({\n isInstalled,\n message: 'Package is Installed',\n });\n },\n );\n });\n } else {\n throw new Error('Not implemented');\n }\n },\n} as const;\n\nexport { Overlay, Sheet, Button, ShareSheet, ShareAsset, Social };\nexport type { ShareSingleOptions, ShareOptions, ActivityType, IsPackageInstalledResult };\nexport type { OverlayProps } from './components/Overlay';\nexport type { SheetProps } from './components/Sheet';\nexport type { ButtonProps } from './components/Button';\nexport type { ShareSheetProps } from './components/ShareSheet';\nexport default RNShare;\n"]}
|
|
1
|
+
{"version":3,"names":["_reactNative","require","_NativeRNShare","_interopRequireDefault","_Overlay","_Sheet","_Button","_ShareSheet","_requireAndAskPermissions","_types","obj","__esModule","default","RNShare","Button","ShareSheet","Overlay","Sheet","Social","FACEBOOK","NativeRNShare","getConstants","Facebook","FACEBOOK_STORIES","FACEBOOKSTORIES","FacebookStories","PAGESMANAGER","Pagesmanager","TWITTER","Twitter","WHATSAPP","Whatsapp","WHATSAPPBUSINESS","Whatsappbusiness","INSTAGRAM","Instagram","INSTAGRAM_STORIES","INSTAGRAMSTORIES","InstagramStories","GOOGLEPLUS","Googleplus","EMAIL","Email","PINTEREST","Pinterest","LINKEDIN","Linkedin","SMS","Sms","TELEGRAM","Telegram","MESSENGER","Messenger","SNAPCHAT","Snapchat","VIBER","Viber","open","options","Promise","resolve","reject","requireAndAskPermissions","then","Platform","OS","url","urls","filename","filenames","ret","success","message","failOnCancel","dismissedAction","Error","catch","e","shareSingle","social","appId","Boolean","isPackageInstalled","packageName","isInstalled","_default","exports"],"sources":["index.tsx"],"sourcesContent":["import { Platform } from 'react-native';\n\nimport NativeRNShare from '../codegenSpec/NativeRNShare';\n\nimport Overlay from './components/Overlay';\nimport Sheet from './components/Sheet';\nimport Button from './components/Button';\nimport ShareSheet from './components/ShareSheet';\nimport requireAndAskPermissions from './helpers/requireAndAskPermissions';\nimport {\n Social,\n IsPackageInstalledResult,\n ActivityType,\n ShareOpenResult,\n ShareAsset,\n ShareOptions,\n ShareSingleOptions,\n ShareSingleResult,\n} from './types';\n\nconst RNShare = {\n Button,\n ShareSheet,\n Overlay,\n Sheet,\n\n Social: {\n FACEBOOK: NativeRNShare.getConstants().FACEBOOK || Social.Facebook,\n FACEBOOK_STORIES: NativeRNShare.getConstants().FACEBOOKSTORIES || Social.FacebookStories,\n PAGESMANAGER: NativeRNShare.getConstants().PAGESMANAGER || Social.Pagesmanager,\n TWITTER: NativeRNShare.getConstants().TWITTER || Social.Twitter,\n WHATSAPP: NativeRNShare.getConstants().WHATSAPP || Social.Whatsapp,\n WHATSAPPBUSINESS: NativeRNShare.getConstants().WHATSAPPBUSINESS || Social.Whatsappbusiness,\n INSTAGRAM: NativeRNShare.getConstants().INSTAGRAM || Social.Instagram,\n INSTAGRAM_STORIES: NativeRNShare.getConstants().INSTAGRAMSTORIES || Social.InstagramStories,\n GOOGLEPLUS: NativeRNShare.getConstants().GOOGLEPLUS || Social.Googleplus,\n EMAIL: NativeRNShare.getConstants().EMAIL || Social.Email,\n PINTEREST: NativeRNShare.getConstants().PINTEREST || Social.Pinterest,\n LINKEDIN: NativeRNShare.getConstants().LINKEDIN || Social.Linkedin,\n SMS: NativeRNShare.getConstants().SMS || Social.Sms,\n TELEGRAM: NativeRNShare.getConstants().TELEGRAM || Social.Telegram,\n MESSENGER: NativeRNShare.getConstants().MESSENGER || Social.Messenger,\n SNAPCHAT: NativeRNShare.getConstants().SNAPCHAT || Social.Snapchat,\n VIBER: NativeRNShare.getConstants().VIBER || Social.Viber,\n },\n\n open(options: ShareOptions): Promise<ShareOpenResult | never> {\n return new Promise((resolve, reject) => {\n requireAndAskPermissions(options)\n .then(() => {\n if (Platform.OS === 'ios' && options.url && !options.urls) {\n // Backward compatibility with { Share } from react-native\n const url = options.url;\n delete options.url;\n\n options.urls = [url];\n\n if (options.filename && !options.filenames) {\n options.filenames = [options.filename];\n }\n }\n NativeRNShare.open(options).then((ret: { success: boolean; message: string }) => {\n if (ret.success) {\n return resolve({\n success: ret.success,\n message: ret.message,\n });\n } else if (options.failOnCancel === false) {\n return resolve({\n dismissedAction: true,\n success: ret.success,\n message: ret.message,\n });\n } else {\n reject(new Error('User did not share'));\n }\n });\n })\n .catch((e: unknown) => reject(e));\n });\n },\n\n shareSingle(options: ShareSingleOptions): Promise<ShareSingleResult | never> {\n if (Platform.OS === 'ios' || Platform.OS === 'android') {\n return new Promise((resolve, reject) => {\n requireAndAskPermissions(options)\n .then(() => {\n if (options.url) {\n options.urls = [options.url];\n }\n\n if (options.social === RNShare.Social.INSTAGRAM_STORIES && !options.appId) {\n return reject({\n success: false,\n message: 'Instagram Story share requires an appId based on Meta policy.',\n });\n }\n NativeRNShare.shareSingle(options)\n .then((ret: { success: boolean; message: string }) => {\n return resolve({\n success: Boolean(ret.success),\n message: ret.message,\n });\n })\n .catch((e: unknown) => reject(e));\n })\n .catch((e: unknown) => reject(e));\n });\n } else {\n throw new Error('Not implemented');\n }\n },\n\n isPackageInstalled(packageName: string): Promise<IsPackageInstalledResult | never> {\n if (Platform.OS === 'android') {\n return new Promise((resolve, reject) => {\n NativeRNShare.isPackageInstalled(packageName)\n .then((isInstalled: boolean) => {\n return resolve({\n isInstalled,\n message: 'Package is Installed',\n });\n })\n .catch((e: unknown) => reject(e));\n });\n } else {\n throw new Error('Not implemented');\n }\n },\n} as const;\n\nexport { Overlay, Sheet, Button, ShareSheet, ShareAsset, Social };\nexport type { ShareSingleOptions, ShareOptions, ActivityType, IsPackageInstalledResult };\nexport type { OverlayProps } from './components/Overlay';\nexport type { SheetProps } from './components/Sheet';\nexport type { ButtonProps } from './components/Button';\nexport type { ShareSheetProps } from './components/ShareSheet';\nexport default RNShare;\n"],"mappings":"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"}
|
package/lib/commonjs/types.js
CHANGED
|
@@ -3,11 +3,8 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.
|
|
7
|
-
let Social
|
|
8
|
-
exports.Social = Social;
|
|
9
|
-
|
|
10
|
-
(function (Social) {
|
|
6
|
+
exports.Social = exports.ShareAsset = void 0;
|
|
7
|
+
let Social = /*#__PURE__*/function (Social) {
|
|
11
8
|
Social["Facebook"] = "facebook";
|
|
12
9
|
Social["FacebookStories"] = "facebookstories";
|
|
13
10
|
Social["Pagesmanager"] = "pagesmanager";
|
|
@@ -25,15 +22,15 @@ exports.Social = Social;
|
|
|
25
22
|
Social["Snapchat"] = "snapchat";
|
|
26
23
|
Social["Messenger"] = "messenger";
|
|
27
24
|
Social["Viber"] = "viber";
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
(function (ShareAsset) {
|
|
25
|
+
return Social;
|
|
26
|
+
}({});
|
|
27
|
+
exports.Social = Social;
|
|
28
|
+
let ShareAsset = /*#__PURE__*/function (ShareAsset) {
|
|
34
29
|
ShareAsset["BackgroundImage"] = "shareBackgroundImage";
|
|
35
30
|
ShareAsset["BackgroundVideo"] = "shareBackgroundVideo";
|
|
36
31
|
ShareAsset["StickerImage"] = "shareStickerImage";
|
|
37
32
|
ShareAsset["BackgroundAndStickerImage"] = "shareBackgroundAndStickerImage";
|
|
38
|
-
|
|
33
|
+
return ShareAsset;
|
|
34
|
+
}({}); // iOS 11 or late
|
|
35
|
+
exports.ShareAsset = ShareAsset;
|
|
39
36
|
//# sourceMappingURL=types.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"names":["Social","exports","ShareAsset"],"sources":["types.ts"],"sourcesContent":["export enum Social {\n Facebook = 'facebook',\n FacebookStories = 'facebookstories',\n Pagesmanager = 'pagesmanager',\n Twitter = 'twitter',\n Whatsapp = 'whatsapp',\n Whatsappbusiness = 'whatsappbusiness',\n Instagram = 'instagram',\n InstagramStories = 'instagramstories',\n Googleplus = 'googleplus',\n Email = 'email',\n Pinterest = 'pinterest',\n Linkedin = 'linkedin',\n Sms = 'sms',\n Telegram = 'telegram',\n Snapchat = 'snapchat',\n Messenger = 'messenger',\n Viber = 'viber',\n}\n\nexport enum ShareAsset {\n BackgroundImage = 'shareBackgroundImage',\n BackgroundVideo = 'shareBackgroundVideo',\n StickerImage = 'shareStickerImage',\n BackgroundAndStickerImage = 'shareBackgroundAndStickerImage',\n}\n\nexport interface LinkMetadata {\n originalUrl?: string;\n url?: string;\n title?: string;\n icon?: string;\n image?: string;\n remoteVideoUrl?: string;\n video?: string;\n}\n\nexport interface ActivityItem {\n type: 'text' | 'url';\n content: string;\n}\n\nexport interface ActivityItemSource {\n placeholderItem: ActivityItem;\n item: { [key in ActivityTypeItemSource]?: ActivityItem | null | undefined };\n subject?: { [key in ActivityTypeItemSource]?: string };\n dataTypeIdentifier?: { [key in ActivityTypeItemSource]?: string };\n thumbnailImage?: { [key in ActivityTypeItemSource]?: string };\n linkMetadata?: LinkMetadata;\n}\n\ninterface BaseShareSingleOptions {\n appId?: string;\n urls?: string[];\n url?: string;\n type?: string;\n filename?: string;\n message?: string;\n title?: string;\n subject?: string;\n email?: string;\n recipient?: string;\n social: Exclude<Social, Social.FacebookStories | Social.InstagramStories>;\n forceDialog?: boolean;\n}\n\ninterface BaseSocialStoriesShareSingleOptions extends Omit<BaseShareSingleOptions, 'social'> {\n backgroundImage?: string;\n stickerImage?: string;\n backgroundBottomColor?: string;\n backgroundTopColor?: string;\n attributionURL?: string;\n backgroundVideo?: string;\n}\n\nexport interface InstagramStoriesShareSingleOptions extends BaseSocialStoriesShareSingleOptions {\n social: Social.InstagramStories;\n appId: string;\n}\n\nexport interface FacebookStoriesShareSingleOptions extends BaseSocialStoriesShareSingleOptions {\n social: Social.FacebookStories;\n appId: string;\n}\n\nexport type ShareSingleOptions =\n | BaseShareSingleOptions\n | InstagramStoriesShareSingleOptions\n | FacebookStoriesShareSingleOptions;\n\nexport interface ShareOptions {\n message?: string;\n title?: string;\n url?: string;\n urls?: string[];\n type?: string;\n subject?: string;\n email?: string;\n recipient?: string;\n excludedActivityTypes?: ActivityType[] | string[];\n failOnCancel?: boolean;\n showAppsToView?: boolean;\n filename?: string;\n filenames?: string[];\n saveToFiles?: boolean;\n activityItemSources?: ActivityItemSource[];\n isNewTask?: boolean;\n}\n\nexport type ActivityType =\n | 'default'\n | 'addToReadingList'\n | 'airDrop'\n | 'assignToContact'\n | 'copyToPasteBoard'\n | 'mail'\n | 'message'\n | 'openInIBooks' // iOS 9 or later\n | 'postToFacebook'\n | 'postToFlickr'\n | 'postToTencentWeibo'\n | 'postToTwitter'\n | 'postToVimeo'\n | 'postToWeibo'\n | 'print'\n | 'saveToCameraRoll'\n | 'markupAsPDF'; // iOS 11 or late\n\nexport type ActivityTypeItemSource = ActivityType | string;\n\nexport interface ShareSingleResult {\n message: string;\n success: boolean;\n}\n\nexport interface ShareOpenResult extends ShareSingleResult {\n dismissedAction?: boolean;\n}\nexport interface IsPackageInstalledResult {\n message: string;\n isInstalled: boolean;\n}\n"],"mappings":";;;;;;IAAYA,MAAM,0BAANA,MAAM;EAANA,MAAM;EAANA,MAAM;EAANA,MAAM;EAANA,MAAM;EAANA,MAAM;EAANA,MAAM;EAANA,MAAM;EAANA,MAAM;EAANA,MAAM;EAANA,MAAM;EAANA,MAAM;EAANA,MAAM;EAANA,MAAM;EAANA,MAAM;EAANA,MAAM;EAANA,MAAM;EAANA,MAAM;EAAA,OAANA,MAAM;AAAA;AAAAC,OAAA,CAAAD,MAAA,GAAAA,MAAA;AAAA,IAoBNE,UAAU,0BAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAA,OAAVA,UAAU;AAAA,OA0GH;AAAAD,OAAA,CAAAC,UAAA,GAAAA,UAAA"}
|
|
@@ -1,23 +1,24 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
import { StyleSheet, Text, TouchableOpacity, Image } from 'react-native';
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
}
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
3
|
+
const Button = _ref => {
|
|
4
|
+
let {
|
|
5
|
+
buttonStyle,
|
|
6
|
+
onPress,
|
|
7
|
+
iconSrc,
|
|
8
|
+
textStyle,
|
|
9
|
+
children
|
|
10
|
+
} = _ref;
|
|
11
|
+
return /*#__PURE__*/React.createElement(TouchableOpacity, {
|
|
12
|
+
activeOpacity: 0.5,
|
|
13
|
+
style: [styles.button, buttonStyle],
|
|
14
|
+
onPress: onPress
|
|
15
|
+
}, /*#__PURE__*/React.createElement(Image, {
|
|
16
|
+
style: styles.icon,
|
|
17
|
+
source: iconSrc
|
|
18
|
+
}), /*#__PURE__*/React.createElement(Text, {
|
|
19
|
+
style: [styles.buttonText, textStyle]
|
|
20
|
+
}, children));
|
|
21
|
+
};
|
|
21
22
|
export default Button;
|
|
22
23
|
const styles = StyleSheet.create({
|
|
23
24
|
button: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"names":["React","StyleSheet","Text","TouchableOpacity","Image","Button","_ref","buttonStyle","onPress","iconSrc","textStyle","children","createElement","activeOpacity","style","styles","button","icon","source","buttonText","create","backgroundColor","flexDirection","height","padding","color","fontSize","fontWeight","textAlign","textAlignVertical","marginLeft","marginRight","width"],"sources":["Button.tsx"],"sourcesContent":["import * as React from 'react';\nimport {\n StyleSheet,\n Text,\n TouchableOpacity,\n Image,\n ImageSourcePropType,\n StyleProp,\n TextStyle,\n ViewStyle,\n} from 'react-native';\n\nexport interface ButtonProps {\n onPress: () => void;\n iconSrc: ImageSourcePropType;\n buttonStyle?: StyleProp<ViewStyle>;\n textStyle?: StyleProp<TextStyle>;\n children: React.ReactNode;\n}\n\nconst Button: React.FC<ButtonProps> = ({\n buttonStyle,\n onPress,\n iconSrc,\n textStyle,\n children,\n}: ButtonProps) => (\n <TouchableOpacity activeOpacity={0.5} style={[styles.button, buttonStyle]} onPress={onPress}>\n <Image style={styles.icon} source={iconSrc} />\n <Text style={[styles.buttonText, textStyle]}>{children}</Text>\n </TouchableOpacity>\n);\n\nexport default Button;\n\nconst styles = StyleSheet.create({\n button: {\n backgroundColor: 'white',\n flexDirection: 'row',\n height: 50,\n padding: 10,\n },\n buttonText: {\n color: '#2c2c2c',\n fontSize: 16,\n fontWeight: 'bold',\n textAlign: 'left',\n textAlignVertical: 'center',\n },\n icon: {\n height: 28,\n marginLeft: 10,\n marginRight: 30,\n width: 28,\n },\n});\n"],"mappings":"AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAC9B,SACEC,UAAU,EACVC,IAAI,EACJC,gBAAgB,EAChBC,KAAK,QAKA,cAAc;AAUrB,MAAMC,MAA6B,GAAGC,IAAA;EAAA,IAAC;IACrCC,WAAW;IACXC,OAAO;IACPC,OAAO;IACPC,SAAS;IACTC;EACW,CAAC,GAAAL,IAAA;EAAA,oBACZN,KAAA,CAAAY,aAAA,CAACT,gBAAgB;IAACU,aAAa,EAAE,GAAI;IAACC,KAAK,EAAE,CAACC,MAAM,CAACC,MAAM,EAAET,WAAW,CAAE;IAACC,OAAO,EAAEA;EAAQ,gBAC1FR,KAAA,CAAAY,aAAA,CAACR,KAAK;IAACU,KAAK,EAAEC,MAAM,CAACE,IAAK;IAACC,MAAM,EAAET;EAAQ,CAAE,CAAC,eAC9CT,KAAA,CAAAY,aAAA,CAACV,IAAI;IAACY,KAAK,EAAE,CAACC,MAAM,CAACI,UAAU,EAAET,SAAS;EAAE,GAAEC,QAAe,CAC7C,CAAC;AAAA,CACpB;AAED,eAAeN,MAAM;AAErB,MAAMU,MAAM,GAAGd,UAAU,CAACmB,MAAM,CAAC;EAC/BJ,MAAM,EAAE;IACNK,eAAe,EAAE,OAAO;IACxBC,aAAa,EAAE,KAAK;IACpBC,MAAM,EAAE,EAAE;IACVC,OAAO,EAAE;EACX,CAAC;EACDL,UAAU,EAAE;IACVM,KAAK,EAAE,SAAS;IAChBC,QAAQ,EAAE,EAAE;IACZC,UAAU,EAAE,MAAM;IAClBC,SAAS,EAAE,MAAM;IACjBC,iBAAiB,EAAE;EACrB,CAAC;EACDZ,IAAI,EAAE;IACJM,MAAM,EAAE,EAAE;IACVO,UAAU,EAAE,EAAE;IACdC,WAAW,EAAE,EAAE;IACfC,KAAK,EAAE;EACT;AACF,CAAC,CAAC"}
|
|
@@ -17,11 +17,11 @@ const styles = StyleSheet.create({
|
|
|
17
17
|
top: 0
|
|
18
18
|
}
|
|
19
19
|
});
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
}
|
|
20
|
+
const Overlay = _ref => {
|
|
21
|
+
let {
|
|
22
|
+
visible,
|
|
23
|
+
children
|
|
24
|
+
} = _ref;
|
|
25
25
|
const [fadeAnim] = React.useState(new Animated.Value(0));
|
|
26
26
|
const [overlayStyle, setOverlayStyle] = React.useState(styles.emptyOverlay);
|
|
27
27
|
const onAnimatedEnd = React.useCallback(() => {
|
|
@@ -33,7 +33,6 @@ const Overlay = ({
|
|
|
33
33
|
if (visible) {
|
|
34
34
|
setOverlayStyle(styles.fullOverlay);
|
|
35
35
|
}
|
|
36
|
-
|
|
37
36
|
return Animated.timing(fadeAnim, {
|
|
38
37
|
toValue: visible ? 1 : 0,
|
|
39
38
|
duration: DEFAULT_ANIMATE_TIME,
|
|
@@ -46,6 +45,5 @@ const Overlay = ({
|
|
|
46
45
|
}]
|
|
47
46
|
}, children);
|
|
48
47
|
};
|
|
49
|
-
|
|
50
48
|
export default Overlay;
|
|
51
49
|
//# sourceMappingURL=Overlay.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"names":["React","Animated","StyleSheet","DEFAULT_ANIMATE_TIME","styles","create","emptyOverlay","backgroundColor","height","position","width","fullOverlay","bottom","left","right","top","Overlay","_ref","visible","children","fadeAnim","useState","Value","overlayStyle","setOverlayStyle","onAnimatedEnd","useCallback","useEffect","timing","toValue","duration","useNativeDriver","start","createElement","View","style","opacity"],"sources":["Overlay.tsx"],"sourcesContent":["import * as React from 'react';\nimport { Animated, StyleProp, StyleSheet, ViewStyle } from 'react-native';\n\nconst DEFAULT_ANIMATE_TIME = 300;\nconst styles = StyleSheet.create({\n emptyOverlay: {\n backgroundColor: 'transparent',\n height: 0,\n position: 'absolute',\n width: 0,\n },\n fullOverlay: {\n backgroundColor: 'transparent',\n bottom: 0,\n left: 0,\n position: 'absolute',\n right: 0,\n top: 0,\n },\n});\n\nexport interface OverlayProps {\n visible: boolean;\n}\n\nconst Overlay: React.FC<React.PropsWithChildren<OverlayProps>> = ({ visible, children }) => {\n const [fadeAnim] = React.useState(new Animated.Value(0));\n const [overlayStyle, setOverlayStyle] = React.useState<StyleProp<ViewStyle>>(styles.emptyOverlay);\n\n const onAnimatedEnd = React.useCallback(() => {\n if (!visible) {\n setOverlayStyle(styles.emptyOverlay);\n }\n }, [visible]);\n\n React.useEffect(() => {\n if (visible) {\n setOverlayStyle(styles.fullOverlay);\n }\n return Animated.timing(fadeAnim, {\n toValue: visible ? 1 : 0,\n duration: DEFAULT_ANIMATE_TIME,\n useNativeDriver: false,\n }).start(onAnimatedEnd);\n }, [visible, fadeAnim, onAnimatedEnd]);\n\n return <Animated.View style={[overlayStyle, { opacity: fadeAnim }]}>{children}</Animated.View>;\n};\n\nexport default Overlay;\n"],"mappings":"AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAC9B,SAASC,QAAQ,EAAaC,UAAU,QAAmB,cAAc;AAEzE,MAAMC,oBAAoB,GAAG,GAAG;AAChC,MAAMC,MAAM,GAAGF,UAAU,CAACG,MAAM,CAAC;EAC/BC,YAAY,EAAE;IACZC,eAAe,EAAE,aAAa;IAC9BC,MAAM,EAAE,CAAC;IACTC,QAAQ,EAAE,UAAU;IACpBC,KAAK,EAAE;EACT,CAAC;EACDC,WAAW,EAAE;IACXJ,eAAe,EAAE,aAAa;IAC9BK,MAAM,EAAE,CAAC;IACTC,IAAI,EAAE,CAAC;IACPJ,QAAQ,EAAE,UAAU;IACpBK,KAAK,EAAE,CAAC;IACRC,GAAG,EAAE;EACP;AACF,CAAC,CAAC;AAMF,MAAMC,OAAwD,GAAGC,IAAA,IAA2B;EAAA,IAA1B;IAAEC,OAAO;IAAEC;EAAS,CAAC,GAAAF,IAAA;EACrF,MAAM,CAACG,QAAQ,CAAC,GAAGpB,KAAK,CAACqB,QAAQ,CAAC,IAAIpB,QAAQ,CAACqB,KAAK,CAAC,CAAC,CAAC,CAAC;EACxD,MAAM,CAACC,YAAY,EAAEC,eAAe,CAAC,GAAGxB,KAAK,CAACqB,QAAQ,CAAuBjB,MAAM,CAACE,YAAY,CAAC;EAEjG,MAAMmB,aAAa,GAAGzB,KAAK,CAAC0B,WAAW,CAAC,MAAM;IAC5C,IAAI,CAACR,OAAO,EAAE;MACZM,eAAe,CAACpB,MAAM,CAACE,YAAY,CAAC;IACtC;EACF,CAAC,EAAE,CAACY,OAAO,CAAC,CAAC;EAEblB,KAAK,CAAC2B,SAAS,CAAC,MAAM;IACpB,IAAIT,OAAO,EAAE;MACXM,eAAe,CAACpB,MAAM,CAACO,WAAW,CAAC;IACrC;IACA,OAAOV,QAAQ,CAAC2B,MAAM,CAACR,QAAQ,EAAE;MAC/BS,OAAO,EAAEX,OAAO,GAAG,CAAC,GAAG,CAAC;MACxBY,QAAQ,EAAE3B,oBAAoB;MAC9B4B,eAAe,EAAE;IACnB,CAAC,CAAC,CAACC,KAAK,CAACP,aAAa,CAAC;EACzB,CAAC,EAAE,CAACP,OAAO,EAAEE,QAAQ,EAAEK,aAAa,CAAC,CAAC;EAEtC,oBAAOzB,KAAA,CAAAiC,aAAA,CAAChC,QAAQ,CAACiC,IAAI;IAACC,KAAK,EAAE,CAACZ,YAAY,EAAE;MAAEa,OAAO,EAAEhB;IAAS,CAAC;EAAE,GAAED,QAAwB,CAAC;AAChG,CAAC;AAED,eAAeH,OAAO"}
|
|
@@ -2,20 +2,19 @@ import * as React from 'react';
|
|
|
2
2
|
import { View, TouchableOpacity, BackHandler, StyleSheet } from 'react-native';
|
|
3
3
|
import Overlay from './Overlay';
|
|
4
4
|
import Sheet from './Sheet';
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
}
|
|
5
|
+
const ShareSheet = _ref => {
|
|
6
|
+
let {
|
|
7
|
+
style = {},
|
|
8
|
+
overlayStyle = {},
|
|
9
|
+
visible,
|
|
10
|
+
onCancel,
|
|
11
|
+
children
|
|
12
|
+
} = _ref;
|
|
13
13
|
const backButtonHandler = React.useCallback(() => {
|
|
14
14
|
if (visible) {
|
|
15
15
|
onCancel();
|
|
16
16
|
return true;
|
|
17
17
|
}
|
|
18
|
-
|
|
19
18
|
return false;
|
|
20
19
|
}, [visible, onCancel]);
|
|
21
20
|
React.useEffect(() => {
|
|
@@ -37,7 +36,6 @@ const ShareSheet = ({
|
|
|
37
36
|
style: [styles.buttonContainer, style]
|
|
38
37
|
}, children))));
|
|
39
38
|
};
|
|
40
|
-
|
|
41
39
|
const styles = StyleSheet.create({
|
|
42
40
|
actionSheetContainer: {
|
|
43
41
|
backgroundColor: 'rgba(0, 0, 0, 0.5)',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"names":["React","View","TouchableOpacity","BackHandler","StyleSheet","Overlay","Sheet","ShareSheet","_ref","style","overlayStyle","visible","onCancel","children","backButtonHandler","useCallback","useEffect","addEventListener","removeEventListener","createElement","styles","actionSheetContainer","button","onPress","buttonContainer","create","backgroundColor","flex","justifyContent","paddingBottom","paddingTop","overflow"],"sources":["ShareSheet.tsx"],"sourcesContent":["import * as React from 'react';\nimport {\n View,\n TouchableOpacity,\n BackHandler,\n ViewStyle,\n StyleProp,\n StyleSheet,\n} from 'react-native';\n\nimport Overlay from './Overlay';\nimport Sheet from './Sheet';\n\nexport interface ShareSheetProps {\n visible: boolean;\n onCancel: () => void;\n style?: StyleProp<ViewStyle>;\n overlayStyle?: StyleProp<ViewStyle>;\n}\n\nconst ShareSheet: React.FC<React.PropsWithChildren<ShareSheetProps>> = ({\n style = {},\n overlayStyle = {},\n visible,\n onCancel,\n children,\n}) => {\n const backButtonHandler = React.useCallback(() => {\n if (visible) {\n onCancel();\n return true;\n }\n return false;\n }, [visible, onCancel]);\n\n React.useEffect(() => {\n BackHandler.addEventListener('hardwareBackPress', backButtonHandler);\n return () => {\n BackHandler.removeEventListener('hardwareBackPress', backButtonHandler);\n };\n }, [backButtonHandler]);\n\n return (\n <Overlay visible={visible}>\n <View style={[styles.actionSheetContainer, overlayStyle]}>\n <TouchableOpacity style={styles.button} onPress={onCancel} />\n <Sheet visible={visible}>\n <View style={[styles.buttonContainer, style]}>{children}</View>\n </Sheet>\n </View>\n </Overlay>\n );\n};\n\nconst styles = StyleSheet.create({\n actionSheetContainer: {\n backgroundColor: 'rgba(0, 0, 0, 0.5)',\n flex: 1,\n justifyContent: 'flex-end',\n paddingBottom: 0,\n paddingTop: 10,\n },\n buttonContainer: {\n backgroundColor: 'white',\n overflow: 'hidden',\n paddingBottom: 5,\n paddingTop: 5,\n },\n button: {\n flex: 1,\n },\n});\n\nexport default ShareSheet;\n"],"mappings":"AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAC9B,SACEC,IAAI,EACJC,gBAAgB,EAChBC,WAAW,EAGXC,UAAU,QACL,cAAc;AAErB,OAAOC,OAAO,MAAM,WAAW;AAC/B,OAAOC,KAAK,MAAM,SAAS;AAS3B,MAAMC,UAA8D,GAAGC,IAAA,IAMjE;EAAA,IANkE;IACtEC,KAAK,GAAG,CAAC,CAAC;IACVC,YAAY,GAAG,CAAC,CAAC;IACjBC,OAAO;IACPC,QAAQ;IACRC;EACF,CAAC,GAAAL,IAAA;EACC,MAAMM,iBAAiB,GAAGd,KAAK,CAACe,WAAW,CAAC,MAAM;IAChD,IAAIJ,OAAO,EAAE;MACXC,QAAQ,CAAC,CAAC;MACV,OAAO,IAAI;IACb;IACA,OAAO,KAAK;EACd,CAAC,EAAE,CAACD,OAAO,EAAEC,QAAQ,CAAC,CAAC;EAEvBZ,KAAK,CAACgB,SAAS,CAAC,MAAM;IACpBb,WAAW,CAACc,gBAAgB,CAAC,mBAAmB,EAAEH,iBAAiB,CAAC;IACpE,OAAO,MAAM;MACXX,WAAW,CAACe,mBAAmB,CAAC,mBAAmB,EAAEJ,iBAAiB,CAAC;IACzE,CAAC;EACH,CAAC,EAAE,CAACA,iBAAiB,CAAC,CAAC;EAEvB,oBACEd,KAAA,CAAAmB,aAAA,CAACd,OAAO;IAACM,OAAO,EAAEA;EAAQ,gBACxBX,KAAA,CAAAmB,aAAA,CAAClB,IAAI;IAACQ,KAAK,EAAE,CAACW,MAAM,CAACC,oBAAoB,EAAEX,YAAY;EAAE,gBACvDV,KAAA,CAAAmB,aAAA,CAACjB,gBAAgB;IAACO,KAAK,EAAEW,MAAM,CAACE,MAAO;IAACC,OAAO,EAAEX;EAAS,CAAE,CAAC,eAC7DZ,KAAA,CAAAmB,aAAA,CAACb,KAAK;IAACK,OAAO,EAAEA;EAAQ,gBACtBX,KAAA,CAAAmB,aAAA,CAAClB,IAAI;IAACQ,KAAK,EAAE,CAACW,MAAM,CAACI,eAAe,EAAEf,KAAK;EAAE,GAAEI,QAAe,CACzD,CACH,CACC,CAAC;AAEd,CAAC;AAED,MAAMO,MAAM,GAAGhB,UAAU,CAACqB,MAAM,CAAC;EAC/BJ,oBAAoB,EAAE;IACpBK,eAAe,EAAE,oBAAoB;IACrCC,IAAI,EAAE,CAAC;IACPC,cAAc,EAAE,UAAU;IAC1BC,aAAa,EAAE,CAAC;IAChBC,UAAU,EAAE;EACd,CAAC;EACDN,eAAe,EAAE;IACfE,eAAe,EAAE,OAAO;IACxBK,QAAQ,EAAE,QAAQ;IAClBF,aAAa,EAAE,CAAC;IAChBC,UAAU,EAAE;EACd,CAAC;EACDR,MAAM,EAAE;IACNK,IAAI,EAAE;EACR;AACF,CAAC,CAAC;AAEF,eAAepB,UAAU"}
|
|
@@ -2,11 +2,11 @@ import * as React from 'react';
|
|
|
2
2
|
import { Animated } from 'react-native';
|
|
3
3
|
const DEFAULT_BOTTOM = -300;
|
|
4
4
|
const DEFAULT_ANIMATE_TIME = 300;
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
}
|
|
5
|
+
const Sheet = _ref => {
|
|
6
|
+
let {
|
|
7
|
+
visible,
|
|
8
|
+
children
|
|
9
|
+
} = _ref;
|
|
10
10
|
const [bottom] = React.useState(new Animated.Value(DEFAULT_BOTTOM));
|
|
11
11
|
React.useEffect(() => {
|
|
12
12
|
return Animated.timing(bottom, {
|
|
@@ -21,6 +21,5 @@ const Sheet = ({
|
|
|
21
21
|
}
|
|
22
22
|
}, children);
|
|
23
23
|
};
|
|
24
|
-
|
|
25
24
|
export default Sheet;
|
|
26
25
|
//# sourceMappingURL=Sheet.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"names":["React","Animated","DEFAULT_BOTTOM","DEFAULT_ANIMATE_TIME","Sheet","_ref","visible","children","bottom","useState","Value","useEffect","timing","toValue","duration","useNativeDriver","start","createElement","View","style"],"sources":["Sheet.tsx"],"sourcesContent":["import * as React from 'react';\nimport { Animated } from 'react-native';\n\nconst DEFAULT_BOTTOM = -300;\nconst DEFAULT_ANIMATE_TIME = 300;\n\nexport interface SheetProps {\n visible: boolean;\n}\n\nconst Sheet: React.FC<React.PropsWithChildren<SheetProps>> = ({ visible, children }) => {\n const [bottom] = React.useState(new Animated.Value(DEFAULT_BOTTOM));\n\n React.useEffect(() => {\n return Animated.timing(bottom, {\n toValue: visible ? 0 : DEFAULT_BOTTOM,\n duration: DEFAULT_ANIMATE_TIME,\n useNativeDriver: false,\n }).start();\n }, [visible, bottom]);\n\n return <Animated.View style={{ bottom }}>{children}</Animated.View>;\n};\n\nexport default Sheet;\n"],"mappings":"AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAC9B,SAASC,QAAQ,QAAQ,cAAc;AAEvC,MAAMC,cAAc,GAAG,CAAC,GAAG;AAC3B,MAAMC,oBAAoB,GAAG,GAAG;AAMhC,MAAMC,KAAoD,GAAGC,IAAA,IAA2B;EAAA,IAA1B;IAAEC,OAAO;IAAEC;EAAS,CAAC,GAAAF,IAAA;EACjF,MAAM,CAACG,MAAM,CAAC,GAAGR,KAAK,CAACS,QAAQ,CAAC,IAAIR,QAAQ,CAACS,KAAK,CAACR,cAAc,CAAC,CAAC;EAEnEF,KAAK,CAACW,SAAS,CAAC,MAAM;IACpB,OAAOV,QAAQ,CAACW,MAAM,CAACJ,MAAM,EAAE;MAC7BK,OAAO,EAAEP,OAAO,GAAG,CAAC,GAAGJ,cAAc;MACrCY,QAAQ,EAAEX,oBAAoB;MAC9BY,eAAe,EAAE;IACnB,CAAC,CAAC,CAACC,KAAK,CAAC,CAAC;EACZ,CAAC,EAAE,CAACV,OAAO,EAAEE,MAAM,CAAC,CAAC;EAErB,oBAAOR,KAAA,CAAAiB,aAAA,CAAChB,QAAQ,CAACiB,IAAI;IAACC,KAAK,EAAE;MAAEX;IAAO;EAAE,GAAED,QAAwB,CAAC;AACrE,CAAC;AAED,eAAeH,KAAK"}
|
|
@@ -1,47 +1,38 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { Platform, PermissionsAndroid } from 'react-native';
|
|
2
|
+
import NativeRNShare from '../../codegenSpec/NativeRNShare';
|
|
2
3
|
const ANDROID_KIT_KAT_SDK_VERSION = 19;
|
|
3
4
|
const androidPermissionRequestRequired = (typeof Platform.Version === 'string' ? parseInt(Platform.Version, 10) : Platform.Version) < ANDROID_KIT_KAT_SDK_VERSION;
|
|
4
|
-
|
|
5
|
-
const requireAndAskPermissions = async (options) => {
|
|
5
|
+
const requireAndAskPermissions = async options => {
|
|
6
6
|
if ((options.url || options.urls) && Platform.OS === 'android') {
|
|
7
7
|
const urls = options.urls || (options.url ? [options.url] : []);
|
|
8
|
-
|
|
9
8
|
try {
|
|
10
9
|
const resultArr = await Promise.all(urls.map(url => new Promise((resolve, reject) => {
|
|
11
|
-
|
|
12
|
-
reject(error);
|
|
13
|
-
}, isBase64 => {
|
|
10
|
+
NativeRNShare.isBase64File(url).then(isBase64 => {
|
|
14
11
|
resolve(isBase64);
|
|
12
|
+
}).catch(error => {
|
|
13
|
+
reject(error);
|
|
15
14
|
});
|
|
16
15
|
})));
|
|
17
16
|
const requirePermission = resultArr.includes(true);
|
|
18
|
-
|
|
19
17
|
if (!requirePermission) {
|
|
20
18
|
return Promise.resolve(true);
|
|
21
19
|
}
|
|
22
|
-
|
|
23
20
|
const hasPermission = await PermissionsAndroid.check(PermissionsAndroid.PERMISSIONS.WRITE_EXTERNAL_STORAGE);
|
|
24
|
-
|
|
25
21
|
if (hasPermission) {
|
|
26
22
|
return Promise.resolve(true);
|
|
27
23
|
}
|
|
28
|
-
|
|
29
24
|
if (androidPermissionRequestRequired) {
|
|
30
25
|
const result = await PermissionsAndroid.request(PermissionsAndroid.PERMISSIONS.WRITE_EXTERNAL_STORAGE);
|
|
31
|
-
|
|
32
26
|
if (result === PermissionsAndroid.RESULTS.GRANTED) {
|
|
33
27
|
return Promise.resolve(true);
|
|
34
28
|
}
|
|
35
|
-
|
|
36
29
|
throw new Error('Write Permission not available');
|
|
37
30
|
}
|
|
38
31
|
} catch (e) {
|
|
39
32
|
return Promise.reject(e);
|
|
40
33
|
}
|
|
41
34
|
}
|
|
42
|
-
|
|
43
35
|
return Promise.resolve(true);
|
|
44
36
|
};
|
|
45
|
-
|
|
46
37
|
export default requireAndAskPermissions;
|
|
47
38
|
//# sourceMappingURL=requireAndAskPermissions.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"names":["Platform","PermissionsAndroid","NativeRNShare","ANDROID_KIT_KAT_SDK_VERSION","androidPermissionRequestRequired","Version","parseInt","requireAndAskPermissions","options","url","urls","OS","resultArr","Promise","all","map","resolve","reject","isBase64File","then","isBase64","catch","error","requirePermission","includes","hasPermission","check","PERMISSIONS","WRITE_EXTERNAL_STORAGE","result","request","RESULTS","GRANTED","Error","e"],"sources":["requireAndAskPermissions.ts"],"sourcesContent":["import { Platform, PermissionsAndroid } from 'react-native';\n\nimport NativeRNShare from '../../codegenSpec/NativeRNShare';\n\nimport { ShareOptions } from '../types';\n\nconst ANDROID_KIT_KAT_SDK_VERSION = 19;\nconst androidPermissionRequestRequired =\n (typeof Platform.Version === 'string' ? parseInt(Platform.Version, 10) : Platform.Version) <\n ANDROID_KIT_KAT_SDK_VERSION;\n\nconst requireAndAskPermissions = async (\n options: Pick<ShareOptions, 'url' | 'urls'>,\n): Promise<boolean | never> => {\n if ((options.url || options.urls) && Platform.OS === 'android') {\n const urls: string[] = options.urls || (options.url ? [options.url] : []);\n try {\n const resultArr = await Promise.all(\n urls.map(\n (url) =>\n new Promise((resolve, reject) => {\n NativeRNShare.isBase64File(url)\n .then((isBase64: boolean) => {\n resolve(isBase64);\n })\n .catch((error: Error) => {\n reject(error);\n });\n }),\n ),\n );\n\n const requirePermission = resultArr.includes(true);\n if (!requirePermission) {\n return Promise.resolve(true);\n }\n const hasPermission = await PermissionsAndroid.check(\n PermissionsAndroid.PERMISSIONS.WRITE_EXTERNAL_STORAGE,\n );\n if (hasPermission) {\n return Promise.resolve(true);\n }\n\n if (androidPermissionRequestRequired) {\n const result = await PermissionsAndroid.request(\n PermissionsAndroid.PERMISSIONS.WRITE_EXTERNAL_STORAGE,\n );\n if (result === PermissionsAndroid.RESULTS.GRANTED) {\n return Promise.resolve(true);\n }\n throw new Error('Write Permission not available');\n }\n } catch (e) {\n return Promise.reject(e);\n }\n }\n return Promise.resolve(true);\n};\n\nexport default requireAndAskPermissions;\n"],"mappings":"AAAA,SAASA,QAAQ,EAAEC,kBAAkB,QAAQ,cAAc;AAE3D,OAAOC,aAAa,MAAM,iCAAiC;AAI3D,MAAMC,2BAA2B,GAAG,EAAE;AACtC,MAAMC,gCAAgC,GACpC,CAAC,OAAOJ,QAAQ,CAACK,OAAO,KAAK,QAAQ,GAAGC,QAAQ,CAACN,QAAQ,CAACK,OAAO,EAAE,EAAE,CAAC,GAAGL,QAAQ,CAACK,OAAO,IACzFF,2BAA2B;AAE7B,MAAMI,wBAAwB,GAAG,MAC/BC,OAA2C,IACd;EAC7B,IAAI,CAACA,OAAO,CAACC,GAAG,IAAID,OAAO,CAACE,IAAI,KAAKV,QAAQ,CAACW,EAAE,KAAK,SAAS,EAAE;IAC9D,MAAMD,IAAc,GAAGF,OAAO,CAACE,IAAI,KAAKF,OAAO,CAACC,GAAG,GAAG,CAACD,OAAO,CAACC,GAAG,CAAC,GAAG,EAAE,CAAC;IACzE,IAAI;MACF,MAAMG,SAAS,GAAG,MAAMC,OAAO,CAACC,GAAG,CACjCJ,IAAI,CAACK,GAAG,CACLN,GAAG,IACF,IAAII,OAAO,CAAC,CAACG,OAAO,EAAEC,MAAM,KAAK;QAC/Bf,aAAa,CAACgB,YAAY,CAACT,GAAG,CAAC,CAC5BU,IAAI,CAAEC,QAAiB,IAAK;UAC3BJ,OAAO,CAACI,QAAQ,CAAC;QACnB,CAAC,CAAC,CACDC,KAAK,CAAEC,KAAY,IAAK;UACvBL,MAAM,CAACK,KAAK,CAAC;QACf,CAAC,CAAC;MACN,CAAC,CACL,CACF,CAAC;MAED,MAAMC,iBAAiB,GAAGX,SAAS,CAACY,QAAQ,CAAC,IAAI,CAAC;MAClD,IAAI,CAACD,iBAAiB,EAAE;QACtB,OAAOV,OAAO,CAACG,OAAO,CAAC,IAAI,CAAC;MAC9B;MACA,MAAMS,aAAa,GAAG,MAAMxB,kBAAkB,CAACyB,KAAK,CAClDzB,kBAAkB,CAAC0B,WAAW,CAACC,sBACjC,CAAC;MACD,IAAIH,aAAa,EAAE;QACjB,OAAOZ,OAAO,CAACG,OAAO,CAAC,IAAI,CAAC;MAC9B;MAEA,IAAIZ,gCAAgC,EAAE;QACpC,MAAMyB,MAAM,GAAG,MAAM5B,kBAAkB,CAAC6B,OAAO,CAC7C7B,kBAAkB,CAAC0B,WAAW,CAACC,sBACjC,CAAC;QACD,IAAIC,MAAM,KAAK5B,kBAAkB,CAAC8B,OAAO,CAACC,OAAO,EAAE;UACjD,OAAOnB,OAAO,CAACG,OAAO,CAAC,IAAI,CAAC;QAC9B;QACA,MAAM,IAAIiB,KAAK,CAAC,gCAAgC,CAAC;MACnD;IACF,CAAC,CAAC,OAAOC,CAAC,EAAE;MACV,OAAOrB,OAAO,CAACI,MAAM,CAACiB,CAAC,CAAC;IAC1B;EACF;EACA,OAAOrB,OAAO,CAACG,OAAO,CAAC,IAAI,CAAC;AAC9B,CAAC;AAED,eAAeT,wBAAwB"}
|