Erste Etappe des v3-Umbaus. Bewusst ohne jede Architektur-Aenderung: nur Entruempeln, damit der Rest des Umbaus auf einem messbar leichten Stand aufsetzt. Gemessen (vorher -> nachher): dist gesamt 27 375 720 B -> 1 477 852 B (-94,6 %) Dateien in dist 135 -> 35 Start-Chunk gzip 220 278 B -> 110 571 B (-49,8 %) CSS gzip 31 577 B -> 15 121 B (-52,1 %) Schrift-Dateien 112 -> 11 (WOFF 1: 0) Vier Eingriffe: 1) avatar.vrm (24,5 MB) entfernt. Lag in public/ und dist/, wurde von KEINER Zeile des Repos referenziert — der Renderer Avatar3D.tsx war schon vorher verschwunden. War 89,5 % der Nutzlast, die auf die Box ging. Damit fallen auch die .gitignore-Sonderregel und der Direkt-Deploy-Schritt weg. DISASTER_RECOVERY.md §3·D ehrlich auf "ausgebaut" gesetzt (7 Stellen). 2) Schriften: die 11 @fontsource-Sammelimporte zogen ALLE Subsets (latin-ext, griechisch, kyrillisch) und je eine WOFF-1-Fassung mit — 112 Dateien, 1,58 MB, davon 902 kB WOFF 1, das kein Browser dieser App je abruft. Jetzt stehen die @font-face-Regeln direkt in index.css: nur latin, nur WOFF 2, nur die Schnitte, die per grep ueber die font-*-Klassen wirklich belegt sind. Nebenbei behoben: JetBrains Mono 600/700 fehlten komplett — die 19 Stellen mit `font-mono font-bold/semibold` wurden vom Browser synthetisch fettgerechnet. Jetzt echte Schnitte; bei Monospace ist die Laufweite gleich, kein Layout-Versatz. 3) Recharts aus dem Startbuendel. Das Cockpit ist die Startseite und laedt daher NICHT lazy; ueber SystemStatusCard/TokenPerformanceCard zog es Recharts samt d3 in index-*.js. LiveAreaChart ist jetzt eine Lazy-Huelle (Suspense mit hoehengleichem Platzhalter, damit nichts springt), die Recharts-Umsetzung liegt in LiveAreaChartImpl.tsx und kommt als eigener Chunk nach (105 kB gzip). 4) index.css: height 100dvh mit 100% als Rueckfall. Auf Mobilbrowsern mit einfahrender Adressleiste ist 100 % nicht die sichtbare Hoehe. Dazu ein Buendel-Budget in beiden Ampel-Dateien (.gitea/ = MC2-Fassung, deploy/ = universelle Vorlage): Start-Chunk und dist-Gesamtgroesse werden am FRISCHEN Build im Runner gemessen. Bewusst kein Vergleich mit dem committeten dist — der waere ueber Node-Versionen hinweg flatterhaft und wuerde dauerhaft rot leuchten, was das Signal zerstoert. Verifiziert gegen die Box (Frontend-Dev mit MC_API_TARGET=192.168.178.151:9001): Cockpit rendert mit Live-Daten, keine Konsolenfehler, alle 11 Schriftschnitte registriert, LiveAreaChartImpl + recharts laden nachweislich als Nachlade-Chunk. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2 lines
10 KiB
JavaScript
2 lines
10 KiB
JavaScript
class P extends Map{constructor(t,n=U){if(super(),Object.defineProperties(this,{_intern:{value:new Map},_key:{value:n}}),t!=null)for(const[r,i]of t)this.set(r,i)}get(t){return super.get(_(this,t))}has(t){return super.has(_(this,t))}set(t,n){return super.set(Q(this,t),n)}delete(t){return super.delete(T(this,t))}}function _({_intern:e,_key:t},n){const r=t(n);return e.has(r)?e.get(r):n}function Q({_intern:e,_key:t},n){const r=t(n);return e.has(r)?e.get(r):(e.set(r,n),n)}function T({_intern:e,_key:t},n){const r=t(n);return e.has(r)&&(n=e.get(r),e.delete(r)),n}function U(e){return e!==null&&typeof e=="object"?e.valueOf():e}function ge(e,t){let n;if(t===void 0)for(const r of e)r!=null&&(n<r||n===void 0&&r>=r)&&(n=r);else{let r=-1;for(let i of e)(i=t(i,++r,e))!=null&&(n<i||n===void 0&&i>=i)&&(n=i)}return n}function be(e,t){let n;if(t===void 0)for(const r of e)r!=null&&(n>r||n===void 0&&r>=r)&&(n=r);else{let r=-1;for(let i of e)(i=t(i,++r,e))!=null&&(n>i||n===void 0&&i>=i)&&(n=i)}return n}function V(e,t){switch(arguments.length){case 0:break;case 1:this.range(e);break;default:this.range(t).domain(e);break}return this}function pe(e,t){switch(arguments.length){case 0:break;case 1:{typeof e=="function"?this.interpolator(e):this.range(e);break}default:{this.domain(e),typeof t=="function"?this.interpolator(t):this.range(t);break}}return this}const j=Symbol("implicit");function W(){var e=new P,t=[],n=[],r=j;function i(f){let a=e.get(f);if(a===void 0){if(r!==j)return r;e.set(f,a=t.push(f)-1)}return n[a%n.length]}return i.domain=function(f){if(!arguments.length)return t.slice();t=[],e=new P;for(const a of f)e.has(a)||e.set(a,t.push(a)-1);return i},i.range=function(f){return arguments.length?(n=Array.from(f),i):n.slice()},i.unknown=function(f){return arguments.length?(r=f,i):r},i.copy=function(){return W(t,n).unknown(r)},V.apply(i,arguments),i}function q(e,t,n){e.prototype=t.prototype=n,n.constructor=e}function D(e,t){var n=Object.create(e.prototype);for(var r in t)n[r]=t[r];return n}function m(){}var b=.7,$=1/b,g="\\s*([+-]?\\d+)\\s*",p="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",x="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",X=/^#([0-9a-f]{3,8})$/,Y=new RegExp(`^rgb\\(${g},${g},${g}\\)$`),Z=new RegExp(`^rgb\\(${x},${x},${x}\\)$`),ee=new RegExp(`^rgba\\(${g},${g},${g},${p}\\)$`),te=new RegExp(`^rgba\\(${x},${x},${x},${p}\\)$`),ne=new RegExp(`^hsl\\(${p},${x},${x}\\)$`),re=new RegExp(`^hsla\\(${p},${x},${x},${p}\\)$`),O={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074};q(m,E,{copy(e){return Object.assign(new this.constructor,this,e)},displayable(){return this.rgb().displayable()},hex:S,formatHex:S,formatHex8:ie,formatHsl:fe,formatRgb:C,toString:C});function S(){return this.rgb().formatHex()}function ie(){return this.rgb().formatHex8()}function fe(){return F(this).formatHsl()}function C(){return this.rgb().formatRgb()}function E(e){var t,n;return e=(e+"").trim().toLowerCase(),(t=X.exec(e))?(n=t[1].length,t=parseInt(t[1],16),n===6?z(t):n===3?new o(t>>8&15|t>>4&240,t>>4&15|t&240,(t&15)<<4|t&15,1):n===8?w(t>>24&255,t>>16&255,t>>8&255,(t&255)/255):n===4?w(t>>12&15|t>>8&240,t>>8&15|t>>4&240,t>>4&15|t&240,((t&15)<<4|t&15)/255):null):(t=Y.exec(e))?new o(t[1],t[2],t[3],1):(t=Z.exec(e))?new o(t[1]*255/100,t[2]*255/100,t[3]*255/100,1):(t=ee.exec(e))?w(t[1],t[2],t[3],t[4]):(t=te.exec(e))?w(t[1]*255/100,t[2]*255/100,t[3]*255/100,t[4]):(t=ne.exec(e))?G(t[1],t[2]/100,t[3]/100,1):(t=re.exec(e))?G(t[1],t[2]/100,t[3]/100,t[4]):O.hasOwnProperty(e)?z(O[e]):e==="transparent"?new o(NaN,NaN,NaN,0):null}function z(e){return new o(e>>16&255,e>>8&255,e&255,1)}function w(e,t,n,r){return r<=0&&(e=t=n=NaN),new o(e,t,n,r)}function ae(e){return e instanceof m||(e=E(e)),e?(e=e.rgb(),new o(e.r,e.g,e.b,e.opacity)):new o}function R(e,t,n,r){return arguments.length===1?ae(e):new o(e,t,n,r??1)}function o(e,t,n,r){this.r=+e,this.g=+t,this.b=+n,this.opacity=+r}q(o,R,D(m,{brighter(e){return e=e==null?$:Math.pow($,e),new o(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=e==null?b:Math.pow(b,e),new o(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new o(d(this.r),d(this.g),d(this.b),k(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:A,formatHex:A,formatHex8:se,formatRgb:B,toString:B}));function A(){return`#${h(this.r)}${h(this.g)}${h(this.b)}`}function se(){return`#${h(this.r)}${h(this.g)}${h(this.b)}${h((isNaN(this.opacity)?1:this.opacity)*255)}`}function B(){const e=k(this.opacity);return`${e===1?"rgb(":"rgba("}${d(this.r)}, ${d(this.g)}, ${d(this.b)}${e===1?")":`, ${e})`}`}function k(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function d(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function h(e){return e=d(e),(e<16?"0":"")+e.toString(16)}function G(e,t,n,r){return r<=0?e=t=n=NaN:n<=0||n>=1?e=t=NaN:t<=0&&(e=NaN),new u(e,t,n,r)}function F(e){if(e instanceof u)return new u(e.h,e.s,e.l,e.opacity);if(e instanceof m||(e=E(e)),!e)return new u;if(e instanceof u)return e;e=e.rgb();var t=e.r/255,n=e.g/255,r=e.b/255,i=Math.min(t,n,r),f=Math.max(t,n,r),a=NaN,s=f-i,l=(f+i)/2;return s?(t===f?a=(n-r)/s+(n<r)*6:n===f?a=(r-t)/s+2:a=(t-n)/s+4,s/=l<.5?f+i:2-f-i,a*=60):s=l>0&&l<1?0:a,new u(a,s,l,e.opacity)}function oe(e,t,n,r){return arguments.length===1?F(e):new u(e,t,n,r??1)}function u(e,t,n,r){this.h=+e,this.s=+t,this.l=+n,this.opacity=+r}q(u,oe,D(m,{brighter(e){return e=e==null?$:Math.pow($,e),new u(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?b:Math.pow(b,e),new u(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=this.h%360+(this.h<0)*360,t=isNaN(e)||isNaN(this.s)?0:this.s,n=this.l,r=n+(n<.5?n:1-n)*t,i=2*n-r;return new o(v(e>=240?e-240:e+120,i,r),v(e,i,r),v(e<120?e+240:e-120,i,r),this.opacity)},clamp(){return new u(L(this.h),y(this.s),y(this.l),k(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){const e=k(this.opacity);return`${e===1?"hsl(":"hsla("}${L(this.h)}, ${y(this.s)*100}%, ${y(this.l)*100}%${e===1?")":`, ${e})`}`}}));function L(e){return e=(e||0)%360,e<0?e+360:e}function y(e){return Math.max(0,Math.min(1,e||0))}function v(e,t,n){return(e<60?t+(n-t)*e/60:e<180?n:e<240?t+(n-t)*(240-e)/60:t)*255}const J=e=>()=>e;function le(e,t){return function(n){return e+n*t}}function ue(e,t,n){return e=Math.pow(e,n),t=Math.pow(t,n)-e,n=1/n,function(r){return Math.pow(e+r*t,n)}}function xe(e){return(e=+e)==1?K:function(t,n){return n-t?ue(t,n,e):J(isNaN(t)?n:t)}}function K(e,t){var n=t-e;return n?le(e,n):J(isNaN(e)?t:e)}const me=(function e(t){var n=xe(t);function r(i,f){var a=n((i=R(i)).r,(f=R(f)).r),s=n(i.g,f.g),l=n(i.b,f.b),N=K(i.opacity,f.opacity);return function(c){return i.r=a(c),i.g=s(c),i.b=l(c),i.opacity=N(c),i+""}}return r.gamma=e,r})(1);function ce(e,t){return e=+e,t=+t,function(n){return e*(1-n)+t*n}}var H=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,M=new RegExp(H.source,"g");function he(e){return function(){return e}}function de(e){return function(t){return e(t)+""}}function we(e,t){var n=H.lastIndex=M.lastIndex=0,r,i,f,a=-1,s=[],l=[];for(e=e+"",t=t+"";(r=H.exec(e))&&(i=M.exec(t));)(f=i.index)>n&&(f=t.slice(n,f),s[a]?s[a]+=f:s[++a]=f),(r=r[0])===(i=i[0])?s[a]?s[a]+=i:s[++a]=i:(s[++a]=null,l.push({i:a,x:ce(r,i)})),n=M.lastIndex;return n<t.length&&(f=t.slice(n),s[a]?s[a]+=f:s[++a]=f),s.length<2?l[0]?de(l[0].x):he(t):(t=l.length,function(N){for(var c=0,I;c<t;++c)s[(I=l[c]).i]=I.x(N);return s.join("")})}export{me as a,we as b,E as c,ge as d,V as e,J as f,pe as g,j as h,ce as i,be as m,W as o};
|