grape_sorbet 0.0.1 → 0.0.2

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 68395f140413d15f9db05463e554cdf86ec2e60915226877fd738cf1b7d17183
4
- data.tar.gz: 8c4a99e44696bd706c216c1629c18c48a359902710100542061f65fd01fae256
3
+ metadata.gz: 3aadd0dde4fcc5037da59fbc26226c5d54d94686cc4024875e9cf9e21e547df8
4
+ data.tar.gz: 9ca6394902e1aea0a6facfcb584c3bac8c03ff580f5a3c8501962fcb737d7154
5
5
  SHA512:
6
- metadata.gz: db6b2f00da52ea9382f4cc6fc05c38b569614e95f7f81061d684d884716ea761a2b8d23a090606dccab3c5e54faa715fcc5e4b59d598b7e66b279ec2cfae0dce
7
- data.tar.gz: ef8ffe995841f9cb5ca094e36ea7ef82d0ccc05626a3a68e8a252469ff1197460cfa5556e58d93c361964f2a4617a846b3e873d3d228a58da276fbdf0eae3fc9
6
+ metadata.gz: 212aad3e25427f5d9329061e20d308d54daea04584c65d6cd0c5f8d542b7396287cb43a76f93999fea67c24883610e6f9d56e399bf59f7a65737ad51b21b4b41
7
+ data.tar.gz: 56f4c190b13f6763ad0e2a4b051346011eb976c3664de34e5b915f886a2c2970054b8e1946b5738fa2f439c1ecb88fc1f094d80e63145529a0e9b861fb0faa69
data/CHANGELOG.md ADDED
@@ -0,0 +1,7 @@
1
+ ## 0.0.2 (2024-06-05)
2
+
3
+ - Added support for callbacks (`before`, `after`, etc.)
4
+
5
+ ## 0.0.1 (2024-06-04)
6
+
7
+ - First release
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- grape_sorbet (0.0.1)
4
+ grape_sorbet (0.0.2)
5
5
  activesupport
6
6
  grape (~> 2.0)
7
7
  sorbet-runtime (~> 0.5.10741)
@@ -2,5 +2,5 @@
2
2
  # frozen_string_literal: true
3
3
 
4
4
  module GrapeSorbet
5
- VERSION = "0.0.1"
5
+ VERSION = "0.0.2"
6
6
  end
@@ -68,6 +68,7 @@ module Tapioca
68
68
  def decorate
69
69
  create_classes_and_includes
70
70
  create_routing_methods
71
+ create_callbacks_methods
71
72
  end
72
73
 
73
74
  class << self
@@ -84,6 +85,11 @@ module Tapioca
84
85
  T::Array[Symbol],
85
86
  )
86
87
 
88
+ CALLBACKS_METHODS = T.let(
89
+ [:before, :before_validation, :after_validation, :after, :finally].freeze,
90
+ T::Array[Symbol],
91
+ )
92
+
87
93
  private
88
94
 
89
95
  sig { returns(RBI::Scope) }
@@ -158,6 +164,20 @@ module Tapioca
158
164
  return_type: "void",
159
165
  )
160
166
  end
167
+
168
+ sig { void }
169
+ def create_callbacks_methods
170
+ CALLBACKS_METHODS.each do |callback|
171
+ routing_methods_module.create_method(
172
+ callback.to_s,
173
+ parameters: [
174
+ create_rest_param("args", type: "T.untyped"),
175
+ create_block_param("blk", type: "T.nilable(T.proc.bind(#{EndpointClassName}).void)"),
176
+ ],
177
+ return_type: "void",
178
+ )
179
+ end
180
+ end
161
181
  end
162
182
  end
163
183
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: grape_sorbet
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Thatch Health, Inc.
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2024-06-04 00:00:00.000000000 Z
11
+ date: 2024-06-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport
@@ -63,6 +63,7 @@ files:
63
63
  - ".editorconfig"
64
64
  - ".rubocop.yml"
65
65
  - ".ruby-version"
66
+ - CHANGELOG.md
66
67
  - CODE_OF_CONDUCT.md
67
68
  - Gemfile
68
69
  - Gemfile.lock