Files
2026-04-28 15:13:50 +02:00

1 line
2.0 KiB
JavaScript

"use strict";(globalThis.webpackChunkcomplianz_gdpr=globalThis.webpackChunkcomplianz_gdpr||[]).push([[2697],{52697:(t,n,r)=>{function e(t){if(!t||"string"!=typeof t)return null;let n=t.trim().toLowerCase();if(n.startsWith("#")){let t=n.slice(1);return 3===t.length?{r:parseInt(t[0]+t[0],16),g:parseInt(t[1]+t[1],16),b:parseInt(t[2]+t[2],16)}:6===t.length?{r:parseInt(t.slice(0,2),16),g:parseInt(t.slice(2,4),16),b:parseInt(t.slice(4,6),16)}:null}const r=n.match(/^rgba?\(([^)]+)\)$/);if(r){const t=r[1].split(",").map(t=>t.trim());if(t.length>=3){const n=parseFloat(t[0]),r=parseFloat(t[1]),e=parseFloat(t[2]);if(Number.isFinite(n)&&Number.isFinite(r)&&Number.isFinite(e))return{r:n,g:r,b:e}}return null}const e=n.match(/^hsla?\(([^)]+)\)$/);if(e){const t=e[1].split(",").map(t=>t.trim());if(t.length>=3){const n=parseFloat(t[0]),r=parseFloat(t[1])/100,e=parseFloat(t[2])/100;if(Number.isFinite(n)&&Number.isFinite(r)&&Number.isFinite(e)){const{r:t,g:i,b:s}=function(t,n,r){const e=(1-Math.abs(2*r-1))*n,i=t%360/60,s=e*(1-Math.abs(i%2-1));let a=0,l=0,o=0;0<=i&&i<1?(a=e,l=s,o=0):1<=i&&i<2?(a=s,l=e,o=0):2<=i&&i<3?(a=0,l=e,o=s):3<=i&&i<4?(a=0,l=s,o=e):4<=i&&i<5?(a=s,l=0,o=e):5<=i&&i<6&&(a=e,l=0,o=s);const u=r-e/2;return{r:255*(a+u),g:255*(l+u),b:255*(o+u)}}(n,r,e);return{r:Math.round(t),g:Math.round(i),b:Math.round(s)}}}return null}return null}function i(t,n,r){const e=[t,n,r].map(t=>{const n=t/255;return n<=.03928?n/12.92:Math.pow((n+.055)/1.055,2.4)});return.2126*e[0]+.7152*e[1]+.0722*e[2]}function s(t,n){const r="string"==typeof t?e(t):t,s="string"==typeof n?e(n):n;if(!r||!s)return null;const a=i(r.r,r.g,r.b),l=i(s.r,s.g,s.b);return(Math.max(a,l)+.05)/(Math.min(a,l)+.05)}function a(t,n=12){return null==t?"Fail":n>=18?t>=4.5?"AAA":t>=3?"AA":"Fail":t>=7?"AAA":t>=4.5?"AA":"Fail"}function l(t,n,r=12){const e=s(t,n),i=a(e,r);return{ratio:e,level:i,pass:"AA"===i||"AAA"===i}}r.r(n),r.d(n,{checkContrast:()=>l,contrastRatio:()=>s,getComplianceLevel:()=>a,luminance:()=>i,parseColor:()=>e})}}]);