dvla_internal_frontend_toolkit 0.2.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (32) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE +19 -0
  3. data/README.md +7 -0
  4. data/lib/dvla_internal_frontend_toolkit/version.rb +3 -0
  5. data/lib/dvla_internal_frontend_toolkit.rb +6 -0
  6. data/vendor/assets/fonts/Inter-UI-Bold.woff +0 -0
  7. data/vendor/assets/fonts/Inter-UI-Medium.woff +0 -0
  8. data/vendor/assets/fonts/Inter-UI-Regular.woff +0 -0
  9. data/vendor/assets/fonts/dvla-icons.woff +0 -0
  10. data/vendor/assets/images/coat-of-arms-logo.svg +71 -0
  11. data/vendor/assets/images/separator.png +0 -0
  12. data/vendor/assets/images/triangle-caret-down.svg +12 -0
  13. data/vendor/assets/javascripts/stickyfill.js +6 -0
  14. data/vendor/assets/layouts/layout-dialog.html +51 -0
  15. data/vendor/assets/layouts/layout-fixed.html +50 -0
  16. data/vendor/assets/layouts/layout-fluid.html +49 -0
  17. data/vendor/assets/stylesheets/_dvla-internal-elements.scss +13 -0
  18. data/vendor/assets/stylesheets/constants/_colours.scss +80 -0
  19. data/vendor/assets/stylesheets/constants/_fonts.scss +31 -0
  20. data/vendor/assets/stylesheets/constants/_measurements.scss +1 -0
  21. data/vendor/assets/stylesheets/dvla-internal-elements-styles.min.css +1 -0
  22. data/vendor/assets/stylesheets/dvla-internal-elements-styles.scss +2 -0
  23. data/vendor/assets/stylesheets/elements/_buttons.scss +148 -0
  24. data/vendor/assets/stylesheets/elements/_forms.scss +50 -0
  25. data/vendor/assets/stylesheets/elements/_layout.scss +250 -0
  26. data/vendor/assets/stylesheets/elements/_lists.scss +56 -0
  27. data/vendor/assets/stylesheets/elements/_navigation.scss +72 -0
  28. data/vendor/assets/stylesheets/elements/_tables.scss +155 -0
  29. data/vendor/assets/stylesheets/elements/_tabs.scss +105 -0
  30. data/vendor/assets/stylesheets/elements/_typography.scss +120 -0
  31. data/vendor/assets/stylesheets/elements/_validation.scss +59 -0
  32. metadata +118 -0
@@ -0,0 +1,2 @@
1
+ @import "dvla-internal-elements";
2
+ @import "../../../app/assets/sass/styleguide";
@@ -0,0 +1,148 @@
1
+ @mixin button() {
2
+ border-left: 0;
3
+ border-right: 0;
4
+ border-top: 0;
5
+ border-style: solid;
6
+ text-decoration: none;
7
+ line-height: normal;
8
+
9
+ &:active, &:focus {
10
+ outline: 3px solid $focus-colour;
11
+ }
12
+
13
+ &:disabled {
14
+ opacity: 0.5;
15
+
16
+ &:hover {
17
+ cursor: not-allowed;
18
+ }
19
+ }
20
+ }
21
+
22
+ .btn {
23
+ @include button();
24
+ font-size: 15px;
25
+ padding: 8px 14px;
26
+ }
27
+
28
+ .btn-sml {
29
+ @include button();
30
+ font-size: 14px;
31
+ padding: 6.5px 12px;
32
+ }
33
+
34
+ .btn-lrg {
35
+ @include button();
36
+ font-size: 16px;
37
+ padding: 10px 16px;
38
+ }
39
+
40
+ .btn-primary {
41
+ color: white;
42
+ background: $primary;
43
+ border-bottom: 2px solid $primary-darkest;
44
+ cursor: pointer;
45
+
46
+ &:hover, &:focus {
47
+ background: $primary-dark;
48
+ color: white;
49
+
50
+ &:disabled {
51
+ background: $primary;
52
+ }
53
+ }
54
+
55
+ &:visited {
56
+ color: white;
57
+ }
58
+
59
+ }
60
+
61
+ .btn-secondary {
62
+ color: $primary;
63
+ background: $grey-4;
64
+ border: 1px solid $grey-2;
65
+ border-bottom-width: 2px;
66
+ cursor: pointer;
67
+
68
+ &:hover, &:focus {
69
+ background: $grey-3;
70
+ color: $primary;
71
+
72
+ &:disabled {
73
+ background: $grey-3;
74
+ }
75
+ }
76
+
77
+ &:visited {
78
+ color: $primary;
79
+ }
80
+ }
81
+
82
+ .btn-refresh {
83
+ position: relative;
84
+ padding-left: 47.3px;
85
+ padding-top: 10.6px;
86
+ padding-bottom: 11.4px;
87
+
88
+ &:before {
89
+ font-family: $icon-font;
90
+ content: "\e906";
91
+ font-size: 16px;
92
+ position: absolute;
93
+ left: 16px;
94
+ top: 12px;
95
+ width: 16px;
96
+ height: 16px;
97
+ }
98
+ }
99
+
100
+ .btn-spacer-right{
101
+ margin-right: 32px;
102
+ }
103
+
104
+ .btn-spacer-left{
105
+ margin-left: 32px;
106
+ }
107
+ .btn-spacer-top{
108
+ margin-top: 32px;
109
+ }
110
+
111
+ .btn-spacer-bottom{
112
+ margin-bottom: 32px;
113
+ }
114
+
115
+ .btn-back{
116
+ padding-left: 16px;
117
+ color: $text-primary-colour;
118
+ display: inline-block;
119
+ margin-top: 16px;
120
+ position: relative;
121
+ border-bottom: 1px solid $text-primary-colour;
122
+ text-decoration: none;
123
+
124
+ &::before{
125
+ content: '';
126
+ display: block;
127
+ width: 0;
128
+ height: 0;
129
+ border-top: 5px solid rgba(0, 0, 0, 0);
130
+ border-right: 6px solid $text-primary-colour;
131
+ border-bottom: 5px solid rgba(0, 0, 0, 0);
132
+ position: absolute;
133
+ left: 0;
134
+ top: 50%;
135
+ margin-top: -6px;
136
+
137
+ }
138
+
139
+ &:hover{
140
+ cursor: pointer;
141
+ color: $text-primary-colour;
142
+ }
143
+ &:visited{
144
+ color: $text-primary-colour;
145
+ }
146
+
147
+
148
+ }
@@ -0,0 +1,50 @@
1
+ .form-control {
2
+ width: 100%;
3
+ border-radius: 0;
4
+ -webkit-appearance: none;
5
+ -moz-appearance: none;
6
+ appearance: none;
7
+
8
+ &::-ms-expand{
9
+ display: none;
10
+ }
11
+
12
+ &.form-control-1-2 {
13
+ width: 50%;
14
+ }
15
+ }
16
+
17
+
18
+ select {
19
+ height: 40px;
20
+ border: 2px solid $grey-2;
21
+ font-size: inherit;
22
+ border-radius: 0px;
23
+ background-image: url('/images/triangle-caret-down.svg');
24
+ background-repeat: no-repeat;
25
+ background-size: 28px 12px;
26
+ background-position: right center;
27
+ padding-left: 16px;
28
+ }
29
+
30
+ textarea{
31
+ resize: none;
32
+ height: 144px;
33
+ border: 2px solid $grey-2;
34
+ margin-bottom: 24px;
35
+ }
36
+
37
+ .textarea-title{
38
+ font-weight: bold;
39
+ margin-bottom: 8px;
40
+ }
41
+
42
+ .textarea-playback-date{
43
+ text-align: right;
44
+ }
45
+
46
+ .textarea-playback{
47
+ background-color: #f7f7f7;
48
+ height: 120px;
49
+ padding: 24px 24px;
50
+ }
@@ -0,0 +1,250 @@
1
+ html {
2
+ font-family: $primary-font;
3
+ }
4
+
5
+ body {
6
+ width: 100%;
7
+ margin: 0 auto;
8
+ background: $grey-4;
9
+ height:100%;
10
+ }
11
+
12
+
13
+ #global-header {
14
+ display: block;
15
+ position: sticky;
16
+ left: 0;
17
+ top: 0;
18
+ width: 100%;
19
+ z-index: 10;
20
+ background: white;
21
+
22
+ #global-header-bar {
23
+ width: 944px;
24
+ max-width: calc(100% - 32px);
25
+ height: 8px;
26
+ margin: 0 auto;
27
+ background: $primary-lighter;
28
+ }
29
+
30
+ #global-header-tabs{
31
+ display: block;
32
+ width: 100%;
33
+ background-color: $grey-4;
34
+ line-height: 48px;
35
+ margin: 0 auto;
36
+ border: 1px solid $grey-2;
37
+
38
+ li{
39
+ display: inline-block;
40
+ padding: 0 32px;
41
+ list-style: none;
42
+ font-weight: bold;
43
+
44
+ &:hover{
45
+ cursor: pointer;
46
+ }
47
+
48
+ &:active, &.active{
49
+ color: $primary;
50
+ border-bottom: 2px solid $primary;
51
+ }
52
+ }
53
+ }
54
+ }
55
+
56
+ #header-wrapper {
57
+ padding: 0.5em 0 0.5em 0;
58
+ display: block;
59
+ width: 100%;
60
+ background: $primary;
61
+ color: white;
62
+ height: 2em;
63
+ box-sizing: content-box;
64
+
65
+ #header-contents {
66
+ clear: both;
67
+ margin: 0 auto;
68
+ width: 944px;
69
+ max-width: calc(100% - 32px);
70
+
71
+ // @media screen and (max-width: 1023px) {
72
+ // width: 960px;
73
+ // // max-width: calc(100% - 32px);
74
+ // }
75
+
76
+ @media screen and (min-width: 1024px) {
77
+ width: 100%;
78
+ padding: 0 40px;
79
+ }
80
+ }
81
+ }
82
+
83
+ #header-float-left {
84
+ // position: absolute;
85
+ // left: 2.5em;
86
+ float: left;
87
+ }
88
+
89
+ #header-float-right {
90
+ // position: absolute;
91
+ // right: 2.5em;
92
+ float: right;
93
+ }
94
+
95
+ #header-logo {
96
+
97
+ #coat-of-arms {
98
+ float: left;
99
+ margin-right: 1.5em;
100
+ background-image: url('/images/coat-of-arms-logo.svg');
101
+ background-repeat: no-repeat;
102
+ width: 36px;
103
+ height: 32px;
104
+ float: left;
105
+ }
106
+
107
+ a {
108
+ text-decoration: none;
109
+
110
+ .name {
111
+ float: left;
112
+ font-size: 28px;
113
+ line-height: 32px;
114
+ letter-spacing: 0.8;
115
+ color: white;
116
+ font-weight: bold;
117
+
118
+ &:hover {
119
+ text-decoration: underline;
120
+ }
121
+
122
+ &:visited {
123
+ color: white;
124
+ }
125
+ }
126
+ }
127
+ }
128
+
129
+ #user-account {
130
+ #user-account-email {
131
+ line-height: 32px;
132
+ font-size: 16px;
133
+ float: right;
134
+
135
+ &:after {
136
+ content: ':';
137
+ }
138
+ }
139
+
140
+ #logout {
141
+ margin-left: 24px;
142
+ line-height: 32px;
143
+ font-size: 16px;
144
+ float: right;
145
+
146
+ a {
147
+ color: white;
148
+
149
+ &:hover {
150
+ text-decoration: none;
151
+ }
152
+
153
+ &:visited {
154
+ color: white;
155
+ }
156
+ }
157
+ }
158
+ }
159
+
160
+ *, *::before, *::after {
161
+ box-sizing: inherit;
162
+ }
163
+
164
+ div {
165
+ margin: 0;
166
+ padding: 0;
167
+ border: 0;
168
+ font-size: 100%;
169
+ font: inherit;
170
+ vertical-align: baseline;
171
+ }
172
+
173
+ #content {
174
+ margin: 0 auto;
175
+ padding-bottom: 2em;
176
+ // margin-top: 3em;
177
+ background: white;
178
+
179
+ &.has-bar{
180
+ // margin-top: 3.5em;
181
+ }
182
+ }
183
+
184
+ @mixin container() {
185
+ box-sizing: border-box;
186
+ max-width: calc(100% - 16px);
187
+ margin: 0 auto;
188
+ // padding: 0 8px;
189
+ width: 960px;
190
+ min-height: 1px;
191
+ }
192
+
193
+ .container {
194
+ @include container();
195
+ }
196
+
197
+ .container-fluid {
198
+ @include container();
199
+
200
+ @media screen and (min-width: 1024px) {
201
+ width: 100%;
202
+ padding: 0 32px;
203
+ }
204
+ }
205
+
206
+ .container-dialog{
207
+ box-sizing: border-box;
208
+ background: $grey-4;
209
+ min-height: calc(100% - 3.5em);
210
+ width: 100%;
211
+ padding-top: 3.5em;
212
+
213
+ @media screen and (max-width: 672px) {
214
+ padding-top: 0.5em;
215
+ }
216
+
217
+ .dialog{
218
+ padding: 32px;
219
+ width: calc(100% - 32px);
220
+ max-width: 640px;
221
+ margin: 0 auto;
222
+ background: white;
223
+ border-radius: 4px;
224
+ box-shadow: 0px 1px 3px 2px $grey-3;
225
+ margin-bottom: -2em;
226
+ }
227
+ }
228
+
229
+ .row {
230
+ // margin: 0 -8px;
231
+ //clear: both;
232
+ box-sizing: border-box;
233
+ font-size: 0;
234
+ }
235
+
236
+ @mixin col($ratio) {
237
+ width: percentage($ratio);
238
+ position: relative;
239
+ min-height: 1px;
240
+ padding: 0 8px;
241
+ display: inline-block;
242
+ vertical-align: top;
243
+ font-size: $normal-font-size;
244
+ }
245
+
246
+ @for $i from 1 through 12 {
247
+ .col-#{$i} {
248
+ @include col($i / 12);
249
+ }
250
+ }
@@ -0,0 +1,56 @@
1
+ .list {
2
+ width: 100%;
3
+ color: $black;
4
+ margin-bottom: 40px;
5
+
6
+ .list-title-row {
7
+ border-bottom: 2px solid $grey-2;
8
+ box-sizing: border-box;
9
+ height: 40px;
10
+ display: flex;
11
+
12
+ .list-title {
13
+ font-weight: bold;
14
+ font-size: 20px;
15
+ flex: 1 1 50%;
16
+ }
17
+
18
+ .list-change {
19
+ flex: 1 1 50%;
20
+ text-align: right;
21
+ font-weight: bold;
22
+ color: $primary;
23
+
24
+ a {
25
+ &:visited {
26
+ color: $primary;
27
+ }
28
+
29
+ &:hover {
30
+ color: $primary-darker;
31
+ }
32
+ }
33
+ }
34
+
35
+ }
36
+
37
+ .list-row {
38
+ padding: 16px;
39
+ border-bottom: 1px solid $grey-2;
40
+ font-size: 16px;
41
+ display: flex;
42
+
43
+ .list-property {
44
+ min-height: 16px;
45
+ flex: 1 1 50%;
46
+ }
47
+
48
+ .list-data {
49
+ font-weight: bold;
50
+ min-height: 16px;
51
+ flex: 1 1 50%;
52
+ }
53
+
54
+ }
55
+
56
+ }
@@ -0,0 +1,72 @@
1
+ .breadcrumbs {
2
+
3
+ ol {
4
+ list-style-type: none;
5
+ padding: 0 8px;
6
+
7
+ li {
8
+ display: inline-block;
9
+
10
+ &:first-child {
11
+ background-image: none;
12
+ margin-left: 0;
13
+ padding-left: 0;
14
+ }
15
+
16
+ background-image: url('/images/separator.png');
17
+ background-position: 0% 50%;
18
+ background-repeat: no-repeat;
19
+ margin-left: 1em;
20
+ padding-left: 1.5em;
21
+ }
22
+ }
23
+
24
+ a {
25
+ color: $black;
26
+ text-decoration: underline;
27
+
28
+ &:visited {
29
+ color: $black;
30
+ }
31
+
32
+ &:hover {
33
+ color: black;
34
+ text-decoration: none;
35
+ }
36
+ }
37
+ }
38
+
39
+ .side-bar{
40
+ position: fixed;
41
+ left: 0px;
42
+ top: 56px;
43
+ width: 208px;
44
+ height:100%;
45
+ background-color: $grey-4;
46
+ border-right: 1px solid $grey-2;
47
+ margin-top: -8px;
48
+
49
+ ul{
50
+ padding: 0px;
51
+
52
+ li{
53
+ list-style: none;
54
+ padding-left: 40px;
55
+ line-height: 40px;
56
+ font-weight: bold;
57
+
58
+ &:hover{
59
+ cursor: pointer;
60
+ background-color: $primary-lightest;
61
+ text-decoration: underline;
62
+ }
63
+
64
+ &:active, &.active{
65
+ color: $primary;
66
+ border-left: 8px solid $primary;
67
+ padding-left: 32px;
68
+ background-color: $primary-lightest;
69
+ }
70
+ }
71
+ }
72
+ }