sorbet-rails 0.5.5.1 → 0.5.6

Sign up to get free protection for your applications and to get access to all the features.
Files changed (106) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +2 -0
  3. data/lib/sorbet-rails/config.rb +1 -0
  4. data/lib/sorbet-rails/helper_rbi_formatter.rb +12 -0
  5. data/lib/sorbet-rails/model_plugins/active_record_attribute.rb +51 -9
  6. data/lib/sorbet-rails/model_plugins/active_record_factory_methods.rb +28 -0
  7. data/lib/sorbet-rails/model_plugins/enumerable_collections.rb +1 -0
  8. data/lib/sorbet-rails/model_plugins/plugins.rb +3 -0
  9. data/sorbet-rails.gemspec +1 -1
  10. data/spec/generators/rails-template.rb +14 -1
  11. data/spec/generators/sorbet_test_cases.rb +17 -0
  12. data/spec/sorbet_spec.rb +4 -0
  13. data/spec/support/v4.2/Gemfile.lock +5 -5
  14. data/spec/support/v4.2/app/models/wand.rb +2 -0
  15. data/spec/support/v4.2/app/models/wizard.rb +1 -1
  16. data/spec/support/v4.2/config/initializers/sorbet_rails.rb +1 -1
  17. data/spec/support/v4.2/db/migrate/20190620000001_create_wizards.rb +1 -1
  18. data/spec/support/v4.2/db/migrate/20190620000004_add_more_column_types_to_wands.rb +1 -0
  19. data/spec/support/v4.2/db/schema.rb +3 -2
  20. data/spec/support/v4.2/sorbet_test_cases.rb +17 -0
  21. data/spec/support/v5.0/Gemfile.lock +5 -5
  22. data/spec/support/v5.0/app/models/wand.rb +2 -0
  23. data/spec/support/v5.0/app/models/wizard.rb +1 -1
  24. data/spec/support/v5.0/config/application.rb +1 -0
  25. data/spec/support/v5.0/config/initializers/sorbet_rails.rb +1 -1
  26. data/spec/support/v5.0/db/migrate/20190620000001_create_wizards.rb +1 -1
  27. data/spec/support/v5.0/db/migrate/20190620000004_add_more_column_types_to_wands.rb +1 -0
  28. data/spec/support/v5.0/db/schema.rb +1 -0
  29. data/spec/support/v5.0/sorbet_test_cases.rb +17 -0
  30. data/spec/support/v5.1/Gemfile.lock +5 -5
  31. data/spec/support/v5.1/app/models/wand.rb +2 -0
  32. data/spec/support/v5.1/app/models/wizard.rb +1 -1
  33. data/spec/support/v5.1/config/initializers/sorbet_rails.rb +1 -1
  34. data/spec/support/v5.1/db/migrate/20190620000001_create_wizards.rb +1 -1
  35. data/spec/support/v5.1/db/migrate/20190620000004_add_more_column_types_to_wands.rb +1 -0
  36. data/spec/support/v5.1/db/schema.rb +1 -0
  37. data/spec/support/v5.1/sorbet_test_cases.rb +17 -0
  38. data/spec/support/v5.2/Gemfile.lock +5 -5
  39. data/spec/support/v5.2/app/models/wand.rb +2 -0
  40. data/spec/support/v5.2/app/models/wizard.rb +1 -1
  41. data/spec/support/v5.2/config/initializers/sorbet_rails.rb +1 -1
  42. data/spec/support/v5.2/db/migrate/20190620000001_create_wizards.rb +1 -1
  43. data/spec/support/v5.2/db/migrate/20190620000004_add_more_column_types_to_wands.rb +1 -0
  44. data/spec/support/v5.2/db/schema.rb +1 -0
  45. data/spec/support/v5.2/sorbet_test_cases.rb +17 -0
  46. data/spec/support/v6.0/Gemfile.lock +5 -5
  47. data/spec/support/v6.0/app/models/wand.rb +2 -0
  48. data/spec/support/v6.0/app/models/wizard.rb +1 -1
  49. data/spec/support/v6.0/config/initializers/sorbet_rails.rb +1 -1
  50. data/spec/support/v6.0/config/initializers/wrap_parameters.rb +1 -1
  51. data/spec/support/v6.0/db/migrate/20190620000001_create_wizards.rb +1 -1
  52. data/spec/support/v6.0/db/migrate/20190620000004_add_more_column_types_to_wands.rb +1 -0
  53. data/spec/support/v6.0/db/schema.rb +1 -0
  54. data/spec/support/v6.0/sorbet_test_cases.rb +17 -0
  55. data/spec/test_data/v4.2/expected_potion.rbi +12 -3
  56. data/spec/test_data/v4.2/expected_spell_book.rbi +12 -3
  57. data/spec/test_data/v4.2/expected_squib.rbi +16 -7
  58. data/spec/test_data/v4.2/expected_srb_tc_output.txt +35 -27
  59. data/spec/test_data/v4.2/expected_wand.rbi +25 -7
  60. data/spec/test_data/v4.2/expected_wizard.rbi +16 -7
  61. data/spec/test_data/v4.2/expected_wizard_wo_spellbook.rbi +16 -7
  62. data/spec/test_data/v5.0/expected_helpers.rbi +5 -0
  63. data/spec/test_data/v5.0/expected_helpers_with_application_and_devise_helpers.rbi +5 -0
  64. data/spec/test_data/v5.0/expected_internal_metadata.rbi +16 -7
  65. data/spec/test_data/v5.0/expected_potion.rbi +12 -3
  66. data/spec/test_data/v5.0/expected_schema_migration.rbi +12 -3
  67. data/spec/test_data/v5.0/expected_spell_book.rbi +12 -3
  68. data/spec/test_data/v5.0/expected_squib.rbi +16 -7
  69. data/spec/test_data/v5.0/expected_wand.rbi +27 -9
  70. data/spec/test_data/v5.0/expected_wizard.rbi +16 -7
  71. data/spec/test_data/v5.0/expected_wizard_wo_spellbook.rbi +16 -7
  72. data/spec/test_data/v5.1/expected_helpers.rbi +5 -0
  73. data/spec/test_data/v5.1/expected_helpers_with_application_and_devise_helpers.rbi +5 -0
  74. data/spec/test_data/v5.1/expected_internal_metadata.rbi +16 -7
  75. data/spec/test_data/v5.1/expected_potion.rbi +12 -3
  76. data/spec/test_data/v5.1/expected_schema_migration.rbi +12 -3
  77. data/spec/test_data/v5.1/expected_spell_book.rbi +12 -3
  78. data/spec/test_data/v5.1/expected_squib.rbi +16 -7
  79. data/spec/test_data/v5.1/expected_wand.rbi +27 -9
  80. data/spec/test_data/v5.1/expected_wizard.rbi +16 -7
  81. data/spec/test_data/v5.1/expected_wizard_wo_spellbook.rbi +16 -7
  82. data/spec/test_data/v5.2/expected_attachment.rbi +12 -3
  83. data/spec/test_data/v5.2/expected_blob.rbi +12 -3
  84. data/spec/test_data/v5.2/expected_helpers.rbi +5 -0
  85. data/spec/test_data/v5.2/expected_helpers_with_application_and_devise_helpers.rbi +5 -0
  86. data/spec/test_data/v5.2/expected_internal_metadata.rbi +16 -7
  87. data/spec/test_data/v5.2/expected_potion.rbi +12 -3
  88. data/spec/test_data/v5.2/expected_schema_migration.rbi +12 -3
  89. data/spec/test_data/v5.2/expected_spell_book.rbi +12 -3
  90. data/spec/test_data/v5.2/expected_squib.rbi +16 -7
  91. data/spec/test_data/v5.2/expected_wand.rbi +27 -9
  92. data/spec/test_data/v5.2/expected_wizard.rbi +16 -7
  93. data/spec/test_data/v5.2/expected_wizard_wo_spellbook.rbi +16 -7
  94. data/spec/test_data/v6.0/expected_attachment.rbi +12 -3
  95. data/spec/test_data/v6.0/expected_blob.rbi +12 -3
  96. data/spec/test_data/v6.0/expected_helpers.rbi +5 -0
  97. data/spec/test_data/v6.0/expected_helpers_with_application_and_devise_helpers.rbi +5 -0
  98. data/spec/test_data/v6.0/expected_internal_metadata.rbi +16 -7
  99. data/spec/test_data/v6.0/expected_potion.rbi +12 -3
  100. data/spec/test_data/v6.0/expected_schema_migration.rbi +12 -3
  101. data/spec/test_data/v6.0/expected_spell_book.rbi +12 -3
  102. data/spec/test_data/v6.0/expected_squib.rbi +16 -7
  103. data/spec/test_data/v6.0/expected_wand.rbi +27 -9
  104. data/spec/test_data/v6.0/expected_wizard.rbi +16 -7
  105. data/spec/test_data/v6.0/expected_wizard_wo_spellbook.rbi +16 -7
  106. metadata +2 -1
@@ -204,6 +204,15 @@ class ActiveStorage::Blob < ActiveRecord::Base
204
204
 
205
205
  sig { params(args: T.untyped).returns(T::Boolean) }
206
206
  def self.one?(*args); end
207
+
208
+ sig { params(attributes: T.untyped, block: T.untyped).returns(ActiveStorage::Blob) }
209
+ def self.create(attributes = nil, &block); end
210
+
211
+ sig { params(attributes: T.untyped, block: T.untyped).returns(ActiveStorage::Blob) }
212
+ def self.create!(attributes = nil, &block); end
213
+
214
+ sig { params(attributes: T.untyped, block: T.untyped).returns(ActiveStorage::Blob) }
215
+ def self.new(attributes = nil, &block); end
207
216
  end
208
217
 
209
218
  class ActiveStorage::Blob::ActiveRecord_Relation < ActiveRecord::Relation
@@ -367,7 +376,7 @@ class ActiveStorage::Blob::ActiveRecord_Relation < ActiveRecord::Relation
367
376
  sig { params(args: T.untyped).returns(T::Boolean) }
368
377
  def one?(*args); end
369
378
 
370
- sig { override.params(block: T.proc.params(e: ActiveStorage::Blob).void).void }
379
+ sig { override.params(block: T.proc.params(e: ActiveStorage::Blob).void).returns(T::Array[ActiveStorage::Blob]) }
371
380
  def each(&block); end
372
381
 
373
382
  sig { params(level: T.nilable(Integer)).returns(T::Array[ActiveStorage::Blob]) }
@@ -546,7 +555,7 @@ class ActiveStorage::Blob::ActiveRecord_AssociationRelation < ActiveRecord::Asso
546
555
  sig { params(args: T.untyped).returns(T::Boolean) }
547
556
  def one?(*args); end
548
557
 
549
- sig { override.params(block: T.proc.params(e: ActiveStorage::Blob).void).void }
558
+ sig { override.params(block: T.proc.params(e: ActiveStorage::Blob).void).returns(T::Array[ActiveStorage::Blob]) }
550
559
  def each(&block); end
551
560
 
552
561
  sig { params(level: T.nilable(Integer)).returns(T::Array[ActiveStorage::Blob]) }
@@ -724,7 +733,7 @@ class ActiveStorage::Blob::ActiveRecord_Associations_CollectionProxy < ActiveRec
724
733
  sig { params(args: T.untyped).returns(T::Boolean) }
725
734
  def one?(*args); end
726
735
 
727
- sig { override.params(block: T.proc.params(e: ActiveStorage::Blob).void).void }
736
+ sig { override.params(block: T.proc.params(e: ActiveStorage::Blob).void).returns(T::Array[ActiveStorage::Blob]) }
728
737
  def each(&block); end
729
738
 
730
739
  sig { params(level: T.nilable(Integer)).returns(T::Array[ActiveStorage::Blob]) }
@@ -20,3 +20,8 @@ module FooHelper
20
20
  include Kernel
21
21
  include ActionView::Helpers
22
22
  end
23
+
24
+ module ActionController::Helpers
25
+ sig { returns(T.all(ApplicationHelper, BarHelper, BazHelper, FooHelper)) }
26
+ def helpers; end
27
+ end
@@ -27,3 +27,8 @@ module FooHelper
27
27
  include ApplicationHelper
28
28
  include DeviseHelper
29
29
  end
30
+
31
+ module ActionController::Helpers
32
+ sig { returns(T.all(ApplicationHelper, BarHelper, BazHelper, FooHelper)) }
33
+ def helpers; end
34
+ end
@@ -10,10 +10,10 @@ end
10
10
  module ActiveRecord::InternalMetadata::GeneratedAttributeMethods
11
11
  extend T::Sig
12
12
 
13
- sig { returns(DateTime) }
13
+ sig { returns(ActiveSupport::TimeWithZone) }
14
14
  def created_at; end
15
15
 
16
- sig { params(value: DateTime).void }
16
+ sig { params(value: T.any(DateTime, Date, Time, ActiveSupport::TimeWithZone)).void }
17
17
  def created_at=(value); end
18
18
 
19
19
  sig { returns(T::Boolean) }
@@ -28,10 +28,10 @@ module ActiveRecord::InternalMetadata::GeneratedAttributeMethods
28
28
  sig { returns(T::Boolean) }
29
29
  def key?; end
30
30
 
31
- sig { returns(DateTime) }
31
+ sig { returns(ActiveSupport::TimeWithZone) }
32
32
  def updated_at; end
33
33
 
34
- sig { params(value: DateTime).void }
34
+ sig { params(value: T.any(DateTime, Date, Time, ActiveSupport::TimeWithZone)).void }
35
35
  def updated_at=(value); end
36
36
 
37
37
  sig { returns(T::Boolean) }
@@ -216,6 +216,15 @@ class ActiveRecord::InternalMetadata < ActiveRecord::Base
216
216
 
217
217
  sig { params(args: T.untyped).returns(T::Boolean) }
218
218
  def self.one?(*args); end
219
+
220
+ sig { params(attributes: T.untyped, block: T.untyped).returns(ActiveRecord::InternalMetadata) }
221
+ def self.create(attributes = nil, &block); end
222
+
223
+ sig { params(attributes: T.untyped, block: T.untyped).returns(ActiveRecord::InternalMetadata) }
224
+ def self.create!(attributes = nil, &block); end
225
+
226
+ sig { params(attributes: T.untyped, block: T.untyped).returns(ActiveRecord::InternalMetadata) }
227
+ def self.new(attributes = nil, &block); end
219
228
  end
220
229
 
221
230
  class ActiveRecord::InternalMetadata::ActiveRecord_Relation < ActiveRecord::Relation
@@ -373,7 +382,7 @@ class ActiveRecord::InternalMetadata::ActiveRecord_Relation < ActiveRecord::Rela
373
382
  sig { params(args: T.untyped).returns(T::Boolean) }
374
383
  def one?(*args); end
375
384
 
376
- sig { override.params(block: T.proc.params(e: ActiveRecord::InternalMetadata).void).void }
385
+ sig { override.params(block: T.proc.params(e: ActiveRecord::InternalMetadata).void).returns(T::Array[ActiveRecord::InternalMetadata]) }
377
386
  def each(&block); end
378
387
 
379
388
  sig { params(level: T.nilable(Integer)).returns(T::Array[ActiveRecord::InternalMetadata]) }
@@ -546,7 +555,7 @@ class ActiveRecord::InternalMetadata::ActiveRecord_AssociationRelation < ActiveR
546
555
  sig { params(args: T.untyped).returns(T::Boolean) }
547
556
  def one?(*args); end
548
557
 
549
- sig { override.params(block: T.proc.params(e: ActiveRecord::InternalMetadata).void).void }
558
+ sig { override.params(block: T.proc.params(e: ActiveRecord::InternalMetadata).void).returns(T::Array[ActiveRecord::InternalMetadata]) }
550
559
  def each(&block); end
551
560
 
552
561
  sig { params(level: T.nilable(Integer)).returns(T::Array[ActiveRecord::InternalMetadata]) }
@@ -718,7 +727,7 @@ class ActiveRecord::InternalMetadata::ActiveRecord_Associations_CollectionProxy
718
727
  sig { params(args: T.untyped).returns(T::Boolean) }
719
728
  def one?(*args); end
720
729
 
721
- sig { override.params(block: T.proc.params(e: ActiveRecord::InternalMetadata).void).void }
730
+ sig { override.params(block: T.proc.params(e: ActiveRecord::InternalMetadata).void).returns(T::Array[ActiveRecord::InternalMetadata]) }
722
731
  def each(&block); end
723
732
 
724
733
  sig { params(level: T.nilable(Integer)).returns(T::Array[ActiveRecord::InternalMetadata]) }
@@ -175,6 +175,15 @@ class Potion < ApplicationRecord
175
175
 
176
176
  sig { params(args: T.untyped).returns(T::Boolean) }
177
177
  def self.one?(*args); end
178
+
179
+ sig { params(attributes: T.untyped, block: T.untyped).returns(Potion) }
180
+ def self.create(attributes = nil, &block); end
181
+
182
+ sig { params(attributes: T.untyped, block: T.untyped).returns(Potion) }
183
+ def self.create!(attributes = nil, &block); end
184
+
185
+ sig { params(attributes: T.untyped, block: T.untyped).returns(Potion) }
186
+ def self.new(attributes = nil, &block); end
178
187
  end
179
188
 
180
189
  class Potion::ActiveRecord_Relation < ActiveRecord::Relation
@@ -332,7 +341,7 @@ class Potion::ActiveRecord_Relation < ActiveRecord::Relation
332
341
  sig { params(args: T.untyped).returns(T::Boolean) }
333
342
  def one?(*args); end
334
343
 
335
- sig { override.params(block: T.proc.params(e: Potion).void).void }
344
+ sig { override.params(block: T.proc.params(e: Potion).void).returns(T::Array[Potion]) }
336
345
  def each(&block); end
337
346
 
338
347
  sig { params(level: T.nilable(Integer)).returns(T::Array[Potion]) }
@@ -505,7 +514,7 @@ class Potion::ActiveRecord_AssociationRelation < ActiveRecord::AssociationRelati
505
514
  sig { params(args: T.untyped).returns(T::Boolean) }
506
515
  def one?(*args); end
507
516
 
508
- sig { override.params(block: T.proc.params(e: Potion).void).void }
517
+ sig { override.params(block: T.proc.params(e: Potion).void).returns(T::Array[Potion]) }
509
518
  def each(&block); end
510
519
 
511
520
  sig { params(level: T.nilable(Integer)).returns(T::Array[Potion]) }
@@ -677,7 +686,7 @@ class Potion::ActiveRecord_Associations_CollectionProxy < ActiveRecord::Associat
677
686
  sig { params(args: T.untyped).returns(T::Boolean) }
678
687
  def one?(*args); end
679
688
 
680
- sig { override.params(block: T.proc.params(e: Potion).void).void }
689
+ sig { override.params(block: T.proc.params(e: Potion).void).returns(T::Array[Potion]) }
681
690
  def each(&block); end
682
691
 
683
692
  sig { params(level: T.nilable(Integer)).returns(T::Array[Potion]) }
@@ -189,6 +189,15 @@ class ActiveRecord::SchemaMigration < ActiveRecord::Base
189
189
 
190
190
  sig { params(args: T.untyped).returns(T::Boolean) }
191
191
  def self.one?(*args); end
192
+
193
+ sig { params(attributes: T.untyped, block: T.untyped).returns(ActiveRecord::SchemaMigration) }
194
+ def self.create(attributes = nil, &block); end
195
+
196
+ sig { params(attributes: T.untyped, block: T.untyped).returns(ActiveRecord::SchemaMigration) }
197
+ def self.create!(attributes = nil, &block); end
198
+
199
+ sig { params(attributes: T.untyped, block: T.untyped).returns(ActiveRecord::SchemaMigration) }
200
+ def self.new(attributes = nil, &block); end
192
201
  end
193
202
 
194
203
  class ActiveRecord::SchemaMigration::ActiveRecord_Relation < ActiveRecord::Relation
@@ -346,7 +355,7 @@ class ActiveRecord::SchemaMigration::ActiveRecord_Relation < ActiveRecord::Relat
346
355
  sig { params(args: T.untyped).returns(T::Boolean) }
347
356
  def one?(*args); end
348
357
 
349
- sig { override.params(block: T.proc.params(e: ActiveRecord::SchemaMigration).void).void }
358
+ sig { override.params(block: T.proc.params(e: ActiveRecord::SchemaMigration).void).returns(T::Array[ActiveRecord::SchemaMigration]) }
350
359
  def each(&block); end
351
360
 
352
361
  sig { params(level: T.nilable(Integer)).returns(T::Array[ActiveRecord::SchemaMigration]) }
@@ -519,7 +528,7 @@ class ActiveRecord::SchemaMigration::ActiveRecord_AssociationRelation < ActiveRe
519
528
  sig { params(args: T.untyped).returns(T::Boolean) }
520
529
  def one?(*args); end
521
530
 
522
- sig { override.params(block: T.proc.params(e: ActiveRecord::SchemaMigration).void).void }
531
+ sig { override.params(block: T.proc.params(e: ActiveRecord::SchemaMigration).void).returns(T::Array[ActiveRecord::SchemaMigration]) }
523
532
  def each(&block); end
524
533
 
525
534
  sig { params(level: T.nilable(Integer)).returns(T::Array[ActiveRecord::SchemaMigration]) }
@@ -691,7 +700,7 @@ class ActiveRecord::SchemaMigration::ActiveRecord_Associations_CollectionProxy <
691
700
  sig { params(args: T.untyped).returns(T::Boolean) }
692
701
  def one?(*args); end
693
702
 
694
- sig { override.params(block: T.proc.params(e: ActiveRecord::SchemaMigration).void).void }
703
+ sig { override.params(block: T.proc.params(e: ActiveRecord::SchemaMigration).void).returns(T::Array[ActiveRecord::SchemaMigration]) }
695
704
  def each(&block); end
696
705
 
697
706
  sig { params(level: T.nilable(Integer)).returns(T::Array[ActiveRecord::SchemaMigration]) }
@@ -262,6 +262,15 @@ class SpellBook < ApplicationRecord
262
262
 
263
263
  sig { params(args: T.untyped).returns(T::Boolean) }
264
264
  def self.one?(*args); end
265
+
266
+ sig { params(attributes: T.untyped, block: T.untyped).returns(SpellBook) }
267
+ def self.create(attributes = nil, &block); end
268
+
269
+ sig { params(attributes: T.untyped, block: T.untyped).returns(SpellBook) }
270
+ def self.create!(attributes = nil, &block); end
271
+
272
+ sig { params(attributes: T.untyped, block: T.untyped).returns(SpellBook) }
273
+ def self.new(attributes = nil, &block); end
265
274
  end
266
275
 
267
276
  class SpellBook::ActiveRecord_Relation < ActiveRecord::Relation
@@ -428,7 +437,7 @@ class SpellBook::ActiveRecord_Relation < ActiveRecord::Relation
428
437
  sig { params(args: T.untyped).returns(T::Boolean) }
429
438
  def one?(*args); end
430
439
 
431
- sig { override.params(block: T.proc.params(e: SpellBook).void).void }
440
+ sig { override.params(block: T.proc.params(e: SpellBook).void).returns(T::Array[SpellBook]) }
432
441
  def each(&block); end
433
442
 
434
443
  sig { params(level: T.nilable(Integer)).returns(T::Array[SpellBook]) }
@@ -610,7 +619,7 @@ class SpellBook::ActiveRecord_AssociationRelation < ActiveRecord::AssociationRel
610
619
  sig { params(args: T.untyped).returns(T::Boolean) }
611
620
  def one?(*args); end
612
621
 
613
- sig { override.params(block: T.proc.params(e: SpellBook).void).void }
622
+ sig { override.params(block: T.proc.params(e: SpellBook).void).returns(T::Array[SpellBook]) }
614
623
  def each(&block); end
615
624
 
616
625
  sig { params(level: T.nilable(Integer)).returns(T::Array[SpellBook]) }
@@ -791,7 +800,7 @@ class SpellBook::ActiveRecord_Associations_CollectionProxy < ActiveRecord::Assoc
791
800
  sig { params(args: T.untyped).returns(T::Boolean) }
792
801
  def one?(*args); end
793
802
 
794
- sig { override.params(block: T.proc.params(e: SpellBook).void).void }
803
+ sig { override.params(block: T.proc.params(e: SpellBook).void).returns(T::Array[SpellBook]) }
795
804
  def each(&block); end
796
805
 
797
806
  sig { params(level: T.nilable(Integer)).returns(T::Array[SpellBook]) }
@@ -125,10 +125,10 @@ module Squib::GeneratedAttributeMethods
125
125
  sig { returns(T::Boolean) }
126
126
  def broom?; end
127
127
 
128
- sig { returns(DateTime) }
128
+ sig { returns(ActiveSupport::TimeWithZone) }
129
129
  def created_at; end
130
130
 
131
- sig { params(value: DateTime).void }
131
+ sig { params(value: T.any(DateTime, Date, Time, ActiveSupport::TimeWithZone)).void }
132
132
  def created_at=(value); end
133
133
 
134
134
  sig { returns(T::Boolean) }
@@ -224,10 +224,10 @@ module Squib::GeneratedAttributeMethods
224
224
  sig { returns(T::Boolean) }
225
225
  def type?; end
226
226
 
227
- sig { returns(DateTime) }
227
+ sig { returns(ActiveSupport::TimeWithZone) }
228
228
  def updated_at; end
229
229
 
230
- sig { params(value: DateTime).void }
230
+ sig { params(value: T.any(DateTime, Date, Time, ActiveSupport::TimeWithZone)).void }
231
231
  def updated_at=(value); end
232
232
 
233
233
  sig { returns(T::Boolean) }
@@ -523,6 +523,15 @@ class Squib < Wizard
523
523
 
524
524
  sig { params(args: T.untyped).returns(T::Boolean) }
525
525
  def self.one?(*args); end
526
+
527
+ sig { params(attributes: T.untyped, block: T.untyped).returns(Squib) }
528
+ def self.create(attributes = nil, &block); end
529
+
530
+ sig { params(attributes: T.untyped, block: T.untyped).returns(Squib) }
531
+ def self.create!(attributes = nil, &block); end
532
+
533
+ sig { params(attributes: T.untyped, block: T.untyped).returns(Squib) }
534
+ def self.new(attributes = nil, &block); end
526
535
  end
527
536
 
528
537
  class Squib::ActiveRecord_Relation < ActiveRecord::Relation
@@ -740,7 +749,7 @@ class Squib::ActiveRecord_Relation < ActiveRecord::Relation
740
749
  sig { params(args: T.untyped).returns(T::Boolean) }
741
750
  def one?(*args); end
742
751
 
743
- sig { override.params(block: T.proc.params(e: Squib).void).void }
752
+ sig { override.params(block: T.proc.params(e: Squib).void).returns(T::Array[Squib]) }
744
753
  def each(&block); end
745
754
 
746
755
  sig { params(level: T.nilable(Integer)).returns(T::Array[Squib]) }
@@ -973,7 +982,7 @@ class Squib::ActiveRecord_AssociationRelation < ActiveRecord::AssociationRelatio
973
982
  sig { params(args: T.untyped).returns(T::Boolean) }
974
983
  def one?(*args); end
975
984
 
976
- sig { override.params(block: T.proc.params(e: Squib).void).void }
985
+ sig { override.params(block: T.proc.params(e: Squib).void).returns(T::Array[Squib]) }
977
986
  def each(&block); end
978
987
 
979
988
  sig { params(level: T.nilable(Integer)).returns(T::Array[Squib]) }
@@ -1205,7 +1214,7 @@ class Squib::ActiveRecord_Associations_CollectionProxy < ActiveRecord::Associati
1205
1214
  sig { params(args: T.untyped).returns(T::Boolean) }
1206
1215
  def one?(*args); end
1207
1216
 
1208
- sig { override.params(block: T.proc.params(e: Squib).void).void }
1217
+ sig { override.params(block: T.proc.params(e: Squib).void).returns(T::Array[Squib]) }
1209
1218
  def each(&block); end
1210
1219
 
1211
1220
  sig { params(level: T.nilable(Integer)).returns(T::Array[Squib]) }
@@ -47,6 +47,15 @@ module Wand::GeneratedAttributeMethods
47
47
  sig { returns(T::Boolean) }
48
48
  def broken?; end
49
49
 
50
+ sig { returns(T.nilable(Time)) }
51
+ def broken_at; end
52
+
53
+ sig { params(value: T.nilable(Time)).void }
54
+ def broken_at=(value); end
55
+
56
+ sig { returns(T::Boolean) }
57
+ def broken_at?; end
58
+
50
59
  sig { returns(T.nilable(Date)) }
51
60
  def chosen_at_date; end
52
61
 
@@ -56,10 +65,10 @@ module Wand::GeneratedAttributeMethods
56
65
  sig { returns(T::Boolean) }
57
66
  def chosen_at_date?; end
58
67
 
59
- sig { returns(T.nilable(Time)) }
68
+ sig { returns(T.nilable(ActiveSupport::TimeWithZone)) }
60
69
  def chosen_at_time; end
61
70
 
62
- sig { params(value: T.nilable(Time)).void }
71
+ sig { params(value: T.nilable(T.any(DateTime, Date, Time, ActiveSupport::TimeWithZone))).void }
63
72
  def chosen_at_time=(value); end
64
73
 
65
74
  sig { returns(T::Boolean) }
@@ -74,10 +83,10 @@ module Wand::GeneratedAttributeMethods
74
83
  sig { returns(T::Boolean) }
75
84
  def core_type?; end
76
85
 
77
- sig { returns(DateTime) }
86
+ sig { returns(ActiveSupport::TimeWithZone) }
78
87
  def created_at; end
79
88
 
80
- sig { params(value: DateTime).void }
89
+ sig { params(value: T.any(DateTime, Date, Time, ActiveSupport::TimeWithZone)).void }
81
90
  def created_at=(value); end
82
91
 
83
92
  sig { returns(T::Boolean) }
@@ -137,10 +146,10 @@ module Wand::GeneratedAttributeMethods
137
146
  sig { returns(T::Boolean) }
138
147
  def spell_history?; end
139
148
 
140
- sig { returns(DateTime) }
149
+ sig { returns(ActiveSupport::TimeWithZone) }
141
150
  def updated_at; end
142
151
 
143
- sig { params(value: DateTime).void }
152
+ sig { params(value: T.any(DateTime, Date, Time, ActiveSupport::TimeWithZone)).void }
144
153
  def updated_at=(value); end
145
154
 
146
155
  sig { returns(T::Boolean) }
@@ -362,6 +371,15 @@ class Wand < ApplicationRecord
362
371
  sig { params(args: T.untyped).returns(T::Boolean) }
363
372
  def self.one?(*args); end
364
373
 
374
+ sig { params(attributes: T.untyped, block: T.untyped).returns(Wand) }
375
+ def self.create(attributes = nil, &block); end
376
+
377
+ sig { params(attributes: T.untyped, block: T.untyped).returns(Wand) }
378
+ def self.create!(attributes = nil, &block); end
379
+
380
+ sig { params(attributes: T.untyped, block: T.untyped).returns(Wand) }
381
+ def self.new(attributes = nil, &block); end
382
+
365
383
  sig { returns(T::Array[Wand]) }
366
384
  def self.mythicals; end
367
385
  end
@@ -533,7 +551,7 @@ class Wand::ActiveRecord_Relation < ActiveRecord::Relation
533
551
  sig { params(args: T.untyped).returns(T::Boolean) }
534
552
  def one?(*args); end
535
553
 
536
- sig { override.params(block: T.proc.params(e: Wand).void).void }
554
+ sig { override.params(block: T.proc.params(e: Wand).void).returns(T::Array[Wand]) }
537
555
  def each(&block); end
538
556
 
539
557
  sig { params(level: T.nilable(Integer)).returns(T::Array[Wand]) }
@@ -718,7 +736,7 @@ class Wand::ActiveRecord_AssociationRelation < ActiveRecord::AssociationRelation
718
736
  sig { params(args: T.untyped).returns(T::Boolean) }
719
737
  def one?(*args); end
720
738
 
721
- sig { override.params(block: T.proc.params(e: Wand).void).void }
739
+ sig { override.params(block: T.proc.params(e: Wand).void).returns(T::Array[Wand]) }
722
740
  def each(&block); end
723
741
 
724
742
  sig { params(level: T.nilable(Integer)).returns(T::Array[Wand]) }
@@ -902,7 +920,7 @@ class Wand::ActiveRecord_Associations_CollectionProxy < ActiveRecord::Associatio
902
920
  sig { params(args: T.untyped).returns(T::Boolean) }
903
921
  def one?(*args); end
904
922
 
905
- sig { override.params(block: T.proc.params(e: Wand).void).void }
923
+ sig { override.params(block: T.proc.params(e: Wand).void).returns(T::Array[Wand]) }
906
924
  def each(&block); end
907
925
 
908
926
  sig { params(level: T.nilable(Integer)).returns(T::Array[Wand]) }
@@ -125,10 +125,10 @@ module Wizard::GeneratedAttributeMethods
125
125
  sig { returns(T::Boolean) }
126
126
  def broom?; end
127
127
 
128
- sig { returns(DateTime) }
128
+ sig { returns(ActiveSupport::TimeWithZone) }
129
129
  def created_at; end
130
130
 
131
- sig { params(value: DateTime).void }
131
+ sig { params(value: T.any(DateTime, Date, Time, ActiveSupport::TimeWithZone)).void }
132
132
  def created_at=(value); end
133
133
 
134
134
  sig { returns(T::Boolean) }
@@ -224,10 +224,10 @@ module Wizard::GeneratedAttributeMethods
224
224
  sig { returns(T::Boolean) }
225
225
  def type?; end
226
226
 
227
- sig { returns(DateTime) }
227
+ sig { returns(ActiveSupport::TimeWithZone) }
228
228
  def updated_at; end
229
229
 
230
- sig { params(value: DateTime).void }
230
+ sig { params(value: T.any(DateTime, Date, Time, ActiveSupport::TimeWithZone)).void }
231
231
  def updated_at=(value); end
232
232
 
233
233
  sig { returns(T::Boolean) }
@@ -523,6 +523,15 @@ class Wizard < ApplicationRecord
523
523
 
524
524
  sig { params(args: T.untyped).returns(T::Boolean) }
525
525
  def self.one?(*args); end
526
+
527
+ sig { params(attributes: T.untyped, block: T.untyped).returns(Wizard) }
528
+ def self.create(attributes = nil, &block); end
529
+
530
+ sig { params(attributes: T.untyped, block: T.untyped).returns(Wizard) }
531
+ def self.create!(attributes = nil, &block); end
532
+
533
+ sig { params(attributes: T.untyped, block: T.untyped).returns(Wizard) }
534
+ def self.new(attributes = nil, &block); end
526
535
  end
527
536
 
528
537
  class Wizard::ActiveRecord_Relation < ActiveRecord::Relation
@@ -740,7 +749,7 @@ class Wizard::ActiveRecord_Relation < ActiveRecord::Relation
740
749
  sig { params(args: T.untyped).returns(T::Boolean) }
741
750
  def one?(*args); end
742
751
 
743
- sig { override.params(block: T.proc.params(e: Wizard).void).void }
752
+ sig { override.params(block: T.proc.params(e: Wizard).void).returns(T::Array[Wizard]) }
744
753
  def each(&block); end
745
754
 
746
755
  sig { params(level: T.nilable(Integer)).returns(T::Array[Wizard]) }
@@ -973,7 +982,7 @@ class Wizard::ActiveRecord_AssociationRelation < ActiveRecord::AssociationRelati
973
982
  sig { params(args: T.untyped).returns(T::Boolean) }
974
983
  def one?(*args); end
975
984
 
976
- sig { override.params(block: T.proc.params(e: Wizard).void).void }
985
+ sig { override.params(block: T.proc.params(e: Wizard).void).returns(T::Array[Wizard]) }
977
986
  def each(&block); end
978
987
 
979
988
  sig { params(level: T.nilable(Integer)).returns(T::Array[Wizard]) }
@@ -1205,7 +1214,7 @@ class Wizard::ActiveRecord_Associations_CollectionProxy < ActiveRecord::Associat
1205
1214
  sig { params(args: T.untyped).returns(T::Boolean) }
1206
1215
  def one?(*args); end
1207
1216
 
1208
- sig { override.params(block: T.proc.params(e: Wizard).void).void }
1217
+ sig { override.params(block: T.proc.params(e: Wizard).void).returns(T::Array[Wizard]) }
1209
1218
  def each(&block); end
1210
1219
 
1211
1220
  sig { params(level: T.nilable(Integer)).returns(T::Array[Wizard]) }