easy_talk 0.1.1 → 0.1.3

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 454bc510ff919928f3dc4f6fd685d1db8f5855f0c134d05c3b8ec55f5d210673
4
- data.tar.gz: d3401cecda7647960ac6316da49e7cc34be973966098adf55f5155844488d261
3
+ metadata.gz: 7a7ba580780fc8f6908d6bef591393b6b28cc270a9dc1e36508ac2c2fbd07d2e
4
+ data.tar.gz: 2f592a7f9e5cdcfd7d23951fe387db193069237c1a862eccab0c9748bcb34cd3
5
5
  SHA512:
6
- metadata.gz: 1427e9cecc84caae79125c6f9115733599bb604803a523df589820599acf4b26dfe83425b08f8a59043b5c8b615c1b4865d4ec5e16a8b3a176be3c7fa0d89eaa
7
- data.tar.gz: eb2e590b7f569ad49ec907185086050f7068aba378d99852e32fd133c1b0cd6e16e6452ae0d8e90e1560130a3240d58ee5f0c80c18da0cd9587d0d91b0801680
6
+ metadata.gz: 9359d7c3f80257eddc0901e62aba4abafb781440e8d1677266c8ce6954ab190c450af30e97df3b90079ce6e97680881657a6e15e926e874c252f506499eae426
7
+ data.tar.gz: fd5fbc79bbadd593f84e25b860b3acba09231b4c5d3cf26105ba13924b433ebc89b762e20eb1a12c14d0c2a164bc39c5275af0ec6ea24e9fc796134f9a4af48c
data/CHANGELOG.md CHANGED
@@ -1,4 +1,10 @@
1
- ## [0.1.1] - 2024-02-10
1
+ ## [0.1.3] - 2024-04-12
2
+ - Bumped json-schema gem version.
3
+
4
+ ## [0.1.2] - 2024-04-12
5
+ - Added json validation.
6
+
7
+ ## [0.1.1] - 2024-04-10
2
8
  - Removed pry-byebug.
3
9
 
4
10
  ## [0.1.0] - 2024-04-09
data/easy_talk.gemspec CHANGED
@@ -32,6 +32,7 @@ Gem::Specification.new do |spec|
32
32
  spec.require_paths = ['lib']
33
33
 
34
34
  spec.add_dependency 'activesupport', '~> 6.0'
35
+ spec.add_dependency 'json-schema', '~> 4'
35
36
  spec.add_dependency 'sorbet-runtime'
36
37
  spec.add_development_dependency 'pry-byebug', '>= 3.10.1'
37
38
  spec.add_development_dependency 'rake', '~> 13.1'
@@ -6,6 +6,7 @@ require 'active_support/core_ext'
6
6
  require 'active_support/time'
7
7
  require 'active_support/concern'
8
8
  require 'active_support/json'
9
+ require 'json-schema'
9
10
  require_relative 'builder'
10
11
  require_relative 'schema_definition'
11
12
 
@@ -81,11 +82,15 @@ module EasyTalk
81
82
  "#/$defs/#{name}"
82
83
  end
83
84
 
85
+ def validate_json(json)
86
+ JSON::Validator.validate(json_schema, json)
87
+ end
88
+
84
89
  # Returns the JSON schema for the model.
85
90
  def json_schema
86
91
  @json_schema ||= begin
87
92
  schema = Builder.new(schema_definition).schema
88
- schema.to_json
93
+ schema.as_json
89
94
  end
90
95
  end
91
96
 
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module EasyTalk
4
- VERSION = '0.1.1'
4
+ VERSION = '0.1.3'
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: easy_talk
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.1.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Sergio Bayona
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-04-10 00:00:00.000000000 Z
11
+ date: 2024-04-12 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport
@@ -24,6 +24,20 @@ dependencies:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
26
  version: '6.0'
27
+ - !ruby/object:Gem::Dependency
28
+ name: json-schema
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: '4'
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: '4'
27
41
  - !ruby/object:Gem::Dependency
28
42
  name: sorbet-runtime
29
43
  requirement: !ruby/object:Gem::Requirement