Added SSR
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
import {createContext, FC, useCallback, useContext, useMemo} from "react";
|
||||
import {createContext, FC, useCallback, useContext, useMemo, useState} from "react";
|
||||
import {Group} from "../../src/types";
|
||||
import {useLocalStorage} from "../../src/hooks/useLocalStorage";
|
||||
import {ReactNodeLike} from "prop-types";
|
||||
@@ -7,6 +7,12 @@ import {Dict} from "../../src/types";
|
||||
|
||||
interface Props {
|
||||
children: ReactNodeLike
|
||||
id: string
|
||||
initial: {
|
||||
groups: Dict<Group>
|
||||
ignored: string[]
|
||||
base: string[]
|
||||
}
|
||||
}
|
||||
|
||||
interface GroupContextType {
|
||||
@@ -62,10 +68,10 @@ interface StoredFile {
|
||||
excludedSuggestions: string[]
|
||||
}
|
||||
|
||||
export const GroupProvider: FC<Props> = ({children}) => {
|
||||
const [excludedSuggestions, setExcludedSuggestions] = useLocalStorage<string[]>('excludedSuggestions', [])
|
||||
const [basicValues, setBasicValues] = useLocalStorage<string[]>('basicValues', [])
|
||||
const [groups, setGroups] = useLocalStorage<Dict<Group>>('serviceGroups', {})
|
||||
export const GroupProvider: FC<Props> = ({children, initial}) => {
|
||||
const [excludedSuggestions, setExcludedSuggestions] = useState<string[]>(initial.ignored)
|
||||
const [basicValues, setBasicValues] = useState<string[]>(initial.base)
|
||||
const [groups, setGroups] = useState<Dict<Group>>(initial.groups)
|
||||
|
||||
const doNotSuggest = useMemo<Set<string>>(() => {
|
||||
return new Set([...Object.values(groups).flatMap(group => [...group.exports, ...group.malls]), ...excludedSuggestions, ...basicValues])
|
||||
|
||||
Reference in New Issue
Block a user