@eka-care/医疗记录-ui
Eka Care医疗记录功能的框架不可知反应SDK。 将其丢入任何 React app (Next.js, Vite, Electron) ,以获得完整的记录列表,过滤器,上传流和文档预览.
安装
npm install @eka-care/medical-records-ui
同伴依赖关系
确保安装在您的主机应用程序中 :
npm install react react-dom zustand lucide-react
设置
1. 导入样式
在您的应用程序的切入点( 如 . _app.tsx, (中文(简体) ), main.tsx:
import '@eka-care/medical-records-ui/styles';
2. 与 SdkProvider
import { SdkProvider } from '@eka-care/medical-records-ui';
<SdkProvider
config={{ environment: 'prod' }}
bid="YOUR_BID"
patientId="YOUR_PATIENT_ID"
>
{/* your app or the RecordsView */}
</SdkProvider>
若为 bid 或者说 patientId 尚未提供(例如没有选定病人), SdkProvider 自动使一个占位符——不需要额外处理.
3. 提供记录视图
import { SdkProvider, RecordsView } from '@eka-care/medical-records-ui';
export function MedicalRecordsPanel({ bid, patientId }) {
return (
<SdkProvider
config={{ environment: 'prod' }}
bid={bid}
patientId={patientId}
>
<RecordsView />
</SdkProvider>
);
}
SdkProvider 道具
| Prop | 类型 | 需求 | 说明 |
|---|---|---|---|
config | SdkConfig | 对 | SDK配置(见下文) |
bid | string | 没有 | 企业/诊所身份证。 缺席时显示占位符. |
patientId | string | 没有 | 患者身份证. 缺席时显示占位符. |
documentTypes | DocumentTypeConfig[] | 没有 | 文档类型标签来自您的登入配置 。 倒回内置标签. |
SdkConfig
| 外地 | 类型 | 说明 |
|---|---|---|
environment | 'prod' | 'staging' | API 环境 |
baseUrl | string | 覆盖 API 基础 URL( 用于代理) |
accessToken | string | 认证标志。 如果使用基于 cookie 的认证,则不需要 . |
onUnauthorized | () => void | 调用于 401 — 用于刷新符号或重定向以登录 |
defaultHeaders | Record<string, string> | 每个请求都添加了额外的信头 |
RecordsView 道具
| Prop | 类型 | 说明 |
|---|---|---|
allowUpload | boolean | 显示/ 隐藏上传按钮 。 默认 : true |
attachedIds | string[] | 已经附于当前会话背景的记录ID |
maxAttachable | number | 可同时附加最大记录 |
onAttachToContext | (records) => void | 当用户向会话上下文添加记录时调用 |
onRemoveAttachment | (documentId) => void | 当用户从上下文中删除记录时调用 |
onCopyToNote | (text, anchor?) => void | 当用户复制智能报告到注释时调用 |
onToast | (message, type?) => void | 进入主机应用程序的土司/通知系统 |
认证
SDK在和Eka Care后端相同的域上运行时会自动使用基于cookie的auth. 对于基于符号的认证密码 accessToken 配置和提供 onUnauthorized 用于处理符号刷新 :
<SdkProvider
config={{
environment: 'prod',
accessToken: yourToken,
onUnauthorized: refreshToken,
}}
bid={bid}
patientId={patientId}
>
PDF 支持
不需要设置。 PDF预览在盒外工作——SDK自动从CDN装入pdfjs工人.
下一个.js
没有多余的网络包配置. react-pdf 财务报告和审定财务报表 pdfjs-dist 是同位素依赖性 — 在您的应用程序中安装 :
npm install react-pdf pdfjs-dist
发展
# Start the dev playground at https://test.1.eka.care:4443
npm run dev
# Build the SDK
npm run build
# Run tests
npm test
设计游戏场
游乐场开着 https://test.1.eka.care:4443 所以Eka Care后端的Auth cookie可以使用.
-
添加为
/etc/hosts数字 :127.0.0.1 test.1.eka.care -
生成本地证书 :
cd certificates && mkcert test.1.eka.care -
登录 Eka 护理应用程序
test.1.eka.care因此,auth cookie是设置. -
运行
npm run dev打开https://test.1.eka.care:4443。 。 。 .