Skip to content

Conversation

shaneeza
Copy link
Collaborator

@shaneeza shaneeza commented Aug 21, 2025

✍️ Proposed changes

🎟 Jira ticket: LG-5460

This PR enhances the drawer component by adding dynamic toolbar visibility control, improving drawer width persistence, and standardizing layout consistency across all drawer variants.

Key Features:

  • New visible property: Toolbar items can now be conditionally shown/hidden using a visible boolean property (defaults to true)
  • Dynamic toolbar rendering: When all toolbar items have visible: false, the entire toolbar element is removed from the DOM

Technical Improvements:

  • Unified layout system: Refactored all drawer instances to use a consistent grid layout, eliminating differences between drawers with and without toolbars
  • Standardized animations: Replaced mixed CSS animation/transition approaches with consistent CSS transitions across all drawer types (overlay and embedded)
  • Resolved animation inconsistencies: Fixed flickering and transition issues that occurred when toggling toolbar visibility by ensuring layout consistency

Additional Changes:

  • Enhanced context management: Added setHasToolbar function to the drawer layout context for better state management
  • Code cleanup: Removed unnecessary console warning about missing toolbars and updated positioning styles

✅ Checklist

For bug fixes, new features & breaking changes

  • I have added stories/tests that prove my fix is effective or that my feature works
  • I have added necessary documentation (if appropriate)
  • I have run pnpm changeset and documented my changes

🧪 How to test changes

  1. Test toolbar visibility control:
  • View overlay story with toolbar toggle: Drawer/Toolbar/Overlay
    • Open the drawer and press the Toggle Toolbar Visibility button
    • The toolbar should toggle
  • View embedded story with toolbar toggle: Drawer/Toolbar/Embedded
    • Open the drawer and press the Toggle Toolbar Visibility button
    • The toolbar should toggle
  1. Test the embedded Drawer width when toolbar is toggled in a resized state
  • View embedded story with toolbar toggle: Drawer/Toolbar/Embedded

    • Open the drawer
    • Resize the drawer with you mouse
    • Press the Toggle Toolbar Visibility button

    The width should remain the same

  1. Test other Drawer stories to ensure nothing is broken
  • Click on Change the size of the preview icon in storybook. All of the drawers should open the same on mobile.
    Screenshot 2025-08-22 at 10 19 29 AM

Copy link

changeset-bot bot commented Aug 21, 2025

🦋 Changeset detected

Latest commit: 8017dd5

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 1 package
Name Type
@leafygreen-ui/drawer Major

Not sure what this means? Click here to learn what changesets are.

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

@shaneeza shaneeza requested a review from Copilot August 21, 2025 21:38
Copy link
Contributor

@Copilot Copilot AI left a comment

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 enhances the drawer component by adding dynamic toolbar visibility control and layout consistency improvements. The key enhancement is the addition of a visible property to toolbar items that allows for conditional rendering of toolbar elements.

  • New visible property: Toolbar items can now be conditionally shown/hidden using a visible boolean property (defaults to true)
  • Dynamic toolbar rendering: When all toolbar items have visible: false, the entire toolbar element is removed from the DOM
  • Layout consolidation: Replaced DrawerWithToolbarWrapper with a unified LayoutGrid component for consistent layout handling

Reviewed Changes

Copilot reviewed 28 out of 28 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
packages/drawer/src/constants.ts Updated mobile breakpoint to use design token from LeafyGreen UI
packages/drawer/src/LayoutComponent/OverlayDrawerLayout/OverlayDrawerLayout.tsx Added drawer prop support and integrated LayoutGrid for consistent layout
packages/drawer/src/LayoutComponent/LayoutGrid/LayoutGrid.tsx New unified layout component replacing DrawerWithToolbarWrapper
packages/drawer/src/DrawerToolbarLayout/DrawerToolbarLayout/DrawerToolbarLayoutContent.tsx Added toolbar visibility logic and integrated new layout structure
packages/drawer/src/DrawerToolbarLayout/DrawerToolbarLayout/DrawerToolbarLayout.types.ts Added visible property to toolbar item interface
packages/drawer/src/DrawerLayout/DrawerLayoutContext/DrawerLayoutContext.tsx Added setHasToolbar function to context for dynamic toolbar state management
packages/drawer/src/Drawer/Drawer.tsx Added width persistence logic for embedded drawers when toolbar is toggled


useEffect(() => {
// This updates the drawer open state when the toolbar is inter
Copy link
Preview

Copilot AI Aug 21, 2025

Choose a reason for hiding this comment

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

The comment appears to be cut off. 'inter' should likely be 'interacted with' or similar complete phrase.

Suggested change
// This updates the drawer open state when the toolbar is inter
// This updates the drawer open state when the toolbar is interacted with

Copilot uses AI. Check for mistakes.

@shaneeza shaneeza changed the title feat(drawer): add toolbar item visibility control [LG-5460] feat(drawer): add toolbar item visibility control Aug 21, 2025
Copy link
Collaborator Author

Choose a reason for hiding this comment

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

These styles were initially from DrawerWithToolbarWrapper. I used git mv to rename the files, so I'm unsure why it appears as a new file.

Copy link
Contributor

github-actions bot commented Aug 21, 2025

Size Change: +75 B (0%)

Total Size: 2.01 MB

Filename Size Change
packages/drawer/dist/esm/index.js 7.8 kB +21 B (+0.27%)
packages/drawer/dist/umd/index.js 7.99 kB +54 B (+0.68%)
ℹ️ View Unchanged
Filename Size
charts/chart-card/dist/esm/index.js 2.78 kB
charts/chart-card/dist/umd/index.js 2.94 kB
charts/colors/dist/esm/index.js 530 B
charts/colors/dist/umd/index.js 649 B
charts/core/dist/esm/index.js 16.1 kB
charts/core/dist/umd/index.js 16.4 kB
charts/drag-provider/dist/esm/index.js 1.37 kB
charts/drag-provider/dist/umd/index.js 1.49 kB
charts/legend/dist/esm/index.js 1.52 kB
charts/legend/dist/umd/index.js 1.67 kB
charts/series-provider/dist/esm/index.js 1.28 kB
charts/series-provider/dist/umd/index.js 1.4 kB
chat/avatar/dist/esm/index.js 1.36 kB
chat/avatar/dist/umd/index.js 1.52 kB
chat/chat-disclaimer/dist/esm/index.js 932 B
chat/chat-disclaimer/dist/umd/index.js 1.11 kB
chat/chat-window/dist/esm/index.js 1.67 kB
chat/chat-window/dist/umd/index.js 1.83 kB
chat/fixed-chat-window/dist/esm/index.js 2.4 kB
chat/fixed-chat-window/dist/umd/index.js 2.58 kB
chat/input-bar/dist/esm/index.js 7.5 kB
chat/input-bar/dist/umd/index.js 7.74 kB
chat/leafygreen-chat-provider/dist/esm/index.js 957 B
chat/leafygreen-chat-provider/dist/umd/index.js 1.11 kB
chat/lg-markdown/dist/esm/index.js 1.66 kB
chat/lg-markdown/dist/umd/index.js 1.8 kB
chat/message-actions/dist/esm/index.js 3.8 kB
chat/message-actions/dist/umd/index.js 3.99 kB
chat/message-feed/dist/esm/index.js 2.8 kB
chat/message-feed/dist/umd/index.js 3.02 kB
chat/message-feedback/dist/esm/index.js 4.5 kB
chat/message-feedback/dist/umd/index.js 4.71 kB
chat/message-prompts/dist/esm/index.js 1.72 kB
chat/message-prompts/dist/umd/index.js 1.87 kB
chat/message-rating/dist/esm/index.js 2.58 kB
chat/message-rating/dist/umd/index.js 2.77 kB
chat/message/dist/esm/index.js 5.02 kB
chat/message/dist/umd/index.js 5.19 kB
chat/rich-links/dist/esm/index.js 2.73 kB
chat/rich-links/dist/umd/index.js 2.94 kB
chat/suggestions/dist/esm/index.js 1.65 kB
chat/suggestions/dist/esm/testing/index.js 55 B
chat/suggestions/dist/umd/index.js 1.84 kB
chat/suggestions/dist/umd/testing/index.js 113 B
chat/title-bar/dist/esm/index.js 1.38 kB
chat/title-bar/dist/umd/index.js 1.59 kB
packages/a11y/dist/esm/index.js 1.71 kB
packages/a11y/dist/umd/index.js 1.83 kB
packages/avatar/dist/esm/index.js 3.4 kB
packages/avatar/dist/umd/index.js 3.58 kB
packages/badge/dist/esm/index.js 1.47 kB
packages/badge/dist/umd/index.js 1.65 kB
packages/banner/dist/esm/index.js 3.09 kB
packages/banner/dist/umd/index.js 3.38 kB
packages/box/dist/esm/index.js 489 B
packages/box/dist/umd/index.js 633 B
packages/button/dist/esm/constants.js 121 B
packages/button/dist/esm/index.js 4.8 kB
packages/button/dist/esm/testing/index.js 321 B
packages/button/dist/umd/constants.js 262 B
packages/button/dist/umd/index.js 4.98 kB
packages/button/dist/umd/testing/index.js 438 B
packages/callout/dist/esm/index.js 1.55 kB
packages/callout/dist/umd/index.js 1.72 kB
packages/card/dist/esm/index.js 1.52 kB
packages/card/dist/umd/index.js 1.69 kB
packages/checkbox/dist/esm/index.js 4.27 kB
packages/checkbox/dist/umd/index.js 4.46 kB
packages/chip/dist/esm/index.js 3.21 kB
packages/chip/dist/umd/index.js 3.42 kB
packages/code/dist/esm/index.js 10.6 kB
packages/code/dist/esm/testing/index.js 11.4 kB
packages/code/dist/umd/index.js 11.2 kB
packages/code/dist/umd/testing/index.js 12 kB
packages/combobox/dist/esm/index.js 11.5 kB
packages/combobox/dist/umd/index.js 11.8 kB
packages/confirmation-modal/dist/esm/index.js 2.61 kB
packages/confirmation-modal/dist/umd/index.js 2.83 kB
packages/context-drawer/dist/esm/index.js 3.12 kB
packages/context-drawer/dist/esm/testing/index.js 3.52 kB
packages/context-drawer/dist/umd/index.js 3.28 kB
packages/context-drawer/dist/umd/testing/index.js 3.67 kB
packages/copyable/dist/esm/index.js 2.77 kB
packages/copyable/dist/umd/index.js 2.97 kB
packages/date-picker/dist/esm/index.js 13.6 kB
packages/date-picker/dist/umd/index.js 14 kB
packages/date-utils/dist/esm/index.js 2.7 kB
packages/date-utils/dist/esm/testing/index.js 1.35 kB
packages/date-utils/dist/umd/index.js 2.8 kB
packages/date-utils/dist/umd/testing/index.js 1.49 kB
packages/descendants/dist/esm/index.js 2.81 kB
packages/descendants/dist/umd/index.js 2.92 kB
packages/drawer/dist/esm/testing/index.js 490 B
packages/drawer/dist/umd/testing/index.js 605 B
packages/emotion/dist/esm/index.js 356 B
packages/emotion/dist/umd/index.js 570 B
packages/empty-state/dist/esm/index.js 1.75 kB
packages/empty-state/dist/umd/index.js 1.93 kB
packages/expandable-card/dist/esm/index.js 2.95 kB
packages/expandable-card/dist/esm/testing/index.js 3.47 kB
packages/expandable-card/dist/umd/index.js 3.15 kB
packages/expandable-card/dist/umd/testing/index.js 3.67 kB
packages/form-field/dist/esm/index.js 4.37 kB
packages/form-field/dist/umd/index.js 4.53 kB
packages/form-footer/dist/esm/index.js 1.68 kB
packages/form-footer/dist/umd/index.js 1.9 kB
packages/gallery-indicator/dist/esm/index.js 1.39 kB
packages/gallery-indicator/dist/esm/testing/index.js 351 B
packages/gallery-indicator/dist/umd/index.js 1.54 kB
packages/gallery-indicator/dist/umd/testing/index.js 475 B
packages/guide-cue/dist/esm/index.js 5.17 kB
packages/guide-cue/dist/umd/index.js 5.37 kB
packages/hooks/dist/esm/index.js 3.54 kB
packages/hooks/dist/umd/index.js 3.66 kB
packages/icon-button/dist/esm/index.js 2.27 kB
packages/icon-button/dist/umd/index.js 2.48 kB
packages/icon/dist/ActivityFeed.js 1.96 kB
packages/icon/dist/AddFile.js 1.73 kB
packages/icon/dist/AIModel.js 1.57 kB
packages/icon/dist/AllProducts.js 1.8 kB
packages/icon/dist/AnalyticsNode.js 1.57 kB
packages/icon/dist/Apps.js 1.4 kB
packages/icon/dist/Array.js 1.52 kB
packages/icon/dist/ArrowDown.js 1.65 kB
packages/icon/dist/ArrowLeft.js 1.66 kB
packages/icon/dist/ArrowRight.js 1.65 kB
packages/icon/dist/ArrowUp.js 1.65 kB
packages/icon/dist/Award.js 2.09 kB
packages/icon/dist/Beaker.js 2.08 kB
packages/icon/dist/Bell.js 1.61 kB
packages/icon/dist/Biometric.js 2.18 kB
packages/icon/dist/Boolean.js 1.45 kB
packages/icon/dist/Building.js 1.6 kB
packages/icon/dist/Bulb.js 1.64 kB
packages/icon/dist/Calendar.js 1.6 kB
packages/icon/dist/Camera.js 1.69 kB
packages/icon/dist/Cap.js 1.81 kB
packages/icon/dist/CaretDown.js 1.47 kB
packages/icon/dist/CaretLeft.js 1.47 kB
packages/icon/dist/CaretRight.js 1.46 kB
packages/icon/dist/CaretUp.js 1.47 kB
packages/icon/dist/ChartFilled.js 1.57 kB
packages/icon/dist/Charts.js 1.54 kB
packages/icon/dist/Checkmark.js 1.61 kB
packages/icon/dist/CheckmarkWithCircle.js 1.68 kB
packages/icon/dist/ChevronDown.js 1.57 kB
packages/icon/dist/ChevronLeft.js 1.57 kB
packages/icon/dist/ChevronRight.js 1.59 kB
packages/icon/dist/ChevronUp.js 1.56 kB
packages/icon/dist/Circle.js 1.34 kB
packages/icon/dist/Clock.js 1.63 kB
packages/icon/dist/ClockWithArrow.js 1.92 kB
packages/icon/dist/Clone.js 1.5 kB
packages/icon/dist/Cloud.js 1.68 kB
packages/icon/dist/Code.js 1.89 kB
packages/icon/dist/CodeBlock.js 1.83 kB
packages/icon/dist/Coin.js 1.94 kB
packages/icon/dist/Colon.js 1.45 kB
packages/icon/dist/Config.js 1.76 kB
packages/icon/dist/Connect.js 1.93 kB
packages/icon/dist/Copy.js 1.88 kB
packages/icon/dist/CreditCard.js 1.43 kB
packages/icon/dist/CurlyBraces.js 2.04 kB
packages/icon/dist/Cursor.js 1.56 kB
packages/icon/dist/Dashboard.js 1.57 kB
packages/icon/dist/Database.js 2.03 kB
packages/icon/dist/Diagram.js 1.65 kB
packages/icon/dist/Diagram2.js 1.66 kB
packages/icon/dist/Diagram3.js 1.63 kB
packages/icon/dist/Disconnect.js 1.87 kB
packages/icon/dist/Download.js 1.79 kB
packages/icon/dist/Drag.js 1.61 kB
packages/icon/dist/Edit.js 1.51 kB
packages/icon/dist/Ellipsis.js 1.49 kB
packages/icon/dist/Email.js 1.71 kB
packages/icon/dist/EmptyDatabase.js 4.31 kB
packages/icon/dist/EmptyFolder.js 2.1 kB
packages/icon/dist/Eraser.js 1.78 kB
packages/icon/dist/Escalation.js 1.68 kB
packages/icon/dist/esm/ActivityFeed.js 1.75 kB
packages/icon/dist/esm/AddFile.js 1.52 kB
packages/icon/dist/esm/AIModel.js 1.38 kB
packages/icon/dist/esm/AllProducts.js 1.6 kB
packages/icon/dist/esm/AnalyticsNode.js 1.36 kB
packages/icon/dist/esm/Apps.js 1.2 kB
packages/icon/dist/esm/Array.js 1.32 kB
packages/icon/dist/esm/ArrowDown.js 1.44 kB
packages/icon/dist/esm/ArrowLeft.js 1.45 kB
packages/icon/dist/esm/ArrowRight.js 1.44 kB
packages/icon/dist/esm/ArrowUp.js 1.44 kB
packages/icon/dist/esm/Award.js 1.88 kB
packages/icon/dist/esm/Beaker.js 1.88 kB
packages/icon/dist/esm/Bell.js 1.41 kB
packages/icon/dist/esm/Biometric.js 1.97 kB
packages/icon/dist/esm/Boolean.js 1.25 kB
packages/icon/dist/esm/Building.js 1.4 kB
packages/icon/dist/esm/Bulb.js 1.44 kB
packages/icon/dist/esm/Calendar.js 1.4 kB
packages/icon/dist/esm/Camera.js 1.49 kB
packages/icon/dist/esm/Cap.js 1.6 kB
packages/icon/dist/esm/CaretDown.js 1.27 kB
packages/icon/dist/esm/CaretLeft.js 1.26 kB
packages/icon/dist/esm/CaretRight.js 1.26 kB
packages/icon/dist/esm/CaretUp.js 1.27 kB
packages/icon/dist/esm/ChartFilled.js 1.36 kB
packages/icon/dist/esm/Charts.js 1.34 kB
packages/icon/dist/esm/Checkmark.js 1.4 kB
packages/icon/dist/esm/CheckmarkWithCircle.js 1.47 kB
packages/icon/dist/esm/ChevronDown.js 1.37 kB
packages/icon/dist/esm/ChevronLeft.js 1.37 kB
packages/icon/dist/esm/ChevronRight.js 1.38 kB
packages/icon/dist/esm/ChevronUp.js 1.36 kB
packages/icon/dist/esm/Circle.js 1.14 kB
packages/icon/dist/esm/Clock.js 1.43 kB
packages/icon/dist/esm/ClockWithArrow.js 1.71 kB
packages/icon/dist/esm/Clone.js 1.3 kB
packages/icon/dist/esm/Cloud.js 1.48 kB
packages/icon/dist/esm/Code.js 1.69 kB
packages/icon/dist/esm/CodeBlock.js 1.62 kB
packages/icon/dist/esm/Coin.js 1.73 kB
packages/icon/dist/esm/Colon.js 1.25 kB
packages/icon/dist/esm/Config.js 1.56 kB
packages/icon/dist/esm/Connect.js 1.73 kB
packages/icon/dist/esm/Copy.js 1.67 kB
packages/icon/dist/esm/CreditCard.js 1.23 kB
packages/icon/dist/esm/CurlyBraces.js 1.83 kB
packages/icon/dist/esm/Cursor.js 1.35 kB
packages/icon/dist/esm/Dashboard.js 1.37 kB
packages/icon/dist/esm/Database.js 1.83 kB
packages/icon/dist/esm/Diagram.js 1.45 kB
packages/icon/dist/esm/Diagram2.js 1.46 kB
packages/icon/dist/esm/Diagram3.js 1.43 kB
packages/icon/dist/esm/Disconnect.js 1.66 kB
packages/icon/dist/esm/Download.js 1.58 kB
packages/icon/dist/esm/Drag.js 1.42 kB
packages/icon/dist/esm/Edit.js 1.31 kB
packages/icon/dist/esm/Ellipsis.js 1.29 kB
packages/icon/dist/esm/Email.js 1.51 kB
packages/icon/dist/esm/EmptyDatabase.js 4.08 kB
packages/icon/dist/esm/EmptyFolder.js 1.89 kB
packages/icon/dist/esm/Eraser.js 1.57 kB
packages/icon/dist/esm/Escalation.js 1.47 kB
packages/icon/dist/esm/Export.js 1.58 kB
packages/icon/dist/esm/Favorite.js 1.53 kB
packages/icon/dist/esm/Federation.js 1.85 kB
packages/icon/dist/esm/File.js 1.34 kB
packages/icon/dist/esm/Filter.js 1.32 kB
packages/icon/dist/esm/Folder.js 1.23 kB
packages/icon/dist/esm/Format.js 1.66 kB
packages/icon/dist/esm/FullScreenEnter.js 1.49 kB
packages/icon/dist/esm/FullScreenExit.js 1.5 kB
packages/icon/dist/esm/Function.js 2.54 kB
packages/icon/dist/esm/Gauge.js 1.53 kB
packages/icon/dist/esm/GlobeAmericas.js 1.45 kB
packages/icon/dist/esm/GovernmentBuilding.js 1.48 kB
packages/icon/dist/esm/Guide.js 1.79 kB
packages/icon/dist/esm/Hash.js 1.63 kB
packages/icon/dist/esm/HiddenSecondaryNode.js 2.9 kB
packages/icon/dist/esm/Highlight.js 1.68 kB
packages/icon/dist/esm/Home.js 1.59 kB
packages/icon/dist/esm/HorizontalDrag.js 1.42 kB
packages/icon/dist/esm/Import.js 1.57 kB
packages/icon/dist/esm/ImportantWithCircle.js 1.34 kB
packages/icon/dist/esm/index.js 35.2 kB
packages/icon/dist/esm/InfoWithCircle.js 1.37 kB
packages/icon/dist/esm/InternalEmployee.js 1.66 kB
packages/icon/dist/esm/InviteUser.js 1.68 kB
packages/icon/dist/esm/Key.js 1.48 kB
packages/icon/dist/esm/Laptop.js 1.46 kB
packages/icon/dist/esm/LightningBolt.js 1.34 kB
packages/icon/dist/esm/Link.js 1.84 kB
packages/icon/dist/esm/List.js 1.48 kB
packages/icon/dist/esm/Lock.js 1.43 kB
packages/icon/dist/esm/LogIn.js 1.51 kB
packages/icon/dist/esm/LogOut.js 1.57 kB
packages/icon/dist/esm/MagnifyingGlass.js 1.41 kB
packages/icon/dist/esm/Megaphone.js 1.38 kB
packages/icon/dist/esm/Menu.js 1.29 kB
packages/icon/dist/esm/Minus.js 1.24 kB
packages/icon/dist/esm/Mobile.js 1.24 kB
packages/icon/dist/esm/Moon.js 1.42 kB
packages/icon/dist/esm/MultiDirectionArrow.js 1.46 kB
packages/icon/dist/esm/MultiLayers.js 2.42 kB
packages/icon/dist/esm/NavCollapse.js 1.48 kB
packages/icon/dist/esm/NavExpand.js 1.49 kB
packages/icon/dist/esm/NoFilter.js 1.47 kB
packages/icon/dist/esm/NotAllowed.js 1.35 kB
packages/icon/dist/esm/Note.js 1.39 kB
packages/icon/dist/esm/NumberedList.js 2.29 kB
packages/icon/dist/esm/OpenNewTab.js 1.67 kB
packages/icon/dist/esm/OutlineFavorite.js 1.8 kB
packages/icon/dist/esm/Package.js 1.65 kB
packages/icon/dist/esm/Pause.js 1.29 kB
packages/icon/dist/esm/Pending.js 1.27 kB
packages/icon/dist/esm/Person.js 1.46 kB
packages/icon/dist/esm/PersonGroup.js 1.66 kB
packages/icon/dist/esm/PersonWithLock.js 1.67 kB
packages/icon/dist/esm/Pin.js 1.4 kB
packages/icon/dist/esm/Play.js 1.28 kB
packages/icon/dist/esm/Plus.js 1.3 kB
packages/icon/dist/esm/PlusWithCircle.js 1.33 kB
packages/icon/dist/esm/Primary.js 1.35 kB
packages/icon/dist/esm/Project.js 1.39 kB
packages/icon/dist/esm/QuestionMarkWithCircle.js 1.7 kB
packages/icon/dist/esm/Read.js 2 kB
packages/icon/dist/esm/Recommended.js 2.17 kB
packages/icon/dist/esm/Redo.js 1.64 kB
packages/icon/dist/esm/Refresh.js 1.71 kB
packages/icon/dist/esm/Relationship.js 1.4 kB
packages/icon/dist/esm/ReplicaSet.js 1.55 kB
packages/icon/dist/esm/Resize.js 1.37 kB
packages/icon/dist/esm/Resource.js 1.7 kB
packages/icon/dist/esm/Return.js 1.47 kB
packages/icon/dist/esm/Revert.js 1.51 kB
packages/icon/dist/esm/Router.js 2.17 kB
packages/icon/dist/esm/Save.js 1.9 kB
packages/icon/dist/esm/SearchIndex.js 2.03 kB
packages/icon/dist/esm/Secondary.js 1.58 kB
packages/icon/dist/esm/Serverless.js 1.54 kB
packages/icon/dist/esm/Settings.js 1.97 kB
packages/icon/dist/esm/ShardedCluster.js 1.92 kB
packages/icon/dist/esm/Shell.js 1.46 kB
packages/icon/dist/esm/Shield.js 1.89 kB
packages/icon/dist/esm/Shirt.js 1.4 kB
packages/icon/dist/esm/Shortcut.js 1.97 kB
packages/icon/dist/esm/SMS.js 1.41 kB
packages/icon/dist/esm/SortAscending.js 1.5 kB
packages/icon/dist/esm/SortDescending.js 1.49 kB
packages/icon/dist/esm/Sparkle.js 1.83 kB
packages/icon/dist/esm/SplitHorizontal.js 1.26 kB
packages/icon/dist/esm/SplitVertical.js 1.26 kB
packages/icon/dist/esm/Stitch.js 1.29 kB
packages/icon/dist/esm/Stop.js 1.15 kB
packages/icon/dist/esm/Streaming.js 2.29 kB
packages/icon/dist/esm/String.js 1.4 kB
packages/icon/dist/esm/Sun.js 1.63 kB
packages/icon/dist/esm/Support.js 1.49 kB
packages/icon/dist/esm/Sweep.js 1.51 kB
packages/icon/dist/esm/Table.js 1.28 kB
packages/icon/dist/esm/Tag.js 1.32 kB
packages/icon/dist/esm/TemporaryTable.js 1.52 kB
packages/icon/dist/esm/ThumbsDown.js 1.61 kB
packages/icon/dist/esm/ThumbsUp.js 1.6 kB
packages/icon/dist/esm/TimeSeries.js 1.66 kB
packages/icon/dist/esm/TimeSeriesCollection.js 1.79 kB
packages/icon/dist/esm/Trash.js 1.32 kB
packages/icon/dist/esm/Undo.js 1.63 kB
packages/icon/dist/esm/University.js 1.82 kB
packages/icon/dist/esm/Unlock.js 1.5 kB
packages/icon/dist/esm/Unsorted.js 1.54 kB
packages/icon/dist/esm/UpDownCarets.js 1.39 kB
packages/icon/dist/esm/Upload.js 1.59 kB
packages/icon/dist/esm/VerticalEllipsis.js 1.3 kB
packages/icon/dist/esm/View.js 1.45 kB
packages/icon/dist/esm/Visibility.js 1.62 kB
packages/icon/dist/esm/VisibilityOff.js 2.01 kB
packages/icon/dist/esm/Warning.js 1.39 kB
packages/icon/dist/esm/Wizard.js 1.73 kB
packages/icon/dist/esm/Wrench.js 1.72 kB
packages/icon/dist/esm/Write.js 2 kB
packages/icon/dist/esm/X.js 1.42 kB
packages/icon/dist/esm/XWithCircle.js 1.37 kB
packages/icon/dist/Export.js 1.78 kB
packages/icon/dist/Favorite.js 1.74 kB
packages/icon/dist/Federation.js 2.06 kB
packages/icon/dist/File.js 1.54 kB
packages/icon/dist/Filter.js 1.53 kB
packages/icon/dist/Folder.js 1.43 kB
packages/icon/dist/Format.js 1.86 kB
packages/icon/dist/FullScreenEnter.js 1.69 kB
packages/icon/dist/FullScreenExit.js 1.7 kB
packages/icon/dist/Function.js 2.75 kB
packages/icon/dist/Gauge.js 1.73 kB
packages/icon/dist/GlobeAmericas.js 1.65 kB
packages/icon/dist/GovernmentBuilding.js 1.68 kB
packages/icon/dist/Guide.js 2 kB
packages/icon/dist/Hash.js 1.83 kB
packages/icon/dist/HiddenSecondaryNode.js 3.11 kB
packages/icon/dist/Highlight.js 1.89 kB
packages/icon/dist/Home.js 1.8 kB
packages/icon/dist/HorizontalDrag.js 1.62 kB
packages/icon/dist/Import.js 1.78 kB
packages/icon/dist/ImportantWithCircle.js 1.54 kB
packages/icon/dist/index.js 35.5 kB
packages/icon/dist/InfoWithCircle.js 1.57 kB
packages/icon/dist/InternalEmployee.js 1.87 kB
packages/icon/dist/InviteUser.js 1.88 kB
packages/icon/dist/Key.js 1.68 kB
packages/icon/dist/Laptop.js 1.66 kB
packages/icon/dist/LightningBolt.js 1.54 kB
packages/icon/dist/Link.js 2.05 kB
packages/icon/dist/List.js 1.68 kB
packages/icon/dist/Lock.js 1.63 kB
packages/icon/dist/LogIn.js 1.71 kB
packages/icon/dist/LogOut.js 1.77 kB
packages/icon/dist/MagnifyingGlass.js 1.61 kB
packages/icon/dist/Megaphone.js 1.58 kB
packages/icon/dist/Menu.js 1.49 kB
packages/icon/dist/Minus.js 1.44 kB
packages/icon/dist/Mobile.js 1.44 kB
packages/icon/dist/Moon.js 1.63 kB
packages/icon/dist/MultiDirectionArrow.js 1.66 kB
packages/icon/dist/MultiLayers.js 2.63 kB
packages/icon/dist/NavCollapse.js 1.68 kB
packages/icon/dist/NavExpand.js 1.69 kB
packages/icon/dist/NoFilter.js 1.67 kB
packages/icon/dist/NotAllowed.js 1.55 kB
packages/icon/dist/Note.js 1.59 kB
packages/icon/dist/NumberedList.js 2.5 kB
packages/icon/dist/OpenNewTab.js 1.88 kB
packages/icon/dist/OutlineFavorite.js 2.01 kB
packages/icon/dist/Package.js 1.85 kB
packages/icon/dist/Pause.js 1.49 kB
packages/icon/dist/Pending.js 1.47 kB
packages/icon/dist/Person.js 1.67 kB
packages/icon/dist/PersonGroup.js 1.87 kB
packages/icon/dist/PersonWithLock.js 1.87 kB
packages/icon/dist/Pin.js 1.6 kB
packages/icon/dist/Play.js 1.48 kB
packages/icon/dist/Plus.js 1.5 kB
packages/icon/dist/PlusWithCircle.js 1.53 kB
packages/icon/dist/Primary.js 1.55 kB
packages/icon/dist/Project.js 1.59 kB
packages/icon/dist/QuestionMarkWithCircle.js 1.91 kB
packages/icon/dist/Read.js 2.2 kB
packages/icon/dist/Recommended.js 2.38 kB
packages/icon/dist/Redo.js 1.85 kB
packages/icon/dist/Refresh.js 1.91 kB
packages/icon/dist/Relationship.js 1.6 kB
packages/icon/dist/ReplicaSet.js 1.75 kB
packages/icon/dist/Resize.js 1.57 kB
packages/icon/dist/Resource.js 1.9 kB
packages/icon/dist/Return.js 1.67 kB
packages/icon/dist/Revert.js 1.71 kB
packages/icon/dist/Router.js 2.38 kB
packages/icon/dist/Save.js 2.1 kB
packages/icon/dist/SearchIndex.js 2.24 kB
packages/icon/dist/Secondary.js 1.79 kB
packages/icon/dist/Serverless.js 1.75 kB
packages/icon/dist/Settings.js 2.17 kB
packages/icon/dist/ShardedCluster.js 2.12 kB
packages/icon/dist/Shell.js 1.66 kB
packages/icon/dist/Shield.js 2.1 kB
packages/icon/dist/Shirt.js 1.61 kB
packages/icon/dist/Shortcut.js 2.18 kB
packages/icon/dist/SMS.js 1.62 kB
packages/icon/dist/SortAscending.js 1.7 kB
packages/icon/dist/SortDescending.js 1.7 kB
packages/icon/dist/Sparkle.js 2.03 kB
packages/icon/dist/SplitHorizontal.js 1.47 kB
packages/icon/dist/SplitVertical.js 1.46 kB
packages/icon/dist/Stitch.js 1.5 kB
packages/icon/dist/Stop.js 1.34 kB
packages/icon/dist/Streaming.js 2.5 kB
packages/icon/dist/String.js 1.61 kB
packages/icon/dist/Sun.js 1.82 kB
packages/icon/dist/Support.js 1.7 kB
packages/icon/dist/Sweep.js 1.72 kB
packages/icon/dist/Table.js 1.49 kB
packages/icon/dist/Tag.js 1.52 kB
packages/icon/dist/TemporaryTable.js 1.73 kB
packages/icon/dist/ThumbsDown.js 1.82 kB
packages/icon/dist/ThumbsUp.js 1.81 kB
packages/icon/dist/TimeSeries.js 1.86 kB
packages/icon/dist/TimeSeriesCollection.js 2 kB
packages/icon/dist/Trash.js 1.52 kB
packages/icon/dist/umd/ActivityFeed.js 1.96 kB
packages/icon/dist/umd/AddFile.js 1.73 kB
packages/icon/dist/umd/AIModel.js 1.57 kB
packages/icon/dist/umd/AllProducts.js 1.8 kB
packages/icon/dist/umd/AnalyticsNode.js 1.57 kB
packages/icon/dist/umd/Apps.js 1.4 kB
packages/icon/dist/umd/Array.js 1.52 kB
packages/icon/dist/umd/ArrowDown.js 1.65 kB
packages/icon/dist/umd/ArrowLeft.js 1.66 kB
packages/icon/dist/umd/ArrowRight.js 1.65 kB
packages/icon/dist/umd/ArrowUp.js 1.65 kB
packages/icon/dist/umd/Award.js 2.09 kB
packages/icon/dist/umd/Beaker.js 2.08 kB
packages/icon/dist/umd/Bell.js 1.61 kB
packages/icon/dist/umd/Biometric.js 2.18 kB
packages/icon/dist/umd/Boolean.js 1.45 kB
packages/icon/dist/umd/Building.js 1.6 kB
packages/icon/dist/umd/Bulb.js 1.64 kB
packages/icon/dist/umd/Calendar.js 1.6 kB
packages/icon/dist/umd/Camera.js 1.69 kB
packages/icon/dist/umd/Cap.js 1.81 kB
packages/icon/dist/umd/CaretDown.js 1.47 kB
packages/icon/dist/umd/CaretLeft.js 1.47 kB
packages/icon/dist/umd/CaretRight.js 1.46 kB
packages/icon/dist/umd/CaretUp.js 1.47 kB
packages/icon/dist/umd/ChartFilled.js 1.57 kB
packages/icon/dist/umd/Charts.js 1.54 kB
packages/icon/dist/umd/Checkmark.js 1.61 kB
packages/icon/dist/umd/CheckmarkWithCircle.js 1.68 kB
packages/icon/dist/umd/ChevronDown.js 1.57 kB
packages/icon/dist/umd/ChevronLeft.js 1.57 kB
packages/icon/dist/umd/ChevronRight.js 1.59 kB
packages/icon/dist/umd/ChevronUp.js 1.56 kB
packages/icon/dist/umd/Circle.js 1.34 kB
packages/icon/dist/umd/Clock.js 1.63 kB
packages/icon/dist/umd/ClockWithArrow.js 1.92 kB
packages/icon/dist/umd/Clone.js 1.5 kB
packages/icon/dist/umd/Cloud.js 1.68 kB
packages/icon/dist/umd/Code.js 1.89 kB
packages/icon/dist/umd/CodeBlock.js 1.83 kB
packages/icon/dist/umd/Coin.js 1.94 kB
packages/icon/dist/umd/Colon.js 1.45 kB
packages/icon/dist/umd/Config.js 1.76 kB
packages/icon/dist/umd/Connect.js 1.93 kB
packages/icon/dist/umd/Copy.js 1.88 kB
packages/icon/dist/umd/CreditCard.js 1.43 kB
packages/icon/dist/umd/CurlyBraces.js 2.04 kB
packages/icon/dist/umd/Cursor.js 1.56 kB
packages/icon/dist/umd/Dashboard.js 1.57 kB
packages/icon/dist/umd/Database.js 2.03 kB
packages/icon/dist/umd/Diagram.js 1.65 kB
packages/icon/dist/umd/Diagram2.js 1.66 kB
packages/icon/dist/umd/Diagram3.js 1.63 kB
packages/icon/dist/umd/Disconnect.js 1.87 kB
packages/icon/dist/umd/Download.js 1.79 kB
packages/icon/dist/umd/Drag.js 1.61 kB
packages/icon/dist/umd/Edit.js 1.51 kB
packages/icon/dist/umd/Ellipsis.js 1.49 kB
packages/icon/dist/umd/Email.js 1.71 kB
packages/icon/dist/umd/EmptyDatabase.js 4.31 kB
packages/icon/dist/umd/EmptyFolder.js 2.1 kB
packages/icon/dist/umd/Eraser.js 1.78 kB
packages/icon/dist/umd/Escalation.js 1.68 kB
packages/icon/dist/umd/Export.js 1.78 kB
packages/icon/dist/umd/Favorite.js 1.74 kB
packages/icon/dist/umd/Federation.js 2.06 kB
packages/icon/dist/umd/File.js 1.54 kB
packages/icon/dist/umd/Filter.js 1.53 kB
packages/icon/dist/umd/Folder.js 1.43 kB
packages/icon/dist/umd/Format.js 1.86 kB
packages/icon/dist/umd/FullScreenEnter.js 1.69 kB
packages/icon/dist/umd/FullScreenExit.js 1.7 kB
packages/icon/dist/umd/Function.js 2.75 kB
packages/icon/dist/umd/Gauge.js 1.73 kB
packages/icon/dist/umd/GlobeAmericas.js 1.65 kB
packages/icon/dist/umd/GovernmentBuilding.js 1.68 kB
packages/icon/dist/umd/Guide.js 2 kB
packages/icon/dist/umd/Hash.js 1.83 kB
packages/icon/dist/umd/HiddenSecondaryNode.js 3.11 kB
packages/icon/dist/umd/Highlight.js 1.89 kB
packages/icon/dist/umd/Home.js 1.8 kB
packages/icon/dist/umd/HorizontalDrag.js 1.62 kB
packages/icon/dist/umd/Import.js 1.78 kB
packages/icon/dist/umd/ImportantWithCircle.js 1.54 kB
packages/icon/dist/umd/index.js 35.5 kB
packages/icon/dist/umd/InfoWithCircle.js 1.57 kB
packages/icon/dist/umd/InternalEmployee.js 1.87 kB
packages/icon/dist/umd/InviteUser.js 1.88 kB
packages/icon/dist/umd/Key.js 1.68 kB
packages/icon/dist/umd/Laptop.js 1.66 kB
packages/icon/dist/umd/LightningBolt.js 1.54 kB
packages/icon/dist/umd/Link.js 2.05 kB
packages/icon/dist/umd/List.js 1.68 kB
packages/icon/dist/umd/Lock.js 1.63 kB
packages/icon/dist/umd/LogIn.js 1.71 kB
packages/icon/dist/umd/LogOut.js 1.77 kB
packages/icon/dist/umd/MagnifyingGlass.js 1.61 kB
packages/icon/dist/umd/Megaphone.js 1.58 kB
packages/icon/dist/umd/Menu.js 1.49 kB
packages/icon/dist/umd/Minus.js 1.44 kB
packages/icon/dist/umd/Mobile.js 1.44 kB
packages/icon/dist/umd/Moon.js 1.63 kB
packages/icon/dist/umd/MultiDirectionArrow.js 1.66 kB
packages/icon/dist/umd/MultiLayers.js 2.63 kB
packages/icon/dist/umd/NavCollapse.js 1.68 kB
packages/icon/dist/umd/NavExpand.js 1.69 kB
packages/icon/dist/umd/NoFilter.js 1.67 kB
packages/icon/dist/umd/NotAllowed.js 1.55 kB
packages/icon/dist/umd/Note.js 1.59 kB
packages/icon/dist/umd/NumberedList.js 2.5 kB
packages/icon/dist/umd/OpenNewTab.js 1.88 kB
packages/icon/dist/umd/OutlineFavorite.js 2.01 kB
packages/icon/dist/umd/Package.js 1.85 kB
packages/icon/dist/umd/Pause.js 1.49 kB
packages/icon/dist/umd/Pending.js 1.47 kB
packages/icon/dist/umd/Person.js 1.67 kB
packages/icon/dist/umd/PersonGroup.js 1.87 kB
packages/icon/dist/umd/PersonWithLock.js 1.87 kB
packages/icon/dist/umd/Pin.js 1.6 kB
packages/icon/dist/umd/Play.js 1.48 kB
packages/icon/dist/umd/Plus.js 1.5 kB
packages/icon/dist/umd/PlusWithCircle.js 1.53 kB
packages/icon/dist/umd/Primary.js 1.55 kB
packages/icon/dist/umd/Project.js 1.59 kB
packages/icon/dist/umd/QuestionMarkWithCircle.js 1.91 kB
packages/icon/dist/umd/Read.js 2.2 kB
packages/icon/dist/umd/Recommended.js 2.38 kB
packages/icon/dist/umd/Redo.js 1.85 kB
packages/icon/dist/umd/Refresh.js 1.91 kB
packages/icon/dist/umd/Relationship.js 1.6 kB
packages/icon/dist/umd/ReplicaSet.js 1.75 kB
packages/icon/dist/umd/Resize.js 1.57 kB
packages/icon/dist/umd/Resource.js 1.9 kB
packages/icon/dist/umd/Return.js 1.67 kB
packages/icon/dist/umd/Revert.js 1.71 kB
packages/icon/dist/umd/Router.js 2.38 kB
packages/icon/dist/umd/Save.js 2.1 kB
packages/icon/dist/umd/SearchIndex.js 2.24 kB
packages/icon/dist/umd/Secondary.js 1.79 kB
packages/icon/dist/umd/Serverless.js 1.75 kB
packages/icon/dist/umd/Settings.js 2.17 kB
packages/icon/dist/umd/ShardedCluster.js 2.12 kB
packages/icon/dist/umd/Shell.js 1.66 kB
packages/icon/dist/umd/Shield.js 2.1 kB
packages/icon/dist/umd/Shirt.js 1.61 kB
packages/icon/dist/umd/Shortcut.js 2.18 kB
packages/icon/dist/umd/SMS.js 1.62 kB
packages/icon/dist/umd/SortAscending.js 1.7 kB
packages/icon/dist/umd/SortDescending.js 1.7 kB
packages/icon/dist/umd/Sparkle.js 2.03 kB
packages/icon/dist/umd/SplitHorizontal.js 1.47 kB
packages/icon/dist/umd/SplitVertical.js 1.46 kB
packages/icon/dist/umd/Stitch.js 1.5 kB
packages/icon/dist/umd/Stop.js 1.34 kB
packages/icon/dist/umd/Streaming.js 2.5 kB
packages/icon/dist/umd/String.js 1.61 kB
packages/icon/dist/umd/Sun.js 1.82 kB
packages/icon/dist/umd/Support.js 1.7 kB
packages/icon/dist/umd/Sweep.js 1.72 kB
packages/icon/dist/umd/Table.js 1.49 kB
packages/icon/dist/umd/Tag.js 1.52 kB
packages/icon/dist/umd/TemporaryTable.js 1.73 kB
packages/icon/dist/umd/ThumbsDown.js 1.82 kB
packages/icon/dist/umd/ThumbsUp.js 1.81 kB
packages/icon/dist/umd/TimeSeries.js 1.86 kB
packages/icon/dist/umd/TimeSeriesCollection.js 2 kB
packages/icon/dist/umd/Trash.js 1.52 kB
packages/icon/dist/umd/Undo.js 1.84 kB
packages/icon/dist/umd/University.js 2.03 kB
packages/icon/dist/umd/Unlock.js 1.71 kB
packages/icon/dist/umd/Unsorted.js 1.75 kB
packages/icon/dist/umd/UpDownCarets.js 1.59 kB
packages/icon/dist/umd/Upload.js 1.8 kB
packages/icon/dist/umd/VerticalEllipsis.js 1.5 kB
packages/icon/dist/umd/View.js 1.65 kB
packages/icon/dist/umd/Visibility.js 1.82 kB
packages/icon/dist/umd/VisibilityOff.js 2.23 kB
packages/icon/dist/umd/Warning.js 1.59 kB
packages/icon/dist/umd/Wizard.js 1.94 kB
packages/icon/dist/umd/Wrench.js 1.93 kB
packages/icon/dist/umd/Write.js 2.21 kB
packages/icon/dist/umd/X.js 1.63 kB
packages/icon/dist/umd/XWithCircle.js 1.57 kB
packages/icon/dist/Undo.js 1.84 kB
packages/icon/dist/University.js 2.03 kB
packages/icon/dist/Unlock.js 1.71 kB
packages/icon/dist/Unsorted.js 1.75 kB
packages/icon/dist/UpDownCarets.js 1.59 kB
packages/icon/dist/Upload.js 1.8 kB
packages/icon/dist/VerticalEllipsis.js 1.5 kB
packages/icon/dist/View.js 1.65 kB
packages/icon/dist/Visibility.js 1.82 kB
packages/icon/dist/VisibilityOff.js 2.23 kB
packages/icon/dist/Warning.js 1.59 kB
packages/icon/dist/Wizard.js 1.94 kB
packages/icon/dist/Wrench.js 1.93 kB
packages/icon/dist/Write.js 2.21 kB
packages/icon/dist/X.js 1.63 kB
packages/icon/dist/XWithCircle.js 1.57 kB
packages/info-sprinkle/dist/esm/index.js 1.83 kB
packages/info-sprinkle/dist/umd/index.js 2.03 kB
packages/inline-definition/dist/esm/index.js 1.7 kB
packages/inline-definition/dist/umd/index.js 1.85 kB
packages/input-option/dist/esm/index.js 2.67 kB
packages/input-option/dist/umd/index.js 2.81 kB
packages/leafygreen-provider/dist/esm/index.js 1.87 kB
packages/leafygreen-provider/dist/umd/index.js 2.03 kB
packages/lib/dist/esm/index.js 2.86 kB
packages/lib/dist/umd/index.js 3.02 kB
packages/loading-indicator/dist/esm/index.js 3.39 kB
packages/loading-indicator/dist/umd/index.js 3.55 kB
packages/logo/dist/esm/index.js 39 kB
packages/logo/dist/umd/index.js 39.3 kB
packages/marketing-modal/dist/esm/index.js 3.54 kB
packages/marketing-modal/dist/umd/index.js 3.73 kB
packages/menu/dist/esm/index.js 8.14 kB
packages/menu/dist/umd/index.js 8.4 kB
packages/modal/dist/esm/index.js 3.3 kB
packages/modal/dist/umd/index.js 3.44 kB
packages/number-input/dist/esm/index.js 5.68 kB
packages/number-input/dist/umd/index.js 5.86 kB
packages/ordered-list/dist/esm/index.js 1.33 kB
packages/ordered-list/dist/umd/index.js 1.5 kB
packages/pagination/dist/esm/index.js 1.68 kB
packages/pagination/dist/umd/index.js 1.9 kB
packages/palette/dist/esm/index.js 411 B
packages/palette/dist/umd/index.js 561 B
packages/password-input/dist/esm/index.js 4.54 kB
packages/password-input/dist/umd/index.js 4.75 kB
packages/pipeline/dist/esm/index.js 7.85 kB
packages/pipeline/dist/umd/index.js 8.11 kB
packages/polymorphic/dist/esm/index.js 1.27 kB
packages/polymorphic/dist/umd/index.js 1.4 kB
packages/popover/dist/esm/index.js 4.98 kB
packages/popover/dist/umd/index.js 5.14 kB
packages/portal/dist/esm/index.js 919 B
packages/portal/dist/umd/index.js 1.08 kB
packages/preview-card/dist/esm/index.js 2.35 kB
packages/preview-card/dist/esm/testing/index.js 2.67 kB
packages/preview-card/dist/umd/index.js 2.49 kB
packages/preview-card/dist/umd/testing/index.js 2.81 kB
packages/progress-bar/dist/esm/index.js 5.54 kB
packages/progress-bar/dist/esm/testing/index.js 507 B
packages/progress-bar/dist/umd/index.js 5.77 kB
packages/progress-bar/dist/umd/testing/index.js 630 B
packages/radio-box-group/dist/esm/index.js 2.87 kB
packages/radio-box-group/dist/umd/index.js 2.99 kB
packages/radio-group/dist/esm/index.js 3.25 kB
packages/radio-group/dist/umd/index.js 3.39 kB
packages/resizable/dist/esm/index.js 2.48 kB
packages/resizable/dist/umd/index.js 2.57 kB
packages/ripple/dist/esm/index.js 954 B
packages/ripple/dist/umd/index.js 1.05 kB
packages/search-input/dist/esm/index.js 5.9 kB
packages/search-input/dist/umd/index.js 6.12 kB
packages/section-nav/dist/esm/index.js 2.62 kB
packages/section-nav/dist/esm/testing/index.js 2.85 kB
packages/section-nav/dist/umd/index.js 2.76 kB
packages/section-nav/dist/umd/testing/index.js 3.02 kB
packages/segmented-control/dist/esm/index.js 5.44 kB
packages/segmented-control/dist/umd/index.js 5.58 kB
packages/select/dist/esm/index.js 8.69 kB
packages/select/dist/esm/testing/index.js 698 B
packages/select/dist/umd/index.js 8.89 kB
packages/select/dist/umd/testing/index.js 831 B
packages/side-nav/dist/esm/index.js 7.47 kB
packages/side-nav/dist/umd/index.js 7.72 kB
packages/skeleton-loader/dist/esm/index.js 3.19 kB
packages/skeleton-loader/dist/umd/index.js 3.39 kB
packages/split-button/dist/esm/index.js 3.56 kB
packages/split-button/dist/umd/index.js 3.72 kB
packages/stepper/dist/esm/index.js 3.47 kB
packages/stepper/dist/umd/index.js 3.68 kB
packages/table/dist/esm/index.js 8.14 kB
packages/table/dist/esm/testing/index.js 694 B
packages/table/dist/umd/index.js 8.4 kB
packages/table/dist/umd/testing/index.js 809 B
packages/tabs/dist/esm/index.js 5.14 kB
packages/tabs/dist/esm/testing/index.js 597 B
packages/tabs/dist/umd/index.js 5.28 kB
packages/tabs/dist/umd/testing/index.js 713 B
packages/testing-lib/dist/esm/index.js 3.31 kB
packages/testing-lib/dist/umd/index.js 3.53 kB
packages/testing-lib/dist/umd/renderHookServer.js 590 B
packages/testing-lib/dist/umd/renderHookServerV17.js 386 B
packages/text-area/dist/esm/index.js 2.19 kB
packages/text-area/dist/esm/testing/index.js 466 B
packages/text-area/dist/umd/index.js 2.35 kB
packages/text-area/dist/umd/testing/index.js 597 B
packages/text-input/dist/esm/index.js 2.5 kB
packages/text-input/dist/esm/testing/index.js 463 B
packages/text-input/dist/umd/index.js 2.67 kB
packages/text-input/dist/umd/testing/index.js 593 B
packages/toast/dist/esm/index.js 8.22 kB
packages/toast/dist/umd/index.js 8.51 kB
packages/toggle/dist/esm/index.js 3 kB
packages/toggle/dist/esm/testing/index.js 276 B
packages/toggle/dist/umd/index.js 3.18 kB
packages/toggle/dist/umd/testing/index.js 403 B
packages/tokens/dist/esm/index.js 2.83 kB
packages/tokens/dist/umd/index.js 2.93 kB
packages/toolbar/dist/esm/index.js 3.24 kB
packages/toolbar/dist/esm/testing/index.js 527 B
packages/toolbar/dist/umd/index.js 3.36 kB
packages/toolbar/dist/umd/testing/index.js 638 B
packages/tooltip/dist/esm/index.js 4.35 kB
packages/tooltip/dist/umd/index.js 4.63 kB
packages/typography/dist/esm/index.js 5.81 kB
packages/typography/dist/umd/index.js 5.95 kB
tools/build/dist/esm/index.js 6.2 kB
tools/build/dist/umd/cli.js 6.55 kB
tools/build/dist/umd/index.js 6.49 kB
tools/cli/dist/esm/index.js 2.33 kB
tools/cli/dist/umd/index.js 2.49 kB
tools/codemods/dist/_virtual/_rollupPluginBabelHelpers.js 936 B
tools/codemods/dist/codemods/modal-v20/transform.js 787 B
tools/codemods/dist/codemods/popover-v12/transform.js 1.1 kB
tools/codemods/dist/codemods/tabs-v17/transform.js 368 B
tools/codemods/dist/constants.js 148 B
tools/codemods/dist/esm/_virtual/_rollupPluginBabelHelpers.mjs 928 B
tools/codemods/dist/esm/codemods/modal-v20/transform.mjs 788 B
tools/codemods/dist/esm/codemods/popover-v12/transform.mjs 1.09 kB
tools/codemods/dist/esm/codemods/tabs-v17/transform.mjs 366 B
tools/codemods/dist/esm/constants.mjs 148 B
tools/codemods/dist/esm/index.js 3.4 kB
tools/codemods/dist/esm/types.mjs 765 B
tools/codemods/dist/esm/utils/imports/getImportSpecifiersForDeclaration.mjs 280 B
tools/codemods/dist/esm/utils/jsx/getJSXAttributes.mjs 160 B
tools/codemods/dist/esm/utils/jsx/insertJSXComment/insertJSXComment.mjs 369 B
tools/codemods/dist/esm/utils/transformations/addJSXAttributes/addJSXAttributes.mjs 412 B
tools/codemods/dist/esm/utils/transformations/consolidateJSXAttributes/consolidateJSXAttributes.mjs 665 B
tools/codemods/dist/esm/utils/transformations/removeJSXAttributes/removeJSXAttributes.mjs 360 B
tools/codemods/dist/esm/utils/transformations/replaceJSXAttributes/replaceJSXAttributes.mjs 278 B
tools/codemods/dist/types.js 765 B
tools/codemods/dist/umd/index.js 3.64 kB
tools/codemods/dist/utils/imports/getImportSpecifiersForDeclaration.js 283 B
tools/codemods/dist/utils/jsx/getJSXAttributes.js 164 B
tools/codemods/dist/utils/jsx/insertJSXComment/insertJSXComment.js 371 B
tools/codemods/dist/utils/transformations/addJSXAttributes/addJSXAttributes.js 410 B
tools/codemods/dist/utils/transformations/consolidateJSXAttributes/consolidateJSXAttributes.js 664 B
tools/codemods/dist/utils/transformations/removeJSXAttributes/removeJSXAttributes.js 364 B
tools/codemods/dist/utils/transformations/replaceJSXAttributes/replaceJSXAttributes.js 282 B
tools/create/dist/esm/index.js 4.01 kB
tools/create/dist/umd/index.js 4.18 kB
tools/install/dist/esm/index.js 2.18 kB
tools/install/dist/umd/index.js 2.33 kB
tools/link/dist/esm/index.js 3.79 kB
tools/link/dist/umd/index.js 3.9 kB
tools/lint/dist/esm/index.js 4.11 kB
tools/lint/dist/umd/index.js 4.25 kB
tools/meta/dist/esm/index.js 1.71 kB
tools/meta/dist/umd/index.js 1.85 kB
tools/prompt-kit/dist/esm/index.js 2.27 kB
tools/prompt-kit/dist/umd/index.js 2.41 kB
tools/slackbot/dist/esm/index.js 4.8 kB
tools/slackbot/dist/umd/index.js 4.96 kB
tools/storybook-addon/dist/esm/index.js 2.22 kB
tools/storybook-addon/dist/esm/main.js 2.22 kB
tools/storybook-addon/dist/esm/manager.js 554 B
tools/storybook-addon/dist/esm/preview.js 1.69 kB
tools/storybook-addon/dist/umd/index.js 2.33 kB
tools/storybook-addon/dist/umd/main.js 2.33 kB
tools/storybook-addon/dist/umd/manager.js 685 B
tools/storybook-addon/dist/umd/preview.js 1.8 kB
tools/storybook-decorators/dist/esm/index.js 3.28 kB
tools/storybook-decorators/dist/umd/index.js 3.56 kB
tools/storybook-utils/dist/esm/index.js 2.77 kB
tools/storybook-utils/dist/umd/index.js 2.9 kB
tools/test-harnesses/dist/esm/index.js 1.78 kB
tools/test-harnesses/dist/umd/index.js 1.91 kB
tools/test/dist/esm/index.js 1.68 kB
tools/test/dist/umd/index.js 1.81 kB
tools/update/dist/esm/index.js 725 B
tools/update/dist/umd/index.js 885 B
tools/validate/dist/esm/index.js 5.75 kB
tools/validate/dist/umd/index.js 5.98 kB

compressed-size-action

@shaneeza shaneeza marked this pull request as ready for review August 22, 2025 14:29
@shaneeza shaneeza requested a review from a team as a code owner August 22, 2025 14:29
@shaneeza shaneeza requested review from stephl3 and removed request for a team August 22, 2025 14:29
Comment on lines 3 to 6
export type LayoutGridProps = Omit<HTMLElementProps<'div'>, 'children'> & {
drawer: React.ReactNode;
children: React.ReactNode;
};
Copy link
Collaborator

Choose a reason for hiding this comment

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

If this was done to make sure children is defined, you may need to wrap ReactNode in a Required<> since ReactNode includes undefined

},
];

export const DRAWER_TOOLBAR_DATA_NOT_VISIBLE: DrawerToolbarLayoutProps['toolbarData'] =
Copy link
Collaborator

Choose a reason for hiding this comment

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

if these are the same other than the visible key, this could be simplified to:

Suggested change
export const DRAWER_TOOLBAR_DATA_NOT_VISIBLE: DrawerToolbarLayoutProps['toolbarData'] =
export const DRAWER_TOOLBAR_DATA_NOT_VISIBLE: DrawerToolbarLayoutProps['toolbarData'] =
DRAWER_TOOLBAR_DATA.map(dataObj => ({ ...dataObj, visible: false }));

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

I ended up creating a function to return data along with this suggesion

Comment on lines +56 to +61
// Calculate visibleToolbarItems in component body (needed for rendering)
const visibleToolbarItems = toolbarData?.filter(
toolbarItem => toolbarItem.visible ?? true,
);

const shouldRenderToolbar = visibleToolbarItems.length > 0;
Copy link
Collaborator

Choose a reason for hiding this comment

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

I think this was shared before, but I can't remember. What is the specific reason this needs to be derived from checking that all toolbar items have visible={false} as opposed to having a boolean for the Toolbar instance itself?

Copy link
Collaborator

Choose a reason for hiding this comment

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

Suggested change
// Calculate visibleToolbarItems in component body (needed for rendering)
const visibleToolbarItems = toolbarData?.filter(
toolbarItem => toolbarItem.visible ?? true,
);
const shouldRenderToolbar = visibleToolbarItems.length > 0;
// Calculate visibleToolbarItems in component body (needed for rendering)
const shouldRenderToolbar = toolbarData?.every(
toolbarItem => toolbarItem.visible ?? true,
);

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

There can be instances where some items should be toggled based on the context. In cases like this, the toolbar should still render, but with only visible items.

Copy link
Collaborator

Choose a reason for hiding this comment

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

gotcha, I missed that we are also rendering it. good to know!

</Drawer>
</DrawerWithToolbarWrapper>
<LayoutGrid
drawer={
Copy link
Collaborator

Choose a reason for hiding this comment

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

is there an alternative more explicit name that could be used here to better communicate that this could be a Toolbar+Drawer vs just a Drawer?

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

I ended up refactoring this. I renamed it to PanelGrid, and its sole responsibility is rendering the components that should be in the panel. It will only accept children. Along with this, I renamed the drawer prop on LayoutComponent to panelContent since this is the content that will be passed to PanelGrid.

Comment on lines 144 to 146
[getWithoutToolbarBaseStyles({ hasDrawerProp })]: !hasToolbar,
[getWithoutToolbarOpenStyles({ hasDrawerProp })]:
isDrawerOpen && !hasToolbar,
Copy link
Collaborator

Choose a reason for hiding this comment

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

nit: I think readability of this (and the preceding couple lines) would improve a lot by further consolidating these styles as getClosedStyles + getOpenStyles

Suggested change
[getWithoutToolbarBaseStyles({ hasDrawerProp })]: !hasToolbar,
[getWithoutToolbarOpenStyles({ hasDrawerProp })]:
isDrawerOpen && !hasToolbar,
[getClosedStyles({ hasDrawer, hasToolbar })]: !isDrawerOpen,
[getOpenStyles({ hasDrawer, hasToolbar })]: isDrawerOpen,

also thought about getWithToolbarStyles(isDrawerOpen) and getWithoutToolbarStyles({ hasDrawerProp, isDrawerOpen }) but initially forking on isDrawerOpen seems like it better aligns with patterns in other packages

Comment on lines 44 to 48
{hasDrawerProp ? (
<LayoutGrid drawer={drawer}>{children}</LayoutGrid>
) : (
children
)}
Copy link
Collaborator

Choose a reason for hiding this comment

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

This is a bit confusing to me. Should drawer not be a required prop for this layout?

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

The drawer prop is not required because I wanted to keep this backwards compatible. When drawerLayout was first introduced, drawer was not a prop, so consumers had to pass the drawer as a child. With the addition of the drawer prop, the recommendation is to use the drawer prop, but you can still continue to pass the drawer as a child. The difference is how the drawers are rendered internally.

You can also continue to stack overlay drawers with the stack context if the drawers are passed as children.

Comment on lines 32 to 36
{hasDrawerProp ? (
<LayoutGrid drawer={drawer}>{children}</LayoutGrid>
) : (
children
)}
Copy link
Collaborator

Choose a reason for hiding this comment

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

similarly for this, should drawer be a required prop?

@shaneeza shaneeza requested a review from sandynguyenn August 26, 2025 18:03
Comment on lines +56 to +61
// Calculate visibleToolbarItems in component body (needed for rendering)
const visibleToolbarItems = toolbarData?.filter(
toolbarItem => toolbarItem.visible ?? true,
);

const shouldRenderToolbar = visibleToolbarItems.length > 0;
Copy link
Collaborator

Choose a reason for hiding this comment

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

gotcha, I missed that we are also rendering it. good to know!

@shaneeza shaneeza enabled auto-merge August 28, 2025 17:43
@shaneeza shaneeza added this pull request to the merge queue Aug 28, 2025
Merged via the queue into main with commit 71c6daa Aug 28, 2025
12 checks passed
@shaneeza shaneeza deleted the LG-5460/hide-drawer-toolbar branch August 28, 2025 18:50
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.

3 participants