truenorth 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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 947c02ebdef94353524d6b1c62e4be1283aed2a296f1712257a1d2b183b241d9
4
- data.tar.gz: 670aa44189ee7935e117d9a4b5936a4441caaf7c8618734b43683667f6bf99d0
3
+ metadata.gz: e87118951efd2a17d5a397ed0a2310375c801726f47a8b223048451eb52ebb66
4
+ data.tar.gz: 711e12dcee70510754c658ac5abb86f856be2d2ca30f774a40a877000c7f867d
5
5
  SHA512:
6
- metadata.gz: ab5f4ce7a698a3419d1278d64f50cff501960508b47d2d176e3ce845c22ad0329de6256a545354a8046535eda31e710f554faf81c0df62789155fcebeaac9bf8
7
- data.tar.gz: 51808fa039dcdf6c7a49eff96da6554ae7ad3de6193f8d1ddac191d51a49d73cab491862fad094d746c7d06a2cf532ffa3e8e32817daae33cb7d1797cd0fa510
6
+ metadata.gz: 5ba46733ebd70eb267bf59dd7b4622eef5278af57dd55b8a26233f3b90c8a236a2d766555908d564ab304690e1a39a0278ffe4c731a97e7cac33389ba6ff826f
7
+ data.tar.gz: 795052f4e320adf8042158fbfc7f3c74c7456e3230914a6a67e133485d99fb53d0748ee9bd82b7f6972e69c5dad0912c2d19044f3ebec53b62af583a325a3ccd
data/lib/truenorth/cli.rb CHANGED
@@ -193,17 +193,33 @@ module Truenorth
193
193
  term_width = begin
194
194
  IO.console.winsize[1]
195
195
  rescue StandardError
196
- 80
196
+ 120
197
197
  end
198
198
 
199
+ # Fixed column widths
200
+ col_idx = 4 # Index column
201
+ col_date = 6 # Date column (MM-DD)
202
+ col_time = 16 # Time column (HH:MM (XXXmin))
203
+ col_member = 17 # Member column
204
+ fixed_width = col_idx + col_date + col_time + col_member + 10 # +10 for padding/borders
205
+
206
+ # Activity column gets remaining space
207
+ col_activity = [term_width - fixed_width, 20].max
208
+
199
209
  # Prepare table data
200
210
  rows = results.each_with_index.map do |res, idx|
211
+ member_display = if res[:member].nil?
212
+ '● You'
213
+ else
214
+ " #{truncate_text(res[:member], col_member - 2)}"
215
+ end
216
+
201
217
  [
202
218
  (idx + 1).to_s,
203
219
  format_compact_date(res[:date]),
204
220
  format_compact_time(res[:time]),
205
- truncate_text(res[:activity] || '', 25),
206
- truncate_text(res[:member] || '', 15)
221
+ truncate_text(res[:activity] || '', col_activity),
222
+ member_display
207
223
  ]
208
224
  end
209
225
 
@@ -213,18 +229,14 @@ module Truenorth
213
229
  rows: rows
214
230
  )
215
231
 
216
- # Render with auto-width based on terminal
217
- renderer = if term_width < 100
218
- :basic
219
- else
220
- :unicode
221
- end
222
-
223
- puts table.render(renderer, padding: [0, 1])
232
+ # Render with unicode for full width
233
+ renderer = :unicode
234
+ puts table.render(renderer, padding: [0, 1], width: term_width)
224
235
  end
225
236
 
226
237
  def format_reservation_line(res)
227
- "#{format_compact_date(res[:date])} #{format_compact_time(res[:time])} - #{res[:activity]} - #{res[:member]}"
238
+ member = res[:member] || 'You'
239
+ "#{format_compact_date(res[:date])} #{format_compact_time(res[:time])} - #{res[:activity]} - #{member}"
228
240
  end
229
241
 
230
242
  def format_compact_date(date_str)
@@ -225,7 +225,7 @@ module Truenorth
225
225
  member_name = if member_match
226
226
  member_match[1].strip
227
227
  elsif header_text.start_with?('My Reservations')
228
- 'Primary'
228
+ nil # nil means it's the logged-in user
229
229
  end
230
230
 
231
231
  # Now find all tables within this member section
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Truenorth
4
- VERSION = '0.2.0'
4
+ VERSION = '0.2.1'
5
5
  end
data/truenorth.gemspec CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  Gem::Specification.new do |spec|
4
4
  spec.name = 'truenorth'
5
- spec.version = '0.2.0'
5
+ spec.version = '0.2.1'
6
6
  spec.authors = ['usiegj00']
7
7
  spec.email = ['112138+usiegj00@users.noreply.github.com']
8
8
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: truenorth
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 0.2.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - usiegj00