cable_ready 5.0.0.pre9 → 5.0.0.pre10

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 (119) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +4 -1
  3. data/Gemfile.lock +119 -100
  4. data/README.md +2 -5
  5. data/app/assets/javascripts/cable_ready.js +457 -151
  6. data/app/assets/javascripts/cable_ready.min.js +1 -1
  7. data/app/assets/javascripts/cable_ready.min.js.map +1 -1
  8. data/app/assets/javascripts/cable_ready.umd.js +441 -165
  9. data/app/assets/javascripts/cable_ready.umd.min.js +1 -1
  10. data/app/assets/javascripts/cable_ready.umd.min.js.map +1 -1
  11. data/app/channels/cable_ready/stream.rb +7 -5
  12. data/app/helpers/cable_ready/view_helper.rb +58 -0
  13. data/app/jobs/cable_ready_broadcast_job.rb +9 -8
  14. data/app/models/concerns/cable_ready/updatable/collection_updatable_callbacks.rb +2 -0
  15. data/app/models/concerns/cable_ready/updatable/collections_registry.rb +2 -0
  16. data/app/models/concerns/cable_ready/updatable/model_updatable_callbacks.rb +5 -2
  17. data/app/models/concerns/cable_ready/updatable.rb +67 -19
  18. data/app/models/concerns/extend_has_many.rb +2 -0
  19. data/cable_ready.gemspec +4 -6
  20. data/lib/cable_ready/broadcaster.rb +2 -0
  21. data/lib/cable_ready/cable_car.rb +2 -0
  22. data/lib/cable_ready/channel.rb +12 -4
  23. data/lib/cable_ready/channels.rb +3 -1
  24. data/lib/cable_ready/config.rb +16 -2
  25. data/lib/cable_ready/engine.rb +19 -9
  26. data/lib/cable_ready/identifiable.rb +23 -5
  27. data/lib/cable_ready/importmap.rb +2 -0
  28. data/lib/cable_ready/installer.rb +224 -0
  29. data/lib/cable_ready/operation_builder.rb +1 -1
  30. data/lib/cable_ready/sanity_checker.rb +1 -31
  31. data/lib/cable_ready/version.rb +1 -1
  32. data/lib/cable_ready.rb +3 -8
  33. data/lib/cable_ready_helper.rb +13 -0
  34. data/lib/generators/cable_ready/channel_generator.rb +51 -12
  35. data/lib/generators/cable_ready/templates/config/initializers/cable_ready.rb +10 -6
  36. data/lib/install/action_cable.rb +144 -0
  37. data/lib/install/broadcaster.rb +109 -0
  38. data/lib/install/bundle.rb +54 -0
  39. data/lib/install/compression.rb +51 -0
  40. data/lib/install/config.rb +39 -0
  41. data/lib/install/development.rb +34 -0
  42. data/lib/install/esbuild.rb +101 -0
  43. data/lib/install/importmap.rb +96 -0
  44. data/lib/install/initializers.rb +15 -0
  45. data/lib/install/mrujs.rb +121 -0
  46. data/lib/install/npm_packages.rb +13 -0
  47. data/lib/install/shakapacker.rb +61 -0
  48. data/lib/install/spring.rb +54 -0
  49. data/lib/install/updatable.rb +34 -0
  50. data/lib/install/vite.rb +62 -0
  51. data/lib/install/webpacker.rb +81 -0
  52. data/lib/install/yarn.rb +56 -0
  53. data/lib/tasks/cable_ready/cable_ready.rake +249 -0
  54. data/package.json +28 -18
  55. data/{rollup.config.js → rollup.config.mjs} +9 -8
  56. data/web-test-runner.config.mjs +12 -0
  57. data/yarn.lock +2210 -404
  58. metadata +37 -161
  59. data/LATEST +0 -1
  60. data/app/helpers/cable_ready_helper.rb +0 -26
  61. data/lib/generators/cable_ready/helpers_generator.rb +0 -43
  62. data/lib/generators/cable_ready/initializer_generator.rb +0 -14
  63. data/test/dummy/app/channels/application_cable/channel.rb +0 -4
  64. data/test/dummy/app/channels/application_cable/connection.rb +0 -4
  65. data/test/dummy/app/controllers/application_controller.rb +0 -2
  66. data/test/dummy/app/helpers/application_helper.rb +0 -2
  67. data/test/dummy/app/jobs/application_job.rb +0 -7
  68. data/test/dummy/app/mailers/application_mailer.rb +0 -4
  69. data/test/dummy/app/models/application_record.rb +0 -3
  70. data/test/dummy/app/models/dugong.rb +0 -4
  71. data/test/dummy/app/models/global_idable_entity.rb +0 -16
  72. data/test/dummy/app/models/post.rb +0 -4
  73. data/test/dummy/app/models/section.rb +0 -6
  74. data/test/dummy/app/models/team.rb +0 -6
  75. data/test/dummy/app/models/topic.rb +0 -4
  76. data/test/dummy/app/models/user.rb +0 -7
  77. data/test/dummy/config/application.rb +0 -22
  78. data/test/dummy/config/boot.rb +0 -5
  79. data/test/dummy/config/environment.rb +0 -5
  80. data/test/dummy/config/environments/development.rb +0 -76
  81. data/test/dummy/config/environments/production.rb +0 -120
  82. data/test/dummy/config/environments/test.rb +0 -59
  83. data/test/dummy/config/initializers/application_controller_renderer.rb +0 -8
  84. data/test/dummy/config/initializers/assets.rb +0 -12
  85. data/test/dummy/config/initializers/backtrace_silencers.rb +0 -8
  86. data/test/dummy/config/initializers/cable_ready.rb +0 -18
  87. data/test/dummy/config/initializers/content_security_policy.rb +0 -28
  88. data/test/dummy/config/initializers/cookies_serializer.rb +0 -5
  89. data/test/dummy/config/initializers/filter_parameter_logging.rb +0 -6
  90. data/test/dummy/config/initializers/inflections.rb +0 -16
  91. data/test/dummy/config/initializers/mime_types.rb +0 -4
  92. data/test/dummy/config/initializers/permissions_policy.rb +0 -11
  93. data/test/dummy/config/initializers/wrap_parameters.rb +0 -14
  94. data/test/dummy/config/puma.rb +0 -43
  95. data/test/dummy/config/routes.rb +0 -3
  96. data/test/dummy/db/migrate/20210902154139_create_users.rb +0 -9
  97. data/test/dummy/db/migrate/20210902154153_create_posts.rb +0 -10
  98. data/test/dummy/db/migrate/20210904081930_create_topics.rb +0 -9
  99. data/test/dummy/db/migrate/20210904093607_create_sections.rb +0 -9
  100. data/test/dummy/db/migrate/20210913191735_create_teams.rb +0 -8
  101. data/test/dummy/db/migrate/20210913191759_add_team_reference_to_users.rb +0 -5
  102. data/test/dummy/db/migrate/20220329222959_create_dugongs.rb +0 -8
  103. data/test/dummy/db/migrate/20220329230221_create_active_storage_tables.active_storage.rb +0 -36
  104. data/test/dummy/db/schema.rb +0 -84
  105. data/test/dummy/test/models/dugong_test.rb +0 -7
  106. data/test/dummy/test/models/post_test.rb +0 -7
  107. data/test/dummy/test/models/section_test.rb +0 -7
  108. data/test/dummy/test/models/team_test.rb +0 -7
  109. data/test/dummy/test/models/topic_test.rb +0 -7
  110. data/test/dummy/test/models/user_test.rb +0 -7
  111. data/test/lib/cable_ready/cable_car_test.rb +0 -50
  112. data/test/lib/cable_ready/compoundable_test.rb +0 -26
  113. data/test/lib/cable_ready/helper_test.rb +0 -25
  114. data/test/lib/cable_ready/identifiable_test.rb +0 -69
  115. data/test/lib/cable_ready/operation_builder_test.rb +0 -189
  116. data/test/lib/cable_ready/updatable_test.rb +0 -135
  117. data/test/lib/generators/cable_ready/channel_generator_test.rb +0 -157
  118. data/test/support/generator_test_helpers.rb +0 -28
  119. data/test/test_helper.rb +0 -18
metadata CHANGED
@@ -1,29 +1,15 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cable_ready
3
3
  version: !ruby/object:Gem::Version
4
- version: 5.0.0.pre9
4
+ version: 5.0.0.pre10
5
5
  platform: ruby
6
6
  authors:
7
7
  - Nathan Hopkins
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-04-01 00:00:00.000000000 Z
11
+ date: 2023-02-15 00:00:00.000000000 Z
12
12
  dependencies:
13
- - !ruby/object:Gem::Dependency
14
- name: actioncable
15
- requirement: !ruby/object:Gem::Requirement
16
- requirements:
17
- - - ">="
18
- - !ruby/object:Gem::Version
19
- version: '5.2'
20
- type: :runtime
21
- prerelease: false
22
- version_requirements: !ruby/object:Gem::Requirement
23
- requirements:
24
- - - ">="
25
- - !ruby/object:Gem::Version
26
- version: '5.2'
27
13
  - !ruby/object:Gem::Dependency
28
14
  name: actionpack
29
15
  requirement: !ruby/object:Gem::Requirement
@@ -52,20 +38,6 @@ dependencies:
52
38
  - - ">="
53
39
  - !ruby/object:Gem::Version
54
40
  version: '5.2'
55
- - !ruby/object:Gem::Dependency
56
- name: activerecord
57
- requirement: !ruby/object:Gem::Requirement
58
- requirements:
59
- - - ">="
60
- - !ruby/object:Gem::Version
61
- version: '5.2'
62
- type: :runtime
63
- prerelease: false
64
- version_requirements: !ruby/object:Gem::Requirement
65
- requirements:
66
- - - ">="
67
- - !ruby/object:Gem::Version
68
- version: '5.2'
69
41
  - !ruby/object:Gem::Dependency
70
42
  name: activesupport
71
43
  requirement: !ruby/object:Gem::Requirement
@@ -165,21 +137,21 @@ dependencies:
165
137
  - !ruby/object:Gem::Version
166
138
  version: '0'
167
139
  - !ruby/object:Gem::Dependency
168
- name: rails
140
+ name: rake
169
141
  requirement: !ruby/object:Gem::Requirement
170
142
  requirements:
171
143
  - - ">="
172
144
  - !ruby/object:Gem::Version
173
- version: '5.2'
145
+ version: '0'
174
146
  type: :development
175
147
  prerelease: false
176
148
  version_requirements: !ruby/object:Gem::Requirement
177
149
  requirements:
178
150
  - - ">="
179
151
  - !ruby/object:Gem::Version
180
- version: '5.2'
152
+ version: '0'
181
153
  - !ruby/object:Gem::Dependency
182
- name: rake
154
+ name: sqlite3
183
155
  requirement: !ruby/object:Gem::Requirement
184
156
  requirements:
185
157
  - - ">="
@@ -193,19 +165,19 @@ dependencies:
193
165
  - !ruby/object:Gem::Version
194
166
  version: '0'
195
167
  - !ruby/object:Gem::Dependency
196
- name: sqlite3
168
+ name: standard
197
169
  requirement: !ruby/object:Gem::Requirement
198
170
  requirements:
199
- - - ">="
171
+ - - '='
200
172
  - !ruby/object:Gem::Version
201
- version: '0'
173
+ version: 1.19.1
202
174
  type: :development
203
175
  prerelease: false
204
176
  version_requirements: !ruby/object:Gem::Requirement
205
177
  requirements:
206
- - - ">="
178
+ - - '='
207
179
  - !ruby/object:Gem::Version
208
- version: '0'
180
+ version: 1.19.1
209
181
  - !ruby/object:Gem::Dependency
210
182
  name: standardrb
211
183
  requirement: !ruby/object:Gem::Requirement
@@ -232,7 +204,6 @@ files:
232
204
  - Gemfile
233
205
  - Gemfile.lock
234
206
  - IMPLEMENTATION.md
235
- - LATEST
236
207
  - LICENSE.txt
237
208
  - README.md
238
209
  - Rakefile
@@ -243,7 +214,7 @@ files:
243
214
  - app/assets/javascripts/cable_ready.umd.min.js
244
215
  - app/assets/javascripts/cable_ready.umd.min.js.map
245
216
  - app/channels/cable_ready/stream.rb
246
- - app/helpers/cable_ready_helper.rb
217
+ - app/helpers/cable_ready/view_helper.rb
247
218
  - app/jobs/cable_ready_broadcast_job.rb
248
219
  - app/models/concerns/cable_ready/updatable.rb
249
220
  - app/models/concerns/cable_ready/updatable/collection_updatable_callbacks.rb
@@ -265,73 +236,35 @@ files:
265
236
  - lib/cable_ready/engine.rb
266
237
  - lib/cable_ready/identifiable.rb
267
238
  - lib/cable_ready/importmap.rb
239
+ - lib/cable_ready/installer.rb
268
240
  - lib/cable_ready/operation_builder.rb
269
241
  - lib/cable_ready/sanity_checker.rb
270
242
  - lib/cable_ready/stream_identifier.rb
271
243
  - lib/cable_ready/version.rb
244
+ - lib/cable_ready_helper.rb
272
245
  - lib/generators/cable_ready/channel_generator.rb
273
- - lib/generators/cable_ready/helpers_generator.rb
274
- - lib/generators/cable_ready/initializer_generator.rb
275
246
  - lib/generators/cable_ready/templates/config/initializers/cable_ready.rb
247
+ - lib/install/action_cable.rb
248
+ - lib/install/broadcaster.rb
249
+ - lib/install/bundle.rb
250
+ - lib/install/compression.rb
251
+ - lib/install/config.rb
252
+ - lib/install/development.rb
253
+ - lib/install/esbuild.rb
254
+ - lib/install/importmap.rb
255
+ - lib/install/initializers.rb
256
+ - lib/install/mrujs.rb
257
+ - lib/install/npm_packages.rb
258
+ - lib/install/shakapacker.rb
259
+ - lib/install/spring.rb
260
+ - lib/install/updatable.rb
261
+ - lib/install/vite.rb
262
+ - lib/install/webpacker.rb
263
+ - lib/install/yarn.rb
264
+ - lib/tasks/cable_ready/cable_ready.rake
276
265
  - package.json
277
- - rollup.config.js
278
- - test/dummy/app/channels/application_cable/channel.rb
279
- - test/dummy/app/channels/application_cable/connection.rb
280
- - test/dummy/app/controllers/application_controller.rb
281
- - test/dummy/app/helpers/application_helper.rb
282
- - test/dummy/app/jobs/application_job.rb
283
- - test/dummy/app/mailers/application_mailer.rb
284
- - test/dummy/app/models/application_record.rb
285
- - test/dummy/app/models/dugong.rb
286
- - test/dummy/app/models/global_idable_entity.rb
287
- - test/dummy/app/models/post.rb
288
- - test/dummy/app/models/section.rb
289
- - test/dummy/app/models/team.rb
290
- - test/dummy/app/models/topic.rb
291
- - test/dummy/app/models/user.rb
292
- - test/dummy/config/application.rb
293
- - test/dummy/config/boot.rb
294
- - test/dummy/config/environment.rb
295
- - test/dummy/config/environments/development.rb
296
- - test/dummy/config/environments/production.rb
297
- - test/dummy/config/environments/test.rb
298
- - test/dummy/config/initializers/application_controller_renderer.rb
299
- - test/dummy/config/initializers/assets.rb
300
- - test/dummy/config/initializers/backtrace_silencers.rb
301
- - test/dummy/config/initializers/cable_ready.rb
302
- - test/dummy/config/initializers/content_security_policy.rb
303
- - test/dummy/config/initializers/cookies_serializer.rb
304
- - test/dummy/config/initializers/filter_parameter_logging.rb
305
- - test/dummy/config/initializers/inflections.rb
306
- - test/dummy/config/initializers/mime_types.rb
307
- - test/dummy/config/initializers/permissions_policy.rb
308
- - test/dummy/config/initializers/wrap_parameters.rb
309
- - test/dummy/config/puma.rb
310
- - test/dummy/config/routes.rb
311
- - test/dummy/db/migrate/20210902154139_create_users.rb
312
- - test/dummy/db/migrate/20210902154153_create_posts.rb
313
- - test/dummy/db/migrate/20210904081930_create_topics.rb
314
- - test/dummy/db/migrate/20210904093607_create_sections.rb
315
- - test/dummy/db/migrate/20210913191735_create_teams.rb
316
- - test/dummy/db/migrate/20210913191759_add_team_reference_to_users.rb
317
- - test/dummy/db/migrate/20220329222959_create_dugongs.rb
318
- - test/dummy/db/migrate/20220329230221_create_active_storage_tables.active_storage.rb
319
- - test/dummy/db/schema.rb
320
- - test/dummy/test/models/dugong_test.rb
321
- - test/dummy/test/models/post_test.rb
322
- - test/dummy/test/models/section_test.rb
323
- - test/dummy/test/models/team_test.rb
324
- - test/dummy/test/models/topic_test.rb
325
- - test/dummy/test/models/user_test.rb
326
- - test/lib/cable_ready/cable_car_test.rb
327
- - test/lib/cable_ready/compoundable_test.rb
328
- - test/lib/cable_ready/helper_test.rb
329
- - test/lib/cable_ready/identifiable_test.rb
330
- - test/lib/cable_ready/operation_builder_test.rb
331
- - test/lib/cable_ready/updatable_test.rb
332
- - test/lib/generators/cable_ready/channel_generator_test.rb
333
- - test/support/generator_test_helpers.rb
334
- - test/test_helper.rb
266
+ - rollup.config.mjs
267
+ - web-test-runner.config.mjs
335
268
  - yarn.lock
336
269
  homepage: https://github.com/stimulusreflex/cable_ready
337
270
  licenses:
@@ -345,72 +278,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
345
278
  requirements:
346
279
  - - ">="
347
280
  - !ruby/object:Gem::Version
348
- version: '0'
281
+ version: 2.7.0
349
282
  required_rubygems_version: !ruby/object:Gem::Requirement
350
283
  requirements:
351
284
  - - ">"
352
285
  - !ruby/object:Gem::Version
353
286
  version: 1.3.1
354
287
  requirements: []
355
- rubygems_version: 3.3.3
288
+ rubygems_version: 3.4.1
356
289
  signing_key:
357
290
  specification_version: 4
358
291
  summary: Out-of-Band Server Triggered DOM Operations
359
- test_files:
360
- - test/dummy/app/channels/application_cable/channel.rb
361
- - test/dummy/app/channels/application_cable/connection.rb
362
- - test/dummy/app/controllers/application_controller.rb
363
- - test/dummy/app/helpers/application_helper.rb
364
- - test/dummy/app/jobs/application_job.rb
365
- - test/dummy/app/mailers/application_mailer.rb
366
- - test/dummy/app/models/application_record.rb
367
- - test/dummy/app/models/dugong.rb
368
- - test/dummy/app/models/global_idable_entity.rb
369
- - test/dummy/app/models/post.rb
370
- - test/dummy/app/models/section.rb
371
- - test/dummy/app/models/team.rb
372
- - test/dummy/app/models/topic.rb
373
- - test/dummy/app/models/user.rb
374
- - test/dummy/config/application.rb
375
- - test/dummy/config/boot.rb
376
- - test/dummy/config/environment.rb
377
- - test/dummy/config/environments/development.rb
378
- - test/dummy/config/environments/production.rb
379
- - test/dummy/config/environments/test.rb
380
- - test/dummy/config/initializers/application_controller_renderer.rb
381
- - test/dummy/config/initializers/assets.rb
382
- - test/dummy/config/initializers/backtrace_silencers.rb
383
- - test/dummy/config/initializers/cable_ready.rb
384
- - test/dummy/config/initializers/content_security_policy.rb
385
- - test/dummy/config/initializers/cookies_serializer.rb
386
- - test/dummy/config/initializers/filter_parameter_logging.rb
387
- - test/dummy/config/initializers/inflections.rb
388
- - test/dummy/config/initializers/mime_types.rb
389
- - test/dummy/config/initializers/permissions_policy.rb
390
- - test/dummy/config/initializers/wrap_parameters.rb
391
- - test/dummy/config/puma.rb
392
- - test/dummy/config/routes.rb
393
- - test/dummy/db/migrate/20210902154139_create_users.rb
394
- - test/dummy/db/migrate/20210902154153_create_posts.rb
395
- - test/dummy/db/migrate/20210904081930_create_topics.rb
396
- - test/dummy/db/migrate/20210904093607_create_sections.rb
397
- - test/dummy/db/migrate/20210913191735_create_teams.rb
398
- - test/dummy/db/migrate/20210913191759_add_team_reference_to_users.rb
399
- - test/dummy/db/migrate/20220329222959_create_dugongs.rb
400
- - test/dummy/db/migrate/20220329230221_create_active_storage_tables.active_storage.rb
401
- - test/dummy/db/schema.rb
402
- - test/dummy/test/models/dugong_test.rb
403
- - test/dummy/test/models/post_test.rb
404
- - test/dummy/test/models/section_test.rb
405
- - test/dummy/test/models/team_test.rb
406
- - test/dummy/test/models/topic_test.rb
407
- - test/dummy/test/models/user_test.rb
408
- - test/lib/cable_ready/cable_car_test.rb
409
- - test/lib/cable_ready/compoundable_test.rb
410
- - test/lib/cable_ready/helper_test.rb
411
- - test/lib/cable_ready/identifiable_test.rb
412
- - test/lib/cable_ready/operation_builder_test.rb
413
- - test/lib/cable_ready/updatable_test.rb
414
- - test/lib/generators/cable_ready/channel_generator_test.rb
415
- - test/support/generator_test_helpers.rb
416
- - test/test_helper.rb
292
+ test_files: []
data/LATEST DELETED
@@ -1 +0,0 @@
1
- 4.5.0
@@ -1,26 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module CableReadyHelper
4
- include CableReady::Compoundable
5
- include CableReady::StreamIdentifier
6
-
7
- def stream_from(*keys, html_options: {})
8
- tag.stream_from(**build_options(*keys, html_options))
9
- end
10
-
11
- def updates_for(*keys, url: nil, debounce: nil, only: nil, ignore_inner_updates: false, html_options: {}, &block)
12
- options = build_options(*keys, html_options)
13
- options[:url] = url if url
14
- options[:debounce] = debounce if debounce
15
- options[:only] = only if only
16
- options[:"ignore-inner-updates"] = "" if ignore_inner_updates
17
- tag.updates_for(**options) { capture(&block) }
18
- end
19
-
20
- private
21
-
22
- def build_options(*keys, html_options)
23
- keys.select!(&:itself)
24
- {identifier: signed_stream_identifier(compound(keys))}.merge(html_options)
25
- end
26
- end
@@ -1,43 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require "rails/generators"
4
- require "fileutils"
5
-
6
- module CableReady
7
- class HelpersGenerator < Rails::Generators::Base
8
- desc "Initializes CableReady with a reference to the shared ActionCable consumer"
9
- source_root File.expand_path("templates", __dir__)
10
-
11
- def copy_controller_file
12
- main_folder = defined?(Webpacker) ? Webpacker.config.source_path.to_s.gsub("#{Rails.root}/", "") : "app/javascript"
13
-
14
- filepath = [
15
- "#{main_folder}/controllers/index.js",
16
- "#{main_folder}/controllers/index.ts",
17
- "#{main_folder}/packs/application.js",
18
- "#{main_folder}/packs/application.ts"
19
- ]
20
- .select { |path| File.exist?(path) }
21
- .map { |path| Rails.root.join(path) }
22
- .first
23
-
24
- lines = File.open(filepath, "r") { |f| f.readlines }
25
-
26
- unless lines.find { |line| line.start_with?("import CableReady") }
27
- matches = lines.select { |line| line =~ /\A(require|import)/ }
28
- lines.insert lines.index(matches.last).to_i + 1, "import CableReady from 'cable_ready'\n"
29
- File.open(filepath, "w") { |f| f.write lines.join }
30
- end
31
-
32
- unless lines.find { |line| line.start_with?("import consumer") }
33
- matches = lines.select { |line| line =~ /\A(require|import)/ }
34
- lines.insert lines.index(matches.last).to_i + 1, "import consumer from '../channels/consumer'\n"
35
- File.open(filepath, "w") { |f| f.write lines.join }
36
- end
37
-
38
- unless lines.find { |line| line.include?("CableReady.initialize({ consumer })") }
39
- append_to_file filepath, "CableReady.initialize({ consumer })"
40
- end
41
- end
42
- end
43
- end
@@ -1,14 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require "rails/generators"
4
-
5
- module CableReady
6
- class InitializerGenerator < Rails::Generators::Base
7
- desc "Creates a CableReady initializer template in config/initializers"
8
- source_root File.expand_path("templates", __dir__)
9
-
10
- def copy_initializer_file
11
- copy_file "config/initializers/cable_ready.rb"
12
- end
13
- end
14
- end
@@ -1,4 +0,0 @@
1
- module ApplicationCable
2
- class Channel < ActionCable::Channel::Base
3
- end
4
- end
@@ -1,4 +0,0 @@
1
- module ApplicationCable
2
- class Connection < ActionCable::Connection::Base
3
- end
4
- end
@@ -1,2 +0,0 @@
1
- class ApplicationController < ActionController::Base
2
- end
@@ -1,2 +0,0 @@
1
- module ApplicationHelper
2
- end
@@ -1,7 +0,0 @@
1
- class ApplicationJob < ActiveJob::Base
2
- # Automatically retry jobs that encountered a deadlock
3
- # retry_on ActiveRecord::Deadlocked
4
-
5
- # Most jobs are safe to ignore if the underlying records are no longer available
6
- # discard_on ActiveJob::DeserializationError
7
- end
@@ -1,4 +0,0 @@
1
- class ApplicationMailer < ActionMailer::Base
2
- default from: 'from@example.com'
3
- layout 'mailer'
4
- end
@@ -1,3 +0,0 @@
1
- class ApplicationRecord < ActiveRecord::Base
2
- self.abstract_class = true
3
- end
@@ -1,4 +0,0 @@
1
- class Dugong < ApplicationRecord
2
- include CableReady::Updatable
3
- has_many_attached :images, enable_updates: true
4
- end
@@ -1,16 +0,0 @@
1
- class GlobalIdableEntity
2
- include GlobalID::Identification
3
- include CableReady::Updatable
4
-
5
- def id
6
- "fake-id"
7
- end
8
-
9
- def self.find(id)
10
- new if id == "fake-id"
11
- end
12
-
13
- def fake_update
14
- ModelUpdatableCallbacks.new(:update).after_commit(self)
15
- end
16
- end
@@ -1,4 +0,0 @@
1
- class Post < ApplicationRecord
2
- include CableReady::Updatable
3
- belongs_to :user
4
- end
@@ -1,6 +0,0 @@
1
- class Section < ApplicationRecord
2
- include CableReady::Updatable
3
- enable_updates if: -> { updates_enabled }
4
-
5
- attribute :updates_enabled, :boolean, default: false
6
- end
@@ -1,6 +0,0 @@
1
- class Team < ApplicationRecord
2
- include CableReady::Updatable
3
- enable_updates
4
-
5
- has_many :users, enable_updates: true
6
- end
@@ -1,4 +0,0 @@
1
- class Topic < ApplicationRecord
2
- include CableReady::Updatable
3
- enable_updates on: :create
4
- end
@@ -1,7 +0,0 @@
1
- class User < ApplicationRecord
2
- include CableReady::Updatable
3
- enable_updates
4
-
5
- has_many :posts, enable_updates: true
6
- belongs_to :team, optional: true, touch: true
7
- end
@@ -1,22 +0,0 @@
1
- require_relative "boot"
2
-
3
- require "rails/all"
4
-
5
- # Require the gems listed in Gemfile, including any gems
6
- # you've limited to :test, :development, or :production.
7
- Bundler.require(*Rails.groups)
8
- require "cable_ready"
9
-
10
- module Dummy
11
- class Application < Rails::Application
12
- config.load_defaults Rails::VERSION::STRING.to_f
13
-
14
- # Configuration for the application, engines, and railties goes here.
15
- #
16
- # These settings can be overridden in specific environments using the files
17
- # in config/environments, which are processed later.
18
- #
19
- # config.time_zone = "Central Time (US & Canada)"
20
- # config.eager_load_paths << Rails.root.join("extras")
21
- end
22
- end
@@ -1,5 +0,0 @@
1
- # Set up gems listed in the Gemfile.
2
- ENV['BUNDLE_GEMFILE'] ||= File.expand_path('../../../Gemfile', __dir__)
3
-
4
- require "bundler/setup" if File.exist?(ENV["BUNDLE_GEMFILE"])
5
- $LOAD_PATH.unshift File.expand_path('../../../lib', __dir__)
@@ -1,5 +0,0 @@
1
- # Load the Rails application.
2
- require_relative "application"
3
-
4
- # Initialize the Rails application.
5
- Rails.application.initialize!
@@ -1,76 +0,0 @@
1
- require "active_support/core_ext/integer/time"
2
-
3
- Rails.application.configure do
4
- # Settings specified here will take precedence over those in config/application.rb.
5
-
6
- # In the development environment your application's code is reloaded any time
7
- # it changes. This slows down response time but is perfect for development
8
- # since you don't have to restart the web server when you make code changes.
9
- config.cache_classes = false
10
-
11
- # Do not eager load code on boot.
12
- config.eager_load = false
13
-
14
- # Show full error reports.
15
- config.consider_all_requests_local = true
16
-
17
- # Enable/disable caching. By default caching is disabled.
18
- # Run rails dev:cache to toggle caching.
19
- if Rails.root.join('tmp', 'caching-dev.txt').exist?
20
- config.action_controller.perform_caching = true
21
- config.action_controller.enable_fragment_cache_logging = true
22
-
23
- config.cache_store = :memory_store
24
- config.public_file_server.headers = {
25
- 'Cache-Control' => "public, max-age=#{2.days.to_i}"
26
- }
27
- else
28
- config.action_controller.perform_caching = false
29
-
30
- config.cache_store = :null_store
31
- end
32
-
33
- # Store uploaded files on the local file system (see config/storage.yml for options).
34
- config.active_storage.service = :local
35
-
36
- # Don't care if the mailer can't send.
37
- config.action_mailer.raise_delivery_errors = false
38
-
39
- config.action_mailer.perform_caching = false
40
-
41
- # Print deprecation notices to the Rails logger.
42
- config.active_support.deprecation = :log
43
-
44
- # Raise exceptions for disallowed deprecations.
45
- config.active_support.disallowed_deprecation = :raise
46
-
47
- # Tell Active Support which deprecation messages to disallow.
48
- config.active_support.disallowed_deprecation_warnings = []
49
-
50
- # Raise an error on page load if there are pending migrations.
51
- config.active_record.migration_error = :page_load
52
-
53
- # Highlight code that triggered database queries in logs.
54
- config.active_record.verbose_query_logs = true
55
-
56
- # Debug mode disables concatenation and preprocessing of assets.
57
- # This option may cause significant delays in view rendering with a large
58
- # number of complex assets.
59
- config.assets.debug = true
60
-
61
- # Suppress logger output for asset requests.
62
- config.assets.quiet = true
63
-
64
- # Raises error for missing translations.
65
- # config.i18n.raise_on_missing_translations = true
66
-
67
- # Annotate rendered view with file names.
68
- # config.action_view.annotate_rendered_view_with_filenames = true
69
-
70
- # Use an evented file watcher to asynchronously detect changes in source code,
71
- # routes, locales, etc. This feature depends on the listen gem.
72
- # config.file_watcher = ActiveSupport::EventedFileUpdateChecker
73
-
74
- # Uncomment if you wish to allow Action Cable access from any origin.
75
- # config.action_cable.disable_request_forgery_protection = true
76
- end