mirror of
https://github.com/AmruthPillai/Reactive-Resume.git
synced 2025-11-11 21:12:42 +10:00
switch from sessionStorage to localStorage
This commit is contained in:
@ -22,7 +22,7 @@ FROM base AS release
|
||||
RUN apt update && apt install -y dumb-init --no-install-recommends
|
||||
|
||||
COPY --chown=node:node --from=build /app/.npmrc /app/package.json /app/package-lock.json ./
|
||||
RUN npm ci --production && npm cache clean --force
|
||||
RUN npm ci --omit=dev && npm cache clean --force
|
||||
|
||||
# Copy Build Output
|
||||
COPY --chown=node:node --from=build /app/dist ./dist
|
||||
|
||||
@ -19,7 +19,7 @@ export const Providers = () => {
|
||||
}
|
||||
};
|
||||
|
||||
const resumeData = window.sessionStorage.getItem("resume");
|
||||
const resumeData = window.localStorage.getItem("resume");
|
||||
if (resumeData) return setResume(JSON.parse(resumeData));
|
||||
|
||||
window.addEventListener("message", handleMessage);
|
||||
|
||||
@ -82,7 +82,6 @@ export class PrinterService {
|
||||
|
||||
async generateResume(resume: ResumeDto) {
|
||||
const browser = await this.getBrowser();
|
||||
|
||||
const page = await browser.newPage();
|
||||
|
||||
let url = this.utils.getUrl();
|
||||
@ -112,7 +111,7 @@ export class PrinterService {
|
||||
const numPages = resume.data.metadata.layout.length;
|
||||
|
||||
await page.evaluateOnNewDocument((data) => {
|
||||
sessionStorage.setItem("resume", JSON.stringify(data));
|
||||
window.localStorage.setItem("resume", JSON.stringify(data));
|
||||
}, resume.data);
|
||||
|
||||
await page.goto(`${url}/artboard/preview`, { waitUntil: "networkidle0" });
|
||||
@ -192,7 +191,6 @@ export class PrinterService {
|
||||
|
||||
async generatePreview(resume: ResumeDto) {
|
||||
const browser = await this.getBrowser();
|
||||
|
||||
const page = await browser.newPage();
|
||||
|
||||
let url = this.utils.getUrl();
|
||||
@ -220,7 +218,7 @@ export class PrinterService {
|
||||
|
||||
// Set the data of the resume to be printed in the browser's session storage
|
||||
await page.evaluateOnNewDocument((data: string) => {
|
||||
sessionStorage.setItem("resume", data);
|
||||
window.localStorage.setItem("resume", data);
|
||||
}, JSON.stringify(resume.data));
|
||||
|
||||
await page.setViewport({ width: 794, height: 1123 });
|
||||
|
||||
@ -1,6 +1,11 @@
|
||||
export const delay = (time: number) => new Promise((resolve) => setTimeout(resolve, time));
|
||||
|
||||
export const withTimeout = async <T>(promise: Promise<T>, time: number): Promise<T> => {
|
||||
const timeout = new Promise((_, reject) => setTimeout(() => reject, time));
|
||||
const timeout = new Promise((_, reject) =>
|
||||
setTimeout(() => {
|
||||
return reject(new Error(`Operation timed out after ${time}ms`));
|
||||
}, time),
|
||||
);
|
||||
|
||||
return Promise.race([promise, timeout]) as T;
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user