v0.9.0
0.9.0 is here and it brings 2 brand new components and a multitude of additions & fixes for various other components.
Since this is a <1.0.0 release, there are a number of breaking changes. If updating from 0.8.4 please read the upgrade guide below the release notes.
Release Notes
- Datepicker (new component) (closes #99)
- Supports picking dates, times, datetimes, months & years
- Supports constraining date with minimum & maximums
- Supports being attached to an input element for text entry
- Validation errors automatically applied when using reactive forms
- Configurable native fallback on mobile browsers
- Timezone independent
- Fully localizable
- Pagination (new component) (closes #112) (huge thanks to @mcosta74 for writing the component!)
- Supports navigation & boundary links
- Supports rotation of page numbers
- Configurable page sizes & limits
- Localization (new service)
- Components relying on in-built text can now be centrally localized
- Options for datepicker, select & search components
- Allows customisation of in-built locales, as well as ability to load entirely custom ones
- Supports following locales out of the box:
- English UK (en-GB)
- English US (en-US)
- Spanish (es) (thanks to @genuinefafa)
- Portuguese (pt) (thanks to @fniwes)
- French (fr) (thanks to @ciaraward)
- German (de) (thanks to @ciaraward)
- Italian (it) (thanks to @mcosta74)
- Select
- Added support for more built in Semantic UI styles BREAKING
- Added support for in menu searching
- Added
iconproperty to choose dropdown icon - Added
optionsFilteroption for a custom search function (closes #137) - Added localization support
- Added full tabbing support
- Fixed
ngModelnot setting initial value when not usingoptions(closes #143) - Fixed not opening when down key pressed (closes #128)
- Split
optionsintooptionsandoptionsLookupBREAKING - Renamed
availableOptionstofilteredOptionsDEPRECATED - Removed
noResultsMessageBREAKING - Removed
selectionas default class BREAKING
- Search
- Added
resultTemplateoption for specifying result template (closes #136) - Added
resultFormatteroption for specifying result formatter function - Added
retainSelectedResultoption that controls automatic clearing of the input - Added
optionsFilteroption for a custom search function (addresses #137) - Added localization support
- Added full tabbing support
- Split
optionsintooptionsandoptionsLookupBREAKING - Renamed
itemSelectedtoresultSelectedBREAKING - Removed
ngModelsupport BREAKING
- Added
- Modal
- Added
isInvertedoption (thanks to @trevordaniels) - Elements with the
autofocusattribute now get focus when modals open (closes #150) - Fixed alignment on scrolling modals (closes #126)
- Added
- Popup
- Added support for Semantic UI directional transitions
- Elements with the
autofocusattribute now get focus when the popups open (closes #150)
- Dropdown
- Dropdowns now autoclose when losing focus via tabbing
- Checkbox
- Checkboxes & radiobuttons now focus on click
Upgrade Guide
To fix each of the breaking changes from above follow the individual bullet points below:
- Select
- If using a remote lookup function, rename
[options]to[optionsLookup]. The split was introduced because having a single property can be confusing. - Replace all occurrences of
availableOptionswithfilteredOptions.availableOptionshas been deprecated and will be removed in0.10.0, asfilteredOptionsis clearer. - Add
class="selection"to all of your existing<sui-select>and<sui-multi-select>components.selectionwas removed as a default class to support a wider range of Semantic UI select styles. - Replace uses of
noResultsMessagewithlocaleOverridesas per the new localization service.
- If using a remote lookup function, rename
- Search
- If using a remote lookup function, rename
[options]to[optionsLookup]. The split was introduced because having a single property can be confusing. - Replace all occurrences of
(itemSelected)with(resultSelected). This is because all instances ofitemhave been replaced by the clearerresultas there was a mix before. - Remove all uses of
[(ngModel)]asngModelsupport has been dropped. Instead, use(resultSelected)to track the last selected option.
- If using a remote lookup function, rename
That covers everything you need to do for a clean upgrade.