eslint-plugin-better-tailwindcss 3.1.0 → 3.2.1
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/lib/cjs/api/defaults.d.ts +1 -1
- package/lib/cjs/api/defaults.d.ts.map +1 -1
- package/lib/cjs/api/defaults.js +7 -7
- package/lib/cjs/api/defaults.js.map +1 -1
- package/lib/cjs/async-utils/cache.d.ts +4 -0
- package/lib/cjs/async-utils/cache.d.ts.map +1 -0
- package/lib/cjs/async-utils/cache.js +29 -0
- package/lib/cjs/async-utils/cache.js.map +1 -0
- package/lib/cjs/async-utils/fs.d.ts +3 -0
- package/lib/cjs/async-utils/fs.d.ts.map +1 -0
- package/lib/cjs/{tailwind/utils/config.js → async-utils/fs.js} +12 -10
- package/lib/cjs/async-utils/fs.js.map +1 -0
- package/lib/cjs/async-utils/module.d.ts +3 -0
- package/lib/cjs/async-utils/module.d.ts.map +1 -0
- package/lib/cjs/{tailwind/utils → async-utils}/module.js +4 -0
- package/lib/cjs/async-utils/module.js.map +1 -0
- package/lib/cjs/async-utils/platform.d.ts.map +1 -0
- package/lib/cjs/async-utils/platform.js.map +1 -0
- package/lib/cjs/async-utils/resolvers.d.ts.map +1 -0
- package/lib/cjs/{tailwind/utils → async-utils}/resolvers.js +1 -0
- package/lib/cjs/async-utils/resolvers.js.map +1 -0
- package/lib/cjs/async-utils/version.d.ts.map +1 -0
- package/lib/cjs/{tailwind/utils → async-utils}/version.js +10 -4
- package/lib/cjs/async-utils/version.js.map +1 -0
- package/lib/cjs/async-utils/worker.d.ts +3 -0
- package/lib/cjs/async-utils/worker.d.ts.map +1 -0
- package/lib/cjs/async-utils/worker.js +13 -0
- package/lib/cjs/async-utils/worker.js.map +1 -0
- package/lib/cjs/configs/cjs.js +2 -2
- package/lib/cjs/configs/cjs.js.map +1 -1
- package/lib/cjs/configs/config.js +22 -22
- package/lib/cjs/configs/config.js.map +1 -1
- package/lib/cjs/options/callees/cc.js +3 -3
- package/lib/cjs/options/callees/cc.js.map +1 -1
- package/lib/cjs/options/callees/clb.js +4 -4
- package/lib/cjs/options/callees/clb.js.map +1 -1
- package/lib/cjs/options/callees/clsx.js +3 -3
- package/lib/cjs/options/callees/clsx.js.map +1 -1
- package/lib/cjs/options/callees/cn.js +3 -3
- package/lib/cjs/options/callees/cn.js.map +1 -1
- package/lib/cjs/options/callees/cnb.js +3 -3
- package/lib/cjs/options/callees/cnb.js.map +1 -1
- package/lib/cjs/options/callees/ctl.js +2 -2
- package/lib/cjs/options/callees/ctl.js.map +1 -1
- package/lib/cjs/options/callees/cva.js +4 -4
- package/lib/cjs/options/callees/cva.js.map +1 -1
- package/lib/cjs/options/callees/cx.js +3 -3
- package/lib/cjs/options/callees/cx.js.map +1 -1
- package/lib/cjs/options/callees/dcnb.js +3 -3
- package/lib/cjs/options/callees/dcnb.js.map +1 -1
- package/lib/cjs/options/callees/objstr.js +3 -3
- package/lib/cjs/options/callees/objstr.js.map +1 -1
- package/lib/cjs/options/callees/tv.d.ts +12 -0
- package/lib/cjs/options/callees/tv.d.ts.map +1 -1
- package/lib/cjs/options/callees/tv.js +36 -6
- package/lib/cjs/options/callees/tv.js.map +1 -1
- package/lib/cjs/options/callees/twJoin.js +2 -2
- package/lib/cjs/options/callees/twJoin.js.map +1 -1
- package/lib/cjs/options/callees/twMerge.js +2 -2
- package/lib/cjs/options/callees/twMerge.js.map +1 -1
- package/lib/cjs/options/default-options.js +11 -11
- package/lib/cjs/options/default-options.js.map +1 -1
- package/lib/cjs/options/descriptions.js +4 -4
- package/lib/cjs/options/descriptions.js.map +1 -1
- package/lib/cjs/parsers/angular.d.ts.map +1 -1
- package/lib/cjs/parsers/angular.js +45 -55
- package/lib/cjs/parsers/angular.js.map +1 -1
- package/lib/cjs/parsers/es.d.ts.map +1 -1
- package/lib/cjs/parsers/es.js +65 -82
- package/lib/cjs/parsers/es.js.map +1 -1
- package/lib/cjs/parsers/html.js +9 -9
- package/lib/cjs/parsers/html.js.map +1 -1
- package/lib/cjs/parsers/jsx.js +21 -21
- package/lib/cjs/parsers/jsx.js.map +1 -1
- package/lib/cjs/parsers/svelte.d.ts.map +1 -1
- package/lib/cjs/parsers/svelte.js +54 -71
- package/lib/cjs/parsers/svelte.js.map +1 -1
- package/lib/cjs/parsers/vue.d.ts.map +1 -1
- package/lib/cjs/parsers/vue.js +55 -72
- package/lib/cjs/parsers/vue.js.map +1 -1
- package/lib/cjs/rules/enforce-consistent-variable-syntax.d.ts.map +1 -1
- package/lib/cjs/rules/enforce-consistent-variable-syntax.js +19 -18
- package/lib/cjs/rules/enforce-consistent-variable-syntax.js.map +1 -1
- package/lib/cjs/rules/multiline.d.ts +2 -0
- package/lib/cjs/rules/multiline.d.ts.map +1 -1
- package/lib/cjs/rules/multiline.js +38 -30
- package/lib/cjs/rules/multiline.js.map +1 -1
- package/lib/cjs/rules/no-conflicting-classes.d.ts.map +1 -1
- package/lib/cjs/rules/no-conflicting-classes.js +23 -23
- package/lib/cjs/rules/no-conflicting-classes.js.map +1 -1
- package/lib/cjs/rules/no-duplicate-classes.d.ts +1 -3
- package/lib/cjs/rules/no-duplicate-classes.d.ts.map +1 -1
- package/lib/cjs/rules/no-duplicate-classes.js +21 -20
- package/lib/cjs/rules/no-duplicate-classes.js.map +1 -1
- package/lib/cjs/rules/no-restricted-classes.d.ts.map +1 -1
- package/lib/cjs/rules/no-restricted-classes.js +17 -16
- package/lib/cjs/rules/no-restricted-classes.js.map +1 -1
- package/lib/cjs/rules/no-unnecessary-whitespace.d.ts.map +1 -1
- package/lib/cjs/rules/no-unnecessary-whitespace.js +21 -20
- package/lib/cjs/rules/no-unnecessary-whitespace.js.map +1 -1
- package/lib/cjs/rules/no-unregistered-classes.d.ts +3 -1
- package/lib/cjs/rules/no-unregistered-classes.d.ts.map +1 -1
- package/lib/cjs/rules/no-unregistered-classes.js +45 -29
- package/lib/cjs/rules/no-unregistered-classes.js.map +1 -1
- package/lib/cjs/rules/sort-classes.d.ts.map +1 -1
- package/lib/cjs/rules/sort-classes.js +28 -28
- package/lib/cjs/rules/sort-classes.js.map +1 -1
- package/lib/cjs/tailwindcss/class-order.async.v3.d.ts +2 -0
- package/lib/cjs/tailwindcss/class-order.async.v3.d.ts.map +1 -0
- package/lib/cjs/tailwindcss/class-order.async.v3.js +9 -0
- package/lib/cjs/tailwindcss/class-order.async.v3.js.map +1 -0
- package/lib/cjs/tailwindcss/class-order.async.v4.d.ts +2 -0
- package/lib/cjs/tailwindcss/class-order.async.v4.d.ts.map +1 -0
- package/lib/cjs/tailwindcss/class-order.async.v4.js +9 -0
- package/lib/cjs/tailwindcss/class-order.async.v4.js.map +1 -0
- package/lib/cjs/tailwindcss/class-order.d.ts +14 -0
- package/lib/cjs/tailwindcss/class-order.d.ts.map +1 -0
- package/lib/cjs/tailwindcss/class-order.js +24 -0
- package/lib/cjs/tailwindcss/class-order.js.map +1 -0
- package/lib/cjs/tailwindcss/config.d.ts +16 -0
- package/lib/cjs/tailwindcss/config.d.ts.map +1 -0
- package/lib/cjs/tailwindcss/config.js +51 -0
- package/lib/cjs/tailwindcss/config.js.map +1 -0
- package/lib/cjs/tailwindcss/config.v3.d.ts +2 -0
- package/lib/cjs/tailwindcss/config.v3.d.ts.map +1 -0
- package/lib/cjs/{tailwind/v3/config.js → tailwindcss/config.v3.js} +5 -5
- package/lib/cjs/tailwindcss/config.v3.js.map +1 -0
- package/lib/cjs/tailwindcss/config.v4.d.ts +3 -0
- package/lib/cjs/tailwindcss/config.v4.d.ts.map +1 -0
- package/lib/cjs/tailwindcss/config.v4.js +20 -0
- package/lib/cjs/tailwindcss/config.v4.js.map +1 -0
- package/lib/cjs/tailwindcss/conflicting-classes.async.v3.d.ts +2 -0
- package/lib/cjs/tailwindcss/conflicting-classes.async.v3.d.ts.map +1 -0
- package/lib/cjs/tailwindcss/conflicting-classes.async.v3.js +7 -0
- package/lib/cjs/tailwindcss/conflicting-classes.async.v3.js.map +1 -0
- package/lib/cjs/{tailwind/v4/conflicting-classes.d.ts → tailwindcss/conflicting-classes.async.v4.d.ts} +1 -3
- package/lib/cjs/tailwindcss/conflicting-classes.async.v4.d.ts.map +1 -0
- package/lib/{esm/tailwind/v4/conflicting-classes.js → cjs/tailwindcss/conflicting-classes.async.v4.js} +9 -23
- package/lib/cjs/tailwindcss/conflicting-classes.async.v4.js.map +1 -0
- package/lib/cjs/tailwindcss/conflicting-classes.d.ts +22 -0
- package/lib/cjs/tailwindcss/conflicting-classes.d.ts.map +1 -0
- package/lib/cjs/tailwindcss/conflicting-classes.js +25 -0
- package/lib/cjs/tailwindcss/conflicting-classes.js.map +1 -0
- package/lib/cjs/tailwindcss/context.async.d.ts +2 -0
- package/lib/cjs/tailwindcss/context.async.d.ts.map +1 -0
- package/lib/cjs/tailwindcss/context.async.js +16 -0
- package/lib/cjs/tailwindcss/context.async.js.map +1 -0
- package/lib/cjs/tailwindcss/context.async.v3.d.ts +2 -0
- package/lib/cjs/tailwindcss/context.async.v3.d.ts.map +1 -0
- package/lib/cjs/{tailwind/v3/context.js → tailwindcss/context.async.v3.js} +11 -15
- package/lib/cjs/tailwindcss/context.async.v3.js.map +1 -0
- package/lib/cjs/tailwindcss/context.async.v4.d.ts +2 -0
- package/lib/cjs/tailwindcss/context.async.v4.d.ts.map +1 -0
- package/lib/cjs/{tailwind/v4/context.js → tailwindcss/context.async.v4.js} +47 -50
- package/lib/cjs/tailwindcss/context.async.v4.js.map +1 -0
- package/lib/cjs/tailwindcss/custom-component-classes.async.d.ts +2 -0
- package/lib/cjs/tailwindcss/custom-component-classes.async.d.ts.map +1 -0
- package/lib/cjs/{tailwind/async/class-order.async.js → tailwindcss/custom-component-classes.async.js} +6 -5
- package/lib/cjs/tailwindcss/custom-component-classes.async.js.map +1 -0
- package/lib/cjs/tailwindcss/custom-component-classes.async.v3.d.ts +3 -0
- package/lib/cjs/tailwindcss/custom-component-classes.async.v3.d.ts.map +1 -0
- package/lib/cjs/tailwindcss/custom-component-classes.async.v3.js +7 -0
- package/lib/cjs/tailwindcss/custom-component-classes.async.v3.js.map +1 -0
- package/lib/cjs/tailwindcss/custom-component-classes.async.v4.d.ts +3 -0
- package/lib/cjs/tailwindcss/custom-component-classes.async.v4.d.ts.map +1 -0
- package/lib/cjs/tailwindcss/custom-component-classes.async.v4.js +35 -0
- package/lib/cjs/tailwindcss/custom-component-classes.async.v4.js.map +1 -0
- package/lib/cjs/tailwindcss/custom-component-classes.d.ts +9 -0
- package/lib/cjs/tailwindcss/custom-component-classes.d.ts.map +1 -0
- package/lib/cjs/tailwindcss/custom-component-classes.js +25 -0
- package/lib/cjs/tailwindcss/custom-component-classes.js.map +1 -0
- package/lib/cjs/tailwindcss/custom-component-classes.v3.d.ts +3 -0
- package/lib/cjs/tailwindcss/custom-component-classes.v3.d.ts.map +1 -0
- package/lib/cjs/tailwindcss/custom-component-classes.v3.js +7 -0
- package/lib/cjs/tailwindcss/custom-component-classes.v3.js.map +1 -0
- package/lib/cjs/tailwindcss/custom-component-classes.v4.d.ts +3 -0
- package/lib/cjs/tailwindcss/custom-component-classes.v4.d.ts.map +1 -0
- package/lib/cjs/tailwindcss/custom-component-classes.v4.js +37 -0
- package/lib/cjs/tailwindcss/custom-component-classes.v4.js.map +1 -0
- package/lib/cjs/tailwindcss/prefix.async.v3.d.ts +2 -0
- package/lib/cjs/tailwindcss/prefix.async.v3.d.ts.map +1 -0
- package/lib/cjs/tailwindcss/prefix.async.v3.js +9 -0
- package/lib/cjs/tailwindcss/prefix.async.v3.js.map +1 -0
- package/lib/cjs/tailwindcss/prefix.async.v4.d.ts +2 -0
- package/lib/cjs/tailwindcss/prefix.async.v4.d.ts.map +1 -0
- package/lib/cjs/tailwindcss/prefix.async.v4.js +9 -0
- package/lib/cjs/tailwindcss/prefix.async.v4.js.map +1 -0
- package/lib/cjs/tailwindcss/prefix.d.ts +13 -0
- package/lib/cjs/tailwindcss/prefix.d.ts.map +1 -0
- package/lib/cjs/tailwindcss/prefix.js +31 -0
- package/lib/cjs/tailwindcss/prefix.js.map +1 -0
- package/lib/cjs/tailwindcss/unregistered-classes.async.v3.d.ts +2 -0
- package/lib/cjs/tailwindcss/unregistered-classes.async.v3.d.ts.map +1 -0
- package/lib/cjs/{tailwind/async/conflicting-classes.async.js → tailwindcss/unregistered-classes.async.v3.js} +9 -5
- package/lib/cjs/tailwindcss/unregistered-classes.async.v3.js.map +1 -0
- package/lib/cjs/tailwindcss/unregistered-classes.async.v4.d.ts +2 -0
- package/lib/cjs/tailwindcss/unregistered-classes.async.v4.d.ts.map +1 -0
- package/lib/cjs/tailwindcss/unregistered-classes.async.v4.js +10 -0
- package/lib/cjs/tailwindcss/unregistered-classes.async.v4.js.map +1 -0
- package/lib/cjs/tailwindcss/unregistered-classes.d.ts +14 -0
- package/lib/cjs/tailwindcss/unregistered-classes.d.ts.map +1 -0
- package/lib/cjs/tailwindcss/unregistered-classes.js +24 -0
- package/lib/cjs/tailwindcss/unregistered-classes.js.map +1 -0
- package/lib/cjs/types/async.d.ts +2 -0
- package/lib/cjs/types/async.d.ts.map +1 -0
- package/lib/cjs/{tailwind/api/interface.js → types/async.js} +1 -1
- package/lib/cjs/types/async.js.map +1 -0
- package/lib/cjs/utils/cache.d.ts +4 -0
- package/lib/cjs/utils/cache.d.ts.map +1 -0
- package/lib/cjs/utils/cache.js +29 -0
- package/lib/cjs/utils/cache.js.map +1 -0
- package/lib/cjs/utils/fs.d.ts +3 -0
- package/lib/cjs/utils/fs.d.ts.map +1 -0
- package/lib/cjs/utils/fs.js +36 -0
- package/lib/cjs/utils/fs.js.map +1 -0
- package/lib/cjs/utils/matchers.d.ts +1 -0
- package/lib/cjs/utils/matchers.d.ts.map +1 -1
- package/lib/cjs/utils/matchers.js +19 -8
- package/lib/cjs/utils/matchers.js.map +1 -1
- package/lib/cjs/utils/module.d.ts +3 -0
- package/lib/cjs/utils/module.d.ts.map +1 -0
- package/lib/cjs/utils/module.js +11 -0
- package/lib/cjs/utils/module.js.map +1 -0
- package/lib/cjs/utils/options.d.ts +9 -0
- package/lib/cjs/utils/options.d.ts.map +1 -0
- package/lib/cjs/utils/options.js +27 -0
- package/lib/cjs/utils/options.js.map +1 -0
- package/lib/cjs/utils/platform.d.ts.map +1 -0
- package/lib/cjs/utils/platform.js +7 -0
- package/lib/cjs/utils/platform.js.map +1 -0
- package/lib/cjs/utils/regex.js +3 -3
- package/lib/cjs/utils/regex.js.map +1 -1
- package/lib/cjs/utils/resolvers.d.ts.map +1 -0
- package/lib/cjs/utils/resolvers.js +38 -0
- package/lib/cjs/utils/resolvers.js.map +1 -0
- package/lib/cjs/utils/rule.js +19 -19
- package/lib/cjs/utils/rule.js.map +1 -1
- package/lib/cjs/utils/utils.d.ts +2 -10
- package/lib/cjs/utils/utils.d.ts.map +1 -1
- package/lib/cjs/utils/utils.js +7 -28
- package/lib/cjs/utils/utils.js.map +1 -1
- package/lib/cjs/utils/version.d.ts.map +1 -0
- package/lib/cjs/utils/version.js +37 -0
- package/lib/cjs/utils/version.js.map +1 -0
- package/lib/cjs/utils/worker.d.ts +3 -0
- package/lib/cjs/utils/worker.d.ts.map +1 -0
- package/lib/cjs/utils/worker.js +13 -0
- package/lib/cjs/utils/worker.js.map +1 -0
- package/lib/esm/api/defaults.d.ts +1 -1
- package/lib/esm/api/defaults.d.ts.map +1 -1
- package/lib/esm/async-utils/cache.d.ts +4 -0
- package/lib/esm/async-utils/cache.d.ts.map +1 -0
- package/lib/esm/async-utils/cache.js +25 -0
- package/lib/esm/async-utils/cache.js.map +1 -0
- package/lib/esm/async-utils/fs.d.ts +3 -0
- package/lib/esm/async-utils/fs.d.ts.map +1 -0
- package/lib/esm/{tailwind/utils/config.js → async-utils/fs.js} +11 -10
- package/lib/esm/async-utils/fs.js.map +1 -0
- package/lib/esm/async-utils/module.d.ts +3 -0
- package/lib/esm/async-utils/module.d.ts.map +1 -0
- package/lib/esm/{tailwind/utils → async-utils}/module.js +3 -0
- package/lib/esm/async-utils/module.js.map +1 -0
- package/lib/esm/async-utils/platform.d.ts +2 -0
- package/lib/esm/async-utils/platform.d.ts.map +1 -0
- package/lib/esm/async-utils/platform.js.map +1 -0
- package/lib/esm/async-utils/resolvers.d.ts +6 -0
- package/lib/esm/async-utils/resolvers.d.ts.map +1 -0
- package/lib/esm/{tailwind/utils → async-utils}/resolvers.js +1 -0
- package/lib/esm/async-utils/resolvers.js.map +1 -0
- package/lib/esm/async-utils/version.d.ts +15 -0
- package/lib/esm/async-utils/version.d.ts.map +1 -0
- package/lib/esm/{tailwind/utils → async-utils}/version.js +10 -4
- package/lib/esm/async-utils/version.js.map +1 -0
- package/lib/esm/async-utils/worker.d.ts +3 -0
- package/lib/esm/async-utils/worker.d.ts.map +1 -0
- package/lib/esm/async-utils/worker.js +10 -0
- package/lib/esm/async-utils/worker.js.map +1 -0
- package/lib/esm/options/callees/tv.d.ts +12 -0
- package/lib/esm/options/callees/tv.d.ts.map +1 -1
- package/lib/esm/options/callees/tv.js +31 -1
- package/lib/esm/options/callees/tv.js.map +1 -1
- package/lib/esm/parsers/angular.d.ts.map +1 -1
- package/lib/esm/parsers/angular.js +19 -29
- package/lib/esm/parsers/angular.js.map +1 -1
- package/lib/esm/parsers/es.d.ts.map +1 -1
- package/lib/esm/parsers/es.js +31 -48
- package/lib/esm/parsers/es.js.map +1 -1
- package/lib/esm/parsers/svelte.d.ts.map +1 -1
- package/lib/esm/parsers/svelte.js +31 -48
- package/lib/esm/parsers/svelte.js.map +1 -1
- package/lib/esm/parsers/vue.d.ts.map +1 -1
- package/lib/esm/parsers/vue.js +31 -48
- package/lib/esm/parsers/vue.js.map +1 -1
- package/lib/esm/rules/enforce-consistent-variable-syntax.d.ts.map +1 -1
- package/lib/esm/rules/enforce-consistent-variable-syntax.js +2 -1
- package/lib/esm/rules/enforce-consistent-variable-syntax.js.map +1 -1
- package/lib/esm/rules/multiline.d.ts +2 -0
- package/lib/esm/rules/multiline.d.ts.map +1 -1
- package/lib/esm/rules/multiline.js +19 -11
- package/lib/esm/rules/multiline.js.map +1 -1
- package/lib/esm/rules/no-conflicting-classes.d.ts.map +1 -1
- package/lib/esm/rules/no-conflicting-classes.js +5 -5
- package/lib/esm/rules/no-conflicting-classes.js.map +1 -1
- package/lib/esm/rules/no-duplicate-classes.d.ts +1 -3
- package/lib/esm/rules/no-duplicate-classes.d.ts.map +1 -1
- package/lib/esm/rules/no-duplicate-classes.js +2 -1
- package/lib/esm/rules/no-duplicate-classes.js.map +1 -1
- package/lib/esm/rules/no-restricted-classes.d.ts.map +1 -1
- package/lib/esm/rules/no-restricted-classes.js +2 -1
- package/lib/esm/rules/no-restricted-classes.js.map +1 -1
- package/lib/esm/rules/no-unnecessary-whitespace.d.ts.map +1 -1
- package/lib/esm/rules/no-unnecessary-whitespace.js +2 -1
- package/lib/esm/rules/no-unnecessary-whitespace.js.map +1 -1
- package/lib/esm/rules/no-unregistered-classes.d.ts +3 -1
- package/lib/esm/rules/no-unregistered-classes.d.ts.map +1 -1
- package/lib/esm/rules/no-unregistered-classes.js +27 -11
- package/lib/esm/rules/no-unregistered-classes.js.map +1 -1
- package/lib/esm/rules/sort-classes.d.ts.map +1 -1
- package/lib/esm/rules/sort-classes.js +7 -7
- package/lib/esm/rules/sort-classes.js.map +1 -1
- package/lib/esm/tailwindcss/class-order.async.v3.d.ts +2 -0
- package/lib/esm/tailwindcss/class-order.async.v3.d.ts.map +1 -0
- package/lib/esm/tailwindcss/class-order.async.v3.js +7 -0
- package/lib/esm/tailwindcss/class-order.async.v3.js.map +1 -0
- package/lib/esm/tailwindcss/class-order.async.v4.d.ts +2 -0
- package/lib/esm/tailwindcss/class-order.async.v4.d.ts.map +1 -0
- package/lib/esm/tailwindcss/class-order.async.v4.js +7 -0
- package/lib/esm/tailwindcss/class-order.async.v4.js.map +1 -0
- package/lib/esm/tailwindcss/class-order.d.ts +14 -0
- package/lib/esm/tailwindcss/class-order.d.ts.map +1 -0
- package/lib/esm/tailwindcss/class-order.js +21 -0
- package/lib/esm/tailwindcss/class-order.js.map +1 -0
- package/lib/esm/tailwindcss/config.d.ts +16 -0
- package/lib/esm/tailwindcss/config.d.ts.map +1 -0
- package/lib/esm/tailwindcss/config.js +47 -0
- package/lib/esm/tailwindcss/config.js.map +1 -0
- package/lib/esm/tailwindcss/config.v3.d.ts +2 -0
- package/lib/esm/tailwindcss/config.v3.d.ts.map +1 -0
- package/lib/esm/{tailwind/v3/config.js → tailwindcss/config.v3.js} +3 -3
- package/lib/esm/tailwindcss/config.v3.js.map +1 -0
- package/lib/esm/tailwindcss/config.v4.d.ts +3 -0
- package/lib/esm/tailwindcss/config.v4.d.ts.map +1 -0
- package/lib/esm/tailwindcss/config.v4.js +16 -0
- package/lib/esm/tailwindcss/config.v4.js.map +1 -0
- package/lib/esm/tailwindcss/conflicting-classes.async.v3.d.ts +2 -0
- package/lib/esm/tailwindcss/conflicting-classes.async.v3.d.ts.map +1 -0
- package/lib/esm/tailwindcss/conflicting-classes.async.v3.js +5 -0
- package/lib/esm/tailwindcss/conflicting-classes.async.v3.js.map +1 -0
- package/lib/esm/{tailwind/v4/conflicting-classes.d.ts → tailwindcss/conflicting-classes.async.v4.d.ts} +1 -3
- package/lib/esm/tailwindcss/conflicting-classes.async.v4.d.ts.map +1 -0
- package/lib/{cjs/tailwind/v4/conflicting-classes.js → esm/tailwindcss/conflicting-classes.async.v4.js} +7 -26
- package/lib/esm/tailwindcss/conflicting-classes.async.v4.js.map +1 -0
- package/lib/esm/tailwindcss/conflicting-classes.d.ts +22 -0
- package/lib/esm/tailwindcss/conflicting-classes.d.ts.map +1 -0
- package/lib/esm/tailwindcss/conflicting-classes.js +22 -0
- package/lib/esm/tailwindcss/conflicting-classes.js.map +1 -0
- package/lib/esm/tailwindcss/context.async.d.ts +2 -0
- package/lib/esm/tailwindcss/context.async.d.ts.map +1 -0
- package/lib/esm/tailwindcss/context.async.js +13 -0
- package/lib/esm/tailwindcss/context.async.js.map +1 -0
- package/lib/esm/tailwindcss/context.async.v3.d.ts +2 -0
- package/lib/esm/tailwindcss/context.async.v3.d.ts.map +1 -0
- package/lib/esm/tailwindcss/context.async.v3.js +16 -0
- package/lib/esm/tailwindcss/context.async.v3.js.map +1 -0
- package/lib/esm/tailwindcss/context.async.v4.d.ts +2 -0
- package/lib/esm/tailwindcss/context.async.v4.d.ts.map +1 -0
- package/lib/esm/{tailwind/v4/context.js → tailwindcss/context.async.v4.js} +45 -49
- package/lib/esm/tailwindcss/context.async.v4.js.map +1 -0
- package/lib/esm/tailwindcss/custom-component-classes.async.d.ts +2 -0
- package/lib/esm/tailwindcss/custom-component-classes.async.d.ts.map +1 -0
- package/lib/esm/tailwindcss/custom-component-classes.async.js +8 -0
- package/lib/esm/tailwindcss/custom-component-classes.async.js.map +1 -0
- package/lib/esm/tailwindcss/custom-component-classes.async.v3.d.ts +3 -0
- package/lib/esm/tailwindcss/custom-component-classes.async.v3.d.ts.map +1 -0
- package/lib/esm/tailwindcss/custom-component-classes.async.v3.js +4 -0
- package/lib/esm/tailwindcss/custom-component-classes.async.v3.js.map +1 -0
- package/lib/esm/tailwindcss/custom-component-classes.async.v4.d.ts +3 -0
- package/lib/esm/tailwindcss/custom-component-classes.async.v4.d.ts.map +1 -0
- package/lib/esm/tailwindcss/custom-component-classes.async.v4.js +32 -0
- package/lib/esm/tailwindcss/custom-component-classes.async.v4.js.map +1 -0
- package/lib/esm/tailwindcss/custom-component-classes.d.ts +9 -0
- package/lib/esm/tailwindcss/custom-component-classes.d.ts.map +1 -0
- package/lib/esm/tailwindcss/custom-component-classes.js +22 -0
- package/lib/esm/tailwindcss/custom-component-classes.js.map +1 -0
- package/lib/esm/tailwindcss/custom-component-classes.v3.d.ts +3 -0
- package/lib/esm/tailwindcss/custom-component-classes.v3.d.ts.map +1 -0
- package/lib/esm/tailwindcss/custom-component-classes.v3.js +4 -0
- package/lib/esm/tailwindcss/custom-component-classes.v3.js.map +1 -0
- package/lib/esm/tailwindcss/custom-component-classes.v4.d.ts +3 -0
- package/lib/esm/tailwindcss/custom-component-classes.v4.d.ts.map +1 -0
- package/lib/esm/tailwindcss/custom-component-classes.v4.js +33 -0
- package/lib/esm/tailwindcss/custom-component-classes.v4.js.map +1 -0
- package/lib/esm/tailwindcss/prefix.async.v3.d.ts +2 -0
- package/lib/esm/tailwindcss/prefix.async.v3.d.ts.map +1 -0
- package/lib/esm/tailwindcss/prefix.async.v3.js +7 -0
- package/lib/esm/tailwindcss/prefix.async.v3.js.map +1 -0
- package/lib/esm/tailwindcss/prefix.async.v4.d.ts +2 -0
- package/lib/esm/tailwindcss/prefix.async.v4.d.ts.map +1 -0
- package/lib/esm/tailwindcss/prefix.async.v4.js +7 -0
- package/lib/esm/tailwindcss/prefix.async.v4.js.map +1 -0
- package/lib/esm/tailwindcss/prefix.d.ts +13 -0
- package/lib/esm/tailwindcss/prefix.d.ts.map +1 -0
- package/lib/esm/tailwindcss/prefix.js +28 -0
- package/lib/esm/tailwindcss/prefix.js.map +1 -0
- package/lib/esm/tailwindcss/unregistered-classes.async.v3.d.ts +2 -0
- package/lib/esm/tailwindcss/unregistered-classes.async.v3.d.ts.map +1 -0
- package/lib/esm/tailwindcss/unregistered-classes.async.v3.js +11 -0
- package/lib/esm/tailwindcss/unregistered-classes.async.v3.js.map +1 -0
- package/lib/esm/tailwindcss/unregistered-classes.async.v4.d.ts +2 -0
- package/lib/esm/tailwindcss/unregistered-classes.async.v4.d.ts.map +1 -0
- package/lib/esm/tailwindcss/unregistered-classes.async.v4.js +8 -0
- package/lib/esm/tailwindcss/unregistered-classes.async.v4.js.map +1 -0
- package/lib/esm/tailwindcss/unregistered-classes.d.ts +14 -0
- package/lib/esm/tailwindcss/unregistered-classes.d.ts.map +1 -0
- package/lib/esm/tailwindcss/unregistered-classes.js +21 -0
- package/lib/esm/tailwindcss/unregistered-classes.js.map +1 -0
- package/lib/esm/types/async.d.ts +2 -0
- package/lib/esm/types/async.d.ts.map +1 -0
- package/lib/esm/types/async.js +2 -0
- package/lib/esm/types/async.js.map +1 -0
- package/lib/esm/utils/cache.d.ts +4 -0
- package/lib/esm/utils/cache.d.ts.map +1 -0
- package/lib/esm/utils/cache.js +25 -0
- package/lib/esm/utils/cache.js.map +1 -0
- package/lib/esm/utils/fs.d.ts +3 -0
- package/lib/esm/utils/fs.d.ts.map +1 -0
- package/lib/esm/utils/fs.js +32 -0
- package/lib/esm/utils/fs.js.map +1 -0
- package/lib/esm/utils/matchers.d.ts +1 -0
- package/lib/esm/utils/matchers.d.ts.map +1 -1
- package/lib/esm/utils/matchers.js +10 -0
- package/lib/esm/utils/matchers.js.map +1 -1
- package/lib/esm/utils/module.d.ts +3 -0
- package/lib/esm/utils/module.d.ts.map +1 -0
- package/lib/esm/utils/module.js +7 -0
- package/lib/esm/utils/module.js.map +1 -0
- package/lib/esm/utils/options.d.ts +9 -0
- package/lib/esm/utils/options.d.ts.map +1 -0
- package/lib/esm/utils/options.js +24 -0
- package/lib/esm/utils/options.js.map +1 -0
- package/lib/esm/utils/platform.d.ts +2 -0
- package/lib/esm/utils/platform.d.ts.map +1 -0
- package/lib/esm/utils/platform.js +4 -0
- package/lib/esm/utils/platform.js.map +1 -0
- package/lib/esm/utils/resolvers.d.ts +6 -0
- package/lib/esm/utils/resolvers.d.ts.map +1 -0
- package/lib/esm/utils/resolvers.js +32 -0
- package/lib/esm/utils/resolvers.js.map +1 -0
- package/lib/esm/utils/utils.d.ts +2 -10
- package/lib/esm/utils/utils.d.ts.map +1 -1
- package/lib/esm/utils/utils.js +7 -27
- package/lib/esm/utils/utils.js.map +1 -1
- package/lib/esm/utils/version.d.ts +15 -0
- package/lib/esm/utils/version.d.ts.map +1 -0
- package/lib/esm/utils/version.js +36 -0
- package/lib/esm/utils/version.js.map +1 -0
- package/lib/esm/utils/worker.d.ts +3 -0
- package/lib/esm/utils/worker.d.ts.map +1 -0
- package/lib/esm/utils/worker.js +10 -0
- package/lib/esm/utils/worker.js.map +1 -0
- package/package.json +18 -15
- package/lib/cjs/rules/tailwind-multiline.d.ts +0 -13
- package/lib/cjs/rules/tailwind-multiline.d.ts.map +0 -1
- package/lib/cjs/rules/tailwind-multiline.js +0 -558
- package/lib/cjs/rules/tailwind-multiline.js.map +0 -1
- package/lib/cjs/rules/tailwind-no-conflicting-classes.d.ts +0 -18
- package/lib/cjs/rules/tailwind-no-conflicting-classes.d.ts.map +0 -1
- package/lib/cjs/rules/tailwind-no-conflicting-classes.js +0 -87
- package/lib/cjs/rules/tailwind-no-conflicting-classes.js.map +0 -1
- package/lib/cjs/rules/tailwind-no-duplicate-classes.d.ts +0 -8
- package/lib/cjs/rules/tailwind-no-duplicate-classes.d.ts.map +0 -1
- package/lib/cjs/rules/tailwind-no-duplicate-classes.js +0 -121
- package/lib/cjs/rules/tailwind-no-duplicate-classes.js.map +0 -1
- package/lib/cjs/rules/tailwind-no-unnecessary-whitespace.d.ts +0 -8
- package/lib/cjs/rules/tailwind-no-unnecessary-whitespace.d.ts.map +0 -1
- package/lib/cjs/rules/tailwind-no-unnecessary-whitespace.js +0 -119
- package/lib/cjs/rules/tailwind-no-unnecessary-whitespace.js.map +0 -1
- package/lib/cjs/rules/tailwind-no-unregistered-classes.d.ts +0 -20
- package/lib/cjs/rules/tailwind-no-unregistered-classes.d.ts.map +0 -1
- package/lib/cjs/rules/tailwind-no-unregistered-classes.js +0 -90
- package/lib/cjs/rules/tailwind-no-unregistered-classes.js.map +0 -1
- package/lib/cjs/rules/tailwind-sort-classes.d.ts +0 -19
- package/lib/cjs/rules/tailwind-sort-classes.d.ts.map +0 -1
- package/lib/cjs/rules/tailwind-sort-classes.js +0 -157
- package/lib/cjs/rules/tailwind-sort-classes.js.map +0 -1
- package/lib/cjs/tailwind/api/interface.d.ts +0 -29
- package/lib/cjs/tailwind/api/interface.d.ts.map +0 -1
- package/lib/cjs/tailwind/api/interface.js.map +0 -1
- package/lib/cjs/tailwind/async/class-order.async.d.ts +0 -2
- package/lib/cjs/tailwind/async/class-order.async.d.ts.map +0 -1
- package/lib/cjs/tailwind/async/class-order.async.js.map +0 -1
- package/lib/cjs/tailwind/async/class-order.sync.d.ts +0 -3
- package/lib/cjs/tailwind/async/class-order.sync.d.ts.map +0 -1
- package/lib/cjs/tailwind/async/class-order.sync.js +0 -32
- package/lib/cjs/tailwind/async/class-order.sync.js.map +0 -1
- package/lib/cjs/tailwind/async/class-variant.async.d.ts +0 -2
- package/lib/cjs/tailwind/async/class-variant.async.d.ts.map +0 -1
- package/lib/cjs/tailwind/async/class-variant.async.js +0 -42
- package/lib/cjs/tailwind/async/class-variant.async.js.map +0 -1
- package/lib/cjs/tailwind/async/class-variant.sync.d.ts +0 -3
- package/lib/cjs/tailwind/async/class-variant.sync.d.ts.map +0 -1
- package/lib/cjs/tailwind/async/class-variant.sync.js +0 -32
- package/lib/cjs/tailwind/async/class-variant.sync.js.map +0 -1
- package/lib/cjs/tailwind/async/conflicting-classes.async.d.ts +0 -2
- package/lib/cjs/tailwind/async/conflicting-classes.async.d.ts.map +0 -1
- package/lib/cjs/tailwind/async/conflicting-classes.async.js.map +0 -1
- package/lib/cjs/tailwind/async/conflicting-classes.sync.d.ts +0 -3
- package/lib/cjs/tailwind/async/conflicting-classes.sync.d.ts.map +0 -1
- package/lib/cjs/tailwind/async/conflicting-classes.sync.js +0 -32
- package/lib/cjs/tailwind/async/conflicting-classes.sync.js.map +0 -1
- package/lib/cjs/tailwind/async/unregistered-classes.async.d.ts +0 -2
- package/lib/cjs/tailwind/async/unregistered-classes.async.d.ts.map +0 -1
- package/lib/cjs/tailwind/async/unregistered-classes.async.js +0 -42
- package/lib/cjs/tailwind/async/unregistered-classes.async.js.map +0 -1
- package/lib/cjs/tailwind/async/unregistered-classes.sync.d.ts +0 -3
- package/lib/cjs/tailwind/async/unregistered-classes.sync.d.ts.map +0 -1
- package/lib/cjs/tailwind/async/unregistered-classes.sync.js +0 -32
- package/lib/cjs/tailwind/async/unregistered-classes.sync.js.map +0 -1
- package/lib/cjs/tailwind/utils/config.d.ts +0 -7
- package/lib/cjs/tailwind/utils/config.d.ts.map +0 -1
- package/lib/cjs/tailwind/utils/config.js.map +0 -1
- package/lib/cjs/tailwind/utils/invalidate.d.ts +0 -5
- package/lib/cjs/tailwind/utils/invalidate.d.ts.map +0 -1
- package/lib/cjs/tailwind/utils/invalidate.js +0 -19
- package/lib/cjs/tailwind/utils/invalidate.js.map +0 -1
- package/lib/cjs/tailwind/utils/module.d.ts +0 -2
- package/lib/cjs/tailwind/utils/module.d.ts.map +0 -1
- package/lib/cjs/tailwind/utils/module.js.map +0 -1
- package/lib/cjs/tailwind/utils/platform.d.ts.map +0 -1
- package/lib/cjs/tailwind/utils/platform.js.map +0 -1
- package/lib/cjs/tailwind/utils/resolvers.d.ts.map +0 -1
- package/lib/cjs/tailwind/utils/resolvers.js.map +0 -1
- package/lib/cjs/tailwind/utils/stream.d.ts +0 -2
- package/lib/cjs/tailwind/utils/stream.d.ts.map +0 -1
- package/lib/cjs/tailwind/utils/stream.js +0 -27
- package/lib/cjs/tailwind/utils/stream.js.map +0 -1
- package/lib/cjs/tailwind/utils/version.d.ts.map +0 -1
- package/lib/cjs/tailwind/utils/version.js.map +0 -1
- package/lib/cjs/tailwind/v3/class-order.d.ts +0 -3
- package/lib/cjs/tailwind/v3/class-order.d.ts.map +0 -1
- package/lib/cjs/tailwind/v3/class-order.js +0 -18
- package/lib/cjs/tailwind/v3/class-order.js.map +0 -1
- package/lib/cjs/tailwind/v3/class-variant.d.ts +0 -3
- package/lib/cjs/tailwind/v3/class-variant.d.ts.map +0 -1
- package/lib/cjs/tailwind/v3/class-variant.js +0 -11
- package/lib/cjs/tailwind/v3/class-variant.js.map +0 -1
- package/lib/cjs/tailwind/v3/config.d.ts +0 -5
- package/lib/cjs/tailwind/v3/config.d.ts.map +0 -1
- package/lib/cjs/tailwind/v3/config.js.map +0 -1
- package/lib/cjs/tailwind/v3/conflicting-classes.d.ts +0 -3
- package/lib/cjs/tailwind/v3/conflicting-classes.d.ts.map +0 -1
- package/lib/cjs/tailwind/v3/conflicting-classes.js +0 -57
- package/lib/cjs/tailwind/v3/conflicting-classes.js.map +0 -1
- package/lib/cjs/tailwind/v3/context.d.ts +0 -126
- package/lib/cjs/tailwind/v3/context.d.ts.map +0 -1
- package/lib/cjs/tailwind/v3/context.js.map +0 -1
- package/lib/cjs/tailwind/v3/index.d.ts +0 -2
- package/lib/cjs/tailwind/v3/index.d.ts.map +0 -1
- package/lib/cjs/tailwind/v3/index.js +0 -6
- package/lib/cjs/tailwind/v3/index.js.map +0 -1
- package/lib/cjs/tailwind/v3/unregistered-classes.d.ts +0 -3
- package/lib/cjs/tailwind/v3/unregistered-classes.d.ts.map +0 -1
- package/lib/cjs/tailwind/v3/unregistered-classes.js +0 -56
- package/lib/cjs/tailwind/v3/unregistered-classes.js.map +0 -1
- package/lib/cjs/tailwind/v4/class-order.d.ts +0 -3
- package/lib/cjs/tailwind/v4/class-order.d.ts.map +0 -1
- package/lib/cjs/tailwind/v4/class-order.js +0 -26
- package/lib/cjs/tailwind/v4/class-order.js.map +0 -1
- package/lib/cjs/tailwind/v4/class-variant.d.ts +0 -3
- package/lib/cjs/tailwind/v4/class-variant.d.ts.map +0 -1
- package/lib/cjs/tailwind/v4/class-variant.js +0 -11
- package/lib/cjs/tailwind/v4/class-variant.js.map +0 -1
- package/lib/cjs/tailwind/v4/config.d.ts +0 -9
- package/lib/cjs/tailwind/v4/config.d.ts.map +0 -1
- package/lib/cjs/tailwind/v4/config.js +0 -20
- package/lib/cjs/tailwind/v4/config.js.map +0 -1
- package/lib/cjs/tailwind/v4/conflicting-classes.d.ts.map +0 -1
- package/lib/cjs/tailwind/v4/conflicting-classes.js.map +0 -1
- package/lib/cjs/tailwind/v4/context.d.ts +0 -2
- package/lib/cjs/tailwind/v4/context.d.ts.map +0 -1
- package/lib/cjs/tailwind/v4/context.js.map +0 -1
- package/lib/cjs/tailwind/v4/index.d.ts +0 -2
- package/lib/cjs/tailwind/v4/index.d.ts.map +0 -1
- package/lib/cjs/tailwind/v4/index.js +0 -6
- package/lib/cjs/tailwind/v4/index.js.map +0 -1
- package/lib/cjs/tailwind/v4/unregistered-classes.d.ts +0 -3
- package/lib/cjs/tailwind/v4/unregistered-classes.d.ts.map +0 -1
- package/lib/cjs/tailwind/v4/unregistered-classes.js +0 -28
- package/lib/cjs/tailwind/v4/unregistered-classes.js.map +0 -1
- package/lib/esm/rules/tailwind-multiline.d.ts +0 -13
- package/lib/esm/rules/tailwind-multiline.d.ts.map +0 -1
- package/lib/esm/rules/tailwind-multiline.js +0 -555
- package/lib/esm/rules/tailwind-multiline.js.map +0 -1
- package/lib/esm/rules/tailwind-no-conflicting-classes.d.ts +0 -18
- package/lib/esm/rules/tailwind-no-conflicting-classes.d.ts.map +0 -1
- package/lib/esm/rules/tailwind-no-conflicting-classes.js +0 -83
- package/lib/esm/rules/tailwind-no-conflicting-classes.js.map +0 -1
- package/lib/esm/rules/tailwind-no-duplicate-classes.d.ts +0 -8
- package/lib/esm/rules/tailwind-no-duplicate-classes.d.ts.map +0 -1
- package/lib/esm/rules/tailwind-no-duplicate-classes.js +0 -118
- package/lib/esm/rules/tailwind-no-duplicate-classes.js.map +0 -1
- package/lib/esm/rules/tailwind-no-unnecessary-whitespace.d.ts +0 -8
- package/lib/esm/rules/tailwind-no-unnecessary-whitespace.d.ts.map +0 -1
- package/lib/esm/rules/tailwind-no-unnecessary-whitespace.js +0 -116
- package/lib/esm/rules/tailwind-no-unnecessary-whitespace.js.map +0 -1
- package/lib/esm/rules/tailwind-no-unregistered-classes.d.ts +0 -20
- package/lib/esm/rules/tailwind-no-unregistered-classes.d.ts.map +0 -1
- package/lib/esm/rules/tailwind-no-unregistered-classes.js +0 -86
- package/lib/esm/rules/tailwind-no-unregistered-classes.js.map +0 -1
- package/lib/esm/rules/tailwind-sort-classes.d.ts +0 -19
- package/lib/esm/rules/tailwind-sort-classes.d.ts.map +0 -1
- package/lib/esm/rules/tailwind-sort-classes.js +0 -153
- package/lib/esm/rules/tailwind-sort-classes.js.map +0 -1
- package/lib/esm/tailwind/api/interface.d.ts +0 -29
- package/lib/esm/tailwind/api/interface.d.ts.map +0 -1
- package/lib/esm/tailwind/api/interface.js +0 -2
- package/lib/esm/tailwind/api/interface.js.map +0 -1
- package/lib/esm/tailwind/async/class-order.async.d.ts +0 -2
- package/lib/esm/tailwind/async/class-order.async.d.ts.map +0 -1
- package/lib/esm/tailwind/async/class-order.async.js +0 -7
- package/lib/esm/tailwind/async/class-order.async.js.map +0 -1
- package/lib/esm/tailwind/async/class-order.sync.d.ts +0 -3
- package/lib/esm/tailwind/async/class-order.sync.d.ts.map +0 -1
- package/lib/esm/tailwind/async/class-order.sync.js +0 -29
- package/lib/esm/tailwind/async/class-order.sync.js.map +0 -1
- package/lib/esm/tailwind/async/class-variant.async.d.ts +0 -2
- package/lib/esm/tailwind/async/class-variant.async.d.ts.map +0 -1
- package/lib/esm/tailwind/async/class-variant.async.js +0 -7
- package/lib/esm/tailwind/async/class-variant.async.js.map +0 -1
- package/lib/esm/tailwind/async/class-variant.sync.d.ts +0 -3
- package/lib/esm/tailwind/async/class-variant.sync.d.ts.map +0 -1
- package/lib/esm/tailwind/async/class-variant.sync.js +0 -29
- package/lib/esm/tailwind/async/class-variant.sync.js.map +0 -1
- package/lib/esm/tailwind/async/conflicting-classes.async.d.ts +0 -2
- package/lib/esm/tailwind/async/conflicting-classes.async.d.ts.map +0 -1
- package/lib/esm/tailwind/async/conflicting-classes.async.js +0 -7
- package/lib/esm/tailwind/async/conflicting-classes.async.js.map +0 -1
- package/lib/esm/tailwind/async/conflicting-classes.sync.d.ts +0 -3
- package/lib/esm/tailwind/async/conflicting-classes.sync.d.ts.map +0 -1
- package/lib/esm/tailwind/async/conflicting-classes.sync.js +0 -29
- package/lib/esm/tailwind/async/conflicting-classes.sync.js.map +0 -1
- package/lib/esm/tailwind/async/unregistered-classes.async.d.ts +0 -2
- package/lib/esm/tailwind/async/unregistered-classes.async.d.ts.map +0 -1
- package/lib/esm/tailwind/async/unregistered-classes.async.js +0 -7
- package/lib/esm/tailwind/async/unregistered-classes.async.js.map +0 -1
- package/lib/esm/tailwind/async/unregistered-classes.sync.d.ts +0 -3
- package/lib/esm/tailwind/async/unregistered-classes.sync.d.ts.map +0 -1
- package/lib/esm/tailwind/async/unregistered-classes.sync.js +0 -29
- package/lib/esm/tailwind/async/unregistered-classes.sync.js.map +0 -1
- package/lib/esm/tailwind/utils/config.d.ts +0 -7
- package/lib/esm/tailwind/utils/config.d.ts.map +0 -1
- package/lib/esm/tailwind/utils/config.js.map +0 -1
- package/lib/esm/tailwind/utils/invalidate.d.ts +0 -5
- package/lib/esm/tailwind/utils/invalidate.d.ts.map +0 -1
- package/lib/esm/tailwind/utils/invalidate.js +0 -16
- package/lib/esm/tailwind/utils/invalidate.js.map +0 -1
- package/lib/esm/tailwind/utils/module.d.ts +0 -2
- package/lib/esm/tailwind/utils/module.d.ts.map +0 -1
- package/lib/esm/tailwind/utils/module.js.map +0 -1
- package/lib/esm/tailwind/utils/platform.d.ts.map +0 -1
- package/lib/esm/tailwind/utils/platform.js.map +0 -1
- package/lib/esm/tailwind/utils/resolvers.d.ts.map +0 -1
- package/lib/esm/tailwind/utils/resolvers.js.map +0 -1
- package/lib/esm/tailwind/utils/stream.d.ts +0 -2
- package/lib/esm/tailwind/utils/stream.d.ts.map +0 -1
- package/lib/esm/tailwind/utils/stream.js +0 -24
- package/lib/esm/tailwind/utils/stream.js.map +0 -1
- package/lib/esm/tailwind/utils/version.d.ts.map +0 -1
- package/lib/esm/tailwind/utils/version.js.map +0 -1
- package/lib/esm/tailwind/v3/class-order.d.ts +0 -3
- package/lib/esm/tailwind/v3/class-order.d.ts.map +0 -1
- package/lib/esm/tailwind/v3/class-order.js +0 -15
- package/lib/esm/tailwind/v3/class-order.js.map +0 -1
- package/lib/esm/tailwind/v3/class-variant.d.ts +0 -3
- package/lib/esm/tailwind/v3/class-variant.d.ts.map +0 -1
- package/lib/esm/tailwind/v3/class-variant.js +0 -8
- package/lib/esm/tailwind/v3/class-variant.js.map +0 -1
- package/lib/esm/tailwind/v3/config.d.ts +0 -5
- package/lib/esm/tailwind/v3/config.d.ts.map +0 -1
- package/lib/esm/tailwind/v3/config.js.map +0 -1
- package/lib/esm/tailwind/v3/conflicting-classes.d.ts +0 -3
- package/lib/esm/tailwind/v3/conflicting-classes.d.ts.map +0 -1
- package/lib/esm/tailwind/v3/conflicting-classes.js +0 -21
- package/lib/esm/tailwind/v3/conflicting-classes.js.map +0 -1
- package/lib/esm/tailwind/v3/context.d.ts +0 -126
- package/lib/esm/tailwind/v3/context.d.ts.map +0 -1
- package/lib/esm/tailwind/v3/context.js +0 -20
- package/lib/esm/tailwind/v3/context.js.map +0 -1
- package/lib/esm/tailwind/v3/index.d.ts +0 -2
- package/lib/esm/tailwind/v3/index.d.ts.map +0 -1
- package/lib/esm/tailwind/v3/index.js +0 -2
- package/lib/esm/tailwind/v3/index.js.map +0 -1
- package/lib/esm/tailwind/v3/unregistered-classes.d.ts +0 -3
- package/lib/esm/tailwind/v3/unregistered-classes.d.ts.map +0 -1
- package/lib/esm/tailwind/v3/unregistered-classes.js +0 -20
- package/lib/esm/tailwind/v3/unregistered-classes.js.map +0 -1
- package/lib/esm/tailwind/v4/class-order.d.ts +0 -3
- package/lib/esm/tailwind/v4/class-order.d.ts.map +0 -1
- package/lib/esm/tailwind/v4/class-order.js +0 -23
- package/lib/esm/tailwind/v4/class-order.js.map +0 -1
- package/lib/esm/tailwind/v4/class-variant.d.ts +0 -3
- package/lib/esm/tailwind/v4/class-variant.d.ts.map +0 -1
- package/lib/esm/tailwind/v4/class-variant.js +0 -8
- package/lib/esm/tailwind/v4/class-variant.js.map +0 -1
- package/lib/esm/tailwind/v4/config.d.ts +0 -9
- package/lib/esm/tailwind/v4/config.d.ts.map +0 -1
- package/lib/esm/tailwind/v4/config.js +0 -16
- package/lib/esm/tailwind/v4/config.js.map +0 -1
- package/lib/esm/tailwind/v4/conflicting-classes.d.ts.map +0 -1
- package/lib/esm/tailwind/v4/conflicting-classes.js.map +0 -1
- package/lib/esm/tailwind/v4/context.d.ts +0 -2
- package/lib/esm/tailwind/v4/context.d.ts.map +0 -1
- package/lib/esm/tailwind/v4/context.js.map +0 -1
- package/lib/esm/tailwind/v4/index.d.ts +0 -2
- package/lib/esm/tailwind/v4/index.d.ts.map +0 -1
- package/lib/esm/tailwind/v4/index.js +0 -2
- package/lib/esm/tailwind/v4/index.js.map +0 -1
- package/lib/esm/tailwind/v4/unregistered-classes.d.ts +0 -3
- package/lib/esm/tailwind/v4/unregistered-classes.d.ts.map +0 -1
- package/lib/esm/tailwind/v4/unregistered-classes.js +0 -25
- package/lib/esm/tailwind/v4/unregistered-classes.js.map +0 -1
- /package/lib/cjs/{tailwind/utils → async-utils}/platform.d.ts +0 -0
- /package/lib/cjs/{tailwind/utils → async-utils}/platform.js +0 -0
- /package/lib/cjs/{tailwind/utils → async-utils}/resolvers.d.ts +0 -0
- /package/lib/cjs/{tailwind/utils → async-utils}/version.d.ts +0 -0
- /package/lib/{esm/tailwind → cjs}/utils/platform.d.ts +0 -0
- /package/lib/{esm/tailwind → cjs}/utils/resolvers.d.ts +0 -0
- /package/lib/{esm/tailwind → cjs}/utils/version.d.ts +0 -0
- /package/lib/esm/{tailwind/utils → async-utils}/platform.js +0 -0
|
@@ -1,83 +0,0 @@
|
|
|
1
|
-
import { getConflictingClasses } from "../tailwind/async/conflicting-classes.sync.js";
|
|
2
|
-
import { DEFAULT_ATTRIBUTE_NAMES, DEFAULT_CALLEE_NAMES, DEFAULT_TAG_NAMES, DEFAULT_VARIABLE_NAMES } from "../options/default-options.js";
|
|
3
|
-
import { ATTRIBUTE_SCHEMA, CALLEE_SCHEMA, ENTRYPOINT_SCHEMA, TAG_SCHEMA, TAILWIND_CONFIG_SCHEMA, VARIABLE_SCHEMA } from "../options/descriptions.js";
|
|
4
|
-
import { createRuleListener } from "../utils/rule.js";
|
|
5
|
-
import { augmentMessageWithWarnings, display, getCommonOptions, getExactClassLocation, splitClasses } from "../utils/utils.js";
|
|
6
|
-
const defaultOptions = {
|
|
7
|
-
attributes: DEFAULT_ATTRIBUTE_NAMES,
|
|
8
|
-
callees: DEFAULT_CALLEE_NAMES,
|
|
9
|
-
tags: DEFAULT_TAG_NAMES,
|
|
10
|
-
variables: DEFAULT_VARIABLE_NAMES
|
|
11
|
-
};
|
|
12
|
-
const DOCUMENTATION_URL = "https://github.com/schoero/eslint-plugin-better-tailwindcss/blob/main/docs/rules/no-conflicting-classes.md";
|
|
13
|
-
export const tailwindNoConflictingClasses = {
|
|
14
|
-
name: "no-conflicting-classes",
|
|
15
|
-
rule: {
|
|
16
|
-
create: ctx => createRuleListener(ctx, getOptions(ctx), lintLiterals),
|
|
17
|
-
meta: {
|
|
18
|
-
docs: {
|
|
19
|
-
description: "Disallow any css classes that are not registered in tailwindcss.",
|
|
20
|
-
recommended: false,
|
|
21
|
-
url: DOCUMENTATION_URL
|
|
22
|
-
},
|
|
23
|
-
fixable: "code",
|
|
24
|
-
schema: [
|
|
25
|
-
{
|
|
26
|
-
additionalProperties: false,
|
|
27
|
-
properties: {
|
|
28
|
-
...CALLEE_SCHEMA,
|
|
29
|
-
...ATTRIBUTE_SCHEMA,
|
|
30
|
-
...VARIABLE_SCHEMA,
|
|
31
|
-
...TAG_SCHEMA,
|
|
32
|
-
...ENTRYPOINT_SCHEMA,
|
|
33
|
-
...TAILWIND_CONFIG_SCHEMA
|
|
34
|
-
},
|
|
35
|
-
type: "object"
|
|
36
|
-
}
|
|
37
|
-
],
|
|
38
|
-
type: "problem"
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
};
|
|
42
|
-
function lintLiterals(ctx, literals) {
|
|
43
|
-
for (const literal of literals) {
|
|
44
|
-
const { tailwindConfig } = getOptions(ctx);
|
|
45
|
-
const classes = splitClasses(literal.content);
|
|
46
|
-
const [conflictingClasses, warnings] = getConflictingClasses({ classes, configPath: tailwindConfig, cwd: ctx.cwd });
|
|
47
|
-
const conflictingClassesWarnings = warnings.map(warning => ({ ...warning, url: DOCUMENTATION_URL }));
|
|
48
|
-
if (Object.keys(conflictingClasses).length === 0) {
|
|
49
|
-
continue;
|
|
50
|
-
}
|
|
51
|
-
for (const conflictingClass in conflictingClasses) {
|
|
52
|
-
const conflicts = conflictingClasses[conflictingClass];
|
|
53
|
-
const otherConflicts = conflicts.filter(conflict => conflict.tailwindClassName !== conflictingClass);
|
|
54
|
-
const conflict = conflicts.find(conflict => conflict.tailwindClassName === conflictingClass);
|
|
55
|
-
if (!conflict || otherConflicts.length === 0) {
|
|
56
|
-
continue;
|
|
57
|
-
}
|
|
58
|
-
ctx.report({
|
|
59
|
-
data: {
|
|
60
|
-
conflicting: display(conflict.tailwindClassName),
|
|
61
|
-
other: otherConflicts.reduce((otherConflicts, otherConflict) => {
|
|
62
|
-
if (otherConflict.tailwindClassName !== conflict.tailwindClassName) {
|
|
63
|
-
otherConflicts.push(`${otherConflict.tailwindClassName} -> (${otherConflict.cssPropertyName}: ${otherConflict.cssPropertyValue})`);
|
|
64
|
-
}
|
|
65
|
-
return otherConflicts;
|
|
66
|
-
}, []).join(", "),
|
|
67
|
-
property: conflict.cssPropertyName,
|
|
68
|
-
value: conflict.cssPropertyValue ?? ""
|
|
69
|
-
},
|
|
70
|
-
loc: getExactClassLocation(literal, conflict.tailwindClassName),
|
|
71
|
-
message: augmentMessageWithWarnings("Conflicting class detected: {{ conflicting }} -> ({{property}}: {{value}}) applies the same css property as {{ other }}", conflictingClassesWarnings)
|
|
72
|
-
});
|
|
73
|
-
}
|
|
74
|
-
}
|
|
75
|
-
}
|
|
76
|
-
export function getOptions(ctx) {
|
|
77
|
-
const options = ctx.options[0] ?? {};
|
|
78
|
-
const common = getCommonOptions(ctx);
|
|
79
|
-
return {
|
|
80
|
-
...common
|
|
81
|
-
};
|
|
82
|
-
}
|
|
83
|
-
//# sourceMappingURL=tailwind-no-conflicting-classes.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"tailwind-no-conflicting-classes.js","sourceRoot":"","sources":["../../../src/rules/tailwind-no-conflicting-classes.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import type { AttributeOption, CalleeOption, ESLintRule, TagOption, VariableOption } from "../types/rule.js";
|
|
2
|
-
export type Options = [
|
|
3
|
-
Partial<AttributeOption & CalleeOption & TagOption & VariableOption & {
|
|
4
|
-
allowMultiline?: boolean;
|
|
5
|
-
}>
|
|
6
|
-
];
|
|
7
|
-
export declare const tailwindNoDuplicateClasses: ESLintRule<Options>;
|
|
8
|
-
//# sourceMappingURL=tailwind-no-duplicate-classes.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"tailwind-no-duplicate-classes.d.ts","sourceRoot":"","sources":["../../../src/rules/tailwind-no-duplicate-classes.ts"],"names":[],"mappings":"AAwBA,OAAO,KAAK,EACV,eAAe,EACf,YAAY,EACZ,UAAU,EACV,SAAS,EACT,cAAc,EACf,MAAM,iCAAiC,CAAC;AAGzC,MAAM,MAAM,OAAO,GAAG;IACpB,OAAO,CACL,eAAe,GACf,YAAY,GACZ,SAAS,GACT,cAAc,GACd;QACE,cAAc,CAAC,EAAE,OAAO,CAAC;KAC1B,CACF;CACF,CAAC;AAWF,eAAO,MAAM,0BAA0B,EAAE,UAAU,CAAC,OAAO,CA2B1D,CAAC"}
|
|
@@ -1,118 +0,0 @@
|
|
|
1
|
-
import { DEFAULT_ATTRIBUTE_NAMES, DEFAULT_CALLEE_NAMES, DEFAULT_TAG_NAMES, DEFAULT_VARIABLE_NAMES } from "../options/default-options.js";
|
|
2
|
-
import { ATTRIBUTE_SCHEMA, CALLEE_SCHEMA, TAG_SCHEMA, VARIABLE_SCHEMA } from "../options/descriptions.js";
|
|
3
|
-
import { escapeNestedQuotes } from "../utils/quotes.js";
|
|
4
|
-
import { createRuleListener } from "../utils/rule.js";
|
|
5
|
-
import { getCommonOptions, getExactClassLocation, splitClasses, splitWhitespaces } from "../utils/utils.js";
|
|
6
|
-
const defaultOptions = {
|
|
7
|
-
attributes: DEFAULT_ATTRIBUTE_NAMES,
|
|
8
|
-
callees: DEFAULT_CALLEE_NAMES,
|
|
9
|
-
tags: DEFAULT_TAG_NAMES,
|
|
10
|
-
variables: DEFAULT_VARIABLE_NAMES
|
|
11
|
-
};
|
|
12
|
-
const DOCUMENTATION_URL = "https://github.com/schoero/eslint-plugin-readable-tailwind/blob/main/docs/rules/no-duplicate-classes.md";
|
|
13
|
-
export const tailwindNoDuplicateClasses = {
|
|
14
|
-
name: "no-duplicate-classes",
|
|
15
|
-
rule: {
|
|
16
|
-
create: ctx => createRuleListener(ctx, getOptions(ctx), lintLiterals),
|
|
17
|
-
meta: {
|
|
18
|
-
docs: {
|
|
19
|
-
category: "Stylistic Issues",
|
|
20
|
-
description: "Disallow duplicate class names in tailwind classes.",
|
|
21
|
-
recommended: true,
|
|
22
|
-
url: DOCUMENTATION_URL
|
|
23
|
-
},
|
|
24
|
-
fixable: "code",
|
|
25
|
-
schema: [
|
|
26
|
-
{
|
|
27
|
-
additionalProperties: false,
|
|
28
|
-
properties: {
|
|
29
|
-
...CALLEE_SCHEMA,
|
|
30
|
-
...ATTRIBUTE_SCHEMA,
|
|
31
|
-
...VARIABLE_SCHEMA,
|
|
32
|
-
...TAG_SCHEMA
|
|
33
|
-
},
|
|
34
|
-
type: "object"
|
|
35
|
-
}
|
|
36
|
-
],
|
|
37
|
-
type: "layout"
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
};
|
|
41
|
-
function lintLiterals(ctx, literals) {
|
|
42
|
-
for (const literal of literals) {
|
|
43
|
-
const parentClasses = literal.priorLiterals
|
|
44
|
-
? getClassesFromLiteralNodes(literal.priorLiterals)
|
|
45
|
-
: [];
|
|
46
|
-
const duplicates = [];
|
|
47
|
-
const classes = literal.content;
|
|
48
|
-
const classChunks = splitClasses(classes);
|
|
49
|
-
const whitespaceChunks = splitWhitespaces(classes);
|
|
50
|
-
const finalChunks = [];
|
|
51
|
-
const startsWithWhitespace = whitespaceChunks.length > 0 && whitespaceChunks[0] !== "";
|
|
52
|
-
const endsWithWhitespace = whitespaceChunks.length > 0 && whitespaceChunks[whitespaceChunks.length - 1] !== "";
|
|
53
|
-
for (let i = 0; i < whitespaceChunks.length; i++) {
|
|
54
|
-
if (whitespaceChunks[i]) {
|
|
55
|
-
finalChunks.push(whitespaceChunks[i]);
|
|
56
|
-
}
|
|
57
|
-
if (classChunks[i]) {
|
|
58
|
-
// always push sticky classes without adding to the register
|
|
59
|
-
if (!startsWithWhitespace && i === 0 && literal.closingBraces ||
|
|
60
|
-
!endsWithWhitespace && i === classChunks.length - 1 && literal.openingBraces) {
|
|
61
|
-
finalChunks.push(classChunks[i]);
|
|
62
|
-
continue;
|
|
63
|
-
}
|
|
64
|
-
if (parentClasses.includes(classChunks[i])) {
|
|
65
|
-
if (!duplicates.includes(classChunks[i])) {
|
|
66
|
-
duplicates.push(classChunks[i]);
|
|
67
|
-
}
|
|
68
|
-
}
|
|
69
|
-
else {
|
|
70
|
-
finalChunks.push(classChunks[i]);
|
|
71
|
-
parentClasses.push(classChunks[i]);
|
|
72
|
-
}
|
|
73
|
-
}
|
|
74
|
-
}
|
|
75
|
-
const escapedClasses = escapeNestedQuotes(finalChunks.join(""), literal.openingQuote ?? literal.closingQuote ?? "\"");
|
|
76
|
-
const fixedClasses = [
|
|
77
|
-
literal.openingQuote ?? "",
|
|
78
|
-
literal.type === "TemplateLiteral" && literal.closingBraces ? literal.closingBraces : "",
|
|
79
|
-
escapedClasses,
|
|
80
|
-
literal.type === "TemplateLiteral" && literal.openingBraces ? literal.openingBraces : "",
|
|
81
|
-
literal.closingQuote ?? ""
|
|
82
|
-
].join("");
|
|
83
|
-
if (literal.raw === fixedClasses) {
|
|
84
|
-
continue;
|
|
85
|
-
}
|
|
86
|
-
for (const className of duplicates) {
|
|
87
|
-
ctx.report({
|
|
88
|
-
data: {
|
|
89
|
-
duplicateClassname: className
|
|
90
|
-
},
|
|
91
|
-
fix(fixer) {
|
|
92
|
-
return fixer.replaceTextRange(literal.range, fixedClasses);
|
|
93
|
-
},
|
|
94
|
-
loc: getExactClassLocation(literal, className, true),
|
|
95
|
-
message: "Duplicate classname: \"{{ duplicateClassname }}\"."
|
|
96
|
-
});
|
|
97
|
-
}
|
|
98
|
-
}
|
|
99
|
-
}
|
|
100
|
-
function getClassesFromLiteralNodes(literals) {
|
|
101
|
-
return literals.reduce((combinedClasses, literal) => {
|
|
102
|
-
if (!literal) {
|
|
103
|
-
return combinedClasses;
|
|
104
|
-
}
|
|
105
|
-
const classes = literal.content;
|
|
106
|
-
const split = splitClasses(classes);
|
|
107
|
-
for (const className of split) {
|
|
108
|
-
if (!combinedClasses.includes(className)) {
|
|
109
|
-
combinedClasses.push(className);
|
|
110
|
-
}
|
|
111
|
-
}
|
|
112
|
-
return combinedClasses;
|
|
113
|
-
}, []);
|
|
114
|
-
}
|
|
115
|
-
function getOptions(ctx) {
|
|
116
|
-
return getCommonOptions(ctx);
|
|
117
|
-
}
|
|
118
|
-
//# sourceMappingURL=tailwind-no-duplicate-classes.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"tailwind-no-duplicate-classes.js","sourceRoot":"","sources":["../../../src/rules/tailwind-no-duplicate-classes.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import type { AttributeOption, CalleeOption, ESLintRule, TagOption, VariableOption } from "../types/rule.js";
|
|
2
|
-
export type Options = [
|
|
3
|
-
Partial<AttributeOption & CalleeOption & TagOption & VariableOption & {
|
|
4
|
-
allowMultiline?: boolean;
|
|
5
|
-
}>
|
|
6
|
-
];
|
|
7
|
-
export declare const tailwindNoUnnecessaryWhitespace: ESLintRule<Options>;
|
|
8
|
-
//# sourceMappingURL=tailwind-no-unnecessary-whitespace.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"tailwind-no-unnecessary-whitespace.d.ts","sourceRoot":"","sources":["../../../src/rules/tailwind-no-unnecessary-whitespace.ts"],"names":[],"mappings":"AAmBA,OAAO,KAAK,EACV,eAAe,EACf,YAAY,EACZ,UAAU,EACV,SAAS,EACT,cAAc,EACf,MAAM,iCAAiC,CAAC;AAGzC,MAAM,MAAM,OAAO,GAAG;IACpB,OAAO,CACL,eAAe,GACf,YAAY,GACZ,SAAS,GACT,cAAc,GACd;QACE,cAAc,CAAC,EAAE,OAAO,CAAC;KAC1B,CACF;CACF,CAAC;AAYF,eAAO,MAAM,+BAA+B,EAAE,UAAU,CAAC,OAAO,CAgC/D,CAAC"}
|
|
@@ -1,116 +0,0 @@
|
|
|
1
|
-
import { DEFAULT_ATTRIBUTE_NAMES, DEFAULT_CALLEE_NAMES, DEFAULT_TAG_NAMES, DEFAULT_VARIABLE_NAMES } from "../options/default-options.js";
|
|
2
|
-
import { ATTRIBUTE_SCHEMA, CALLEE_SCHEMA, TAG_SCHEMA, VARIABLE_SCHEMA } from "../options/descriptions.js";
|
|
3
|
-
import { escapeNestedQuotes } from "../utils/quotes.js";
|
|
4
|
-
import { createRuleListener } from "../utils/rule.js";
|
|
5
|
-
import { display, getCommonOptions, splitClasses, splitWhitespaces } from "../utils/utils.js";
|
|
6
|
-
const defaultOptions = {
|
|
7
|
-
allowMultiline: true,
|
|
8
|
-
attributes: DEFAULT_ATTRIBUTE_NAMES,
|
|
9
|
-
callees: DEFAULT_CALLEE_NAMES,
|
|
10
|
-
tags: DEFAULT_TAG_NAMES,
|
|
11
|
-
variables: DEFAULT_VARIABLE_NAMES
|
|
12
|
-
};
|
|
13
|
-
const DOCUMENTATION_URL = "https://github.com/schoero/eslint-plugin-readable-tailwind/blob/main/docs/rules/no-unnecessary-whitespace.md";
|
|
14
|
-
export const tailwindNoUnnecessaryWhitespace = {
|
|
15
|
-
name: "no-unnecessary-whitespace",
|
|
16
|
-
rule: {
|
|
17
|
-
create: ctx => createRuleListener(ctx, getOptions(ctx), lintLiterals),
|
|
18
|
-
meta: {
|
|
19
|
-
docs: {
|
|
20
|
-
category: "Stylistic Issues",
|
|
21
|
-
description: "Disallow unnecessary whitespace in tailwind classes.",
|
|
22
|
-
recommended: true,
|
|
23
|
-
url: DOCUMENTATION_URL
|
|
24
|
-
},
|
|
25
|
-
fixable: "whitespace",
|
|
26
|
-
schema: [
|
|
27
|
-
{
|
|
28
|
-
additionalProperties: false,
|
|
29
|
-
properties: {
|
|
30
|
-
allowMultiline: {
|
|
31
|
-
default: defaultOptions.allowMultiline,
|
|
32
|
-
description: "Allow multi-line class declarations. If this option is disabled, template literal strings will be collapsed into a single line string wherever possible. Must be set to `true` when used in combination with [readable-tailwind/multiline](./multiline.md).",
|
|
33
|
-
type: "boolean"
|
|
34
|
-
},
|
|
35
|
-
...CALLEE_SCHEMA,
|
|
36
|
-
...ATTRIBUTE_SCHEMA,
|
|
37
|
-
...VARIABLE_SCHEMA,
|
|
38
|
-
...TAG_SCHEMA
|
|
39
|
-
},
|
|
40
|
-
type: "object"
|
|
41
|
-
}
|
|
42
|
-
],
|
|
43
|
-
type: "layout"
|
|
44
|
-
}
|
|
45
|
-
}
|
|
46
|
-
};
|
|
47
|
-
function lintLiterals(ctx, literals) {
|
|
48
|
-
const { allowMultiline } = getOptions(ctx);
|
|
49
|
-
for (const literal of literals) {
|
|
50
|
-
const classes = splitClassesKeepWhitespace(literal, allowMultiline);
|
|
51
|
-
const escapedClasses = escapeNestedQuotes(classes.join(""), literal.openingQuote ?? literal.closingQuote ?? "`");
|
|
52
|
-
const fixedClasses = [
|
|
53
|
-
literal.openingQuote ?? "",
|
|
54
|
-
literal.type === "TemplateLiteral" && literal.closingBraces ? literal.closingBraces : "",
|
|
55
|
-
escapedClasses,
|
|
56
|
-
literal.type === "TemplateLiteral" && literal.openingBraces ? literal.openingBraces : "",
|
|
57
|
-
literal.closingQuote ?? ""
|
|
58
|
-
].join("");
|
|
59
|
-
if (literal.raw === fixedClasses) {
|
|
60
|
-
continue;
|
|
61
|
-
}
|
|
62
|
-
ctx.report({
|
|
63
|
-
data: {
|
|
64
|
-
fixedClasses: display(fixedClasses),
|
|
65
|
-
unnecessaryWhitespace: display(literal.raw)
|
|
66
|
-
},
|
|
67
|
-
fix(fixer) {
|
|
68
|
-
return fixer.replaceTextRange(literal.range, fixedClasses);
|
|
69
|
-
},
|
|
70
|
-
loc: literal.loc,
|
|
71
|
-
message: "Unnecessary whitespace. Expected\n\n{{ unnecessaryWhitespace }}\n\nto be\n\n{{ fixedClasses }}"
|
|
72
|
-
});
|
|
73
|
-
}
|
|
74
|
-
}
|
|
75
|
-
function splitClassesKeepWhitespace(literal, allowMultiline) {
|
|
76
|
-
const classes = literal.content;
|
|
77
|
-
const classChunks = splitClasses(classes);
|
|
78
|
-
const whitespaceChunks = splitWhitespaces(classes);
|
|
79
|
-
const mixedChunks = [];
|
|
80
|
-
if (classChunks.length === 0 && !literal.closingBraces && !literal.openingBraces) {
|
|
81
|
-
return [];
|
|
82
|
-
}
|
|
83
|
-
while (whitespaceChunks.length > 0 || classChunks.length > 0) {
|
|
84
|
-
const whitespaceChunk = whitespaceChunks.shift();
|
|
85
|
-
const classChunk = classChunks.shift();
|
|
86
|
-
const isFirstChunk = mixedChunks.length === 0;
|
|
87
|
-
const isLastChunk = whitespaceChunks.length === 0 && classChunks.length === 0;
|
|
88
|
-
if (whitespaceChunk) {
|
|
89
|
-
if (whitespaceChunk.includes("\n") && allowMultiline === true) {
|
|
90
|
-
const whitespaceWithoutLeadingSpaces = whitespaceChunk.replace(/^ +/, "");
|
|
91
|
-
mixedChunks.push(whitespaceWithoutLeadingSpaces);
|
|
92
|
-
}
|
|
93
|
-
else {
|
|
94
|
-
if (!isFirstChunk && !isLastChunk ||
|
|
95
|
-
literal.type === "TemplateLiteral" && literal.closingBraces && isFirstChunk && !isLastChunk ||
|
|
96
|
-
literal.type === "TemplateLiteral" && literal.openingBraces && isLastChunk && !isFirstChunk) {
|
|
97
|
-
mixedChunks.push(" ");
|
|
98
|
-
}
|
|
99
|
-
}
|
|
100
|
-
}
|
|
101
|
-
if (classChunk) {
|
|
102
|
-
mixedChunks.push(classChunk);
|
|
103
|
-
}
|
|
104
|
-
}
|
|
105
|
-
return mixedChunks;
|
|
106
|
-
}
|
|
107
|
-
function getOptions(ctx) {
|
|
108
|
-
const options = ctx.options[0] ?? {};
|
|
109
|
-
const common = getCommonOptions(ctx);
|
|
110
|
-
const allowMultiline = options.allowMultiline ?? defaultOptions.allowMultiline;
|
|
111
|
-
return {
|
|
112
|
-
...common,
|
|
113
|
-
allowMultiline
|
|
114
|
-
};
|
|
115
|
-
}
|
|
116
|
-
//# sourceMappingURL=tailwind-no-unnecessary-whitespace.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"tailwind-no-unnecessary-whitespace.js","sourceRoot":"","sources":["../../../src/rules/tailwind-no-unnecessary-whitespace.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import type { Rule } from "eslint";
|
|
2
|
-
import type { AttributeOption, CalleeOption, ESLintRule, TagOption, VariableOption } from "../types/rule.js";
|
|
3
|
-
export type Options = [
|
|
4
|
-
Partial<AttributeOption & CalleeOption & TagOption & VariableOption & {
|
|
5
|
-
entryPoint?: string;
|
|
6
|
-
ignore?: string[];
|
|
7
|
-
tailwindConfig?: string;
|
|
8
|
-
}>
|
|
9
|
-
];
|
|
10
|
-
export declare const DEFAULT_IGNORED_UNREGISTERED_CLASSES: string[];
|
|
11
|
-
export declare const tailwindNoUnregisteredClasses: ESLintRule<Options>;
|
|
12
|
-
export declare function getOptions(ctx: Rule.RuleContext): {
|
|
13
|
-
ignore: string[];
|
|
14
|
-
attributes: any;
|
|
15
|
-
callees: any;
|
|
16
|
-
tags: any;
|
|
17
|
-
tailwindConfig: any;
|
|
18
|
-
variables: any;
|
|
19
|
-
};
|
|
20
|
-
//# sourceMappingURL=tailwind-no-unregistered-classes.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"tailwind-no-unregistered-classes.d.ts","sourceRoot":"","sources":["../../../src/rules/tailwind-no-unregistered-classes.ts"],"names":[],"mappings":"AAwBA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAGnC,OAAO,KAAK,EACV,eAAe,EACf,YAAY,EACZ,UAAU,EACV,SAAS,EACT,cAAc,EACf,MAAM,kCAAkC,CAAC;AAG1C,MAAM,MAAM,OAAO,GAAG;IACpB,OAAO,CACL,eAAe,GACf,YAAY,GACZ,SAAS,GACT,cAAc,GACd;QACE,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;QAClB,cAAc,CAAC,EAAE,MAAM,CAAC;KACzB,CACF;CACF,CAAC;AAEF,eAAO,MAAM,oCAAoC,UAGhD,CAAC;AAYF,eAAO,MAAM,6BAA6B,EAAE,UAAU,CAAC,OAAO,CAmC7D,CAAC;AAmCF,wBAAgB,UAAU,CAAC,GAAG,EAAE,IAAI,CAAC,WAAW;;;;;;;EAa/C"}
|
|
@@ -1,86 +0,0 @@
|
|
|
1
|
-
import { getUnregisteredClasses } from "../tailwind/async/unregistered-classes.sync.js";
|
|
2
|
-
import { DEFAULT_ATTRIBUTE_NAMES, DEFAULT_CALLEE_NAMES, DEFAULT_TAG_NAMES, DEFAULT_VARIABLE_NAMES } from "../options/default-options.js";
|
|
3
|
-
import { ATTRIBUTE_SCHEMA, CALLEE_SCHEMA, ENTRYPOINT_SCHEMA, TAG_SCHEMA, TAILWIND_CONFIG_SCHEMA, VARIABLE_SCHEMA } from "../options/descriptions.js";
|
|
4
|
-
import { createRuleListener } from "../utils/rule.js";
|
|
5
|
-
import { augmentMessageWithWarnings, display, getCommonOptions, getExactClassLocation, splitClasses } from "../utils/utils.js";
|
|
6
|
-
export const DEFAULT_IGNORED_UNREGISTERED_CLASSES = [
|
|
7
|
-
"^group(?:\\/(\\S*))?$",
|
|
8
|
-
"^peer(?:\\/(\\S*))?$"
|
|
9
|
-
];
|
|
10
|
-
const defaultOptions = {
|
|
11
|
-
attributes: DEFAULT_ATTRIBUTE_NAMES,
|
|
12
|
-
callees: DEFAULT_CALLEE_NAMES,
|
|
13
|
-
ignore: DEFAULT_IGNORED_UNREGISTERED_CLASSES,
|
|
14
|
-
tags: DEFAULT_TAG_NAMES,
|
|
15
|
-
variables: DEFAULT_VARIABLE_NAMES
|
|
16
|
-
};
|
|
17
|
-
const DOCUMENTATION_URL = "https://github.com/schoero/eslint-plugin-better-tailwindcss/blob/main/docs/rules/no-unregistered-classes.md";
|
|
18
|
-
export const tailwindNoUnregisteredClasses = {
|
|
19
|
-
name: "no-unregistered-classes",
|
|
20
|
-
rule: {
|
|
21
|
-
create: ctx => createRuleListener(ctx, getOptions(ctx), lintLiterals),
|
|
22
|
-
meta: {
|
|
23
|
-
docs: {
|
|
24
|
-
description: "Disallow any css classes that are not registered in tailwindcss.",
|
|
25
|
-
recommended: false,
|
|
26
|
-
url: DOCUMENTATION_URL
|
|
27
|
-
},
|
|
28
|
-
fixable: "code",
|
|
29
|
-
schema: [
|
|
30
|
-
{
|
|
31
|
-
additionalProperties: false,
|
|
32
|
-
properties: {
|
|
33
|
-
...CALLEE_SCHEMA,
|
|
34
|
-
...ATTRIBUTE_SCHEMA,
|
|
35
|
-
...VARIABLE_SCHEMA,
|
|
36
|
-
...TAG_SCHEMA,
|
|
37
|
-
...ENTRYPOINT_SCHEMA,
|
|
38
|
-
...TAILWIND_CONFIG_SCHEMA,
|
|
39
|
-
ignore: {
|
|
40
|
-
description: "A list of classes that should be ignored by the rule.",
|
|
41
|
-
items: {
|
|
42
|
-
type: "string"
|
|
43
|
-
},
|
|
44
|
-
type: "array"
|
|
45
|
-
}
|
|
46
|
-
},
|
|
47
|
-
type: "object"
|
|
48
|
-
}
|
|
49
|
-
],
|
|
50
|
-
type: "problem"
|
|
51
|
-
}
|
|
52
|
-
}
|
|
53
|
-
};
|
|
54
|
-
function lintLiterals(ctx, literals) {
|
|
55
|
-
for (const literal of literals) {
|
|
56
|
-
const { ignore, tailwindConfig } = getOptions(ctx);
|
|
57
|
-
const classes = splitClasses(literal.content);
|
|
58
|
-
const [unregisteredClasses, warnings] = getUnregisteredClasses({ classes, configPath: tailwindConfig, cwd: ctx.cwd });
|
|
59
|
-
const unregisteredClassesWarnings = warnings.map(warning => ({ ...warning, url: DOCUMENTATION_URL }));
|
|
60
|
-
if (unregisteredClasses.length === 0) {
|
|
61
|
-
continue;
|
|
62
|
-
}
|
|
63
|
-
for (const unregisteredClass of unregisteredClasses) {
|
|
64
|
-
if (ignore.some(ignoredClass => unregisteredClass.match(ignoredClass))) {
|
|
65
|
-
continue;
|
|
66
|
-
}
|
|
67
|
-
ctx.report({
|
|
68
|
-
data: {
|
|
69
|
-
unregistered: display(unregisteredClass)
|
|
70
|
-
},
|
|
71
|
-
loc: getExactClassLocation(literal, unregisteredClass),
|
|
72
|
-
message: augmentMessageWithWarnings("Unregistered class detected: {{ unregistered }}", unregisteredClassesWarnings)
|
|
73
|
-
});
|
|
74
|
-
}
|
|
75
|
-
}
|
|
76
|
-
}
|
|
77
|
-
export function getOptions(ctx) {
|
|
78
|
-
const options = ctx.options[0] ?? {};
|
|
79
|
-
const common = getCommonOptions(ctx);
|
|
80
|
-
const ignore = options.ignore ?? defaultOptions.ignore;
|
|
81
|
-
return {
|
|
82
|
-
...common,
|
|
83
|
-
ignore
|
|
84
|
-
};
|
|
85
|
-
}
|
|
86
|
-
//# sourceMappingURL=tailwind-no-unregistered-classes.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"tailwind-no-unregistered-classes.js","sourceRoot":"","sources":["../../../src/rules/tailwind-no-unregistered-classes.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import type { Rule } from "eslint";
|
|
2
|
-
import type { AttributeOption, CalleeOption, ESLintRule, TagOption, VariableOption } from "../types/rule.js";
|
|
3
|
-
export type Options = [
|
|
4
|
-
Partial<AttributeOption & CalleeOption & TagOption & VariableOption & {
|
|
5
|
-
entryPoint?: string;
|
|
6
|
-
order?: "asc" | "desc" | "improved" | "official";
|
|
7
|
-
tailwindConfig?: string;
|
|
8
|
-
}>
|
|
9
|
-
];
|
|
10
|
-
export declare const tailwindSortClasses: ESLintRule<Options>;
|
|
11
|
-
export declare function getOptions(ctx: Rule.RuleContext): {
|
|
12
|
-
order: "asc" | "desc" | "improved" | "official";
|
|
13
|
-
attributes: any;
|
|
14
|
-
callees: any;
|
|
15
|
-
tags: any;
|
|
16
|
-
tailwindConfig: any;
|
|
17
|
-
variables: any;
|
|
18
|
-
};
|
|
19
|
-
//# sourceMappingURL=tailwind-sort-classes.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"tailwind-sort-classes.d.ts","sourceRoot":"","sources":["../../../src/rules/tailwind-sort-classes.ts"],"names":[],"mappings":"AAuBA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAGnC,OAAO,KAAK,EACV,eAAe,EACf,YAAY,EACZ,UAAU,EACV,SAAS,EACT,cAAc,EACf,MAAM,iCAAiC,CAAC;AAIzC,MAAM,MAAM,OAAO,GAAG;IACpB,OAAO,CACL,eAAe,GACf,YAAY,GACZ,SAAS,GACT,cAAc,GACd;QACE,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,KAAK,CAAC,EAAE,KAAK,GAAG,MAAM,GAAG,UAAU,GAAG,UAAU,CAAE;QAClD,cAAc,CAAC,EAAE,MAAM,CAAC;KACzB,CACF;CACF,CAAC;AAYF,eAAO,MAAM,mBAAmB,EAAE,UAAU,CAAC,OAAO,CA8CnD,CAAC;AA4GF,wBAAgB,UAAU,CAAC,GAAG,EAAE,IAAI,CAAC,WAAW;;;;;;;EAa/C"}
|