cable_ready 5.0.0.pre9 → 5.0.0.pre10

Sign up to get free protection for your applications and to get access to all the features.
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