Skip to content

Commit 46949d8

Browse files
committed
feat(packages/sui-bundler): add tailwind support
1 parent 12fd0f7 commit 46949d8

File tree

4 files changed

+11
-2
lines changed

4 files changed

+11
-2
lines changed

packages/sui-bundler/package.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,7 @@
5454
"strip-ansi": "6.0.1",
5555
"style-loader": "3.3.4",
5656
"swc-loader": "0.2.6",
57+
"tailwindcss": "3.4.14",
5758
"url": "0.11.0",
5859
"webpack-dev-server": "5.0.4",
5960
"webpack-manifest-plugin": "5.0.0",

packages/sui-bundler/shared/index.js

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
const fs = require('fs')
12
const {config} = require('./config.js')
23

34
exports.MAIN_ENTRY_POINT = './app'
@@ -7,6 +8,9 @@ exports.cleanList = list => list.filter(Boolean)
78

89
exports.when = (check, getValue) => (check ? getValue() : false)
910

11+
exports.isTailwindEnabled = () =>
12+
fs.existsSync(`${process.cwd()}/tailwind.config.js`)
13+
1014
exports.envVars = (env = []) =>
1115
env.reduce(
1216
(acc, variable) => {

packages/sui-bundler/shared/module-rules-sass.js

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
const MiniCssExtractPlugin = require('mini-css-extract-plugin')
22

3-
const {cleanList, config, when} = require('./index')
3+
const {cleanList, config, when, isTailwindEnabled} = require('./index')
44

55
module.exports = {
66
test: /(\.css|\.scss)$/,
@@ -18,6 +18,7 @@ module.exports = {
1818
options: {
1919
postcssOptions: {
2020
plugins: [
21+
...(isTailwindEnabled() ? [require('tailwindcss').default()] : []),
2122
require('autoprefixer')({
2223
overrideBrowserslist: config.targets
2324
})

packages/sui-bundler/webpack.config.dev.js

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ const webpack = require('webpack')
55
const HtmlWebpackPlugin = require('html-webpack-plugin')
66
const ReactRefreshWebpackPlugin = require('@pmmmwh/react-refresh-webpack-plugin')
77

8-
const {envVars, MAIN_ENTRY_POINT, config, cleanList, when} = require('./shared/index.js')
8+
const {envVars, MAIN_ENTRY_POINT, config, cleanList, when, isTailwindEnabled} = require('./shared/index.js')
99
const definePlugin = require('./shared/define.js')
1010
const manifestLoaderRules = require('./shared/module-rules-manifest-loader.js')
1111
const {aliasFromConfig, defaultAlias} = require('./shared/resolve-alias.js')
@@ -104,6 +104,9 @@ const webpackConfig = {
104104
options: {
105105
postcssOptions: {
106106
plugins: [
107+
...(isTailwindEnabled()
108+
? [require('tailwindcss').default()]
109+
: []),
107110
require('autoprefixer')({
108111
overrideBrowserslist: config.targets
109112
})

0 commit comments

Comments
 (0)