From cb3219d35d8afa70a77a5cba7bafed67518b71a3 Mon Sep 17 00:00:00 2001 From: javlonbek suyunov Date: Sun, 3 May 2026 13:20:01 +0500 Subject: [PATCH 1/2] feat: add import service API path for task 5 --- src/constants/apiPaths.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/constants/apiPaths.ts b/src/constants/apiPaths.ts index 6846a7534c..47eb1650be 100755 --- a/src/constants/apiPaths.ts +++ b/src/constants/apiPaths.ts @@ -1,7 +1,7 @@ const API_PATHS = { product: "https://.execute-api.eu-west-1.amazonaws.com/dev", order: "https://.execute-api.eu-west-1.amazonaws.com/dev", - import: "https://.execute-api.eu-west-1.amazonaws.com/dev", + import: "https://rqsp3j0ncj.execute-api.ap-southeast-2.amazonaws.com/prod/", bff: "https://.execute-api.eu-west-1.amazonaws.com/dev", cart: "https://.execute-api.eu-west-1.amazonaws.com/dev", }; From 7efab1f3ac8ca3feca3c8d78ff3ca977c7e0890f Mon Sep 17 00:00:00 2001 From: javlonbek suyunov Date: Sun, 17 May 2026 14:38:26 +0500 Subject: [PATCH 2/2] feat: add authorization service with basicAuthorizer lambda - task 7 update for frontend also --- .gitignore | 2 +- .../components/CSVFileImport.tsx | 44 ++++++++++++------- src/constants/apiPaths.ts | 2 +- 3 files changed, 30 insertions(+), 18 deletions(-) diff --git a/.gitignore b/.gitignore index 0eac307261..86230f8e48 100644 --- a/.gitignore +++ b/.gitignore @@ -6,7 +6,7 @@ yarn-debug.log* yarn-error.log* pnpm-debug.log* lerna-debug.log* - +cdk.out node_modules .serverless coverage diff --git a/src/components/pages/admin/PageProductImport/components/CSVFileImport.tsx b/src/components/pages/admin/PageProductImport/components/CSVFileImport.tsx index d11028c961..bfd777ccc5 100755 --- a/src/components/pages/admin/PageProductImport/components/CSVFileImport.tsx +++ b/src/components/pages/admin/PageProductImport/components/CSVFileImport.tsx @@ -1,6 +1,7 @@ import React from "react"; import Typography from "@mui/material/Typography"; import Box from "@mui/material/Box"; +import axios from "axios"; type CSVFileImportProps = { url: string; @@ -25,23 +26,34 @@ export default function CSVFileImport({ url, title }: CSVFileImportProps) { const uploadFile = async () => { console.log("uploadFile to", url); + // Get authorization token from localStorage + const authorization_token = localStorage.getItem("authorization_token"); + // Get the presigned URL - // const response = await axios({ - // method: "GET", - // url, - // params: { - // name: encodeURIComponent(file.name), - // }, - // }); - // console.log("File to upload: ", file.name); - // console.log("Uploading to: ", response.data); - // const result = await fetch(response.data, { - // method: "PUT", - // body: file, - // }); - // console.log("Result: ", result); - // setFile(""); + const response = await axios({ + method: "GET", + url, + params: { + name: encodeURIComponent(file!.name), + }, + headers: { + Authorization: `Basic ${authorization_token}`, + }, + }); + + console.log("File to upload: ", file!.name); + console.log("Uploading to: ", response.data); + + // Upload file to S3 using presigned URL + const result = await fetch(response.data, { + method: "PUT", + body: file, + }); + + console.log("Result: ", result); + setFile(undefined); }; + return ( @@ -57,4 +69,4 @@ export default function CSVFileImport({ url, title }: CSVFileImportProps) { )} ); -} +} \ No newline at end of file diff --git a/src/constants/apiPaths.ts b/src/constants/apiPaths.ts index 47eb1650be..51e414cdfb 100755 --- a/src/constants/apiPaths.ts +++ b/src/constants/apiPaths.ts @@ -1,7 +1,7 @@ const API_PATHS = { product: "https://.execute-api.eu-west-1.amazonaws.com/dev", order: "https://.execute-api.eu-west-1.amazonaws.com/dev", - import: "https://rqsp3j0ncj.execute-api.ap-southeast-2.amazonaws.com/prod/", + import: "https://mrtfclzte1.execute-api.ap-southeast-2.amazonaws.com/prod", bff: "https://.execute-api.eu-west-1.amazonaws.com/dev", cart: "https://.execute-api.eu-west-1.amazonaws.com/dev", };