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

LG-4526: refactor popover-consuming components #2501

Open
wants to merge 1 commit into
base: LG-4121-popover-refactor
Choose a base branch
from

Conversation

stephl3
Copy link
Collaborator

@stephl3 stephl3 commented Oct 10, 2024

✍️ Proposed changes

  • Replaces usePortal prop with renderMode
  • Refactors Popover-consuming components

🎟 Jira ticket: LG-4526

✅ Checklist

For bug fixes, new features & breaking changes

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

🧪 How to test changes

Terrence section

  • Review Combobox live example
    • Try different renderMode settings
    • Toggle on multiselect, select long text options, and hover chips
  • Review GuideCue live example
    • Review Multistep Demo story
  • Review Menu live example
    • Try different renderMode settings
  • Review SplitButton live example
    • Try different renderMode settings
  • Review SearchInput live example

Adam section

  • Review Select live example
    • Try different renderMode settings
  • Review Code live example
    • Interact with CopyButton
    • Review With Language Switcher story and interact with LanguageSwitcher
  • Review DatePicker live example
    • Interact with opening/closing menu
    • Interact with month/year dropdowns
  • Review NumberInput live example
    • Interact with UnitSelect
    • Select "Astronomical units" option and hover UnitSelectButton
  • Review Pagination live example
    • Review With Current Page Options story

Shaneeza section

  • Review Tooltip live example
    • Try different renderMode settings
  • Review Copyable live example
  • Review InfoSprinkle live example
  • Review InlineDefinition live example
  • Review Pipeline live example
    • Need to review on Large mobile breakpoint
  • Review SideNav live example
    • Hover CollapseToggle
  • Review Stepper live example
    • Hover EllipsesStep

Copy link

changeset-bot bot commented Oct 10, 2024

🦋 Changeset detected

Latest commit: 0b99dd5

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

This PR includes changesets to release 66 packages
Name Type
@leafygreen-ui/hooks Minor
@leafygreen-ui/popover Major
@leafygreen-ui/inline-definition Major
@leafygreen-ui/info-sprinkle Major
@leafygreen-ui/date-picker Major
@leafygreen-ui/copyable Major
@leafygreen-ui/tooltip Major
@leafygreen-ui/code Major
@leafygreen-ui/menu Major
@leafygreen-ui/modal Major
@leafygreen-ui/leafygreen-provider Major
@lg-chat/fixed-chat-window Major
@lg-chat/input-bar Major
@lg-chat/message-feedback Major
@leafygreen-ui/combobox Major
@leafygreen-ui/descendants Major
@leafygreen-ui/guide-cue Major
@leafygreen-ui/number-input Major
@leafygreen-ui/search-input Major
@leafygreen-ui/select Major
@leafygreen-ui/split-button Major
@leafygreen-ui/chip Major
@leafygreen-ui/pipeline Major
@leafygreen-ui/radio-box-group Major
@leafygreen-ui/side-nav Major
@leafygreen-ui/stepper Major
@lg-chat/lg-markdown Major
@leafygreen-ui/callout Major
@leafygreen-ui/table Major
@lg-chat/avatar Major
@lg-chat/chat-window Major
@lg-chat/message-feed Major
@lg-chat/message-prompts Major
@lg-chat/message-rating Major
@lg-chat/message Major
@lg-chat/rich-links Major
@lg-chat/title-bar Major
@leafygreen-ui/avatar Major
@leafygreen-ui/badge Major
@leafygreen-ui/banner Major
@leafygreen-ui/button Major
@leafygreen-ui/card Major
@leafygreen-ui/checkbox Major
@leafygreen-ui/confirmation-modal Major
@leafygreen-ui/empty-state Major
@leafygreen-ui/expandable-card Major
@leafygreen-ui/form-field Major
@leafygreen-ui/form-footer Major
@leafygreen-ui/icon-button Major
@leafygreen-ui/input-option Major
@leafygreen-ui/loading-indicator Major
@leafygreen-ui/marketing-modal Major
@leafygreen-ui/pagination Major
@leafygreen-ui/password-input Major
@leafygreen-ui/radio-group Major
@leafygreen-ui/segmented-control Major
@leafygreen-ui/skeleton-loader Major
@leafygreen-ui/tabs Major
@leafygreen-ui/text-area Major
@leafygreen-ui/text-input Major
@leafygreen-ui/toast Major
@leafygreen-ui/toggle Major
@leafygreen-ui/typography Major
@lg-tools/storybook-decorators Major
@lg-chat/chat-disclaimer Patch
@lg-tools/storybook-addon Patch

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

Copy link
Contributor

github-actions bot commented Oct 10, 2024

Size Change: -966 B (-0.07%)

Total Size: 1.38 MB

Filename Size Change
packages/chip/dist/esm/index.js 3.29 kB +7 B (+0.21%)
packages/chip/dist/index.js 3.51 kB +5 B (+0.14%)
packages/code/dist/esm/index.js 10.1 kB -140 B (-1.37%)
packages/code/dist/index.js 10.7 kB -158 B (-1.46%)
packages/combobox/dist/esm/index.js 12 kB +38 B (+0.32%)
packages/combobox/dist/index.js 12.3 kB +5 B (+0.04%)
packages/copyable/dist/esm/index.js 2.86 kB -16 B (-0.56%)
packages/copyable/dist/index.js 3.07 kB -17 B (-0.55%)
packages/date-picker/dist/esm/index.js 13.8 kB -60 B (-0.43%)
packages/date-picker/dist/index.js 14.2 kB -79 B (-0.55%)
packages/guide-cue/dist/esm/index.js 4.25 kB -114 B (-2.61%)
packages/guide-cue/dist/index.js 4.48 kB -129 B (-2.8%)
packages/info-sprinkle/dist/esm/index.js 1.4 kB +7 B (+0.5%)
packages/info-sprinkle/dist/index.js 1.61 kB +3 B (+0.19%)
packages/inline-definition/dist/esm/index.js 1.22 kB +21 B (+1.75%)
packages/inline-definition/dist/index.js 1.39 kB +16 B (+1.16%)
packages/leafygreen-provider/dist/esm/index.js 2.59 kB +68 B (+2.69%)
packages/leafygreen-provider/dist/index.js 2.75 kB +73 B (+2.73%)
packages/menu/dist/esm/index.js 8.07 kB +59 B (+0.74%)
packages/menu/dist/index.js 8.37 kB +37 B (+0.44%)
packages/modal/dist/esm/index.js 3.3 kB +20 B (+0.61%)
packages/modal/dist/index.js 3.53 kB +16 B (+0.46%)
packages/number-input/dist/esm/index.js 5.74 kB -378 B (-6.18%)
packages/number-input/dist/index.js 5.94 kB -393 B (-6.2%)
packages/pagination/dist/esm/index.js 1.77 kB +21 B (+1.2%)
packages/pagination/dist/index.js 1.99 kB +19 B (+0.97%)
packages/pipeline/dist/esm/index.js 7.89 kB +39 B (+0.5%)
packages/pipeline/dist/index.js 8.16 kB +25 B (+0.31%)
packages/popover/dist/esm/index.js 4.99 kB +60 B (+1.22%)
packages/popover/dist/index.js 5.16 kB +63 B (+1.24%)
packages/search-input/dist/esm/index.js 5.89 kB -134 B (-2.22%)
packages/search-input/dist/index.js 6.1 kB -148 B (-2.37%)
packages/select/dist/esm/index.js 9.23 kB -24 B (-0.26%)
packages/select/dist/index.js 9.43 kB -17 B (-0.18%)
packages/side-nav/dist/esm/index.js 7.55 kB +29 B (+0.39%)
packages/side-nav/dist/index.js 7.81 kB +14 B (+0.18%)
packages/split-button/dist/esm/index.js 3.58 kB +29 B (+0.82%)
packages/split-button/dist/index.js 3.74 kB +27 B (+0.73%)
packages/stepper/dist/esm/index.js 2.98 kB +21 B (+0.71%)
packages/stepper/dist/index.js 3.22 kB +17 B (+0.53%)
packages/tooltip/dist/esm/index.js 4.4 kB +45 B (+1.03%)
packages/tooltip/dist/index.js 4.7 kB +57 B (+1.23%)
ℹ️ View Unchanged
Filename Size
charts/line-chart/dist/esm/index.js 258 B
charts/line-chart/dist/index.js 563 B
chat/avatar/dist/esm/index.js 1.36 kB
chat/avatar/dist/index.js 1.52 kB
chat/chat-disclaimer/dist/esm/index.js 566 B
chat/chat-disclaimer/dist/index.js 755 B
chat/chat-window/dist/esm/index.js 1.62 kB
chat/chat-window/dist/index.js 1.79 kB
chat/fixed-chat-window/dist/esm/index.js 2.35 kB
chat/fixed-chat-window/dist/index.js 2.54 kB
chat/input-bar/dist/esm/index.js 6.9 kB
chat/input-bar/dist/index.js 7.11 kB
chat/leafygreen-chat-provider/dist/esm/index.js 902 B
chat/leafygreen-chat-provider/dist/index.js 1.06 kB
chat/lg-markdown/dist/esm/index.js 1.44 kB
chat/lg-markdown/dist/index.js 1.59 kB
chat/message-feed/dist/esm/index.js 1.92 kB
chat/message-feed/dist/index.js 2.12 kB
chat/message-feedback/dist/esm/index.js 2.54 kB
chat/message-feedback/dist/index.js 2.78 kB
chat/message-prompts/dist/esm/index.js 1.74 kB
chat/message-prompts/dist/index.js 1.91 kB
chat/message-rating/dist/esm/index.js 2.52 kB
chat/message-rating/dist/index.js 2.71 kB
chat/message/dist/esm/index.js 3.75 kB
chat/message/dist/index.js 3.92 kB
chat/rich-links/dist/esm/index.js 2.68 kB
chat/rich-links/dist/index.js 2.89 kB
chat/title-bar/dist/esm/index.js 1.39 kB
chat/title-bar/dist/index.js 1.6 kB
packages/a11y/dist/esm/index.js 1.74 kB
packages/a11y/dist/index.js 1.87 kB
packages/avatar/dist/esm/index.js 2.34 kB
packages/avatar/dist/index.js 2.52 kB
packages/badge/dist/esm/index.js 1.46 kB
packages/badge/dist/index.js 1.66 kB
packages/banner/dist/esm/index.js 3.13 kB
packages/banner/dist/index.js 3.44 kB
packages/box/dist/esm/index.js 540 B
packages/box/dist/index.js 695 B
packages/button/dist/esm/index.js 4.94 kB
packages/button/dist/index.js 5.14 kB
packages/callout/dist/esm/index.js 1.62 kB
packages/callout/dist/index.js 1.8 kB
packages/card/dist/esm/index.js 1.56 kB
packages/card/dist/index.js 1.75 kB
packages/checkbox/dist/esm/index.js 4.27 kB
packages/checkbox/dist/index.js 4.48 kB
packages/confirmation-modal/dist/esm/index.js 2.64 kB
packages/confirmation-modal/dist/index.js 2.87 kB
packages/date-utils/dist/esm/index.js 3.42 kB
packages/date-utils/dist/index.js 3.53 kB
packages/descendants/dist/esm/index.js 2.81 kB
packages/descendants/dist/index.js 2.9 kB
packages/emotion/dist/esm/index.js 345 B
packages/emotion/dist/index.js 555 B
packages/empty-state/dist/esm/index.js 1.9 kB
packages/empty-state/dist/index.js 2.08 kB
packages/expandable-card/dist/esm/index.js 2.85 kB
packages/expandable-card/dist/index.js 3.03 kB
packages/form-field/dist/esm/index.js 4.31 kB
packages/form-field/dist/index.js 4.46 kB
packages/form-footer/dist/esm/index.js 1.77 kB
packages/form-footer/dist/index.js 1.98 kB
packages/hooks/dist/esm/index.js 3.36 kB
packages/hooks/dist/index.js 3.47 kB
packages/icon-button/dist/esm/index.js 2.35 kB
packages/icon-button/dist/index.js 2.57 kB
packages/icon/dist/ActivityFeed.js 2.03 kB
packages/icon/dist/AddFile.js 1.8 kB
packages/icon/dist/AllProducts.js 1.87 kB
packages/icon/dist/Apps.js 1.47 kB
packages/icon/dist/Array.js 1.59 kB
packages/icon/dist/ArrowDown.js 1.72 kB
packages/icon/dist/ArrowLeft.js 1.73 kB
packages/icon/dist/ArrowRight.js 1.72 kB
packages/icon/dist/ArrowUp.js 1.72 kB
packages/icon/dist/Beaker.js 2.15 kB
packages/icon/dist/Bell.js 1.68 kB
packages/icon/dist/Biometric.js 2.25 kB
packages/icon/dist/Boolean.js 1.52 kB
packages/icon/dist/Building.js 1.67 kB
packages/icon/dist/Bulb.js 1.72 kB
packages/icon/dist/Calendar.js 1.67 kB
packages/icon/dist/Camera.js 1.76 kB
packages/icon/dist/Cap.js 1.88 kB
packages/icon/dist/CaretDown.js 1.54 kB
packages/icon/dist/CaretLeft.js 1.54 kB
packages/icon/dist/CaretRight.js 1.53 kB
packages/icon/dist/CaretUp.js 1.54 kB
packages/icon/dist/ChartFilled.js 1.64 kB
packages/icon/dist/Charts.js 1.61 kB
packages/icon/dist/Checkmark.js 1.68 kB
packages/icon/dist/CheckmarkWithCircle.js 1.75 kB
packages/icon/dist/ChevronDown.js 1.64 kB
packages/icon/dist/ChevronLeft.js 1.64 kB
packages/icon/dist/ChevronRight.js 1.66 kB
packages/icon/dist/ChevronUp.js 1.63 kB
packages/icon/dist/Clock.js 1.7 kB
packages/icon/dist/ClockWithArrow.js 1.99 kB
packages/icon/dist/Clone.js 1.57 kB
packages/icon/dist/Cloud.js 1.75 kB
packages/icon/dist/Code.js 1.96 kB
packages/icon/dist/CodeBlock.js 1.9 kB
packages/icon/dist/Colon.js 1.52 kB
packages/icon/dist/Connect.js 2 kB
packages/icon/dist/Copy.js 1.95 kB
packages/icon/dist/CreditCard.js 1.5 kB
packages/icon/dist/CurlyBraces.js 2.1 kB
packages/icon/dist/Cursor.js 1.63 kB
packages/icon/dist/Dashboard.js 1.64 kB
packages/icon/dist/Database.js 2.1 kB
packages/icon/dist/Diagram.js 1.71 kB
packages/icon/dist/Diagram2.js 1.73 kB
packages/icon/dist/Diagram3.js 1.69 kB
packages/icon/dist/Disconnect.js 1.94 kB
packages/icon/dist/Download.js 1.73 kB
packages/icon/dist/Drag.js 1.68 kB
packages/icon/dist/Edit.js 1.58 kB
packages/icon/dist/Ellipsis.js 1.56 kB
packages/icon/dist/Email.js 1.78 kB
packages/icon/dist/EmptyDatabase.js 4.38 kB
packages/icon/dist/EmptyFolder.js 2.17 kB
packages/icon/dist/Eraser.js 1.85 kB
packages/icon/dist/Escalation.js 1.75 kB
packages/icon/dist/esm/ActivityFeed.js 1.79 kB
packages/icon/dist/esm/AddFile.js 1.57 kB
packages/icon/dist/esm/AllProducts.js 1.64 kB
packages/icon/dist/esm/Apps.js 1.25 kB
packages/icon/dist/esm/Array.js 1.37 kB
packages/icon/dist/esm/ArrowDown.js 1.49 kB
packages/icon/dist/esm/ArrowLeft.js 1.5 kB
packages/icon/dist/esm/ArrowRight.js 1.49 kB
packages/icon/dist/esm/ArrowUp.js 1.49 kB
packages/icon/dist/esm/Beaker.js 1.92 kB
packages/icon/dist/esm/Bell.js 1.45 kB
packages/icon/dist/esm/Biometric.js 2.02 kB
packages/icon/dist/esm/Boolean.js 1.29 kB
packages/icon/dist/esm/Building.js 1.44 kB
packages/icon/dist/esm/Bulb.js 1.49 kB
packages/icon/dist/esm/Calendar.js 1.45 kB
packages/icon/dist/esm/Camera.js 1.53 kB
packages/icon/dist/esm/Cap.js 1.65 kB
packages/icon/dist/esm/CaretDown.js 1.31 kB
packages/icon/dist/esm/CaretLeft.js 1.31 kB
packages/icon/dist/esm/CaretRight.js 1.31 kB
packages/icon/dist/esm/CaretUp.js 1.31 kB
packages/icon/dist/esm/ChartFilled.js 1.41 kB
packages/icon/dist/esm/Charts.js 1.39 kB
packages/icon/dist/esm/Checkmark.js 1.45 kB
packages/icon/dist/esm/CheckmarkWithCircle.js 1.51 kB
packages/icon/dist/esm/ChevronDown.js 1.41 kB
packages/icon/dist/esm/ChevronLeft.js 1.42 kB
packages/icon/dist/esm/ChevronRight.js 1.43 kB
packages/icon/dist/esm/ChevronUp.js 1.4 kB
packages/icon/dist/esm/Clock.js 1.47 kB
packages/icon/dist/esm/ClockWithArrow.js 1.75 kB
packages/icon/dist/esm/Clone.js 1.34 kB
packages/icon/dist/esm/Cloud.js 1.53 kB
packages/icon/dist/esm/Code.js 1.73 kB
packages/icon/dist/esm/CodeBlock.js 1.67 kB
packages/icon/dist/esm/Colon.js 1.3 kB
packages/icon/dist/esm/Connect.js 1.77 kB
packages/icon/dist/esm/Copy.js 1.72 kB
packages/icon/dist/esm/CreditCard.js 1.27 kB
packages/icon/dist/esm/CurlyBraces.js 1.87 kB
packages/icon/dist/esm/Cursor.js 1.4 kB
packages/icon/dist/esm/Dashboard.js 1.41 kB
packages/icon/dist/esm/Database.js 1.87 kB
packages/icon/dist/esm/Diagram.js 1.49 kB
packages/icon/dist/esm/Diagram2.js 1.5 kB
packages/icon/dist/esm/Diagram3.js 1.47 kB
packages/icon/dist/esm/Disconnect.js 1.71 kB
packages/icon/dist/esm/Download.js 1.5 kB
packages/icon/dist/esm/Drag.js 1.46 kB
packages/icon/dist/esm/Edit.js 1.36 kB
packages/icon/dist/esm/Ellipsis.js 1.34 kB
packages/icon/dist/esm/Email.js 1.55 kB
packages/icon/dist/esm/EmptyDatabase.js 4.13 kB
packages/icon/dist/esm/EmptyFolder.js 1.94 kB
packages/icon/dist/esm/Eraser.js 1.62 kB
packages/icon/dist/esm/Escalation.js 1.52 kB
packages/icon/dist/esm/Export.js 1.63 kB
packages/icon/dist/esm/Favorite.js 1.58 kB
packages/icon/dist/esm/Federation.js 1.9 kB
packages/icon/dist/esm/File.js 1.39 kB
packages/icon/dist/esm/Filter.js 1.37 kB
packages/icon/dist/esm/Folder.js 1.28 kB
packages/icon/dist/esm/Format.js 1.71 kB
packages/icon/dist/esm/FullScreenEnter.js 1.53 kB
packages/icon/dist/esm/FullScreenExit.js 1.54 kB
packages/icon/dist/esm/Gauge.js 1.57 kB
packages/icon/dist/esm/GlobeAmericas.js 1.49 kB
packages/icon/dist/esm/GovernmentBuilding.js 1.52 kB
packages/icon/dist/esm/Hash.js 1.68 kB
packages/icon/dist/esm/Highlight.js 1.72 kB
packages/icon/dist/esm/Home.js 1.64 kB
packages/icon/dist/esm/HorizontalDrag.js 1.46 kB
packages/icon/dist/esm/Import.js 1.62 kB
packages/icon/dist/esm/ImportantWithCircle.js 1.38 kB
packages/icon/dist/esm/index.js 29.3 kB
packages/icon/dist/esm/InfoWithCircle.js 1.42 kB
packages/icon/dist/esm/InternalEmployee.js 1.71 kB
packages/icon/dist/esm/InviteUser.js 1.72 kB
packages/icon/dist/esm/Key.js 1.52 kB
packages/icon/dist/esm/Laptop.js 1.51 kB
packages/icon/dist/esm/LightningBolt.js 1.38 kB
packages/icon/dist/esm/Link.js 1.88 kB
packages/icon/dist/esm/List.js 1.53 kB
packages/icon/dist/esm/Lock.js 1.48 kB
packages/icon/dist/esm/LogIn.js 1.55 kB
packages/icon/dist/esm/LogOut.js 1.61 kB
packages/icon/dist/esm/MagnifyingGlass.js 1.45 kB
packages/icon/dist/esm/Megaphone.js 1.43 kB
packages/icon/dist/esm/Menu.js 1.33 kB
packages/icon/dist/esm/Minus.js 1.29 kB
packages/icon/dist/esm/Mobile.js 1.28 kB
packages/icon/dist/esm/Moon.js 1.47 kB
packages/icon/dist/esm/MultiDirectionArrow.js 1.5 kB
packages/icon/dist/esm/MultiLayers.js 2.46 kB
packages/icon/dist/esm/NavCollapse.js 1.52 kB
packages/icon/dist/esm/NavExpand.js 1.53 kB
packages/icon/dist/esm/NoFilter.js 1.51 kB
packages/icon/dist/esm/NotAllowed.js 1.4 kB
packages/icon/dist/esm/Note.js 1.43 kB
packages/icon/dist/esm/OpenNewTab.js 1.71 kB
packages/icon/dist/esm/Pause.js 1.34 kB
packages/icon/dist/esm/Pending.js 1.31 kB
packages/icon/dist/esm/Person.js 1.5 kB
packages/icon/dist/esm/PersonGroup.js 1.71 kB
packages/icon/dist/esm/PersonWithLock.js 1.71 kB
packages/icon/dist/esm/Pin.js 1.45 kB
packages/icon/dist/esm/Play.js 1.32 kB
packages/icon/dist/esm/Plus.js 1.34 kB
packages/icon/dist/esm/PlusWithCircle.js 1.37 kB
packages/icon/dist/esm/Primary.js 1.39 kB
packages/icon/dist/esm/Project.js 1.43 kB
packages/icon/dist/esm/QuestionMarkWithCircle.js 1.75 kB
packages/icon/dist/esm/Read.js 2.04 kB
packages/icon/dist/esm/Recommended.js 2.22 kB
packages/icon/dist/esm/Redo.js 1.68 kB
packages/icon/dist/esm/Refresh.js 1.75 kB
packages/icon/dist/esm/Relationship.js 1.45 kB
packages/icon/dist/esm/ReplicaSet.js 1.6 kB
packages/icon/dist/esm/Resize.js 1.42 kB
packages/icon/dist/esm/Return.js 1.51 kB
packages/icon/dist/esm/Save.js 1.94 kB
packages/icon/dist/esm/SearchIndex.js 2.07 kB
packages/icon/dist/esm/Secondary.js 1.63 kB
packages/icon/dist/esm/Serverless.js 1.58 kB
packages/icon/dist/esm/Settings.js 2.01 kB
packages/icon/dist/esm/ShardedCluster.js 1.96 kB
packages/icon/dist/esm/Shell.js 1.5 kB
packages/icon/dist/esm/SMS.js 1.46 kB
packages/icon/dist/esm/SortAscending.js 1.54 kB
packages/icon/dist/esm/SortDescending.js 1.53 kB
packages/icon/dist/esm/Sparkle.js 1.87 kB
packages/icon/dist/esm/SplitHorizontal.js 1.31 kB
packages/icon/dist/esm/SplitVertical.js 1.3 kB
packages/icon/dist/esm/Stitch.js 1.34 kB
packages/icon/dist/esm/Stop.js 1.19 kB
packages/icon/dist/esm/String.js 1.45 kB
packages/icon/dist/esm/Sun.js 1.67 kB
packages/icon/dist/esm/Support.js 1.54 kB
packages/icon/dist/esm/Sweep.js 1.56 kB
packages/icon/dist/esm/Table.js 1.33 kB
packages/icon/dist/esm/Tag.js 1.37 kB
packages/icon/dist/esm/ThumbsDown.js 1.66 kB
packages/icon/dist/esm/ThumbsUp.js 1.65 kB
packages/icon/dist/esm/TimeSeries.js 1.7 kB
packages/icon/dist/esm/TimeSeriesCollection.js 1.83 kB
packages/icon/dist/esm/Trash.js 1.36 kB
packages/icon/dist/esm/Undo.js 1.67 kB
packages/icon/dist/esm/University.js 1.86 kB
packages/icon/dist/esm/Unlock.js 1.55 kB
packages/icon/dist/esm/Unsorted.js 1.59 kB
packages/icon/dist/esm/UpDownCarets.js 1.44 kB
packages/icon/dist/esm/Upload.js 1.64 kB
packages/icon/dist/esm/VerticalEllipsis.js 1.35 kB
packages/icon/dist/esm/Visibility.js 1.67 kB
packages/icon/dist/esm/VisibilityOff.js 2.06 kB
packages/icon/dist/esm/Warning.js 1.43 kB
packages/icon/dist/esm/Wizard.js 1.78 kB
packages/icon/dist/esm/Wrench.js 1.77 kB
packages/icon/dist/esm/Write.js 2.05 kB
packages/icon/dist/esm/X.js 1.47 kB
packages/icon/dist/esm/XWithCircle.js 1.41 kB
packages/icon/dist/Export.js 1.86 kB
packages/icon/dist/Favorite.js 1.82 kB
packages/icon/dist/Federation.js 2.14 kB
packages/icon/dist/File.js 1.61 kB
packages/icon/dist/Filter.js 1.6 kB
packages/icon/dist/Folder.js 1.5 kB
packages/icon/dist/Format.js 1.93 kB
packages/icon/dist/FullScreenEnter.js 1.76 kB
packages/icon/dist/FullScreenExit.js 1.77 kB
packages/icon/dist/Gauge.js 1.8 kB
packages/icon/dist/GlobeAmericas.js 1.72 kB
packages/icon/dist/GovernmentBuilding.js 1.75 kB
packages/icon/dist/Hash.js 1.91 kB
packages/icon/dist/Highlight.js 1.95 kB
packages/icon/dist/Home.js 1.87 kB
packages/icon/dist/HorizontalDrag.js 1.69 kB
packages/icon/dist/Import.js 1.85 kB
packages/icon/dist/ImportantWithCircle.js 1.61 kB
packages/icon/dist/index.js 29.6 kB
packages/icon/dist/InfoWithCircle.js 1.64 kB
packages/icon/dist/InternalEmployee.js 1.94 kB
packages/icon/dist/InviteUser.js 1.95 kB
packages/icon/dist/Key.js 1.75 kB
packages/icon/dist/Laptop.js 1.73 kB
packages/icon/dist/LightningBolt.js 1.61 kB
packages/icon/dist/Link.js 2.12 kB
packages/icon/dist/List.js 1.75 kB
packages/icon/dist/Lock.js 1.7 kB
packages/icon/dist/LogIn.js 1.78 kB
packages/icon/dist/LogOut.js 1.84 kB
packages/icon/dist/MagnifyingGlass.js 1.68 kB
packages/icon/dist/Megaphone.js 1.65 kB
packages/icon/dist/Menu.js 1.56 kB
packages/icon/dist/Minus.js 1.51 kB
packages/icon/dist/Mobile.js 1.51 kB
packages/icon/dist/Moon.js 1.7 kB
packages/icon/dist/MultiDirectionArrow.js 1.73 kB
packages/icon/dist/MultiLayers.js 2.7 kB
packages/icon/dist/NavCollapse.js 1.75 kB
packages/icon/dist/NavExpand.js 1.76 kB
packages/icon/dist/NoFilter.js 1.74 kB
packages/icon/dist/NotAllowed.js 1.63 kB
packages/icon/dist/Note.js 1.66 kB
packages/icon/dist/OpenNewTab.js 1.95 kB
packages/icon/dist/Pause.js 1.56 kB
packages/icon/dist/Pending.js 1.54 kB
packages/icon/dist/Person.js 1.73 kB
packages/icon/dist/PersonGroup.js 1.94 kB
packages/icon/dist/PersonWithLock.js 1.94 kB
packages/icon/dist/Pin.js 1.67 kB
packages/icon/dist/Play.js 1.54 kB
packages/icon/dist/Plus.js 1.57 kB
packages/icon/dist/PlusWithCircle.js 1.6 kB
packages/icon/dist/Primary.js 1.62 kB
packages/icon/dist/Project.js 1.66 kB
packages/icon/dist/QuestionMarkWithCircle.js 1.98 kB
packages/icon/dist/Read.js 2.27 kB
packages/icon/dist/Recommended.js 2.46 kB
packages/icon/dist/Redo.js 1.92 kB
packages/icon/dist/Refresh.js 1.98 kB
packages/icon/dist/Relationship.js 1.67 kB
packages/icon/dist/ReplicaSet.js 1.82 kB
packages/icon/dist/Resize.js 1.64 kB
packages/icon/dist/Return.js 1.74 kB
packages/icon/dist/Save.js 2.17 kB
packages/icon/dist/SearchIndex.js 2.31 kB
packages/icon/dist/Secondary.js 1.86 kB
packages/icon/dist/Serverless.js 1.82 kB
packages/icon/dist/Settings.js 2.25 kB
packages/icon/dist/ShardedCluster.js 2.2 kB
packages/icon/dist/Shell.js 1.73 kB
packages/icon/dist/SMS.js 1.69 kB
packages/icon/dist/SortAscending.js 1.77 kB
packages/icon/dist/SortDescending.js 1.76 kB
packages/icon/dist/Sparkle.js 2.1 kB
packages/icon/dist/SplitHorizontal.js 1.53 kB
packages/icon/dist/SplitVertical.js 1.53 kB
packages/icon/dist/Stitch.js 1.57 kB
packages/icon/dist/Stop.js 1.41 kB
packages/icon/dist/String.js 1.68 kB
packages/icon/dist/Sun.js 1.9 kB
packages/icon/dist/Support.js 1.77 kB
packages/icon/dist/Sweep.js 1.79 kB
packages/icon/dist/Table.js 1.55 kB
packages/icon/dist/Tag.js 1.59 kB
packages/icon/dist/ThumbsDown.js 1.89 kB
packages/icon/dist/ThumbsUp.js 1.89 kB
packages/icon/dist/TimeSeries.js 1.94 kB
packages/icon/dist/TimeSeriesCollection.js 2.07 kB
packages/icon/dist/Trash.js 1.59 kB
packages/icon/dist/Undo.js 1.91 kB
packages/icon/dist/University.js 2.1 kB
packages/icon/dist/Unlock.js 1.78 kB
packages/icon/dist/Unsorted.js 1.82 kB
packages/icon/dist/UpDownCarets.js 1.66 kB
packages/icon/dist/Upload.js 1.87 kB
packages/icon/dist/VerticalEllipsis.js 1.57 kB
packages/icon/dist/Visibility.js 1.9 kB
packages/icon/dist/VisibilityOff.js 2.3 kB
packages/icon/dist/Warning.js 1.66 kB
packages/icon/dist/Wizard.js 2.02 kB
packages/icon/dist/Wrench.js 2 kB
packages/icon/dist/Write.js 2.28 kB
packages/icon/dist/X.js 1.7 kB
packages/icon/dist/XWithCircle.js 1.64 kB
packages/input-option/dist/esm/index.js 2.68 kB
packages/input-option/dist/index.js 2.82 kB
packages/lib/dist/esm/index.js 2.34 kB
packages/lib/dist/index.js 2.51 kB
packages/loading-indicator/dist/esm/index.js 3.41 kB
packages/loading-indicator/dist/index.js 3.63 kB
packages/logo/dist/esm/index.js 39.1 kB
packages/logo/dist/index.js 39.4 kB
packages/marketing-modal/dist/esm/index.js 3.6 kB
packages/marketing-modal/dist/index.js 3.83 kB
packages/palette/dist/esm/index.js 411 B
packages/palette/dist/index.js 562 B
packages/password-input/dist/esm/index.js 4.7 kB
packages/password-input/dist/index.js 4.94 kB
packages/polymorphic/dist/esm/index.js 1.27 kB
packages/polymorphic/dist/index.js 1.4 kB
packages/portal/dist/esm/index.js 979 B
packages/portal/dist/index.js 1.16 kB
packages/radio-box-group/dist/esm/index.js 2.98 kB
packages/radio-box-group/dist/index.js 3.13 kB
packages/radio-group/dist/esm/index.js 3.37 kB
packages/radio-group/dist/index.js 3.53 kB
packages/ripple/dist/esm/index.js 956 B
packages/ripple/dist/index.js 1.05 kB
packages/segmented-control/dist/esm/index.js 5.52 kB
packages/segmented-control/dist/index.js 5.67 kB
packages/skeleton-loader/dist/esm/index.js 3.19 kB
packages/skeleton-loader/dist/index.js 3.39 kB
packages/table/dist/esm/index.js 14 kB
packages/table/dist/index.js 14.5 kB
packages/tabs/dist/esm/index.js 5.41 kB
packages/tabs/dist/index.js 5.56 kB
packages/testing-lib/dist/esm/index.js 4.52 kB
packages/testing-lib/dist/index.js 4.74 kB
packages/testing-lib/dist/renderHookServer.js 391 B
packages/testing-lib/dist/renderHookServerV17.js 239 B
packages/text-area/dist/esm/index.js 2.43 kB
packages/text-area/dist/index.js 2.6 kB
packages/text-input/dist/esm/index.js 2.79 kB
packages/text-input/dist/index.js 2.97 kB
packages/toast/dist/esm/index.js 8.31 kB
packages/toast/dist/index.js 8.61 kB
packages/toggle/dist/esm/index.js 3.11 kB
packages/toggle/dist/index.js 3.31 kB
packages/tokens/dist/esm/index.js 1.96 kB
packages/tokens/dist/index.js 2.06 kB
packages/typography/dist/esm/index.js 5.58 kB
packages/typography/dist/index.js 5.73 kB
tools/build/dist/esm/index.js 5.75 kB
tools/build/dist/index.js 5.97 kB
tools/cli/dist/esm/index.js 1.95 kB
tools/cli/dist/index.js 2.1 kB
tools/codemods/dist/codemods/consolidate-props/transform.js 378 B
tools/codemods/dist/codemods/rename-component-prop/transform.js 317 B
tools/codemods/dist/codemods/update-component-prop-value/transform.js 330 B
tools/codemods/dist/constants.js 125 B
tools/codemods/dist/esm/index.js 4.98 kB
tools/codemods/dist/index.js 5.2 kB
tools/codemods/dist/utils/jsx/getJSXAttributes.js 165 B
tools/codemods/dist/utils/jsx/insertJSXComment/insertJSXComment.js 368 B
tools/codemods/dist/utils/transformations/consolidateJSXAttributes/consolidateJSXAttributes.js 600 B
tools/codemods/dist/utils/transformations/replaceJSXAttributes/replaceJSXAttributes.js 283 B
tools/create/dist/esm/index.js 2.87 kB
tools/create/dist/index.js 3.04 kB
tools/install/dist/esm/index.js 890 B
tools/install/dist/index.js 1.03 kB
tools/link/dist/esm/index.js 5.03 kB
tools/link/dist/index.js 5.15 kB
tools/lint/dist/esm/index.js 1.03 kB
tools/lint/dist/index.js 1.17 kB
tools/meta/dist/esm/index.js 1.48 kB
tools/meta/dist/index.js 1.61 kB
tools/slackbot/dist/esm/index.js 6.1 kB
tools/slackbot/dist/index.js 6.27 kB
tools/storybook-addon/dist/esm/index.js 4.98 kB
tools/storybook-addon/dist/esm/main.js 4.94 kB
tools/storybook-addon/dist/esm/manager.js 550 B
tools/storybook-addon/dist/esm/preview.js 1.6 kB
tools/storybook-addon/dist/index.js 5.09 kB
tools/storybook-addon/dist/main.js 5.04 kB
tools/storybook-addon/dist/manager.js 681 B
tools/storybook-addon/dist/preview.js 1.69 kB
tools/storybook-decorators/dist/esm/index.js 3.29 kB
tools/storybook-decorators/dist/index.js 3.55 kB
tools/storybook-utils/dist/esm/index.js 1.05 kB
tools/storybook-utils/dist/index.js 1.22 kB
tools/test-harnesses/dist/esm/index.js 1.78 kB
tools/test-harnesses/dist/index.js 1.9 kB
tools/test/dist/esm/index.js 1.65 kB
tools/test/dist/index.js 1.78 kB
tools/update/dist/esm/index.js 730 B
tools/update/dist/index.js 896 B
tools/validate/dist/esm/index.js 6.78 kB
tools/validate/dist/index.js 7 kB

compressed-size-action

@stephl3 stephl3 force-pushed the steph/po-refactor-components branch 4 times, most recently from a3766bb to 21481e5 Compare October 11, 2024 18:36
@stephl3 stephl3 marked this pull request as ready for review October 11, 2024 19:33
@stephl3 stephl3 requested a review from a team as a code owner October 11, 2024 19:33
@stephl3 stephl3 requested review from shaneeza, TheSonOfThomp, tsck and bruugey and removed request for a team October 11, 2024 19:33
Comment on lines +333 to +335
export const inlineDefinitionStyles = css`
white-space: normal;
`;
Copy link
Collaborator Author

Choose a reason for hiding this comment

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

Added this to ensure text wraps within the tooltip

Comment on lines -46 to -49
/**
* Number that controls the z-index of the tooltip containing the full label text.
*/
popoverZIndex?: number;
Copy link
Collaborator Author

Choose a reason for hiding this comment

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

This was added exclusively for the tooltip for instances of ComboboxChip with long texts: https://github.com/search?q=(org:10gen+OR+org:evergreen-ci+OR+org:mongodb+OR+org:mongodb-js+OR+org:mongodb-labs+OR+org:wiredtiger)+AND+(@leafygreen-ui/chip+OR+%3CChip)+AND+popoverZIndex%3D&type=code

Instead, we can now always use the top layer to ensure proper visual stacking

Comment on lines -103 to +86
{...popoverProps}
renderMode={RenderMode.TopLayer}
Copy link
Collaborator Author

Choose a reason for hiding this comment

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

From reviewing usage of languageOptions: https://github.com/search?q=(org:10gen+OR+org:evergreen-ci+OR+org:mongodb+OR+org:mongodb-js+OR+org:mongodb-labs+OR+org:wiredtiger)+AND+(@leafygreen-ui/code+OR+%22%3CCode%22)+AND+(languageOptions%3D)&type=code

I observed:

  1. few enough instances (~8) of using a Code component w/ a LanguageSwitcher
  2. consistently usage of rendering the LanguageSwitcher as the highest element
  • usePortal={false} + high popoverZIndex
  • usePortal={true}
  1. the LanguageSwitcher is the only open element at any given time

For these reasons, I believe it's safe to always use the top layer. If there's strong reasoning to the contrary, we can surface the renderMode prop for this component, but it doesn't seem necessary for this case

Comment on lines -186 to +190
usePortal={shouldTooltipUsePortal}
renderMode={RenderMode.TopLayer}
Copy link
Collaborator Author

Choose a reason for hiding this comment

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

(insert github code search link)

packages/date-picker/src/shared/constants.ts Outdated Show resolved Hide resolved
className={tooltipStyles}
darkMode={darkMode}
justify={Justify.Middle}
renderMode={RenderMode.TopLayer}
Copy link
Collaborator Author

Choose a reason for hiding this comment

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

(insert github code search link)

Comment on lines -85 to -89
usePortal = true,
portalClassName,
portalContainer,
portalRef,
scrollContainer,
Copy link
Collaborator Author

Choose a reason for hiding this comment

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

(insert github code search link)

Comment on lines -36 to +39
usePortal={false}
align="right"
justify="middle"
align={Align.Right}
justify={Justify.Middle}
open={typeof hideTooltip === 'boolean' ? !hideTooltip : undefined}
renderMode={RenderMode.TopLayer}
Copy link
Collaborator Author

Choose a reason for hiding this comment

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

(insert github code search link)

darkMode={darkMode}
justify={Justify.Middle}
renderMode={RenderMode.TopLayer}
Copy link
Collaborator Author

Choose a reason for hiding this comment

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

(insert github code search link)

Comment on lines +149 to +159
timeoutRef.current = setTimeout(() => {
setOpen(true);
}, 500);
});
}, 35),
onMouseLeave: debounce((e: MouseEvent) => {
userTriggerHandler('onMouseLeave', e);
if (timeoutRef.current) {
clearTimeout(timeoutRef.current);
timeoutRef.current = null;
}
Copy link
Collaborator Author

Choose a reason for hiding this comment

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

moved to this JS approach for delaying the tooltip entry in place of the CSS transition-delay

@stephl3 stephl3 force-pushed the steph/po-refactor-components branch from 21481e5 to 9852a0d Compare October 11, 2024 22:26
@stephl3 stephl3 force-pushed the steph/po-refactor-components branch from 9852a0d to 0b99dd5 Compare October 11, 2024 22:27
@stephl3 stephl3 closed this Oct 11, 2024
@stephl3 stephl3 reopened this Oct 11, 2024
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.

1 participant