sales-frontend-api 0.0.97 → 0.0.98
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/dist/method.cjs +21 -70
- package/dist/method.cjs.map +1 -1
- package/dist/method.js +22 -71
- package/dist/method.js.map +1 -1
- package/package.json +8 -8
package/dist/method.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Bridge } from 'sales-frontend-bridge';
|
|
2
|
-
import { getDudApiHostNameFromEnvironment, getExt, isDspApp, getDspExecutionEnvironment } from 'sales-frontend-utils';
|
|
2
|
+
import { getDspApiHostNameFromEnvironment, getDudApiHostNameFromEnvironment, getExt, isDspApp, getDspExecutionEnvironment } from 'sales-frontend-utils';
|
|
3
3
|
import axios from 'axios';
|
|
4
4
|
import { addRequestLog, addResponseLog, addErrorLog } from 'sales-frontend-debug';
|
|
5
5
|
import { useClientSessionStore } from 'sales-frontend-stores';
|
|
@@ -309,11 +309,8 @@ var getTestMethod = async ({ id, config, setupFn }) => {
|
|
|
309
309
|
const res = await httpClient.api.get(testAPI);
|
|
310
310
|
return res.data;
|
|
311
311
|
};
|
|
312
|
-
|
|
313
|
-
// src/http-methods/search-modal/address/address-search.service.ts
|
|
314
312
|
var getAddressListMethod = async (params, config) => {
|
|
315
|
-
const
|
|
316
|
-
const apiUrl = `${serviceCode}/api/dis/v1/get/codes/address-list`;
|
|
313
|
+
const apiUrl = `${getDspApiHostNameFromEnvironment("dis")}/v1/get/codes/address-list`;
|
|
317
314
|
const httpClient = new HttpClientAxios(config);
|
|
318
315
|
const res = await httpClient.api.post(apiUrl, params);
|
|
319
316
|
return res.data;
|
|
@@ -329,11 +326,8 @@ var useSearchAddressQuery = (params, options, config) => {
|
|
|
329
326
|
...options
|
|
330
327
|
});
|
|
331
328
|
};
|
|
332
|
-
|
|
333
|
-
// src/http-methods/search-modal/address/postal-code.service.ts
|
|
334
329
|
var getAddressPostalCodeMethod = async (params, config) => {
|
|
335
|
-
const
|
|
336
|
-
const apiUrl = `${serviceCode}/api/dis/v1/get/codes/address/postal-code`;
|
|
330
|
+
const apiUrl = `${getDspApiHostNameFromEnvironment("dis")}/v1/get/codes/address/postal-code`;
|
|
337
331
|
const httpClient = new HttpClientAxios(config);
|
|
338
332
|
const res = await httpClient.api.post(apiUrl, params);
|
|
339
333
|
return res.data;
|
|
@@ -349,11 +343,8 @@ var useSearchPostalCodeQuery = (params, options, config) => {
|
|
|
349
343
|
...options
|
|
350
344
|
});
|
|
351
345
|
};
|
|
352
|
-
|
|
353
|
-
// src/http-methods/search-modal/address/address-standardization.service.ts
|
|
354
346
|
var getAddressStandardizationListMethod = async (params, config) => {
|
|
355
|
-
const
|
|
356
|
-
const apiUrl = `${serviceCode}/api/dis/v1/get/codes/address-standardization-list`;
|
|
347
|
+
const apiUrl = `${getDspApiHostNameFromEnvironment("dis")}/v1/get/codes/address-standardization-list`;
|
|
357
348
|
const httpClient = new HttpClientAxios(config);
|
|
358
349
|
const res = await httpClient.api.post(apiUrl, params);
|
|
359
350
|
return res.data;
|
|
@@ -369,18 +360,14 @@ var useSearchAddressStandardizationQuery = (params, options, config) => {
|
|
|
369
360
|
...options
|
|
370
361
|
});
|
|
371
362
|
};
|
|
372
|
-
|
|
373
|
-
// src/http-methods/search-modal/occupation/occupation-search.service.ts
|
|
374
363
|
var getOccupationListMethod = async (params, config) => {
|
|
375
|
-
const
|
|
376
|
-
const apiUrl = `${serviceCode}/api/dis/v1/get/codes/occupation-list`;
|
|
364
|
+
const apiUrl = `${getDspApiHostNameFromEnvironment("dis")}/v1/get/codes/occupation-list`;
|
|
377
365
|
const httpClient = new HttpClientAxios(config);
|
|
378
366
|
const res = await httpClient.api.post(apiUrl, params);
|
|
379
367
|
return res.data;
|
|
380
368
|
};
|
|
381
369
|
var getOccupationDetailMethod = async (params, config) => {
|
|
382
|
-
const
|
|
383
|
-
const apiUrl = `${serviceCode}/api/dis/v1/get/codes/occupation/detail`;
|
|
370
|
+
const apiUrl = `${getDspApiHostNameFromEnvironment("dis")}/v1/get/codes/occupation/detail`;
|
|
384
371
|
const httpClient = new HttpClientAxios(config);
|
|
385
372
|
const res = await httpClient.api.post(apiUrl, params);
|
|
386
373
|
return res.data;
|
|
@@ -407,11 +394,8 @@ var useSearchOccupationDetailQuery = (params, options, config) => {
|
|
|
407
394
|
...options
|
|
408
395
|
});
|
|
409
396
|
};
|
|
410
|
-
|
|
411
|
-
// src/http-methods/search-modal/vehicle/vehicle-search.service.ts
|
|
412
397
|
var getVehicleListMethod = async (config) => {
|
|
413
|
-
const
|
|
414
|
-
const apiUrl = `${serviceCode}/api/dis/v1/get/codes/vehicle-type-list`;
|
|
398
|
+
const apiUrl = `${getDspApiHostNameFromEnvironment("dis")}/v1/get/codes/vehicle-type-list`;
|
|
415
399
|
const httpClient = new HttpClientAxios(config);
|
|
416
400
|
const res = await httpClient.api.post(apiUrl);
|
|
417
401
|
return res.data;
|
|
@@ -427,11 +411,8 @@ var useSearchVehicleQuery = (options, config) => {
|
|
|
427
411
|
...options
|
|
428
412
|
});
|
|
429
413
|
};
|
|
430
|
-
|
|
431
|
-
// src/http-methods/search-modal/employee/employee-search.service.ts
|
|
432
414
|
var getEmployeeProfileListMethod = async (params, config) => {
|
|
433
|
-
const
|
|
434
|
-
const apiUrl = `${serviceCode}/api/dea/v1/get/participant/profile/employee`;
|
|
415
|
+
const apiUrl = `${getDspApiHostNameFromEnvironment("dea")}/v1/get/participant/profile/employee`;
|
|
435
416
|
const httpClient = new HttpClientAxios(config);
|
|
436
417
|
const res = await httpClient.api.post(apiUrl, params);
|
|
437
418
|
return res.data;
|
|
@@ -447,11 +428,8 @@ var useSearchEmployeeProfileQuery = (params, options, config) => {
|
|
|
447
428
|
...options
|
|
448
429
|
});
|
|
449
430
|
};
|
|
450
|
-
|
|
451
|
-
// src/http-methods/search-modal/organization/organization-search.service.ts
|
|
452
431
|
var getOrganizationProfileListMethod = async (params, config) => {
|
|
453
|
-
const
|
|
454
|
-
const apiUrl = `${serviceCode}/api/dea/v1/get/participant/profile/organization`;
|
|
432
|
+
const apiUrl = `${getDspApiHostNameFromEnvironment("dea")}/v1/get/participant/profile/organization`;
|
|
455
433
|
const httpClient = new HttpClientAxios(config);
|
|
456
434
|
const res = await httpClient.api.post(apiUrl, params);
|
|
457
435
|
return res.data;
|
|
@@ -467,11 +445,8 @@ var useSearchOrganizationQuery = (params, options, config) => {
|
|
|
467
445
|
...options
|
|
468
446
|
});
|
|
469
447
|
};
|
|
470
|
-
|
|
471
|
-
// src/http-methods/search-modal/nationality/nationality-search.service.ts
|
|
472
448
|
var getNationalityListMethod = async (params, config) => {
|
|
473
|
-
const
|
|
474
|
-
const apiUrl = `${serviceCode}/api/dis/v1/get/codes/nationality-list`;
|
|
449
|
+
const apiUrl = `${getDspApiHostNameFromEnvironment("dis")}/v1/get/codes/nationality-list`;
|
|
475
450
|
const httpClient = new HttpClientAxios(config);
|
|
476
451
|
const res = await httpClient.api.post(apiUrl, params);
|
|
477
452
|
return res.data;
|
|
@@ -488,11 +463,8 @@ var useSearchNationalityQuery = (params, options, config) => {
|
|
|
488
463
|
...options
|
|
489
464
|
});
|
|
490
465
|
};
|
|
491
|
-
|
|
492
|
-
// src/http-methods/search-modal/customer-list/customer-list-search.service.ts
|
|
493
466
|
var getCustomerListMethod = async (params, config) => {
|
|
494
|
-
const
|
|
495
|
-
const apiUrl = `${serviceCode}/api/dis/v1/get/customer-list`;
|
|
467
|
+
const apiUrl = `${getDspApiHostNameFromEnvironment("dis")}/v1/get/customer-list`;
|
|
496
468
|
const httpClient = new HttpClientAxios(config);
|
|
497
469
|
const res = await httpClient.api.post(apiUrl, params);
|
|
498
470
|
return res.data;
|
|
@@ -508,11 +480,8 @@ var useSearchCustomerListQuery = (params, options, config) => {
|
|
|
508
480
|
...options
|
|
509
481
|
});
|
|
510
482
|
};
|
|
511
|
-
|
|
512
|
-
// src/http-methods/search-modal/risk-grade/risk-grade-search.service.ts
|
|
513
483
|
var getRiskGradeMethod = async (params, config) => {
|
|
514
|
-
const
|
|
515
|
-
const apiUrl = `${serviceCode}/api/dis/v1/get/codes/risk-grade`;
|
|
484
|
+
const apiUrl = `${getDspApiHostNameFromEnvironment("dis")}/v1/get/codes/risk-grade`;
|
|
516
485
|
const httpClient = new HttpClientAxios(config);
|
|
517
486
|
const res = await httpClient.api.post(apiUrl, params);
|
|
518
487
|
return res.data;
|
|
@@ -528,11 +497,8 @@ var useSearchRiskGradeQuery = (params, options, config) => {
|
|
|
528
497
|
...options
|
|
529
498
|
});
|
|
530
499
|
};
|
|
531
|
-
|
|
532
|
-
// src/http-methods/search-modal/dea-customer-list/dea-customer-list-search.service.ts
|
|
533
500
|
var getDspCustomerListMethod = async (params, config) => {
|
|
534
|
-
const
|
|
535
|
-
const apiUrl = `${serviceCode}/api/dea/v1/get/participant/profile/customer/personal`;
|
|
501
|
+
const apiUrl = `${getDspApiHostNameFromEnvironment("dea")}/v1/get/participant/profile/customer/personal`;
|
|
536
502
|
const httpClient = new HttpClientAxios(config);
|
|
537
503
|
const res = await httpClient.api.post(apiUrl, params);
|
|
538
504
|
return res.data;
|
|
@@ -548,11 +514,8 @@ var useSearchDspCustomerListQuery = (params, options, config) => {
|
|
|
548
514
|
...options
|
|
549
515
|
});
|
|
550
516
|
};
|
|
551
|
-
|
|
552
|
-
// src/http-methods/search-modal/visa/visa-search.service.ts
|
|
553
517
|
var getVisaListMethod = async (config) => {
|
|
554
|
-
const
|
|
555
|
-
const apiUrl = `${serviceCode}/api/dis/v1/get/codes/visa-status-list`;
|
|
518
|
+
const apiUrl = `${getDspApiHostNameFromEnvironment("dis")}/v1/get/codes/visa-status-list`;
|
|
556
519
|
const httpClient = new HttpClientAxios(config);
|
|
557
520
|
const res = await httpClient.api.post(apiUrl);
|
|
558
521
|
return res.data;
|
|
@@ -568,11 +531,9 @@ var useSearchVisaQuery = (options, config) => {
|
|
|
568
531
|
...options
|
|
569
532
|
});
|
|
570
533
|
};
|
|
571
|
-
|
|
572
|
-
// src/http-methods/fp-login/login-dsp.service.ts
|
|
573
534
|
var postLoginMethod = async (userId) => {
|
|
574
535
|
console.log("userId", userId);
|
|
575
|
-
const apiUrl = "
|
|
536
|
+
const apiUrl = `${getDspApiHostNameFromEnvironment("dat")}/v1/post/login`;
|
|
576
537
|
const httpClient = new HttpClientAxios({
|
|
577
538
|
headers: {
|
|
578
539
|
"Debug-Refresh-Queue-Off": "true"
|
|
@@ -584,19 +545,15 @@ var postLoginMethod = async (userId) => {
|
|
|
584
545
|
});
|
|
585
546
|
return res.data;
|
|
586
547
|
};
|
|
587
|
-
|
|
588
|
-
// src/http-methods/remote-identity-verification/remote-identity-verification.service.ts
|
|
589
548
|
var getRemoteIdentityVerificationSystemToken = async (params, axiosConfig) => {
|
|
590
|
-
const
|
|
591
|
-
const apiUrl = `${serviceCode}/api/dea/v1/post/participant/remote-identity-verification-system/token`;
|
|
549
|
+
const apiUrl = `${getDspApiHostNameFromEnvironment("dea")}/v1/post/participant/remote-identity-verification-system/token`;
|
|
592
550
|
const response = await new HttpClientAxios({
|
|
593
551
|
...axiosConfig
|
|
594
552
|
}).api.post(apiUrl, params);
|
|
595
553
|
return response.data;
|
|
596
554
|
};
|
|
597
555
|
var confirmRemoteIdentityVerificationSystemIdentificationCard = async (params, axiosConfig) => {
|
|
598
|
-
const
|
|
599
|
-
const apiUrl = `${serviceCode}/api/dea/v1/post/participant/remote-identity-verification-system/identification-card/confirm`;
|
|
556
|
+
const apiUrl = `${getDspApiHostNameFromEnvironment("dea")}/v1/post/participant/remote-identity-verification-system/identification-card/confirm`;
|
|
600
557
|
const response = await new HttpClientAxios({
|
|
601
558
|
...axiosConfig
|
|
602
559
|
}).api.post(apiUrl, params);
|
|
@@ -615,11 +572,8 @@ var useConfirmRemoteIdentityVerificationSystemIdentificationCardMutation = (opti
|
|
|
615
572
|
...options
|
|
616
573
|
});
|
|
617
574
|
};
|
|
618
|
-
|
|
619
|
-
// src/http-methods/common-code/common-code-search.service.ts
|
|
620
575
|
var getCommonCodeListMethod = async (param, config) => {
|
|
621
|
-
const
|
|
622
|
-
const apiUrl = `${serviceCode}/api/dea/v1/get/common-code/list`;
|
|
576
|
+
const apiUrl = `${getDspApiHostNameFromEnvironment("dea")}/v1/get/common-code/list`;
|
|
623
577
|
const httpClient = new HttpClientAxios(config);
|
|
624
578
|
const res = await httpClient.api.post(apiUrl, param);
|
|
625
579
|
return res.data;
|
|
@@ -635,11 +589,8 @@ var useSearchCommonCodeQuery = (param, options, config) => {
|
|
|
635
589
|
...options
|
|
636
590
|
});
|
|
637
591
|
};
|
|
638
|
-
|
|
639
|
-
// src/http-methods/app-config/app-config.service.ts
|
|
640
592
|
var getUserProfile = async (axiosConfig) => {
|
|
641
|
-
const
|
|
642
|
-
const apiUrl = `${serviceCode}/api/dat/v1/get/user/profile`;
|
|
593
|
+
const apiUrl = `${getDspApiHostNameFromEnvironment("dat")}/v1/get/user/profile`;
|
|
643
594
|
const response = await new HttpClientAxios({
|
|
644
595
|
...axiosConfig
|
|
645
596
|
}).api.post(apiUrl);
|
|
@@ -650,7 +601,7 @@ var getDayDiffFromToday = (date) => {
|
|
|
650
601
|
return Math.floor(diff / (1e3 * 60 * 60 * 24));
|
|
651
602
|
};
|
|
652
603
|
var postFileUploadMethod = async (params, config) => {
|
|
653
|
-
const apiUrl = `${getDudApiHostNameFromEnvironment(
|
|
604
|
+
const apiUrl = `${getDudApiHostNameFromEnvironment()}/v1/post/file`;
|
|
654
605
|
const formData = new FormData();
|
|
655
606
|
if (params.data instanceof File) {
|
|
656
607
|
formData.append("data", params.data, params.name || params.data.name);
|
|
@@ -663,7 +614,7 @@ var postFileUploadMethod = async (params, config) => {
|
|
|
663
614
|
params.expireDate && formData.append("preservationTerm", (getDayDiffFromToday(params.expireDate) + 1).toString() || "1");
|
|
664
615
|
params.preservationTerm && formData.append("preservationTerm", params.preservationTerm.toString() || "1");
|
|
665
616
|
formData.append("fileType", params.fileType || params.data.type.split("/").pop() || "png");
|
|
666
|
-
const httpClient = new HttpClientAxios(config);
|
|
617
|
+
const httpClient = new HttpClientAxios({ ...config, withCredentials: false });
|
|
667
618
|
httpClient.api.interceptors.response.use((response) => {
|
|
668
619
|
const { data } = response;
|
|
669
620
|
if (data.isSuccess === true && data.code.includes("erro")) {
|
|
@@ -675,7 +626,7 @@ var postFileUploadMethod = async (params, config) => {
|
|
|
675
626
|
return res.data;
|
|
676
627
|
};
|
|
677
628
|
async function postFileDownloadMethod(params, config) {
|
|
678
|
-
const apiUrl = `${
|
|
629
|
+
const apiUrl = `${getDudApiHostNameFromEnvironment()}/v1/get/file`;
|
|
679
630
|
const httpClient = new HttpClientAxios({
|
|
680
631
|
...config,
|
|
681
632
|
...params.outputType === "BINARY" && { responseType: "blob" }
|
package/dist/method.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/http-methods/method-util.ts","../src/http-client/cookie/cookie-client.ts","../src/http-client/header/header.types.ts","../src/http-client/header/header-manager.ts","../src/http-client/axios/http-client-axios.ts","../src/http-client/auth/auth-client.ts","../src/http-methods/sample/sample.service.ts","../src/http-methods/search-modal/address/address-search.service.ts","../src/http-methods/search-modal/address/use-search-address-query.ts","../src/http-methods/search-modal/address/postal-code.service.ts","../src/http-methods/search-modal/address/use-search-postal-code-query.ts","../src/http-methods/search-modal/address/address-standardization.service.ts","../src/http-methods/search-modal/address/use-search-address-standardization-query.ts","../src/http-methods/search-modal/occupation/occupation-search.service.ts","../src/http-methods/search-modal/occupation/use-search-occupation-query.ts","../src/http-methods/search-modal/vehicle/vehicle-search.service.ts","../src/http-methods/search-modal/vehicle/use-search-vehicle-query.ts","../src/http-methods/search-modal/employee/employee-search.service.ts","../src/http-methods/search-modal/employee/use-search-employee-profile-query.ts","../src/http-methods/search-modal/organization/organization-search.service.ts","../src/http-methods/search-modal/organization/use-search-organization-query.ts","../src/http-methods/search-modal/nationality/nationality-search.service.ts","../src/http-methods/search-modal/nationality/use-search-nationality-query.ts","../src/http-methods/search-modal/customer-list/customer-list-search.service.ts","../src/http-methods/search-modal/customer-list/use-search-customer-list-query.ts","../src/http-methods/search-modal/risk-grade/risk-grade-search.service.ts","../src/http-methods/search-modal/risk-grade/use-search-risk-grade-query.ts","../src/http-methods/search-modal/dea-customer-list/dea-customer-list-search.service.ts","../src/http-methods/search-modal/dea-customer-list/use-search-dea-customer-list-query.ts","../src/http-methods/search-modal/visa/visa-search.service.ts","../src/http-methods/search-modal/visa/use-search-visa-query.ts","../src/http-methods/fp-login/login-dsp.service.ts","../src/http-methods/remote-identity-verification/remote-identity-verification.service.ts","../src/http-methods/remote-identity-verification/use-remote-identity-verification-query.tsx","../src/http-methods/common-code/common-code-search.service.ts","../src/http-methods/common-code/use-search-common-code-query.ts","../src/http-methods/app-config/app-config.service.ts","../src/http-methods/dud-external-file/dud-external-file.service.ts","../src/http-methods/dud-external-file/use-dud-external-file-query.ts"],"names":["config","error","useQuery","useMutation"],"mappings":"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","file":"method.js","sourcesContent":["export const getServiceCode = () => {\n // @ts-ignore\n if (typeof window.isStorybookEnv === 'boolean') {\n return '';\n } else {\n return `/${location.pathname.split('/')[1]}`;\n }\n};\n","/**\n * 클라이언트용 쿠키 함수\n */\nexport const cookieClient = {\n getCookie(name: string): string {\n if (typeof document === 'undefined') {\n return '';\n }\n const match = document.cookie.match(new RegExp(`(^|; *)${name}=([^;]*)`));\n\n return match ? decodeURIComponent(match[2] || '') : '';\n },\n\n setCookie(\n name: string,\n value: string,\n options: {\n expires?: number | Date; // number of days\n path?: string;\n domain?: string;\n secure?: boolean;\n } = {}\n ): void {\n if (typeof document === 'undefined') {\n return;\n }\n\n let cookieString = `${name}=${encodeURIComponent(value)}`;\n\n if (options.expires) {\n let expiresDate: Date;\n if (typeof options.expires === 'number') {\n expiresDate = new Date();\n expiresDate.setDate(expiresDate.getDate() + options.expires);\n } else {\n expiresDate = options.expires;\n }\n cookieString += `; expires=${expiresDate.toUTCString()}`;\n }\n\n cookieString += `; path=${options.path || '/'}`;\n\n if (options.domain) {\n cookieString += `; domain=${options.domain}`;\n }\n\n if (options.secure) {\n cookieString += '; secure';\n }\n\n document.cookie = cookieString;\n },\n deleteCookie(name: string, options: { path?: string; domain?: string } = {}): void {\n cookieClient.setCookie(name, '', { ...options, expires: -1 });\n }\n};\n","/**\n * @see https://loop.cloud.microsoft/p/eyJ3Ijp7InUiOiJodHRwczovL2hhbndoYWxpZmVtMzY1LnNoYXJlcG9pbnQuY29tLz9uYXY9Y3owbE1rWW1aRDFpSVVVd1FXdDJSbGhSV0VWUE1tUkNYMWhUZW5KWVVFdFBSVXByYWs1b1NrSlBjRk4wYm5wNmNsWmpMVUZ5YjI1UlJWOVdSREpUV25aeWVUUTJTV2swUlZrbVpqMHdNVk5OVGtkR1JsTkJXVE0xVVZaQ1ZrRkVRa1ZaVEVoRVNUSTBXRXhVVlZoV0ptTTlKbVpzZFdsa1BURSUzRCIsInIiOmZhbHNlfSwicCI6eyJ1IjoiaHR0cHM6Ly9oYW53aGFsaWZlbTM2NS5zaGFyZXBvaW50LmNvbS9jb250ZW50c3RvcmFnZS9DU1BfYmMyNDQwMTMtZDA1NS00MzVjLWI2NzQtMWZkNzRiM2FkNzNjLyVFQiVBQyVCOCVFQyU4NCU5QyUyMCVFQiU5RCVCQyVFQyU5RCVCNCVFQiVCOCU4QyVFQiU5RiVBQyVFQiVBNiVBQy9Mb29wQXBwRGF0YS8wOS0yLiUyMEJyaWRnZSUyMFNwZWMlMjAxLmxvb3A%2FbmF2PWN6MGxNa1pqYjI1MFpXNTBjM1J2Y21GblpTVXlSa05UVUY5aVl6STBOREF4TXkxa01EVTFMVFF6TldNdFlqWTNOQzB4Wm1RM05HSXpZV1EzTTJNbVpEMWlJVVV3UVd0MlJsaFJXRVZQTW1SQ1gxaFRlbkpZVUV0UFJVcHJhazVvU2tKUGNGTjBibnA2Y2xaakxVRnliMjVSUlY5V1JESlRXblp5ZVRRMlNXazBSVmttWmowd01WTk5Ua2RHUmxGRlYxTlFOelpMUWtsTFdrWkpXVUUzU1ZkWldGTklWa0ZUSm1NOUpUSkdKbVpzZFdsa1BURSUzRCIsInIiOmZhbHNlfSwiaSI6eyJpIjoiNTdkZmVhM2QtZDA2Yi00YWRlLWIxZjEtYjE4NDA4MmNlN2VjIn19\n */\nexport const customHeaderNames = [\n 'Accept-Language',\n 'DeviceId',\n 'LoginType',\n 'PlatformName',\n 'PlatformVersion',\n 'AppVersion',\n 'DeviceModel',\n 'FormFactor',\n 'LoginChannel'\n];\n\nexport const AT = 'AT';\nexport type GetterSync = (keyName: string) => string;\nexport type SetterSync = (keyName: string, value: string) => void;\n\nexport type GetterAsync = (keyName: string) => Promise<string> | string;\nexport type SetterAsync = (keyName: string, value: string) => Promise<void> | void;\n","import { AT, customHeaderNames, GetterSync, SetterSync } from './header.types';\n\nexport class HeaderManager {\n private getter: GetterSync;\n private setter: SetterSync;\n\n constructor(getter: GetterSync, setter: SetterSync) {\n this.getter = getter;\n this.setter = setter;\n }\n\n /**\n * 커스텀 헤더를 동기적으로 설정합니다.\n */\n setCustomHeaders(): void {\n customHeaderNames.forEach((headerName) => {\n const customHeaderKey = `X-Channel-${headerName}`;\n const headerValue = this.getter(customHeaderKey);\n if (headerValue) {\n this.setter(customHeaderKey, headerValue);\n }\n });\n }\n\n /**\n * 인증 토큰을 동기적으로 설정합니다.\n */\n setAuthToken(): void {\n const token = this.getter(AT);\n if (token) {\n this.setter('Authorization', `Bearer ${token}`);\n }\n }\n\n /**\n * 모든 헤더를 동기적으로 설정합니다.\n */\n setAllHeaders(): void {\n this.setCustomHeaders();\n this.setAuthToken();\n }\n}\n","import axios from 'axios';\nimport { addErrorLog, addRequestLog, addResponseLog } from 'sales-frontend-debug';\nimport { useClientSessionStore } from 'sales-frontend-stores';\n\nimport { AuthClient } from '../auth/auth-client';\nimport { cookieClient } from '../cookie/cookie-client';\nimport { HeaderManager } from '../header/header-manager';\n\nimport type { AxiosQueueType } from './types';\nimport type { AxiosError, AxiosResponse, AxiosInstance, AxiosRequestConfig } from 'axios';\nlet isRefreshed = true;\nconst axiosQueue: AxiosQueueType[] = [];\n\n/**\n * 쿠키에서 값을 가져오고, 없으면 기본값을 쿠키에 설정 후 반환하는 헬퍼 함수\n * @param key 쿠키 키\n * @param defaultValue 쿠키 값이 없을 때 사용할 기본값\n * @returns 쿠키 값 또는 기본값\n */\nconst getOrSetCookie = (key: string, defaultValue: string): string => {\n let value = cookieClient.getCookie(key);\n if (!value) {\n value = defaultValue;\n cookieClient.setCookie(key, value, { path: '/' });\n }\n\n return value;\n};\n\n/**\n * 전자청약\n * CSR용 http-client 입니다.\n * cookie , redirect , tokem 처리 방식은 CSR 환경에 맞게 구현됩니다.\n */\nexport class HttpClientAxios {\n config: AxiosRequestConfig;\n headerManager: HeaderManager;\n\n /**\n * axios의 request interceptor 동작시, 헤더에 주입될 헤더의 key,value\n */\n headers: Record<string, string> = {};\n\n /**\n * api연동을 수행할 실제 객체(axios, fetch 등의 다른 라이브러리로 교체가능한 영역)\n * 현재 버전에서는 axios를 사용하여 구현됨.\n */\n api: AxiosInstance;\n constructor(config: AxiosRequestConfig = {}) {\n this.config = config;\n\n /**\n * 헤더매니저 셋팅\n */\n const getter: HeaderManager['getter'] = (key) => {\n return cookieClient.getCookie(key);\n };\n const setter: HeaderManager['setter'] = (key, value) => {\n if (config?.headers) {\n config.headers[key] = value;\n }\n };\n this.headerManager = new HeaderManager(getter, setter);\n\n /**\n * api수행객체 최초 생성,\n * 공통으로 적용할 설정값이 있는경우 셋팅\n */\n this.api = axios.create({\n withCredentials: true,\n ...config\n });\n\n /**\n * 인터셉터 요청 처리\n */\n this.api.interceptors.request.use(\n async (config) => {\n const debugMode = cookieClient.getCookie('dsp-debug-mode') === 'on';\n\n /** 디버깅용 로그 */\n await addRequestLog(config);\n\n const debugRefreshQueueOff = config.headers?.['Debug-Refresh-Queue-Off'] === 'true';\n if (debugRefreshQueueOff) {\n isRefreshed = true;\n }\n\n /**\n * AT토큰 주입\n */\n const authClient = new AuthClient();\n const authorization = await authClient.getAT();\n console.log('authorization', authorization);\n if (authorization) {\n config.headers['Authorization'] = authorization;\n }\n\n if (debugMode) {\n console.log('debugMode header setting!');\n /**\n * 주소가 debugMode 경우 테스트용 헤더 삽입\n */\n config.headers['x-channel-appversion'] = getOrSetCookie('x-channel-appversion', '3.1');\n config.headers['x-channel-deviceid'] = getOrSetCookie('x-channel-deviceid', 'deviceid');\n config.headers['x-channel-devicemodel'] = getOrSetCookie('x-channel-devicemodel', 'iPHONE13');\n config.headers['x-channel-formfactor'] = getOrSetCookie('x-channel-formfactor', 'Phone');\n config.headers['x-channel-loginchannel'] = getOrSetCookie('x-channel-loginchannel', 'DSP');\n config.headers['x-channel-logintype'] = getOrSetCookie('x-channel-logintype', 'ONPA_PIN');\n config.headers['x-channel-platformname'] = getOrSetCookie('x-channel-platformname', 'IOS');\n config.headers['x-channel-platformversion'] = getOrSetCookie('x-channel-platformversion', '15.4.1');\n config.headers['x-channel-screenid'] = getOrSetCookie('x-channel-screenid', location.pathname);\n config.headers['x-channel-business-work-division-code'] = getOrSetCookie(\n 'x-channel-business-work-division-code',\n 'DEA'\n );\n } else {\n const session = useClientSessionStore.getState().clientSession;\n\n config.headers['x-channel-appversion'] = session.appVersion;\n config.headers['x-channel-deviceid'] = session.deviceId;\n config.headers['x-channel-devicemodel'] = session.deviceModel;\n config.headers['x-channel-formfactor'] = session.formFactor;\n config.headers['x-channel-loginchannel'] = session.loginChannel;\n config.headers['x-channel-logintype'] = session.loginType;\n config.headers['x-channel-platformname'] = session.platformName;\n config.headers['x-channel-platformversion'] = session.platformVersion;\n config.headers['x-channel-screenid'] = location.pathname;\n config.headers['x-channel-business-work-division-code'] = session.businessWorkDivisionCode;\n }\n\n /**\n * 커스텀헤더 주입\n */\n // this.headerManager.setCustomHeaders();\n /**\n *\n * this.headers설정된 값을 config headers에 주입\n */\n const headerEntries = Object.entries(this.headers);\n headerEntries.forEach(([key, value]) => {\n if (config?.headers) {\n config.headers[key] = value;\n }\n });\n\n /**\n * isRefreshed가 false이면(= 에러발생하여 token재발행중을 의미)\n * 새로운 요청들을 처리하지 않고,큐에 저장\n * 401에러 Queue처리 Request interceptor 등록\n */\n if (!isRefreshed) {\n return new Promise((resolve, reject) => {\n axiosQueue.push({ resolve, reject, config });\n }).then(() => config);\n }\n\n return config;\n },\n (error) => {\n return Promise.reject(error);\n }\n );\n\n /**\n * 인터셉터 응답 처리\n */\n this.api.interceptors.response.use(\n async (response: AxiosResponse) => {\n /** 디버깅용 로그 */\n await addResponseLog(response);\n if (response.data.isSuccess === false) {\n /**\n * 200 응답이라도 , isSuccess === false인 경우 에러로 reject\n */\n return Promise.reject(response);\n }\n\n return response;\n },\n async (error: AxiosError) => {\n /** 디버깅용 로그 */\n await addErrorLog(error);\n\n const originalRequest = error.config;\n const debugRefreshQueueOff = config.headers?.['Debug-Refresh-Queue-Off'] === 'true';\n /**\n * 401에러 Queue처리\n */\n if (error.response?.status === 401 && !debugRefreshQueueOff) {\n isRefreshed = false;\n const client = new AuthClient();\n client\n .refreshToken()\n .then(() => {\n /**\n * 토큰 갱신 성공, 플래그를 true로 설정\n */\n isRefreshed = true;\n\n /**\n * 큐에 쌓여있던 모든 요청 재시도\n */\n while (axiosQueue.length > 0) {\n const p = axiosQueue.shift(); // axiosQueue에서 첫 번째 요소를 제거하고 반환합니다.\n if (p) {\n /**\n * api 인스턴스를 통해 요청을 재시도합니다. 따라서 재요청들은 다시 인터셉터를 타게 됩니다.\n * 신규토큰을 주입받고 정상처리\n * @todo 재시도후 reject시에는 로그인페이지로 보내는 브릿지 함수를 호출하도록 처리가 필요해보임.\n *\n * @note 11/07 : 무한루프이슈 해결을 위해 , 새로운 인스턴스를 사용하도록 수정\n */\n axios(p.config)\n .then((response) => p.resolve(response))\n .catch((err) => p.reject(err));\n }\n }\n })\n .catch((error) => {\n /**\n * 토큰 재발행중 에러 발생한 경우 처리\n * @todo 로그인페이지 이동(?)\n */\n return Promise.reject(error);\n });\n\n return new Promise((resolve, reject) => {\n if (originalRequest) {\n axiosQueue.push({ resolve, reject, config: originalRequest });\n }\n });\n } else {\n return Promise.reject(error);\n }\n }\n );\n }\n\n setHeaders(headers: Record<string, string>) {\n this.headers = {\n ...this.headers,\n ...headers\n };\n }\n}\n","import { Bridge } from 'sales-frontend-bridge';\nimport { isDspApp } from 'sales-frontend-utils';\nimport { getDspExecutionEnvironment } from 'sales-frontend-utils';\n\nimport { getServiceCode } from '../../http-methods/method-util';\nimport { HttpClientAxios } from '../axios/http-client-axios';\nimport { cookieClient } from '../cookie/cookie-client';\n\nexport class AuthClient {\n defaultTokenType = 'Bearer';\n /**\n * App인지 확인\n * @returns boolean\n */\n isApp() {\n return isDspApp();\n }\n\n getAuthorizationFromCookie() {\n const accessToken = cookieClient.getCookie('accessToken');\n\n return accessToken ? `${this.defaultTokenType} ${accessToken}` : undefined;\n }\n\n async getAuthorizationFromBridge() {\n const { tokenType, accessToken } = await Bridge.native.getAccessToken();\n\n return accessToken ? `${tokenType || this.defaultTokenType} ${accessToken}` : undefined;\n }\n\n /**\n *\n * @returns Promise<string | undefined>\n */\n async getAT(): Promise<string | undefined> {\n const debugMode = cookieClient.getCookie('dsp-debug-mode') === 'on';\n\n /**\n * debugMode 경우 cookie에서 'AT' 를 읽어온다.\n */\n if (debugMode) {\n console.log('debugMode token setting!');\n\n return this.getAuthorizationFromCookie();\n }\n\n if (this.isApp()) {\n return await this.getAuthorizationFromBridge();\n } else {\n /**\n * DSP 앱 외에는 쿠키 참조\n */\n return this.getAuthorizationFromCookie();\n }\n }\n\n /**\n * RT를 이용하여 신규 AT/RT발행\n * 기존토큰은 무효화처리\n * 쿠키에 저장.\n */\n async refreshToken(): Promise<void> {\n if (!this.isApp()) {\n // 신규 앱 외에는 내부 api 호출로 토큰 갱신\n const httpClient = new HttpClientAxios({});\n\n await httpClient.api.post(`${getServiceCode()}/internal/api/auth/refresh`);\n\n // 영업 포털 환경일 경우 세션연장 이벤트 발생(to 부모)\n if (getDspExecutionEnvironment() === 'iframe') {\n Bridge.iframe.dspKeepCallerSession();\n }\n }\n }\n}\n","import { HttpClientAxios } from '../../client';\n\nimport type { TestResponse } from './sample.dto';\nimport type { AxiosRequestConfig } from 'axios';\n\ninterface TestRequest {\n id?: number;\n config?: AxiosRequestConfig;\n setupFn?: (httpClient: HttpClientAxios) => void;\n}\nexport const getTestMethod = async ({ id, config, setupFn }: TestRequest) => {\n const testAPI = `https://jsonplaceholder.typicode.com/users/${id}`;\n\n const httpClient = new HttpClientAxios(config);\n\n const res = await httpClient.api.get<TestResponse>(testAPI);\n\n return res.data;\n};\n","import { HttpClientAxios } from '../../../client';\nimport { getServiceCode } from '../../method-util';\n\nimport type { AddressListRequestDto, DspResponseAddressListResponseDto } from './address-search.dto';\nimport type { AxiosRequestConfig } from 'axios';\n\nexport const getAddressListMethod = async (params: AddressListRequestDto, config?: AxiosRequestConfig) => {\n const serviceCode = getServiceCode();\n const apiUrl = `${serviceCode}/api/dis/v1/get/codes/address-list`;\n const httpClient = new HttpClientAxios(config);\n const res = await httpClient.api.post<DspResponseAddressListResponseDto>(apiUrl, params);\n\n return res.data;\n};\n","import { useQuery } from '@tanstack/react-query';\n\nimport { getAddressListMethod } from './address-search.service';\n\nimport type { AddressListRequestDto, DspResponseAddressListResponseDto } from './address-search.dto';\nimport type { CustomQueryOptions } from '../../method.types';\nimport type { AxiosRequestConfig } from 'axios';\n\nexport const useSearchAddressQuery = (\n params: AddressListRequestDto,\n options?: CustomQueryOptions<DspResponseAddressListResponseDto>,\n config?: AxiosRequestConfig\n) => {\n return useQuery({\n enabled: !!params.searchKeyWord,\n retry: false,\n queryKey: ['searchAddress', JSON.stringify(params)],\n queryFn: () => {\n return getAddressListMethod(params, config);\n },\n ...options\n });\n};\n","import { AxiosRequestConfig } from 'axios';\n\nimport { HttpClientAxios } from '../../../client';\nimport { getServiceCode } from '../../method-util';\n\nimport type { AddressPostalCodeRequestDto, DspResponseAddressPostalCodeResponseDto } from './postal-code.dto';\n\nexport const getAddressPostalCodeMethod = async (params: AddressPostalCodeRequestDto, config?: AxiosRequestConfig) => {\n const serviceCode = getServiceCode();\n const apiUrl = `${serviceCode}/api/dis/v1/get/codes/address/postal-code`;\n const httpClient = new HttpClientAxios(config);\n const res = await httpClient.api.post<DspResponseAddressPostalCodeResponseDto>(apiUrl, params);\n\n return res.data;\n};\n","import { useQuery } from '@tanstack/react-query';\n\nimport { getAddressPostalCodeMethod } from './postal-code.service';\n\nimport type { AddressPostalCodeRequestDto, DspResponseAddressPostalCodeResponseDto } from './postal-code.dto';\nimport type { CustomQueryOptions } from '../../method.types';\nimport type { AxiosRequestConfig } from 'axios';\n\nexport const useSearchPostalCodeQuery = (\n params: AddressPostalCodeRequestDto,\n options?: CustomQueryOptions<DspResponseAddressPostalCodeResponseDto>,\n config?: AxiosRequestConfig\n) => {\n return useQuery({\n enabled: !!params.searchWordName,\n retry: false,\n queryKey: ['searchPostalCode', JSON.stringify(params)],\n queryFn: () => {\n return getAddressPostalCodeMethod(params, config);\n },\n ...options\n });\n};\n","import { HttpClientAxios } from '../../../client';\nimport { getServiceCode } from '../../method-util';\n\nimport type {\n AddressStandardizationListRequestDto,\n DspResponseAddressStandardizationListResponseDto\n} from './address-standardization.dto';\nimport type { AxiosRequestConfig } from 'axios';\n\nexport const getAddressStandardizationListMethod = async (\n params: AddressStandardizationListRequestDto,\n config?: AxiosRequestConfig\n) => {\n const serviceCode = getServiceCode();\n const apiUrl = `${serviceCode}/api/dis/v1/get/codes/address-standardization-list`;\n const httpClient = new HttpClientAxios(config);\n const res = await httpClient.api.post<DspResponseAddressStandardizationListResponseDto>(apiUrl, params);\n\n return res.data;\n};\n","import { useQuery } from '@tanstack/react-query';\n\nimport { getAddressStandardizationListMethod } from './address-standardization.service';\n\nimport type {\n AddressStandardizationListRequestDto,\n DspResponseAddressStandardizationListResponseDto\n} from './address-standardization.dto';\nimport type { CustomQueryOptions } from '../../method.types';\nimport type { AxiosRequestConfig } from 'axios';\n\nexport const useSearchAddressStandardizationQuery = (\n params: AddressStandardizationListRequestDto,\n options?: CustomQueryOptions<DspResponseAddressStandardizationListResponseDto>,\n config?: AxiosRequestConfig\n) => {\n return useQuery({\n enabled: !!params.baseAddress,\n retry: false,\n queryKey: ['searchAddressStandardization', JSON.stringify(params)],\n queryFn: () => {\n return getAddressStandardizationListMethod(params, config);\n },\n ...options\n });\n};\n","import { AxiosRequestConfig } from 'axios';\n\nimport { HttpClientAxios } from '../../../client';\nimport { getServiceCode } from '../../method-util';\n\nimport type {\n DspResponseOccupationDetailResponseDto,\n DspResponseOccupationListResponseDto,\n OccupationDetailRequestDto,\n OccupationListRequestDto\n} from './occupation-search.dto';\n\n/**\n * @description 직종 목록 조회\n */\nexport const getOccupationListMethod = async (params: OccupationListRequestDto, config?: AxiosRequestConfig) => {\n const serviceCode = getServiceCode();\n const apiUrl = `${serviceCode}/api/dis/v1/get/codes/occupation-list`;\n const httpClient = new HttpClientAxios(config);\n const res = await httpClient.api.post<DspResponseOccupationListResponseDto>(apiUrl, params);\n\n return res.data;\n};\n\n/**\n * @description 직종 상세 조회\n */\nexport const getOccupationDetailMethod = async (params: OccupationDetailRequestDto, config?: AxiosRequestConfig) => {\n const serviceCode = getServiceCode();\n const apiUrl = `${serviceCode}/api/dis/v1/get/codes/occupation/detail`;\n const httpClient = new HttpClientAxios(config);\n const res = await httpClient.api.post<DspResponseOccupationDetailResponseDto>(apiUrl, params);\n\n return res.data;\n};\n","import { useQuery } from '@tanstack/react-query';\n\nimport { getOccupationDetailMethod, getOccupationListMethod } from './occupation-search.service';\n\nimport type {\n DspResponseOccupationDetailResponseDto,\n DspResponseOccupationListResponseDto,\n OccupationDetailRequestDto,\n OccupationListRequestDto\n} from './occupation-search.dto';\nimport type { CustomQueryOptions } from '../../method.types';\nimport type { AxiosRequestConfig } from 'axios';\n\n/**\n * @description 직종 목록 조회 쿼리\n */\nexport const useSearchOccupationQuery = (\n params: OccupationListRequestDto,\n options?: CustomQueryOptions<DspResponseOccupationListResponseDto>,\n config?: AxiosRequestConfig\n) => {\n return useQuery({\n enabled: true,\n retry: false,\n queryKey: ['searchOccupationList', JSON.stringify(params)],\n queryFn: () => {\n return getOccupationListMethod(params, config);\n },\n ...options\n });\n};\n\n/**\n * @description 직종 상세 조회 쿼리\n */\nexport const useSearchOccupationDetailQuery = (\n params: OccupationDetailRequestDto,\n options?: CustomQueryOptions<DspResponseOccupationDetailResponseDto>,\n config?: AxiosRequestConfig\n) => {\n return useQuery({\n enabled: true,\n retry: false,\n queryKey: ['searchOccupationDetail', JSON.stringify(params)],\n queryFn: () => {\n return getOccupationDetailMethod(params, config);\n },\n ...options\n });\n};\n","import { AxiosRequestConfig } from 'axios';\n\nimport { HttpClientAxios } from '../../../client';\nimport { getServiceCode } from '../../method-util';\n\nimport type { DspResponseVehicleTypeListResponseDto } from './vehicle-search.dto';\n\nexport const getVehicleListMethod = async (config?: AxiosRequestConfig) => {\n const serviceCode = getServiceCode();\n const apiUrl = `${serviceCode}/api/dis/v1/get/codes/vehicle-type-list`;\n const httpClient = new HttpClientAxios(config);\n const res = await httpClient.api.post<DspResponseVehicleTypeListResponseDto>(apiUrl);\n\n return res.data;\n};\n","import { useQuery } from '@tanstack/react-query';\n\nimport { getVehicleListMethod } from './vehicle-search.service';\n\nimport type { DspResponseVehicleTypeListResponseDto } from './vehicle-search.dto';\nimport type { CustomQueryOptions } from '../../method.types';\nimport type { AxiosRequestConfig } from 'axios';\n\nexport const useSearchVehicleQuery = (\n options?: CustomQueryOptions<DspResponseVehicleTypeListResponseDto>,\n config?: AxiosRequestConfig\n) => {\n return useQuery({\n enabled: true,\n retry: false,\n queryKey: ['searchVehicle'],\n queryFn: () => {\n return getVehicleListMethod(config);\n },\n ...options\n });\n};\n","import { AxiosRequestConfig } from 'axios';\n\nimport { HttpClientAxios } from '../../../client';\nimport { getServiceCode } from '../../method-util';\n\nimport type { DspResponseEmployeeProfileResponseDto, EmployeeProfileSearchRequestDto } from './employee-search.dto';\n\nexport const getEmployeeProfileListMethod = async (\n params: EmployeeProfileSearchRequestDto,\n config?: AxiosRequestConfig\n) => {\n const serviceCode = getServiceCode();\n const apiUrl = `${serviceCode}/api/dea/v1/get/participant/profile/employee`;\n const httpClient = new HttpClientAxios(config);\n const res = await httpClient.api.post<DspResponseEmployeeProfileResponseDto>(apiUrl, params);\n\n return res.data;\n};\n","import { useQuery } from '@tanstack/react-query';\n\nimport { getEmployeeProfileListMethod } from './employee-search.service';\n\nimport type { DspResponseEmployeeProfileResponseDto, EmployeeProfileSearchRequestDto } from './employee-search.dto';\nimport type { CustomQueryOptions } from '../../method.types';\nimport type { AxiosRequestConfig } from 'axios';\n\nexport const useSearchEmployeeProfileQuery = (\n params: EmployeeProfileSearchRequestDto,\n options?: CustomQueryOptions<DspResponseEmployeeProfileResponseDto>,\n config?: AxiosRequestConfig\n) => {\n return useQuery({\n enabled: !!params.searchWord,\n retry: false,\n queryKey: ['searchEmployeeProfile', JSON.stringify(params)],\n queryFn: () => {\n return getEmployeeProfileListMethod(params, config);\n },\n ...options\n });\n};\n","import { AxiosRequestConfig } from 'axios';\n\nimport { HttpClientAxios } from '../../../client';\nimport { getServiceCode } from '../../method-util';\n\nimport type { DspResponseOrganizationProfileResponse, OrganizationSearchRequestDto } from './organization-search.dto';\n\nexport const getOrganizationProfileListMethod = async (\n params: OrganizationSearchRequestDto,\n config?: AxiosRequestConfig\n) => {\n const serviceCode = getServiceCode();\n ///v1/get/participant/profile/organization\n const apiUrl = `${serviceCode}/api/dea/v1/get/participant/profile/organization`;\n const httpClient = new HttpClientAxios(config);\n const res = await httpClient.api.post<DspResponseOrganizationProfileResponse>(apiUrl, params);\n\n return res.data;\n};\n","import { useQuery } from '@tanstack/react-query';\n\nimport { getOrganizationProfileListMethod } from './organization-search.service';\n\nimport type { DspResponseOrganizationProfileResponse, OrganizationSearchRequestDto } from './organization-search.dto';\nimport type { CustomQueryOptions } from '../../method.types';\nimport type { AxiosRequestConfig } from 'axios';\n\nexport const useSearchOrganizationQuery = (\n params: OrganizationSearchRequestDto,\n options?: CustomQueryOptions<DspResponseOrganizationProfileResponse>,\n config?: AxiosRequestConfig\n) => {\n return useQuery({\n enabled: !!params.searchWord,\n retry: false,\n queryKey: ['searchOrganization', JSON.stringify(params)],\n queryFn: () => {\n return getOrganizationProfileListMethod(params, config);\n },\n ...options\n });\n};\n","import { AxiosRequestConfig } from 'axios';\n\nimport { HttpClientAxios } from '../../../client';\nimport { getServiceCode } from '../../method-util';\n\nimport type { DspResponseNationalityListResponseDto, NationalitySearchRequestDto } from './nationality-search.dto';\n\nexport const getNationalityListMethod = async (params: NationalitySearchRequestDto, config?: AxiosRequestConfig) => {\n const serviceCode = getServiceCode();\n const apiUrl = `${serviceCode}/api/dis/v1/get/codes/nationality-list`;\n const httpClient = new HttpClientAxios(config);\n const res = await httpClient.api.post<DspResponseNationalityListResponseDto>(apiUrl, params);\n\n return res.data;\n};\n","import { useQuery } from '@tanstack/react-query';\n\nimport { getNationalityListMethod } from './nationality-search.service';\n\nimport type { DspResponseNationalityListResponseDto, NationalitySearchRequestDto } from './nationality-search.dto';\nimport type { CustomQueryOptions } from '../../method.types';\nimport type { AxiosRequestConfig } from 'axios';\n\nexport const useSearchNationalityQuery = (\n params: NationalitySearchRequestDto,\n options?: CustomQueryOptions<DspResponseNationalityListResponseDto>,\n config?: AxiosRequestConfig\n) => {\n console.log('search nationality', params.searchKeyWord);\n\n return useQuery({\n enabled: !!params.searchKeyWord,\n retry: false,\n queryKey: ['searchNationality', JSON.stringify(params)],\n queryFn: () => {\n return getNationalityListMethod(params, config);\n },\n ...options\n });\n};\n","import { AxiosRequestConfig } from 'axios';\n\nimport { HttpClientAxios } from '../../../client';\nimport { getServiceCode } from '../../method-util';\n\nimport type { CustomerListRequestDto, DspResponseCustomerListResponseDto } from './customer-list-search.dto';\n\nexport const getCustomerListMethod = async (params: CustomerListRequestDto, config?: AxiosRequestConfig) => {\n const serviceCode = getServiceCode();\n const apiUrl = `${serviceCode}/api/dis/v1/get/customer-list`;\n const httpClient = new HttpClientAxios(config);\n const res = await httpClient.api.post<DspResponseCustomerListResponseDto>(apiUrl, params);\n\n return res.data;\n};\n","import { useQuery } from '@tanstack/react-query';\n\nimport { getCustomerListMethod } from './customer-list-search.service';\n\nimport type { CustomerListRequestDto, DspResponseCustomerListResponseDto } from './customer-list-search.dto';\nimport type { CustomQueryOptions } from '../../method.types';\nimport type { AxiosRequestConfig } from 'axios';\n\nexport const useSearchCustomerListQuery = (\n params: CustomerListRequestDto,\n options?: CustomQueryOptions<DspResponseCustomerListResponseDto>,\n config?: AxiosRequestConfig\n) => {\n return useQuery({\n enabled: !!params.customerName,\n retry: false,\n queryKey: ['searchCustomerList', JSON.stringify(params)],\n queryFn: () => {\n return getCustomerListMethod(params, config);\n },\n ...options\n });\n};\n","import { AxiosRequestConfig } from 'axios';\n\nimport { HttpClientAxios } from '../../../client';\nimport { getServiceCode } from '../../method-util';\n\nimport type { DspResponseRiskGradeResponseDto, RiskGradeRequestDto } from './risk-grade-search.dto';\n\nexport const getRiskGradeMethod = async (params: RiskGradeRequestDto, config?: AxiosRequestConfig) => {\n const serviceCode = getServiceCode();\n const apiUrl = `${serviceCode}/api/dis/v1/get/codes/risk-grade`;\n const httpClient = new HttpClientAxios(config);\n const res = await httpClient.api.post<DspResponseRiskGradeResponseDto>(apiUrl, params);\n\n return res.data;\n};\n","import { useQuery } from '@tanstack/react-query';\n\nimport { getRiskGradeMethod } from './risk-grade-search.service';\n\nimport type { DspResponseRiskGradeResponseDto, RiskGradeRequestDto } from './risk-grade-search.dto';\nimport type { CustomQueryOptions } from '../../method.types';\nimport type { AxiosRequestConfig } from 'axios';\n\nexport const useSearchRiskGradeQuery = (\n params: RiskGradeRequestDto,\n options?: CustomQueryOptions<DspResponseRiskGradeResponseDto>,\n config?: AxiosRequestConfig\n) => {\n return useQuery({\n enabled: !!params.occupationIndustryCode && !!params.vehicleTypeCode,\n retry: false,\n queryKey: ['searchRiskGrade', JSON.stringify(params)],\n queryFn: () => {\n return getRiskGradeMethod(params, config);\n },\n ...options\n });\n};\n","import { AxiosRequestConfig } from 'axios';\n\nimport { HttpClientAxios } from '../../../client';\nimport { getServiceCode } from '../../method-util';\n\nimport type {\n DspResponseListPersonalCustomerProfileResponseDto,\n PersonalCustomerProfileRequestDto\n} from './dea-customer-list-search.dto';\n\nexport const getDspCustomerListMethod = async (\n params: PersonalCustomerProfileRequestDto,\n config?: AxiosRequestConfig\n) => {\n const serviceCode = getServiceCode();\n const apiUrl = `${serviceCode}/api/dea/v1/get/participant/profile/customer/personal`;\n const httpClient = new HttpClientAxios(config);\n const res = await httpClient.api.post<DspResponseListPersonalCustomerProfileResponseDto>(apiUrl, params);\n\n return res.data;\n};\n","import { useQuery } from '@tanstack/react-query';\n\nimport { getDspCustomerListMethod } from './dea-customer-list-search.service';\n\nimport type {\n DspResponseListPersonalCustomerProfileResponseDto,\n PersonalCustomerProfileRequestDto\n} from './dea-customer-list-search.dto';\nimport type { CustomQueryOptions } from '../../method.types';\nimport type { AxiosRequestConfig } from 'axios';\n\nexport const useSearchDspCustomerListQuery = (\n params: PersonalCustomerProfileRequestDto,\n options?: CustomQueryOptions<DspResponseListPersonalCustomerProfileResponseDto>,\n config?: AxiosRequestConfig\n) => {\n return useQuery({\n enabled: !!params.customerName,\n retry: false,\n queryKey: ['searchDspCustomerList', JSON.stringify(params)],\n queryFn: () => {\n return getDspCustomerListMethod(params, config);\n },\n ...options\n });\n};\n","import { AxiosRequestConfig } from 'axios';\n\nimport { HttpClientAxios } from '../../../client';\nimport { getServiceCode } from '../../method-util';\n\nimport type { DspResponseVisaStatusListResponseDto } from './visa-search.dto';\n\nexport const getVisaListMethod = async (config?: AxiosRequestConfig) => {\n const serviceCode = getServiceCode();\n const apiUrl = `${serviceCode}/api/dis/v1/get/codes/visa-status-list`;\n const httpClient = new HttpClientAxios(config);\n const res = await httpClient.api.post<DspResponseVisaStatusListResponseDto>(apiUrl);\n\n return res.data;\n};\n","import { useQuery } from '@tanstack/react-query';\n\nimport { getVisaListMethod } from './visa-search.service';\n\nimport type { DspResponseVisaStatusListResponseDto } from './visa-search.dto';\nimport type { CustomQueryOptions } from '../../method.types';\nimport type { AxiosRequestConfig } from 'axios';\n\nexport const useSearchVisaQuery = (\n options?: CustomQueryOptions<DspResponseVisaStatusListResponseDto>,\n config?: AxiosRequestConfig\n) => {\n return useQuery({\n enabled: true,\n retry: false,\n queryKey: ['searchVisa'],\n queryFn: () => {\n return getVisaListMethod(config);\n },\n ...options\n });\n};\n","import { HttpClientAxios } from '../../client';\n\nimport { FpLoginResponseDto } from './login-dsp.dto';\n\n/**\n * @param userId 사번\n */\nexport const postLoginMethod = async (userId: number) => {\n console.log('userId', userId);\n const apiUrl = '/api/dat/v1/post/login';\n const httpClient = new HttpClientAxios({\n headers: {\n 'Debug-Refresh-Queue-Off': 'true'\n }\n });\n\n const res = await httpClient.api.post<FpLoginResponseDto>(apiUrl, {\n userId,\n channelType: 'DSP_TABLET'\n });\n\n return res.data;\n};\n","import { HttpClientAxios } from '../../client';\nimport { getServiceCode } from '../method-util';\n\nimport type { ApiConfig } from '../shared.dto';\nimport type {\n RemoteIdentityVerificationSystemTokenRequestDto,\n DspResponseRemoteIdentityVerificationSystemTokenResponseDto,\n RemoteIdentityVerificationSystemIdentificationCardRequestDto,\n DspResponseRemoteIdentityVerificationSystemIdentificationCardResponseDto\n} from './remote-identity-verification.dto';\n\n/**\n * 토큰 발급 API\n * @param params\n * @param axiosConfig\n * @returns\n */\nexport const getRemoteIdentityVerificationSystemToken = async (\n params: RemoteIdentityVerificationSystemTokenRequestDto,\n axiosConfig?: ApiConfig\n) => {\n const serviceCode = getServiceCode();\n const apiUrl = `${serviceCode}/api/dea/v1/post/participant/remote-identity-verification-system/token`;\n\n const response = await new HttpClientAxios({\n ...axiosConfig\n }).api.post<DspResponseRemoteIdentityVerificationSystemTokenResponseDto>(apiUrl, params);\n\n return response.data;\n};\n\n/**\n * 비대면 인증 시스템 신분증 진위확인 API\n * @param params 진위확인 요청 파라미터\n * @param axiosConfig API 설정\n * @returns 신분증 진위확인 응답 데이터\n */\nexport const confirmRemoteIdentityVerificationSystemIdentificationCard = async (\n params: RemoteIdentityVerificationSystemIdentificationCardRequestDto,\n axiosConfig?: ApiConfig\n) => {\n const serviceCode = getServiceCode();\n const apiUrl = `${serviceCode}/api/dea/v1/post/participant/remote-identity-verification-system/identification-card/confirm`;\n\n const response = await new HttpClientAxios({\n ...axiosConfig\n }).api.post<DspResponseRemoteIdentityVerificationSystemIdentificationCardResponseDto>(apiUrl, params);\n\n return response.data;\n};\n","import { useMutation } from '@tanstack/react-query';\n\nimport { CustomMutationOptions } from '../method.types';\n\nimport {\n RemoteIdentityVerificationSystemIdentificationCardResponseDto,\n RemoteIdentityVerificationSystemIdentificationCardRequestDto\n} from './remote-identity-verification.dto';\nimport { confirmRemoteIdentityVerificationSystemIdentificationCard } from './remote-identity-verification.service';\n\n/**\n * 비대면 인증 시스템 신분증 진위확인 Mutation\n * @param options\n * @returns\n */\nexport const useConfirmRemoteIdentityVerificationSystemIdentificationCardMutation = (\n options?: CustomMutationOptions<\n RemoteIdentityVerificationSystemIdentificationCardResponseDto,\n RemoteIdentityVerificationSystemIdentificationCardRequestDto\n >\n) => {\n return useMutation({\n mutationKey: ['confirmRemoteIdentityVerificationSystemIdentificationCard'],\n mutationFn: async (params) => {\n const response = await confirmRemoteIdentityVerificationSystemIdentificationCard(params);\n\n if (response.isSuccess === false) {\n throw new Error(`${response.code}: ${response.message}`);\n }\n\n return response.data;\n },\n ...options\n });\n};\n","import { AxiosRequestConfig } from 'axios';\n\nimport { HttpClientAxios } from '../../client';\nimport { getServiceCode } from '../method-util';\n\nimport type { CommonCodeRequestDto, DspResponseCommonCodeResponseDto } from './common-code-search.dto';\n\nexport const getCommonCodeListMethod = async (param: CommonCodeRequestDto, config?: AxiosRequestConfig) => {\n const serviceCode = getServiceCode();\n const apiUrl = `${serviceCode}/api/dea/v1/get/common-code/list`;\n const httpClient = new HttpClientAxios(config);\n const res = await httpClient.api.post<DspResponseCommonCodeResponseDto>(apiUrl, param);\n\n return res.data;\n};\n","import { useQuery } from '@tanstack/react-query';\n\nimport { CustomQueryOptions } from '../method.types';\n\nimport { getCommonCodeListMethod } from './common-code-search.service';\n\nimport type { CommonCodeRequestDto, DspResponseCommonCodeResponseDto } from './common-code-search.dto';\nimport type { AxiosRequestConfig } from 'axios';\n\nexport const useSearchCommonCodeQuery = (\n param: CommonCodeRequestDto,\n options?: CustomQueryOptions<DspResponseCommonCodeResponseDto>,\n config?: AxiosRequestConfig\n) => {\n return useQuery({\n enabled: !!param.commonCodeId,\n retry: false,\n queryKey: ['searchCommonCode', param.commonCodeId],\n queryFn: () => {\n return getCommonCodeListMethod(param, config);\n },\n ...options\n });\n};\n","import { HttpClientAxios } from '../../client';\nimport { getServiceCode } from '../method-util';\n\nimport type { ApiConfig } from '../shared.dto';\nimport type { DspResponseUserProfileResponseDto } from './app-config.dto';\n\n/**\n * FP 기본 정보를 조회합니다.\n * @param axiosConfig\n * @returns\n */\nexport const getUserProfile = async (axiosConfig?: ApiConfig) => {\n const serviceCode = getServiceCode();\n const apiUrl = `${serviceCode}/api/dat/v1/get/user/profile`;\n\n const response = await new HttpClientAxios({\n ...axiosConfig\n }).api.post<DspResponseUserProfileResponseDto>(apiUrl);\n\n return response.data;\n};\n","import { getDudApiHostNameFromEnvironment, getExt } from 'sales-frontend-utils';\n\nimport { HttpClientAxios } from '../../client';\nimport { getServiceCode } from '../method-util';\n\nimport type {\n DownloadType,\n FileUploadExternalRequestDto,\n FileUploadExternalResponseDto\n} from './dud-external-file.dto';\nimport type { AxiosRequestConfig } from 'axios';\n\nconst getDayDiffFromToday = (date: Date) => {\n const diff = date.getTime() - new Date().getTime();\n\n return Math.floor(diff / (1000 * 60 * 60 * 24));\n};\n\nexport const postFileUploadMethod = async (params: FileUploadExternalRequestDto, config?: AxiosRequestConfig) => {\n const apiUrl = `${getDudApiHostNameFromEnvironment(getServiceCode(), location.hostname)}/v1/post/file`;\n const formData = new FormData();\n\n if (params.data instanceof File) {\n formData.append('data', params.data, params.name || params.data.name);\n } else if (params.data instanceof Blob) {\n formData.append('data', params.data, params.name || `dud-file.${getExt(params.data)}`);\n }\n\n params.fileIdentifierValue && formData.append('fileIdentifierValue', params.fileIdentifierValue);\n params.fileExtendContent1 && formData.append('fileExtendContent1', params.fileExtendContent1);\n params.fileExtendContent2 && formData.append('fileExtendContent2', params.fileExtendContent2);\n\n /**\n * expireDate , preservationTerm 중에 1가지만\n */\n params.expireDate &&\n formData.append('preservationTerm', (getDayDiffFromToday(params.expireDate) + 1).toString() || '1');\n params.preservationTerm && formData.append('preservationTerm', params.preservationTerm.toString() || '1');\n\n /**\n * 파일/blot객체에서 자동추출하도록 수정\n */\n formData.append('fileType', params.fileType || params.data.type.split('/').pop() || 'png');\n\n const httpClient = new HttpClientAxios(config);\n\n /**\n *\n * \"isSuccess\": true,\n * \"code\": \"nxl-dsp-dud-erro-5801\",\n * \"message\": \"파일 업로드 가능 확장자는 <br/>ozd, png, jpg, gif, pdf, json, xml, txt 입니다.\"\n *\n * @description \"isSuccess\": true, 이지만 실패처리인 케이스에 대한 별도 interceptor 처리가 필요\n */\n httpClient.api.interceptors.response.use((response) => {\n const { data } = response;\n\n if (data.isSuccess === true && data.code.includes('erro')) {\n return Promise.reject(response);\n }\n\n return response;\n });\n\n const res = await httpClient.api.post<FileUploadExternalResponseDto>(apiUrl, formData);\n\n return res.data;\n};\n\nexport async function postFileDownloadMethod<T extends 'BASE64' | 'BINARY'>(\n params: { fileMgmtId: string; outputType: T },\n config?: AxiosRequestConfig\n) {\n const apiUrl = `${getServiceCode()}/api/dud/v1/get/file`;\n\n const httpClient = new HttpClientAxios({\n ...config,\n ...(params.outputType === 'BINARY' && { responseType: 'blob' })\n });\n httpClient.api.interceptors.response.use((response) => {\n const { data } = response;\n\n if (params.outputType === 'BINARY' && !(data instanceof Blob)) {\n return Promise.reject(response);\n }\n\n if (params.outputType === 'BASE64' && data.code.includes('erro')) {\n return Promise.reject(response);\n }\n\n return response;\n });\n\n /**\n * FileExternalRequestDto 의 outputType 에 따라 returnType이 상이\n * outputType = 'BASE64' 이면 returnType 이 FileExternalResponseDto\n * outputType = 'BINARY' 이면 File\n */\n const res = await httpClient.api.post<DownloadType<T>>(apiUrl, params);\n\n return res.data;\n}\n","import { useMutation, useQuery } from '@tanstack/react-query';\n\nimport { postFileDownloadMethod, postFileUploadMethod } from './dud-external-file.service';\n\nimport type { CustomMutationOptions, CustomQueryOptions } from '../method.types';\nimport type {\n DownloadType,\n FileUploadExternalRequestDto,\n FileUploadExternalResponseDto\n} from './dud-external-file.dto';\nimport type { AxiosRequestConfig } from 'axios';\n\nexport const useDudExternalFileUploadQuery = (\n params: FileUploadExternalRequestDto,\n options?: CustomQueryOptions<FileUploadExternalResponseDto>,\n config?: AxiosRequestConfig\n) => {\n return useQuery({\n enabled: !!params,\n retry: false,\n queryKey: ['postFileUploadMethod', JSON.stringify(params)],\n queryFn: () => {\n return postFileUploadMethod(params, config);\n },\n ...options\n });\n};\n\nexport const useDudExternalFileUploadMutation = (\n options?: CustomMutationOptions<FileUploadExternalResponseDto, FileUploadExternalRequestDto>,\n config?: AxiosRequestConfig\n) => {\n return useMutation({\n mutationFn: (params: FileUploadExternalRequestDto) => postFileUploadMethod(params, config),\n ...options\n });\n};\n\nexport const useDudExternalFileDownloadQuery = <T extends 'BASE64' | 'BINARY'>(\n params: {\n fileMgmtId: string;\n outputType: T;\n },\n options?: CustomQueryOptions<DownloadType<T>>,\n config?: AxiosRequestConfig\n) => {\n return useQuery({\n enabled: !!params,\n retry: false,\n queryKey: ['postFileDownloadMethod', JSON.stringify(params)],\n queryFn: () => postFileDownloadMethod(params, config),\n ...options\n });\n};\n"]}
|
|
1
|
+
{"version":3,"sources":["../src/http-methods/method-util.ts","../src/http-client/cookie/cookie-client.ts","../src/http-client/header/header.types.ts","../src/http-client/header/header-manager.ts","../src/http-client/axios/http-client-axios.ts","../src/http-client/auth/auth-client.ts","../src/http-methods/sample/sample.service.ts","../src/http-methods/search-modal/address/address-search.service.ts","../src/http-methods/search-modal/address/use-search-address-query.ts","../src/http-methods/search-modal/address/postal-code.service.ts","../src/http-methods/search-modal/address/use-search-postal-code-query.ts","../src/http-methods/search-modal/address/address-standardization.service.ts","../src/http-methods/search-modal/address/use-search-address-standardization-query.ts","../src/http-methods/search-modal/occupation/occupation-search.service.ts","../src/http-methods/search-modal/occupation/use-search-occupation-query.ts","../src/http-methods/search-modal/vehicle/vehicle-search.service.ts","../src/http-methods/search-modal/vehicle/use-search-vehicle-query.ts","../src/http-methods/search-modal/employee/employee-search.service.ts","../src/http-methods/search-modal/employee/use-search-employee-profile-query.ts","../src/http-methods/search-modal/organization/organization-search.service.ts","../src/http-methods/search-modal/organization/use-search-organization-query.ts","../src/http-methods/search-modal/nationality/nationality-search.service.ts","../src/http-methods/search-modal/nationality/use-search-nationality-query.ts","../src/http-methods/search-modal/customer-list/customer-list-search.service.ts","../src/http-methods/search-modal/customer-list/use-search-customer-list-query.ts","../src/http-methods/search-modal/risk-grade/risk-grade-search.service.ts","../src/http-methods/search-modal/risk-grade/use-search-risk-grade-query.ts","../src/http-methods/search-modal/dea-customer-list/dea-customer-list-search.service.ts","../src/http-methods/search-modal/dea-customer-list/use-search-dea-customer-list-query.ts","../src/http-methods/search-modal/visa/visa-search.service.ts","../src/http-methods/search-modal/visa/use-search-visa-query.ts","../src/http-methods/fp-login/login-dsp.service.ts","../src/http-methods/remote-identity-verification/remote-identity-verification.service.ts","../src/http-methods/remote-identity-verification/use-remote-identity-verification-query.tsx","../src/http-methods/common-code/common-code-search.service.ts","../src/http-methods/common-code/use-search-common-code-query.ts","../src/http-methods/app-config/app-config.service.ts","../src/http-methods/dud-external-file/dud-external-file.service.ts","../src/http-methods/dud-external-file/use-dud-external-file-query.ts"],"names":["config","error","getDspApiHostNameFromEnvironment","useQuery","useMutation"],"mappings":"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","file":"method.js","sourcesContent":["export const getServiceCode = () => {\n // @ts-ignore\n if (typeof window.isStorybookEnv === 'boolean') {\n return '';\n } else {\n return `/${location.pathname.split('/')[1]}`;\n }\n};\n","/**\n * 클라이언트용 쿠키 함수\n */\nexport const cookieClient = {\n getCookie(name: string): string {\n if (typeof document === 'undefined') {\n return '';\n }\n const match = document.cookie.match(new RegExp(`(^|; *)${name}=([^;]*)`));\n\n return match ? decodeURIComponent(match[2] || '') : '';\n },\n\n setCookie(\n name: string,\n value: string,\n options: {\n expires?: number | Date; // number of days\n path?: string;\n domain?: string;\n secure?: boolean;\n } = {}\n ): void {\n if (typeof document === 'undefined') {\n return;\n }\n\n let cookieString = `${name}=${encodeURIComponent(value)}`;\n\n if (options.expires) {\n let expiresDate: Date;\n if (typeof options.expires === 'number') {\n expiresDate = new Date();\n expiresDate.setDate(expiresDate.getDate() + options.expires);\n } else {\n expiresDate = options.expires;\n }\n cookieString += `; expires=${expiresDate.toUTCString()}`;\n }\n\n cookieString += `; path=${options.path || '/'}`;\n\n if (options.domain) {\n cookieString += `; domain=${options.domain}`;\n }\n\n if (options.secure) {\n cookieString += '; secure';\n }\n\n document.cookie = cookieString;\n },\n deleteCookie(name: string, options: { path?: string; domain?: string } = {}): void {\n cookieClient.setCookie(name, '', { ...options, expires: -1 });\n }\n};\n","/**\n * @see https://loop.cloud.microsoft/p/eyJ3Ijp7InUiOiJodHRwczovL2hhbndoYWxpZmVtMzY1LnNoYXJlcG9pbnQuY29tLz9uYXY9Y3owbE1rWW1aRDFpSVVVd1FXdDJSbGhSV0VWUE1tUkNYMWhUZW5KWVVFdFBSVXByYWs1b1NrSlBjRk4wYm5wNmNsWmpMVUZ5YjI1UlJWOVdSREpUV25aeWVUUTJTV2swUlZrbVpqMHdNVk5OVGtkR1JsTkJXVE0xVVZaQ1ZrRkVRa1ZaVEVoRVNUSTBXRXhVVlZoV0ptTTlKbVpzZFdsa1BURSUzRCIsInIiOmZhbHNlfSwicCI6eyJ1IjoiaHR0cHM6Ly9oYW53aGFsaWZlbTM2NS5zaGFyZXBvaW50LmNvbS9jb250ZW50c3RvcmFnZS9DU1BfYmMyNDQwMTMtZDA1NS00MzVjLWI2NzQtMWZkNzRiM2FkNzNjLyVFQiVBQyVCOCVFQyU4NCU5QyUyMCVFQiU5RCVCQyVFQyU5RCVCNCVFQiVCOCU4QyVFQiU5RiVBQyVFQiVBNiVBQy9Mb29wQXBwRGF0YS8wOS0yLiUyMEJyaWRnZSUyMFNwZWMlMjAxLmxvb3A%2FbmF2PWN6MGxNa1pqYjI1MFpXNTBjM1J2Y21GblpTVXlSa05UVUY5aVl6STBOREF4TXkxa01EVTFMVFF6TldNdFlqWTNOQzB4Wm1RM05HSXpZV1EzTTJNbVpEMWlJVVV3UVd0MlJsaFJXRVZQTW1SQ1gxaFRlbkpZVUV0UFJVcHJhazVvU2tKUGNGTjBibnA2Y2xaakxVRnliMjVSUlY5V1JESlRXblp5ZVRRMlNXazBSVmttWmowd01WTk5Ua2RHUmxGRlYxTlFOelpMUWtsTFdrWkpXVUUzU1ZkWldGTklWa0ZUSm1NOUpUSkdKbVpzZFdsa1BURSUzRCIsInIiOmZhbHNlfSwiaSI6eyJpIjoiNTdkZmVhM2QtZDA2Yi00YWRlLWIxZjEtYjE4NDA4MmNlN2VjIn19\n */\nexport const customHeaderNames = [\n 'Accept-Language',\n 'DeviceId',\n 'LoginType',\n 'PlatformName',\n 'PlatformVersion',\n 'AppVersion',\n 'DeviceModel',\n 'FormFactor',\n 'LoginChannel'\n];\n\nexport const AT = 'AT';\nexport type GetterSync = (keyName: string) => string;\nexport type SetterSync = (keyName: string, value: string) => void;\n\nexport type GetterAsync = (keyName: string) => Promise<string> | string;\nexport type SetterAsync = (keyName: string, value: string) => Promise<void> | void;\n","import { AT, customHeaderNames, GetterSync, SetterSync } from './header.types';\n\nexport class HeaderManager {\n private getter: GetterSync;\n private setter: SetterSync;\n\n constructor(getter: GetterSync, setter: SetterSync) {\n this.getter = getter;\n this.setter = setter;\n }\n\n /**\n * 커스텀 헤더를 동기적으로 설정합니다.\n */\n setCustomHeaders(): void {\n customHeaderNames.forEach((headerName) => {\n const customHeaderKey = `X-Channel-${headerName}`;\n const headerValue = this.getter(customHeaderKey);\n if (headerValue) {\n this.setter(customHeaderKey, headerValue);\n }\n });\n }\n\n /**\n * 인증 토큰을 동기적으로 설정합니다.\n */\n setAuthToken(): void {\n const token = this.getter(AT);\n if (token) {\n this.setter('Authorization', `Bearer ${token}`);\n }\n }\n\n /**\n * 모든 헤더를 동기적으로 설정합니다.\n */\n setAllHeaders(): void {\n this.setCustomHeaders();\n this.setAuthToken();\n }\n}\n","import axios from 'axios';\nimport { addErrorLog, addRequestLog, addResponseLog } from 'sales-frontend-debug';\nimport { useClientSessionStore } from 'sales-frontend-stores';\n\nimport { AuthClient } from '../auth/auth-client';\nimport { cookieClient } from '../cookie/cookie-client';\nimport { HeaderManager } from '../header/header-manager';\n\nimport type { AxiosQueueType } from './types';\nimport type { AxiosError, AxiosResponse, AxiosInstance, AxiosRequestConfig } from 'axios';\nlet isRefreshed = true;\nconst axiosQueue: AxiosQueueType[] = [];\n\n/**\n * 쿠키에서 값을 가져오고, 없으면 기본값을 쿠키에 설정 후 반환하는 헬퍼 함수\n * @param key 쿠키 키\n * @param defaultValue 쿠키 값이 없을 때 사용할 기본값\n * @returns 쿠키 값 또는 기본값\n */\nconst getOrSetCookie = (key: string, defaultValue: string): string => {\n let value = cookieClient.getCookie(key);\n if (!value) {\n value = defaultValue;\n cookieClient.setCookie(key, value, { path: '/' });\n }\n\n return value;\n};\n\n/**\n * 전자청약\n * CSR용 http-client 입니다.\n * cookie , redirect , tokem 처리 방식은 CSR 환경에 맞게 구현됩니다.\n */\nexport class HttpClientAxios {\n config: AxiosRequestConfig;\n headerManager: HeaderManager;\n\n /**\n * axios의 request interceptor 동작시, 헤더에 주입될 헤더의 key,value\n */\n headers: Record<string, string> = {};\n\n /**\n * api연동을 수행할 실제 객체(axios, fetch 등의 다른 라이브러리로 교체가능한 영역)\n * 현재 버전에서는 axios를 사용하여 구현됨.\n */\n api: AxiosInstance;\n constructor(config: AxiosRequestConfig = {}) {\n this.config = config;\n\n /**\n * 헤더매니저 셋팅\n */\n const getter: HeaderManager['getter'] = (key) => {\n return cookieClient.getCookie(key);\n };\n const setter: HeaderManager['setter'] = (key, value) => {\n if (config?.headers) {\n config.headers[key] = value;\n }\n };\n this.headerManager = new HeaderManager(getter, setter);\n\n /**\n * api수행객체 최초 생성,\n * 공통으로 적용할 설정값이 있는경우 셋팅\n */\n this.api = axios.create({\n withCredentials: true,\n ...config\n });\n\n /**\n * 인터셉터 요청 처리\n */\n this.api.interceptors.request.use(\n async (config) => {\n const debugMode = cookieClient.getCookie('dsp-debug-mode') === 'on';\n\n /** 디버깅용 로그 */\n await addRequestLog(config);\n\n const debugRefreshQueueOff = config.headers?.['Debug-Refresh-Queue-Off'] === 'true';\n if (debugRefreshQueueOff) {\n isRefreshed = true;\n }\n\n /**\n * AT토큰 주입\n */\n const authClient = new AuthClient();\n const authorization = await authClient.getAT();\n console.log('authorization', authorization);\n if (authorization) {\n config.headers['Authorization'] = authorization;\n }\n\n if (debugMode) {\n console.log('debugMode header setting!');\n /**\n * 주소가 debugMode 경우 테스트용 헤더 삽입\n */\n config.headers['x-channel-appversion'] = getOrSetCookie('x-channel-appversion', '3.1');\n config.headers['x-channel-deviceid'] = getOrSetCookie('x-channel-deviceid', 'deviceid');\n config.headers['x-channel-devicemodel'] = getOrSetCookie('x-channel-devicemodel', 'iPHONE13');\n config.headers['x-channel-formfactor'] = getOrSetCookie('x-channel-formfactor', 'Phone');\n config.headers['x-channel-loginchannel'] = getOrSetCookie('x-channel-loginchannel', 'DSP');\n config.headers['x-channel-logintype'] = getOrSetCookie('x-channel-logintype', 'ONPA_PIN');\n config.headers['x-channel-platformname'] = getOrSetCookie('x-channel-platformname', 'IOS');\n config.headers['x-channel-platformversion'] = getOrSetCookie('x-channel-platformversion', '15.4.1');\n config.headers['x-channel-screenid'] = getOrSetCookie('x-channel-screenid', location.pathname);\n config.headers['x-channel-business-work-division-code'] = getOrSetCookie(\n 'x-channel-business-work-division-code',\n 'DEA'\n );\n } else {\n const session = useClientSessionStore.getState().clientSession;\n\n config.headers['x-channel-appversion'] = session.appVersion;\n config.headers['x-channel-deviceid'] = session.deviceId;\n config.headers['x-channel-devicemodel'] = session.deviceModel;\n config.headers['x-channel-formfactor'] = session.formFactor;\n config.headers['x-channel-loginchannel'] = session.loginChannel;\n config.headers['x-channel-logintype'] = session.loginType;\n config.headers['x-channel-platformname'] = session.platformName;\n config.headers['x-channel-platformversion'] = session.platformVersion;\n config.headers['x-channel-screenid'] = location.pathname;\n config.headers['x-channel-business-work-division-code'] = session.businessWorkDivisionCode;\n }\n\n /**\n * 커스텀헤더 주입\n */\n // this.headerManager.setCustomHeaders();\n /**\n *\n * this.headers설정된 값을 config headers에 주입\n */\n const headerEntries = Object.entries(this.headers);\n headerEntries.forEach(([key, value]) => {\n if (config?.headers) {\n config.headers[key] = value;\n }\n });\n\n /**\n * isRefreshed가 false이면(= 에러발생하여 token재발행중을 의미)\n * 새로운 요청들을 처리하지 않고,큐에 저장\n * 401에러 Queue처리 Request interceptor 등록\n */\n if (!isRefreshed) {\n return new Promise((resolve, reject) => {\n axiosQueue.push({ resolve, reject, config });\n }).then(() => config);\n }\n\n return config;\n },\n (error) => {\n return Promise.reject(error);\n }\n );\n\n /**\n * 인터셉터 응답 처리\n */\n this.api.interceptors.response.use(\n async (response: AxiosResponse) => {\n /** 디버깅용 로그 */\n await addResponseLog(response);\n if (response.data.isSuccess === false) {\n /**\n * 200 응답이라도 , isSuccess === false인 경우 에러로 reject\n */\n return Promise.reject(response);\n }\n\n return response;\n },\n async (error: AxiosError) => {\n /** 디버깅용 로그 */\n await addErrorLog(error);\n\n const originalRequest = error.config;\n const debugRefreshQueueOff = config.headers?.['Debug-Refresh-Queue-Off'] === 'true';\n /**\n * 401에러 Queue처리\n */\n if (error.response?.status === 401 && !debugRefreshQueueOff) {\n isRefreshed = false;\n const client = new AuthClient();\n client\n .refreshToken()\n .then(() => {\n /**\n * 토큰 갱신 성공, 플래그를 true로 설정\n */\n isRefreshed = true;\n\n /**\n * 큐에 쌓여있던 모든 요청 재시도\n */\n while (axiosQueue.length > 0) {\n const p = axiosQueue.shift(); // axiosQueue에서 첫 번째 요소를 제거하고 반환합니다.\n if (p) {\n /**\n * api 인스턴스를 통해 요청을 재시도합니다. 따라서 재요청들은 다시 인터셉터를 타게 됩니다.\n * 신규토큰을 주입받고 정상처리\n * @todo 재시도후 reject시에는 로그인페이지로 보내는 브릿지 함수를 호출하도록 처리가 필요해보임.\n *\n * @note 11/07 : 무한루프이슈 해결을 위해 , 새로운 인스턴스를 사용하도록 수정\n */\n axios(p.config)\n .then((response) => p.resolve(response))\n .catch((err) => p.reject(err));\n }\n }\n })\n .catch((error) => {\n /**\n * 토큰 재발행중 에러 발생한 경우 처리\n * @todo 로그인페이지 이동(?)\n */\n return Promise.reject(error);\n });\n\n return new Promise((resolve, reject) => {\n if (originalRequest) {\n axiosQueue.push({ resolve, reject, config: originalRequest });\n }\n });\n } else {\n return Promise.reject(error);\n }\n }\n );\n }\n\n setHeaders(headers: Record<string, string>) {\n this.headers = {\n ...this.headers,\n ...headers\n };\n }\n}\n","import { Bridge } from 'sales-frontend-bridge';\nimport { isDspApp } from 'sales-frontend-utils';\nimport { getDspExecutionEnvironment } from 'sales-frontend-utils';\n\nimport { getServiceCode } from '../../http-methods/method-util';\nimport { HttpClientAxios } from '../axios/http-client-axios';\nimport { cookieClient } from '../cookie/cookie-client';\n\nexport class AuthClient {\n defaultTokenType = 'Bearer';\n /**\n * App인지 확인\n * @returns boolean\n */\n isApp() {\n return isDspApp();\n }\n\n getAuthorizationFromCookie() {\n const accessToken = cookieClient.getCookie('accessToken');\n\n return accessToken ? `${this.defaultTokenType} ${accessToken}` : undefined;\n }\n\n async getAuthorizationFromBridge() {\n const { tokenType, accessToken } = await Bridge.native.getAccessToken();\n\n return accessToken ? `${tokenType || this.defaultTokenType} ${accessToken}` : undefined;\n }\n\n /**\n *\n * @returns Promise<string | undefined>\n */\n async getAT(): Promise<string | undefined> {\n const debugMode = cookieClient.getCookie('dsp-debug-mode') === 'on';\n\n /**\n * debugMode 경우 cookie에서 'AT' 를 읽어온다.\n */\n if (debugMode) {\n console.log('debugMode token setting!');\n\n return this.getAuthorizationFromCookie();\n }\n\n if (this.isApp()) {\n return await this.getAuthorizationFromBridge();\n } else {\n /**\n * DSP 앱 외에는 쿠키 참조\n */\n return this.getAuthorizationFromCookie();\n }\n }\n\n /**\n * RT를 이용하여 신규 AT/RT발행\n * 기존토큰은 무효화처리\n * 쿠키에 저장.\n */\n async refreshToken(): Promise<void> {\n if (!this.isApp()) {\n // 신규 앱 외에는 내부 api 호출로 토큰 갱신\n const httpClient = new HttpClientAxios({});\n\n await httpClient.api.post(`${getServiceCode()}/internal/api/auth/refresh`);\n\n // 영업 포털 환경일 경우 세션연장 이벤트 발생(to 부모)\n if (getDspExecutionEnvironment() === 'iframe') {\n Bridge.iframe.dspKeepCallerSession();\n }\n }\n }\n}\n","import { HttpClientAxios } from '../../client';\n\nimport type { TestResponse } from './sample.dto';\nimport type { AxiosRequestConfig } from 'axios';\n\ninterface TestRequest {\n id?: number;\n config?: AxiosRequestConfig;\n setupFn?: (httpClient: HttpClientAxios) => void;\n}\nexport const getTestMethod = async ({ id, config, setupFn }: TestRequest) => {\n const testAPI = `https://jsonplaceholder.typicode.com/users/${id}`;\n\n const httpClient = new HttpClientAxios(config);\n\n const res = await httpClient.api.get<TestResponse>(testAPI);\n\n return res.data;\n};\n","import { getDspApiHostNameFromEnvironment } from 'sales-frontend-utils';\n\nimport { HttpClientAxios } from '../../../client';\n\nimport type { AddressListRequestDto, DspResponseAddressListResponseDto } from './address-search.dto';\nimport type { AxiosRequestConfig } from 'axios';\n\nexport const getAddressListMethod = async (params: AddressListRequestDto, config?: AxiosRequestConfig) => {\n const apiUrl = `${getDspApiHostNameFromEnvironment('dis')}/v1/get/codes/address-list`;\n const httpClient = new HttpClientAxios(config);\n\n const res = await httpClient.api.post<DspResponseAddressListResponseDto>(apiUrl, params);\n\n return res.data;\n};\n","import { useQuery } from '@tanstack/react-query';\n\nimport { getAddressListMethod } from './address-search.service';\n\nimport type { AddressListRequestDto, DspResponseAddressListResponseDto } from './address-search.dto';\nimport type { CustomQueryOptions } from '../../method.types';\nimport type { AxiosRequestConfig } from 'axios';\n\nexport const useSearchAddressQuery = (\n params: AddressListRequestDto,\n options?: CustomQueryOptions<DspResponseAddressListResponseDto>,\n config?: AxiosRequestConfig\n) => {\n return useQuery({\n enabled: !!params.searchKeyWord,\n retry: false,\n queryKey: ['searchAddress', JSON.stringify(params)],\n queryFn: () => {\n return getAddressListMethod(params, config);\n },\n ...options\n });\n};\n","import { getDspApiHostNameFromEnvironment } from 'sales-frontend-utils';\n\nimport { HttpClientAxios } from '../../../client';\n\nimport type { AddressPostalCodeRequestDto, DspResponseAddressPostalCodeResponseDto } from './postal-code.dto';\nimport type { AxiosRequestConfig } from 'axios';\n\nexport const getAddressPostalCodeMethod = async (params: AddressPostalCodeRequestDto, config?: AxiosRequestConfig) => {\n const apiUrl = `${getDspApiHostNameFromEnvironment('dis')}/v1/get/codes/address/postal-code`;\n const httpClient = new HttpClientAxios(config);\n const res = await httpClient.api.post<DspResponseAddressPostalCodeResponseDto>(apiUrl, params);\n\n return res.data;\n};\n","import { useQuery } from '@tanstack/react-query';\n\nimport { getAddressPostalCodeMethod } from './postal-code.service';\n\nimport type { AddressPostalCodeRequestDto, DspResponseAddressPostalCodeResponseDto } from './postal-code.dto';\nimport type { CustomQueryOptions } from '../../method.types';\nimport type { AxiosRequestConfig } from 'axios';\n\nexport const useSearchPostalCodeQuery = (\n params: AddressPostalCodeRequestDto,\n options?: CustomQueryOptions<DspResponseAddressPostalCodeResponseDto>,\n config?: AxiosRequestConfig\n) => {\n return useQuery({\n enabled: !!params.searchWordName,\n retry: false,\n queryKey: ['searchPostalCode', JSON.stringify(params)],\n queryFn: () => {\n return getAddressPostalCodeMethod(params, config);\n },\n ...options\n });\n};\n","import { getDspApiHostNameFromEnvironment } from 'sales-frontend-utils';\n\nimport { HttpClientAxios } from '../../../client';\n\nimport type {\n AddressStandardizationListRequestDto,\n DspResponseAddressStandardizationListResponseDto\n} from './address-standardization.dto';\nimport type { AxiosRequestConfig } from 'axios';\n\nexport const getAddressStandardizationListMethod = async (\n params: AddressStandardizationListRequestDto,\n config?: AxiosRequestConfig\n) => {\n const apiUrl = `${getDspApiHostNameFromEnvironment('dis')}/v1/get/codes/address-standardization-list`;\n const httpClient = new HttpClientAxios(config);\n const res = await httpClient.api.post<DspResponseAddressStandardizationListResponseDto>(apiUrl, params);\n\n return res.data;\n};\n","import { useQuery } from '@tanstack/react-query';\n\nimport { getAddressStandardizationListMethod } from './address-standardization.service';\n\nimport type {\n AddressStandardizationListRequestDto,\n DspResponseAddressStandardizationListResponseDto\n} from './address-standardization.dto';\nimport type { CustomQueryOptions } from '../../method.types';\nimport type { AxiosRequestConfig } from 'axios';\n\nexport const useSearchAddressStandardizationQuery = (\n params: AddressStandardizationListRequestDto,\n options?: CustomQueryOptions<DspResponseAddressStandardizationListResponseDto>,\n config?: AxiosRequestConfig\n) => {\n return useQuery({\n enabled: !!params.baseAddress,\n retry: false,\n queryKey: ['searchAddressStandardization', JSON.stringify(params)],\n queryFn: () => {\n return getAddressStandardizationListMethod(params, config);\n },\n ...options\n });\n};\n","import { AxiosRequestConfig } from 'axios';\nimport { getDspApiHostNameFromEnvironment } from 'sales-frontend-utils';\n\nimport { HttpClientAxios } from '../../../client';\n\nimport type {\n DspResponseOccupationDetailResponseDto,\n DspResponseOccupationListResponseDto,\n OccupationDetailRequestDto,\n OccupationListRequestDto\n} from './occupation-search.dto';\n\n/**\n * @description 직종 목록 조회\n */\nexport const getOccupationListMethod = async (params: OccupationListRequestDto, config?: AxiosRequestConfig) => {\n const apiUrl = `${getDspApiHostNameFromEnvironment('dis')}/v1/get/codes/occupation-list`;\n const httpClient = new HttpClientAxios(config);\n const res = await httpClient.api.post<DspResponseOccupationListResponseDto>(apiUrl, params);\n\n return res.data;\n};\n\n/**\n * @description 직종 상세 조회\n */\nexport const getOccupationDetailMethod = async (params: OccupationDetailRequestDto, config?: AxiosRequestConfig) => {\n const apiUrl = `${getDspApiHostNameFromEnvironment('dis')}/v1/get/codes/occupation/detail`;\n const httpClient = new HttpClientAxios(config);\n const res = await httpClient.api.post<DspResponseOccupationDetailResponseDto>(apiUrl, params);\n\n return res.data;\n};\n","import { useQuery } from '@tanstack/react-query';\n\nimport { getOccupationDetailMethod, getOccupationListMethod } from './occupation-search.service';\n\nimport type {\n DspResponseOccupationDetailResponseDto,\n DspResponseOccupationListResponseDto,\n OccupationDetailRequestDto,\n OccupationListRequestDto\n} from './occupation-search.dto';\nimport type { CustomQueryOptions } from '../../method.types';\nimport type { AxiosRequestConfig } from 'axios';\n\n/**\n * @description 직종 목록 조회 쿼리\n */\nexport const useSearchOccupationQuery = (\n params: OccupationListRequestDto,\n options?: CustomQueryOptions<DspResponseOccupationListResponseDto>,\n config?: AxiosRequestConfig\n) => {\n return useQuery({\n enabled: true,\n retry: false,\n queryKey: ['searchOccupationList', JSON.stringify(params)],\n queryFn: () => {\n return getOccupationListMethod(params, config);\n },\n ...options\n });\n};\n\n/**\n * @description 직종 상세 조회 쿼리\n */\nexport const useSearchOccupationDetailQuery = (\n params: OccupationDetailRequestDto,\n options?: CustomQueryOptions<DspResponseOccupationDetailResponseDto>,\n config?: AxiosRequestConfig\n) => {\n return useQuery({\n enabled: true,\n retry: false,\n queryKey: ['searchOccupationDetail', JSON.stringify(params)],\n queryFn: () => {\n return getOccupationDetailMethod(params, config);\n },\n ...options\n });\n};\n","import { AxiosRequestConfig } from 'axios';\nimport { getDspApiHostNameFromEnvironment } from 'sales-frontend-utils';\n\nimport { HttpClientAxios } from '../../../client';\n\nimport type { DspResponseVehicleTypeListResponseDto } from './vehicle-search.dto';\n\nexport const getVehicleListMethod = async (config?: AxiosRequestConfig) => {\n const apiUrl = `${getDspApiHostNameFromEnvironment('dis')}/v1/get/codes/vehicle-type-list`;\n const httpClient = new HttpClientAxios(config);\n const res = await httpClient.api.post<DspResponseVehicleTypeListResponseDto>(apiUrl);\n\n return res.data;\n};\n","import { useQuery } from '@tanstack/react-query';\n\nimport { getVehicleListMethod } from './vehicle-search.service';\n\nimport type { DspResponseVehicleTypeListResponseDto } from './vehicle-search.dto';\nimport type { CustomQueryOptions } from '../../method.types';\nimport type { AxiosRequestConfig } from 'axios';\n\nexport const useSearchVehicleQuery = (\n options?: CustomQueryOptions<DspResponseVehicleTypeListResponseDto>,\n config?: AxiosRequestConfig\n) => {\n return useQuery({\n enabled: true,\n retry: false,\n queryKey: ['searchVehicle'],\n queryFn: () => {\n return getVehicleListMethod(config);\n },\n ...options\n });\n};\n","import { AxiosRequestConfig } from 'axios';\nimport { getDspApiHostNameFromEnvironment } from 'sales-frontend-utils';\n\nimport { HttpClientAxios } from '../../../client';\n\nimport type { DspResponseEmployeeProfileResponseDto, EmployeeProfileSearchRequestDto } from './employee-search.dto';\n\nexport const getEmployeeProfileListMethod = async (\n params: EmployeeProfileSearchRequestDto,\n config?: AxiosRequestConfig\n) => {\n const apiUrl = `${getDspApiHostNameFromEnvironment('dea')}/v1/get/participant/profile/employee`;\n const httpClient = new HttpClientAxios(config);\n const res = await httpClient.api.post<DspResponseEmployeeProfileResponseDto>(apiUrl, params);\n\n return res.data;\n};\n","import { useQuery } from '@tanstack/react-query';\n\nimport { getEmployeeProfileListMethod } from './employee-search.service';\n\nimport type { DspResponseEmployeeProfileResponseDto, EmployeeProfileSearchRequestDto } from './employee-search.dto';\nimport type { CustomQueryOptions } from '../../method.types';\nimport type { AxiosRequestConfig } from 'axios';\n\nexport const useSearchEmployeeProfileQuery = (\n params: EmployeeProfileSearchRequestDto,\n options?: CustomQueryOptions<DspResponseEmployeeProfileResponseDto>,\n config?: AxiosRequestConfig\n) => {\n return useQuery({\n enabled: !!params.searchWord,\n retry: false,\n queryKey: ['searchEmployeeProfile', JSON.stringify(params)],\n queryFn: () => {\n return getEmployeeProfileListMethod(params, config);\n },\n ...options\n });\n};\n","import { AxiosRequestConfig } from 'axios';\nimport { getDspApiHostNameFromEnvironment } from 'sales-frontend-utils';\n\nimport { HttpClientAxios } from '../../../client';\n\nimport type { DspResponseOrganizationProfileResponse, OrganizationSearchRequestDto } from './organization-search.dto';\n\nexport const getOrganizationProfileListMethod = async (\n params: OrganizationSearchRequestDto,\n config?: AxiosRequestConfig\n) => {\n const apiUrl = `${getDspApiHostNameFromEnvironment('dea')}/v1/get/participant/profile/organization`;\n const httpClient = new HttpClientAxios(config);\n const res = await httpClient.api.post<DspResponseOrganizationProfileResponse>(apiUrl, params);\n\n return res.data;\n};\n","import { useQuery } from '@tanstack/react-query';\n\nimport { getOrganizationProfileListMethod } from './organization-search.service';\n\nimport type { DspResponseOrganizationProfileResponse, OrganizationSearchRequestDto } from './organization-search.dto';\nimport type { CustomQueryOptions } from '../../method.types';\nimport type { AxiosRequestConfig } from 'axios';\n\nexport const useSearchOrganizationQuery = (\n params: OrganizationSearchRequestDto,\n options?: CustomQueryOptions<DspResponseOrganizationProfileResponse>,\n config?: AxiosRequestConfig\n) => {\n return useQuery({\n enabled: !!params.searchWord,\n retry: false,\n queryKey: ['searchOrganization', JSON.stringify(params)],\n queryFn: () => {\n return getOrganizationProfileListMethod(params, config);\n },\n ...options\n });\n};\n","import { AxiosRequestConfig } from 'axios';\nimport { getDspApiHostNameFromEnvironment } from 'sales-frontend-utils';\n\nimport { HttpClientAxios } from '../../../client';\n\nimport type { DspResponseNationalityListResponseDto, NationalitySearchRequestDto } from './nationality-search.dto';\n\nexport const getNationalityListMethod = async (params: NationalitySearchRequestDto, config?: AxiosRequestConfig) => {\n const apiUrl = `${getDspApiHostNameFromEnvironment('dis')}/v1/get/codes/nationality-list`;\n\n const httpClient = new HttpClientAxios(config);\n const res = await httpClient.api.post<DspResponseNationalityListResponseDto>(apiUrl, params);\n\n return res.data;\n};\n","import { useQuery } from '@tanstack/react-query';\n\nimport { getNationalityListMethod } from './nationality-search.service';\n\nimport type { DspResponseNationalityListResponseDto, NationalitySearchRequestDto } from './nationality-search.dto';\nimport type { CustomQueryOptions } from '../../method.types';\nimport type { AxiosRequestConfig } from 'axios';\n\nexport const useSearchNationalityQuery = (\n params: NationalitySearchRequestDto,\n options?: CustomQueryOptions<DspResponseNationalityListResponseDto>,\n config?: AxiosRequestConfig\n) => {\n console.log('search nationality', params.searchKeyWord);\n\n return useQuery({\n enabled: !!params.searchKeyWord,\n retry: false,\n queryKey: ['searchNationality', JSON.stringify(params)],\n queryFn: () => {\n return getNationalityListMethod(params, config);\n },\n ...options\n });\n};\n","import { getDspApiHostNameFromEnvironment } from 'sales-frontend-utils';\n\nimport { HttpClientAxios } from '../../../client';\n\nimport type { CustomerListRequestDto, DspResponseCustomerListResponseDto } from './customer-list-search.dto';\nimport type { AxiosRequestConfig } from 'axios';\n\nexport const getCustomerListMethod = async (params: CustomerListRequestDto, config?: AxiosRequestConfig) => {\n const apiUrl = `${getDspApiHostNameFromEnvironment('dis')}/v1/get/customer-list`;\n\n const httpClient = new HttpClientAxios(config);\n const res = await httpClient.api.post<DspResponseCustomerListResponseDto>(apiUrl, params);\n\n return res.data;\n};\n","import { useQuery } from '@tanstack/react-query';\n\nimport { getCustomerListMethod } from './customer-list-search.service';\n\nimport type { CustomerListRequestDto, DspResponseCustomerListResponseDto } from './customer-list-search.dto';\nimport type { CustomQueryOptions } from '../../method.types';\nimport type { AxiosRequestConfig } from 'axios';\n\nexport const useSearchCustomerListQuery = (\n params: CustomerListRequestDto,\n options?: CustomQueryOptions<DspResponseCustomerListResponseDto>,\n config?: AxiosRequestConfig\n) => {\n return useQuery({\n enabled: !!params.customerName,\n retry: false,\n queryKey: ['searchCustomerList', JSON.stringify(params)],\n queryFn: () => {\n return getCustomerListMethod(params, config);\n },\n ...options\n });\n};\n","import { AxiosRequestConfig } from 'axios';\nimport { getDspApiHostNameFromEnvironment } from 'sales-frontend-utils';\n\nimport { HttpClientAxios } from '../../../client';\n\nimport type { DspResponseRiskGradeResponseDto, RiskGradeRequestDto } from './risk-grade-search.dto';\n\nexport const getRiskGradeMethod = async (params: RiskGradeRequestDto, config?: AxiosRequestConfig) => {\n const apiUrl = `${getDspApiHostNameFromEnvironment('dis')}/v1/get/codes/risk-grade`;\n const httpClient = new HttpClientAxios(config);\n const res = await httpClient.api.post<DspResponseRiskGradeResponseDto>(apiUrl, params);\n\n return res.data;\n};\n","import { useQuery } from '@tanstack/react-query';\n\nimport { getRiskGradeMethod } from './risk-grade-search.service';\n\nimport type { DspResponseRiskGradeResponseDto, RiskGradeRequestDto } from './risk-grade-search.dto';\nimport type { CustomQueryOptions } from '../../method.types';\nimport type { AxiosRequestConfig } from 'axios';\n\nexport const useSearchRiskGradeQuery = (\n params: RiskGradeRequestDto,\n options?: CustomQueryOptions<DspResponseRiskGradeResponseDto>,\n config?: AxiosRequestConfig\n) => {\n return useQuery({\n enabled: !!params.occupationIndustryCode && !!params.vehicleTypeCode,\n retry: false,\n queryKey: ['searchRiskGrade', JSON.stringify(params)],\n queryFn: () => {\n return getRiskGradeMethod(params, config);\n },\n ...options\n });\n};\n","import { AxiosRequestConfig } from 'axios';\nimport { getDspApiHostNameFromEnvironment } from 'sales-frontend-utils';\n\nimport { HttpClientAxios } from '../../../client';\n\nimport type {\n DspResponseListPersonalCustomerProfileResponseDto,\n PersonalCustomerProfileRequestDto\n} from './dea-customer-list-search.dto';\n\nexport const getDspCustomerListMethod = async (\n params: PersonalCustomerProfileRequestDto,\n config?: AxiosRequestConfig\n) => {\n const apiUrl = `${getDspApiHostNameFromEnvironment('dea')}/v1/get/participant/profile/customer/personal`;\n\n const httpClient = new HttpClientAxios(config);\n const res = await httpClient.api.post<DspResponseListPersonalCustomerProfileResponseDto>(apiUrl, params);\n\n return res.data;\n};\n","import { useQuery } from '@tanstack/react-query';\n\nimport { getDspCustomerListMethod } from './dea-customer-list-search.service';\n\nimport type {\n DspResponseListPersonalCustomerProfileResponseDto,\n PersonalCustomerProfileRequestDto\n} from './dea-customer-list-search.dto';\nimport type { CustomQueryOptions } from '../../method.types';\nimport type { AxiosRequestConfig } from 'axios';\n\nexport const useSearchDspCustomerListQuery = (\n params: PersonalCustomerProfileRequestDto,\n options?: CustomQueryOptions<DspResponseListPersonalCustomerProfileResponseDto>,\n config?: AxiosRequestConfig\n) => {\n return useQuery({\n enabled: !!params.customerName,\n retry: false,\n queryKey: ['searchDspCustomerList', JSON.stringify(params)],\n queryFn: () => {\n return getDspCustomerListMethod(params, config);\n },\n ...options\n });\n};\n","import { AxiosRequestConfig } from 'axios';\nimport { getDspApiHostNameFromEnvironment } from 'sales-frontend-utils';\n\nimport { HttpClientAxios } from '../../../client';\n\nimport type { DspResponseVisaStatusListResponseDto } from './visa-search.dto';\n\nexport const getVisaListMethod = async (config?: AxiosRequestConfig) => {\n const apiUrl = `${getDspApiHostNameFromEnvironment('dis')}/v1/get/codes/visa-status-list`;\n const httpClient = new HttpClientAxios(config);\n const res = await httpClient.api.post<DspResponseVisaStatusListResponseDto>(apiUrl);\n\n return res.data;\n};\n","import { useQuery } from '@tanstack/react-query';\n\nimport { getVisaListMethod } from './visa-search.service';\n\nimport type { DspResponseVisaStatusListResponseDto } from './visa-search.dto';\nimport type { CustomQueryOptions } from '../../method.types';\nimport type { AxiosRequestConfig } from 'axios';\n\nexport const useSearchVisaQuery = (\n options?: CustomQueryOptions<DspResponseVisaStatusListResponseDto>,\n config?: AxiosRequestConfig\n) => {\n return useQuery({\n enabled: true,\n retry: false,\n queryKey: ['searchVisa'],\n queryFn: () => {\n return getVisaListMethod(config);\n },\n ...options\n });\n};\n","import { getDspApiHostNameFromEnvironment } from 'sales-frontend-utils';\n\nimport { HttpClientAxios } from '../../client';\n\nimport { FpLoginResponseDto } from './login-dsp.dto';\n\n/**\n * @param userId 사번\n */\nexport const postLoginMethod = async (userId: number) => {\n console.log('userId', userId);\n const apiUrl = `${getDspApiHostNameFromEnvironment('dat')}/v1/post/login`;\n const httpClient = new HttpClientAxios({\n headers: {\n 'Debug-Refresh-Queue-Off': 'true'\n }\n });\n\n const res = await httpClient.api.post<FpLoginResponseDto>(apiUrl, {\n userId,\n channelType: 'DSP_TABLET'\n });\n\n return res.data;\n};\n","import { getDspApiHostNameFromEnvironment } from 'sales-frontend-utils';\n\nimport { HttpClientAxios } from '../../client';\nimport { getServiceCode } from '../method-util';\n\nimport type { ApiConfig } from '../shared.dto';\nimport type {\n RemoteIdentityVerificationSystemTokenRequestDto,\n DspResponseRemoteIdentityVerificationSystemTokenResponseDto,\n RemoteIdentityVerificationSystemIdentificationCardRequestDto,\n DspResponseRemoteIdentityVerificationSystemIdentificationCardResponseDto\n} from './remote-identity-verification.dto';\n\n/**\n * 토큰 발급 API\n * @param params\n * @param axiosConfig\n * @returns\n */\nexport const getRemoteIdentityVerificationSystemToken = async (\n params: RemoteIdentityVerificationSystemTokenRequestDto,\n axiosConfig?: ApiConfig\n) => {\n const apiUrl = `${getDspApiHostNameFromEnvironment('dea')}/v1/post/participant/remote-identity-verification-system/token`;\n\n const response = await new HttpClientAxios({\n ...axiosConfig\n }).api.post<DspResponseRemoteIdentityVerificationSystemTokenResponseDto>(apiUrl, params);\n\n return response.data;\n};\n\n/**\n * 비대면 인증 시스템 신분증 진위확인 API\n * @param params 진위확인 요청 파라미터\n * @param axiosConfig API 설정\n * @returns 신분증 진위확인 응답 데이터\n */\nexport const confirmRemoteIdentityVerificationSystemIdentificationCard = async (\n params: RemoteIdentityVerificationSystemIdentificationCardRequestDto,\n axiosConfig?: ApiConfig\n) => {\n const apiUrl = `${getDspApiHostNameFromEnvironment('dea')}/v1/post/participant/remote-identity-verification-system/identification-card/confirm`;\n\n const response = await new HttpClientAxios({\n ...axiosConfig\n }).api.post<DspResponseRemoteIdentityVerificationSystemIdentificationCardResponseDto>(apiUrl, params);\n\n return response.data;\n};\n","import { useMutation } from '@tanstack/react-query';\n\nimport { CustomMutationOptions } from '../method.types';\n\nimport {\n RemoteIdentityVerificationSystemIdentificationCardResponseDto,\n RemoteIdentityVerificationSystemIdentificationCardRequestDto\n} from './remote-identity-verification.dto';\nimport { confirmRemoteIdentityVerificationSystemIdentificationCard } from './remote-identity-verification.service';\n\n/**\n * 비대면 인증 시스템 신분증 진위확인 Mutation\n * @param options\n * @returns\n */\nexport const useConfirmRemoteIdentityVerificationSystemIdentificationCardMutation = (\n options?: CustomMutationOptions<\n RemoteIdentityVerificationSystemIdentificationCardResponseDto,\n RemoteIdentityVerificationSystemIdentificationCardRequestDto\n >\n) => {\n return useMutation({\n mutationKey: ['confirmRemoteIdentityVerificationSystemIdentificationCard'],\n mutationFn: async (params) => {\n const response = await confirmRemoteIdentityVerificationSystemIdentificationCard(params);\n\n if (response.isSuccess === false) {\n throw new Error(`${response.code}: ${response.message}`);\n }\n\n return response.data;\n },\n ...options\n });\n};\n","import { AxiosRequestConfig } from 'axios';\nimport { getDspApiHostNameFromEnvironment } from 'sales-frontend-utils';\n\nimport { HttpClientAxios } from '../../client';\n\nimport type { CommonCodeRequestDto, DspResponseCommonCodeResponseDto } from './common-code-search.dto';\n\nexport const getCommonCodeListMethod = async (param: CommonCodeRequestDto, config?: AxiosRequestConfig) => {\n const apiUrl = `${getDspApiHostNameFromEnvironment('dea')}/v1/get/common-code/list`;\n const httpClient = new HttpClientAxios(config);\n const res = await httpClient.api.post<DspResponseCommonCodeResponseDto>(apiUrl, param);\n\n return res.data;\n};\n","import { useQuery } from '@tanstack/react-query';\n\nimport { CustomQueryOptions } from '../method.types';\n\nimport { getCommonCodeListMethod } from './common-code-search.service';\n\nimport type { CommonCodeRequestDto, DspResponseCommonCodeResponseDto } from './common-code-search.dto';\nimport type { AxiosRequestConfig } from 'axios';\n\nexport const useSearchCommonCodeQuery = (\n param: CommonCodeRequestDto,\n options?: CustomQueryOptions<DspResponseCommonCodeResponseDto>,\n config?: AxiosRequestConfig\n) => {\n return useQuery({\n enabled: !!param.commonCodeId,\n retry: false,\n queryKey: ['searchCommonCode', param.commonCodeId],\n queryFn: () => {\n return getCommonCodeListMethod(param, config);\n },\n ...options\n });\n};\n","import { getDspApiHostNameFromEnvironment } from 'sales-frontend-utils';\n\nimport { HttpClientAxios } from '../../client';\n\nimport type { ApiConfig } from '../shared.dto';\nimport type { DspResponseUserProfileResponseDto } from './app-config.dto';\n\n/**\n * FP 기본 정보를 조회합니다.\n * @param axiosConfig\n * @returns\n */\nexport const getUserProfile = async (axiosConfig?: ApiConfig) => {\n const apiUrl = `${getDspApiHostNameFromEnvironment('dat')}/v1/get/user/profile`;\n const response = await new HttpClientAxios({\n ...axiosConfig\n }).api.post<DspResponseUserProfileResponseDto>(apiUrl);\n\n return response.data;\n};\n","import { getDudApiHostNameFromEnvironment, getExt } from 'sales-frontend-utils';\n\nimport { HttpClientAxios } from '../../client';\nimport { getServiceCode } from '../method-util';\n\nimport type {\n DownloadType,\n FileUploadExternalRequestDto,\n FileUploadExternalResponseDto\n} from './dud-external-file.dto';\nimport type { AxiosRequestConfig } from 'axios';\n\nconst getDayDiffFromToday = (date: Date) => {\n const diff = date.getTime() - new Date().getTime();\n\n return Math.floor(diff / (1000 * 60 * 60 * 24));\n};\n\nexport const postFileUploadMethod = async (params: FileUploadExternalRequestDto, config?: AxiosRequestConfig) => {\n const apiUrl = `${getDudApiHostNameFromEnvironment()}/v1/post/file`;\n const formData = new FormData();\n\n if (params.data instanceof File) {\n formData.append('data', params.data, params.name || params.data.name);\n } else if (params.data instanceof Blob) {\n formData.append('data', params.data, params.name || `dud-file.${getExt(params.data)}`);\n }\n\n params.fileIdentifierValue && formData.append('fileIdentifierValue', params.fileIdentifierValue);\n params.fileExtendContent1 && formData.append('fileExtendContent1', params.fileExtendContent1);\n params.fileExtendContent2 && formData.append('fileExtendContent2', params.fileExtendContent2);\n\n /**\n * expireDate , preservationTerm 중에 1가지만\n */\n params.expireDate &&\n formData.append('preservationTerm', (getDayDiffFromToday(params.expireDate) + 1).toString() || '1');\n params.preservationTerm && formData.append('preservationTerm', params.preservationTerm.toString() || '1');\n\n /**\n * 파일/blot객체에서 자동추출하도록 수정\n */\n formData.append('fileType', params.fileType || params.data.type.split('/').pop() || 'png');\n\n const httpClient = new HttpClientAxios({ ...config, withCredentials: false });\n\n /**\n *\n * \"isSuccess\": true,\n * \"code\": \"nxl-dsp-dud-erro-5801\", 'erro' 오타아니라 원래 4글자 규칙이라고합니다.\n * \"message\": \"파일 업로드 가능 확장자는 <br/>ozd, png, jpg, gif, pdf, json, xml, txt 입니다.\"\n *\n * @description \"isSuccess\": true, 이지만 실패처리인 케이스에 대한 별도 interceptor 처리가 필요\n */\n httpClient.api.interceptors.response.use((response) => {\n const { data } = response;\n\n if (data.isSuccess === true && data.code.includes('erro')) {\n return Promise.reject(response);\n }\n\n return response;\n });\n\n const res = await httpClient.api.post<FileUploadExternalResponseDto>(apiUrl, formData);\n\n return res.data;\n};\n\nexport async function postFileDownloadMethod<T extends 'BASE64' | 'BINARY'>(\n params: { fileMgmtId: string; outputType: T },\n config?: AxiosRequestConfig\n) {\n const apiUrl = `${getDudApiHostNameFromEnvironment()}/v1/get/file`;\n\n const httpClient = new HttpClientAxios({\n ...config,\n ...(params.outputType === 'BINARY' && { responseType: 'blob' })\n });\n httpClient.api.interceptors.response.use((response) => {\n const { data } = response;\n\n if (params.outputType === 'BINARY' && !(data instanceof Blob)) {\n return Promise.reject(response);\n }\n\n if (params.outputType === 'BASE64' && data.code.includes('erro')) {\n return Promise.reject(response);\n }\n\n return response;\n });\n\n /**\n * FileExternalRequestDto 의 outputType 에 따라 returnType이 상이\n * outputType = 'BASE64' 이면 returnType 이 FileExternalResponseDto\n * outputType = 'BINARY' 이면 File\n */\n const res = await httpClient.api.post<DownloadType<T>>(apiUrl, params);\n\n return res.data;\n}\n","import { useMutation, useQuery } from '@tanstack/react-query';\n\nimport { postFileDownloadMethod, postFileUploadMethod } from './dud-external-file.service';\n\nimport type { CustomMutationOptions, CustomQueryOptions } from '../method.types';\nimport type {\n DownloadType,\n FileUploadExternalRequestDto,\n FileUploadExternalResponseDto\n} from './dud-external-file.dto';\nimport type { AxiosRequestConfig } from 'axios';\n\nexport const useDudExternalFileUploadQuery = (\n params: FileUploadExternalRequestDto,\n options?: CustomQueryOptions<FileUploadExternalResponseDto>,\n config?: AxiosRequestConfig\n) => {\n return useQuery({\n enabled: !!params,\n retry: false,\n queryKey: ['postFileUploadMethod', JSON.stringify(params)],\n queryFn: () => {\n return postFileUploadMethod(params, config);\n },\n ...options\n });\n};\n\nexport const useDudExternalFileUploadMutation = (\n options?: CustomMutationOptions<FileUploadExternalResponseDto, FileUploadExternalRequestDto>,\n config?: AxiosRequestConfig\n) => {\n return useMutation({\n mutationFn: (params: FileUploadExternalRequestDto) => postFileUploadMethod(params, config),\n ...options\n });\n};\n\nexport const useDudExternalFileDownloadQuery = <T extends 'BASE64' | 'BINARY'>(\n params: {\n fileMgmtId: string;\n outputType: T;\n },\n options?: CustomQueryOptions<DownloadType<T>>,\n config?: AxiosRequestConfig\n) => {\n return useQuery({\n enabled: !!params,\n retry: false,\n queryKey: ['postFileDownloadMethod', JSON.stringify(params)],\n queryFn: () => postFileDownloadMethod(params, config),\n ...options\n });\n};\n"]}
|