fix filename patch scope
This commit is contained in:
@@ -60,7 +60,7 @@ const assetsDir = process.env.ASSETS_DIR || path.join(outputDir, "public/assets"
|
||||
const ssrDir = process.env.SSR_DIR || "";
|
||||
const explicitSsrFile = process.env.SSR_FILE || "";
|
||||
const serverIndexFile = process.env.SERVER_INDEX_FILE || path.join(outputDir, "server/index.mjs");
|
||||
const filenameCacheBust = "rr-filename-title-20260520";
|
||||
const filenameCacheBust = "rr-filename-title-20260520b";
|
||||
const pdfCacheBust = "rr-glalie-layout-20260520";
|
||||
const browserBufferPolyfill = "var Buffer=globalThis.Buffer??{isBuffer:()=>false,allocUnsafe:e=>new Uint8Array(e),alloc:e=>new Uint8Array(e)};/* rr-browser-buffer-polyfill */";
|
||||
|
||||
@@ -120,8 +120,11 @@ function replaceRegexOnce(source, regex, to) {
|
||||
}
|
||||
|
||||
function patchFilenameBundle(file) {
|
||||
if (!/^file-[A-Za-z0-9_-]+\.js$/.test(path.basename(file))) {
|
||||
return false;
|
||||
}
|
||||
let source = read(file);
|
||||
const replacement = 'function t(e,t){let n=(e||"resume").toString().trim()||"resume";return n=n.replace(/[\\\\/:*?"<>|]/g,"-").replace(/\\s+/g," ").replace(/\\.+$/,"").trim()||"resume",t&&n.toLowerCase().endsWith("."+t.toLowerCase())?n:`${n}${t?`.${t}`:""}`}';
|
||||
const replacement = 'function t(e,t){let n=(e??"resume").toString().trim()||"resume",r=t==null?"":String(t).trim().replace(/^\\./,"");return n=n.replace(/[\\\\/:*?"<>|]/g,"-").replace(/\\s+/g," ").replace(/\\.+$/,"").trim()||"resume",r&&n.toLowerCase().endsWith("."+r.toLowerCase())?n:`${n}${r?`.${r}`:""}`}';
|
||||
if (source.includes(replacement)) return true;
|
||||
|
||||
const start = source.indexOf("function t(");
|
||||
@@ -139,7 +142,7 @@ function patchFilenameBundle(file) {
|
||||
function patchSsr(source) {
|
||||
source = source.replace(/\n\t\tname: "",\n\t\tdata: \{/, "\n\t\tname: resume.name,\n\t\tdata: {");
|
||||
|
||||
const filenameReplacement = `function generateFilename(prefix, extension) {\n\tlet filename = (prefix || "resume").toString().trim() || "resume";\n\tfilename = filename.replace(/[\\\\/:*?"<>|]/g, "-").replace(/\\s+/g, " ").replace(/\\.+$/, "").trim() || "resume";\n\treturn extension && filename.toLowerCase().endsWith(\`.\${extension.toLowerCase()}\`) ? filename : \`\${filename}\${extension ? \`.\${extension}\` : ""}\`;\n}`;
|
||||
const filenameReplacement = `function generateFilename(prefix, extension) {\n\tlet filename = (prefix ?? "resume").toString().trim() || "resume";\n\tlet ext = extension == null ? "" : String(extension).trim().replace(/^\\./, "");\n\tfilename = filename.replace(/[\\\\/:*?"<>|]/g, "-").replace(/\\s+/g, " ").replace(/\\.+$/, "").trim() || "resume";\n\treturn ext && filename.toLowerCase().endsWith(\`.\${ext.toLowerCase()}\`) ? filename : \`\${filename}\${ext ? \`.\${ext}\` : ""}\`;\n}`;
|
||||
if (!source.includes(filenameReplacement)) {
|
||||
const slugifiedPattern = /function generateFilename\(prefix, extension\) \{\s*return `\$\{slugify\(prefix\)\}\$\{extension \? `\.\$\{extension\}` : ""\}`;\s*\}/;
|
||||
if (slugifiedPattern.test(source)) {
|
||||
@@ -211,8 +214,9 @@ function patchPublicPdf(source) {
|
||||
const assetFiles = listJsFiles(assetsDir);
|
||||
const filenameFiles = assetFiles
|
||||
.filter((file) => {
|
||||
if (!/^file-[A-Za-z0-9_-]+\.js$/.test(path.basename(file))) return false;
|
||||
const source = read(file);
|
||||
return source.includes("URL.createObjectURL") && source.includes(".download");
|
||||
return source.includes("URL.createObjectURL") && source.includes(".download") && source.includes("revokeObjectURL");
|
||||
})
|
||||
.sort((a, b) => fs.statSync(a).size - fs.statSync(b).size);
|
||||
|
||||
|
||||
@@ -60,7 +60,7 @@ const assetsDir = process.env.ASSETS_DIR || path.join(outputDir, "public/assets"
|
||||
const ssrDir = process.env.SSR_DIR || "";
|
||||
const explicitSsrFile = process.env.SSR_FILE || "";
|
||||
const serverIndexFile = process.env.SERVER_INDEX_FILE || path.join(outputDir, "server/index.mjs");
|
||||
const filenameCacheBust = "rr-filename-title-20260520";
|
||||
const filenameCacheBust = "rr-filename-title-20260520b";
|
||||
const pdfCacheBust = "rr-glalie-layout-20260520";
|
||||
const browserBufferPolyfill = "var Buffer=globalThis.Buffer??{isBuffer:()=>false,allocUnsafe:e=>new Uint8Array(e),alloc:e=>new Uint8Array(e)};/* rr-browser-buffer-polyfill */";
|
||||
|
||||
@@ -120,8 +120,11 @@ function replaceRegexOnce(source, regex, to) {
|
||||
}
|
||||
|
||||
function patchFilenameBundle(file) {
|
||||
if (!/^file-[A-Za-z0-9_-]+\.js$/.test(path.basename(file))) {
|
||||
return false;
|
||||
}
|
||||
let source = read(file);
|
||||
const replacement = 'function t(e,t){let n=(e||"resume").toString().trim()||"resume";return n=n.replace(/[\\\\/:*?"<>|]/g,"-").replace(/\\s+/g," ").replace(/\\.+$/,"").trim()||"resume",t&&n.toLowerCase().endsWith("."+t.toLowerCase())?n:`${n}${t?`.${t}`:""}`}';
|
||||
const replacement = 'function t(e,t){let n=(e??"resume").toString().trim()||"resume",r=t==null?"":String(t).trim().replace(/^\\./,"");return n=n.replace(/[\\\\/:*?"<>|]/g,"-").replace(/\\s+/g," ").replace(/\\.+$/,"").trim()||"resume",r&&n.toLowerCase().endsWith("."+r.toLowerCase())?n:`${n}${r?`.${r}`:""}`}';
|
||||
if (source.includes(replacement)) return true;
|
||||
|
||||
const start = source.indexOf("function t(");
|
||||
@@ -139,7 +142,7 @@ function patchFilenameBundle(file) {
|
||||
function patchSsr(source) {
|
||||
source = source.replace(/\n\t\tname: "",\n\t\tdata: \{/, "\n\t\tname: resume.name,\n\t\tdata: {");
|
||||
|
||||
const filenameReplacement = `function generateFilename(prefix, extension) {\n\tlet filename = (prefix || "resume").toString().trim() || "resume";\n\tfilename = filename.replace(/[\\\\/:*?"<>|]/g, "-").replace(/\\s+/g, " ").replace(/\\.+$/, "").trim() || "resume";\n\treturn extension && filename.toLowerCase().endsWith(\`.\${extension.toLowerCase()}\`) ? filename : \`\${filename}\${extension ? \`.\${extension}\` : ""}\`;\n}`;
|
||||
const filenameReplacement = `function generateFilename(prefix, extension) {\n\tlet filename = (prefix ?? "resume").toString().trim() || "resume";\n\tlet ext = extension == null ? "" : String(extension).trim().replace(/^\\./, "");\n\tfilename = filename.replace(/[\\\\/:*?"<>|]/g, "-").replace(/\\s+/g, " ").replace(/\\.+$/, "").trim() || "resume";\n\treturn ext && filename.toLowerCase().endsWith(\`.\${ext.toLowerCase()}\`) ? filename : \`\${filename}\${ext ? \`.\${ext}\` : ""}\`;\n}`;
|
||||
if (!source.includes(filenameReplacement)) {
|
||||
const slugifiedPattern = /function generateFilename\(prefix, extension\) \{\s*return `\$\{slugify\(prefix\)\}\$\{extension \? `\.\$\{extension\}` : ""\}`;\s*\}/;
|
||||
if (slugifiedPattern.test(source)) {
|
||||
@@ -211,8 +214,9 @@ function patchPublicPdf(source) {
|
||||
const assetFiles = listJsFiles(assetsDir);
|
||||
const filenameFiles = assetFiles
|
||||
.filter((file) => {
|
||||
if (!/^file-[A-Za-z0-9_-]+\.js$/.test(path.basename(file))) return false;
|
||||
const source = read(file);
|
||||
return source.includes("URL.createObjectURL") && source.includes(".download");
|
||||
return source.includes("URL.createObjectURL") && source.includes(".download") && source.includes("revokeObjectURL");
|
||||
})
|
||||
.sort((a, b) => fs.statSync(a).size - fs.statSync(b).size);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user