compony 0.3.3 → 0.4.0

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 (71) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +26 -0
  3. data/Gemfile.lock +3 -3
  4. data/README.md +41 -0
  5. data/Rakefile +2 -2
  6. data/VERSION +1 -1
  7. data/compony.gemspec +5 -5
  8. data/doc/ComponentGenerator.html +1 -1
  9. data/doc/Components.html +1 -1
  10. data/doc/ComponentsGenerator.html +1 -1
  11. data/doc/Compony/Component.html +9 -9
  12. data/doc/Compony/ComponentMixins/Default/Labelling.html +1 -1
  13. data/doc/Compony/ComponentMixins/Default/Standalone/ResourcefulVerbDsl.html +1 -1
  14. data/doc/Compony/ComponentMixins/Default/Standalone/StandaloneDsl.html +6 -6
  15. data/doc/Compony/ComponentMixins/Default/Standalone/VerbDsl.html +1 -1
  16. data/doc/Compony/ComponentMixins/Default/Standalone.html +1 -1
  17. data/doc/Compony/ComponentMixins/Default.html +1 -1
  18. data/doc/Compony/ComponentMixins/Resourceful.html +1 -1
  19. data/doc/Compony/ComponentMixins.html +1 -1
  20. data/doc/Compony/Components/Button.html +1 -1
  21. data/doc/Compony/Components/Destroy.html +1 -1
  22. data/doc/Compony/Components/Edit.html +18 -18
  23. data/doc/Compony/Components/Form.html +316 -90
  24. data/doc/Compony/Components/New.html +18 -18
  25. data/doc/Compony/Components/WithForm.html +94 -19
  26. data/doc/Compony/Components.html +1 -1
  27. data/doc/Compony/ControllerMixin.html +1 -1
  28. data/doc/Compony/Engine.html +1 -1
  29. data/doc/Compony/MethodAccessibleHash.html +1 -1
  30. data/doc/Compony/ModelFields/Anchormodel.html +1 -1
  31. data/doc/Compony/ModelFields/Association.html +1 -1
  32. data/doc/Compony/ModelFields/Attachment.html +1 -1
  33. data/doc/Compony/ModelFields/Base.html +1 -1
  34. data/doc/Compony/ModelFields/Boolean.html +1 -1
  35. data/doc/Compony/ModelFields/Color.html +1 -1
  36. data/doc/Compony/ModelFields/Currency.html +1 -1
  37. data/doc/Compony/ModelFields/Date.html +1 -1
  38. data/doc/Compony/ModelFields/Datetime.html +1 -1
  39. data/doc/Compony/ModelFields/Decimal.html +1 -1
  40. data/doc/Compony/ModelFields/Email.html +1 -1
  41. data/doc/Compony/ModelFields/Float.html +1 -1
  42. data/doc/Compony/ModelFields/Integer.html +1 -1
  43. data/doc/Compony/ModelFields/Percentage.html +1 -1
  44. data/doc/Compony/ModelFields/Phone.html +1 -1
  45. data/doc/Compony/ModelFields/RichText.html +1 -1
  46. data/doc/Compony/ModelFields/String.html +1 -1
  47. data/doc/Compony/ModelFields/Text.html +1 -1
  48. data/doc/Compony/ModelFields/Time.html +1 -1
  49. data/doc/Compony/ModelFields/Url.html +1 -1
  50. data/doc/Compony/ModelFields.html +1 -1
  51. data/doc/Compony/ModelMixin.html +26 -26
  52. data/doc/Compony/NaturalOrdering.html +1 -1
  53. data/doc/Compony/RequestContext.html +1 -1
  54. data/doc/Compony/Version.html +1 -1
  55. data/doc/Compony/ViewHelpers.html +1 -1
  56. data/doc/Compony.html +2 -2
  57. data/doc/ComponyController.html +1 -1
  58. data/doc/_index.html +1 -1
  59. data/doc/file.README.html +42 -1
  60. data/doc/index.html +42 -1
  61. data/doc/method_list.html +122 -98
  62. data/doc/top-level-namespace.html +1 -1
  63. data/lib/compony/component.rb +4 -4
  64. data/lib/compony/component_mixins/default/standalone/standalone_dsl.rb +3 -3
  65. data/lib/compony/components/edit.rb +4 -1
  66. data/lib/compony/components/form.rb +74 -9
  67. data/lib/compony/components/new.rb +4 -1
  68. data/lib/compony/components/with_form.rb +12 -1
  69. data/lib/compony/model_mixin.rb +8 -1
  70. data/lib/compony.rb +1 -1
  71. metadata +5 -5
@@ -231,7 +231,7 @@
231
231
  <li class="public ">
232
232
  <span class="summary_signature">
233
233
 
234
- <a href="#initialize-instance_method" title="#initialize (instance method)">#<strong>initialize</strong> &#x21d2; Form </a>
234
+ <a href="#initialize-instance_method" title="#initialize (instance method)">#<strong>initialize</strong>(*args, cancancan_action: :missing, **kwargs) &#x21d2; Form </a>
235
235
 
236
236
 
237
237
 
@@ -251,6 +251,30 @@
251
251
  <p>A new instance of Form.</p>
252
252
  </div></span>
253
253
 
254
+ </li>
255
+
256
+
257
+ <li class="public ">
258
+ <span class="summary_signature">
259
+
260
+ <a href="#pw_field-instance_method" title="#pw_field (instance method)">#<strong>pw_field</strong>(name, **input_opts) &#x21d2; Object </a>
261
+
262
+
263
+
264
+ </span>
265
+
266
+
267
+
268
+
269
+
270
+
271
+
272
+
273
+
274
+ <span class="summary_desc"><div class='inline'>
275
+ <p>Called inside the form_fields block.</p>
276
+ </div></span>
277
+
254
278
  </li>
255
279
 
256
280
 
@@ -281,7 +305,7 @@
281
305
  <li class="public ">
282
306
  <span class="summary_signature">
283
307
 
284
- <a href="#schema_block_for-instance_method" title="#schema_block_for (instance method)">#<strong>schema_block_for</strong>(data) &#x21d2; Object </a>
308
+ <a href="#schema_block_for-instance_method" title="#schema_block_for (instance method)">#<strong>schema_block_for</strong>(data, controller) &#x21d2; Object </a>
285
309
 
286
310
 
287
311
 
@@ -368,7 +392,31 @@
368
392
 
369
393
 
370
394
  <span class="summary_desc"><div class='inline'>
371
- <p>DSL method, adds a new line to the schema whitelisting a single param inside the schema’s wrapper.</p>
395
+ <p>DSL method, adds a new line to the schema whitelisting a single param inside the schema’s wrapper The block should be something like <code>str? :foo</code> and will run in a Schemacop3 context.</p>
396
+ </div></span>
397
+
398
+ </li>
399
+
400
+
401
+ <li class="protected ">
402
+ <span class="summary_signature">
403
+
404
+ <a href="#schema_pw_field-instance_method" title="#schema_pw_field (instance method)">#<strong>schema_pw_field</strong>(field_name) &#x21d2; Object </a>
405
+
406
+
407
+
408
+ </span>
409
+
410
+
411
+
412
+ <span class="note title protected">protected</span>
413
+
414
+
415
+
416
+
417
+
418
+ <span class="summary_desc"><div class='inline'>
419
+ <p>DSL method, adds a new password field to the schema whitelisting This checks for the permission :set_password and auto-generates the correct schema line for the field.</p>
372
420
  </div></span>
373
421
 
374
422
  </li>
@@ -425,7 +473,7 @@
425
473
  <li class="public ">
426
474
  <span class="summary_signature">
427
475
 
428
- <a href="#with_simpleform-instance_method" title="#with_simpleform (instance method)">#<strong>with_simpleform</strong>(simpleform) &#x21d2; Object </a>
476
+ <a href="#with_simpleform-instance_method" title="#with_simpleform (instance method)">#<strong>with_simpleform</strong>(simpleform, controller) &#x21d2; Object </a>
429
477
 
430
478
 
431
479
 
@@ -466,7 +514,7 @@
466
514
  <div class="method_details first">
467
515
  <h3 class="signature first" id="initialize-instance_method">
468
516
 
469
- #<strong>initialize</strong> &#x21d2; <tt><span class='object_link'><a href="" title="Compony::Components::Form (class)">Form</a></span></tt>
517
+ #<strong>initialize</strong>(*args, cancancan_action: :missing, **kwargs) &#x21d2; <tt><span class='object_link'><a href="" title="Compony::Components::Form (class)">Form</a></span></tt>
470
518
 
471
519
 
472
520
 
@@ -492,14 +540,16 @@
492
540
  6
493
541
  7
494
542
  8
495
- 9</pre>
543
+ 9
544
+ 10</pre>
496
545
  </td>
497
546
  <td>
498
547
  <pre class="code"><span class="info file"># File 'lib/compony/components/form.rb', line 6</span>
499
548
 
500
- <span class='kw'>def</span> <span class='id identifier rubyid_initialize'>initialize</span><span class='lparen'>(</span><span class='op'>...</span><span class='rparen'>)</span>
549
+ <span class='kw'>def</span> <span class='id identifier rubyid_initialize'>initialize</span><span class='lparen'>(</span><span class='op'>*</span><span class='id identifier rubyid_args'>args</span><span class='comma'>,</span> <span class='label'>cancancan_action:</span> <span class='symbol'>:missing</span><span class='comma'>,</span> <span class='op'>**</span><span class='id identifier rubyid_kwargs'>kwargs</span><span class='rparen'>)</span>
501
550
  <span class='ivar'>@schema_lines_for_data</span> <span class='op'>=</span> <span class='lbracket'>[</span><span class='rbracket'>]</span> <span class='comment'># Array of procs taking data returning a Schemacop proc
502
- </span> <span class='kw'>super</span>
551
+ </span> <span class='ivar'>@cancancan_action</span> <span class='op'>=</span> <span class='id identifier rubyid_cancancan_action'>cancancan_action</span>
552
+ <span class='kw'>super</span>
503
553
  <span class='kw'>end</span></pre>
504
554
  </td>
505
555
  </tr>
@@ -539,12 +589,12 @@
539
589
  <pre class="lines">
540
590
 
541
591
 
542
- 116
543
- 117
544
- 118</pre>
592
+ 154
593
+ 155
594
+ 156</pre>
545
595
  </td>
546
596
  <td>
547
- <pre class="code"><span class="info file"># File 'lib/compony/components/form.rb', line 116</span>
597
+ <pre class="code"><span class="info file"># File 'lib/compony/components/form.rb', line 154</span>
548
598
 
549
599
  <span class='kw'>def</span> <span class='id identifier rubyid_collect'>collect</span><span class='lparen'>(</span><span class='op'>...</span><span class='rparen'>)</span>
550
600
  <span class='const'><span class='object_link'><a href="../../Compony.html" title="Compony (module)">Compony</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../ModelFields.html" title="Compony::ModelFields (module)">ModelFields</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../ModelFields/Anchormodel.html" title="Compony::ModelFields::Anchormodel (class)">Anchormodel</a></span></span><span class='period'>.</span><span class='id identifier rubyid_collect'><span class='object_link'><a href="../ModelFields/Anchormodel.html#collect-class_method" title="Compony::ModelFields::Anchormodel.collect (method)">collect</a></span></span><span class='lparen'>(</span><span class='op'>...</span><span class='rparen'>)</span>
@@ -580,13 +630,13 @@
580
630
  <pre class="lines">
581
631
 
582
632
 
583
- 110
584
- 111
585
- 112
586
- 113</pre>
633
+ 148
634
+ 149
635
+ 150
636
+ 151</pre>
587
637
  </td>
588
638
  <td>
589
- <pre class="code"><span class="info file"># File 'lib/compony/components/form.rb', line 110</span>
639
+ <pre class="code"><span class="info file"># File 'lib/compony/components/form.rb', line 148</span>
590
640
 
591
641
  <span class='kw'>def</span> <span class='id identifier rubyid_f'>f</span>
592
642
  <span class='id identifier rubyid_fail'>fail</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>The `f` method may only be called inside `form_fields` for </span><span class='embexpr_beg'>#{</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><span class='rparen'>)</span> <span class='kw'>unless</span> <span class='ivar'>@simpleform</span>
@@ -623,13 +673,6 @@
623
673
  <pre class="lines">
624
674
 
625
675
 
626
- 90
627
- 91
628
- 92
629
- 93
630
- 94
631
- 95
632
- 96
633
676
  97
634
677
  98
635
678
  99
@@ -639,17 +682,42 @@
639
682
  103
640
683
  104
641
684
  105
642
- 106</pre>
685
+ 106
686
+ 107
687
+ 108
688
+ 109
689
+ 110
690
+ 111
691
+ 112
692
+ 113
693
+ 114
694
+ 115
695
+ 116
696
+ 117
697
+ 118
698
+ 119
699
+ 120
700
+ 121
701
+ 122</pre>
643
702
  </td>
644
703
  <td>
645
- <pre class="code"><span class="info file"># File 'lib/compony/components/form.rb', line 90</span>
704
+ <pre class="code"><span class="info file"># File 'lib/compony/components/form.rb', line 97</span>
646
705
 
647
706
  <span class='kw'>def</span> <span class='id identifier rubyid_field'>field</span><span class='lparen'>(</span><span class='id identifier rubyid_name'>name</span><span class='comma'>,</span> <span class='op'>**</span><span class='id identifier rubyid_input_opts'>input_opts</span><span class='rparen'>)</span>
648
707
  <span class='id identifier rubyid_fail'>fail</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>The `field` method may only be called inside `form_fields` for </span><span class='embexpr_beg'>#{</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><span class='rparen'>)</span> <span class='kw'>unless</span> <span class='ivar'>@simpleform</span>
708
+ <span class='id identifier rubyid_name'>name</span> <span class='op'>=</span> <span class='id identifier rubyid_name'>name</span><span class='period'>.</span><span class='id identifier rubyid_to_sym'>to_sym</span>
709
+
710
+ <span class='comment'># Check per-field authorization
711
+ </span> <span class='kw'>if</span> <span class='ivar'>@cancancan_action</span><span class='period'>.</span><span class='id identifier rubyid_present?'>present?</span> <span class='op'>&amp;&amp;</span> <span class='ivar'>@controller</span><span class='period'>.</span><span class='id identifier rubyid_current_ability'>current_ability</span><span class='period'>.</span><span class='id identifier rubyid_permitted_attributes'>permitted_attributes</span><span class='lparen'>(</span><span class='ivar'>@cancancan_action</span><span class='comma'>,</span> <span class='ivar'>@simpleform</span><span class='period'>.</span><span class='id identifier rubyid_object'>object</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_exclude?'>exclude?</span><span class='lparen'>(</span><span class='id identifier rubyid_name'>name</span><span class='rparen'>)</span>
712
+ <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>
713
+ <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Skipping form field </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_name'>name</span><span class='period'>.</span><span class='id identifier rubyid_inspect'>inspect</span><span class='embexpr_end'>}</span><span class='tstring_content'> because the current user is not allowed to perform </span><span class='embexpr_beg'>#{</span><span class='ivar'>@cancancan_action</span><span class='period'>.</span><span class='id identifier rubyid_inspect'>inspect</span><span class='embexpr_end'>}</span><span class='tstring_content'> on </span><span class='embexpr_beg'>#{</span><span class='ivar'>@simpleform</span><span class='period'>.</span><span class='id identifier rubyid_object'>object</span><span class='embexpr_end'>}</span><span class='tstring_content'>.</span><span class='tstring_end'>&quot;</span></span>
714
+ <span class='kw'>end</span>
715
+ <span class='kw'>return</span>
716
+ <span class='kw'>end</span>
649
717
 
650
718
  <span class='id identifier rubyid_hidden'>hidden</span> <span class='op'>=</span> <span class='id identifier rubyid_input_opts'>input_opts</span><span class='period'>.</span><span class='id identifier rubyid_delete'>delete</span><span class='lparen'>(</span><span class='symbol'>:hidden</span><span class='rparen'>)</span>
651
- <span class='id identifier rubyid_model_field'>model_field</span> <span class='op'>=</span> <span class='ivar'>@simpleform</span><span class='period'>.</span><span class='id identifier rubyid_object'>object</span><span class='period'>.</span><span class='id identifier rubyid_fields'>fields</span><span class='lbracket'>[</span><span class='id identifier rubyid_name'>name</span><span class='period'>.</span><span class='id identifier rubyid_to_sym'>to_sym</span><span class='rbracket'>]</span>
652
- <span class='id identifier rubyid_fail'>fail</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Field </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_name'>name</span><span class='period'>.</span><span class='id identifier rubyid_to_sym'>to_sym</span><span class='period'>.</span><span class='id identifier rubyid_inspect'>inspect</span><span class='embexpr_end'>}</span><span class='tstring_content'> is not defined on </span><span class='embexpr_beg'>#{</span><span class='ivar'>@simpleform</span><span class='period'>.</span><span class='id identifier rubyid_object'>object</span><span class='period'>.</span><span class='id identifier rubyid_inspect'>inspect</span><span class='embexpr_end'>}</span><span class='tstring_content'> but was requested in </span><span class='embexpr_beg'>#{</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><span class='rparen'>)</span> <span class='kw'>unless</span> <span class='id identifier rubyid_model_field'>model_field</span>
719
+ <span class='id identifier rubyid_model_field'>model_field</span> <span class='op'>=</span> <span class='ivar'>@simpleform</span><span class='period'>.</span><span class='id identifier rubyid_object'>object</span><span class='period'>.</span><span class='id identifier rubyid_fields'>fields</span><span class='lbracket'>[</span><span class='id identifier rubyid_name'>name</span><span class='rbracket'>]</span>
720
+ <span class='id identifier rubyid_fail'>fail</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Field </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_name'>name</span><span class='period'>.</span><span class='id identifier rubyid_inspect'>inspect</span><span class='embexpr_end'>}</span><span class='tstring_content'> is not defined on </span><span class='embexpr_beg'>#{</span><span class='ivar'>@simpleform</span><span class='period'>.</span><span class='id identifier rubyid_object'>object</span><span class='period'>.</span><span class='id identifier rubyid_inspect'>inspect</span><span class='embexpr_end'>}</span><span class='tstring_content'> but was requested in </span><span class='embexpr_beg'>#{</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><span class='rparen'>)</span> <span class='kw'>unless</span> <span class='id identifier rubyid_model_field'>model_field</span>
653
721
 
654
722
  <span class='kw'>if</span> <span class='id identifier rubyid_hidden'>hidden</span>
655
723
  <span class='kw'>return</span> <span class='id identifier rubyid_model_field'>model_field</span><span class='period'>.</span><span class='id identifier rubyid_simpleform_input_hidden'>simpleform_input_hidden</span><span class='lparen'>(</span><span class='ivar'>@simpleform</span><span class='comma'>,</span> <span class='kw'>self</span><span class='comma'>,</span> <span class='op'>**</span><span class='id identifier rubyid_input_opts'>input_opts</span><span class='rparen'>)</span>
@@ -692,13 +760,13 @@
692
760
  <pre class="lines">
693
761
 
694
762
 
695
- 47
696
- 48
697
- 49
698
- 50</pre>
763
+ 51
764
+ 52
765
+ 53
766
+ 54</pre>
699
767
  </td>
700
768
  <td>
701
- <pre class="code"><span class="info file"># File 'lib/compony/components/form.rb', line 47</span>
769
+ <pre class="code"><span class="info file"># File 'lib/compony/components/form.rb', line 51</span>
702
770
 
703
771
  <span class='kw'>def</span> <span class='id identifier rubyid_form_fields'>form_fields</span><span class='lparen'>(</span><span class='op'>&amp;</span><span class='id identifier rubyid_block'>block</span><span class='rparen'>)</span>
704
772
  <span class='kw'>return</span> <span class='ivar'>@form_fields</span> <span class='kw'>unless</span> <span class='id identifier rubyid_block_given?'>block_given?</span>
@@ -707,6 +775,77 @@
707
775
  </td>
708
776
  </tr>
709
777
  </table>
778
+ </div>
779
+
780
+ <div class="method_details ">
781
+ <h3 class="signature " id="pw_field-instance_method">
782
+
783
+ #<strong>pw_field</strong>(name, **input_opts) &#x21d2; <tt>Object</tt>
784
+
785
+
786
+
787
+
788
+
789
+ </h3><div class="docstring">
790
+ <div class="discussion">
791
+
792
+ <p>Called inside the form_fields block. This makes the method pw_field available in the block. This method should be called for the fields :password and :password_confirmation Note that :hidden is not supported here, as this would make no sense in conjunction with :password or :password_confirmation.</p>
793
+
794
+
795
+ </div>
796
+ </div>
797
+ <div class="tags">
798
+
799
+
800
+ </div><table class="source_code">
801
+ <tr>
802
+ <td>
803
+ <pre class="lines">
804
+
805
+
806
+ 127
807
+ 128
808
+ 129
809
+ 130
810
+ 131
811
+ 132
812
+ 133
813
+ 134
814
+ 135
815
+ 136
816
+ 137
817
+ 138
818
+ 139
819
+ 140
820
+ 141
821
+ 142
822
+ 143
823
+ 144</pre>
824
+ </td>
825
+ <td>
826
+ <pre class="code"><span class="info file"># File 'lib/compony/components/form.rb', line 127</span>
827
+
828
+ <span class='kw'>def</span> <span class='id identifier rubyid_pw_field'>pw_field</span><span class='lparen'>(</span><span class='id identifier rubyid_name'>name</span><span class='comma'>,</span> <span class='op'>**</span><span class='id identifier rubyid_input_opts'>input_opts</span><span class='rparen'>)</span>
829
+ <span class='id identifier rubyid_fail'>fail</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>The `pw_field` method may only be called inside `form_fields` for </span><span class='embexpr_beg'>#{</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><span class='rparen'>)</span> <span class='kw'>unless</span> <span class='ivar'>@simpleform</span>
830
+ <span class='id identifier rubyid_name'>name</span> <span class='op'>=</span> <span class='id identifier rubyid_name'>name</span><span class='period'>.</span><span class='id identifier rubyid_to_sym'>to_sym</span>
831
+
832
+ <span class='comment'># Check for authorization
833
+ </span> <span class='kw'>unless</span> <span class='ivar'>@cancancan_action</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span> <span class='op'>||</span> <span class='ivar'>@controller</span><span class='period'>.</span><span class='id identifier rubyid_current_ability'>current_ability</span><span class='period'>.</span><span class='id identifier rubyid_can?'>can?</span><span class='lparen'>(</span><span class='symbol'>:set_password</span><span class='comma'>,</span> <span class='ivar'>@simpleform</span><span class='period'>.</span><span class='id identifier rubyid_object'>object</span><span class='rparen'>)</span>
834
+ <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>
835
+ <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Skipping form pw_field </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_name'>name</span><span class='period'>.</span><span class='id identifier rubyid_inspect'>inspect</span><span class='embexpr_end'>}</span><span class='tstring_content'> because the current user is not allowed to perform :set_password on </span><span class='embexpr_beg'>#{</span><span class='ivar'>@simpleform</span><span class='period'>.</span><span class='id identifier rubyid_object'>object</span><span class='embexpr_end'>}</span><span class='tstring_content'>.</span><span class='tstring_end'>&quot;</span></span>
836
+ <span class='kw'>end</span>
837
+ <span class='kw'>return</span>
838
+ <span class='kw'>end</span>
839
+
840
+ <span class='kw'>unless</span> <span class='ivar'>@focus_given</span> <span class='op'>||</span> <span class='ivar'>@skip_autofocus</span>
841
+ <span class='id identifier rubyid_input_opts'>input_opts</span><span class='lbracket'>[</span><span class='symbol'>:autofocus</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='kw'>true</span> <span class='kw'>unless</span> <span class='id identifier rubyid_input_opts'>input_opts</span><span class='period'>.</span><span class='id identifier rubyid_key?'>key?</span> <span class='symbol'>:autofocus</span>
842
+ <span class='ivar'>@focus_given</span> <span class='op'>=</span> <span class='kw'>true</span>
843
+ <span class='kw'>end</span>
844
+ <span class='kw'>return</span> <span class='ivar'>@simpleform</span><span class='period'>.</span><span class='id identifier rubyid_input'>input</span> <span class='id identifier rubyid_name'>name</span><span class='comma'>,</span> <span class='op'>**</span><span class='id identifier rubyid_input_opts'>input_opts</span>
845
+ <span class='kw'>end</span></pre>
846
+ </td>
847
+ </tr>
848
+ </table>
710
849
  </div>
711
850
 
712
851
  <div class="method_details ">
@@ -735,17 +874,17 @@
735
874
  <pre class="lines">
736
875
 
737
876
 
738
- 142
739
- 143
740
- 144
741
- 145
742
- 146
743
- 147
744
- 148
745
- 149</pre>
877
+ 207
878
+ 208
879
+ 209
880
+ 210
881
+ 211
882
+ 212
883
+ 213
884
+ 214</pre>
746
885
  </td>
747
886
  <td>
748
- <pre class="code"><span class="info file"># File 'lib/compony/components/form.rb', line 142</span>
887
+ <pre class="code"><span class="info file"># File 'lib/compony/components/form.rb', line 207</span>
749
888
 
750
889
  <span class='kw'>def</span> <span class='id identifier rubyid_schema'>schema</span><span class='lparen'>(</span><span class='id identifier rubyid_wrapper_key'>wrapper_key</span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id identifier rubyid_block'>block</span><span class='rparen'>)</span>
751
890
  <span class='kw'>if</span> <span class='id identifier rubyid_block_given?'>block_given?</span>
@@ -763,7 +902,7 @@
763
902
  <div class="method_details ">
764
903
  <h3 class="signature " id="schema_block_for-instance_method">
765
904
 
766
- #<strong>schema_block_for</strong>(data) &#x21d2; <tt>Object</tt>
905
+ #<strong>schema_block_for</strong>(data, controller) &#x21d2; <tt>Object</tt>
767
906
 
768
907
 
769
908
 
@@ -786,10 +925,6 @@
786
925
  <pre class="lines">
787
926
 
788
927
 
789
- 63
790
- 64
791
- 65
792
- 66
793
928
  67
794
929
  68
795
930
  69
@@ -798,12 +933,17 @@
798
933
  72
799
934
  73
800
935
  74
801
- 75</pre>
936
+ 75
937
+ 76
938
+ 77
939
+ 78
940
+ 79
941
+ 80</pre>
802
942
  </td>
803
943
  <td>
804
- <pre class="code"><span class="info file"># File 'lib/compony/components/form.rb', line 63</span>
944
+ <pre class="code"><span class="info file"># File 'lib/compony/components/form.rb', line 67</span>
805
945
 
806
- <span class='kw'>def</span> <span class='id identifier rubyid_schema_block_for'>schema_block_for</span><span class='lparen'>(</span><span class='id identifier rubyid_data'>data</span><span class='rparen'>)</span>
946
+ <span class='kw'>def</span> <span class='id identifier rubyid_schema_block_for'>schema_block_for</span><span class='lparen'>(</span><span class='id identifier rubyid_data'>data</span><span class='comma'>,</span> <span class='id identifier rubyid_controller'>controller</span><span class='rparen'>)</span>
807
947
  <span class='kw'>if</span> <span class='ivar'>@schema_block</span>
808
948
  <span class='kw'>return</span> <span class='ivar'>@schema_block</span>
809
949
  <span class='kw'>else</span>
@@ -811,7 +951,8 @@
811
951
  </span> <span class='id identifier rubyid_local_schema_lines_for_data'>local_schema_lines_for_data</span> <span class='op'>=</span> <span class='ivar'>@schema_lines_for_data</span>
812
952
  <span class='kw'>return</span> <span class='id identifier rubyid_proc'>proc</span> <span class='kw'>do</span>
813
953
  <span class='id identifier rubyid_local_schema_lines_for_data'>local_schema_lines_for_data</span><span class='period'>.</span><span class='id identifier rubyid_each'>each</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_schema_line'>schema_line</span><span class='op'>|</span>
814
- <span class='id identifier rubyid_instance_exec'>instance_exec</span><span class='lparen'>(</span><span class='op'>&amp;</span><span class='id identifier rubyid_schema_line'>schema_line</span><span class='period'>.</span><span class='id identifier rubyid_call'>call</span><span class='lparen'>(</span><span class='id identifier rubyid_data'>data</span><span class='rparen'>)</span><span class='rparen'>)</span>
954
+ <span class='id identifier rubyid_schema_line_proc'>schema_line_proc</span> <span class='op'>=</span> <span class='id identifier rubyid_schema_line'>schema_line</span><span class='period'>.</span><span class='id identifier rubyid_call'>call</span><span class='lparen'>(</span><span class='id identifier rubyid_data'>data</span><span class='comma'>,</span> <span class='id identifier rubyid_controller'>controller</span><span class='rparen'>)</span> <span class='comment'># This may return nil, e.g. is the user is not authorized to set a field
955
+ </span> <span class='id identifier rubyid_instance_exec'>instance_exec</span><span class='lparen'>(</span><span class='op'>&amp;</span><span class='id identifier rubyid_schema_line_proc'>schema_line_proc</span><span class='rparen'>)</span> <span class='kw'>unless</span> <span class='id identifier rubyid_schema_line_proc'>schema_line_proc</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
815
956
  <span class='kw'>end</span>
816
957
  <span class='kw'>end</span>
817
958
  <span class='kw'>end</span>
@@ -847,19 +988,37 @@
847
988
  <pre class="lines">
848
989
 
849
990
 
850
- 129
851
- 130
852
- 131
853
- 132
854
- 133
855
- 134</pre>
991
+ 168
992
+ 169
993
+ 170
994
+ 171
995
+ 172
996
+ 173
997
+ 174
998
+ 175
999
+ 176
1000
+ 177
1001
+ 178
1002
+ 179
1003
+ 180
1004
+ 181
1005
+ 182</pre>
856
1006
  </td>
857
1007
  <td>
858
- <pre class="code"><span class="info file"># File 'lib/compony/components/form.rb', line 129</span>
1008
+ <pre class="code"><span class="info file"># File 'lib/compony/components/form.rb', line 168</span>
859
1009
 
860
1010
  <span class='kw'>def</span> <span class='id identifier rubyid_schema_field'>schema_field</span><span class='lparen'>(</span><span class='id identifier rubyid_field_name'>field_name</span><span class='rparen'>)</span>
861
- <span class='ivar'>@schema_lines_for_data</span> <span class='op'>&lt;&lt;</span> <span class='id identifier rubyid_proc'>proc</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_data'>data</span><span class='op'>|</span>
862
- <span class='id identifier rubyid_field'>field</span> <span class='op'>=</span> <span class='id identifier rubyid_data'>data</span><span class='period'>.</span><span class='id identifier rubyid_class'>class</span><span class='period'>.</span><span class='id identifier rubyid_fields'>fields</span><span class='lbracket'>[</span><span class='id identifier rubyid_field_name'>field_name</span><span class='period'>.</span><span class='id identifier rubyid_to_sym'>to_sym</span><span class='rbracket'>]</span> <span class='op'>||</span> <span class='id identifier rubyid_fail'>fail</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>No field </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_field_name'>field_name</span><span class='period'>.</span><span class='id identifier rubyid_to_sym'>to_sym</span><span class='period'>.</span><span class='id identifier rubyid_inspect'>inspect</span><span class='embexpr_end'>}</span><span class='tstring_content'> found for </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_data'>data</span><span class='period'>.</span><span class='id identifier rubyid_inspect'>inspect</span><span class='embexpr_end'>}</span><span class='tstring_content'> in </span><span class='embexpr_beg'>#{</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><span class='rparen'>)</span>
1011
+ <span class='comment'># This runs upon component setup.
1012
+ </span> <span class='ivar'>@schema_lines_for_data</span> <span class='op'>&lt;&lt;</span> <span class='id identifier rubyid_proc'>proc</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_data'>data</span><span class='comma'>,</span> <span class='id identifier rubyid_controller'>controller</span><span class='op'>|</span>
1013
+ <span class='comment'># This runs within a request context.
1014
+ </span> <span class='id identifier rubyid_field'>field</span> <span class='op'>=</span> <span class='id identifier rubyid_data'>data</span><span class='period'>.</span><span class='id identifier rubyid_class'>class</span><span class='period'>.</span><span class='id identifier rubyid_fields'>fields</span><span class='lbracket'>[</span><span class='id identifier rubyid_field_name'>field_name</span><span class='period'>.</span><span class='id identifier rubyid_to_sym'>to_sym</span><span class='rbracket'>]</span> <span class='op'>||</span> <span class='id identifier rubyid_fail'>fail</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>No field </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_field_name'>field_name</span><span class='period'>.</span><span class='id identifier rubyid_to_sym'>to_sym</span><span class='period'>.</span><span class='id identifier rubyid_inspect'>inspect</span><span class='embexpr_end'>}</span><span class='tstring_content'> found for </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_data'>data</span><span class='period'>.</span><span class='id identifier rubyid_inspect'>inspect</span><span class='embexpr_end'>}</span><span class='tstring_content'> in </span><span class='embexpr_beg'>#{</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><span class='rparen'>)</span>
1015
+ <span class='comment'># Check per-field authorization
1016
+ </span> <span class='kw'>if</span> <span class='ivar'>@cancancan_action</span><span class='period'>.</span><span class='id identifier rubyid_present?'>present?</span> <span class='op'>&amp;&amp;</span> <span class='id identifier rubyid_controller'>controller</span><span class='period'>.</span><span class='id identifier rubyid_current_ability'>current_ability</span><span class='period'>.</span><span class='id identifier rubyid_permitted_attributes'>permitted_attributes</span><span class='lparen'>(</span><span class='ivar'>@cancancan_action</span><span class='period'>.</span><span class='id identifier rubyid_to_sym'>to_sym</span><span class='comma'>,</span> <span class='id identifier rubyid_data'>data</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_exclude?'>exclude?</span><span class='lparen'>(</span><span class='id identifier rubyid_field'>field</span><span class='period'>.</span><span class='id identifier rubyid_name'>name</span><span class='period'>.</span><span class='id identifier rubyid_to_sym'>to_sym</span><span class='rparen'>)</span>
1017
+ <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>
1018
+ <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Skipping form schema_field </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_field_name'>field_name</span><span class='period'>.</span><span class='id identifier rubyid_inspect'>inspect</span><span class='embexpr_end'>}</span><span class='tstring_content'> because the current user is not allowed to perform </span><span class='embexpr_beg'>#{</span><span class='ivar'>@cancancan_action</span><span class='period'>.</span><span class='id identifier rubyid_inspect'>inspect</span><span class='embexpr_end'>}</span><span class='tstring_content'> on </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_data'>data</span><span class='embexpr_end'>}</span><span class='tstring_content'>.</span><span class='tstring_end'>&quot;</span></span>
1019
+ <span class='kw'>end</span>
1020
+ <span class='kw'>next</span> <span class='kw'>nil</span>
1021
+ <span class='kw'>end</span>
863
1022
  <span class='kw'>next</span> <span class='id identifier rubyid_field'>field</span><span class='period'>.</span><span class='id identifier rubyid_schema_line'>schema_line</span>
864
1023
  <span class='kw'>end</span>
865
1024
  <span class='kw'>end</span></pre>
@@ -894,12 +1053,12 @@
894
1053
  <pre class="lines">
895
1054
 
896
1055
 
897
- 137
898
- 138
899
- 139</pre>
1056
+ 202
1057
+ 203
1058
+ 204</pre>
900
1059
  </td>
901
1060
  <td>
902
- <pre class="code"><span class="info file"># File 'lib/compony/components/form.rb', line 137</span>
1061
+ <pre class="code"><span class="info file"># File 'lib/compony/components/form.rb', line 202</span>
903
1062
 
904
1063
  <span class='kw'>def</span> <span class='id identifier rubyid_schema_fields'>schema_fields</span><span class='lparen'>(</span><span class='op'>*</span><span class='id identifier rubyid_field_names'>field_names</span><span class='rparen'>)</span>
905
1064
  <span class='id identifier rubyid_field_names'>field_names</span><span class='period'>.</span><span class='id identifier rubyid_each'>each</span> <span class='lbrace'>{</span> <span class='op'>|</span><span class='id identifier rubyid_field_name'>field_name</span><span class='op'>|</span> <span class='id identifier rubyid_schema_field'>schema_field</span><span class='lparen'>(</span><span class='id identifier rubyid_field_name'>field_name</span><span class='rparen'>)</span> <span class='rbrace'>}</span>
@@ -921,7 +1080,7 @@
921
1080
  </h3><div class="docstring">
922
1081
  <div class="discussion">
923
1082
 
924
- <p>DSL method, adds a new line to the schema whitelisting a single param inside the schema’s wrapper</p>
1083
+ <p>DSL method, adds a new line to the schema whitelisting a single param inside the schema’s wrapper The block should be something like <code>str? :foo</code> and will run in a Schemacop3 context.</p>
925
1084
 
926
1085
 
927
1086
  </div>
@@ -935,15 +1094,78 @@
935
1094
  <pre class="lines">
936
1095
 
937
1096
 
938
- 123
939
- 124
940
- 125</pre>
1097
+ 162
1098
+ 163
1099
+ 164</pre>
941
1100
  </td>
942
1101
  <td>
943
- <pre class="code"><span class="info file"># File 'lib/compony/components/form.rb', line 123</span>
1102
+ <pre class="code"><span class="info file"># File 'lib/compony/components/form.rb', line 162</span>
944
1103
 
945
1104
  <span class='kw'>def</span> <span class='id identifier rubyid_schema_line'>schema_line</span><span class='lparen'>(</span><span class='op'>&amp;</span><span class='id identifier rubyid_block'>block</span><span class='rparen'>)</span>
946
- <span class='ivar'>@schema_lines_for_data</span> <span class='op'>&lt;&lt;</span> <span class='id identifier rubyid_proc'>proc</span> <span class='lbrace'>{</span> <span class='id identifier rubyid_block'>block</span> <span class='rbrace'>}</span>
1105
+ <span class='ivar'>@schema_lines_for_data</span> <span class='op'>&lt;&lt;</span> <span class='id identifier rubyid_proc'>proc</span> <span class='lbrace'>{</span> <span class='op'>|</span><span class='id identifier rubyid__data'>_data</span><span class='comma'>,</span> <span class='id identifier rubyid__controller'>_controller</span><span class='op'>|</span> <span class='id identifier rubyid_block'>block</span> <span class='rbrace'>}</span>
1106
+ <span class='kw'>end</span></pre>
1107
+ </td>
1108
+ </tr>
1109
+ </table>
1110
+ </div>
1111
+
1112
+ <div class="method_details ">
1113
+ <h3 class="signature " id="schema_pw_field-instance_method">
1114
+
1115
+ #<strong>schema_pw_field</strong>(field_name) &#x21d2; <tt>Object</tt> <span class="extras">(protected)</span>
1116
+
1117
+
1118
+
1119
+
1120
+
1121
+ </h3><div class="docstring">
1122
+ <div class="discussion">
1123
+
1124
+ <p>DSL method, adds a new password field to the schema whitelisting This checks for the permission :set_password and auto-generates the correct schema line for the field.</p>
1125
+
1126
+
1127
+ </div>
1128
+ </div>
1129
+ <div class="tags">
1130
+
1131
+
1132
+ </div><table class="source_code">
1133
+ <tr>
1134
+ <td>
1135
+ <pre class="lines">
1136
+
1137
+
1138
+ 186
1139
+ 187
1140
+ 188
1141
+ 189
1142
+ 190
1143
+ 191
1144
+ 192
1145
+ 193
1146
+ 194
1147
+ 195
1148
+ 196
1149
+ 197
1150
+ 198
1151
+ 199</pre>
1152
+ </td>
1153
+ <td>
1154
+ <pre class="code"><span class="info file"># File 'lib/compony/components/form.rb', line 186</span>
1155
+
1156
+ <span class='kw'>def</span> <span class='id identifier rubyid_schema_pw_field'>schema_pw_field</span><span class='lparen'>(</span><span class='id identifier rubyid_field_name'>field_name</span><span class='rparen'>)</span>
1157
+ <span class='comment'># This runs upon component setup.
1158
+ </span> <span class='ivar'>@schema_lines_for_data</span> <span class='op'>&lt;&lt;</span> <span class='id identifier rubyid_proc'>proc</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_data'>data</span><span class='comma'>,</span> <span class='id identifier rubyid_controller'>controller</span><span class='op'>|</span>
1159
+ <span class='comment'># This runs within a request context.
1160
+ </span> <span class='comment'># Check per-field authorization
1161
+ </span> <span class='kw'>unless</span> <span class='ivar'>@cancancan_action</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span> <span class='op'>||</span> <span class='id identifier rubyid_controller'>controller</span><span class='period'>.</span><span class='id identifier rubyid_current_ability'>current_ability</span><span class='period'>.</span><span class='id identifier rubyid_can?'>can?</span><span class='lparen'>(</span><span class='symbol'>:set_password</span><span class='comma'>,</span> <span class='id identifier rubyid_data'>data</span><span class='rparen'>)</span>
1162
+ <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>
1163
+ <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Skipping form schema_pw_field </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_name'>name</span><span class='period'>.</span><span class='id identifier rubyid_inspect'>inspect</span><span class='embexpr_end'>}</span><span class='tstring_content'> because the current user is not allowed to perform :set_password on </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_data'>data</span><span class='embexpr_end'>}</span><span class='tstring_content'>.</span><span class='tstring_end'>&quot;</span></span>
1164
+ <span class='kw'>end</span>
1165
+ <span class='kw'>next</span> <span class='kw'>nil</span>
1166
+ <span class='kw'>end</span>
1167
+ <span class='kw'>next</span> <span class='id identifier rubyid_proc'>proc</span> <span class='lbrace'>{</span> <span class='id identifier rubyid_obj?'>obj?</span> <span class='id identifier rubyid_field_name'>field_name</span><span class='period'>.</span><span class='id identifier rubyid_to_sym'>to_sym</span> <span class='rbrace'>}</span>
1168
+ <span class='kw'>end</span>
947
1169
  <span class='kw'>end</span></pre>
948
1170
  </td>
949
1171
  </tr>
@@ -976,17 +1198,17 @@
976
1198
  <pre class="lines">
977
1199
 
978
1200
 
979
- 53
980
- 54
981
- 55
982
- 56
983
1201
  57
984
1202
  58
985
1203
  59
986
- 60</pre>
1204
+ 60
1205
+ 61
1206
+ 62
1207
+ 63
1208
+ 64</pre>
987
1209
  </td>
988
1210
  <td>
989
- <pre class="code"><span class="info file"># File 'lib/compony/components/form.rb', line 53</span>
1211
+ <pre class="code"><span class="info file"># File 'lib/compony/components/form.rb', line 57</span>
990
1212
 
991
1213
  <span class='kw'>def</span> <span class='id identifier rubyid_schema_wrapper_key_for'>schema_wrapper_key_for</span><span class='lparen'>(</span><span class='id identifier rubyid_data'>data</span><span class='rparen'>)</span>
992
1214
  <span class='kw'>if</span> <span class='ivar'>@schema_wrapper_key</span><span class='period'>.</span><span class='id identifier rubyid_present?'>present?</span>
@@ -1027,12 +1249,12 @@
1027
1249
  <pre class="lines">
1028
1250
 
1029
1251
 
1030
- 152
1031
- 153
1032
- 154</pre>
1252
+ 217
1253
+ 218
1254
+ 219</pre>
1033
1255
  </td>
1034
1256
  <td>
1035
- <pre class="code"><span class="info file"># File 'lib/compony/components/form.rb', line 152</span>
1257
+ <pre class="code"><span class="info file"># File 'lib/compony/components/form.rb', line 217</span>
1036
1258
 
1037
1259
  <span class='kw'>def</span> <span class='id identifier rubyid_skip_autofocus'>skip_autofocus</span>
1038
1260
  <span class='ivar'>@skip_autofocus</span> <span class='op'>=</span> <span class='kw'>true</span>
@@ -1045,7 +1267,7 @@
1045
1267
  <div class="method_details ">
1046
1268
  <h3 class="signature " id="with_simpleform-instance_method">
1047
1269
 
1048
- #<strong>with_simpleform</strong>(simpleform) &#x21d2; <tt>Object</tt>
1270
+ #<strong>with_simpleform</strong>(simpleform, controller) &#x21d2; <tt>Object</tt>
1049
1271
 
1050
1272
 
1051
1273
 
@@ -1076,21 +1298,25 @@
1076
1298
  <pre class="lines">
1077
1299
 
1078
1300
 
1079
- 81
1080
- 82
1081
- 83
1082
- 84
1083
- 85
1084
- 86</pre>
1301
+ 86
1302
+ 87
1303
+ 88
1304
+ 89
1305
+ 90
1306
+ 91
1307
+ 92
1308
+ 93</pre>
1085
1309
  </td>
1086
1310
  <td>
1087
- <pre class="code"><span class="info file"># File 'lib/compony/components/form.rb', line 81</span>
1311
+ <pre class="code"><span class="info file"># File 'lib/compony/components/form.rb', line 86</span>
1088
1312
 
1089
- <span class='kw'>def</span> <span class='id identifier rubyid_with_simpleform'>with_simpleform</span><span class='lparen'>(</span><span class='id identifier rubyid_simpleform'>simpleform</span><span class='rparen'>)</span>
1313
+ <span class='kw'>def</span> <span class='id identifier rubyid_with_simpleform'>with_simpleform</span><span class='lparen'>(</span><span class='id identifier rubyid_simpleform'>simpleform</span><span class='comma'>,</span> <span class='id identifier rubyid_controller'>controller</span><span class='rparen'>)</span>
1090
1314
  <span class='ivar'>@simpleform</span> <span class='op'>=</span> <span class='id identifier rubyid_simpleform'>simpleform</span>
1315
+ <span class='ivar'>@controller</span> <span class='op'>=</span> <span class='id identifier rubyid_controller'>controller</span>
1091
1316
  <span class='ivar'>@focus_given</span> <span class='op'>=</span> <span class='kw'>false</span>
1092
1317
  <span class='kw'>yield</span>
1093
1318
  <span class='ivar'>@simpleform</span> <span class='op'>=</span> <span class='kw'>nil</span>
1319
+ <span class='ivar'>@controller</span> <span class='op'>=</span> <span class='kw'>nil</span>
1094
1320
  <span class='kw'>end</span></pre>
1095
1321
  </td>
1096
1322
  </tr>
@@ -1102,7 +1328,7 @@
1102
1328
  </div>
1103
1329
 
1104
1330
  <div id="footer">
1105
- Generated on Mon Jun 3 15:20:40 2024 by
1331
+ Generated on Tue Jun 11 11:15:54 2024 by
1106
1332
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
1107
1333
  0.9.36 (ruby-3.2.2).
1108
1334
  </div>