p2p_streams_channel 0.0.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (87) hide show
  1. checksums.yaml +7 -0
  2. data/.rspec +3 -0
  3. data/README.md +210 -0
  4. data/Rakefile +8 -0
  5. data/app/assets/javascripts/p2p/index.js +6 -0
  6. data/app/assets/javascripts/p2p/message.js +22 -0
  7. data/app/assets/javascripts/p2p/p2p_connection.js +133 -0
  8. data/app/assets/javascripts/p2p/p2p_controller.js +52 -0
  9. data/app/assets/javascripts/p2p/p2p_frame.js +152 -0
  10. data/app/assets/javascripts/p2p/p2p_peer.js +208 -0
  11. data/app/assets/javascripts/p2p/package.json +14 -0
  12. data/app/channels/signaling_channel.rb +29 -0
  13. data/app/helpers/p2p_streams_channel/tag_helper.rb +16 -0
  14. data/lib/p2p_streams_channel/cache.rb +22 -0
  15. data/lib/p2p_streams_channel/engine.rb +20 -0
  16. data/lib/p2p_streams_channel/negotiation.rb +25 -0
  17. data/lib/p2p_streams_channel/session.rb +57 -0
  18. data/lib/p2p_streams_channel/session_handler.rb +32 -0
  19. data/lib/p2p_streams_channel/session_state.rb +33 -0
  20. data/lib/p2p_streams_channel/version.rb +5 -0
  21. data/lib/p2p_streams_channel.rb +29 -0
  22. data/lib/rails/generators/p2p_streams_channel/controller_generator.rb +12 -0
  23. data/lib/rails/generators/p2p_streams_channel/install_generator.rb +24 -0
  24. data/lib/rails/generators/p2p_streams_channel/templates/controller.js +51 -0
  25. data/lib/rails/generators/p2p_streams_channel/templates/initializer.rb +4 -0
  26. data/p2p_streams_channel.gemspec +38 -0
  27. data/sig/p2p_streams_channel.rbs +4 -0
  28. data/spec/dummy/Rakefile +6 -0
  29. data/spec/dummy/app/assets/config/manifest.js +4 -0
  30. data/spec/dummy/app/assets/stylesheets/application.css +15 -0
  31. data/spec/dummy/app/channels/application_cable/channel.rb +4 -0
  32. data/spec/dummy/app/channels/application_cable/connection.rb +4 -0
  33. data/spec/dummy/app/controllers/application_controller.rb +2 -0
  34. data/spec/dummy/app/controllers/p2p_controller.rb +7 -0
  35. data/spec/dummy/app/helpers/application_helper.rb +2 -0
  36. data/spec/dummy/app/helpers/p2p_helper.rb +2 -0
  37. data/spec/dummy/app/javascript/application.js +4 -0
  38. data/spec/dummy/app/javascript/controllers/application.js +9 -0
  39. data/spec/dummy/app/javascript/controllers/chat_controller.js +46 -0
  40. data/spec/dummy/app/javascript/controllers/index.js +11 -0
  41. data/spec/dummy/app/jobs/application_job.rb +7 -0
  42. data/spec/dummy/app/mailers/application_mailer.rb +4 -0
  43. data/spec/dummy/app/models/application_record.rb +3 -0
  44. data/spec/dummy/app/views/layouts/application.html.erb +16 -0
  45. data/spec/dummy/app/views/layouts/mailer.html.erb +13 -0
  46. data/spec/dummy/app/views/layouts/mailer.text.erb +1 -0
  47. data/spec/dummy/app/views/p2p/index.html.erb +6 -0
  48. data/spec/dummy/app/views/p2p/room_chat.html.erb +19 -0
  49. data/spec/dummy/bin/importmap +4 -0
  50. data/spec/dummy/bin/rails +4 -0
  51. data/spec/dummy/bin/rake +4 -0
  52. data/spec/dummy/bin/setup +33 -0
  53. data/spec/dummy/config/application.rb +22 -0
  54. data/spec/dummy/config/boot.rb +5 -0
  55. data/spec/dummy/config/cable.yml +12 -0
  56. data/spec/dummy/config/database.yml +25 -0
  57. data/spec/dummy/config/environment.rb +5 -0
  58. data/spec/dummy/config/environments/development.rb +68 -0
  59. data/spec/dummy/config/environments/production.rb +87 -0
  60. data/spec/dummy/config/environments/test.rb +60 -0
  61. data/spec/dummy/config/importmap.rb +7 -0
  62. data/spec/dummy/config/initializers/content_security_policy.rb +25 -0
  63. data/spec/dummy/config/initializers/filter_parameter_logging.rb +8 -0
  64. data/spec/dummy/config/initializers/inflections.rb +16 -0
  65. data/spec/dummy/config/initializers/p2p_streams_channel.rb +4 -0
  66. data/spec/dummy/config/initializers/permissions_policy.rb +11 -0
  67. data/spec/dummy/config/locales/en.yml +33 -0
  68. data/spec/dummy/config/puma.rb +43 -0
  69. data/spec/dummy/config/routes.rb +4 -0
  70. data/spec/dummy/config/storage.yml +34 -0
  71. data/spec/dummy/config.ru +6 -0
  72. data/spec/dummy/db/test.sqlite3 +0 -0
  73. data/spec/dummy/log/test.log +0 -0
  74. data/spec/dummy/public/404.html +67 -0
  75. data/spec/dummy/public/422.html +67 -0
  76. data/spec/dummy/public/500.html +66 -0
  77. data/spec/dummy/public/apple-touch-icon-precomposed.png +0 -0
  78. data/spec/dummy/public/apple-touch-icon.png +0 -0
  79. data/spec/dummy/public/favicon.ico +0 -0
  80. data/spec/dummy/tmp/development_secret.txt +1 -0
  81. data/spec/p2p_peer_status_spec.rb +89 -0
  82. data/spec/p2p_send_data_spec.rb +52 -0
  83. data/spec/p2p_streams_channel_spec.rb +7 -0
  84. data/spec/rails_helper.rb +8 -0
  85. data/spec/session_spec.rb +29 -0
  86. data/spec/spec_helper.rb +16 -0
  87. metadata +259 -0
metadata ADDED
@@ -0,0 +1,259 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: p2p_streams_channel
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.2
5
+ platform: ruby
6
+ authors:
7
+ - theforestvn88
8
+ autorequire:
9
+ bindir: exe
10
+ cert_chain: []
11
+ date: 2024-03-28 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: rails
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ">="
18
+ - !ruby/object:Gem::Version
19
+ version: '0'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ">="
25
+ - !ruby/object:Gem::Version
26
+ version: '0'
27
+ - !ruby/object:Gem::Dependency
28
+ name: turbo-rails
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ">="
39
+ - !ruby/object:Gem::Version
40
+ version: '0'
41
+ - !ruby/object:Gem::Dependency
42
+ name: stimulus-rails
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - ">="
46
+ - !ruby/object:Gem::Version
47
+ version: '0'
48
+ type: :runtime
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ">="
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
55
+ - !ruby/object:Gem::Dependency
56
+ name: rake
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - ">="
60
+ - !ruby/object:Gem::Version
61
+ version: '0'
62
+ type: :development
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - ">="
67
+ - !ruby/object:Gem::Version
68
+ version: '0'
69
+ - !ruby/object:Gem::Dependency
70
+ name: rspec-rails
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - ">="
74
+ - !ruby/object:Gem::Version
75
+ version: '0'
76
+ type: :development
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - ">="
81
+ - !ruby/object:Gem::Version
82
+ version: '0'
83
+ description: rails p2p turbo streams channel
84
+ email:
85
+ - theforestvn88@gmail.com
86
+ executables: []
87
+ extensions: []
88
+ extra_rdoc_files: []
89
+ files:
90
+ - ".rspec"
91
+ - README.md
92
+ - Rakefile
93
+ - app/assets/javascripts/p2p/index.js
94
+ - app/assets/javascripts/p2p/message.js
95
+ - app/assets/javascripts/p2p/p2p_connection.js
96
+ - app/assets/javascripts/p2p/p2p_controller.js
97
+ - app/assets/javascripts/p2p/p2p_frame.js
98
+ - app/assets/javascripts/p2p/p2p_peer.js
99
+ - app/assets/javascripts/p2p/package.json
100
+ - app/channels/signaling_channel.rb
101
+ - app/helpers/p2p_streams_channel/tag_helper.rb
102
+ - lib/p2p_streams_channel.rb
103
+ - lib/p2p_streams_channel/cache.rb
104
+ - lib/p2p_streams_channel/engine.rb
105
+ - lib/p2p_streams_channel/negotiation.rb
106
+ - lib/p2p_streams_channel/session.rb
107
+ - lib/p2p_streams_channel/session_handler.rb
108
+ - lib/p2p_streams_channel/session_state.rb
109
+ - lib/p2p_streams_channel/version.rb
110
+ - lib/rails/generators/p2p_streams_channel/controller_generator.rb
111
+ - lib/rails/generators/p2p_streams_channel/install_generator.rb
112
+ - lib/rails/generators/p2p_streams_channel/templates/controller.js
113
+ - lib/rails/generators/p2p_streams_channel/templates/initializer.rb
114
+ - p2p_streams_channel.gemspec
115
+ - sig/p2p_streams_channel.rbs
116
+ - spec/dummy/Rakefile
117
+ - spec/dummy/app/assets/config/manifest.js
118
+ - spec/dummy/app/assets/stylesheets/application.css
119
+ - spec/dummy/app/channels/application_cable/channel.rb
120
+ - spec/dummy/app/channels/application_cable/connection.rb
121
+ - spec/dummy/app/controllers/application_controller.rb
122
+ - spec/dummy/app/controllers/p2p_controller.rb
123
+ - spec/dummy/app/helpers/application_helper.rb
124
+ - spec/dummy/app/helpers/p2p_helper.rb
125
+ - spec/dummy/app/javascript/application.js
126
+ - spec/dummy/app/javascript/controllers/application.js
127
+ - spec/dummy/app/javascript/controllers/chat_controller.js
128
+ - spec/dummy/app/javascript/controllers/index.js
129
+ - spec/dummy/app/jobs/application_job.rb
130
+ - spec/dummy/app/mailers/application_mailer.rb
131
+ - spec/dummy/app/models/application_record.rb
132
+ - spec/dummy/app/views/layouts/application.html.erb
133
+ - spec/dummy/app/views/layouts/mailer.html.erb
134
+ - spec/dummy/app/views/layouts/mailer.text.erb
135
+ - spec/dummy/app/views/p2p/index.html.erb
136
+ - spec/dummy/app/views/p2p/room_chat.html.erb
137
+ - spec/dummy/bin/importmap
138
+ - spec/dummy/bin/rails
139
+ - spec/dummy/bin/rake
140
+ - spec/dummy/bin/setup
141
+ - spec/dummy/config.ru
142
+ - spec/dummy/config/application.rb
143
+ - spec/dummy/config/boot.rb
144
+ - spec/dummy/config/cable.yml
145
+ - spec/dummy/config/database.yml
146
+ - spec/dummy/config/environment.rb
147
+ - spec/dummy/config/environments/development.rb
148
+ - spec/dummy/config/environments/production.rb
149
+ - spec/dummy/config/environments/test.rb
150
+ - spec/dummy/config/importmap.rb
151
+ - spec/dummy/config/initializers/content_security_policy.rb
152
+ - spec/dummy/config/initializers/filter_parameter_logging.rb
153
+ - spec/dummy/config/initializers/inflections.rb
154
+ - spec/dummy/config/initializers/p2p_streams_channel.rb
155
+ - spec/dummy/config/initializers/permissions_policy.rb
156
+ - spec/dummy/config/locales/en.yml
157
+ - spec/dummy/config/puma.rb
158
+ - spec/dummy/config/routes.rb
159
+ - spec/dummy/config/storage.yml
160
+ - spec/dummy/db/test.sqlite3
161
+ - spec/dummy/log/test.log
162
+ - spec/dummy/public/404.html
163
+ - spec/dummy/public/422.html
164
+ - spec/dummy/public/500.html
165
+ - spec/dummy/public/apple-touch-icon-precomposed.png
166
+ - spec/dummy/public/apple-touch-icon.png
167
+ - spec/dummy/public/favicon.ico
168
+ - spec/dummy/tmp/development_secret.txt
169
+ - spec/p2p_peer_status_spec.rb
170
+ - spec/p2p_send_data_spec.rb
171
+ - spec/p2p_streams_channel_spec.rb
172
+ - spec/rails_helper.rb
173
+ - spec/session_spec.rb
174
+ - spec/spec_helper.rb
175
+ homepage: https://github.com/theforestvn88/p2p_streams_channel
176
+ licenses: []
177
+ metadata:
178
+ homepage_uri: https://github.com/theforestvn88/p2p_streams_channel
179
+ source_code_uri: https://github.com/theforestvn88/p2p_streams_channel
180
+ changelog_uri: https://github.com/theforestvn88/p2p_streams_channel
181
+ post_install_message:
182
+ rdoc_options: []
183
+ require_paths:
184
+ - lib
185
+ required_ruby_version: !ruby/object:Gem::Requirement
186
+ requirements:
187
+ - - ">="
188
+ - !ruby/object:Gem::Version
189
+ version: 2.6.0
190
+ required_rubygems_version: !ruby/object:Gem::Requirement
191
+ requirements:
192
+ - - ">="
193
+ - !ruby/object:Gem::Version
194
+ version: '0'
195
+ requirements: []
196
+ rubygems_version: 3.5.4
197
+ signing_key:
198
+ specification_version: 4
199
+ summary: rails p2p turbo streams channel
200
+ test_files:
201
+ - spec/dummy/Rakefile
202
+ - spec/dummy/app/assets/config/manifest.js
203
+ - spec/dummy/app/assets/stylesheets/application.css
204
+ - spec/dummy/app/channels/application_cable/channel.rb
205
+ - spec/dummy/app/channels/application_cable/connection.rb
206
+ - spec/dummy/app/controllers/application_controller.rb
207
+ - spec/dummy/app/controllers/p2p_controller.rb
208
+ - spec/dummy/app/helpers/application_helper.rb
209
+ - spec/dummy/app/helpers/p2p_helper.rb
210
+ - spec/dummy/app/javascript/application.js
211
+ - spec/dummy/app/javascript/controllers/application.js
212
+ - spec/dummy/app/javascript/controllers/chat_controller.js
213
+ - spec/dummy/app/javascript/controllers/index.js
214
+ - spec/dummy/app/jobs/application_job.rb
215
+ - spec/dummy/app/mailers/application_mailer.rb
216
+ - spec/dummy/app/models/application_record.rb
217
+ - spec/dummy/app/views/layouts/application.html.erb
218
+ - spec/dummy/app/views/layouts/mailer.html.erb
219
+ - spec/dummy/app/views/layouts/mailer.text.erb
220
+ - spec/dummy/app/views/p2p/index.html.erb
221
+ - spec/dummy/app/views/p2p/room_chat.html.erb
222
+ - spec/dummy/bin/importmap
223
+ - spec/dummy/bin/rails
224
+ - spec/dummy/bin/rake
225
+ - spec/dummy/bin/setup
226
+ - spec/dummy/config/application.rb
227
+ - spec/dummy/config/boot.rb
228
+ - spec/dummy/config/cable.yml
229
+ - spec/dummy/config/database.yml
230
+ - spec/dummy/config/environment.rb
231
+ - spec/dummy/config/environments/development.rb
232
+ - spec/dummy/config/environments/production.rb
233
+ - spec/dummy/config/environments/test.rb
234
+ - spec/dummy/config/importmap.rb
235
+ - spec/dummy/config/initializers/content_security_policy.rb
236
+ - spec/dummy/config/initializers/filter_parameter_logging.rb
237
+ - spec/dummy/config/initializers/inflections.rb
238
+ - spec/dummy/config/initializers/p2p_streams_channel.rb
239
+ - spec/dummy/config/initializers/permissions_policy.rb
240
+ - spec/dummy/config/locales/en.yml
241
+ - spec/dummy/config/puma.rb
242
+ - spec/dummy/config/routes.rb
243
+ - spec/dummy/config/storage.yml
244
+ - spec/dummy/config.ru
245
+ - spec/dummy/db/test.sqlite3
246
+ - spec/dummy/log/test.log
247
+ - spec/dummy/public/404.html
248
+ - spec/dummy/public/422.html
249
+ - spec/dummy/public/500.html
250
+ - spec/dummy/public/apple-touch-icon-precomposed.png
251
+ - spec/dummy/public/apple-touch-icon.png
252
+ - spec/dummy/public/favicon.ico
253
+ - spec/dummy/tmp/development_secret.txt
254
+ - spec/p2p_peer_status_spec.rb
255
+ - spec/p2p_send_data_spec.rb
256
+ - spec/p2p_streams_channel_spec.rb
257
+ - spec/rails_helper.rb
258
+ - spec/session_spec.rb
259
+ - spec/spec_helper.rb