easy_talk 0.1.3 → 0.1.5

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: 7a7ba580780fc8f6908d6bef591393b6b28cc270a9dc1e36508ac2c2fbd07d2e
4
- data.tar.gz: 2f592a7f9e5cdcfd7d23951fe387db193069237c1a862eccab0c9748bcb34cd3
3
+ metadata.gz: e57fb697edd24d973df8ef2903607dabf1175e0d9948e84c8db7ac211f59ad0c
4
+ data.tar.gz: ac6e7e9c69f4072d8fb782c6044e225bf07cd573b9be2c0e4698e1db025d6185
5
5
  SHA512:
6
- metadata.gz: 9359d7c3f80257eddc0901e62aba4abafb781440e8d1677266c8ce6954ab190c450af30e97df3b90079ce6e97680881657a6e15e926e874c252f506499eae426
7
- data.tar.gz: fd5fbc79bbadd593f84e25b860b3acba09231b4c5d3cf26105ba13924b433ebc89b762e20eb1a12c14d0c2a164bc39c5275af0ec6ea24e9fc796134f9a4af48c
6
+ metadata.gz: 6f07bea45b29633c00586c4e8f1d012f19cb70998f33bf60d1c299f05468c7658de3db500c8c319f474c29779980dedebcffa561eb1870cd2c1b225953736527
7
+ data.tar.gz: 19f836dad8842c5109ea2250f5db3c85e1273bf0565cb33f74096872334617f550078d76479c8ea2b401de08bb85c65c0d1f25e4a51b77afc82992fafedee723
data/CHANGELOG.md CHANGED
@@ -1,3 +1,6 @@
1
+ ## [0.1.4] - 2024-04-12
2
+ - Bumped activesupport gem version.
3
+
1
4
  ## [0.1.3] - 2024-04-12
2
5
  - Bumped json-schema gem version.
3
6
 
data/easy_talk.gemspec CHANGED
@@ -31,9 +31,9 @@ Gem::Specification.new do |spec|
31
31
 
32
32
  spec.require_paths = ['lib']
33
33
 
34
- spec.add_dependency 'activesupport', '~> 6.0'
34
+ spec.add_dependency 'activesupport', '~> 7.0'
35
35
  spec.add_dependency 'json-schema', '~> 4'
36
- spec.add_dependency 'sorbet-runtime'
36
+ spec.add_dependency 'sorbet-runtime', '~> 0.5'
37
37
  spec.add_development_dependency 'pry-byebug', '>= 3.10.1'
38
38
  spec.add_development_dependency 'rake', '~> 13.1'
39
39
  end
@@ -82,6 +82,10 @@ module EasyTalk
82
82
  "#/$defs/#{name}"
83
83
  end
84
84
 
85
+ def function_name
86
+ name.humanize.titleize
87
+ end
88
+
85
89
  def validate_json(json)
86
90
  JSON::Validator.validate(json_schema, json)
87
91
  end
@@ -0,0 +1,20 @@
1
+ module EasyTalk
2
+ module Tools
3
+ module FunctionBuilder
4
+ def self.new(model)
5
+ {
6
+ type: 'function',
7
+ function: {
8
+ name: model.function_name,
9
+ description: generate_description(model),
10
+ parameters: model.json_schema
11
+ }
12
+ }
13
+ end
14
+
15
+ def self.generate_description(model)
16
+ "Correctly extracted `#{model.name}` with all the required parameters with correct types"
17
+ end
18
+ end
19
+ end
20
+ end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module EasyTalk
4
- VERSION = '0.1.3'
4
+ VERSION = '0.1.5'
5
5
  end
data/lib/easy_talk.rb CHANGED
@@ -12,6 +12,7 @@ module EasyTalk
12
12
  require 'easy_talk/builder'
13
13
  require 'easy_talk/property'
14
14
  require 'easy_talk/schema_definition'
15
+ require 'easy_talk/tools/function_builder'
15
16
  require 'easy_talk/version'
16
17
 
17
18
  class UnsupportedTypeError < ArgumentError; 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.3
4
+ version: 0.1.5
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-12 00:00:00.000000000 Z
11
+ date: 2024-04-15 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '6.0'
19
+ version: '7.0'
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: '6.0'
26
+ version: '7.0'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: json-schema
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -42,16 +42,16 @@ dependencies:
42
42
  name: sorbet-runtime
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - ">="
45
+ - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: '0'
47
+ version: '0.5'
48
48
  type: :runtime
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
- - - ">="
52
+ - - "~>"
53
53
  - !ruby/object:Gem::Version
54
- version: '0'
54
+ version: '0.5'
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: pry-byebug
57
57
  requirement: !ruby/object:Gem::Requirement
@@ -118,6 +118,7 @@ files:
118
118
  - lib/easy_talk/property.rb
119
119
  - lib/easy_talk/schema_definition.rb
120
120
  - lib/easy_talk/sorbet_extension.rb
121
+ - lib/easy_talk/tools/function_builder.rb
121
122
  - lib/easy_talk/types/all_of.rb
122
123
  - lib/easy_talk/types/any_of.rb
123
124
  - lib/easy_talk/types/base_composer.rb