Changelog
Pre-release versions will not be mentioned here.
[2.4.3] - 2025-05-25
Fixed
RruDataTable: FixdefaultPageNumberdoes not work.
[2.4.2] - 2025-04-27
Fixed
RruDateTimeInput: Fixed validation would trigger even before touching the field.
Other
- Internal enhancements.
[2.4.1] - 2024-11-02
Fixed
RruSelectInput: Fixed setting value in form context not working.RruMultiSelectInput: Fixed setting value in form context not working.RruDateTimeInput: Fixed changing calendar type not reflecting.
[2.4.0] - 2024-09-27
Added
RruSelectInput: Addedplaceholder.RruMultiSelectInput: Addedplaceholder.
Changed
RruDateTimeInput: Disable auto complete which does not make sense because it is unusable.
[2.3.1] - 2024-03-25
Fixed
- Fix CJS build format
[2.3.0] - 2024-03-22
Added
- Added the ability to read and write field values programmatically. see
useRruForm. RruDateTimeInput: Added clear button.RruFileInput: AddedchooseFileLabelprop.
Changed
RruSelectInput&RruMultiSelectInput: Paginate loading options to enhance performance for large datasets.- More ARIA compliance.
- The css file path has changed from
react-rich-ui/dist/index.esm.csstoreact-rich-ui/dist/style.css.
Fixed
RruForm: Fix when nested buttons withtype!=submitwould cause the form to submit.RruForm: Fix fatal error when supplying a flat value in theinitialValuesfor a parent root object of a field that is nested.RruDateTimeInput: Fix text alignment when page direction is RTL.RruDateTimeInput: FixonChangewas called for each date/time part change.
Other
- Upgrade Dependencies.
- Internal enhancements.
- Added more tests.
- Updated docs with more details.
[2.2.0] - 2022-11-18
Added
RruForm: add support for nested fields.
Changed
RruForm: eagerly validate a field if it has an error even before losing focus; for a better UX error feedback.- The css file path has changed from
react-rich-ui/dist/index.csstoreact-rich-ui/dist/index.esm.css.
Fixed
RruForm: fix initialValues not reflected in React 18 Strict mode.
Other
- Upgrade Dependencies.
- CI/CD pipeline for testing and publishing releases on tags.
- Storybook: enable react strict mode.
- Improve tests.
[2.1.0] - 2022-08-06
Added
RruRadioInput: support grouped optionsRruSelectInput: support grouped optionsRruMultiSelectInput: support grouped optionsRruMultiCheckboxInput: support grouped optionsRruCheckboxInput: addisSwitchRruForm: addid
Changed
RruForm: defer initial onChange validations until input has lost focusRruDataTable: improve style
Fixed
RruModalButton: fixmodalTitlenot workingRruDateTimeInput: fix unable to change yearRruTextInput: fix empty string initial value becomesnullRruTextInput: fix error message not showing properly when pagediris different from inputdirRruTextareaInput: fix empty string initial value becomesnullRruTextareaInput: fix error message not showing properly when pagediris different from inputdir
[2.0.0] - 2022-07-27
Breaking Changes
RruDataTable: Renamed fromRruPageableTable.RruDataTable: RenamedapiErrorLabeltoerrorLabel.RruDataTable: RenameddefaultSortBytodefaultSortKey.RruDataTable: RemovedactionsandactionsLabel.RruDataTable: RemoveduserPrivilegesandallowedPrivileges.RruDataTable: RemovedretainTableStateandgetRetainedTableSearchObject.RruDataTable: Removedendpoint,requestMethodandonResponse. UsepageFetcherinstead.RruDataTable: RemoveddisableSorting.RruDataTable: RemovednextLabelandpreviousLabel.RruDataTable: Removeddisplayfromcolumns.-
RruDataTable: Removedsortablefromcolumns. RruStepsWizard: AddedgetStepLabelto read step label, no longer requiringstepLabelto be injected into children.RruStepsWizard: Added a hookuseRruStepsWizardContextto access the current step info and access the navigation functions, no longer injecting these into children’s props.-
RruStepsWizard: RemovednoHeader. -
RruButton: This component has been dropped. UseRruModalButtoninstead. RruForm: RenamedvalidationSchematoyupValidationSchema.-
RruForm: Removedwatchandwatcher. Use the new callbackonChangeon the input component. -
RruFormElement: Removed this component, each input type has its own dedicated component:type='text'becomesRruTextInputtype='password'becomesRruTextInputwithisPassword={true}type='textarea'becomesRruTextareaInputtype='date'becomesRruDateTimeInputwithmode='date'type='time'has no replacementtype='select'becomesRruSelectInputtype='multi-select'becomesRruMultiSelectInputtype='checkbox'becomesRruCheckboxInputtype='multi-checkbox'becomesRruMultiCheckboxInputtype='grouped-multi-checkbox'has no replacementtype='radio'becomesRruRadioInputtype='file'becomesRruFileInput
RruSelectInput: RemoveddefaultValue. Now reads the default value from theinitialValuesof the form.RruSelectInput: Renamedoptions’sidattribute tovalue.RruMultiSelectInput: RemoveddefaultValue. Now reads the default value from theinitialValuesof the form.RruMultiSelectInput: Renamedoptions’sidattribute tovalue.RruRadioInput: Renamedoptions’sidattribute tovalue.RruMultiCheckboxInput: Renamedoptions’sidattribute tovalue.RruDateTimeInput: RemoveddefaultValue. Now reads the default value from theinitialValuesof the form.RruDateTimeInput: RemovedisHijri. UsecalendarTypeinstead.RruDateTimeInput: RemovedisFuture. UsegetDateConfiginstead.RruDateTimeInput: RemovedisPast. UsegetDateConfiginstead.RruDateTimeInput: RemovedmaxYearLength. UsegetDateConfiginstead.RruDateTimeInput: RemovedreverseDisplayOrder.RruFileInput: Removedplaceholder.RruFileInput: Changed resultant value type fromFileListtoFile.
Added
-
RruModalButton: New Component. RruDataTable: AddedpageFetcher.RruDataTable: AddeddefaultPageNumber.-
RruDataTable: AddedonChange. -
RruStepsWizard: AddedrenderHeader. RruTextInput: AddedautoComplete.RruTextInput: Addedlist.RruTextareaInput: AddedautoComplete.RruTextareaInput: Addedcols.RruTextareaInput: Addedrows.RruTextareaInput: Addedwrap.RruDateTimeInput: Added new modedatetimewhich supports date and time selection.RruDateTimeInput: AddedcalendarTypewhich supports many calendar types (e.g.gregorian,islamic-umalqura,islamic-rgsa,persianand more).RruDateTimeInput: AddedgetDateConfig.RruSelectInput: Added button to clear selection.RruMultiCheckboxInput: Addedinline.
Changed
- You are no longer required to load
font-awesomestylesheet. RruDataTable: Use in-house developed pagination.RruDateTimeInput: Renders a floating picker rather than 3 select elements.
Fixed
RruForm: Unmounted fields should not appear in form submit result.RruDataTable: Avoid a redundant extra api call when search changes.
Other
- Reduce package size.
- Migrate to
bootstrapv5. - Improved styles.
- Adhere to BEM naming convention for CSS class names.
- Removed the optional peer dependency
axios. - Removed dependency on
font-awesome. - Removed dependency on
react-paginate. - upgrade dependencies.
- Internal enhancements.
[1.6.3] - 2022-04-12
Internal
- Improvements.
[1.6.2] - 2022-04-12
Fixed
- RruFormElement: revert adding autoComplete=’new-password’ to password type in v1.6.1 because this broke the login form auto completion.
[1.6.1] - 2022-04-12
Added
- RruForm: add typescript support for boolean type in initialValues prop.
- RruFormElement: add autoComplete=’new-password’ to password type.
Fixed
- RruButton: The cancel button in the confirmation was submitting the form.
Internal
- Storybook stories improvements.
- upgrade dev dependencies.
[1.6.0] - 2022-04-02
Added
- RruFormElement: Added
dirprop totext,textarea, andpassword. - RruFormElement: Added
acceptprop tofile. - RruPageableTable: Added the ability to specify the default sort configuration using
defaultSortByanddefaultSortDir. - RruPageableTable: Added the ability to use POST method in the api call using
requestMethod. - RruPageableTable: Added the ability to show a message when there is an api call error using
apiErrorLabel. - RruPageableTable: Added the ability to retain the table state (current page and current sort configuration and current search object) (through the use of
retainTableStateandgetRetainedTableSearchObject). Please refer to the documentations for details.
Changed
- You must now explicitly import the library stylesheet
react-rich-ui/dist/index.cssin you react app (usually inindex.js). - RruPageableTable: Reset to the first page after search params change.
- RruButton: Confirmation dialogue now uses a custom-built modal instead of
react-bootstrapModal.
Removed (Not Breaking)
- RruPageableTable: Removed
idprop. Now the component will generate a unique id which is used for persisting the table state.
Internal
- Rewrite components in Typescript.
- Drop the example app and use Storybook instead.
- Use Microbundle for building the library.
- Properly mention axios as a peer dependency in package.json.
- Add
yuptopeerDependencies. - Upgrade Dependencies.
[1.5.3] - 2021-02-20
Fixed
- RruFormElement: fix
fileinput not working
[1.5.2] - 2021-02-20
Changed
- RruFormElement: remove unused props (
prepend,append,labelClassName,inputClassName) - Add missing info to docs
- Internal cleanup
- CSS Improvements
- Upgrade some deps
[1.5.1] - 2021-02-03
Fixed
- RruFormElement: Fix default exports
[1.5.0] - 2021-02-03
Added
- RruFormElement: add new prop
requiredAsterisk
Changed
- Example App: update example rest api endpoint.
- Internal refactor (RruFormElement).
- Improved docs.
Fixed
- RruButton: add missing
watch - RruButton: add missing
initialValues
[1.4.4] - 2020-11-23
Added
- Github Pages.
Changed
- RruFormElement: Improved
filetype. - Improved styles.
- Improved docs.
- Internal refactor.
[1.4.3] - 2020-11-16
Fixed
- RruFormElement: fix select if no default value and the options array is empty.
[1.4.2] - 2020-11-15
Changed
- Update API reference.
Fixed
- RruStepsWizard: fix step component gets mounted before previousStepData gets loaded.
[1.4.1] - 2020-11-15
Fixed
- RruFormElement: fix
selectandmulti-selectif option is no longer available in the options list after it gets updated. - Fix ESLint warnings and errors.
[1.4.0] - 2020-11-15
Added
- RruStepsWizard: New component
Fixed
- RruFormElement: fix unable to remove last item in
multi-select - RruFormElement: fix disabled not working for
selectandmulti-select
[1.3.0] - 2020-11-10
Added
- RruFormElement: add new type
multi-select - README: mention stylesheet dependencies.
- Example App: more examples and improvements.
Changed
- RruFormElement: select: leave select option empty if the default value not found in the options list.
- Update dependencies.
Fixed
- RruFormElement: select: Add red border to select if there is an error.
[1.2.1] - 2020-11-07
Fixed
- RruFormElement: Fix a crash when options array is empty for
select
[1.2.0] - 2020-11-07
Added
- For array-based elements (e.g.
multi-checkbox), theinitialValuescan be a flat array of ids or an array of options, or even a mix of both.
[1.1.1] - 2020-11-04
The NPM package has been moved from @coder966/react-rich-ui to react-rich-ui.
[1.1.0] - 2020-11-03
Added
- RruForm: Add
watch(array)andwatcher(func). - RruPageableTable: Fallback to
fetchifAxiosis not available. - RruPageableTable: Add
noDataLabel. - Example App: add example for
RruPageableTable.
Changed
- RruForm: Deprecate
watch(func).
Fixed
- RruForm: Fix a crash when
initialValuesisundefined. - RruFormElement: Fix
selectinitial value. - RruFormElement: Fix
maxLength. - RruFormElement: Fix duplicate key.
[1.0.0] - 2020-11-03
First GA release