{"_id":"@aacn.eu/eslint-plugin-tailwind-classname-order","_rev":"8-f56bd89f754e94ca94f43ec454cb5cdb","name":"@aacn.eu/eslint-plugin-tailwind-classname-order","dist-tags":{"latest":"1.0.0"},"versions":{"0.3.0":{"name":"@aacn.eu/eslint-plugin-tailwind-classname-order","version":"0.3.0","keywords":["eslint","eslintplugin","eslint-plugin","tailwind","className","order","sort"],"author":{"url":"https://aacn.eu","name":"AACN Software- und Systementwicklung GmbH","email":"info@aacn.eu"},"license":"MIT","_id":"@aacn.eu/eslint-plugin-tailwind-classname-order@0.3.0","maintainers":[{"name":"marlowski","email":"marlon@aacn.eu"}],"contributors":[{"url":"https://aacn.eu","name":"Marlon Kerth","email":"marlon@aacn.eu"}],"homepage":"https://github.com/aacn/eslint-plugin-tailwind-classname-order#readme","bugs":{"url":"https://github.com/aacn/eslint-plugin-tailwind-classname-order/issues"},"dist":{"shasum":"82bc6daa4f78c3eaddb9f2ffb19ea545682cf8bf","tarball":"https://registry.npmjs.org/@aacn.eu/eslint-plugin-tailwind-classname-order/-/eslint-plugin-tailwind-classname-order-0.3.0.tgz","fileCount":12,"integrity":"sha512-V87c39yFI7sAgIk4UByiLAL+gASlBQe8lyCE5GzKskw49RYk6e55ST7OBebydhjHXccDwQw6awQk/FIrz5OjMA==","signatures":[{"sig":"MEYCIQDUCl/OdoALo801EA+XCSFilAprHdXwsn/ZuoHgVdMNtgIhAKntxLxDCqWxrh7A5WmZrYOMzI1jy9d7FpRLuz1Juk7E","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":45814,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjySOqACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqwwA//Yp1DVWyircpH5kIDH/697w7fuv27QoMhFHikRszbHHqqUFJO\r\nIQLYdKmeU+wpg2pdCOUQVZaswGY1adsJFP0mPJ2QkZkT0K4aSn+d/vRyDr8u\r\nOZ/rZGM5G3ydx3Oe79hriufNUY3US8bsgN42BRdWbtn+ibwSWtIhY9A328xw\r\nji0+i2nFtIPqu7kNg0P74saZpFV2leciW84nrs5/bT7S3nLeiqzPkm+GI4K6\r\nixghXl17CyH76iA62CJIqmo6yuMsg3PEXFBrbjFK2tIhBsAk3BKVQ6JendG8\r\nXtrYPUhsUK4b89ViJ6Ag/bZq23eIVOiodMcsx5aWwyj6kiqhnutunWVZCAaI\r\ni/eurA9aw15RJett4l0ib6F0tKzwvFin+sSpmNgmpkoWHIY8en5v2TAcPeGi\r\nyVcVDERg5JZZMvCU04O+yFl4iycKzvGAW0jOjH/Ljizv9zc/lPfv4wihcXNE\r\n3PAniEp3N1gCaTwaPGacWO/05TBicmBx8fug81YorxIxMHh8hmXj6s9vdNAN\r\nxUiuKWleGQwINpA6v3lfSKq0kL2L/nST7TeuAkG3D+8x9xTr2bIF4i+lTJLw\r\nVqJq7zTGAT1NDwQLvYq/ToteO4UO3woI5G76QJwyzu3iheuV0g8sODmM90Hq\r\nbIoC781kpIYcScF56WmkHHQuIXG/DKBjtTU=\r\n=ZR1Q\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"globals":{"ts-jest":{"diagnostics":false}},"testRegex":"(src/.*\\.test)\\.ts$","transform":{"^.+\\.ts$":"ts-jest"},"moduleFileExtensions":["js","ts","json"],"testPathIgnorePatterns":["/node_modules/","\\.d\\.ts$","lib/.*"]},"main":"lib/index.js","type":"commonjs","types":"./lib/index.d.ts","engines":{"node":"^14.17.0 || ^16.0.0 || >= 18.0.0"},"gitHead":"1c49481082e8b9b30f2c4f4d6f89eecf36fe720f","scripts":{"lint":"eslint .","test":"jest","build":"tsc","prepare":"husky install","clean-build":"rimraf lib && tsc"},"_npmUser":{"name":"marlowski","email":"marlon@aacn.eu"},"repository":{"url":"git+https://github.com/aacn/eslint-plugin-tailwind-classname-order.git","type":"git"},"_npmVersion":"8.18.0","description":"Automatically orders tailwind classes included in the className tags from each element by the provided default order list.","directories":{},"_nodeVersion":"16.17.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.0.1","husky":"^8.0.1","eslint":"^8.19.0","rimraf":"^3.0.2","ts-jest":"^28.0.8","prettier":"2.7.1","typescript":"4.1.3","@types/node":"^18.7.14","@types/eslint":"^8.4.6","@types/estree":"^1.0.0","eslint-plugin-node":"^11.1.0","eslint-plugin-import":"^2.27.5","eslint-plugin-rulesdir":"^0.2.1","@typescript-eslint/parser":"^5.36.1","eslint-plugin-eslint-plugin":"^5.0.0","@typescript-eslint/eslint-plugin":"^5.48.2","eslint-import-resolver-typescript":"^3.5.3"},"peerDependencies":{"eslint":"^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0"},"_npmOperationalInternal":{"tmp":"tmp/eslint-plugin-tailwind-classname-order_0.3.0_1674126249958_0.421475662035383","host":"s3://npm-registry-packages"}},"0.3.1":{"name":"@aacn.eu/eslint-plugin-tailwind-classname-order","version":"0.3.1","keywords":["eslint","eslintplugin","eslint-plugin","tailwind","className","order","sort"],"author":{"url":"https://aacn.eu","name":"AACN Software- und Systementwicklung GmbH","email":"info@aacn.eu"},"license":"MIT","_id":"@aacn.eu/eslint-plugin-tailwind-classname-order@0.3.1","maintainers":[{"name":"marlowski","email":"marlon@aacn.eu"}],"contributors":[{"url":"https://aacn.eu","name":"Marlon Kerth","email":"marlon@aacn.eu"}],"homepage":"https://github.com/aacn/eslint-plugin-tailwind-classname-order#readme","bugs":{"url":"https://github.com/aacn/eslint-plugin-tailwind-classname-order/issues"},"dist":{"shasum":"0d6b67732d3a7755d285c21984dd7d510bc0079d","tarball":"https://registry.npmjs.org/@aacn.eu/eslint-plugin-tailwind-classname-order/-/eslint-plugin-tailwind-classname-order-0.3.1.tgz","fileCount":12,"integrity":"sha512-e4NovwT/UEmPoTQxzCFGT1JTfyhgLDNXlTsYuPfnsQRqJpBQgvUjJtf3aqOAN6dS+4qnzwY26ty5lBedKg5TkA==","signatures":[{"sig":"MEUCIQCqJpC1rzIutlqorWzcx5KS/iyOm7iNVVBibEbrNT2RvgIgTkzOtO9Bv6pf7fWh/v1Si0KsrOdARG9J3kuRa48HwPA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":45945,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjySWiACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmr2Mg/7BeHotgHbnWxInmrT8Jkr1iCQoirA+2v/MV7M1iQDc3Ndq5de\r\nre7jPKaYvEyVQuT0p9rQYxltMS4hFOB/eUHnbdfShapK+LICm8qyclOR2jzl\r\nZWMSHJBV2LmnoTVfPfDVS+QCNCh5y5zEzRodaxgFMqducMWbchkHj/ObAc27\r\nVvrCttLvxinOfp6Tss7Kpa9HE6S9kdyeFjP6MY/OwQ6+M/lNAMBZQpMCwN9f\r\nW+0Di7jPEDVrdMY5S2ln4YgGzEH+O5FJjaTjw/Mli3Th5PjMahafNdugvo0E\r\np2jOnm5A7Sz7HLJ1TqdpemygrzpoUfshrrhSUnMvuppeHSyIycpIUbnMAd//\r\nPgMnuHAIS47vKHoBU9xQud8GTfwUIrkZLSqnzsN9Qfzf4KJ7H7Igz/OQZ/e/\r\nueJGTwi5kkNHawi2Dl4jO2eXLaswJG9OUbYdQvmU5VkfhfjPRTmijGA3rjBk\r\nB+fPEiKCTPIB3TCK2+c5v06+Jp1ee4HuEjOnHqGhFjbPh/twMe9Wky7KSo8j\r\noX8lxN9EmG+wNFOFF1KiCutLqLGvnYJN82T3J2oiJ+SbstR6d7Vd/96SCdpQ\r\n9ZKzeM4d+7m5Vx0O0UNODFhcCo4Lbdj7MQU6ikVe/XengRoLlCQM7qhF9kvy\r\n3n71CIiHjB0pmOJK8KORK7vl11mu6+1+JTs=\r\n=5J3/\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"globals":{"ts-jest":{"diagnostics":false}},"testRegex":"(src/.*\\.test)\\.ts$","transform":{"^.+\\.ts$":"ts-jest"},"moduleFileExtensions":["js","ts","json"],"testPathIgnorePatterns":["/node_modules/","\\.d\\.ts$","lib/.*"]},"main":"lib/index.js","type":"commonjs","types":"./lib/index.d.ts","engines":{"node":"^14.17.0 || ^16.0.0 || >= 18.0.0"},"gitHead":"49fcc7744410c1d6439413906699763ab7ea7bfe","scripts":{"lint":"eslint .","test":"jest","build":"tsc","prepare":"husky install","clean-build":"rimraf lib && tsc"},"_npmUser":{"name":"marlowski","email":"marlon@aacn.eu"},"repository":{"url":"git+https://github.com/aacn/eslint-plugin-tailwind-classname-order.git","type":"git"},"_npmVersion":"8.18.0","description":"Automatically orders tailwind classes included in the className tags from each element by the provided default order list.","directories":{},"_nodeVersion":"16.17.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.0.1","husky":"^8.0.1","eslint":"^8.19.0","rimraf":"^3.0.2","ts-jest":"^28.0.8","prettier":"2.7.1","typescript":"4.1.3","@types/node":"^18.7.14","@types/eslint":"^8.4.6","@types/estree":"^1.0.0","eslint-plugin-node":"^11.1.0","eslint-plugin-import":"^2.27.5","eslint-plugin-rulesdir":"^0.2.1","@typescript-eslint/parser":"^5.36.1","eslint-plugin-eslint-plugin":"^5.0.0","@typescript-eslint/eslint-plugin":"^5.48.2","eslint-import-resolver-typescript":"^3.5.3"},"peerDependencies":{"eslint":"^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0"},"_npmOperationalInternal":{"tmp":"tmp/eslint-plugin-tailwind-classname-order_0.3.1_1674126754660_0.7380083699446163","host":"s3://npm-registry-packages"}},"0.4.0":{"name":"@aacn.eu/eslint-plugin-tailwind-classname-order","version":"0.4.0","keywords":["eslint","eslintplugin","eslint-plugin","tailwind","className","order","sort"],"author":{"url":"https://aacn.eu","name":"AACN Software- und Systementwicklung GmbH","email":"info@aacn.eu"},"license":"MIT","_id":"@aacn.eu/eslint-plugin-tailwind-classname-order@0.4.0","maintainers":[{"name":"marlowski","email":"marlon@aacn.eu"}],"contributors":[{"url":"https://aacn.eu","name":"Marlon Kerth","email":"marlon@aacn.eu"}],"homepage":"https://github.com/aacn/eslint-plugin-tailwind-classname-order#readme","bugs":{"url":"https://github.com/aacn/eslint-plugin-tailwind-classname-order/issues"},"dist":{"shasum":"53b41d85fa21eb4f49e264cc09608781a0c56a1e","tarball":"https://registry.npmjs.org/@aacn.eu/eslint-plugin-tailwind-classname-order/-/eslint-plugin-tailwind-classname-order-0.4.0.tgz","fileCount":52,"integrity":"sha512-0qfEBy+coUvkOf9ANSF0wo8q49TydHnfDxkUUtfYAnF606QxcfGXTuMEjy+38ToxRPmlg3guIdpJw5MDYPYnwg==","signatures":[{"sig":"MEUCIQCfJnn4cGjajfJXKHI8M/xBc+rOEzYW1u477S0CuW2mawIgPcUl+gURl5ikKzUycsEQPAojEBPyYkGnQ58QKHf6xyA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":75666,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkEEStACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrYlw//eomNYB9yrMeETq/24u97APB67c34OTER1MJ9WdDty4rGKB1E\r\nuDSxg4ufkfw/HoB7rUpC8dKABYi4b27FGLW78CZgisG3TFKp4Yw62649jvZX\r\noWjQmlzfPAV+IfwjXwc6In/1iN7BBtY+Z/IcEH6mIKWtorje5URgR8NvyZRz\r\nw3qPCnpY9icq2O1IS92felP1/vKtDwMApBklagkR7ady30ZqeSYBG7ooEbr3\r\nmDA/Yok85Nj74+UuzmqelW07eQpEI9svaPHy2C26qKuFfWQd3eAC8fuDk3CN\r\nAK1G+kvKalO4UsNDx9LM/nVYzIRHibFo1LVIAfdpURRrkozFksaML3pf4k3e\r\ngCGDSHU5N+wrmJhKiPysHabkbg92YzbCsgxaRKICFDnuttERtevOjU3x7yOY\r\nuzcBvldxuvaWdf1a+IiekfwdFHnl2lrUYqFEZIzzvjDLFoIKGxEaM/3ymsWh\r\n1vH+h7sP/5nAo6y3XiJCS+3Vr/+kuM970JhUXoM5XHqrCqdq3SmgXw9uDm8f\r\nTtUefnWihgmdnoR0jTs3cYy91SWVIgdxk2uCf3up7qavapoflVYUdC5rSkJt\r\noMNV2c6nJsWr7gu26+sBkyfEIBWGBCwG+gC1SkT4g3xwisON9c8RGmmdEpFj\r\nzuxFF4yJ7OluBsLKHxhGcdt9VCnWRt2b0Q0=\r\n=7tXF\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"roots":["<rootDir>/src"],"globals":{"ts-jest":{"diagnostics":false}},"testRegex":"(src/.*\\.test)\\.ts$","transform":{"^.+\\.ts$":"ts-jest"},"moduleNameMapper":{"@/(.*)":"<rootDir>/src/$1"},"moduleFileExtensions":["js","ts","json"],"testPathIgnorePatterns":["/node_modules/","\\.d\\.ts$","lib/.*"]},"main":"lib/index.js","type":"commonjs","types":"./lib/index.d.ts","engines":{"node":"^14.17.0 || ^16.0.0 || >= 18.0.0"},"gitHead":"fa66589f26c5b37fb4084308cd72c7bcfc2190fe","scripts":{"lint":"eslint .","test":"jest","build":"tsc && tsc-alias","prepare":"husky install","test:watch":"jest --watch","build:clean":"rimraf lib && tsc && tsc-alias"},"_npmUser":{"name":"marlowski","email":"marlon@aacn.eu"},"repository":{"url":"git+https://github.com/aacn/eslint-plugin-tailwind-classname-order.git","type":"git"},"_npmVersion":"8.18.0","description":"Automatically orders tailwind classes included in the className tags from each element by the provided default order list.","directories":{},"_nodeVersion":"16.17.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.0.1","husky":"^8.0.1","eslint":"^8.19.0","rimraf":"^3.0.2","ts-jest":"^28.0.8","prettier":"2.7.1","tsc-alias":"^1.8.3","typescript":"4.1.3","@types/node":"^18.7.14","@types/eslint":"^8.4.6","@types/estree":"^1.0.0","tsconfig-paths":"^4.1.2","eslint-plugin-node":"^11.1.0","eslint-plugin-import":"^2.27.5","eslint-plugin-rulesdir":"^0.2.1","@typescript-eslint/parser":"^5.36.1","eslint-plugin-eslint-plugin":"^5.0.0","@typescript-eslint/eslint-plugin":"^5.48.2","eslint-import-resolver-typescript":"^3.5.3"},"peerDependencies":{"eslint":"^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0"},"_npmOperationalInternal":{"tmp":"tmp/eslint-plugin-tailwind-classname-order_0.4.0_1678787757198_0.6458468646468327","host":"s3://npm-registry-packages"}},"0.4.1":{"name":"@aacn.eu/eslint-plugin-tailwind-classname-order","version":"0.4.1","keywords":["eslint","eslintplugin","eslint-plugin","tailwind","className","order","sort"],"author":{"url":"https://aacn.eu","name":"AACN Software- und Systementwicklung GmbH","email":"info@aacn.eu"},"license":"MIT","_id":"@aacn.eu/eslint-plugin-tailwind-classname-order@0.4.1","maintainers":[{"name":"marlowski","email":"marlon@aacn.eu"}],"contributors":[{"url":"https://aacn.eu","name":"Marlon Kerth","email":"marlon@aacn.eu"}],"homepage":"https://github.com/aacn/eslint-plugin-tailwind-classname-order#readme","bugs":{"url":"https://github.com/aacn/eslint-plugin-tailwind-classname-order/issues"},"dist":{"shasum":"eab89ad81624569a4304c91f510b7c9a48d54f44","tarball":"https://registry.npmjs.org/@aacn.eu/eslint-plugin-tailwind-classname-order/-/eslint-plugin-tailwind-classname-order-0.4.1.tgz","fileCount":56,"integrity":"sha512-61Eec8YgJbU44zvrPKXKAbx8qCk0Ui4I/woC2FlPJg5sGZkWXNkSQ/zReKTO9yUb8zeRAHoge3nXFuJVQJ6zpg==","signatures":[{"sig":"MEUCIQC6c5aOsZWOaJzD7OFktaSEzmwTbNs8Xy21F6OrNnS/PgIgLnX95gw3Mx3lR1XqkBW2gLegb9qXiOwndAHEAidG3Tk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":78445,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkFwsQACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqThw//ZtLb5SBHBuwpU87wTbnZPnEtZqqNT9wHIzqVwal43JAToaJF\r\ntOsqy90F289cv51x9VjC2+IlOvEwBHsKSVCprXquxmM73rSzK4i0S40HDlxg\r\nvSfA/wSs60RZuuIBwemo1ZCLgU7WUBJ89G06sHIRVpTlzwIplvBiW7sTIr7G\r\npWXpEN587VO4OKeIJ6GFkGHeyThGALh+YaKonDl1fUBrgFufHnQ1b4R0hKiK\r\ngbP180ShhULPvX3ZI8kh/y1EeW5BIgpJwKIb3ial5zVDL+X9pakgRKV9y7mO\r\njvZ1Avvor2unbxl4K1QBg5f7Vb+ekG7l6se5Lx0DWd/q44s4xv7Wf0ZjiuA+\r\nCBbWejAURPkZ2syFLagoSFiB7N+w6UImgaqxM/P8sGtQZ5/Of41QGyFmfwXs\r\nyhkA/rph3Jb8vSOIBwqDkfGw/qju2uPxA+CPBq0EZEYY5dzCg5cQQQM+N3f9\r\nTgfFZBPXPdpLZzjrdcADIX3tAwjLsHwyHfHHsyAyDsFvc/nrVS2QNEvv+xsK\r\n2Td9K71q9lxtiAqJTsZztL/M7+ShmSkVCsZNB2OJ/SX2Ej3V/zQ+NZosRx7u\r\nN21WI/DnlhliiOTDZJVMFxNH9qAlqR8MnrVDXs/ddeWhFd5Pi2YY7amRWtpX\r\n8tN3WYl5dRCAcVJL2G2PnhZOtlTAa5BFLfc=\r\n=J07B\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"roots":["<rootDir>/src"],"globals":{"ts-jest":{"diagnostics":false}},"testRegex":"(src/.*\\.test)\\.ts$","transform":{"^.+\\.ts$":"ts-jest"},"moduleNameMapper":{"@/(.*)":"<rootDir>/src/$1"},"moduleFileExtensions":["js","ts","json"],"testPathIgnorePatterns":["/node_modules/","\\.d\\.ts$","lib/.*"]},"main":"lib/index.js","type":"commonjs","types":"./lib/index.d.ts","engines":{"node":"^14.17.0 || ^16.0.0 || >= 18.0.0"},"gitHead":"b9d198e868448a2a443b60c6f03e15d557a085ae","scripts":{"lint":"eslint .","test":"jest","build":"tsc && tsc-alias","prepare":"husky install","test:debug":"yarn test src/rules/debug.test.ts","test:watch":"jest --watch","build:clean":"rimraf lib && tsc && tsc-alias"},"_npmUser":{"name":"marlowski","email":"marlon@aacn.eu"},"repository":{"url":"git+https://github.com/aacn/eslint-plugin-tailwind-classname-order.git","type":"git"},"_npmVersion":"8.18.0","description":"Automatically orders tailwind classes included in the className tags from each element by the provided default order list.","directories":{},"_nodeVersion":"16.17.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.0.1","husky":"^8.0.1","eslint":"^8.19.0","rimraf":"^3.0.2","ts-jest":"^28.0.8","prettier":"2.7.1","tsc-alias":"^1.8.3","typescript":"4.1.3","@types/node":"^18.7.14","@types/eslint":"^8.4.6","@types/estree":"^1.0.0","tsconfig-paths":"^4.1.2","eslint-plugin-node":"^11.1.0","eslint-plugin-import":"^2.27.5","eslint-plugin-rulesdir":"^0.2.1","@typescript-eslint/parser":"^5.36.1","eslint-plugin-eslint-plugin":"^5.0.0","@typescript-eslint/eslint-plugin":"^5.48.2","eslint-import-resolver-typescript":"^3.5.3"},"peerDependencies":{"eslint":"^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0"},"_npmOperationalInternal":{"tmp":"tmp/eslint-plugin-tailwind-classname-order_0.4.1_1679231759749_0.1859804919773409","host":"s3://npm-registry-packages"}},"0.4.2":{"name":"@aacn.eu/eslint-plugin-tailwind-classname-order","version":"0.4.2","keywords":["eslint","eslintplugin","eslint-plugin","tailwind","className","order","sort"],"author":{"url":"https://aacn.eu","name":"AACN Software- und Systementwicklung GmbH","email":"info@aacn.eu"},"license":"MIT","_id":"@aacn.eu/eslint-plugin-tailwind-classname-order@0.4.2","maintainers":[{"name":"marlowski","email":"marlon@aacn.eu"}],"contributors":[{"url":"https://aacn.eu","name":"Marlon Kerth","email":"marlon@aacn.eu"}],"homepage":"https://github.com/aacn/eslint-plugin-tailwind-classname-order#readme","bugs":{"url":"https://github.com/aacn/eslint-plugin-tailwind-classname-order/issues"},"dist":{"shasum":"33c8eb6387640f31687cbca414619b93317c62a1","tarball":"https://registry.npmjs.org/@aacn.eu/eslint-plugin-tailwind-classname-order/-/eslint-plugin-tailwind-classname-order-0.4.2.tgz","fileCount":56,"integrity":"sha512-j3WA/PhrY2nj/CGySiElajP6smMCg/rDNBiIODyj9sxSXYkfmwfefZXaVT4KDNuoXRnlb6Vlk4HgGoKgO0uA4Q==","signatures":[{"sig":"MEYCIQDeoxtRxu6xxpnQ5SIw1KY+6eBW7u3LMQ9a8m34XSpO3wIhAOXH9YFG6I6aZQikAPi0eXb52jr3WdGRyggdf1Jll5Yo","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":78860},"jest":{"roots":["<rootDir>/src"],"globals":{"ts-jest":{"diagnostics":false}},"testRegex":"(src/.*\\.test)\\.ts$","transform":{"^.+\\.ts$":"ts-jest"},"moduleNameMapper":{"@/(.*)":"<rootDir>/src/$1"},"moduleFileExtensions":["js","ts","json"],"testPathIgnorePatterns":["/node_modules/","\\.d\\.ts$","lib/.*"]},"main":"lib/index.js","type":"commonjs","types":"./lib/index.d.ts","engines":{"node":"^14.17.0 || ^16.0.0 || >= 18.0.0"},"gitHead":"97005911789fc798cf2e99422c45ea1568b251cc","scripts":{"lint":"eslint .","test":"jest","build":"tsc && tsc-alias","prepare":"husky install","test:debug":"yarn test src/rules/debug.test.ts","test:watch":"jest --watch","build:clean":"rimraf lib && tsc && tsc-alias"},"_npmUser":{"name":"marlowski","email":"marlon@aacn.eu"},"repository":{"url":"git+https://github.com/aacn/eslint-plugin-tailwind-classname-order.git","type":"git"},"_npmVersion":"9.5.0","description":"Automatically orders tailwind classes included in the className tags from each element by the provided default order list.","directories":{},"_nodeVersion":"18.15.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.0.1","husky":"^8.0.1","eslint":"^8.19.0","rimraf":"^3.0.2","ts-jest":"^28.0.8","prettier":"2.7.1","tsc-alias":"^1.8.3","typescript":"4.1.3","@types/node":"^18.7.14","@types/eslint":"^8.4.6","@types/estree":"^1.0.0","tsconfig-paths":"^4.1.2","eslint-plugin-node":"^11.1.0","eslint-plugin-import":"^2.27.5","eslint-plugin-rulesdir":"^0.2.1","@typescript-eslint/parser":"^5.36.1","eslint-plugin-eslint-plugin":"^5.0.0","@typescript-eslint/eslint-plugin":"^5.48.2","eslint-import-resolver-typescript":"^3.5.3"},"peerDependencies":{"eslint":"^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0"},"_npmOperationalInternal":{"tmp":"tmp/eslint-plugin-tailwind-classname-order_0.4.2_1685105746534_0.19462648053272114","host":"s3://npm-registry-packages"}},"0.4.3":{"name":"@aacn.eu/eslint-plugin-tailwind-classname-order","version":"0.4.3","keywords":["eslint","eslintplugin","eslint-plugin","tailwind","className","order","sort"],"author":{"url":"https://aacn.eu","name":"AACN Software- und Systementwicklung GmbH","email":"info@aacn.eu"},"license":"MIT","_id":"@aacn.eu/eslint-plugin-tailwind-classname-order@0.4.3","maintainers":[{"name":"marlowski","email":"marlon@aacn.eu"}],"contributors":[{"url":"https://aacn.eu","name":"Marlon Kerth","email":"marlon@aacn.eu"}],"homepage":"https://github.com/aacn/eslint-plugin-tailwind-classname-order#readme","bugs":{"url":"https://github.com/aacn/eslint-plugin-tailwind-classname-order/issues"},"dist":{"shasum":"db78de848f23f24d53aa63625ee75f7a5bda5b1c","tarball":"https://registry.npmjs.org/@aacn.eu/eslint-plugin-tailwind-classname-order/-/eslint-plugin-tailwind-classname-order-0.4.3.tgz","fileCount":56,"integrity":"sha512-P4mVva93PsnVHBycpd6vp6JDCuHg3XwQkU2+lUzxvqdaz3/Be7P4IceH4z2VLZN3E7x5Fi/0DYYW0YyM+i1QqQ==","signatures":[{"sig":"MEUCIQDN/w20J2+3IonPSgy545KyAI3U8+LQJVMGiGFyrwNQPAIgK3MnVKWH2FbTK+zGMoprXcuZLMc3LBuaNODdeleiOc0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":81333},"jest":{"roots":["<rootDir>/src"],"globals":{"ts-jest":{"diagnostics":false}},"testRegex":"(src/.*\\.test)\\.ts$","transform":{"^.+\\.ts$":"ts-jest"},"moduleNameMapper":{"@/(.*)":"<rootDir>/src/$1"},"moduleFileExtensions":["js","ts","json"],"testPathIgnorePatterns":["/node_modules/","\\.d\\.ts$","lib/.*"]},"main":"lib/index.js","type":"commonjs","types":"./lib/index.d.ts","engines":{"node":"^14.17.0 || ^16.0.0 || >= 18.0.0"},"gitHead":"c01b8332bbd17441b9d43ecaffd2a74bf3d082d9","scripts":{"lint":"eslint .","test":"jest","build":"tsc && tsc-alias","prepare":"husky install","test:debug":"yarn test src/rules/debug.test.ts","test:watch":"jest --watch","build:clean":"rimraf lib && tsc && tsc-alias"},"_npmUser":{"name":"marlowski","email":"marlon@aacn.eu"},"repository":{"url":"git+https://github.com/aacn/eslint-plugin-tailwind-classname-order.git","type":"git"},"_npmVersion":"9.5.0","description":"Automatically orders tailwind classes included in the className tags from each element by the provided default order list.","directories":{},"_nodeVersion":"18.15.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.0.1","husky":"^8.0.1","eslint":"^8.19.0","rimraf":"^3.0.2","ts-jest":"^28.0.8","prettier":"2.7.1","tsc-alias":"^1.8.3","typescript":"4.1.3","@types/node":"^18.7.14","@types/eslint":"^8.4.6","@types/estree":"^1.0.0","tsconfig-paths":"^4.1.2","eslint-plugin-node":"^11.1.0","eslint-plugin-import":"^2.27.5","eslint-plugin-rulesdir":"^0.2.1","@typescript-eslint/parser":"^5.36.1","eslint-plugin-eslint-plugin":"^5.0.0","@typescript-eslint/eslint-plugin":"^5.48.2","eslint-import-resolver-typescript":"^3.5.3"},"peerDependencies":{"eslint":"^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0"},"_npmOperationalInternal":{"tmp":"tmp/eslint-plugin-tailwind-classname-order_0.4.3_1687258164249_0.7630793222018319","host":"s3://npm-registry-packages"}},"0.4.4":{"name":"@aacn.eu/eslint-plugin-tailwind-classname-order","version":"0.4.4","keywords":["eslint","eslintplugin","eslint-plugin","tailwind","className","order","sort"],"author":{"url":"https://aacn.eu","name":"AACN Software- und Systementwicklung GmbH","email":"info@aacn.eu"},"license":"MIT","_id":"@aacn.eu/eslint-plugin-tailwind-classname-order@0.4.4","maintainers":[{"name":"marlowski","email":"marlon@aacn.eu"}],"contributors":[{"url":"https://aacn.eu","name":"Marlon Kerth","email":"marlon@aacn.eu"}],"homepage":"https://github.com/aacn/eslint-plugin-tailwind-classname-order#readme","bugs":{"url":"https://github.com/aacn/eslint-plugin-tailwind-classname-order/issues"},"dist":{"shasum":"33172ab9d71658fea6a802f0c8291e39f4e4c2c0","tarball":"https://registry.npmjs.org/@aacn.eu/eslint-plugin-tailwind-classname-order/-/eslint-plugin-tailwind-classname-order-0.4.4.tgz","fileCount":60,"integrity":"sha512-5G6cWpRehDhTmaJU/nSBO+thJewfSmVDi+6b9c7hy3ljMjosuJWahKRXPnvFDs9VJS1PFyn+zvxw7JLVAB40NA==","signatures":[{"sig":"MEUCIQCeMp9trx1CPp3fM8e+1BVTOGb8b8ImwDJB4qpyJ0zNmQIgceQGmQWTtUIXaFBBx9yLCIQa0KbW7NeXNyF4B9Qoigo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":82738},"jest":{"roots":["<rootDir>/src"],"globals":{"ts-jest":{"diagnostics":false}},"testRegex":"(src/.*\\.test)\\.ts$","transform":{"^.+\\.ts$":"ts-jest"},"moduleNameMapper":{"@/(.*)":"<rootDir>/src/$1"},"moduleFileExtensions":["js","ts","json"],"testPathIgnorePatterns":["/node_modules/","\\.d\\.ts$","lib/.*"]},"main":"lib/index.js","type":"commonjs","types":"./lib/index.d.ts","engines":{"node":"^14.17.0 || ^16.0.0 || >= 18.0.0"},"gitHead":"0e32511b9dd25a8b982667db391db6acb69a0c8e","scripts":{"lint":"eslint .","test":"jest","build":"tsc && tsc-alias","prepare":"husky install","test:debug":"yarn test src/rules/debug.test.ts","test:watch":"jest --watch","build:clean":"rimraf lib && tsc && tsc-alias"},"_npmUser":{"name":"marlowski","email":"marlon@aacn.eu"},"repository":{"url":"git+https://github.com/aacn/eslint-plugin-tailwind-classname-order.git","type":"git"},"_npmVersion":"10.7.0","description":"Automatically orders tailwind classes included in the className tags from each element by the provided default order list.","directories":{},"_nodeVersion":"20.15.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.0.1","husky":"^8.0.1","eslint":"^8.19.0","rimraf":"^3.0.2","ts-jest":"^28.0.8","prettier":"2.7.1","tsc-alias":"^1.8.3","typescript":"4.1.3","@types/node":"^18.7.14","@types/eslint":"^8.4.6","@types/estree":"^1.0.0","tsconfig-paths":"^4.1.2","eslint-plugin-node":"^11.1.0","eslint-plugin-import":"^2.27.5","eslint-plugin-rulesdir":"^0.2.1","@typescript-eslint/parser":"^5.36.1","eslint-plugin-eslint-plugin":"^5.0.0","@typescript-eslint/eslint-plugin":"^5.48.2","eslint-import-resolver-typescript":"^3.5.3"},"peerDependencies":{"eslint":"^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0"},"_npmOperationalInternal":{"tmp":"tmp/eslint-plugin-tailwind-classname-order_0.4.4_1745328431568_0.6174224110743665","host":"s3://npm-registry-packages-npm-production"}},"1.0.0":{"name":"@aacn.eu/eslint-plugin-tailwind-classname-order","version":"1.0.0","description":"Automatically orders tailwind classes included in the className tags from each element by the provided default order list.","license":"MIT","type":"commonjs","repository":{"type":"git","url":"git+https://github.com/aacn/eslint-plugin-tailwind-classname-order.git"},"publishConfig":{"access":"public"},"keywords":["eslint","eslintplugin","eslint-plugin","tailwind","className","order","sort"],"author":{"name":"AACN Software- und Systementwicklung GmbH","email":"info@aacn.eu","url":"https://aacn.eu"},"contributors":[{"name":"Marlon Kerth","email":"marlon@aacn.eu","url":"https://aacn.eu"}],"main":"lib/index.js","bin":{"tw-class-order":"lib/cli.js"},"scripts":{"lint":"eslint .","build":"tsc && tsc-alias","build:clean":"rimraf lib && tsc && tsc-alias","test":"jest --runInBand","test:watch":"jest --watch","test:debug":"yarn test src/rules/debug.test.ts","verify":"yarn lint && yarn test && yarn build:clean","verify:all":"yarn verify && yarn --cwd playground verify","prepare":"husky"},"devDependencies":{"@eslint/js":"^10.0.1","@types/eslint":"^9.6.1","@types/estree":"^1.0.9","@types/jest":"^30.0.0","@types/node":"^26.1.0","@typescript-eslint/parser":"^8.62.1","eslint":"^10.6.0","eslint-plugin-eslint-plugin":"^7.4.1","husky":"^9.1.7","jest":"^30.4.2","prettier":"^3.9.4","rimraf":"^6.1.3","ts-jest":"^29.4.11","tsc-alias":"^1.8.17","typescript":"^6.0.3"},"engines":{"node":">=20.19.0"},"peerDependencies":{"eslint":"^8.57.0 || ^9.0.0 || ^10.0.0"},"jest":{"roots":["<rootDir>/src"],"transform":{"^.+\\.ts$":["ts-jest",{"diagnostics":false}]},"testRegex":"(src/.*\\.test)\\.ts$","testPathIgnorePatterns":["/node_modules/","\\.d\\.ts$","lib/.*"],"moduleFileExtensions":["js","ts","json"],"moduleNameMapper":{"@/(.*)":"<rootDir>/src/$1"}},"gitHead":"5c6866dd4f73c114eb9b584140ca38ba9b92e373","types":"./lib/index.d.ts","_id":"@aacn.eu/eslint-plugin-tailwind-classname-order@1.0.0","bugs":{"url":"https://github.com/aacn/eslint-plugin-tailwind-classname-order/issues"},"homepage":"https://github.com/aacn/eslint-plugin-tailwind-classname-order#readme","_nodeVersion":"22.23.1","_npmVersion":"11.18.0","dist":{"integrity":"sha512-NG+SfvZ2TEn/6p3SfnfcGO+jlNsaNQpfqH1h08aEbiYsxtIr+LR7SS8fjmM9NrwefHQYwNrazc6d7qBekJpOPw==","shasum":"9340889bbf0abf2ab1d9a6697fbef9487bc442e0","tarball":"https://registry.npmjs.org/@aacn.eu/eslint-plugin-tailwind-classname-order/-/eslint-plugin-tailwind-classname-order-1.0.0.tgz","fileCount":72,"unpackedSize":101227,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@aacn.eu%2feslint-plugin-tailwind-classname-order@1.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQDunlrNgZcQHuATa99HzHaR2ADH3e62QYUVYeTKn2MrTQIgcvLosdckD3gBItngDgZGUfMwDEEzQCaNlh+9UAuwNuc="}]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:b8291523-36eb-40e0-bc37-80a93dbe9fef"}},"directories":{},"maintainers":[{"name":"marlowski","email":"marlon@aacn.eu"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/eslint-plugin-tailwind-classname-order_1.0.0_1783123700167_0.7475364740563808"},"_hasShrinkwrap":false}},"time":{"created":"2023-01-19T11:04:09.907Z","modified":"2026-07-04T00:08:20.568Z","0.3.0":"2023-01-19T11:04:10.164Z","0.3.1":"2023-01-19T11:12:34.898Z","0.4.0":"2023-03-14T09:55:57.409Z","0.4.1":"2023-03-19T13:15:59.988Z","0.4.2":"2023-05-26T12:55:46.702Z","0.4.3":"2023-06-20T10:49:24.422Z","0.4.4":"2025-04-22T13:27:11.771Z","1.0.0":"2026-07-04T00:08:20.306Z"},"bugs":{"url":"https://github.com/aacn/eslint-plugin-tailwind-classname-order/issues"},"author":{"name":"AACN Software- und Systementwicklung GmbH","email":"info@aacn.eu","url":"https://aacn.eu"},"license":"MIT","homepage":"https://github.com/aacn/eslint-plugin-tailwind-classname-order#readme","keywords":["eslint","eslintplugin","eslint-plugin","tailwind","className","order","sort"],"repository":{"type":"git","url":"git+https://github.com/aacn/eslint-plugin-tailwind-classname-order.git"},"description":"Automatically orders tailwind classes included in the className tags from each element by the provided default order list.","contributors":[{"name":"Marlon Kerth","email":"marlon@aacn.eu","url":"https://aacn.eu"}],"maintainers":[{"name":"marlowski","email":"marlon@aacn.eu"}],"readme":"![GitHub package.json version](https://img.shields.io/github/package-json/v/MarlonAACN/eslint-plugin-tailwind-classname-order?style=flat-square)\n![GitHub](https://img.shields.io/github/license/MarlonAACN/eslint-plugin-tailwind-classname-order?style=flat-square)\n![GitHub repo size](https://img.shields.io/github/repo-size/MarlonAACN/eslint-plugin-tailwind-classname-order?style=flat-square)\n# eslint-plugin-tailwind-classname-order\n\nThis eslint plugin automatically orders the tailwind classes included in the className tags from\neach element by the provided default order list.\n\n- [1. Features](#features)\n- [2. Roadmap](#roadmap)\n- [3. Currently supported tailwind classes](#currently-supported-tailwind-classes)\n- [4. Explicitly unsupported classes](#explicitly-unsupported-classes)\n- [5. Default order config](#default-order-config)\n- [6. Installation](#installation)\n- [7. Usage](#usage)\n\n## Features\n- [x] Order tailwind classes by given config\n- [x] Recognize predefined classes\n- [x] Recognize negative valued class names\n- [x] Recognize states like hover,active,peer etc.\n- [x] Recognize stacked states properly.\n- [x] Recognize mediaquerys\n- [x] Support for [tailwind-rn](https://www.npmjs.com/package/tailwind-rn)\n- [x] Supporting not only strings, but also expressions\n\n## Development\n\nRequires Node.js 20.19 or newer and Yarn 1.x.\n\n```sh\nyarn install\nyarn verify\n\ncd playground\nyarn install\ncd ..\nyarn verify:all\n```\n\n## Roadmap\n1. Resolve custom background images from project theme data when Tailwind offers\na stable synchronous API.\n2. ~~Include className objects that are not string typed instead of just ignoring them.~~\n3. ~~Make custom ordering for the user more accessible and easier.~~\n\n## Currently supported tailwind classes\nFor the latest version the following tailwind classes are supported by the order plugin.\nClasses that are not yet included, will be treated as predefined custom classes.\nClasses are categorized as seen in the tailwind documentation [here](https://tailwindcss.com/docs)\n<br/>\n\n![](https://progress-bar.dev/100/?title=Layout)\n![](https://progress-bar.dev/100/?title=Flexbox_Grid)\n![](https://progress-bar.dev/100/?title=Spacing)<br/>\n![](https://progress-bar.dev/100/?title=Sizing)\n![](https://progress-bar.dev/99/?title=Typography)\n![](https://progress-bar.dev/98/?title=Backgrounds)<br/>\n![](https://progress-bar.dev/98/?title=Borders)\n![](https://progress-bar.dev/99/?title=Effects)\n![](https://progress-bar.dev/100/?title=Filters)<br/>\n![](https://progress-bar.dev/100/?title=Tables)\n![](https://progress-bar.dev/100/?title=Transitions_Animations)\n![](https://progress-bar.dev/100/?title=Transformers)<br/>\n![](https://progress-bar.dev/100/?title=Interactivity)\n![](https://progress-bar.dev/98/?title=SVG)\n![](https://progress-bar.dev/100/?title=Accessibility)<br/>\n\nCustom background images defined in a Tailwind theme must include `img` in\ntheir class name so the plugin can distinguish them from custom colors:\n\n```txt\nbg-home-img\nbg-img-hero\n```\n\nWithout theme evaluation, an ambiguous name such as `bg-hero` could represent\neither `background-image` or `background-color` and is therefore treated as a\ncolor. Built-in gradients and arbitrary image values such as\n`bg-[url('/hero.jpg')]` are detected automatically. Arbitrary colors such as\n`bg-[#fff]` and `bg-[color:var(--brand)]` retain background-color priority.\n\n## Explicitly unsupported classes\nSome classes in tailwind have counterparts with the same name and since interpreting arbitrary values\nis not supported on the current version, they won't be detected properly.\nThere are two major differences:\n1. The plugin doesn't support arbitrary values in any way for the certain class. Even when they're\npredefined in the tw config file, they won't be interpreted properly.\n2. The plugin can't interpret arbitrary values when they're added inline, but the plugin will be able\nto detect the proper class, when the value is predefined in the config.\n<br/>This Problem will presumably be fixed with a future version.\n\n- Font Family (inline)\n- Text Color (inline)\n- Text Decoration Color (inline)\n- Background Size (arbitrary generally)\n- Background Position (arbitrary generally)\n- Stroke Color (inline)\n- Border Color (inline)\n- Outline Color (inline)\n- Ring Color (inline)\n- Ring Offset Color (inline)\n- Box Shadow Color (inline)\n\n## Default order config\n- predefined class\n\n#### #browser behavior\n- box-sizing\n\n#### #object reference - High priority because it refers to neighboring content\n- peer\n- group\n\n#### #object identity, positioning (where)\n- position\n- (position) top, right, bottom, left\n- visibility\n- z-index\n\n#### #object identity, sizing (how)\n- (flex) flex width\n- (flex) basis\n- container\n- width\n- width-min\n- width-max\n- height\n- height-min\n- height-max\n- aspect-ratio\n\n#### #object identity, core identity (what)\n- display\n\n#### #flex identity, core flex identity (what flex)\n- (flex) direction (row/col)\n- (flex) wrap\n\n#### #grid identity, core grid identity (what grid)\n- (grid) grid-cols (grid-template-columns)\n- (grid) grid-column\n- (grid) grid-rows (grid-template-rows)\n- (grid) grid-row\n- (grid) grid-flow\n- (grid) auto-cols\n- (grid) auto-rows\n- (grid) justify items\n- (grid) justify self\n- (grid) align content\n\n#### #flex/grid identity, core flex/grid identity (what flex/grid)\n- (flex / grid) justify-content\n- (flex / grid) align-items\n- (flex / grid) align self\n- (flex / grid) gap (x, y)\n\n#### #object identity, environmental behaviour\n- place items\n- place content\n- place self\n- padding-x\n- padding-y\n- padding (top, right, bottom, left)\n- margin-x\n- margin-y\n- margin (top, right, bottom, left)\n- space between (x, y)\n- float\n- clear\n- isolation\n\n#### #object identity modification\n- transform (x, y, rotate, scale, skew)\n- transform origin\n\n#### #content behaviour\n- object fit\n- object position\n- overflow\n- overscroll\n- order\n- break-before\n- break-after\n- break-inside\n- box decoration break\n\n#### #styling - content / text related\n- whitespace\n\n#### #text styling\n- font-family\n- font-size\n- font smoothing\n- font-weight\n- font-style\n- font-variant-numeric\n- tracking (letter spacing)\n- leading (line-height)\n- list style type\n- list style position\n- text alignment\n- text-color\n- text-transform\n- text-overflow\n- text-decoration\n- text-decoration-color\n- text-decoration-style\n- text-decoration-thickness\n- text-underline-offset\n- text-indent\n- word break\n- vertical align\n- pseudo-class content\n\n#### #body behaviour\n- opacity\n\n#### #body styling\n- background (url, repeat, pos, size)\n- background-attachment\n- background-clip\n- background-color\n- background-origin\n- gradient color from-{color}\n- gradient color middle-{color}\n- gradient color to-{color}\n- mix-blend-mode\n- background blend mode\n- (svg) fill\n- (svg) stroke color\n- (svg) stroke width\n- border (style, width, radius)\n- border-color\n- divide (x, y)\n- divide color\n- divide-style\n- outline-width\n- outline-style\n- outline-offset\n- ring width\n- ring color\n- ring offset width\n- ring offset color\n- box-shadow\n- box-shadow-color\n\n#### #table styling\n- border-collapse\n- border-spacing\n- table-layout\n\n#### #filters\n- blur\n- brightness\n- contrast\n- drop-shadow\n- grayscale\n- hue-rotate\n- invert\n- saturate\n- sepia\n- backdrop blur\n- backdrop brightness\n- backdrop contrast\n- backdrop grayscale\n- backdrop hue rotate\n- backdrop invert\n- backdrop opacity\n- backdrop saturate\n- backdrop sepia\n\n#### #transitions & animation\n- transition (property, duration, timing function, delay)\n- animate\n\n#### #interactivity\n- accent-color\n- appearance\n- cursor\n- caret-color\n- pointer events\n- resize\n- scroll behavior\n- scroll padding (x, y)\n- scroll margin (x, y)\n- scroll snap align\n- scroll snap stop\n- scroll snap type\n- touch action\n- user select\n- will-change\n\n#### #accesiblility\n- screen readers\n\n#### #state management\nStates are priority wise in the same order as they are presented on the [tailwind docs (states)](https://tailwindcss.com/docs/hover-focus-and-other-states#appendix), excluding the ```@media``` type prefixes.\n\n#### #media queries\nThis plugin supports the default breakpoint prefixes as listed on the [tailwind docs for responsive design](https://tailwindcss.com/docs/responsive-design). <br/>\nFurthermore more custom prefixes are also already added. The ```orderConfig.json``` file can of course be altered to include even more custom breakpoint prefixes.\n- xs\n- sm\n- md\n- 2md\n- lg\n- 2lg\n- xl\n- 2xl\n- 3xl\n\n## Installation\n\nYou'll first need to install [ESLint](https://eslint.org/):\n\n#### With npm\n```sh\n# via npm\nnpm install eslint --save-dev\n\n# via yarn\nyarn add -D eslint\n```\n\nNext, install `eslint-plugin-tailwind-classname-order`:\n\n```sh\n# via npm\nnpm install @aacn.eu/eslint-plugin-tailwind-classname-order --save-dev\n\n# via yarn\nyarn add -D @aacn.eu/eslint-plugin-tailwind-classname-order\n```\n\n\n## Usage\n\nUse the recommended flat config in `eslint.config.mjs`:\n\n```js\nimport tailwindClassnameOrder from '@aacn.eu/eslint-plugin-tailwind-classname-order';\n\nexport default [...tailwindClassnameOrder.configs.recommended];\n```\n\nBy default the rule sorts `className`. Configure other JSX attributes when\nneeded:\n\n```js\nexport default [\n  ...tailwindClassnameOrder.configs.recommended,\n  {\n    rules: {\n      '@aacn.eu/tailwind-classname-order/order': [\n        'warn',\n        { attributes: ['className', 'class'] },\n      ],\n    },\n  },\n];\n```\n\n### Custom class order\n\nGenerate a project config in the current directory:\n\n```sh\nnpx tw-class-order\n# or\nyarn exec tw-class-order\n```\n\nThis creates a small `tw-class-order.json` without copying and freezing the\nbundled defaults:\n\n```json\n{\n  \"before\": {\n    \"project-card\": \"block\"\n  },\n  \"after\": {\n    \"project-shadow\": \"shadow\"\n  }\n}\n```\n\nEach key is a custom class group and each value is an existing anchor in the\ndefault order. The example places `project-card` before the display `block`\ngroup and `project-shadow` after the `shadow` group. The command refuses to\noverwrite an existing file.\n\nWhen ESLint runs, the plugin searches from the current directory toward the\nfilesystem root and uses the nearest config. If none exists, the bundled order\nis used unchanged. Invalid JSON, invalid mappings, and missing anchors produce\nan error instead of silently using a surprising order.\n\nA complete `{ \"priority\": [...] }` config is still supported when replacing\nthe entire bundled order is intentional, but overrides continue receiving new\nbuilt-in Tailwind groups when the package is upgraded.\n\nWhen the rule reports an ordering problem, the diagnostic includes the expected\nclass sequence; ESLint autofix applies the same sequence.\n","readmeFilename":"README.md"}