(shardId: string)
| 866 | .pipe(Effect.catchIf(isConflict, () => Effect.void), Effect.orDie) |
| 867 | |
| 868 | const readLock = (shardId: string) => |
| 869 | Effect.tryPromise(() => container.item(lockDocId(shardId), "lock").read<LockDoc>()).pipe( |
| 870 | Effect.tap(annotateItem), |
| 871 | Effect.map((resp) => Option.fromNullishOr(resp.resource)), |
| 872 | Effect.catchIf(isNotFound, () => Effect.succeed(Option.none())) |
| 873 | ) |
| 874 | |
| 875 | const writeLock = (doc: LockDoc) => |
| 876 | Effect |