easy_talk 1.0.2 → 1.0.3

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.
data/lib/easy_talk.rb CHANGED
@@ -2,9 +2,11 @@
2
2
 
3
3
  # The EasyTalk module is the main namespace for the gem.
4
4
  module EasyTalk
5
- class Error < StandardError; end
6
5
  require 'sorbet-runtime'
7
6
  require 'easy_talk/sorbet_extension'
7
+ require 'easy_talk/errors'
8
+ require 'easy_talk/errors_helper'
9
+ require 'easy_talk/configuration'
8
10
  require 'easy_talk/types/any_of'
9
11
  require 'easy_talk/types/all_of'
10
12
  require 'easy_talk/types/one_of'
@@ -14,6 +16,12 @@ module EasyTalk
14
16
  require 'easy_talk/tools/function_builder'
15
17
  require 'easy_talk/version'
16
18
 
17
- class UnsupportedTypeError < ArgumentError; end
18
- class UnsupportedConstraintError < ArgumentError; end
19
+ def self.assert_valid_property_options(property_name, options, *valid_keys)
20
+ valid_keys.flatten!
21
+ options.each_key do |k|
22
+ next if valid_keys.include?(k)
23
+
24
+ ErrorHelper.raise_unknown_option_error(property_name: property_name, option: options, valid_options: valid_keys)
25
+ end
26
+ end
19
27
  end
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: easy_talk
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.2
4
+ version: 1.0.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Sergio Bayona
8
8
  bindir: bin
9
9
  cert_chain: []
10
- date: 2025-01-13 00:00:00.000000000 Z
10
+ date: 2025-03-11 00:00:00.000000000 Z
11
11
  dependencies:
12
12
  - !ruby/object:Gem::Dependency
13
13
  name: activemodel
@@ -51,6 +51,20 @@ dependencies:
51
51
  - - ">="
52
52
  - !ruby/object:Gem::Version
53
53
  version: '0.5'
54
+ - !ruby/object:Gem::Dependency
55
+ name: activerecord
56
+ requirement: !ruby/object:Gem::Requirement
57
+ requirements:
58
+ - - ">="
59
+ - !ruby/object:Gem::Version
60
+ version: '7.0'
61
+ type: :development
62
+ prerelease: false
63
+ version_requirements: !ruby/object:Gem::Requirement
64
+ requirements:
65
+ - - ">="
66
+ - !ruby/object:Gem::Version
67
+ version: '7.0'
54
68
  - !ruby/object:Gem::Dependency
55
69
  name: pry-byebug
56
70
  requirement: !ruby/object:Gem::Requirement
@@ -163,6 +177,20 @@ dependencies:
163
177
  - - ">="
164
178
  - !ruby/object:Gem::Version
165
179
  version: '2.29'
180
+ - !ruby/object:Gem::Dependency
181
+ name: sqlite3
182
+ requirement: !ruby/object:Gem::Requirement
183
+ requirements:
184
+ - - ">="
185
+ - !ruby/object:Gem::Version
186
+ version: '2'
187
+ type: :development
188
+ prerelease: false
189
+ version_requirements: !ruby/object:Gem::Requirement
190
+ requirements:
191
+ - - ">="
192
+ - !ruby/object:Gem::Version
193
+ version: '2'
166
194
  description: Generate json-schema from plain Ruby classes.
167
195
  email:
168
196
  - bayona.sergio@gmail.com
@@ -184,6 +212,7 @@ files:
184
212
  - docs/about.markdown
185
213
  - docs/index.markdown
186
214
  - lib/easy_talk.rb
215
+ - lib/easy_talk/active_record_schema_builder.rb
187
216
  - lib/easy_talk/builders/all_of_builder.rb
188
217
  - lib/easy_talk/builders/any_of_builder.rb
189
218
  - lib/easy_talk/builders/base_builder.rb
@@ -201,6 +230,9 @@ files:
201
230
  - lib/easy_talk/builders/time_builder.rb
202
231
  - lib/easy_talk/builders/typed_array_builder.rb
203
232
  - lib/easy_talk/builders/union_builder.rb
233
+ - lib/easy_talk/configuration.rb
234
+ - lib/easy_talk/errors.rb
235
+ - lib/easy_talk/errors_helper.rb
204
236
  - lib/easy_talk/keywords.rb
205
237
  - lib/easy_talk/model.rb
206
238
  - lib/easy_talk/property.rb