store_model 1.6.1 → 4.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.
- checksums.yaml +4 -4
- data/README.md +54 -6
- data/lib/active_model/validations/store_model_validator.rb +13 -0
- data/lib/store_model/combine_errors_strategies/mark_invalid_error_strategy.rb +2 -2
- data/lib/store_model/combine_errors_strategies/merge_hash_error_strategy.rb +22 -0
- data/lib/store_model/combine_errors_strategies.rb +15 -0
- data/lib/store_model/configuration.rb +20 -0
- data/lib/store_model/enum.rb +19 -10
- data/lib/store_model/ext/parent_assignment.rb +2 -2
- data/lib/store_model/model.rb +148 -5
- data/lib/store_model/nested_attributes.rb +89 -15
- data/lib/store_model/railtie.rb +4 -2
- data/lib/store_model/type_builders.rb +6 -0
- data/lib/store_model/types/base.rb +25 -0
- data/lib/store_model/types/enum_type.rb +8 -6
- data/lib/store_model/types/hash.rb +53 -0
- data/lib/store_model/types/hash_base.rb +79 -0
- data/lib/store_model/types/hash_polymorphic.rb +57 -0
- data/lib/store_model/types/many.rb +1 -0
- data/lib/store_model/types/many_base.rb +7 -17
- data/lib/store_model/types/many_polymorphic.rb +1 -0
- data/lib/store_model/types/one.rb +47 -8
- data/lib/store_model/types/one_base.rb +2 -15
- data/lib/store_model/types/one_of.rb +4 -0
- data/lib/store_model/types/one_polymorphic.rb +20 -9
- data/lib/store_model/types/raw_json.rb +20 -0
- data/lib/store_model/types.rb +7 -0
- data/lib/store_model/version.rb +1 -1
- data/lib/store_model.rb +56 -0
- metadata +14 -25
metadata
CHANGED
|
@@ -1,14 +1,13 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: store_model
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version:
|
|
4
|
+
version: 4.4.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- DmitryTsepelev
|
|
8
|
-
autorequire:
|
|
9
8
|
bindir: bin
|
|
10
9
|
cert_chain: []
|
|
11
|
-
date:
|
|
10
|
+
date: 1980-01-02 00:00:00.000000000 Z
|
|
12
11
|
dependencies:
|
|
13
12
|
- !ruby/object:Gem::Dependency
|
|
14
13
|
name: activerecord
|
|
@@ -16,14 +15,14 @@ dependencies:
|
|
|
16
15
|
requirements:
|
|
17
16
|
- - ">="
|
|
18
17
|
- !ruby/object:Gem::Version
|
|
19
|
-
version: '
|
|
18
|
+
version: '7.0'
|
|
20
19
|
type: :runtime
|
|
21
20
|
prerelease: false
|
|
22
21
|
version_requirements: !ruby/object:Gem::Requirement
|
|
23
22
|
requirements:
|
|
24
23
|
- - ">="
|
|
25
24
|
- !ruby/object:Gem::Version
|
|
26
|
-
version: '
|
|
25
|
+
version: '7.0'
|
|
27
26
|
- !ruby/object:Gem::Dependency
|
|
28
27
|
name: rspec
|
|
29
28
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -58,28 +57,14 @@ dependencies:
|
|
|
58
57
|
requirements:
|
|
59
58
|
- - '='
|
|
60
59
|
- !ruby/object:Gem::Version
|
|
61
|
-
version:
|
|
60
|
+
version: 1.65.1
|
|
62
61
|
type: :development
|
|
63
62
|
prerelease: false
|
|
64
63
|
version_requirements: !ruby/object:Gem::Requirement
|
|
65
64
|
requirements:
|
|
66
65
|
- - '='
|
|
67
66
|
- !ruby/object:Gem::Version
|
|
68
|
-
version:
|
|
69
|
-
- !ruby/object:Gem::Dependency
|
|
70
|
-
name: coveralls
|
|
71
|
-
requirement: !ruby/object:Gem::Requirement
|
|
72
|
-
requirements:
|
|
73
|
-
- - ">="
|
|
74
|
-
- !ruby/object:Gem::Version
|
|
75
|
-
version: '0'
|
|
76
|
-
type: :development
|
|
77
|
-
prerelease: false
|
|
78
|
-
version_requirements: !ruby/object:Gem::Requirement
|
|
79
|
-
requirements:
|
|
80
|
-
- - ">="
|
|
81
|
-
- !ruby/object:Gem::Version
|
|
82
|
-
version: '0'
|
|
67
|
+
version: 1.65.1
|
|
83
68
|
description: Gem for working with JSON-backed attributes as ActiveRecord models
|
|
84
69
|
email:
|
|
85
70
|
- dmitry.a.tsepelev@gmail.com
|
|
@@ -96,6 +81,7 @@ files:
|
|
|
96
81
|
- lib/store_model/combine_errors_strategies/mark_invalid_error_strategy.rb
|
|
97
82
|
- lib/store_model/combine_errors_strategies/merge_array_error_strategy.rb
|
|
98
83
|
- lib/store_model/combine_errors_strategies/merge_error_strategy.rb
|
|
84
|
+
- lib/store_model/combine_errors_strategies/merge_hash_error_strategy.rb
|
|
99
85
|
- lib/store_model/configuration.rb
|
|
100
86
|
- lib/store_model/enum.rb
|
|
101
87
|
- lib/store_model/ext/active_model/attributes.rb
|
|
@@ -106,7 +92,11 @@ files:
|
|
|
106
92
|
- lib/store_model/railtie.rb
|
|
107
93
|
- lib/store_model/type_builders.rb
|
|
108
94
|
- lib/store_model/types.rb
|
|
95
|
+
- lib/store_model/types/base.rb
|
|
109
96
|
- lib/store_model/types/enum_type.rb
|
|
97
|
+
- lib/store_model/types/hash.rb
|
|
98
|
+
- lib/store_model/types/hash_base.rb
|
|
99
|
+
- lib/store_model/types/hash_polymorphic.rb
|
|
110
100
|
- lib/store_model/types/many.rb
|
|
111
101
|
- lib/store_model/types/many_base.rb
|
|
112
102
|
- lib/store_model/types/many_polymorphic.rb
|
|
@@ -115,12 +105,12 @@ files:
|
|
|
115
105
|
- lib/store_model/types/one_of.rb
|
|
116
106
|
- lib/store_model/types/one_polymorphic.rb
|
|
117
107
|
- lib/store_model/types/polymorphic_helper.rb
|
|
108
|
+
- lib/store_model/types/raw_json.rb
|
|
118
109
|
- lib/store_model/version.rb
|
|
119
110
|
homepage: https://github.com/DmitryTsepelev/store_model
|
|
120
111
|
licenses:
|
|
121
112
|
- MIT
|
|
122
113
|
metadata: {}
|
|
123
|
-
post_install_message:
|
|
124
114
|
rdoc_options: []
|
|
125
115
|
require_paths:
|
|
126
116
|
- lib
|
|
@@ -128,15 +118,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
|
128
118
|
requirements:
|
|
129
119
|
- - ">="
|
|
130
120
|
- !ruby/object:Gem::Version
|
|
131
|
-
version: '
|
|
121
|
+
version: '3.0'
|
|
132
122
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
133
123
|
requirements:
|
|
134
124
|
- - ">="
|
|
135
125
|
- !ruby/object:Gem::Version
|
|
136
126
|
version: '0'
|
|
137
127
|
requirements: []
|
|
138
|
-
rubygems_version: 3.
|
|
139
|
-
signing_key:
|
|
128
|
+
rubygems_version: 3.6.7
|
|
140
129
|
specification_version: 4
|
|
141
130
|
summary: Gem for working with JSON-backed attributes as ActiveRecord models
|
|
142
131
|
test_files: []
|