@bootpay/client-js 5.0.0-beta.6 → 5.0.0-beta.8

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.
Files changed (82) hide show
  1. package/dist/package.json +47 -0
  2. package/dist/src/bootpay-environment.js +5 -0
  3. package/dist/src/bootpay-environment.js.map +1 -0
  4. package/dist/src/bootpay-es5.d.ts +4 -0
  5. package/dist/src/bootpay-es5.js +10 -0
  6. package/dist/src/bootpay-es5.js.map +1 -0
  7. package/dist/src/bootpay-sdk.js +243 -0
  8. package/dist/src/bootpay-sdk.js.map +1 -0
  9. package/dist/src/bootpay-widget.js +83 -0
  10. package/dist/src/bootpay-widget.js.map +1 -0
  11. package/dist/src/bootpay.d.ts +0 -2
  12. package/dist/src/bootpay.js +319 -0
  13. package/dist/src/bootpay.js.map +1 -0
  14. package/dist/src/index.js +33 -0
  15. package/dist/src/index.js.map +1 -0
  16. package/dist/src/lib/analytics.js +137 -0
  17. package/dist/src/lib/analytics.js.map +1 -0
  18. package/dist/src/lib/bootpay-widget.js +171 -0
  19. package/dist/src/lib/bootpay-widget.js.map +1 -0
  20. package/dist/src/lib/bootpay.js +496 -0
  21. package/dist/src/lib/bootpay.js.map +1 -0
  22. package/dist/src/lib/event/payment.d.ts +1 -2
  23. package/dist/src/lib/event/payment.js +215 -0
  24. package/dist/src/lib/event/payment.js.map +1 -0
  25. package/dist/src/lib/event/polling.js +42 -0
  26. package/dist/src/lib/event/polling.js.map +1 -0
  27. package/dist/src/lib/event/user-token.js +51 -0
  28. package/dist/src/lib/event/user-token.js.map +1 -0
  29. package/dist/src/lib/event/widget.js +90 -0
  30. package/dist/src/lib/event/widget.js.map +1 -0
  31. package/dist/src/lib/locale/message.js +110 -0
  32. package/dist/src/lib/locale/message.js.map +1 -0
  33. package/dist/src/lib/template/oopay.js +66 -0
  34. package/dist/src/lib/template/oopay.js.map +1 -0
  35. package/dist/src/lib/template/payment.js +488 -0
  36. package/dist/src/lib/template/payment.js.map +1 -0
  37. package/dist/src/lib/template/user-token.js +281 -0
  38. package/dist/src/lib/template/user-token.js.map +1 -0
  39. package/dist/src/lib/template/widget.js +78 -0
  40. package/dist/src/lib/template/widget.js.map +1 -0
  41. package/dist/src/models/bootpay-interface.js +3 -0
  42. package/dist/src/models/bootpay-interface.js.map +1 -0
  43. package/dist/src/models/bootpay-sdk-interface.js +3 -0
  44. package/dist/src/models/bootpay-sdk-interface.js.map +1 -0
  45. package/dist/src/models/bootpay-widget-interface.js +3 -0
  46. package/dist/src/models/bootpay-widget-interface.js.map +1 -0
  47. package/dist/src/models/const.js +15 -0
  48. package/dist/src/models/const.js.map +1 -0
  49. package/dist/src/support/alfred-progress/index.js +64 -0
  50. package/dist/src/support/alfred-progress/index.js.map +1 -0
  51. package/dist/src/support/bootpay-manager.d.ts +2 -2
  52. package/dist/src/support/bootpay-manager.js +39 -0
  53. package/dist/src/support/bootpay-manager.js.map +1 -0
  54. package/dist/src/support/environment.js +89 -0
  55. package/dist/src/support/environment.js.map +1 -0
  56. package/dist/src/support/event.js +133 -0
  57. package/dist/src/support/event.js.map +1 -0
  58. package/dist/src/support/logger.js +130 -0
  59. package/dist/src/support/logger.js.map +1 -0
  60. package/dist/src/support/resource.js +125 -0
  61. package/dist/src/support/resource.js.map +1 -0
  62. package/dist/src/support/storage.js +191 -0
  63. package/dist/src/support/storage.js.map +1 -0
  64. package/dist/src/support/template-manager.js +47 -0
  65. package/dist/src/support/template-manager.js.map +1 -0
  66. package/dist/src/support/util.js +36 -0
  67. package/dist/src/support/util.js.map +1 -0
  68. package/dist/src/support/widget-store.js +73 -0
  69. package/dist/src/support/widget-store.js.map +1 -0
  70. package/package.json +3 -3
  71. package/tsconfig-esnext.json +40 -0
  72. package/dist/bootpay-environment.js +0 -1
  73. package/dist/bootpay-sdk.js +0 -2
  74. package/dist/bootpay-sdk.js.LICENSE.txt +0 -1
  75. package/dist/bootpay-widget.js +0 -2
  76. package/dist/bootpay-widget.js.LICENSE.txt +0 -1
  77. package/dist/bootpay.js +0 -2
  78. package/dist/bootpay.js.LICENSE.txt +0 -1
  79. package/dist/dist/bootpay.d.ts +0 -2
  80. package/dist/index.js +0 -8
  81. package/dist/src/test/index.d.ts +0 -1
  82. package/dist/src/test/moduleRequire.d.ts +0 -1
@@ -0,0 +1,319 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ const const_1 = require("./models/const");
13
+ const environment_1 = require("./support/environment");
14
+ const bootpay_1 = require("./lib/bootpay");
15
+ const alfred_progress_1 = require("./support/alfred-progress");
16
+ const util_1 = require("./support/util");
17
+ const logger_1 = require("./support/logger");
18
+ const payment_1 = require("./lib/template/payment");
19
+ const payment_2 = require("./lib/event/payment");
20
+ const storage_1 = require("./support/storage");
21
+ const analytics_1 = require("./lib/analytics");
22
+ /**
23
+ * IE 11 Event
24
+ * Comment by GOSOMI
25
+ * @date: 2021-12-29
26
+ */
27
+ (function () {
28
+ if (typeof window.CustomEvent === "function")
29
+ return false;
30
+ function CustomEvent(event, params) {
31
+ params = params || { bubbles: false, cancelable: false, detail: undefined };
32
+ let evt = document.createEvent('CustomEvent');
33
+ evt.initCustomEvent(event, params.bubbles, params.cancelable, params.detail);
34
+ return evt;
35
+ }
36
+ CustomEvent.prototype = window.Event.prototype;
37
+ window.CustomEvent = CustomEvent;
38
+ })();
39
+ const Bootpay = {
40
+ $payment: bootpay_1.BootpayRequestPayment,
41
+ $analytics: analytics_1.BootpayAnalytics,
42
+ $environment: environment_1.Environment,
43
+ /**
44
+ * 결제 요청
45
+ * Comment by GOSOMI
46
+ * @date: 2021-05-11
47
+ * @param data: RequestPaymentModel
48
+ * @returns Promise<any>
49
+ */
50
+ requestPayment(data) {
51
+ return __awaiter(this, void 0, void 0, function* () {
52
+ return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () {
53
+ try {
54
+ const response = yield this.$payment.requestPayment(data);
55
+ setTimeout(() => {
56
+ resolve(response);
57
+ if (['done', 'issued'].indexOf(response.event) > -1) {
58
+ this.$payment.eventDone(response);
59
+ }
60
+ }, 100);
61
+ }
62
+ catch (e) {
63
+ setTimeout(() => {
64
+ reject(this.errorHandler(e));
65
+ }, 100);
66
+ }
67
+ }));
68
+ });
69
+ },
70
+ /**
71
+ * 결제 승인 요청
72
+ * Comment by GOSOMI
73
+ * @date: 2021-05-20
74
+ */
75
+ confirm() {
76
+ return __awaiter(this, void 0, void 0, function* () {
77
+ return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () {
78
+ try {
79
+ const response = yield this.$payment.confirm();
80
+ setTimeout(() => {
81
+ resolve(response);
82
+ this.$payment.eventDone(response);
83
+ }, 100);
84
+ }
85
+ catch (e) {
86
+ setTimeout(() => {
87
+ return reject(this.errorHandler(e));
88
+ }, 100);
89
+ }
90
+ }));
91
+ });
92
+ },
93
+ /**
94
+ * 정기결제창 요청
95
+ * Comment by GOSOMI
96
+ * @date: 2021-10-28
97
+ * @param data: RequestSubscriptionModel
98
+ */
99
+ requestSubscription(data) {
100
+ return __awaiter(this, void 0, void 0, function* () {
101
+ return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () {
102
+ try {
103
+ const response = yield this.$payment.requestSubscription(data);
104
+ resolve(response);
105
+ this.$payment.eventDone(response);
106
+ }
107
+ catch (e) {
108
+ return reject(this.errorHandler(e));
109
+ }
110
+ }));
111
+ });
112
+ },
113
+ /**
114
+ * 본인인증 요청
115
+ * Comment by GOSOMI
116
+ * @date: 2021-12-06
117
+ * @param data: RequestAuthenticationModel
118
+ */
119
+ requestAuthentication(data) {
120
+ return __awaiter(this, void 0, void 0, function* () {
121
+ return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () {
122
+ try {
123
+ const response = yield this.$payment.requestAuthentication(data);
124
+ resolve(response);
125
+ this.$payment.eventDone(response);
126
+ }
127
+ catch (e) {
128
+ return reject(this.errorHandler(e));
129
+ }
130
+ }));
131
+ });
132
+ },
133
+ requestPaymentUrl(data) {
134
+ return __awaiter(this, void 0, void 0, function* () {
135
+ return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () {
136
+ try {
137
+ const response = yield this.$payment.requestPaymentUrl(data);
138
+ setTimeout(() => {
139
+ resolve(response);
140
+ if (['done', 'issued'].indexOf(response.event) > -1) {
141
+ this.$payment.eventDone(response);
142
+ }
143
+ }, 100);
144
+ }
145
+ catch (e) {
146
+ setTimeout(() => {
147
+ reject(this.errorHandler(e));
148
+ }, 100);
149
+ }
150
+ }));
151
+ });
152
+ },
153
+ /**
154
+ * 환경 설정
155
+ * Comment by GOSOMI
156
+ * @date: 2021-05-11
157
+ * @param env: string
158
+ * @param hostname: string | undefined
159
+ * @returns void
160
+ */
161
+ setEnvironmentMode(env, hostname = undefined) {
162
+ this.$environment.set(env);
163
+ if (hostname !== undefined) {
164
+ this.$environment.setDevelopmentHost(hostname);
165
+ }
166
+ },
167
+ /**
168
+ * ApplicationID를 지정
169
+ * Comment by GOSOMI
170
+ * @date: 2022-03-02
171
+ */
172
+ setApplicationId(applicationId) {
173
+ return this.$environment.setApplicationId(applicationId);
174
+ },
175
+ /**
176
+ * SDK 버전과 SDK 이름 기록
177
+ * Comment by GOSOMI
178
+ * @date: 2022-05-15
179
+ */
180
+ setVersion(version, name) {
181
+ return this.$environment.setVersion(version, name);
182
+ },
183
+ /**
184
+ * DeviceType을 설정
185
+ * Comment by GOSOMI
186
+ * @date: 2021-12-23
187
+ * @param deviceType: string
188
+ * @returns number
189
+ */
190
+ setDevice(deviceType) {
191
+ switch (deviceType) {
192
+ case 'IOS':
193
+ this.$payment.platformType = const_1.Const.PLATFORM.IOS;
194
+ break;
195
+ case 'ANDROID':
196
+ this.$payment.platformType = const_1.Const.PLATFORM.ANDROID;
197
+ break;
198
+ default:
199
+ this.$payment.platformType = const_1.Const.PLATFORM.JS;
200
+ }
201
+ return this.$payment.platformType;
202
+ },
203
+ /**
204
+ * 이벤트 오류를 받아서 처리한다
205
+ * Comment by GOSOMI
206
+ * @date: 2021-05-12
207
+ * @param e: any
208
+ */
209
+ errorHandler(e) {
210
+ let response = undefined;
211
+ // 일단 오류가 나면 Progress를 감춘다
212
+ alfred_progress_1.AlfredProgress.hideProgress();
213
+ switch (e.name) {
214
+ case 'BootpayEventError':
215
+ response = e.eventMessage;
216
+ break;
217
+ default:
218
+ if ((0, util_1.isPresent)(e.event)) {
219
+ response = e;
220
+ }
221
+ else {
222
+ throw e;
223
+ // response = {
224
+ // event: 'error',
225
+ // error_code: 10,
226
+ // message: e.message
227
+ // }
228
+ }
229
+ }
230
+ return response;
231
+ },
232
+ /**
233
+ * 팝업을 준비한다
234
+ * Comment by GOSOMI
235
+ * @date: 2021-06-23
236
+ */
237
+ readyToPopup() {
238
+ payment_1.TemplatePayment.readyToPopup();
239
+ },
240
+ /**
241
+ * 로그 레벨을 설정한다
242
+ * Comment by GOSOMI
243
+ * @date: 2021-05-12
244
+ * @param level: number
245
+ * @returns void
246
+ */
247
+ setLogLevel(level) {
248
+ logger_1.Logger.setLogLevel(level);
249
+ },
250
+ /**
251
+ * UUID 설정
252
+ * Comment by GOSOMI
253
+ * @date: 2021-12-22
254
+ * @param uuid: string
255
+ * @returns string
256
+ */
257
+ setUUID(uuid) {
258
+ return storage_1.SessionStorage.setUUID(uuid);
259
+ },
260
+ /**
261
+ * 페이지 통계 데이터를 전송
262
+ * Comment by GOSOMI
263
+ * @date: 2022-03-02
264
+ */
265
+ send(data = undefined) {
266
+ return this.$analytics.send(data !== undefined ? data : {});
267
+ },
268
+ login(data) {
269
+ return this.$analytics.login(data);
270
+ },
271
+ logout() {
272
+ return this.$analytics.logout();
273
+ },
274
+ /**
275
+ * Locale 설정
276
+ * Comment by GOSOMI
277
+ * @date: 2022-06-09
278
+ */
279
+ setLocale(locale) {
280
+ environment_1.Environment.setLocale(locale);
281
+ payment_1.TemplatePayment.templateReload();
282
+ },
283
+ /**
284
+ * 결제창을 닫는다
285
+ * Comment by GOSOMI
286
+ * @date: 2021-12-29
287
+ */
288
+ dismiss(closedEvent = false) {
289
+ return __awaiter(this, void 0, void 0, function* () {
290
+ if (closedEvent) {
291
+ try {
292
+ yield logger_1.EventLogger.sendCloseEvent();
293
+ }
294
+ catch (e) {
295
+ logger_1.Logger.debug('error', e.message);
296
+ }
297
+ }
298
+ payment_2.BootpayPaymentEvent.reject({
299
+ event: 'cancel',
300
+ error_code: 'RC_CLOSE_WINDOW',
301
+ message: '사용자가 결제창을 닫았습니다.'
302
+ });
303
+ });
304
+ },
305
+ getCurrentUUID() {
306
+ return storage_1.SessionStorage.currentUserUUID();
307
+ },
308
+ /**
309
+ * 결제창을 닫는다
310
+ * Comment by GOSOMI
311
+ * @date: 2022-06-14
312
+ */
313
+ destroy() {
314
+ payment_1.TemplatePayment.destroy();
315
+ }
316
+ };
317
+ window.Bootpay = Bootpay;
318
+ exports.default = Bootpay;
319
+ //# sourceMappingURL=bootpay.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bootpay.js","sourceRoot":"","sources":["../../src/bootpay.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,33 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ var __importDefault = (this && this.__importDefault) || function (mod) {
17
+ return (mod && mod.__esModule) ? mod : { "default": mod };
18
+ };
19
+ Object.defineProperty(exports, "__esModule", { value: true });
20
+ exports.BootpayWidget = exports.BootpayEnvironment = exports.BootpaySDK = exports.Bootpay = void 0;
21
+ const bootpay_1 = __importDefault(require("./bootpay"));
22
+ exports.Bootpay = bootpay_1.default;
23
+ const bootpay_sdk_1 = __importDefault(require("./bootpay-sdk"));
24
+ exports.BootpaySDK = bootpay_sdk_1.default;
25
+ const bootpay_environment_1 = __importDefault(require("./bootpay-environment"));
26
+ exports.BootpayEnvironment = bootpay_environment_1.default;
27
+ const bootpay_widget_1 = __importDefault(require("./bootpay-widget"));
28
+ exports.BootpayWidget = bootpay_widget_1.default;
29
+ exports.default = bootpay_1.default;
30
+ __exportStar(require("./models/bootpay-interface"), exports);
31
+ __exportStar(require("./models/bootpay-widget-interface"), exports);
32
+ __exportStar(require("./models/bootpay-sdk-interface"), exports);
33
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA,wDAA+B;AAKtB,kBALF,iBAAO,CAKE;AAJhB,gEAAsC;AAIpB,qBAJX,qBAAU,CAIW;AAH5B,gFAAsD;AAGxB,6BAHvB,6BAAkB,CAGuB;AAFhD,sEAA4C;AAEM,wBAF3C,wBAAa,CAE2C;AAE/D,kBAAe,iBAAO,CAAA;AA8HtB,6DAA0C;AAC1C,oEAAiD;AACjD,iEAA8C"}
@@ -0,0 +1,137 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __importDefault = (this && this.__importDefault) || function (mod) {
12
+ return (mod && mod.__esModule) ? mod : { "default": mod };
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.BootpayAnalytics = exports.BootpayAnalyticsManager = void 0;
16
+ const resource_1 = require("../support/resource");
17
+ const storage_1 = require("../support/storage");
18
+ const logger_1 = require("../support/logger");
19
+ const environment_1 = require("../support/environment");
20
+ const package_json_1 = __importDefault(require("../../package.json"));
21
+ const util_1 = require("../support/util");
22
+ class BootpayAnalyticsManager extends resource_1.Resource {
23
+ constructor() {
24
+ super();
25
+ this.$session = storage_1.SessionStorage;
26
+ }
27
+ /**
28
+ * 인앱을 위한 통계 정보 추가
29
+ * Comment by GOSOMI
30
+ * @date: 2022-05-09
31
+ */
32
+ setAnalyticsData(data) {
33
+ this.$session.setTime(data.time);
34
+ this.$session.setUUID(data.uuid);
35
+ }
36
+ /**
37
+ * 일반적인 통계 데이터를 전송
38
+ * Comment by GOSOMI
39
+ * @date: 2022-03-02
40
+ */
41
+ send(data) {
42
+ return __awaiter(this, void 0, void 0, function* () {
43
+ const url = document.URL;
44
+ // bootpay 도메인으로 실행되는 페이지는 추적을 하지 않는다
45
+ if (url !== undefined && url.search(/bootapi.co.kr/) === -1) {
46
+ const user = this.$session.getUser();
47
+ data.application_id = environment_1.Environment.currentApplicationId(data.application_id);
48
+ data.sk = this.$session.currentSessionKey();
49
+ data.uuid = this.$session.currentUserUUID();
50
+ data.time = this.$session.currentTime();
51
+ data.url = url;
52
+ data.referer = document.referrer !== undefined && (0, util_1.isPresent)(document.referrer) && document.referrer.search(new RegExp(window.location.hostname)) == -1 ? document.referrer : '';
53
+ data.user_id = (user === undefined || (0, util_1.isBlank)(user)) ? undefined : user.id;
54
+ data.items = this.generateItemKeyToVersion1(data.items);
55
+ try {
56
+ const response = yield this.$http.post(environment_1.Environment.toAnalytics(`call?ver=${package_json_1.default.version}`), data);
57
+ if (response.data.status === 200) {
58
+ logger_1.Logger.info('Analytics Common Send', '통계 데이터가 전송되었습니다.');
59
+ return Promise.resolve();
60
+ }
61
+ else {
62
+ logger_1.Logger.warn('Analytics Common Send', `통계 데이터가 전송 실패. ${JSON.stringify(response.data)}`);
63
+ return Promise.reject();
64
+ }
65
+ }
66
+ catch (e) {
67
+ logger_1.Logger.error('Analytics Common Error', `데이터 전송 실패: ${e.message}`);
68
+ return Promise.reject();
69
+ }
70
+ }
71
+ });
72
+ }
73
+ /**
74
+ * User Login 정보 보내기
75
+ * Comment by GOSOMI
76
+ * @date: 2022-03-02
77
+ */
78
+ login(data) {
79
+ return __awaiter(this, void 0, void 0, function* () {
80
+ data.application_id = environment_1.Environment.currentApplicationId(data.application_id);
81
+ if ((0, util_1.isBlank)(data.application_id)) {
82
+ return logger_1.Logger.error('Analytics Params', 'application_id 값을 입력해주세요.');
83
+ }
84
+ if ((0, util_1.isBlank)(data.id)) {
85
+ return logger_1.Logger.error('Analytics Params', 'id 값을 입력해주세요.');
86
+ }
87
+ try {
88
+ const response = yield this.$http.post(environment_1.Environment.toAnalytics(`login?ver=${package_json_1.default.version}`), data);
89
+ const { user_id } = response.data.data;
90
+ // 사용자 정보를 저장한다
91
+ this.$session.setUser({
92
+ id: user_id,
93
+ time: (new Date()).getTime()
94
+ });
95
+ return Promise.resolve();
96
+ }
97
+ catch (e) {
98
+ logger_1.Logger.error('Analytics Login Error', `데이터 전송 실패: ${e.message}`);
99
+ return Promise.reject();
100
+ }
101
+ });
102
+ }
103
+ /**
104
+ * Logout
105
+ * Comment by GOSOMI
106
+ * @date: 2022-03-02
107
+ */
108
+ logout() {
109
+ this.$session.setUser(undefined);
110
+ }
111
+ /**
112
+ * Analytics Key to V1 Filter
113
+ * Comment by GOSOMI
114
+ * @date: 2022-05-09
115
+ */
116
+ generateItemKeyToVersion1(items) {
117
+ if (items !== undefined) {
118
+ return items.map((item) => {
119
+ return {
120
+ cat1: item.cat1,
121
+ cat2: item.cat2,
122
+ cat3: item.cat3,
123
+ item_img: item.img,
124
+ item_name: item.name,
125
+ unique: item.id,
126
+ price: item.price
127
+ };
128
+ });
129
+ }
130
+ else {
131
+ return undefined;
132
+ }
133
+ }
134
+ }
135
+ exports.BootpayAnalyticsManager = BootpayAnalyticsManager;
136
+ exports.BootpayAnalytics = new BootpayAnalyticsManager();
137
+ //# sourceMappingURL=analytics.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"analytics.js","sourceRoot":"","sources":["../../../src/lib/analytics.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,171 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __importDefault = (this && this.__importDefault) || function (mod) {
12
+ return (mod && mod.__esModule) ? mod : { "default": mod };
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.BootpayWidgetWindow = exports.BootpayWidgetWindowManager = void 0;
16
+ const bootpay_manager_1 = require("../support/bootpay-manager");
17
+ const widget_1 = require("./template/widget");
18
+ const widget_2 = require("./event/widget");
19
+ const widget_store_1 = require("../support/widget-store");
20
+ const logger_1 = require("../support/logger");
21
+ const event_1 = require("../support/event");
22
+ const message_1 = require("./locale/message");
23
+ const bootpay_1 = __importDefault(require("../bootpay"));
24
+ class BootpayWidgetWindowManager extends bootpay_manager_1.BootpayManager {
25
+ constructor() {
26
+ super();
27
+ this.message = message_1.BootpayMessage;
28
+ }
29
+ initialize() {
30
+ // 선택된 PG를 초기화한다
31
+ widget_store_1.WidgetStore.setWidgetData({
32
+ el: undefined,
33
+ application_id: undefined,
34
+ price: 0,
35
+ tax_free: 0,
36
+ currency: 'KRW',
37
+ user_token: undefined,
38
+ pg: undefined,
39
+ method: undefined
40
+ });
41
+ }
42
+ render(el, data) {
43
+ if (this.$blank(data === null || data === void 0 ? void 0 : data.price) || data.price < 0) {
44
+ throw new Error('결제금액은 1원 이상을 입력해주세요.');
45
+ }
46
+ if (this.$blank(data === null || data === void 0 ? void 0 : data.application_id)) {
47
+ throw new Error('application_id가 입력되지 않았습니다.');
48
+ }
49
+ this.initialize();
50
+ widget_store_1.WidgetStore.setWidgetData({
51
+ el,
52
+ application_id: data.application_id,
53
+ price: data.price,
54
+ tax_free: data.tax_free,
55
+ currency: data.currency,
56
+ user_token: data.user_token,
57
+ use_only_oopay: data.use_only_oopay,
58
+ external_terms: data.external_terms,
59
+ widget_extra: data.extra,
60
+ use_terms: data.use_terms,
61
+ sandbox: data.sandbox
62
+ });
63
+ widget_1.TemplateWidget.render();
64
+ // 이벤트를 binding 한다
65
+ widget_2.BootpayWidgetEvent.bind();
66
+ }
67
+ update(data) {
68
+ const { price, tax_free, currency, user_token, use_only_oopay, use_terms, sandbox, external_terms } = data;
69
+ widget_store_1.WidgetStore.updateOnProcessing({
70
+ price,
71
+ tax_free,
72
+ currency,
73
+ user_token,
74
+ use_only_oopay,
75
+ use_terms,
76
+ external_terms,
77
+ sandbox
78
+ });
79
+ // user token이 갱신되면 user_token을 업데이트한다
80
+ if (this.$present(user_token) || this.$present(use_only_oopay) || this.$present(use_terms) || this.$present(sandbox)) {
81
+ widget_1.TemplateWidget.postMessage('bootpayWidgetUpdateUserToken', {
82
+ user_token,
83
+ use_only_oopay,
84
+ use_terms,
85
+ external_terms,
86
+ sandbox
87
+ });
88
+ }
89
+ }
90
+ // 결제창을 다시 rendering 한다
91
+ rerender() {
92
+ widget_1.TemplateWidget.rerender();
93
+ }
94
+ destroy() {
95
+ widget_1.TemplateWidget.destroy();
96
+ }
97
+ selectPayment(pg, method, wallet_id, terms = false, select_terms, extra) {
98
+ widget_store_1.WidgetStore.setPayment(pg, method, wallet_id, terms, select_terms, extra);
99
+ logger_1.Logger.debug('selectPayment', `pg: ${pg}, method: ${method}, wallet_id: ${wallet_id}, terms: ${terms}, select_terms: ${JSON.stringify(select_terms)}, extra: ${JSON.stringify(extra)}`);
100
+ }
101
+ currentTermsCondition() {
102
+ return widget_store_1.WidgetStore.selectTerms;
103
+ }
104
+ /**
105
+ * 부트페이 결제 요청을 한다
106
+ * Comment by GOSOMI
107
+ * @date: 2023-06-21
108
+ */
109
+ requestPayment(data) {
110
+ return __awaiter(this, void 0, void 0, function* () {
111
+ if (this.$blank(widget_store_1.WidgetStore.pg) || this.$blank(widget_store_1.WidgetStore.method)) {
112
+ throw new event_1.BootpayEventError({
113
+ event: 'error',
114
+ error_code: 'RC_PG_METHOD_NOT_SELECTED',
115
+ message: this.message.getLocaleMessage('notSelectPayment', 'ko')
116
+ });
117
+ }
118
+ if (!widget_store_1.WidgetStore.termsPassed && widget_store_1.WidgetStore.useTerms) {
119
+ throw new event_1.BootpayEventError({
120
+ event: 'error',
121
+ error_code: 'RC_TERMS_NOT_AGREE',
122
+ message: this.message.getLocaleMessage('termsNotAgree', 'ko')
123
+ });
124
+ }
125
+ if (widget_store_1.WidgetStore.method === 'OOPAY' && widget_store_1.WidgetStore.walletId === undefined) {
126
+ throw new event_1.BootpayEventError({
127
+ event: 'error',
128
+ error_code: 'RC_OOPAY_NEED_SELECT_WALLET',
129
+ message: this.message.getLocaleMessage('notSelectOOPay', 'ko')
130
+ });
131
+ }
132
+ data.application_id = widget_store_1.WidgetStore.applicationId;
133
+ data.price = widget_store_1.WidgetStore.price;
134
+ data.tax_free = widget_store_1.WidgetStore.taxFree;
135
+ data.currency = widget_store_1.WidgetStore.currency;
136
+ data.pg = widget_store_1.WidgetStore.pg;
137
+ data.method = widget_store_1.WidgetStore.method;
138
+ data.wallet_id = widget_store_1.WidgetStore.walletId;
139
+ data.terms = widget_store_1.WidgetStore.selectTerms;
140
+ data.widget_sandbox = widget_store_1.WidgetStore.sandbox;
141
+ data.extra = this.mergeExtraOnStore(data.extra);
142
+ data.widget = 1;
143
+ return bootpay_1.default.requestPayment(data);
144
+ });
145
+ }
146
+ /**
147
+ * Merge Store in Extra Value
148
+ * Comment by GOSOMI
149
+ * @date: 2023-11-17
150
+ */
151
+ mergeExtraOnStore(extra) {
152
+ if (extra === undefined) {
153
+ return widget_store_1.WidgetStore.extra;
154
+ }
155
+ else {
156
+ if (widget_store_1.WidgetStore.extra !== undefined) {
157
+ Object.keys(widget_store_1.WidgetStore.extra).forEach((key) => {
158
+ // @ts-ignore
159
+ extra[key] = widget_store_1.WidgetStore.extra[key];
160
+ });
161
+ }
162
+ return extra;
163
+ }
164
+ }
165
+ isRendered() {
166
+ return widget_1.TemplateWidget.isRendered;
167
+ }
168
+ }
169
+ exports.BootpayWidgetWindowManager = BootpayWidgetWindowManager;
170
+ exports.BootpayWidgetWindow = new BootpayWidgetWindowManager();
171
+ //# sourceMappingURL=bootpay-widget.js.map