import { TrackingCamera, trackingCameraResolver } from './tracking-camera'
import { trackingCamerasResolver } from './tracking-cameras'
import { detectTrackingCameraROIsResolver } from './detect-tracking-camera-rois'
import { calibrateHandeyeMatrixResolver } from './calibrate-handeye-matrix-resolver'
import { calibrateCameraParameterResolver } from './calibrate-camera-parameter-resolver'
import { captureCalibrateResultResolver } from './capture-calibrate-snapshot'
import { getCalibrateResultResolver } from './get-calibrate-result'
import { finishCameraCalibrateResolver } from './finish-camera-calibrate'
import { startHandeyeCalibrateResolver } from './start-handeye-calibrate'
import { finishHandeyeCalibrateResolver } from './finish-handeye-calibrate'
import { getHandeyeResultResolver } from './get-handeye-result'

export const TrackingCameraResolver = {
  TrackingCamera,
  Query: {
    ...trackingCamerasResolver,
    ...trackingCameraResolver
  },
  Mutation: {
    ...detectTrackingCameraROIsResolver,
    ...calibrateHandeyeMatrixResolver,
    ...calibrateCameraParameterResolver,
    ...captureCalibrateResultResolver,
    ...getCalibrateResultResolver,
    ...finishCameraCalibrateResolver,
    ...startHandeyeCalibrateResolver,
    ...finishHandeyeCalibrateResolver,
    ...getHandeyeResultResolver
  }
}
