@bootpay/client-js 5.0.0-beta.5 → 5.0.0-beta.7

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 (109) 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-sdk.js +243 -0
  5. package/dist/src/bootpay-sdk.js.map +1 -0
  6. package/{bootpay-widget.d.ts → dist/src/bootpay-widget.d.ts} +1 -1
  7. package/dist/src/bootpay-widget.js +83 -0
  8. package/dist/src/bootpay-widget.js.map +1 -0
  9. package/dist/src/bootpay.js +321 -0
  10. package/dist/src/bootpay.js.map +1 -0
  11. package/dist/src/index.d.ts +77 -0
  12. package/dist/src/index.js +33 -0
  13. package/dist/src/index.js.map +1 -0
  14. package/dist/src/lib/analytics.js +137 -0
  15. package/dist/src/lib/analytics.js.map +1 -0
  16. package/dist/src/lib/bootpay-widget.js +171 -0
  17. package/dist/src/lib/bootpay-widget.js.map +1 -0
  18. package/dist/src/lib/bootpay.js +496 -0
  19. package/dist/src/lib/bootpay.js.map +1 -0
  20. package/{lib → dist/src/lib}/event/payment.d.ts +1 -2
  21. package/dist/src/lib/event/payment.js +215 -0
  22. package/dist/src/lib/event/payment.js.map +1 -0
  23. package/dist/src/lib/event/polling.js +42 -0
  24. package/dist/src/lib/event/polling.js.map +1 -0
  25. package/dist/src/lib/event/user-token.js +51 -0
  26. package/dist/src/lib/event/user-token.js.map +1 -0
  27. package/dist/src/lib/event/widget.js +90 -0
  28. package/dist/src/lib/event/widget.js.map +1 -0
  29. package/dist/src/lib/locale/message.js +110 -0
  30. package/dist/src/lib/locale/message.js.map +1 -0
  31. package/dist/src/lib/template/oopay.js +66 -0
  32. package/dist/src/lib/template/oopay.js.map +1 -0
  33. package/dist/src/lib/template/payment.js +488 -0
  34. package/dist/src/lib/template/payment.js.map +1 -0
  35. package/dist/src/lib/template/user-token.js +281 -0
  36. package/dist/src/lib/template/user-token.js.map +1 -0
  37. package/dist/src/lib/template/widget.js +78 -0
  38. package/dist/src/lib/template/widget.js.map +1 -0
  39. package/dist/src/models/bootpay-interface.js +3 -0
  40. package/dist/src/models/bootpay-interface.js.map +1 -0
  41. package/dist/src/models/bootpay-sdk-interface.js +3 -0
  42. package/dist/src/models/bootpay-sdk-interface.js.map +1 -0
  43. package/dist/src/models/bootpay-widget-interface.js +3 -0
  44. package/dist/src/models/bootpay-widget-interface.js.map +1 -0
  45. package/dist/src/models/const.js +15 -0
  46. package/dist/src/models/const.js.map +1 -0
  47. package/dist/src/support/alfred-progress/index.js +64 -0
  48. package/dist/src/support/alfred-progress/index.js.map +1 -0
  49. package/{support → dist/src/support}/bootpay-manager.d.ts +2 -2
  50. package/dist/src/support/bootpay-manager.js +39 -0
  51. package/dist/src/support/bootpay-manager.js.map +1 -0
  52. package/{support → dist/src/support}/environment.d.ts +1 -0
  53. package/dist/src/support/environment.js +89 -0
  54. package/dist/src/support/environment.js.map +1 -0
  55. package/dist/src/support/event.js +133 -0
  56. package/dist/src/support/event.js.map +1 -0
  57. package/dist/src/support/logger.js +130 -0
  58. package/dist/src/support/logger.js.map +1 -0
  59. package/dist/src/support/resource.js +125 -0
  60. package/dist/src/support/resource.js.map +1 -0
  61. package/dist/src/support/storage.js +191 -0
  62. package/dist/src/support/storage.js.map +1 -0
  63. package/dist/src/support/template-manager.js +47 -0
  64. package/dist/src/support/template-manager.js.map +1 -0
  65. package/dist/src/support/util.js +36 -0
  66. package/dist/src/support/util.js.map +1 -0
  67. package/dist/src/support/widget-store.js +73 -0
  68. package/dist/src/support/widget-store.js.map +1 -0
  69. package/package.json +4 -4
  70. package/tsconfig-esnext.json +39 -0
  71. package/tsconfig.json +37 -0
  72. package/bootpay-environment.js +0 -1
  73. package/bootpay-sdk.js +0 -2
  74. package/bootpay-sdk.js.LICENSE.txt +0 -1
  75. package/bootpay-widget.js +0 -2
  76. package/bootpay-widget.js.LICENSE.txt +0 -1
  77. package/bootpay.js +0 -2
  78. package/bootpay.js.LICENSE.txt +0 -1
  79. package/dist/bootpay.d.ts +0 -2
  80. package/index.d.ts +0 -6
  81. package/index.js +0 -8
  82. package/test/index.d.ts +0 -1
  83. package/test/moduleRequire.d.ts +0 -1
  84. /package/{bootpay-environment.d.ts → dist/src/bootpay-environment.d.ts} +0 -0
  85. /package/{bootpay-sdk.d.ts → dist/src/bootpay-sdk.d.ts} +0 -0
  86. /package/{bootpay.d.ts → dist/src/bootpay.d.ts} +0 -0
  87. /package/{lib → dist/src/lib}/analytics.d.ts +0 -0
  88. /package/{lib → dist/src/lib}/bootpay-widget.d.ts +0 -0
  89. /package/{lib → dist/src/lib}/bootpay.d.ts +0 -0
  90. /package/{lib → dist/src/lib}/event/polling.d.ts +0 -0
  91. /package/{lib → dist/src/lib}/event/user-token.d.ts +0 -0
  92. /package/{lib → dist/src/lib}/event/widget.d.ts +0 -0
  93. /package/{lib → dist/src/lib}/locale/message.d.ts +0 -0
  94. /package/{lib → dist/src/lib}/template/oopay.d.ts +0 -0
  95. /package/{lib → dist/src/lib}/template/payment.d.ts +0 -0
  96. /package/{lib → dist/src/lib}/template/user-token.d.ts +0 -0
  97. /package/{lib → dist/src/lib}/template/widget.d.ts +0 -0
  98. /package/{models → dist/src/models}/bootpay-interface.d.ts +0 -0
  99. /package/{models → dist/src/models}/bootpay-sdk-interface.d.ts +0 -0
  100. /package/{models → dist/src/models}/bootpay-widget-interface.d.ts +0 -0
  101. /package/{models → dist/src/models}/const.d.ts +0 -0
  102. /package/{support → dist/src/support}/alfred-progress/index.d.ts +0 -0
  103. /package/{support → dist/src/support}/event.d.ts +0 -0
  104. /package/{support → dist/src/support}/logger.d.ts +0 -0
  105. /package/{support → dist/src/support}/resource.d.ts +0 -0
  106. /package/{support → dist/src/support}/storage.d.ts +0 -0
  107. /package/{support → dist/src/support}/template-manager.d.ts +0 -0
  108. /package/{support → dist/src/support}/util.d.ts +0 -0
  109. /package/{support → dist/src/support}/widget-store.d.ts +0 -0
@@ -0,0 +1,321 @@
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
+ require("core-js/es/promise");
13
+ require("regenerator-runtime/runtime");
14
+ const const_1 = require("./models/const");
15
+ const environment_1 = require("./support/environment");
16
+ const bootpay_1 = require("./lib/bootpay");
17
+ const alfred_progress_1 = require("./support/alfred-progress");
18
+ const util_1 = require("./support/util");
19
+ const logger_1 = require("./support/logger");
20
+ const payment_1 = require("./lib/template/payment");
21
+ const payment_2 = require("./lib/event/payment");
22
+ const storage_1 = require("./support/storage");
23
+ const analytics_1 = require("./lib/analytics");
24
+ /**
25
+ * IE 11 Event
26
+ * Comment by GOSOMI
27
+ * @date: 2021-12-29
28
+ */
29
+ (function () {
30
+ if (typeof window.CustomEvent === "function")
31
+ return false;
32
+ function CustomEvent(event, params) {
33
+ params = params || { bubbles: false, cancelable: false, detail: undefined };
34
+ let evt = document.createEvent('CustomEvent');
35
+ evt.initCustomEvent(event, params.bubbles, params.cancelable, params.detail);
36
+ return evt;
37
+ }
38
+ CustomEvent.prototype = window.Event.prototype;
39
+ window.CustomEvent = CustomEvent;
40
+ })();
41
+ const Bootpay = {
42
+ $payment: bootpay_1.BootpayRequestPayment,
43
+ $analytics: analytics_1.BootpayAnalytics,
44
+ $environment: environment_1.Environment,
45
+ /**
46
+ * 결제 요청
47
+ * Comment by GOSOMI
48
+ * @date: 2021-05-11
49
+ * @param data: RequestPaymentModel
50
+ * @returns Promise<any>
51
+ */
52
+ requestPayment(data) {
53
+ return __awaiter(this, void 0, void 0, function* () {
54
+ return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () {
55
+ try {
56
+ const response = yield this.$payment.requestPayment(data);
57
+ setTimeout(() => {
58
+ resolve(response);
59
+ if (['done', 'issued'].indexOf(response.event) > -1) {
60
+ this.$payment.eventDone(response);
61
+ }
62
+ }, 100);
63
+ }
64
+ catch (e) {
65
+ setTimeout(() => {
66
+ reject(this.errorHandler(e));
67
+ }, 100);
68
+ }
69
+ }));
70
+ });
71
+ },
72
+ /**
73
+ * 결제 승인 요청
74
+ * Comment by GOSOMI
75
+ * @date: 2021-05-20
76
+ */
77
+ confirm() {
78
+ return __awaiter(this, void 0, void 0, function* () {
79
+ return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () {
80
+ try {
81
+ const response = yield this.$payment.confirm();
82
+ setTimeout(() => {
83
+ resolve(response);
84
+ this.$payment.eventDone(response);
85
+ }, 100);
86
+ }
87
+ catch (e) {
88
+ setTimeout(() => {
89
+ return reject(this.errorHandler(e));
90
+ }, 100);
91
+ }
92
+ }));
93
+ });
94
+ },
95
+ /**
96
+ * 정기결제창 요청
97
+ * Comment by GOSOMI
98
+ * @date: 2021-10-28
99
+ * @param data: RequestSubscriptionModel
100
+ */
101
+ requestSubscription(data) {
102
+ return __awaiter(this, void 0, void 0, function* () {
103
+ return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () {
104
+ try {
105
+ const response = yield this.$payment.requestSubscription(data);
106
+ resolve(response);
107
+ this.$payment.eventDone(response);
108
+ }
109
+ catch (e) {
110
+ return reject(this.errorHandler(e));
111
+ }
112
+ }));
113
+ });
114
+ },
115
+ /**
116
+ * 본인인증 요청
117
+ * Comment by GOSOMI
118
+ * @date: 2021-12-06
119
+ * @param data: RequestAuthenticationModel
120
+ */
121
+ requestAuthentication(data) {
122
+ return __awaiter(this, void 0, void 0, function* () {
123
+ return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () {
124
+ try {
125
+ const response = yield this.$payment.requestAuthentication(data);
126
+ resolve(response);
127
+ this.$payment.eventDone(response);
128
+ }
129
+ catch (e) {
130
+ return reject(this.errorHandler(e));
131
+ }
132
+ }));
133
+ });
134
+ },
135
+ requestPaymentUrl(data) {
136
+ return __awaiter(this, void 0, void 0, function* () {
137
+ return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () {
138
+ try {
139
+ const response = yield this.$payment.requestPaymentUrl(data);
140
+ setTimeout(() => {
141
+ resolve(response);
142
+ if (['done', 'issued'].indexOf(response.event) > -1) {
143
+ this.$payment.eventDone(response);
144
+ }
145
+ }, 100);
146
+ }
147
+ catch (e) {
148
+ setTimeout(() => {
149
+ reject(this.errorHandler(e));
150
+ }, 100);
151
+ }
152
+ }));
153
+ });
154
+ },
155
+ /**
156
+ * 환경 설정
157
+ * Comment by GOSOMI
158
+ * @date: 2021-05-11
159
+ * @param env: string
160
+ * @param hostname: string | undefined
161
+ * @returns void
162
+ */
163
+ setEnvironmentMode(env, hostname = undefined) {
164
+ this.$environment.set(env);
165
+ if (hostname !== undefined) {
166
+ this.$environment.setDevelopmentHost(hostname);
167
+ }
168
+ },
169
+ /**
170
+ * ApplicationID를 지정
171
+ * Comment by GOSOMI
172
+ * @date: 2022-03-02
173
+ */
174
+ setApplicationId(applicationId) {
175
+ return this.$environment.setApplicationId(applicationId);
176
+ },
177
+ /**
178
+ * SDK 버전과 SDK 이름 기록
179
+ * Comment by GOSOMI
180
+ * @date: 2022-05-15
181
+ */
182
+ setVersion(version, name) {
183
+ return this.$environment.setVersion(version, name);
184
+ },
185
+ /**
186
+ * DeviceType을 설정
187
+ * Comment by GOSOMI
188
+ * @date: 2021-12-23
189
+ * @param deviceType: string
190
+ * @returns number
191
+ */
192
+ setDevice(deviceType) {
193
+ switch (deviceType) {
194
+ case 'IOS':
195
+ this.$payment.platformType = const_1.Const.PLATFORM.IOS;
196
+ break;
197
+ case 'ANDROID':
198
+ this.$payment.platformType = const_1.Const.PLATFORM.ANDROID;
199
+ break;
200
+ default:
201
+ this.$payment.platformType = const_1.Const.PLATFORM.JS;
202
+ }
203
+ return this.$payment.platformType;
204
+ },
205
+ /**
206
+ * 이벤트 오류를 받아서 처리한다
207
+ * Comment by GOSOMI
208
+ * @date: 2021-05-12
209
+ * @param e: any
210
+ */
211
+ errorHandler(e) {
212
+ let response = undefined;
213
+ // 일단 오류가 나면 Progress를 감춘다
214
+ alfred_progress_1.AlfredProgress.hideProgress();
215
+ switch (e.name) {
216
+ case 'BootpayEventError':
217
+ response = e.eventMessage;
218
+ break;
219
+ default:
220
+ if ((0, util_1.isPresent)(e.event)) {
221
+ response = e;
222
+ }
223
+ else {
224
+ throw e;
225
+ // response = {
226
+ // event: 'error',
227
+ // error_code: 10,
228
+ // message: e.message
229
+ // }
230
+ }
231
+ }
232
+ return response;
233
+ },
234
+ /**
235
+ * 팝업을 준비한다
236
+ * Comment by GOSOMI
237
+ * @date: 2021-06-23
238
+ */
239
+ readyToPopup() {
240
+ payment_1.TemplatePayment.readyToPopup();
241
+ },
242
+ /**
243
+ * 로그 레벨을 설정한다
244
+ * Comment by GOSOMI
245
+ * @date: 2021-05-12
246
+ * @param level: number
247
+ * @returns void
248
+ */
249
+ setLogLevel(level) {
250
+ logger_1.Logger.setLogLevel(level);
251
+ },
252
+ /**
253
+ * UUID 설정
254
+ * Comment by GOSOMI
255
+ * @date: 2021-12-22
256
+ * @param uuid: string
257
+ * @returns string
258
+ */
259
+ setUUID(uuid) {
260
+ return storage_1.SessionStorage.setUUID(uuid);
261
+ },
262
+ /**
263
+ * 페이지 통계 데이터를 전송
264
+ * Comment by GOSOMI
265
+ * @date: 2022-03-02
266
+ */
267
+ send(data = undefined) {
268
+ return this.$analytics.send(data !== undefined ? data : {});
269
+ },
270
+ login(data) {
271
+ return this.$analytics.login(data);
272
+ },
273
+ logout() {
274
+ return this.$analytics.logout();
275
+ },
276
+ /**
277
+ * Locale 설정
278
+ * Comment by GOSOMI
279
+ * @date: 2022-06-09
280
+ */
281
+ setLocale(locale) {
282
+ environment_1.Environment.setLocale(locale);
283
+ payment_1.TemplatePayment.templateReload();
284
+ },
285
+ /**
286
+ * 결제창을 닫는다
287
+ * Comment by GOSOMI
288
+ * @date: 2021-12-29
289
+ */
290
+ dismiss(closedEvent = false) {
291
+ return __awaiter(this, void 0, void 0, function* () {
292
+ if (closedEvent) {
293
+ try {
294
+ yield logger_1.EventLogger.sendCloseEvent();
295
+ }
296
+ catch (e) {
297
+ logger_1.Logger.debug('error', e.message);
298
+ }
299
+ }
300
+ payment_2.BootpayPaymentEvent.reject({
301
+ event: 'cancel',
302
+ error_code: 'RC_CLOSE_WINDOW',
303
+ message: '사용자가 결제창을 닫았습니다.'
304
+ });
305
+ });
306
+ },
307
+ getCurrentUUID() {
308
+ return storage_1.SessionStorage.currentUserUUID();
309
+ },
310
+ /**
311
+ * 결제창을 닫는다
312
+ * Comment by GOSOMI
313
+ * @date: 2022-06-14
314
+ */
315
+ destroy() {
316
+ payment_1.TemplatePayment.destroy();
317
+ }
318
+ };
319
+ window.Bootpay = Bootpay;
320
+ exports.default = Bootpay;
321
+ //# 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,77 @@
1
+ import Bootpay from './bootpay';
2
+ import BootpaySDK from './bootpay-sdk';
3
+ import BootpayEnvironment from "./bootpay-environment";
4
+ import BootpayWidget from './bootpay-widget';
5
+ export { Bootpay, BootpaySDK, BootpayEnvironment, BootpayWidget };
6
+ export default Bootpay;
7
+ import { BootpayRequestPaymentManager } from './lib/bootpay';
8
+ import { BootpayAnalyticsManager } from './lib/analytics';
9
+ import { EnvironmentInterface } from './support/environment';
10
+ import { BootpayAnalyticsModel, BootpayAnalyticsUserModel, RequestAuthenticationModel, RequestPaymentModel, RequestPaymentUrlModel, RequestSubscriptionModel } from './models/bootpay-interface';
11
+ import { RequestBootpayWidgetModel, ResponseBootpayWidgetTermsModel } from './models/bootpay-widget-interface';
12
+ import { UserTokenTemplateManager } from './lib/template/user-token';
13
+ import { BiometricDataModel, RequestPaymentWalletModel } from './models/bootpay-sdk-interface';
14
+ interface BootpayInterface {
15
+ $payment: BootpayRequestPaymentManager;
16
+ $analytics: BootpayAnalyticsManager;
17
+ $environment: EnvironmentInterface;
18
+ requestPayment(data: RequestPaymentModel): Promise<any>;
19
+ requestSubscription(data: RequestSubscriptionModel): Promise<any>;
20
+ requestAuthentication(data: RequestAuthenticationModel): Promise<any>;
21
+ requestPaymentUrl(data: RequestPaymentUrlModel): Promise<any>;
22
+ confirm(): Promise<any>;
23
+ errorHandler(data: any): any;
24
+ setEnvironmentMode(env: 'development' | 'stage' | 'production', hostname: string | undefined | null): void;
25
+ setApplicationId(applicationId: string | undefined): string | undefined;
26
+ setVersion(version: string, name: string): void;
27
+ setLogLevel(level: number): void;
28
+ setUUID(uuid: string): void;
29
+ setDevice(deviceType: string): number;
30
+ send(data: BootpayAnalyticsModel): Promise<any>;
31
+ login(data: BootpayAnalyticsUserModel): Promise<any>;
32
+ logout(): void;
33
+ readyToPopup(): void;
34
+ getCurrentUUID(): string | undefined;
35
+ setLocale(locale: string): void;
36
+ dismiss(closedEvent: boolean): void;
37
+ destroy(): void;
38
+ }
39
+ interface BootpayWidgetInterface {
40
+ render(el: string, data: RequestBootpayWidgetModel): void;
41
+ rerender(): void;
42
+ setEnvironmentMode(env: 'development' | 'stage' | 'production', hostname: string | undefined | null): void;
43
+ requestPayment(data: RequestPaymentModel): Promise<any>;
44
+ update(data: RequestBootpayWidgetModel): void;
45
+ errorHandler(e: any): any;
46
+ currentTermsCondition(): ResponseBootpayWidgetTermsModel[];
47
+ destroy(): void;
48
+ isRendered(): boolean;
49
+ }
50
+ interface BootpaySdkInterface {
51
+ $templateUserToken: UserTokenTemplateManager;
52
+ errorHandler(data: any): any;
53
+ setEnvironmentMode(env: string): void;
54
+ setLogLevel(level: number): void;
55
+ setUUID(uuid: string): void;
56
+ setDevice(deviceType: string): number;
57
+ requestPasswordToken(userToken: string): Promise<string>;
58
+ requestChangePassword(userToken: string): Promise<string>;
59
+ requestAddCard(userToken: string): Promise<any>;
60
+ wallets(userToken: string): Promise<any>;
61
+ destroyWallet(data: RequestPaymentWalletModel): Promise<any>;
62
+ createBiometricAuthenticate(biometricData: BiometricDataModel): Promise<any>;
63
+ destroyBiometricAuthenticate(biometricData: BiometricDataModel): Promise<any>;
64
+ requestWalletPayment(data: RequestPaymentWalletModel): Promise<any>;
65
+ dismiss(): void;
66
+ }
67
+ declare global {
68
+ interface Window {
69
+ Bootpay: BootpayInterface;
70
+ BootpayWidget: BootpayWidgetInterface;
71
+ BootpaySDK: BootpaySdkInterface;
72
+ CustomEvent: any;
73
+ }
74
+ }
75
+ export * from './models/bootpay-interface';
76
+ export * from './models/bootpay-widget-interface';
77
+ export * from './models/bootpay-sdk-interface';
@@ -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":";;;;;;;;;;;;;;;AAAA,kDAA8C;AAC9C,gDAAgG;AAMhG,8CAA0C;AAC1C,wDAAoD;AACpD,sEAAwC;AACxC,0CAAoD;AAGpD,MAAa,uBAAwB,SAAQ,mBAAQ;IAGjD;QACI,KAAK,EAAE,CAAA;QACP,IAAI,CAAC,QAAQ,GAAG,wBAAc,CAAA;IAClC,CAAC;IAED;;;;OAIG;IACH,gBAAgB,CAAC,IAA+B;QAC5C,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAChC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACpC,CAAC;IAED;;;;OAIG;IACG,IAAI,CAAC,IAA2B;;YAClC,MAAM,GAAG,GAAW,QAAQ,CAAC,GAAa,CAAA;YAC1C,qCAAqC;YACrC,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,CAAC,MAAM,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,EAAE;gBACzD,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAA;gBACpC,IAAI,CAAC,cAAc,GAAG,yBAAW,CAAC,oBAAoB,CAAC,IAAI,CAAC,cAAc,CAAC,CAAA;gBAC3E,IAAI,CAAC,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC,iBAAiB,EAAE,CAAA;gBAC3C,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,eAAe,EAAE,CAAA;gBAC3C,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAA;gBACvC,IAAI,CAAC,GAAG,GAAG,GAAG,CAAA;gBACd,IAAI,CAAC,OAAO,GAAG,QAAQ,CAAC,QAAQ,KAAK,SAAS,IAAI,IAAA,gBAAS,EAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAA;gBAC/K,IAAI,CAAC,OAAO,GAAG,CAAC,IAAI,KAAK,SAAS,IAAI,IAAA,cAAO,EAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAA;gBAC1E,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,KAAkC,CAAC,CAAA;gBACpF,IAAI;oBACA,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CAClC,yBAAW,CAAC,WAAW,CAAC,YAAa,sBAAO,CAAC,OAAQ,EAAE,CAAC,EACxD,IAAI,CACP,CAAA;oBACD,IAAI,QAAQ,CAAC,IAAI,CAAC,MAAM,KAAK,GAAG,EAAE;wBAC9B,eAAM,CAAC,IAAI,CAAC,uBAAuB,EAAE,kBAAkB,CAAC,CAAA;wBACxD,OAAO,OAAO,CAAC,OAAO,EAAE,CAAA;qBAC3B;yBAAM;wBACH,eAAM,CAAC,IAAI,CAAC,uBAAuB,EAAE,kBAAmB,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAE,EAAE,CAAC,CAAA;wBACzF,OAAO,OAAO,CAAC,MAAM,EAAE,CAAA;qBAC1B;iBACJ;gBAAC,OAAO,CAAM,EAAE;oBACb,eAAM,CAAC,KAAK,CAAC,wBAAwB,EAAE,cAAe,CAAC,CAAC,OAAQ,EAAE,CAAC,CAAA;oBACnE,OAAO,OAAO,CAAC,MAAM,EAAE,CAAA;iBAC1B;aACJ;QACL,CAAC;KAAA;IAED;;;;OAIG;IACG,KAAK,CAAC,IAA+B;;YACvC,IAAI,CAAC,cAAc,GAAG,yBAAW,CAAC,oBAAoB,CAAC,IAAI,CAAC,cAAc,CAAC,CAAA;YAC3E,IAAI,IAAA,cAAO,EAAC,IAAI,CAAC,cAAc,CAAC,EAAE;gBAC9B,OAAO,eAAM,CAAC,KAAK,CAAC,kBAAkB,EAAE,2BAA2B,CAAC,CAAA;aACvE;YACD,IAAI,IAAA,cAAO,EAAC,IAAI,CAAC,EAAE,CAAC,EAAE;gBAClB,OAAO,eAAM,CAAC,KAAK,CAAC,kBAAkB,EAAE,eAAe,CAAC,CAAA;aAC3D;YACD,IAAI;gBACA,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CAClC,yBAAW,CAAC,WAAW,CAAC,aAAc,sBAAO,CAAC,OAAQ,EAAE,CAAC,EACzD,IAAI,CACP,CAAA;gBACD,MAAM,EAAE,OAAO,EAAE,GAAG,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAA;gBACtC,eAAe;gBACf,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;oBAClB,EAAE,EAAE,OAAO;oBACX,IAAI,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE;iBAC/B,CAAC,CAAA;gBACF,OAAO,OAAO,CAAC,OAAO,EAAE,CAAA;aAC3B;YAAC,OAAO,CAAM,EAAE;gBACb,eAAM,CAAC,KAAK,CAAC,uBAAuB,EAAE,cAAe,CAAC,CAAC,OAAQ,EAAE,CAAC,CAAA;gBAClE,OAAO,OAAO,CAAC,MAAM,EAAE,CAAA;aAC1B;QACL,CAAC;KAAA;IAED;;;;OAIG;IACH,MAAM;QACF,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,CAAA;IACpC,CAAC;IAED;;;;OAIG;IACH,yBAAyB,CAAC,KAAgC;QACtD,IAAI,KAAK,KAAK,SAAS,EAAE;YACrB,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;gBACtB,OAAO;oBACH,IAAI,EAAE,IAAI,CAAC,IAAI;oBACf,IAAI,EAAE,IAAI,CAAC,IAAI;oBACf,IAAI,EAAE,IAAI,CAAC,IAAI;oBACf,QAAQ,EAAE,IAAI,CAAC,GAAG;oBAClB,SAAS,EAAE,IAAI,CAAC,IAAI;oBACpB,MAAM,EAAE,IAAI,CAAC,EAAE;oBACf,KAAK,EAAE,IAAI,CAAC,KAAK;iBACQ,CAAA;YACjC,CAAC,CAAC,CAAA;SACL;aAAM;YACH,OAAO,SAAS,CAAA;SACnB;IACL,CAAC;CACJ;AArHD,0DAqHC;AAEY,QAAA,gBAAgB,GAAG,IAAI,uBAAuB,EAAE,CAAA"}