UNPKG

tailwind-semantic-setup

Version:

🧬 Smart multi-theme tool for better semantic Design Systems

3 lines (2 loc) • 4.17 kB
!function(e,r){"object"==typeof exports&&"undefined"!=typeof module?r(exports,require("tailwindcss/plugin"),require("color")):"function"==typeof define&&define.amd?define(["exports","tailwindcss/plugin","color"],r):r((e||self).tailwindSemanticSetup={},e.plugin,e.color)}(this,function(e,r,t){function n(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var o=/*#__PURE__*/n(r),a=/*#__PURE__*/n(t);function i(){return i=Object.assign?Object.assign.bind():function(e){for(var r=1;r<arguments.length;r++){var t=arguments[r];for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])}return e},i.apply(this,arguments)}var c={primary:"#e0a82e","primary-dark":"#ba881c","primary-content":"#18182f",secondary:"#f9d72f","secondary-dark":"#e4bf07","secondary-content":"#18182f",accent:"#18182f","accent-dark":"#131325","accent-content":"#babaee",neutral:"#181830","neutral-dark":"#131325","neutral-content":"#babaee",root:"#ffffff","root-dark":"#e6e6e6","root-darkest":"#cfcfcf","root-content":"#333333",info:"#3abff8","info-content":"#002b3d",success:"#36d399","success-content":"#003320",warning:"#fbbd23","warning-content":"#382800",error:"#f87272","error-content":"#470000"},u=function(e){return e[0]+" "+e[1]+"% "+e[2]+"%"};function s(e){var r=a.default(e).hsl().round().array();return u(r)}function l(e,r){void 0===r&&(r=.3);var t=a.default(e).darken(r).hsl().round().array();return u(t)}function f(e){void 0===e&&(e={});var r=i({},{typography:!0,forms:!0,"line-clamp":!1,"aspect-ratio":!0},e),t=[o.default(function(e){var r=e.addBase,t=e.matchUtilities,n=e.addVariant,o=e.theme,f=(0,e.config)("semanticSetup.themes");r(function(e){return e.reduce(function(e,r){var t=r.name,n=r.colors,o=r.preferredColorScheme;!function(e){if(e&&!Array.isArray(e))throw new Error("Expected array, got "+e)}(o),function(e){if(!Object.values(e).every(function(e){return"string"==typeof e}))throw new Error("color values must be strings, got "+e)}(n);var f=function(e){var r=i({},c,e),t={};return Object.entries(r).forEach(function(r){var n=r[0],o=r[1],i="--"+n,f=e[n];if(f){var d=s(f);t[i]=d}else if(["root-dark","root-darkest"].includes(n)){var p="root",h=e[p];t[i]=l(null!=h?h:c[p],"root-darkest"===n?.16:.08)}else{var v=Boolean(c[n]),m=n.includes("-dark"),y=n.includes("-content");if(v&&(m||y)){var g=n.replace("-dark","").replace("-content",""),b=e[g],w=null!=b?b:c[g];t[i]=m?l(w):function(e,r){void 0===r&&(r=.8);var t=a.default(e),n=t.isDark()?a.default("white"):a.default("black"),o=t.mix(n,r).saturate(15).hsl().round().array();return u(o)}(w)}else{var k=s(o);t[i]=k}}}),t}(n);return e['[data-theme="'+t+'"]']=i({"color-scheme":null==o?void 0:o.join(" ")},f),e},{})}(f)),r({":root [data-theme]":{backgroundColor:"hsl(var(--root) / var(--tw-bg-opacity, 1))",color:"hsl(var(--root-content) / var(--tw-text-opacity, 1))"}}),t({wh:function(e){return{width:e,height:e}}},{values:o("spacing")}),t({circle:function(e){return{width:e,height:e,borderRadius:"100%"}}},{values:o("spacing")}),f.forEach(function(e){var r=e.name;n("theme-"+r,'[data-theme="'+r+'"] &')}),n("hocus",["&:hover","&:focus"]),n("optional","&:optional"),n("group-optional",":merge(.group):optional &"),n("peer-optional",":merge(.peer):optional ~ &")})];return r.typography&&t.push(require("@tailwindcss/typography")),r.forms&&t.push(require("@tailwindcss/forms")),r["line-clamp"]&&t.push(require("@tailwindcss/line-clamp")),r["aspect-ratio"]&&t.push(require("@tailwindcss/aspect-ratio")),t}e.withSemanticSetup=function(e){void 0===e&&(e={});var r,t,n=e.plugins,o=e.theme,a=void 0===o?{}:o,u=e.semanticSetup,s=void 0===u?{}:u;return i({},e,{plugins:[].concat(void 0===n?[]:n,f(s.plugins)),theme:i({},a,{colors:(r=s.themes,t={transparent:"transparent",current:"currentColor"},Array.from(new Set([].concat(Object.keys(c),r.map(function(e){return Object.keys(e.colors)}).flat(2)))).forEach(function(e){var r,n;t[e]=(r="--"+e,void 0===n&&(n=""),function(e){var t=e.opacityValue,o="var("+r+(n?", var("+n+")":"")+")";return void 0===t?"hsl("+o+")":"hsl("+o+" / "+t+")"})}),t),extend:null!=a&&a.extend?i({},a.extend,{colors:void 0}):void 0})})}}); //# sourceMappingURL=tailwind-semantic-setup.umd.js.map