Skip to content

docs(evo-react): compact all-icons storybook example into a dense grid - #887

Closed
LuLaValva wants to merge 1 commit into
mainfrom
llavalva-M451495HWX-evo-compact-icon-examples-rb8fdd-react-icon-grid
Closed

docs(evo-react): compact all-icons storybook example into a dense grid#887
LuLaValva wants to merge 1 commit into
mainfrom
llavalva-M451495HWX-evo-compact-icon-examples-rb8fdd-react-icon-grid

Conversation

@LuLaValva

Copy link
Copy Markdown
Member

evo-react counterpart to #885: replaces the generated all-icons table with a dense grid. Clicking an icon toggles a bubble showing its selectable component tag (<EvoIconFoo/>); clicking it again, another icon, or anywhere else closes it. The cells render through a storybook-only IconExample helper with CSS-module styles, excluded from the package build (verified absent from dist/). The generated stories file joins the existing autogenerated entries in .prettierignore.

Dense icon grid with an open bubble showing <EvoIconAiFilled20/>

Storybook-only; no changeset.

🤖 Generated with Claude Code

Replaces the generated table with a dense icon grid. Clicking an icon
toggles a bubble showing its selectable component tag; focus out closes
it. The cells render through a storybook-only IconExample helper with
CSS-module styles, excluded from the package build.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Copilot AI lite review requested due to automatic review settings August 13, 2026 14:07
@changeset-bot

changeset-bot Bot commented Aug 13, 2026

Copy link
Copy Markdown

⚠️ No Changeset found

Latest commit: 318b153

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

This PR includes no changesets

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

@LuLaValva

Copy link
Copy Markdown
Member Author

Consolidated into #885 alongside the evo-marko changes.

@LuLaValva LuLaValva closed this Aug 13, 2026
@LuLaValva
LuLaValva deleted the llavalva-M451495HWX-evo-compact-icon-examples-rb8fdd-react-icon-grid branch August 13, 2026 14:09

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

This PR updates the @evo-web/react icon Storybook documentation to replace the generated “all icons” table with a compact grid, using a Storybook-only IconExample helper (plus scoped CSS-module styles) and updating the icon generation script accordingly.

Changes:

  • Add IconGrid/IconExample Storybook-only helper components to render a dense icon grid with a toggleable “component tag” bubble.
  • Update scripts/import-svg.ts to generate the AllIcons story using the new helper instead of a <table>.
  • Exclude the helper from production TS builds and ignore the generated icon.stories.tsx in Prettier.

Reviewed changes

Copilot reviewed 5 out of 7 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
packages/evo-react/tsconfig.prod.json Excludes the Storybook-only helper from prod type/build output.
packages/evo-react/src/icon/icon-example.tsx Adds the grid/cell rendering and toggle behavior for the Storybook icon grid.
packages/evo-react/src/icon/icon-example.module.css Provides scoped CSS-module styles for dense grid layout and bubble styling.
packages/evo-react/src/css-modules.d.ts Adds TS module typing for *.module.css imports used by the Storybook helper.
packages/evo-react/scripts/import-svg.ts Switches generated AllIcons story output from a table to the new helper-driven grid.
packages/evo-react/.prettierignore Adds the generated src/icon/icon.stories.tsx to ignored files.

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Comment on lines +19 to +23
onBlur={(e) => {
if (!e.currentTarget.contains(e.relatedTarget)) {
setOpen(false);
}
}}
Comment on lines +25 to +41
<button
type="button"
aria-label={name}
aria-expanded={open}
className={styles.host}
onClick={(e) => {
e.currentTarget.focus();
setOpen(!open);
}}
>
{children}
</button>
{open && (
<span role="tooltip" tabIndex={-1} className={styles.bubble}>
{`<${name}/>`}
</span>
)}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants