forme 1.12.0 → 2.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (47) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG +54 -0
  3. data/MIT-LICENSE +1 -1
  4. data/README.rdoc +228 -206
  5. data/Rakefile +1 -7
  6. data/lib/forme/bs3.rb +23 -9
  7. data/lib/forme/erb.rb +13 -25
  8. data/lib/forme/form.rb +146 -149
  9. data/lib/forme/input.rb +1 -1
  10. data/lib/forme/rails.rb +39 -83
  11. data/lib/forme/raw.rb +2 -2
  12. data/lib/forme/tag.rb +3 -12
  13. data/lib/forme/template.rb +110 -0
  14. data/lib/forme/transformers/error_handler.rb +10 -10
  15. data/lib/forme/transformers/formatter.rb +32 -34
  16. data/lib/forme/transformers/helper.rb +0 -1
  17. data/lib/forme/transformers/inputs_wrapper.rb +4 -4
  18. data/lib/forme/version.rb +2 -2
  19. data/lib/forme.rb +13 -2
  20. data/lib/roda/plugins/forme.rb +1 -1
  21. data/lib/roda/plugins/forme_erubi_capture.rb +57 -0
  22. data/lib/roda/plugins/forme_route_csrf.rb +16 -34
  23. data/lib/roda/plugins/forme_set.rb +39 -76
  24. data/lib/sequel/plugins/forme.rb +45 -54
  25. data/lib/sequel/plugins/forme_i18n.rb +3 -1
  26. data/lib/sequel/plugins/forme_set.rb +2 -4
  27. data/spec/all.rb +1 -1
  28. data/spec/bs3_reference_spec.rb +291 -314
  29. data/spec/bs3_sequel_plugin_spec.rb +155 -155
  30. data/spec/bs3_spec.rb +247 -206
  31. data/spec/erb_helper.rb +69 -58
  32. data/spec/erubi_capture_helper.rb +198 -0
  33. data/spec/forme_coverage.rb +1 -0
  34. data/spec/forme_spec.rb +438 -377
  35. data/spec/rails_integration_spec.rb +21 -11
  36. data/spec/roda_integration_spec.rb +136 -70
  37. data/spec/sequel_helper.rb +3 -2
  38. data/spec/sequel_i18n_helper.rb +1 -1
  39. data/spec/sequel_i18n_plugin_spec.rb +6 -6
  40. data/spec/sequel_plugin_spec.rb +262 -150
  41. data/spec/sequel_set_plugin_spec.rb +9 -3
  42. data/spec/shared_erb_specs.rb +71 -0
  43. data/spec/sinatra_integration_spec.rb +31 -6
  44. data/spec/spec_helper.rb +21 -8
  45. metadata +8 -6
  46. data/lib/forme/erb_form.rb +0 -74
  47. data/lib/forme/sinatra.rb +0 -17
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: f9ee8a7a7efaf9ff59c55404e6c11aba0125cdf59972366b94aa3359b06c6c1f
4
- data.tar.gz: dd9f90ad552c827b66a3d8146f8933e5258b34ece1db5a8a9515ac9e2aeada44
3
+ metadata.gz: 81ec9ce1b755276902340c709aa7addbd73b6b80252fcf0cbaac236098c62ac1
4
+ data.tar.gz: 35e17dd67304585e027dca62d6181eff1d30a0fcc7aa128879c9d8d54fd78f55
5
5
  SHA512:
6
- metadata.gz: 5867cc14f49ea0a2419e4f7d30a518a8886753f11e4e6af46f7565106ef54869c9bf9d5ba691f7f08ee7fab5d729bb16e8b1463939dc043d7e91aeb5e8bf1f2e
7
- data.tar.gz: 25bf44d57e37ef994cab9a6c2bf532b4dddd209fff6b1542b21596e2cdbfa1e20a1ae04af9d2b4c0ad113f322c06fe1e8a662a4d2facd36439f2c1a45d2e4250
6
+ metadata.gz: 16f13f8ba1ba9fdae6b26b80f0b2e1fa2ce9ef520a3a29936597771f9f5424d2b49afc6debdb173e2aee6d672a471bb1aa8cee8e73d82ce7f5d30a1fc8ced578
7
+ data.tar.gz: 89d6f1ef00b4a9b28b55d9a6f42fb5250d10eaec78a7921d6220451f2fe7ea5c4ecea7907bcef5567e5e1dbcb60ccf2ec52195a6a4bfaacf2c4c353c785e9049
data/CHANGELOG CHANGED
@@ -1,3 +1,57 @@
1
+ === 2.2.0 (2022-06-28)
2
+
3
+ * Use inputmode and pattern attributes instead of type=number for integer fields in the Sequel forme plugin (jeremyevans)
4
+
5
+ * Respect explicit nil/false :value option for boolean inputs in the Sequel forme plugin (jeremyevans)
6
+
7
+ * In bs3 support, make sure error spans have id referenced by aria-describedby (jeremyevans)
8
+
9
+ * Set aria-describedby attribute automatically even if :error_id is given manually (jeremyevans)
10
+
11
+ === 2.1.0 (2022-05-25)
12
+
13
+ * Avoid hidden inputs inside tbody tags in subform in the Sequel::Model support, since that results in invalid HTML (jeremyevans)
14
+
15
+ * Fix verbose warnings in forme/rails (jeremyevans)
16
+
17
+ * Remove deprecated forme/sinatra and Forme::Sinatra::ERB (jeremyevans)
18
+
19
+ * Remove deprecated Form :hidden_tags option (jeremyevans)
20
+
21
+ === 2.0.0 (2021-11-30)
22
+
23
+ * Remove Tag#<< method (jeremyevans)
24
+
25
+ * Remove Form#_inputs method (jeremyevans)
26
+
27
+ * Deprecate forme/sinatra and Forme::Sinatra::ERB, switch to forme/erb and Forme::ERB::Helper (jeremyevans)
28
+
29
+ * Deprecate Form :hidden_tags option (jeremyevans)
30
+
31
+ * Add Form#post? for whether the form will submit via POST (jeremyevans)
32
+
33
+ * Add Form#form_tag_attributes for getting the attributes used for the form tag (jeremyevans)
34
+
35
+ * Add :before and :after Form options, as an alternative way to implement hooks (jeremyevans)
36
+
37
+ * Passing a callable as the child of a tag should now not call methods that will modify the related form (such as Form#tag) (jeremyevans)
38
+
39
+ * Change API for _forme_form_options private method used in template integrations (jeremyevans)
40
+
41
+ * Remove Form#{nesting,tag_,raw_output,emit} (jeremyevans)
42
+
43
+ * Make Form#{form,tag,input,inputs} return HTML string (jeremyevans)
44
+
45
+ * Refactor internals, switch template integration to use delegation instead of inheritance (jeremyevans)
46
+
47
+ * Add Roda forme_erubi_capture plugin to support erubi/capture_end <%|= form do %> <%| end %> tags (jeremyevans)
48
+
49
+ * Make bs3 formatter automatically setup aria-invalid and aria-describedby attributes for errors (waiting-for-dev) (#96)
50
+
51
+ * Make bs3 formatter handle form-level :errors key (waiting-for-dev) (#96)
52
+
53
+ * Drop support for Ruby 1.8 (jeremyevans)
54
+
1
55
  === 1.12.0 (2021-08-25)
2
56
 
3
57
  * Make forme_set Sequel plugin handle frozen Sequel::Model instances (jeremyevans)
data/MIT-LICENSE CHANGED
@@ -1,4 +1,4 @@
1
- Copyright (c) 2011-2021 Jeremy Evans
1
+ Copyright (c) 2011-2022 Jeremy Evans
2
2
 
3
3
  Permission is hereby granted, free of charge, to any person obtaining a copy
4
4
  of this software and associated documentation files (the "Software"), to