Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix style issues in Storybook production build #3688

Merged
merged 1 commit into from
Oct 24, 2024

Conversation

AlanGreene
Copy link
Member

@AlanGreene AlanGreene commented Oct 23, 2024

Changes

The Storybook production build injects some CSS into the iframe used to render the stories. This uses nesting, which while well supported in browsers, causes issues with some build tooling which is not expecting it.

The vite-plugin-html minifies the CSS in any style tags by default, but this minification process does not account for nested CSS. The net result of this is that some of the styles which are expected to be scoped to .sb-errordisplay end up applying globally instead.

The most obvious manifestation of this was on the PipelineRun details story where there was an additional gap between each Task in the TaskTree caused by an unexpected li+li rule.

Note

This only affected display in the Storybook

Disable CSS minification in the HTML plugin since we don't need this for Storybook, and don't make use of style tags as part of the template for the Dashboard application itself.

/kind misc

Before:
image

After:
image

Submitter Checklist

As the author of this PR, please check off the items in this checklist:

  • Docs included if any changes are user facing
  • Tests included if any functionality added or changed
  • Follows the commit message standard
  • Meets the Tekton contributor standards (including
    functionality, content, code)
  • Has a kind label. You can add one by adding a comment on this PR that contains /kind <type>. Valid types are bug, cleanup, design, documentation, feature, flake, misc, question, tep
  • Release notes block below has been updated with any user facing changes (new features, significant UI changes, API changes, bug fixes, changes requiring upgrade notices or deprecation warnings)
  • Release notes contains the string "action required" if the change requires additional action from users switching to the new release

Release Notes

NONE

The Storybook production build injects some CSS into the iframe
used to render the stories. This uses nesting, which while well
supported in browsers, causes issues with some build tooling which
is not expecting it.

The `vite-plugin-html` minifies the CSS in any `style` tags by default,
but this minification process does not account for nested CSS. The
net result of this is that some of the styles which are expected
to be scoped to `.sb-errordisplay` end up applying globally instead.

The most obvious manifestation of this was on the PipelineRun details
story where there was an additional gap between each Task in the TaskTree
caused by an unexpected `li+li` rule.

Disable CSS minification in the HTML plugin since we don't need this
for Storybook, and don't make use of `style` tags as part of the template
for the Dashboard application itself.
@tekton-robot tekton-robot added kind/misc Categorizes issue or PR as a miscellaneuous one. size/XS Denotes a PR that changes 0-9 lines, ignoring generated files. labels Oct 23, 2024
Copy link
Contributor

@briangleeson briangleeson left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

/lgtm

@tekton-robot tekton-robot added the lgtm Indicates that a PR is ready to be merged. label Oct 24, 2024
@tekton-robot
Copy link
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: briangleeson

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@tekton-robot tekton-robot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Oct 24, 2024
@tekton-robot tekton-robot merged commit 1186737 into tektoncd:main Oct 24, 2024
8 checks passed
@AlanGreene AlanGreene deleted the storybook_prod_nested_css branch October 24, 2024 10:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
approved Indicates a PR has been approved by an approver from all required OWNERS files. kind/misc Categorizes issue or PR as a miscellaneuous one. lgtm Indicates that a PR is ready to be merged. size/XS Denotes a PR that changes 0-9 lines, ignoring generated files.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants