gds-api-adapters 99.1.0 → 99.2.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: d1f02f36082cca349576ca453b3ae3ebe326b5ebe3ca57de8689bb9717bba927
4
- data.tar.gz: 70c451f9cc60fe6d6f8152f195c6cf98eed99cbcb828e6f2a48244220c951602
3
+ metadata.gz: 77b556dd9d3c693a4ec8e39553d52775880ac1012907ff339d8688b632d1a61f
4
+ data.tar.gz: 56908ef8260c2201338640dd4f215c31a3d527f9e2e1aa4505b2f5e00ce23100
5
5
  SHA512:
6
- metadata.gz: 8e100510c435857c1ee2eec2e4c90eeb4356ccd97990522d8d2cc02eb83a5c3fb2ad0e5fc2b1f23e058d2b364bffa38089bf9f6ac7af26245af85eb948d3fec4
7
- data.tar.gz: ce47e501dd2b8d32031e29f4f458099fc71d28695294da93ba5e8aadf59749b7351b2bffe3e87d9f52ed1599bbf16ccaa9dedcd5e49a36b4907d23d60d101d0e
6
+ metadata.gz: 0cc21fc6e390640d4cb9f302d1c5a8ba9d666770a2bfebf7ae48d20fdef7943dfa801da523d53d696acc15f08335b58f7665a51ca2de2a35f903307bd1fe3775
7
+ data.tar.gz: 2cbf538c940fc4e7ae9bfbe5f7585f4d9e2e0d82788b40eb4747091ac2cc02c7e8a9ec29c27a15241a3a92fe1614d218fad27607b40a20eea1008a7e75ed5aca
@@ -612,7 +612,19 @@ class GdsApi::PublishingApi < GdsApi::Base
612
612
  # @return [GdsApi::Response] A response with the result of the GraphQL query formatted like a Content Store content item.
613
613
  def graphql_content_item(query)
614
614
  create_response = proc do |r|
615
- updated_body = JSON.parse(r.body).dig("data", "edition")
615
+ parsed_body = JSON.parse(r.body)
616
+
617
+ updated_body = if parsed_body["errors"] && (unpublished_error = parsed_body["errors"].find { |error| error["message"] == "Edition has been unpublished" })
618
+ if unpublished_error.dig("extensions", "schema_name") == "gone" &&
619
+ (unpublished_error.dig("extensions", "details").nil? || unpublished_error.dig("extensions", "details").values.compact.reject(&:empty?).empty?)
620
+ raise GdsApi::HTTPGone.new(410, nil, unpublished_error["extensions"])
621
+ end
622
+
623
+ unpublished_error["extensions"]
624
+ else
625
+ parsed_body.dig("data", "edition")
626
+ end
627
+
616
628
  updated_response = RestClient::Response.create(
617
629
  updated_body.to_json,
618
630
  r.net_http_res,
@@ -1,3 +1,3 @@
1
1
  module GdsApi
2
- VERSION = "99.1.0".freeze
2
+ VERSION = "99.2.0".freeze
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: gds-api-adapters
3
3
  version: !ruby/object:Gem::Version
4
- version: 99.1.0
4
+ version: 99.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - GOV.UK Dev