- using eventbus in recipe editor - migrate to logging instead of console log - fix case swap not saved, value not update after change, topping slot bug Signed-off-by: pakintada@gmail.com <Pakin>
42 lines
1 KiB
TypeScript
42 lines
1 KiB
TypeScript
import { logger } from '$lib/core/utils/logger';
|
|
function extractCookieOnNonBrowser() {
|
|
let result: any = {};
|
|
let cookie_ent = document.cookie.split(';');
|
|
for (let i = 0; i < cookie_ent.length; i++) {
|
|
let c = cookie_ent[i].trim();
|
|
if (c.indexOf('=') > -1) {
|
|
let key = c.split('=')[0];
|
|
result[key] = c.split('=')[1];
|
|
}
|
|
}
|
|
return result;
|
|
}
|
|
|
|
function setCookieOnNonBrowser(name: string, value: string) {
|
|
let current = extractCookieOnNonBrowser();
|
|
let result = '';
|
|
|
|
for (let key of Object.keys(current)) {
|
|
if (key == name) continue;
|
|
result += `${key}=${current[key]}; `;
|
|
}
|
|
|
|
result += `${name}=${value};`;
|
|
|
|
document.cookie = result;
|
|
logger.info('last set cookie', result);
|
|
}
|
|
|
|
function deleteCookiesOnNonBrowser(name: string) {
|
|
let current = extractCookieOnNonBrowser();
|
|
let result = '';
|
|
if (current[name]) {
|
|
for (let key of Object.keys(current)) {
|
|
if (key == name) continue;
|
|
result += `${key}=${current[key]}; `;
|
|
}
|
|
}
|
|
document.cookie = result;
|
|
}
|
|
|
|
export { extractCookieOnNonBrowser, setCookieOnNonBrowser, deleteCookiesOnNonBrowser };
|