Skip to content

fix: add missing @vibe/style dependency to component packages#3330

Merged
rivka-ungar merged 1 commit intovibe4from
fix/add-missing-style-dependency
Mar 12, 2026
Merged

fix: add missing @vibe/style dependency to component packages#3330
rivka-ungar merged 1 commit intovibe4from
fix/add-missing-style-dependency

Conversation

@rivka-ungar
Copy link
Copy Markdown
Contributor

Summary

  • Added @vibe/style as a dependency to 5 component packages (clickable, button, dialog, layout, tooltip) that import from @vibe/style/dist/mixins/ in their SCSS files but didn't declare it
  • This fixes build failures on clean builds (after deleting dist/) where @vibe/style hadn't been built yet when these packages tried to compile their SCSS
  • Previously these packages imported from monday-ui-style (an npm-published package with pre-built dist/), but after renaming to @vibe/style they now resolve to the local workspace package which requires correct build ordering

Test plan

  • Run yarn build from a clean state (after deleting all dist/ folders) and verify no SCSS import errors

🤖 Generated with Claude Code

SCSS files in these packages import from @vibe/style/dist/mixins but
didn't declare it as a dependency, causing build failures on clean builds
when @vibe/style hasn't been built yet.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@rivka-ungar rivka-ungar requested a review from a team as a code owner March 12, 2026 09:46
@qodo-free-for-open-source-projects
Copy link
Copy Markdown
Contributor

Review Summary by Qodo

Add missing @vibe/style dependency to component packages

🐞 Bug fix

Grey Divider

Walkthroughs

Description
• Added @vibe/style dependency to 5 component packages
• Fixes build failures on clean builds when SCSS imports resolve to local workspace
• Ensures correct build ordering for packages importing from @vibe/style/dist/mixins/
Diagram
flowchart LR
  A["Component Packages<br/>button, clickable, dialog,<br/>layout, tooltip"] -- "import from" --> B["@vibe/style/dist/mixins/"]
  B -- "requires dependency" --> C["@vibe/style package"]
  C -- "must build first" --> D["Clean build success"]
Loading

Grey Divider

File Changes

1. packages/components/button/package.json Dependencies +1/-0

Add @vibe/style dependency

• Added @vibe/style as a dependency with version ^4.0.0-alpha.1
• Maintains alphabetical ordering in dependencies list

packages/components/button/package.json


2. packages/components/clickable/package.json Dependencies +1/-0

Add @vibe/style dependency

• Added @vibe/style as a dependency with version ^4.0.0-alpha.1
• Maintains alphabetical ordering in dependencies list

packages/components/clickable/package.json


3. packages/components/dialog/package.json Dependencies +1/-0

Add @vibe/style dependency

• Added @vibe/style as a dependency with version ^4.0.0-alpha.1
• Maintains alphabetical ordering in dependencies list

packages/components/dialog/package.json


View more (2)
4. packages/components/layout/package.json Dependencies +1/-0

Add @vibe/style dependency

• Added @vibe/style as a dependency with version ^4.0.0-alpha.1
• Maintains alphabetical ordering in dependencies list

packages/components/layout/package.json


5. packages/components/tooltip/package.json Dependencies +1/-0

Add @vibe/style dependency

• Added @vibe/style as a dependency with version ^4.0.0-alpha.1
• Maintains alphabetical ordering in dependencies list

packages/components/tooltip/package.json


Grey Divider

Qodo Logo

@qodo-free-for-open-source-projects
Copy link
Copy Markdown
Contributor

qodo-free-for-open-source-projects bot commented Mar 12, 2026

Code Review by Qodo

🐞 Bugs (1) 📘 Rule violations (0) 📎 Requirement gaps (0)

Grey Divider


Action required

1. Base missing style dependency 🐞 Bug ⛯ Reliability
Description
@vibe/base imports "~@vibe/style/dist/mixins" in its SCSS but still does not declare @vibe/style in
dependencies, so building @vibe/base can fail to resolve that import. The PR only fixes some
component packages, leaving the monorepo with the same missing-dependency class of failure in
@vibe/base.
Code

packages/components/button/package.json[44]

+    "@vibe/style": "^4.0.0-alpha.1",
Evidence
The repo shows @vibe/base directly importing from @vibe/style’s dist path in SCSS, while
@vibe/base/package.json omits @vibe/style entirely (and it also cannot be obtained transitively via
@vibe/shared). Since the root build runs builds across packages, @vibe/base will be built and can
hit this missing dependency issue just like the component packages fixed in this PR.

packages/base/src/BaseInput/BaseInput.module.scss[1-13]
packages/base/package.json[40-43]
packages/shared/package.json[48-50]
package.json[5-12]
packages/components/button/package.json[40-46]

Agent prompt
The issue below was found during a code review. Follow the provided context and guidance below and implement a solution

## Issue description
`@vibe/base` imports SCSS from `~@vibe/style/dist/...` but does not declare `@vibe/style` in `dependencies`, so builds that compile `@vibe/base` styles can fail to resolve the import.

## Issue Context
This PR adds `@vibe/style` to several component packages to fix SCSS import resolution/build ordering. The same pattern exists in `@vibe/base`.

## Fix Focus Areas
- packages/base/package.json[40-43]

ⓘ Copy this prompt and use it to remediate the issue with your preferred AI generation tools


Grey Divider

ⓘ The new review experience is currently in Beta. Learn more

Grey Divider

Qodo Logo

"@vibe/icon": "^4.0.0-alpha.1",
"@vibe/loader": "^4.0.0-alpha.1",
"@vibe/shared": "^4.0.0-alpha.1",
"@vibe/style": "^4.0.0-alpha.1",
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.

Action required

1. Base missing style dependency 🐞 Bug ⛯ Reliability

@vibe/base imports "~@vibe/style/dist/mixins" in its SCSS but still does not declare @vibe/style in
dependencies, so building @vibe/base can fail to resolve that import. The PR only fixes some
component packages, leaving the monorepo with the same missing-dependency class of failure in
@vibe/base.
Agent Prompt
## Issue description
`@vibe/base` imports SCSS from `~@vibe/style/dist/...` but does not declare `@vibe/style` in `dependencies`, so builds that compile `@vibe/base` styles can fail to resolve the import.

## Issue Context
This PR adds `@vibe/style` to several component packages to fix SCSS import resolution/build ordering. The same pattern exists in `@vibe/base`.

## Fix Focus Areas
- packages/base/package.json[40-43]

ⓘ Copy this prompt and use it to remediate the issue with your preferred AI generation tools

@github-actions
Copy link
Copy Markdown
Contributor

📦 Bundle Size Analysis

Changed Components

Component Base PR Diff
@vibe/dialog 53.84KB 52.18KB -1.66KB 🟢
@vibe/icon-button 68.11KB 66.11KB -2KB 🟢
@vibe/tooltip 63KB 61.28KB -1.73KB 🟢
@vibe/typography 65.48KB 63.43KB -2.05KB 🟢
AccordionItem 68.18KB 66.4KB -1.78KB 🟢
AlertBanner 72.93KB 70.78KB -2.14KB 🟢
AlertBannerText 65.54KB 63.83KB -1.71KB 🟢
Avatar 68.26KB 66.67KB -1.59KB 🟢
AvatarGroup 96.05KB 93.36KB -2.69KB 🟢
BreadcrumbItem 66.22KB 64.67KB -1.55KB 🟢
BreadcrumbMenu 70.39KB 68.68KB -1.71KB 🟢
BreadcrumbMenuItem 79.43KB 77.08KB -2.35KB 🟢
ButtonGroup 70.29KB 68.33KB -1.96KB 🟢
Checkbox 68.44KB 66.67KB -1.76KB 🟢
Chips 77.07KB 75.08KB -1.99KB 🟢
ColorPicker 76.41KB 74.39KB -2.02KB 🟢
ColorPickerContent 75.59KB 73.74KB -1.85KB 🟢
Combobox 86.31KB 84.14KB -2.17KB 🟢
DatePicker 134.56KB 112.5KB -22.06KB 🟢
Dropdown 126.07KB 95.26KB -30.81KB 🟢
EditableHeading 68.36KB 66.42KB -1.94KB 🟢
EditableText 68.22KB 66.42KB -1.8KB 🟢
EmptyState 72.71KB 70.35KB -2.37KB 🟢
ExpandCollapse 68.04KB 66.21KB -1.83KB 🟢
Info 74.32KB 72.12KB -2.2KB 🟢
Label 70.42KB 68.57KB -1.84KB 🟢
List 74.94KB 72.95KB -1.99KB 🟢
ListItem 67.32KB 65.67KB -1.65KB 🟢
ListItemAvatar 68.49KB 66.93KB -1.56KB 🟢
ListTitle 66.79KB 64.96KB -1.82KB 🟢
MenuItem 79.32KB 77.01KB -2.31KB 🟢
MenuItemButton 72.32KB 70.07KB -2.25KB 🟢
MenuTitle 67.18KB 65.34KB -1.84KB 🟢
MenuButton 67.75KB 66.13KB -1.62KB 🟢
Modal 111.94KB 79.1KB -32.84KB 🟢
ModalHeader 67.63KB 65.73KB -1.9KB 🟢
ModalFooter 69.48KB 67.67KB -1.81KB 🟢
ModalFooterWizard 70.48KB 68.6KB -1.88KB 🟢
NumberField 74.95KB 72.89KB -2.07KB 🟢
RadioButton 67.62KB 65.85KB -1.76KB 🟢
Search 72.49KB 70.64KB -1.85KB 🟢
Slider 75.82KB 73.83KB -1.99KB 🟢
SplitButton 68.78KB 66.65KB -2.14KB 🟢
Steps 73.5KB 71.3KB -2.2KB 🟢
TableBody 68.7KB 66.75KB -1.95KB 🟢
TableCell 66.89KB 65.12KB -1.77KB 🟢
TableHeaderCell 74.24KB 72.17KB -2.07KB 🟢
TableRowMenu 70.63KB 68.95KB -1.68KB 🟢
TableVirtualizedBody 73.32KB 71.39KB -1.93KB 🟢
Tab 65.52KB 64.03KB -1.5KB 🟢
TextArea 68.05KB 66.28KB -1.76KB 🟢
TextField 71.45KB 69.42KB -2.03KB 🟢
TextWithHighlight 65.91KB 64.34KB -1.57KB 🟢
Tipseen 73.26KB 71.13KB -2.14KB 🟢
TipseenContent 73.69KB 71.69KB -2KB 🟢
TipseenMedia 73.48KB 71.38KB -2.11KB 🟢
TipseenWizard 76.03KB 73.79KB -2.24KB 🟢
Toast 76.23KB 74.03KB -2.2KB 🟢
Toggle 68.39KB 66.6KB -1.79KB 🟢
TransitionView 37.69KB 5.45KB -32.24KB 🟢
ListItem (Next) 71.68KB 69.86KB -1.82KB 🟢
ListTitle (Next) 67.04KB 65.3KB -1.74KB 🟢
Unchanged Components
Component Base PR Diff
@vibe/button 17.74KB 17.26KB -492B 🟢
@vibe/clickable 6.07KB 5.96KB -109B 🟢
@vibe/icon 13.01KB 12.94KB -74B 🟢
@vibe/layer 2.96KB 2.96KB 0B ➖
@vibe/layout 10.56KB 9.8KB -785B 🟢
@vibe/loader 5.8KB 5.66KB -151B 🟢
Accordion 6.37KB 6.31KB -67B 🟢
AlertBannerButton 19.23KB 18.77KB -473B 🟢
AlertBannerLink 15.56KB 15.22KB -353B 🟢
AttentionBox 74.49KB 74.27KB -222B 🟢
Badge 43.56KB 43.21KB -367B 🟢
BreadcrumbsBar 5.79KB 5.69KB -110B 🟢
Counter 42.47KB 42.22KB -248B 🟢
Divider 5.54KB 5.45KB -89B 🟢
FormattedNumber 5.9KB 5.8KB -107B 🟢
GridKeyboardNavigationContext 4.66KB 4.67KB +11B 🔺
HiddenText 5.45KB 5.41KB -47B 🟢
Link 15.22KB 14.93KB -298B 🟢
ListItemIcon 14.23KB 14KB -228B 🟢
Menu 8.76KB 8.67KB -97B 🟢
MenuDivider 5.69KB 5.56KB -128B 🟢
MenuGridItem 7.24KB 7.16KB -75B 🟢
ModalContent 4.77KB 4.71KB -52B 🟢
ModalMedia 7.79KB 7.52KB -271B 🟢
ModalBasicLayout 9.21KB 8.91KB -301B 🟢
ModalMediaLayout 8.32KB 8.07KB -260B 🟢
ModalSideBySideLayout 6.36KB 6.3KB -58B 🟢
MultiStepIndicator 53.27KB 52.98KB -289B 🟢
ProgressBar 7.44KB 7.34KB -97B 🟢
Skeleton 6.21KB 6KB -217B 🟢
SplitButtonMenu 8.89KB 8.8KB -92B 🟢
Table 7.33KB 7.28KB -45B 🟢
TableContainer 5.38KB 5.31KB -72B 🟢
TableHeader 5.69KB 5.66KB -36B 🟢
TableRow 5.63KB 5.55KB -82B 🟢
TabList 8.92KB 8.88KB -48B 🟢
TabPanel 5.33KB 5.31KB -27B 🟢
TabPanels 5.97KB 5.85KB -124B 🟢
TabsContext 5.55KB 5.46KB -89B 🟢
ThemeProvider 4.68KB 4.36KB -329B 🟢
ToastButton 19.07KB 18.61KB -471B 🟢
ToastLink 15.4KB 15.08KB -323B 🟢
VirtualizedGrid 12.62KB 12.6KB -19B 🟢
VirtualizedList 12.42KB 12.25KB -175B 🟢
List (Next) 8.21KB 8.14KB -63B 🟢

📊 Summary:

  • Total Base Size: 4.98MB
  • Total PR Size: 4.75MB
  • Total Difference: 237.43KB

⚠️ Significant size change detected! Please review the changes carefully.

@rivka-ungar rivka-ungar merged commit 1ac7609 into vibe4 Mar 12, 2026
13 of 14 checks passed
@rivka-ungar rivka-ungar deleted the fix/add-missing-style-dependency branch March 12, 2026 10:24
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