# Changelog All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/) and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). ## [2.7.1] - 2020-03-17 ### Updated - `modal` component with `[data-js="modal-close-continue"]` hook - closes a modal without preventing default behaviour of the element clicked ## [2.7.0] - 2020-03-09 ### Added - `pf-tabs` component ## [2.6.0] - 2020-03-02 ### Added - `pf-table--stripe` allows `pf-table` components to be themed with stripes. - `pill--larger` larger version of pill - `pill--box` boxes the pill with the same colour as the pill text - `pill--status` pills for student application status on search page ### Updated - changed all input components to inherit font sizes - documentation navigation - set `pf-accordion`, `pf-accordion-menu` to ready ## [2.5.6] - 2020-02-05 ### Updated - `pf-accordion-menu` small UI tweaks - remove top border, add breathing room to accordion chevrons ## [2.5.5] - 2020-01-09 ### Updated - `sprites.svg` now updates for both Gem and NPM package - `pf-accordion-menu` small UI tweaks - remove bold highlight, reverse colour hover states ## [2.5.4] - 2020-01-08 ### Added - `banking` SVG icon - `dashboard` SVG icon - `disbursement` SVG icon - `home` SVG icon - `search` SVG icon ### Updated - `pf-accordion-menu` reversed chevron direction based upon state - `pf-accordion-menu` tweaked hover state of chevrons - `pf-accordion-menu` documentation, examples, and upgraded to beta - `play-circle` SVG icon - `lock` SVG icon - `envelope` SVG icon ## [2.5.3] - 2019-12-20 ### Update - updated documentation for `pf-accordion-menu` - added open/closed chevrons to `pf-accordion-menu` - updated docs for `pf-loading` and `pf-logo` ## [2.5.2] - 2019-11-27 ### Added - Added alpha version of `pf-accordion-menu` component ### Update - security vulnerability fixes ## [2.5.1] - 2019-10-25 ### Update - Fix bug in `pf-accordion` ## [2.5.0] - 2019-10-23 ### Added - Add `mark` and `:focus` styles ### Update - Show existing `btn--danger` in docs ## [2.4.3] - 2019-10-10 ### Update - Notify Slack #frontend-support of master build status ## [2.4.2] - 2019-10-10 ### Update - auto deploy npm package to Prodigy private NPM server ## [2.4.1] - 2019-10-10 ### Update - `pf-accordion` fix to work across Chrome/Safari/Firefox/Edge ## [2.4.0] - 2019-10-09 ### Added - new `pf-accordion` component ## [2.3.2] - 2019-10-08 ### Updated - standalone CSS build tasks to standardise around `sass` package - icon library - all sprites are now hardcoded and usable until their removal in `v3.0.0` of UIF. - small copy changes to documentation ### Removed - grunticon and svgo from the build - new icons can no longer be added to the legacy sprite system automatically via the build steps; to add new icons use the SVG Sprites build step instead. ## [2.3.1] - 2019-09-26 ### Updated - `pf-select` improved default styling, e.g., border colours, added hover & focus states ## [2.3.0] - 2019-09-23 ### Updated - (build time) migrated SCSS and PostCSS compilation from Grunt to NPM task - migrated "copy file" tasks from Grunt to NPM task ### Removed - colours page from documentation - it was becoming laughably out of date and non-beneficial. - browsersync and watch Grunt tasks for development ### Added - `pf-select` component ## [2.2.3] - 2019-07-12 ### Updated - (dev) - update docker image ## [2.2.2] - 2019-07-12 ### Added - add `envelope` icon. ### Updated - updated `lock` icon. ## [2.2.1] - 2019-07-12 ### Removed - removed references to `jquery.pfFormStep.js` - the file didn't exist in the repo. - removed `_form-step.scss` - found no references to this ## [2.2.0] - 2019-07-10 ### Changed - changed `pfVideo` behaviour: enabled native YT controls - changed `pfVideo` behaviour: removed "close" functionality, hid close for any existing instances that include a close element. updated documents to no longer reference a close button. - changed `pfVideo` behaviour: onComplete of video, video is paused and returned to first frame. ## [2.1.5] - 2019-05-27 ### Changed - refined `dropdown-menu` code to improve it's ease-of-integration into other apps. ## [2.1.4] - 2019-05-23 ### Changed - extracted SVG-to-PNG process of old sprite files away from Grunt ## [2.1.3] - 2019-05-21 ### Changed - extracted SVG optimisation process for old sprite files away from Grunt ## [2.1.1] - 2019-05-20 ### Changed - Node version upgraded from `8.9.4` to `10.15.3` - extracted JS tests from Grunt - part of the eventual plan to remove Grunt entirely. - upgraded from deprecated Istanbul code coverage tool to NYC - Default Prettier updates to JS modules - no changes in functionality ## [2.1.0] - 2019-05-16 ### Added - `dropdown-menu` component - Grid helper - `row--align-justify` to evenly spread items horizontally inside a `row` ## [2.0.1] - 2019-05-03 ### Changed - `help-circle` icon has been updated to align with our other circled icons ## [2.0.0] - 2019-03-05 ### Removed - removed jQuery from the bundled JS - NOTE: jQuery is still a core dependency but should be included externally. - removed deprecated buttons ('light', 'large', 'small', 'xsmall') - removed date-range, and multiple date datepicker - removed icon-badge component - removed icon-text component - removed loading spinner component - removed pagination component - removed progress component - remove js implementation of styled checkboxes ### Changed - deprecated filterable select lists - take file upload component out of beta ## [1.7.9] - 2019-03-05 ### Changed - deprecation of old icon system deferred to v3 ## [1.7.8] - 2019-02-22 ### Added - added 4 new icons: - `hide` - `important-circle` - `ok-circle` - `show` ## [1.7.7] - 2019-01-11 ### Changed - reduced the gap between the tooltip and its target, when the tooltip appears below its target. ## [1.7.6] - 2018-11-19 ### Added - added the single-colour Prodigy logo ## [1.7.5] - 2018-11-05 ### Added - added animated SVG logo loading spinners ### Changed - escape HTML returned by `pfSelect` ## [1.7.4] - 2018-11-01 ### Changed - version of `jQuery` bumped from 1.9.1 to 1.12.0 to fix security vulnerabilities. ## [1.7.3] - 2018-10-01 ### Changed - `file-input` component now has a no-JS fallback, and has been moved out of beta. - Documentation for `file-input` component. ## [1.7.2] - 2018-09-13 ### Added - Step bar component - Visibility helpers - `.block-visible-small` show as a block on devices larger than mobile (hidden on mobile) - `.block-hidden-small` hide content on devices larger than mobile (show as block on mobile) ## [1.7.1] - 2018-08-29 ### Changed - File upload prototype (NOTE: still in beta) ## [1.7.0] - 2018-08-29 ### Added - SVG icon sprites. The days of creating new icons just for a different colour variant are over! ### Changed - Marked the old icon solution for deprecation ## [1.6.3] - 2018-08-28 ### Added - Added left chevron blue icon (`.icon--left-blue`) ## [1.6.2] - 2018-08-23 ### Changed - Fix: FlyOuts close to the right of the page would misbehave and place its contents off-screen. ## [1.6.1] - 2018-08-21 ### Added - Added cloud download icon (`.icon--cloud-download-blue`) - Added right chevron icon (`.icon--right-blue`) - Added info circle icon (`.icon--info-circle-blue`) - Added white hamburger icon (`.icon--hamburger-white`) ## [1.6.0] - 2018-08-13 ### Removed - Removed notices with a drop shadow (`.notice--shadow`) ## [1.5.5] - 2018-08-06 ### Added - Added file upload prototype (NOTE: currently in beta only, and will be subject to change) ## [1.5.4] - 2018-07-30 - Added status flag for each major component using new layout ## [1.5.3] - 2018-06-22 ### Changed - Fix: grey lock icon classname ## [1.5.2] - 2018-06-21 ### Added - Added grey lock icon ### Changed - Update docs for `pf-table`, `pill`, `progress`, `progressive-image`, `table`, `tooltip`, `video`, `panel`, `pagination`, `list-ordered`, `navigation`, `modal`, `loading`, `list-unordered`, `icon`, `icon-text`, `icon-badge`, `definition-list`, `fly-out`, `button`, `grid`, `accordion`, `datepicker`, and `notice` to use a more standardised layout. ## [1.5.1] - 2018-06-14 ### Changed - Process of publishing Gem to Gem Server - Fix standard notices so that they are dismissable (https://github.com/prodigyfinance/ui-core/issues/189) - Add `.rebind` function for tooltip component (https://github.com/prodigyfinance/ui-core/issues) ## [1.5.0] - 2018-04-30 ### Added - new `pf-table` component - new `pf-table-overflow` component - Added more documentation to Table and PF-Table components ### Removed - removed the highlight table theme (the blue table) ### Changed - Hover state of table rows to only trigger within the `tbody` - Updated table documentation to remove uneeded sort icons - there is no implementation in production that uses that approach. - Removed jQuery dependency and added new namespace on `$.pfNotice` -> `pf.notice` - Deprecated `pf.InputCheckbox` js component in favour of CSS-only approach ## [1.4.12] - 2018-02-09 ### Added - added focus state to checkboxes - updated background image of checkbox ### Changed - `form-field__msg` is no longer uppercase by default ## [1.4.10] - 2017-12-28 ### Added - added admin layout components cookbook page ## [1.4.8] - 2017-11-17 ### Added - added the `.circleci/config.yml` so that we are using Circle CI 2.0 to push the documentation, Gem, and NPM package. ### Removed - removed the `circle.yml` ## [1.4.7] - 2017-11-17 ### Changed - updated the `circle.yml` so that we automatically push the latest version of the documentation to S3. - updated the `circle.yml` so that we automatically push the latest version of UIF the npm repository. ## [1.4.3] - 2017-11-16 ### Changed - override Chrome's user agent styles that caused rounded borders on our buttons ## [1.4.2] - 2017-10-30 ### Changed - builds documentation to a minor version directory, instead of patch. (this means that there is only one place to see `v1.4.1`/`v1.4.2`/`v1.4.n` documentation - `/v1.4/`) ### Changed - Changed pfAutocomplete to no longer have dependency on pfLoading ## [1.4.0] - 2017-10-22 ### Changed - enhanced select now reflects `disabled` and `readonly` states of the original select. - updated documentation to show how to create boxed enhanced select components. - expanded the documentation around input text fields - input text fields now more consistently reflect `disabled` and `readonly` - checkbox input now reflects `disabled` and `readonly` states of the original input. - radio input now reflects `disabled` and `readonly` states of the original input. - expanded the documentation around radio input fields - de-deprecated circleular buttons and built a better example in the docs ### Added - "disabled checkbox" icon - "textarea" component ## [1.3.7] - 2017-10-10 ### Added - added a new layout helper class that visually hides HTML, but ensures it's still accessible for screen readers. ### Removed - removed invalid documentation for inline radio buttons. The data-js attribute is not required to use radios. ## [1.3.6] - 2017-10-04 ### Changed - the directory structure of the documentation from "Base, Components, Pages/Sections" to "Base, Components, _Form Elements_, Pages/Sections". - Added `jQuery.pfModal.show([element])`, and `jQuery.pfModal.closeAll()` functions to programatically open and close modals. ## [1.3.5] - 2017-10-03 ### Added - added new class for input-checkbox that hides a label ### Changed - the event that triggers a change between the select-all-checkbox and all affected child checkboxes is namespaced `change.pfUIFcheckbox` so that it is possible to more easily hook onto the native change event outside of UIF without collisions. ## [1.3.4] - 2017-10-03 ### Fixed - fly-out nav changed to expand to width of content by default, which fixes the problem of inner content getting cut off ## [1.3.3] - 2017-09-26 ### Fixed - filtered select was permanently stuck open. Caused by CSS being too order-dependant. This issue would have affected any release after v1.2.0 ## [1.3.2] - 2017-09-24 ### Fixed - broken documentation link from index page to our development approach page ### Removed - prototype registration pages section - prototype applications page - prototype sign-in page - various unused fixture images ### Changed - re-organised directory structure of remaining sections ## [1.3.1] - 2017-09-23 ### Fixed - Layout bug in Safari caused by clearfix fallback - Link to developing CSS & JS documentation - Some incorrect headings in documentation ### Added - Accessibility documentation ### Changed - Clarifying use of heading in typography documentation - Clarifying testing & linting documentation ## [1.3.0] - 2017-09-19 ### Added - Added the Progressive Image Loading module: - Added `_progressive-image.scss` module styles - Added `pfProgressiveImageLoading.js` module scripts ### Changed - deprecated several types of unused button classes (Light, Circle, Large, Default, Small, and Extra Small) that do not match with our design guidelines - to be removed in v2.0.0 - deprecated datepicker ranges and multiple date selector - to be removed in v2.0.0 - deprecated the 'Icon Text' and 'Icon Badge' components - to be removed in v2.0.0 - deprecated the 'Loading' component - to be removed in v2.0.0 - deprecated the vertical progress bars - to be removed in v2.0.0 ## [1.2.9] - 2017-09-18 ### Added - Added `_deprecated.scss` mixin - Added deprecation notice to the Pagination pages (the next major version will remove all the present implementations). ### Deprecated - the Pagination pages (the next major version will remove all the present implementations). ## [1.2.8] - 2017-14-08 ### Changed - Changed background colours of documentation from grey to white ## [1.2.7] - 2017-08-01 ### Fix - styling bug that was introduced as part of the `flatpickr.js` upgrade ## [1.2.6] - 2017-07-20 ### Changed - upgrade `flatpickr.js` from v2.3.5 -> v3.0.6 - updated documentation to include tag version on gem ## [1.2.5] - 2017-07-12 ### Changed - allow textfields that use the datepicker to also be editable by keyboard (duplicated tag from below) ## [1.2.4] - 2017-07-12 ### Changed - allow textfields that use the datepicker to also be editable by keyboard ## [1.2.3] - 2017-07-12 ### Changed - allow single datepickers to be bound to individual textfields via the `bindTo` function ## [1.2.2] - 2017-07-10 ### Removed - removed various MCST prototypes from the documentation; bulk class duplication prototype, class edit prototype, and class index protoype. ### Added - a blank layout for documentation purposes. The global footer page was using a layout designed for the MSCT prototypes - it is now using a more generic layout. ## [1.2.1] - 2017-07-06 ### Changed - upgraded `grunt-sass` v.1.2.0 -> v1.1.0 ### Added - an example of the global footer used across the several PF applications. ## [1.2.0] - 2017-06-26 ### Changed - extended carousel with optional configuration to provide navigational dots and to prevent infinite scrolling - updated carousel documentation - alphabetised SCSS partials ## [1.1.0] - 2017-04-13 ### Added - modals can now be triggered via the keyboard - depending upon the element being used as a trigger, will now be enter and/or spacebar ### Removed - removed an unused and undocumented blockquote style - removed unused handlebar templates ### Changed - typographical font size bump from 14px -> 16px - converted SASS typographic scale variable list into a more manageable map structure - restructured arrangement of documentation from `Base`, `Element`, and `Blocks` to just `Base` and `Components` ## [1.0.8] - 2017-04-07 ### Changed - showroom navigation bar submenus should be a standard width and links should turn blue on hover - added showroom navigation to documentation. Not sure if it should be here, as it's not a component we wish to propagate around the applications. - added documentation around how to increase the version of UIF after working on it. ## [1.0.7] - 2017-03-29 ### Fixed - Bumpversion integration ## [1.0.6] - 2017-03-28 ### Added - Bumpversion gem to assist with versioning ## [1.0.5] - 2017-02-23 ### Changed - UIF now runs through CircleCI - Added Istanbul code coverage Grunt task - Increased test coverage around JS components - Changed default font size inside input text fields to prevent the "screen zoom" effect when using mobile devices ### Added - more documentation around modal functionality that had been previously missed - `Object.assign` polyfill for Internet Explorer - and `pfInputFormatter` JS component to format date fields to either `YYYY-mm-dd` or `YY-mm`.