bullet_train-themes-light 1.0.16 → 1.0.17

Sign up to get free protection for your applications and to get access to all the features.
Files changed (28) hide show
  1. checksums.yaml +4 -4
  2. data/app/assets/stylesheets/light/application.css +2 -1
  3. data/app/assets/stylesheets/light/fields/cloudinary_image.css +3 -3
  4. data/app/assets/stylesheets/light/fields/date_field.css +4 -4
  5. data/app/assets/stylesheets/light/fields/super_select.css +4 -4
  6. data/app/assets/stylesheets/light/fields/trix_editor.css +3 -3
  7. data/app/assets/stylesheets/light/tailwind/colors.css +100 -0
  8. data/app/assets/stylesheets/light/tailwind/components.css +3 -3
  9. data/app/assets/stylesheets/light/tailwind/dark-mode.css +43 -42
  10. data/app/assets/stylesheets/light/tailwind/utilities.css +4 -4
  11. data/app/views/themes/light/_alert.html.erb +4 -4
  12. data/app/views/themes/light/_box.html.erb +4 -4
  13. data/app/views/themes/light/_breadcrumb.html.erb +1 -1
  14. data/app/views/themes/light/_cell.html.erb +1 -1
  15. data/app/views/themes/light/_decision_line.html.erb +1 -1
  16. data/app/views/themes/light/_line.html.erb +1 -1
  17. data/app/views/themes/light/conversations/_card.html.erb +1 -1
  18. data/app/views/themes/light/conversations/_message.html.erb +3 -3
  19. data/app/views/themes/light/fields/_field.html.erb +2 -2
  20. data/app/views/themes/light/layouts/_account.html.erb +14 -14
  21. data/app/views/themes/light/layouts/_devise.html.erb +2 -2
  22. data/app/views/themes/light/menu/_heading.html.erb +1 -1
  23. data/app/views/themes/light/menu/_item.html.erb +2 -2
  24. data/app/views/themes/light/workflow/_box.html.erb +1 -1
  25. data/lib/bullet_train/themes/light/version.rb +1 -1
  26. data/lib/bullet_train/themes/light.rb +4 -1
  27. data/tailwind.light.config.js +30 -31
  28. metadata +3 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: c894ca9d694b40fc09d718ed4df9cfa7707b0b6d25bbecce941d61e7c79933a2
4
- data.tar.gz: 2053560561e35dce564f5f7b4bcd4cb4ff2f1f0d62869a1a20cc18a6083f6599
3
+ metadata.gz: af3bd83c524618c1e2af49fb0c4510c926a84ab527d6a88250d5a4fe3c298301
4
+ data.tar.gz: f71167e71cb143c81596a2399f380c1c47fb239ff5bb7cd12050e26e453dc017
5
5
  SHA512:
6
- metadata.gz: c41a5c20cf57df1fa05d5554bb698702eb67da1e7d95440a2724a234506bf4cac4c58e68c3f927a4b3300fab491b8ac8cd2cb355805fce90545c5b14de755ad0
7
- data.tar.gz: fb1275c9738b30c67faf53eddc51e0e2aafb230081d441419d1fdf118acea83c91a9bcea2f96c3479994771343f16f217f61233aded0f02258230cba01dc47d1
6
+ metadata.gz: 1b63d73ecb854a1a40c634a0e0d658ba205a16b022a66187db59352e3726a34660900740cb9e23d221cd7e5a9460319851a838d587f4db4f553c8c07c1dbc7cc
7
+ data.tar.gz: 6fa79adde7523e4caabde4f72d53175d75ce699279e3ee294c964ba9e83646dcdf4e81c7d1a9b359e91135e4b3faeb9b85ed967f49198b9b9460426358f3a0a3
@@ -1,6 +1,7 @@
1
1
  @import "./tailwind/components";
2
2
  @import "./tailwind/utilities";
3
3
  @import "./tailwind/dark-mode";
4
+ @import "./tailwind/colors";
4
5
 
5
6
  @import "./electron";
6
7
  @import './fields';
@@ -22,7 +23,7 @@ form.button_to {
22
23
  input[type=submit] {
23
24
  @apply bg-transparent;
24
25
  &.button {
25
- @apply bg-blue hover:bg-blue-dark;
26
+ @apply bg-primary-500 hover:bg-primary-600;
26
27
  }
27
28
  }
28
29
  }
@@ -36,7 +36,7 @@
36
36
  vertical-align: -7px;
37
37
  &:focus, &:active {
38
38
  i {
39
- color: #047bf8;
39
+ color: var(--primary-500);
40
40
  }
41
41
  }
42
42
  }
@@ -49,9 +49,9 @@
49
49
  }
50
50
  }
51
51
  &:focus, &:active {
52
- border-color: #047bf8;
52
+ border-color: var(--primary-500);
53
53
  i {
54
- color: #047bf8;
54
+ color: var(--primary-500);
55
55
  }
56
56
  }
57
57
  }
@@ -1,19 +1,19 @@
1
1
  @layer components {
2
2
  .date-input {
3
3
  .single-daterange {
4
- @apply rounded-md shadow-sm focus:ring-blue focus:border-blue font-light text-sm;
4
+ @apply rounded-md shadow-sm focus:ring-primary-500 focus:border-primary-500 font-light text-sm;
5
5
  }
6
6
  }
7
7
 
8
8
  .daterangepicker {
9
9
  .hourselect, .minuteselect, .ampmselect {
10
- @apply rounded-md shadow-sm focus:ring-blue font-light;
11
- @apply border-gray-300 focus:border-blue bg-white !important;
10
+ @apply rounded-md shadow-sm focus:ring-primary-500 font-light;
11
+ @apply border-gray-300 focus:border-primary-500 bg-white !important;
12
12
  text-align-last: center;
13
13
  }
14
14
 
15
15
  .calendar-table .active {
16
- @apply bg-blue !important;
16
+ @apply bg-primary-500 !important;
17
17
  }
18
18
  }
19
19
  }
@@ -44,14 +44,14 @@
44
44
  }
45
45
 
46
46
  .select2-border {
47
- @apply border-blue !important;
48
- box-shadow: inset 0 0 0 1px #047bf8 !important;
47
+ @apply border-primary-500 !important;
48
+ box-shadow: inset 0 0 0 1px var(--primary-500) !important;
49
49
  outline: 0 !important;
50
50
  }
51
51
 
52
52
  .select2-selection--single, .select2-selection--multiple {
53
53
  @apply border-gray-300;
54
- @apply rounded-md shadow-sm pt-0 focus:ring-blue !important;
54
+ @apply rounded-md shadow-sm pt-0 focus:ring-primary-500 !important;
55
55
  height: 38px !important;
56
56
 
57
57
  &.focus-visible {
@@ -89,7 +89,7 @@
89
89
  }
90
90
 
91
91
  .select2-container--default .select2-results__option[aria-selected=true] {
92
- @apply text-white bg-blue !important;
92
+ @apply text-white bg-primary-500 !important;
93
93
  }
94
94
 
95
95
  .select2-search__field {
@@ -32,7 +32,7 @@ a[href^="bullettrain://users"], a[href^="bullettrain://teams"], span.tribute-use
32
32
  border-radius: 5px;
33
33
  overflow: hidden;
34
34
  box-sizing: border-box;
35
- border: 2px solid #047bf8;
35
+ border: 2px solid var(--primary-500);
36
36
  background: white;
37
37
  list-style: none;
38
38
  padding: 0;
@@ -78,8 +78,8 @@ trix-editor {
78
78
  padding-left: 0.75rem;
79
79
  @apply shadow-sm border-gray-300 font-light rounded-md;
80
80
  &:focus, &:active {
81
- border-color: #047bf8;
82
- box-shadow: inset 0 0 0 1px #047bf8;
81
+ border-color: var(--primary-500);
82
+ box-shadow: inset 0 0 0 1px var(--primary-500);
83
83
  }
84
84
  }
85
85
 
@@ -0,0 +1,100 @@
1
+ :root, .theme-blue {
2
+ --primary-300: #95acff;
3
+ --primary-400: #448eef;
4
+ --primary-500: #047bf8;
5
+ --primary-600: #0362c6;
6
+ --primary-700: #1c4cc3;
7
+ --primary-800: #0e369a;
8
+ --primary-900: #00369D;
9
+
10
+ --dark-primary-300: #ccd9e8;
11
+ --dark-primary-400: #9facc7;
12
+ --dark-primary-500: #777E94;
13
+ --dark-primary-600: #4D566F;
14
+ --dark-primary-700: #323c58;
15
+ --dark-primary-800: #2b344e;
16
+ --dark-primary-900: #232942;
17
+
18
+ --dark-accent-200: #b3bcde;
19
+
20
+ --light-gradient-from: #D7BBEA;
21
+ --light-gradient-to: #65A8F1;
22
+ --dark-gradient-from: #633d7d;
23
+ --dark-gradient-to: #2867ab;
24
+ }
25
+
26
+ .theme-purple {
27
+ --primary-300: #ac95ff;
28
+ --primary-400: #8e44ef;
29
+ --primary-500: #7b04f8;
30
+ --primary-600: #6203c6;
31
+ --primary-700: #4c1cc3;
32
+ --primary-800: #360e9a;
33
+ --primary-900: #36009D;
34
+
35
+ --dark-primary-300: #d9cce8;
36
+ --dark-primary-400: #ac9fc7;
37
+ --dark-primary-500: #7E7794;
38
+ --dark-primary-600: #564D6F;
39
+ --dark-primary-700: #3c3258;
40
+ --dark-primary-800: #342b4e;
41
+ --dark-primary-900: #292342;
42
+
43
+ --dark-accent-200: #bcb3de;
44
+
45
+ --light-gradient-from: #EABBD7;
46
+ --light-gradient-to: #A865F1;
47
+ --dark-gradient-from: #7d3d63;
48
+ --dark-gradient-to: #6728ab;
49
+ }
50
+
51
+ .theme-orange {
52
+ --primary-300: #ffac95;
53
+ --primary-400: #ef8e44;
54
+ --primary-500: #f87b04;
55
+ --primary-600: #c66203;
56
+ --primary-700: #c34c1c;
57
+ --primary-800: #9a360e;
58
+ --primary-900: #9D3600;
59
+
60
+ /* TOOD Kind of yuck? */
61
+ --dark-primary-300: #e8d9cc;
62
+ --dark-primary-400: #c7ac9f;
63
+ --dark-primary-500: #947E77;
64
+ --dark-primary-600: #6F564D;
65
+ --dark-primary-700: #583c32;
66
+ --dark-primary-800: #4e342b;
67
+ --dark-primary-900: #422923;
68
+
69
+ --dark-accent-200: #debcb3;
70
+
71
+ --light-gradient-from: #EABBD7;
72
+ --light-gradient-to: #F1A865;
73
+ --dark-gradient-from: #7d3d63;
74
+ --dark-gradient-to: #ab6728;
75
+ }
76
+
77
+ .theme-pink {
78
+ --primary-300: #ff95ac;
79
+ --primary-400: #ef448e;
80
+ --primary-500: #f8047b;
81
+ --primary-600: #c60362;
82
+ --primary-700: #c31c4c;
83
+ --primary-800: #9a0e36;
84
+ --primary-900: #9D0036;
85
+
86
+ --dark-primary-300: #d9cce8;
87
+ --dark-primary-400: #ac9fc7;
88
+ --dark-primary-500: #7E7794;
89
+ --dark-primary-600: #564D6F;
90
+ --dark-primary-700: #3c3258;
91
+ --dark-primary-800: #342b4e;
92
+ --dark-primary-900: #292342;
93
+
94
+ --dark-accent-200: #bcb3de;
95
+
96
+ --light-gradient-from: #D7BBEA;
97
+ --light-gradient-to: #F165A8;
98
+ --dark-gradient-from: #6728ab;
99
+ --dark-gradient-to: #633d7d;
100
+ }
@@ -1,6 +1,6 @@
1
1
  @layer components {
2
2
  a {
3
- @apply text-blue hover:text-blue-dark hover:underline;
3
+ @apply text-primary-500 hover:text-primary-600 hover:underline;
4
4
  }
5
5
 
6
6
  b, strong {
@@ -12,11 +12,11 @@
12
12
  }
13
13
 
14
14
  .button {
15
- @apply shadow-sm text-white hover:text-white bg-blue hover:bg-blue-dark focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-blue-dark hover:no-underline;
15
+ @apply shadow-sm text-white hover:text-white bg-primary-500 hover:bg-primary-600 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-primary-600 hover:no-underline;
16
16
  }
17
17
 
18
18
  .button-secondary {
19
- @apply text-blue hover:text-blue-dark hover:underline;
19
+ @apply text-primary-500 hover:text-primary-600 hover:underline;
20
20
  }
21
21
 
22
22
  .button, .button-secondary, .button-alternative {
@@ -3,34 +3,35 @@
3
3
  /**
4
4
  * Color overrides
5
5
  **/
6
- .bg-blue-darker {
6
+ .bg-primary-900 {
7
+ /* TODO We can't really do this. We need to just append a transparency class to these elements. */
7
8
  background-color: rgba(0, 0, 0, 0.15);
8
9
  }
9
10
 
10
- .bg-dark-blue-gradient {
11
+ .bg-dark-gradient {
11
12
  &:before {
12
- background: linear-gradient(to bottom right, #633d7d, #2867ab 100%);
13
+ background: linear-gradient(to bottom right, var(--dark-gradient-from), var(--dark-gradient-to) 100%);
13
14
  }
14
- background: linear-gradient(to bottom right, #633d7d, #2867ab 100%);
15
+ background: linear-gradient(to bottom right, var(--dark-gradient-from), var(--dark-gradient-to) 100%);
15
16
  }
16
17
 
17
18
  /**
18
19
  * General
19
20
  **/
20
21
  .button {
21
- @apply ring-offset-sealBlue-400;
22
+ @apply ring-offset-darkPrimary-700;
22
23
  }
23
24
 
24
25
  .table {
25
26
  th {
26
- @apply text-sealBlue-700;
27
+ @apply text-darkPrimary-400;
27
28
  }
28
29
 
29
30
  tbody {
30
31
  @apply border-gray-500;
31
32
 
32
33
  tr {
33
- border-top: 1px solid theme('colors.sealBlue.600');
34
+ border-top: 1px solid theme('colors.darkPrimary.500');
34
35
  }
35
36
 
36
37
  td {
@@ -38,7 +39,7 @@
38
39
 
39
40
  a,
40
41
  input[type="submit"] {
41
- @apply text-sealBlue-800;
42
+ @apply text-darkAccent-200;
42
43
  }
43
44
  }
44
45
  }
@@ -48,7 +49,7 @@
48
49
  * Form components
49
50
  **/
50
51
  .button-secondary {
51
- @apply text-sealBlue-800;
52
+ @apply text-darkAccent-200;
52
53
  }
53
54
 
54
55
  .button-alternative {
@@ -64,94 +65,94 @@
64
65
  **/
65
66
  /* Color picker */
66
67
  .pcr-app {
67
- @apply bg-sealBlue-300 border border-solid border-sealBlue-100;
68
+ @apply bg-darkPrimary-800 border border-solid border-darkPrimary-900;
68
69
 
69
70
  .pcr-interaction .pcr-result {
70
- @apply text-sealBlue-900 border border-solid border-sealBlue-100 bg-sealBlue-300;
71
+ @apply text-darkPrimary-300 border border-solid border-darkPrimary-900 bg-darkPrimary-800;
71
72
 
72
73
  &:focus {
73
- box-shadow: 0 0 0 1px theme('colors.blue.500'), 0 0 0 3px theme('colors.blue.500');
74
+ box-shadow: 0 0 0 1px theme('colors.primary.500'), 0 0 0 3px theme('colors.primary.500');
74
75
  }
75
76
  }
76
77
  }
77
78
 
78
79
  /* Date range picker */
79
80
  .daterangepicker {
80
- @apply bg-sealBlue-300 border-sealBlue-100;
81
+ @apply bg-darkPrimary-800 border-darkPrimary-900;
81
82
 
82
83
  &::before {
83
- border-bottom-color: theme('colors.sealBlue.100');
84
+ border-bottom-color: theme('colors.darkPrimary.900');
84
85
  }
85
86
 
86
87
  &::after {
87
- border-bottom-color: theme('colors.sealBlue.300');
88
+ border-bottom-color: theme('colors.darkPrimary.800');
88
89
  }
89
90
 
90
91
  .calendar-table {
91
- @apply bg-sealBlue-300 text-sealBlue-900;
92
+ @apply bg-darkPrimary-800 text-darkPrimary-300;
92
93
 
93
94
  /* navigation arrows */
94
95
  .available {
95
96
  span {
96
- @apply border-blue-500;
97
+ @apply border-primary-500;
97
98
  }
98
99
  }
99
100
  }
100
101
 
101
102
  /* Clear and Apply buttons wrapper */
102
103
  .drp-buttons {
103
- border-top-color: theme('colors.sealBlue.100');
104
- @apply text-sealBlue-900;
104
+ border-top-color: theme('colors.darkPrimary.900');
105
+ @apply text-darkPrimary-300;
105
106
  }
106
107
 
107
108
  th {
108
109
  &.available:hover {
109
- @apply bg-sealBlue-500;
110
+ @apply bg-darkPrimary-600;
110
111
  }
111
112
  }
112
113
 
113
114
  td {
114
115
  &.off {
115
- @apply bg-sealBlue-300 text-white;
116
+ @apply bg-darkPrimary-800 text-white;
116
117
  }
117
118
 
118
119
  &.available:hover {
119
- @apply bg-sealBlue-500;
120
+ @apply bg-darkPrimary-600;
120
121
  }
121
122
  }
122
123
 
123
124
  .hourselect, .minuteselect, .ampmselect {
124
- @apply text-sealBlue-900 border-sealBlue-100 bg-sealBlue-300 !important;
125
+ @apply text-darkPrimary-300 border-darkPrimary-900 bg-darkPrimary-800 !important;
125
126
  }
126
127
  }
127
128
 
128
129
  /* Phone field */
129
130
  .iti__country-list {
130
- @apply bg-sealBlue-300 border border-solid border-sealBlue-100;
131
+ @apply bg-darkPrimary-800 border border-solid border-darkPrimary-900;
131
132
  }
132
133
 
133
134
  /* Select2 */
134
135
  .select2-container {
135
136
  .select2-selection__rendered {
136
- @apply text-sealBlue-900 !important;
137
+ @apply text-darkPrimary-300 !important;
137
138
  }
138
139
 
139
140
  .select2-dropdown {
140
- @apply bg-sealBlue-400;
141
+ @apply bg-darkPrimary-700;
141
142
  }
142
143
 
143
144
  .select2-search__field {
144
- @apply bg-sealBlue-300 border-sealBlue-100 !important;
145
+ @apply bg-darkPrimary-800 border-darkPrimary-900 !important;
145
146
  }
146
147
 
147
148
  .select2-selection--multiple, .select2-selection--single {
148
- @apply bg-sealBlue-300 focus:ring-blue border-sealBlue-100 !important;
149
- @apply text-sealBlue-900;
149
+ @apply bg-darkPrimary-800 focus:ring-primary-500 border-darkPrimary-900 !important;
150
+ @apply text-darkPrimary-300;
150
151
  }
151
152
 
152
153
  /* For the selected options in the multiple select2 component */
153
154
  .select2-selection__choice {
154
- @apply bg-blue-500 border-blue-500 !important;
155
+ @apply bg-primary-500 border-primary-500 !important;
155
156
  @apply text-white;
156
157
 
157
158
  .select2-selection__choice__remove {
@@ -164,48 +165,48 @@
164
165
  }
165
166
 
166
167
  .select2-results__option {
167
- @apply text-sealBlue-900;
168
+ @apply text-darkPrimary-300;
168
169
  }
169
170
  }
170
171
 
171
172
  /* Trix Editor */
172
173
  trix-editor {
173
- @apply bg-sealBlue-300 border-sealBlue-100 !important;
174
+ @apply bg-darkPrimary-800 border-darkPrimary-900 !important;
174
175
 
175
176
  &:focus, &:active {
176
- @apply border-blue !important;
177
+ @apply border-primary-500 !important;
177
178
  }
178
179
  }
179
180
 
180
181
  trix-toolbar {
181
182
  .trix-button-group, .trix-button {
182
- @apply border-sealBlue-100 !important;
183
+ @apply border-darkPrimary-900 !important;
183
184
  }
184
185
  }
185
186
 
186
187
  .tribute-container {
187
188
  ul {
188
- @apply bg-sealBlue-300 border-sealBlue-100 !important;
189
+ @apply bg-darkPrimary-800 border-darkPrimary-900 !important;
189
190
  }
190
191
  }
191
192
 
192
193
  .trix-dialogs {
193
- @apply bg-sealBlue-300 border-sealBlue-100 !important;
194
+ @apply bg-darkPrimary-800 border-darkPrimary-900 !important;
194
195
  }
195
196
 
196
197
  .trix-content {
197
198
  a[href^="bullettrain://"] {
198
- @apply bg-sealBlue-600 text-white;
199
+ @apply bg-darkPrimary-500 text-white;
199
200
  }
200
201
  }
201
202
 
202
203
  /* CKEditor */
203
204
  .ck {
204
- --ck-color-base-background: theme('colors.sealBlue.300');
205
- --ck-color-base-border: theme('colors.sealBlue.100');
206
- --ck-color-toolbar-background: theme('colors.sealBlue.200');
207
- --ck-color-toolbar-border: theme('colors.sealBlue.100');
208
- --ck-color-text: theme('colors.sealBlue.900');
205
+ --ck-color-base-background: theme('colors.darkPrimary.800');
206
+ --ck-color-base-border: theme('colors.darkPrimary.900');
207
+ --ck-color-toolbar-background: theme('colors.darkPrimary.800');
208
+ --ck-color-toolbar-border: theme('colors.darkPrimary.900');
209
+ --ck-color-text: theme('colors.darkPrimary.300');
209
210
 
210
211
  .ck-editor__editable:not(.ck-editor__nested-editable) {
211
212
  @apply shadow-none;
@@ -22,20 +22,20 @@
22
22
  @apply gap-x-4;
23
23
  }
24
24
 
25
- .bg-dark-blue-gradient {
26
- background-image: linear-gradient(to bottom, #1c4cc3 0%, #0e369a 100%);
25
+ .bg-dark-gradient {
26
+ background-image: linear-gradient(to bottom, var(--primary-700) 0%, var(--primary-800) 100%);
27
27
  }
28
28
 
29
29
  .bg-dark-awesome-gradient {
30
30
  background-image: linear-gradient(to bottom right, darken(#D7BBEA, 45%) 10%, #0e369a 100%);
31
31
  }
32
32
 
33
- .bg-light-blue-gradient {
33
+ .bg-light-gradient {
34
34
  &:before {
35
35
  content: "";
36
36
  position: fixed;
37
37
  z-index: -1;
38
- background: linear-gradient(to bottom right, #D7BBEA, #65A8F1);
38
+ background: linear-gradient(to bottom right, var(--light-gradient-from), var(--light-gradient-to));
39
39
  top: 0px;
40
40
  left: 0px;
41
41
  bottom: 0px;
@@ -1,13 +1,13 @@
1
1
  <% color ||= 'yellow' %>
2
2
 
3
- <div class="rounded-md bg-<%= color %>-light border border-<%= color %> py-4 px-5 mb-3">
4
- <h3 class="text-sm text-<%= color %>-darker font-light">
3
+ <div class="rounded-md bg-<%= color %>-400 border border-<%= color %>-500 py-4 px-5 mb-3">
4
+ <h3 class="text-sm text-<%= color %>-900 font-light">
5
5
  <%= yield %>
6
6
  </h3>
7
7
  </div>
8
8
 
9
9
  <% # we have to list out the evaluations we want possible above so purgecss includes them in production. %>
10
10
  <% if false %>
11
- <div class="bg-yellow-light border-yellow text-yellow-darker"></div>
12
- <div class="bg-red-light border-red text-red-darker"></div>
11
+ <div class="bg-yellow-400 border-yellow-500 text-yellow-900"></div>
12
+ <div class="bg-red-400 border-red-500 text-red-900"></div>
13
13
  <% end %>
@@ -6,8 +6,8 @@
6
6
  <% body = p.content_for(:body) || p.content_for(:raw_body) %>
7
7
  <% pagy ||= nil %>
8
8
 
9
- <div class="<%= "bg-white rounded-md shadow dark:bg-sealBlue-400" unless no_background %> overflow-hidden">
10
- <div class="py-6 px-8 space-y-2 <%= 'border-b shadow-sm dark:border-sealBlue-500' if divider %>">
9
+ <div class="<%= "bg-white rounded-md shadow dark:bg-darkPrimary-700" unless no_background %> overflow-hidden">
10
+ <div class="py-6 px-8 space-y-2 <%= 'border-b shadow-sm dark:border-darkPrimary-600' if divider %>">
11
11
  <% if p.content_for? :title %>
12
12
  <h2 class="<%= title_size %> font-semibold dark:text-white">
13
13
  <%= p.content_for :title %>
@@ -53,13 +53,13 @@
53
53
  </div>
54
54
 
55
55
  <% if p.content_for? :footer %>
56
- <div class="py-4 px-8 bg-gray-50 border-t dark:bg-sealBlue-300 dark:border-sealBlue-500">
56
+ <div class="py-4 px-8 bg-gray-50 border-t dark:bg-darkPrimary-800 dark:border-darkPrimary-600">
57
57
  <%= p.content_for :footer %>
58
58
  </div>
59
59
  <% end %>
60
60
 
61
61
  <% if p.content_for? :raw_footer %>
62
- <div class="bg-gray-50 dark:bg-sealBlue-300">
62
+ <div class="bg-gray-50 dark:bg-darkPrimary-800">
63
63
  <%= p.content_for :raw_footer %>
64
64
  </div>
65
65
  <% end %>
@@ -15,7 +15,7 @@
15
15
 
16
16
  <% # don't link to the same page we're already on. %>
17
17
  <% if url && url != request.url %>
18
- <%= link_to label, url, class: "#{item_style} hover:text-gray-700 hover:underline dark:text-blue-300" %>
18
+ <%= link_to label, url, class: "#{item_style} hover:text-gray-700 hover:underline dark:text-primary-300" %>
19
19
  <% else %>
20
20
  <span class="<%= item_style %>"><%= label %></span>
21
21
  <% end %>
@@ -27,7 +27,7 @@
27
27
 
28
28
  <% if completion_percent %>
29
29
  <div class="mt-3 h-4 bg-gray-100 shadow-inner rounded w-full">
30
- <div class="h-4 animate-pulse bg-blue rounded" style="width: <%= completion_percent %>%"></div>
30
+ <div class="h-4 animate-pulse bg-primary-500 rounded" style="width: <%= completion_percent %>%"></div>
31
31
  </div>
32
32
  <% end %>
33
33
 
@@ -5,7 +5,7 @@
5
5
  <div class="w-full border-t border-gray-300 dark:border-gray-500"></div>
6
6
  </div>
7
7
  <div class="relative flex justify-center">
8
- <span class="px-2 bg-white text-gray-500 uppercase text-xs dark:text-gray-300 dark:bg-sealBlue-400">
8
+ <span class="px-2 bg-white text-gray-500 uppercase text-xs dark:text-gray-300 dark:bg-darkPrimary-700">
9
9
  <%= label %>
10
10
  </span>
11
11
  </div>
@@ -1,3 +1,3 @@
1
1
  <div class="border-b border-gray-200 pb-4 dark:border-gray-500" style="position: relative;">
2
- <div style="background-color: #047bf8; width: 26px; height: 4px; position: absolute; left: 0; bottom: -2px; border: 1px solid #047bf8; border-radius: 1px;"></div>
2
+ <div style="background-color: var(--primary-500); width: 26px; height: 4px; position: absolute; left: 0; bottom: -2px; border: 1px solid var(--primary-500); border-radius: 1px;"></div>
3
3
  </div>
@@ -1,6 +1,6 @@
1
1
  <% conversation ||= subscription.conversation %>
2
2
 
3
- <div class="<%= 'border-l-blue border-l-4 border-blue-700' if subscription.unread? %>">
3
+ <div class="<%= 'border-l-primary-500 border-l-4 border-primary-600' if subscription.unread? %>">
4
4
 
5
5
  <%= link_to [:account, current_user, :conversations, :subscriptions, conversation_id: subscription.conversation.id], class: "#{current_conversation ? 'bg-gray-100 border-l ' : 'bg-white'} h-28 p-1 flex border-b-2 cursor-pointer hover:no-underline hover:bg-gray-50 relative items-center" do %>
6
6
  <div class="md:w-1/4 w-1/5 lg:inline-block md:hidden flex-shrink-0">
@@ -65,9 +65,9 @@
65
65
  data-action="<%= 'mouseenter->reply#showReplyButton click->reply#showReplyButton' unless placeholder_message || show_as_thread %>" data-show-class="<%= current_user_message ? 'mr-10' : 'ml-10' %>"
66
66
  >
67
67
  <% if placeholder_message %>
68
- <div class="cursor-pointer" data-thread-url="<%= url_for([:thread, :account, message.thread_origin_message || message]) %>" data-action="click->reply#reply"><span class="px-2 py-1 text-xs text-gray-300 rounded-lg inline-block <%= rounding_modifier %> border-blue-300 border break-words sm:max-w-sm max-w-tiny"><%= Nokogiri::HTML.fragment(trix_sanitize(message.body)).text.truncate(80) %></span></div>
68
+ <div class="cursor-pointer" data-thread-url="<%= url_for([:thread, :account, message.thread_origin_message || message]) %>" data-action="click->reply#reply"><span class="px-2 py-1 text-xs text-gray-300 rounded-lg inline-block <%= rounding_modifier %> border-primary-300 border break-words sm:max-w-sm max-w-tiny"><%= Nokogiri::HTML.fragment(trix_sanitize(message.body)).text.truncate(80) %></span></div>
69
69
  <% else %>
70
- <div><span class="px-4 py-2 rounded-lg inline-block <%= rounding_modifier %> <%= current_user_message ? ' bg-blue-600 text-white' : ' bg-gray-300 text-gray-600' %> "><%= trix_sanitize(message.body) %></span></div>
70
+ <div><span class="px-4 py-2 rounded-lg inline-block <%= rounding_modifier %> <%= current_user_message ? ' bg-primary-600 text-white' : ' bg-gray-300 text-gray-600' %> "><%= trix_sanitize(message.body) %></span></div>
71
71
  <% end %>
72
72
  </div>
73
73
  <%= avatar %>
@@ -86,7 +86,7 @@
86
86
  </div>
87
87
  <% if message.replies.any? && !show_as_thread %>
88
88
  <div class="<%= 'text-right' if current_user_message %>">
89
- <button class="text-xs text-blue-400 text-right mr-12 ml-12" data-thread-url="<%= url_for([:thread, :account, message.thread_origin_message || message]) %>" data-action="reply#reply"><%= message.replies.size %> <%= t("conversations/messages.navigation.reply").pluralize(message.replies.size) %></button>
89
+ <button class="text-xs text-primary-400 text-right mr-12 ml-12" data-thread-url="<%= url_for([:thread, :account, message.thread_origin_message || message]) %>" data-action="reply#reply"><%= message.replies.size %> <%= t("conversations/messages.navigation.reply").pluralize(message.replies.size) %></button>
90
90
  </div>
91
91
  <% end %>
92
92
 
@@ -17,9 +17,9 @@ has_errors = errors.any? || content_for(:error).present? || other_options[:error
17
17
  options[:class] = "#{options[:class]} block w-full rounded-md shadow-sm font-light text-sm"
18
18
 
19
19
  options[:class] += if has_errors
20
- " pr-10 border-red text-red-darker placeholder-red focus:outline-none focus:ring-red focus:border-red dark:bg-sealBlue-300 dark:text-sealBlue-900"
20
+ " pr-10 border-red-500 text-red-900 placeholder-red-500 focus:outline-none focus:ring-red-500 focus:border-red-500 dark:bg-darkPrimary-800 dark:text-darkPrimary-300"
21
21
  else
22
- " focus:ring-blue focus:border-blue border-gray-300 dark:bg-sealBlue-300 dark:border-sealBlue-100 dark:text-sealBlue-900"
22
+ " focus:ring-primary-500 focus:border-primary-500 border-gray-300 dark:bg-darkPrimary-800 dark:border-darkPrimary-900 dark:text-darkPrimary-300"
23
23
  end
24
24
 
25
25
  %>
@@ -1,10 +1,10 @@
1
1
  <!DOCTYPE html>
2
- <html>
2
+ <html class="theme-<%= BulletTrain::Themes::Light.color %>">
3
3
  <head>
4
4
  <%= render 'themes/light/layouts/head' %>
5
5
  </head>
6
- <body class="bg-light-blue-gradient text-gray-700 text-sm font-normal dark:bg-dark-blue-gradient dark:text-sealBlue-900">
7
- <div class="p-4 bg-blue-darker electron-draggable electron-title-bar hidden electron-mobile-only"></div>
6
+ <body class="bg-light-gradient text-gray-700 text-sm font-normal dark:bg-dark-gradient dark:text-darkPrimary-300">
7
+ <div class="p-4 bg-primary-900 electron-draggable electron-title-bar hidden electron-mobile-only"></div>
8
8
  <div class="md:p-5 main-container-padding">
9
9
  <div class="h-screen md:h-auto overflow-hidden md:rounded-lg flex shadow main-container"
10
10
  data-controller="mobile-menu"
@@ -14,7 +14,7 @@
14
14
  >
15
15
 
16
16
  <% menu = capture do %>
17
- <div class="flex items-center flex-shrink-0 p-4 bg-blue-darker md:rounded-tl-lg electron-draggable electron-title-bar dark:bg-black dark:bg-opacity-10">
17
+ <div class="flex items-center flex-shrink-0 p-4 bg-primary-900 md:rounded-tl-lg electron-draggable electron-title-bar dark:bg-black dark:bg-opacity-10">
18
18
  <%= image_tag image_path("logo/logo.png"), class: 'h-5 w-auto mx-auto' %>
19
19
 
20
20
  <div class="lg:hidden absolute right-0">
@@ -40,7 +40,7 @@
40
40
  <div class="text-white">
41
41
  <%= current_user.name %>
42
42
  </div>
43
- <div class="text-2xs tracking-widest uppercase text-blue-light group-hover:text-white dark:text-gray-500">
43
+ <div class="text-2xs tracking-widest uppercase text-primary-300 group-hover:text-white dark:text-gray-500">
44
44
  <%= current_team.name %>
45
45
  </div>
46
46
  </div>
@@ -79,20 +79,20 @@
79
79
 
80
80
  class="fixed inset-0" aria-hidden="true"
81
81
  >
82
- <div class="absolute inset-0 bg-light-blue-gradient opacity-75"></div>
82
+ <div class="absolute inset-0 bg-light-gradient opacity-75"></div>
83
83
  </button>
84
84
  <div
85
85
  hidden
86
86
  data-reveal
87
87
  data-transition
88
88
  data-transition-enter="transition ease-in-out duration-200 transform"
89
- data-transition-enter-start="-translate-x-full"
90
- data-transition-enter-end="translate-x-0"
89
+ data-transition-enter-start="-trandarkPrimary-x-full"
90
+ data-transition-enter-end="trandarkPrimary-x-0"
91
91
  data-transition-leave="transition ease-in-out duration-200 transform"
92
- data-transition-leave-start="translate-x-0"
93
- data-transition-leave-end="-translate-x-full"
92
+ data-transition-leave-start="trandarkPrimary-x-0"
93
+ data-transition-leave-end="-trandarkPrimary-x-full"
94
94
 
95
- class="relative flex-1 flex flex-col max-w-xs w-full pb-4 bg-dark-blue-gradient shadow-xl"
95
+ class="relative flex-1 flex flex-col max-w-xs w-full pb-4 bg-dark-gradient shadow-xl"
96
96
  >
97
97
  <%= menu %>
98
98
  </div>
@@ -100,16 +100,16 @@
100
100
  </div>
101
101
  </div>
102
102
 
103
- <div class="hidden lg:flex lg:flex-shrink-0 overflow-y-auto bg-gradient-to-b from-vividBlue-700 to-vividBlue-800 dark:from-sealBlue-200 dark:to-sealBlue-200">
103
+ <div class="hidden lg:flex lg:flex-shrink-0 overflow-y-auto bg-gradient-to-b from-primary-700 to-primary-800 dark:from-darkPrimary-800 dark:to-darkPrimary-800">
104
104
  <div class="w-64">
105
105
  <%= menu %>
106
106
  </div>
107
107
  </div>
108
108
 
109
- <div class="flex flex-col w-0 flex-1 overflow-y-auto bg-gray-100 dark:bg-sealBlue-200 lg:border-l dark:border-gray-500">
109
+ <div class="flex flex-col w-0 flex-1 overflow-y-auto bg-gray-100 dark:bg-darkPrimary-800 lg:border-l dark:border-gray-500">
110
110
  <main class="flex-1 relative z-0 focus:outline-none" tabindex="0">
111
111
  <div class="flex flex-row items-center shadow-sm electron-draggable">
112
- <button class="mobile-menu-trigger lg:hidden h-12 w-12 ml-1 flex-none inline-flex items-center justify-center rounded-md text-gray-500 hover:text-gray-900 focus:outline-none focus:ring-2 focus:ring-inset focus:ring-blue"
112
+ <button class="mobile-menu-trigger lg:hidden h-12 w-12 ml-1 flex-none inline-flex items-center justify-center rounded-md text-gray-500 hover:text-gray-900 focus:outline-none focus:ring-2 focus:ring-inset focus:ring-blue-500"
113
113
  data-action="mobile-menu#toggle"
114
114
  >
115
115
  <span class="sr-only">Open Application Menu</span>
@@ -1,9 +1,9 @@
1
1
  <!DOCTYPE html>
2
- <html>
2
+ <html class="theme-<%= BulletTrain::Themes::Light.color %>">
3
3
  <head>
4
4
  <%= render 'themes/light/layouts/head' %>
5
5
  </head>
6
- <body class="bg-light-blue-gradient text-gray-700 text-sm font-normal electron-draggable dark:bg-dark-blue-gradient dark:text-sealBlue-900">
6
+ <body class="bg-light-gradient text-gray-700 text-sm font-normal electron-draggable dark:bg-dark-gradient dark:text-darkPrimary-300">
7
7
  <div data-turbo="false">
8
8
  <%= yield %>
9
9
  </div>
@@ -1,3 +1,3 @@
1
- <div class="text-xs py-2 uppercase tracking-wider text-blue-lightish">
1
+ <div class="text-xs py-2 uppercase tracking-wider text-primary-400">
2
2
  <%= yield %>
3
3
  </div>
@@ -3,11 +3,11 @@
3
3
  <% method ||= nil %>
4
4
  <% active ||= request.path == url %>
5
5
 
6
- <%= send (method ? :button_to : :link_to), url, class: "block group hover:text-white hover:no-underline hover-indent-child #{'bg-blue-darker dark:bg-black dark:bg-opacity-10' if active} text-white px-2 py-2 rounded-md dark:text-white", method: method do %>
6
+ <%= send (method ? :button_to : :link_to), url, class: "block group hover:text-white hover:no-underline hover-indent-child #{'bg-primary-900 dark:bg-black dark:bg-opacity-10' if active} text-white px-2 py-2 rounded-md dark:text-white", method: method do %>
7
7
  <div class="inline-block indent-child flex items-center">
8
8
  <!-- Heroicon name: home -->
9
9
  <% if p.content_for? :icon %>
10
- <span class="mr-3 h-6 w-6 text-center text-blue-light text-xl leading-6 dark:text-gray-400">
10
+ <span class="mr-3 h-6 w-6 text-center text-primary-300 text-xl leading-6 dark:text-gray-400">
11
11
  <%= p.content_for :icon %>
12
12
  </span>
13
13
  <% end %>
@@ -4,7 +4,7 @@
4
4
 
5
5
  <div class="min-h-screen flex flex-col justify-center sm:py-12">
6
6
  <div class="mx-auto w-full <%= width %> p-1.5">
7
- <div class="bg-white py-8 px-10 shadow rounded-lg dark:bg-sealBlue-400">
7
+ <div class="bg-white py-8 px-10 shadow rounded-lg dark:bg-darkPrimary-700">
8
8
  <div class="sm:mx-auto sm:w-full sm:max-w-md py-5">
9
9
  <a href="<%= main_app.root_path %>" class="block py-3">
10
10
  <img alt="" src="<%= image_path("logo/logo.png") %>" width="<%= image_width_for_height("logo/logo.png", BulletTrain::Themes.logo_height) %>" height="<%= BulletTrain::Themes.logo_height %>" class="mx-auto h-12 w-auto" />
@@ -1,7 +1,7 @@
1
1
  module BulletTrain
2
2
  module Themes
3
3
  module Light
4
- VERSION = "1.0.16"
4
+ VERSION = "1.0.17"
5
5
  end
6
6
  end
7
7
  end
@@ -5,9 +5,12 @@ require "bullet_train/themes/tailwind_css"
5
5
  module BulletTrain
6
6
  module Themes
7
7
  module Light
8
+ # TODO Not sure this is the right place for this in the long-term.
9
+ mattr_accessor :color, default: :blue
10
+
8
11
  class Theme < BulletTrain::Themes::TailwindCss::Theme
9
12
  def directory_order
10
- ['light'] + super
13
+ ["light"] + super
11
14
  end
12
15
  end
13
16
  end
@@ -20,43 +20,42 @@ module.exports = {
20
20
  },
21
21
  colors: {
22
22
  red: {
23
- darker: '#652424',
24
- DEFAULT: '#e86060',
25
- light: '#ee8989',
23
+ 400: '#ee8989',
24
+ 500: '#e86060',
25
+ 900: '#652424',
26
26
  },
27
+
27
28
  yellow: {
28
- darker: '#6e6446',
29
- DEFAULT: '#fbe6a8',
30
- light: '#fcedbe',
31
- },
32
- blue: {
33
- light: '#95acff',
34
- lightish: '#448eef',
35
- DEFAULT: '#047bf8',
36
- dark: '#0362c6',
37
- darker: '#00369D',
29
+ 400: '#fcedbe',
30
+ 500: '#fbe6a8',
31
+ 900: '#6e6446',
38
32
  },
39
- green: {
40
- darker: '#166e0c',
41
- dark: '#1b850f',
42
- DEFAULT: '#71c21a',
43
- light: '#c5f0c0',
33
+
34
+ primary: {
35
+ 300: 'var(--primary-300)',
36
+ 400: 'var(--primary-400)',
37
+ 500: 'var(--primary-500)',
38
+ 600: 'var(--primary-600)',
39
+ 700: 'var(--primary-700)',
40
+ 800: 'var(--primary-800)',
41
+ 900: 'var(--primary-900)',
44
42
  },
45
- sealBlue: {
46
- 100: '#232942',
47
- 200: '#293145',
48
- 300: '#2b344e',
49
- 400: '#323c58',
50
- 500: '#4D566F',
51
- 600: '#777E94',
52
- 700: '#9facc7',
53
- 800: '#b3bcde',
54
- 900: '#ccd9e8'
43
+
44
+ darkPrimary: {
45
+ 300: 'var(--dark-primary-300)',
46
+ 400: 'var(--dark-primary-400)',
47
+ 500: 'var(--dark-primary-500)',
48
+ 600: 'var(--dark-primary-600)',
49
+ 700: 'var(--dark-primary-700)',
50
+ 800: 'var(--dark-primary-800)',
51
+ 900: 'var(--dark-primary-900)',
55
52
  },
56
- vividBlue: {
57
- 700: '#1c4cc3',
58
- 800: '#0e369a'
53
+
54
+ // This is a weird one-off for dark-mode.
55
+ darkAccent: {
56
+ 200: 'var(--dark-accent-200)',
59
57
  },
58
+
60
59
  black: {
61
60
  100: '#000000',
62
61
  200: '#101112',
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: bullet_train-themes-light
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.16
4
+ version: 1.0.17
5
5
  platform: ruby
6
6
  authors:
7
7
  - Andrew Culver
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-05-22 00:00:00.000000000 Z
11
+ date: 2022-05-26 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails
@@ -61,6 +61,7 @@ files:
61
61
  - app/assets/stylesheets/light/fields/super_select.css
62
62
  - app/assets/stylesheets/light/fields/trix_editor.css
63
63
  - app/assets/stylesheets/light/mailer.scss
64
+ - app/assets/stylesheets/light/tailwind/colors.css
64
65
  - app/assets/stylesheets/light/tailwind/components.css
65
66
  - app/assets/stylesheets/light/tailwind/dark-mode.css
66
67
  - app/assets/stylesheets/light/tailwind/utilities.css