| 1310 | }) |
| 1311 | |
| 1312 | const getCount = (query: IndexedDbQuery.Count<any, never>) => |
| 1313 | Effect.callback<number, IndexedDbQueryError>((resume) => { |
| 1314 | const { keyRange, store } = getReadonlyObjectStore(query) |
| 1315 | |
| 1316 | const request = store.count(keyRange) |
| 1317 | |
| 1318 | request.onerror = (event) => { |
| 1319 | resume( |
| 1320 | Effect.fail( |
| 1321 | new IndexedDbQueryError({ |
| 1322 | reason: "TransactionError", |
| 1323 | cause: event |
| 1324 | }) |
| 1325 | ) |
| 1326 | ) |
| 1327 | } |
| 1328 | |
| 1329 | request.onsuccess = () => { |
| 1330 | resume(Effect.succeed(request.result)) |
| 1331 | } |
| 1332 | }) |
| 1333 | |
| 1334 | const FromProto: Omit< |
| 1335 | IndexedDbQuery.From<any>, |