diff --git a/package-lock.json b/package-lock.json index 83c90a0e..35b71dec 100644 --- a/package-lock.json +++ b/package-lock.json @@ -6570,12 +6570,6 @@ "integrity": "sha512-cOU9usZw8/dXIXKtwa8pM0OTJQuJkxMN6w30csNRUerHfeQ5R6U3kkU/FtJeIf3M202OHfY2U8ccInBG7/xogA==", "dev": true }, - "node_modules/classnames": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/classnames/-/classnames-2.3.2.tgz", - "integrity": "sha512-CSbhY4cFEJRe6/GQzIk5qXZ4Jeg5pcsP7b5peFSDpffpe1cqjASH/n9UTjBwOp6XpMSTwQ8Za2K5V02ueA7Tmw==", - "dev": true - }, "node_modules/clean-css": { "version": "5.3.2", "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-5.3.2.tgz", @@ -6833,6 +6827,15 @@ "node": ">=6" } }, + "node_modules/clsx": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/clsx/-/clsx-2.0.0.tgz", + "integrity": "sha512-rQ1+kcj+ttHG0MKVGBUXwayCCF1oh39BF5COIpRzuCEv8Mwjv0XucrI2ExNTOn9IlLifGClWQcU9BrZORvtw6Q==", + "dev": true, + "engines": { + "node": ">=6" + } + }, "node_modules/co": { "version": "4.6.0", "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", @@ -22326,7 +22329,7 @@ "@types/react": "^18.0.0", "@types/react-dom": "^18.0.0", "@types/react-router-dom": "^5.3.3", - "classnames": "^2.2.5", + "clsx": "^2.0.0", "copyfiles": "^2.4.1", "react": "^18.0.0", "react-dom": "^18.0.0", diff --git a/packages/module/package.json b/packages/module/package.json index 1b697285..f84a942e 100644 --- a/packages/module/package.json +++ b/packages/module/package.json @@ -48,7 +48,7 @@ "@types/react": "^18.0.0", "@types/react-dom": "^18.0.0", "@types/react-router-dom": "^5.3.3", - "classnames": "^2.2.5", + "clsx": "^2.0.0", "copyfiles": "^2.4.1", "react": "^18.0.0", "react-dom": "^18.0.0", diff --git a/packages/module/patternfly-docs/content/extensions/component-groups/examples/LongTextTooltip/LongTextTooltipExample.tsx b/packages/module/patternfly-docs/content/extensions/component-groups/examples/LongTextTooltip/LongTextTooltipExample.tsx index e3a67691..5479ced5 100644 --- a/packages/module/patternfly-docs/content/extensions/component-groups/examples/LongTextTooltip/LongTextTooltipExample.tsx +++ b/packages/module/patternfly-docs/content/extensions/component-groups/examples/LongTextTooltip/LongTextTooltipExample.tsx @@ -2,9 +2,9 @@ import React from 'react'; import { TooltipPosition } from '@patternfly/react-core'; import LongTextTooltip from "@patternfly/react-component-groups/dist/dynamic/LongTextTooltip"; -export const LongTextTooltipExample: React.FunctionComponent = () => ( +export const BasicExample: React.FunctionComponent = () => ( -) +); diff --git a/packages/module/src/Ansible/Ansible.tsx b/packages/module/src/Ansible/Ansible.tsx index fbdaa82d..9ad53a37 100644 --- a/packages/module/src/Ansible/Ansible.tsx +++ b/packages/module/src/Ansible/Ansible.tsx @@ -1,5 +1,5 @@ import React from 'react'; -import classNames from 'classnames'; +import clsx from 'clsx'; import { createUseStyles } from 'react-jss'; export interface AnsibleProps extends React.DetailedHTMLProps, HTMLElement> { @@ -17,12 +17,12 @@ const useStyles = createUseStyles({ top: '0.25rem' } }, - supported: { + ansibleSupported: { '& .st0': { fill: 'var(--pf-v5-global--info-color--100)', } }, - unsupported: { + ansibleUnsupported: { '& .st0, .st1, .st2': { fill: 'var(--pf-v5-global--disabled-color--200)', cursor: 'not-allowed', @@ -32,10 +32,10 @@ const useStyles = createUseStyles({ const Ansible: React.FunctionComponent = ({ unsupported, className, ...props }: AnsibleProps) => { const classes = useStyles(); - const ansibleLogoClass = classNames( + const ansibleLogoClass = clsx( classes.ansible, - { [classes.supported]: !unsupported || unsupported === 0 }, - { [classes.unsupported]: unsupported || unsupported === 1 }, + { [classes.ansibleSupported]: !unsupported || unsupported === 0 }, + { [classes.ansibleUnsupported]: unsupported || unsupported === 1 }, className ); diff --git a/packages/module/src/Ansible/__snapshots__/Ansible.test.tsx.snap b/packages/module/src/Ansible/__snapshots__/Ansible.test.tsx.snap index 31d4082f..0aead775 100644 --- a/packages/module/src/Ansible/__snapshots__/Ansible.test.tsx.snap +++ b/packages/module/src/Ansible/__snapshots__/Ansible.test.tsx.snap @@ -3,7 +3,7 @@ exports[`Ansible component should render supported - boolean 1`] = `
{ + switch (severity) { + case 'critical': + case 4: + return classMode ? 'batteryCritical' : ; + case 'high': + case 'error': + case 3: + return classMode ? 'batteryHigh' : ; + case 'medium': + case 'warn': + case 2: + return classMode ? 'batteryMedium' : ; + case 'low': + case 'info': + case 1: + return classMode ? 'batteryLow' : ; + default: + // eslint-disable-next-line + console.error('Warning: Unsupported value presented to battery component'); + return classMode ? 'batteryDefault' : ; + } +}; + export type BatterySeverity = 1 | 2 | 3 | 4 | 'info' | 'low' | 'warn' | 'medium' | 'error' | 'high' | 'critical'; export interface BatteryProps extends React.DetailedHTMLProps, HTMLElement> { @@ -77,36 +89,14 @@ export interface BatteryProps extends React.DetailedHTMLProps = ({ severity, label, labelHidden, className, ...props }: BatteryProps) => { const classes = useStyles(); - const batteryClasses = classNames(classes.battery, classes[`battery-${severity}`], className); + const batteryClasses = clsx(classes.battery, classes[String(batteryLevels(severity, true))], className); let ariaLabels = {}; if (labelHidden) { ariaLabels = { ['aria-label']: `${severity} ${label}` }; } - const batteryLevels = (severity: BatterySeverity) => { - switch (severity) { - case 'critical': - case 4: - return ; - case 'high': - case 'error': - case 3: - return ; - case 'medium': - case 'warn': - case 2: - return ; - case 'low': - case 'info': - case 1: - return ; - default: - // eslint-disable-next-line - console.error('Warning: Unsupported value presented to battery component'); - return ; - } - }; + const batteryVariant = useMemo(() => batteryLevels(severity) , [ severity ]) return ( @@ -134,10 +124,10 @@ const Battery: React.FunctionComponent = ({ severity, label, label }} d="m 144.16452,21.032222 h 159.67454 q 123.1748,0 123.1748,128.667868 v 212.64759 q 0,128.66788 -123.1748,128.66788 H 144.16452 q -123.174811,0 -123.174811,-128.66788 V 149.70009 q 0,-128.667868 123.174811,-128.667868 z" /> - {batteryLevels(severity)} + {batteryVariant} - {!labelHidden && {label} } + {!labelHidden && {label} } ); }; diff --git a/packages/module/src/Battery/__snapshots__/Batery.test.tsx.snap b/packages/module/src/Battery/__snapshots__/Batery.test.tsx.snap index 14b758ba..eb13acf7 100644 --- a/packages/module/src/Battery/__snapshots__/Batery.test.tsx.snap +++ b/packages/module/src/Battery/__snapshots__/Batery.test.tsx.snap @@ -4,7 +4,7 @@ exports[`Battery component API should hide label 1`] = `
@@ -31,7 +31,7 @@ exports[`Battery component API should hide label 1`] = ` exports[`Battery component should render correctly CriticalBattery - 4 1`] = `
@@ -52,9 +52,7 @@ exports[`Battery component should render correctly CriticalBattery - 4 1`] = ` /> - + 4 @@ -65,7 +63,7 @@ exports[`Battery component should render correctly CriticalBattery - 4 1`] = ` exports[`Battery component should render correctly CriticalBattery - critical 1`] = `
@@ -86,9 +84,7 @@ exports[`Battery component should render correctly CriticalBattery - critical 1` /> - + critical @@ -99,7 +95,7 @@ exports[`Battery component should render correctly CriticalBattery - critical 1` exports[`Battery component should render correctly HighBattery - 3 1`] = `
@@ -120,9 +116,7 @@ exports[`Battery component should render correctly HighBattery - 3 1`] = ` /> - + 3 @@ -133,7 +127,7 @@ exports[`Battery component should render correctly HighBattery - 3 1`] = ` exports[`Battery component should render correctly HighBattery - error 1`] = `
@@ -154,9 +148,7 @@ exports[`Battery component should render correctly HighBattery - error 1`] = ` /> - + error @@ -167,7 +159,7 @@ exports[`Battery component should render correctly HighBattery - error 1`] = ` exports[`Battery component should render correctly HighBattery - high 1`] = `
@@ -188,9 +180,7 @@ exports[`Battery component should render correctly HighBattery - high 1`] = ` /> - + high @@ -201,7 +191,7 @@ exports[`Battery component should render correctly HighBattery - high 1`] = ` exports[`Battery component should render correctly LowBattery - 1 1`] = `
@@ -222,9 +212,7 @@ exports[`Battery component should render correctly LowBattery - 1 1`] = ` /> - + 1 @@ -235,7 +223,7 @@ exports[`Battery component should render correctly LowBattery - 1 1`] = ` exports[`Battery component should render correctly LowBattery - info 1`] = `
@@ -256,9 +244,7 @@ exports[`Battery component should render correctly LowBattery - info 1`] = ` /> - + info @@ -269,7 +255,7 @@ exports[`Battery component should render correctly LowBattery - info 1`] = ` exports[`Battery component should render correctly LowBattery - low 1`] = `
@@ -290,9 +276,7 @@ exports[`Battery component should render correctly LowBattery - low 1`] = ` /> - + low @@ -303,7 +287,7 @@ exports[`Battery component should render correctly LowBattery - low 1`] = ` exports[`Battery component should render correctly MediumBattery - 2 1`] = `
@@ -324,9 +308,7 @@ exports[`Battery component should render correctly MediumBattery - 2 1`] = ` /> - + 2 @@ -337,7 +319,7 @@ exports[`Battery component should render correctly MediumBattery - 2 1`] = ` exports[`Battery component should render correctly MediumBattery - medium 1`] = `
@@ -358,9 +340,7 @@ exports[`Battery component should render correctly MediumBattery - medium 1`] = /> - + medium @@ -371,7 +351,7 @@ exports[`Battery component should render correctly MediumBattery - medium 1`] = exports[`Battery component should render correctly MediumBattery - warn 1`] = `
@@ -392,9 +372,7 @@ exports[`Battery component should render correctly MediumBattery - warn 1`] = ` /> - + warn @@ -405,7 +383,7 @@ exports[`Battery component should render correctly MediumBattery - warn 1`] = ` exports[`Battery component should render correctly NullBatery, default 1`] = `
@@ -426,9 +404,7 @@ exports[`Battery component should render correctly NullBatery, default 1`] = ` /> - + diff --git a/packages/module/src/LongTextTooltip/LongTextTooltip.tsx b/packages/module/src/LongTextTooltip/LongTextTooltip.tsx index fa591d8f..5f2a0aca 100644 --- a/packages/module/src/LongTextTooltip/LongTextTooltip.tsx +++ b/packages/module/src/LongTextTooltip/LongTextTooltip.tsx @@ -12,7 +12,7 @@ export interface LongTextTooltipProps extends Omit { tooltipMaxWidth?: string; } -const LongTextTooltip: React.FC = ({ +const LongTextTooltip: React.FunctionComponent = ({ content = '', maxLength = Infinity, tooltipMaxWidth = '50vw', @@ -23,7 +23,7 @@ const LongTextTooltip: React.FC = ({ return content.length > maxLength ? ( {content}
} {...rest}> -
{truncate(content, maxLength)}
+ {truncate(content, maxLength)} ) : ( {content} diff --git a/packages/module/src/LongTextTooltip/__snapshots__/LongTextTooltip.test.tsx.snap b/packages/module/src/LongTextTooltip/__snapshots__/LongTextTooltip.test.tsx.snap index cb3cb2a7..c0966179 100644 --- a/packages/module/src/LongTextTooltip/__snapshots__/LongTextTooltip.test.tsx.snap +++ b/packages/module/src/LongTextTooltip/__snapshots__/LongTextTooltip.test.tsx.snap @@ -280,9 +280,9 @@ exports[`LongTextTooltip component should render content with maxLength shorter
-
+ … -
+
, @@ -290,9 +290,9 @@ exports[`LongTextTooltip component should render content with maxLength shorter
-
+ … -
+
, "debug": [Function],