chobble-forms 0.7.2 → 0.8.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.
- checksums.yaml +4 -4
- data/lib/chobble_forms/helpers.rb +16 -3
- data/lib/chobble_forms/version.rb +1 -1
- data/views/chobble_forms/_display_field.html.erb +10 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 5278667464b4fb04d365ef198a36874fec3f5590680f705a18b0d5133776e201
|
4
|
+
data.tar.gz: 565d3f9a541a8e5aa5ce91fe0a2394afe2284c449103664785b5bca2a80123ef
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: bc9e9c26ef8f0072faa78015d29783b1dd899269d82cc4a2f33f63311ba0714e7a4a20540a0c7e0d6723858070d722a06e19c939565c406eb6f3b81be27bef16
|
7
|
+
data.tar.gz: 3c869b047f9ae812878c8a7b1be78533a25bef9280fbd9b9860d2dfbc5aca51f01e85d33af9d54b8db750f64754765d6c95cd219f61196ff739246948487be93
|
@@ -23,11 +23,24 @@ module ChobbleForms
|
|
23
23
|
)
|
24
24
|
end
|
25
25
|
|
26
|
+
FieldValue = T.type_alias do
|
27
|
+
T.nilable(T.any(
|
28
|
+
String,
|
29
|
+
Integer,
|
30
|
+
Float,
|
31
|
+
Date,
|
32
|
+
DateTime,
|
33
|
+
Time,
|
34
|
+
T::Boolean,
|
35
|
+
T.untyped
|
36
|
+
))
|
37
|
+
end
|
38
|
+
|
26
39
|
FieldSetupResult = T.type_alias do
|
27
40
|
{
|
28
41
|
form_object: T.untyped,
|
29
42
|
i18n_base: String,
|
30
|
-
value:
|
43
|
+
value: FieldValue,
|
31
44
|
prefilled: T::Boolean,
|
32
45
|
field_label: String,
|
33
46
|
field_hint: T.nilable(String),
|
@@ -47,7 +60,7 @@ module ChobbleForms
|
|
47
60
|
build_field_setup_result(field_translations, value, prefilled)
|
48
61
|
end
|
49
62
|
|
50
|
-
sig { params(form_object: T.untyped, field: Symbol).returns([
|
63
|
+
sig { params(form_object: T.untyped, field: Symbol).returns([FieldValue, T::Boolean]) }
|
51
64
|
def get_field_value_and_prefilled_status(form_object, field)
|
52
65
|
return [nil, false] unless form_object&.object
|
53
66
|
|
@@ -195,7 +208,7 @@ module ChobbleForms
|
|
195
208
|
end
|
196
209
|
end
|
197
210
|
|
198
|
-
sig { params(model: T.untyped, field: Symbol).returns({value:
|
211
|
+
sig { params(model: T.untyped, field: Symbol).returns({value: FieldValue, prefilled: T::Boolean}) }
|
199
212
|
def resolve_field_value(model, field)
|
200
213
|
return {value: nil, prefilled: false} if field.to_s.include?("password")
|
201
214
|
|
@@ -5,7 +5,16 @@
|
|
5
5
|
# Get value from model object automatically
|
6
6
|
model_object = setup[:form_object].object
|
7
7
|
value = model_object.send(field) if model_object.respond_to?(field)
|
8
|
+
|
9
|
+
# Format dates and times nicely
|
10
|
+
formatted_value = if value.is_a?(DateTime) || value.is_a?(Time)
|
11
|
+
value.strftime("%B %-d, %Y - %H:%M")
|
12
|
+
elsif value.is_a?(Date)
|
13
|
+
value.strftime("%B %-d, %Y")
|
14
|
+
else
|
15
|
+
value
|
16
|
+
end
|
8
17
|
%>
|
9
18
|
|
10
19
|
<%= setup[:form_object].label field, setup[:field_label] %>
|
11
|
-
<p><%=
|
20
|
+
<p><%= formatted_value %></p>
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: chobble-forms
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.8.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Chobble.com
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2025-
|
11
|
+
date: 2025-10-13 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rails
|