@rhc-office/sdk 6.6.259 → 6.6.266

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 (48) hide show
  1. package/README.md +44 -5
  2. package/dist/api/callbacks.d.ts +0 -1
  3. package/dist/api/callbacks.d.ts.map +1 -1
  4. package/dist/api/crypto-tool.d.ts +12 -1
  5. package/dist/api/crypto-tool.d.ts.map +1 -1
  6. package/dist/api/document-sdk.d.ts +0 -10
  7. package/dist/api/document-sdk.d.ts.map +1 -1
  8. package/dist/api/sign-tool.d.ts +43 -1
  9. package/dist/api/sign-tool.d.ts.map +1 -1
  10. package/dist/browser/document-viewer.js +2 -0
  11. package/dist/browser/document-viewer.js.map +1 -0
  12. package/dist/browser.d.ts +33 -0
  13. package/dist/browser.d.ts.map +1 -0
  14. package/dist/index.d.ts +0 -3
  15. package/dist/index.d.ts.map +1 -1
  16. package/dist/index.js +119 -148
  17. package/dist/index.js.map +1 -1
  18. package/dist/index.umd.cjs +1 -1
  19. package/dist/index.umd.cjs.map +1 -1
  20. package/dist/viewer/DocumentSDK.d.ts +0 -7
  21. package/dist/viewer/DocumentSDK.d.ts.map +1 -1
  22. package/dist/viewer/ReaderConfiguration.d.ts +1 -1
  23. package/dist/viewer/ReaderConfiguration.d.ts.map +1 -1
  24. package/dist/viewer/ReaderStateStore.d.ts +0 -1
  25. package/dist/viewer/ReaderStateStore.d.ts.map +1 -1
  26. package/dist/viewer/SdkCallbackRegistry.d.ts +1 -2
  27. package/dist/viewer/SdkCallbackRegistry.d.ts.map +1 -1
  28. package/package.json +12 -2
  29. package/src/api/callbacks.ts +4 -17
  30. package/src/api/crypto-tool.ts +13 -1
  31. package/src/api/document-sdk.ts +0 -13
  32. package/src/api/sign-tool.ts +62 -1
  33. package/src/browser.ts +85 -0
  34. package/src/index.ts +0 -3
  35. package/src/viewer/DocumentSDK.ts +2 -45
  36. package/src/viewer/ReaderBridgeClient.ts +1 -1
  37. package/src/viewer/ReaderConfiguration.ts +2 -2
  38. package/src/viewer/ReaderStateStore.ts +0 -2
  39. package/src/viewer/SdkCallbackRegistry.ts +0 -9
  40. package/dist/api/ekey-tool.d.ts +0 -8
  41. package/dist/api/ekey-tool.d.ts.map +0 -1
  42. package/dist/api/extension-tool.d.ts +0 -5
  43. package/dist/api/extension-tool.d.ts.map +0 -1
  44. package/dist/api/review-tool.d.ts +0 -71
  45. package/dist/api/review-tool.d.ts.map +0 -1
  46. package/src/api/ekey-tool.ts +0 -11
  47. package/src/api/extension-tool.ts +0 -5
  48. package/src/api/review-tool.ts +0 -105
package/README.md CHANGED
@@ -1,6 +1,6 @@
1
- # RHC Office SDK
1
+ # 软航版式文档服务(RHC Office SDK
2
2
 
3
- `@rhc-office/sdk` RHC Office 阅读器的 Web 集成 SDK。它负责在第三方应用中加载阅读器、挂载阅读器 Web Component,并把本地或网络文档打开、网络文件保存回传、多文档阅读、页面控制、UI 配置、批注、打印、保存导出、PDF 表单填充、数字签章和审阅协同等能力封装成统一的工具接口,便于业务系统把阅读器嵌入到自己的门户、业务审批、档案管理、合同管理或在线预览流程中。
3
+ `@rhc-office/sdk` 是软航版式文档服务的 Web 端阅读器集成 SDK。它负责在第三方应用中加载阅读器、挂载阅读器 Web Component,并把本地或网络文档打开、网络文件保存回传、多文档阅读、页面控制、UI 配置、批注、打印、保存导出、PDF 表单填充和数字签章等能力封装成统一的工具接口,便于业务系统把阅读器嵌入到自己的门户、业务审批、档案管理、合同管理或在线预览流程中。
4
4
 
5
5
  ## 功能特性
6
6
 
@@ -15,10 +15,9 @@
15
15
  - 批注能力:支持进入/退出批注视图、文本批注、手写批注、图章批注、模板签标记、批注导入导出、批注列表查询、画笔样式配置、撤销、重做、清空以及保存批注。
16
16
  - 打印与预览:提供阅读器侧打印和预览入口,可接入阅读器的高保真打印流程;OFD/PDF 场景可由阅读器生成适合系统打印的 PDF 输出,满足矢量化或版式保真打印需求。
17
17
  - PDF 表单填充:支持打开表单填充模式、设置字段值、控制字段只读状态、提交、清空,并导出表单键值数据。
18
- - 数字签章:支持签章参数配置、签章服务登录、USB Key/EKey 认证、外部印章服务、签章回调、签章列表读取、签章验签、签章信息展示和吊销检查等业务流程。
18
+ - 数字签章:支持签章参数配置、签章服务登录、USB Key 认证、外部印章服务、签章回调、签章列表读取、签章验签、签章信息展示和吊销检查等业务流程。
19
19
  - 模板签与骑缝签:支持创建常规印模、单侧骑缝印模、对称骑缝印模和校核印模,支持列举、删除印模,并可按模板印模执行签章。
20
- - 审阅协同:支持创建和打开审阅会话、管理审阅参与者和审阅文档、嵌入审阅视图、控制发言人,以及按参与者控制批注权限。
21
- - 扩展和安全能力:支持浏览器扩展连接状态监听、安全 Provider 配置、签章/验签 Provider 管理,以及 PDF417 条码生成等扩展场景。
20
+ - 安全和扩展能力:支持安全 Provider 配置、签章/验签 Provider 管理,以及 PDF417 条码生成等扩展场景。
22
21
  - 事件和状态:支持监听阅读器就绪、卸载、文档打开、保存、关闭、页码变化等事件,便于宿主应用同步业务状态。
23
22
  - 数字签名环境配置:支持在挂载阅读器前注入签章默认参数和签章服务配置,便于不同业务系统统一签章环境。
24
23
 
@@ -66,6 +65,46 @@ sdk.embedReader('reader-host', 'https://viewer.example.com/', {
66
65
 
67
66
  `appUrl` 通常指向阅读器部署地址。示例中的域名都是占位值,集成时请替换为你自己的阅读器部署地址。
68
67
 
68
+ ## Script 引入
69
+
70
+ 如果宿主页面不使用前端构建工具,可以直接引入预编译的浏览器版本:
71
+
72
+ ```html
73
+ <script src="https://unpkg.com/@rhc-office/sdk/dist/browser/document-viewer.js"></script>
74
+ <script>
75
+ const sdk = document.newDocumentSDK();
76
+
77
+ sdk.addReaderReadyCallback(function () {
78
+ sdk.getDocumentTool().openPDFDocument({
79
+ timestamp: Date.now(),
80
+ fileId: 'sample-pdf',
81
+ fileType: 'application/pdf',
82
+ fileName: 'sample.pdf',
83
+ fileUrl: 'https://example.com/sample.pdf',
84
+ });
85
+ });
86
+
87
+ sdk.embedReader('reader-host', 'https://viewer.example.com/', {
88
+ viewMode: 'View',
89
+ ribbonMenu: true,
90
+ ribbonTitle: true,
91
+ width: '100%',
92
+ height: '100%',
93
+ });
94
+ </script>
95
+ ```
96
+
97
+ 浏览器版本会把关键 SDK 入口直接暴露到 `document` 上:
98
+
99
+ - `document.newDocumentSDK(options?)`:创建新的 `DocumentSDK` 实例。
100
+ - `document.DocumentSDK`:访问 `DocumentSDK` 构造函数。
101
+ - `document.createNewDocumentSdk(options?)`:模块化 API 中同名工厂方法的浏览器全局入口。
102
+ - `document.WatermarkDisplay`、`document.DIGITAL_SIGN_DEFAULTS`:访问常用枚举和默认配置。
103
+ - `document.getDigitalSignEnvironment()`、`document.patchDigitalSignEnvironment()` 等:访问数字签名环境配置方法。
104
+ - `document.RHCOfficeSDK`:保留完整 namespace,便于统一枚举所有浏览器全局 SDK 入口。
105
+
106
+ 如果从 npm 包中自行托管该文件,预编译产物路径为 `node_modules/@rhc-office/sdk/dist/browser/document-viewer.js`。SDK 构建也会同步一份到本仓库文档站点的 `packages/docs/public/sdk/document-viewer.js`。
107
+
69
108
  ## 打开文档
70
109
 
71
110
  `DocumentTool` 支持 PDF、OFD、Office、图片和文本入口。常用字段如下:
@@ -21,5 +21,4 @@ export type DigitalSignatureRetrieveCallback = (digitalSignature: any[]) => void
21
21
  export type DigitalSignatureParseCallback = (digitalSignature: any[]) => void;
22
22
  export type DocumentServerAuthCallback = (credentials: string) => void;
23
23
  export type TextAnnotationModifiedCallback = (event: string, annotation: ITextAnnotationInfo) => void;
24
- export type ExtensionStateChangedCallback = (state: 'connected' | 'disconnected') => void;
25
24
  //# sourceMappingURL=callbacks.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"callbacks.d.ts","sourceRoot":"","sources":["../../src/api/callbacks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAEhF,MAAM,MAAM,mBAAmB,GAAG,MAAM,IAAI,CAAC;AAC7C,MAAM,MAAM,oBAAoB,GAAG,MAAM,IAAI,CAAC;AAE9C,MAAM,MAAM,sBAAsB,GAAG,CACnC,MAAM,EAAE,MAAM,EACd,KAAK,CAAC,EAAE,GAAG,EACX,OAAO,CAAC,EAAE,GAAG,KACV,IAAI,CAAC;AAEV,MAAM,MAAM,qBAAqB,GAAG,CAAC,QAAQ,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;AAE7D,MAAM,MAAM,wBAAwB,GAAG,CAAC,YAAY,EAAE,GAAG,KAAK,OAAO,CAAC;AAEtE,MAAM,WAAW,mBAAmB;IAClC,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,MAAM,sBAAsB,GAAG,CAAC,OAAO,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;AAE7D,MAAM,MAAM,kBAAkB,GAAG,CAC/B,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,KACd,IAAI,CAAC;AAEV,MAAM,MAAM,iBAAiB,GAAG,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;AAE5D,MAAM,MAAM,oBAAoB,GAAG,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;AAE/D,MAAM,MAAM,sBAAsB,GAAG,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;AAEhE,MAAM,MAAM,sBAAsB,GAAG,MAAM,IAAI,CAAC;AAEhD,MAAM,MAAM,uBAAuB,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,KAAK,IAAI,CAAC;AAE5E,MAAM,MAAM,mBAAmB,GAAG,CAAC,QAAQ,EAAE,GAAG,KAAK,IAAI,CAAC;AAE1D,MAAM,MAAM,iCAAiC,GAAG,CAC9C,gBAAgB,EAAE,sBAAsB,EAAE,KACvC,IAAI,CAAC;AAEV,MAAM,MAAM,gCAAgC,GAAG,CAC7C,gBAAgB,EAAE,GAAG,EAAE,KACpB,IAAI,CAAC;AAEV,MAAM,MAAM,6BAA6B,GAAG,CAC1C,gBAAgB,EAAE,GAAG,EAAE,KACpB,IAAI,CAAC;AAEV,MAAM,MAAM,0BAA0B,GAAG,CAAC,WAAW,EAAE,MAAM,KAAK,IAAI,CAAC;AAEvE,MAAM,MAAM,8BAA8B,GAAG,CAC3C,KAAK,EAAE,MAAM,EACb,UAAU,EAAE,mBAAmB,KAC5B,IAAI,CAAC;AAEV,MAAM,MAAM,6BAA6B,GAAG,CAAC,KAAK,EAAE,WAAW,GAAG,cAAc,KAAK,IAAI,CAAC"}
1
+ {"version":3,"file":"callbacks.d.ts","sourceRoot":"","sources":["../../src/api/callbacks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAEhF,MAAM,MAAM,mBAAmB,GAAG,MAAM,IAAI,CAAC;AAC7C,MAAM,MAAM,oBAAoB,GAAG,MAAM,IAAI,CAAC;AAE9C,MAAM,MAAM,sBAAsB,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,GAAG,EAAE,OAAO,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;AAE1F,MAAM,MAAM,qBAAqB,GAAG,CAAC,QAAQ,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;AAE7D,MAAM,MAAM,wBAAwB,GAAG,CAAC,YAAY,EAAE,GAAG,KAAK,OAAO,CAAC;AAEtE,MAAM,WAAW,mBAAmB;IAClC,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,MAAM,sBAAsB,GAAG,CAAC,OAAO,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;AAE7D,MAAM,MAAM,kBAAkB,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;AAEhF,MAAM,MAAM,iBAAiB,GAAG,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;AAE5D,MAAM,MAAM,oBAAoB,GAAG,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;AAE/D,MAAM,MAAM,sBAAsB,GAAG,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;AAEhE,MAAM,MAAM,sBAAsB,GAAG,MAAM,IAAI,CAAC;AAEhD,MAAM,MAAM,uBAAuB,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,KAAK,IAAI,CAAC;AAE5E,MAAM,MAAM,mBAAmB,GAAG,CAAC,QAAQ,EAAE,GAAG,KAAK,IAAI,CAAC;AAE1D,MAAM,MAAM,iCAAiC,GAAG,CAC9C,gBAAgB,EAAE,sBAAsB,EAAE,KACvC,IAAI,CAAC;AAEV,MAAM,MAAM,gCAAgC,GAAG,CAAC,gBAAgB,EAAE,GAAG,EAAE,KAAK,IAAI,CAAC;AAEjF,MAAM,MAAM,6BAA6B,GAAG,CAAC,gBAAgB,EAAE,GAAG,EAAE,KAAK,IAAI,CAAC;AAE9E,MAAM,MAAM,0BAA0B,GAAG,CAAC,WAAW,EAAE,MAAM,KAAK,IAAI,CAAC;AAEvE,MAAM,MAAM,8BAA8B,GAAG,CAC3C,KAAK,EAAE,MAAM,EACb,UAAU,EAAE,mBAAmB,KAC5B,IAAI,CAAC"}
@@ -1,5 +1,16 @@
1
+ /**
2
+ * 支持的算法提供者厂商。
3
+ *
4
+ * - `CE`: 默认基础实现
5
+ * - `SCE`: 基于服务器软件的算法实现
6
+ * - `HCE:*`: 服务器加密机,冒号后为加密机类型
7
+ * - `BeCE`: 浏览器插件
8
+ * - `KolPKI`: 格尔中间件 PKI 服务,USB 硬件 Key
9
+ * - `BJCAPKI`: 北京 CA 中间件 PKI 服务,USB 硬件 Key
10
+ */
11
+ export type SecurityProviderName = 'CE' | 'SCE' | `HCE:${string}` | 'BeCE' | 'KolPKI' | 'BJCAPKI';
1
12
  export type SecurityProviderInfo = {
2
- providerName: string;
13
+ providerName: SecurityProviderName;
3
14
  applyFor: 'DocSign' | 'DocSignVerification';
4
15
  };
5
16
  export interface CryptoTool {
@@ -1 +1 @@
1
- {"version":3,"file":"crypto-tool.d.ts","sourceRoot":"","sources":["../../src/api/crypto-tool.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,oBAAoB,GAAG;IACjC,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,SAAS,GAAG,qBAAqB,CAAC;CAC7C,CAAC;AAEF,MAAM,WAAW,UAAU;IACzB,sBAAsB,CAAC,SAAS,EAAE,oBAAoB,EAAE,GAAG,IAAI,CAAC;IAEhE,oBAAoB,IAAI,OAAO,CAAC,oBAAoB,EAAE,CAAC,CAAC;CACzD"}
1
+ {"version":3,"file":"crypto-tool.d.ts","sourceRoot":"","sources":["../../src/api/crypto-tool.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,MAAM,MAAM,oBAAoB,GAAG,IAAI,GAAG,KAAK,GAAG,OAAO,MAAM,EAAE,GAAG,MAAM,GAAG,QAAQ,GAAG,SAAS,CAAC;AAElG,MAAM,MAAM,oBAAoB,GAAG;IACjC,YAAY,EAAE,oBAAoB,CAAC;IACnC,QAAQ,EAAE,SAAS,GAAG,qBAAqB,CAAC;CAC7C,CAAC;AAEF,MAAM,WAAW,UAAU;IACzB,sBAAsB,CAAC,SAAS,EAAE,oBAAoB,EAAE,GAAG,IAAI,CAAC;IAEhE,oBAAoB,IAAI,OAAO,CAAC,oBAAoB,EAAE,CAAC,CAAC;CACzD"}
@@ -8,12 +8,9 @@ import { FindTool } from './find-tool';
8
8
  import { DigitalSignTool } from './sign-tool';
9
9
  import { SignServerTool } from './sign-server';
10
10
  import { NetworkingTool } from './networking-tool';
11
- import { EkeyTool } from './ekey-tool';
12
- import { ExtensionTool } from './extension-tool';
13
11
  import { SymbologyTool } from './symbology-tool';
14
12
  import { TemplateSignTool } from './template-sign';
15
13
  import { PdfFormFiller } from './pdf-formfiller';
16
- import { ReviewTool } from './review-tool';
17
14
  import { CryptoTool } from './crypto-tool';
18
15
  export interface IReaderEmbedOptions {
19
16
  debug?: boolean;
@@ -26,10 +23,6 @@ export interface IReaderEmbedOptions {
26
23
  theme?: string;
27
24
  binder?: string;
28
25
  origin?: string;
29
- /**
30
- * 阅读器部署的地址
31
- */
32
- officeServer: string;
33
26
  /**
34
27
  * View: 阅读模式,Annotation: 批注模式,DigitalSign: 签章模式
35
28
  */
@@ -96,13 +89,10 @@ export interface IDocumentSDK {
96
89
  getFindTool(): FindTool;
97
90
  getSignServerTool(): SignServerTool;
98
91
  getDigitalSignTool(): DigitalSignTool;
99
- getReviewTool(): ReviewTool;
100
- getEkeyTool(): EkeyTool;
101
92
  getSymbologyTool(): SymbologyTool;
102
93
  getAnnotationTool(): AnnotationTool;
103
94
  getTemplateSignTool(): TemplateSignTool;
104
95
  getPdfFormFiller(): PdfFormFiller;
105
- getExtensionTool(): ExtensionTool;
106
96
  getNetworkingTool(): NetworkingTool;
107
97
  getCryptoTool(): CryptoTool;
108
98
  createDigitalSignOptions(): IDigitalSignOptions;
@@ -1 +1 @@
1
- {"version":3,"file":"document-sdk.d.ts","sourceRoot":"","sources":["../../src/api/document-sdk.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"document-sdk.d.ts","sourceRoot":"","sources":["../../src/api/document-sdk.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,51 @@
1
1
  import { DigitalSignatureRetrieveCallback, DigitalSignCallback } from './callbacks';
2
2
  import { IDigitalSignOptions } from './common';
3
+ import type { SecurityProviderName } from './crypto-tool';
4
+ export type DigitalSignCryptoProviderUsage = 'DigitalSign' | 'SignatureVerification';
5
+ export type USBKeyType = 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16;
6
+ export type CryptoProviderConfiguration = Record<string, unknown>;
7
+ export type BrowserCryptoProviderConfiguration = CryptoProviderConfiguration & {
8
+ /**
9
+ * 浏览器插件签章时使用的 USB 硬件 Key 类型。
10
+ *
11
+ * 1: 海泰
12
+ * 2: 明华
13
+ * 3: 大明五洲
14
+ * 4: 飞天 EPAS 3000
15
+ * 5: 飞天,深圳 CA
16
+ * 6: 九思泰达,深圳 CA
17
+ * 7: 飞天 EPAS 2000
18
+ * 8: 华申 华大 Key
19
+ * 9: 东方中讯 ekey
20
+ * 10: 握奇 ekey
21
+ * 11: 贵州黔南 HTK
22
+ * 12: 飞天,格尔
23
+ * 13: 飞天,坚石诚信
24
+ * 14: 龙脉科技
25
+ * 15: 龙脉天威定制
26
+ * 16: 陕西 CA
27
+ */
28
+ usbKeyType?: USBKeyType;
29
+ };
30
+ export type KolPkiCryptoProviderConfiguration = CryptoProviderConfiguration & {
31
+ kmsAddress: string;
32
+ appName: string;
33
+ appID: string;
34
+ token: string;
35
+ };
36
+ export type HceCryptoProviderConfiguration = CryptoProviderConfiguration & {
37
+ kmsAddress?: string;
38
+ svsAddress?: string;
39
+ cbcKeyId?: string;
40
+ secretKey?: string;
41
+ accessKey?: string;
42
+ secretKeyVersion?: string;
43
+ };
44
+ export type DigitalSignCryptoProviderConfiguration<Provider extends SecurityProviderName = SecurityProviderName> = Provider extends 'BeCE' ? BrowserCryptoProviderConfiguration : Provider extends 'KolPKI' ? KolPkiCryptoProviderConfiguration : Provider extends `HCE:${string}` ? HceCryptoProviderConfiguration : CryptoProviderConfiguration;
3
45
  export interface DigitalSignTool {
4
46
  addDigitalSignatureRetrieveCallback(callback: DigitalSignatureRetrieveCallback): void;
5
47
  addDigitalSignatureParseCallback(callback: (digitalSignature: any[]) => void): void;
6
- setCryptoProvider(usage: 'DigitalSign' | 'SignatureVerification', provider: string, configuration?: any): void;
48
+ setCryptoProvider<Provider extends SecurityProviderName>(usage: DigitalSignCryptoProviderUsage, provider: Provider, configuration?: DigitalSignCryptoProviderConfiguration<Provider>): void;
7
49
  setSealSource(source: 'SignServer' | 'USBKey' | 'ExternalServer'): void;
8
50
  setDefaultStampPassword(stampPassword: string): void;
9
51
  setDefaultSealPassword(sealPassword: string): void;
@@ -1 +1 @@
1
- {"version":3,"file":"sign-tool.d.ts","sourceRoot":"","sources":["../../src/api/sign-tool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gCAAgC,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AACpF,OAAO,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAE/C,MAAM,WAAW,eAAe;IAC9B,mCAAmC,CAAC,QAAQ,EAAE,gCAAgC,GAAG,IAAI,CAAC;IAEtF,gCAAgC,CAAC,QAAQ,EAAE,CAAC,gBAAgB,EAAE,GAAG,EAAE,KAAK,IAAI,GAAG,IAAI,CAAC;IAEpF,iBAAiB,CAAC,KAAK,EAAE,aAAa,GAAG,uBAAuB,EAAE,QAAQ,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,GAAG,GAAG,IAAI,CAAC;IAE/G,aAAa,CAAC,MAAM,EAAE,YAAY,GAAG,QAAQ,GAAG,gBAAgB,GAAG,IAAI,CAAC;IAExE,uBAAuB,CAAC,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAErD,sBAAsB,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAEnD,0BAA0B,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAErD,wBAAwB,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAEnD,sBAAsB,CAAC,QAAQ,EAAE,mBAAmB,GAAG,IAAI,CAAC;IAE5D,uBAAuB,CAAC,OAAO,EAAE,IAAI,GAAG,OAAO,GAAG,IAAI,CAAC;IAEvD,qBAAqB,CAAC,OAAO,EAAE;QAC7B,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,MAAM,CAAC,EAAE,GAAG,EAAE,CAAC;QACf,WAAW,CAAC,EAAE,MAAM,CAAC;KACtB,GAAG,IAAI,CAAC;IAET,6BAA6B,CAAC,OAAO,EAAE,IAAI,GAAG,OAAO,GAAG,IAAI,CAAC;IAE7D,+BAA+B,CAAC,OAAO,EAAE,IAAI,GAAG,OAAO,GAAG,IAAI,CAAC;IAE/D,mBAAmB,CAAC,OAAO,EAAE,IAAI,GAAG,OAAO,EAAE,QAAQ,CAAC,EAAE,mBAAmB,GAAG,IAAI,CAAC;IAEnF,4CAA4C,CAAC,OAAO,EAAE,mBAAmB,GAAG,GAAG,GAAG,IAAI,CAAC;IAEvF,qBAAqB,CAAC,QAAQ,CAAC,EAAE,CAAC,gBAAgB,EAAE,GAAG,EAAE,KAAK,IAAI,GAAG,IAAI,CAAC;IAE1E,oBAAoB,IAAI,GAAG,EAAE,CAAC;IAE9B,yBAAyB,IAAI,MAAM,CAAC;IAEpC,8BAA8B,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAAC;IAEvD,gCAAgC,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAAC;CAC1D"}
1
+ {"version":3,"file":"sign-tool.d.ts","sourceRoot":"","sources":["../../src/api/sign-tool.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ var RHCOfficeSDK=function(g){"use strict";var M=(n=>(n.DEFAULT="default",n.COMPACT="compact",n.HIDE="none",n))(M||{});const V="RIGHT_CENTER",B="REGULAR_ESM",K="auto",I="__RHC_OFFICE_DIGITAL_SIGN_ENVIRONMENT__",H={defaults:{bjca:{pin:""},deviceType:"client",edgePosition:V,kol:{appId:"",appName:"",pin:"",serviceUrl:"",token:""},plugin:{pin:"",usbKeyType:14},rsaMode:K,signatureType:B},signServer:{authSource:"Password",defaultLogin:"",defaultPassword:"",defaultServer:"",kol:{appId:"",appName:"",serviceUrl:"",token:""},macAddress:"",token:"",usbKey:{checkCertificateBinding:!1,usbKeyType:14}}},G=n=>({bjca:{pin:n.bjca.pin},deviceType:n.deviceType,edgePosition:n.edgePosition,kol:{appId:n.kol.appId,appName:n.kol.appName,pin:n.kol.pin,serviceUrl:n.kol.serviceUrl,token:n.kol.token},plugin:{pin:n.plugin.pin,usbKeyType:n.plugin.usbKeyType},rsaMode:n.rsaMode,signatureType:n.signatureType}),x=n=>({authSource:n.authSource,defaultLogin:n.defaultLogin,defaultPassword:n.defaultPassword,defaultServer:n.defaultServer,kol:{appId:n.kol.appId,appName:n.kol.appName,serviceUrl:n.kol.serviceUrl,token:n.kol.token},macAddress:n.macAddress,token:n.token,usbKey:{checkCertificateBinding:n.usbKey.checkCertificateBinding,usbKeyType:n.usbKey.usbKeyType}}),v=n=>({defaults:G(n.defaults),signServer:x(n.signServer)}),q=n=>({defaults:n.defaults?{...n.defaults,bjca:n.defaults.bjca?{...n.defaults.bjca}:void 0,kol:n.defaults.kol?{...n.defaults.kol}:void 0,plugin:n.defaults.plugin?{...n.defaults.plugin}:void 0}:void 0,signServer:n.signServer?{...n.signServer,kol:n.signServer.kol?{...n.signServer.kol}:void 0,usbKey:n.signServer.usbKey?{...n.signServer.usbKey}:void 0}:void 0}),de=(n,t)=>{var e,i,r,a,s,o,d,h,u,l,m,c,f,p,k,b,T,E,A,D;return t?{bjca:{pin:(i=(e=t.bjca)==null?void 0:e.pin)!=null?i:n.bjca.pin},deviceType:(r=t.deviceType)!=null?r:n.deviceType,edgePosition:(a=t.edgePosition)!=null?a:n.edgePosition,kol:{appId:(o=(s=t.kol)==null?void 0:s.appId)!=null?o:n.kol.appId,appName:(h=(d=t.kol)==null?void 0:d.appName)!=null?h:n.kol.appName,pin:(l=(u=t.kol)==null?void 0:u.pin)!=null?l:n.kol.pin,serviceUrl:(c=(m=t.kol)==null?void 0:m.serviceUrl)!=null?c:n.kol.serviceUrl,token:(p=(f=t.kol)==null?void 0:f.token)!=null?p:n.kol.token},plugin:{pin:(b=(k=t.plugin)==null?void 0:k.pin)!=null?b:n.plugin.pin,usbKeyType:(E=(T=t.plugin)==null?void 0:T.usbKeyType)!=null?E:n.plugin.usbKeyType},rsaMode:(A=t.rsaMode)!=null?A:n.rsaMode,signatureType:(D=t.signatureType)!=null?D:n.signatureType}:G(n)},le=(n,t)=>{var e,i,r,a,s,o,d,h,u,l,m,c,f,p,k,b,T,E;return t?{authSource:(e=t.authSource)!=null?e:n.authSource,defaultLogin:(i=t.defaultLogin)!=null?i:n.defaultLogin,defaultPassword:(r=t.defaultPassword)!=null?r:n.defaultPassword,defaultServer:(a=t.defaultServer)!=null?a:n.defaultServer,kol:{appId:(o=(s=t.kol)==null?void 0:s.appId)!=null?o:n.kol.appId,appName:(h=(d=t.kol)==null?void 0:d.appName)!=null?h:n.kol.appName,serviceUrl:(l=(u=t.kol)==null?void 0:u.serviceUrl)!=null?l:n.kol.serviceUrl,token:(c=(m=t.kol)==null?void 0:m.token)!=null?c:n.kol.token},macAddress:(f=t.macAddress)!=null?f:n.macAddress,token:(p=t.token)!=null?p:n.token,usbKey:{checkCertificateBinding:(b=(k=t.usbKey)==null?void 0:k.checkCertificateBinding)!=null?b:n.usbKey.checkCertificateBinding,usbKeyType:(E=(T=t.usbKey)==null?void 0:T.usbKeyType)!=null?E:n.usbKey.usbKeyType}}:x(n)},Q=(n,t)=>({defaults:de(n.defaults,t.defaults),signServer:le(n.signServer,t.signServer)}),ce=(n,t)=>{var e,i,r,a,s,o,d,h,u,l,m,c,f,p,k,b,T,E,A,D;return{defaults:n.defaults||t.defaults?{...n.defaults,...t.defaults,bjca:{...(i=(e=n.defaults)==null?void 0:e.bjca)!=null?i:{},...(a=(r=t.defaults)==null?void 0:r.bjca)!=null?a:{}},kol:{...(o=(s=n.defaults)==null?void 0:s.kol)!=null?o:{},...(h=(d=t.defaults)==null?void 0:d.kol)!=null?h:{}},plugin:{...(l=(u=n.defaults)==null?void 0:u.plugin)!=null?l:{},...(c=(m=t.defaults)==null?void 0:m.plugin)!=null?c:{}}}:void 0,signServer:n.signServer||t.signServer?{...n.signServer,...t.signServer,kol:{...(p=(f=n.signServer)==null?void 0:f.kol)!=null?p:{},...(b=(k=t.signServer)==null?void 0:k.kol)!=null?b:{}},usbKey:{...(E=(T=n.signServer)==null?void 0:T.usbKey)!=null?E:{},...(D=(A=t.signServer)==null?void 0:A.usbKey)!=null?D:{}}}:void 0}},ue=()=>globalThis,y=()=>{const n=ue();return n[I]||(n[I]={current:v(H),defaults:v(H),overrides:{}}),n[I]},z=()=>y().current,W=n=>{const t=y();return t.defaults=v(n),t.current=Q(t.defaults,t.overrides),t.current},$=n=>{const t=y();return t.current=v(n),t.overrides=q(n),t.current},j=n=>{const t=y();return t.overrides=ce(t.overrides,q(n)),t.current=Q(t.current,n),t.current},Y=n=>{const t=y();return n&&(t.defaults=v(n)),t.overrides={},t.current=v(t.defaults),t.current},X={EDGE_POSITION:V,RSA_MODE:K,SIGNATURE_TYPE:B},w=n=>{if(n.length!==0)return n.length===1?n[0]:n},R=(n,t,e)=>new Proxy({},{get:(i,r)=>{if(r==="then")return;if(typeof r=="symbol")return r===Symbol.toStringTag?n:void 0;const a=t[r];return a?(...s)=>{var d,h,u;if(a.kind==="callbackRegister"){(d=a.callback)==null||d.call(a,e.callbacks,s);return}if(a.kind==="stateGetter")return(h=a.state)==null?void 0:h.call(a,e.state.snapshot(),s);const o=(u=a.adapterMethod)!=null?u:r;if(a.kind==="query")return e.bridge.request(n,o,w(s));if(a.kind==="callbackQuery"){const l=s.find(c=>typeof c=="function"),m=s.filter(c=>typeof c!="function");e.bridge.request(n,o,w(m)).then(c=>{var p,k;const f=(k=(p=a.mapCallbackResult)==null?void 0:p.call(a,c))!=null?k:[c];l==null||l(...f)}).catch(e.onAsyncError);return}e.bridge.request(n,o,w(s)).catch(e.onAsyncError)}:(...s)=>{const o=new Error(`${n}.${r} is not implemented by the SDK adapter.`);e.onAsyncError(o)}}}),P=(n,t)=>new Proxy({},{get:(e,i)=>{if(i!=="then"&&typeof i!="symbol")return(...r)=>{const a=`${n}.${i} is not implemented by the SDK adapter.`;t.onAsyncError(new Error(a))}}}),he={addDocumentOpenedCallback:{kind:"callbackRegister",callback:(n,t)=>{const e=t[0];typeof e=="function"&&n.documentOpened.push(e)}},addDocumentSavedCallback:{kind:"callbackRegister",callback:(n,t)=>{const e=t[0];typeof e=="function"&&n.documentSaved.push(e)}},addDocumentClosedCallback:{kind:"callbackRegister",callback:(n,t)=>{const e=t[0];typeof e=="function"&&n.documentClosed.push(e)}},openPDFDocument:{kind:"callbackQuery",adapterMethod:"open"},openPdfDocument:{kind:"callbackQuery",adapterMethod:"open"},openOFDDocument:{kind:"callbackQuery",adapterMethod:"open"},openOfdDocument:{kind:"callbackQuery",adapterMethod:"open"},openOfficeDocument:{kind:"callbackQuery",adapterMethod:"open"},openImageDocument:{kind:"callbackQuery",adapterMethod:"open"},openTextDocument:{kind:"callbackQuery",adapterMethod:"open"},openFromLocalStorage:{kind:"command"},setUploadUrl:{kind:"command"},save:{kind:"callbackQuery"},saveAs:{kind:"query"},getDocumentContent:{kind:"callbackQuery",mapCallbackResult:n=>{const t=n;return[t==null?void 0:t.fileCacheId,t==null?void 0:t.fileBuffer]}},closeDocument:{kind:"callbackQuery"},isDocumentOpened:{kind:"stateGetter",state:n=>n.documentOpened},isDocumentModified:{kind:"stateGetter",state:n=>n.documentModified},print:{kind:"command"},createPreview:{kind:"command"}};class me{constructor(t){this.addDocumentOpenedCallback=e=>this.adapter.addDocumentOpenedCallback(e),this.addDocumentSavedCallback=e=>this.adapter.addDocumentSavedCallback(e),this.addDocumentClosedCallback=e=>this.adapter.addDocumentClosedCallback(e),this.openPDFDocument=(e,i)=>this.adapter.openPDFDocument(e,i),this.openPdfDocument=(e,i)=>this.adapter.openPdfDocument(e,i),this.openOFDDocument=(e,i)=>this.adapter.openOFDDocument(e,i),this.openOfdDocument=(e,i)=>this.adapter.openOfdDocument(e,i),this.openOfficeDocument=(e,i)=>this.adapter.openOfficeDocument(e,i),this.openImageDocument=(e,i)=>this.adapter.openImageDocument(e,i),this.openTextDocument=(e,i)=>this.adapter.openTextDocument(e,i),this.openFromLocalStorage=()=>this.adapter.openFromLocalStorage(),this.setUploadUrl=e=>this.adapter.setUploadUrl(e),this.save=(e,i,r)=>this.adapter.save(e,i,r),this.saveAs=e=>this.adapter.saveAs(e),this.getDocumentContent=e=>this.adapter.getDocumentContent(e),this.closeDocument=(e,i,r)=>this.adapter.closeDocument(e,i,r),this.isDocumentOpened=()=>this.adapter.isDocumentOpened(),this.isDocumentModified=()=>this.adapter.isDocumentModified(),this.print=()=>this.adapter.print(),this.createPreview=(e,i)=>this.adapter.createPreview(e,i),this.adapter=R("document",he,t)}}const ge={clearFind:{kind:"command"},findNext:{kind:"command"},findPrevious:{kind:"command"}};class pe{constructor(t){this.clearFind=()=>this.adapter.clearFind(),this.findNext=e=>this.adapter.findNext(e),this.findPrevious=e=>this.adapter.findPrevious(e),this.adapter=R("find",ge,t)}}const ke={configFileUpload:{kind:"command"},setHttpHeaders:{kind:"command"},setHttpFormFields:{kind:"command"}};class fe{constructor(t){this.configFileUpload=e=>this.adapter.configFileUpload(e),this.setHttpHeaders=e=>this.adapter.setHttpHeaders(e),this.setHttpFormFields=e=>this.adapter.setHttpFormFields(e),this.adapter=R("networking",ke,t)}}const be=n=>({addPageChangeCallback:{kind:"callbackRegister",callback:(t,e)=>{const i=e[0];typeof i=="function"&&t.pageChange.push(i)}},addPageModeChangeCallback:{kind:"callbackRegister",callback:(t,e)=>{const i=e[0];typeof i=="function"&&t.pageModeChange.push(i)}},getPageCount:{kind:"callbackRegister",callback:(t,e)=>{const i=e[0];typeof i=="function"&&i(n.state.snapshot().pageCount)}},getPageIndex:{kind:"callbackRegister",callback:(t,e)=>{const i=e[0];typeof i=="function"&&i(n.state.snapshot().pageIndex)}},setSinglePageViewMode:{kind:"command"},setTwoPagesViewMode:{kind:"command"},setPageScrollVertical:{kind:"command"},setPageScrollHorizontal:{kind:"command"},setPageCursorPanDrag:{kind:"command"},setPageCursorTextSelect:{kind:"command"},rotateCW:{kind:"command"},rotateCCW:{kind:"command"},autoFitPage:{kind:"command"},fitPageSize:{kind:"command"},fitPageWidth:{kind:"command"},fitPageHeight:{kind:"command"},increasePageScale:{kind:"command"},decreasePageScale:{kind:"command"},setPageScale:{kind:"command"},setPageBlendColor:{kind:"command"},gotoPage:{kind:"command"},gotoNextPage:{kind:"command"},gotoPreviousPage:{kind:"command"},rotatePage:{kind:"command"}});class Te{constructor(t){this.addPageChangeCallback=e=>this.adapter.addPageChangeCallback(e),this.addPageModeChangeCallback=e=>this.adapter.addPageModeChangeCallback(e),this.getPageCount=e=>this.adapter.getPageCount(e),this.getPageIndex=e=>this.adapter.getPageIndex(e),this.setSinglePageViewMode=()=>this.adapter.setSinglePageViewMode(),this.setTwoPagesViewMode=()=>this.adapter.setTwoPagesViewMode(),this.setPageScrollVertical=()=>this.adapter.setPageScrollVertical(),this.setPageScrollHorizontal=()=>this.adapter.setPageScrollHorizontal(),this.setPageCursorPanDrag=()=>this.adapter.setPageCursorPanDrag(),this.setPageCursorTextSelect=()=>this.adapter.setPageCursorTextSelect(),this.rotateCW=()=>this.adapter.rotateCW(),this.rotateCCW=()=>this.adapter.rotateCCW(),this.autoFitPage=()=>this.adapter.autoFitPage(),this.fitPageSize=()=>this.adapter.fitPageSize(),this.fitPageWidth=()=>this.adapter.fitPageWidth(),this.fitPageHeight=()=>this.adapter.fitPageHeight(),this.increasePageScale=()=>this.adapter.increasePageScale(),this.decreasePageScale=()=>this.adapter.decreasePageScale(),this.setPageScale=e=>this.adapter.setPageScale(e),this.setPageBlendColor=(e,i,r,a)=>this.adapter.setPageBlendColor(e,i,r,a),this.gotoPage=(e,i,r)=>this.adapter.gotoPage(e,i,r),this.gotoNextPage=()=>this.adapter.gotoNextPage(),this.gotoPreviousPage=()=>this.adapter.gotoPreviousPage(),this.rotatePage=e=>this.adapter.rotatePage(e),this.adapter=R("page",be(t),t)}}const Ee={open:{kind:"command"},setFormFieldValue:{kind:"command"},setFormFieldReadonly:{kind:"command"},commit:{kind:"callbackQuery",mapCallbackResult:()=>[]},clear:{kind:"callbackQuery",mapCallbackResult:()=>[]},toKeyValue:{kind:"callbackQuery",mapCallbackResult:n=>[Array.isArray(n)?n:[]]}};class Re{constructor(t){this.open=()=>this.adapter.open(),this.setFormFieldValue=(e,i)=>this.adapter.setFormFieldValue(e,i),this.setFormFieldReadonly=(e,i)=>this.adapter.setFormFieldReadonly(e,i),this.commit=e=>this.adapter.commit(e),this.clear=e=>this.adapter.clear(e),this.toKeyValue=e=>this.adapter.toKeyValue(e),this.adapter=R("pdfFormFiller",Ee,t)}}const ve=/\s*,\s*/,Se=/\s*-\s*/,_=n=>{const t=Number.parseInt(n.trim(),10);return!Number.isFinite(t)||t<=0?null:t},ye=n=>{var r,a,s;const t=n.split(Se);if(t.length===1){const o=_((r=t[0])!=null?r:"");return o?[o]:[]}const e=_((a=t[0])!=null?a:""),i=_((s=t[1])!=null?s:"");return!e||!i||i<e?[]:Array.from({length:i-e+1},(o,d)=>e+d)},Pe=n=>n?n.split(ve).flatMap(e=>ye(e)).filter((e,i,r)=>r.indexOf(e)===i):[];class Ce{constructor(t,e,i){this.setFieldName=r=>{this.key=r},this.setFieldValue=r=>{this.value=r},this.setDescription=r=>{this.description=r},this.key=t,this.value=e,this.description=i}}class Ae{constructor(){this.fields=[],this.keywordTextFixedPositions=void 0,this.keywordOffsetX=0,this.keywordOffsetY=0,this.bookmarkOffsetX=0,this.bookmarkOffsetY=0,this.printMargin=0,this.grayscaleSealImage=!1,this.signType=0,this.sealPosition=0,this.getSignType=()=>this.signType,this.setSignType=t=>{this.signType=t},this.isCrossPageSideSign=()=>this.signType===2||this.signType===3,this.getSealPosition=()=>this.sealPosition,this.setSignOnPageSides=t=>{t>=0&&t<=3&&(this.signType=t)},this.setSignPositionOnPageSides=t=>{this.sealPosition=t},this.setPageRange=t=>{this.pageRange=t},this.getPageRange=()=>this.pageRange,this.getPageRanges=()=>Pe(this.pageRange),this.setSignUserData=t=>{this.signUserData=t},this.setPrintMargin=t=>{this.printMargin=t},this.getPrintMargin=()=>{var t;return(t=this.printMargin)!=null?t:0},this.setSignReason=t=>{this.signReason=t},this.getSignReason=()=>this.signReason,this.setSignLocation=t=>{this.signLocation=t},this.getSignLocation=()=>this.signLocation,this.setDefaultStampPassword=t=>{this.defaultStampPassword=t}}}const De=new Set([2,5]),Me=n=>({showToolbarMenu:{kind:"command"},hideToolbarMenu:{kind:"command"},setupToolbarMenu:{kind:"command"},showToolbarMenuItem:{kind:"command"},hideToolbarMenuItem:{kind:"command"},setupRibbonMenu:{kind:"command"},setupRibbonMenuItem:{kind:"command"},setupRibbonTitleBar:{kind:"command"},showRibbonMenu:{kind:"command"},hideRibbonMenu:{kind:"command"},showRibbonMenuItem:{kind:"command"},hideRibbonMenuItem:{kind:"command"},showRibbonTitleBar:{kind:"command"},hideRibbonTitleBar:{kind:"command"},selectRibbonMenu:{kind:"command"},setRibbonMenuButtonStyle:{kind:"command"},setWatermark:{kind:"command"},setCompactMode:{kind:"command"},enterBookViewMode:{kind:"callbackQuery",mapCallbackResult:()=>[]},exitBookViewMode:{kind:"command"},isBookViewActivated:{kind:"stateGetter",state:()=>De.has(n.state.snapshot().pageMode)},requestFullScreen:{kind:"command"},exitFullScreen:{kind:"command"},invalidateView:{kind:"command"}});class Ie{constructor(t){this.showToolbarMenu=()=>this.adapter.showToolbarMenu(),this.hideToolbarMenu=()=>this.adapter.hideToolbarMenu(),this.setupToolbarMenu=e=>this.adapter.setupToolbarMenu(e),this.showToolbarMenuItem=e=>this.adapter.showToolbarMenuItem(e),this.hideToolbarMenuItem=e=>this.adapter.hideToolbarMenuItem(e),this.setupRibbonMenu=e=>this.adapter.setupRibbonMenu(e),this.setupRibbonMenuItem=(e,i,r)=>this.adapter.setupRibbonMenuItem(e,i,r),this.setupRibbonTitleBar=e=>this.adapter.setupRibbonTitleBar(e),this.showRibbonMenu=()=>this.adapter.showRibbonMenu(),this.hideRibbonMenu=()=>this.adapter.hideRibbonMenu(),this.showRibbonMenuItem=(e,i)=>this.adapter.showRibbonMenuItem(e,i),this.hideRibbonMenuItem=(e,i)=>this.adapter.hideRibbonMenuItem(e,i),this.showRibbonTitleBar=()=>this.adapter.showRibbonTitleBar(),this.hideRibbonTitleBar=()=>this.adapter.hideRibbonTitleBar(),this.selectRibbonMenu=e=>this.adapter.selectRibbonMenu(e),this.setRibbonMenuButtonStyle=(e,i)=>this.adapter.setRibbonMenuButtonStyle(e,i),this.setWatermark=e=>this.adapter.setWatermark(e),this.setCompactMode=e=>this.adapter.setCompactMode(e),this.enterBookViewMode=e=>this.adapter.enterBookViewMode(e),this.exitBookViewMode=()=>this.adapter.exitBookViewMode(),this.isBookViewActivated=()=>this.adapter.isBookViewActivated(),this.requestFullScreen=()=>this.adapter.requestFullScreen(),this.exitFullScreen=()=>this.adapter.exitFullScreen(),this.invalidateView=()=>this.adapter.invalidateView(),this.adapter=R("ui",Me(t),t)}}const we=n=>{if(!n)return;const t=n.trim().toLowerCase();if(t==="application")return"auto";if(t==="light"||t==="dark"||t==="high-contrast"||t==="auto")return t},J=n=>{var e,i;const t=new URL(n,(i=(e=globalThis.location)==null?void 0:e.href)!=null?i:"http://localhost/");return t.hash="",t.pathname.endsWith("/")||(t.pathname=`${t.pathname}/`),t.toString()},_e=n=>new URL("editors.bootstrap.js",n).toString(),Oe=(n,t)=>{var i;const e=J(n);return{...t,appUrl:e,scrollIntoView:(i=t.scrollIntoView)!=null?i:!0,theme:we(t.theme)}},S="rhc-office-editor",O="__RHC_OFFICE_SDK_READER_LOADER__",Z=()=>{const n=globalThis;return n[O]||(n[O]={activeAppUrl:null,loadPromises:new Map}),n[O]},Fe=n=>{var t;return(t=Array.from(document.querySelectorAll("script")).find(e=>e.src===n))!=null?t:null};class ee extends Error{constructor(t){super(`Failed to load reader bootstrap script: ${t}`),this.name="ReaderScriptLoadError"}}class Le extends Error{constructor(t,e){super(`Reader Web Component "${S}" is already bound to ${t} and cannot be reloaded from ${e}.`),this.name="ReaderSourceConflictError"}}const te=n=>{const t=Z();if(t.activeAppUrl&&t.activeAppUrl!==n)throw new Le(t.activeAppUrl,n)},Ue=n=>{var s;const t=Z();te(n);const e=t.loadPromises.get(n);if(e)return e;if((s=globalThis.customElements)!=null&&s.get(S)){t.activeAppUrl=n;const o=Promise.resolve();return t.loadPromises.set(n,o),o}const i=_e(n),r=Fe(i);t.activeAppUrl=n;const a=new Promise((o,d)=>{var m;const h=c=>{c==null||c.remove(),d(new ee(i))},u=()=>{globalThis.customElements.whenDefined(S).then(()=>{o()}).catch(d)};if(r){if((m=globalThis.customElements)!=null&&m.get(S)){o();return}r.addEventListener("error",()=>d(new ee(i)),{once:!0}),u();return}const l=document.createElement("script");l.src=i,l.async=!0,l.dataset.rhcOfficeSdkReader=n,l.addEventListener("load",u,{once:!0}),l.addEventListener("error",()=>h(l),{once:!0}),document.head.appendChild(l)}).catch(o=>{var d;throw t.loadPromises.delete(n),!((d=globalThis.customElements)!=null&&d.get(S))&&t.activeAppUrl===n&&(t.activeAppUrl=null),o});return t.loadPromises.set(n,a),a},Ne="rhc-office.editor-adapter",Ve=1,Be="__RHC_OFFICE_EDITOR_ADAPTER__",ne="rhcOfficeAdapterReady",ie="rhcOfficeAdapterEvent",Ke="data-rhc-office-reader-id",He=5e3,Ge=5e3,xe=()=>{const n=globalThis.crypto;return typeof(n==null?void 0:n.randomUUID)=="function"?n.randomUUID():`adapter-${Date.now()}-${Math.random().toString(36).slice(2)}`},C=()=>globalThis[Be];class qe extends Error{constructor(t,e,i){super(e),this.name="ReaderBridgeError",this.code=t,this.details=i}}class Qe{constructor(t){var e,i;this.readerId=null,this.readyTimeoutMs=(e=t==null?void 0:t.readyTimeoutMs)!=null?e:Ge,this.requestTimeoutMs=(i=t==null?void 0:t.requestTimeoutMs)!=null?i:He}configureTimeouts(t){var e,i;this.readyTimeoutMs=(e=t==null?void 0:t.readyTimeoutMs)!=null?e:this.readyTimeoutMs,this.requestTimeoutMs=(i=t==null?void 0:t.requestTimeoutMs)!=null?i:this.requestTimeoutMs}setReaderId(t){this.readerId=t}getReaderId(){return this.readerId}async request(t,e,i,r){const a=await this.requestRaw(t,e,i,r);if(a.ok)return a.result;throw new qe(a.error.code,a.error.message,a.error.details)}async requestRaw(t,e,i,r){var o;if(!this.readerId)return{ok:!1,requestId:"",error:{code:"READER_NOT_READY",message:"Reader is not mounted."}};const a=await this.waitForAdapter(this.readerId,r==null?void 0:r.timeoutMs);if(!a)return{ok:!1,requestId:"",error:{code:"ADAPTER_UNAVAILABLE",message:"Editor adapter is not available."}};const s={protocol:Ne,version:Ve,requestId:xe(),readerId:this.readerId,tool:t,method:e,params:i};return this.withTimeout(a.request(s),s.requestId,(o=r==null?void 0:r.timeoutMs)!=null?o:this.requestTimeoutMs)}getCapabilities(){var t,e;return this.readerId&&(e=(t=C())==null?void 0:t.getCapabilities(this.readerId))!=null?e:null}async waitForAdapter(t,e=this.readyTimeoutMs){const i=C();return i!=null&&i.getCapabilities(t)?i:new Promise(r=>{let a;const s=()=>{a&&clearTimeout(a),globalThis.removeEventListener(ne,o)},o=d=>{const h=d instanceof CustomEvent?d.detail:void 0;if((h==null?void 0:h.readerId)!==t)return;const u=C();s(),r(u!=null?u:null)};globalThis.addEventListener(ne,o),a=setTimeout(()=>{var d;s(),r((d=C())!=null&&d.getCapabilities(t)?C():null)},e)})}async withTimeout(t,e,i){return new Promise(r=>{const a=setTimeout(()=>{r({ok:!1,requestId:e,error:{code:"TIMEOUT",message:`Editor adapter request timed out after ${i}ms.`}})},i);t.then(s=>r(s)).catch(s=>{r({ok:!1,requestId:e,error:{code:"EXECUTION_FAILED",message:s instanceof Error?s.message:String(s)}})}).finally(()=>{clearTimeout(a)})})}}const re={annotationEnabled:!1,documentModified:!1,documentOpened:!1,pageCount:0,pageIndex:1,pageMode:0,zoomLevel:100};class ze{constructor(){this.state={...re}}reset(){this.state={...re}}update(t){t&&(this.state={...this.state,...t})}setDocumentOpened(t){this.state={...this.state,documentOpened:t}}snapshot(){return{...this.state}}}class We{constructor(){this.annotationEvents=[],this.annotationPersist=[],this.annotationRetrieve=[],this.digitalAnnotationRetrieve=[],this.digitalSignatureParse=[],this.digitalSignatureRetrieve=[],this.documentClosed=[],this.documentOpened=[],this.documentSaved=[],this.pageChange=[],this.pageModeChange=[]}emit(t,e){switch(t){case"documentOpened":case"documentLoaded":this.documentOpened.forEach(i=>i("ok",""));return;case"documentSaved":this.documentSaved.forEach(i=>i(e));return;case"documentClosed":this.documentClosed.forEach(i=>i(e));return;case"pageChange":{const i=e;this.pageChange.forEach(r=>{var a,s;return r((a=i.pageIndex)!=null?a:1,(s=i.pageCount)!=null?s:0)});return}case"pageModeChange":{const i=e;this.pageModeChange.forEach(r=>{var a;return r((a=i.pageMode)!=null?a:0)});return}case"annotationEvent":{const i=e;this.annotationEvents.forEach(r=>{var a;return r((a=i.event)!=null?a:"annotationEvent",i.payload)});return}case"annotationPersist":this.annotationPersist.forEach(i=>i(e));return;case"annotationRetrieve":this.annotationRetrieve.forEach(i=>i(e));return;case"digitalAnnotationRetrieve":this.digitalAnnotationRetrieve.forEach(i=>i(Array.isArray(e)?e:[]));return;case"digitalSignatureRetrieve":this.digitalSignatureRetrieve.forEach(i=>i(Array.isArray(e)?e:[]));return;case"digitalSignatureParse":this.digitalSignatureParse.forEach(i=>i(Array.isArray(e)?e:[]));return;default:return}}}const $e=["documentLoaded","documentStateChange","documentError"],je="readerReady",Ye="readerUnload",F="readerError",Xe=()=>{var n;return typeof((n=globalThis.crypto)==null?void 0:n.randomUUID)=="function"?globalThis.crypto.randomUUID():`rhc-reader-${Date.now()}-${Math.random().toString(36).slice(2)}`},ae=(n,t)=>{var e;return{appUrl:(e=t==null?void 0:t.appUrl)!=null?e:null,configuration:t,element:n}},Je=n=>{if(typeof n=="string"){const t=document.getElementById(n);if(!t)throw new Error(`Reader container "${n}" was not found.`);if(!(t instanceof HTMLDivElement))throw new Error(`Reader container "${n}" must be a div element.`);return t}if(!(n instanceof HTMLDivElement))throw new Error("Reader container must be a div element.");return n},Ze=()=>{const n=typeof globalThis.matchMedia=="function";return(n?globalThis.matchMedia("(prefers-contrast: more)").matches:!1)?"high-contrast":(n?globalThis.matchMedia("(prefers-color-scheme: dark)").matches:!1)?"dark":"light"},se=(n,t)=>{const e=n;if(typeof e.addEventListener=="function"){e.addEventListener("change",t);return}typeof e.addListener=="function"&&e.addListener(t)},oe=(n,t)=>{const e=n;if(typeof e.removeEventListener=="function"){e.removeEventListener("change",t);return}typeof e.removeListener=="function"&&e.removeListener(t)},et=(n,t)=>{var e,i;t.style&&(n.style.cssText=t.style),n.style.display||(n.style.display="block"),n.style.width?t.width&&(n.style.width=t.width):n.style.width=(e=t.width)!=null?e:"100%",n.style.height?t.height&&(n.style.height=t.height):n.style.height=(i=t.height)!=null?i:"100%"},tt=(n,t)=>{const e=t.theme;if(!e)return n.removeAttribute("theme"),null;if(e!=="auto")return n.setAttribute("theme",e),null;const i=()=>{n.setAttribute("theme",Ze())};if(i(),typeof globalThis.matchMedia!="function")return null;const r=globalThis.matchMedia("(prefers-color-scheme: dark)"),a=globalThis.matchMedia("(prefers-contrast: more)"),s=()=>{i()};return se(r,s),se(a,s),()=>{oe(r,s),oe(a,s)}};class L{constructor(t){this.bridge=new Qe,this.callbacks=new We,this.readerState=new ze,this.bridgeToolContext={bridge:this.bridge,callbacks:this.callbacks,debug:()=>this.debugEnabled,onAsyncError:e=>this.reportAdapterError(e),state:this.readerState},this.documentTool=new me(this.bridgeToolContext),this.uiTool=new Ie(this.bridgeToolContext),this.pageTool=new Te(this.bridgeToolContext),this.findTool=new pe(this.bridgeToolContext),this.signServerTool=P("signServer",this.bridgeToolContext),this.digitalSignTool=P("digitalSign",this.bridgeToolContext),this.symbologyTool=P("symbology",this.bridgeToolContext),this.annotationTool=this.createAnnotationTool(),this.templateSignTool=P("templateSign",this.bridgeToolContext),this.pdfFormFiller=new Re(this.bridgeToolContext),this.networkingTool=new fe(this.bridgeToolContext),this.cryptoTool=P("crypto",this.bridgeToolContext),this.readyCallbacks=[],this.unloadCallbacks=[],this.debugEnabled=!1,this.isReady=!1,this.removed=!1,this.mountToken=0,this.hostContainer=null,this.readerElement=null,this.readerId=null,this.normalizedConfiguration=null,this.nativeEventCleanupCallbacks=[],this.themeCleanup=null,this.enableDebug=e=>{this.debugEnabled=e},this.changeLanguage=()=>{},this.setLicense=(e,i)=>{this.license={license:e,feature:i}},this.setSessionUser=e=>{this.sessionUser=e},this.setSessionUserId=e=>{if(typeof this.sessionUser=="string"||!this.sessionUser){this.sessionUser={userName:typeof this.sessionUser=="string"?this.sessionUser:"",userId:e};return}this.sessionUser={...this.sessionUser,userId:e}},this.setSessionData=e=>{this.sessionData=e},this.isReaderReady=()=>this.isReady,this.isReaderDestroyed=()=>this.removed&&!this.isReady,this.addReaderReadyCallback=e=>{this.readyCallbacks.push(e)},this.addReaderUnloadCallback=e=>{this.unloadCallbacks.push(e)},this.setReaderEventListener=e=>{this.readerEventListener=e},this.embedReader=(e,i,r)=>{const a=Je(e),s=J(i);te(s);const o=Oe(s,r),d=this.mountToken+1;this.removeReader(),this.mountToken=d,this.removed=!1,this.hostContainer=a,this.normalizedConfiguration=o,this.mountReader(a,o,d)},this.removeReader=()=>{var r;const e=!!(this.readerElement||this.hostContainer);if(this.mountToken+=1,this.cleanupNativeEventForwarders(),this.cleanupThemeBinding(),(r=this.readerElement)!=null&&r.parentNode&&this.readerElement.parentNode.removeChild(this.readerElement),this.readerElement=null,this.readerId=null,this.bridge.setReaderId(null),this.readerState.reset(),this.hostContainer=null,this.normalizedConfiguration=null,this.isReady=!1,this.removed=!0,!e)return;const i=ae(null,null);this.emitReaderEvent(Ye,i),this.unloadCallbacks.forEach(a=>a())},this.getDocumentTool=()=>this.documentTool,this.getUITool=()=>this.uiTool,this.getPageTool=()=>this.pageTool,this.getFindTool=()=>this.findTool,this.getSignServerTool=()=>this.signServerTool,this.getDigitalSignTool=()=>this.digitalSignTool,this.getSymbologyTool=()=>this.symbologyTool,this.getAnnotationTool=()=>this.annotationTool,this.getTemplateSignTool=()=>this.templateSignTool,this.getPdfFormFiller=()=>this.pdfFormFiller,this.getNetworkingTool=()=>this.networkingTool,this.getCryptoTool=()=>this.cryptoTool,this.createDigitalSignOptions=()=>new Ae,this.createKVField=(e,i,r)=>new Ce(e,i,r),this.mountReader=async(e,i,r)=>{try{if(await Ue(i.appUrl),this.mountToken!==r)return;const a=document.createElement(S),s=Xe();if(a.setAttribute(Ke,s),this.readerId=s,this.bridge.setReaderId(s),et(a,i),this.themeCleanup=tt(a,i),this.bindNativeReaderEvents(a),e.replaceChildren(a),this.readerElement=a,await Promise.resolve(),this.mountToken!==r)return;i.scrollIntoView&&typeof e.scrollIntoView=="function"&&e.scrollIntoView({behavior:"smooth",block:"nearest"}),this.isReady=!0;const o=ae(a,i);this.emitReaderEvent(je,o),this.readyCallbacks.forEach(d=>d())}catch(a){if(this.mountToken!==r)return;this.reportReaderError(a)}},this.bindNativeReaderEvents=e=>{this.cleanupNativeEventForwarders();const i=r=>{const a=r instanceof CustomEvent?r.detail:null;!a||a.readerId!==this.readerId||(this.readerState.update(a.statePatch),this.callbacks.emit(a.event,a.payload),this.emitReaderEvent(a.event,a.payload))};e.addEventListener(ie,i),this.nativeEventCleanupCallbacks.push(()=>{e.removeEventListener(ie,i)}),$e.forEach(r=>{const a=s=>{const o=s instanceof CustomEvent?s.detail:s;r==="documentLoaded"&&this.readerState.setDocumentOpened(!0),this.emitReaderEvent(r,o),r==="documentError"&&this.emitReaderEvent(F,o)};e.addEventListener(r,a),this.nativeEventCleanupCallbacks.push(()=>{e.removeEventListener(r,a)})})},this.cleanupNativeEventForwarders=()=>{this.nativeEventCleanupCallbacks.splice(0).forEach(e=>e())},this.cleanupThemeBinding=()=>{var e;(e=this.themeCleanup)==null||e.call(this),this.themeCleanup=null},this.emitReaderEvent=(e,i)=>{var r;(r=this.readerEventListener)==null||r.call(this,e,i)},this.reportReaderError=e=>{this.isReady=!1,this.debugEnabled&&console.error("[RHC Office SDK] Reader mount failed",e),this.emitReaderEvent(F,e)},this.reportAdapterError=e=>{this.debugEnabled&&console.error("[RHC Office SDK] Adapter command failed",e),this.emitReaderEvent(F,e)},this.bridge.configureTimeouts({readyTimeoutMs:t==null?void 0:t.adapterReadyTimeoutMs,requestTimeoutMs:t==null?void 0:t.adapterRequestTimeoutMs})}createAnnotationTool(){return R("annotation",{addAnnotationEventCallback:{kind:"callbackRegister",callback:(t,e)=>{const i=e[0];typeof i=="function"&&t.annotationEvents.push(i)}},addAnnotationPersistCallback:{kind:"callbackRegister",callback:(t,e)=>{const i=e[0];typeof i=="function"&&t.annotationPersist.push(i)}},addAnnotationRetrieveCallback:{kind:"callbackRegister",callback:(t,e)=>{const i=e[0];typeof i=="function"&&t.annotationRetrieve.push(i)}},addDigitalAnnotationRetrieveCallback:{kind:"callbackRegister",callback:(t,e)=>{const i=e[0];typeof i=="function"&&t.digitalAnnotationRetrieve.push(i)}},isInAnnotationMode:{kind:"stateGetter",state:t=>t.annotationEnabled},getAnnotations:{kind:"stateGetter",state:()=>[]},getAnnotationsCount:{kind:"stateGetter",state:()=>0},queryAnnotationsBy:{kind:"stateGetter",state:()=>[]},setToolSource:{kind:"command"},openAnnotationView:{kind:"command"},closeAnnotationView:{kind:"command"},openTextAnnotationView:{kind:"command"},setTextAnnotationFontColor:{kind:"command"},setTextAnnotationFontSize:{kind:"command"},closeTextAnnotationView:{kind:"command"},createTextAnnotation:{kind:"command"},setPersistToDocument:{kind:"command"},saveAnnotations:{kind:"callbackQuery"},saveTextAnnotations:{kind:"command"},clearAnnotations:{kind:"command"},clearTextAnnotations:{kind:"command"},undoAnnotation:{kind:"command"},redoAnnotation:{kind:"command"},selectAnnotationTool:{kind:"command"},showAnnotationColorPicker:{kind:"command"},setAnnotationPenType:{kind:"command"},appendAnnotations:{kind:"callbackQuery"},batchAppendAnnotations:{kind:"callbackQuery"},setAnnotationPenColor:{kind:"command"},setAnnotationPenWidth:{kind:"command"},setAnnotationPenThickness:{kind:"command"},enableAnnotationsInfoView:{kind:"command"},enableAnnotationsDeletion:{kind:"command"},enableAnnotationsDeletionOnlyByAuthor:{kind:"command"},listDigitalStamps:{kind:"command"},listAnnotations:{kind:"command"},deleteAnnotationsBy:{kind:"command"},deleteAnnotationsById:{kind:"command"},addDigitalAnnotation:{kind:"command"},addInkAnnotationCallback:{kind:"callbackRegister"}},this.bridgeToolContext)}}const U=n=>new L(n),N={DocumentSDK:L,WatermarkDisplay:M,DIGITAL_SIGN_DEFAULTS:X,createNewDocumentSdk:U,newDocumentSDK:U,getDigitalSignEnvironment:z,initializeDigitalSignEnvironment:W,patchDigitalSignEnvironment:j,resetDigitalSignEnvironment:Y,setDigitalSignEnvironment:$};return typeof document<"u"&&(n=>{Object.entries(N).forEach(([t,e])=>{Object.defineProperty(n,t,{configurable:!0,enumerable:!0,value:e,writable:!0})}),n.RHCOfficeSDK=N})(document),g.DIGITAL_SIGN_DEFAULTS=X,g.DocumentSDK=L,g.RHCOfficeSDK=N,g.WatermarkDisplay=M,g.createNewDocumentSdk=U,g.getDigitalSignEnvironment=z,g.initializeDigitalSignEnvironment=W,g.patchDigitalSignEnvironment=j,g.resetDigitalSignEnvironment=Y,g.setDigitalSignEnvironment=$,Object.defineProperty(g,Symbol.toStringTag,{value:"Module"}),g}({});
2
+ //# sourceMappingURL=document-viewer.js.map