{"version":3,"file":"static/chunks/app/error-e1f1ece0dc2e1cee.js","mappings":"6EAAA,sCAAyH,8FCM1G,SAASA,EAAM,CAM7B,KAN6B,OAC5BC,CAAK,CAKN,CAN6B,EAOtBC,EAAc,UAClB,MAAMC,CAAAA,EAAAA,EAAAA,CAAAA,CAAQA,CACX,wBACD,CACEC,IAAKC,MAA2B,CAChCC,IAAK,YAA6BL,MAAAA,CAAjBA,EAAMM,OAAO,CAAC,KAAe,OAAZN,EAAMO,KAAK,CAC/C,EACA,OAEJ,EAMA,MAJAC,CAAAA,EAAAA,EAAAA,SAAAA,CAASA,CAAC,KACRP,GACF,EAAG,CAACD,EAAM,EAGR,UAACS,MAAAA,CAAIC,UAAU,sBAAa,kDAIhC,iFC9Be,OAAMC,EACjB,aAAaC,YAAYN,CAAe,CAAE,CACtCO,EAAAA,KAAKA,CAACC,OAAO,CAACR,EAClB,CAEA,aAAaS,YAAYT,CAAe,CAAE,CACtCO,EAAAA,KAAKA,CAACb,KAAK,CAACM,EAChB,CACJ,CCuCA,MA/CiB,aA+CFJ,EA/CSc,CAAAA,KA+CDd,CArCXe,CAqCY,CApCaA,EAMZC,EAkBNA,MAnCkBC,EAAAA,UAAAA,MAAAA,CAAAA,GAAAA,KAAAA,IAAAA,SAAAA,CAAAA,EAAAA,CAAAA,SAAAA,CAAAA,EAAAA,CAAO,CAAC,EAAGC,EAAAA,UAAAA,MAAAA,CAAAA,GAAAA,KAAAA,IAAAA,SAAAA,CAAAA,EAAAA,CAAAA,SAAAA,CAAAA,EAAAA,CAAS,OACrD,GAAI,CACA,IAAMH,EAAW,MAAMI,CAAAA,EAAAA,EAAAA,CAAAA,CAAKA,CAAC,QACzBD,EACAJ,IAAK,GAAqCA,MAAAA,CAAlCZ,oCAA+B,EAAO,OAAJY,QAC1CG,EACAG,QAAS,CACT,CACJ,GAMA,MAJA,CAAiB,QAAbL,EAAAA,EAASE,IAAAA,GAATF,KAAAA,IAAAA,EAAAA,KAAAA,EAAAA,EAAeX,OAAAA,EAAS,CACxBK,EAAaC,UAADD,CAAY,CAAc,QAAbM,EAAAA,EAASE,IAAAA,GAATF,KAAAA,IAAAA,EAAAA,KAAAA,EAAAA,EAAeX,OAAO,EAG5CW,EAASE,IAAI,CACtB,MAAOD,EAAI,CACT,KAAIA,aAAcK,EAAAA,EAAAA,EAqBd,MAAO,CACHC,OAAQ,IACRlB,QAAS,2DACTa,KAAM,KACNM,OAAQ,EAAE,CAzBY,EAC1B,IAAMN,EAAkB,QAAXD,EAAAA,EAAGD,QAAAA,GAAHC,KAAAA,IAAAA,EAAAA,KAAAA,EAAAA,EAAaC,IAAI,CAC9B,aAAOA,EAAAA,KAAAA,EAAAA,EAAMK,MAANL,EACH,KAAK,IACD,GAAIA,OAAAA,EAAAA,KAAAA,EAAAA,EAAMb,MAANa,CAAMb,IAAY,cAAe,MACrCK,EAAaI,UAADJ,CAAY,OAACQ,EAAAA,KAAAA,EAAAA,EAAMb,MAANa,CAAa,EACtC,KAEJ,MAAK,IACDA,EAAKM,MAAM,CAACC,OAAO,CAAC,IAChBf,EAAaI,UAADJ,CAAY,CAACgB,EAAQrB,OAAO,CAC1C,GACF,KAEJ,SACIK,EAAaI,UAADJ,CAAY,CAAC,2DAGjC,CACA,OAAkB,QAAXO,EAAAA,EAAGD,QAAAA,GAAHC,KAAAA,IAAAA,EAAAA,KAAAA,EAAAA,EAAaC,IAAI,CAShC,CACJ,KATe","sources":["webpack://_N_E/?5660","webpack://_N_E/./src/app/error.tsx","webpack://_N_E/./src/services/toast.service.ts","webpack://_N_E/./src/services/api-handler.ts"],"sourcesContent":["import(/* webpackMode: \"eager\" */ \"/codebuild/output/src2785796416/src/online-ordering-system-website/src/app/error.tsx\");\n","/* eslint-disable react-hooks/exhaustive-deps */\n\"use client\";\n\nimport fetchApi from \"@/services/api-handler\";\nimport { useEffect } from \"react\";\n\nexport default function Error({\n error,\n\n}: {\n error: Error & { digest?: string };\n reset: () => void;\n}) {\n const reportError = async () => {\n await fetchApi(\n `slack/oos/postMessage`,\n {\n env: process.env.NEXT_PUBLIC_ENV,\n msg: `Global - ${error.message} ${error.stack}`,\n },\n \"post\"\n );\n };\n\n useEffect(() => {\n reportError();\n }, [error]);\n\n return (\n
\n Sorry something went wrong... Please try again\n
\n );\n}\n","import { toast } from \"react-hot-toast\";\n\n\nexport default class ToastService {\n static async showSuccess(message: string) {\n toast.success(message);\n }\n\n static async showFailure(message: string) {\n toast.error(message);\n }\n}","import axios, { AxiosError } from \"axios\";\nimport ToastService from \"./toast.service\";\n\nconst fetchApi = async (url: string, data = {}, method = 'post',) => {\n try {\n const response = await axios({\n method,\n url: `${process.env.NEXT_PUBLIC_API_URL}${url}`,\n data,\n headers: {\n }\n });\n \n if (response.data?.message) {\n ToastService.showSuccess(response.data?.message);\n }\n\n return response.data;\n } catch (ex) {\n if (ex instanceof AxiosError) {\n const data = ex.response?.data;\n switch(data?.status) {\n case 400: {\n if (data?.message === 'Bad Request') break;\n ToastService.showFailure(data?.message);\n break;\n }\n case 422: {\n data.errors.forEach((element: any) => {\n ToastService.showFailure(element.message);\n });\n break;\n }\n default: {\n ToastService.showFailure('Apologies for the inconvenience. Please try again later.');\n break;\n }\n }\n return ex.response?.data;\n } else {\n return {\n status: 500,\n message: 'Apologies for the inconvenience. Please try again later.',\n data: null,\n errors: [],\n }\n }\n }\n}\n\nexport default fetchApi;\n"],"names":["Error","error","reportError","fetchApi","env","process","msg","message","stack","useEffect","div","className","ToastService","showSuccess","toast","success","showFailure","url","response","ex","data","method","axios","headers","AxiosError","status","errors","forEach","element"],"sourceRoot":"","ignoreList":[]}