bullet_train-themes-light 1.0.22 → 1.0.25

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 34f10e6da7000e49343ea48f34436dff11e8dd9ba81657e87831fbdedca628b9
4
- data.tar.gz: b2239440d0ff3677c34c629fcd0655628723928479178833cc539116fcc4aedd
3
+ metadata.gz: 1ba656f462e3dba514368333ccf9c22da6ecabef4607cf7ff200032685e30b87
4
+ data.tar.gz: e01fdde3114a66b5bee9505d4a3e3b895897c39a66ce8a59e5201a49de5af100
5
5
  SHA512:
6
- metadata.gz: 46660b278af4ea2accc5530d89238894c99a4b0c09b9156e54f486db9f766d6c6b8b3ccb95d20a6731714b69468205c60c8006adc8654541a92b84732acdc106
7
- data.tar.gz: 5b12616bd5af8e068c61624d5045f6a475c94ca67dd6d19793f2dd5359c2715e310e35ddb3e8be1d5ea087ca613566142a8f8845fe9a30df73b9512e3d529f2f
6
+ metadata.gz: c39c016335ec4ef90a44f0fff17b1f8537c9ac8d865c63fa5587602391a34c746c6be52f3be5a44caa9df83e92ae26ded6e3e0e4c810a0010058421f989041c1
7
+ data.tar.gz: 647121a245e504cd38ae19ad8690e8e5c95472e314a4ae8f50f6e6e69d04c658449592ebd04072bc60f9cdff5a40954976f445de0ba0609882f1a783b1f89600
@@ -5,6 +5,7 @@
5
5
 
6
6
  @import "./electron";
7
7
  @import './fields';
8
+ @import './turn';
8
9
 
9
10
  /* TODO there is probably a better way to do this. */
10
11
  .hover-indent-child {
@@ -194,10 +194,8 @@
194
194
  @apply bg-darkPrimary-800 border-darkPrimary-900 !important;
195
195
  }
196
196
 
197
- .trix-content {
198
- a[href^="bullettrain://"] {
199
- @apply bg-darkPrimary-500 text-white;
200
- }
197
+ .trix-content a[href^="bullettrain://"] {
198
+ @apply text-white bg-darkPrimary-500;
201
199
  }
202
200
 
203
201
  /* CKEditor */
@@ -0,0 +1,44 @@
1
+ [data-turn-exit],
2
+ [data-turn-enter] {
3
+ animation-timing-function: cubic-bezier(0.65, 0.05, 0.35, 1);
4
+ animation-fill-mode: forwards;
5
+ }
6
+
7
+ html.turn-exit [data-turn-exit] {
8
+ animation-name: fade-out-up;
9
+ animation-duration: .3s;
10
+ }
11
+
12
+ html.turn-enter [data-turn-enter] {
13
+ animation-name: fade-in-up;
14
+ animation-duration: .6s;
15
+ }
16
+
17
+ html.turn-before-exit [data-turn-exit],
18
+ html.turn-exit [data-turn-exit] {
19
+ will-change: transform, opacity;
20
+ }
21
+
22
+ @keyframes fade-out-up {
23
+ 0% {
24
+ opacity: 1;
25
+ transform: translateZ(0)
26
+ }
27
+
28
+ 100% {
29
+ opacity: 0;
30
+ transform: translate3d(0, -4rem, 0)
31
+ }
32
+ }
33
+
34
+ @keyframes fade-in-up {
35
+ 0% {
36
+ opacity: 0;
37
+ transform: translate3d(0, 4rem, 0)
38
+ }
39
+
40
+ 100% {
41
+ opacity: 1;
42
+ transform: translateZ(0)
43
+ }
44
+ }
@@ -1,12 +1,21 @@
1
1
  <% new_message ||= false %>
2
- <% current_user_message = message.membership.user == current_user %>
2
+ <% current_author = defined?(current_user) ? current_user : send(BulletTrain::Conversations.current_participant_helper_method) %>
3
+ <% current_user_message = message.author == current_author %>
3
4
  <% avatar = capture do %>
4
- <img src="<%= membership_profile_photo_url(message.membership) %>" title="<%= message.membership.name %>" alt="<%= message.membership.name %>" class="w-6 h-6 rounded-full <%= current_user_message ? 'order-2' : 'order-1' %>">
5
+ <% if message.membership %>
6
+ <img src="<%= membership_profile_photo_url(message.membership) %>" title="<%= message.user_name %>" alt="<%= message.user_name %>" class="w-6 h-6 rounded-full <%= current_user_message ? 'order-2' : 'order-1' %>">
7
+ <% elsif message.participant %>
8
+ <div class="<%= current_user_message ? 'order-2' : 'order-1' %>">
9
+ <% if BulletTrain::Conversations.respond_to?(:participant_avatar_partial) && BulletTrain::Conversations.participant_avatar_partial %>
10
+ <%= render BulletTrain::Conversations.participant_avatar_partial, participant: message.participant %>
11
+ <% end %>
12
+ </div>
13
+ <% end %>
5
14
  <% end %>
6
15
  <% next_message ||= message.next_message %>
7
16
 
8
17
  <%# A message series is a series of messages by the same user, each message within 5 minutes of the previous message. It has nothing to do with replies and message threads %>
9
- <% next_message_in_series = (message.user == next_message&.user) && (message.created_at > next_message.created_at - 5.minutes) && (message.parent_message_id == next_message&.parent_message_id || message.id == next_message.parent_message_id)%>
18
+ <% next_message_in_series = (message.author == next_message&.author) && (message.created_at > next_message.created_at - 5.minutes) && (message.parent_message_id == next_message&.parent_message_id || message.id == next_message.parent_message_id)%>
10
19
  <% if next_message_in_series %>
11
20
  <% avatar = nil %>
12
21
  <% end %>
@@ -28,7 +37,7 @@
28
37
  <% timestamp = next_message_in_series || show_as_thread ? '' : time_ago_in_words(message.created_at) + " ago" %>
29
38
 
30
39
  <% threaded_message = message.threaded? %>
31
- <% thread_started_by_current_user = message.thread_origin_user == current_user %>
40
+ <% thread_started_by_current_user = message.thread_origin_user == current_author %>
32
41
  <% last_message_in_thread = !placeholder_message && threaded_message && (message.next_message.nil? || message.next_message.thread_id != message.thread_id)%>
33
42
  <% out_of_thread_message = !show_as_thread && threaded_message && message.reply? && message.previous_message != message.previous_message_in_thread %>
34
43
  <% has_replies = message.replies.any? && message.next_message == message.next_message_in_thread %>
@@ -43,7 +52,7 @@
43
52
  <div class="chat-message"
44
53
  <% unless show_as_thread %>
45
54
  data-reply-target="message"
46
- data-user="<%= message.membership.label_string %>"
55
+ data-user="<%= message.author.label_string %>"
47
56
  data-message-id="<%= message.parent_message_id || message.id %>"
48
57
  data-action="mouseleave->reply#hideReplyButton"
49
58
  <% end %>
@@ -102,7 +111,7 @@
102
111
 
103
112
  <div class="flex flex-grow order-1 <%= current_user_message ? 'justify-end items-end pr-8' : 'justify-start items-start pl-8' %> <%= 'mb-3' unless next_message_in_series %>">
104
113
  <div class="<%= show_as_thread ? 'text-gray-400' : 'text-gray-300' %> text-sm">
105
- <strong><%= message.user.name %></strong>
114
+ <strong><%= message.author.name %></strong>
106
115
  <%= timestamp %>
107
116
  </div>
108
117
  </div>
@@ -4,7 +4,7 @@
4
4
  <%= render 'shared/layouts/head' %>
5
5
  </head>
6
6
  <body class="bg-light-gradient text-gray-700 text-sm font-normal electron-draggable dark:bg-dark-gradient dark:text-darkPrimary-300">
7
- <div data-turbo="false">
7
+ <div data-turn-enter data-turn-exit>
8
8
  <%= yield %>
9
9
  </div>
10
10
  </body>
@@ -0,0 +1,429 @@
1
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2
+ <html xmlns="http://www.w3.org/1999/xhtml">
3
+ <head>
4
+ <meta name="viewport" content="width=device-width, initial-scale=1.0" />
5
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
6
+ <title>Welcome to <%= t('application.name') %>!</title>
7
+
8
+ <%= stylesheet_link_tag 'application', media: 'all'%>
9
+ <%= stylesheet_link_tag 'application.mailer.light', media: 'all' %>
10
+
11
+ <% # TODO replace with Tailwind CSS styles. %>
12
+ <style type="text/css">
13
+ *:not(br):not(tr):not(html) {
14
+ font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
15
+ box-sizing: border-box;
16
+ }
17
+
18
+ body {
19
+ width: 100% !important;
20
+ height: 100%;
21
+ margin: 0;
22
+ line-height: 1.4;
23
+ background-color: #F6F7F8;
24
+ color: #3E4B5B;
25
+ font-size: 16px;
26
+ -webkit-text-size-adjust: none;
27
+ }
28
+
29
+ p,
30
+ ul,
31
+ ol,
32
+ blockquote {
33
+ line-height: 1.4;
34
+ text-align: left;
35
+ }
36
+
37
+ a {
38
+ color: #047BF8;
39
+ }
40
+
41
+ a img {
42
+ border: none;
43
+ }
44
+ /* Layout ------------------------------ */
45
+
46
+ .email-wrapper {
47
+ width: 100%;
48
+ margin: 0;
49
+ padding: 0;
50
+ background-color: #F6F7F8;
51
+ }
52
+
53
+ .email-content {
54
+ width: 100%;
55
+ margin: 0;
56
+ padding: 0;
57
+ }
58
+ /* Masthead ----------------------- */
59
+
60
+ .email-masthead {
61
+ padding: 25px 0;
62
+ text-align: center;
63
+ }
64
+
65
+ .email-masthead_logo {
66
+ width: 94px;
67
+ }
68
+
69
+ .email-masthead_name {
70
+ font-size: 16px;
71
+ /*font-weight: bold;*/
72
+ color: #bbbfc3;
73
+ text-decoration: none;
74
+ /*text-shadow: 0 1px 0 white;*/
75
+ }
76
+ /* Body ------------------------------ */
77
+
78
+ .email-body {
79
+ width: 100%;
80
+ margin: 0;
81
+ padding: 0;
82
+ border-top: 1px solid #EDEFF2;
83
+ border-bottom: 1px solid #EDEFF2;
84
+ background-color: #FFFFFF;
85
+
86
+ }
87
+
88
+ .email-body_inner {
89
+ width: 570px;
90
+ margin: 0 auto;
91
+ padding: 0;
92
+ background-color: #FFFFFF;
93
+ }
94
+
95
+ .email-footer {
96
+ width: 570px;
97
+ margin: 0 auto;
98
+ padding: 0;
99
+ text-align: center;
100
+ }
101
+
102
+ .email-footer p {
103
+ color: #AAAAAA;
104
+ }
105
+
106
+ .body-action {
107
+ width: 100%;
108
+ margin: 30px auto;
109
+ padding: 0;
110
+ text-align: center;
111
+ }
112
+
113
+ .body-sub {
114
+ margin-top: 25px;
115
+ padding-top: 25px;
116
+ border-top: 1px solid #EDEFF2;
117
+ }
118
+
119
+ .content-cell {
120
+ padding: 35px;
121
+ }
122
+
123
+ .preheader {
124
+ display: none !important;
125
+ }
126
+ /* Attribute list ------------------------------ */
127
+
128
+ .attributes {
129
+ margin: 0 0 21px;
130
+ }
131
+
132
+ .attributes_content {
133
+ background-color: #EDEFF2;
134
+ padding: 16px;
135
+ }
136
+
137
+ .attributes_item {
138
+ padding: 0;
139
+ }
140
+ /* Related Items ------------------------------ */
141
+
142
+ .related {
143
+ width: 100%;
144
+ margin: 0;
145
+ padding: 25px 0 0 0;
146
+ }
147
+
148
+ .related_item {
149
+ padding: 10px 0;
150
+ color: #3E4B5B;
151
+ font-size: 15px;
152
+ line-height: 18px;
153
+ }
154
+
155
+ .related_item-title {
156
+ display: block;
157
+ margin: .5em 0 0;
158
+ }
159
+
160
+ .related_item-thumb {
161
+ display: block;
162
+ padding-bottom: 10px;
163
+ }
164
+
165
+ .related_heading {
166
+ border-top: 1px solid #EDEFF2;
167
+ text-align: center;
168
+ padding: 25px 0 10px;
169
+ }
170
+ /* Discount Code ------------------------------ */
171
+
172
+ .discount {
173
+ width: 100%;
174
+ margin: 0;
175
+ padding: 24px;
176
+ background-color: #EDEFF2;
177
+ border: 2px dashed #9BA2AB;
178
+ }
179
+
180
+ .discount_heading {
181
+ text-align: center;
182
+ }
183
+
184
+ .discount_body {
185
+ text-align: center;
186
+ font-size: 15px;
187
+ }
188
+ /* Social Icons ------------------------------ */
189
+
190
+ .social {
191
+ width: auto;
192
+ }
193
+
194
+ .social td {
195
+ padding: 0;
196
+ width: auto;
197
+ }
198
+
199
+ .social_icon {
200
+ height: 20px;
201
+ margin: 0 8px 10px 8px;
202
+ padding: 0;
203
+ }
204
+ /* Data table ------------------------------ */
205
+
206
+ .purchase {
207
+ width: 100%;
208
+ margin: 0;
209
+ padding: 35px 0;
210
+ }
211
+
212
+ .purchase_content {
213
+ width: 100%;
214
+ margin: 0;
215
+ padding: 25px 0 0 0;
216
+ }
217
+
218
+ .purchase_item {
219
+ padding: 10px 0;
220
+ color: #3E4B5B;
221
+ font-size: 15px;
222
+ line-height: 18px;
223
+ }
224
+
225
+ .purchase_heading {
226
+ padding-bottom: 8px;
227
+ border-bottom: 1px solid #EDEFF2;
228
+ }
229
+
230
+ .purchase_heading p {
231
+ margin: 0;
232
+ color: #9BA2AB;
233
+ font-size: 12px;
234
+ }
235
+
236
+ .purchase_footer {
237
+ padding-top: 15px;
238
+ border-top: 1px solid #EDEFF2;
239
+ }
240
+
241
+ .purchase_total {
242
+ margin: 0;
243
+ text-align: right;
244
+ /*font-weight: bold;*/
245
+ color: #3E4B5B;
246
+ }
247
+
248
+ .purchase_total--label {
249
+ padding: 0 15px 0 0;
250
+ }
251
+ /* Utilities ------------------------------ */
252
+
253
+ .align-right {
254
+ text-align: right;
255
+ }
256
+
257
+ .align-left {
258
+ text-align: left;
259
+ }
260
+
261
+ .align-center {
262
+ text-align: center;
263
+ }
264
+ /*Media Queries ------------------------------ */
265
+
266
+ @media only screen and (max-width: 600px) {
267
+ .email-body_inner,
268
+ .email-footer {
269
+ width: 100% !important;
270
+ }
271
+ }
272
+
273
+ @media only screen and (max-width: 500px) {
274
+ .button {
275
+ width: 100% !important;
276
+ }
277
+ }
278
+ /* Buttons ------------------------------ */
279
+
280
+ .button {
281
+ background-color: #047BF8;
282
+ border-top: 10px solid #047BF8;
283
+ border-right: 18px solid #047BF8;
284
+ border-bottom: 10px solid #047BF8;
285
+ border-left: 18px solid #047BF8;
286
+ display: inline-block;
287
+ color: #FFF;
288
+ text-decoration: none;
289
+ border-radius: 3px;
290
+ -webkit-text-size-adjust: none;
291
+ line-height: 22px;
292
+ font-size: 16px;
293
+ color: #FFF;
294
+ }
295
+
296
+ .button--link {
297
+ background-color: transparent;
298
+ border-top: 10px solid transparent;
299
+ border-right: 18px solid transparent;
300
+ border-bottom: 10px solid transparent;
301
+ border-left: 18px solid transparent;
302
+ display: inline-block;
303
+ color: #047BF8;
304
+ text-decoration: underline;
305
+ border-radius: 3px;
306
+ /*box-shadow: 0 2px 3px rgba(0, 0, 0, 0.16);*/
307
+ -webkit-text-size-adjust: none;
308
+ }
309
+
310
+ .button--green {
311
+ background-color: #22BC66;
312
+ border-top: 10px solid #22BC66;
313
+ border-right: 18px solid #22BC66;
314
+ border-bottom: 10px solid #22BC66;
315
+ border-left: 18px solid #22BC66;
316
+ }
317
+
318
+ .button--red {
319
+ background-color: #FF6136;
320
+ border-top: 10px solid #FF6136;
321
+ border-right: 18px solid #FF6136;
322
+ border-bottom: 10px solid #FF6136;
323
+ border-left: 18px solid #FF6136;
324
+ }
325
+ /* Type ------------------------------ */
326
+
327
+ h1 {
328
+ margin-top: 0;
329
+ color: #3E4B5B;
330
+ font-size: 19px;
331
+ font-weight: bold;
332
+ text-align: left;
333
+ }
334
+
335
+ h2 {
336
+ margin-top: 0;
337
+ color: #3E4B5B;
338
+ font-size: 16px;
339
+ font-weight: bold;
340
+ text-align: left;
341
+ }
342
+
343
+ h3 {
344
+ margin-top: 0;
345
+ color: #3E4B5B;
346
+ font-size: 14px;
347
+ font-weight: bold;
348
+ text-align: left;
349
+ }
350
+
351
+ p {
352
+ margin-top: 0;
353
+ color: #3E4B5B;
354
+ font-size: 16px;
355
+ line-height: 1.5em;
356
+ text-align: left;
357
+ }
358
+
359
+ p.sub {
360
+ font-size: 12px;
361
+ }
362
+
363
+ p.center {
364
+ text-align: center;
365
+ }
366
+
367
+ .body-action.less-footer {
368
+ margin-bottom: 10px;
369
+ }
370
+ </style>
371
+ </head>
372
+ <body>
373
+ <% if content_for? :preheader %>
374
+ <span class="preheader"><% yield :preheader %></span>
375
+ <% end %>
376
+ <table class="email-wrapper" width="100%" cellpadding="0" cellspacing="0">
377
+ <tr>
378
+ <td align="center">
379
+ <table class="email-content" width="100%" cellpadding="0" cellspacing="0">
380
+ <tr>
381
+ <td class="email-masthead">
382
+ <a href="<%= root_url %>" class="email-masthead_name">
383
+ <%= email_image_tag("logo/logo.png", width: image_width_for_height("logo/logo.png", BulletTrain::Themes.logo_height), height: BulletTrain::Themes.logo_height, style: "width: #{image_width_for_height('logo/logo.png', BulletTrain::Themes.logo_height)}px; height: #{BulletTrain::Themes.logo_height}px;") %>
384
+ </a>
385
+ </td>
386
+ </tr>
387
+ <!-- Email Body -->
388
+ <tr>
389
+ <td class="email-body" width="100%" cellpadding="0" cellspacing="0">
390
+ <table class="email-body_inner" align="center" width="570" cellpadding="0" cellspacing="0">
391
+ <!-- Body content -->
392
+ <tr>
393
+ <td class="content-cell">
394
+
395
+ <%= yield %>
396
+
397
+ <% if false %>
398
+ <!-- Sub copy -->
399
+ <table class="body-sub">
400
+ <tr>
401
+ <td>
402
+ <p class="sub"><%= t('.trouble') %></p>
403
+ <p class="sub">{{action_url}}</p>
404
+ </td>
405
+ </tr>
406
+ </table>
407
+ <% end %>
408
+ </td>
409
+ </tr>
410
+ </table>
411
+ </td>
412
+ </tr>
413
+ <tr>
414
+ <td>
415
+ <table class="email-footer" align="center" width="570" cellpadding="0" cellspacing="0">
416
+ <tr>
417
+ <td class="content-cell" align="center">
418
+ <p class="sub align-center">&copy; <%= t('layouts.mailer.all_rights_reserved', year: Date.today.year, product_name: t('application.name')) %></p>
419
+ </td>
420
+ </tr>
421
+ </table>
422
+ </td>
423
+ </tr>
424
+ </table>
425
+ </td>
426
+ </tr>
427
+ </table>
428
+ </body>
429
+ </html>
@@ -1,7 +1,7 @@
1
1
  module BulletTrain
2
2
  module Themes
3
3
  module Light
4
- VERSION = "1.0.22"
4
+ VERSION = "1.0.25"
5
5
  end
6
6
  end
7
7
  end
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.22
4
+ version: 1.0.25
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-27 00:00:00.000000000 Z
11
+ date: 2022-06-10 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails
@@ -65,6 +65,7 @@ files:
65
65
  - app/assets/stylesheets/light/tailwind/components.css
66
66
  - app/assets/stylesheets/light/tailwind/dark-mode.css
67
67
  - app/assets/stylesheets/light/tailwind/utilities.css
68
+ - app/assets/stylesheets/light/turn.css
68
69
  - app/assets/stylesheets/tailwindcss/base.css
69
70
  - app/assets/stylesheets/tailwindcss/components.css
70
71
  - app/assets/stylesheets/tailwindcss/utilities.css
@@ -91,6 +92,7 @@ files:
91
92
  - app/views/themes/light/layouts/_account.html.erb
92
93
  - app/views/themes/light/layouts/_devise.html.erb
93
94
  - app/views/themes/light/layouts/_head.html.erb
95
+ - app/views/themes/light/layouts/_mailer.html.erb
94
96
  - app/views/themes/light/memberships/_photos.html.erb
95
97
  - app/views/themes/light/menu/_heading.html.erb
96
98
  - app/views/themes/light/menu/_item.html.erb