docs: ai 协作文档体系重构与多 ai 仲裁结果落地
1.AI 协作文档体系重构(objections/worklines/contracts+matrix.md) 2.coord 仲裁文档(final-decisions/cross-review/final-rulings/orchestration) 3.各服务 01/02 文档补全 4.共享包初始化(shared-ts/shared-go/hooks/ui-components/ui-tokens) 5.Proto 契约补全 6.004 架构影响地图更新 7.端口分配表 8.设计规格文档
This commit is contained in:
62
packages/hooks/src/index.ts
Normal file
62
packages/hooks/src/index.ts
Normal file
@@ -0,0 +1,62 @@
|
||||
/**
|
||||
* @edu/hooks - 共享 Hooks 库
|
||||
*
|
||||
* 维护者:ai13(teacher-portal)
|
||||
* 关联文档:teacher-portal 02-architecture-design.md §8
|
||||
*
|
||||
* 包含:
|
||||
* - useAuth:会话状态(user/token/login/logout/refresh)
|
||||
* - usePermission:权限查询(hasPermission/hasAny/hasAll + dataScope)
|
||||
* - useViewports:视口列表(按 scope 过滤)
|
||||
* - useApi:ApiClient 实例(注入 token + 401 处理 + trace_id)
|
||||
* - useA11yId:唯一 ARIA ID 生成
|
||||
* - useAriaLive:aria-live 区域管理
|
||||
* - useToast:全局 toast 通知
|
||||
* - useTraceId:当前会话 trace_id
|
||||
*
|
||||
* 设计原则:
|
||||
* - hooks 不直接调 API,保持纯客户端逻辑(API 调用由 apps/* 注入)
|
||||
* - 权限/视口数据通过 props 注入,避免 hooks 包耦合 iam
|
||||
* - token 存储使用 localStorage(F12 裁决,P2 阶段)
|
||||
*/
|
||||
|
||||
export { useAuth } from "./use-auth.js";
|
||||
export type { UseAuthReturn } from "./use-auth.js";
|
||||
|
||||
export { usePermission } from "./use-permission.js";
|
||||
export type {
|
||||
UsePermissionProps,
|
||||
UsePermissionReturn,
|
||||
} from "./use-permission.js";
|
||||
|
||||
export { useViewports } from "./use-viewports.js";
|
||||
export type { UseViewportsProps, UseViewportsReturn } from "./use-viewports.js";
|
||||
|
||||
export { useApi } from "./use-api.js";
|
||||
export type { UseApiProps, UseApiReturn } from "./use-api.js";
|
||||
|
||||
export {
|
||||
useA11yId,
|
||||
useA11yIds,
|
||||
mergeA11yProps,
|
||||
describeInput,
|
||||
} from "./use-a11y-id.js";
|
||||
|
||||
export { useAriaLive } from "./use-aria-live.js";
|
||||
export type { UseAriaLiveReturn, AriaLivePoliteness } from "./use-aria-live.js";
|
||||
|
||||
export { useToast } from "./use-toast.js";
|
||||
export type { UseToastReturn } from "./use-toast.js";
|
||||
|
||||
export { useTraceId } from "./use-trace-id.js";
|
||||
export type { UseTraceIdReturn } from "./use-trace-id.js";
|
||||
|
||||
// 共享类型
|
||||
export type {
|
||||
UserSession,
|
||||
DataScope,
|
||||
PermissionContext,
|
||||
Viewport,
|
||||
ToastMessage,
|
||||
AuthState,
|
||||
} from "./types.js";
|
||||
Reference in New Issue
Block a user