compony 0.10.1 → 0.10.2

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 (70) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +5 -0
  3. data/Gemfile.lock +1 -1
  4. data/VERSION +1 -1
  5. data/compony.gemspec +2 -2
  6. data/doc/ComponentGenerator.html +1 -1
  7. data/doc/Components.html +1 -1
  8. data/doc/ComponentsGenerator.html +1 -1
  9. data/doc/Compony/Component.html +1 -1
  10. data/doc/Compony/ComponentMixins/Default/Labelling.html +1 -1
  11. data/doc/Compony/ComponentMixins/Default/Standalone/ResourcefulVerbDsl.html +1 -1
  12. data/doc/Compony/ComponentMixins/Default/Standalone/StandaloneDsl.html +1 -1
  13. data/doc/Compony/ComponentMixins/Default/Standalone/VerbDsl.html +1 -1
  14. data/doc/Compony/ComponentMixins/Default/Standalone.html +1 -1
  15. data/doc/Compony/ComponentMixins/Default.html +1 -1
  16. data/doc/Compony/ComponentMixins/Resourceful.html +1 -1
  17. data/doc/Compony/ComponentMixins.html +1 -1
  18. data/doc/Compony/Components/Buttons/CssButton.html +1 -1
  19. data/doc/Compony/Components/Buttons/Link.html +1 -1
  20. data/doc/Compony/Components/Buttons.html +1 -1
  21. data/doc/Compony/Components/Destroy.html +1 -1
  22. data/doc/Compony/Components/Edit.html +1 -1
  23. data/doc/Compony/Components/Form.html +1 -1
  24. data/doc/Compony/Components/Index.html +1 -1
  25. data/doc/Compony/Components/List.html +1 -1
  26. data/doc/Compony/Components/New.html +1 -1
  27. data/doc/Compony/Components/Show.html +1 -1
  28. data/doc/Compony/Components/WithForm.html +1 -1
  29. data/doc/Compony/Components.html +1 -1
  30. data/doc/Compony/ControllerMixin.html +1 -1
  31. data/doc/Compony/Engine.html +1 -1
  32. data/doc/Compony/Intent.html +74 -62
  33. data/doc/Compony/ManageIntentsDsl.html +16 -12
  34. data/doc/Compony/MethodAccessibleHash.html +1 -1
  35. data/doc/Compony/ModelFields/Anchormodel.html +1 -1
  36. data/doc/Compony/ModelFields/Association.html +1 -1
  37. data/doc/Compony/ModelFields/Attachment.html +1 -1
  38. data/doc/Compony/ModelFields/Base.html +1 -1
  39. data/doc/Compony/ModelFields/Boolean.html +1 -1
  40. data/doc/Compony/ModelFields/Color.html +1 -1
  41. data/doc/Compony/ModelFields/Currency.html +1 -1
  42. data/doc/Compony/ModelFields/Date.html +1 -1
  43. data/doc/Compony/ModelFields/Datetime.html +1 -1
  44. data/doc/Compony/ModelFields/Decimal.html +1 -1
  45. data/doc/Compony/ModelFields/Email.html +1 -1
  46. data/doc/Compony/ModelFields/Float.html +1 -1
  47. data/doc/Compony/ModelFields/Integer.html +1 -1
  48. data/doc/Compony/ModelFields/Percentage.html +1 -1
  49. data/doc/Compony/ModelFields/Phone.html +1 -1
  50. data/doc/Compony/ModelFields/RichText.html +1 -1
  51. data/doc/Compony/ModelFields/String.html +1 -1
  52. data/doc/Compony/ModelFields/Text.html +1 -1
  53. data/doc/Compony/ModelFields/Time.html +1 -1
  54. data/doc/Compony/ModelFields/Url.html +1 -1
  55. data/doc/Compony/ModelFields.html +1 -1
  56. data/doc/Compony/ModelMixin.html +1 -1
  57. data/doc/Compony/NaturalOrdering.html +1 -1
  58. data/doc/Compony/RequestContext.html +1 -1
  59. data/doc/Compony/Version.html +1 -1
  60. data/doc/Compony/ViewHelpers.html +1 -1
  61. data/doc/Compony/VirtualModel.html +1 -1
  62. data/doc/Compony.html +1 -1
  63. data/doc/ComponyController.html +1 -1
  64. data/doc/_index.html +1 -1
  65. data/doc/file.README.html +1 -1
  66. data/doc/index.html +1 -1
  67. data/doc/top-level-namespace.html +1 -1
  68. data/lib/compony/intent.rb +7 -1
  69. data/lib/compony/manage_intents_dsl.rb +6 -4
  70. metadata +1 -1
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 26ce0c339e31289e086e055149b36a1ea06cb9fd73bbe62be92d2b24aa59c96b
4
- data.tar.gz: 6ddb4c9c37dcef2c0f1cff703e18d4a47987696070de1922e8a614c2433ff989
3
+ metadata.gz: 0c9da0a15078b9ba53d5c5a1074923c486cb16652174dfa6dd82c4d2641486c0
4
+ data.tar.gz: 107f67010eb387ad68e98257c918486d771fbbde748b85377bd10cc8b45eb29a
5
5
  SHA512:
6
- metadata.gz: b076446360b875852dc3d2d05e78a041b252a236456b18d961eb8838e1c4304a39f106952608643329fd37715738ef85f1fd23ab479c91dc79f98a0845600f00
7
- data.tar.gz: 93da49d75c7053bad2542cd77fc532eeeea46353090e8da3862d7a6d6774ff64431cf5a2cead1e8461965de954a47cb6e74bd971c11ff66ced3f3fac1a8ddd46
6
+ metadata.gz: f5167134c3d4164f1f7bf2c266d3dc44974f4e63bd322d75ba4e13e6baf178386101e6e6b122c42abeb52d939a3ea96a279de630f2f71945187aceec004dcf0e
7
+ data.tar.gz: 3959c72e07cfe0658491cfa66e34aba806144282688af3262679be4de7079ebe90f8fa3a1a60f089d4f48c2e0185bed1ad17072ee596fc77bdc6becfb11f27da
data/CHANGELOG.md CHANGED
@@ -1,3 +1,8 @@
1
+ # 0.10.2
2
+
3
+ - Produce debug output when skipping an intent due to a NameError
4
+ - When intents are given both a model (through data) and a family name (through the second argument), prefer the family name to find out the component class
5
+
1
6
  # 0.10.1
2
7
 
3
8
  - Implement intent to always return the path it was initialized with in case the argument was given
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- compony (0.10.1.edge)
4
+ compony (0.10.2.edge)
5
5
  anchormodel (~> 0.2.1)
6
6
  cancancan (~> 3.6.1)
7
7
  dslblend (>= 0.0.3)
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.10.1
1
+ 0.10.2
data/compony.gemspec CHANGED
@@ -2,11 +2,11 @@
2
2
  # This file is auto-generated via: 'rake gemspec'.
3
3
 
4
4
  # -*- encoding: utf-8 -*-
5
- # stub: compony 0.10.1 ruby lib
5
+ # stub: compony 0.10.2 ruby lib
6
6
 
7
7
  Gem::Specification.new do |s|
8
8
  s.name = "compony".freeze
9
- s.version = "0.10.1".freeze
9
+ s.version = "0.10.2".freeze
10
10
 
11
11
  s.required_rubygems_version = Gem::Requirement.new(">= 0".freeze) if s.respond_to? :required_rubygems_version=
12
12
  s.require_paths = ["lib".freeze]
@@ -249,7 +249,7 @@
249
249
  </div>
250
250
 
251
251
  <div id="footer">
252
- Generated on Mon Dec 8 17:21:05 2025 by
252
+ Generated on Mon Dec 8 18:10:35 2025 by
253
253
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
254
254
  0.9.34 (ruby-3.3.5).
255
255
  </div>
data/doc/Components.html CHANGED
@@ -95,7 +95,7 @@
95
95
  </div>
96
96
 
97
97
  <div id="footer">
98
- Generated on Mon Dec 8 17:21:03 2025 by
98
+ Generated on Mon Dec 8 18:10:34 2025 by
99
99
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
100
100
  0.9.34 (ruby-3.3.5).
101
101
  </div>
@@ -193,7 +193,7 @@
193
193
  </div>
194
194
 
195
195
  <div id="footer">
196
- Generated on Mon Dec 8 17:21:05 2025 by
196
+ Generated on Mon Dec 8 18:10:35 2025 by
197
197
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
198
198
  0.9.34 (ruby-3.3.5).
199
199
  </div>
@@ -2070,7 +2070,7 @@
2070
2070
  </div>
2071
2071
 
2072
2072
  <div id="footer">
2073
- Generated on Mon Dec 8 17:21:04 2025 by
2073
+ Generated on Mon Dec 8 18:10:35 2025 by
2074
2074
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
2075
2075
  0.9.34 (ruby-3.3.5).
2076
2076
  </div>
@@ -477,7 +477,7 @@
477
477
  </div>
478
478
 
479
479
  <div id="footer">
480
- Generated on Mon Dec 8 17:21:03 2025 by
480
+ Generated on Mon Dec 8 18:10:34 2025 by
481
481
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
482
482
  0.9.34 (ruby-3.3.5).
483
483
  </div>
@@ -529,7 +529,7 @@
529
529
  </div>
530
530
 
531
531
  <div id="footer">
532
- Generated on Mon Dec 8 17:21:05 2025 by
532
+ Generated on Mon Dec 8 18:10:36 2025 by
533
533
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
534
534
  0.9.34 (ruby-3.3.5).
535
535
  </div>
@@ -659,7 +659,7 @@
659
659
  </div>
660
660
 
661
661
  <div id="footer">
662
- Generated on Mon Dec 8 17:21:05 2025 by
662
+ Generated on Mon Dec 8 18:10:36 2025 by
663
663
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
664
664
  0.9.34 (ruby-3.3.5).
665
665
  </div>
@@ -567,7 +567,7 @@
567
567
  </div>
568
568
 
569
569
  <div id="footer">
570
- Generated on Mon Dec 8 17:21:05 2025 by
570
+ Generated on Mon Dec 8 18:10:36 2025 by
571
571
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
572
572
  0.9.34 (ruby-3.3.5).
573
573
  </div>
@@ -868,7 +868,7 @@
868
868
  </div>
869
869
 
870
870
  <div id="footer">
871
- Generated on Mon Dec 8 17:21:03 2025 by
871
+ Generated on Mon Dec 8 18:10:34 2025 by
872
872
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
873
873
  0.9.34 (ruby-3.3.5).
874
874
  </div>
@@ -116,7 +116,7 @@
116
116
  </div>
117
117
 
118
118
  <div id="footer">
119
- Generated on Mon Dec 8 17:21:03 2025 by
119
+ Generated on Mon Dec 8 18:10:34 2025 by
120
120
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
121
121
  0.9.34 (ruby-3.3.5).
122
122
  </div>
@@ -1183,7 +1183,7 @@
1183
1183
  </div>
1184
1184
 
1185
1185
  <div id="footer">
1186
- Generated on Mon Dec 8 17:21:03 2025 by
1186
+ Generated on Mon Dec 8 18:10:34 2025 by
1187
1187
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
1188
1188
  0.9.34 (ruby-3.3.5).
1189
1189
  </div>
@@ -116,7 +116,7 @@
116
116
  </div>
117
117
 
118
118
  <div id="footer">
119
- Generated on Mon Dec 8 17:21:03 2025 by
119
+ Generated on Mon Dec 8 18:10:34 2025 by
120
120
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
121
121
  0.9.34 (ruby-3.3.5).
122
122
  </div>
@@ -272,7 +272,7 @@
272
272
  </div>
273
273
 
274
274
  <div id="footer">
275
- Generated on Mon Dec 8 17:21:05 2025 by
275
+ Generated on Mon Dec 8 18:10:35 2025 by
276
276
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
277
277
  0.9.34 (ruby-3.3.5).
278
278
  </div>
@@ -242,7 +242,7 @@
242
242
  </div>
243
243
 
244
244
  <div id="footer">
245
- Generated on Mon Dec 8 17:21:04 2025 by
245
+ Generated on Mon Dec 8 18:10:35 2025 by
246
246
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
247
247
  0.9.34 (ruby-3.3.5).
248
248
  </div>
@@ -116,7 +116,7 @@
116
116
  </div>
117
117
 
118
118
  <div id="footer">
119
- Generated on Mon Dec 8 17:21:03 2025 by
119
+ Generated on Mon Dec 8 18:10:34 2025 by
120
120
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
121
121
  0.9.34 (ruby-3.3.5).
122
122
  </div>
@@ -374,7 +374,7 @@
374
374
  </div>
375
375
 
376
376
  <div id="footer">
377
- Generated on Mon Dec 8 17:21:04 2025 by
377
+ Generated on Mon Dec 8 18:10:35 2025 by
378
378
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
379
379
  0.9.34 (ruby-3.3.5).
380
380
  </div>
@@ -452,7 +452,7 @@
452
452
  </div>
453
453
 
454
454
  <div id="footer">
455
- Generated on Mon Dec 8 17:21:04 2025 by
455
+ Generated on Mon Dec 8 18:10:35 2025 by
456
456
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
457
457
  0.9.34 (ruby-3.3.5).
458
458
  </div>
@@ -1482,7 +1482,7 @@
1482
1482
  </div>
1483
1483
 
1484
1484
  <div id="footer">
1485
- Generated on Mon Dec 8 17:21:04 2025 by
1485
+ Generated on Mon Dec 8 18:10:35 2025 by
1486
1486
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
1487
1487
  0.9.34 (ruby-3.3.5).
1488
1488
  </div>
@@ -162,7 +162,7 @@
162
162
  </div>
163
163
 
164
164
  <div id="footer">
165
- Generated on Mon Dec 8 17:21:04 2025 by
165
+ Generated on Mon Dec 8 18:10:35 2025 by
166
166
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
167
167
  0.9.34 (ruby-3.3.5).
168
168
  </div>
@@ -2683,7 +2683,7 @@
2683
2683
  </div>
2684
2684
 
2685
2685
  <div id="footer">
2686
- Generated on Mon Dec 8 17:21:04 2025 by
2686
+ Generated on Mon Dec 8 18:10:35 2025 by
2687
2687
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
2688
2688
  0.9.34 (ruby-3.3.5).
2689
2689
  </div>
@@ -452,7 +452,7 @@
452
452
  </div>
453
453
 
454
454
  <div id="footer">
455
- Generated on Mon Dec 8 17:21:04 2025 by
455
+ Generated on Mon Dec 8 18:10:35 2025 by
456
456
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
457
457
  0.9.34 (ruby-3.3.5).
458
458
  </div>
@@ -730,7 +730,7 @@
730
730
  </div>
731
731
 
732
732
  <div id="footer">
733
- Generated on Mon Dec 8 17:21:04 2025 by
733
+ Generated on Mon Dec 8 18:10:35 2025 by
734
734
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
735
735
  0.9.34 (ruby-3.3.5).
736
736
  </div>
@@ -591,7 +591,7 @@
591
591
  </div>
592
592
 
593
593
  <div id="footer">
594
- Generated on Mon Dec 8 17:21:04 2025 by
594
+ Generated on Mon Dec 8 18:10:35 2025 by
595
595
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
596
596
  0.9.34 (ruby-3.3.5).
597
597
  </div>
@@ -118,7 +118,7 @@
118
118
  </div>
119
119
 
120
120
  <div id="footer">
121
- Generated on Mon Dec 8 17:21:03 2025 by
121
+ Generated on Mon Dec 8 18:10:34 2025 by
122
122
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
123
123
  0.9.34 (ruby-3.3.5).
124
124
  </div>
@@ -126,7 +126,7 @@
126
126
  </div>
127
127
 
128
128
  <div id="footer">
129
- Generated on Mon Dec 8 17:21:03 2025 by
129
+ Generated on Mon Dec 8 18:10:34 2025 by
130
130
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
131
131
  0.9.34 (ruby-3.3.5).
132
132
  </div>
@@ -123,7 +123,7 @@
123
123
  </div>
124
124
 
125
125
  <div id="footer">
126
- Generated on Mon Dec 8 17:21:03 2025 by
126
+ Generated on Mon Dec 8 18:10:34 2025 by
127
127
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
128
128
  0.9.34 (ruby-3.3.5).
129
129
  </div>
@@ -765,7 +765,13 @@
765
765
  68
766
766
  69
767
767
  70
768
- 71</pre>
768
+ 71
769
+ 72
770
+ 73
771
+ 74
772
+ 75
773
+ 76
774
+ 77</pre>
769
775
  </td>
770
776
  <td>
771
777
  <pre class="code"><span class="info file"># File 'lib/compony/intent.rb', line 26</span>
@@ -798,7 +804,13 @@
798
804
  </span> <span class='ivar'>@comp_class</span> <span class='op'>=</span> <span class='id identifier rubyid_comp_name_or_cst_or_class'>comp_name_or_cst_or_class</span>
799
805
  <span class='kw'>else</span>
800
806
  <span class='comment'># Build the constant from the first two arguments
801
- </span> <span class='id identifier rubyid_family_underscore_str'>family_underscore_str</span> <span class='op'>=</span> <span class='ivar'>@data</span><span class='period'>.</span><span class='id identifier rubyid_respond_to?'>respond_to?</span><span class='lparen'>(</span><span class='symbol'>:model_name</span><span class='rparen'>)</span> <span class='op'>?</span> <span class='ivar'>@data</span><span class='period'>.</span><span class='id identifier rubyid_model_name'>model_name</span><span class='period'>.</span><span class='id identifier rubyid_plural'>plural</span> <span class='op'>:</span> <span class='id identifier rubyid_model_or_family_name_or_cst'>model_or_family_name_or_cst</span><span class='period'>.</span><span class='id identifier rubyid_to_s'>to_s</span><span class='period'>.</span><span class='id identifier rubyid_underscore'>underscore</span>
807
+ </span> <span class='id identifier rubyid_family_underscore_str'>family_underscore_str</span> <span class='op'>=</span> <span class='kw'>if</span> <span class='op'>!</span><span class='lparen'>(</span><span class='id identifier rubyid_model_or_family_name_or_cst'>model_or_family_name_or_cst</span><span class='period'>.</span><span class='id identifier rubyid_is_a?'>is_a?</span><span class='lparen'>(</span><span class='const'>String</span><span class='rparen'>)</span> <span class='op'>||</span> <span class='id identifier rubyid_model_or_family_name_or_cst'>model_or_family_name_or_cst</span><span class='period'>.</span><span class='id identifier rubyid_is_a?'>is_a?</span><span class='lparen'>(</span><span class='const'>Symbol</span><span class='rparen'>)</span><span class='rparen'>)</span> <span class='op'>&amp;&amp;</span> <span class='ivar'>@data</span><span class='period'>.</span><span class='id identifier rubyid_respond_to?'>respond_to?</span><span class='lparen'>(</span><span class='symbol'>:model_name</span><span class='rparen'>)</span>
808
+ <span class='comment'># Determine the component family from the data
809
+ </span> <span class='ivar'>@data</span><span class='period'>.</span><span class='id identifier rubyid_model_name'>model_name</span><span class='period'>.</span><span class='id identifier rubyid_plural'>plural</span>
810
+ <span class='kw'>else</span>
811
+ <span class='comment'># Determine the component family from the given argument
812
+ </span> <span class='id identifier rubyid_model_or_family_name_or_cst'>model_or_family_name_or_cst</span><span class='period'>.</span><span class='id identifier rubyid_to_s'>to_s</span><span class='period'>.</span><span class='id identifier rubyid_underscore'>underscore</span>
813
+ <span class='kw'>end</span>
802
814
  <span class='id identifier rubyid_constant_str'>constant_str</span> <span class='op'>=</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>::Components::</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_family_underscore_str'>family_underscore_str</span><span class='period'>.</span><span class='id identifier rubyid_camelize'>camelize</span><span class='embexpr_end'>}</span><span class='tstring_content'>::</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_comp_name_or_cst_or_class'>comp_name_or_cst_or_class</span><span class='period'>.</span><span class='id identifier rubyid_to_s'>to_s</span><span class='period'>.</span><span class='id identifier rubyid_camelize'>camelize</span><span class='embexpr_end'>}</span><span class='tstring_end'>&quot;</span></span>
803
815
  <span class='ivar'>@comp_class</span> <span class='op'>=</span> <span class='id identifier rubyid_constant_str'>constant_str</span><span class='period'>.</span><span class='id identifier rubyid_constantize'>constantize</span>
804
816
  <span class='kw'>end</span>
@@ -941,18 +953,18 @@
941
953
  <pre class="lines">
942
954
 
943
955
 
944
- 128
945
- 129
946
- 130
947
- 131
948
- 132
949
- 133
950
956
  134
951
957
  135
952
- 136</pre>
958
+ 136
959
+ 137
960
+ 138
961
+ 139
962
+ 140
963
+ 141
964
+ 142</pre>
953
965
  </td>
954
966
  <td>
955
- <pre class="code"><span class="info file"># File 'lib/compony/intent.rb', line 128</span>
967
+ <pre class="code"><span class="info file"># File 'lib/compony/intent.rb', line 134</span>
956
968
 
957
969
  <span class='kw'>def</span> <span class='id identifier rubyid_button_comp_opts'>button_comp_opts</span>
958
970
  <span class='kw'>return</span> <span class='lbrace'>{</span>
@@ -994,13 +1006,13 @@
994
1006
  <pre class="lines">
995
1007
 
996
1008
 
997
- 81
998
- 82
999
- 83
1000
- 84</pre>
1009
+ 87
1010
+ 88
1011
+ 89
1012
+ 90</pre>
1001
1013
  </td>
1002
1014
  <td>
1003
- <pre class="code"><span class="info file"># File 'lib/compony/intent.rb', line 81</span>
1015
+ <pre class="code"><span class="info file"># File 'lib/compony/intent.rb', line 87</span>
1004
1016
 
1005
1017
  <span class='kw'>def</span> <span class='id identifier rubyid_comp'>comp</span><span class='lparen'>(</span><span class='op'>*</span><span class='comma'>,</span> <span class='op'>**</span><span class='rparen'>)</span>
1006
1018
  <span class='kw'>return</span> <span class='kw'>nil</span> <span class='kw'>if</span> <span class='ivar'>@comp_class</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
@@ -1035,12 +1047,12 @@
1035
1047
  <pre class="lines">
1036
1048
 
1037
1049
 
1038
- 117
1039
- 118
1040
- 119</pre>
1050
+ 123
1051
+ 124
1052
+ 125</pre>
1041
1053
  </td>
1042
1054
  <td>
1043
- <pre class="code"><span class="info file"># File 'lib/compony/intent.rb', line 117</span>
1055
+ <pre class="code"><span class="info file"># File 'lib/compony/intent.rb', line 123</span>
1044
1056
 
1045
1057
  <span class='kw'>def</span> <span class='id identifier rubyid_feasibility_action'>feasibility_action</span>
1046
1058
  <span class='ivar'>@feasibility_action</span><span class='period'>.</span><span class='id identifier rubyid_presence'>presence</span> <span class='op'>||</span> <span class='id identifier rubyid_comp_class'>comp_class</span><span class='period'>.</span><span class='id identifier rubyid_comp_name'>comp_name</span><span class='period'>.</span><span class='id identifier rubyid_to_sym'>to_sym</span>
@@ -1074,12 +1086,12 @@
1074
1086
  <pre class="lines">
1075
1087
 
1076
1088
 
1077
- 113
1078
- 114
1079
- 115</pre>
1089
+ 119
1090
+ 120
1091
+ 121</pre>
1080
1092
  </td>
1081
1093
  <td>
1082
- <pre class="code"><span class="info file"># File 'lib/compony/intent.rb', line 113</span>
1094
+ <pre class="code"><span class="info file"># File 'lib/compony/intent.rb', line 119</span>
1083
1095
 
1084
1096
  <span class='kw'>def</span> <span class='id identifier rubyid_feasibility_target'>feasibility_target</span>
1085
1097
  <span class='ivar'>@feasibility_target</span><span class='period'>.</span><span class='id identifier rubyid_presence'>presence</span> <span class='op'>||</span> <span class='id identifier rubyid_model?'>model?</span> <span class='op'>?</span> <span class='ivar'>@data</span> <span class='op'>:</span> <span class='kw'>nil</span>
@@ -1128,13 +1140,13 @@
1128
1140
  <pre class="lines">
1129
1141
 
1130
1142
 
1131
- 122
1132
- 123
1133
- 124
1134
- 125</pre>
1143
+ 128
1144
+ 129
1145
+ 130
1146
+ 131</pre>
1135
1147
  </td>
1136
1148
  <td>
1137
- <pre class="code"><span class="info file"># File 'lib/compony/intent.rb', line 122</span>
1149
+ <pre class="code"><span class="info file"># File 'lib/compony/intent.rb', line 128</span>
1138
1150
 
1139
1151
  <span class='kw'>def</span> <span class='id identifier rubyid_feasible?'>feasible?</span>
1140
1152
  <span class='kw'>return</span> <span class='kw'>true</span> <span class='kw'>if</span> <span class='id identifier rubyid_feasibility_target'>feasibility_target</span><span class='period'>.</span><span class='id identifier rubyid_blank?'>blank?</span> <span class='op'>||</span> <span class='id identifier rubyid_feasibility_action'>feasibility_action</span><span class='period'>.</span><span class='id identifier rubyid_blank?'>blank?</span>
@@ -1171,13 +1183,13 @@
1171
1183
  <pre class="lines">
1172
1184
 
1173
1185
 
1174
- 104
1175
- 105
1176
- 106
1177
- 107</pre>
1186
+ 110
1187
+ 111
1188
+ 112
1189
+ 113</pre>
1178
1190
  </td>
1179
1191
  <td>
1180
- <pre class="code"><span class="info file"># File 'lib/compony/intent.rb', line 104</span>
1192
+ <pre class="code"><span class="info file"># File 'lib/compony/intent.rb', line 110</span>
1181
1193
 
1182
1194
  <span class='kw'>def</span> <span class='id identifier rubyid_label'>label</span><span class='lparen'>(</span><span class='id identifier rubyid_model'>model</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='op'>*</span><span class='comma'>,</span> <span class='op'>**</span><span class='id identifier rubyid_label_opt_overrides'>label_opt_overrides</span><span class='rparen'>)</span>
1183
1195
  <span class='id identifier rubyid_label_opts'>label_opts</span> <span class='op'>=</span> <span class='ivar'>@label_opts</span><span class='period'>.</span><span class='id identifier rubyid_deep_merge'>deep_merge</span><span class='lparen'>(</span><span class='id identifier rubyid_label_opt_overrides'>label_opt_overrides</span><span class='rparen'>)</span>
@@ -1212,12 +1224,12 @@
1212
1224
  <pre class="lines">
1213
1225
 
1214
1226
 
1215
- 109
1216
- 110
1217
- 111</pre>
1227
+ 115
1228
+ 116
1229
+ 117</pre>
1218
1230
  </td>
1219
1231
  <td>
1220
- <pre class="code"><span class="info file"># File 'lib/compony/intent.rb', line 109</span>
1232
+ <pre class="code"><span class="info file"># File 'lib/compony/intent.rb', line 115</span>
1221
1233
 
1222
1234
  <span class='kw'>def</span> <span class='id identifier rubyid_method'>method</span>
1223
1235
  <span class='ivar'>@method</span> <span class='op'>||</span> <span class='symbol'>:get</span>
@@ -1266,13 +1278,13 @@
1266
1278
  <pre class="lines">
1267
1279
 
1268
1280
 
1269
- 74
1270
- 75
1271
- 76
1272
- 77</pre>
1281
+ 80
1282
+ 81
1283
+ 82
1284
+ 83</pre>
1273
1285
  </td>
1274
1286
  <td>
1275
- <pre class="code"><span class="info file"># File 'lib/compony/intent.rb', line 74</span>
1287
+ <pre class="code"><span class="info file"># File 'lib/compony/intent.rb', line 80</span>
1276
1288
 
1277
1289
  <span class='kw'>def</span> <span class='id identifier rubyid_model?'>model?</span>
1278
1290
  <span class='ivar'>@model</span> <span class='op'>=</span> <span class='ivar'>@data</span><span class='period'>.</span><span class='id identifier rubyid_respond_to?'>respond_to?</span><span class='lparen'>(</span><span class='symbol'>:model_name</span><span class='rparen'>)</span> <span class='op'>&amp;&amp;</span> <span class='op'>!</span><span class='ivar'>@data</span><span class='period'>.</span><span class='id identifier rubyid_is_a?'>is_a?</span><span class='lparen'>(</span><span class='const'>Class</span><span class='rparen'>)</span> <span class='kw'>if</span> <span class='ivar'>@model</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
@@ -1309,12 +1321,12 @@
1309
1321
  <pre class="lines">
1310
1322
 
1311
1323
 
1312
- 99
1313
- 100
1314
- 101</pre>
1324
+ 105
1325
+ 106
1326
+ 107</pre>
1315
1327
  </td>
1316
1328
  <td>
1317
- <pre class="code"><span class="info file"># File 'lib/compony/intent.rb', line 99</span>
1329
+ <pre class="code"><span class="info file"># File 'lib/compony/intent.rb', line 105</span>
1318
1330
 
1319
1331
  <span class='kw'>def</span> <span class='id identifier rubyid_name'>name</span>
1320
1332
  <span class='ivar'>@name</span><span class='period'>.</span><span class='id identifier rubyid_presence'>presence</span> <span class='op'>||</span> <span class='symbol'>:&quot;#{</span><span class='id identifier rubyid_comp_class'>comp_class</span><span class='period'>.</span><span class='id identifier rubyid_comp_name'>comp_name</span><span class='embexpr_end'>}</span><span class='tstring_content'>_</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_comp_class'>comp_class</span><span class='period'>.</span><span class='id identifier rubyid_family_name'>family_name</span><span class='embexpr_end'>}</span><span class='tstring_end'>&quot;</span></span>
@@ -1390,15 +1402,15 @@
1390
1402
  <pre class="lines">
1391
1403
 
1392
1404
 
1393
- 90
1394
- 91
1395
- 92
1396
- 93
1397
- 94
1398
- 95</pre>
1405
+ 96
1406
+ 97
1407
+ 98
1408
+ 99
1409
+ 100
1410
+ 101</pre>
1399
1411
  </td>
1400
1412
  <td>
1401
- <pre class="code"><span class="info file"># File 'lib/compony/intent.rb', line 90</span>
1413
+ <pre class="code"><span class="info file"># File 'lib/compony/intent.rb', line 96</span>
1402
1414
 
1403
1415
  <span class='kw'>def</span> <span class='id identifier rubyid_path'>path</span><span class='lparen'>(</span><span class='id identifier rubyid_model'>model</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='op'>*</span><span class='comma'>,</span> <span class='label'>standalone_name:</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='op'>**</span><span class='id identifier rubyid_path_opt_overrides'>path_opt_overrides</span><span class='rparen'>)</span>
1404
1416
  <span class='kw'>return</span> <span class='ivar'>@path</span> <span class='kw'>if</span> <span class='ivar'>@path</span><span class='period'>.</span><span class='id identifier rubyid_present?'>present?</span>
@@ -1509,22 +1521,22 @@
1509
1521
  <pre class="lines">
1510
1522
 
1511
1523
 
1512
- 143
1513
- 144
1514
- 145
1515
- 146
1516
- 147
1517
- 148
1518
1524
  149
1519
1525
  150
1520
1526
  151
1521
1527
  152
1522
1528
  153
1523
1529
  154
1524
- 155</pre>
1530
+ 155
1531
+ 156
1532
+ 157
1533
+ 158
1534
+ 159
1535
+ 160
1536
+ 161</pre>
1525
1537
  </td>
1526
1538
  <td>
1527
- <pre class="code"><span class="info file"># File 'lib/compony/intent.rb', line 143</span>
1539
+ <pre class="code"><span class="info file"># File 'lib/compony/intent.rb', line 149</span>
1528
1540
 
1529
1541
  <span class='kw'>def</span> <span class='id identifier rubyid_render'>render</span><span class='lparen'>(</span><span class='id identifier rubyid_controller'>controller</span><span class='comma'>,</span> <span class='id identifier rubyid_parent_comp'>parent_comp</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='label'>style:</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='op'>**</span><span class='id identifier rubyid_button_arg_overrides'>button_arg_overrides</span><span class='rparen'>)</span>
1530
1542
  <span class='comment'># Abort if not authorized
@@ -1549,7 +1561,7 @@
1549
1561
  </div>
1550
1562
 
1551
1563
  <div id="footer">
1552
- Generated on Mon Dec 8 17:21:04 2025 by
1564
+ Generated on Mon Dec 8 18:10:34 2025 by
1553
1565
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
1554
1566
  0.9.34 (ruby-3.3.5).
1555
1567
  </div>
@@ -128,7 +128,7 @@
128
128
  <li class="protected ">
129
129
  <span class="summary_signature">
130
130
 
131
- <a href="#add-instance_method" title="#add (instance method)">#<strong>add</strong>(before: nil) &#x21d2; Object </a>
131
+ <a href="#add-instance_method" title="#add (instance method)">#<strong>add</strong>(*args, before: nil, **kwargs) &#x21d2; Object </a>
132
132
 
133
133
 
134
134
 
@@ -261,7 +261,7 @@
261
261
  <div class="method_details first">
262
262
  <h3 class="signature first" id="add-instance_method">
263
263
 
264
- #<strong>add</strong>(before: nil) &#x21d2; <tt>Object</tt> <span class="extras">(protected)</span>
264
+ #<strong>add</strong>(*args, before: nil, **kwargs) &#x21d2; <tt>Object</tt> <span class="extras">(protected)</span>
265
265
 
266
266
 
267
267
 
@@ -311,16 +311,20 @@
311
311
  17
312
312
  18
313
313
  19
314
- 20</pre>
314
+ 20
315
+ 21
316
+ 22</pre>
315
317
  </td>
316
318
  <td>
317
319
  <pre class="code"><span class="info file"># File 'lib/compony/manage_intents_dsl.rb', line 15</span>
318
320
 
319
- <span class='kw'>def</span> <span class='id identifier rubyid_add'>add</span><span class='lparen'>(</span><span class='op'>*</span><span class='comma'>,</span> <span class='label'>before:</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='op'>**</span><span class='rparen'>)</span>
320
- <span class='id identifier rubyid_intent'>intent</span> <span class='op'>=</span> <span class='const'><span class='object_link'><a href="../Compony.html" title="Compony (module)">Compony</a></span></span><span class='period'>.</span><span class='id identifier rubyid_intent'><span class='object_link'><a href="../Compony.html#intent-class_method" title="Compony.intent (method)">intent</a></span></span><span class='lparen'>(</span><span class='op'>*</span><span class='comma'>,</span> <span class='op'>**</span><span class='ivar'>@intent_opts</span><span class='comma'>,</span> <span class='op'>**</span><span class='rparen'>)</span>
321
+ <span class='kw'>def</span> <span class='id identifier rubyid_add'>add</span><span class='lparen'>(</span><span class='op'>*</span><span class='id identifier rubyid_args'>args</span><span class='comma'>,</span> <span class='label'>before:</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='op'>**</span><span class='id identifier rubyid_kwargs'>kwargs</span><span class='rparen'>)</span>
322
+ <span class='id identifier rubyid_intent'>intent</span> <span class='op'>=</span> <span class='const'><span class='object_link'><a href="../Compony.html" title="Compony (module)">Compony</a></span></span><span class='period'>.</span><span class='id identifier rubyid_intent'><span class='object_link'><a href="../Compony.html#intent-class_method" title="Compony.intent (method)">intent</a></span></span><span class='lparen'>(</span><span class='op'>*</span><span class='id identifier rubyid_args'>args</span><span class='comma'>,</span> <span class='op'>**</span><span class='ivar'>@intent_opts</span><span class='comma'>,</span> <span class='op'>**</span><span class='id identifier rubyid_kwargs'>kwargs</span><span class='rparen'>)</span>
321
323
  <span class='ivar'>@exposed_intents</span><span class='period'>.</span><span class='id identifier rubyid_natural_push'>natural_push</span><span class='lparen'>(</span><span class='id identifier rubyid_intent'>intent</span><span class='period'>.</span><span class='id identifier rubyid_name'>name</span><span class='comma'>,</span> <span class='id identifier rubyid_intent'>intent</span><span class='comma'>,</span> <span class='label'>before:</span><span class='rparen'>)</span>
322
- <span class='kw'>rescue</span> <span class='const'>NameError</span> <span class='comment'># Ignore if the component is not actually defined
323
- </span> <span class='kw'>return</span> <span class='kw'>nil</span>
324
+ <span class='kw'>rescue</span> <span class='const'>NameError</span> <span class='op'>=&gt;</span> <span class='id identifier rubyid_e'>e</span> <span class='comment'># Ignore if the component is not actually defined
325
+ </span> <span class='const'>Rails</span><span class='period'>.</span><span class='id identifier rubyid_logger'>logger</span><span class='period'>.</span><span class='id identifier rubyid_debug'>debug</span> <span class='kw'>do</span>
326
+ <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Skipping intent for arguments </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_args'>args</span><span class='period'>.</span><span class='id identifier rubyid_inspect'>inspect</span><span class='embexpr_end'>}</span><span class='tstring_content'>, </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_kwargs'>kwargs</span><span class='period'>.</span><span class='id identifier rubyid_inspect'>inspect</span><span class='embexpr_end'>}</span><span class='tstring_content'>: </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_e'>e</span><span class='period'>.</span><span class='id identifier rubyid_inspect'>inspect</span><span class='embexpr_end'>}</span><span class='tstring_content'>.</span><span class='tstring_end'>&quot;</span></span>
327
+ <span class='kw'>end</span>
324
328
  <span class='kw'>end</span></pre>
325
329
  </td>
326
330
  </tr>
@@ -373,15 +377,15 @@
373
377
  <pre class="lines">
374
378
 
375
379
 
376
- 25
377
- 26
378
380
  27
379
381
  28
380
382
  29
381
- 30</pre>
383
+ 30
384
+ 31
385
+ 32</pre>
382
386
  </td>
383
387
  <td>
384
- <pre class="code"><span class="info file"># File 'lib/compony/manage_intents_dsl.rb', line 25</span>
388
+ <pre class="code"><span class="info file"># File 'lib/compony/manage_intents_dsl.rb', line 27</span>
385
389
 
386
390
  <span class='kw'>def</span> <span class='id identifier rubyid_remove'>remove</span><span class='lparen'>(</span><span class='id identifier rubyid_intent_name'>intent_name</span><span class='rparen'>)</span>
387
391
  <span class='id identifier rubyid_existing_index'>existing_index</span> <span class='op'>=</span> <span class='ivar'>@exposed_intents</span><span class='period'>.</span><span class='id identifier rubyid_find_index'>find_index</span> <span class='lbrace'>{</span> <span class='op'>|</span><span class='id identifier rubyid_el'>el</span><span class='op'>|</span> <span class='id identifier rubyid_el'>el</span><span class='period'>.</span><span class='id identifier rubyid_name'>name</span> <span class='op'>==</span> <span class='id identifier rubyid_intent_name'>intent_name</span><span class='period'>.</span><span class='id identifier rubyid_to_sym'>to_sym</span> <span class='rbrace'>}</span>
@@ -399,7 +403,7 @@
399
403
  </div>
400
404
 
401
405
  <div id="footer">
402
- Generated on Mon Dec 8 17:21:04 2025 by
406
+ Generated on Mon Dec 8 18:10:35 2025 by
403
407
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
404
408
  0.9.34 (ruby-3.3.5).
405
409
  </div>
@@ -443,7 +443,7 @@ instance_of_a_hash.roo --&gt; nil
443
443
  </div>
444
444
 
445
445
  <div id="footer">
446
- Generated on Mon Dec 8 17:21:04 2025 by
446
+ Generated on Mon Dec 8 18:10:35 2025 by
447
447
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
448
448
  0.9.34 (ruby-3.3.5).
449
449
  </div>
@@ -509,7 +509,7 @@
509
509
  </div>
510
510
 
511
511
  <div id="footer">
512
- Generated on Mon Dec 8 17:21:05 2025 by
512
+ Generated on Mon Dec 8 18:10:35 2025 by
513
513
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
514
514
  0.9.34 (ruby-3.3.5).
515
515
  </div>
@@ -603,7 +603,7 @@
603
603
  </div>
604
604
 
605
605
  <div id="footer">
606
- Generated on Mon Dec 8 17:21:05 2025 by
606
+ Generated on Mon Dec 8 18:10:35 2025 by
607
607
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
608
608
  0.9.34 (ruby-3.3.5).
609
609
  </div>
@@ -489,7 +489,7 @@
489
489
  </div>
490
490
 
491
491
  <div id="footer">
492
- Generated on Mon Dec 8 17:21:04 2025 by
492
+ Generated on Mon Dec 8 18:10:35 2025 by
493
493
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
494
494
  0.9.34 (ruby-3.3.5).
495
495
  </div>
@@ -1186,7 +1186,7 @@
1186
1186
  </div>
1187
1187
 
1188
1188
  <div id="footer">
1189
- Generated on Mon Dec 8 17:21:04 2025 by
1189
+ Generated on Mon Dec 8 18:10:35 2025 by
1190
1190
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
1191
1191
  0.9.34 (ruby-3.3.5).
1192
1192
  </div>
@@ -354,7 +354,7 @@
354
354
  </div>
355
355
 
356
356
  <div id="footer">
357
- Generated on Mon Dec 8 17:21:04 2025 by
357
+ Generated on Mon Dec 8 18:10:35 2025 by
358
358
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
359
359
  0.9.34 (ruby-3.3.5).
360
360
  </div>
@@ -289,7 +289,7 @@
289
289
  </div>
290
290
 
291
291
  <div id="footer">
292
- Generated on Mon Dec 8 17:21:04 2025 by
292
+ Generated on Mon Dec 8 18:10:35 2025 by
293
293
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
294
294
  0.9.34 (ruby-3.3.5).
295
295
  </div>
@@ -222,7 +222,7 @@
222
222
  </div>
223
223
 
224
224
  <div id="footer">
225
- Generated on Mon Dec 8 17:21:04 2025 by
225
+ Generated on Mon Dec 8 18:10:35 2025 by
226
226
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
227
227
  0.9.34 (ruby-3.3.5).
228
228
  </div>
@@ -222,7 +222,7 @@
222
222
  </div>
223
223
 
224
224
  <div id="footer">
225
- Generated on Mon Dec 8 17:21:04 2025 by
225
+ Generated on Mon Dec 8 18:10:35 2025 by
226
226
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
227
227
  0.9.34 (ruby-3.3.5).
228
228
  </div>
@@ -222,7 +222,7 @@
222
222
  </div>
223
223
 
224
224
  <div id="footer">
225
- Generated on Mon Dec 8 17:21:04 2025 by
225
+ Generated on Mon Dec 8 18:10:35 2025 by
226
226
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
227
227
  0.9.34 (ruby-3.3.5).
228
228
  </div>
@@ -144,7 +144,7 @@
144
144
  </div>
145
145
 
146
146
  <div id="footer">
147
- Generated on Mon Dec 8 17:21:04 2025 by
147
+ Generated on Mon Dec 8 18:10:35 2025 by
148
148
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
149
149
  0.9.34 (ruby-3.3.5).
150
150
  </div>
@@ -230,7 +230,7 @@
230
230
  </div>
231
231
 
232
232
  <div id="footer">
233
- Generated on Mon Dec 8 17:21:04 2025 by
233
+ Generated on Mon Dec 8 18:10:35 2025 by
234
234
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
235
235
  0.9.34 (ruby-3.3.5).
236
236
  </div>
@@ -144,7 +144,7 @@
144
144
  </div>
145
145
 
146
146
  <div id="footer">
147
- Generated on Mon Dec 8 17:21:04 2025 by
147
+ Generated on Mon Dec 8 18:10:35 2025 by
148
148
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
149
149
  0.9.34 (ruby-3.3.5).
150
150
  </div>
@@ -222,7 +222,7 @@
222
222
  </div>
223
223
 
224
224
  <div id="footer">
225
- Generated on Mon Dec 8 17:21:04 2025 by
225
+ Generated on Mon Dec 8 18:10:35 2025 by
226
226
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
227
227
  0.9.34 (ruby-3.3.5).
228
228
  </div>
@@ -222,7 +222,7 @@
222
222
  </div>
223
223
 
224
224
  <div id="footer">
225
- Generated on Mon Dec 8 17:21:04 2025 by
225
+ Generated on Mon Dec 8 18:10:35 2025 by
226
226
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
227
227
  0.9.34 (ruby-3.3.5).
228
228
  </div>
@@ -291,7 +291,7 @@
291
291
  </div>
292
292
 
293
293
  <div id="footer">
294
- Generated on Mon Dec 8 17:21:04 2025 by
294
+ Generated on Mon Dec 8 18:10:35 2025 by
295
295
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
296
296
  0.9.34 (ruby-3.3.5).
297
297
  </div>
@@ -222,7 +222,7 @@
222
222
  </div>
223
223
 
224
224
  <div id="footer">
225
- Generated on Mon Dec 8 17:21:04 2025 by
225
+ Generated on Mon Dec 8 18:10:35 2025 by
226
226
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
227
227
  0.9.34 (ruby-3.3.5).
228
228
  </div>
@@ -144,7 +144,7 @@
144
144
  </div>
145
145
 
146
146
  <div id="footer">
147
- Generated on Mon Dec 8 17:21:04 2025 by
147
+ Generated on Mon Dec 8 18:10:35 2025 by
148
148
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
149
149
  0.9.34 (ruby-3.3.5).
150
150
  </div>
@@ -144,7 +144,7 @@
144
144
  </div>
145
145
 
146
146
  <div id="footer">
147
- Generated on Mon Dec 8 17:21:04 2025 by
147
+ Generated on Mon Dec 8 18:10:35 2025 by
148
148
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
149
149
  0.9.34 (ruby-3.3.5).
150
150
  </div>
@@ -144,7 +144,7 @@
144
144
  </div>
145
145
 
146
146
  <div id="footer">
147
- Generated on Mon Dec 8 17:21:04 2025 by
147
+ Generated on Mon Dec 8 18:10:35 2025 by
148
148
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
149
149
  0.9.34 (ruby-3.3.5).
150
150
  </div>
@@ -230,7 +230,7 @@
230
230
  </div>
231
231
 
232
232
  <div id="footer">
233
- Generated on Mon Dec 8 17:21:04 2025 by
233
+ Generated on Mon Dec 8 18:10:35 2025 by
234
234
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
235
235
  0.9.34 (ruby-3.3.5).
236
236
  </div>
@@ -116,7 +116,7 @@
116
116
  </div>
117
117
 
118
118
  <div id="footer">
119
- Generated on Mon Dec 8 17:21:03 2025 by
119
+ Generated on Mon Dec 8 18:10:34 2025 by
120
120
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
121
121
  0.9.34 (ruby-3.3.5).
122
122
  </div>
@@ -519,7 +519,7 @@
519
519
  </div>
520
520
 
521
521
  <div id="footer">
522
- Generated on Mon Dec 8 17:21:03 2025 by
522
+ Generated on Mon Dec 8 18:10:34 2025 by
523
523
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
524
524
  0.9.34 (ruby-3.3.5).
525
525
  </div>
@@ -290,7 +290,7 @@
290
290
  </div>
291
291
 
292
292
  <div id="footer">
293
- Generated on Mon Dec 8 17:21:04 2025 by
293
+ Generated on Mon Dec 8 18:10:35 2025 by
294
294
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
295
295
  0.9.34 (ruby-3.3.5).
296
296
  </div>
@@ -1084,7 +1084,7 @@
1084
1084
  </div>
1085
1085
 
1086
1086
  <div id="footer">
1087
- Generated on Mon Dec 8 17:21:04 2025 by
1087
+ Generated on Mon Dec 8 18:10:35 2025 by
1088
1088
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
1089
1089
  0.9.34 (ruby-3.3.5).
1090
1090
  </div>
@@ -129,7 +129,7 @@
129
129
  </div>
130
130
 
131
131
  <div id="footer">
132
- Generated on Mon Dec 8 17:21:03 2025 by
132
+ Generated on Mon Dec 8 18:10:34 2025 by
133
133
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
134
134
  0.9.34 (ruby-3.3.5).
135
135
  </div>
@@ -222,7 +222,7 @@
222
222
  </div>
223
223
 
224
224
  <div id="footer">
225
- Generated on Mon Dec 8 17:21:03 2025 by
225
+ Generated on Mon Dec 8 18:10:34 2025 by
226
226
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
227
227
  0.9.34 (ruby-3.3.5).
228
228
  </div>
@@ -142,7 +142,7 @@
142
142
  </div>
143
143
 
144
144
  <div id="footer">
145
- Generated on Mon Dec 8 17:21:04 2025 by
145
+ Generated on Mon Dec 8 18:10:35 2025 by
146
146
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
147
147
  0.9.34 (ruby-3.3.5).
148
148
  </div>
data/doc/Compony.html CHANGED
@@ -1674,7 +1674,7 @@
1674
1674
  </div>
1675
1675
 
1676
1676
  <div id="footer">
1677
- Generated on Mon Dec 8 17:21:03 2025 by
1677
+ Generated on Mon Dec 8 18:10:34 2025 by
1678
1678
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
1679
1679
  0.9.34 (ruby-3.3.5).
1680
1680
  </div>
@@ -114,7 +114,7 @@
114
114
  </div>
115
115
 
116
116
  <div id="footer">
117
- Generated on Mon Dec 8 17:21:04 2025 by
117
+ Generated on Mon Dec 8 18:10:35 2025 by
118
118
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
119
119
  0.9.34 (ruby-3.3.5).
120
120
  </div>
data/doc/_index.html CHANGED
@@ -622,7 +622,7 @@
622
622
  </div>
623
623
 
624
624
  <div id="footer">
625
- Generated on Mon Dec 8 17:21:03 2025 by
625
+ Generated on Mon Dec 8 18:10:34 2025 by
626
626
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
627
627
  0.9.34 (ruby-3.3.5).
628
628
  </div>
data/doc/file.README.html CHANGED
@@ -199,7 +199,7 @@
199
199
  </div></div>
200
200
 
201
201
  <div id="footer">
202
- Generated on Mon Dec 8 17:21:03 2025 by
202
+ Generated on Mon Dec 8 18:10:34 2025 by
203
203
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
204
204
  0.9.34 (ruby-3.3.5).
205
205
  </div>
data/doc/index.html CHANGED
@@ -199,7 +199,7 @@
199
199
  </div></div>
200
200
 
201
201
  <div id="footer">
202
- Generated on Mon Dec 8 17:21:03 2025 by
202
+ Generated on Mon Dec 8 18:10:34 2025 by
203
203
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
204
204
  0.9.34 (ruby-3.3.5).
205
205
  </div>
@@ -102,7 +102,7 @@
102
102
  </div>
103
103
 
104
104
  <div id="footer">
105
- Generated on Mon Dec 8 17:21:03 2025 by
105
+ Generated on Mon Dec 8 18:10:34 2025 by
106
106
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
107
107
  0.9.34 (ruby-3.3.5).
108
108
  </div>
@@ -51,7 +51,13 @@ module Compony
51
51
  @comp_class = comp_name_or_cst_or_class
52
52
  else
53
53
  # Build the constant from the first two arguments
54
- family_underscore_str = @data.respond_to?(:model_name) ? @data.model_name.plural : model_or_family_name_or_cst.to_s.underscore
54
+ family_underscore_str = if !(model_or_family_name_or_cst.is_a?(String) || model_or_family_name_or_cst.is_a?(Symbol)) && @data.respond_to?(:model_name)
55
+ # Determine the component family from the data
56
+ @data.model_name.plural
57
+ else
58
+ # Determine the component family from the given argument
59
+ model_or_family_name_or_cst.to_s.underscore
60
+ end
55
61
  constant_str = "::Components::#{family_underscore_str.camelize}::#{comp_name_or_cst_or_class.to_s.camelize}"
56
62
  @comp_class = constant_str.constantize
57
63
  end
@@ -12,11 +12,13 @@ module Compony
12
12
  # Adds or replaces an intent to those exposed by the component based on the intent name (override the name if you need to avoid a naming collision).
13
13
  # Intents specified this way can be retrieved and rendered by the parent component or by calling `root_intents` in case of standalone access.
14
14
  # @param [Symbol] before If specified, will insert the intent before the other. When replacing, an element keeps its position unless `before:`` is passed.
15
- def add(*, before: nil, **)
16
- intent = Compony.intent(*, **@intent_opts, **)
15
+ def add(*args, before: nil, **kwargs)
16
+ intent = Compony.intent(*args, **@intent_opts, **kwargs)
17
17
  @exposed_intents.natural_push(intent.name, intent, before:)
18
- rescue NameError # Ignore if the component is not actually defined
19
- return nil
18
+ rescue NameError => e # Ignore if the component is not actually defined
19
+ Rails.logger.debug do
20
+ "Skipping intent for arguments #{args.inspect}, #{kwargs.inspect}: #{e.inspect}."
21
+ end
20
22
  end
21
23
 
22
24
  # DSL method
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: compony
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.10.1
4
+ version: 0.10.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Sandro Kalbermatter