( options: TraverseContractProceduresOptions, callback: (options: TraverseContractProcedureCallbackOptions) => void, )
| 234 | } |
| 235 | |
| 236 | export async function resolveContractProcedures( |
| 237 | options: TraverseContractProceduresOptions, |
| 238 | callback: (options: TraverseContractProcedureCallbackOptions) => void, |
| 239 | ) { |
| 240 | const pending: TraverseContractProceduresOptions[] = [options] |
| 241 | |
| 242 | for (const options of pending) { |
| 243 | const lazyOptions = traverseContractProcedures(options, callback) |
| 244 | |
| 245 | for (const options of lazyOptions) { |
| 246 | const { default: router } = await unlazy(options.router) |
| 247 | |
| 248 | pending.push({ |
| 249 | router, |
| 250 | path: options.path, |
| 251 | }) |
| 252 | } |
| 253 | } |
| 254 | } |
| 255 | |
| 256 | export type UnlaziedRouter<T extends AnyRouter> |
| 257 | = T extends AnyProcedure |
no test coverage detected