@coopdigital/styles 0.1.0 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/vars.css CHANGED
@@ -1,5 +1,110 @@
1
1
  :root {
2
- --type-line-height: 1.5;
3
- --type-size-default: 1rem;
2
+ /* Core brands */
3
+ --color-brand-coop: #00a1cc;
4
+ --color-brand-deals: #d12430;
5
+ /* Core brands (backwards compatibility) */
6
+ --color-brand: var(--color-brand-coop);
7
+ --color-deal-red: var(--color-brand-deals);
8
+ /* Colours */
9
+ --color-white: #fff;
10
+ --color-black: #000;
11
+ /* Text greys */
4
12
  --color-text: #282828;
13
+ --color-text-alt: #595959;
14
+ /* Tints */
15
+ --color-tint-purple: #fef2ff;
16
+ --color-tint-pink: #ffeaf2;
17
+ --color-tint-green: #f9fbdd;
18
+ --color-tint-orange: #ffede0;
19
+ --color-tint-red: #ffe8e9;
20
+ --color-tint-yellow: #fff6da;
21
+ --color-tint-lilac: #f2f2ff;
22
+ --color-tint-blue: #e6f6fa;
23
+ /* Grey backgrounds */
24
+ --color-grey-mid-light: #d8d8d8;
25
+ --color-grey-mid: #c4c4c4;
26
+ --color-grey-dark: #6e6e6e;
27
+ --color-grey-light: #f3f3f3;
28
+ --color-grey-neutral-light: #f3f3f3;
29
+ --color-grey-neutral-warm: #f5f5f0;
30
+ --color-grey-neutral-cool: #dde9ed;
31
+ --color-grey-neutral-cool-light: #f2f4f7;
32
+ /* Links */
33
+ --color-link: #00729a;
34
+ --color-link-hover: #00394e;
35
+ --color-link-focus: #8d44d8;
36
+ --color-link-active: #002c3d;
37
+ --color-link-visited: #002c3d;
38
+ --color-focus-ring: #8d44d8;
39
+ /* Reintroducing Co-op branding colours */
40
+ --color-navy: #003057;
41
+ --color-light-purple: #f8beff;
42
+ --color-light-pink: #ff94bf;
43
+ --color-light-green: #e1ec54;
44
+ --color-light-orange: #ffa465;
45
+ --color-light-red: #ff8c90;
46
+ --color-light-yellow: #ffd245;
47
+ --color-light-lilac: #bfbffd;
48
+ --color-light-blue: #bfe7f2;
49
+ --color-dark-purple: #c164c9;
50
+ --color-dark-pink: #f85792;
51
+ --color-dark-green: #819c00;
52
+ --color-dark-orange: #e85a00;
53
+ --color-dark-red: #f14f57;
54
+ --color-dark-yellow: #c08a00;
55
+ --color-dark-lilac: #6762f9;
56
+ /* Shades in use */
57
+ --color-green-light-6: #b9e277;
58
+ --color-red-dark-4: #ba2327;
59
+ /* Alternative colours */
60
+ --color-alt-light-blue: #99e0f5;
61
+ --color-alt-light-pink: #ffdbdb;
62
+ }
63
+
64
+ :root {
65
+ --ui-shadow: 0 2px 4px 0 rgb(0 0 0 / 15%);
66
+ --ui-shadow-hover: 0 2px 4px 0 rgb(0 0 0 / 35%);
67
+ --ui-border-radius: 4px;
68
+ --ui-transition-hover: 0.1s ease-out;
69
+ --ui-transition-hover-property: background-color, color;
70
+ }
71
+
72
+ :root {
73
+ /* Spacing */
74
+ --spacing-64: 4rem;
75
+ --spacing-48: 3rem;
76
+ --spacing-32: 2rem;
77
+ --spacing-24: 1.5rem;
78
+ --spacing-16: 1rem;
79
+ --spacing-12: 0.75rem;
80
+ --spacing-8: 0.5rem;
81
+ --spacing-4: 0.25rem;
82
+ --spacing-2: 0.125rem;
83
+ }
84
+
85
+ :root {
86
+ --font-family: "Avenir-Next", "Helvetica Neue", Helvetica, Arial, sans-serif;
87
+ --font-family-headline: "Co-opHeadline", "Impact", Helvetica, Arial, sans-serif;
88
+ /* Typography Sizes */
89
+ --type-size-12: 0.75rem;
90
+ --type-size-14: 0.875rem;
91
+ --type-size-16: 1rem;
92
+ --type-size-18: 1.125rem;
93
+ --type-size-20: 1.25rem;
94
+ --type-size-22: 1.375rem;
95
+ --type-size-24: 1.5rem;
96
+ --type-size-26: 1.625rem;
97
+ --type-size-28: 1.75rem;
98
+ --type-size-30: 1.875rem;
99
+ --type-size-32: 2rem;
100
+ --type-size-40: 2.5rem;
101
+ --type-size-46: 2.875rem;
102
+ --type-size-48: 3rem;
103
+ --type-size-56: 3.5rem;
104
+ --type-size-64: 4rem;
105
+ --type-size-82: 5.125rem;
106
+ /* Typography Line Height */
107
+ --type-line-height-default: 1.5;
108
+ --type-line-height-tight: 1.25;
109
+ --type-line-height-headline: 1.05;
5
110
  }
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@coopdigital/styles",
3
3
  "type": "module",
4
- "version": "0.1.0",
4
+ "version": "0.3.0",
5
5
  "private": false,
6
6
  "publishConfig": {
7
7
  "access": "public"
@@ -20,7 +20,7 @@
20
20
  "description": "",
21
21
  "devDependencies": {
22
22
  "glob": "^11.0.1",
23
- "sass-embedded": "^1.83.4"
23
+ "sass-embedded": "^1.85.0"
24
24
  },
25
- "gitHead": "a8fc664a2f4931af694002d4fe3b7832cff99569"
25
+ "gitHead": "b4f150b50ac188607cc82d50730660eae296c53f"
26
26
  }
@@ -0,0 +1,13 @@
1
+ $mq-xxsmall: 20em; // 320/16
2
+
3
+ $mq-xsmall: 25.875em; // 414/16
4
+
5
+ $mq-small: 37.5em; // 600/16
6
+
7
+ $mq-medium: 48em; // 768/16
8
+
9
+ $mq-large: 64em; // 1024/16
10
+
11
+ $mq-xlarge: 81.25em; // 1300/16
12
+
13
+ $mq-xxlarge: 90em; // 1440/16
package/src/main.scss CHANGED
@@ -1,3 +1,5 @@
1
1
  body {
2
2
  background-color: white;
3
3
  }
4
+
5
+ // TODO: add vars and reset scss import
package/src/reset.scss CHANGED
@@ -10,19 +10,6 @@ html {
10
10
  text-size-adjust: none;
11
11
  }
12
12
 
13
- body,
14
- h1,
15
- h2,
16
- h3,
17
- h4,
18
- p,
19
- figure,
20
- blockquote,
21
- dl,
22
- dd {
23
- margin-block-end: 0;
24
- }
25
-
26
13
  html,
27
14
  body {
28
15
  font-family: "Avenir Next", sans-serif;
@@ -40,6 +27,32 @@ body {
40
27
  -moz-osx-font-smoothing: grayscale;
41
28
  }
42
29
 
30
+ body,
31
+ h1,
32
+ h2,
33
+ h3,
34
+ h4,
35
+ p,
36
+ figure,
37
+ blockquote,
38
+ dl,
39
+ dd {
40
+ margin-block-end: 0;
41
+ }
42
+
43
+ h1,
44
+ h2,
45
+ h3,
46
+ h4,
47
+ h5,
48
+ h6,
49
+ ul,
50
+ ol,
51
+ p,
52
+ address {
53
+ margin-top: 0;
54
+ }
55
+
43
56
  input,
44
57
  button,
45
58
  textarea,
@@ -0,0 +1,49 @@
1
+ /* ===================================
2
+ * Fonts - Co-op Front-end Foundations
3
+ * =================================== */
4
+
5
+ @import "https://cdn.fonts.net/t/1.css?apiType=css&projectid=d984f56e-f9bd-4c14-bb29-2558d7ff893e";
6
+
7
+ @font-face {
8
+ font-family: "Avenir-Next";
9
+ font-weight: normal;
10
+ font-display: swap;
11
+ src:
12
+ url("https://coop-fonts.s3.eu-west-1.amazonaws.com/AvenirNext/AvenirNextRegular_normal_normal.woff2")
13
+ format("woff2"),
14
+ url("https://coop-fonts.s3.eu-west-1.amazonaws.com/AvenirNext/AvenirNextRegular_normal_normal.woff")
15
+ format("woff");
16
+ }
17
+
18
+ @font-face {
19
+ font-family: "Avenir-Next";
20
+ font-weight: 500;
21
+ font-display: swap;
22
+ src:
23
+ url("https://coop-fonts.s3.eu-west-1.amazonaws.com/AvenirNext/AvenirNextMedium_normal_normal.woff2")
24
+ format("woff2"),
25
+ url("https://coop-fonts.s3.eu-west-1.amazonaws.com/AvenirNext/AvenirNextMedium_normal_normal.woff")
26
+ format("woff");
27
+ }
28
+
29
+ @font-face {
30
+ font-family: "Avenir-Next";
31
+ font-weight: 600;
32
+ font-display: swap;
33
+ src:
34
+ url("https://coop-fonts.s3.eu-west-1.amazonaws.com/AvenirNext/AvenirNextDemi_normal_normal.woff2")
35
+ format("woff2"),
36
+ url("https://coop-fonts.s3.eu-west-1.amazonaws.com/AvenirNext/AvenirNextDemi_normal_normal.woff")
37
+ format("woff");
38
+ }
39
+
40
+ @font-face {
41
+ font-family: "Co-opHeadline";
42
+ font-weight: 700;
43
+ font-display: swap;
44
+ src:
45
+ url("https://coop-fonts.s3.eu-west-1.amazonaws.com/Co-opHeadline/Co-opHeadline-Bold.woff2")
46
+ format("woff2"),
47
+ url("https://coop-fonts.s3.eu-west-1.amazonaws.com/Co-opHeadline/Co-opHeadline-Bold.woff")
48
+ format("woff");
49
+ }
@@ -0,0 +1,47 @@
1
+ a,
2
+ .coop-link {
3
+ color: var(--color-link);
4
+ text-decoration: underline;
5
+
6
+ &:hover {
7
+ color: var(--color-link-hover);
8
+ // text-decoration: none;
9
+ }
10
+
11
+ &:active,
12
+ &:focus {
13
+ transition: none;
14
+ outline: 2px solid var(--color-focus-ring);
15
+ outline-offset: 3px;
16
+ }
17
+ }
18
+
19
+ button.coop-link {
20
+ display: inline;
21
+ margin: 0;
22
+ padding: 0;
23
+ appearance: none;
24
+ background: none;
25
+ border: 0;
26
+ border-radius: 0;
27
+ cursor: pointer;
28
+ text-align: inherit;
29
+ }
30
+
31
+ .coop-link-white {
32
+ color: var(--color-white);
33
+ text-decoration: underline;
34
+
35
+ &:hover {
36
+ color: currentcolor;
37
+ // text-decoration: none;
38
+ }
39
+ }
40
+
41
+ .coop-link-black {
42
+ color: var(--color-black);
43
+
44
+ &:hover {
45
+ color: currentcolor;
46
+ }
47
+ }
@@ -0,0 +1,15 @@
1
+ @use "../breakpoints.scss" as *;
2
+
3
+ hr {
4
+ display: block;
5
+ border-style: solid;
6
+ border-color: var(--color-grey-mid);
7
+ border-width: 0 0 1px 0;
8
+ height: 0;
9
+ color: var(--color-grey-mid);
10
+ margin: var(--spacing-16) 0;
11
+
12
+ @media (min-width: $mq-medium) {
13
+ margin: var(--spacing-32) 0;
14
+ }
15
+ }
@@ -0,0 +1,127 @@
1
+ @use "../breakpoints.scss" as *;
2
+
3
+ p + *,
4
+ ul + *,
5
+ ol + * {
6
+ padding-top: var(--spacing-16);
7
+
8
+ @media (min-width: $mq-medium) {
9
+ padding-top: var(--spacing-32);
10
+ }
11
+ }
12
+
13
+ p {
14
+ margin-bottom: var(--spacing-16);
15
+ }
16
+
17
+ ul,
18
+ ol {
19
+ padding-left: var(--spacing-24);
20
+
21
+ /*
22
+ margin-bottom: var(--spacing-8);
23
+
24
+ @media (min-width: $mq-medium) {
25
+ margin-bottom: var(--spacing-16);
26
+ }
27
+ */
28
+ }
29
+
30
+ h1.coop-t-mega {
31
+ font-size: var(--type-size-48);
32
+ margin-bottom: var(--spacing-8);
33
+
34
+ @media (min-width: $mq-medium) {
35
+ font-size: var(--type-size-56);
36
+ margin-bottom: var(--spacing-16);
37
+ }
38
+ }
39
+
40
+ h1 {
41
+ font-size: var(--type-size-30);
42
+ margin-bottom: var(--spacing-8);
43
+
44
+ @media (min-width: $mq-medium) {
45
+ font-size: var(--type-size-46);
46
+ margin-bottom: var(--spacing-16);
47
+ }
48
+ }
49
+
50
+ h2 {
51
+ font-size: var(--type-size-26);
52
+ margin-bottom: var(--spacing-8);
53
+
54
+ @media (min-width: $mq-medium) {
55
+ font-size: var(--type-size-32);
56
+ margin-bottom: var(--spacing-16);
57
+ }
58
+ }
59
+
60
+ h3 {
61
+ font-size: var(--type-size-26);
62
+ margin-bottom: var(--spacing-8);
63
+
64
+ @media (min-width: $mq-medium) {
65
+ font-size: var(--type-size-26);
66
+ margin-bottom: var(--spacing-16);
67
+ }
68
+ }
69
+
70
+ h4,
71
+ h5,
72
+ h6 {
73
+ font-size: var(--type-size-18);
74
+ margin-bottom: var(--spacing-8);
75
+
76
+ @media (min-width: $mq-medium) {
77
+ font-size: var(--type-size-22);
78
+ margin-bottom: var(--spacing-16);
79
+ }
80
+ }
81
+
82
+ .coop-t-headline {
83
+ font-family: var(--font-family-headline);
84
+ line-height: 105%;
85
+ }
86
+
87
+ .coop-t-headline-upper {
88
+ font-family: var(--font-family-headline);
89
+ text-transform: uppercase;
90
+ line-height: 100%;
91
+ }
92
+
93
+ h1.coop-t-headline-mega {
94
+ font-family: var(--font-family-headline);
95
+ color: var(--color-brand-coop);
96
+ font-size: var(--type-size-48);
97
+
98
+ @media (min-width: $mq-small) {
99
+ font-size: var(--type-size-64);
100
+ }
101
+
102
+ @media (min-width: $mq-medium) {
103
+ font-size: var(--type-size-82);
104
+ }
105
+ }
106
+
107
+ h1.coop-t-headline {
108
+ color: var(--color-brand-coop);
109
+ font-size: var(--type-size-40);
110
+
111
+ @media (min-width: $mq-small) {
112
+ font-size: var(--type-size-48);
113
+ }
114
+
115
+ @media (min-width: $mq-medium) {
116
+ font-size: var(--type-size-64);
117
+ }
118
+ }
119
+
120
+ .coop-t-lead-p {
121
+ font-size: var(--type-size-22);
122
+ margin-bottom: var(--spacing-16);
123
+
124
+ @media (min-width: $mq-medium) {
125
+ font-size: var(--type-size-26);
126
+ }
127
+ }
@@ -0,0 +1,4 @@
1
+ @use "./typography/fonts";
2
+ @use "./typography/links";
3
+ @use "./typography/text";
4
+ @use "./typography/misc";
@@ -0,0 +1,32 @@
1
+ :root {
2
+ /* Primary green */
3
+ --color-button-green-primary: #0f8482;
4
+ --color-button-green-primary-hover: #1c6b6a;
5
+ --color-button-green-primary-active: #124948;
6
+ --color-button-primary: var(--color-button-green-primary);
7
+ --color-button-primary-hover: var(--color-button-green-primary-hover);
8
+ --color-button-primary-active: var(--color-button-green-primary-active);
9
+
10
+ /* Blue button */
11
+ --color-button-blue: #005878;
12
+ --color-button-blue-hover: #003e55;
13
+ --color-button-blue-active: #001f2b;
14
+ --color-button-dark: var(--color-button-blue);
15
+ --color-button-dark-hover: var(--color-button-blue-hover);
16
+ --color-button-dark-active: var(--color-button-blue-active);
17
+
18
+ /* Grey button */
19
+ --color-button-grey: #efefef;
20
+ --color-button-grey-hover: var(--color-grey-mid-light);
21
+ --color-button-grey-active: var(--color-grey-mid);
22
+
23
+ /* White button */
24
+ --color-button-white: var(--color-white);
25
+ --color-button-white-hover: var(--color-button-grey);
26
+ --color-button-white-active: var(--color-grey-mid-light);
27
+
28
+ /* default button */
29
+ --color-button: var(--color-button-blue);
30
+ --color-button-hover: var(--color-button-blue-hover);
31
+ --color-button-active: var(--color-button-blue-active);
32
+ }
@@ -0,0 +1,14 @@
1
+ :root {
2
+ /* Notifications */
3
+ --color-red-error: #e20f14;
4
+ --color-red-error-text: #d12430;
5
+ --color-red-error-light: #fcf1f1;
6
+ --color-orange-alert: #f8d156;
7
+ --color-orange-alert-light: #f8eec7;
8
+ --color-green-success: #50811b;
9
+ --color-green-success-light: #d7e3c6;
10
+ --color-blue-inform: #0761c2;
11
+ --color-blue-inform-light: #eef3fc;
12
+ --color-blue-notification: var(--color-blue-inform);
13
+ --color-blue-notification-light: var(--color-blue-inform-light);
14
+ }
@@ -0,0 +1,71 @@
1
+ :root {
2
+ /* Core brands */
3
+ --color-brand-coop: #00a1cc;
4
+ --color-brand-deals: #d12430;
5
+
6
+ /* Core brands (backwards compatibility) */
7
+ --color-brand: var(--color-brand-coop);
8
+ --color-deal-red: var(--color-brand-deals);
9
+
10
+ /* Colours */
11
+ --color-white: #fff;
12
+ --color-black: #000;
13
+
14
+ /* Text greys */
15
+ --color-text: #282828;
16
+ --color-text-alt: #595959;
17
+
18
+ /* Tints */
19
+ --color-tint-purple: #fef2ff;
20
+ --color-tint-pink: #ffeaf2;
21
+ --color-tint-green: #f9fbdd;
22
+ --color-tint-orange: #ffede0;
23
+ --color-tint-red: #ffe8e9;
24
+ --color-tint-yellow: #fff6da;
25
+ --color-tint-lilac: #f2f2ff;
26
+ --color-tint-blue: #e6f6fa;
27
+
28
+ /* Grey backgrounds */
29
+ --color-grey-mid-light: #d8d8d8;
30
+ --color-grey-mid: #c4c4c4;
31
+ --color-grey-dark: #6e6e6e;
32
+ --color-grey-light: #f3f3f3;
33
+ --color-grey-neutral-light: #f3f3f3;
34
+ --color-grey-neutral-warm: #f5f5f0;
35
+ --color-grey-neutral-cool: #dde9ed;
36
+ --color-grey-neutral-cool-light: #f2f4f7;
37
+
38
+ /* Links */
39
+ --color-link: #00729a;
40
+ --color-link-hover: #00394e;
41
+ --color-link-focus: #8d44d8;
42
+ --color-link-active: #002c3d;
43
+ --color-link-visited: #002c3d;
44
+ --color-focus-ring: #8d44d8;
45
+
46
+ /* Reintroducing Co-op branding colours */
47
+ --color-navy: #003057;
48
+ --color-light-purple: #f8beff;
49
+ --color-light-pink: #ff94bf;
50
+ --color-light-green: #e1ec54;
51
+ --color-light-orange: #ffa465;
52
+ --color-light-red: #ff8c90;
53
+ --color-light-yellow: #ffd245;
54
+ --color-light-lilac: #bfbffd;
55
+ --color-light-blue: #bfe7f2;
56
+ --color-dark-purple: #c164c9;
57
+ --color-dark-pink: #f85792;
58
+ --color-dark-green: #819c00;
59
+ --color-dark-orange: #e85a00;
60
+ --color-dark-red: #f14f57;
61
+ --color-dark-yellow: #c08a00;
62
+ --color-dark-lilac: #6762f9;
63
+
64
+ /* Shades in use */
65
+ --color-green-light-6: #b9e277;
66
+ --color-red-dark-4: #ba2327;
67
+
68
+ /* Alternative colours */
69
+ --color-alt-light-blue: #99e0f5;
70
+ --color-alt-light-pink: #ffdbdb;
71
+ }
@@ -0,0 +1,12 @@
1
+ :root {
2
+ /* Spacing */
3
+ --spacing-64: 4rem;
4
+ --spacing-48: 3rem;
5
+ --spacing-32: 2rem;
6
+ --spacing-24: 1.5rem;
7
+ --spacing-16: 1rem;
8
+ --spacing-12: 0.75rem;
9
+ --spacing-8: 0.5rem;
10
+ --spacing-4: 0.25rem;
11
+ --spacing-2: 0.125rem;
12
+ }
@@ -0,0 +1,32 @@
1
+ :root {
2
+ --font-family: "Avenir-Next", "Helvetica Neue", Helvetica, Arial, sans-serif;
3
+ --font-family-headline: "Co-opHeadline", "Impact", Helvetica, Arial, sans-serif;
4
+
5
+ /* Typography Sizes */
6
+ --type-size-12: 0.75rem;
7
+ --type-size-14: 0.875rem;
8
+ --type-size-16: 1rem;
9
+ --type-size-18: 1.125rem;
10
+ --type-size-20: 1.25rem;
11
+ --type-size-22: 1.375rem;
12
+ --type-size-24: 1.5rem;
13
+ --type-size-26: 1.625rem;
14
+ --type-size-28: 1.75rem;
15
+ --type-size-30: 1.875rem;
16
+ --type-size-32: 2rem;
17
+
18
+ --type-size-40: 2.5rem;
19
+ --type-size-46: 2.875rem;
20
+
21
+ --type-size-48: 3rem;
22
+ --type-size-56: 3.5rem;
23
+
24
+ --type-size-64: 4rem;
25
+
26
+ --type-size-82: 5.125rem;
27
+
28
+ /* Typography Line Height */
29
+ --type-line-height-default: 1.5;
30
+ --type-line-height-tight: 1.25;
31
+ --type-line-height-headline: 1.05;
32
+ }
@@ -0,0 +1,7 @@
1
+ :root {
2
+ --ui-shadow: 0 2px 4px 0 rgb(0 0 0 / 15%);
3
+ --ui-shadow-hover: 0 2px 4px 0 rgb(0 0 0 / 35%);
4
+ --ui-border-radius: 4px;
5
+ --ui-transition-hover: 0.1s ease-out;
6
+ --ui-transition-hover-property: background-color, color;
7
+ }
@@ -0,0 +1,8 @@
1
+ :root {
2
+ --color-brand-cls-blue-dark: #114d94;
3
+ --color-brand-cls-blue-mid: #0761c2;
4
+ --color-brand-cls-blue-light: #287cdf;
5
+
6
+ /* Bereavement Advice Centre */
7
+ --color-brand-bac-purple: #674170;
8
+ }