chore: add favicons
This commit is contained in:
File diff suppressed because one or more lines are too long
3357
public/js/commons.js
3357
public/js/commons.js
File diff suppressed because one or more lines are too long
3441
public/js/home.js
3441
public/js/home.js
File diff suppressed because one or more lines are too long
3392
public/js/misc.js
3392
public/js/misc.js
File diff suppressed because one or more lines are too long
@ -1 +1,128 @@
|
||||
(()=>{var L=Object.defineProperty;var w=i=>{throw TypeError(i)};var k=(i,s,a)=>s in i?L(i,s,{enumerable:!0,configurable:!0,writable:!0,value:a}):i[s]=a;var M=(i,s,a)=>k(i,typeof s!="symbol"?s+"":s,a),b=(i,s,a)=>s.has(i)||w("Cannot "+a);var e=(i,s,a)=>(b(i,s,"read from private field"),a?a.call(i):s.get(i)),o=(i,s,a)=>s.has(i)?w("Cannot add the same private member more than once"):s instanceof WeakSet?s.add(i):s.set(i,a);var r=(i,s,a)=>(b(i,s,"access private method"),a);var c,n,m,t,d,K,l,g,A,D,I,f,h=class h{static get DARK(){return"dark"}static get LIGHT(){return"light"}static get ID(){return"theme-mode"}static get visualState(){return e(this,t,l)?e(this,t,d):e(this,t,g)?this.DARK:this.LIGHT}static getThemeMapper(s,a){return{[this.LIGHT]:s,[this.DARK]:a}}static init(){this.switchable&&(e(this,m).addEventListener("change",()=>{let s=e(this,t,d);r(this,t,I).call(this),s!==this.visualState&&r(this,t,f).call(this)}),e(this,t,l)&&(e(this,t,K)?r(this,t,A).call(this):r(this,t,D).call(this)))}static flip(){e(this,t,l)?r(this,t,I).call(this):e(this,t,g)?r(this,t,D).call(this):r(this,t,A).call(this),r(this,t,f).call(this)}};c=new WeakMap,n=new WeakMap,m=new WeakMap,t=new WeakSet,d=function(){return sessionStorage.getItem(e(this,c))||document.documentElement.getAttribute(e(this,n))},K=function(){return e(this,t,d)===this.DARK},l=function(){return e(this,t,d)!==null},g=function(){return e(this,m).matches},A=function(){document.documentElement.setAttribute(e(this,n),this.DARK),sessionStorage.setItem(e(this,c),this.DARK)},D=function(){document.documentElement.setAttribute(e(this,n),this.LIGHT),sessionStorage.setItem(e(this,c),this.LIGHT)},I=function(){document.documentElement.removeAttribute(e(this,n)),sessionStorage.removeItem(e(this,c))},f=function(){window.postMessage({id:this.ID},"*")},o(h,t),o(h,c,"mode"),o(h,n,"data-mode"),o(h,m,window.matchMedia("(prefers-color-scheme: dark)")),M(h,"switchable",!document.documentElement.hasAttribute(e(h,n)));var u=h;u.init();var E=u;window.Theme=u;})();
|
||||
(() => {
|
||||
var __defProp = Object.defineProperty;
|
||||
var __typeError = (msg) => {
|
||||
throw TypeError(msg);
|
||||
};
|
||||
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
||||
var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
||||
var __accessCheck = (obj, member, msg) => member.has(obj) || __typeError("Cannot " + msg);
|
||||
var __privateGet = (obj, member, getter) => (__accessCheck(obj, member, "read from private field"), getter ? getter.call(obj) : member.get(obj));
|
||||
var __privateAdd = (obj, member, value) => member.has(obj) ? __typeError("Cannot add the same private member more than once") : member instanceof WeakSet ? member.add(obj) : member.set(obj, value);
|
||||
var __privateMethod = (obj, member, method) => (__accessCheck(obj, member, "access private method"), method);
|
||||
|
||||
// <stdin>
|
||||
var _modeKey, _modeAttr, _darkMedia, _Theme_static, mode_get, isDarkMode_get, hasMode_get, sysDark_get, setDark_fn, setLight_fn, clearMode_fn, notify_fn;
|
||||
var _Theme = class _Theme {
|
||||
static get DARK() {
|
||||
return "dark";
|
||||
}
|
||||
static get LIGHT() {
|
||||
return "light";
|
||||
}
|
||||
/**
|
||||
* @returns {string} Theme mode identifier
|
||||
*/
|
||||
static get ID() {
|
||||
return "theme-mode";
|
||||
}
|
||||
/**
|
||||
* Gets the current visual state of the theme.
|
||||
*
|
||||
* @returns {string} The current visual state, either the mode if it exists,
|
||||
* or the system dark mode state ('dark' or 'light').
|
||||
*/
|
||||
static get visualState() {
|
||||
if (__privateGet(this, _Theme_static, hasMode_get)) {
|
||||
return __privateGet(this, _Theme_static, mode_get);
|
||||
} else {
|
||||
return __privateGet(this, _Theme_static, sysDark_get) ? this.DARK : this.LIGHT;
|
||||
}
|
||||
}
|
||||
/**
|
||||
* Maps theme modes to provided values
|
||||
* @param {string} light Value for light mode
|
||||
* @param {string} dark Value for dark mode
|
||||
* @returns {Object} Mapped values
|
||||
*/
|
||||
static getThemeMapper(light, dark) {
|
||||
return {
|
||||
[this.LIGHT]: light,
|
||||
[this.DARK]: dark
|
||||
};
|
||||
}
|
||||
/**
|
||||
* Initializes the theme based on system preferences or stored mode
|
||||
*/
|
||||
static init() {
|
||||
if (!this.switchable) {
|
||||
return;
|
||||
}
|
||||
__privateGet(this, _darkMedia).addEventListener("change", () => {
|
||||
const lastMode = __privateGet(this, _Theme_static, mode_get);
|
||||
__privateMethod(this, _Theme_static, clearMode_fn).call(this);
|
||||
if (lastMode !== this.visualState) {
|
||||
__privateMethod(this, _Theme_static, notify_fn).call(this);
|
||||
}
|
||||
});
|
||||
if (!__privateGet(this, _Theme_static, hasMode_get)) {
|
||||
return;
|
||||
}
|
||||
if (__privateGet(this, _Theme_static, isDarkMode_get)) {
|
||||
__privateMethod(this, _Theme_static, setDark_fn).call(this);
|
||||
} else {
|
||||
__privateMethod(this, _Theme_static, setLight_fn).call(this);
|
||||
}
|
||||
}
|
||||
/**
|
||||
* Flips the current theme mode
|
||||
*/
|
||||
static flip() {
|
||||
if (__privateGet(this, _Theme_static, hasMode_get)) {
|
||||
__privateMethod(this, _Theme_static, clearMode_fn).call(this);
|
||||
} else {
|
||||
__privateGet(this, _Theme_static, sysDark_get) ? __privateMethod(this, _Theme_static, setLight_fn).call(this) : __privateMethod(this, _Theme_static, setDark_fn).call(this);
|
||||
}
|
||||
__privateMethod(this, _Theme_static, notify_fn).call(this);
|
||||
}
|
||||
};
|
||||
_modeKey = new WeakMap();
|
||||
_modeAttr = new WeakMap();
|
||||
_darkMedia = new WeakMap();
|
||||
_Theme_static = new WeakSet();
|
||||
mode_get = function() {
|
||||
return sessionStorage.getItem(__privateGet(this, _modeKey)) || document.documentElement.getAttribute(__privateGet(this, _modeAttr));
|
||||
};
|
||||
isDarkMode_get = function() {
|
||||
return __privateGet(this, _Theme_static, mode_get) === this.DARK;
|
||||
};
|
||||
hasMode_get = function() {
|
||||
return __privateGet(this, _Theme_static, mode_get) !== null;
|
||||
};
|
||||
sysDark_get = function() {
|
||||
return __privateGet(this, _darkMedia).matches;
|
||||
};
|
||||
setDark_fn = function() {
|
||||
document.documentElement.setAttribute(__privateGet(this, _modeAttr), this.DARK);
|
||||
sessionStorage.setItem(__privateGet(this, _modeKey), this.DARK);
|
||||
};
|
||||
setLight_fn = function() {
|
||||
document.documentElement.setAttribute(__privateGet(this, _modeAttr), this.LIGHT);
|
||||
sessionStorage.setItem(__privateGet(this, _modeKey), this.LIGHT);
|
||||
};
|
||||
clearMode_fn = function() {
|
||||
document.documentElement.removeAttribute(__privateGet(this, _modeAttr));
|
||||
sessionStorage.removeItem(__privateGet(this, _modeKey));
|
||||
};
|
||||
notify_fn = function() {
|
||||
window.postMessage({ id: this.ID }, "*");
|
||||
};
|
||||
__privateAdd(_Theme, _Theme_static);
|
||||
__privateAdd(_Theme, _modeKey, "mode");
|
||||
__privateAdd(_Theme, _modeAttr, "data-mode");
|
||||
__privateAdd(_Theme, _darkMedia, window.matchMedia("(prefers-color-scheme: dark)"));
|
||||
__publicField(_Theme, "switchable", !document.documentElement.hasAttribute(__privateGet(_Theme, _modeAttr)));
|
||||
var Theme = _Theme;
|
||||
Theme.init();
|
||||
var stdin_default = Theme;
|
||||
window.Theme = Theme;
|
||||
})();
|
||||
|
3585
public/js/page.js
3585
public/js/page.js
File diff suppressed because one or more lines are too long
3644
public/js/post.js
3644
public/js/post.js
File diff suppressed because one or more lines are too long
Reference in New Issue
Block a user