1.0.0 • Published 11 months ago

@element-public/react-typography v1.0.0

Weekly downloads
-
License
ISC
Repository
github
Last release
11 months ago

Typography

Description

The Typography component is meant for use in styling type, so the underlying markup is made from a to produce valid markup in the largest number of situations. See TypoBody, TypoButton, TypoHeadline, TypoOverline, and TypoSubtitle.

See live demos on storybook

Storybook Typography Demos

Install bundle from npm-e

npm i @element-public/react-components @element-public/themes

Optional: install the component individually

npm i @element-public/react-typography @element-public/themes

Open ~/.npmrc in an editor and add the following line to enable the @element-public scope:

@element-public:registry=https://npm.platforms.engineering

Troubleshooting

See below if you have never installed a package from Bayer's npm-enterprise or run into the following error:

npm ERR! code E401
npm ERR! Unable to authenticate, your authentication token seems to be invalid.
npm ERR! To correct this please trying logging in again with:
npm ERR!     npm login

Setup an access token

See the devtools npm-e guide to learn how to create an access token if this is the first time you are using a npm-e package at Bayer or you do not have a line that starts with the following in your ~/.npmrc file:

//npm.platforms.engineering/:_authToken=

Notes

The Typography components are meant for use in styling type. The underlying markup is made from a <span> to work in the largest number of situations. Using the 'tag' prop, will allow the user to override the HTML tag if needed.

Usage

Typography is mainly to be used to style characters. Typography is used to ensure all text is styled according to the chosen theme and remain brand compliant.

The 'themeColor' prop allows users to change colors of the text, excluding links. Some accepted values are; primary, secondary, error, textHintOnBackgroud, and many more.

Body, Subtitle, Display have a 'level' props that can be used to adjust the font size and spacing. Display has 'level' values ranging from 1 to 6, while Body and Subtitle have levels 1-2.

Typography Props

NameTypeDefaultRequiredDescription
boldbooleanfalsefalseIf true the typography will be bold. Applies to 1body, body2, caption, subtitle1, subtitle2
classNamestringundefinedfalseThe css class name to be passed through to the component markup.
tagstring|React.ElementType|React.Component'span'falseThe DOM element to display the typography.
themeColorstringundefinedfalseSets theme color for the typography. Does not apply to Link.Accepted Values: primary, secondary, error, text-primary-on-background, text-secondary-on-background, text-hint-on-background, text-disabled-on-background, text-icon-on-background, text-primary-on-light, text-secondary-on-light, text-hint-on-light, text-disabled-on-light, text-icon-on-lightDeprecated Values: textPrimaryOnBackground, textSecondaryOnBackground, textHintOnBackground, textDisabledOnBackground, textIconOnBackground, textPrimaryOnLight, textSecondaryOnLight, textHintOnLight, textDisabledOnLight, textIconOnLight
typestring'body1'falseSets typography class for the element.Accepted Values: body1, body1-bold, body2, body2-bold, button, caption, caption-bold, display1, display2, display3, display4, display5, display6, link, overline, subtitle1, subtitle1-bold, subtitle2, subtitle2-boldDeprecated Values: headline1, headline2, headline3, headline4, headline5, headline6

Typography Render Props

NameTypeDefaultRequiredDescription
childrenReact.ReactNodenullfalseExpects a string, accepts any valid markup.

Typo Body Props

NameTypeDefaultRequiredDescription
boldbooleanfalsefalseIf true the typography will be bold.
classNamestringundefinedfalseThe css class name to be passed through to the component markup.
levelnumber1falseSets font properties for body. Acceptable values range from 1 - 2. Higher levels produce smaller type.Accepted Values: 1, 2
tagstring|React.ElementType|React.Component'span'falseThe DOM element to display the typography.
themeColorstringundefinedfalseSets theme color for the typography.Accepted Values: primary, secondary, error, text-primary-on-background, text-secondary-on-background, text-hint-on-background, text-disabled-on-background, text-icon-on-background, text-primary-on-light, text-secondary-on-light, text-hint-on-light, text-disabled-on-light, text-icon-on-lightDeprecated Values: textPrimaryOnBackground, textSecondaryOnBackground, textHintOnBackground, textDisabledOnBackground, textIconOnBackground, textPrimaryOnLight, textSecondaryOnLight, textHintOnLight, textDisabledOnLight, textIconOnLight

Typo Body Render Props

NameTypeDefaultRequiredDescription
childrenReact.ReactNodenullfalseExpects a string, accepts any valid markup.

Typo Button Props

NameTypeDefaultRequiredDescription
classNamestringundefinedfalseThe css class name to be passed through to the component markup.
tagstring|React.ElementType|React.Component'span'falseThe DOM element to display the typography.
themeColorstringundefinedfalseSets theme color for the typography.Accepted Values: primary, secondary, error, text-primary-on-background, text-secondary-on-background, text-hint-on-background, text-disabled-on-background, text-icon-on-background, text-primary-on-light, text-secondary-on-light, text-hint-on-light, text-disabled-on-light, text-icon-on-lightDeprecated Values: textPrimaryOnBackground, textSecondaryOnBackground, textHintOnBackground, textDisabledOnBackground, textIconOnBackground, textPrimaryOnLight, textSecondaryOnLight, textHintOnLight, textDisabledOnLight, textIconOnLight

Typo Button Render Props

NameTypeDefaultRequiredDescription
childrenReact.ReactNodenullfalseExpects a string, accepts any valid markup.

Typo Caption Props

NameTypeDefaultRequiredDescription
boldbooleanfalsefalseIf true the typography will be bold.
classNamestringundefinedfalseThe css class name to be passed through to the component markup.
tagstring|React.ElementType|React.Component'span'falseThe DOM element to display the typography.
themeColorstringundefinedfalseSets theme color for the typography.Accepted Values: primary, secondary, error, text-primary-on-background, text-secondary-on-background, text-hint-on-background, text-disabled-on-background, text-icon-on-background, text-primary-on-light, text-secondary-on-light, text-hint-on-light, text-disabled-on-light, text-icon-on-lightDeprecated Values: textPrimaryOnBackground, textSecondaryOnBackground, textHintOnBackground, textDisabledOnBackground, textIconOnBackground, textPrimaryOnLight, textSecondaryOnLight, textHintOnLight, textDisabledOnLight, textIconOnLight

Typo Caption Render Props

NameTypeDefaultRequiredDescription
childrenReact.ReactNodenullfalseExpects a string, accepts any valid markup.

Typo Display Props

NameTypeDefaultRequiredDescription
classNamestringundefinedfalseThe css class name to be passed through to the component markup.
levelnumber|string1falseSets font properties for body. Acceptable values range from 1 to 6. Higher levels produce smaller type.Accepted Values: 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6
tagstring|React.ElementType|React.Component'span'falseThe DOM element to display the typography.
themeColorstringundefinedfalseSets theme color for the typography.Accepted Values: primary, secondary, error, text-primary-on-background, text-secondary-on-background, text-hint-on-background, text-disabled-on-background, text-icon-on-background, text-primary-on-light, text-secondary-on-light, text-hint-on-light, text-disabled-on-light, text-icon-on-lightDeprecated Values: textPrimaryOnBackground, textSecondaryOnBackground, textHintOnBackground, textDisabledOnBackground, textIconOnBackground, textPrimaryOnLight, textSecondaryOnLight, textHintOnLight, textDisabledOnLight, textIconOnLight

Typo Display Render Props

NameTypeDefaultRequiredDescription
childrenReact.ReactNodenullfalseExpects a string, accepts any valid markup.

Typo Headline Props

NameTypeDefaultRequiredDescription
classNamestringundefinedfalseThe css class name to be passed through to the component markup.
levelnumber|string1falseSets font properties for body. Acceptable values range from 1 to 6. Higher levels produce smaller type.Accepted Values: 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6
tagstring|React.ElementType|React.Component'span'falseThe DOM element to display the typography.
themeColorstringundefinedfalseSets theme color for the typography.Accepted Values: primary, secondary, error, text-primary-on-background, text-secondary-on-background, text-hint-on-background, text-disabled-on-background, text-icon-on-background, text-primary-on-light, text-secondary-on-light, text-hint-on-light, text-disabled-on-light, text-icon-on-lightDeprecated Values: textPrimaryOnBackground, textSecondaryOnBackground, textHintOnBackground, textDisabledOnBackground, textIconOnBackground, textPrimaryOnLight, textSecondaryOnLight, textHintOnLight, textDisabledOnLight, textIconOnLight

Typo Headline Render Props

NameTypeDefaultRequiredDescription
childrenReact.ReactNodenullfalseExpects a string, accepts any valid markup.

Typo Link Props

NameTypeDefaultRequiredDescription
classNamestringundefinedfalseThe css class name to be passed through to the component markup.
tagstring|React.ElementType|React.Component'a'falseThe DOM element to display the typography.

Typo Link Render Props

NameTypeDefaultRequiredDescription
childrenReact.ReactNodenullfalseExpects a string, accepts any valid markup.

Typo Overline Props

NameTypeDefaultRequiredDescription
classNamestringundefinedfalseThe css class name to be passed through to the component markup.
tagstring|React.ElementType|React.Component'span'falseThe DOM element to display the typography.
themeColorstringundefinedfalseSets theme color for the typography.Accepted Values: primary, secondary, error, text-primary-on-background, text-secondary-on-background, text-hint-on-background, text-disabled-on-background, text-icon-on-background, text-primary-on-light, text-secondary-on-light, text-hint-on-light, text-disabled-on-light, text-icon-on-lightDeprecated Values: textPrimaryOnBackground, textSecondaryOnBackground, textHintOnBackground, textDisabledOnBackground, textIconOnBackground, textPrimaryOnLight, textSecondaryOnLight, textHintOnLight, textDisabledOnLight, textIconOnLight

Typo Overline Render Props

NameTypeDefaultRequiredDescription
childrenReact.ReactNodenullfalseExpects a string, accepts any valid markup.

Typo Subtitle Props

NameTypeDefaultRequiredDescription
boldbooleanfalsefalseIf true the typography will be bold.
classNamestringundefinedfalseThe css class name to be passed through to the component markup.
levelnumber1falseSets font properties for body.Accepted Values: 1, 2
tagstring|React.ElementType|React.Component'span'falseThe DOM element to display the typography.
themeColorstringundefinedfalseSets theme color for the typography.Accepted Values: primary, secondary, error, text-primary-on-background, text-secondary-on-background, text-hint-on-background, text-disabled-on-background, text-icon-on-background, text-primary-on-light, text-secondary-on-light, text-hint-on-light, text-disabled-on-light, text-icon-on-lightDeprecated Values: textPrimaryOnBackground, textSecondaryOnBackground, textHintOnBackground, textDisabledOnBackground, textIconOnBackground, textPrimaryOnLight, textSecondaryOnLight, textHintOnLight, textDisabledOnLight, textIconOnLight

Typo Subtitle Render Props

NameTypeDefaultRequiredDescription
childrenReact.ReactNodenullfalseExpects a string, accepts any valid markup.