@symbo.ls/scratch 3.14.674 → 3.14.677
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var w=Object.defineProperty;var T=Object.getOwnPropertyDescriptor;var D=Object.getOwnPropertyNames;var E=Object.prototype.hasOwnProperty;var L=(r,s)=>{for(var
|
|
1
|
+
"use strict";var w=Object.defineProperty;var T=Object.getOwnPropertyDescriptor;var D=Object.getOwnPropertyNames;var E=Object.prototype.hasOwnProperty;var L=(r,s)=>{for(var l in s)w(r,l,{get:s[l],enumerable:!0})},q=(r,s,l,e)=>{if(s&&typeof s=="object"||typeof s=="function")for(let p of D(s))!E.call(r,p)&&p!==l&&w(r,p,{get:()=>s[p],enumerable:!(e=T(s,p))||e.enumerable});return r};var O=r=>q(w({},"__esModule",{value:!0}),r);var z={};L(z,{getColor:()=>x,getMediaColor:()=>W,setAdaptiveSchemeVar:()=>P,setColor:()=>S,setGradient:()=>j});module.exports=O(z);var a=require("@symbo.ls/utils"),M=require("../factory.js"),g=require("../utils/index.js");const x=(r,s,l)=>{const e=l||(0,M.getActiveConfig)();if(!(0,a.isString)(r)){e.verbose&&console.warn(r,"- type for color is not valid");return}if((0,g.isCSSVar)(r))return`var(${r})`;s&&r[s]&&(r=r[s]);let p,c,t;if((0,a.isArray)(r))[p,c,t]=r;else{const o=(0,g.parseColorToken)(r);if(!o){const{color:V,gradient:C}=e;let h=C[r]||V[r];return h?(s&&h[s]&&(h=h[s]),e.useVariable?`var(${h.var})`:h.value):r}if(o.passthrough)return o.passthrough;if(o.cssVar)return`var(${o.cssVar})`;p=o.name,c=o.alpha,t=o.tone}const{color:b,gradient:$}=e;let i=b[p]||$[p];if(!i)return e.verbose&&console.warn("Can't find color ",p),r;s&&(i[s]?i=i[s]:e.verbose&&console.warn(r," - does not have ",s));let f=i.rgb;if(!f){const o=e.useVariable?`var(${i.var})`:i.value;if(c&&o){const V=Math.round(parseFloat(c)*100);return`color-mix(in srgb, ${o} ${V}%, transparent)`}return o}return t&&!i[t]&&(f=(0,g.getRgbTone)(f,t),i[t]={rgb:f,var:`${i.var}-${t}`}),i[t]&&(f=i[t].rgb),c?`rgba(${f}, ${c})`:t?`rgba(${f}, 1)`:e.useVariable?`var(${i.var})`:`rgb(${f})`},W=(r,s,l)=>{const e=l||(0,M.getActiveConfig)();if(s||(s=e.globalTheme==="auto"?null:e.globalTheme),!(0,a.isString)(r)){e.verbose&&console.warn(r,"- type for color is not valid");return}if((0,g.isCSSVar)(r))return`var(${r})`;let p,c,t;if((0,a.isArray)(r))p=r[0];else{const o=(0,g.parseColorToken)(r);if(o){if(o.passthrough)return o.passthrough;if(o.cssVar)return`var(${o.cssVar})`;p=o.name,c=o.alpha,t=o.tone}else p=r}const{color:b,gradient:$}=e,i=b[p]||$[p],f=(0,a.isObject)(i);if(f&&i.value)return x(r,`@${s}`,l);if(f){if(e.useVariable&&i.var)return c||t?x(r,null,l):`var(${i.var})`;if(s)return x(r,`@${s}`,l);{const o={};for(const V in i){if(V.charCodeAt(0)!==64)continue;const C=e.media[V.slice(1)];if(!C)continue;const h="@media "+(C==="print"?`${C}`:`screen and ${C}`);o[h]=x(r,V,l)}return o}}else return e.verbose&&console.warn("Can't find color",r),r},P=(r,s,l,e)=>{const c=`--${e.varPrefix?e.varPrefix+"-":""}${s}-${l}`;let t;const b={};for(const $ in r){if($.charCodeAt(0)!==64)continue;const i=$.slice(1),f=r[$],o=f&&(f.value||f);!o||typeof o!="string"||(b[i]=o,(i==="light"||t===void 0)&&(t=o))}if(t!==void 0){e.cssVars[c]=t,e.cssMediaVars||(e.cssMediaVars={});for(const $ in b){const i=`[data-theme="${$}"]`;if(e.cssMediaVars[i]||(e.cssMediaVars[i]={}),e.cssMediaVars[i][c]=b[$],$==="light"||$==="dark"){const f=`@media (prefers-color-scheme: ${$})`;e.cssMediaVars[f]||(e.cssMediaVars[f]={}),e.cssMediaVars[f][c]=b[$]}}return r.var=c,c}},S=(r,s,l)=>{const e=(0,M.getActiveConfig)();if((0,a.isString)(r)&&(0,g.isCSSVar)(r)){const d=r.slice(2);if(r=x(d),!(r.includes("rgb")||r.includes("var")||r.includes("#"))){const n=d.split(" ");let u=e.color[n[0]];if(u&&!u.value&&!u.rgb&&((0,a.isString)(u)||(0,a.isArray)(u)||(0,a.isObject)(u))&&(e.color[n[0]]=S(u,n[0]),u=e.color[n[0]]),u&&u.value){let m=u.rgb;const A=n[1]!==void 0?n[1]:"1",R=n[2];R&&(m=(0,g.getRgbTone)(m,R)),r=`rgba(${m}, ${A})`}else{const m=n[2],A=n[1]!==void 0?n[1]:"1";if(m)try{const R=(0,g.colorStringToRgbaArray)(n[0]);R&&R.length>=3?r=`rgba(${(0,g.getRgbTone)(R.slice(0,3).join(", "),m)}, ${A})`:r=n[0]}catch{r=n[0]}else r=n[0]}}}if((0,a.isArray)(r)&&(r={"@light":r[0],"@dark":r[1]!==void 0?r[1]:r[0]}),(0,a.isObject)(r)){const d={};for(const n in r)d[n]=S(r[n],s,n.slice(0,1)==="@"?n.slice(1):n);return e.useVariable&&P(d,"color",s,e),d}const c=`--${e.varPrefix?e.varPrefix+"-":""}color-${s}`+(l?`-${l}`:"");let t=r.value||r;if((0,a.isString)(t)&&t.includes(".")&&!t.includes("(")){const[d,n]=t.split("."),u=e.color[d];u&&u.rgb&&(t=`rgba(${u.rgb}, ${parseFloat("0."+n)||1})`)}if((0,a.isString)(t)&&!t.includes("(")&&!t.startsWith("#")){const d=(0,g.parseColorToken)(t);if(d&&d.name&&!d.passthrough&&!d.cssVar){const n=e.color[d.name];n&&!n.value&&!n.rgb&&((0,a.isString)(n)||(0,a.isArray)(n)||(0,a.isObject)(n))&&(e.color[d.name]=S(n,d.name));const u=e.color[d.name];if(u&&u.rgb){let m=u.rgb;d.tone&&(m=(0,g.getRgbTone)(m,d.tone));const A=d.alpha?parseFloat(d.alpha):1;t=`rgba(${m}, ${A})`}}}const b=(0,g.colorStringToRgbaArray)(t),[$,i,f,o=1]=b,V=parseFloat(o.toFixed(2)),C=`${$}, ${i}, ${f}`,h=`rgba(${C}, ${V})`;return e.useVariable&&(e.cssVars[c]=h),{var:c,rgb:C,alpha:V,value:h}},j=(r,s,l)=>{const e=(0,M.getActiveConfig)();if((0,a.isString)(r)&&(0,g.isCSSVar)(r)&&(r=x(r.slice(2))),(0,a.isArray)(r)&&(r={"@light":r[0],"@dark":r[1]!==void 0?r[1]:r[0]}),(0,a.isObject)(r)){const t={};for(const b in r)t[b]=j(r[b],s,b.slice(0,1)==="@"?b.slice(1):b);return e.useVariable&&P(t,"gradient",s,e),t}const c=`--${e.varPrefix?e.varPrefix+"-":""}gradient-${s}`+(l?`-${l}`:"");return e.useVariable&&(e.cssVars[c]=r.value||r),{var:c,value:r.value||r}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{isObject as M,isArray as R,isString as m}from"@symbo.ls/utils";import{getActiveConfig as S}from"../factory.js";import{colorStringToRgbaArray as D,getRgbTone as w,isCSSVar as P,parseColorToken as j}from"../utils/index.js";const x=(r,i,u)=>{const e=u||S();if(!m(r)){e.verbose&&console.warn(r,"- type for color is not valid");return}if(P(r))return`var(${r})`;i&&r[i]&&(r=r[i]);let g,a,s;if(R(r))[g,a,s]=r;else{const t=j(r);if(!t){const{color:$,gradient:V}=e;let b=V[r]||$[r];return b?(i&&b[i]&&(b=b[i]),e.useVariable?`var(${b.var})`:b.value):r}if(t.passthrough)return t.passthrough;if(t.cssVar)return`var(${t.cssVar})`;g=t.name,a=t.alpha,s=t.tone}const{color:
|
|
1
|
+
import{isObject as M,isArray as R,isString as m}from"@symbo.ls/utils";import{getActiveConfig as S}from"../factory.js";import{colorStringToRgbaArray as D,getRgbTone as w,isCSSVar as P,parseColorToken as j}from"../utils/index.js";const x=(r,i,u)=>{const e=u||S();if(!m(r)){e.verbose&&console.warn(r,"- type for color is not valid");return}if(P(r))return`var(${r})`;i&&r[i]&&(r=r[i]);let g,a,s;if(R(r))[g,a,s]=r;else{const t=j(r);if(!t){const{color:$,gradient:V}=e;let b=V[r]||$[r];return b?(i&&b[i]&&(b=b[i]),e.useVariable?`var(${b.var})`:b.value):r}if(t.passthrough)return t.passthrough;if(t.cssVar)return`var(${t.cssVar})`;g=t.name,a=t.alpha,s=t.tone}const{color:l,gradient:p}=e;let n=l[g]||p[g];if(!n)return e.verbose&&console.warn("Can't find color ",g),r;i&&(n[i]?n=n[i]:e.verbose&&console.warn(r," - does not have ",i));let c=n.rgb;if(!c){const t=e.useVariable?`var(${n.var})`:n.value;if(a&&t){const $=Math.round(parseFloat(a)*100);return`color-mix(in srgb, ${t} ${$}%, transparent)`}return t}return s&&!n[s]&&(c=w(c,s),n[s]={rgb:c,var:`${n.var}-${s}`}),n[s]&&(c=n[s].rgb),a?`rgba(${c}, ${a})`:s?`rgba(${c}, 1)`:e.useVariable?`var(${n.var})`:`rgb(${c})`},B=(r,i,u)=>{const e=u||S();if(i||(i=e.globalTheme==="auto"?null:e.globalTheme),!m(r)){e.verbose&&console.warn(r,"- type for color is not valid");return}if(P(r))return`var(${r})`;let g,a,s;if(R(r))g=r[0];else{const t=j(r);if(t){if(t.passthrough)return t.passthrough;if(t.cssVar)return`var(${t.cssVar})`;g=t.name,a=t.alpha,s=t.tone}else g=r}const{color:l,gradient:p}=e,n=l[g]||p[g],c=M(n);if(c&&n.value)return x(r,`@${i}`,u);if(c){if(e.useVariable&&n.var)return a||s?x(r,null,u):`var(${n.var})`;if(i)return x(r,`@${i}`,u);{const t={};for(const $ in n){if($.charCodeAt(0)!==64)continue;const V=e.media[$.slice(1)];if(!V)continue;const b="@media "+(V==="print"?`${V}`:`screen and ${V}`);t[b]=x(r,$,u)}return t}}else return e.verbose&&console.warn("Can't find color",r),r},E=(r,i,u,e)=>{const a=`--${e.varPrefix?e.varPrefix+"-":""}${i}-${u}`;let s;const l={};for(const p in r){if(p.charCodeAt(0)!==64)continue;const n=p.slice(1),c=r[p],t=c&&(c.value||c);!t||typeof t!="string"||(l[n]=t,(n==="light"||s===void 0)&&(s=t))}if(s!==void 0){e.cssVars[a]=s,e.cssMediaVars||(e.cssMediaVars={});for(const p in l){const n=`[data-theme="${p}"]`;if(e.cssMediaVars[n]||(e.cssMediaVars[n]={}),e.cssMediaVars[n][a]=l[p],p==="light"||p==="dark"){const c=`@media (prefers-color-scheme: ${p})`;e.cssMediaVars[c]||(e.cssMediaVars[c]={}),e.cssMediaVars[c][a]=l[p]}}return r.var=a,a}},T=(r,i,u)=>{const e=S();if(m(r)&&P(r)){const f=r.slice(2);if(r=x(f),!(r.includes("rgb")||r.includes("var")||r.includes("#"))){const o=f.split(" ");let d=e.color[o[0]];if(d&&!d.value&&!d.rgb&&(m(d)||R(d)||M(d))&&(e.color[o[0]]=T(d,o[0]),d=e.color[o[0]]),d&&d.value){let h=d.rgb;const A=o[1]!==void 0?o[1]:"1",C=o[2];C&&(h=w(h,C)),r=`rgba(${h}, ${A})`}else{const h=o[2],A=o[1]!==void 0?o[1]:"1";if(h)try{const C=D(o[0]);C&&C.length>=3?r=`rgba(${w(C.slice(0,3).join(", "),h)}, ${A})`:r=o[0]}catch{r=o[0]}else r=o[0]}}}if(R(r)&&(r={"@light":r[0],"@dark":r[1]!==void 0?r[1]:r[0]}),M(r)){const f={};for(const o in r)f[o]=T(r[o],i,o.slice(0,1)==="@"?o.slice(1):o);return e.useVariable&&E(f,"color",i,e),f}const a=`--${e.varPrefix?e.varPrefix+"-":""}color-${i}`+(u?`-${u}`:"");let s=r.value||r;if(m(s)&&s.includes(".")&&!s.includes("(")){const[f,o]=s.split("."),d=e.color[f];d&&d.rgb&&(s=`rgba(${d.rgb}, ${parseFloat("0."+o)||1})`)}if(m(s)&&!s.includes("(")&&!s.startsWith("#")){const f=j(s);if(f&&f.name&&!f.passthrough&&!f.cssVar){const o=e.color[f.name];o&&!o.value&&!o.rgb&&(m(o)||R(o)||M(o))&&(e.color[f.name]=T(o,f.name));const d=e.color[f.name];if(d&&d.rgb){let h=d.rgb;f.tone&&(h=w(h,f.tone));const A=f.alpha?parseFloat(f.alpha):1;s=`rgba(${h}, ${A})`}}}const l=D(s),[p,n,c,t=1]=l,$=parseFloat(t.toFixed(2)),V=`${p}, ${n}, ${c}`,b=`rgba(${V}, ${$})`;return e.useVariable&&(e.cssVars[a]=b),{var:a,rgb:V,alpha:$,value:b}},L=(r,i,u)=>{const e=S();if(m(r)&&P(r)&&(r=x(r.slice(2))),R(r)&&(r={"@light":r[0],"@dark":r[1]!==void 0?r[1]:r[0]}),M(r)){const s={};for(const l in r)s[l]=L(r[l],i,l.slice(0,1)==="@"?l.slice(1):l);return e.useVariable&&E(s,"gradient",i,e),s}const a=`--${e.varPrefix?e.varPrefix+"-":""}gradient-${i}`+(u?`-${u}`:"");return e.useVariable&&(e.cssVars[a]=r.value||r),{var:a,value:r.value||r}};export{x as getColor,B as getMediaColor,E as setAdaptiveSchemeVar,T as setColor,L as setGradient};
|