Skip to content

Commit ddc38f7

Browse files
authored
Merge pull request #1356 from Arnei/lucide-icons
Add Lucide icons
2 parents 1a62ee6 + 17c0528 commit ddc38f7

181 files changed

Lines changed: 490 additions & 5764 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

package-lock.json

Lines changed: 3 additions & 88 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,6 @@
1717
"date-fns": "^4.1.0",
1818
"dompurify": "^3.2.6",
1919
"focus-trap-react": "^11.0.4",
20-
"font-awesome": "^4.7.0",
2120
"formik": "^2.4.6",
2221
"http-proxy-middleware": "^3.0.5",
2322
"i18next": "^25.3.2",

src/components/Header.tsx

Lines changed: 17 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -20,12 +20,12 @@ import { useAppDispatch, useAppSelector } from "../store";
2020
import { HealthStatus, fetchHealthStatus } from "../slices/healthSlice";
2121
import { UserInfoState } from "../slices/userInfoSlice";
2222
import { Tooltip } from "./shared/Tooltip";
23-
import { HiTranslate } from "react-icons/hi";
24-
import { IconContext } from "react-icons";
23+
import { HiOutlineTranslate } from "react-icons/hi";
2524
import ButtonLikeAnchor from "./shared/ButtonLikeAnchor";
2625
import { ModalHandle } from "./shared/modals/Modal";
2726
import { broadcastLogout } from "../utils/broadcastSync";
2827
import BaseButton from "./shared/BaseButton";
28+
import { LuBell, LuCheck, LuChevronDown, LuCirclePlay, LuMessageCircleQuestion, LuVideo } from "react-icons/lu";
2929

3030
// References for detecting a click outside of the container of the dropdown menus
3131
const containerLang = React.createRef<HTMLDivElement>();
@@ -145,10 +145,8 @@ const Header = () => {
145145
{/* Select language */}
146146
<div className="nav-dd lang-dd" id="lang-dd" ref={containerLang}>
147147
<Tooltip active={!displayMenuLang} title={t("LANGUAGE")}>
148-
<BaseButton className="lang" onClick={() => setMenuLang(!displayMenuLang)}>
149-
<IconContext.Provider value={{ style: { fontSize: "20px" } }}>
150-
<HiTranslate />
151-
</IconContext.Provider>
148+
<BaseButton className="lang nav-dd-element" onClick={() => setMenuLang(!displayMenuLang)}>
149+
<HiOutlineTranslate className="header-icon"/>
152150
</BaseButton>
153151
</Tooltip>
154152
{displayMenuLang && <MenuLang handleChangeLanguage={handleChangeLanguage}/>}
@@ -167,8 +165,9 @@ const Header = () => {
167165
orgProperties["org.opencastproject.admin.mediamodule.url"]
168166
}
169167
target="_blank" rel="noreferrer"
168+
className="nav-dd-element"
170169
>
171-
<i className="fa fa-play-circle" />
170+
<LuCirclePlay className="header-icon"/>
172171
</a>
173172
</Tooltip>
174173
</div>
@@ -178,8 +177,8 @@ const Header = () => {
178177
{hasAccess("ROLE_STUDIO", user) && (
179178
<div className="nav-dd">
180179
<Tooltip title={t("STUDIO")}>
181-
<a href={studioURL} target="_blank" rel="noreferrer">
182-
<i className="fa fa-video-camera" />
180+
<a href={studioURL} target="_blank" rel="noreferrer" className="nav-dd-element">
181+
<LuVideo className="header-icon"/>
183182
</a>
184183
</Tooltip>
185184
</div>
@@ -193,8 +192,10 @@ const Header = () => {
193192
ref={containerNotify}
194193
>
195194
<Tooltip active={!displayMenuNotify} title={t("SYSTEM_NOTIFICATIONS")}>
196-
<BaseButton onClick={() => setMenuNotify(!displayMenuNotify)}>
197-
<i className="fa fa-bell" aria-hidden="true" />
195+
<BaseButton onClick={() => setMenuNotify(!displayMenuNotify)} className="nav-dd-element">
196+
<LuBell style={{
197+
fontSize: "20px",
198+
}}/>
198199
{errorCounter !== 0 && (
199200
<span id="error-count" className="badge">
200201
{errorCounter}
@@ -230,8 +231,9 @@ const Header = () => {
230231
<Tooltip active={!displayMenuHelp} title={t("HELP.HELP")}>
231232
<BaseButton
232233
onClick={() => setMenuHelp(!displayMenuHelp)}
234+
className="nav-dd-element"
233235
>
234-
<span className="fa fa-question-circle"></span>
236+
<LuMessageCircleQuestion className="header-icon"/>
235237
</BaseButton>
236238
</Tooltip>
237239
{/* Click on the help icon, a dropdown menu with documentation, REST-docs and shortcuts (if available) opens */}
@@ -248,13 +250,13 @@ const Header = () => {
248250
)}
249251

250252
{/* Username */}
251-
<div className="nav-dd user-dd" id="user-dd" ref={containerUser}>
253+
<div className="user-dd" id="user-dd" ref={containerUser}>
252254
<BaseButton
253255
className="h-nav"
254256
onClick={() => setMenuUser(!displayMenuUser)}
255257
>
256258
{user.user.name || user.user.username}
257-
<span className="dropdown-icon" />
259+
<LuChevronDown className="dropdown-icon" />
258260
</BaseButton>
259261
{/* Click on username, a dropdown menu with the option to logout opens */}
260262
{displayMenuUser && <MenuUser />}
@@ -285,6 +287,7 @@ const MenuLang = ({ handleChangeLanguage }: { handleChangeLanguage: (code: strin
285287
className={(i18n.language === language.code ? "selected" : "")}
286288
onClick={() => handleChangeLanguage(language.code)}
287289
>
290+
{i18n.language === language.code && <LuCheck className="selected-icon" />}
288291
{language.long}
289292
</ButtonLikeAnchor>
290293
</li>

src/components/NavBar.tsx

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ import { useHotkeys } from "react-hotkeys-hook";
1111
import { ModalHandle } from "./shared/modals/Modal";
1212
import { ParseKeys } from "i18next";
1313
import BaseButton from "./shared/BaseButton";
14+
import { LuPlus } from "react-icons/lu";
1415

1516
/**
1617
* Component that renders the nav bar
@@ -113,8 +114,9 @@ const NavBar = ({
113114
<BaseButton
114115
className="add"
115116
onClick={showNewResourceModal}
117+
style={{ display: "flex", alignItems: "center" }}
116118
>
117-
<i className="fa fa-plus" />
119+
<LuPlus className="btn-group-icon"/>
118120
<span>{t(create.text)}</span>
119121
</BaseButton>
120122
)}

src/components/configuration/partials/ThemesActionsCell.tsx

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ import { ActionCellDelete } from "../../shared/ActionCellDelete";
1010
import { Modal, ModalHandle } from "../../shared/modals/Modal";
1111
import { useTranslation } from "react-i18next";
1212
import ButtonLikeAnchor from "../../shared/ButtonLikeAnchor";
13+
import { LuFileText } from "react-icons/lu";
1314

1415
/**
1516
* This component renders the action cells of themes in the table view
@@ -46,10 +47,12 @@ const ThemesActionsCell = ({
4647
{/* edit themes */}
4748
<ButtonLikeAnchor
4849
onClick={() => showThemeDetails()}
49-
className={"more"}
50+
className={"action-cell-button"}
5051
editAccessRole={"ROLE_UI_THEMES_EDIT"}
5152
tooltipText={"CONFIGURATION.THEMES.TABLE.TOOLTIP.DETAILS"}
52-
/>
53+
>
54+
<LuFileText />
55+
</ButtonLikeAnchor>
5356

5457
{/* themes details modal */}
5558
<Modal

0 commit comments

Comments
 (0)