Added a new Touch size variant for common UI components including Buttons, Button Groups, Checkboxes, Inputs, List Groups, Search Fields, Selects, Switches, and Radio Buttons. This variant can be used to ensure components are large enough to be usable on touch displays regardless of screen size. Documentation to follow in an upcoming release.
Added support for a variant of the Combo Box component that allows the user to select multiple options. Documentation will follow in an upcoming release. Thanks to Aji Vishwambharan for contributing this work.
Web Components
Our third group of Web Components is available for production, including:
Added new animations to the following components, using new Animation Constants to ensure consistent timing:
Added hover transitions for Checkboxes, Combo Boxes, Inputs, Radio Buttons, Icons, Selects, and Range Sliders.
Added a new selection animation for Radio Buttons.
Added missing transition for the left-icon within the list group.
Enhanced the documentation for the Field Group Event Listener to clarify how errors are automatically synchronized across child elements within the Field Group.
Provided new CodePen examples that demonstrate how to use MDS Web Components with vanilla Javascript, Angular, and Vue, including:
A Sign In example that combines multiple MDS Web Components using Vue, with support for email validation, error handling, and integration of data from a third-party API.
Resolved an issue that prevented the Field Group Web Component listener from detecting errors triggered by individual child fields.
Resolved an issue that prevented the full-width Button Group to divide its space equally between the contained buttons. Thanks to Trevor Rice for this contribution!
Resolved an issue preventing list-group items from accepting the additionalClass prop.
Updated all web components to include a namespaced prop to enable the use of namespaced classes within the web component templates. Read more on the Version 2 Upgrade Guide.
Added a Switch Group web component to the beta package, with documentation to follow in an upcoming release.
Enhancements
Web Components
Hardened web components—including normalization of props/events/methods, final testing, accessibility improvements, and more—in anticipation of a production release:
Added a deprecation note to the Market Barometer page. Teams looking to implement the Market Barometer should consume the component maintained by the Markets team.
Hardened web components—including normalization of props/events/methods, final testing, accessibility improvements, and more—in anticipation of a production release:
Updated the Popovers web component to support Menus as a variant by setting a prop on the Popover. Also added a Menus test page. Documentation for the Menus web component use case will follow in an upcoming release.
Published documentation for web components that were recently added to the beta package:
Moved all assets from the MDS /sandbox directory in to the /doc-site, in anticipation of the forthcoming removal of the /sandbox.
Web Components
Removed all instances of props that previously could be used to pass HTML markup (e.g., content and actions). In the future, HTML markup should always be passed into web components using slots rather than props.
Normalized the language of all web component documentation to align around a standard approach for describing props, slots, events and methods.
Hardened web components—including normalization of props/events/methods, final testing, accessibility improvements, and more—in anticipation of a production release:
Added a Codepen integration to component code snippets, allowing you to open components directly in an editable pen for testing, customizing, and prototyping. Thanks to Do-Yup Lim and Kazu Uchikata for this contribution!
Added a knowledge base markdown file to our repository, documenting resources we have found invaluable while building MDS.
Web Components
Added the Headers web component to the beta package and published accompanying documentation.
Added new web components to the beta package with documentation to follow in an upcoming sprint:
Updated the Data Tables’ modifier class for right aligning a header cell to be applied to the correct node, mds-data-table__header-cell--right. Thanks to Zach Erdmann for reporting!
Updated the Mastheads component to be able to accept logo files of any dimension by scaling them to fit within the masthead height. Thanks to Trevor Rice for this contribution!
Updated Data Tables CSS to ensure that alignment of checkboxes in IE11 is consistent with all other browsers. Thanks to Amruta Rasure for reporting!
Fixed a defect preventing links to duplicate sections on pages of our documentation site from working.
Updated the status tags on the documentation site to use an accessible shade of green, thanks to Maggie Griffiths for reporting!
Web Components
Ensured Loadersid prop is rendering in its template.
Deprecated
Deprecated the Data Tables’ header modifier class mds-data-table__header-cell--right, instead use mds-data-table__header-cell-inner--right. The deprecated class will be removed in version 3.0.
Published documentation and assets for a new library of illustrative iconography. Thanks to Jon Duncan for this contribution!
Published a new Forms UX pattern. Thanks to Rashel Thomeh and Will Parton for this contribution!
Updated the ellipsis-horizontal and ellipsis-vertical icons to better match the proportions of other default-size icons and added ellipsis-horizontal--s and ellipsis-vertical--s icons to the small-size icon set. Thanks to Raina Shannon for this contribution!
Significant updates to our Making a Contribution and Segments documentation, including new details on key reviewers across the contribution process.
Web Components
Added new web components to the beta package with documentation to follow in an upcoming sprint:
Added the Microcopy web component to the beta package and published accompanying documentation.
Published documentation for the Required Fields Keys web component which was recently added to the beta package.
Enhancements
Updated the Space page to include the full sets of spatial constants and improved the visual examples for the types of space.
Broke Articles mixins out in to a separate file, allowing teams to import just mixins without the rest of Article styles. Thanks to Clay Gregory and Zach Erdmann for this recommendation!
Note these are the same UI components MDS already supports, but now available as web components written in vanilla JavaScript. We will continue to add web component versions of more UI components to the beta package in upcoming releases. You can find updates in the Web Components sections below, and track our progress on the component status page.
Updated the standard drop shadow and container border styles to be darker, improving the display of layered components, like Popovers, on lower-quality monitors. Thanks to Landy Wang and Yolanda Feng for reporting!
Improved accessibility of icon-only Buttons by adding an aria-label attribute.
Improved accessibility of Search Fields by using the new icon-only Button aria-label.
Updated Article headings to use a t-shirt size scale and deprecated the previous classes and mixins.
Added an additional layer of variables to the Inputs and Combo Boxes SCSS to facilitate 3rd party theming. Thanks to Aji Vishwambharan for this contribution!
Updated the MDS site’s URLs to use query strings to prevent issues with copying and pasting URLs in to Slack or email. Thanks to Rashel Tomeh for reporting!
Added an SCSS variable for the font-display property, allowing teams to customize this behavior within their product. Thanks to Zach Erdmann and Clay Gregory for this contribution!
Fixes
Fixed a defect preventing link Cards from working. Thanks to Peter Unsworth for reporting and debugging!
Deprecated
Deprecated Article-related classes and mixins:
@mixin mds-article-heading-level-3(), instead use @mixin mds-article-heading-large().
@mixin mds-article-heading-level-4(), instead use @mixin mds-article-heading-medium().
@mixin mds-article-heading-level-5(), instead use @mixin mds-article-heading-small().
mds-article__heading--level-2, instead use mds-article__heading--large.
mds-article__heading--level-3, instead use mds-article__heading--medium.
mds-article__heading--level-4, instead use mds-article__heading--small.
Updated many component documentation pages—Buttons, for example—to split documentation into four tabs: Variations, Design Guidelines, Code Reference, and Accessibility.
Web Components
Published API documentation for forthcoming web components:
Editorial Message-Design Framework. Thanks to Michaela Hackner and Courey Gruszauskas for this contribution!
Added Courey Gruszauskas to the Segments page as the new Editorial segment owner.
Component status documentation, highlighting new and updated UI components as well as each component’s status across HTML/CSS and Web Component libraries. Including:
Added the Form layout specification and examples to the Forms page.
Added a cover sheet.
Enhancements
Added a Requested Parts section to the Request a New Part page. Community members can review this section to see what parts have been requested previously, and can link to the JIRA tickets to add their input on existing requests.
Added a note to components which utilize box-shadow to render a border regarding the known browser-specific defects that can occur when using the browser’s zoom function, including:
The 2.0.0 release includes significant changes that apply to the library of Visual Language and UI Component libraries and how they are packaged to be consumed by adopting teams. Refer to the 2.0.0 Upgrade Guide to learn more and follow the steps required to upgrade to this major release.
Visual Language
Added new Borders features for primary, secondary and tertiary applications to create page hierarchy and expanded the available mixins to add them to products.
Added chart-color-performance colors and examples to Color and Charts Visual Language page.
Added new accessibility error colors to the Color page.
Ensured that Menus triggered from Button Groups display and function correctly.
Fortified Tooltips to ensure they don’t inherit styling from parent elements. Thanks to Juan Vallejo for reporting!
Removed all inline styling from icon SVGs. Thanks to Juan Vallejo for reporting!
Added a backwards compatible solution for vertically centering Modals. Thanks to Tison Tang for reporting!
Fixed an SVG encoding defect preventing the Combo Boxes selected item icon from displaying in some browsers. Thanks to Gediminas Suklevicius for reporting!
Morningstar Base Charts components and related documentation, including:
Line component and documentation, including component explorer.
Donut component and documentation, including component explorer.
Correlation Matrix component and documentation, including component explorer.
Enhancements
Updated the Buttons page to include detailed documentation about the use of icons in buttons, and made improvements to the overall structure to the exisiting content.
Added our new Accessibility segment owner Nathan Leahigh to the Segments page.
Added ability to suppress utility links (i.e., View on Bitbucket, Report a Bug) in the right-hand local navigation and applied this behavior to appropriate pages.
Added documentation to the Iconography page detailing the process used to save icon svg artwork for production, how to use custom icons alongside MDS, and how to request the addition of a custom icon to the MDS library.
Added CSS Class Reference and Mixin Reference sections to the Iconography page. Thanks to Swapnil Dagabaj for this suggestion.
Improved the Notification, With Action demo JavaScript to match the timeout behavior described in the component variation documentation.
Fixed a Radio Group defect by adding the proper name attribute.
Deprecated
$mds-font-size-base and $mds-font-size-default in code. Mapped all 16px font size constants to use $mds-font-size-m and marked the deprecated constants as such in constants.yaml with code comments.
Version locked js-beautify dependency to prevent automatic upgrading to a broken version. Thanks to Mandar Katre for finding this issue and a solution!
Updated Tooltip styles to no longer require a fixed height for the tooltip.
Updated README documentation with a simpler getting started guide for building the MDS Doc site locally.
Added accessibility section to Iconography documentation.
Added ability to set the SCSS font path. Documented in the Getting Started guide. Thanks to Cesar Guerrero for the suggestion via the #mds-engineering Slack channel!
Added additional accessibility guidelines for Forms.
Improved CSS Class References per component by highlighting code using a code pill display
Fixes
Aligned focus state displays across library components, including Button, Search Field, and Switch.
Moved component-specific JavaScript demonstrations from the library/ folder to the docs/ folder, and consolidated demonstration JavaScript across MDS sink pages.
Added light/dark mixins for easily defining background, text, and border colors per component and elements-within-components across background colors triggered by a container that uses a mds-container, and added those controls to styles for:
Forms (Checkbox, Radio Button, Textbox, Labels, and more)
Button Group (previously known as “Segmented Control”)
Constants documentation with introductory material and complete catalog.
Added a gulp task for generating files required for a new component.
Enhancements
Refined button colors for hover and disabled states.
Revised distinctions (via a mixin) for disabled states of entire block elements vs. text within an element. Affected items include forms, pagination, range slider, switch, and button.
Fixes
Removed Morningstar-specific content around the MDS release process.
Replaced global box-sizing with border-box mixin, encapsulated per component.
Added charset meta tag to documentation site.
Realigned pairing of button label and icon within buttons.