Skip to content

Commit b3edb5f

Browse files
committed
Tailwindcss V4
1 parent 8e62a02 commit b3edb5f

File tree

9 files changed

+36
-34
lines changed

9 files changed

+36
-34
lines changed

src/main/java/tech/jhipster/lite/generator/client/react/security/jwt/domain/ReactJwtModuleFactory.java

Lines changed: 12 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,6 @@
11
package tech.jhipster.lite.generator.client.react.security.jwt.domain;
22

3-
import static tech.jhipster.lite.module.domain.JHipsterModule.LINE_BREAK;
4-
import static tech.jhipster.lite.module.domain.JHipsterModule.from;
5-
import static tech.jhipster.lite.module.domain.JHipsterModule.lineBeforeRegex;
6-
import static tech.jhipster.lite.module.domain.JHipsterModule.lineBeforeText;
7-
import static tech.jhipster.lite.module.domain.JHipsterModule.moduleBuilder;
8-
import static tech.jhipster.lite.module.domain.JHipsterModule.packageName;
9-
import static tech.jhipster.lite.module.domain.JHipsterModule.path;
10-
import static tech.jhipster.lite.module.domain.JHipsterModule.regex;
11-
import static tech.jhipster.lite.module.domain.JHipsterModule.text;
12-
import static tech.jhipster.lite.module.domain.JHipsterModule.to;
3+
import static tech.jhipster.lite.module.domain.JHipsterModule.*;
134
import static tech.jhipster.lite.module.domain.npm.JHLiteNpmVersionSource.COMMON;
145
import static tech.jhipster.lite.module.domain.npm.JHLiteNpmVersionSource.REACT;
156

@@ -54,15 +45,14 @@ public JHipsterModule buildModule(JHipsterModuleProperties properties) {
5445
.packageJson()
5546
.addDependency(packageName("react-hook-form"), REACT)
5647
.addDependency(packageName("axios"), REACT)
57-
.addDependency(packageName("@nextui-org/react"), REACT)
48+
.addDependency(packageName("@heroui/react"), REACT)
5849
.addDevDependency(packageName("autoprefixer"), COMMON)
5950
.addDevDependency(packageName("sass"), REACT)
60-
.addDevDependency(packageName("postcss"), COMMON)
51+
.addDevDependency(packageName("@tailwindcss/vite"), COMMON)
6152
.addDevDependency(packageName("tailwindcss"), COMMON)
6253
.and()
6354
.files()
6455
.batch(ROOT, to("."))
65-
.addFile("postcss.config.js")
6656
.addFile("tailwind.config.js")
6757
.and()
6858
.add(APP_SOURCE.template("common/services/storage.ts"), COMMON_DESTINATION.append("services/storage.ts"))
@@ -87,23 +77,28 @@ public JHipsterModule buildModule(JHipsterModuleProperties properties) {
8777
.add(TEST_JAVASCRIPT_SOURCE.template("common/services/storage.test.ts"), TEST_DESTINATION.append("common/services/storage.test.ts"))
8878
.and()
8979
.mandatoryReplacements()
80+
.in(path("vite.config.ts"))
81+
.add(lineAfterRegex("from 'vite';"), "import tailwindcss from '@tailwindcss/vite';")
82+
.add(text("plugins: [react(), "), "plugins: [react(), tailwindcss(), ")
83+
.and()
9084
.in(path("src/main/webapp/app/home/infrastructure/primary/HomePage.tsx"))
9185
.add(lineBeforeText("function HomePage() {"), "import LoginForm from '@/login/primary/loginForm';" + LINE_BREAK)
9286
.add(LOGIN_FORM_MATCHER, properties.indentation().times(4) + "<LoginForm />")
9387
.and()
9488
.in(path("src/main/webapp/app/index.tsx"))
95-
.add(lineBeforeText("import React from 'react';"), "import { NextUIProvider } from '@nextui-org/react';")
89+
.add(lineBeforeText("import React from 'react';"), "import { HeroUIProvider } from '@heroui/react';")
9690
.add(regex("\\s+<HomePage />"),
9791
"""
9892
99-
\t\t<NextUIProvider>
93+
\t\t<HeroUIProvider>
10094
\t\t\t<HomePage />
101-
\t\t</NextUIProvider>\
95+
\t\t</HeroUIProvider>\
10296
""".replace("\t", properties.indentation().spaces())
10397
)
10498
.and()
10599
.in(path("src/main/webapp/app/index.css"))
106-
.add(lineBeforeText("body {"), "@tailwind base;" + LINE_BREAK + "@tailwind components;" + LINE_BREAK + "@tailwind utilities;" + LINE_BREAK)
100+
// .add(lineBeforeText("body {"), "@config '../../../../tailwind.config.js';" + LINE_BREAK + "@import 'tailwindcss';" + LINE_BREAK)
101+
.add(lineBeforeText("body {"), "@import 'tailwindcss';" + LINE_BREAK)
107102
.and()
108103
.and()
109104
.optionalReplacements()

src/main/resources/generator/client/react/security/jwt/postcss.config.js

Lines changed: 0 additions & 6 deletions
This file was deleted.

src/main/resources/generator/client/react/security/jwt/src/main/webapp/app/login/primary/loginForm/index.tsx.mustache

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { Button } from '@nextui-org/react';
1+
import { Button } from '@heroui/react';
22
import { createContext, useCallback, useMemo, useState } from 'react';
33

44
import LoginModal from '@/login/primary/loginModal';

src/main/resources/generator/client/react/security/jwt/src/main/webapp/app/login/primary/loginModal/index.tsx.mustache

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { Button, Input, Modal, ModalBody, ModalContent, ModalHeader, Spacer } from '@nextui-org/react';
1+
import { Button, Input, Modal, ModalBody, ModalContent, ModalHeader, Spacer } from '@heroui/react';
22
import { useCallback, useContext, useState } from 'react';
33
import { useForm } from 'react-hook-form';
44

src/main/resources/generator/client/react/security/jwt/tailwind.config.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
1-
const { nextui } = require('@nextui-org/react');
1+
const { nextui } = require('@heroui/react');
22

33
module.exports = {
44
content: [
55
'./src/main/webapp/index.html',
66
'./src/main/webapp/**/*.{js,ts,jsx,tsx}',
7-
'./node_modules/@nextui-org/theme/dist/**/*.{js,ts,jsx,tsx}',
7+
'./node_modules/@heroui/theme/dist/**/*.{js,ts,jsx,tsx}',
88
],
99
theme: {
1010
extend: {},

src/main/resources/generator/dependencies/common/package.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
"@playwright/test": "1.49.1",
99
"@prettier/plugin-pug": "3.2.0",
1010
"@prettier/plugin-xml": "3.4.1",
11+
"@tailwindcss/vite": "4.0.0",
1112
"@tikui/core": "6.3.0",
1213
"@tsconfig/recommended": "1.0.8",
1314
"@types/jest": "29.5.14",
@@ -51,7 +52,7 @@
5152
"stylelint-config-concentric-order": "5.2.0",
5253
"stylelint-config-standard-scss": "14.0.0",
5354
"stylelint-order": "6.0.4",
54-
"tailwindcss": "3.4.17",
55+
"tailwindcss": "4.0.0",
5556
"tikuidoc-tikui": "8.0.1",
5657
"ts-jest": "29.2.5",
5758
"typescript": "5.7.3",

src/main/resources/generator/dependencies/react/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
"license": "Apache-2.0",
66
"type": "module",
77
"dependencies": {
8-
"@nextui-org/react": "2.6.11",
8+
"@heroui/react": "2.6.11",
99
"@testing-library/dom": "10.4.0",
1010
"@testing-library/react": "16.2.0",
1111
"@tsconfig/vite-react": "3.4.0",

src/test/java/tech/jhipster/lite/generator/client/react/security/jwt/domain/ReactJwtModuleFactoryTest.java

Lines changed: 13 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,15 @@ class ReactJwtModuleFactoryTest {
2020
void shouldBuildModule() {
2121
JHipsterModule module = factory.buildModule(properties());
2222

23-
JHipsterModuleAsserter asserter = assertThatModuleWithFiles(module, packageJsonFile(), app(), appCss(), indexTsx(), indexCss());
23+
JHipsterModuleAsserter asserter = assertThatModuleWithFiles(
24+
module,
25+
packageJsonFile(),
26+
app(),
27+
appCss(),
28+
indexTsx(),
29+
indexCss(),
30+
viteReactConfigFile()
31+
);
2432

2533
assertReactApp(asserter);
2634
asserter
@@ -39,9 +47,9 @@ void shouldBuildModule() {
3947
.containing(
4048
"""
4149
<React.StrictMode>
42-
<NextUIProvider>
50+
<HeroUIProvider>
4351
<HomePage />
44-
</NextUIProvider>
52+
</HeroUIProvider>
4553
</React.StrictMode>,
4654
"""
4755
);
@@ -71,11 +79,11 @@ private void assertReactApp(JHipsterModuleAsserter asserter) {
7179
asserter
7280
.hasFile("package.json")
7381
.containing(nodeDependency("autoprefixer"))
74-
.containing(nodeDependency("postcss"))
82+
.containing(nodeDependency("@tailwindcss/vite"))
7583
.containing(nodeDependency("tailwindcss"))
7684
.containing(nodeDependency("react-hook-form"))
7785
.containing(nodeDependency("axios"))
78-
.containing(nodeDependency("@nextui-org/react"))
86+
.containing(nodeDependency("@heroui/react"))
7987
.containing(nodeDependency("sass"))
8088
.and()
8189
.hasPrefixedFiles(

src/test/java/tech/jhipster/lite/module/infrastructure/secondary/JHipsterModulesAssertions.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -75,6 +75,10 @@ public static ModuleFile vitestConfigFile() {
7575
return file("src/main/resources/generator/typescript/vitest.config.ts.mustache", "vitest.config.ts");
7676
}
7777

78+
public static ModuleFile viteReactConfigFile() {
79+
return file("src/main/resources/generator/client/react/core/vite.config.ts.mustache", "vite.config.ts");
80+
}
81+
7882
public static ModuleFile eslintConfigFile() {
7983
return file("src/main/resources/generator/typescript/eslint.config.js.mustache", "eslint.config.js");
8084
}

0 commit comments

Comments
 (0)