You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Adds opt-in auto-grow to the apollo-wind Textarea via new minRows / maxRows props (mirroring how ApTextArea in apollo-react exposes them, but implemented natively — apollo-wind has no MUI dependency).
Behavior
Backward compatible: with neither prop set, the component is byte-for-byte the same plain <textarea> as before.
Auto-grow: floors at minRows, grows with content up to maxRows, then scrolls.
Uncapped manual resize: the ceiling is enforced in JS (height), never via CSS max-height, so the bottom-right resize handle can be dragged past maxRows. A ResizeObserver detects the drag and hands sizing control to the user.
Row heights are derived from the element's computed line-height + padding/border, so sizing is correct across text-base/text-sm and all themes.
demo
Screen.Recording.2026-07-17.at.11.39.11.AM.mov
Note: jsdom has no layout engine, so the tests cover the structural guarantees; the pixel-level grow/scroll is best confirmed in the new Storybook AutoGrow story.
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
Adds opt-in auto-grow behavior to the packages/apollo-windTextarea component via new minRows / maxRows props, aligning the API shape with apollo-react while keeping the implementation native (no MUI dependency).
Changes:
Extends Textarea with minRows / maxRows and auto-sizing logic (including a manual-resize escape hatch via ResizeObserver).
Adds a new Storybook AutoGrow story demonstrating minRows={3} maxRows={5}.
Adds unit tests covering the “plain textarea” mode and basic auto-grow structural guarantees.
Reviewed changes
Copilot reviewed 3 out of 3 changed files in this pull request and generated 3 comments.
Per-package coverage and bundle size on this PR. New-line coverage = of the source lines this PR adds or changes, the % hit by tests.
Package
Coverage
New-line coverage
Packed (gzip)
Unpacked
vs main
@uipath/apollo-core
9.0%
—
43.82 MB
57.31 MB
±0
@uipath/apollo-react
37.2%
—
7.38 MB
28.12 MB
+2.0 KB
@uipath/apollo-wind
41.0%
81.1% (60/74)
397.5 KB
2.58 MB
+2.3 KB
@uipath/ap-chat
85.8%
—
43.43 MB
55.91 MB
±0
"Coverage" is each package's own coverage.include scope (e.g. apollo-core instruments only scripts/). "Packed"/"Unpacked" come from npm pack --dry-run and only cover built packages — "—" means not measured this run (package not affected / not built). "vs main" is the packed (gzipped) delta against the last successful main build (the package-sizes artifact from the Release workflow); "—" there means no main baseline was available this run. The baseline is main's latest build, not this PR's exact merge-base, so it includes any drift since the branch diverged. Packages with no vitest config are omitted.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Adds opt-in auto-grow to the apollo-wind
Textareavia newminRows/maxRowsprops (mirroring howApTextAreain apollo-react exposes them, but implemented natively — apollo-wind has no MUI dependency).Behavior
<textarea>as before.minRows, grows with content up tomaxRows, then scrolls.height), never via CSSmax-height, so the bottom-right resize handle can be dragged pastmaxRows. AResizeObserverdetects the drag and hands sizing control to the user.text-base/text-smand all themes.demo
Screen.Recording.2026-07-17.at.11.39.11.AM.mov
Note: jsdom has no layout engine, so the tests cover the structural guarantees; the pixel-level grow/scroll is best confirmed in the new Storybook
AutoGrowstory.