(
task: TTask,
key: IntegrationTaskKey,
params: Parameters<TTask>[1] = {}
)
| 175 | } |
| 176 | |
| 177 | async getAll< |
| 178 | TTask extends ( |
| 179 | key: IntegrationTaskKey, |
| 180 | params: Partial<Nullable<QueryVariables>> |
| 181 | ) => LinearReturnType<Connection<unknown>>, |
| 182 | >( |
| 183 | task: TTask, |
| 184 | key: IntegrationTaskKey, |
| 185 | params: Parameters<TTask>[1] = {} |
| 186 | ): Promise<Awaited<ReturnType<TTask>>["nodes"]> { |
| 187 | const boundTask = task.bind(this as any); |
| 188 | |
| 189 | let edges = await boundTask(`${key}-0`, params); |
| 190 | let nodes = edges.nodes; |
| 191 | |
| 192 | for (let i = 1; edges.pageInfo.hasNextPage; i++) { |
| 193 | edges = await boundTask(`${key}-${i}`, { ...params, after: edges.pageInfo.endCursor }); |
| 194 | nodes = nodes.concat(edges.nodes); |
| 195 | } |
| 196 | |
| 197 | return nodes; |
| 198 | } |
| 199 | |
| 200 | attachment(key: IntegrationTaskKey, params: { id: string }): LinearReturnType<Attachment> { |
| 201 | return this.runTask( |
no outgoing calls
no test coverage detected