Bump webui dependencies

This commit is contained in:
Gina A. 2026-05-04 19:48:05 +07:00 committed by GitHub
parent 80103b1db2
commit bd6a685be3
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
64 changed files with 1321 additions and 11122 deletions

View File

@ -2,7 +2,7 @@ name: Build Web UI
on:
workflow_call: {}
env:
SAFE_CHAIN_MINIMUM_PACKAGE_AGE_HOURS: 360 # 15 days
SAFE_CHAIN_MINIMUM_PACKAGE_AGE_HOURS: 48 # 2 days
jobs:
build-webui:

1
webui/.husky/pre-commit Normal file
View File

@ -0,0 +1 @@
yarn lint-staged

View File

@ -18,16 +18,10 @@
},
"lint-staged": {
"**/*.{ts,tsx}": [
"yarn format",
"eslint --fix",
"git add"
"prettier --config .prettierrc.json --write",
"eslint --fix"
]
},
"husky": {
"hooks": {
"pre-commit": "lint-staged"
}
},
"browserslist": {
"production": [
">0.2%",
@ -43,13 +37,13 @@
"type": "module",
"dependencies": {
"@eslint/js": "^9.32.0",
"@noble/ed25519": "^3.0.0",
"@noble/ed25519": "^3.0.1",
"@noble/hashes": "^2.0.1",
"@testing-library/dom": "^10.4.1",
"@testing-library/jest-dom": "^6.4.2",
"@testing-library/react": "^14.2.1",
"@testing-library/user-event": "^14.5.2",
"@traefiklabs/faency": "12.0.4",
"@traefik-labs/faency": "12.3.3",
"@types/lodash": "^4.17.16",
"@types/node": "^22.15.18",
"@types/react": "^18.2.0",
@ -71,7 +65,7 @@
"globals": "^16.0.0",
"jest-extended": "^4.0.2",
"jsdom": "^24.0.0",
"lodash": "^4.17.21",
"lodash": "4.18.1",
"msw": "^2.1.7",
"query-string": "^6.9.0",
"react": "^18.2.0",
@ -81,7 +75,7 @@
"react-helmet-async": "^2.0.4",
"react-icons": "^5.0.1",
"react-infinite-scroll-hook": "^4.1.1",
"react-router-dom": "6.22.1",
"react-router-dom": "6.30.2",
"swr": "^2.2.4",
"typescript": "^5.2.2",
"typescript-eslint": "^8.38.0",
@ -92,8 +86,8 @@
"vitest-canvas-mock": "^0.3.3"
},
"devDependencies": {
"husky": "^3.1.0",
"lint-staged": "^9.5.0",
"husky": "^9.0.0",
"lint-staged": "^15.0.0",
"prettier": "^3.5.3"
},
"msw": {
@ -103,6 +97,7 @@
},
"packageManager": "yarn@4.9.1",
"resolutions": {
"form-data": "4.0.4"
"form-data": "4.0.4",
"js-yaml": "4.1.1"
}
}

View File

@ -1,4 +1,4 @@
import { globalCss, Box, darkTheme, FaencyProvider, lightTheme } from '@traefiklabs/faency'
import { globalCss, Box, darkTheme, FaencyProvider, lightTheme } from '@traefik-labs/faency'
import { Suspense, useContext, useEffect } from 'react'
import { HelmetProvider } from 'react-helmet-async'
import { HashRouter, Navigate, Route, Routes as RouterRoutes, useLocation } from 'react-router-dom'

View File

@ -1,4 +1,4 @@
import { AriaTr, VariantProps, styled } from '@traefiklabs/faency'
import { AriaTr, VariantProps, styled } from '@traefik-labs/faency'
import { ComponentProps, forwardRef, ReactNode } from 'react'
import { useHref } from 'react-router-dom'

View File

@ -1,4 +1,4 @@
import { Button } from '@traefiklabs/faency'
import { Button } from '@traefik-labs/faency'
import { useCallback, useEffect, useState } from 'react'
export const ScrollTopButton = () => {

View File

@ -1,4 +1,4 @@
import { Flex } from '@traefiklabs/faency'
import { Flex } from '@traefik-labs/faency'
import { motion } from 'framer-motion'
import { FiLoader } from 'react-icons/fi'

View File

@ -1,4 +1,4 @@
import { Box, Button, Flex, TextField, InputHandle } from '@traefiklabs/faency'
import { Box, Button, Flex, TextField, InputHandle } from '@traefik-labs/faency'
import { isUndefined, omitBy } from 'lodash'
import { useCallback, useRef, useState } from 'react'
import { FiSearch, FiXCircle } from 'react-icons/fi'

View File

@ -1,4 +1,4 @@
import { AccessibleIcon, Button } from '@traefiklabs/faency'
import { AccessibleIcon, Button } from '@traefik-labs/faency'
import { FiMoon, FiSun } from 'react-icons/fi'
import { AutoThemeIcon } from 'components/icons/AutoThemeIcon'

View File

@ -1,4 +1,4 @@
import { Box, Button, Flex, styled, Text } from '@traefiklabs/faency'
import { Box, Button, Flex, styled, Text } from '@traefik-labs/faency'
import { AnimatePresence, motion } from 'framer-motion'
import { ReactNode, useEffect } from 'react'
import { FiX } from 'react-icons/fi'

View File

@ -1,4 +1,4 @@
import { Flex } from '@traefiklabs/faency'
import { Flex } from '@traefik-labs/faency'
import { useContext } from 'react'
import { Toast } from './Toast'

View File

@ -1,4 +1,4 @@
import { Button, Flex, Text, Tooltip as FaencyTooltip } from '@traefiklabs/faency'
import { Button, Flex, Text, Tooltip as FaencyTooltip } from '@traefik-labs/faency'
import { MouseEvent, ReactNode, useMemo, useState } from 'react'
import { FiCheck, FiCopy } from 'react-icons/fi'

View File

@ -1,4 +1,4 @@
import { CSS, Text } from '@traefiklabs/faency'
import { CSS, Text } from '@traefik-labs/faency'
import { useMemo } from 'react'
import Tooltip from 'components/Tooltip'

View File

@ -1,4 +1,4 @@
import { Button, Flex, Text } from '@traefiklabs/faency'
import { Button, Flex, Text } from '@traefik-labs/faency'
import { ComponentProps, ReactNode } from 'react'
type IconButtonProps = ComponentProps<typeof Button> & {

View File

@ -1,4 +1,4 @@
import { styled, Flex, Label } from '@traefiklabs/faency'
import { styled, Flex, Label } from '@traefik-labs/faency'
import { ComponentProps } from 'react'
import SortIcon from 'components/icons/SortIcon'

View File

@ -1,4 +1,4 @@
import { config, Flex } from '@traefiklabs/faency'
import { config, Flex } from '@traefik-labs/faency'
import { useEffect, useState } from 'react'
import { CustomIconProps } from 'components/icons'

View File

@ -1,4 +1,4 @@
import { CSS, Flex, VariantProps } from '@traefiklabs/faency'
import { CSS, Flex, VariantProps } from '@traefik-labs/faency'
import { HTMLAttributes } from 'react'
export type CustomIconProps = HTMLAttributes<SVGElement> & {

View File

@ -1,4 +1,4 @@
import { Badge, Box, Text } from '@traefiklabs/faency'
import { Badge, Box, Text } from '@traefik-labs/faency'
import Tooltip from 'components/Tooltip'
import { MiddlewareProps, ValuesMapType } from 'hooks/use-resource-detail'

View File

@ -1,4 +1,4 @@
import { Badge, Box, Card, Flex, H2, styled, Text } from '@traefiklabs/faency'
import { Badge, Box, Card, Flex, H2, styled, Text } from '@traefik-labs/faency'
import { ReactNode } from 'react'
import { FiArrowRight, FiToggleLeft, FiToggleRight } from 'react-icons/fi'
import { useNavigate } from 'react-router-dom'

View File

@ -1,4 +1,4 @@
import { Box, Card, Flex, Grid, Skeleton as FaencySkeleton, Text } from '@traefiklabs/faency'
import { Box, Card, Flex, Grid, Skeleton as FaencySkeleton, Text } from '@traefik-labs/faency'
import ResourceCard from 'components/resources/ResourceCard'

View File

@ -1,4 +1,4 @@
import { AriaTable, AriaTbody, AriaTd, AriaTr, Flex, Text } from '@traefiklabs/faency'
import { AriaTable, AriaTbody, AriaTd, AriaTr, Flex, Text } from '@traefik-labs/faency'
import { useMemo } from 'react'
import Status, { StatusType } from './Status'

View File

@ -1,4 +1,4 @@
import { AriaTable, AriaTbody, AriaTd, AriaTr, Badge, Flex, Text } from '@traefiklabs/faency'
import { AriaTable, AriaTbody, AriaTd, AriaTr, Badge, Flex, Text } from '@traefik-labs/faency'
import Tooltip from 'components/Tooltip'

View File

@ -1,4 +1,4 @@
import { Box, Flex, H3, styled, Text } from '@traefiklabs/faency'
import { Box, Flex, H3, styled, Text } from '@traefik-labs/faency'
import { FiLayers } from 'react-icons/fi'
import { DetailSection, EmptyPlaceholder, ItemBlock, LayoutTwoCols, ProviderName } from './DetailSections'

View File

@ -1,4 +1,4 @@
import { Text } from '@traefiklabs/faency'
import { Text } from '@traefik-labs/faency'
import { ReactNode } from 'react'
import { BooleanState, ItemBlock } from './DetailSections'

View File

@ -1,4 +1,4 @@
import { Card, CSS, Flex, Text } from '@traefiklabs/faency'
import { Card, CSS, Flex, Text } from '@traefik-labs/faency'
import { ReactNode } from 'react'
type ResourceCardProps = {

View File

@ -1,4 +1,4 @@
import { Flex, styled, Text } from '@traefiklabs/faency'
import { Flex, styled, Text } from '@traefik-labs/faency'
import { ReactNode } from 'react'
import { colorByStatus, iconByStatus, StatusType } from 'components/resources/Status'

View File

@ -1,4 +1,4 @@
import { Badge, Text } from '@traefiklabs/faency'
import { Badge, Text } from '@traefik-labs/faency'
import { FiInfo } from 'react-icons/fi'
import { DetailSection, ItemBlock, LayoutTwoCols, ProviderName } from './DetailSections'

View File

@ -1,4 +1,4 @@
import { Box, CSS } from '@traefiklabs/faency'
import { Box, CSS } from '@traefik-labs/faency'
import { ReactNode } from 'react'
import { FiAlertCircle, FiAlertTriangle, FiCheckCircle } from 'react-icons/fi'

View File

@ -1,4 +1,4 @@
import { Badge, Box, Flex, Text } from '@traefiklabs/faency'
import { Badge, Box, Flex, Text } from '@traefik-labs/faency'
import { FiShield } from 'react-icons/fi'
import { BooleanState, DetailSection, EmptyPlaceholder, ItemBlock } from './DetailSections'

View File

@ -1,4 +1,4 @@
import { Box, Card, Flex, H3, Skeleton, styled, Text } from '@traefiklabs/faency'
import { Box, Card, Flex, H3, Skeleton, styled, Text } from '@traefik-labs/faency'
import { Chart as ChartJs, ArcElement, Tooltip } from 'chart.js'
import { ReactNode, useEffect, useMemo, useState } from 'react'
import { Doughnut } from 'react-chartjs-2'

View File

@ -1,4 +1,4 @@
import { AriaTable, AriaTbody, AriaTd, AriaTh, AriaThead, AriaTr, Box, Flex, styled } from '@traefiklabs/faency'
import { AriaTable, AriaTbody, AriaTd, AriaTh, AriaThead, AriaTr, Box, Flex, styled } from '@traefik-labs/faency'
import { orderBy } from 'lodash'
import { useContext, useEffect, useMemo } from 'react'
import { useSearchParams } from 'react-router-dom'

View File

@ -1,4 +1,4 @@
import { AriaTh, CSS, Flex, Label } from '@traefiklabs/faency'
import { AriaTh, CSS, Flex, Label } from '@traefik-labs/faency'
import { useCallback, useMemo } from 'react'
import { useSearchParams } from 'react-router-dom'

View File

@ -1,4 +1,4 @@
import { AriaTd, AriaTr } from '@traefiklabs/faency'
import { AriaTd, AriaTr } from '@traefik-labs/faency'
import { stringify } from 'query-string'
import { ReactNode } from 'react'
import useSWRInfinite, { SWRInfiniteConfiguration } from 'swr/infinite'

View File

@ -1,4 +1,4 @@
import { Flex, styled } from '@traefiklabs/faency'
import { Flex, styled } from '@traefik-labs/faency'
import breakpoints from 'utils/breakpoints'

View File

@ -1,4 +1,4 @@
import { AriaTd, Flex, Text } from '@traefiklabs/faency'
import { AriaTd, Flex, Text } from '@traefik-labs/faency'
import { FiAlertTriangle } from 'react-icons/fi'
type EmptyPlaceholderProps = {

View File

@ -1,4 +1,4 @@
import { Box, Button, Text } from '@traefiklabs/faency'
import { Box, Button, Text } from '@traefik-labs/faency'
import { FallbackProps } from 'react-error-boundary'
const ErrorFallback = ({ error, resetErrorBoundary }: FallbackProps) => {

View File

@ -19,7 +19,7 @@ import {
Text,
Tooltip,
VisuallyHidden,
} from '@traefiklabs/faency'
} from '@traefik-labs/faency'
import { useContext, useEffect, useMemo, useState } from 'react'
import { Helmet } from 'react-helmet-async'
import { BsChevronDoubleRight, BsChevronDoubleLeft } from 'react-icons/bs'

View File

@ -1,4 +1,4 @@
import { Flex, globalCss, styled } from '@traefiklabs/faency'
import { Flex, globalCss, styled } from '@traefik-labs/faency'
import { ReactNode, useMemo, useState } from 'react'
import { Helmet } from 'react-helmet-async'
import { useLocation } from 'react-router-dom'

View File

@ -1,4 +1,4 @@
import { Box, Button, Flex, H1, Text } from '@traefiklabs/faency'
import { Box, Button, Flex, H1, Text } from '@traefik-labs/faency'
import { Helmet } from 'react-helmet-async'
import { useNavigate } from 'react-router-dom'

View File

@ -1,4 +1,4 @@
import { Card, CSS, Flex, Grid, H2, Text } from '@traefiklabs/faency'
import { Card, CSS, Flex, Grid, H2, Text } from '@traefik-labs/faency'
import { ReactNode, useMemo } from 'react'
import { Helmet } from 'react-helmet-async'
import useSWR from 'swr'

View File

@ -1,4 +1,4 @@
import { Box, Card, H1, Skeleton, styled, Text } from '@traefiklabs/faency'
import { Box, Card, H1, Skeleton, styled, Text } from '@traefik-labs/faency'
import { Helmet } from 'react-helmet-async'
import { useParams } from 'react-router-dom'

View File

@ -1,4 +1,4 @@
import { AriaTable, AriaTbody, AriaTd, AriaTfoot, AriaThead, AriaTr, Box, Flex } from '@traefiklabs/faency'
import { AriaTable, AriaTbody, AriaTd, AriaTfoot, AriaThead, AriaTr, Box, Flex } from '@traefik-labs/faency'
import { useMemo } from 'react'
import { Helmet } from 'react-helmet-async'
import useInfiniteScroll from 'react-infinite-scroll-hook'

View File

@ -1,4 +1,4 @@
import { Flex, styled, Text } from '@traefiklabs/faency'
import { Flex, styled, Text } from '@traefik-labs/faency'
import { useContext, useEffect, useMemo } from 'react'
import { Helmet } from 'react-helmet-async'
import { FiGlobe, FiLayers, FiLogIn, FiZap } from 'react-icons/fi'

View File

@ -1,4 +1,4 @@
import { AriaTable, AriaTbody, AriaTd, AriaTfoot, AriaThead, AriaTr, Box, Flex } from '@traefiklabs/faency'
import { AriaTable, AriaTbody, AriaTd, AriaTfoot, AriaThead, AriaTr, Box, Flex } from '@traefik-labs/faency'
import { useMemo } from 'react'
import { Helmet } from 'react-helmet-async'
import { FiShield } from 'react-icons/fi'

View File

@ -1,4 +1,4 @@
import { Badge, Box, Flex, H1, Skeleton, styled, Text } from '@traefiklabs/faency'
import { Badge, Box, Flex, H1, Skeleton, styled, Text } from '@traefik-labs/faency'
import { useMemo } from 'react'
import { Helmet } from 'react-helmet-async'
import { FiGlobe, FiInfo, FiShield } from 'react-icons/fi'

View File

@ -1,4 +1,4 @@
import { AriaTable, AriaTbody, AriaTd, AriaTfoot, AriaThead, AriaTr, Box, Flex, Text } from '@traefiklabs/faency'
import { AriaTable, AriaTbody, AriaTd, AriaTfoot, AriaThead, AriaTr, Box, Flex, Text } from '@traefik-labs/faency'
import { useMemo } from 'react'
import { Helmet } from 'react-helmet-async'
import useInfiniteScroll from 'react-infinite-scroll-hook'

View File

@ -1,4 +1,4 @@
import { Box, Flex, Image, Link, Text } from '@traefiklabs/faency'
import { Box, Flex, Image, Link, Text } from '@traefik-labs/faency'
import { useMemo, useEffect, useState } from 'react'
import { Helmet } from 'react-helmet-async'
import { useParams } from 'react-router-dom'

View File

@ -1,4 +1,4 @@
import { Badge, Box, Flex, Text } from '@traefiklabs/faency'
import { Badge, Box, Flex, Text } from '@traefik-labs/faency'
import { useContext, useState } from 'react'
import { BsChevronRight } from 'react-icons/bs'

View File

@ -1,4 +1,4 @@
import { Flex } from '@traefiklabs/faency'
import { Flex } from '@traefik-labs/faency'
import { useId } from 'react'
import { CustomIconProps } from 'components/icons'

View File

@ -1,4 +1,4 @@
import { Flex } from '@traefiklabs/faency'
import { Flex } from '@traefik-labs/faency'
import { CustomIconProps } from 'components/icons'

View File

@ -1,4 +1,4 @@
import { Flex } from '@traefiklabs/faency'
import { Flex } from '@traefik-labs/faency'
import { useId } from 'react'
import { CustomIconProps } from 'components/icons'

View File

@ -1,4 +1,4 @@
import { Flex } from '@traefiklabs/faency'
import { Flex } from '@traefik-labs/faency'
import { useId } from 'react'
import { CustomIconProps } from 'components/icons'

View File

@ -1,4 +1,4 @@
import { Card, Box, H1, Skeleton, styled, Text } from '@traefiklabs/faency'
import { Card, Box, H1, Skeleton, styled, Text } from '@traefik-labs/faency'
import { Helmet } from 'react-helmet-async'
import { useParams } from 'react-router-dom'

View File

@ -1,4 +1,4 @@
import { AriaTable, AriaTbody, AriaTd, AriaTfoot, AriaThead, AriaTr, Box, Flex } from '@traefiklabs/faency'
import { AriaTable, AriaTbody, AriaTd, AriaTfoot, AriaThead, AriaTr, Box, Flex } from '@traefik-labs/faency'
import { useMemo } from 'react'
import { Helmet } from 'react-helmet-async'
import useInfiniteScroll from 'react-infinite-scroll-hook'

View File

@ -1,4 +1,4 @@
import { Flex, styled, Text } from '@traefiklabs/faency'
import { Flex, styled, Text } from '@traefik-labs/faency'
import { Helmet } from 'react-helmet-async'
import { useParams } from 'react-router-dom'

View File

@ -1,4 +1,4 @@
import { AriaTable, AriaTbody, AriaTd, AriaTfoot, AriaThead, AriaTr, Box, Flex } from '@traefiklabs/faency'
import { AriaTable, AriaTbody, AriaTd, AriaTfoot, AriaThead, AriaTr, Box, Flex } from '@traefik-labs/faency'
import { useMemo } from 'react'
import { Helmet } from 'react-helmet-async'
import { FiShield } from 'react-icons/fi'

View File

@ -1,4 +1,4 @@
import { Box, Flex, H1, Skeleton, styled, Text } from '@traefiklabs/faency'
import { Box, Flex, H1, Skeleton, styled, Text } from '@traefik-labs/faency'
import { useMemo } from 'react'
import { Helmet } from 'react-helmet-async'
import { FiGlobe, FiInfo, FiShield } from 'react-icons/fi'

View File

@ -1,4 +1,4 @@
import { AriaTable, AriaTbody, AriaTd, AriaTfoot, AriaThead, AriaTr, Box, Flex, Text } from '@traefiklabs/faency'
import { AriaTable, AriaTbody, AriaTd, AriaTfoot, AriaThead, AriaTr, Box, Flex, Text } from '@traefik-labs/faency'
import { useMemo } from 'react'
import { Helmet } from 'react-helmet-async'
import useInfiniteScroll from 'react-infinite-scroll-hook'

View File

@ -1,4 +1,4 @@
import { Flex, styled, Text } from '@traefiklabs/faency'
import { Flex, styled, Text } from '@traefik-labs/faency'
import { Helmet } from 'react-helmet-async'
import { useParams } from 'react-router-dom'

View File

@ -1,4 +1,4 @@
import { AriaTable, AriaTbody, AriaTd, AriaTfoot, AriaThead, AriaTr, Box, Flex } from '@traefiklabs/faency'
import { AriaTable, AriaTbody, AriaTd, AriaTfoot, AriaThead, AriaTr, Box, Flex } from '@traefik-labs/faency'
import { useMemo } from 'react'
import { Helmet } from 'react-helmet-async'
import useInfiniteScroll from 'react-infinite-scroll-hook'

View File

@ -1,4 +1,4 @@
import { Flex, H1, Skeleton, styled, Text } from '@traefiklabs/faency'
import { Flex, H1, Skeleton, styled, Text } from '@traefik-labs/faency'
import { Helmet } from 'react-helmet-async'
import { useParams } from 'react-router-dom'

View File

@ -1,4 +1,4 @@
import { AriaTable, AriaTbody, AriaTd, AriaTfoot, AriaThead, AriaTr, Box, Flex, Text } from '@traefiklabs/faency'
import { AriaTable, AriaTbody, AriaTd, AriaTfoot, AriaThead, AriaTr, Box, Flex, Text } from '@traefik-labs/faency'
import { useMemo } from 'react'
import { Helmet } from 'react-helmet-async'
import useInfiniteScroll from 'react-infinite-scroll-hook'

View File

@ -1,5 +1,5 @@
import { cleanup, render } from '@testing-library/react'
import { FaencyProvider } from '@traefiklabs/faency'
import { FaencyProvider } from '@traefik-labs/faency'
import { HelmetProvider } from 'react-helmet-async'
import { MemoryRouter } from 'react-router-dom'
import { SWRConfig } from 'swr'

File diff suppressed because it is too large Load Diff