openxiangda 1.0.154 → 1.0.155

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.
@@ -127,6 +127,7 @@ import { PermissionBoundary, useAppMenus, useRuntimeBootstrap } from "openxiangd
127
127
  附件预览约定:
128
128
 
129
129
  - 表单上下文使用 `AttachmentField` / `ImageField`;不要为只读业务数据伪造 `FormProvider`。普通自定义页面从 `openxiangda/runtime/react` 导入 `AttachmentPreviewList` / `ImagePreviewGrid`;自定义卡片、表格和详情操作使用 `useFilePreview({ items })`,并渲染返回的 `host`。
130
+ - 自定义编辑页确需在 `FormProvider` 内使用平台字段时,从 `openxiangda/runtime/react` 调用 `usePageFormRuntimeApi()` 并把返回值设置为 `config.api`。非 Hook 场景使用 `createPageFormRuntimeApi(sdk)`。不要手写 `api.request: config => sdk.request(...)`;它会丢失 `responseType: "blob"`,导致 DOCX、XLSX、图片和视频预览拿不到二进制 Blob。
130
131
  - 上述独立组件和 hook 必须位于 `OpenXiangdaProvider` + `OpenXiangdaPageProvider` 内。它们自动使用当前 PageSdk `appType`,复用平台 capability、ticket metadata 和受控二进制下载。
131
132
  - 只有需要复制、分享或新窗口打开时,才通过 PageSdk(`usePageSdk()` 返回的 `sdk`)调用 `sdk.createFileAccessTicket(bucketName, objectName, fileName, "preview", { appType })` 获取 `previewPageUrl` 后打开。
132
133
  - `previewPageUrl` 是给用户打开的页面入口;`previewUrl` / `/service/file/preview-by-ticket/:ticket` 是文件内容流,只供预览页内部 iframe、PDF、图片或视频组件加载。