# Changelog

Behold the evolution of Credijusto's ui-components! Find out what’s new, what’s fixed, or just take a trip down memory lane with a nostalgic swagger, remembering those bugs of yesterday.

## Version 7.0.0

- Remove old deprecated components
- Add documentation for design system
- Migrate some components to use styled components
- Remove enzyme from tests
- Rename CJForm components
- Add usePromise hook
- Add product colors as custom properties
- Add logoutRoute prop to Navbar

## Version 6.8.1

- Changed type of `label` property in `Table`-related components from `string`
  to `node`

## Version 6.8.0

- Added option to calculate averages to Table component

## Verison 6.7.7

- Removed user-select from AppTitle
- Fixed README.md contributor link

## Version 6.7.6

- Added useWindowResize hook

## Version 6.7.5

- Add spaceBetween prop to Date Range Picker

## Version 6.7.4

- Fix Date Range Picker responsiveness

## Version 6.7.3

- Fix Date Range Picker margin between inputs

## Version 6.7.2

- Fix Date Range Picker Style

## Version 6.7.1

- Upgrade react-helmet package for React 17.X deprecation of component cycle methods
- Fix alternateLinkStyle prop causing an error in the DOM
- Add shadowLevel 0 to Card component

## Version 6.7.0

- Update button styles

## Version 6.5.7

- Add onChange prop to DateRangePicker
- Add support for date in string format on DateRangePicker

## Version 6.5.6

- Add different placeholders for date range picker inputs

## Version 6.5.5

- Fix date range picker export

## Version 6.5.4

- Add date range picker component

## Version 6.5.3

- Navbar with optional `fluid`, this enables the navbar to grow larger than the var(--app-width)
- Migrate Navbar to styled-components
- Remove decoration line from Navbar

## Version 6.5.2

- Fix publish workflow

## Version 6.5.1

- Migrate Info to styled-components

## Version 6.5.0

- Add new color scheme
- Add Miguel Arroyo as contributor
- Add Figma link (For reference the visual counterpart of the system)

## Version 6.4.1

- Fix Summary fluid prop

## Version 6.4.0

- Migrate CardTabs component to style StyledComponents
- Add childCardTabs prop to CardTabs component

## Version 6.3.0

- Remove unnecessary postcss imports at components
- Remove all pcss variables from components

## Version 6.2.7

- Migrate Summary component to style StyledComponents
- Add wordwrap when the text is overflowing in Summary component
- Add fluid prop to Summary component

## Version 6.1.7

- Fix combobox can't select an option with the mouse

## Version 6.1.6

- Fix build script
- Add react, react-dom, react-router-dom, styled-components to peer-dependencies

## Version 6.1.5

- Fix add missing semi to StyledBox

## Version 6.1.4

- Fix alternateLinkStyle prop in Table component

## Version 6.1.3

- Add alternateLinkStyle prop to Table component
- Adjust line-height of cells in Table component

## Version 6.1.2

- Fix that the Combobox was focusable when disabled
- The menu in the Combobox is closed when the focus is lost
- Standarize CJForm inputs disabled styles

## Version 6.1.1

- Fix the font-size style in the table headers
- Change how the StyledComponents are exported from Table
- Fix Proptypes in Role and Combobox Item/Menu

## Version 6.1.0

- Migrate the Table to styled-components, also a maxheight prop has been added, in order to use empty space when you want a table with fixed headers
- Add the onKeyDown listener to all the CJForm inputs to avoid form submission with enter
- Fix the style of combobox selector being overflowed with large options and the items were not aligned

## Version 6.0.16

- Export LoginButton correctly

## Version 6.0.15

- Add isFullscreen prop to Loading component

## Version 6.0.14

- Add Google login button component

## Version 6.0.13

- Prevent submission with enter in the Combobox

## Version 6.0.12

- Fix styles of CJCombobox, CJSwitch, CJSelect and CJTextArea to match the input styles

## Version 6.0.11

- Add margins to CJDatePicker, CJCheckbox and CJCombobox components
- Resolve an issue with CJCheckbox sizing
- Open the Combobox when click the input

## Version 6.0.10

- Fix variable names in appWidthMixin

## Version 6.0.9

- Button accept any prop
- Add appWidthMixin for styled components

## Version 6.0.8

- Fix combobox broken styles

## Version 6.0.7

- Integrate prettier with js-scripts
- Update js-scripts packages

## Version 6.0.6

- Add the isSuperUser prop to the Role component to show the children no matter the permissions

## Version 6.0.5

- Add a custom property for a color intended for light backgrounds
- Modify --color-text-light to a slightly darker and bluer shade of gray

## Version 6.0.4

- Align labels with input
  - The original intention was to align the label text with the input text, but this breaks the rhythm of the whole form
- Change the text color from #103642 to the standard #212121
- Add new custom properties for spacing (--size-100…) in `src/styles/variables.pcss:288`
- Add new custom properties for font-sizing (--font-smaller, --font-small…) in `src/styles/variables.pcss:297`

## Version 6.0.3

- The warnings are not being displayed if the input has an error to keep consistency in the input state.
- Fix the info style so the input message does not overflow horizontally

## Version 6.0.2

- Fix styles for CJCheckbox
- Improve documentation for CJCheckbox

## Version 6.0.1

- Add the ability to set a warning message in CJInput, CJSelect, CJCombobox and CJDatePicker
- You can set a custom error for these components

## Version 6.0.0

- Upgrade React Version. Please upgrade your react project version in order to avoid a mismatching on future versions from here

## Version 5.5.6

- Fix an issue where a `NaN.undefined` was shown if a value in the row is `undefined`

## Version 5.5.5

- Fix rollup config that caused not to copy variables.scss

## Version 5.5.4

- Add testIdProp to icon

## Version 5.5.3

- Add size bytes to readable human size conversion function

## Version 5.5.2

- Fix the table to show NaN.undefined in the totals row

## Version 5.5.1

- Update `<Upload />` component to match design

## Version 5.5.0

- Add preview button to `<Upload />`

## Version 5.4.1

- Revert react-router-dom version to avoid bug

## Version 5.4.0

- Enhance `<Navbar />` dimensions and presentation

## Version 5.3.0

- Use native CSS variables in all components

- Add animation to progress at `<Upload />`

## Version 5.2.1

- Add animation to progress at `<Upload />`

## Version 5.2.0

- Add `small` variant to `<Upload />`
- Remove `overflow: auto;` default prop to Box
- Add support for children render at `<InputLabel />`

## Version 5.1.0

- Add support for `gap` property at `<Box />`

## Version 5.0.1

- Revert useEffect dependencies auto added by linter

## Version 5.0.0

- Fix number validations in CJInput
- Fix performance issue in CJForm

## Version 4.2.2

- Fix a typo in the propTypes for summary

## Version 4.2.1

- Box propTypes now accept object for margins
- The value in the summary can collapse and add a title to improve accessibility
- Node and number are added for Summary as propTypes

## Version 4.2.0

- Update Credijusto logo files and colors

## Version 4.1.3

- Update `<Upload />` styles

## Version 4.1.2

- Restore missing navbar styles

## Version 4.1.1

- Fix Combobox event target undefined
- Update sizes on input styles

## Version 4.1.0

- Integrate `js-scripts` and reformat code based on it

## Version 4.0.5

- Fix Navar menu align

## Version 4.0.4

- Add support for onClick and other props at `<Tag />`

## Version 4.0.3

- Fix NavBar styles

## Version 4.0.2

- Update sizing on AppTitle component

## Version 4.0.1

- Fix overflow in CardTabs

## Version 4.0.0

- Contains breaking changes for node-sass builds
- Removes variables (change $lateral-spacing for $space-X00)
- Update color palette

## Version 3.16.2

- Add `Totales` placeholder to the totals row

## Version 3.16.1

- Fix direction prop not being passed down at `<Box />`

## Version 3.16.0

- Introducing new layout Component _Box_ created with styled-components

## Version 3.15.7

- Refactor Card styles

## Version 3.15.6

- Export Dispatcher component

## Version 3.15.5

- Update info styles
- Add the hability to compose info content by childs

## Version 3.15.4

- Add variables.pcss to build

## Version 3.15.3

- Add isAllowed prop to CJInput

## Version 3.15.2

- Fix CJDatePicker MDX interaction

## Version 3.15.1

- Add default title to Notifications
- Export formatDate util function
- Add `ref` prop to CJForm
- Fix CJInput propagation events on onChange when using isPercentage or isCurrency prop

## Version 3.15.0

- Add parseCurrencyToString to utils

## Version 3.14.1

- Use explicit imports for SASS files

## Version 3.14.0

- Create the Notify object to add notifications.
- Rename NotificationsContext and NotificationsProvider
- Remove the circular dependency in NotificationContext component

## Version 3.13.19

- Update styles on notification component

## Version 3.13.18

- Removed `atLeastZero` option from `formatValue` function

## Version 3.13.17

- Remove auto-generated components in documentation

## Version 3.13.16

- Update styles to Table component
- Use alternative figures inside Inter instead of another typeface

## Version 3.13.15

- Update styles to Pagination component

## Version 3.13.14

- Update styles to Tag component

## Version 3.13.13

- Update color palette

## Version 3.13.12

- Add the `height` prop to the Table, this activates the fixed header.
- Add the `totals` totals props to the Table.

## Version 3.13.11

- Add `disabled` prop to <Pagination> component

## Version 3.13.10

- Fix Input label font-family 🙄

## Version 3.13.9

- Table headers now are selectable by the user
- The Loading placeholder in table now is centered correctly

## Version 3.13.8

- Fix and update styles for CJSelect and CJDatepicker

## Version 3.13.7

- Fix icon import in Card Actions

## Version 3.13.6

- Make `formatValue` currency to accept values below 0 by default

## Version 3.13.5

- Round decimals to two digits in CJInput

## Version 3.13.4

- Fix infinite loop caused when a CJInput with `isCurrency` prop is used in a controlled way

## Version 3.13.3

- Fix the necessity to type the decimals on CJInput when isCurrency or isPercentage

## Version 3.13.2

- Fix `<Tag />` exporting

## Version 3.13.1

- Fix CJInput font rule

## Version 3.13.0

- `<Button />` and `<CJInput />` style changes
- DEPRECATED: Button type warning, light, alt and link

## Version 3.12.0

- Add actions to Card component

## Version 3.11.3

- Add label prop to Upload

## Version 3.11.2

- Fix: Export Upload component

## Version 3.11.1

- Fix table responsiveness

## Version 3.11.0

- Add ViewLoader component

## Version 3.10.4

- Change all the imports to relative inside the lib

## Version 3.10.3

- Fix createAction not being exported by utils error

## Version 3.10.1

- Update `<Tag />` styles

## Version 3.10.0

### 2019-05-23

- Add Combobox component

## Version 3.9.2

- Add `itemsPerPage` props for `<Pagination />`

### 2019-05-23

## Version 3.9.1

### 2019-05-23

- Fix first character styles on currency and percentage columns in `<Table />`

## Version 3.9.0

### 2019-05-23

- New `<Tag />` component

## Version 3.8.4

### 2019-05-22

- Add support for custom input type at CJInput

## Version 3.8.3

### 2019-05-22

- Fix Title styles not being applied

## Version 3.8.2

### 2019-05-21

- Ignore .docz dir at build

## Version 3.8.1

### 2019-05-21

-Fix columns styles not being imported

## Version 3.8.0

### 2019-05-21

- Create `<Upload />` component

## Version 3.7.8

### 2019-05-20

- Fix error when CJInput with isPercentage prop changes

## Version 3.7.7

### 2019-05-20

- Add isPercentage prop to CJInput

## Version 3.7.6

### 2019-05-15

- Restore CardTabs test coverage

## Version 3.7.5

### 2019-05-15

- Test publish from pipeline

## Version 3.7.4

### 2019-05-15

- Fix Datepicker popover outside Card component

## Version 3.7.3

### 2019-05-15

- Fix .npmignore
- Import router components only from react-router-dom

## Version 3.7.2

### 2019-05-15

- Change absolute imports to relative, to support CJS and ESM testing

## Version 3.7.1

### 2019-05-15

- Upgrade dependencies and enhance documentation

## Version 3.7.0

### 2019-05-13

- Change the way shadows are displayed, add standard for new shadows

## Version 3.6.0

### 2019-05-09

- New configuration to support individual components importing

## Version 3.5.4

### 2019-05-07

- Setup configuration to support ESM and CJS

## Version 3.5.3

### 2019-05-06

- Pass id prop to Button
- Add support for numeric options in CJSelect
- Add support for numeric values in validation functions

## Version 3.5.2

### 2019-05-03

- Split rollup configuration with amd and esm

## Version 3.5.1

### 2019-04-25

- Enhancements to nav at mobile size

## Version 3.5.0

### 2019-04-25

- New modal component

## Version 3.4.2

### 2019-04-30

- Fix number validations on Input
- Fix isValid function not getting called in CJForm
- Update fluid prop on card

## Version 3.4.1

### 2019-04-25

- Fix Button not bubbling the event up on click

## Version 3.4.0

### 2019-04-25

- Add Notifications component and context

## Version 3.3.1

### 2019-04-25

- Fix dependency versions

## Version 3.3.0

### 2019-04-24

- Add sort table functionality

## Version 3.2.3

### 2019-04-23

- Add colors prop to Info component

## Version 3.2.2

### 2019-04-22

- Add selectAllOnFocus prop to CJInput
- Update docz version

## Version 3.2.1

### 2019-04-22

- Fix CJSelect to set styles for default value
- Add number to CJInput propTypes
- Add onBlur prop to CJInput, CJDatepicker and CJTextarea
- Fix prop warning on Datepickers
- Fix Input mask closure problems
- Add support for suffix in CJInput isCurrency
- Fix warnings and improve tests

## Version 3.2.0

### 2019-04-15

- Changed Pagination component API to only take currentPage and totalItems props

## Version 3.1.3

### 2019-04-15

- Add support for onValuesChange prop to <CJForm />

## Version 3.1.3

### 2019-04-15

- Format datepicker value when calling onChange handler

## Version 3.1.2

### 2019-04-12

- Add support for optional action prop element at <Success />

## Version 3.1.1

### 2019-04-12

- Add `externalValue` prop to CJForm items

## Version 3.1.0

### 2019-04-11

- Add loading to Summary component

## Version 3.0.0

### 2019-04-11

- Migrated to pcss
- Setup components to work as modules
- Rollup integration and more

## Version 2.13.0

### 2019-04-10

- Add Ellipsis component

## Version 2.12.0

### 2019-04-10

- Fix colors in Summary Component.
- Add Loading to Summary component

## Version 2.11.2

### 2019-04-10

- Add padding at the bottom of success component

## Version 2.11.1

### 2019-04-10

- Add small spaces at the edges of the table

## Version 2.11.0

### 2019-04-09

- Add `snakeToCamelCase` function.
- Add `camelToSnakeCase` function.
- Add `isObject` function
- Add `isArray` function

## Version 2.10.7

### 2019-04-09

- AppWrapper now covers the full heigh of the page, not only the `vh` as before
- CJSelect only shows placeholder if its present, otherwise, will display the first option (but its not selected)
- Fix font size for `Checkbox` and `Radio`
- Fix warning for `selected` prop on Select and CJSelect
- Add `isCurrency` prop to CJInput
- Fix CJForm when has single React elements children
- Add `isHeadless` prop to Table
- Temporary fix for docz reloading issue

## Version 2.10.6

### 2019-04-08

- Allow select to have default values

## Version 2.10.5

### 2019-04-08

- Fix padding-top in AppWrapper

## Version 2.10.4

### 2019-04-08

- Add missing 5px padding-top to AppWrapper

## Version 2.10.3

### 2019-04-05

- Add `hasNavbar` prop to AppWrapper

## Version 2.10.2

### 2019-04-05

- Import fonts for docz using native API

## Version 2.10.1

### 2019-04-05

- Change webpack configuration to support svg to be included in build as ReactComponent

## Version 2.10.0

### 2019-04-05

- Add useForceUpdate hook
- Add useRouter hook

## Version 2.9.0

### 2019-04-05

- Added role component

## Version 2.8.2

### 2019-04-05

- Move logo to SVG component, add SVG mock file, enhanced jest configuration and add webpack support for assets.

## Version 2.8.1

### 2019-04-04

- Update sizing in info component

## Version 2.8.0

### 2019-04-04

- Added summary component

## Version 2.7.0

### 2019-04-04

- Add success component

## Version 2.6.1

### 2019-04-04

- Set CJ logo as sprite

## Version 2.6.0

### 2019-04-03

- Create CJForm and its CJFormItems

## Version 2.5.6

### 2019-04-04

- Upgrade dependencies

## Version 2.5.5

### 2019-04-03

- Create currency variant for ui-components input field

## Version 2.5.4

### 2019-04-03

- DatePicker showYearDropdown prop default to true

## Version 2.5.3

### 2019-04-02

- Add number type to column types

## Version 2.5.2

### 2019-04-02

- Fix checked prop in form's checkbox component

## Version 2.5.1

### 2019-03-29

- Fix debounce not being call with the arguments

## Version 2.5.0

### 2019-03-29

- Add debounce function

## Version 2.4.3

### 2019-03-29

- Add percentage formatter to Tile

## Version 2.4.2

### 2019-03-29

- Fix checkbox to right and left-level positioning

## Version 2.4.1

### 2019-03-28

- Add compact version of table component

## Version 2.4.0

### 2019-03-28

- Add Redirect component

- Add withRouter HOC

- Add cleanObject util

## Version 2.3.1

### 2019-03-28

- Validate fields using props and state

## Version 2.3.0

### 2019-03-26

- Add resetQuery prop to the RouterCardTabs component

## Version 2.2.1

### 2019-03-21

- Add onChange prop to Form

## Version 2.2.0

### 2019-03-21

- The table now can render link by itself

## Version 2.1.4

### 2019-03-20

- Adds an spinner for the table when it has data and it is loading

## Version 2.1.3

### 2019-03-20

- Add a ZERO_WIDTH_SPACE constant

- Use ZERO_WIDTH_SPACE in Tile component

## Version 2.1.2

### 2019-03-19

- Fixes a 0 appearing in the paginator with no results.

## Version 2.1.1

### 2019-03-15

- Add loany reports color

## Version 2.1.0

### 2019-03-15

- Add TextArea component

## Version 2.0.0

### 2019-03-15

- Rename valueChanged handler for onChange in all the form components

- The onChange handler will be called with value and name respectively

## Version 1.8.0

### 2019-03-13

- Add the breadcrumb component

## Version 1.7.5

### 2019-03-13

- Export datepicker value with key

## Version 1.7.4

### 2019-03-13

- Fixed column width of Menu's and direction of menu

## Version 1.7.3

### 2019-03-13

- Add z utility for scss

## Version 1.7.2

### 2019-03-13

- Now the navbar is binded to the router

## Version 1.7.1

### 2019-03-12

- Fix paginator outer sizing

## Version 1.7.0

### 2019-03-12

- Add Radio and RadioOptions components

## Version 1.6.2

### 2019-03-12

- Set explicit font styles in Emtpiness component

## Version 1.6.1

### 2019-03-12

- Have datepicker return string when needed for API formats

- Rename formatDate to displayDate

- Replace formatISODate to formatDate with optional param dateFormat

## Version 1.6.0

### 2019-03-07

- Divide CardTabsComponent into CardTabs and RouterCardTabs

## Version 1.5.4

### 2019-03-06

- Set a default text to select placeholder

## Version 1.5.3

### 2019-03-06

- Fix cardTabs crashing with conditional rendering

- Fix cardTabs to update children when the state is shared

- Fix cardTabs to be able to customize the url param in order to have multiple cardTabs in a view

## Version 1.5.2

### 2019-03-06

- Add fluid prop to the Card component

## Version 1.5.1

### 2019-03-06

- Fix position of caret in select

## Version 1.5.0

### 2019-03-05

- The tabs now works with a param in the router

## Version 1.4.3

### 2019-03-05

- Add option to use objects as options in Select

## Version 1.4.2

### 2019-03-05

- Add Select as input type to Form component

## Version 1.4.1

### 2019-03-05

- Add customSize prop to Icon component

## Version 1.4.0

### 2019-03-04

- Create Select component

## Version 1.3.0

### 2019-03-04

- Create Checkbox component

## Version 1.2.4

### 2019-02-27

- Add isMarginless prop to Title component.

## Version 1.2.3

### 2019-02-27

- The Datepicker will have the default date as today if it is not required and no defaultValue has been provided.

## Version 1.2.2

### 2019-02-27

- Create ISO date format for formatValue function

## Version 1.2.1

### 2019-02-26

- Add paddingless prop to Columns

## Version 1.2.0

### 2019-02-26

- Add DatePicker component

## Version 1.1.2

### 2019-02-26

- Add card shadow to card tabs component

## Version 1.1.1

### 2019-02-25

- Fix Button 'warning' and 'link' kinds

## Version 1.1.0

### 2019-02-22

- Adds TileGroup and TileComponent

## Version 1.0.1

### 2019-02-22

- Adds a transition for tha table when entering the loading state with data

## Version 1.0.0

### 2019-02-21

- Adds a Changelog and git version tag `v1.0.0`.

Since ui-components have some components already built and "deployed", here is a list of the existing ones until now:

- AppFooter
- AppTitle
- Button
- AppWrapper
- Caption
- Card
- CardTabs
- Emptiness
- Engineering Logo
- Footer
- Form
- Icon
- Header
- Info
- Input
- Loading
- Logo
- Navbar
- Pagination
- Table
- Paragraph
- Title
