wassup 0.4.0 → 0.4.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: be426163a7aa15bbb7b9ce4c02cce9facffa0cc44bc5e50cb1de5ef770eb63e0
4
- data.tar.gz: d47f33e03030ca9e43c30105ad308a6b48a358603bc0a9681d3b52a49f99d47f
3
+ metadata.gz: 2164cf9c9102e1abf2ba7703a50018ae66e2b16ca3ff7202f2b9bb34e250e6b3
4
+ data.tar.gz: c5178959ef98124fddc2b6af5901b3fe718a4f1c8cc49fa177ec438aff3453e1
5
5
  SHA512:
6
- metadata.gz: c963ab844d3d509e092d6d937a032dacb497079f980367c372b1b48de80c37696933190eb2e9f878a9a841ce9ab496645c04eb00e303147ad08331e70a867fd3
7
- data.tar.gz: 6f0e4dd7432790afb71be30f20b377966185a61a9b079d73acca4a341825677911f435eb02adba390daffd348134807fdf67a4986f0c776bad4d6ed3058fded0
6
+ metadata.gz: 28ce6b6d4b756b0e5f90e99947929293a2edbd1a63dbc51deef9c4ab411ed6638eea892c0e86e896a4d746502ef9b880f7ed6d01d004410832def9aaad45762e
7
+ data.tar.gz: 3e8053061acc17ad9aa8fee89ca161d5547a05f2ae3d0a79d4871a8f4be384ad2072564fad67ca4bb7d229a6f1c104e0ec2a90718d1b5b95d81a82f972699fde
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- wassup (0.3.2)
4
+ wassup (0.4.0)
5
5
  curses
6
6
  rest-client
7
7
 
data/bin/wassup CHANGED
@@ -4,6 +4,7 @@ require 'wassup'
4
4
 
5
5
  debug = ARGV.delete("--debug")
6
6
  path = ARGV[0] || 'Supfile'
7
+ port = ARGV[1] || 0
7
8
 
8
9
  unless File.exists?(path)
9
10
  raise "Missing file: #{path}"
@@ -12,5 +13,5 @@ end
12
13
  if debug
13
14
  Wassup::App.debug(path: path)
14
15
  else
15
- Wassup::App.start(path: path)
16
+ Wassup::App.start(path: path, port: port.to_i)
16
17
  end
data/lib/wassup/app.rb CHANGED
@@ -2,7 +2,7 @@ require 'curses'
2
2
 
3
3
  module Wassup
4
4
  class App
5
- def self.start(path:)
5
+ def self.start(path:, port:)
6
6
  Curses.init_screen
7
7
  Curses.start_color
8
8
  Curses.curs_set(0) # Invisible cursor
@@ -17,7 +17,7 @@ module Wassup
17
17
  #Curses.init_pair(Curses::COLOR_BLUE,Curses::COLOR_BLUE,Curses::COLOR_BLACK)
18
18
  #Curses.init_pair(Curses::COLOR_RED,Curses::COLOR_RED,Curses::COLOR_BLACK)
19
19
 
20
- app = App.new(path: path)
20
+ app = App.new(path: path, port: port)
21
21
  end
22
22
 
23
23
  def self.debug(path:)
@@ -78,6 +78,7 @@ module Wassup
78
78
  content_block: pane_builder.content_block,
79
79
  selection_blocks: pane_builder.selection_blocks,
80
80
  selection_blocks_description: pane_builder.selection_blocks_description,
81
+ port: self.port,
81
82
  debug: debug
82
83
  )
83
84
  pane.focus_handler = @focus_handler
@@ -85,9 +86,11 @@ module Wassup
85
86
  end
86
87
 
87
88
  attr_accessor :panes
89
+ attr_accessor :port
88
90
  attr_accessor :debug
89
91
 
90
- def initialize(path:, debug: false)
92
+ def initialize(path:, port: nil, debug: false)
93
+ @port = port
91
94
  @hidden_pane = nil
92
95
  @help_pane = nil
93
96
  @focused_pane = nil
data/lib/wassup/pane.rb CHANGED
@@ -1,5 +1,6 @@
1
1
  require 'curses'
2
2
 
3
+ require 'socket'
3
4
  require 'time'
4
5
 
5
6
  module Wassup
@@ -42,6 +43,8 @@ module Wassup
42
43
 
43
44
  attr_accessor :win_height, :win_width, :win_top, :win_left
44
45
 
46
+ attr_accessor :port
47
+
45
48
  class Content
46
49
  class Row
47
50
  attr_accessor :display
@@ -68,7 +71,9 @@ module Wassup
68
71
  end
69
72
  end
70
73
 
71
- def initialize(height, width, top, left, title: nil, description: nil, alert_level: nil, highlight: true, focus_number: nil, interval:, show_refresh:, content_block:, selection_blocks:, selection_blocks_description:, debug: false)
74
+ def initialize(height, width, top, left, title: nil, description: nil, alert_level: nil, highlight: true, focus_number: nil, interval:, show_refresh:, content_block:, selection_blocks:, selection_blocks_description:, port: nil, debug: false)
75
+
76
+ self.port = port
72
77
 
73
78
  if !debug
74
79
  self.win_height = Curses.lines * height
@@ -236,6 +241,8 @@ module Wassup
236
241
 
237
242
  self.update_box
238
243
  self.update_title
244
+
245
+ self.send_to_socket
239
246
  else
240
247
  # This shouldn't happen
241
248
  # TODO: also fix this
@@ -325,6 +332,31 @@ module Wassup
325
332
  self.last_refresh_char_at = Time.now
326
333
  end
327
334
  end
335
+
336
+ def send_to_socket
337
+ return if self.port.nil?
338
+ return if self.port.to_i == 0
339
+
340
+ data = {
341
+ title: self.title,
342
+ description: self.description,
343
+ alert_level: self.alert_level,
344
+ alert_count: self.alert_count
345
+ }
346
+
347
+ sock = TCPSocket.new('127.0.0.1', self.port)
348
+ sock.write(data.to_json)
349
+ sock.close
350
+ end
351
+
352
+ def alert_count
353
+ alert_count = 0
354
+ if self.contents
355
+ alert_count = self.contents.map { |c| c.data.size }.inject(0, :+)
356
+ end
357
+
358
+ return alert_count
359
+ end
328
360
 
329
361
  def update_title
330
362
  return unless self.should_box
@@ -343,10 +375,7 @@ module Wassup
343
375
 
344
376
  self.win.setpos(0, 3 + full_title.size)
345
377
  alert = ""
346
- alert_count = 0
347
- if self.contents
348
- alert_count = self.contents.map { |c| c.data.size }.inject(0, :+)
349
- end
378
+ alert_count = self.alert_count
350
379
  case self.alert_level
351
380
  when AlertLevel::HIGH
352
381
  self.win.attrset(Curses.color_pair(Wassup::Color::Pair::RED))
@@ -1,3 +1,3 @@
1
1
  module Wassup
2
- VERSION = "0.4.0"
2
+ VERSION = "0.4.1"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: wassup
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.0
4
+ version: 0.4.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Josh Holtz
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-06-04 00:00:00.000000000 Z
11
+ date: 2023-06-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: curses