grape_sorbet 0.0.1 → 0.0.2

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: 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