11extend schema
22@link (url : " https://specs.apollo.dev/federation/v2.5" , import : ["@authenticated" , " @composeDirective" , " @external" , " @extends" , " @inaccessible" , " @interfaceObject" , " @override" , " @provides" , " @key" , " @requires" , " @requiresScopes" , " @shareable" , " @tag" ])
33
4- scalar connect__FieldSet
5- directive @configureResolver (context : connect__FieldSet !) on FIELD_DEFINITION
6-
7-
84schema {
95 query : Query
106 mutation : Mutation
@@ -109,10 +105,10 @@ type Project implements Node & Timestamped @key(fields: "id") {
109105 milestoneGroups : [[Milestone ]] # nested lists: nullable list of nullable lists
110106 priorityMatrix : [[[Task ! ]! ]! ] # triple nested: non-nullable list of non-nullable lists of non-nullable lists
111107
112- # Computed fields with @configureResolver
113- filteredTasks (status : TaskStatus , priority : TaskPriority , limit : Int ): [Task ! ]! @configureResolver (context : " id" )
114- completionRate (includeSubtasks : Boolean ): Float ! @configureResolver (context : " id startDate endDate status" )
115- estimatedDaysRemaining (fromDate : String ): Int @configureResolver (context : " id endDate status" )
108+ # Computed fields with @connect__configureResolver
109+ filteredTasks (status : TaskStatus , priority : TaskPriority , limit : Int ): [Task ! ]! @connect__configureResolver (context : " id" )
110+ completionRate (includeSubtasks : Boolean ): Float ! @connect__configureResolver (context : " id startDate endDate status" )
111+ estimatedDaysRemaining (fromDate : String ): Int @connect__configureResolver (context : " id endDate status" )
116112}
117113
118114# New types - simplified with ID references only
@@ -131,9 +127,9 @@ type Milestone implements Node & Timestamped @key(fields: "id") {
131127 subtasks : [Task ] # nullable list of nullable tasks
132128 reviewers : [Employee ! ] # nullable list of non-nullable employees
133129
134- # Computed fields with @configureResolver
135- isAtRisk (threshold : Float ): Boolean ! @configureResolver (context : " id endDate status completionPercentage" )
136- daysUntilDue (fromDate : String ): Int @configureResolver (context : " endDate" )
130+ # Computed fields with @connect__configureResolver
131+ isAtRisk (threshold : Float ): Boolean ! @connect__configureResolver (context : " id endDate status completionPercentage" )
132+ daysUntilDue (fromDate : String ): Int @connect__configureResolver (context : " endDate" )
137133}
138134
139135type Task implements Node & Assignable @key (fields : " id" ) {
@@ -157,9 +153,9 @@ type Task implements Node & Assignable @key(fields: "id") {
157153 attachmentUrls : [String ! ]! # non-nullable list of non-nullable URLs
158154 reviewerIds : [Int ] # nullable list of nullable reviewer IDs
159155
160- # Computed fields with @configureResolver
161- isBlocked (checkDependencies : Boolean ): Boolean ! @configureResolver (context : " id status" )
162- totalEffort (includeSubtasks : Boolean ): Float @configureResolver (context : " id estimatedHours actualHours" )
156+ # Computed fields with @connect__configureResolver
157+ isBlocked (checkDependencies : Boolean ): Boolean ! @connect__configureResolver (context : " id status" )
158+ totalEffort (includeSubtasks : Boolean ): Float @connect__configureResolver (context : " id estimatedHours actualHours" )
163159}
164160
165161type ProjectUpdate implements Node {
@@ -231,9 +227,9 @@ type Employee @key(fields: "id") {
231227 certifications : [String ! ] # nullable list of non-nullable certifications
232228 projectHistory : [[Project ! ]]! # non-nullable list of nullable lists of non-nullable projects
233229
234- # Computed fields with @configureResolver
235- currentWorkload (includeCompleted : Boolean , projectId : ID ): Int ! @configureResolver (context : " id" )
236- averageTaskCompletionDays (projectId : ID , priority : TaskPriority ): Float @configureResolver (context : " id" )
230+ # Computed fields with @connect__configureResolver
231+ currentWorkload (includeCompleted : Boolean , projectId : ID ): Int ! @connect__configureResolver (context : " id" )
232+ averageTaskCompletionDays (projectId : ID , priority : TaskPriority ): Float @connect__configureResolver (context : " id" )
237233}
238234
239235type Product @key (fields : " upc" ) {
0 commit comments