diff --git a/package-lock.json b/package-lock.json index af43568..1049165 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@wavemaker/rest-client-ui", - "version": "0.0.17", + "version": "0.0.18", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@wavemaker/rest-client-ui", - "version": "0.0.17", + "version": "0.0.18", "dependencies": { "@babel/runtime-corejs3": "^7.22.6", "@braintree/sanitize-url": "=6.0.2", diff --git a/package.json b/package.json index e22f7d7..c966a9b 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@wavemaker/rest-client-ui", - "version": "0.0.17", + "version": "0.0.18", "private": false, "main": "./dist/core/components/RestImport.js", "release": { diff --git a/src/App.tsx b/src/App.tsx index 2e32eff..3160827 100644 --- a/src/App.tsx +++ b/src/App.tsx @@ -52,7 +52,8 @@ export default function App() { viewMode: false, monacoEditorURL: undefined as any, responseBlockHeight: 550, - urlBasePath:"" + urlBasePath:"", + settingsDetailsResponse: {} } return ( diff --git a/src/core/components/RestImport.tsx b/src/core/components/RestImport.tsx index 813cd19..e36b24a 100644 --- a/src/core/components/RestImport.tsx +++ b/src/core/components/RestImport.tsx @@ -77,7 +77,8 @@ export interface restImportConfigI { hideMonacoEditor: (value: boolean) => void, getServiceName: (value: string) => void, getUseProxy: (value: boolean) => void, - urlBasePath :string + urlBasePath :string, + settingsDetailsResponse : any } export interface ICustomAxiosConfig extends AxiosRequestConfig { useProxy?: boolean, @@ -302,7 +303,7 @@ export default function RestImport({ language, restImportConfig }: { language: s const [basePath, setBasePath] = useState(restImportConfig?.urlBasePath) const [basePathList, setBasePathList] = useState([]); const [basePathEnabled, setBasePathEnabled] = useState(!restImportConfig?.viewMode) - const [settingsDetailsResponse, setSettingsDetailsResponse] = useState({}) + const [settingsDetailsResponse, setSettingsDetailsResponse] = useState(restImportConfig?.settingsDetailsResponse || {}) const [handleRes, setHandleRes] =useState() const [handleReq, setHandleReq] = useState() @@ -1208,7 +1209,7 @@ export default function RestImport({ language, restImportConfig }: { language: s const handleChangeBasePath = async (event: SelectChangeEvent) => { setBasePath(event.target.value as any); - if (Object.keys(settingsDetailsResponse).length !== 0) { + if (Object.keys(settingsDetailsResponse).length !== 0 || restImportConfig.viewMode) { let updateSwaggerPayload: any = settingsDetailsResponse; updateSwaggerPayload['httpRequestDetails']['urlBasePath'] = event.target.value const url = restImportConfig?.proxy_conf?.base_path + restImportConfig?.proxy_conf?.updateSwagger @@ -1229,7 +1230,8 @@ export default function RestImport({ language, restImportConfig }: { language: s restImportConfig.getServiceName(updateSwaggerResponse?.serviceId) setserviceName(updateSwaggerResponse?.serviceId) } - handleResponse(handleRes, handleReq, updateSwaggerResponse) + if(handleRes && handleReq) + handleResponse(handleRes, handleReq, updateSwaggerResponse) } else { handleResponse(handleRes, handleReq) console.log("Received an unexpected response:", response); diff --git a/src/test/providermodal.test.tsx b/src/test/providermodal.test.tsx index 5cb1ef2..d017763 100644 --- a/src/test/providermodal.test.tsx +++ b/src/test/providermodal.test.tsx @@ -50,7 +50,8 @@ export const ProxyOFFConfig: restImportConfigI = { viewMode: false, setResponseHeaders: { namespace: "test" }, monacoEditorURL: "", - urlBasePath: '' + urlBasePath: '', + settingsDetailsResponse : {} } const mockProxyOFFProps: mockPropsI = { diff --git a/src/test/testdata.ts b/src/test/testdata.ts index 0342601..f905940 100644 --- a/src/test/testdata.ts +++ b/src/test/testdata.ts @@ -299,7 +299,8 @@ export const emptyConfig: restImportConfigI = { setResponseHeaders: { namespace: "test" }, viewMode: false, monacoEditorURL: "", - urlBasePath: '' + urlBasePath: '', + settingsDetailsResponse : {} }; export const mockEmptyProps: mockPropsI = { language: "en", @@ -352,7 +353,8 @@ const configWithData: restImportConfigI = { viewMode: false, setResponseHeaders: { namespace: "test" }, monacoEditorURL: "", - urlBasePath: '' + urlBasePath: '', + settingsDetailsResponse : {} }; export const preLoadedProps: mockPropsI = {