timet 0.2.0 → 0.2.1
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/CHANGELOG.md +10 -0
- data/lib/timet/application.rb +8 -5
- data/lib/timet/time_report.rb +12 -13
- data/lib/timet/version.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 31d714405b3e7c5ff73a15f62e00f633b09aa6740b03eb0adfd248a83445320e
|
4
|
+
data.tar.gz: 98251bb40809c2c1d1151cd2c55fc5666faa029e9f7fc8958db3ec0460893253
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 12ba0176fb4d85870dcf87ca83d8b9fe9dca1c9303b39e9ab8cc0595d64ced68e3c10fef86ffbb1f0a7d6ad8114f08d2355abcfed894e7e4e609f3c319fd68e5
|
7
|
+
data.tar.gz: '04194e7a85dbfc73755f8b3bb2db20759aef24219046865102d23867ff9ee92e12807734cc07590cfeb07ba52ad60a66da4d3762f47ff059f089ed7dd2330cb6'
|
data/CHANGELOG.md
CHANGED
@@ -1,5 +1,15 @@
|
|
1
1
|
## [Unreleased]
|
2
2
|
|
3
|
+
## [0.2.1] - 2024-09-24
|
4
|
+
|
5
|
+
* **Improved `resume` behavior:**
|
6
|
+
* If no notes are provided, it will attempt to retrieve them from the last tracked task.
|
7
|
+
* **Enhanced `export_sheet` functionality:**
|
8
|
+
* A new `notes` column has been added to the exported CSV file.
|
9
|
+
* **Minor bug fixes:**
|
10
|
+
* Resolved issues related to resuming tasks with notes and deleting items.
|
11
|
+
|
12
|
+
|
3
13
|
## [0.2.0] - 2024-09-24
|
4
14
|
|
5
15
|
* **Improved code quality:**
|
data/lib/timet/application.rb
CHANGED
@@ -15,9 +15,10 @@ module Timet
|
|
15
15
|
|
16
16
|
desc "start [tag] --notes='...'", "start time tracking --notes='my notes...'"
|
17
17
|
option :notes, type: :string, desc: 'Add a note'
|
18
|
-
def start(tag)
|
18
|
+
def start(tag, notes = nil)
|
19
19
|
start = Time.now.to_i
|
20
|
-
|
20
|
+
notes = options[:notes] || notes
|
21
|
+
@db.insert_item(start, tag, notes) if %i[no_items complete].include?(@db.last_item_status)
|
21
22
|
summary
|
22
23
|
end
|
23
24
|
|
@@ -36,8 +37,10 @@ module Timet
|
|
36
37
|
def resume
|
37
38
|
if @db.last_item_status == :incomplete
|
38
39
|
puts 'A task is currently being tracked.'
|
39
|
-
elsif
|
40
|
-
|
40
|
+
elsif @db.last_item.any?
|
41
|
+
tag = @db.last_item[3]
|
42
|
+
notes = @db.last_item[4]
|
43
|
+
start(tag, notes)
|
41
44
|
end
|
42
45
|
end
|
43
46
|
|
@@ -57,7 +60,7 @@ module Timet
|
|
57
60
|
item = @db.find_item(id)
|
58
61
|
return puts "No tracked time found for id: #{id}" unless item
|
59
62
|
|
60
|
-
TimeReport.new(@db, nil, nil).
|
63
|
+
TimeReport.new(@db, nil, nil, nil).show_row(item)
|
61
64
|
return unless TTY::Prompt.new.yes?('Are you sure you want to delete this entry?')
|
62
65
|
|
63
66
|
delete_item_and_print_message(id, "Deleted #{id}")
|
data/lib/timet/time_report.rb
CHANGED
@@ -31,7 +31,7 @@ module Timet
|
|
31
31
|
total
|
32
32
|
end
|
33
33
|
|
34
|
-
def
|
34
|
+
def show_row(item)
|
35
35
|
format_table_header
|
36
36
|
display_time_entry(item)
|
37
37
|
puts format_table_separator
|
@@ -39,18 +39,17 @@ module Timet
|
|
39
39
|
end
|
40
40
|
|
41
41
|
def export_sheet
|
42
|
-
header = %w[ID Start End Tag]
|
43
|
-
|
44
42
|
CSV.open("#{filename}.csv", 'w') do |csv|
|
45
|
-
csv <<
|
46
|
-
|
47
|
-
items.each do |
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
43
|
+
csv << %w[ID Start End Tag Notes]
|
44
|
+
|
45
|
+
items.each do |id, start_time, end_time, tags, notes|
|
46
|
+
csv << [
|
47
|
+
id,
|
48
|
+
TimeHelper.format_time(start_time),
|
49
|
+
TimeHelper.format_time(end_time),
|
50
|
+
tags,
|
51
|
+
notes
|
52
|
+
]
|
54
53
|
end
|
55
54
|
end
|
56
55
|
end
|
@@ -65,7 +64,7 @@ module Timet
|
|
65
64
|
date if idx.zero? || date != TimeHelper.timestamp_to_date(last_start_date)
|
66
65
|
end
|
67
66
|
|
68
|
-
def display_time_entry(item, date)
|
67
|
+
def display_time_entry(item, date = nil)
|
69
68
|
return puts 'Missing time entry data.' unless item
|
70
69
|
|
71
70
|
id, start_time_value, end_time_value, tag_name, notes = item
|
data/lib/timet/version.rb
CHANGED