@react-native-kakao/user 1.6.3 → 2.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/README.md +1 -1
- package/android/src/main/java/net/mjstudio/rnkakao/user/RNCKakaoUserModule.kt +48 -31
- package/android/src/oldarch/KakaoUserSpec.kt +2 -0
- package/ios/RNCKakaoUser.mm +6 -0
- package/ios/RNCKakaoUserManager.swift +21 -0
- package/lib/commonjs/index.js +30 -2
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/index.web.js +192 -0
- package/lib/commonjs/index.web.js.map +1 -0
- package/lib/commonjs/spec/NativeKakaoUser.js.map +1 -1
- package/lib/module/index.js +26 -2
- package/lib/module/index.js.map +1 -1
- package/lib/module/index.web.js +171 -0
- package/lib/module/index.web.js.map +1 -0
- package/lib/module/spec/NativeKakaoUser.js.map +1 -1
- package/lib/typescript/src/index.d.ts +63 -14
- package/lib/typescript/src/index.d.ts.map +1 -1
- package/lib/typescript/src/index.web.d.ts +5 -0
- package/lib/typescript/src/index.web.d.ts.map +1 -0
- package/lib/typescript/src/spec/NativeKakaoUser.d.ts +2 -1
- package/lib/typescript/src/spec/NativeKakaoUser.d.ts.map +1 -1
- package/package.json +5 -5
- package/src/{index.tsx → index.ts} +72 -15
- package/src/index.web.ts +204 -0
- package/src/spec/NativeKakaoUser.ts +2 -0
|
@@ -0,0 +1,171 @@
|
|
|
1
|
+
import { camelCaseObject, filterNonNullishKeys, is } from '@mj-studio/js-util';
|
|
2
|
+
import { kCreateWebError, kFetch, kFetchFormUrlEncoded, kGlobalStorage } from '@react-native-kakao/core';
|
|
3
|
+
import * as querystring from 'querystring';
|
|
4
|
+
function isoToUnix(value) {
|
|
5
|
+
if (!is.string(value)) {
|
|
6
|
+
return value;
|
|
7
|
+
}
|
|
8
|
+
return Date.parse(value) / 1000;
|
|
9
|
+
}
|
|
10
|
+
const KakaoUser = {
|
|
11
|
+
getAccessToken: async () => {
|
|
12
|
+
try {
|
|
13
|
+
const {
|
|
14
|
+
id,
|
|
15
|
+
expires_in,
|
|
16
|
+
app_id
|
|
17
|
+
} = (await kFetch('https://kapi.kakao.com/v1/user/access_token_info', {
|
|
18
|
+
headers: {
|
|
19
|
+
...kGlobalStorage.headers
|
|
20
|
+
}
|
|
21
|
+
})).body;
|
|
22
|
+
return {
|
|
23
|
+
id,
|
|
24
|
+
expiresIn: expires_in,
|
|
25
|
+
appId: app_id
|
|
26
|
+
};
|
|
27
|
+
} catch (e) {
|
|
28
|
+
throw kCreateWebError(e);
|
|
29
|
+
}
|
|
30
|
+
},
|
|
31
|
+
issueAccessTokenWithCodeWeb: async ({
|
|
32
|
+
clientSecret,
|
|
33
|
+
code,
|
|
34
|
+
redirectUri
|
|
35
|
+
}) => {
|
|
36
|
+
try {
|
|
37
|
+
const res = await kFetchFormUrlEncoded('https://kauth.kakao.com/oauth/token', {
|
|
38
|
+
method: 'POST',
|
|
39
|
+
body: filterNonNullishKeys({
|
|
40
|
+
grant_type: 'authorization_code',
|
|
41
|
+
client_id: kGlobalStorage.restApiKey,
|
|
42
|
+
redirect_uri: encodeURIComponent(redirectUri),
|
|
43
|
+
code,
|
|
44
|
+
client_secret: clientSecret
|
|
45
|
+
})
|
|
46
|
+
}).then(r => r.body);
|
|
47
|
+
return camelCaseObject(res);
|
|
48
|
+
} catch (e) {
|
|
49
|
+
throw kCreateWebError(e);
|
|
50
|
+
}
|
|
51
|
+
},
|
|
52
|
+
setAccessTokenWeb: token => {
|
|
53
|
+
kGlobalStorage.accessToken = token;
|
|
54
|
+
return new Promise(r => {
|
|
55
|
+
Kakao.Auth.setAccessToken(token);
|
|
56
|
+
r(42);
|
|
57
|
+
});
|
|
58
|
+
},
|
|
59
|
+
login: async params => {
|
|
60
|
+
const {
|
|
61
|
+
loginHint,
|
|
62
|
+
nonce,
|
|
63
|
+
prompt,
|
|
64
|
+
redirectUri,
|
|
65
|
+
scope,
|
|
66
|
+
state,
|
|
67
|
+
throughTalk,
|
|
68
|
+
serviceTerms
|
|
69
|
+
} = (params === null || params === void 0 ? void 0 : params.web) ?? {};
|
|
70
|
+
return Kakao.Auth.authorize(filterNonNullishKeys({
|
|
71
|
+
loginHint,
|
|
72
|
+
nonce,
|
|
73
|
+
prompt: prompt === null || prompt === void 0 ? void 0 : prompt.join(','),
|
|
74
|
+
redirectUri,
|
|
75
|
+
scope: scope === null || scope === void 0 ? void 0 : scope.join(','),
|
|
76
|
+
serviceTerms: serviceTerms === null || serviceTerms === void 0 ? void 0 : serviceTerms.join(','),
|
|
77
|
+
state,
|
|
78
|
+
throughTalk
|
|
79
|
+
}));
|
|
80
|
+
},
|
|
81
|
+
logout: () => Kakao.Auth.logout().catch(kCreateWebError),
|
|
82
|
+
isLogined: async () => {
|
|
83
|
+
try {
|
|
84
|
+
const {
|
|
85
|
+
appId
|
|
86
|
+
} = await KakaoUser.getAccessToken();
|
|
87
|
+
return !!appId;
|
|
88
|
+
} catch (e) {
|
|
89
|
+
return false;
|
|
90
|
+
}
|
|
91
|
+
},
|
|
92
|
+
isKakaoTalkLoginAvailable: async () => false,
|
|
93
|
+
unlink: () => Kakao.API.request({
|
|
94
|
+
url: '/v1/user/unlink'
|
|
95
|
+
}).catch(kCreateWebError),
|
|
96
|
+
scopes: async scopes => {
|
|
97
|
+
try {
|
|
98
|
+
const response = await Kakao.API.request({
|
|
99
|
+
url: `/v2/user/scopes${scopes ? '?' + querystring.stringify({
|
|
100
|
+
scopes
|
|
101
|
+
}) : ''}`
|
|
102
|
+
});
|
|
103
|
+
return camelCaseObject(response.scopes);
|
|
104
|
+
} catch (e) {
|
|
105
|
+
throw kCreateWebError(e);
|
|
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);
|
|
153
|
+
}
|
|
154
|
+
}
|
|
155
|
+
};
|
|
156
|
+
export const {
|
|
157
|
+
isKakaoTalkLoginAvailable,
|
|
158
|
+
isLogined,
|
|
159
|
+
login,
|
|
160
|
+
logout,
|
|
161
|
+
me,
|
|
162
|
+
revokeScopes,
|
|
163
|
+
scopes,
|
|
164
|
+
serviceTerms,
|
|
165
|
+
shippingAddresses,
|
|
166
|
+
unlink,
|
|
167
|
+
setAccessTokenWeb,
|
|
168
|
+
issueAccessTokenWithCodeWeb,
|
|
169
|
+
getAccessToken
|
|
170
|
+
} = KakaoUser;
|
|
171
|
+
//# sourceMappingURL=index.web.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["camelCaseObject","filterNonNullishKeys","is","kCreateWebError","kFetch","kFetchFormUrlEncoded","kGlobalStorage","querystring","isoToUnix","value","string","Date","parse","KakaoUser","getAccessToken","id","expires_in","app_id","headers","body","expiresIn","appId","e","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","catch","isLogined","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,"names":["TurboModuleRegistry","getEnforcing"],"sourceRoot":"../../../src","sources":["spec/NativeKakaoUser.ts"],"mappings":"AACA,SAASA,mBAAmB,QAAQ,cAAc;
|
|
1
|
+
{"version":3,"names":["TurboModuleRegistry","getEnforcing"],"sourceRoot":"../../../src","sources":["spec/NativeKakaoUser.ts"],"mappings":"AACA,SAASA,mBAAmB,QAAQ,cAAc;AA8BlD,eAAeA,mBAAmB,CAACC,YAAY,CAAO,cAAc,CAAC","ignoreList":[]}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export
|
|
1
|
+
export interface KakaoLoginToken {
|
|
2
2
|
accessToken: string;
|
|
3
3
|
refreshToken: string;
|
|
4
4
|
tokenType?: string;
|
|
@@ -8,8 +8,8 @@ export type KakaoLoginToken = {
|
|
|
8
8
|
accessTokenExpiresIn: number;
|
|
9
9
|
refreshTokenExpiresIn: number;
|
|
10
10
|
scopes: string[];
|
|
11
|
-
}
|
|
12
|
-
export
|
|
11
|
+
}
|
|
12
|
+
export interface KakaoScopeInfo {
|
|
13
13
|
id: string;
|
|
14
14
|
agreed: boolean;
|
|
15
15
|
displayName: string;
|
|
@@ -17,25 +17,25 @@ export type KakaoScopeInfo = {
|
|
|
17
17
|
using: boolean;
|
|
18
18
|
delegated?: boolean;
|
|
19
19
|
type: string;
|
|
20
|
-
}
|
|
21
|
-
export
|
|
20
|
+
}
|
|
21
|
+
export interface KakaoServiceTerms {
|
|
22
22
|
tag: string;
|
|
23
23
|
agreedAt?: number;
|
|
24
24
|
agreed: boolean;
|
|
25
25
|
required: boolean;
|
|
26
26
|
revocable: boolean;
|
|
27
|
-
}
|
|
28
|
-
export
|
|
27
|
+
}
|
|
28
|
+
export interface KakaoAppServiceTerms {
|
|
29
29
|
tag: string;
|
|
30
30
|
createdAt: number;
|
|
31
31
|
updatedAt: number;
|
|
32
|
-
}
|
|
33
|
-
export
|
|
32
|
+
}
|
|
33
|
+
export interface KakaoShippingAddressResult {
|
|
34
34
|
userId?: number;
|
|
35
35
|
needsAgreement?: boolean;
|
|
36
36
|
shippingAddresses: KakaoShippingAddress[];
|
|
37
|
-
}
|
|
38
|
-
export
|
|
37
|
+
}
|
|
38
|
+
export interface KakaoShippingAddress {
|
|
39
39
|
id: number;
|
|
40
40
|
name?: string;
|
|
41
41
|
isDefault: boolean;
|
|
@@ -48,8 +48,8 @@ export type KakaoShippingAddress = {
|
|
|
48
48
|
receiverPhoneNumber2?: string;
|
|
49
49
|
zoneNumber?: string;
|
|
50
50
|
zipCode?: string;
|
|
51
|
-
}
|
|
52
|
-
export
|
|
51
|
+
}
|
|
52
|
+
export interface KakaoUser {
|
|
53
53
|
id: number;
|
|
54
54
|
email: string;
|
|
55
55
|
name: string;
|
|
@@ -78,12 +78,29 @@ export type KakaoUser = {
|
|
|
78
78
|
profileImageNeedsAgreement?: boolean;
|
|
79
79
|
profileNicknameNeedsAgreement?: boolean;
|
|
80
80
|
legalBirthDateNeedsAgreement?: boolean;
|
|
81
|
-
|
|
81
|
+
connectedAt?: number;
|
|
82
|
+
synchedAt?: number;
|
|
83
|
+
}
|
|
84
|
+
export interface KakaoAccessTokenInfo {
|
|
85
|
+
id?: number;
|
|
86
|
+
appId: number;
|
|
87
|
+
expiresIn: number;
|
|
88
|
+
}
|
|
82
89
|
export declare function login({ serviceTerms, prompts, useKakaoAccountLogin, scopes, }?: {
|
|
83
90
|
serviceTerms?: string[];
|
|
84
91
|
prompts?: ('Loign' | 'Create' | 'Cert' | 'UnifyDaum' | 'SelectAccount')[];
|
|
85
92
|
scopes?: string[];
|
|
86
93
|
useKakaoAccountLogin?: boolean;
|
|
94
|
+
web?: {
|
|
95
|
+
redirectUri: string;
|
|
96
|
+
scope?: string[];
|
|
97
|
+
throughTalk?: boolean;
|
|
98
|
+
prompt?: ('login' | 'none' | 'create' | 'select_account')[];
|
|
99
|
+
loginHint?: string;
|
|
100
|
+
serviceTerms?: string[];
|
|
101
|
+
state?: string;
|
|
102
|
+
nonce?: string;
|
|
103
|
+
};
|
|
87
104
|
}): Promise<KakaoLoginToken>;
|
|
88
105
|
export declare function logout(): Promise<void>;
|
|
89
106
|
export declare function unlink(): Promise<void>;
|
|
@@ -94,4 +111,36 @@ export declare function revokeScopes(scopes: string[]): Promise<void>;
|
|
|
94
111
|
export declare function serviceTerms(): Promise<KakaoServiceTerms[]>;
|
|
95
112
|
export declare function shippingAddresses(): Promise<KakaoShippingAddressResult>;
|
|
96
113
|
export declare function me(): Promise<KakaoUser>;
|
|
114
|
+
export declare function getAccessToken(): Promise<KakaoAccessTokenInfo>;
|
|
115
|
+
export declare function setAccessTokenWeb(token: string): void;
|
|
116
|
+
export declare function issueAccessTokenWithCodeWeb(params: {
|
|
117
|
+
redirectUri: string;
|
|
118
|
+
clientSecret?: string;
|
|
119
|
+
code: string;
|
|
120
|
+
}): Promise<{
|
|
121
|
+
tokenType: string;
|
|
122
|
+
accessToken: string;
|
|
123
|
+
idToken?: string;
|
|
124
|
+
expiresIn: number;
|
|
125
|
+
refreshToken: string;
|
|
126
|
+
refreshTokenExpiresIn: number;
|
|
127
|
+
scope?: string;
|
|
128
|
+
}>;
|
|
129
|
+
declare const KakaoUser: {
|
|
130
|
+
login: typeof login;
|
|
131
|
+
logout: typeof logout;
|
|
132
|
+
unlink: typeof unlink;
|
|
133
|
+
isLogined: typeof isLogined;
|
|
134
|
+
isKakaoTalkLoginAvailable: typeof isKakaoTalkLoginAvailable;
|
|
135
|
+
scopes: typeof scopes;
|
|
136
|
+
revokeScopes: typeof revokeScopes;
|
|
137
|
+
serviceTerms: typeof serviceTerms;
|
|
138
|
+
shippingAddresses: typeof shippingAddresses;
|
|
139
|
+
me: typeof me;
|
|
140
|
+
getAccessToken: typeof getAccessToken;
|
|
141
|
+
setAccessTokenWeb: typeof setAccessTokenWeb;
|
|
142
|
+
issueAccessTokenWithCodeWeb: typeof issueAccessTokenWithCodeWeb;
|
|
143
|
+
};
|
|
144
|
+
export default KakaoUser;
|
|
145
|
+
export type KakaoUserAPI = typeof KakaoUser;
|
|
97
146
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { type KakaoUser, type KakaoUserAPI } from './index';
|
|
2
|
+
declare const KakaoUser: KakaoUserAPI;
|
|
3
|
+
export declare const isKakaoTalkLoginAvailable: typeof import("./index").isKakaoTalkLoginAvailable, isLogined: typeof import("./index").isLogined, login: typeof import("./index").login, logout: typeof import("./index").logout, me: typeof import("./index").me, revokeScopes: typeof import("./index").revokeScopes, scopes: typeof import("./index").scopes, serviceTerms: typeof import("./index").serviceTerms, shippingAddresses: typeof import("./index").shippingAddresses, unlink: typeof import("./index").unlink, setAccessTokenWeb: typeof import("./index").setAccessTokenWeb, issueAccessTokenWithCodeWeb: typeof import("./index").issueAccessTokenWithCodeWeb, getAccessToken: typeof import("./index").getAccessToken;
|
|
4
|
+
export default KakaoUser;
|
|
5
|
+
//# sourceMappingURL=index.web.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.web.d.ts","sourceRoot":"","sources":["../../../src/index.web.ts"],"names":[],"mappings":"AASA,OAAO,EAKL,KAAK,SAAS,EACd,KAAK,YAAY,EAClB,MAAM,SAAS,CAAC;AAmBjB,QAAA,MAAM,SAAS,EAAE,YAsJhB,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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { TurboModule } from 'react-native';
|
|
2
|
-
import type { KakaoLoginToken, KakaoScopeInfo, KakaoServiceTerms, KakaoShippingAddressResult, KakaoUser } from '..';
|
|
2
|
+
import type { KakaoAccessTokenInfo, KakaoLoginToken, KakaoScopeInfo, KakaoServiceTerms, KakaoShippingAddressResult, KakaoUser } from '..';
|
|
3
3
|
export interface Spec extends TurboModule {
|
|
4
4
|
isKakaoTalkLoginAvailable(): Promise<boolean>;
|
|
5
5
|
login(serviceTerms: string[], prompts: string[], useKakaoAccountLogin: boolean, scopes?: string[]): Promise<KakaoLoginToken>;
|
|
@@ -11,6 +11,7 @@ export interface Spec extends TurboModule {
|
|
|
11
11
|
serviceTerms(): Promise<KakaoServiceTerms[]>;
|
|
12
12
|
shippingAddresses(): Promise<KakaoShippingAddressResult>;
|
|
13
13
|
me(): Promise<KakaoUser>;
|
|
14
|
+
getAccessToken(): Promise<KakaoAccessTokenInfo>;
|
|
14
15
|
}
|
|
15
16
|
declare const _default: Spec;
|
|
16
17
|
export default _default;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NativeKakaoUser.d.ts","sourceRoot":"","sources":["../../../../src/spec/NativeKakaoUser.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAGhD,OAAO,KAAK,EACV,eAAe,EACf,cAAc,EACd,iBAAiB,EACjB,0BAA0B,EAC1B,SAAS,EACV,MAAM,IAAI,CAAC;AAEZ,MAAM,WAAW,IAAK,SAAQ,WAAW;IACvC,yBAAyB,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IAC9C,KAAK,CACH,YAAY,EAAE,MAAM,EAAE,EACtB,OAAO,EAAE,MAAM,EAAE,EACjB,oBAAoB,EAAE,OAAO,EAC7B,MAAM,CAAC,EAAE,MAAM,EAAE,GAChB,OAAO,CAAC,eAAe,CAAC,CAAC;IAC5B,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACxB,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACxB,SAAS,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IAC9B,MAAM,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC,CAAC;IACrD,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC9C,YAAY,IAAI,OAAO,CAAC,iBAAiB,EAAE,CAAC,CAAC;IAC7C,iBAAiB,IAAI,OAAO,CAAC,0BAA0B,CAAC,CAAC;IACzD,EAAE,IAAI,OAAO,CAAC,SAAS,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"NativeKakaoUser.d.ts","sourceRoot":"","sources":["../../../../src/spec/NativeKakaoUser.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAGhD,OAAO,KAAK,EACV,oBAAoB,EACpB,eAAe,EACf,cAAc,EACd,iBAAiB,EACjB,0BAA0B,EAC1B,SAAS,EACV,MAAM,IAAI,CAAC;AAEZ,MAAM,WAAW,IAAK,SAAQ,WAAW;IACvC,yBAAyB,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IAC9C,KAAK,CACH,YAAY,EAAE,MAAM,EAAE,EACtB,OAAO,EAAE,MAAM,EAAE,EACjB,oBAAoB,EAAE,OAAO,EAC7B,MAAM,CAAC,EAAE,MAAM,EAAE,GAChB,OAAO,CAAC,eAAe,CAAC,CAAC;IAC5B,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACxB,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACxB,SAAS,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IAC9B,MAAM,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC,CAAC;IACrD,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC9C,YAAY,IAAI,OAAO,CAAC,iBAAiB,EAAE,CAAC,CAAC;IAC7C,iBAAiB,IAAI,OAAO,CAAC,0BAA0B,CAAC,CAAC;IACzD,EAAE,IAAI,OAAO,CAAC,SAAS,CAAC,CAAC;IACzB,cAAc,IAAI,OAAO,CAAC,oBAAoB,CAAC,CAAC;CACjD;;AAED,wBAAsE"}
|
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": "
|
|
4
|
+
"version": "2.0.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": "
|
|
65
|
+
"@react-native-kakao/core": "2.0.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": "
|
|
77
|
+
"@react-native-kakao/core": "2.0.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": "afd06e1ab70d1cf13f922fd40757856e33a6df99",
|
|
114
114
|
"dependencies": {
|
|
115
|
-
"@mj-studio/js-util": "
|
|
115
|
+
"@mj-studio/js-util": "1.0.35"
|
|
116
116
|
}
|
|
117
117
|
}
|
|
@@ -10,7 +10,6 @@ const LINKING_ERROR =
|
|
|
10
10
|
'- You rebuilt the app after installing the package\n' +
|
|
11
11
|
'- You are not using Expo Go\n';
|
|
12
12
|
|
|
13
|
-
// @ts-expect-error
|
|
14
13
|
const isTurboModuleEnabled = global.__turboModuleProxy != null;
|
|
15
14
|
|
|
16
15
|
const Module = isTurboModuleEnabled
|
|
@@ -28,7 +27,7 @@ const Native: Spec = Module
|
|
|
28
27
|
},
|
|
29
28
|
);
|
|
30
29
|
|
|
31
|
-
export
|
|
30
|
+
export interface KakaoLoginToken {
|
|
32
31
|
accessToken: string;
|
|
33
32
|
refreshToken: string;
|
|
34
33
|
tokenType?: string;
|
|
@@ -38,8 +37,8 @@ export type KakaoLoginToken = {
|
|
|
38
37
|
accessTokenExpiresIn: number;
|
|
39
38
|
refreshTokenExpiresIn: number;
|
|
40
39
|
scopes: string[];
|
|
41
|
-
}
|
|
42
|
-
export
|
|
40
|
+
}
|
|
41
|
+
export interface KakaoScopeInfo {
|
|
43
42
|
id: string;
|
|
44
43
|
agreed: boolean;
|
|
45
44
|
displayName: string;
|
|
@@ -47,25 +46,25 @@ export type KakaoScopeInfo = {
|
|
|
47
46
|
using: boolean;
|
|
48
47
|
delegated?: boolean;
|
|
49
48
|
type: string;
|
|
50
|
-
}
|
|
51
|
-
export
|
|
49
|
+
}
|
|
50
|
+
export interface KakaoServiceTerms {
|
|
52
51
|
tag: string;
|
|
53
52
|
agreedAt?: number;
|
|
54
53
|
agreed: boolean;
|
|
55
54
|
required: boolean;
|
|
56
55
|
revocable: boolean;
|
|
57
|
-
}
|
|
58
|
-
export
|
|
56
|
+
}
|
|
57
|
+
export interface KakaoAppServiceTerms {
|
|
59
58
|
tag: string;
|
|
60
59
|
createdAt: number;
|
|
61
60
|
updatedAt: number;
|
|
62
|
-
}
|
|
63
|
-
export
|
|
61
|
+
}
|
|
62
|
+
export interface KakaoShippingAddressResult {
|
|
64
63
|
userId?: number;
|
|
65
64
|
needsAgreement?: boolean;
|
|
66
65
|
shippingAddresses: KakaoShippingAddress[];
|
|
67
|
-
}
|
|
68
|
-
export
|
|
66
|
+
}
|
|
67
|
+
export interface KakaoShippingAddress {
|
|
69
68
|
id: number;
|
|
70
69
|
name?: string;
|
|
71
70
|
isDefault: boolean;
|
|
@@ -78,8 +77,8 @@ export type KakaoShippingAddress = {
|
|
|
78
77
|
receiverPhoneNumber2?: string;
|
|
79
78
|
zoneNumber?: string;
|
|
80
79
|
zipCode?: string;
|
|
81
|
-
}
|
|
82
|
-
export
|
|
80
|
+
}
|
|
81
|
+
export interface KakaoUser {
|
|
83
82
|
id: number;
|
|
84
83
|
email: string;
|
|
85
84
|
name: string;
|
|
@@ -108,7 +107,14 @@ export type KakaoUser = {
|
|
|
108
107
|
profileImageNeedsAgreement?: boolean;
|
|
109
108
|
profileNicknameNeedsAgreement?: boolean;
|
|
110
109
|
legalBirthDateNeedsAgreement?: boolean;
|
|
111
|
-
|
|
110
|
+
connectedAt?: number;
|
|
111
|
+
synchedAt?: number;
|
|
112
|
+
}
|
|
113
|
+
export interface KakaoAccessTokenInfo {
|
|
114
|
+
id?: number;
|
|
115
|
+
appId: number;
|
|
116
|
+
expiresIn: number;
|
|
117
|
+
}
|
|
112
118
|
export function login({
|
|
113
119
|
serviceTerms,
|
|
114
120
|
prompts,
|
|
@@ -119,6 +125,16 @@ export function login({
|
|
|
119
125
|
prompts?: ('Loign' | 'Create' | 'Cert' | 'UnifyDaum' | 'SelectAccount')[];
|
|
120
126
|
scopes?: string[];
|
|
121
127
|
useKakaoAccountLogin?: boolean;
|
|
128
|
+
web?: {
|
|
129
|
+
redirectUri: string;
|
|
130
|
+
scope?: string[];
|
|
131
|
+
throughTalk?: boolean;
|
|
132
|
+
prompt?: ('login' | 'none' | 'create' | 'select_account')[];
|
|
133
|
+
loginHint?: string;
|
|
134
|
+
serviceTerms?: string[];
|
|
135
|
+
state?: string;
|
|
136
|
+
nonce?: string;
|
|
137
|
+
};
|
|
122
138
|
} = {}): Promise<KakaoLoginToken> {
|
|
123
139
|
kAssert(
|
|
124
140
|
!useKakaoAccountLogin ? !is.notEmptyArray(prompts) && !is.notEmptyArray(scopes) : true,
|
|
@@ -173,3 +189,44 @@ export function shippingAddresses(): Promise<KakaoShippingAddressResult> {
|
|
|
173
189
|
export function me(): Promise<KakaoUser> {
|
|
174
190
|
return Native.me();
|
|
175
191
|
}
|
|
192
|
+
|
|
193
|
+
export function getAccessToken(): Promise<KakaoAccessTokenInfo> {
|
|
194
|
+
return Native.getAccessToken();
|
|
195
|
+
}
|
|
196
|
+
|
|
197
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
198
|
+
export function setAccessTokenWeb(token: string) {}
|
|
199
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
200
|
+
export async function issueAccessTokenWithCodeWeb(params: {
|
|
201
|
+
redirectUri: string;
|
|
202
|
+
clientSecret?: string;
|
|
203
|
+
code: string;
|
|
204
|
+
}): Promise<{
|
|
205
|
+
tokenType: string;
|
|
206
|
+
accessToken: string;
|
|
207
|
+
idToken?: string;
|
|
208
|
+
expiresIn: number;
|
|
209
|
+
refreshToken: string;
|
|
210
|
+
refreshTokenExpiresIn: number;
|
|
211
|
+
scope?: string;
|
|
212
|
+
}> {
|
|
213
|
+
return {} as any;
|
|
214
|
+
}
|
|
215
|
+
|
|
216
|
+
const KakaoUser = {
|
|
217
|
+
login,
|
|
218
|
+
logout,
|
|
219
|
+
unlink,
|
|
220
|
+
isLogined,
|
|
221
|
+
isKakaoTalkLoginAvailable,
|
|
222
|
+
scopes,
|
|
223
|
+
revokeScopes,
|
|
224
|
+
serviceTerms,
|
|
225
|
+
shippingAddresses,
|
|
226
|
+
me,
|
|
227
|
+
getAccessToken,
|
|
228
|
+
setAccessTokenWeb,
|
|
229
|
+
issueAccessTokenWithCodeWeb,
|
|
230
|
+
};
|
|
231
|
+
export default KakaoUser;
|
|
232
|
+
export type KakaoUserAPI = typeof KakaoUser;
|