bullet_train 1.3.0 → 1.3.2
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.
- checksums.yaml +4 -4
- data/app/helpers/account/dates_helper.rb +56 -6
- data/config/locales/en/stimulus.yml +38 -0
- data/config/locales/localization.en.yml +13 -0
- data/docs/field-partials.md +2 -2
- data/lib/bullet_train/version.rb +1 -1
- metadata +7 -5
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 15b2e81f913961c47cd7ab675ed1ec307f556f12343c0b1f86f570ef28795d87
|
4
|
+
data.tar.gz: e0dc0683ceac645f273ae98d2ef681043595107cbed257d07a78954593a3b5bd
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 93097fb9f2d180ed40e8b880f19a319c433eb87ad22a15319407c89fee24ce4e838a09af54fccc2fef4fb727e972600d5b2fede3759856d24dbf2269f0ff3af8
|
7
|
+
data.tar.gz: 5751619c7a2dd1616e5c2898c4ca292f1d4a90402f920c26de3a903240e9f0d14bc53f4ff4494744243ff11fcbd2fa01c4add6d32b18c63fa5a0dfaacc371339
|
@@ -1,20 +1,70 @@
|
|
1
1
|
module Account::DatesHelper
|
2
|
-
def display_date(timestamp, format: :default, date_format: nil)
|
2
|
+
def display_date(timestamp, custom_date_format = nil, format: :default, date_format: nil)
|
3
|
+
return nil unless timestamp
|
3
4
|
format = date_format if date_format
|
4
|
-
|
5
|
+
|
6
|
+
if format && format == :default
|
7
|
+
# e.g. October 11, 2018
|
8
|
+
if custom_date_format
|
9
|
+
local_time(timestamp).strftime(custom_date_format)
|
10
|
+
elsif local_time(timestamp).year == local_time(Time.now).year
|
11
|
+
local_time(timestamp).strftime("%B %-d")
|
12
|
+
else
|
13
|
+
local_time(timestamp).strftime("%B %-d, %Y")
|
14
|
+
end
|
15
|
+
else
|
16
|
+
localize(local_time(timestamp).to_date, format: format)
|
17
|
+
end
|
5
18
|
end
|
6
19
|
|
7
|
-
def display_time(timestamp, format: :default, time_format: nil)
|
20
|
+
def display_time(timestamp, custom_time_format = nil, format: :default, time_format: nil)
|
21
|
+
return nil unless timestamp
|
8
22
|
format = time_format if time_format
|
9
|
-
|
23
|
+
|
24
|
+
if format && format == :default
|
25
|
+
# e.g. 4:22 PM
|
26
|
+
local_time(timestamp).strftime(custom_time_format || "%l:%M %p")
|
27
|
+
else
|
28
|
+
localize(local_time(timestamp).to_time, format: format)
|
29
|
+
end
|
10
30
|
end
|
11
31
|
|
12
|
-
def display_date_and_time(timestamp, format: :default, date_format: nil, time_format: nil)
|
32
|
+
def display_date_and_time(timestamp, custom_date_format = nil, custom_time_format = nil, format: :default, date_format: nil, time_format: nil)
|
33
|
+
return nil unless timestamp
|
13
34
|
format = "#{date_format} #{time_format}" if date_format && time_format
|
14
|
-
|
35
|
+
|
36
|
+
if format && format == :default
|
37
|
+
# e.g. Today at 4:22 PM
|
38
|
+
# e.g. Yesterday at 2:12 PM
|
39
|
+
# e.g. April 24 at 7:39 AM
|
40
|
+
# today?
|
41
|
+
if local_time(timestamp).to_date == local_time(Time.now).to_date
|
42
|
+
"Today at #{display_time(timestamp, custom_time_format)}"
|
43
|
+
# yesterday?
|
44
|
+
elsif (local_time(timestamp).to_date) == (local_time(Time.now).to_date - 1.day)
|
45
|
+
"Yesterday at #{display_time(timestamp, custom_time_format)}"
|
46
|
+
else
|
47
|
+
"#{display_date(timestamp, custom_date_format)} at #{display_time(timestamp, custom_time_format)}"
|
48
|
+
end
|
49
|
+
else
|
50
|
+
localize(local_time(timestamp).to_datetime, format: format)
|
51
|
+
end
|
15
52
|
end
|
16
53
|
|
17
54
|
def local_time(timestamp)
|
18
55
|
timestamp&.in_time_zone(current_user.time_zone)
|
19
56
|
end
|
57
|
+
|
58
|
+
def am_pm?
|
59
|
+
!"#{I18n.t("time.am", fallback: false, default: "")}#{I18n.t("time.pm", fallback: false, default: "")}".empty?
|
60
|
+
end
|
61
|
+
|
62
|
+
def time_zone_name_to_id
|
63
|
+
ActiveSupport::TimeZone.all.map { |tz| {tz.name.to_s => tz.tzinfo.name} }.reduce({}, :merge)
|
64
|
+
end
|
65
|
+
|
66
|
+
def current_time_zone
|
67
|
+
current_time_zone_name = current_user&.time_zone || current_user&.current_team&.time_zone || "UTC"
|
68
|
+
ActiveSupport::TimeZone.find_tzinfo(current_time_zone_name).name
|
69
|
+
end
|
20
70
|
end
|
@@ -0,0 +1,38 @@
|
|
1
|
+
en:
|
2
|
+
daterangepicker:
|
3
|
+
firstDay: 1
|
4
|
+
separator: " - "
|
5
|
+
applyLabel: "Apply"
|
6
|
+
cancelLabel: "Cancel"
|
7
|
+
fromLabel: "From"
|
8
|
+
toLabel: "To"
|
9
|
+
customRangeLabel: "Custom"
|
10
|
+
weekLabel: "W"
|
11
|
+
daysOfWeek:
|
12
|
+
- "Su"
|
13
|
+
- "Mo"
|
14
|
+
- "Tu"
|
15
|
+
- "We"
|
16
|
+
- "Th"
|
17
|
+
- "Fr"
|
18
|
+
- "Sa"
|
19
|
+
monthNames:
|
20
|
+
- "January"
|
21
|
+
- "February"
|
22
|
+
- "March"
|
23
|
+
- "April"
|
24
|
+
- "May"
|
25
|
+
- "June"
|
26
|
+
- "July"
|
27
|
+
- "August"
|
28
|
+
- "September"
|
29
|
+
- "October"
|
30
|
+
- "November"
|
31
|
+
- "December"
|
32
|
+
date_range_controller:
|
33
|
+
today: Today
|
34
|
+
yesterday: yesterday
|
35
|
+
last7Days: Last 7 Days
|
36
|
+
last30Days: Last 30 Days
|
37
|
+
thisMonth: This Month
|
38
|
+
lastMonth: Last Month
|
@@ -0,0 +1,13 @@
|
|
1
|
+
en:
|
2
|
+
date:
|
3
|
+
formats:
|
4
|
+
date_field: "%m/%d/%Y"
|
5
|
+
date_and_time_field: "%m/%d/%Y %l:%M %p"
|
6
|
+
date_controller: "MM/DD/YYYY"
|
7
|
+
time:
|
8
|
+
am: AM
|
9
|
+
pm: PM
|
10
|
+
formats:
|
11
|
+
date_field: "%m/%d/%Y"
|
12
|
+
date_and_time_field: "%m/%d/%Y %l:%M %p"
|
13
|
+
date_controller: "MM/DD/YYYY h:mm A"
|
data/docs/field-partials.md
CHANGED
@@ -118,8 +118,8 @@ Certain form field partials like `buttons` and `super_select` can also have thei
|
|
118
118
|
| [`buttons`](/docs/field-partials/buttons.md) | `string` | Optionally | `assign_checkboxes` | | |
|
119
119
|
| `cloudinary_image` | `string` | | | | |
|
120
120
|
| `color_picker` | `string` | | | [pickr](https://simonwep.github.io/pickr/) | |
|
121
|
-
| `date_and_time_field` | `datetime` | |
|
122
|
-
| `date_field` | `date` | |
|
121
|
+
| `date_and_time_field` | `datetime` | | | [Date Range Picker](https://www.daterangepicker.com) | |
|
122
|
+
| `date_field` | `date` | | | [Date Range Picker](https://www.daterangepicker.com) | |
|
123
123
|
| `email_field` | `string` | | | | |
|
124
124
|
| `emoji_field` | `string` | | | [Emoji Mart](https://missiveapp.com/open/emoji-mart) | A front-end library which allows users to browse and select emojis with ease. | |
|
125
125
|
| [`file_field`](/docs/field-partials/file-field.md) | `attachment` | | | [Active Storage](https://edgeguides.rubyonrails.org/active_storage_overview.html) | |
|
data/lib/bullet_train/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: bullet_train
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.3.
|
4
|
+
version: 1.3.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Andrew Culver
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2023-08-
|
11
|
+
date: 2023-08-16 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: standard
|
@@ -640,8 +640,10 @@ files:
|
|
640
640
|
- config/locales/en/onboarding/user_details.en.yml
|
641
641
|
- config/locales/en/onboarding/user_email.en.yml
|
642
642
|
- config/locales/en/roles.en.yml
|
643
|
+
- config/locales/en/stimulus.yml
|
643
644
|
- config/locales/en/teams.en.yml
|
644
645
|
- config/locales/en/users.en.yml
|
646
|
+
- config/locales/localization.en.yml
|
645
647
|
- config/routes.rb
|
646
648
|
- db/migrate/20161115160419_devise_create_users.rb
|
647
649
|
- db/migrate/20161116003852_add_api_key_to_user.rb
|
@@ -753,8 +755,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
753
755
|
- !ruby/object:Gem::Version
|
754
756
|
version: '0'
|
755
757
|
requirements: []
|
756
|
-
rubygems_version: 3.
|
757
|
-
signing_key:
|
758
|
+
rubygems_version: 3.4.10
|
759
|
+
signing_key:
|
758
760
|
specification_version: 4
|
759
761
|
summary: Bullet Train
|
760
762
|
test_files: []
|