Skip to content

Conversation

@b1ink0
Copy link
Collaborator

@b1ink0 b1ink0 commented Dec 15, 2025

Description

  1. Implements feedback received from PR Align components with updated frappe-ui components #90

  2. Adds 4 new components with full functional and visual parity with Frappe UI.

    1. Alert
    Screenshot 2025-12-16 at 2 14 15 PM
    1. MultiSelect
    Screenshot 2025-12-16 at 2 15 03 PM
    1. TimePicker
    timepicker-demo.mp4
    1. MonthPicker
    MonthPIcker.Demo.mp4

Relevant Technical Choices

Testing Instructions

Additional Information:

Screenshot/Screencast


Checklist

  • I have thoroughly tested this code to the best of my abilities.
  • I have reviewed the code myself before requesting a review.
  • This code is covered by unit tests to verify that it works as intended.
  • The QA of this PR is done by a member of the QA team (to be checked by QA).

Fixes #92

@b1ink0 b1ink0 marked this pull request as ready for review December 16, 2025 12:31
Copilot AI review requested due to automatic review settings December 16, 2025 12:31
Copy link
Contributor

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 adds three new UI components (Alert, MultiSelect, and TimePicker) with full functional and visual parity with Frappe UI, and implements feedback from PR #90.

  • Adds Alert component with theme variants, dismissible behavior, and customizable slots for icon, description, and footer
  • Adds MultiSelect component with search functionality, custom rendering options, and select/clear all actions
  • Adds TimePicker component with 12/24-hour format support, flexible time input parsing, and customizable time intervals

Reviewed changes

Copilot reviewed 25 out of 25 changed files in this pull request and generated 8 comments.

Show a summary per file
File Description
packages/frappe-ui-react/src/components/timePicker/utils.ts Time parsing and formatting utilities for TimePicker
packages/frappe-ui-react/src/components/timePicker/useTimePicker.ts Core TimePicker logic and state management hook
packages/frappe-ui-react/src/components/timePicker/timePicker.tsx TimePicker component implementation
packages/frappe-ui-react/src/components/timePicker/types.ts TypeScript type definitions for TimePicker
packages/frappe-ui-react/src/components/timePicker/timePicker.stories.tsx Storybook stories for TimePicker
packages/frappe-ui-react/src/components/timePicker/index.ts TimePicker component exports
packages/frappe-ui-react/src/components/multiSelect/multiselect.tsx MultiSelect component implementation
packages/frappe-ui-react/src/components/multiSelect/types.ts TypeScript type definitions for MultiSelect
packages/frappe-ui-react/src/components/multiSelect/multiselect.stories.tsx Storybook stories for MultiSelect
packages/frappe-ui-react/src/components/multiSelect/index.ts MultiSelect component exports
packages/frappe-ui-react/src/components/alert/alert.tsx Refactored Alert component with new API
packages/frappe-ui-react/src/components/alert/types.ts Updated Alert type definitions
packages/frappe-ui-react/src/components/alert/tests/alert.tsx Comprehensive test coverage for Alert
packages/frappe-ui-react/src/components/alert/alert.stories.tsx Storybook stories for Alert
packages/frappe-ui-react/src/components/textInput/types.ts Extended TextInput props to include HTML input attributes
packages/frappe-ui-react/src/components/select/types.ts Added defaultValue prop to Select
packages/frappe-ui-react/src/components/select/select.tsx Support for defaultValue and removed selected attribute
packages/frappe-ui-react/src/components/listview/listprovider.tsx Added useEffect to sync column updates
packages/frappe-ui-react/src/components/listview/listView.stories.tsx Updated CustomList story to handle column state
packages/frappe-ui-react/src/components/datePicker/useDatePicker.ts Added JSDoc comments for helper functions
packages/frappe-ui-react/src/components/datePicker/dateRangePicker.tsx Refactored functions to useCallback hooks
packages/frappe-ui-react/src/components/combobox/combobox.tsx Reorganized imports with comment sections
packages/frappe-ui-react/src/components/calendar/hooks/useCalendar.ts Improved week view date formatting logic
packages/frappe-ui-react/src/components/calendar/calendar.stories.tsx Added defaultValue to Select in CustomHeader story
packages/frappe-ui-react/src/components/index.ts Exported new MultiSelect and TimePicker components

Copy link
Contributor

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

Copilot reviewed 25 out of 25 changed files in this pull request and generated 10 comments.

@b1ink0 b1ink0 changed the base branch from main to develop December 17, 2025 15:24
@b1ink0 b1ink0 changed the title Add Alert, MultiSelect and TimePicker components Feat: Add Alert, MultiSelect and TimePicker components Dec 26, 2025
@mohdsayed mohdsayed changed the title Feat: Add Alert, MultiSelect and TimePicker components Feature: Add Alert, MultiSelect and TimePicker components Dec 31, 2025
@b1ink0 b1ink0 changed the title Feature: Add Alert, MultiSelect and TimePicker components Feature: Add Alert, MultiSelect, TimePicker and MonthPicker components Jan 8, 2026
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