UNPKG

@fewings/core

Version:
2 lines (1 loc) 1.01 kB
"use strict";var u=Object.defineProperty;var x=Object.getOwnPropertyDescriptor;var M=Object.getOwnPropertyNames;var $=Object.prototype.hasOwnProperty;var b=(t,n)=>{for(var a in n)u(t,a,{get:n[a],enumerable:!0})},I=(t,n,a,i)=>{if(n&&typeof n=="object"||typeof n=="function")for(let e of M(n))!$.call(t,e)&&e!==a&&u(t,e,{get:()=>n[e],enumerable:!(i=x(n,e))||i.enumerable});return t};var w=t=>I(u({},"__esModule",{value:!0}),t);var E={};b(E,{shade:()=>j});module.exports=w(E);function j(t,n){if(t.startsWith("#")&&(t=t.slice(1)),t.length===3&&(t=t.split("").map(s=>s+s).join("")),t.length!==6&&t.length!==8||!/^[0-9a-fA-F]{6,8}$/.test(t))throw new Error("Invalid HEX color format");n=Math.max(-100,Math.min(100,n));let a=parseInt(t.slice(0,2),16),i=parseInt(t.slice(2,4),16),e=parseInt(t.slice(4,6),16),p=t.length===8?t.slice(6,8):null,r=s=>{let g=Math.round(s+n/100*(n>0?255-s:s));return Math.max(0,Math.min(255,g))},f=r(a),h=r(i),d=r(e),m=s=>s.toString(16).padStart(2,"0");return`#${m(f)}${m(h)}${m(d)}${p??""}`}