diff --git a/client/shared/index.tsx b/client/shared/index.tsx index 8a913737..5a840881 100644 --- a/client/shared/index.tsx +++ b/client/shared/index.tsx @@ -71,9 +71,7 @@ export { useUpdateRef } from './hooks/useUpdateRef'; export { useWhyDidYouUpdate } from './hooks/useWhyDidYouUpdate'; // manager -export { buildRegFn } from './manager/buildRegFn'; -export { buildRegList } from './manager/buildRegList'; -export { buildRegMap } from './manager/buildRegMap'; +export { buildRegFn, buildRegList, buildRegMap } from './manager/buildReg'; export { getServiceUrl, setServiceUrl } from './manager/service'; export { setTokenGetter, @@ -219,6 +217,7 @@ export { isDevelopment, version, } from './utils/environment'; +export type { PermissionItemType } from './utils/role-helper'; export { isValidStr } from './utils/string-helper'; export { isValidJson } from './utils/json-helper'; export { MessageHelper } from './utils/message-helper'; diff --git a/client/shared/manager/buildRegFn.ts b/client/shared/manager/buildReg.ts similarity index 80% rename from client/shared/manager/buildRegFn.ts rename to client/shared/manager/buildReg.ts index a24ab734..01eaaba6 100644 --- a/client/shared/manager/buildRegFn.ts +++ b/client/shared/manager/buildReg.ts @@ -132,3 +132,38 @@ export function buildCachedRegFnAsync any>( return [cachedGet, cachedSet, refreshCache]; } + +/** + * 构建一组注册列表的方式 + * 用于从其他地方统一获取数据 + */ +export function buildRegList(): [T[], (item: T) => void] { + const list: T[] = []; + + const reg = (item: T) => { + list.push(item); + }; + + return [list, reg]; +} + +/** + * 构建一组注册Mapping的方式 + * 用于从其他地方统一获取数据 + */ +export function buildRegMap(): [ + Record, + (name: string, item: T) => void +] { + const mapping: Record = {}; + + const reg = (name: string, item: T) => { + if (mapping[name]) { + console.warn('[buildRegMap] 重复注册:', name); + } + + mapping[name] = item; + }; + + return [mapping, reg]; +} diff --git a/client/shared/manager/buildRegList.ts b/client/shared/manager/buildRegList.ts deleted file mode 100644 index 54c55cf8..00000000 --- a/client/shared/manager/buildRegList.ts +++ /dev/null @@ -1,13 +0,0 @@ -/** - * 构建一组注册列表的方式 - * 用于从其他地方统一获取数据 - */ -export function buildRegList(): [T[], (item: T) => void] { - const list: T[] = []; - - const reg = (item: T) => { - list.push(item); - }; - - return [list, reg]; -} diff --git a/client/shared/manager/buildRegMap.ts b/client/shared/manager/buildRegMap.ts deleted file mode 100644 index a5321942..00000000 --- a/client/shared/manager/buildRegMap.ts +++ /dev/null @@ -1,20 +0,0 @@ -/** - * 构建一组注册Mapping的方式 - * 用于从其他地方统一获取数据 - */ -export function buildRegMap(): [ - Record, - (name: string, item: T) => void -] { - const mapping: Record = {}; - - const reg = (name: string, item: T) => { - if (mapping[name]) { - console.warn('[buildRegMap] 重复注册:', name); - } - - mapping[name] = item; - }; - - return [mapping, reg]; -} diff --git a/client/shared/manager/request.ts b/client/shared/manager/request.ts index 9c10cda9..bcd65a21 100644 --- a/client/shared/manager/request.ts +++ b/client/shared/manager/request.ts @@ -1,4 +1,4 @@ -import { buildRegFn, buildCachedRegFnAsync } from './buildRegFn'; +import { buildRegFn, buildCachedRegFnAsync } from './buildReg'; export const [getErrorHook, setErrorHook] = buildRegFn<(err: any) => boolean>( 'requestErrorHook', diff --git a/client/shared/manager/service.ts b/client/shared/manager/service.ts index 952490ed..ea0dcb67 100644 --- a/client/shared/manager/service.ts +++ b/client/shared/manager/service.ts @@ -1,4 +1,4 @@ -import { buildRegFnWithEvent } from './buildRegFn'; +import { buildRegFnWithEvent } from './buildReg'; /** * 获取服务器地址相关逻辑 diff --git a/client/shared/manager/socket.ts b/client/shared/manager/socket.ts index 150796e8..39f54dea 100644 --- a/client/shared/manager/socket.ts +++ b/client/shared/manager/socket.ts @@ -1,4 +1,4 @@ -import { buildRegList } from './buildRegList'; +import { buildRegList } from './buildReg'; interface PluginSocketEventListener { eventName: string; diff --git a/client/shared/manager/storage.ts b/client/shared/manager/storage.ts index 82b3b0d8..51314f1c 100644 --- a/client/shared/manager/storage.ts +++ b/client/shared/manager/storage.ts @@ -1,4 +1,4 @@ -import { buildRegFn } from './buildRegFn'; +import { buildRegFn } from './buildReg'; import { useCallback, useLayoutEffect, useState } from 'react'; export interface StorageObject { diff --git a/client/shared/manager/ui.ts b/client/shared/manager/ui.ts index a4c91193..9675d993 100644 --- a/client/shared/manager/ui.ts +++ b/client/shared/manager/ui.ts @@ -1,5 +1,5 @@ import { t } from '../i18n'; -import { buildRegFn } from './buildRegFn'; +import { buildRegFn } from './buildReg'; /** * 通用UI api设置