Commit 37f5f08

Anton Medvedev <anton@medv.io>
2023-10-14 11:50:45
fmt
1 parent d23aa9b
src/present-badges.ts
@@ -10,8 +10,8 @@ export const mergeBadges = (...badges: (Badge | Badge[])[]): Badge[] =>
       .flat()
       .reduce<Record<string, Badge>>(
         (m, v) => Object.assign(m, { [v.id]: v }),
-        {}
-      )
+        {},
+      ),
   )
 
 const parseRegexp = (value: string): RegExp =>
@@ -23,7 +23,7 @@ export const presentBadges = (
   userBadges: Badge[],
   pickBadges: string[],
   omitBadges: string[],
-  compact: boolean
+  compact: boolean,
 ): Badge[] => {
   for (const presenter of presenters) {
     const newBadges: Badge[] = []
@@ -45,28 +45,28 @@ export const presentBadges = (
         continue
       }
       const touchedBadges = userBadges.filter(({ id }) =>
-        (presenter.badges as ID[]).includes(id)
+        (presenter.badges as ID[]).includes(id),
       )
       const newHighestTierBadge = touchedBadges.reduce(
         (prev, curr) => (prev.tier > curr.tier ? prev : curr),
-        {} as Badge
+        {} as Badge,
       )
 
       omitBadges.push(
         ...touchedBadges
           .map(({ id }) => id)
-          .filter((id) => id !== newHighestTierBadge.id)
+          .filter((id) => id !== newHighestTierBadge.id),
       )
     }
   }
   if (pickBadges.length > 0) {
     userBadges = userBadges.filter((x) =>
-      pickBadges.map(parseRegexp).some((r) => r.test(x.id))
+      pickBadges.map(parseRegexp).some((r) => r.test(x.id)),
     )
   }
   if (omitBadges.length > 0) {
     userBadges = userBadges.filter((x) =>
-      omitBadges.map(parseRegexp).every((r) => !r.test(x.id))
+      omitBadges.map(parseRegexp).every((r) => !r.test(x.id)),
     )
   }
 
test/present-badges.test.ts
@@ -34,9 +34,7 @@ describe('present-badges', () => {
 
   it('presentBadges() applies `pick`', async () => {
     const userBadges = presentBadges(
-      [
-        await import('../src/all-badges/stars/stars.js'),
-      ].map((m) => m.default),
+      [await import('../src/all-badges/stars/stars.js')].map((m) => m.default),
       data,
       [],
       ['stars-100', 'stars-500'],
@@ -76,9 +74,7 @@ describe('present-badges', () => {
 
   it('presentBadges() applies `omit`', async () => {
     const userBadges = presentBadges(
-      [
-        await import('../src/all-badges/stars/stars.js'),
-      ].map((m) => m.default),
+      [await import('../src/all-badges/stars/stars.js')].map((m) => m.default),
       data,
       [],
       ['stars-100', 'stars-500'],
@@ -105,9 +101,7 @@ describe('present-badges', () => {
 
   it('presentBadges() supports masks for `omit` && `pick`', async () => {
     const userBadges = presentBadges(
-      [
-        await import('../src/all-badges/stars/stars.js'),
-      ].map((m) => m.default),
+      [await import('../src/all-badges/stars/stars.js')].map((m) => m.default),
       data,
       [],
       ['stars-*'],
@@ -147,9 +141,7 @@ describe('present-badges', () => {
 
   it('presentBadges() applies `compact`', async () => {
     const userBadges = presentBadges(
-      [
-        await import('../src/all-badges/stars/stars.js'),
-      ].map((m) => m.default),
+      [await import('../src/all-badges/stars/stars.js')].map((m) => m.default),
       data,
       [],
       ['stars-1000', 'stars-2000', 'stars-5000'],