nsw-design-system 3.2.3 → 3.2.5

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/js/main.js CHANGED
@@ -458,6 +458,7 @@
458
458
  }
459
459
 
460
460
  submenu.classList.remove('active');
461
+ submenu.closest('ul').parentElement.classList.remove('no-scroll');
461
462
  this.openSubNavElements.pop();
462
463
  }
463
464
  }, {
@@ -478,6 +479,8 @@
478
479
  submenu.addEventListener(this.transitionEvent, this.showSubNavTransitionEndEvent, false);
479
480
  }
480
481
 
482
+ submenu.closest('ul').parentElement.scrollTop = 0;
483
+ submenu.closest('ul').parentElement.classList.add('no-scroll');
481
484
  submenu.classList.add('active');
482
485
  }
483
486
  }, {
@@ -971,7 +974,11 @@
971
974
  this.selectedTab = clickedTab;
972
975
 
973
976
  if (!clickedTab.classList.contains('js-tabs-fixed')) {
974
- this.selectedTab.scrollIntoView();
977
+ clickedTab.scrollIntoView({
978
+ behavior: 'smooth',
979
+ block: 'nearest',
980
+ inline: 'nearest'
981
+ });
975
982
  }
976
983
  }
977
984
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "nsw-design-system",
3
- "version": "3.2.3",
3
+ "version": "3.2.5",
4
4
  "description": "Design system for Digital NSW",
5
5
  "main": "dist/main.js",
6
6
  "style": "dist/main.css",
@@ -41,7 +41,7 @@
41
41
 
42
42
  button {
43
43
  @include font-size('sm');
44
- color: var(--nsw-brand-dark);
44
+ color: var(--nsw-text-link);
45
45
  text-decoration: underline;
46
46
  text-decoration-skip-ink: auto;
47
47
  font-weight: var(--nsw-font-bold);
@@ -50,8 +50,8 @@
50
50
  background: none;
51
51
 
52
52
  &:hover:enabled {
53
- @include nsw-hover;
54
- outline: 2px solid var(--nsw-text-hover);
53
+ @include nsw-link-hover;
54
+ outline: 2px solid var(--nsw-text-link-hover);
55
55
 
56
56
  .nsw-section--invert & {
57
57
  background-color: var(--nsw-text-hover-light);
@@ -250,6 +250,7 @@ $nsw-form-tick: '<svg fill="#ffffff" version="1.1" xmlns="http://www.w3.org/2000
250
250
  font-weight: var(--nsw-font-normal);
251
251
 
252
252
  &:hover {
253
+ @include nsw-hover;
253
254
  outline-width: 0;
254
255
  }
255
256
 
@@ -36,6 +36,7 @@
36
36
  text-decoration: none;
37
37
 
38
38
  &:hover {
39
+ @include nsw-hover;
39
40
  outline-width: 0;
40
41
  }
41
42
 
@@ -64,7 +64,7 @@
64
64
 
65
65
  &:hover {
66
66
  .nsw-list-item__title a {
67
- @include nsw-hover;
67
+ @include nsw-link-hover;
68
68
  }
69
69
  }
70
70
 
@@ -21,6 +21,14 @@
21
21
  visibility: visible;
22
22
  }
23
23
 
24
+ &.no-scroll {
25
+ overflow-y: hidden;
26
+
27
+ @include breakpoint($nsw-desktop-breakpoint) {
28
+ overflow-y: visible;
29
+ }
30
+ }
31
+
24
32
  &.closing {
25
33
  transform: translateX(-100%);
26
34
  }
@@ -115,6 +123,10 @@
115
123
  justify-content: space-between;
116
124
  flex-wrap: nowrap;
117
125
 
126
+ &:hover {
127
+ @include nsw-hover;
128
+ }
129
+
118
130
  .nsw-material-icons {
119
131
  color: var(--nsw-brand-dark);
120
132
  margin-right: rem(-8px);
@@ -200,6 +212,14 @@
200
212
  visibility: visible;
201
213
  }
202
214
 
215
+ &.no-scroll {
216
+ overflow-y: hidden;
217
+
218
+ @include breakpoint($nsw-desktop-breakpoint) {
219
+ overflow-y: visible;
220
+ }
221
+ }
222
+
203
223
  @include breakpoint($nsw-desktop-breakpoint) {
204
224
  @include container;
205
225
  padding: rem(48) rem(40);
@@ -198,6 +198,7 @@ class Navigation {
198
198
  submenu.removeEventListener('keydown', this.mobileSubNavTrapTabKeyEvent, false)
199
199
  }
200
200
  submenu.classList.remove('active')
201
+ submenu.closest('ul').parentElement.classList.remove('no-scroll')
201
202
  this.openSubNavElements.pop()
202
203
  }
203
204
 
@@ -213,6 +214,8 @@ class Navigation {
213
214
  submenu.addEventListener('keydown', this.mobileSubNavTrapTabKeyEvent, false)
214
215
  submenu.addEventListener(this.transitionEvent, this.showSubNavTransitionEndEvent, false)
215
216
  }
217
+ submenu.closest('ul').parentElement.scrollTop = 0
218
+ submenu.closest('ul').parentElement.classList.add('no-scroll')
216
219
  submenu.classList.add('active')
217
220
  }
218
221
 
@@ -25,8 +25,10 @@
25
25
  padding: rem(4px);
26
26
  min-width: rem(30px);
27
27
  border-radius: var(--nsw-border-radius);
28
+ color: var(--nsw-brand-dark);
28
29
 
29
30
  &:hover {
31
+ @include nsw-hover;
30
32
  outline-width: 0;
31
33
  }
32
34
 
@@ -44,6 +44,7 @@
44
44
  padding: rem(16px);
45
45
 
46
46
  &:hover {
47
+ @include nsw-hover;
47
48
  outline-width: 0;
48
49
  }
49
50
 
@@ -34,6 +34,7 @@
34
34
  height: 100%;
35
35
 
36
36
  &:hover {
37
+ @include nsw-hover;
37
38
  outline-width: 0;
38
39
  }
39
40
 
@@ -95,7 +95,11 @@ class Tabs {
95
95
  this.tabPanel[selectedTabIndex].hidden = true
96
96
  this.selectedTab = clickedTab
97
97
  if (!clickedTab.classList.contains('js-tabs-fixed')) {
98
- this.selectedTab.scrollIntoView()
98
+ clickedTab.scrollIntoView({
99
+ behavior: 'smooth',
100
+ block: 'nearest',
101
+ inline: 'nearest',
102
+ })
99
103
  }
100
104
  }
101
105
  }
@@ -13,6 +13,7 @@
13
13
  }
14
14
 
15
15
  &:hover {
16
+ @include nsw-hover;
16
17
  outline-width: 0;
17
18
  }
18
19
 
@@ -34,6 +34,11 @@
34
34
  background-color: var(--nsw-text-hover);
35
35
  }
36
36
 
37
+ // Default text link hover state
38
+ @mixin nsw-link-hover {
39
+ background-color: var(--nsw-text-link-hover);
40
+ }
41
+
37
42
  // A block to click around the link
38
43
  @mixin pseudo-clickable-block {
39
44
  &::after {
@@ -98,12 +103,12 @@
98
103
  //Links
99
104
  @mixin link() {
100
105
  font-weight: var(--nsw-font-bold);
101
- color: var(--nsw-brand-dark);
106
+ color: var(--nsw-text-link);
102
107
  text-decoration: underline;
103
108
 
104
109
  &:hover {
105
- @include nsw-hover;
106
- outline: 2px solid var(--nsw-text-hover);
110
+ @include nsw-link-hover;
111
+ outline: 2px solid var(--nsw-text-link-hover);
107
112
  }
108
113
 
109
114
  &:focus {
@@ -116,11 +121,11 @@
116
121
  }
117
122
 
118
123
  @mixin link-dark() {
119
- color: var(--nsw-brand-dark);
124
+ color: var(--nsw-text-link);
120
125
 
121
126
  &:hover {
122
- background-color: var(--nsw-text-hover);
123
- outline-color: var(--nsw-text-hover);
127
+ background-color: var(--nsw-text-link-hover);
128
+ outline-color: var(--nsw-text-link-hover);
124
129
  }
125
130
 
126
131
  &:focus {
@@ -4,60 +4,118 @@
4
4
  --nsw-palette-grey-03: #cdd3d6;
5
5
  --nsw-palette-grey-04: #ebebeb;
6
6
 
7
+ --nsw-palette-grey-01-rgb: 34, 39, 43;
8
+ --nsw-palette-grey-02-rgb: 73, 80, 84;
9
+ --nsw-palette-grey-03-rgb: 205, 211, 214;
10
+ --nsw-palette-grey-04-rgb: 235, 235, 235;
11
+
7
12
  --nsw-palette-green-01: #004000;
8
13
  --nsw-palette-green-02: #00aa45;
9
14
  --nsw-palette-green-03: #a8edb3;
10
15
  --nsw-palette-green-04: #dbfadf;
11
16
 
17
+ --nsw-palette-green-01-rgb: 0, 64, 0;
18
+ --nsw-palette-green-02-rgb: 0, 170, 69;
19
+ --nsw-palette-green-03-rgb: 168, 237, 179;
20
+ --nsw-palette-green-04-rgb: 219, 250, 223;
21
+
12
22
  --nsw-palette-teal-01: #0b3f47;
13
23
  --nsw-palette-teal-02: #2e808e;
14
24
  --nsw-palette-teal-03: #8cdbe5;
15
25
  --nsw-palette-teal-04: #d1eeea;
16
26
 
27
+ --nsw-palette-teal-01-rgb: 11, 63, 71;
28
+ --nsw-palette-teal-02-rgb: 46, 128, 142;
29
+ --nsw-palette-teal-03-rgb: 140, 219, 229;
30
+ --nsw-palette-teal-04-rgb: 209, 238, 234;
31
+
17
32
  --nsw-palette-blue-01: #002664;
18
33
  --nsw-palette-blue-02: #146cfd;
19
34
  --nsw-palette-blue-03: #8ce0ff;
20
35
  --nsw-palette-blue-04: #cbedfd;
21
36
 
37
+ --nsw-palette-blue-01-rgb: 0, 38, 100;
38
+ --nsw-palette-blue-02-rgb: 20, 108, 253;
39
+ --nsw-palette-blue-03-rgb: 140, 224, 255;
40
+ --nsw-palette-blue-04-rgb: 203, 237, 253;
41
+
22
42
  --nsw-palette-purple-01: #441170;
23
43
  --nsw-palette-purple-02: #8055f1;
24
44
  --nsw-palette-purple-03: #cebfff;
25
45
  --nsw-palette-purple-04: #e6e1fd;
26
46
 
47
+ --nsw-palette-purple-01-rgb: 68, 17, 112;
48
+ --nsw-palette-purple-02-rgb: 128, 85, 241;
49
+ --nsw-palette-purple-03-rgb: 206, 191, 255;
50
+ --nsw-palette-purple-04-rgb: 230, 225, 253;
51
+
27
52
  --nsw-palette-pink-01: #65004d;
28
53
  --nsw-palette-pink-02: #d912ae;
29
54
  --nsw-palette-pink-03: #f4b5e6;
30
55
  --nsw-palette-pink-04: #fddef2;
31
56
 
57
+ --nsw-palette-pink-01-rgb: 101, 0, 77;
58
+ --nsw-palette-pink-02-rgb: 217, 18, 174;
59
+ --nsw-palette-pink-03-rgb: 244, 181, 230;
60
+ --nsw-palette-pink-04-rgb: 253, 222, 242;
61
+
32
62
  --nsw-palette-red-01: #630019;
33
63
  --nsw-palette-red-02: #d7153a;
34
64
  --nsw-palette-red-03: #ffb8c1;
35
65
  --nsw-palette-red-04: #ffe6ea;
36
66
 
67
+ --nsw-palette-red-01-rgb: 99, 0, 25;
68
+ --nsw-palette-red-02-rgb: 215, 21, 58;
69
+ --nsw-palette-red-03-rgb: 255, 184, 193;
70
+ --nsw-palette-red-04-rgb: 255, 230, 234;
71
+
37
72
  --nsw-palette-orange-01: #941b00;
38
73
  --nsw-palette-orange-02: #f3631b;
39
74
  --nsw-palette-orange-03: #ffce99;
40
75
  --nsw-palette-orange-04: #fdeddf;
41
76
 
77
+ --nsw-palette-orange-01-rgb: 148, 27, 0;
78
+ --nsw-palette-orange-02-rgb: 243, 99, 27;
79
+ --nsw-palette-orange-03-rgb: 255, 206, 153;
80
+ --nsw-palette-orange-04-rgb: 253, 237, 223;
81
+
42
82
  --nsw-palette-yellow-01: #694800;
43
83
  --nsw-palette-yellow-02: #faaf05;
44
84
  --nsw-palette-yellow-03: #fde79a;
45
85
  --nsw-palette-yellow-04: #fff4cf;
46
86
 
87
+ --nsw-palette-yellow-01-rgb: 105, 72, 0;
88
+ --nsw-palette-yellow-02-rgb: 250, 175, 5;
89
+ --nsw-palette-yellow-03-rgb: 253, 231, 154;
90
+ --nsw-palette-yellow-04-rgb: 255, 244, 207;
91
+
47
92
  --nsw-palette-brown-01: #523719;
48
93
  --nsw-palette-brown-02: #b68d5d;
49
94
  --nsw-palette-brown-03: #e8d0b5;
50
95
  --nsw-palette-brown-04: #ede3d7;
51
96
 
97
+ --nsw-palette-brown-01-rgb: 82, 55, 25;
98
+ --nsw-palette-brown-02-rgb: 182, 141, 93;
99
+ --nsw-palette-brown-03-rgb: 232, 208, 181;
100
+ --nsw-palette-brown-04-rgb: 237, 227, 215;
101
+
52
102
  --nsw-palette-black: #000000;
53
103
  --nsw-palette-white: #ffffff;
54
104
  --nsw-palette-off-white: #f2f2f2;
55
105
 
106
+ --nsw-palette-black-rgb: 0, 0, 0;
107
+ --nsw-palette-white-rgb: 255, 255, 255;
108
+ --nsw-palette-off-white-rgb: 242, 242, 242;
109
+
56
110
  --nsw-palette-focus: #0085b3;
57
- --nsw-palette-hover: #{rgba(#0085b3, 0.2)};
58
- --nsw-palette-hover-light: #{rgba(#ffffff, 0.2)};
59
111
  --nsw-palette-visited: #551a8b;
60
112
 
113
+ --nsw-palette-focus-rgb: 0, 133, 179;
114
+ --nsw-palette-visited-rgb: 85, 26, 139;
115
+
116
+ --nsw-palette-hover: rgba(var(--nsw-palette-focus-rgb), 0.2);
117
+ --nsw-palette-hover-light: rgba(var(--nsw-palette-white-rgb), 0.2);
118
+
61
119
  --nsw-palette-info-blue: #2e5299;
62
120
  --nsw-palette-info-blue-bg: #eaedf4;
63
121
  --nsw-palette-success-green: #00a908;
@@ -66,4 +124,13 @@
66
124
  --nsw-palette-warning-orange-bg: #fbeee5;
67
125
  --nsw-palette-error-red: #b81237;
68
126
  --nsw-palette-error-red-bg: #f7e7eb;
127
+
128
+ --nsw-palette-info-blue-rgb: 46, 82, 153;
129
+ --nsw-palette-info-blue-bg-rgb: 234, 237, 244;
130
+ --nsw-palette-success-green-rgb: 0, 169, 8;
131
+ --nsw-palette-success-green-bg-rgb: 229, 246, 230;
132
+ --nsw-palette-warning-orange-rgb: 220, 88, 0;
133
+ --nsw-palette-warning-orange-bg-rgb: 251, 238, 229;
134
+ --nsw-palette-error-red-rgb: 184, 18, 55;
135
+ --nsw-palette-error-red-bg-rgb: 247, 231, 235;
69
136
  }
@@ -7,10 +7,15 @@
7
7
 
8
8
  --nsw-text-dark: var(--nsw-palette-grey-01);
9
9
  --nsw-text-light: var(--nsw-palette-white);
10
- --nsw-focus: var(--nsw-palette-focus);
11
- --nsw-text-hover: var(--nsw-palette-hover);
12
- --nsw-text-hover-light: var(--nsw-palette-hover-light);
10
+
11
+ --nsw-text-hover: rgba(var(--nsw-palette-blue-01-rgb), 0.1);
12
+ --nsw-text-hover-light: rgba(var(--nsw-palette-white-rgb), 0.1);
13
+
14
+ --nsw-text-link: var(--nsw-palette-blue-01);
15
+ --nsw-text-link-hover: rgba(var(--nsw-palette-blue-01-rgb), 0.1);
16
+
13
17
  --nsw-text-visited: var(--nsw-palette-visited);
18
+ --nsw-focus: var(--nsw-palette-focus);
14
19
 
15
20
  --nsw-black: var(--nsw-palette-black);
16
21
  --nsw-white: var(--nsw-palette-white);
@@ -29,8 +34,8 @@
29
34
  --nsw-status-error: var(--nsw-palette-error-red);
30
35
  --nsw-status-error-bg: var(--nsw-palette-error-red-bg);
31
36
 
32
- --nsw-black-rgb: 0, 0, 0;
33
- --nsw-white-rgb: 255, 255, 255;
37
+ --nsw-black-rgb: var(--nsw-palette-black-rgb);
38
+ --nsw-white-rgb: var(--nsw-palette-white-rgb);
34
39
 
35
40
  /* Font */
36
41
  --nsw-font-family: 'Public Sans', sans-serif;