chats 0.5.0 → 0.6.0

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.
Files changed (50) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +349 -0
  3. data/README.md +91 -8
  4. data/app/assets/stylesheets/chats.css +114 -0
  5. data/app/controllers/chats/application_controller.rb +45 -4
  6. data/app/controllers/chats/conversations_controller.rb +305 -63
  7. data/app/helpers/chats/engine_helper.rb +27 -4
  8. data/app/javascript/chats/dock_controller.js +54 -4
  9. data/app/javascript/chats/recovery.js +539 -0
  10. data/app/javascript/chats/refresh_inbox_controller.js +55 -65
  11. data/app/javascript/chats/split_controller.js +97 -0
  12. data/app/javascript/chats/thread_controller.js +245 -54
  13. data/app/javascript/chats/unread_badge_controller.js +24 -0
  14. data/app/views/chats/conversations/_conversation_pane.html.erb +42 -0
  15. data/app/views/chats/conversations/_conversation_row.html.erb +20 -4
  16. data/app/views/chats/conversations/_empty_pane.html.erb +23 -0
  17. data/app/views/chats/conversations/_group.html.erb +20 -4
  18. data/app/views/chats/conversations/_history.html.erb +54 -0
  19. data/app/views/chats/conversations/_thread.html.erb +29 -54
  20. data/app/views/chats/conversations/_thread_header.html.erb +83 -0
  21. data/app/views/chats/conversations/badge.turbo_stream.erb +6 -0
  22. data/app/views/chats/conversations/index.html.erb +91 -15
  23. data/app/views/chats/conversations/pane.html.erb +12 -0
  24. data/app/views/chats/conversations/refresh.turbo_stream.erb +24 -4
  25. data/app/views/chats/conversations/show.html.erb +10 -65
  26. data/app/views/chats/dock/_dock.html.erb +14 -5
  27. data/app/views/chats/messages/_message.html.erb +8 -6
  28. data/chats-0.3.2.gem +0 -0
  29. data/chats-0.4.0.gem +0 -0
  30. data/chats-0.4.1.gem +0 -0
  31. data/chats-0.4.2.gem +0 -0
  32. data/chats-0.5.0.gem +0 -0
  33. data/chats-0.5.1.gem +0 -0
  34. data/config/importmap.rb +7 -0
  35. data/config/locales/en.yml +1 -0
  36. data/config/locales/es.yml +1 -0
  37. data/config/routes.rb +3 -0
  38. data/docs/screenshots/split-inbox-empty.png +0 -0
  39. data/docs/screenshots/split-inbox-phone-list.png +0 -0
  40. data/docs/screenshots/split-inbox-phone-thread.png +0 -0
  41. data/docs/screenshots/split-inbox.png +0 -0
  42. data/lib/chats/broadcasts.rb +102 -7
  43. data/lib/chats/configuration.rb +23 -0
  44. data/lib/chats/inbox_refresh_job.rb +14 -0
  45. data/lib/chats/models/conversation.rb +38 -0
  46. data/lib/chats/models/message.rb +98 -9
  47. data/lib/chats/models/reaction.rb +13 -0
  48. data/lib/chats/version.rb +1 -1
  49. data/lib/generators/chats/templates/initializer.rb +9 -0
  50. metadata +21 -1
data/lib/chats/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Chats
4
- VERSION = "0.5.0"
4
+ VERSION = "0.6.0"
5
5
  end
@@ -84,6 +84,15 @@ Chats.configure do |config|
84
84
  #
85
85
  # config.inbox_limit = 200
86
86
  #
87
+ # The messaging page's layout. :split (the default): from 700px wide,
88
+ # /messages is two panes, LinkedIn-style: the conversation list on the
89
+ # left, the open conversation on the right (/messages/:id is that same
90
+ # page, its conversation open); narrower, the list and the thread are
91
+ # separate pages. :stacked keeps them separate pages at every width.
92
+ # (Views you ejected with `rails g chats:views` keep rendering as they are.)
93
+ #
94
+ # config.inbox_layout = :split
95
+ #
87
96
  # Encrypt message bodies at rest (ActiveRecord Encryption; requires
88
97
  # `bin/rails db:encryption:init`). Body search degrades when enabled.
89
98
  #
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: chats
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.0
4
+ version: 0.6.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - rameerez
@@ -136,16 +136,25 @@ files:
136
136
  - app/javascript/chats/composer_controller.js
137
137
  - app/javascript/chats/debounced_submit_controller.js
138
138
  - app/javascript/chats/dock_controller.js
139
+ - app/javascript/chats/recovery.js
139
140
  - app/javascript/chats/refresh_inbox_controller.js
141
+ - app/javascript/chats/split_controller.js
140
142
  - app/javascript/chats/thread_controller.js
143
+ - app/javascript/chats/unread_badge_controller.js
144
+ - app/views/chats/conversations/_conversation_pane.html.erb
141
145
  - app/views/chats/conversations/_conversation_row.html.erb
146
+ - app/views/chats/conversations/_empty_pane.html.erb
142
147
  - app/views/chats/conversations/_group.html.erb
148
+ - app/views/chats/conversations/_history.html.erb
143
149
  - app/views/chats/conversations/_locked_composer.html.erb
144
150
  - app/views/chats/conversations/_messages_page.html.erb
145
151
  - app/views/chats/conversations/_read_state.html.erb
146
152
  - app/views/chats/conversations/_thread.html.erb
153
+ - app/views/chats/conversations/_thread_header.html.erb
154
+ - app/views/chats/conversations/badge.turbo_stream.erb
147
155
  - app/views/chats/conversations/dock.html.erb
148
156
  - app/views/chats/conversations/index.html.erb
157
+ - app/views/chats/conversations/pane.html.erb
149
158
  - app/views/chats/conversations/refresh.turbo_stream.erb
150
159
  - app/views/chats/conversations/show.html.erb
151
160
  - app/views/chats/conversations/window.html.erb
@@ -165,6 +174,12 @@ files:
165
174
  - app/views/chats/shared/_unread_badge.html.erb
166
175
  - app/views/chats/shared/_verified_badge.html.erb
167
176
  - chats-0.3.1.gem
177
+ - chats-0.3.2.gem
178
+ - chats-0.4.0.gem
179
+ - chats-0.4.1.gem
180
+ - chats-0.4.2.gem
181
+ - chats-0.5.0.gem
182
+ - chats-0.5.1.gem
168
183
  - config/importmap.rb
169
184
  - config/locales/en.yml
170
185
  - config/locales/es.yml
@@ -179,6 +194,10 @@ files:
179
194
  - docs/screenshots/dock-phone-panel.png
180
195
  - docs/screenshots/dock-phone-window.png
181
196
  - docs/screenshots/inbox.png
197
+ - docs/screenshots/split-inbox-empty.png
198
+ - docs/screenshots/split-inbox-phone-list.png
199
+ - docs/screenshots/split-inbox-phone-thread.png
200
+ - docs/screenshots/split-inbox.png
182
201
  - docs/screenshots/system-note-action.png
183
202
  - docs/screenshots/thread-actions-phone.png
184
203
  - gemfiles/rails_7.1.gemfile
@@ -192,6 +211,7 @@ files:
192
211
  - lib/chats/errors.rb
193
212
  - lib/chats/inbox.rb
194
213
  - lib/chats/inbox_group.rb
214
+ - lib/chats/inbox_refresh_job.rb
195
215
  - lib/chats/macros.rb
196
216
  - lib/chats/models/application_record.rb
197
217
  - lib/chats/models/concerns/chat_subject.rb