Skip to content

Commit

Permalink
More descriptive filenames
Browse files Browse the repository at this point in the history
  • Loading branch information
workeffortwaste committed Jan 30, 2022
1 parent 83224d0 commit 5eeb45d
Show file tree
Hide file tree
Showing 2 changed files with 16 additions and 5 deletions.
7 changes: 4 additions & 3 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -20,11 +20,12 @@
"eslint-plugin-import": "^2.22.1",
"eslint-plugin-node": "^11.1.0",
"eslint-plugin-promise": "^4.2.1",
"filemanager-webpack-plugin": "^2.0.5",
"webpack": "^5.4.0",
"webpack-cli": "^4.1.0",
"filemanager-webpack-plugin": "^2.0.5"
"webpack-cli": "^4.1.0"
},
"dependencies": {
"file-saver": "^2.0.5"
"file-saver": "^2.0.5",
"slugify": "^1.6.5"
}
}
14 changes: 12 additions & 2 deletions src/script.js
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
(() => {
/* Libaries */
const FileSaver = require('file-saver')
const slugify = require('slugify')

/* The HTML payload */
const htmlButtons = `
Expand Down Expand Up @@ -124,13 +125,22 @@

// Hook button to JSON
const button = [...document.querySelectorAll(`*[aria-labelledby="${device}_tab"] .pageSpeed_button`)].pop()

// Regex to sanitise the filename
const regex = /[*+~.()'"!:@]/g
if (device === 'desktop') {
button.addEventListener('click', e => {
FileSaver.saveAs(new Blob([JSON.stringify(window.pageSpeedSaverDesktop)]), 'pagespeed-saver-json-desktop.json')
let filename = `${slugify(window.pageSpeedSaverDesktop.finalUrl)}-${slugify(window.pageSpeedSaverDesktop.configSettings.formFactor)}-${slugify(window.pageSpeedSaverDesktop.fetchTime)}.json`
filename = filename.replace(regex, '-')
console.log(`Saving as ${filename}`)
FileSaver.saveAs(new Blob([JSON.stringify(window.pageSpeedSaverDesktop)]), filename)
})
} else {
button.addEventListener('click', e => {
FileSaver.saveAs(new Blob([JSON.stringify(window.pageSpeedSaverMobile)]), 'pagespeed-saver-json-mobile.json')
let filename = `${slugify(window.pageSpeedSaverMobile.finalUrl)}-${slugify(window.pageSpeedSaverMobile.configSettings.formFactor)}-${slugify(window.pageSpeedSaverMobile.fetchTime)}.json`
filename = filename.replace(regex, '-')
console.log(`Saving as ${filename}`)
FileSaver.saveAs(new Blob([JSON.stringify(window.pageSpeedSaverMobile)]), filename)
})
}

Expand Down

0 comments on commit 5eeb45d

Please sign in to comment.