Skip to content

Commit 5dec0f5

Browse files
committed
Format code
1 parent a9c1990 commit 5dec0f5

File tree

5 files changed

+49
-29
lines changed

5 files changed

+49
-29
lines changed

src/nested.ts

Lines changed: 22 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -83,8 +83,7 @@ const Nested =
8383
onUpdate,
8484
});
8585

86-
const { put, set, get, del, move, iterator, all } =
87-
NestedApi({ database });
86+
const { put, set, get, del, move, iterator, all } = NestedApi({ database });
8887

8988
return {
9089
...database,
@@ -178,19 +177,28 @@ export const NestedApi = ({ database }: { database: InternalDatabase }) => {
178177

179178
type PutFunction = {
180179
(object: NestedValueObject): Promise<string[]>;
181-
(key: NestedKey, object: PossiblyNestedValue, position?: number): Promise<string[]>;
180+
(
181+
key: NestedKey,
182+
object: PossiblyNestedValue,
183+
position?: number,
184+
): Promise<string[]>;
182185
};
183186
const put: PutFunction = async (
184187
keyOrObject,
185188
object?: PossiblyNestedValue,
186189
position?: number,
187190
): Promise<string[]> => {
188-
let flattenedEntries: { key: string; value: DagCborEncodable, position?: number }[];
191+
let flattenedEntries: {
192+
key: string;
193+
value: DagCborEncodable;
194+
position?: number;
195+
}[];
189196

190-
if (isNestedKey(keyOrObject)) { // If a key was given
197+
if (isNestedKey(keyOrObject)) {
198+
// If a key was given
191199
// Join key
192-
keyOrObject = asJoinedKey(keyOrObject)
193-
200+
keyOrObject = asJoinedKey(keyOrObject);
201+
194202
// Ensure value exists
195203
if (object === undefined) throw new Error("Must specify a value to add");
196204

@@ -201,12 +209,15 @@ export const NestedApi = ({ database }: { database: InternalDatabase }) => {
201209
value: entry.value,
202210
}));
203211
} else {
204-
flattenedEntries = [{key: keyOrObject, value: object, position}]
212+
flattenedEntries = [{ key: keyOrObject, value: object, position }];
205213
}
206-
} else { // If no key was given
214+
} else {
215+
// If no key was given
207216
flattenedEntries = flatten(keyOrObject);
208217
}
209-
return await Promise.all(flattenedEntries.map((e) => putEntry(e.key, e.value, e.position)));
218+
return await Promise.all(
219+
flattenedEntries.map((e) => putEntry(e.key, e.value, e.position)),
220+
);
210221
};
211222

212223
const iterator = async function* ({
@@ -277,7 +288,7 @@ export const NestedApi = ({ database }: { database: InternalDatabase }) => {
277288
values.unshift(entry);
278289
}
279290
const sorted = values.toSorted((a, b) => a.position - b.position);
280-
291+
281292
return toNested(sorted);
282293
};
283294

src/types.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ export type NestedValueMap = Map<string, DagCborEncodable | NestedValueMap>;
1616
export type NestedValueObject = {
1717
[key: string]: DagCborEncodable | NestedValueObject;
1818
};
19-
export type NestedValue = NestedValueMap | NestedValueObject;
19+
export type NestedValue = NestedValueMap | NestedValueObject;
2020

2121
export type NestedMapToObject<T> =
2222
T extends NestedObjectToMap<infer R> ? R : never;

src/utils.ts

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -61,17 +61,22 @@ export const isNestedValueObject = (
6161
);
6262
};
6363

64-
export const isNestedValueMap = (x: PossiblyNestedValue): x is NestedValueMap => {
64+
export const isNestedValueMap = (
65+
x: PossiblyNestedValue,
66+
): x is NestedValueMap => {
6567
return x instanceof Map;
6668
};
6769

6870
export const isNestedValue = (x: PossiblyNestedValue): x is NestedValue => {
6971
return isNestedValueObject(x) || isNestedValueMap(x);
70-
}
72+
};
7173

7274
export const isNestedKey = (x: unknown): x is NestedKey => {
73-
return typeof x === "string" || Array.isArray(x) && x.every(k=>typeof k === "string");
74-
}
75+
return (
76+
typeof x === "string" ||
77+
(Array.isArray(x) && x.every((k) => typeof k === "string"))
78+
);
79+
};
7580

7681
export const flatten = (
7782
x: NestedValueMap | NestedValueObject,

test/nested.spec.ts

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -246,16 +246,16 @@ describe("Nested Database", () => {
246246
const actual = await db.all();
247247

248248
// Check unordered structure
249-
expect(toObject(actual)).to.deep.equal({ a: { b: 2, c: 3, d: 1}})
249+
expect(toObject(actual)).to.deep.equal({ a: { b: 2, c: 3, d: 1 } });
250250

251251
// Here we only check the middle value, because we don't know if key0 or key1 was
252252
// added first due to the race condition we intentionally introduced above.
253-
const actualA = actual.get("a") as Map<string, number>
254-
expect([...actualA?.keys()||[]][1]).to.equal("d");
253+
const actualA = actual.get("a") as Map<string, number>;
254+
expect([...(actualA?.keys() || [])][1]).to.equal("d");
255255
});
256256

257257
it("move a value", async () => {
258-
await fillKeys(db, 3)
258+
await fillKeys(db, 3);
259259
await db.move("key0", 1);
260260

261261
const actual = await db.all();
@@ -269,7 +269,7 @@ describe("Nested Database", () => {
269269
});
270270

271271
it("move a value to index 0", async () => {
272-
await fillKeys(db, 3)
272+
await fillKeys(db, 3);
273273
await db.move("key2", 0);
274274

275275
const actual = await db.all();

test/utils.ts

Lines changed: 12 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ export const expectNestedMapEqual = (
1818
if (ref instanceof Map) {
1919
expect([...map.keys()]).to.deep.equal([...ref.keys()]);
2020
for (const key of ref.keys()) {
21-
const value = ref.get(key)
21+
const value = ref.get(key);
2222
if (value instanceof Map) {
2323
const mapBranch = map.get(key);
2424
expect(mapBranch).to.be.instanceOf(Map);
@@ -28,13 +28,17 @@ export const expectNestedMapEqual = (
2828
}
2929
};
3030

31-
export const fillKeys = async (db: NestedDatabaseType, n: number): Promise<string[]> => {
32-
const keyValues = (
33-
[...Array(n).keys()].map((i) => ({key: `key${i}`, value: `value${i}`}))
34-
)
31+
export const fillKeys = async (
32+
db: NestedDatabaseType,
33+
n: number,
34+
): Promise<string[]> => {
35+
const keyValues = [...Array(n).keys()].map((i) => ({
36+
key: `key${i}`,
37+
value: `value${i}`,
38+
}));
3539
const hashes: string[] = [];
36-
for (const {key, value} of keyValues) {
37-
hashes.push(...await db.put(key, value));
40+
for (const { key, value } of keyValues) {
41+
hashes.push(...(await db.put(key, value)));
3842
}
3943
return hashes;
40-
}
44+
};

0 commit comments

Comments
 (0)