jsonapi-resources-anchor 2.7.0 → 2.9.0

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: 73315646b6bd128cb07de6a329756015a9cf2895d2a4b287dd265fa233315c4b
4
- data.tar.gz: 655e5a292f2530600dde1fe1a1dce901d2e4132d22a9f4bc5603622b469aaf2e
3
+ metadata.gz: 962bf8a3356ccecfbcb24ea24ff6a5eeed59f0ad8500e3ddaf97e2dfce13c4ce
4
+ data.tar.gz: d96d1d755774d34451ceb5ff61ad51ec1d27589f324c1f5afc2ef85ea1549549
5
5
  SHA512:
6
- metadata.gz: 89bcca0ec24af07ba1c8b03879175913c7deb115d9454ba905e5234312adb40c22f30ea1027124baf56ceeb15c6ab11a868b583681624ac77f02b6891e8d20c7
7
- data.tar.gz: e0e808710edf6449c2745a7044ba8e94aa67fa04409885bb71f52b39005bb69712020de4a701e6204f74352d80e08e8773be04146a8cf133886bf0e0bf2f9857
6
+ metadata.gz: 36bd34eed3daa6104d47f68371d5fa40e4a6d2474e13e084346c9e00f677aa3b0e97406004e1c86e724a49143c5b0bed8203688a8e9a6a27949952d5d566a725
7
+ data.tar.gz: e02816e55af27b29544a92a69391ae0430de9d4c0846c2f438ab5cc65f6f0cc460ab0031ef5f2f92a40051262668da4b4ba4d7ba3d16da1ec224ae964fd84cac
@@ -12,6 +12,17 @@ module Anchor
12
12
  @anchor_schema_name ||= name || anchor_default_schema_name
13
13
  end
14
14
 
15
+ # @param reason [String] Reason to exclude from schema.
16
+ # @return [String]
17
+ def anchor_exclude_from_schema(reason: nil)
18
+ @anchor_exclude_from_schema ||= reason || (_abstract ? "Abstract." : nil)
19
+ end
20
+
21
+ # @return [Boolean] True if should be excluded.
22
+ def anchor_excluded_from_schema?
23
+ anchor_exclude_from_schema.present?
24
+ end
25
+
15
26
  private
16
27
 
17
28
  # @anchor_method_added_count[attribute] > 1 implies the attribute
data/lib/anchor/config.rb CHANGED
@@ -8,7 +8,8 @@ module Anchor
8
8
  :empty_relationship_type,
9
9
  :use_type_as_schema_name,
10
10
  :maybe_as_union,
11
- :array_bracket_notation
11
+ :array_bracket_notation,
12
+ :infer_default_as_non_null
12
13
 
13
14
  def initialize
14
15
  @ar_column_to_type = nil
@@ -20,6 +21,7 @@ module Anchor
20
21
  @use_type_as_schema_name = nil
21
22
  @maybe_as_union = nil
22
23
  @array_bracket_notation = nil
24
+ @infer_default_as_non_null = nil
23
25
  end
24
26
  end
25
27
  end
@@ -91,6 +91,8 @@ module Anchor
91
91
  end
92
92
  end
93
93
  type.type
94
+ elsif type.is_a?(Anchor::Types::Maybe) && Anchor.config.infer_default_as_non_null
95
+ column.default.present? || column.default_function.present? && column.instance_variable_get(:@generated).blank? ? type.type : type
94
96
  else
95
97
  type
96
98
  end
@@ -1,3 +1,3 @@
1
1
  module Anchor
2
- VERSION = "2.7.0"
2
+ VERSION = "2.9.0"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: jsonapi-resources-anchor
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.7.0
4
+ version: 2.9.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Matt
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2025-07-21 00:00:00.000000000 Z
11
+ date: 2025-07-30 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: jsonapi-resources