diff --git a/src/driver/core/SideBar.ts b/src/driver/core/SideBar.ts index 37f3ae0..b9bc1dc 100644 --- a/src/driver/core/SideBar.ts +++ b/src/driver/core/SideBar.ts @@ -70,7 +70,7 @@ const init: MethodCreator = dispatch => async () => { compressSingletonFolder, copyFileButton, copySnippetButton, - } = await configHelper.get() + } = await configHelper.getAll() DOMHelper.decorateGitHubPageContent({ copyFileButton, copySnippetButton }) dispatch.set({ accessToken, diff --git a/src/utils/configHelper.ts b/src/utils/configHelper.ts index 92a902b..3cbf1a5 100644 --- a/src/utils/configHelper.ts +++ b/src/utils/configHelper.ts @@ -19,12 +19,12 @@ export enum config { const configKeys = Object.values(config) -function get(): any { +function getAll(): any { return storageHelper.get(configKeys) || {} } function getOne(key: keyof Config) { - return get()[key] + return getAll()[key] } function set(partialConfig: Partial) { @@ -38,7 +38,7 @@ function setOne(key: config, value: any) { } export default { - get, + getAll, getOne, set, setOne, diff --git a/src/utils/general.ts b/src/utils/general.ts index 2b03cea..34dee8b 100644 --- a/src/utils/general.ts +++ b/src/utils/general.ts @@ -2,10 +2,12 @@ export function pick(source: T, keys: string[]): Partial { if (keys && typeof keys === 'object') { return (Array.isArray(keys) ? keys : Object.keys(keys)).reduce( (copy, key) => { - copy[key as keyof T] = source[key as keyof T] + if (key in source) { + copy[key as keyof T] = source[key as keyof T] + } return copy }, - {} as Partial + {} as Partial, ) } return {} as Partial