diff --git a/.changeset/serious-comics-lick.md b/.changeset/serious-comics-lick.md new file mode 100644 index 00000000..f151e91c --- /dev/null +++ b/.changeset/serious-comics-lick.md @@ -0,0 +1,5 @@ +--- +"@zarrita/storage": minor +--- + +fix(storage): Rename storage type `Writeable` to `Writable` diff --git a/README.md b/README.md index 7641ebe0..c59436db 100644 --- a/README.md +++ b/README.md @@ -85,14 +85,14 @@ classDiagram class core { - open(store: Readable) - - create(store: Writeable) + - create(store: Writable) - zarr.Array and zarr.Group - access and decode individual chunks } class storage { - Readable - - Writeable + - Writable - Map() - FetchStore() - FileSystemStore() diff --git a/docs/cookbook.md b/docs/cookbook.md index 2ece5735..b34f2e04 100644 --- a/docs/cookbook.md +++ b/docs/cookbook.md @@ -58,7 +58,7 @@ const arr = await zarr.open.v2(store, { kind: "array" }); ## Create an Array -Requires the `store` to implement `Writeable`. +Requires the `store` to implement `Writable`. ```js import * as zarr from "zarrita"; @@ -75,7 +75,7 @@ arr; // zarr.Array<"int32", FileSystemStore> ## Create a Group -Requires the `store` to implement `Writeable`. +Requires the `store` to implement `Writable`. ```js import * as zarr from "zarrita"; diff --git a/docs/packages/storage.md b/docs/packages/storage.md index e867e7b4..93c50ab4 100644 --- a/docs/packages/storage.md +++ b/docs/packages/storage.md @@ -25,19 +25,19 @@ interface AsyncReadable { } ``` -and may optionally implement `Writeable` or `AsyncWriteable`: +and may optionally implement `Writable` or `AsyncWritable`: ```typescript -interface Writeable { +interface Writable { set(key: string, value: Uint8Array): void; } -interface AsyncWriteable { +interface AsyncWritable { set(key: string, value: Uint8Array): Promise; } ``` -That's it! `Readable`/`Writeable` are enough to allow an +That's it! `Readable`/`Writable` are enough to allow an [ES6 Map](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map) to serve as the most basic backend, while also facilitating developers in creating their custom stores as needed. @@ -69,7 +69,7 @@ const store = new FetchStore("http://localhost:8080/data.zarr", { }); ``` -### FileSystemStore +### FileSystemStore Designed for JavaScript runtimes with file system access, the The **FileSystemStore** is designed for JavaScript runtimes with file system access diff --git a/docs/what-is-zarrita.md b/docs/what-is-zarrita.md index 0ed4e670..487d9ab7 100644 --- a/docs/what-is-zarrita.md +++ b/docs/what-is-zarrita.md @@ -32,7 +32,7 @@ Zarr. ### [@zarrita/storage](/packages/storage) - A collection of useful of storage backends for Zarr. -- Implement your own `Readable` and (optionally `Writeable`) stores. +- Implement your own `Readable` and (optionally `Writable`) stores. ### [@zarrita/core](/packages/core) diff --git a/packages/storage/src/types.ts b/packages/storage/src/types.ts index 8200b0ee..61f4f6ab 100644 --- a/packages/storage/src/types.ts +++ b/packages/storage/src/types.ts @@ -33,20 +33,20 @@ export interface SyncReadable { ): Uint8Array | undefined; } -export type Writeable = AsyncWriteable | SyncWriteable; -export interface AsyncWriteable { +export type Writable = AsyncWritable | SyncWritable; +export interface AsyncWritable { set(key: AbsolutePath, value: Uint8Array): Promise; } -export interface SyncWriteable { +export interface SyncWritable { set(key: AbsolutePath, value: Uint8Array): void; } export type AsyncMutable = & AsyncReadable - & AsyncWriteable; + & AsyncWritable; export type SyncMutable = & SyncReadable - & SyncWriteable; + & SyncWritable; export type Mutable = | AsyncMutable | SyncMutable;