- Fixes how node version is set in the package.json file
- Fixes expected peer dependencies versions
- Removes Tailwind plugin
@tailwindcss/line-clamp
, sinceline-clamp
utilities are now included in the framework by default and this plugin is no longer required
- Updated from node
16
to18
- Some ui lib components had to add breaking changes due to new storybook version
- Updated storybook libraries, and its dependencies
- Correctly exports
VerticalResizeablePanel
component
- Added
VerticalResizeablePanel
component - Added
renderDragContent
property toHorizontalResizeablePanel
that gives control over handle content when dragging
- Added option to use JSX as label text of
WYSIWYGInput
- Added option to have a full size chip with
AutocompleteDropdownInput
- Added option to use JSX as label text of
TextInput
- Added option to use JSX as label text of
TextAreaInput
- Added option to use JSX as help text of
TextInput
- Fix: Fixes z-index isolation on toggle button component
- Correctly exports recently added components
- Fix: made sure all buttons are of
type=button
unless stated otherwise. To fix issues where buttons would accidentally submit forms.
- Added
SelectStack
component
- Added examples for time picker on
DatePickerInput
- Added
ToggleInput
component - Added
ToggleButton
component
- Added
ImageLoader
component
- Added preview options for
DragFileUploadInput
- Changed modal
new
variant to use UI as updated designs
- Cleaned up modal classes logic
- Changed modal
new
variant to use same border radius in all corners
- Added option to center modal container
- Fixed a bug that would cause rich text editor to fail validation (or break while validating) for complex links
- Fixed a bug that would cause
WYSIWYGInput
component to incorrectly render nested ordered/unordered lists - Tweaked default list style classes from
draft-js
to conform with list styles from classpui-prose
- Fixes type of
HTMLParsedContent
componentcontent
prop to acceptnull
values as they can be treated the same asundefined
- Removes pointer cursor css rule from
BaseCard
component in hover state, as the cursor is automatically changed when the component is wrapped by a link
- Fixes issue where changing year on date picker doesn't update calendar tooltip
- Added the ability to have different date formats in date picker input
- Added
DatePickerInput
andDateRangePickerInput
- Allow for both async and synchronous fetch more callbacks on
AutocompleteInput
- Formik is now a peer dependency
- Rollbacks node to 16
- Fixes issue with storybook and updated node
- Updates node version to 18
- Makes sure that the
AutocompleteInput
fetchMore
callback gets called on init
- Fix pui-btn-default button styles overwritten by anchor styles inside pui-prose class
- Remove list style position inside on .prose styles
- Added
AlignObjectsCenter
Icon - Added
AlignObjectsLeft
Icon - Added
AlignObjectsRight
Icon - Added
JustifyObjectsBottom
Icon - Added
JustifyObjectsCenter
Icon - Added
JustifyObjectsTop
Icon - Added
JustifySpaceAround
Icon - Added
JustifySpaceBetween
Icon - Added
JustifySpaceEvenly
Icon
- Added
ButtonStack
component
- Fixes dropdown showing up under rich text toolbar
- Makes sure
AutocompleteInput
exported properties also export the expected html props
- Added error and success status to
AutocompleteInput
- Additional props passed down to
AutocompleteInput
now get forwarded to the underlying input field
- Added
FormikSubmitOnChange
component
- AutocompleteInput can now also be controlled
- Fixed an issue with
WYSIWYGInput
where it would skip the cursor to the start when using controlled input
- Added a controlled
htmlValueSlow
toWYSIWYGInput
- Fixed an issue with
WYSIWYGInput
where it would trigger the change event even when it shouldn't
- Fixed an issue with the autocomplete where the previous elements on the dropdown weren't being cleaned up
- DragFileUploadInput now also expects an initialFilesDescription property
- Add transition to hover state
- Remove uneven borders in cards and add hover state styles
HorizontalResizeablePanel
also triggers events
HorizontalResizeablePanel
now expects a function as its children
- Remove width/height classes from horizontal resizeable panel
- Remove base list styles for lists, styles need to be applied on each project
- Change base list styles that hide bullets inside the rich text elements
- Add cursor-col-resize to the tailwind safelist
- Add full height classes to the right reziseable column
- Added full height to the
HorizontalResizeablePanel
button
- Added
HorizontalResizeablePanel
component
- Autocomplete input now has two new properties:
shouldFetchOnInit
andloading
- Autocomplete input now expects loading state to be provided to it
- Added a new Autocomplete Input
- Renamed existing Autocomplete Input to AutoComplete Dropdown
- Conditionally render
label
tag only whenprops.label
is defined inSelectInput
- Fixed packages vulnerabilities. Installed missing package
downshift
- Updated the layout of modal component
- Added props variant to choose beteween default or new layout
- Added props removePadding to modal component to allow custom styling of its child
- Tailwindcss utilities classes alias changed
- Setup doc updated
- Updated Tailwind version to 3.0.23, and postcss libraries.
postcss-combine-duplicated-selectors
plugin removed.
fade-in
animations
- Add a z-index to the modal header when absolute prop is true
- Added option to set values of type
React.ReactNode
, in addition to currently accepted typestring
, tolabel
prop ofCheckboxRadioInput
component.
- Reverted fix in HTMLParsedContent component to stop adding
https
in alla
tags as that can lead to bugs on email links for instance. - Fixed critical packages vulnerabilities in dependencies
- fix classname required prop on BaseCard
- fix image fit on BaseCard
- update version of fontawesome devs
- Add Base card element
- fix HTML console error
wrapping a
element on module cards
- Removed gradient props (gradientInitialColor, gradientMiddleColor, gradientFinalColor) from
ProgramCard
component. - Removed gradient props (gradientInitialColor, gradientMiddleColor, gradientFinalColor) from
EventCard
component.
- Added prop classNameBar to allow changing the styles of bar for the
EventCard
component. - Added class
outline-none
toModuleCard
to prevent outline when focus the button. - Added class
outline-none
toProgramCard
to prevent outline when focus the button. - Added class
outline-none
toEventCard
to prevent outline when focus the button. - Added
onPressButton
callback toEventCard
button.
- Fixed problem with
ModuleCard
andProgramCard
buttons displaying a black outline when pressed. - Fixed problem with
EventCard
not having a button callback.
- Added prop classNameTitle to allow changing the styles of title for the
ProgramCard
component. - Added filter props (filter variant and classNameFilter) on
ProgramCard
to display a linear gradient overlay on the top of the image. - Added
onPressButton
callback toProgramCard
button.
- Fixed problem with
ProgramCard
not having a button callback.
- Add tags to event cards and fix sponsor image sizes
- Fix font weight for buttons in cards
- Fix the type issue in the percentage bar on ModuleCards
- Added props (classNameTitle and classNameContent) to allow changing the styles of title and content from the
ModuleCard
component. - Added filter props (filter variant and classNameFilter) on
ModuleCard
to display a linear gradient overlay on the top of the image. - Added
onPressButton
callback toModuleCard
button.
- Fixed problem with
ModuleCard
not having a button callback.
- Add percentage cicles component
- Add percentage list connector component
- Add percentage card Banners component
- Add percentage cirlces component
- Add images with gradient border component
- Add expert cards
- Add Event cards
- Add Program cards
- Add Resources cards
- Moved storybook libraries to
devDependencies
so they are not included in the package bundle - Updated storybook libraries to fix vulnerabilities issues
- Removed
next
frompeerDependencies
since the components in the UI lib don't depend on it - Moved
next
todevDependencies
so it is not included in the package bundle - Updated
next
to fix vulnerabilities issues - Updated
formik
to fix vulnerabilities issues - Updated
svgo
to fix vulnerabilities issues, and made code tweaks where it is used because the update involved breaking changes - Updated other libraries to fix vulnerabilities issues
- Added imperative handler
resetInitialValue
to reset WYSIWYG rich text editor state to the value set indefaultHtmlValue
- Added rich-text support for inputs of type Radio and Checkbox
- Added
entityLinkTransform
function onWYSIWYG
input to add the propstarget="_blank" rel="noreferrer"
into all linksa
tags. - Added new config into
DOMPurify.sanitize
to prevent it from replacing thetarget="_blank"
prop on links.
- Fixed problem with links not opening on a new tab.
- Added
replace
function onHTMLParsedContent
to convert links withouthttp://
orhttps://
into a valid link
- Fixed bug on
HTMLParsedContent
that cause the links not to redirect properly
- Fixed bug on
WYSIWYGInput
component that cause the link form to not work properly
- Added option to make WYSIWYG component toolbar always fixed at top of container
- Fixed bug that would cause
WYSIWYGInput
component to sendonChange
events with stale data while initializing its editor state
Modify hideBackdrop
logic to make backdrop transparent instead of hidden
- Added minHeight at default-present with default spacing.
- Fixed a bug with height on the
size
property for WYSIWYG input component.
- Added
size
property to WYSIWYG input component.
- Added
placement
andhideBackdrop
property to Drawer component
- Badge property
content
now accepts values of type number or string
- Added
placement
property to Badge component
- Fixed a bug that would cause Badge component to display the badge with no styles when content value is
0
- Moved props ordering on Dropdown so other properties can be overidden to allow for further customization
- Fixed how dompurify was getting exported
- Removed
xss
package in favor ofisomorphic-dompurify
- Fixed a bug that would install mismatching versions of react/react-dom in host projects, causing hooks errors
- Fixed a bug that would install mismatching versions of react/react-dom in host projects, causing hooks errors
- Fixed a bug that would cause links to not display their decorators on first render of the WYSIWYGInput component
- Fixed a bug that would cause links to sanitize their href tags in the HTMLParsedContent component
- Updated setup instructions to use Tailwind's default extractor in purgecss configuration
- Added new class
pui-container
extending Tailwind's defaultcontainer
class, but only allowing maximum width of 1280px instead of allowing up to 1536px - Added new class
pui-container-large
extending Tailwind's defaultcontainer
class
- Fixed bug in postcss purge script extractor method, by changing it for Tailwind's default extractor method
- Fixed a bug in disabled buttons to display a regular cursor on hover
- Updated postcss from 7 to 8 and its dependencies
- Updated setup guide to use updated libraries, and
[email protected]
- Fixed a bug in the integration of the PostCSS plugin
postcss-nested
withtailwind
by downgrading[email protected]
until known issue gets fixed - Added recommended Next.js settings to custom PostCSS configuration file and to recommended PostCSS instructions in docs
- Changed last example in the WYSIWYGInput docs to use the new HTMLParsedContent component to render the html generated by the input
- Fixed a bug in the WYSIWYGInput where the margin between some kind of elements like paragraphs was not being applied in the editor
- Added the same sanitization rules from the WYSIWYGInput to the HTMLParsedContent
- Fixed a bug where the WYSIWYGInput styles were being all filtered out
- Fixed a bug where the WYSIWYGInput inside a form was making the form submit when clicked on the styles or link buttons
- Fixed an issue where purgecss was purging more than it needed to
- Fixed a bug where the WYSIWYGInput text align buttons were not toggling correctly when switching from an alignment to another
- Typescript declaration files are now being exported in the
src
folder. Updated the npm lookup to consider that folder now.
- Removed
DOMPurify
in favor ofxss
for sanitization due to server side rendering compatibility.xss
is used instead ofisomorphic-dompurify
because the latter includes the JSDOM in a manner that rollup cannot correctly build it. - Moved string interpolation in favor of classname mappers on components.
- Moved string interpolation in favor of classname mappers on stories.
- The following components were added:
- HTMLParsedContent
- DragFileUploadInput
WYSIWYGInput
now also sanitizesdefaultHtmlValue
- Fixed an issue in
WYSIWYGInput
where its max-width would be limited due to theprose
class - Fixed an issue with the
Button
component classes where the classnames would overlap, and no classname would be returned in the end - Fixed an issue where purgecss wasn't considering the storybook folder
- Added missing export for
SelectInput
component
- Overriding tailwind prose default color values for our colors
- Added type definition for new
getPlainText
method in WYSIWYGInput component
- Added
getPlainText
method touseImperativeHandle
hook in WYSIWYGInput component
- Added Grid component
- Fixed an issue where the button classes weren't being applied if using icon variant
- Button component now allows
ref
forwarding
- Absolute position of drawer in relation to screen fixed to also lock beginning of drawer to left side of screen
- Added missing Icons export
- Icon class
pui-absolute-icon
now needs a pseudo element suffix-after
or-before
- Icons now works regardless of pseudo element
- On useAutocomplete, removed a place where the onChange method shouldn't get called. Or else the input itself would fill its contents with the selection
- Refactored autocomplete logic to export it in a hook
- Search icon
- Added more thorough documentation
- Fixed an issue with the rich text editor bullets where they were getting duplicated
- Fixed "module not found" problem when importing the lib and correctly exported generated types
- Trying to fix "module not found" problem when importing the lib
- Fixed a build issue to correctly build dynamic/chunk imports
- Changed how classnames were conditionally joined/concatenated
- Icons now already have their related stroke/fill class in them, instead of relying that to be added externally every time an icon was added
- The following components were added:
- Select Input
- Modal
- Tooltip
- Dropdown
- Expander
- Badge
- WYSIWYG Input
- Made CSS icons more generic
- Added textEllipsis base class
DropdownInput
now also has an example of selected options- Added datalist example to
TextInput
component - Added react wrapper for more big/complex components to avoid repetition
- Added
after:
class variant utility - Added
pui-gap
utility
- Fixed folder casing using correct react casing
- Fixed a missing class in storybook
- Fixed story that was using the incorrect naming
- Fixed an issue with how the
Drawer
component was getting exported
- The following components were added:
- Button
- Chip
- Alert
- Text input
- Checkbox
- Radio
- Animations
- Sekeleton
- Spinner
- Scrollbar
- Link
- Drawer
- Added an example of using the line clamp plugin
- Added common icons
- Fixed characters like "g" getting cut in text inputs