rswag-schema_components 0.3.2 → 0.3.4

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: fb6735e7e650393a929e23167d9dba2fba93a94b2c6b50178734116d53e2a2e2
4
- data.tar.gz: 38d2e7af9720b18d24385939cd989b3fe68df34716ec05a4a9394ca06144dd92
3
+ metadata.gz: 9544448fb48d0ce6a9ee8788df90047e2ed0f8eeee12da103936b3cc984742e5
4
+ data.tar.gz: 10c145bab158665095f35cd6397588c5d15c63a08aa5d27068d4eaa9227a2149
5
5
  SHA512:
6
- metadata.gz: bd4de5f0097217e6ca73773734d2f39fa596d2e4552a1be8341f43becbb5aef07031e251de29ef613736d5fa0c5f9d469d02a75abd5da99b2d1ed746e28bb088
7
- data.tar.gz: 940d48f65b88bb7f98c27318a4a99f091ff99d469ea010e33d2d72f4e87bb5badd90bdaf074ccaa10b219d06c5975baaf5ec3b843592dffdf908ed32f94b07b8
6
+ metadata.gz: f1e8a93eef6296b43c0cac844d587614f8f0cdf5a728e8546042bd236db00cb89dbdbd4b9d3726046bc400b48b75ca498a927bff3d0df63e20add61840e2b149
7
+ data.tar.gz: 40f933561bd1eb40d764013a3f6c173a40218bb3c1316feb3506bca03054944ad4f5a5cf1c3d870221d174abb3f726419ae0ca14214b8ff42d85030432312fc0
@@ -7,7 +7,7 @@ module Rswag
7
7
 
8
8
  included do
9
9
  class << self
10
- attr_accessor :schema_value, :schema_hidden_value
10
+ attr_accessor :schema_value, :schema_hidden_value, :skip_key_transformation_value
11
11
 
12
12
  def schema(schema_definition)
13
13
  self.schema_value = if superclass.respond_to?(:schema_value)
@@ -21,6 +21,10 @@ module Rswag
21
21
  def schema_hidden(flag = false)
22
22
  self.schema_hidden_value = flag
23
23
  end
24
+
25
+ def skip_key_transformation(flag = false)
26
+ self.skip_key_transformation_value = flag
27
+ end
24
28
  end
25
29
 
26
30
  def to_schema
@@ -30,6 +34,10 @@ module Rswag
30
34
  def hidden?
31
35
  self.class.schema_hidden_value
32
36
  end
37
+
38
+ def skip_key_transformation?
39
+ self.class.skip_key_transformation_value
40
+ end
33
41
  end
34
42
  end
35
43
  end
@@ -40,7 +40,15 @@ module Rswag
40
40
 
41
41
  definition = definition.merge(title: component_name) if type_allows_title?
42
42
 
43
- components[component_name] = definition.deep_transform_keys { |key| key.to_s.camelize(:lower).to_sym }
43
+ components[component_name] = if component.skip_key_transformation?
44
+ definition
45
+ else
46
+ definition.deep_transform_keys do |key|
47
+ prefix = key.to_s.start_with?("_") ? "_" : ""
48
+
49
+ :"#{prefix}#{key.to_s.delete_prefix("_").camelize(:lower)}"
50
+ end
51
+ end
44
52
  end
45
53
 
46
54
  components
@@ -1,5 +1,5 @@
1
1
  module Rswag
2
2
  module SchemaComponents
3
- VERSION = "0.3.2"
3
+ VERSION = "0.3.4"
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rswag-schema_components
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.2
4
+ version: 0.3.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Marten Klitzke
8
8
  bindir: bin
9
9
  cert_chain: []
10
- date: 2025-07-28 00:00:00.000000000 Z
10
+ date: 2025-07-29 00:00:00.000000000 Z
11
11
  dependencies:
12
12
  - !ruby/object:Gem::Dependency
13
13
  name: rails