Skip to content

Commit

Permalink
feat: cleanup
Browse files Browse the repository at this point in the history
  • Loading branch information
mbret committed Feb 24, 2024
1 parent 1714a9f commit a3b5248
Show file tree
Hide file tree
Showing 4 changed files with 20 additions and 26 deletions.
12 changes: 6 additions & 6 deletions packages/web/src/books/states.ts
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ import {
} from "../download/states"
import {
getCollectionState,
useCollectionsDictionary
useCollectionsDictionaryWithoutPrivacy
} from "../collections/states"
import { map, switchMap, tap, withLatestFrom } from "rxjs"
import { plugin } from "../plugins/local"
Expand Down Expand Up @@ -89,7 +89,7 @@ const getBookState = ({
book,
tags = {}
}: {
collections: ReturnType<typeof useCollectionsDictionary>["data"]
collections: ReturnType<typeof useCollectionsDictionaryWithoutPrivacy>["data"]
book?: BookQueryResult | null
tags: ReturnType<typeof useTagsByIds>["data"]
}) => {
Expand All @@ -113,7 +113,7 @@ export const useBookState = ({
tags: ReturnType<typeof useTagsByIds>["data"]
}) => {
const { data: book } = useBook({ id: bookId })
const { data: collections } = useCollectionsDictionary()
const { data: collections } = useCollectionsDictionaryWithoutPrivacy()

return getBookState({
book,
Expand Down Expand Up @@ -141,7 +141,7 @@ export const getEnrichedBookState = ({
protectedTagIds: ReturnType<typeof useProtectedTagIds>["data"]
tags: ReturnType<typeof useTagsByIds>["data"]
normalizedLinks: ReturnType<typeof useLinks>["data"]
normalizedCollections: ReturnType<typeof useCollectionsDictionary>["data"]
normalizedCollections: ReturnType<typeof useCollectionsDictionaryWithoutPrivacy>["data"]
normalizedBooks: ReturnType<typeof useBooksDic>["data"]
}) => {
const book = getBookState({
Expand Down Expand Up @@ -200,7 +200,7 @@ export const useEnrichedBookState = (param: {
tags: ReturnType<typeof useTagsByIds>["data"]
}) => {
const { data: normalizedLinks } = useLinks()
const { data: normalizedCollections } = useCollectionsDictionary()
const { data: normalizedCollections } = useCollectionsDictionaryWithoutPrivacy()
const { data: normalizedBooks } = useBooksDic()

return getEnrichedBookState({
Expand Down Expand Up @@ -343,7 +343,7 @@ export const useBookCollectionsState = ({
tags: ReturnType<typeof useTagsByIds>["data"]
}) => {
const book = useBookState({ bookId, tags })
const { data: normalizedCollections } = useCollectionsDictionary()
const { data: normalizedCollections } = useCollectionsDictionaryWithoutPrivacy()
const bookIds = useVisibleBookIds()

return book?.collections?.map((id) =>
Expand Down
Original file line number Diff line number Diff line change
@@ -1,15 +1,15 @@
import { FC, memo } from "react"
import { ListItem, ListItemText, useTheme } from "@mui/material"
import { useCSS } from "../../common/utils"
import { useCollectionsDictionary } from "../states"
import { useCollectionsDictionaryWithoutPrivacy } from "../states"
import { Checkbox } from "../../common/Checkbox"

export const SelectableCollectionListItem: FC<{
id: string
onItemClick?: (tag: string) => void
selected: boolean
}> = memo(({ id, onItemClick, selected }) => {
const { data: collections = {} } = useCollectionsDictionary()
const { data: collections = {} } = useCollectionsDictionaryWithoutPrivacy()
const data = collections[id]
const styles = useStyle()

Expand Down
26 changes: 10 additions & 16 deletions packages/web/src/collections/states.ts
Original file line number Diff line number Diff line change
Expand Up @@ -15,10 +15,7 @@ export const getCollectionsByIds = async (database: Database) => {
return keyBy(result, "_id")
}

/**
* @important unsafe to display
*/
export const useCollections = () => {
export const useCollectionsWithoutPrivacy = () => {
return useForeverQuery({
queryKey: ["rxdb", "get", "collections"],
queryFn: () => {
Expand All @@ -30,8 +27,8 @@ export const useCollections = () => {
})
}

export const useCollectionsDictionary = () => {
const result = useCollections()
export const useCollectionsDictionaryWithoutPrivacy = () => {
const result = useCollectionsWithoutPrivacy()

return {
...result,
Expand Down Expand Up @@ -70,11 +67,8 @@ export const useCollection = ({ id }: { id?: string }) => {
})
}

/**
* @important safe to display
*/
export const useVisibleCollections = () => {
const { data: collections } = useCollections()
export const useCollectionsWithPrivacy = () => {
const { data: collections } = useCollectionsWithoutPrivacy()
const visibleBookIds = useVisibleBookIds()
const { showCollectionWithProtectedContent } = useLocalSettings()

Expand All @@ -100,13 +94,13 @@ export const useVisibleCollections = () => {
* @deprecated
*/
export const useCollectionsAsArrayState = () => {
const { data: collectionsDic = {} } = useCollectionsDictionary()
const { data: collectionsDic = {} } = useCollectionsDictionaryWithoutPrivacy()
const visibleBookIds = useVisibleBookIds()
const localSettingsState = useLocalSettings()

type Collection = NonNullable<ReturnType<typeof useCollectionState>>

const { data: visibleCollections = [] } = useVisibleCollections()
const { data: visibleCollections = [] } = useCollectionsWithPrivacy()

return visibleCollections.map((collection) => {
const value = getCollectionState({
Expand All @@ -121,7 +115,7 @@ export const useCollectionsAsArrayState = () => {
}

export const useVisibleCollectionIds = () => {
const { data: collections, ...rest } = useVisibleCollections()
const { data: collections, ...rest } = useCollectionsWithPrivacy()

return {
...rest,
Expand All @@ -140,7 +134,7 @@ export const getCollectionState = ({
}: {
id: string
localSettingsState: ReturnType<typeof useLocalSettings>
normalizedCollections: ReturnType<typeof useCollectionsDictionary>["data"]
normalizedCollections: ReturnType<typeof useCollectionsDictionaryWithoutPrivacy>["data"]
bookIds: ReturnType<typeof useVisibleBookIds>
}) => {
const collection = normalizedCollections[id]
Expand All @@ -167,7 +161,7 @@ export const useCollectionState = ({
id: string
localSettingsState: ReturnType<typeof useLocalSettings>
}) => {
const { data: normalizedCollections } = useCollectionsDictionary()
const { data: normalizedCollections } = useCollectionsDictionaryWithoutPrivacy()
const bookIds = useVisibleBookIds()

return getCollectionState({
Expand Down
4 changes: 2 additions & 2 deletions packages/web/src/library/useLibraryCollections.ts
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
import { useVisibleCollections } from "../collections/states"
import { useCollectionsWithPrivacy } from "../collections/states"
import { useBooks } from "../books/states"
import { useMemo } from "react"

export const useLibraryCollections = () => {
const { data: visibleCollections } = useVisibleCollections()
const { data: visibleCollections } = useCollectionsWithPrivacy()
const { data: books } = useBooks()

const collectionIds = useMemo(
Expand Down

0 comments on commit a3b5248

Please sign in to comment.