{
const output = /worker-(.+)\.html/.exec(window.location.href)[1];
const cache = () =>
localStorage.getItem(output)
? JSON.parse(localStorage.getItem(output))
: cars;
const element = table(cache());
element.hot.updateSettings({
afterChange: (changes, source) => {
if (source !== "loadData") {
localStorage.setItem(
output,
JSON.stringify(element.hot.getSourceData(), null, 2)
);
}
},
contextMenu: [
{
name: "<b>Discard edits</b>",
hidden: () => {
return !cache();
},
callback: (key, selection, clickEvent) => {
localStorage.clear();
element.hot.loadData(cars);
}
},
{
name: "---------",
hidden: () => !cache()
},
"row_above",
"row_below",
"---------",
"col_left",
"col_right",
"---------",
"remove_row",
"remove_col",
"---------",
"undo",
"redo",
"---------",
"make_read_only",
"---------",
"alignment"
]
});
return element;
}