3.13.0 • Published 2 years ago

@guardian/src-foundations v3.13.0

Weekly downloads
-
License
Apache-2.0
Repository
github
Last release
2 years ago

Foundations

The Guardian's foundations are the atoms from which all our visual design is built. They are intended for use with a CSS-in-JS library such as Emotion.

Install

$ yarn add @guardian/src-foundations

Use

Palette

import { background } from '@guardian/src-foundations/palette';

const backgroundColor = css`
    background-color: ${background.primary};
`;

Typography

import { headline, body, textSans } from '@guardian/src-foundations/typography';

const h1 = css`
    ${headline.large({ fontWeight: 'bold' })};
`;

const p = css`
    ${body.main()};
`;

const copyright = css`
    ${textSans.xsmall()};
`;

Media queries

import { from, until, between } from '@guardian/src-foundations/mq';

const styles = css`
    padding: 0 10px;

    ${from.mobileLandscape} {
        padding: 0 20px;
    }

    ${between.phablet.and.desktop} {
        padding: 0 32px;
    }

    ${until.wide} {
        padding: 0 40px;
    }
`;

Size

import { width, height } from '@guardian/src-foundations/size';

const checkbox = css`
    width: ${width.inputXsmall}px;
    height: ${height.inputXsmall}px;
`;

Visually Hidden

For elements that should not appear to sighted users, but are useful to assistive technology users.

import { visuallyHidden } from '@guardian/src-foundations/accessibility';

const label = css`
    ${visuallyHidden};
`;

Focus Halo

This mixin provides a clear focus state for elements that may receive keyboard focus.

import { focusHalo } from '@guardian/src-foundations/accessibility';

const input = css`
    ${focusHalo};
    width: 200px;
    height: 44px;
`;

Description Id

A function that takes the ID of an element and generates a new ID. This should be set as the ID of an element that describes the first element. The generated ID should also be passed to the aria-describedby attribute on the first element.

import { descriptionId } from '@guardian/src-foundations/accessibility';

const Form = () => {
    const id = 'first_name';
    return (
        <form>
            <input id={id} type="text" aria-describedby={descriptionId(id)} />
            <p class="error" id={descriptionId(id)} />
        </form>
    );
};
3.13.0

2 years ago

3.12.0

3 years ago

3.10.3

3 years ago

3.11.0

3 years ago

3.9.1-rc.0

3 years ago

3.10.2-alpha.1

3 years ago

3.10.2-alpha.0

3 years ago

3.9.1

3 years ago

3.10.1

3 years ago

3.10.0

3 years ago

3.9.1-rc.1

3 years ago

3.9.0-rc.0

3 years ago

3.9.0-rc.1

3 years ago

3.9.0

3 years ago

3.8.0

3 years ago

3.7.0-rc.0

3 years ago

3.7.0

3 years ago

3.6.1-rc.0

3 years ago

3.6.0

3 years ago

3.6.0-rc.0

3 years ago

3.5.0

3 years ago

3.4.0

3 years ago

3.4.0-rc.0

3 years ago

3.3.0

3 years ago

3.3.0-rc.1

3 years ago

3.2.1

3 years ago

3.2.1-rc.2

3 years ago

3.2.1-rc.3

3 years ago

3.2.1-rc.4

3 years ago

3.2.1-rc.5

3 years ago

3.2.1-rc.1

3 years ago

3.3.0-rc.0

3 years ago

3.2.1-rc.0

3 years ago

3.2.0

3 years ago

3.2.0-rc.0

3 years ago

3.1.0

3 years ago

3.1.0-rc.0

3 years ago

3.0.1

3 years ago

2.8.2

3 years ago

3.0.0

3 years ago

3.0.0-rc.4

3 years ago

3.0.0-rc.2

3 years ago

3.0.0-rc.1

3 years ago

3.0.0-rc.0

3 years ago

3.0.0-rc.3

3 years ago

2.8.1

3 years ago

2.8.0

3 years ago

2.8.0-rc.0

3 years ago

2.7.1

3 years ago

2.7.0-rc.0

3 years ago

2.7.0

3 years ago

2.6.0

3 years ago

2.6.0-rc.0

4 years ago

2.5.0

4 years ago

2.5.0-rc.1

4 years ago

2.5.0-rc.0

4 years ago

2.4.0

4 years ago

2.4.0-rc.0

4 years ago

2.3.0-rc.1

4 years ago

2.3.0

4 years ago

2.3.0-rc.0

4 years ago

2.2.0

4 years ago

2.2.0-rc.0

4 years ago

2.1.0

4 years ago

2.1.0-rc.0

4 years ago

2.0.0

4 years ago

1.9.1

4 years ago

2.0.0-rc.0

4 years ago

1.9.0-rc.1

4 years ago

1.9.0-rc.0

4 years ago

1.9.0

4 years ago

1.8.0

4 years ago

1.8.0-rc.0

4 years ago

1.7.0-rc.0

4 years ago

1.7.0

4 years ago

1.6.0

4 years ago

1.6.0-rc.0

4 years ago

1.5.0-rc.0

4 years ago

1.5.0

4 years ago

1.4.0

4 years ago

1.4.0-rc.1

4 years ago

1.4.0-rc.0

4 years ago

1.3.0-rc.0

4 years ago

1.3.0

4 years ago

1.2.0

4 years ago

1.2.0-rc.1

4 years ago

1.2.0-rc.0

4 years ago

1.1.0

4 years ago

1.1.0-rc.6

4 years ago

1.1.0-rc.5

4 years ago

1.1.0-rc.4

4 years ago

1.1.0-rc.3

4 years ago

1.1.0-rc.2

4 years ago

1.1.0-rc.1

4 years ago

1.1.0-rc.0

4 years ago

1.0.1

4 years ago

1.0.0

4 years ago

1.0.0-rc.0

4 years ago

0.18.1

4 years ago

0.18.0

4 years ago

0.18.0-rc.1

4 years ago

0.18.0-rc.0

4 years ago

0.17.0

4 years ago

0.17.0-rc.0

4 years ago

0.16.1

4 years ago

0.16.0

4 years ago

0.16.0-alpha.1

4 years ago

0.16.0-alpha.3

4 years ago

0.16.0-alpha.2

4 years ago

0.16.0-alpha.4

4 years ago

0.15.1

4 years ago

0.15.0

4 years ago

0.14.2

4 years ago

0.14.1

4 years ago

0.13.1

4 years ago

0.14.0

4 years ago

0.13.0

4 years ago

0.13.0-alpha.1

4 years ago

0.12.4

4 years ago

0.12.3

4 years ago

0.12.2

4 years ago

0.12.1

4 years ago

0.12.0

4 years ago

0.11.0

4 years ago

0.10.0

4 years ago

0.9.0

4 years ago

0.8.0-rc.1

4 years ago

0.8.0

4 years ago

0.7.0

5 years ago

0.6.0

5 years ago

0.6.0-alpha.2

5 years ago

0.6.0-alpha.1

5 years ago

0.5.6

5 years ago

0.5.5

5 years ago

0.5.4

5 years ago

0.5.3

5 years ago

0.5.2

5 years ago

0.5.1

5 years ago

0.5.0

5 years ago

0.5.0-alpha.5

5 years ago

0.5.0-alpha.4

5 years ago

0.5.0-alpha.3

5 years ago

0.5.0-alpha.2

5 years ago

0.5.0-alpha.1

5 years ago

0.4.0

5 years ago

0.3.2

5 years ago

0.3.1

5 years ago

0.3.0

5 years ago

0.2.4

5 years ago

0.2.3

5 years ago

0.2.2

5 years ago

0.2.1

5 years ago

0.2.0

5 years ago

0.1.1

5 years ago

0.1.0

5 years ago

0.0.14

5 years ago

0.0.13

5 years ago

0.0.12

5 years ago

0.0.11

5 years ago

0.0.10

5 years ago

0.0.9

5 years ago

0.0.8

5 years ago

0.0.7

5 years ago

0.0.6

5 years ago

0.0.5

5 years ago

0.0.3

5 years ago

0.0.2

5 years ago

0.0.1

5 years ago