@@ -70,8 +70,9 @@ You can get pretty creative! Here's an example of a Lens that points to a specif
|
||||
const lens = Effect.all([
|
||||
KeyValueStore.KeyValueStore,
|
||||
Effect.succeed("someKey"),
|
||||
Effect.makeSemaphore(1),
|
||||
]).pipe(
|
||||
Effect.map(([kv, key]) => Lens.make({
|
||||
Effect.map(([kv, key, semaphore]) => Lens.make({
|
||||
get: kv.get(key),
|
||||
|
||||
changes: kv.get(key).pipe(
|
||||
@@ -90,7 +91,7 @@ const lens = Effect.all([
|
||||
? kv.set(key, a.value)
|
||||
: kv.remove(key),
|
||||
|
||||
lock: Effect.succeed(effect => effect),
|
||||
lock: Effect.succeed(semaphore.withPermits(1)),
|
||||
})),
|
||||
|
||||
Effect.provide(BrowserKeyValueStore.layerLocalStorage),
|
||||
|
||||
Reference in New Issue
Block a user