iamport-react-native 3.0.2 → 3.0.3
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/CHANGELOG.md +6 -0
- package/lib/module/utils/IamportUrl.js +24 -45
- package/lib/module/utils/IamportUrl.js.map +1 -1
- package/lib/typescript/src/utils/IamportUrl.d.ts +5 -6
- package/lib/typescript/src/utils/IamportUrl.d.ts.map +1 -1
- package/package.json +4 -1
- package/src/utils/IamportUrl.ts +24 -52
package/CHANGELOG.md
CHANGED
|
@@ -1,39 +1,36 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
import { Linking, Platform } from 'react-native';
|
|
4
|
+
import queryString from 'query-string';
|
|
4
5
|
import { IMPConst } from "../constants/index.js";
|
|
5
6
|
class IamportUrl {
|
|
6
7
|
// Android only
|
|
7
8
|
|
|
8
9
|
constructor(url) {
|
|
9
10
|
this.url = url;
|
|
10
|
-
|
|
11
|
-
this.scheme
|
|
11
|
+
this.scheme = url.split('://', 1)[0] ?? '';
|
|
12
|
+
let splittedUrl = [this.scheme, url.slice(this.scheme.length + 3)];
|
|
12
13
|
if (Platform.OS === 'ios') {
|
|
13
|
-
this.path = this.scheme.startsWith('itms') ? `https://${
|
|
14
|
+
this.path = this.scheme.startsWith('itms') ? `https://${splittedUrl[1]}` : this.url;
|
|
14
15
|
} else if (Platform.OS === 'android') {
|
|
15
16
|
if (this.isAppUrl()) {
|
|
16
17
|
if (this.scheme.includes('intent')) {
|
|
17
|
-
|
|
18
|
-
|
|
18
|
+
let intentUrl = splittedUrl[1]?.split('#Intent;') ?? [];
|
|
19
|
+
let host = intentUrl[0];
|
|
20
|
+
let args = intentUrl[1]?.split(';') ?? [];
|
|
19
21
|
if (this.scheme !== 'intent') {
|
|
20
|
-
this.scheme = this.scheme.split(':')[1];
|
|
22
|
+
this.scheme = this.scheme.split(':')[1] ?? '';
|
|
21
23
|
this.path = this.scheme + '://' + host;
|
|
22
24
|
}
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
this.scheme = value;
|
|
31
|
-
}
|
|
32
|
-
break;
|
|
33
|
-
case 'package':
|
|
34
|
-
this.package = value;
|
|
25
|
+
args.forEach(s => {
|
|
26
|
+
if (s.startsWith('scheme')) {
|
|
27
|
+
let scheme = s.split('=')[1];
|
|
28
|
+
this.path = scheme + '://' + host;
|
|
29
|
+
this.scheme = scheme ?? '';
|
|
30
|
+
} else if (s.startsWith('package')) {
|
|
31
|
+
this.package = s.split('=')[1];
|
|
35
32
|
}
|
|
36
|
-
}
|
|
33
|
+
});
|
|
37
34
|
} else {
|
|
38
35
|
this.path = this.url;
|
|
39
36
|
}
|
|
@@ -50,7 +47,8 @@ class IamportUrl {
|
|
|
50
47
|
return true;
|
|
51
48
|
}
|
|
52
49
|
if (data?.pay_method === 'trans') {
|
|
53
|
-
const
|
|
50
|
+
const decodeUrl = decodeURIComponent(this.url);
|
|
51
|
+
const parsedUrl = queryString.parse(decodeUrl);
|
|
54
52
|
const scheme = data?.app_scheme;
|
|
55
53
|
/**
|
|
56
54
|
* [IOS] 웹 표준 이니시스 - 실시간 계좌이체 대비
|
|
@@ -65,8 +63,9 @@ class IamportUrl {
|
|
|
65
63
|
* 이를 위한 isInicisTransPaid 플래그 추가
|
|
66
64
|
*/
|
|
67
65
|
if (data.pg.startsWith('html5_inicis') && Platform.OS === 'ios') {
|
|
68
|
-
|
|
69
|
-
|
|
66
|
+
const query = parsedUrl;
|
|
67
|
+
if (query.m_redirect_url !== null && scheme === data.app_scheme?.toLowerCase()) {
|
|
68
|
+
if (query.m_redirect_url?.includes(redirectUrl)) {
|
|
70
69
|
return true;
|
|
71
70
|
}
|
|
72
71
|
}
|
|
@@ -243,12 +242,11 @@ class IamportUrl {
|
|
|
243
242
|
}
|
|
244
243
|
}
|
|
245
244
|
getQuery() {
|
|
246
|
-
return
|
|
245
|
+
return queryString.parse(this.getStringifiedQuery());
|
|
247
246
|
}
|
|
248
247
|
getStringifiedQuery() {
|
|
249
|
-
const
|
|
250
|
-
|
|
251
|
-
return decodeQueryParam(query);
|
|
248
|
+
const decodedUrl = decodeURIComponent(this.url);
|
|
249
|
+
return queryString.extract(decodedUrl);
|
|
252
250
|
}
|
|
253
251
|
getInicisTransQuery(redirectUrl) {
|
|
254
252
|
const {
|
|
@@ -282,24 +280,5 @@ class IamportUrl {
|
|
|
282
280
|
}
|
|
283
281
|
}
|
|
284
282
|
}
|
|
285
|
-
function splitFirst(text, delimiter) {
|
|
286
|
-
const index = text.indexOf(delimiter);
|
|
287
|
-
if (index === -1) return [text];
|
|
288
|
-
return [text.slice(0, index), text.slice(index + delimiter.length)];
|
|
289
|
-
}
|
|
290
|
-
|
|
291
|
-
// PG사 URL은 표준적인 URL이 아닐 수 있다.
|
|
292
|
-
function extractQuery(url) {
|
|
293
|
-
const hashIndex = url.indexOf('#');
|
|
294
|
-
const beforeHash = hashIndex === -1 ? url : url.slice(0, hashIndex);
|
|
295
|
-
const queryIndex = beforeHash.indexOf('?');
|
|
296
|
-
if (queryIndex === -1) return undefined;
|
|
297
|
-
return beforeHash.slice(queryIndex);
|
|
298
|
-
}
|
|
299
|
-
|
|
300
|
-
// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/decodeURIComponent#decoding_query_parameters_from_a_url
|
|
301
|
-
function decodeQueryParam(query) {
|
|
302
|
-
return decodeURIComponent(query.replaceAll('+', ' '));
|
|
303
|
-
}
|
|
304
283
|
export default IamportUrl;
|
|
305
284
|
//# sourceMappingURL=IamportUrl.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Linking","Platform","IMPConst","IamportUrl","constructor","url","scheme","location","splitFirst","OS","path","startsWith","isAppUrl","includes","host","argText","args","split","arg","key","rawValue","value","undefined","decodeURIComponent","package","getUrl","isPaymentOver","redirectUrl","data","pay_method","searchParams","URLSearchParams","extractQuery","app_scheme","pg","has","toLowerCase","get","isIframeLoaded","IMP_SDK_URL","getAppUrl","getMarketUrl","IOS_MARKET_PREFIX","ANDROID_MARKET_PREFIX","ANDROID_APPSCHEME","ISP","ANDROID_PACKAGE","PACKAGE_ISP","BANKPAY","PACKAGE_BANKPAY","KB_BANKPAY","PACKAGE_KB_BANKPAY","NH_BANKPAY","PACKAGE_NH_BANKPAY","MG_BANKPAY","PACKAGE_MG_BANKPAY","KN_BANKPAY","PACKAGE_KN_BANKPAY","KAKAOPAY","PACKAGE_KAKAOPAY","SMILEPAY","PACKAGE_SMILEPAY","CHAIPAY","PACKAGE_CHAIPAY","PAYCO","PACKAGE_PAYCO","HYUNDAICARD","PACKAGE_HYUNDAICARD","TOSS","PACKAGE_TOSS","SHINHANCARD","PACKAGE_SHINHANCARD","SHINHANSUPERSOL","PACKAGE_SHINHANSUPERSOL","HANACARD","PACKAGE_HANACARD","SAMSUNGCARD","PACKAGE_SAMSUNGCARD","KBCARD","PACKAGE_KBCARD","NHCARD","PACKAGE_NHCARD","CITICARD","PACKAGE_CITICARD","LOTTECARD","PACKAGE_LOTTECARD","LPAY","PACKAGE_LPAY","SSGPAY","PACKAGE_SSGPAY","KPAY","PACKAGE_KPAY","KBANKPAY","PACKAGE_KBANKPAY","PAYNOW","PACKAGE_PAYNOW","WOORIWONCARD","PACKAGE_WOORIWONCARD","LPOINT","PACKAGE_LPOINT","KTFAUTH","PACKAGE_KTFAUTH","LGTAUTH","PACKAGE_LGTAUTH","SKTAUTH","PACKAGE_SKTAUTH","WOORIWONBANK","PACKAGE_WOORIWONBANK","KAKAOBANK","PACKAGE_KAKAOBANK","getQuery","Object","fromEntries","getStringifiedQuery","entries","query","decodeQueryParam","getInicisTransQuery","m_redirect_url","imp_uid","merchant_uid","inicisTransQuery","launchApp","canOpenURL","openURL","e","console","error","text","delimiter","index","indexOf","slice","length","hashIndex","beforeHash","queryIndex","replaceAll"],"sourceRoot":"../../../src","sources":["utils/IamportUrl.ts"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["Linking","Platform","queryString","IMPConst","IamportUrl","constructor","url","scheme","split","splittedUrl","slice","length","OS","path","startsWith","isAppUrl","includes","intentUrl","host","args","forEach","s","package","getUrl","isPaymentOver","redirectUrl","data","pay_method","decodeUrl","decodeURIComponent","parsedUrl","parse","app_scheme","pg","query","m_redirect_url","toLowerCase","isIframeLoaded","IMP_SDK_URL","getAppUrl","getMarketUrl","IOS_MARKET_PREFIX","ANDROID_MARKET_PREFIX","ANDROID_APPSCHEME","ISP","ANDROID_PACKAGE","PACKAGE_ISP","BANKPAY","PACKAGE_BANKPAY","KB_BANKPAY","PACKAGE_KB_BANKPAY","NH_BANKPAY","PACKAGE_NH_BANKPAY","MG_BANKPAY","PACKAGE_MG_BANKPAY","KN_BANKPAY","PACKAGE_KN_BANKPAY","KAKAOPAY","PACKAGE_KAKAOPAY","SMILEPAY","PACKAGE_SMILEPAY","CHAIPAY","PACKAGE_CHAIPAY","PAYCO","PACKAGE_PAYCO","HYUNDAICARD","PACKAGE_HYUNDAICARD","TOSS","PACKAGE_TOSS","SHINHANCARD","PACKAGE_SHINHANCARD","SHINHANSUPERSOL","PACKAGE_SHINHANSUPERSOL","HANACARD","PACKAGE_HANACARD","SAMSUNGCARD","PACKAGE_SAMSUNGCARD","KBCARD","PACKAGE_KBCARD","NHCARD","PACKAGE_NHCARD","CITICARD","PACKAGE_CITICARD","LOTTECARD","PACKAGE_LOTTECARD","LPAY","PACKAGE_LPAY","SSGPAY","PACKAGE_SSGPAY","KPAY","PACKAGE_KPAY","KBANKPAY","PACKAGE_KBANKPAY","PAYNOW","PACKAGE_PAYNOW","WOORIWONCARD","PACKAGE_WOORIWONCARD","LPOINT","PACKAGE_LPOINT","KTFAUTH","PACKAGE_KTFAUTH","LGTAUTH","PACKAGE_LGTAUTH","SKTAUTH","PACKAGE_SKTAUTH","WOORIWONBANK","PACKAGE_WOORIWONBANK","KAKAOBANK","PACKAGE_KAKAOBANK","getQuery","getStringifiedQuery","decodedUrl","extract","getInicisTransQuery","imp_uid","merchant_uid","inicisTransQuery","launchApp","canOpenURL","openURL","e","console","error"],"sourceRoot":"../../../src","sources":["utils/IamportUrl.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { IMPData } from 'iamport-react-native';
|
|
2
|
+
import queryString from 'query-string';
|
|
2
3
|
declare class IamportUrl {
|
|
3
4
|
url: string;
|
|
4
5
|
scheme: string;
|
|
@@ -11,13 +12,11 @@ declare class IamportUrl {
|
|
|
11
12
|
isIframeLoaded(): boolean;
|
|
12
13
|
getAppUrl(): string | undefined;
|
|
13
14
|
getMarketUrl(): string;
|
|
14
|
-
getQuery():
|
|
15
|
-
|
|
16
|
-
};
|
|
17
|
-
getStringifiedQuery(): string | undefined;
|
|
15
|
+
getQuery(): queryString.ParsedQuery<string>;
|
|
16
|
+
getStringifiedQuery(): string;
|
|
18
17
|
getInicisTransQuery(redirectUrl: string): {
|
|
19
|
-
imp_uid: string | undefined;
|
|
20
|
-
merchant_uid: string | undefined;
|
|
18
|
+
imp_uid: string | (string | null)[] | null | undefined;
|
|
19
|
+
merchant_uid: string | (string | null)[] | null | undefined;
|
|
21
20
|
};
|
|
22
21
|
launchApp(): Promise<void>;
|
|
23
22
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IamportUrl.d.ts","sourceRoot":"","sources":["../../../../src/utils/IamportUrl.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"IamportUrl.d.ts","sourceRoot":"","sources":["../../../../src/utils/IamportUrl.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAEpD,OAAO,WAAW,MAAM,cAAc,CAAC;AAGvC,cAAM,UAAU;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;gBAEL,GAAG,EAAE,MAAM;IAoCvB,MAAM;IAIN,aAAa,CAAC,WAAW,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,CAAC,WAAW,GAAG,OAAO;IAoCvE,QAAQ;IAMR,cAAc;IAMd,SAAS;IAIT,YAAY;IAuOZ,QAAQ;IAIR,mBAAmB;IAKnB,mBAAmB,CAAC,WAAW,EAAE,MAAM;;;;IAYjC,SAAS;CAgBhB;AAED,eAAe,UAAU,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "iamport-react-native",
|
|
3
|
-
"version": "3.0.
|
|
3
|
+
"version": "3.0.3",
|
|
4
4
|
"description": "리액트 네이티브용 아임포트 결제/본인인증 연동 라이브러리",
|
|
5
5
|
"main": "./lib/module/index.js",
|
|
6
6
|
"types": "./lib/typescript/src/index.d.ts",
|
|
@@ -118,6 +118,9 @@
|
|
|
118
118
|
"type": "library",
|
|
119
119
|
"version": "0.54.8"
|
|
120
120
|
},
|
|
121
|
+
"dependencies": {
|
|
122
|
+
"query-string": "^9.3.1"
|
|
123
|
+
},
|
|
121
124
|
"scripts": {
|
|
122
125
|
"test": "jest",
|
|
123
126
|
"typecheck": "tsc",
|
package/src/utils/IamportUrl.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import type { IMPData } from 'iamport-react-native';
|
|
2
2
|
import { Linking, Platform } from 'react-native';
|
|
3
|
+
import queryString from 'query-string';
|
|
3
4
|
import { IMPConst } from '../constants';
|
|
4
5
|
|
|
5
6
|
class IamportUrl {
|
|
@@ -10,36 +11,31 @@ class IamportUrl {
|
|
|
10
11
|
|
|
11
12
|
constructor(url: string) {
|
|
12
13
|
this.url = url;
|
|
13
|
-
|
|
14
|
-
this.scheme
|
|
14
|
+
this.scheme = url.split('://', 1)[0] ?? '';
|
|
15
|
+
let splittedUrl = [this.scheme, url.slice(this.scheme.length + 3)];
|
|
15
16
|
if (Platform.OS === 'ios') {
|
|
16
17
|
this.path = this.scheme.startsWith('itms')
|
|
17
|
-
? `https://${
|
|
18
|
+
? `https://${splittedUrl[1]}`
|
|
18
19
|
: this.url;
|
|
19
20
|
} else if (Platform.OS === 'android') {
|
|
20
21
|
if (this.isAppUrl()) {
|
|
21
22
|
if (this.scheme.includes('intent')) {
|
|
22
|
-
|
|
23
|
-
|
|
23
|
+
let intentUrl = splittedUrl[1]?.split('#Intent;') ?? [];
|
|
24
|
+
let host = intentUrl[0];
|
|
25
|
+
let args = intentUrl[1]?.split(';') ?? [];
|
|
24
26
|
if (this.scheme !== 'intent') {
|
|
25
|
-
this.scheme = this.scheme.split(':')[1]
|
|
27
|
+
this.scheme = this.scheme.split(':')[1] ?? '';
|
|
26
28
|
this.path = this.scheme + '://' + host;
|
|
27
29
|
}
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
this.path = `${value}://${host}`;
|
|
36
|
-
this.scheme = value;
|
|
37
|
-
}
|
|
38
|
-
break;
|
|
39
|
-
case 'package':
|
|
40
|
-
this.package = value;
|
|
30
|
+
args.forEach((s) => {
|
|
31
|
+
if (s.startsWith('scheme')) {
|
|
32
|
+
let scheme = s.split('=')[1];
|
|
33
|
+
this.path = scheme + '://' + host;
|
|
34
|
+
this.scheme = scheme ?? '';
|
|
35
|
+
} else if (s.startsWith('package')) {
|
|
36
|
+
this.package = s.split('=')[1];
|
|
41
37
|
}
|
|
42
|
-
}
|
|
38
|
+
});
|
|
43
39
|
} else {
|
|
44
40
|
this.path = this.url;
|
|
45
41
|
}
|
|
@@ -59,7 +55,8 @@ class IamportUrl {
|
|
|
59
55
|
}
|
|
60
56
|
|
|
61
57
|
if (data?.pay_method === 'trans') {
|
|
62
|
-
const
|
|
58
|
+
const decodeUrl = decodeURIComponent(this.url);
|
|
59
|
+
const parsedUrl = queryString.parse(decodeUrl);
|
|
63
60
|
const scheme = data?.app_scheme;
|
|
64
61
|
/**
|
|
65
62
|
* [IOS] 웹 표준 이니시스 - 실시간 계좌이체 대비
|
|
@@ -74,11 +71,12 @@ class IamportUrl {
|
|
|
74
71
|
* 이를 위한 isInicisTransPaid 플래그 추가
|
|
75
72
|
*/
|
|
76
73
|
if (data.pg.startsWith('html5_inicis') && Platform.OS === 'ios') {
|
|
74
|
+
const query = parsedUrl;
|
|
77
75
|
if (
|
|
78
|
-
|
|
76
|
+
query.m_redirect_url !== null &&
|
|
79
77
|
scheme === data.app_scheme?.toLowerCase()
|
|
80
78
|
) {
|
|
81
|
-
if (
|
|
79
|
+
if ((query.m_redirect_url as string | null)?.includes(redirectUrl)) {
|
|
82
80
|
return true;
|
|
83
81
|
}
|
|
84
82
|
}
|
|
@@ -335,15 +333,12 @@ class IamportUrl {
|
|
|
335
333
|
}
|
|
336
334
|
|
|
337
335
|
getQuery() {
|
|
338
|
-
return
|
|
339
|
-
new URLSearchParams(this.getStringifiedQuery()).entries()
|
|
340
|
-
);
|
|
336
|
+
return queryString.parse(this.getStringifiedQuery());
|
|
341
337
|
}
|
|
342
338
|
|
|
343
339
|
getStringifiedQuery() {
|
|
344
|
-
const
|
|
345
|
-
|
|
346
|
-
return decodeQueryParam(query);
|
|
340
|
+
const decodedUrl = decodeURIComponent(this.url);
|
|
341
|
+
return queryString.extract(decodedUrl);
|
|
347
342
|
}
|
|
348
343
|
|
|
349
344
|
getInicisTransQuery(redirectUrl: string) {
|
|
@@ -376,27 +371,4 @@ class IamportUrl {
|
|
|
376
371
|
}
|
|
377
372
|
}
|
|
378
373
|
|
|
379
|
-
function splitFirst(
|
|
380
|
-
text: string,
|
|
381
|
-
delimiter: string
|
|
382
|
-
): [string] | [string, string] {
|
|
383
|
-
const index = text.indexOf(delimiter);
|
|
384
|
-
if (index === -1) return [text];
|
|
385
|
-
return [text.slice(0, index), text.slice(index + delimiter.length)];
|
|
386
|
-
}
|
|
387
|
-
|
|
388
|
-
// PG사 URL은 표준적인 URL이 아닐 수 있다.
|
|
389
|
-
function extractQuery(url: string): string | undefined {
|
|
390
|
-
const hashIndex = url.indexOf('#');
|
|
391
|
-
const beforeHash = hashIndex === -1 ? url : url.slice(0, hashIndex);
|
|
392
|
-
const queryIndex = beforeHash.indexOf('?');
|
|
393
|
-
if (queryIndex === -1) return undefined;
|
|
394
|
-
return beforeHash.slice(queryIndex);
|
|
395
|
-
}
|
|
396
|
-
|
|
397
|
-
// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/decodeURIComponent#decoding_query_parameters_from_a_url
|
|
398
|
-
function decodeQueryParam(query: string): string {
|
|
399
|
-
return decodeURIComponent(query.replaceAll('+', ' '));
|
|
400
|
-
}
|
|
401
|
-
|
|
402
374
|
export default IamportUrl;
|