feat: Initial plugin targeting 4.18 and PF5 (#10431) - #262
Conversation
|
Important Review skippedAuto reviews are disabled on base/target branches other than the default branch. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Plus Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
📝 WalkthroughSummary by CodeRabbit
WalkthroughThe plugin was aligned with OpenShift Console 4.18 and PatternFly 5. Dependencies, workspace overrides, component APIs, CSS classes, design tokens, graph behavior, empty states, error states, and console startup configuration were updated. ChangesConsole and PatternFly migration
Estimated code review effort: 4 (Complex) | ~45 minutes Suggested reviewers: 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|
@coderabbitai review |
✅ Action performedReview finished.
|
There was a problem hiding this comment.
Actionable comments posted: 5
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@package.json`:
- Around line 46-47: Update the `@typescript-eslint/eslint-plugin` and
`@typescript-eslint/parser` dependency declarations together to versions that
officially support TypeScript 5.9, and regenerate the lockfile so both packages
resolve consistently to the supported version.
- Line 24: Update the direct `@jest/types` dependency in package.json from the
Jest 30 range to a Jest 29-compatible version, preferably matching the
runtime-resolved 29.6.3 release. Keep the Jest dependency stack on the same
major version rather than upgrading only `@jest/types`.
In `@src/gitops/components/application/Conditions/ConditionsPopover.tsx`:
- Line 66: Update the className conditional in ConditionsPopover to use the
PatternFly 5 utility `pf-v5-u-pl-sm` instead of `pf-v6u-pl-sm` when
summary.error or summary.warning is greater than zero.
In `@src/gitops/components/project/project-list.scss`:
- Around line 27-32: Insert a blank line between the PatternFly custom
properties and the regular max-width declaration in the table cell style block,
preserving all existing declarations and values.
In `@src/gitops/components/shared/DetailsPageHeader/details-page-header.scss`:
- Around line 7-8: Update the calc expression in the details page header styles
so the line break does not occur immediately after the + operator; keep the
second operand on the same line or move the operator to the next line while
preserving the calculation.
🪄 Autofix
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro Plus
Run ID: 16ccc5e1-10e5-484e-a87e-619a2bdafcbb
⛔ Files ignored due to path filters (4)
pnpm-lock.yamlis excluded by!**/pnpm-lock.yamlsrc/images/argo-icon.svgis excluded by!**/*.svgsrc/images/argo.pngis excluded by!**/*.pngsrc/images/argo.svgis excluded by!**/*.svg
📒 Files selected for processing (68)
package.jsonpnpm-workspace.yamlsrc/gitops/Statuses/SyncStatus.test.tsxsrc/gitops/components/application/ApplicationDetailsTab.tsxsrc/gitops/components/application/ApplicationResourcesTab.tsxsrc/gitops/components/application/ApplicationResourcesView.tsxsrc/gitops/components/application/ApplicationSourcesTab.tsxsrc/gitops/components/application/ApplicationSyncStatusTab.tsxsrc/gitops/components/application/Conditions/ConditionsPopover.tsxsrc/gitops/components/application/History/History.scsssrc/gitops/components/application/History/History.tsxsrc/gitops/components/application/application-details-title.scsssrc/gitops/components/application/graph/ApplicationGraphView.scsssrc/gitops/components/application/graph/nodes/ApplicationNode.tsxsrc/gitops/components/appset/AppSetDetailsTab.scsssrc/gitops/components/appset/AppSetDetailsTab.tsxsrc/gitops/components/appset/generators/ClusterGenerator.tsxsrc/gitops/components/appset/generators/GenericGenerator.tsxsrc/gitops/components/appset/graph/ApplicationSetGraphView.tsxsrc/gitops/components/appset/graph/nodes/ApplicationSetNode.tsxsrc/gitops/components/appset/graph/nodes/StepGroupComponent.tsxsrc/gitops/components/imageupdater/ImageUpdaterDetailsTab.tsxsrc/gitops/components/imageupdater/ImageUpdaterList.tsxsrc/gitops/components/imageupdater/ImageUpdaterNavPage.tsxsrc/gitops/components/imageupdater/ImageUpdaterRecentUpdatesTab.tsxsrc/gitops/components/imageupdater/imageupdater-list.scsssrc/gitops/components/project/DestinationsList.tsxsrc/gitops/components/project/ProjectAllowDenyTab.tsxsrc/gitops/components/project/ProjectDetailsTab.tsxsrc/gitops/components/project/ProjectList.tsxsrc/gitops/components/project/ProjectNavPage.tsxsrc/gitops/components/project/ProjectRolesTab.tsxsrc/gitops/components/project/ProjectSyncWindowsTab.tsxsrc/gitops/components/project/ResourceAllowDenyList.tsxsrc/gitops/components/project/project-list.scsssrc/gitops/components/rollout/RolloutDetailsTab.tsxsrc/gitops/components/rollout/RolloutList.tsxsrc/gitops/components/rollout/RolloutNavPage.tsxsrc/gitops/components/rollout/RolloutRevisionsTab.tsxsrc/gitops/components/rollout/components/AnalysisRunStatus/AnalysisRunStatus.scsssrc/gitops/components/rollout/components/PodList/PodList.tsxsrc/gitops/components/rollout/components/RevisionAlertGroup/RevisionAlertGroup.tsxsrc/gitops/components/rollout/revisions/Revisions.scsssrc/gitops/components/rollout/revisions/Revisions.tsxsrc/gitops/components/rollout/strategy/CanaryServices.tsxsrc/gitops/components/rollout/utils/TopologyLink.tsxsrc/gitops/components/shared/ApplicationList.tsxsrc/gitops/components/shared/ApplicationSetList.tsxsrc/gitops/components/shared/ArgoCDLink/ArgoCDLink.tsxsrc/gitops/components/shared/BaseDetailsSummary/BaseDetailsSummary.tsxsrc/gitops/components/shared/DetailsPageHeader/DetailsPageHeader.tsxsrc/gitops/components/shared/DetailsPageHeader/details-page-header.scsssrc/gitops/components/shared/FavoriteButton/FavoriteButton.tsxsrc/gitops/components/shared/FieldLevelHelp/FieldLevelHelp.scsssrc/gitops/components/shared/FieldLevelHelp/FieldLevelHelp.tsxsrc/gitops/components/shared/GitOpsGraphListView.scsssrc/gitops/components/shared/ResourceYAMLTab/ResourceYAMLTab.scsssrc/gitops/topology/console/Decorator.scsssrc/gitops/topology/sidebar/DeploymentSideBarDetails.tsxsrc/gitops/utils/components/ActionDropDownItem/action-dropdown-item.scsssrc/gitops/utils/components/Conditions/Conditions.tsxsrc/gitops/utils/components/Icons/Icons.tsxsrc/gitops/utils/components/OwnerReferences/owner-references.tsxsrc/images/argo-icon.scsssrc/index.d.tssrc/plugin/import/badges/Badge.scsssrc/plugin/status/icons.tsxstart-console.sh
💤 Files with no reviewable changes (1)
- src/images/argo-icon.scss
| "@openshift-console/dynamic-plugin-sdk": "^4.19.1", | ||
| "@openshift-console/dynamic-plugin-sdk-internal": "^4.19.1", | ||
| "@openshift-console/dynamic-plugin-sdk-webpack": "^4.19.1", | ||
| "@jest/types": "^30.4.1", |
There was a problem hiding this comment.
📐 Maintainability & Code Quality | 🟡 Minor | ⚡ Quick win
🧩 Analysis chain
🏁 Script executed:
#!/usr/bin/env bash
set -euo pipefail
ast-grep outline jest.config.ts --items all
sed -n '1,220p' jest.config.ts
rg -n -C 2 '"`@jest/types`"|"jest"|"jest-environment-jsdom"|"ts-jest"' package.json pnpm-lock.yamlRepository: redhat-developer/gitops-console-plugin
Length of output: 2892
🏁 Script executed:
#!/usr/bin/env bash
set -euo pipefail
printf '%s\n' '--- package.json ---'
cat -n package.json | sed -n '20,85p'
printf '%s\n' '--- lockfile entries ---'
rg -n -C 5 '(^|[[:space:]])(`@jest/types`|jest@|jest-environment-jsdom@|ts-jest@)|/@jest/types@|/jest@|/jest-environment-jsdom@|/ts-jest@' pnpm-lock.yaml | head -n 240
printf '%s\n' '--- all Jest-related package declarations ---'
rg -n 'jest|`@jest`' package.json pnpm-lock.yaml jest.config.tsRepository: redhat-developer/gitops-console-plugin
Length of output: 23120
🏁 Script executed:
#!/usr/bin/env bash
set -euo pipefail
tmpdir="$(mktemp -d)"
trap 'rm -rf "$tmpdir"' EXIT
for version in 29.6.3 30.4.1; do
curl -fsSL "https://registry.npmjs.org/@jest/types/-/types-${version}.tgz" \
-o "$tmpdir/types-${version}.tgz"
mkdir "$tmpdir/$version"
tar -xzf "$tmpdir/types-${version}.tgz" -C "$tmpdir/$version"
done
printf '%s\n' '--- Config declarations ---'
rg -n -A 180 -B 5 'namespace Config|interface InitialOptions|type InitialOptions' \
"$tmpdir/29.6.3/package/build/index.d.ts" \
"$tmpdir/30.4.1/package/build/index.d.ts"
printf '%s\n' '--- declaration diff ---'
diff -u \
"$tmpdir/29.6.3/package/build/index.d.ts" \
"$tmpdir/30.4.1/package/build/index.d.ts" \
| sed -n '1,260p' || trueRepository: redhat-developer/gitops-console-plugin
Length of output: 50394
🏁 Script executed:
#!/usr/bin/env bash
set -euo pipefail
tmpdir="$(mktemp -d)"
trap 'rm -rf "$tmpdir"' EXIT
for version in 29.6.3 30.4.1; do
curl -fsSL "https://registry.npmjs.org/@jest/types/-/types-${version}.tgz" \
-o "$tmpdir/types-${version}.tgz"
mkdir "$tmpdir/$version"
tar -xzf "$tmpdir/types-${version}.tgz" -C "$tmpdir/$version"
done
for version in 29.6.3 30.4.1; do
file="$tmpdir/$version/package/build/index.d.ts"
printf '\n--- `@jest/types` %s InitialOptions ---\n' "$version"
start="$(rg -n '^declare type InitialOptions = Partial<\{' "$file" | cut -d: -f1)"
end="$(tail -n +"$start" "$file" | rg -n '^}>;' | head -n 1 | cut -d: -f1)"
sed -n "${start},$((start + end - 1))p" "$file" \
| rg '^[[:space:]]+[A-Za-z][A-Za-z0-9]*\??:'
done
printf '\n--- fields used by jest.config.ts ---\n'
rg -n 'preset|testEnvironment|testRegex|moduleNameMapper|testPathIgnorePatterns|collectCoverageFrom' \
"$tmpdir/29.6.3/package/build/index.d.ts" \
"$tmpdir/30.4.1/package/build/index.d.ts"Repository: redhat-developer/gitops-console-plugin
Length of output: 3320
🏁 Script executed:
#!/usr/bin/env bash
set -euo pipefail
tmpdir="$(mktemp -d)"
trap 'rm -rf "$tmpdir"' EXIT
for version in 29.6.3 30.4.1; do
curl -fsSL "https://registry.npmjs.org/@jest/types/-/types-${version}.tgz" \
-o "$tmpdir/types-${version}.tgz"
mkdir "$tmpdir/$version"
tar -xzf "$tmpdir/types-${version}.tgz" -C "$tmpdir/$version"
done
for version in 29.6.3 30.4.1; do
file="$tmpdir/$version/package/build/index.d.ts"
printf '\n--- `@jest/types` %s InitialOptions references ---\n' "$version"
rg -n -A 120 -B 8 'InitialOptions' "$file" | head -n 170
doneRepository: redhat-developer/gitops-console-plugin
Length of output: 10574
🏁 Script executed:
#!/usr/bin/env bash
set -euo pipefail
tmpdir="$(mktemp -d)"
trap 'rm -rf "$tmpdir"' EXIT
for package_version in '`@jest/schemas`@30.4.1' '`@jest/schemas`@29.6.3'; do
package="${package_version%@*}"
version="${package_version#*@}"
encoded_package="${package//@/%40}"
curl -fsSL "https://registry.npmjs.org/${encoded_package}/-/${package##*/}-${version}.tgz" \
-o "$tmpdir/${package##*/}-${version}.tgz"
mkdir "$tmpdir/${package##*/}-${version}"
tar -xzf "$tmpdir/${package##*/}-${version}.tgz" \
-C "$tmpdir/${package##*/}-${version}"
done
for version in 29.6.3 30.4.1; do
file="$tmpdir/schemas-$version/package/build/index.d.ts"
printf '\n--- `@jest/schemas` %s InitialOptions ---\n' "$version"
rg -n -A 140 -B 5 'InitialOptions' "$file" | head -n 180
doneRepository: redhat-developer/gitops-console-plugin
Length of output: 227
🏁 Script executed:
#!/usr/bin/env bash
set -euo pipefail
tmpdir="$(mktemp -d)"
trap 'rm -rf "$tmpdir"' EXIT
for version in 29.6.3 30.4.1; do
metadata="$(curl -fsSL 'https://registry.npmjs.org/%40jest%2Fschemas')"
tarball="$(printf '%s' "$metadata" | jq -r --arg v "$version" '.versions[$v].dist.tarball')"
test "$tarball" != "null"
curl -fsSL "$tarball" -o "$tmpdir/schemas-$version.tgz"
mkdir "$tmpdir/schemas-$version"
tar -xzf "$tmpdir/schemas-$version.tgz" -C "$tmpdir/schemas-$version"
done
for version in 29.6.3 30.4.1; do
file="$tmpdir/schemas-$version/package/build/index.d.ts"
printf '\n--- `@jest/schemas` %s InitialOptions ---\n' "$version"
rg -n -A 140 -B 5 'InitialOptions' "$file" | head -n 180
doneRepository: redhat-developer/gitops-console-plugin
Length of output: 221
🏁 Script executed:
#!/usr/bin/env bash
set -euo pipefail
tmpdir="$(mktemp -d)"
trap 'rm -rf "$tmpdir"' EXIT
metadata="$(curl -fsSL 'https://registry.npmjs.org/%40jest%2Fschemas%2F30.4.1')"
tarball="$(printf '%s' "$metadata" | jq -r '.dist.tarball')"
curl -fsSL "$tarball" -o "$tmpdir/schemas.tgz"
mkdir "$tmpdir/schemas"
tar -xzf "$tmpdir/schemas.tgz" -C "$tmpdir/schemas"
printf '%s\n' '--- package contents ---'
find "$tmpdir/schemas/package" -maxdepth 3 -type f -print
printf '%s\n' '--- InitialOptions definitions and references ---'
rg -n -A 120 -B 8 'InitialOptions|testRegex|moduleNameMapper|testPathIgnorePatterns|collectCoverageFrom|preset' \
"$tmpdir/schemas/package" || trueRepository: redhat-developer/gitops-console-plugin
Length of output: 227
🏁 Script executed:
#!/usr/bin/env bash
set -euo pipefail
tmpdir="$(mktemp -d)"
trap 'rm -rf "$tmpdir"' EXIT
metadata="$(curl -fsSL 'https://registry.npmjs.org/%40jest%2Fschemas')"
printf '%s' "$metadata" | jq -r '.versions["30.4.1"].dist.tarball'
tarball="$(printf '%s' "$metadata" | jq -r '.versions["30.4.1"].dist.tarball')"
test "$tarball" != "null"
curl -fsSL "$tarball" -o "$tmpdir/schemas.tgz"
mkdir "$tmpdir/schemas"
tar -xzf "$tmpdir/schemas.tgz" -C "$tmpdir/schemas"
printf '%s\n' '--- package contents ---'
find "$tmpdir/schemas/package" -maxdepth 3 -type f -print
printf '%s\n' '--- relevant declarations ---'
rg -n -A 120 -B 8 'InitialOptions|testRegex|moduleNameMapper|testPathIgnorePatterns|collectCoverageFrom|preset' \
"$tmpdir/schemas/package" || trueRepository: redhat-developer/gitops-console-plugin
Length of output: 50394
Align @jest/types with Jest 29.
The Jest runtime resolves @jest/types 29.6.3, but the direct dependency resolves 30.4.1. Use the Jest 29 major, or upgrade the complete Jest stack together.
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In `@package.json` at line 24, Update the direct `@jest/types` dependency in
package.json from the Jest 30 range to a Jest 29-compatible version, preferably
matching the runtime-resolved 29.6.3 release. Keep the Jest dependency stack on
the same major version rather than upgrading only `@jest/types`.
Source: Path instructions
| "@typescript-eslint/eslint-plugin": "^5.15.0", | ||
| "@typescript-eslint/parser": "^5.15.0", |
There was a problem hiding this comment.
📐 Maintainability & Code Quality | 🟠 Major | ⚡ Quick win
🧩 Analysis chain
🏁 Script executed:
#!/usr/bin/env bash
set -euo pipefail
npm view '`@typescript-eslint/parser`@5.15.0' peerDependencies --json
npm view '`@typescript-eslint/eslint-plugin`@5.15.0' peerDependencies --json
rg -n -C 2 '"typescript"|"`@typescript-eslint/`(parser|eslint-plugin)"' package.json pnpm-lock.yamlRepository: redhat-developer/gitops-console-plugin
Length of output: 1826
🏁 Script executed:
#!/usr/bin/env bash
set -euo pipefail
printf '%s\n' '--- package.json ---'
cat -n package.json | sed -n '35,90p'
printf '%s\n' '--- lockfile entries ---'
rg -n -C 5 '`@typescript-eslint/`(eslint-plugin|parser)|typescript@|typescript:' pnpm-lock.yaml | head -n 220
printf '%s\n' '--- package metadata ---'
npm view '`@typescript-eslint/parser`@5.15.0' version dependencies peerDependencies engines --json
npm view '`@typescript-eslint/typescript-estree`@5.15.0' version dependencies peerDependencies engines --json
npm view '`@typescript-eslint/parser`@5.15.0' dist.tarball --jsonRepository: redhat-developer/gitops-console-plugin
Length of output: 11768
🌐 Web query:
@typescript-eslint/typescript-estree 5.62.0 supported TypeScript versions
💡 Result:
The @typescript-eslint/typescript-estree package does not strictly enforce supported TypeScript versions through fixed dependencies [1]. Instead, it utilizes an open peerDependency requirement to allow users to experiment with newer or beta versions of TypeScript [2][3][4]. For version 5.62.0, released in July 2023, the tooling was designed to be compatible with TypeScript versions available at that time, generally following the project's policy of supporting TypeScript versions less than 2 years old [5]. While the package may technically function with a wide range of TypeScript versions, users are advised that official support is focused on stable, recent releases [5]. If you use an unsupported version of TypeScript, the parser will typically log a warning to the console, which can be configured via the onUnsupportedTypeScriptVersion option in your parserOptions [5][2].
Citations:
- 1: @typescript-eslint/types has a phantom dependency on the "typescript" package typescript-eslint/typescript-eslint#3622
- 2: https://github.com/typescript-eslint/typescript-eslint/tree/v5.6.0
- 3: https://www.npmjs.com/package/typescript-estree
- 4: https://github.com/typescript-eslint/typescript-eslint/tree/5f897287b8e43aa38734c0f262c8fa937bf2e940
- 5: https://typescript-eslint.io/users/dependency-versions/
Use a TypeScript ESLint version that supports TypeScript 5.9.
The lockfile resolves both TypeScript ESLint packages to 5.62.0. This version predates TypeScript 5.9 and does not officially support it. Upgrade both packages together, or use a supported TypeScript version.
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In `@package.json` around lines 46 - 47, Update the
`@typescript-eslint/eslint-plugin` and `@typescript-eslint/parser` dependency
declarations together to versions that officially support TypeScript 5.9, and
regenerate the lockfile so both packages resolve consistently to the supported
version.
Source: Path instructions
| </div> | ||
| )} | ||
| {summary.info > 0 && ( | ||
| <div className={summary.error > 0 || summary.warning > 0 ? 'pf-v6u-pl-sm' : ''}> |
There was a problem hiding this comment.
🎯 Functional Correctness | 🟡 Minor | ⚡ Quick win
🧩 Analysis chain
🏁 Script executed:
#!/bin/bash
set -euo pipefail
file="src/gitops/components/application/Conditions/ConditionsPopover.tsx"
! rg -n '\bpf-v6u-pl-sm\b' "$file"
rg -n '\bpf-v5-u-pl-sm\b' "$file"Repository: redhat-developer/gitops-console-plugin
Length of output: 342
🏁 Script executed:
#!/bin/bash
set -euo pipefail
file="src/gitops/components/application/Conditions/ConditionsPopover.tsx"
printf '%s\n' '--- target context ---'
sed -n '45,75p' "$file"
printf '%s\n' '--- utility-class references ---'
rg -n --glob '!node_modules' --glob '!dist' --glob '!build' \
'\bpf-(v5-u-pl-sm|v6u-pl-sm)\b' .
printf '%s\n' '--- PatternFly package and stylesheet references ---'
rg -n --glob 'package.json' --glob 'package-lock.json' --glob 'yarn.lock' --glob 'pnpm-lock.yaml' \
'patternfly|`@patternfly`' .
rg -n --glob '!node_modules' --glob '!dist' --glob '!build' \
'pf-v5-u-pl-sm|pf-v6u-pl-sm|patternfly.*css|patternfly.*scss' .Repository: redhat-developer/gitops-console-plugin
Length of output: 8556
Use the PatternFly 5 padding utility.
When an info condition appears with an error or warning, replace pf-v6u-pl-sm with pf-v5-u-pl-sm.
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In `@src/gitops/components/application/Conditions/ConditionsPopover.tsx` at line
66, Update the className conditional in ConditionsPopover to use the PatternFly
5 utility `pf-v5-u-pl-sm` instead of `pf-v6u-pl-sm` when summary.error or
summary.warning is greater than zero.
Source: Path instructions
| --pf-v5-c-table--cell--MaxWidth: none; | ||
| --pf-v5-c-table--m-truncate--cell--MaxWidth: none; | ||
| --pf-v5-c-table--cell--Overflow: visible; | ||
| --pf-v5-c-table--cell--TextOverflow: clip; | ||
| --pf-v5-c-table--cell--WhiteSpace: nowrap; | ||
| max-width: none !important; |
There was a problem hiding this comment.
📐 Maintainability & Code Quality | 🟡 Minor | ⚡ Quick win
Add the required blank line before max-width.
Stylelint reports Line 32 because no empty line separates the PatternFly 5 custom properties from the regular declarations. Add the blank line so the declaration-empty-line-before check passes.
Proposed fix
--pf-v5-c-table--cell--WhiteSpace: nowrap;
+
max-width: none !important;📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| --pf-v5-c-table--cell--MaxWidth: none; | |
| --pf-v5-c-table--m-truncate--cell--MaxWidth: none; | |
| --pf-v5-c-table--cell--Overflow: visible; | |
| --pf-v5-c-table--cell--TextOverflow: clip; | |
| --pf-v5-c-table--cell--WhiteSpace: nowrap; | |
| max-width: none !important; | |
| --pf-v5-c-table--cell--MaxWidth: none; | |
| --pf-v5-c-table--m-truncate--cell--MaxWidth: none; | |
| --pf-v5-c-table--cell--Overflow: visible; | |
| --pf-v5-c-table--cell--TextOverflow: clip; | |
| --pf-v5-c-table--cell--WhiteSpace: nowrap; | |
| max-width: none !important; |
🧰 Tools
🪛 Stylelint (17.14.0)
[error] 32-32: Expected empty line before declaration (declaration-empty-line-before)
(declaration-empty-line-before)
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In `@src/gitops/components/project/project-list.scss` around lines 27 - 32, Insert
a blank line between the PatternFly custom properties and the regular max-width
declaration in the table cell style block, preserving all existing declarations
and values.
Source: Linters/SAST tools
| var(--pf-v5-global--FontSize--md) * var(--pf-v5-global--LineHeight--md) + | ||
| var(--pf-v5-global--spacer--form-element) * 2 |
There was a problem hiding this comment.
📐 Maintainability & Code Quality | 🟡 Minor | ⚡ Quick win
Fix the Stylelint error in the calc expression.
Stylelint reports operator-no-newline-after because the expression breaks immediately after +. Keep the second operand on the same line or move + to the next line.
Suggested fix
$co-button-height: calc(
- var(--pf-v5-global--FontSize--md) * var(--pf-v5-global--LineHeight--md) +
- var(--pf-v5-global--spacer--form-element) * 2
+ var(--pf-v5-global--FontSize--md) * var(--pf-v5-global--LineHeight--md) + var(--pf-v5-global--spacer--form-element) * 2
);📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| var(--pf-v5-global--FontSize--md) * var(--pf-v5-global--LineHeight--md) + | |
| var(--pf-v5-global--spacer--form-element) * 2 | |
| var(--pf-v5-global--FontSize--md) * var(--pf-v5-global--LineHeight--md) + var(--pf-v5-global--spacer--form-element) * 2 |
🧰 Tools
🪛 Stylelint (17.14.0)
[error] 7-7: Unexpected newline after "+" (scss/operator-no-newline-after)
(scss/operator-no-newline-after)
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In `@src/gitops/components/shared/DetailsPageHeader/details-page-header.scss`
around lines 7 - 8, Update the calc expression in the details page header styles
so the line break does not occur immediately after the + operator; keep the
second operand on the same line or move the operator to the next line while
preserving the calculation.
Source: Linters/SAST tools
d7ce267 to
32fdca6
Compare
Codecov Report❌ Patch coverage is Additional details and impacted files@@ Coverage Diff @@
## release-4.18 #262 +/- ##
===============================================
Coverage ? 11.30%
===============================================
Files ? 169
Lines ? 6679
Branches ? 2234
===============================================
Hits ? 755
Misses ? 5923
Partials ? 1
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
04e4c25 to
8160d28
Compare
Signed-off-by: Keith Chong <kykchong@redhat.com>
8160d28 to
8244965
Compare
See GITOPS-10431