From cc5fa66438c44bf8e7c1103f791a43bbe044afd7 Mon Sep 17 00:00:00 2001 From: Eric Crichlow Date: Sun, 15 Jan 2023 02:00:01 -0700 Subject: [PATCH] Query build fixes Fixes for query format issues that caused failures with query processing --- .../Managers/GraphQL/IoGGQLManager.swift | 26 ++++++++++++------- 1 file changed, 17 insertions(+), 9 deletions(-) diff --git a/Source/IoGInfrastructure/Managers/GraphQL/IoGGQLManager.swift b/Source/IoGInfrastructure/Managers/GraphQL/IoGGQLManager.swift index c6a15ea..ea26a8b 100644 --- a/Source/IoGInfrastructure/Managers/GraphQL/IoGGQLManager.swift +++ b/Source/IoGInfrastructure/Managers/GraphQL/IoGGQLManager.swift @@ -495,7 +495,7 @@ public class IoGGQLManager: IoGDataManagerDelegate var queryString = "query " if let operation = operationName { - queryString += "\(operation)" + queryString += "{ \(operation)" if let queryParameters = parameters { queryString += "(\(queryParameters))" @@ -506,6 +506,10 @@ public class IoGGQLManager: IoGDataManagerDelegate { queryString += propertyObjectDefinition } + if let _ = operationName + { + queryString += "}\n" + } return queryString } @@ -559,30 +563,30 @@ public class IoGGQLManager: IoGDataManagerDelegate if let childArray = child.value as? NSArray, let childName = child.label { let arrayDefinition = parseArray(array: childArray as NSArray, name: childName, fieldParameters: fieldParameters) - if let propertyName = child.label + if let innerPropertyName = child.label { - if let parameters = fieldParameters, let innerClassParameters = getFieldParameters(fieldName: propertyName, fieldParameters: parameters) + if let parameters = fieldParameters, let innerClassParameters = getFieldParameters(fieldName: innerPropertyName, fieldParameters: parameters) { - gqlObjectDefinition += "\(propertyName)(\(innerClassParameters)) \(arrayDefinition)" + gqlObjectDefinition += "\(innerPropertyName)(\(innerClassParameters)) \(arrayDefinition)" } else { - gqlObjectDefinition += "\(propertyName) \(arrayDefinition)" + gqlObjectDefinition += "\(innerPropertyName) \(arrayDefinition)" } } } } else { - if let propertyName = child.label + if let innerPropertyName = child.label { - if let parameters = fieldParameters, let innerClassParameters = getFieldParameters(fieldName: propertyName, fieldParameters: parameters) + if let parameters = fieldParameters, let innerClassParameters = getFieldParameters(fieldName: innerPropertyName, fieldParameters: parameters) { - gqlObjectDefinition += "\(propertyName)(\(innerClassParameters))" + gqlObjectDefinition += "\(innerPropertyName)(\(innerClassParameters))" } else { - gqlObjectDefinition += "\(propertyName)\n" + gqlObjectDefinition += "\(innerPropertyName)\n" } } } @@ -786,6 +790,10 @@ public class IoGGQLManager: IoGDataManagerDelegate } } } + else + { + arrayDefinition += "\n" + } } return arrayDefinition