v1.0.0
Updated 22 September 2018
Summary
Since v0.19.0 (August 2017), the TDS team set out to create a React-first component library, and organized Sketch symbols. The goal in mind was to create a Design system that featured highly-reusable components with built-in accessibility, branding, and variations to serve TELUS developers in building web properties that do not deviate from the TELUS brand, have all the features necessary to promote fast and high-quality development. Equally important, another goal to create a library of Sketch assets to promote fast design iteration. "Release 1" of the TELUS Design System is the realization of these goals.
For information on the future of TDS, you may view our roadmap.
📃 Changelog
Our versioning strategy with v1.0.0 of the React component library is to strictly follow semantic versioning. This means:
-
The major version (vX.0.0) will be incremented when breaking changes occur, such as removal of component props, global CSS, pixel pushing (i.e. changing the padding or font size of a component that affects layout), or dramatic shifts in branding. Major releases may include features or patches
-
The minor version (v0.Y.0) will be incremented when new features are added, deprecation notices are made, or documentation is changed. Minor releases may include patches
-
The patch version (v0.0.Z) will be incremented when there are fixes made to pre-existing component props, CSS, or documentation
🚨 Breaking Changes
CSS
-
All deprecated or class-based CSS classes have been removed, this includes:
-
Form elements:
input
,select
,textarea
,choice, choice__text
,choice--error
,field
,field__control field__control--dropdown
,field__control--disabled
,field--success
,field--error
-
Hints:
hint
,hint--active
,field--hinted
,hint--active
,hint__trigger
-
Layout, size, and spacing:
button-row
,field-col
,helper
,helper--error
,medium-*
,large-*
,xl-*
-
Grid:
container
,container--limited-width
,container--fluid
,grid-row
,small-*
,medium-*
,large-*
,xs-*
,offset-*
,push-*
,pull-*
,hidden-*
-
Lists: list, list--bulleted, list--small, list--numbered, list--alpha-lower, list--checked, list--compact, list__item, list--error
-
Icons:
icon
,icon-core-caret-down
,icon--*
,icon-core-*
,icon--fw
, -
Typography:
helper--success
-
Accessibility:
accessible-hide
-
Utility mixins:
from-breakpoint
,at-breakpoint
,dimple
-
Functions:
rem
-
-
Base font size in global CSS is now 100%; this will affect your page’s layout when users have set their browsers to a base font size that isn’t the standard 16px
-
Update all instances of
@import ~@telusdigital/tds/dist/scss/variables
to:import ~@telusdigital/tds/dist/scss/colours
if your sass files need the colour variables
React Components
-
Deprecated React components and blocks have been removed:
Checklist
,Headline
,Icon
,Overview
,TextTitleBodyButton
,TitledText
,Video
, andGrid
-
Components that render semantic elements such as
<input />
and<button>
no longer have tag specific CSS. That means tag selectors such asbutton {}
can override component styles. Be sure not to use tag selectors in your codebase
🎁 Features
-
🆕 The TDS DSM Component Library for Sketch is available for members of TELUS Invision Enterprise. For access to TELUS Invision Enterprise, contact your design lead or your Invision account admin. For instructions on syncing up to the TDS DSM library, please visit our Getting started guide for Designers.
-
🆕 New documentation is available within GitHub and https://tds.telus.com
-
Global CSS uses
font-size: 100%
in thehtml
selector
🔧 Fixes
-
Ensure there’s padding in
Button
andButtonLink
components when the call-to-action copy expands the button width more than 180px -
Display of caret icon on the Select component
Migration
These instructions outline what to consider when upgrading from older versions of TDS in your codebase. Our recommendation when upgrading from far-back versions is to upgrade incrementally. Incremental upgrades entail:
-
Upgrade your copy of TDS to its next incremented version
-
When your build passes, upgrade to the next incremented version
-
Continue upgrading until you reach the latest version
From versions between 0.19.0 and v0.34.0
-
In your project’s front-end directory, run
yarn add @telusdigital/[email protected]
-
Replace Typography styles with their respective Typography component
-
Replace all globally scoped heading css classes with the corresponding
Heading
andDisplay Heading
components -
Replace
text--sup
class with its correspondingText.Sup
,Heading.Sup
orDisplayHeading.Sup
component -
Replace all globally-scoped text css classes with its corresponding
Typography
component:Text
,Paragraph
,Strong
,Small
-
Remove any instance of the
italic
class -
Style input fields using the
Input
component
-
-
Replace all unordered and ordered list classes with their corresponding list component:
UnorderedList
orOrderedList
-
Replace of
Icon
components with eitherDecorativeIcon
orStandaloneIcon
component and also ensure that any instance of the following globally scoped css classes, css function and scss variables are removed: -
Remove any calls to the
dimple()
mixin and use the DimpleDivider component instead -
Any use of Grid CSS or the Grid component should be replaced with the
FlexGrid
component -
Refactor CSS using the breakpoint SCSS utilities to use sass-mq library provided by @tds/core-responsive
-
Remove any calls to the
rem()
sass function -
Polyfill the
Set
javascript object to ensure the ExpandCollapse component works in IE11
From versions between 0.5.0 and 0.18.1
-
In your project’s front-end directory, run
yarn add @telusdigital/[email protected]
-
Follow normal setup instructions in the Getting started guide for developers
-
Blocks are no longer maintained in TDS. To consume blocks, see instructions in the Site builder repository