UNPKG

@shufo/tailwindcss-class-sorter

Version:

A tailwindcss class sorter that respects tailwind config file

3 lines (2 loc) 2.5 kB
"use strict";var j=Object.create;var m=Object.defineProperty;var v=Object.getOwnPropertyDescriptor;var L=Object.getOwnPropertyNames;var M=Object.getPrototypeOf,R=Object.prototype.hasOwnProperty;var T=(t,n)=>{for(var r in n)m(t,r,{get:n[r],enumerable:!0})},g=(t,n,r,e)=>{if(n&&typeof n=="object"||typeof n=="function")for(let i of L(n))!R.call(t,i)&&i!==r&&m(t,i,{get:()=>n[i],enumerable:!(e=v(n,i))||e.enumerable});return t};var s=(t,n,r)=>(r=t!=null?j(M(t)):{},g(n||!t||!t.__esModule?m(r,"default",{value:t,enumerable:!0}):r,t)),W=t=>g(m({},"__esModule",{value:!0}),t);var H={};T(H,{sortClasses:()=>F});module.exports=W(H);var p=require("url").pathToFileURL(__filename);var O=s(require("tailwindcss/lib/lib/setupContextUtils.js"),1),_=s(require("tailwindcss/lib/lib/generateRules.js"),1),N=s(require("tailwindcss/resolveConfig.js"),1),x=s(require("tailwindcss/loadConfig.js"),1),U=s(require("escalade/sync"),1),k=s(require("object-hash"),1),u=s(require("path"),1),P=s(require("fs"),1),b=require("url"),q=(0,b.fileURLToPath)(p),A=u.default.dirname(q),f={content:[],theme:{}},w=new Map,C="tailwind.config.js";function E(t){let n=t>0n,r=t<0n;return n-r}function h(t,n){let r=t.tailwindConfig.prefix;return typeof r=="function"?r(n):r+n}function D(t,n){let r=new Set([h(n,"group"),h(n,"peer")]),e=[];for(let i of t){let a=(0,_.default)(new Set([i]),n).sort(([c],[d])=>E(d-c))[0]?.[0]??null;a===null&&r.has(i)&&(a=n.layerOrder.components),e.push([i,a])}return e}function F(t,n={}){let r=(0,U.default)(A,(o,l)=>{if(l.includes(C))return C});if(f.content=["no-op"],r&&(f=y(r)),n.tailwindConfig&&n.tailwindConfigPath)throw new Error("You can not specify tailwinfConfig or tailwinfConfigPath. Please specify either one.");n.tailwindConfigPath&&(f=y(n.tailwindConfigPath)),n.tailwindConfig&&(f=n.tailwindConfig);let e=(0,k.default)(f,{ignoreUnknown:!0}),i,a=w.get(e);a&&a.hash===e?i=a.context:(i=O.default.createContext((0,N.default)(f)),w.set(e,{context:i,hash:e}));let c=t.split(/\s+/).filter(o=>o!==""&&o!=="|"),d=[],S=(i.getClassOrder?i.getClassOrder(c):D(c,i)).sort(([,o],[,l])=>o===l?0:o===null?-1:l===null?1:E(o-l)).map(([o])=>o);return[...d,...S].join(" ")}function y(t){if(!P.default.existsSync(t))throw new Error("tailwind config could not be found at: "+u.default);try{return(0,x.default)(t)}catch(n){throw n.code==="MODULE_NOT_FOUND"&&n.moduleName===u.default.resolve(t)?new Error("tailwind config could not be found at: "+t):n}}0&&(module.exports={sortClasses}); //# sourceMappingURL=main.cjs.map