sales-frontend-api 0.0.67 → 0.0.69
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 +59 -0
- package/dist/method.cjs.map +1 -1
- package/dist/method.d.cts +96 -1
- package/dist/method.d.ts +96 -1
- package/dist/method.js +58 -2
- package/dist/method.js.map +1 -1
- package/package.json +10 -10
package/dist/method.cjs
CHANGED
|
@@ -619,6 +619,62 @@ var getUserProfile = async (axiosConfig) => {
|
|
|
619
619
|
}).api.post(apiUrl);
|
|
620
620
|
return response.data;
|
|
621
621
|
};
|
|
622
|
+
function getDudUrl(url) {
|
|
623
|
+
const stage = salesFrontendUtils.getEnvironmentFromHostname(window.location.hostname);
|
|
624
|
+
let apiUrl = "";
|
|
625
|
+
switch (stage) {
|
|
626
|
+
case "stg":
|
|
627
|
+
apiUrl = `https://dsp-dud-stg.hanwhalife.com:10102${url}`;
|
|
628
|
+
break;
|
|
629
|
+
case "prd":
|
|
630
|
+
apiUrl = `https://dsp-dud.hanwhalife.com${url}`;
|
|
631
|
+
break;
|
|
632
|
+
case "dev":
|
|
633
|
+
apiUrl = `https://dsp-dud-dev.hanwhalife.com:10101${url}`;
|
|
634
|
+
break;
|
|
635
|
+
}
|
|
636
|
+
return apiUrl;
|
|
637
|
+
}
|
|
638
|
+
var getDayDiffFromToday = (date) => {
|
|
639
|
+
const diff = date.getTime() - (/* @__PURE__ */ new Date()).getTime();
|
|
640
|
+
return Math.floor(diff / (1e3 * 60 * 60 * 24));
|
|
641
|
+
};
|
|
642
|
+
var postFileUploadMethod = async (params, config) => {
|
|
643
|
+
const apiUrl = getDudUrl("/api/v1/post/file");
|
|
644
|
+
const formData = new FormData();
|
|
645
|
+
if (params.data instanceof Blob) {
|
|
646
|
+
formData.append("data", params.data, params.name || `dud-file.${salesFrontendUtils.getExt(params.data)}`);
|
|
647
|
+
}
|
|
648
|
+
if (params.data instanceof File) {
|
|
649
|
+
formData.append("data", params.data, params.name || params.data.name);
|
|
650
|
+
}
|
|
651
|
+
params.fileIdentifierValue && formData.append("fileIdentifierValue", params.fileIdentifierValue);
|
|
652
|
+
params.fileExtendContent1 && formData.append("fileExtendContent1", params.fileExtendContent1);
|
|
653
|
+
params.fileExtendContent2 && formData.append("fileExtendContent2", params.fileExtendContent2);
|
|
654
|
+
params.expireDate && formData.append("preservationTerm", (getDayDiffFromToday(params.expireDate) + 1).toString());
|
|
655
|
+
params.preservationTerm && formData.append("preservationTerm", params.preservationTerm.toString());
|
|
656
|
+
formData.append("fileType", params.fileType);
|
|
657
|
+
const httpClient = new HttpClientAxios(config);
|
|
658
|
+
const res = await httpClient.api.post(apiUrl, formData);
|
|
659
|
+
return res.data;
|
|
660
|
+
};
|
|
661
|
+
async function postFileDownloadMethod(params, config) {
|
|
662
|
+
const apiUrl = getDudUrl("/api/v1/get/file");
|
|
663
|
+
const httpClient = new HttpClientAxios(config);
|
|
664
|
+
const res = await httpClient.api.post(apiUrl, params);
|
|
665
|
+
return res.data;
|
|
666
|
+
}
|
|
667
|
+
var useDudExternalFileUploadQuery = (params, options, config) => {
|
|
668
|
+
return reactQuery.useQuery({
|
|
669
|
+
enabled: !!params,
|
|
670
|
+
retry: false,
|
|
671
|
+
queryKey: ["postFileUploadMethod", JSON.stringify(params)],
|
|
672
|
+
queryFn: () => {
|
|
673
|
+
return postFileUploadMethod(params, config);
|
|
674
|
+
},
|
|
675
|
+
...options
|
|
676
|
+
});
|
|
677
|
+
};
|
|
622
678
|
|
|
623
679
|
exports.confirmRemoteIdentityVerificationSystemIdentificationCard = confirmRemoteIdentityVerificationSystemIdentificationCard;
|
|
624
680
|
exports.getAddressListMethod = getAddressListMethod;
|
|
@@ -638,7 +694,10 @@ exports.getTestMethod = getTestMethod;
|
|
|
638
694
|
exports.getUserProfile = getUserProfile;
|
|
639
695
|
exports.getVehicleListMethod = getVehicleListMethod;
|
|
640
696
|
exports.getVisaListMethod = getVisaListMethod;
|
|
697
|
+
exports.postFileDownloadMethod = postFileDownloadMethod;
|
|
698
|
+
exports.postFileUploadMethod = postFileUploadMethod;
|
|
641
699
|
exports.postLoginMethod = postLoginMethod;
|
|
700
|
+
exports.useDudExternalFileUploadQuery = useDudExternalFileUploadQuery;
|
|
642
701
|
exports.useSearchAddressQuery = useSearchAddressQuery;
|
|
643
702
|
exports.useSearchAddressStandardizationQuery = useSearchAddressStandardizationQuery;
|
|
644
703
|
exports.useSearchCommonCodeQuery = useSearchCommonCodeQuery;
|
package/dist/method.cjs.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/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"],"names":["axios","config","addRequestLog","useClientSessionStore","addResponseLog","addErrorLog","error","isDspApp","Bridge","useQuery"],"mappings":"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","file":"method.cjs","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 accessToken = await authClient.getAT();\n console.log('accessToken', accessToken);\n if (accessToken) {\n config.headers['Authorization'] = `Bearer ${accessToken}`;\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.href);\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.href;\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 this.api(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';\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 /**\n * App인지 확인\n * @returns boolean\n */\n isApp() {\n return isDspApp();\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 cookieClient.getCookie('accessToken');\n }\n\n if (this.isApp()) {\n return (await Bridge.native.getAccessToken()).accessToken;\n } else {\n /**\n * DSP 앱 외에는 쿠키 참조\n */\n return cookieClient.getCookie('accessToken');\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 return await httpClient.api.post(`${getServiceCode()}/internal/api/auth/refresh`);\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 { AxiosRequestConfig } from 'axios';\n\nimport { HttpClientAxios } from '../../../client';\nimport { getServiceCode } from '../../method-util';\n\nimport { AddressListRequestDto, DspResponseAddressListResponseDto } from './address-search.dto';\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 { AddressListRequestDto, DspResponseAddressListResponseDto } from './address-search.dto';\nimport { getAddressListMethod } from './address-search.service';\n\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 { 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 { AddressPostalCodeRequestDto, DspResponseAddressPostalCodeResponseDto } from './postal-code.dto';\nimport { getAddressPostalCodeMethod } from './postal-code.service';\n\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 { AxiosRequestConfig } from 'axios';\n\nimport { HttpClientAxios } from '../../../client';\nimport { getServiceCode } from '../../method-util';\n\nimport {\n AddressStandardizationListRequestDto,\n DspResponseAddressStandardizationListResponseDto\n} from './address-standardization.dto';\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 {\n AddressStandardizationListRequestDto,\n DspResponseAddressStandardizationListResponseDto\n} from './address-standardization.dto';\nimport { getAddressStandardizationListMethod } from './address-standardization.service';\n\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 {\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 {\n DspResponseOccupationDetailResponseDto,\n DspResponseOccupationListResponseDto,\n OccupationDetailRequestDto,\n OccupationListRequestDto\n} from './occupation-search.dto';\nimport { getOccupationDetailMethod, getOccupationListMethod } from './occupation-search.service';\n\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 { 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 { DspResponseVehicleTypeListResponseDto } from './vehicle-search.dto';\nimport { getVehicleListMethod } from './vehicle-search.service';\n\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 { 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 {\n DspResponseEmployeeProfileResponseDto,\n EmployeeProfileSearchRequestDto,\n} from './employee-search.dto';\nimport { getEmployeeProfileListMethod } from './employee-search.service';\n\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 { 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 {\n DspResponseOrganizationProfileResponse,\n OrganizationSearchRequestDto,\n} from './organization-search.dto';\nimport { getOrganizationProfileListMethod } from './organization-search.service';\n\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 { 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 { DspResponseNationalityListResponseDto, NationalitySearchRequestDto } from './nationality-search.dto';\nimport { getNationalityListMethod } from './nationality-search.service';\n\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 { 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 { DspResponseRiskGradeResponseDto, RiskGradeRequestDto } from './risk-grade-search.dto';\nimport { getRiskGradeMethod } from './risk-grade-search.service';\n\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 {\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 RemoteIdentityVerificationSystemIdentificationCardResponseDto\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<RemoteIdentityVerificationSystemIdentificationCardResponseDto>(apiUrl, params);\n\n return response.data;\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"]}
|
|
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/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":["axios","config","addRequestLog","useClientSessionStore","addResponseLog","addErrorLog","error","isDspApp","Bridge","useQuery","getEnvironmentFromHostname","getExt"],"mappings":"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","file":"method.cjs","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 accessToken = await authClient.getAT();\n console.log('accessToken', accessToken);\n if (accessToken) {\n config.headers['Authorization'] = `Bearer ${accessToken}`;\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.href);\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.href;\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 this.api(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';\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 /**\n * App인지 확인\n * @returns boolean\n */\n isApp() {\n return isDspApp();\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 cookieClient.getCookie('accessToken');\n }\n\n if (this.isApp()) {\n return (await Bridge.native.getAccessToken()).accessToken;\n } else {\n /**\n * DSP 앱 외에는 쿠키 참조\n */\n return cookieClient.getCookie('accessToken');\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 return await httpClient.api.post(`${getServiceCode()}/internal/api/auth/refresh`);\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 { AxiosRequestConfig } from 'axios';\n\nimport { HttpClientAxios } from '../../../client';\nimport { getServiceCode } from '../../method-util';\n\nimport { AddressListRequestDto, DspResponseAddressListResponseDto } from './address-search.dto';\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 { AddressListRequestDto, DspResponseAddressListResponseDto } from './address-search.dto';\nimport { getAddressListMethod } from './address-search.service';\n\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 { 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 { AddressPostalCodeRequestDto, DspResponseAddressPostalCodeResponseDto } from './postal-code.dto';\nimport { getAddressPostalCodeMethod } from './postal-code.service';\n\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 { AxiosRequestConfig } from 'axios';\n\nimport { HttpClientAxios } from '../../../client';\nimport { getServiceCode } from '../../method-util';\n\nimport {\n AddressStandardizationListRequestDto,\n DspResponseAddressStandardizationListResponseDto\n} from './address-standardization.dto';\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 {\n AddressStandardizationListRequestDto,\n DspResponseAddressStandardizationListResponseDto\n} from './address-standardization.dto';\nimport { getAddressStandardizationListMethod } from './address-standardization.service';\n\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 {\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 {\n DspResponseOccupationDetailResponseDto,\n DspResponseOccupationListResponseDto,\n OccupationDetailRequestDto,\n OccupationListRequestDto\n} from './occupation-search.dto';\nimport { getOccupationDetailMethod, getOccupationListMethod } from './occupation-search.service';\n\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 { 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 { DspResponseVehicleTypeListResponseDto } from './vehicle-search.dto';\nimport { getVehicleListMethod } from './vehicle-search.service';\n\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 { 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 {\n DspResponseEmployeeProfileResponseDto,\n EmployeeProfileSearchRequestDto,\n} from './employee-search.dto';\nimport { getEmployeeProfileListMethod } from './employee-search.service';\n\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 { 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 {\n DspResponseOrganizationProfileResponse,\n OrganizationSearchRequestDto,\n} from './organization-search.dto';\nimport { getOrganizationProfileListMethod } from './organization-search.service';\n\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 { 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 { DspResponseNationalityListResponseDto, NationalitySearchRequestDto } from './nationality-search.dto';\nimport { getNationalityListMethod } from './nationality-search.service';\n\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 { 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 { DspResponseRiskGradeResponseDto, RiskGradeRequestDto } from './risk-grade-search.dto';\nimport { getRiskGradeMethod } from './risk-grade-search.service';\n\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 {\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 RemoteIdentityVerificationSystemIdentificationCardResponseDto\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<RemoteIdentityVerificationSystemIdentificationCardResponseDto>(apiUrl, params);\n\n return response.data;\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 { AxiosRequestConfig } from 'axios';\nimport { getEnvironmentFromHostname, getExt } from 'sales-frontend-utils';\n\nimport { HttpClientAxios } from '../../client';\n\nimport {\n FileExternalRequestDto,\n FileExternalResponseDto,\n FileUploadExternalRequestDto,\n FileUploadExternalResponseDto\n} from './dud-external-file.dto';\n\nfunction getDudUrl(url: string) {\n const stage = getEnvironmentFromHostname(window.location.hostname);\n let apiUrl = '';\n switch (stage) {\n case 'stg':\n apiUrl = `https://dsp-dud-stg.hanwhalife.com:10102${url}`;\n break;\n case 'prd':\n apiUrl = `https://dsp-dud.hanwhalife.com${url}`;\n break;\n case 'dev':\n apiUrl = `https://dsp-dud-dev.hanwhalife.com:10101${url}`;\n break;\n }\n\n return apiUrl;\n}\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 = getDudUrl('/api/v1/post/file');\n const formData = new FormData();\n if (params.data instanceof Blob) {\n formData.append('data', params.data, params.name || `dud-file.${getExt(params.data)}`);\n }\n\n if (params.data instanceof File) {\n formData.append('data', params.data, params.name || params.data.name);\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 && formData.append('preservationTerm', (getDayDiffFromToday(params.expireDate) + 1).toString());\n params.preservationTerm && formData.append('preservationTerm', params.preservationTerm.toString());\n\n formData.append('fileType', params.fileType);\n\n const httpClient = new HttpClientAxios(config);\n const res = await httpClient.api.post<FileUploadExternalResponseDto>(apiUrl, formData);\n\n return res.data;\n};\n\n/**\n * 파일 다운로드(외부용)\n * @param params.outputType 'BASE64'인 경우 `FileExternalResponseDto` 반환\n */\nexport function postFileDownloadMethod(\n params: FileExternalRequestDto & { outputType: 'BASE64' },\n config?: AxiosRequestConfig\n): Promise<FileExternalResponseDto>;\n/**\n * 파일 다운로드(외부용)\n * @param params.outputType 'BINARY' 또는 미지정인 경우 `File` 객체 반환\n */\nexport function postFileDownloadMethod(\n params: FileExternalRequestDto & { outputType?: 'BINARY' },\n config?: AxiosRequestConfig\n): Promise<File>;\n\nexport async function postFileDownloadMethod(params: FileExternalRequestDto, config?: AxiosRequestConfig) {\n const apiUrl = getDudUrl('/api/v1/get/file');\n\n const httpClient = new HttpClientAxios(config);\n /**\n * FileExternalRequestDto 의 outputType 에 따라 returnType이 상이\n * outputType = 'BASE64' 이면 returnType 이 FileExternalResponseDto\n * outputType = 'BINARY' 이면 File\n */\n const res = await httpClient.api.post<FileExternalResponseDto | File>(apiUrl, params);\n\n return res.data;\n}\n","import { useQuery } from '@tanstack/react-query';\n\nimport { CustomQueryOptions } from '../method.types';\n\nimport { FileUploadExternalRequestDto, FileUploadExternalResponseDto } from './dud-external-file.dto';\nimport { postFileUploadMethod } from './dud-external-file.service';\n\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"]}
|
package/dist/method.d.cts
CHANGED
|
@@ -1157,4 +1157,99 @@ interface DspResponseUserProfileResponseDto extends DspResponse<UserProfileRespo
|
|
|
1157
1157
|
*/
|
|
1158
1158
|
declare const getUserProfile: (axiosConfig?: ApiConfig) => Promise<DspResponseUserProfileResponseDto>;
|
|
1159
1159
|
|
|
1160
|
-
|
|
1160
|
+
/**
|
|
1161
|
+
* @description
|
|
1162
|
+
* 비정형 파일 업로드 요청(외부용) DTO
|
|
1163
|
+
* @param
|
|
1164
|
+
* data : File
|
|
1165
|
+
* @param
|
|
1166
|
+
* fileIdentifierValue string 파일식별자값 증권번호
|
|
1167
|
+
* @param
|
|
1168
|
+
* fileExtendContent1 string 파일확장내용1 DB에 조회되는 메모용 필드1
|
|
1169
|
+
* @param
|
|
1170
|
+
* fileExtendContent2 string 파일확장내용2 DB에 조회되는 메모용 필드2
|
|
1171
|
+
* @param
|
|
1172
|
+
* preservationTerm number 보존기간 일수 기준, 기본값 30일
|
|
1173
|
+
* @param
|
|
1174
|
+
* fileType string 파일타입 확장자
|
|
1175
|
+
* @param
|
|
1176
|
+
* expireDate 청약마감일자 , 청약마감일자+1 로 자동계산하여 preservationTerm을 전달
|
|
1177
|
+
* @param
|
|
1178
|
+
* name Form 사용할 네이밍, formData.append('data', params.data, name ) , 없을 경우 file.name || 'dud-file.확장자'
|
|
1179
|
+
*/
|
|
1180
|
+
interface FileUploadExternalRequestDtoBase {
|
|
1181
|
+
data: File | Blob;
|
|
1182
|
+
name?: string;
|
|
1183
|
+
fileIdentifierValue: string;
|
|
1184
|
+
fileExtendContent1?: string;
|
|
1185
|
+
fileExtendContent2?: string;
|
|
1186
|
+
fileType: string;
|
|
1187
|
+
}
|
|
1188
|
+
type FileUploadExternalRequestDto = (FileUploadExternalRequestDtoBase & {
|
|
1189
|
+
preservationTerm?: number;
|
|
1190
|
+
expireDate?: never;
|
|
1191
|
+
}) | (FileUploadExternalRequestDtoBase & {
|
|
1192
|
+
preservationTerm?: never;
|
|
1193
|
+
expireDate?: Date;
|
|
1194
|
+
});
|
|
1195
|
+
/**
|
|
1196
|
+
* 비정형 파일 업로드 응답(외부용) DTO
|
|
1197
|
+
*/
|
|
1198
|
+
interface FileUploadExternalResponseDto {
|
|
1199
|
+
/**
|
|
1200
|
+
* 파일관리ID
|
|
1201
|
+
*/
|
|
1202
|
+
dudFileMgmtId?: string;
|
|
1203
|
+
}
|
|
1204
|
+
/**
|
|
1205
|
+
* 파일 조회(WEB) 요청 DTO
|
|
1206
|
+
*/
|
|
1207
|
+
interface FileExternalRequestDto {
|
|
1208
|
+
/**
|
|
1209
|
+
* 파일관리ID
|
|
1210
|
+
*/
|
|
1211
|
+
fileMgmtId: string;
|
|
1212
|
+
/**
|
|
1213
|
+
* 출력유형
|
|
1214
|
+
* @example "MULTIPART | BINARY | BASE64"
|
|
1215
|
+
*
|
|
1216
|
+
*/
|
|
1217
|
+
outputType?: 'BINARY' | 'BASE64';
|
|
1218
|
+
}
|
|
1219
|
+
/**
|
|
1220
|
+
* base64 인경우,
|
|
1221
|
+
* 현재 사용안함
|
|
1222
|
+
*/
|
|
1223
|
+
interface FileExternalResponseDto {
|
|
1224
|
+
isSuccess: boolean;
|
|
1225
|
+
code: string;
|
|
1226
|
+
message: string;
|
|
1227
|
+
data: {
|
|
1228
|
+
fileSize: number;
|
|
1229
|
+
extension: string;
|
|
1230
|
+
fileName: string;
|
|
1231
|
+
base64: string;
|
|
1232
|
+
dudFileMgmtId: string;
|
|
1233
|
+
contentType: string;
|
|
1234
|
+
};
|
|
1235
|
+
}
|
|
1236
|
+
|
|
1237
|
+
declare const postFileUploadMethod: (params: FileUploadExternalRequestDto, config?: AxiosRequestConfig) => Promise<FileUploadExternalResponseDto>;
|
|
1238
|
+
/**
|
|
1239
|
+
* 파일 다운로드(외부용)
|
|
1240
|
+
* @param params.outputType 'BASE64'인 경우 `FileExternalResponseDto` 반환
|
|
1241
|
+
*/
|
|
1242
|
+
declare function postFileDownloadMethod(params: FileExternalRequestDto & {
|
|
1243
|
+
outputType: 'BASE64';
|
|
1244
|
+
}, config?: AxiosRequestConfig): Promise<FileExternalResponseDto>;
|
|
1245
|
+
/**
|
|
1246
|
+
* 파일 다운로드(외부용)
|
|
1247
|
+
* @param params.outputType 'BINARY' 또는 미지정인 경우 `File` 객체 반환
|
|
1248
|
+
*/
|
|
1249
|
+
declare function postFileDownloadMethod(params: FileExternalRequestDto & {
|
|
1250
|
+
outputType?: 'BINARY';
|
|
1251
|
+
}, config?: AxiosRequestConfig): Promise<File>;
|
|
1252
|
+
|
|
1253
|
+
declare const useDudExternalFileUploadQuery: (params: FileUploadExternalRequestDto, options?: CustomQueryOptions<FileUploadExternalResponseDto>, config?: AxiosRequestConfig) => _tanstack_react_query.UseQueryResult<FileUploadExternalResponseDto, axios.AxiosError<unknown, any>>;
|
|
1254
|
+
|
|
1255
|
+
export { type AddressListRequestDto, type AddressListResponseDto, type AddressPostalCodeDto, type AddressPostalCodeRequestDto, type AddressPostalCodeResponseDto, type AddressResponseDto, type AddressStandardizationListRequestDto, type AddressStandardizationListResponseDto, type AddressStandardizationResponseDto, ApiConfig, type CodeDto, type CommonCodeDto, type CommonCodeRequestDto, type CommonCodeResponseDto, type CustomMutationOptions, type CustomQueryOptions, type CustomSuspenseOptions, type CustomerDto, type CustomerListRequestDto, type CustomerListResponseDto, type CustomerSearchProps, DspResponse, type DspResponseAddressListResponseDto, type DspResponseAddressPostalCodeResponseDto, type DspResponseAddressStandardizationListResponseDto, type DspResponseCommonCodeResponseDto, type DspResponseCustomerListResponseDto, type DspResponseEmployeeProfileResponseDto, type DspResponseListEmployeeProfileResponseDto, type DspResponseListOrganizationProfileResponse, type DspResponseListPersonalCustomerProfileResponseDto, type DspResponseNationalityListResponseDto, type DspResponseOccupationDetailResponseDto, type DspResponseOccupationListResponseDto, type DspResponseOrganizationProfileResponse, type DspResponseRemoteIdentityVerificationSystemTokenResponseDto, type DspResponseRiskGradeResponseDto, type DspResponseUserProfileResponseDto, type DspResponseVehicleTypeListResponseDto, type DspResponseVisaStatusListResponseDto, type EmployeeDivisionCodeType, type EmployeeProfileRequestDto, type EmployeeProfileResponseDto, type EmployeeProfileSearchRequestDto, type FileExternalRequestDto, type FileExternalResponseDto, type FileUploadExternalRequestDto, type FileUploadExternalRequestDtoBase, type FileUploadExternalResponseDto, type FpLoginData, type FpLoginResponseDto, type NationalityListResponseDto, type NationalityResponseDto, type NationalitySearchRequestDto, type OccupationDetailRequestDto, type OccupationDetailResponseDto, type OccupationListRequestDto, type OccupationListResponseDto, type OccupationResponseDto, type OrganizationProfileRequest, type OrganizationProfileResponse, type OrganizationSearchRequestDto, type Pagination, type PersonalCustomerProfileRequestDto, type PersonalCustomerProfileResponseDto, type RemoteIdentityVerificationSystemIdentificationCardRequestDto, type RemoteIdentityVerificationSystemIdentificationCardResponseDto, type RemoteIdentityVerificationSystemTokenRequestDto, type RemoteIdentityVerificationSystemTokenResponseDto, type RiskGradeRequestDto, type RiskGradeResponseDto, type TenureOfOfficeDivisionCodeType, type TestResponse, type UserProfileResponseDto, type VehicleTypeListResponseDto, type VehicleTypeResponseDto, type VisaStatusListResponseDto, type VisaStatusResponseDto, confirmRemoteIdentityVerificationSystemIdentificationCard, getAddressListMethod, getAddressPostalCodeMethod, getAddressStandardizationListMethod, getCommonCodeListMethod, getCustomerListMethod, getDspCustomerListMethod, getEmployeeProfileListMethod, getNationalityListMethod, getOccupationDetailMethod, getOccupationListMethod, getOrganizationProfileListMethod, getRemoteIdentityVerificationSystemToken, getRiskGradeMethod, getTestMethod, getUserProfile, getVehicleListMethod, getVisaListMethod, postFileDownloadMethod, postFileUploadMethod, postLoginMethod, useDudExternalFileUploadQuery, useSearchAddressQuery, useSearchAddressStandardizationQuery, useSearchCommonCodeQuery, useSearchCustomerListQuery, useSearchDspCustomerListQuery, useSearchEmployeeProfileQuery, useSearchNationalityQuery, useSearchOccupationDetailQuery, useSearchOccupationQuery, useSearchOrganizationQuery, useSearchPostalCodeQuery, useSearchRiskGradeQuery, useSearchVehicleQuery, useSearchVisaQuery };
|
package/dist/method.d.ts
CHANGED
|
@@ -1157,4 +1157,99 @@ interface DspResponseUserProfileResponseDto extends DspResponse<UserProfileRespo
|
|
|
1157
1157
|
*/
|
|
1158
1158
|
declare const getUserProfile: (axiosConfig?: ApiConfig) => Promise<DspResponseUserProfileResponseDto>;
|
|
1159
1159
|
|
|
1160
|
-
|
|
1160
|
+
/**
|
|
1161
|
+
* @description
|
|
1162
|
+
* 비정형 파일 업로드 요청(외부용) DTO
|
|
1163
|
+
* @param
|
|
1164
|
+
* data : File
|
|
1165
|
+
* @param
|
|
1166
|
+
* fileIdentifierValue string 파일식별자값 증권번호
|
|
1167
|
+
* @param
|
|
1168
|
+
* fileExtendContent1 string 파일확장내용1 DB에 조회되는 메모용 필드1
|
|
1169
|
+
* @param
|
|
1170
|
+
* fileExtendContent2 string 파일확장내용2 DB에 조회되는 메모용 필드2
|
|
1171
|
+
* @param
|
|
1172
|
+
* preservationTerm number 보존기간 일수 기준, 기본값 30일
|
|
1173
|
+
* @param
|
|
1174
|
+
* fileType string 파일타입 확장자
|
|
1175
|
+
* @param
|
|
1176
|
+
* expireDate 청약마감일자 , 청약마감일자+1 로 자동계산하여 preservationTerm을 전달
|
|
1177
|
+
* @param
|
|
1178
|
+
* name Form 사용할 네이밍, formData.append('data', params.data, name ) , 없을 경우 file.name || 'dud-file.확장자'
|
|
1179
|
+
*/
|
|
1180
|
+
interface FileUploadExternalRequestDtoBase {
|
|
1181
|
+
data: File | Blob;
|
|
1182
|
+
name?: string;
|
|
1183
|
+
fileIdentifierValue: string;
|
|
1184
|
+
fileExtendContent1?: string;
|
|
1185
|
+
fileExtendContent2?: string;
|
|
1186
|
+
fileType: string;
|
|
1187
|
+
}
|
|
1188
|
+
type FileUploadExternalRequestDto = (FileUploadExternalRequestDtoBase & {
|
|
1189
|
+
preservationTerm?: number;
|
|
1190
|
+
expireDate?: never;
|
|
1191
|
+
}) | (FileUploadExternalRequestDtoBase & {
|
|
1192
|
+
preservationTerm?: never;
|
|
1193
|
+
expireDate?: Date;
|
|
1194
|
+
});
|
|
1195
|
+
/**
|
|
1196
|
+
* 비정형 파일 업로드 응답(외부용) DTO
|
|
1197
|
+
*/
|
|
1198
|
+
interface FileUploadExternalResponseDto {
|
|
1199
|
+
/**
|
|
1200
|
+
* 파일관리ID
|
|
1201
|
+
*/
|
|
1202
|
+
dudFileMgmtId?: string;
|
|
1203
|
+
}
|
|
1204
|
+
/**
|
|
1205
|
+
* 파일 조회(WEB) 요청 DTO
|
|
1206
|
+
*/
|
|
1207
|
+
interface FileExternalRequestDto {
|
|
1208
|
+
/**
|
|
1209
|
+
* 파일관리ID
|
|
1210
|
+
*/
|
|
1211
|
+
fileMgmtId: string;
|
|
1212
|
+
/**
|
|
1213
|
+
* 출력유형
|
|
1214
|
+
* @example "MULTIPART | BINARY | BASE64"
|
|
1215
|
+
*
|
|
1216
|
+
*/
|
|
1217
|
+
outputType?: 'BINARY' | 'BASE64';
|
|
1218
|
+
}
|
|
1219
|
+
/**
|
|
1220
|
+
* base64 인경우,
|
|
1221
|
+
* 현재 사용안함
|
|
1222
|
+
*/
|
|
1223
|
+
interface FileExternalResponseDto {
|
|
1224
|
+
isSuccess: boolean;
|
|
1225
|
+
code: string;
|
|
1226
|
+
message: string;
|
|
1227
|
+
data: {
|
|
1228
|
+
fileSize: number;
|
|
1229
|
+
extension: string;
|
|
1230
|
+
fileName: string;
|
|
1231
|
+
base64: string;
|
|
1232
|
+
dudFileMgmtId: string;
|
|
1233
|
+
contentType: string;
|
|
1234
|
+
};
|
|
1235
|
+
}
|
|
1236
|
+
|
|
1237
|
+
declare const postFileUploadMethod: (params: FileUploadExternalRequestDto, config?: AxiosRequestConfig) => Promise<FileUploadExternalResponseDto>;
|
|
1238
|
+
/**
|
|
1239
|
+
* 파일 다운로드(외부용)
|
|
1240
|
+
* @param params.outputType 'BASE64'인 경우 `FileExternalResponseDto` 반환
|
|
1241
|
+
*/
|
|
1242
|
+
declare function postFileDownloadMethod(params: FileExternalRequestDto & {
|
|
1243
|
+
outputType: 'BASE64';
|
|
1244
|
+
}, config?: AxiosRequestConfig): Promise<FileExternalResponseDto>;
|
|
1245
|
+
/**
|
|
1246
|
+
* 파일 다운로드(외부용)
|
|
1247
|
+
* @param params.outputType 'BINARY' 또는 미지정인 경우 `File` 객체 반환
|
|
1248
|
+
*/
|
|
1249
|
+
declare function postFileDownloadMethod(params: FileExternalRequestDto & {
|
|
1250
|
+
outputType?: 'BINARY';
|
|
1251
|
+
}, config?: AxiosRequestConfig): Promise<File>;
|
|
1252
|
+
|
|
1253
|
+
declare const useDudExternalFileUploadQuery: (params: FileUploadExternalRequestDto, options?: CustomQueryOptions<FileUploadExternalResponseDto>, config?: AxiosRequestConfig) => _tanstack_react_query.UseQueryResult<FileUploadExternalResponseDto, axios.AxiosError<unknown, any>>;
|
|
1254
|
+
|
|
1255
|
+
export { type AddressListRequestDto, type AddressListResponseDto, type AddressPostalCodeDto, type AddressPostalCodeRequestDto, type AddressPostalCodeResponseDto, type AddressResponseDto, type AddressStandardizationListRequestDto, type AddressStandardizationListResponseDto, type AddressStandardizationResponseDto, ApiConfig, type CodeDto, type CommonCodeDto, type CommonCodeRequestDto, type CommonCodeResponseDto, type CustomMutationOptions, type CustomQueryOptions, type CustomSuspenseOptions, type CustomerDto, type CustomerListRequestDto, type CustomerListResponseDto, type CustomerSearchProps, DspResponse, type DspResponseAddressListResponseDto, type DspResponseAddressPostalCodeResponseDto, type DspResponseAddressStandardizationListResponseDto, type DspResponseCommonCodeResponseDto, type DspResponseCustomerListResponseDto, type DspResponseEmployeeProfileResponseDto, type DspResponseListEmployeeProfileResponseDto, type DspResponseListOrganizationProfileResponse, type DspResponseListPersonalCustomerProfileResponseDto, type DspResponseNationalityListResponseDto, type DspResponseOccupationDetailResponseDto, type DspResponseOccupationListResponseDto, type DspResponseOrganizationProfileResponse, type DspResponseRemoteIdentityVerificationSystemTokenResponseDto, type DspResponseRiskGradeResponseDto, type DspResponseUserProfileResponseDto, type DspResponseVehicleTypeListResponseDto, type DspResponseVisaStatusListResponseDto, type EmployeeDivisionCodeType, type EmployeeProfileRequestDto, type EmployeeProfileResponseDto, type EmployeeProfileSearchRequestDto, type FileExternalRequestDto, type FileExternalResponseDto, type FileUploadExternalRequestDto, type FileUploadExternalRequestDtoBase, type FileUploadExternalResponseDto, type FpLoginData, type FpLoginResponseDto, type NationalityListResponseDto, type NationalityResponseDto, type NationalitySearchRequestDto, type OccupationDetailRequestDto, type OccupationDetailResponseDto, type OccupationListRequestDto, type OccupationListResponseDto, type OccupationResponseDto, type OrganizationProfileRequest, type OrganizationProfileResponse, type OrganizationSearchRequestDto, type Pagination, type PersonalCustomerProfileRequestDto, type PersonalCustomerProfileResponseDto, type RemoteIdentityVerificationSystemIdentificationCardRequestDto, type RemoteIdentityVerificationSystemIdentificationCardResponseDto, type RemoteIdentityVerificationSystemTokenRequestDto, type RemoteIdentityVerificationSystemTokenResponseDto, type RiskGradeRequestDto, type RiskGradeResponseDto, type TenureOfOfficeDivisionCodeType, type TestResponse, type UserProfileResponseDto, type VehicleTypeListResponseDto, type VehicleTypeResponseDto, type VisaStatusListResponseDto, type VisaStatusResponseDto, confirmRemoteIdentityVerificationSystemIdentificationCard, getAddressListMethod, getAddressPostalCodeMethod, getAddressStandardizationListMethod, getCommonCodeListMethod, getCustomerListMethod, getDspCustomerListMethod, getEmployeeProfileListMethod, getNationalityListMethod, getOccupationDetailMethod, getOccupationListMethod, getOrganizationProfileListMethod, getRemoteIdentityVerificationSystemToken, getRiskGradeMethod, getTestMethod, getUserProfile, getVehicleListMethod, getVisaListMethod, postFileDownloadMethod, postFileUploadMethod, postLoginMethod, useDudExternalFileUploadQuery, useSearchAddressQuery, useSearchAddressStandardizationQuery, useSearchCommonCodeQuery, useSearchCustomerListQuery, useSearchDspCustomerListQuery, useSearchEmployeeProfileQuery, useSearchNationalityQuery, useSearchOccupationDetailQuery, useSearchOccupationQuery, useSearchOrganizationQuery, useSearchPostalCodeQuery, useSearchRiskGradeQuery, useSearchVehicleQuery, useSearchVisaQuery };
|
package/dist/method.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Bridge } from 'sales-frontend-bridge';
|
|
2
|
-
import { isDspApp } from 'sales-frontend-utils';
|
|
2
|
+
import { getExt, getEnvironmentFromHostname, isDspApp } 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';
|
|
@@ -613,7 +613,63 @@ var getUserProfile = async (axiosConfig) => {
|
|
|
613
613
|
}).api.post(apiUrl);
|
|
614
614
|
return response.data;
|
|
615
615
|
};
|
|
616
|
+
function getDudUrl(url) {
|
|
617
|
+
const stage = getEnvironmentFromHostname(window.location.hostname);
|
|
618
|
+
let apiUrl = "";
|
|
619
|
+
switch (stage) {
|
|
620
|
+
case "stg":
|
|
621
|
+
apiUrl = `https://dsp-dud-stg.hanwhalife.com:10102${url}`;
|
|
622
|
+
break;
|
|
623
|
+
case "prd":
|
|
624
|
+
apiUrl = `https://dsp-dud.hanwhalife.com${url}`;
|
|
625
|
+
break;
|
|
626
|
+
case "dev":
|
|
627
|
+
apiUrl = `https://dsp-dud-dev.hanwhalife.com:10101${url}`;
|
|
628
|
+
break;
|
|
629
|
+
}
|
|
630
|
+
return apiUrl;
|
|
631
|
+
}
|
|
632
|
+
var getDayDiffFromToday = (date) => {
|
|
633
|
+
const diff = date.getTime() - (/* @__PURE__ */ new Date()).getTime();
|
|
634
|
+
return Math.floor(diff / (1e3 * 60 * 60 * 24));
|
|
635
|
+
};
|
|
636
|
+
var postFileUploadMethod = async (params, config) => {
|
|
637
|
+
const apiUrl = getDudUrl("/api/v1/post/file");
|
|
638
|
+
const formData = new FormData();
|
|
639
|
+
if (params.data instanceof Blob) {
|
|
640
|
+
formData.append("data", params.data, params.name || `dud-file.${getExt(params.data)}`);
|
|
641
|
+
}
|
|
642
|
+
if (params.data instanceof File) {
|
|
643
|
+
formData.append("data", params.data, params.name || params.data.name);
|
|
644
|
+
}
|
|
645
|
+
params.fileIdentifierValue && formData.append("fileIdentifierValue", params.fileIdentifierValue);
|
|
646
|
+
params.fileExtendContent1 && formData.append("fileExtendContent1", params.fileExtendContent1);
|
|
647
|
+
params.fileExtendContent2 && formData.append("fileExtendContent2", params.fileExtendContent2);
|
|
648
|
+
params.expireDate && formData.append("preservationTerm", (getDayDiffFromToday(params.expireDate) + 1).toString());
|
|
649
|
+
params.preservationTerm && formData.append("preservationTerm", params.preservationTerm.toString());
|
|
650
|
+
formData.append("fileType", params.fileType);
|
|
651
|
+
const httpClient = new HttpClientAxios(config);
|
|
652
|
+
const res = await httpClient.api.post(apiUrl, formData);
|
|
653
|
+
return res.data;
|
|
654
|
+
};
|
|
655
|
+
async function postFileDownloadMethod(params, config) {
|
|
656
|
+
const apiUrl = getDudUrl("/api/v1/get/file");
|
|
657
|
+
const httpClient = new HttpClientAxios(config);
|
|
658
|
+
const res = await httpClient.api.post(apiUrl, params);
|
|
659
|
+
return res.data;
|
|
660
|
+
}
|
|
661
|
+
var useDudExternalFileUploadQuery = (params, options, config) => {
|
|
662
|
+
return useQuery({
|
|
663
|
+
enabled: !!params,
|
|
664
|
+
retry: false,
|
|
665
|
+
queryKey: ["postFileUploadMethod", JSON.stringify(params)],
|
|
666
|
+
queryFn: () => {
|
|
667
|
+
return postFileUploadMethod(params, config);
|
|
668
|
+
},
|
|
669
|
+
...options
|
|
670
|
+
});
|
|
671
|
+
};
|
|
616
672
|
|
|
617
|
-
export { confirmRemoteIdentityVerificationSystemIdentificationCard, getAddressListMethod, getAddressPostalCodeMethod, getAddressStandardizationListMethod, getCommonCodeListMethod, getCustomerListMethod, getDspCustomerListMethod, getEmployeeProfileListMethod, getNationalityListMethod, getOccupationDetailMethod, getOccupationListMethod, getOrganizationProfileListMethod, getRemoteIdentityVerificationSystemToken, getRiskGradeMethod, getTestMethod, getUserProfile, getVehicleListMethod, getVisaListMethod, postLoginMethod, useSearchAddressQuery, useSearchAddressStandardizationQuery, useSearchCommonCodeQuery, useSearchCustomerListQuery, useSearchDspCustomerListQuery, useSearchEmployeeProfileQuery, useSearchNationalityQuery, useSearchOccupationDetailQuery, useSearchOccupationQuery, useSearchOrganizationQuery, useSearchPostalCodeQuery, useSearchRiskGradeQuery, useSearchVehicleQuery, useSearchVisaQuery };
|
|
673
|
+
export { confirmRemoteIdentityVerificationSystemIdentificationCard, getAddressListMethod, getAddressPostalCodeMethod, getAddressStandardizationListMethod, getCommonCodeListMethod, getCustomerListMethod, getDspCustomerListMethod, getEmployeeProfileListMethod, getNationalityListMethod, getOccupationDetailMethod, getOccupationListMethod, getOrganizationProfileListMethod, getRemoteIdentityVerificationSystemToken, getRiskGradeMethod, getTestMethod, getUserProfile, getVehicleListMethod, getVisaListMethod, postFileDownloadMethod, postFileUploadMethod, postLoginMethod, useDudExternalFileUploadQuery, useSearchAddressQuery, useSearchAddressStandardizationQuery, useSearchCommonCodeQuery, useSearchCustomerListQuery, useSearchDspCustomerListQuery, useSearchEmployeeProfileQuery, useSearchNationalityQuery, useSearchOccupationDetailQuery, useSearchOccupationQuery, useSearchOrganizationQuery, useSearchPostalCodeQuery, useSearchRiskGradeQuery, useSearchVehicleQuery, useSearchVisaQuery };
|
|
618
674
|
//# sourceMappingURL=method.js.map
|
|
619
675
|
//# sourceMappingURL=method.js.map
|
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/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"],"names":["config","error","useQuery"],"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 accessToken = await authClient.getAT();\n console.log('accessToken', accessToken);\n if (accessToken) {\n config.headers['Authorization'] = `Bearer ${accessToken}`;\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.href);\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.href;\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 this.api(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';\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 /**\n * App인지 확인\n * @returns boolean\n */\n isApp() {\n return isDspApp();\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 cookieClient.getCookie('accessToken');\n }\n\n if (this.isApp()) {\n return (await Bridge.native.getAccessToken()).accessToken;\n } else {\n /**\n * DSP 앱 외에는 쿠키 참조\n */\n return cookieClient.getCookie('accessToken');\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 return await httpClient.api.post(`${getServiceCode()}/internal/api/auth/refresh`);\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 { AxiosRequestConfig } from 'axios';\n\nimport { HttpClientAxios } from '../../../client';\nimport { getServiceCode } from '../../method-util';\n\nimport { AddressListRequestDto, DspResponseAddressListResponseDto } from './address-search.dto';\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 { AddressListRequestDto, DspResponseAddressListResponseDto } from './address-search.dto';\nimport { getAddressListMethod } from './address-search.service';\n\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 { 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 { AddressPostalCodeRequestDto, DspResponseAddressPostalCodeResponseDto } from './postal-code.dto';\nimport { getAddressPostalCodeMethod } from './postal-code.service';\n\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 { AxiosRequestConfig } from 'axios';\n\nimport { HttpClientAxios } from '../../../client';\nimport { getServiceCode } from '../../method-util';\n\nimport {\n AddressStandardizationListRequestDto,\n DspResponseAddressStandardizationListResponseDto\n} from './address-standardization.dto';\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 {\n AddressStandardizationListRequestDto,\n DspResponseAddressStandardizationListResponseDto\n} from './address-standardization.dto';\nimport { getAddressStandardizationListMethod } from './address-standardization.service';\n\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 {\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 {\n DspResponseOccupationDetailResponseDto,\n DspResponseOccupationListResponseDto,\n OccupationDetailRequestDto,\n OccupationListRequestDto\n} from './occupation-search.dto';\nimport { getOccupationDetailMethod, getOccupationListMethod } from './occupation-search.service';\n\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 { 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 { DspResponseVehicleTypeListResponseDto } from './vehicle-search.dto';\nimport { getVehicleListMethod } from './vehicle-search.service';\n\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 { 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 {\n DspResponseEmployeeProfileResponseDto,\n EmployeeProfileSearchRequestDto,\n} from './employee-search.dto';\nimport { getEmployeeProfileListMethod } from './employee-search.service';\n\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 { 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 {\n DspResponseOrganizationProfileResponse,\n OrganizationSearchRequestDto,\n} from './organization-search.dto';\nimport { getOrganizationProfileListMethod } from './organization-search.service';\n\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 { 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 { DspResponseNationalityListResponseDto, NationalitySearchRequestDto } from './nationality-search.dto';\nimport { getNationalityListMethod } from './nationality-search.service';\n\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 { 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 { DspResponseRiskGradeResponseDto, RiskGradeRequestDto } from './risk-grade-search.dto';\nimport { getRiskGradeMethod } from './risk-grade-search.service';\n\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 {\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 RemoteIdentityVerificationSystemIdentificationCardResponseDto\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<RemoteIdentityVerificationSystemIdentificationCardResponseDto>(apiUrl, params);\n\n return response.data;\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"]}
|
|
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/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"],"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 accessToken = await authClient.getAT();\n console.log('accessToken', accessToken);\n if (accessToken) {\n config.headers['Authorization'] = `Bearer ${accessToken}`;\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.href);\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.href;\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 this.api(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';\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 /**\n * App인지 확인\n * @returns boolean\n */\n isApp() {\n return isDspApp();\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 cookieClient.getCookie('accessToken');\n }\n\n if (this.isApp()) {\n return (await Bridge.native.getAccessToken()).accessToken;\n } else {\n /**\n * DSP 앱 외에는 쿠키 참조\n */\n return cookieClient.getCookie('accessToken');\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 return await httpClient.api.post(`${getServiceCode()}/internal/api/auth/refresh`);\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 { AxiosRequestConfig } from 'axios';\n\nimport { HttpClientAxios } from '../../../client';\nimport { getServiceCode } from '../../method-util';\n\nimport { AddressListRequestDto, DspResponseAddressListResponseDto } from './address-search.dto';\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 { AddressListRequestDto, DspResponseAddressListResponseDto } from './address-search.dto';\nimport { getAddressListMethod } from './address-search.service';\n\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 { 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 { AddressPostalCodeRequestDto, DspResponseAddressPostalCodeResponseDto } from './postal-code.dto';\nimport { getAddressPostalCodeMethod } from './postal-code.service';\n\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 { AxiosRequestConfig } from 'axios';\n\nimport { HttpClientAxios } from '../../../client';\nimport { getServiceCode } from '../../method-util';\n\nimport {\n AddressStandardizationListRequestDto,\n DspResponseAddressStandardizationListResponseDto\n} from './address-standardization.dto';\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 {\n AddressStandardizationListRequestDto,\n DspResponseAddressStandardizationListResponseDto\n} from './address-standardization.dto';\nimport { getAddressStandardizationListMethod } from './address-standardization.service';\n\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 {\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 {\n DspResponseOccupationDetailResponseDto,\n DspResponseOccupationListResponseDto,\n OccupationDetailRequestDto,\n OccupationListRequestDto\n} from './occupation-search.dto';\nimport { getOccupationDetailMethod, getOccupationListMethod } from './occupation-search.service';\n\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 { 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 { DspResponseVehicleTypeListResponseDto } from './vehicle-search.dto';\nimport { getVehicleListMethod } from './vehicle-search.service';\n\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 { 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 {\n DspResponseEmployeeProfileResponseDto,\n EmployeeProfileSearchRequestDto,\n} from './employee-search.dto';\nimport { getEmployeeProfileListMethod } from './employee-search.service';\n\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 { 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 {\n DspResponseOrganizationProfileResponse,\n OrganizationSearchRequestDto,\n} from './organization-search.dto';\nimport { getOrganizationProfileListMethod } from './organization-search.service';\n\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 { 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 { DspResponseNationalityListResponseDto, NationalitySearchRequestDto } from './nationality-search.dto';\nimport { getNationalityListMethod } from './nationality-search.service';\n\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 { 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 { DspResponseRiskGradeResponseDto, RiskGradeRequestDto } from './risk-grade-search.dto';\nimport { getRiskGradeMethod } from './risk-grade-search.service';\n\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 {\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 RemoteIdentityVerificationSystemIdentificationCardResponseDto\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<RemoteIdentityVerificationSystemIdentificationCardResponseDto>(apiUrl, params);\n\n return response.data;\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 { AxiosRequestConfig } from 'axios';\nimport { getEnvironmentFromHostname, getExt } from 'sales-frontend-utils';\n\nimport { HttpClientAxios } from '../../client';\n\nimport {\n FileExternalRequestDto,\n FileExternalResponseDto,\n FileUploadExternalRequestDto,\n FileUploadExternalResponseDto\n} from './dud-external-file.dto';\n\nfunction getDudUrl(url: string) {\n const stage = getEnvironmentFromHostname(window.location.hostname);\n let apiUrl = '';\n switch (stage) {\n case 'stg':\n apiUrl = `https://dsp-dud-stg.hanwhalife.com:10102${url}`;\n break;\n case 'prd':\n apiUrl = `https://dsp-dud.hanwhalife.com${url}`;\n break;\n case 'dev':\n apiUrl = `https://dsp-dud-dev.hanwhalife.com:10101${url}`;\n break;\n }\n\n return apiUrl;\n}\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 = getDudUrl('/api/v1/post/file');\n const formData = new FormData();\n if (params.data instanceof Blob) {\n formData.append('data', params.data, params.name || `dud-file.${getExt(params.data)}`);\n }\n\n if (params.data instanceof File) {\n formData.append('data', params.data, params.name || params.data.name);\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 && formData.append('preservationTerm', (getDayDiffFromToday(params.expireDate) + 1).toString());\n params.preservationTerm && formData.append('preservationTerm', params.preservationTerm.toString());\n\n formData.append('fileType', params.fileType);\n\n const httpClient = new HttpClientAxios(config);\n const res = await httpClient.api.post<FileUploadExternalResponseDto>(apiUrl, formData);\n\n return res.data;\n};\n\n/**\n * 파일 다운로드(외부용)\n * @param params.outputType 'BASE64'인 경우 `FileExternalResponseDto` 반환\n */\nexport function postFileDownloadMethod(\n params: FileExternalRequestDto & { outputType: 'BASE64' },\n config?: AxiosRequestConfig\n): Promise<FileExternalResponseDto>;\n/**\n * 파일 다운로드(외부용)\n * @param params.outputType 'BINARY' 또는 미지정인 경우 `File` 객체 반환\n */\nexport function postFileDownloadMethod(\n params: FileExternalRequestDto & { outputType?: 'BINARY' },\n config?: AxiosRequestConfig\n): Promise<File>;\n\nexport async function postFileDownloadMethod(params: FileExternalRequestDto, config?: AxiosRequestConfig) {\n const apiUrl = getDudUrl('/api/v1/get/file');\n\n const httpClient = new HttpClientAxios(config);\n /**\n * FileExternalRequestDto 의 outputType 에 따라 returnType이 상이\n * outputType = 'BASE64' 이면 returnType 이 FileExternalResponseDto\n * outputType = 'BINARY' 이면 File\n */\n const res = await httpClient.api.post<FileExternalResponseDto | File>(apiUrl, params);\n\n return res.data;\n}\n","import { useQuery } from '@tanstack/react-query';\n\nimport { CustomQueryOptions } from '../method.types';\n\nimport { FileUploadExternalRequestDto, FileUploadExternalResponseDto } from './dud-external-file.dto';\nimport { postFileUploadMethod } from './dud-external-file.service';\n\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"]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "sales-frontend-api",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.69",
|
|
4
4
|
"private": false,
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/client.js",
|
|
@@ -58,23 +58,23 @@
|
|
|
58
58
|
"tsup": "^8.4.0",
|
|
59
59
|
"typescript": "5.8.2",
|
|
60
60
|
"eslint-config-sales-frontend-eslint-config-v8": "^0.0.6",
|
|
61
|
-
"sales-frontend-
|
|
62
|
-
"sales-frontend-bridge": "0.0.46",
|
|
63
|
-
"sales-frontend-design-system": "0.0.71",
|
|
61
|
+
"sales-frontend-bridge": "0.0.48",
|
|
64
62
|
"sales-frontend-typescript-config": "0.0.2",
|
|
65
|
-
"sales-frontend-
|
|
63
|
+
"sales-frontend-design-system": "0.0.73",
|
|
64
|
+
"sales-frontend-stores": "0.0.5",
|
|
65
|
+
"sales-frontend-utils": "0.0.15"
|
|
66
66
|
},
|
|
67
67
|
"dependencies": {
|
|
68
68
|
"@tanstack/react-query": "^5.81.2",
|
|
69
69
|
"axios": "^1.10.0",
|
|
70
70
|
"zustand": "^5.0.6",
|
|
71
|
-
"sales-frontend-
|
|
72
|
-
"sales-frontend-
|
|
71
|
+
"sales-frontend-utils": "0.0.15",
|
|
72
|
+
"sales-frontend-debug": "0.0.12"
|
|
73
73
|
},
|
|
74
74
|
"peerDependencies": {
|
|
75
|
-
"sales-frontend-bridge": "0.0.
|
|
76
|
-
"sales-frontend-
|
|
77
|
-
"sales-frontend-
|
|
75
|
+
"sales-frontend-bridge": "0.0.48",
|
|
76
|
+
"sales-frontend-stores": "0.0.5",
|
|
77
|
+
"sales-frontend-design-system": "0.0.73"
|
|
78
78
|
},
|
|
79
79
|
"scripts": {
|
|
80
80
|
"lint": "eslint . --max-warnings 0",
|