@rhc-office/sdk 6.6.351 → 6.6.363

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.
@@ -13,6 +13,9 @@ export declare class AnnotationToolImpl implements AnnotationTool {
13
13
  canRedoAnnotation: AnnotationTool['canRedoAnnotation'];
14
14
  selectAnnotationTool: AnnotationTool['selectAnnotationTool'];
15
15
  selectAnnotationStamp: AnnotationTool['selectAnnotationStamp'];
16
+ getCustomStamps: AnnotationTool['getCustomStamps'];
17
+ addCustomTextStamp: AnnotationTool['addCustomTextStamp'];
18
+ addCustomImageStamp: AnnotationTool['addCustomImageStamp'];
16
19
  setAnnotationPenColor: AnnotationTool['setAnnotationPenColor'];
17
20
  setAnnotationPenWidth: AnnotationTool['setAnnotationPenWidth'];
18
21
  setAnnotationPenStyle: AnnotationTool['setAnnotationPenStyle'];
@@ -1 +1 @@
1
- {"version":3,"file":"AnnotationToolImpl.d.ts","sourceRoot":"","sources":["../../src/tools/AnnotationToolImpl.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAIV,cAAc,EACf,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAEL,KAAK,wBAAwB,EAE9B,MAAM,6BAA6B,CAAC;AA4ErC,qBAAa,kBAAmB,YAAW,cAAc;IACvD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAiB;gBAE7B,OAAO,EAAE,wBAAwB;IAQ7C,kBAAkB,EAAE,cAAc,CAAC,oBAAoB,CAAC,CAEtD;IAEF,mBAAmB,EAAE,cAAc,CAAC,qBAAqB,CAAC,CAExD;IAEF,eAAe,EAAE,cAAc,CAAC,iBAAiB,CAAC,CAEhD;IAEF,gBAAgB,EAAE,cAAc,CAAC,kBAAkB,CAAC,CAElD;IAEF,cAAc,EAAE,cAAc,CAAC,gBAAgB,CAAC,CAE9C;IAEF,cAAc,EAAE,cAAc,CAAC,gBAAgB,CAAC,CAE9C;IAEF,iBAAiB,EAAE,cAAc,CAAC,mBAAmB,CAAC,CAEpD;IAEF,iBAAiB,EAAE,cAAc,CAAC,mBAAmB,CAAC,CAEpD;IAEF,oBAAoB,EAAE,cAAc,CAAC,sBAAsB,CAAC,CAE1D;IAEF,qBAAqB,EAAE,cAAc,CAAC,uBAAuB,CAAC,CAE5D;IAEF,qBAAqB,EAAE,cAAc,CAAC,uBAAuB,CAAC,CAE5D;IAEF,qBAAqB,EAAE,cAAc,CAAC,uBAAuB,CAAC,CAE5D;IAEF,qBAAqB,EAAE,cAAc,CAAC,uBAAuB,CAAC,CAE5D;IAEF,kBAAkB,EAAE,cAAc,CAAC,oBAAoB,CAAC,CAEtD;IAEF,iBAAiB,EAAE,cAAc,CAAC,mBAAmB,CAAC,CAEpD;IAEF,cAAc,EAAE,cAAc,CAAC,gBAAgB,CAAC,CAE9C;IAEF,mBAAmB,EAAE,cAAc,CAAC,qBAAqB,CAAC,CAExD;IAEF,0BAA0B,EAAE,cAAc,CAAC,4BAA4B,CAAC,CAEtE;CACH"}
1
+ {"version":3,"file":"AnnotationToolImpl.d.ts","sourceRoot":"","sources":["../../src/tools/AnnotationToolImpl.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAIV,cAAc,EACf,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAEL,KAAK,wBAAwB,EAE9B,MAAM,6BAA6B,CAAC;AA+ErC,qBAAa,kBAAmB,YAAW,cAAc;IACvD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAiB;gBAE7B,OAAO,EAAE,wBAAwB;IAQ7C,kBAAkB,EAAE,cAAc,CAAC,oBAAoB,CAAC,CAEtD;IAEF,mBAAmB,EAAE,cAAc,CAAC,qBAAqB,CAAC,CAExD;IAEF,eAAe,EAAE,cAAc,CAAC,iBAAiB,CAAC,CAEhD;IAEF,gBAAgB,EAAE,cAAc,CAAC,kBAAkB,CAAC,CAElD;IAEF,cAAc,EAAE,cAAc,CAAC,gBAAgB,CAAC,CAE9C;IAEF,cAAc,EAAE,cAAc,CAAC,gBAAgB,CAAC,CAE9C;IAEF,iBAAiB,EAAE,cAAc,CAAC,mBAAmB,CAAC,CAEpD;IAEF,iBAAiB,EAAE,cAAc,CAAC,mBAAmB,CAAC,CAEpD;IAEF,oBAAoB,EAAE,cAAc,CAAC,sBAAsB,CAAC,CAE1D;IAEF,qBAAqB,EAAE,cAAc,CAAC,uBAAuB,CAAC,CAE5D;IAEF,eAAe,EAAE,cAAc,CAAC,iBAAiB,CAAC,CAEhD;IAEF,kBAAkB,EAAE,cAAc,CAAC,oBAAoB,CAAC,CAEtD;IAEF,mBAAmB,EAAE,cAAc,CAAC,qBAAqB,CAAC,CAExD;IAEF,qBAAqB,EAAE,cAAc,CAAC,uBAAuB,CAAC,CAE5D;IAEF,qBAAqB,EAAE,cAAc,CAAC,uBAAuB,CAAC,CAE5D;IAEF,qBAAqB,EAAE,cAAc,CAAC,uBAAuB,CAAC,CAE5D;IAEF,kBAAkB,EAAE,cAAc,CAAC,oBAAoB,CAAC,CAEtD;IAEF,iBAAiB,EAAE,cAAc,CAAC,mBAAmB,CAAC,CAEpD;IAEF,cAAc,EAAE,cAAc,CAAC,gBAAgB,CAAC,CAE9C;IAEF,mBAAmB,EAAE,cAAc,CAAC,qBAAqB,CAAC,CAExD;IAEF,0BAA0B,EAAE,cAAc,CAAC,4BAA4B,CAAC,CAEtE;CACH"}
@@ -33,6 +33,7 @@ export declare class DocumentSDK implements IDocumentSDK {
33
33
  private readerElement;
34
34
  private readerId;
35
35
  private normalizedConfiguration;
36
+ private runtimeRestoreState;
36
37
  private sessionUser?;
37
38
  private sessionData?;
38
39
  private readonly nativeEventCleanupCallbacks;
@@ -68,6 +69,8 @@ export declare class DocumentSDK implements IDocumentSDK {
68
69
  readonly createDigitalSignOptions: IDocumentSDK['createDigitalSignOptions'];
69
70
  readonly createKVField: IDocumentSDK['createKVField'];
70
71
  private readonly mountReader;
72
+ private applyReaderRuntimeConfig;
73
+ private restoreReaderRuntimeConfig;
71
74
  private readonly bindNativeReaderEvents;
72
75
  private readonly cleanupNativeEventForwarders;
73
76
  private readonly cleanupThemeBinding;
@@ -1 +1 @@
1
- {"version":3,"file":"DocumentSDK.d.ts","sourceRoot":"","sources":["../../src/viewer/DocumentSDK.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DocumentSDK.d.ts","sourceRoot":"","sources":["../../src/viewer/DocumentSDK.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rhc-office/sdk",
3
- "version": "6.6.351",
3
+ "version": "6.6.363",
4
4
  "description": "SDK for third-party integration with RHC Office Platform",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -95,6 +95,31 @@ export type AnnotationStampOptions =
95
95
  | AnnotationTextStampOptions
96
96
  | AnnotationImageStampOptions;
97
97
 
98
+ export interface AnnotationCustomTextStampInput {
99
+ fontFamily?: string;
100
+ fontSize: number;
101
+ name?: string;
102
+ text: string;
103
+ textColor: string;
104
+ }
105
+
106
+ export interface AnnotationCustomImageStampInput {
107
+ height?: number;
108
+ imageData: string;
109
+ mimeType?: string;
110
+ name?: string;
111
+ naturalHeight: number;
112
+ naturalWidth: number;
113
+ width?: number;
114
+ }
115
+
116
+ export interface AnnotationCustomStampRecord {
117
+ id: string;
118
+ name: string;
119
+ stamp: AnnotationStampOptions;
120
+ type: 'image' | 'text';
121
+ }
122
+
98
123
  export interface AnnotationTextBoxOptions {
99
124
  text?: string;
100
125
  fontFamily?: string;
@@ -267,6 +292,12 @@ export interface AnnotationTool {
267
292
 
268
293
  selectAnnotationStamp(stamp: AnnotationStampOptions): void;
269
294
 
295
+ getCustomStamps(): Promise<AnnotationCustomStampRecord[]>;
296
+
297
+ addCustomTextStamp(input: AnnotationCustomTextStampInput): Promise<AnnotationCustomStampRecord>;
298
+
299
+ addCustomImageStamp(input: AnnotationCustomImageStampInput): Promise<AnnotationCustomStampRecord>;
300
+
270
301
  setAnnotationPenColor(hexColor: string): void;
271
302
 
272
303
  setAnnotationPenWidth(penWidth: number): void;
@@ -28,6 +28,9 @@ export interface IFileOpenOptions {
28
28
  fontSize: number;
29
29
  };
30
30
  uploadUrl?: string;
31
+ headers?: Record<string, string>;
32
+ formData?: Record<string, string | number | boolean>;
33
+ fileFieldName?: string;
31
34
  readOnly?: boolean;
32
35
  fromCache?: boolean;
33
36
  viewMode?: 'view' | 'annotation' | 'digital-sign';
@@ -79,6 +79,9 @@ const ANNOTATION_TOOL_DESCRIPTOR: BridgeToolDescriptor = {
79
79
  canRedoAnnotation: { kind: 'query' },
80
80
  selectAnnotationTool: { kind: 'command' },
81
81
  selectAnnotationStamp: { kind: 'command' },
82
+ getCustomStamps: { kind: 'query' },
83
+ addCustomTextStamp: { kind: 'query' },
84
+ addCustomImageStamp: { kind: 'query' },
82
85
  setAnnotationPenColor: { kind: 'command' },
83
86
  setAnnotationPenWidth: { kind: 'command' },
84
87
  setAnnotationPenStyle: { kind: 'command' },
@@ -135,6 +138,18 @@ export class AnnotationToolImpl implements AnnotationTool {
135
138
  return this.adapter.selectAnnotationStamp(stamp);
136
139
  };
137
140
 
141
+ getCustomStamps: AnnotationTool['getCustomStamps'] = () => {
142
+ return this.adapter.getCustomStamps();
143
+ };
144
+
145
+ addCustomTextStamp: AnnotationTool['addCustomTextStamp'] = (input) => {
146
+ return this.adapter.addCustomTextStamp(input);
147
+ };
148
+
149
+ addCustomImageStamp: AnnotationTool['addCustomImageStamp'] = (input) => {
150
+ return this.adapter.addCustomImageStamp(input);
151
+ };
152
+
138
153
  setAnnotationPenColor: AnnotationTool['setAnnotationPenColor'] = (hexColor) => {
139
154
  return this.adapter.setAnnotationPenColor(hexColor);
140
155
  };
@@ -53,8 +53,26 @@ interface DocumentSDKRuntimeOptions {
53
53
  requestTimeoutMs?: number;
54
54
  }
55
55
 
56
+ type ReaderHostRuntimeKind = 'server' | 'browser-static' | 'mobile-webview' | 'desktop-shell';
57
+
58
+ interface ReaderHostRuntimeConfig {
59
+ hostKind?: ReaderHostRuntimeKind | (string & {});
60
+ server?: {
61
+ baseUrl?: string;
62
+ paths?: Record<string, string | undefined>;
63
+ };
64
+ }
65
+
56
66
  type NativeReaderEventName = 'documentLoaded' | 'documentStateChange' | 'documentError';
57
67
  type ReaderThemeCleanup = () => void;
68
+ const READER_RUNTIME_GLOBAL_KEY = '__RHC_OFFICE_READER_RUNTIME__' as const;
69
+ const READER_RUNTIME_PROPERTY_KEY = '__rhcOfficeReaderRuntimeConfig' as const;
70
+ type ReaderRuntimeBrowserGlobal = typeof globalThis & {
71
+ __RHC_OFFICE_READER_RUNTIME__?: ReaderHostRuntimeConfig;
72
+ };
73
+ type ReaderRuntimeElement = HTMLElement & {
74
+ [READER_RUNTIME_PROPERTY_KEY]?: ReaderHostRuntimeConfig;
75
+ };
58
76
  type CompatibleMediaQueryList = MediaQueryList & {
59
77
  addListener?: (listener: (event: MediaQueryListEvent) => void) => void;
60
78
  removeListener?: (listener: (event: MediaQueryListEvent) => void) => void;
@@ -248,6 +266,10 @@ export class DocumentSDK implements IDocumentSDK {
248
266
  private readerElement: HTMLElement | null = null;
249
267
  private readerId: string | null = null;
250
268
  private normalizedConfiguration: NormalizedReaderEmbedOptions | null = null;
269
+ private runtimeRestoreState: {
270
+ hadPreviousRuntime: boolean;
271
+ previousRuntime?: ReaderHostRuntimeConfig;
272
+ } | null = null;
251
273
  private sessionUser?: Parameters<IDocumentSDK['setSessionUser']>[0];
252
274
  private sessionData?: string;
253
275
  private readonly nativeEventCleanupCallbacks: Array<() => void> = [];
@@ -277,9 +299,9 @@ export class DocumentSDK implements IDocumentSDK {
277
299
  this.themeCleanup = null;
278
300
  this.normalizedConfiguration = this.normalizedConfiguration
279
301
  ? {
280
- ...this.normalizedConfiguration,
281
- theme,
282
- }
302
+ ...this.normalizedConfiguration,
303
+ theme,
304
+ }
283
305
  : null;
284
306
 
285
307
  if (!this.readerElement) {
@@ -356,6 +378,7 @@ export class DocumentSDK implements IDocumentSDK {
356
378
  this.mountToken += 1;
357
379
  this.cleanupNativeEventForwarders();
358
380
  this.cleanupThemeBinding();
381
+ this.restoreReaderRuntimeConfig();
359
382
 
360
383
  if (this.readerElement?.parentNode) {
361
384
  this.readerElement.parentNode.removeChild(this.readerElement);
@@ -460,6 +483,7 @@ export class DocumentSDK implements IDocumentSDK {
460
483
  this.readerId = readerId;
461
484
  this.bridge.setReaderId(readerId);
462
485
  applyReaderElementLayout(readerElement);
486
+ this.applyReaderRuntimeConfig(readerElement, configuration);
463
487
  const shouldUseCompactMode =
464
488
  configuration.compactViewer === true && configuration.keepPCMenu !== true;
465
489
  readerElement.toggleAttribute('data-sdk-compact-mode', shouldUseCompactMode);
@@ -496,6 +520,44 @@ export class DocumentSDK implements IDocumentSDK {
496
520
  }
497
521
  };
498
522
 
523
+ private applyReaderRuntimeConfig(
524
+ readerElement: HTMLElement,
525
+ configuration: NormalizedReaderEmbedOptions,
526
+ ): void {
527
+ this.restoreReaderRuntimeConfig();
528
+ const readerHost: ReaderHostRuntimeConfig = {
529
+ hostKind: 'server',
530
+ server: {
531
+ baseUrl: configuration.appUrl,
532
+ },
533
+ };
534
+
535
+ const runtimeElement = readerElement as ReaderRuntimeElement;
536
+ runtimeElement[READER_RUNTIME_PROPERTY_KEY] = readerHost;
537
+
538
+ const browserGlobal = globalThis as ReaderRuntimeBrowserGlobal;
539
+ const previousRuntime = browserGlobal[READER_RUNTIME_GLOBAL_KEY];
540
+ this.runtimeRestoreState = {
541
+ hadPreviousRuntime: previousRuntime !== undefined,
542
+ ...(previousRuntime !== undefined ? { previousRuntime } : {}),
543
+ };
544
+ browserGlobal[READER_RUNTIME_GLOBAL_KEY] = readerHost;
545
+ }
546
+
547
+ private restoreReaderRuntimeConfig(): void {
548
+ if (!this.runtimeRestoreState) {
549
+ return;
550
+ }
551
+
552
+ const browserGlobal = globalThis as ReaderRuntimeBrowserGlobal;
553
+ if (this.runtimeRestoreState.hadPreviousRuntime) {
554
+ browserGlobal[READER_RUNTIME_GLOBAL_KEY] = this.runtimeRestoreState.previousRuntime;
555
+ } else {
556
+ Reflect.deleteProperty(browserGlobal, READER_RUNTIME_GLOBAL_KEY);
557
+ }
558
+ this.runtimeRestoreState = null;
559
+ }
560
+
499
561
  private readonly bindNativeReaderEvents = (readerElement: HTMLElement): void => {
500
562
  this.cleanupNativeEventForwarders();
501
563