@jc-times/business-ui 0.3.0 → 0.3.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (57) hide show
  1. package/CHANGELOG.md +10 -0
  2. package/THIRD_PARTY_NOTICES.md +5 -0
  3. package/assets/pdf-fonts/NotoSans-Bold.ttf +0 -0
  4. package/assets/pdf-fonts/NotoSans-BoldItalic.ttf +0 -0
  5. package/assets/pdf-fonts/NotoSans-Italic.ttf +0 -0
  6. package/assets/pdf-fonts/NotoSans-Regular.ttf +0 -0
  7. package/assets/pdf-fonts/NotoSansHans-Regular.otf +0 -0
  8. package/assets/pdf-fonts/OFL-CJK.txt +92 -0
  9. package/assets/pdf-fonts/OFL-Latin.txt +94 -0
  10. package/assets/pdf-fonts/README.md +11 -0
  11. package/dist/Alert.js +5 -1
  12. package/dist/Button.js +1 -1
  13. package/dist/Cascader.js +19 -19
  14. package/dist/Combobox.js +38 -38
  15. package/dist/DataTableIcons.js +25 -25
  16. package/dist/DateInput.js +67 -67
  17. package/dist/DropdownMenu.js +35 -35
  18. package/dist/EmptyState.js +8 -8
  19. package/dist/ExplainableButton.js +11 -11
  20. package/dist/FloatingControls.js +31 -31
  21. package/dist/ModalShell.js +32 -32
  22. package/dist/MultiSelect.js +37 -37
  23. package/dist/Pagination.js +27 -27
  24. package/dist/RecoverableAsyncState.js +8 -8
  25. package/dist/Select.js +17 -17
  26. package/dist/SortableList.js +18 -18
  27. package/dist/Toast.js +30 -30
  28. package/dist/TreeSelect.js +107 -107
  29. package/dist/data-table.js +71 -71
  30. package/dist/document-viewer/PdfToolbar.js +12 -12
  31. package/dist/document-viewer/PdfWorkspace.js +15 -15
  32. package/dist/document-viewer-v2/DocumentViewerV2.js +49 -48
  33. package/dist/document-viewer-v2/HeadlessPdfViewer.js +128 -124
  34. package/dist/document-viewer-v2/pdf-font-fallback.js +35 -0
  35. package/dist/types/document-viewer-v2/pdf-font-fallback.d.ts +2 -0
  36. package/dist/vendor/embedpdf-zoom-react.js +3 -186
  37. package/dist/vendor/embedpdf-zoom-react10.js +6 -0
  38. package/dist/vendor/embedpdf-zoom-react11.js +30 -0
  39. package/dist/vendor/embedpdf-zoom-react12.js +16 -0
  40. package/dist/vendor/embedpdf-zoom-react13.js +15 -0
  41. package/dist/vendor/embedpdf-zoom-react14.js +33 -0
  42. package/dist/vendor/embedpdf-zoom-react15.js +20 -0
  43. package/dist/vendor/embedpdf-zoom-react16.js +26 -0
  44. package/dist/vendor/embedpdf-zoom-react17.js +25 -0
  45. package/dist/vendor/embedpdf-zoom-react18.js +17 -0
  46. package/dist/vendor/embedpdf-zoom-react19.js +187 -0
  47. package/dist/vendor/embedpdf-zoom-react2.js +13 -0
  48. package/dist/vendor/embedpdf-zoom-react3.js +14 -0
  49. package/dist/vendor/embedpdf-zoom-react4.js +8 -0
  50. package/dist/vendor/embedpdf-zoom-react5.js +4 -0
  51. package/dist/vendor/embedpdf-zoom-react6.js +14 -0
  52. package/dist/vendor/embedpdf-zoom-react7.js +40 -0
  53. package/dist/vendor/embedpdf-zoom-react8.js +17 -0
  54. package/dist/vendor/embedpdf-zoom-react9.js +7 -0
  55. package/docs/agent-guide.md +2 -0
  56. package/docs/document-viewer-v2.md +2 -2
  57. package/package.json +7 -3
@@ -0,0 +1,17 @@
1
+ import e from "./embedpdf-zoom-react7.js";
2
+ //#region node_modules/.pnpm/lucide-react@1.45.0_react@19.3.0/node_modules/lucide-react/dist/esm/shared/src/build/buildLucideIconForReact.mjs
3
+ function t(t, n = {}) {
4
+ return e(t, {
5
+ ...n,
6
+ attributeNames: {
7
+ ...n.attributeNames,
8
+ class: "className",
9
+ "stroke-width": "strokeWidth",
10
+ "stroke-linecap": "strokeLinecap",
11
+ "stroke-linejoin": "strokeLinejoin",
12
+ "vector-effect": "vectorEffect"
13
+ }
14
+ });
15
+ }
16
+ //#endregion
17
+ export { t as default };
@@ -0,0 +1,7 @@
1
+ //#region node_modules/.pnpm/lucide-react@1.45.0_react@19.3.0/node_modules/lucide-react/dist/esm/shared/src/utils/hasA11yProp.mjs
2
+ var e = (e) => {
3
+ for (let t in e) if (t.startsWith("aria-") || t === "role" || t === "title") return !0;
4
+ return !1;
5
+ };
6
+ //#endregion
7
+ export { e as hasA11yProp };
@@ -1,5 +1,7 @@
1
1
  # Agent 公共组件使用指南
2
2
 
3
+ PDFium 自 0.3.2 默认按需使用同源中文/拉丁备用字体;构建器需支持包内 `?url` 静态资源导入(Vite)。不依赖外部字体 CDN;不要为禁外网而关闭整个字体回退。显式 `fontFallback: null` 仍可覆盖默认值。
4
+
3
5
  级联选择用于右侧窄栏时使用 0.2.48 或以上版本:浮层按可见视口避让,不需要消费方重写定位样式。
4
6
 
5
7
  本指南面向在业务应用中使用 `@jc-times/business-ui` 的 agent,也适用于维护本库的 agent。先按场景选型,再按需阅读 API 和专题文档,不需要通读历史审计记录。
@@ -94,7 +94,7 @@ export function ContractPreview({ fileVersion, pdfUrl, token }: Props) {
94
94
  成品 UI 默认配置:
95
95
 
96
96
  - 使用 Web Worker,单文档会话,隐藏多文档标签栏。
97
- - 默认语言为简体中文,UI 字体使用系统字体,禁用外部字体回退请求。
97
+ - 默认语言为简体中文,UI 字体使用系统字体。PDF 正文缺失字体时按需加载随包发布的 Noto 中文/拉丁备用字体,由消费方构建为同源资源,不请求外部字体 CDN。
98
98
  - 默认关闭批注、插入、表单编辑和涂黑分类。
99
99
  - 打印、导出及 PDF 自身权限仍由消费项目决定,隐藏按钮不能代替服务端授权。
100
100
  - 消费方配置与公共默认主题进行合并;显式传入的配置优先。
@@ -158,7 +158,7 @@ export function ContractPreview({ fileVersion, pdfUrl, token }: Props) {
158
158
  | `searchMode` | 默认 `expanded`;`collapsible` 将搜索面板改为公共搜索开关,文档切换或收起时清理旧搜索。`showToolbar=false` 时仍显示紧凑的公共搜索入口;配合移动连续阅读模式时仅显示搜索图标 |
159
159
  | `renderPageOverlay(context)` | 追加 React 内容;context 包含 `documentId`、从 1 开始的 `page`、从 0 开始的 `pageIndex`、原始 `width/height`、`zoom`、角度制 `rotation` |
160
160
  | `renderPage({ page, zoom, rotation })` | 与 V1 一样替换整个正文页。只添加印章或标记时应使用 `renderPageOverlay`,避免替换 PDF 位图 |
161
- | `engineOptions` | `usePdfiumEngine` 的选项,例如 `wasmUrl`;默认 Worker 开启、外部字体回退关闭。改变初始化选项时更新 `source.id` |
161
+ | `engineOptions` | `usePdfiumEngine` 的选项,例如 `wasmUrl`;默认 Worker 开启、同源字体回退开启。可显式传 `fontFallback: null` 关闭,或传自定义配置。改变初始化选项时更新 `source.id` |
162
162
  | `onReady(registry)` | 插件初始化回调;不保证文档已加载,不传成品 UI 的 `config/onInit` |
163
163
 
164
164
  叠层坐标以**未缩放、未旋转页面的左上角**为原点;`width/height` 是页面尺寸,不是视口 CSS 尺寸。组件统一应用缩放和 PDF 内置旋转加用户旋转,业务不要再次乘 `zoom` 或旋转整个叠层。业务若使用 PDF 底部原点坐标,应先转换成左上原点。叠层容器不拦截页面事件;可交互元素自行设置 `pointerEvents: 'auto'` 并提供键盘可访问控件。
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jc-times/business-ui",
3
- "version": "0.3.0",
3
+ "version": "0.3.2",
4
4
  "description": "Shared accessible business UI components for JC Times applications",
5
5
  "repository": {
6
6
  "type": "git",
@@ -36,7 +36,8 @@
36
36
  "docs/dependencies.md",
37
37
  "patches",
38
38
  "licenses/embedpdf-MIT.txt",
39
- "docs/sortable-list.md"
39
+ "docs/sortable-list.md",
40
+ "assets/pdf-fonts"
40
41
  ],
41
42
  "main": "./dist/business-ui.js",
42
43
  "module": "./dist/business-ui.js",
@@ -78,7 +79,8 @@
78
79
  "./pdfium-viewer": {
79
80
  "types": "./dist/types/PdfiumViewer.d.ts",
80
81
  "import": "./dist/pdfium-viewer.js"
81
- }
82
+ },
83
+ "./pdf-fonts/*": "./assets/pdf-fonts/*"
82
84
  },
83
85
  "bin": {
84
86
  "business-ui-gate": "./bin/business-ui-gate.mjs"
@@ -93,6 +95,8 @@
93
95
  "dependencies": {
94
96
  "@embedpdf/core": "2.15.0",
95
97
  "@embedpdf/engines": "2.15.0",
98
+ "@embedpdf/fonts-latin": "1.0.0",
99
+ "@embedpdf/fonts-sc": "1.0.0",
96
100
  "@embedpdf/plugin-document-manager": "2.15.0",
97
101
  "@embedpdf/plugin-interaction-manager": "2.15.0",
98
102
  "@embedpdf/plugin-render": "2.15.0",