@react-native-kakao/user 2.0.0 → 2.2.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.
|
@@ -16,47 +16,39 @@ function isoToUnix(value) {
|
|
|
16
16
|
return Date.parse(value) / 1000;
|
|
17
17
|
}
|
|
18
18
|
const KakaoUser = {
|
|
19
|
-
getAccessToken: async () => {
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
headers
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
throw (0, _core.kCreateWebError)(e);
|
|
37
|
-
}
|
|
38
|
-
},
|
|
39
|
-
issueAccessTokenWithCodeWeb: async ({
|
|
19
|
+
getAccessToken: () => (0, _core.kRunWebAPI)(async () => {
|
|
20
|
+
const {
|
|
21
|
+
id,
|
|
22
|
+
expires_in,
|
|
23
|
+
app_id
|
|
24
|
+
} = (await (0, _core.kFetch)('https://kapi.kakao.com/v1/user/access_token_info', {
|
|
25
|
+
headers: {
|
|
26
|
+
..._core.kGlobalStorage.headers
|
|
27
|
+
}
|
|
28
|
+
})).body;
|
|
29
|
+
return {
|
|
30
|
+
id,
|
|
31
|
+
expiresIn: expires_in,
|
|
32
|
+
appId: app_id
|
|
33
|
+
};
|
|
34
|
+
}),
|
|
35
|
+
issueAccessTokenWithCodeWeb: ({
|
|
40
36
|
clientSecret,
|
|
41
37
|
code,
|
|
42
38
|
redirectUri
|
|
43
|
-
}) => {
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
} catch (e) {
|
|
57
|
-
throw (0, _core.kCreateWebError)(e);
|
|
58
|
-
}
|
|
59
|
-
},
|
|
39
|
+
}) => (0, _core.kRunWebAPI)(async () => {
|
|
40
|
+
const res = await (0, _core.kFetchFormUrlEncoded)('https://kauth.kakao.com/oauth/token', {
|
|
41
|
+
method: 'POST',
|
|
42
|
+
body: (0, _jsUtil.filterNonNullishKeys)({
|
|
43
|
+
grant_type: 'authorization_code',
|
|
44
|
+
client_id: _core.kGlobalStorage.restApiKey,
|
|
45
|
+
redirect_uri: encodeURIComponent(redirectUri),
|
|
46
|
+
code,
|
|
47
|
+
client_secret: clientSecret
|
|
48
|
+
})
|
|
49
|
+
}).then(r => r.body);
|
|
50
|
+
return (0, _jsUtil.camelCaseObject)(res);
|
|
51
|
+
}),
|
|
60
52
|
setAccessTokenWeb: token => {
|
|
61
53
|
_core.kGlobalStorage.accessToken = token;
|
|
62
54
|
return new Promise(r => {
|
|
@@ -64,7 +56,7 @@ const KakaoUser = {
|
|
|
64
56
|
r(42);
|
|
65
57
|
});
|
|
66
58
|
},
|
|
67
|
-
login:
|
|
59
|
+
login: params => (0, _core.kRunWebAPI)(() => {
|
|
68
60
|
const {
|
|
69
61
|
loginHint,
|
|
70
62
|
nonce,
|
|
@@ -85,8 +77,8 @@ const KakaoUser = {
|
|
|
85
77
|
state,
|
|
86
78
|
throughTalk
|
|
87
79
|
}));
|
|
88
|
-
},
|
|
89
|
-
logout: () => Kakao.Auth.logout()
|
|
80
|
+
}),
|
|
81
|
+
logout: () => (0, _core.kRunWebAPI)(() => Kakao.Auth.logout()),
|
|
90
82
|
isLogined: async () => {
|
|
91
83
|
try {
|
|
92
84
|
const {
|
|
@@ -98,68 +90,42 @@ const KakaoUser = {
|
|
|
98
90
|
}
|
|
99
91
|
},
|
|
100
92
|
isKakaoTalkLoginAvailable: async () => false,
|
|
101
|
-
unlink: () => Kakao.API.request({
|
|
93
|
+
unlink: () => (0, _core.kRunWebAPI)(() => Kakao.API.request({
|
|
102
94
|
url: '/v1/user/unlink'
|
|
103
|
-
})
|
|
104
|
-
scopes: async
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
revokeScopes: async scopes => {
|
|
117
|
-
try {
|
|
118
|
-
await Kakao.API.request({
|
|
119
|
-
url: '/v2/user/revoke/scopes',
|
|
120
|
-
data: {
|
|
121
|
-
scopes
|
|
122
|
-
}
|
|
123
|
-
});
|
|
124
|
-
} catch (e) {
|
|
125
|
-
throw (0, _core.kCreateWebError)(e);
|
|
126
|
-
}
|
|
127
|
-
},
|
|
128
|
-
serviceTerms: async () => {
|
|
129
|
-
try {
|
|
130
|
-
return (0, _jsUtil.camelCaseObject)((await Kakao.API.request({
|
|
131
|
-
url: '/v2/user/service_terms'
|
|
132
|
-
})).service_terms.map(v => ({
|
|
133
|
-
...v,
|
|
134
|
-
agreed_at: v.agreed_at ? isoToUnix(v.agreed_at) : null
|
|
135
|
-
})));
|
|
136
|
-
} catch (e) {
|
|
137
|
-
throw (0, _core.kCreateWebError)(e);
|
|
138
|
-
}
|
|
139
|
-
},
|
|
140
|
-
shippingAddresses: async () => {
|
|
141
|
-
try {
|
|
142
|
-
return (0, _jsUtil.camelCaseObject)(await Kakao.API.request({
|
|
143
|
-
url: '/v1/user/shipping_address'
|
|
144
|
-
}));
|
|
145
|
-
} catch (e) {
|
|
146
|
-
throw (0, _core.kCreateWebError)(e);
|
|
147
|
-
}
|
|
148
|
-
},
|
|
149
|
-
me: async () => {
|
|
150
|
-
try {
|
|
151
|
-
const ret = (0, _jsUtil.camelCaseObject)(await Kakao.API.request({
|
|
152
|
-
url: '/v2/user/me'
|
|
153
|
-
}));
|
|
154
|
-
return {
|
|
155
|
-
...ret,
|
|
156
|
-
connectedAt: isoToUnix(ret.connectedAt),
|
|
157
|
-
synchedAt: isoToUnix(ret.synchedAt)
|
|
158
|
-
};
|
|
159
|
-
} catch (e) {
|
|
160
|
-
throw (0, _core.kCreateWebError)(e);
|
|
95
|
+
})),
|
|
96
|
+
scopes: scopes => (0, _core.kRunWebAPI)(async () => {
|
|
97
|
+
const response = await Kakao.API.request({
|
|
98
|
+
url: `/v2/user/scopes${scopes ? '?' + querystring.stringify({
|
|
99
|
+
scopes
|
|
100
|
+
}) : ''}`
|
|
101
|
+
});
|
|
102
|
+
return (0, _jsUtil.camelCaseObject)(response.scopes);
|
|
103
|
+
}),
|
|
104
|
+
revokeScopes: scopes => (0, _core.kRunWebAPI)(() => Kakao.API.request({
|
|
105
|
+
url: '/v2/user/revoke/scopes',
|
|
106
|
+
data: {
|
|
107
|
+
scopes
|
|
161
108
|
}
|
|
162
|
-
}
|
|
109
|
+
})),
|
|
110
|
+
serviceTerms: () => (0, _core.kRunWebAPI)(async () => (0, _jsUtil.camelCaseObject)((await Kakao.API.request({
|
|
111
|
+
url: '/v2/user/service_terms'
|
|
112
|
+
})).service_terms.map(v => ({
|
|
113
|
+
...v,
|
|
114
|
+
agreed_at: v.agreed_at ? isoToUnix(v.agreed_at) : null
|
|
115
|
+
})))),
|
|
116
|
+
shippingAddresses: () => (0, _core.kRunWebAPI)(async () => (0, _jsUtil.camelCaseObject)(await Kakao.API.request({
|
|
117
|
+
url: '/v1/user/shipping_address'
|
|
118
|
+
}))),
|
|
119
|
+
me: () => (0, _core.kRunWebAPI)(async () => {
|
|
120
|
+
const ret = (0, _jsUtil.camelCaseObject)(await Kakao.API.request({
|
|
121
|
+
url: '/v2/user/me'
|
|
122
|
+
}));
|
|
123
|
+
return {
|
|
124
|
+
...ret,
|
|
125
|
+
connectedAt: isoToUnix(ret.connectedAt),
|
|
126
|
+
synchedAt: isoToUnix(ret.synchedAt)
|
|
127
|
+
};
|
|
128
|
+
})
|
|
163
129
|
};
|
|
164
130
|
const {
|
|
165
131
|
isKakaoTalkLoginAvailable,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_jsUtil","require","_core","querystring","_interopRequireWildcard","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","isoToUnix","value","is","string","Date","parse","KakaoUser","getAccessToken","id","expires_in","app_id","kFetch","headers","kGlobalStorage","body","expiresIn","appId","
|
|
1
|
+
{"version":3,"names":["_jsUtil","require","_core","querystring","_interopRequireWildcard","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","isoToUnix","value","is","string","Date","parse","KakaoUser","getAccessToken","kRunWebAPI","id","expires_in","app_id","kFetch","headers","kGlobalStorage","body","expiresIn","appId","issueAccessTokenWithCodeWeb","clientSecret","code","redirectUri","res","kFetchFormUrlEncoded","method","filterNonNullishKeys","grant_type","client_id","restApiKey","redirect_uri","encodeURIComponent","client_secret","then","camelCaseObject","setAccessTokenWeb","token","accessToken","Promise","Kakao","Auth","setAccessToken","login","params","loginHint","nonce","prompt","scope","state","throughTalk","serviceTerms","web","authorize","join","logout","isLogined","isKakaoTalkLoginAvailable","unlink","API","request","url","scopes","response","stringify","revokeScopes","data","service_terms","map","v","agreed_at","shippingAddresses","me","ret","connectedAt","synchedAt","exports"],"sourceRoot":"../../src","sources":["index.web.ts"],"mappings":"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","ignoreList":[]}
|
package/lib/module/index.web.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { camelCaseObject, filterNonNullishKeys, is } from '@mj-studio/js-util';
|
|
2
|
-
import {
|
|
2
|
+
import { kFetch, kFetchFormUrlEncoded, kGlobalStorage, kRunWebAPI } from '@react-native-kakao/core';
|
|
3
3
|
import * as querystring from 'querystring';
|
|
4
4
|
function isoToUnix(value) {
|
|
5
5
|
if (!is.string(value)) {
|
|
@@ -8,47 +8,39 @@ function isoToUnix(value) {
|
|
|
8
8
|
return Date.parse(value) / 1000;
|
|
9
9
|
}
|
|
10
10
|
const KakaoUser = {
|
|
11
|
-
getAccessToken: async () => {
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
headers
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
throw kCreateWebError(e);
|
|
29
|
-
}
|
|
30
|
-
},
|
|
31
|
-
issueAccessTokenWithCodeWeb: async ({
|
|
11
|
+
getAccessToken: () => kRunWebAPI(async () => {
|
|
12
|
+
const {
|
|
13
|
+
id,
|
|
14
|
+
expires_in,
|
|
15
|
+
app_id
|
|
16
|
+
} = (await kFetch('https://kapi.kakao.com/v1/user/access_token_info', {
|
|
17
|
+
headers: {
|
|
18
|
+
...kGlobalStorage.headers
|
|
19
|
+
}
|
|
20
|
+
})).body;
|
|
21
|
+
return {
|
|
22
|
+
id,
|
|
23
|
+
expiresIn: expires_in,
|
|
24
|
+
appId: app_id
|
|
25
|
+
};
|
|
26
|
+
}),
|
|
27
|
+
issueAccessTokenWithCodeWeb: ({
|
|
32
28
|
clientSecret,
|
|
33
29
|
code,
|
|
34
30
|
redirectUri
|
|
35
|
-
}) => {
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
} catch (e) {
|
|
49
|
-
throw kCreateWebError(e);
|
|
50
|
-
}
|
|
51
|
-
},
|
|
31
|
+
}) => kRunWebAPI(async () => {
|
|
32
|
+
const res = await kFetchFormUrlEncoded('https://kauth.kakao.com/oauth/token', {
|
|
33
|
+
method: 'POST',
|
|
34
|
+
body: filterNonNullishKeys({
|
|
35
|
+
grant_type: 'authorization_code',
|
|
36
|
+
client_id: kGlobalStorage.restApiKey,
|
|
37
|
+
redirect_uri: encodeURIComponent(redirectUri),
|
|
38
|
+
code,
|
|
39
|
+
client_secret: clientSecret
|
|
40
|
+
})
|
|
41
|
+
}).then(r => r.body);
|
|
42
|
+
return camelCaseObject(res);
|
|
43
|
+
}),
|
|
52
44
|
setAccessTokenWeb: token => {
|
|
53
45
|
kGlobalStorage.accessToken = token;
|
|
54
46
|
return new Promise(r => {
|
|
@@ -56,7 +48,7 @@ const KakaoUser = {
|
|
|
56
48
|
r(42);
|
|
57
49
|
});
|
|
58
50
|
},
|
|
59
|
-
login:
|
|
51
|
+
login: params => kRunWebAPI(() => {
|
|
60
52
|
const {
|
|
61
53
|
loginHint,
|
|
62
54
|
nonce,
|
|
@@ -77,8 +69,8 @@ const KakaoUser = {
|
|
|
77
69
|
state,
|
|
78
70
|
throughTalk
|
|
79
71
|
}));
|
|
80
|
-
},
|
|
81
|
-
logout: () => Kakao.Auth.logout()
|
|
72
|
+
}),
|
|
73
|
+
logout: () => kRunWebAPI(() => Kakao.Auth.logout()),
|
|
82
74
|
isLogined: async () => {
|
|
83
75
|
try {
|
|
84
76
|
const {
|
|
@@ -90,68 +82,42 @@ const KakaoUser = {
|
|
|
90
82
|
}
|
|
91
83
|
},
|
|
92
84
|
isKakaoTalkLoginAvailable: async () => false,
|
|
93
|
-
unlink: () => Kakao.API.request({
|
|
85
|
+
unlink: () => kRunWebAPI(() => Kakao.API.request({
|
|
94
86
|
url: '/v1/user/unlink'
|
|
95
|
-
})
|
|
96
|
-
scopes: async
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
revokeScopes: async scopes => {
|
|
109
|
-
try {
|
|
110
|
-
await Kakao.API.request({
|
|
111
|
-
url: '/v2/user/revoke/scopes',
|
|
112
|
-
data: {
|
|
113
|
-
scopes
|
|
114
|
-
}
|
|
115
|
-
});
|
|
116
|
-
} catch (e) {
|
|
117
|
-
throw kCreateWebError(e);
|
|
118
|
-
}
|
|
119
|
-
},
|
|
120
|
-
serviceTerms: async () => {
|
|
121
|
-
try {
|
|
122
|
-
return camelCaseObject((await Kakao.API.request({
|
|
123
|
-
url: '/v2/user/service_terms'
|
|
124
|
-
})).service_terms.map(v => ({
|
|
125
|
-
...v,
|
|
126
|
-
agreed_at: v.agreed_at ? isoToUnix(v.agreed_at) : null
|
|
127
|
-
})));
|
|
128
|
-
} catch (e) {
|
|
129
|
-
throw kCreateWebError(e);
|
|
130
|
-
}
|
|
131
|
-
},
|
|
132
|
-
shippingAddresses: async () => {
|
|
133
|
-
try {
|
|
134
|
-
return camelCaseObject(await Kakao.API.request({
|
|
135
|
-
url: '/v1/user/shipping_address'
|
|
136
|
-
}));
|
|
137
|
-
} catch (e) {
|
|
138
|
-
throw kCreateWebError(e);
|
|
139
|
-
}
|
|
140
|
-
},
|
|
141
|
-
me: async () => {
|
|
142
|
-
try {
|
|
143
|
-
const ret = camelCaseObject(await Kakao.API.request({
|
|
144
|
-
url: '/v2/user/me'
|
|
145
|
-
}));
|
|
146
|
-
return {
|
|
147
|
-
...ret,
|
|
148
|
-
connectedAt: isoToUnix(ret.connectedAt),
|
|
149
|
-
synchedAt: isoToUnix(ret.synchedAt)
|
|
150
|
-
};
|
|
151
|
-
} catch (e) {
|
|
152
|
-
throw kCreateWebError(e);
|
|
87
|
+
})),
|
|
88
|
+
scopes: scopes => kRunWebAPI(async () => {
|
|
89
|
+
const response = await Kakao.API.request({
|
|
90
|
+
url: `/v2/user/scopes${scopes ? '?' + querystring.stringify({
|
|
91
|
+
scopes
|
|
92
|
+
}) : ''}`
|
|
93
|
+
});
|
|
94
|
+
return camelCaseObject(response.scopes);
|
|
95
|
+
}),
|
|
96
|
+
revokeScopes: scopes => kRunWebAPI(() => Kakao.API.request({
|
|
97
|
+
url: '/v2/user/revoke/scopes',
|
|
98
|
+
data: {
|
|
99
|
+
scopes
|
|
153
100
|
}
|
|
154
|
-
}
|
|
101
|
+
})),
|
|
102
|
+
serviceTerms: () => kRunWebAPI(async () => camelCaseObject((await Kakao.API.request({
|
|
103
|
+
url: '/v2/user/service_terms'
|
|
104
|
+
})).service_terms.map(v => ({
|
|
105
|
+
...v,
|
|
106
|
+
agreed_at: v.agreed_at ? isoToUnix(v.agreed_at) : null
|
|
107
|
+
})))),
|
|
108
|
+
shippingAddresses: () => kRunWebAPI(async () => camelCaseObject(await Kakao.API.request({
|
|
109
|
+
url: '/v1/user/shipping_address'
|
|
110
|
+
}))),
|
|
111
|
+
me: () => kRunWebAPI(async () => {
|
|
112
|
+
const ret = camelCaseObject(await Kakao.API.request({
|
|
113
|
+
url: '/v2/user/me'
|
|
114
|
+
}));
|
|
115
|
+
return {
|
|
116
|
+
...ret,
|
|
117
|
+
connectedAt: isoToUnix(ret.connectedAt),
|
|
118
|
+
synchedAt: isoToUnix(ret.synchedAt)
|
|
119
|
+
};
|
|
120
|
+
})
|
|
155
121
|
};
|
|
156
122
|
export const {
|
|
157
123
|
isKakaoTalkLoginAvailable,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["camelCaseObject","filterNonNullishKeys","is","
|
|
1
|
+
{"version":3,"names":["camelCaseObject","filterNonNullishKeys","is","kFetch","kFetchFormUrlEncoded","kGlobalStorage","kRunWebAPI","querystring","isoToUnix","value","string","Date","parse","KakaoUser","getAccessToken","id","expires_in","app_id","headers","body","expiresIn","appId","issueAccessTokenWithCodeWeb","clientSecret","code","redirectUri","res","method","grant_type","client_id","restApiKey","redirect_uri","encodeURIComponent","client_secret","then","r","setAccessTokenWeb","token","accessToken","Promise","Kakao","Auth","setAccessToken","login","params","loginHint","nonce","prompt","scope","state","throughTalk","serviceTerms","web","authorize","join","logout","isLogined","e","isKakaoTalkLoginAvailable","unlink","API","request","url","scopes","response","stringify","revokeScopes","data","service_terms","map","v","agreed_at","shippingAddresses","me","ret","connectedAt","synchedAt"],"sourceRoot":"../../src","sources":["index.web.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.web.d.ts","sourceRoot":"","sources":["../../../src/index.web.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.web.d.ts","sourceRoot":"","sources":["../../../src/index.web.ts"],"names":[],"mappings":"AAIA,OAAO,EAKL,KAAK,SAAS,EACd,KAAK,YAAY,EAClB,MAAM,SAAS,CAAC;AAmBjB,QAAA,MAAM,SAAS,EAAE,YAoIhB,CAAC;AAEF,eAAO,MACL,yBAAyB,sDACzB,SAAS,sCACT,KAAK,kCACL,MAAM,mCACN,EAAE,+BACF,YAAY,yCACZ,MAAM,mCACN,YAAY,yCACZ,iBAAiB,8CACjB,MAAM,mCACN,iBAAiB,8CACjB,2BAA2B,wDAC3B,cAAc,yCACH,CAAC;AAEd,eAAe,SAAS,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@react-native-kakao/user",
|
|
3
3
|
"description": "React Native Kakao User SDK",
|
|
4
|
-
"version": "2.
|
|
4
|
+
"version": "2.2.0",
|
|
5
5
|
"main": "lib/commonjs/index",
|
|
6
6
|
"module": "lib/module/index",
|
|
7
7
|
"types": "lib/typescript/src/index.d.ts",
|
|
@@ -62,7 +62,7 @@
|
|
|
62
62
|
"access": "public"
|
|
63
63
|
},
|
|
64
64
|
"devDependencies": {
|
|
65
|
-
"@react-native-kakao/core": "2.
|
|
65
|
+
"@react-native-kakao/core": "2.2.0",
|
|
66
66
|
"@types/invariant": "^2",
|
|
67
67
|
"@types/jest": "^29.5.5",
|
|
68
68
|
"@types/react": "^18.2.44",
|
|
@@ -74,7 +74,7 @@
|
|
|
74
74
|
"typescript": "5.1.6"
|
|
75
75
|
},
|
|
76
76
|
"peerDependencies": {
|
|
77
|
-
"@react-native-kakao/core": "2.
|
|
77
|
+
"@react-native-kakao/core": "2.2.0",
|
|
78
78
|
"react": "*",
|
|
79
79
|
"react-native": "*"
|
|
80
80
|
},
|
|
@@ -110,8 +110,8 @@
|
|
|
110
110
|
"javaPackageName": "net.mjstudio.rnkakao.user"
|
|
111
111
|
}
|
|
112
112
|
},
|
|
113
|
-
"gitHead": "
|
|
113
|
+
"gitHead": "3d09740cd882bd4ef97e99fcdc0bbec72586865e",
|
|
114
114
|
"dependencies": {
|
|
115
|
-
"@mj-studio/js-util": "1.
|
|
115
|
+
"@mj-studio/js-util": "1.1.3"
|
|
116
116
|
}
|
|
117
117
|
}
|
package/src/index.web.ts
CHANGED
|
@@ -1,10 +1,5 @@
|
|
|
1
1
|
import { camelCaseObject, filterNonNullishKeys, is } from '@mj-studio/js-util';
|
|
2
|
-
import {
|
|
3
|
-
kCreateWebError,
|
|
4
|
-
kFetch,
|
|
5
|
-
kFetchFormUrlEncoded,
|
|
6
|
-
kGlobalStorage,
|
|
7
|
-
} from '@react-native-kakao/core';
|
|
2
|
+
import { kFetch, kFetchFormUrlEncoded, kGlobalStorage, kRunWebAPI } from '@react-native-kakao/core';
|
|
8
3
|
import * as querystring from 'querystring';
|
|
9
4
|
|
|
10
5
|
import {
|
|
@@ -34,8 +29,8 @@ function isoToUnix(value?: string | number) {
|
|
|
34
29
|
}
|
|
35
30
|
|
|
36
31
|
const KakaoUser: KakaoUserAPI = {
|
|
37
|
-
getAccessToken:
|
|
38
|
-
|
|
32
|
+
getAccessToken: () =>
|
|
33
|
+
kRunWebAPI(async () => {
|
|
39
34
|
const { id, expires_in, app_id } = (
|
|
40
35
|
await kFetch<{
|
|
41
36
|
id: number;
|
|
@@ -53,12 +48,9 @@ const KakaoUser: KakaoUserAPI = {
|
|
|
53
48
|
expiresIn: expires_in,
|
|
54
49
|
appId: app_id,
|
|
55
50
|
};
|
|
56
|
-
}
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
},
|
|
60
|
-
issueAccessTokenWithCodeWeb: async ({ clientSecret, code, redirectUri }) => {
|
|
61
|
-
try {
|
|
51
|
+
}),
|
|
52
|
+
issueAccessTokenWithCodeWeb: ({ clientSecret, code, redirectUri }) =>
|
|
53
|
+
kRunWebAPI(async () => {
|
|
62
54
|
const res = await kFetchFormUrlEncoded<{
|
|
63
55
|
token_type: string;
|
|
64
56
|
access_token: string;
|
|
@@ -79,10 +71,7 @@ const KakaoUser: KakaoUserAPI = {
|
|
|
79
71
|
}).then((r) => r.body);
|
|
80
72
|
|
|
81
73
|
return camelCaseObject(res) as any;
|
|
82
|
-
}
|
|
83
|
-
throw kCreateWebError(e);
|
|
84
|
-
}
|
|
85
|
-
},
|
|
74
|
+
}),
|
|
86
75
|
setAccessTokenWeb: (token: string) => {
|
|
87
76
|
kGlobalStorage.accessToken = token;
|
|
88
77
|
|
|
@@ -91,24 +80,25 @@ const KakaoUser: KakaoUserAPI = {
|
|
|
91
80
|
r(42);
|
|
92
81
|
});
|
|
93
82
|
},
|
|
94
|
-
login:
|
|
95
|
-
|
|
96
|
-
|
|
83
|
+
login: (params): Promise<KakaoLoginToken> =>
|
|
84
|
+
kRunWebAPI(() => {
|
|
85
|
+
const { loginHint, nonce, prompt, redirectUri, scope, state, throughTalk, serviceTerms } =
|
|
86
|
+
params?.web ?? {};
|
|
97
87
|
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
logout: () => Kakao.Auth.logout()
|
|
88
|
+
return Kakao.Auth.authorize(
|
|
89
|
+
filterNonNullishKeys({
|
|
90
|
+
loginHint,
|
|
91
|
+
nonce,
|
|
92
|
+
prompt: prompt?.join(','),
|
|
93
|
+
redirectUri,
|
|
94
|
+
scope: scope?.join(','),
|
|
95
|
+
serviceTerms: serviceTerms?.join(','),
|
|
96
|
+
state,
|
|
97
|
+
throughTalk,
|
|
98
|
+
}),
|
|
99
|
+
);
|
|
100
|
+
}),
|
|
101
|
+
logout: () => kRunWebAPI(() => Kakao.Auth.logout()),
|
|
112
102
|
isLogined: async (): Promise<boolean> => {
|
|
113
103
|
try {
|
|
114
104
|
const { appId } = await KakaoUser.getAccessToken();
|
|
@@ -118,60 +108,50 @@ const KakaoUser: KakaoUserAPI = {
|
|
|
118
108
|
return false;
|
|
119
109
|
}
|
|
120
110
|
},
|
|
121
|
-
isKakaoTalkLoginAvailable: async ()
|
|
122
|
-
unlink: ()
|
|
123
|
-
scopes:
|
|
124
|
-
|
|
111
|
+
isKakaoTalkLoginAvailable: async () => false,
|
|
112
|
+
unlink: () => kRunWebAPI(() => Kakao.API.request({ url: '/v1/user/unlink' })),
|
|
113
|
+
scopes: (scopes?: string[]) =>
|
|
114
|
+
kRunWebAPI(async () => {
|
|
125
115
|
const response = await Kakao.API.request({
|
|
126
116
|
url: `/v2/user/scopes${scopes ? '?' + querystring.stringify({ scopes }) : ''}`,
|
|
127
117
|
});
|
|
128
118
|
|
|
129
119
|
return camelCaseObject(response.scopes) as KakaoScopeInfo[];
|
|
130
|
-
}
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
revokeScopes: async (scopes: string[]): Promise<void> => {
|
|
135
|
-
try {
|
|
136
|
-
await Kakao.API.request({
|
|
120
|
+
}),
|
|
121
|
+
revokeScopes: (scopes: string[]) =>
|
|
122
|
+
kRunWebAPI(() =>
|
|
123
|
+
Kakao.API.request({
|
|
137
124
|
url: '/v2/user/revoke/scopes',
|
|
138
125
|
data: {
|
|
139
126
|
scopes,
|
|
140
127
|
},
|
|
141
|
-
})
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
128
|
+
}),
|
|
129
|
+
),
|
|
130
|
+
serviceTerms: () =>
|
|
131
|
+
kRunWebAPI(
|
|
132
|
+
async () =>
|
|
133
|
+
camelCaseObject(
|
|
134
|
+
(
|
|
135
|
+
await Kakao.API.request({
|
|
136
|
+
url: '/v2/user/service_terms',
|
|
137
|
+
})
|
|
138
|
+
).service_terms.map((v) => ({
|
|
139
|
+
...v,
|
|
140
|
+
agreed_at: v.agreed_at ? isoToUnix(v.agreed_at) : null,
|
|
141
|
+
})),
|
|
142
|
+
) as KakaoServiceTerms[],
|
|
143
|
+
),
|
|
144
|
+
shippingAddresses: () =>
|
|
145
|
+
kRunWebAPI(
|
|
146
|
+
async () =>
|
|
147
|
+
camelCaseObject(
|
|
150
148
|
await Kakao.API.request({
|
|
151
|
-
url: '/
|
|
152
|
-
})
|
|
153
|
-
)
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
) as KakaoServiceTerms[];
|
|
158
|
-
} catch (e: any) {
|
|
159
|
-
throw kCreateWebError(e);
|
|
160
|
-
}
|
|
161
|
-
},
|
|
162
|
-
shippingAddresses: async (): Promise<KakaoShippingAddressResult> => {
|
|
163
|
-
try {
|
|
164
|
-
return camelCaseObject(
|
|
165
|
-
await Kakao.API.request({
|
|
166
|
-
url: '/v1/user/shipping_address',
|
|
167
|
-
}),
|
|
168
|
-
) as KakaoShippingAddressResult;
|
|
169
|
-
} catch (e: any) {
|
|
170
|
-
throw kCreateWebError(e);
|
|
171
|
-
}
|
|
172
|
-
},
|
|
173
|
-
me: async (): Promise<KakaoUser> => {
|
|
174
|
-
try {
|
|
149
|
+
url: '/v1/user/shipping_address',
|
|
150
|
+
}),
|
|
151
|
+
) as KakaoShippingAddressResult,
|
|
152
|
+
),
|
|
153
|
+
me: () =>
|
|
154
|
+
kRunWebAPI(async () => {
|
|
175
155
|
const ret = camelCaseObject(await Kakao.API.request({ url: '/v2/user/me' })) as KakaoUser;
|
|
176
156
|
|
|
177
157
|
return {
|
|
@@ -179,10 +159,7 @@ const KakaoUser: KakaoUserAPI = {
|
|
|
179
159
|
connectedAt: isoToUnix(ret.connectedAt),
|
|
180
160
|
synchedAt: isoToUnix(ret.synchedAt),
|
|
181
161
|
};
|
|
182
|
-
}
|
|
183
|
-
throw kCreateWebError(e);
|
|
184
|
-
}
|
|
185
|
-
},
|
|
162
|
+
}),
|
|
186
163
|
};
|
|
187
164
|
|
|
188
165
|
export const {
|