@rasterex/viewer 1.0.1 → 1.1.0

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 (168) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +3 -3
  3. package/dist/RasterexViewer.d.ts +11 -11
  4. package/dist/RasterexViewer.d.ts.map +1 -1
  5. package/dist/RasterexViewer.js +10 -10
  6. package/dist/RasterexViewer.js.map +1 -1
  7. package/dist/constants.d.ts +3 -3
  8. package/dist/constants.d.ts.map +1 -1
  9. package/dist/constants.js +3 -3
  10. package/dist/constants.js.map +1 -1
  11. package/dist/createDocumentViewer.d.ts +2 -2
  12. package/dist/createDocumentViewer.d.ts.map +1 -1
  13. package/dist/createViewer.d.ts +1 -1
  14. package/dist/createViewer.d.ts.map +1 -1
  15. package/dist/domains/annotations/AnnotationsApi.d.ts +27 -0
  16. package/dist/domains/annotations/AnnotationsApi.d.ts.map +1 -0
  17. package/dist/domains/{AnnotationsApi.js → annotations/AnnotationsApi.js} +5 -5
  18. package/dist/domains/annotations/AnnotationsApi.js.map +1 -0
  19. package/dist/domains/annotations/internalTypes.d.ts +27 -0
  20. package/dist/domains/annotations/internalTypes.d.ts.map +1 -0
  21. package/dist/domains/annotations/internalTypes.js +2 -0
  22. package/dist/domains/annotations/internalTypes.js.map +1 -0
  23. package/dist/domains/{AnnotationsApi.d.ts → annotations/types.d.ts} +3 -27
  24. package/dist/domains/annotations/types.d.ts.map +1 -0
  25. package/dist/domains/annotations/types.js.map +1 -0
  26. package/dist/domains/blocks/BlocksApi.d.ts +27 -0
  27. package/dist/domains/blocks/BlocksApi.d.ts.map +1 -0
  28. package/dist/domains/{BlocksApi.js → blocks/BlocksApi.js} +4 -4
  29. package/dist/domains/blocks/BlocksApi.js.map +1 -0
  30. package/dist/domains/{BlocksApi.d.ts → blocks/types.d.ts} +3 -27
  31. package/dist/domains/blocks/types.d.ts.map +1 -0
  32. package/dist/domains/blocks/types.js +2 -0
  33. package/dist/domains/blocks/types.js.map +1 -0
  34. package/dist/domains/{CanvasApi.d.ts → canvas/CanvasApi.d.ts} +3 -4
  35. package/dist/domains/canvas/CanvasApi.d.ts.map +1 -0
  36. package/dist/domains/{CanvasApi.js → canvas/CanvasApi.js} +1 -1
  37. package/dist/domains/canvas/CanvasApi.js.map +1 -0
  38. package/dist/domains/{canvasBrokerCommands.d.ts → canvas/canvasBrokerCommands.d.ts} +2 -2
  39. package/dist/domains/canvas/canvasBrokerCommands.d.ts.map +1 -0
  40. package/dist/domains/{canvasBrokerCommands.js → canvas/canvasBrokerCommands.js} +2 -2
  41. package/dist/domains/canvas/canvasBrokerCommands.js.map +1 -0
  42. package/dist/domains/canvas/types.d.ts +5 -0
  43. package/dist/domains/canvas/types.d.ts.map +1 -0
  44. package/dist/domains/canvas/types.js +2 -0
  45. package/dist/domains/canvas/types.js.map +1 -0
  46. package/dist/domains/collaboration/CollaborationApi.d.ts +22 -0
  47. package/dist/domains/collaboration/CollaborationApi.d.ts.map +1 -0
  48. package/dist/domains/{CollaborationApi.js → collaboration/CollaborationApi.js} +3 -3
  49. package/dist/domains/collaboration/CollaborationApi.js.map +1 -0
  50. package/dist/domains/{CollaborationApi.d.ts → collaboration/types.d.ts} +3 -22
  51. package/dist/domains/collaboration/types.d.ts.map +1 -0
  52. package/dist/domains/collaboration/types.js +2 -0
  53. package/dist/domains/collaboration/types.js.map +1 -0
  54. package/dist/domains/compare/CompareApi.d.ts +27 -0
  55. package/dist/domains/compare/CompareApi.d.ts.map +1 -0
  56. package/dist/domains/{CompareApi.js → compare/CompareApi.js} +7 -2
  57. package/dist/domains/compare/CompareApi.js.map +1 -0
  58. package/dist/domains/compare/internalTypes.d.ts +7 -0
  59. package/dist/domains/compare/internalTypes.d.ts.map +1 -0
  60. package/dist/domains/compare/internalTypes.js +2 -0
  61. package/dist/domains/compare/internalTypes.js.map +1 -0
  62. package/dist/domains/{CompareApi.d.ts → compare/types.d.ts} +5 -22
  63. package/dist/domains/compare/types.d.ts.map +1 -0
  64. package/dist/domains/compare/types.js +2 -0
  65. package/dist/domains/compare/types.js.map +1 -0
  66. package/dist/domains/documents/DocumentsApi.d.ts +39 -0
  67. package/dist/domains/documents/DocumentsApi.d.ts.map +1 -0
  68. package/dist/domains/{DocumentsApi.js → documents/DocumentsApi.js} +47 -171
  69. package/dist/domains/documents/DocumentsApi.js.map +1 -0
  70. package/dist/domains/documents/openLifecycle.d.ts +26 -0
  71. package/dist/domains/documents/openLifecycle.d.ts.map +1 -0
  72. package/dist/domains/documents/openLifecycle.js +114 -0
  73. package/dist/domains/documents/openLifecycle.js.map +1 -0
  74. package/dist/domains/documents/pageManipulation.d.ts +4 -0
  75. package/dist/domains/documents/pageManipulation.d.ts.map +1 -0
  76. package/dist/domains/documents/pageManipulation.js +57 -0
  77. package/dist/domains/documents/pageManipulation.js.map +1 -0
  78. package/dist/domains/{DocumentsApi.d.ts → documents/types.d.ts} +23 -39
  79. package/dist/domains/documents/types.d.ts.map +1 -0
  80. package/dist/domains/documents/types.js +2 -0
  81. package/dist/domains/documents/types.js.map +1 -0
  82. package/dist/domains/layers/LayersApi.d.ts +24 -0
  83. package/dist/domains/layers/LayersApi.d.ts.map +1 -0
  84. package/dist/domains/{LayersApi.js → layers/LayersApi.js} +4 -4
  85. package/dist/domains/layers/LayersApi.js.map +1 -0
  86. package/dist/domains/{LayersApi.d.ts → layers/types.d.ts} +3 -24
  87. package/dist/domains/layers/types.d.ts.map +1 -0
  88. package/dist/domains/layers/types.js +2 -0
  89. package/dist/domains/layers/types.js.map +1 -0
  90. package/dist/domains/measurements/MeasurementsApi.d.ts +41 -0
  91. package/dist/domains/measurements/MeasurementsApi.d.ts.map +1 -0
  92. package/dist/domains/{MeasurementsApi.js → measurements/MeasurementsApi.js} +4 -4
  93. package/dist/domains/measurements/MeasurementsApi.js.map +1 -0
  94. package/dist/domains/{MeasurementsApi.d.ts → measurements/types.d.ts} +5 -43
  95. package/dist/domains/measurements/types.d.ts.map +1 -0
  96. package/dist/domains/measurements/types.js +2 -0
  97. package/dist/domains/measurements/types.js.map +1 -0
  98. package/dist/domains/styles/StylesApi.d.ts +10 -0
  99. package/dist/domains/styles/StylesApi.d.ts.map +1 -0
  100. package/dist/domains/{StylesApi.js → styles/StylesApi.js} +2 -2
  101. package/dist/domains/styles/StylesApi.js.map +1 -0
  102. package/dist/domains/{StylesApi.d.ts → styles/types.d.ts} +2 -9
  103. package/dist/domains/styles/types.d.ts.map +1 -0
  104. package/dist/domains/styles/types.js +2 -0
  105. package/dist/domains/styles/types.js.map +1 -0
  106. package/dist/domains/tools/ToolsApi.d.ts +25 -0
  107. package/dist/domains/tools/ToolsApi.d.ts.map +1 -0
  108. package/dist/domains/tools/ToolsApi.js +57 -0
  109. package/dist/domains/tools/ToolsApi.js.map +1 -0
  110. package/dist/domains/tools/ToolsNavigationApi.d.ts +11 -0
  111. package/dist/domains/tools/ToolsNavigationApi.d.ts.map +1 -0
  112. package/dist/domains/tools/ToolsNavigationApi.js +38 -0
  113. package/dist/domains/tools/ToolsNavigationApi.js.map +1 -0
  114. package/dist/domains/tools/ToolsStampsApi.d.ts +20 -0
  115. package/dist/domains/tools/ToolsStampsApi.d.ts.map +1 -0
  116. package/dist/domains/tools/ToolsStampsApi.js +43 -0
  117. package/dist/domains/tools/ToolsStampsApi.js.map +1 -0
  118. package/dist/domains/tools/ToolsSymbolsApi.d.ts +19 -0
  119. package/dist/domains/tools/ToolsSymbolsApi.d.ts.map +1 -0
  120. package/dist/domains/tools/ToolsSymbolsApi.js +29 -0
  121. package/dist/domains/tools/ToolsSymbolsApi.js.map +1 -0
  122. package/dist/domains/tools/ToolsThreeDApi.d.ts +21 -0
  123. package/dist/domains/tools/ToolsThreeDApi.d.ts.map +1 -0
  124. package/dist/domains/tools/ToolsThreeDApi.js +82 -0
  125. package/dist/domains/tools/ToolsThreeDApi.js.map +1 -0
  126. package/dist/domains/tools/ToolsToolbarApi.d.ts +11 -0
  127. package/dist/domains/tools/ToolsToolbarApi.d.ts.map +1 -0
  128. package/dist/domains/tools/ToolsToolbarApi.js +43 -0
  129. package/dist/domains/tools/ToolsToolbarApi.js.map +1 -0
  130. package/dist/domains/{ToolsApi.d.ts → tools/types.d.ts} +3 -91
  131. package/dist/domains/tools/types.d.ts.map +1 -0
  132. package/dist/domains/tools/types.js +2 -0
  133. package/dist/domains/tools/types.js.map +1 -0
  134. package/dist/index.d.ts +21 -21
  135. package/dist/index.d.ts.map +1 -1
  136. package/dist/index.js +10 -10
  137. package/dist/index.js.map +1 -1
  138. package/dist/{types.d.ts → types/index.d.ts} +2 -2
  139. package/dist/types/index.d.ts.map +1 -0
  140. package/dist/types/index.js +2 -0
  141. package/dist/types/index.js.map +1 -0
  142. package/package.json +3 -2
  143. package/dist/domains/AnnotationsApi.d.ts.map +0 -1
  144. package/dist/domains/AnnotationsApi.js.map +0 -1
  145. package/dist/domains/BlocksApi.d.ts.map +0 -1
  146. package/dist/domains/BlocksApi.js.map +0 -1
  147. package/dist/domains/CanvasApi.d.ts.map +0 -1
  148. package/dist/domains/CanvasApi.js.map +0 -1
  149. package/dist/domains/CollaborationApi.d.ts.map +0 -1
  150. package/dist/domains/CollaborationApi.js.map +0 -1
  151. package/dist/domains/CompareApi.d.ts.map +0 -1
  152. package/dist/domains/CompareApi.js.map +0 -1
  153. package/dist/domains/DocumentsApi.d.ts.map +0 -1
  154. package/dist/domains/DocumentsApi.js.map +0 -1
  155. package/dist/domains/LayersApi.d.ts.map +0 -1
  156. package/dist/domains/LayersApi.js.map +0 -1
  157. package/dist/domains/MeasurementsApi.d.ts.map +0 -1
  158. package/dist/domains/MeasurementsApi.js.map +0 -1
  159. package/dist/domains/StylesApi.d.ts.map +0 -1
  160. package/dist/domains/StylesApi.js.map +0 -1
  161. package/dist/domains/ToolsApi.d.ts.map +0 -1
  162. package/dist/domains/ToolsApi.js +0 -275
  163. package/dist/domains/ToolsApi.js.map +0 -1
  164. package/dist/domains/canvasBrokerCommands.d.ts.map +0 -1
  165. package/dist/domains/canvasBrokerCommands.js.map +0 -1
  166. package/dist/types.d.ts.map +0 -1
  167. package/dist/types.js.map +0 -1
  168. /package/dist/{types.js → domains/annotations/types.js} +0 -0
@@ -0,0 +1,5 @@
1
+ import type { CanvasMessageBroker } from "../../messaging/CanvasMessageBroker.js";
2
+ export interface CanvasApiOptions {
3
+ getBroker: () => CanvasMessageBroker | null;
4
+ }
5
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/domains/canvas/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,wCAAwC,CAAC;AAElF,MAAM,WAAW,gBAAgB;IAC/B,SAAS,EAAE,MAAM,mBAAmB,GAAG,IAAI,CAAC;CAC7C"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/domains/canvas/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,22 @@
1
+ import type { CollaborationApiOptions, CollaborationConfigPayload, CollaborationEnableOptions, CollaborationEventHandler, CollaborationEventName, CollaborationEventUnsubscribe, SetUserOptions, SetUserResultPayload } from "./types.js";
2
+ export type * from "./types.js";
3
+ export declare class CollaborationApi {
4
+ private readonly options;
5
+ private readonly events;
6
+ private broker;
7
+ private brokerCleanups;
8
+ private setUserInProgress;
9
+ constructor(options: CollaborationApiOptions);
10
+ on<TEventName extends CollaborationEventName>(eventName: TEventName, handler: CollaborationEventHandler<TEventName>): CollaborationEventUnsubscribe;
11
+ connect(): void;
12
+ disconnect(): void;
13
+ setUser(options: SetUserOptions): Promise<SetUserResultPayload>;
14
+ configure(payload: CollaborationConfigPayload): void;
15
+ enable(options?: CollaborationEnableOptions): void;
16
+ disable(options?: CollaborationEnableOptions): void;
17
+ private sendCollaboration;
18
+ private validateUserPayload;
19
+ private validateConfigPayload;
20
+ private validateTooltip;
21
+ }
22
+ //# sourceMappingURL=CollaborationApi.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CollaborationApi.d.ts","sourceRoot":"","sources":["../../../src/domains/collaboration/CollaborationApi.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EACV,uBAAuB,EACvB,0BAA0B,EAC1B,0BAA0B,EAC1B,yBAAyB,EAEzB,sBAAsB,EACtB,6BAA6B,EAG7B,cAAc,EACd,oBAAoB,EACrB,MAAM,YAAY,CAAC;AACpB,mBAAmB,YAAY,CAAC;AAEhC,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA0B;IAClD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAmD;IAC1E,OAAO,CAAC,MAAM,CAAoC;IAClD,OAAO,CAAC,cAAc,CAAkC;IACxD,OAAO,CAAC,iBAAiB,CAAS;gBAEtB,OAAO,EAAE,uBAAuB;IAI5C,EAAE,CAAC,UAAU,SAAS,sBAAsB,EAC1C,SAAS,EAAE,UAAU,EACrB,OAAO,EAAE,yBAAyB,CAAC,UAAU,CAAC,GAC7C,6BAA6B;IAKhC,OAAO,IAAI,IAAI;IAkBf,UAAU,IAAI,IAAI;IAUlB,OAAO,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,oBAAoB,CAAC;IA2C/D,SAAS,CAAC,OAAO,EAAE,0BAA0B,GAAG,IAAI;IAKpD,MAAM,CAAC,OAAO,GAAE,0BAA+B,GAAG,IAAI;IAQtD,OAAO,CAAC,OAAO,GAAE,0BAA+B,GAAG,IAAI;IAQvD,OAAO,CAAC,iBAAiB;IAQzB,OAAO,CAAC,mBAAmB;IAgC3B,OAAO,CAAC,qBAAqB;IA8D7B,OAAO,CAAC,eAAe;CAiDxB"}
@@ -1,6 +1,6 @@
1
- import { DomainEventEmitter } from "../utils/DomainEventEmitter.js";
2
- import { createCommandTimeoutError } from "../errors.js";
3
- import { createCanvasCommandError, requireReadyBroker } from "./canvasBrokerCommands.js";
1
+ import { DomainEventEmitter } from "../../utils/DomainEventEmitter.js";
2
+ import { createCommandTimeoutError } from "../../errors.js";
3
+ import { createCanvasCommandError, requireReadyBroker } from "../canvas/canvasBrokerCommands.js";
4
4
  export class CollaborationApi {
5
5
  constructor(options) {
6
6
  this.events = new DomainEventEmitter();
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CollaborationApi.js","sourceRoot":"","sources":["../../../src/domains/collaboration/CollaborationApi.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
- import { type DomainEventHandler, type DomainEventUnsubscribe } from "../utils/DomainEventEmitter.js";
2
- import type { CanvasMessageBroker } from "../messaging/CanvasMessageBroker.js";
1
+ import type { CanvasMessageBroker } from "../../messaging/CanvasMessageBroker.js";
2
+ import type { DomainEventHandler, DomainEventUnsubscribe } from "../../utils/DomainEventEmitter.js";
3
3
  export interface CollaborationUserPayload {
4
4
  username: string;
5
5
  displayName?: string;
@@ -43,23 +43,4 @@ export interface CollaborationApiOptions {
43
43
  getIsReady: () => boolean;
44
44
  commandTimeoutMs: number;
45
45
  }
46
- export declare class CollaborationApi {
47
- private readonly options;
48
- private readonly events;
49
- private broker;
50
- private brokerCleanups;
51
- private setUserInProgress;
52
- constructor(options: CollaborationApiOptions);
53
- on<TEventName extends CollaborationEventName>(eventName: TEventName, handler: CollaborationEventHandler<TEventName>): CollaborationEventUnsubscribe;
54
- connect(): void;
55
- disconnect(): void;
56
- setUser(options: SetUserOptions): Promise<SetUserResultPayload>;
57
- configure(payload: CollaborationConfigPayload): void;
58
- enable(options?: CollaborationEnableOptions): void;
59
- disable(options?: CollaborationEnableOptions): void;
60
- private sendCollaboration;
61
- private validateUserPayload;
62
- private validateConfigPayload;
63
- private validateTooltip;
64
- }
65
- //# sourceMappingURL=CollaborationApi.d.ts.map
46
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/domains/collaboration/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,wCAAwC,CAAC;AAClF,OAAO,KAAK,EACV,kBAAkB,EAClB,sBAAsB,EACvB,MAAM,mCAAmC,CAAC;AAE3C,MAAM,WAAW,wBAAwB;IACvC,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,0BAA0B;IACzC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,CAAC,MAAM,GAAG,QAAQ,EAAE,MAAM,CAAC,CAAC;CACxC;AAED,MAAM,WAAW,0BAA0B;IACzC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,oBAAoB,CAAC,EAAE,0BAA0B,CAAC;IAClD,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED,MAAM,MAAM,0BAA0B,GAAG,IAAI,CAC3C,0BAA0B,EAC1B,SAAS,GAAG,gBAAgB,CAC7B,CAAC;AAEF,MAAM,WAAW,cAAe,SAAQ,wBAAwB;IAC9D,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,qBAAqB;IACpC,aAAa,EAAE,oBAAoB,CAAC;CACrC;AAED,MAAM,MAAM,sBAAsB,GAAG,MAAM,qBAAqB,CAAC;AACjE,MAAM,MAAM,yBAAyB,CAAC,UAAU,SAAS,sBAAsB,IAC7E,kBAAkB,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAC,CAAC;AACxD,MAAM,MAAM,6BAA6B,GAAG,sBAAsB,CAAC;AAEnE,MAAM,WAAW,uBAAuB;IACtC,SAAS,EAAE,MAAM,mBAAmB,GAAG,IAAI,CAAC;IAC5C,UAAU,EAAE,MAAM,OAAO,CAAC;IAC1B,gBAAgB,EAAE,MAAM,CAAC;CAC1B"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/domains/collaboration/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,27 @@
1
+ import type { CompareAlignPayload, CompareApiOptions, CompareEventHandler, CompareEventName, CompareEventUnsubscribe, CompareSaveOptions } from "./types.js";
2
+ export type * from "./types.js";
3
+ export declare class CompareApi {
4
+ private readonly options;
5
+ private readonly events;
6
+ private broker;
7
+ private brokerCleanups;
8
+ private pendingCommand;
9
+ constructor(options: CompareApiOptions);
10
+ on<TEventName extends CompareEventName>(eventName: TEventName, handler: CompareEventHandler<TEventName>): CompareEventUnsubscribe;
11
+ connect(): void;
12
+ disconnect(): void;
13
+ compare(payload: CompareAlignPayload): void;
14
+ align(payload: CompareAlignPayload): void;
15
+ /**
16
+ * @deprecated Canvas comparison-markup save is not supported for new
17
+ * integrations. This compatibility method may be removed in a future major
18
+ * SDK release.
19
+ */
20
+ save(options?: CompareSaveOptions | string): void;
21
+ private send;
22
+ private requireNoPendingCommand;
23
+ private clearPendingCommand;
24
+ private validateCompareAlignPayload;
25
+ private validateColor;
26
+ }
27
+ //# sourceMappingURL=CompareApi.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CompareApi.d.ts","sourceRoot":"","sources":["../../../src/domains/compare/CompareApi.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EACV,mBAAmB,EACnB,iBAAiB,EACjB,mBAAmB,EAEnB,gBAAgB,EAChB,uBAAuB,EAGvB,kBAAkB,EACnB,MAAM,YAAY,CAAC;AAEpB,mBAAmB,YAAY,CAAC;AAEhC,qBAAa,UAAU;IACrB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAoB;IAC5C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA6C;IACpE,OAAO,CAAC,MAAM,CAAoC;IAClD,OAAO,CAAC,cAAc,CAAkC;IACxD,OAAO,CAAC,cAAc,CAAsC;gBAEhD,OAAO,EAAE,iBAAiB;IAItC,EAAE,CAAC,UAAU,SAAS,gBAAgB,EACpC,SAAS,EAAE,UAAU,EACrB,OAAO,EAAE,mBAAmB,CAAC,UAAU,CAAC,GACvC,uBAAuB;IAK1B,OAAO,IAAI,IAAI;IAqEf,UAAU,IAAI,IAAI;IAUlB,OAAO,CAAC,OAAO,EAAE,mBAAmB,GAAG,IAAI;IAK3C,KAAK,CAAC,OAAO,EAAE,mBAAmB,GAAG,IAAI;IAKzC;;;;OAIG;IACH,IAAI,CAAC,OAAO,GAAE,kBAAkB,GAAG,MAAW,GAAG,IAAI;IA8CrD,OAAO,CAAC,IAAI;IAwBZ,OAAO,CAAC,uBAAuB;IAc/B,OAAO,CAAC,mBAAmB;IAI3B,OAAO,CAAC,2BAA2B;IAoGnC,OAAO,CAAC,aAAa;CAoBtB"}
@@ -1,5 +1,5 @@
1
- import { DomainEventEmitter } from "../utils/DomainEventEmitter.js";
2
- import { createCanvasCommandError, requireReadyBroker } from "./canvasBrokerCommands.js";
1
+ import { DomainEventEmitter } from "../../utils/DomainEventEmitter.js";
2
+ import { createCanvasCommandError, requireReadyBroker } from "../canvas/canvasBrokerCommands.js";
3
3
  export class CompareApi {
4
4
  constructor(options) {
5
5
  this.events = new DomainEventEmitter();
@@ -85,6 +85,11 @@ export class CompareApi {
85
85
  this.validateCompareAlignPayload("align", payload);
86
86
  this.send("align", payload, isInteractiveAlignPayload(payload));
87
87
  }
88
+ /**
89
+ * @deprecated Canvas comparison-markup save is not supported for new
90
+ * integrations. This compatibility method may be removed in a future major
91
+ * SDK release.
92
+ */
88
93
  save(options = {}) {
89
94
  const payload = typeof options === "string"
90
95
  ? options
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CompareApi.js","sourceRoot":"","sources":["../../../src/domains/compare/CompareApi.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ export type ComparePendingCommand = "compare" | "align" | "compareSave";
2
+ export interface PendingCompareCommand {
3
+ type: ComparePendingCommand;
4
+ waitsForInteractiveAlignResult: boolean;
5
+ completed: boolean;
6
+ }
7
+ //# sourceMappingURL=internalTypes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"internalTypes.d.ts","sourceRoot":"","sources":["../../../src/domains/compare/internalTypes.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,qBAAqB,GAAG,SAAS,GAAG,OAAO,GAAG,aAAa,CAAC;AAExE,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,qBAAqB,CAAC;IAC5B,8BAA8B,EAAE,OAAO,CAAC;IACxC,SAAS,EAAE,OAAO,CAAC;CACpB"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=internalTypes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"internalTypes.js","sourceRoot":"","sources":["../../../src/domains/compare/internalTypes.ts"],"names":[],"mappings":""}
@@ -1,5 +1,5 @@
1
- import { type DomainEventHandler, type DomainEventUnsubscribe } from "../utils/DomainEventEmitter.js";
2
- import type { CanvasMessageBroker } from "../messaging/CanvasMessageBroker.js";
1
+ import type { CanvasMessageBroker } from "../../messaging/CanvasMessageBroker.js";
2
+ import type { DomainEventHandler, DomainEventUnsubscribe } from "../../utils/DomainEventEmitter.js";
3
3
  export interface CompareAlignPayload {
4
4
  backgroundUrl?: string;
5
5
  overlayUrl?: string;
@@ -14,6 +14,7 @@ export interface CompareAlignPayload {
14
14
  }
15
15
  export interface ComparisonResult {
16
16
  relativePath: string;
17
+ outputFileUrl: string;
17
18
  activeFile: unknown;
18
19
  otherFile: unknown;
19
20
  activeFileUrl?: string;
@@ -37,6 +38,7 @@ export interface ComparisonErrorPayload {
37
38
  export interface CompareProgressStartEvent {
38
39
  message: string;
39
40
  }
41
+ /** @deprecated Canvas comparison-markup save is compatibility-only. */
40
42
  export interface CompareSaveOptions {
41
43
  outputName?: string;
42
44
  }
@@ -55,23 +57,4 @@ export interface CompareApiOptions {
55
57
  getBroker: () => CanvasMessageBroker | null;
56
58
  getIsReady: () => boolean;
57
59
  }
58
- export declare class CompareApi {
59
- private readonly options;
60
- private readonly events;
61
- private broker;
62
- private brokerCleanups;
63
- private pendingCommand;
64
- constructor(options: CompareApiOptions);
65
- on<TEventName extends CompareEventName>(eventName: TEventName, handler: CompareEventHandler<TEventName>): CompareEventUnsubscribe;
66
- connect(): void;
67
- disconnect(): void;
68
- compare(payload: CompareAlignPayload): void;
69
- align(payload: CompareAlignPayload): void;
70
- save(options?: CompareSaveOptions | string): void;
71
- private send;
72
- private requireNoPendingCommand;
73
- private clearPendingCommand;
74
- private validateCompareAlignPayload;
75
- private validateColor;
76
- }
77
- //# sourceMappingURL=CompareApi.d.ts.map
60
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/domains/compare/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,wCAAwC,CAAC;AAClF,OAAO,KAAK,EACV,kBAAkB,EAClB,sBAAsB,EACvB,MAAM,mCAAmC,CAAC;AAE3C,MAAM,WAAW,mBAAmB;IAClC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;CAC7C;AAED,MAAM,WAAW,gBAAgB;IAC/B,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,OAAO,CAAC;IACpB,SAAS,EAAE,OAAO,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,UAAU,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IAC5C,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,SAAS,GAAG,OAAO,CAAC;IAC3B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,sBAAsB;IACrC,IAAI,CAAC,EAAE,SAAS,GAAG,OAAO,CAAC;IAC3B,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,yBAAyB;IACxC,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,uEAAuE;AACvE,MAAM,WAAW,kBAAkB;IACjC,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,eAAe;IAC9B,aAAa,EAAE,yBAAyB,CAAC;IACzC,WAAW,EAAE,SAAS,CAAC;IACvB,kBAAkB,EAAE,gBAAgB,GAAG,SAAS,CAAC;IACjD,eAAe,EAAE,sBAAsB,CAAC;IACxC,mBAAmB,EAAE,MAAM,GAAG,SAAS,CAAC;IACxC,uBAAuB,EAAE,OAAO,CAAC;CAClC;AAED,MAAM,MAAM,gBAAgB,GAAG,MAAM,eAAe,CAAC;AACrD,MAAM,MAAM,mBAAmB,CAAC,UAAU,SAAS,gBAAgB,IACjE,kBAAkB,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC,CAAC;AAClD,MAAM,MAAM,uBAAuB,GAAG,sBAAsB,CAAC;AAE7D,MAAM,WAAW,iBAAiB;IAChC,SAAS,EAAE,MAAM,mBAAmB,GAAG,IAAI,CAAC;IAC5C,UAAU,EAAE,MAAM,OAAO,CAAC;CAC3B"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/domains/compare/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,39 @@
1
+ import type { DocumentEventHandler, DocumentEventName, DocumentEventUnsubscribe, DocumentExportOptions, DocumentExportResult, DocumentOpenFileOptions, DocumentOpenOptions, DocumentOpenResult, DocumentsApiOptions, PageManipulationOptions, PageManipulationResult, SelectPageOptions, SetActiveFileByIndexOptions } from "./types.js";
2
+ export type * from "./types.js";
3
+ export declare class DocumentsApi {
4
+ private readonly getBroker;
5
+ private readonly getIsReady;
6
+ private readonly commandTimeoutMs;
7
+ private readonly events;
8
+ private activeOpenRequestId;
9
+ private pendingOpenCancellation;
10
+ private exportInProgress;
11
+ private broker;
12
+ private brokerCleanups;
13
+ constructor(options: DocumentsApiOptions);
14
+ on<TEventName extends DocumentEventName>(eventName: TEventName, handler: DocumentEventHandler<TEventName>): DocumentEventUnsubscribe;
15
+ connect(): void;
16
+ disconnect(): void;
17
+ open(options: DocumentOpenOptions): Promise<DocumentOpenResult>;
18
+ /**
19
+ * @deprecated Browser `File` opens are not ready for application integration.
20
+ * Do not use this method in new integrations until the Canvas local-file issue
21
+ * is resolved. The method remains available for compatibility.
22
+ */
23
+ openFile(file: File, options?: DocumentOpenFileOptions): Promise<DocumentOpenResult>;
24
+ setActiveFileByIndex(indexOrOptions: number | SetActiveFileByIndexOptions): void;
25
+ selectPage(options: SelectPageOptions): void;
26
+ export(options?: DocumentExportOptions): Promise<DocumentExportResult>;
27
+ print(): void;
28
+ manipulatePages(options: PageManipulationOptions): Promise<PageManipulationResult>;
29
+ private getOpenSetupError;
30
+ private getOpenFileSetupError;
31
+ private requireReadyBroker;
32
+ private waitForCanvasOpen;
33
+ private createViewPayload;
34
+ private createViewFilePayload;
35
+ private emitOpened;
36
+ private emitPageChanged;
37
+ private emitFailed;
38
+ }
39
+ //# sourceMappingURL=DocumentsApi.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DocumentsApi.d.ts","sourceRoot":"","sources":["../../../src/domains/documents/DocumentsApi.ts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EAIV,oBAAoB,EAEpB,iBAAiB,EACjB,wBAAwB,EACxB,qBAAqB,EACrB,oBAAoB,EAGpB,uBAAuB,EACvB,mBAAmB,EAEnB,kBAAkB,EAClB,mBAAmB,EACnB,uBAAuB,EACvB,sBAAsB,EACtB,iBAAiB,EACjB,2BAA2B,EAC5B,MAAM,YAAY,CAAC;AACpB,mBAAmB,YAAY,CAAC;AAEhC,qBAAa,YAAY;IACvB,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAmC;IAC7D,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAgB;IAC3C,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAS;IAC1C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA8C;IACrE,OAAO,CAAC,mBAAmB,CAAuB;IAClD,OAAO,CAAC,uBAAuB,CAAuD;IACtF,OAAO,CAAC,gBAAgB,CAAS;IACjC,OAAO,CAAC,MAAM,CAAoC;IAClD,OAAO,CAAC,cAAc,CAAkC;gBAE5C,OAAO,EAAE,mBAAmB;IAMxC,EAAE,CAAC,UAAU,SAAS,iBAAiB,EACrC,SAAS,EAAE,UAAU,EACrB,OAAO,EAAE,oBAAoB,CAAC,UAAU,CAAC,GACxC,wBAAwB;IAK3B,OAAO,IAAI,IAAI;IA4Cf,UAAU,IAAI,IAAI;IAelB,IAAI,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAiC/D;;;;OAIG;IACH,QAAQ,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,GAAE,uBAA4B,GAAG,OAAO,CAAC,kBAAkB,CAAC;IA8CxF,oBAAoB,CAAC,cAAc,EAAE,MAAM,GAAG,2BAA2B,GAAG,IAAI;IAUhF,UAAU,CAAC,OAAO,EAAE,iBAAiB,GAAG,IAAI;IAkB5C,MAAM,CAAC,OAAO,GAAE,qBAA0B,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAwC1E,KAAK,IAAI,IAAI;IAKb,eAAe,CAAC,OAAO,EAAE,uBAAuB,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAKlF,OAAO,CAAC,iBAAiB;IA8BzB,OAAO,CAAC,qBAAqB;IAuB7B,OAAO,CAAC,kBAAkB;IAwB1B,OAAO,CAAC,iBAAiB;IAsCzB,OAAO,CAAC,iBAAiB;IAezB,OAAO,CAAC,qBAAqB;IAc7B,OAAO,CAAC,UAAU;IAWlB,OAAO,CAAC,eAAe;IAWvB,OAAO,CAAC,UAAU;CAWnB"}
@@ -1,6 +1,8 @@
1
- import { createCommandTimeoutError, createDocumentLoadFailedError, createViewerNotReadyError } from "../errors.js";
2
- import { DomainEventEmitter } from "../utils/DomainEventEmitter.js";
3
- import { createRequestId } from "../utils/createRequestId.js";
1
+ import { createDocumentLoadFailedError, createViewerNotReadyError } from "../../errors.js";
2
+ import { DomainEventEmitter } from "../../utils/DomainEventEmitter.js";
3
+ import { createRequestId } from "../../utils/createRequestId.js";
4
+ import { createDocumentOpenOperation, isDocumentFileLoadFailedEvent, isDocumentFileReadyEvent } from "./openLifecycle.js";
5
+ import { manipulateDocumentPages } from "./pageManipulation.js";
4
6
  export class DocumentsApi {
5
7
  constructor(options) {
6
8
  this.events = new DomainEventEmitter();
@@ -45,6 +47,16 @@ export class DocumentsApi {
45
47
  if (isDocumentExportResult(message.payload)) {
46
48
  this.events.emit("exportComplete", message.payload);
47
49
  }
50
+ }),
51
+ broker.on("fileReady", (message) => {
52
+ if (isDocumentFileReadyEvent(message.payload)) {
53
+ this.events.emit("fileReady", message.payload);
54
+ }
55
+ }),
56
+ broker.on("fileLoadFailed", (message) => {
57
+ if (isDocumentFileLoadFailedEvent(message.payload)) {
58
+ this.events.emit("fileLoadFailed", message.payload);
59
+ }
48
60
  })
49
61
  ];
50
62
  }
@@ -74,11 +86,18 @@ export class DocumentsApi {
74
86
  broker,
75
87
  options,
76
88
  requestId,
89
+ source: "url",
90
+ requiresRequestId: true,
77
91
  send: () => {
78
92
  broker.send("viewAny", this.createViewPayload(options, requestId));
79
93
  }
80
94
  });
81
95
  }
96
+ /**
97
+ * @deprecated Browser `File` opens are not ready for application integration.
98
+ * Do not use this method in new integrations until the Canvas local-file issue
99
+ * is resolved. The method remains available for compatibility.
100
+ */
82
101
  openFile(file, options = {}) {
83
102
  const setupError = this.getOpenFileSetupError(file);
84
103
  if (setupError) {
@@ -104,6 +123,8 @@ export class DocumentsApi {
104
123
  requestId
105
124
  },
106
125
  requestId,
126
+ source: "file",
127
+ requiresRequestId: false,
107
128
  send: () => {
108
129
  broker.send("viewFile", this.createViewFilePayload(file, options));
109
130
  }
@@ -161,60 +182,7 @@ export class DocumentsApi {
161
182
  }
162
183
  manipulatePages(options) {
163
184
  const broker = this.requireReadyBroker("pageManipulation");
164
- const requestId = createRequestId();
165
- const timeoutMs = options.timeoutMs ?? this.commandTimeoutMs;
166
- return new Promise((resolve, reject) => {
167
- const cleanup = broker.on("pageManipulationResult", (message) => {
168
- const resultPayload = message.payload;
169
- const responseRequestId = getResultRequestId(message);
170
- if (!responseRequestId) {
171
- globalThis.clearTimeout(timeoutId);
172
- cleanup();
173
- reject(createDocumentLoadFailedError("Page manipulation result did not include a requestId.", {
174
- requestId,
175
- result: resultPayload
176
- }));
177
- return;
178
- }
179
- if (responseRequestId !== requestId) {
180
- return;
181
- }
182
- globalThis.clearTimeout(timeoutId);
183
- cleanup();
184
- if (!resultPayload) {
185
- reject(createDocumentLoadFailedError("Canvas returned an empty page manipulation result.", {
186
- requestId
187
- }));
188
- return;
189
- }
190
- if (resultPayload.success === false) {
191
- reject(createDocumentLoadFailedError(resultPayload.error ?? "Page manipulation failed.", {
192
- requestId,
193
- result: resultPayload
194
- }));
195
- return;
196
- }
197
- resolve({
198
- ...resultPayload,
199
- requestId
200
- });
201
- });
202
- const timeoutId = globalThis.setTimeout(() => {
203
- cleanup();
204
- reject(createCommandTimeoutError(requestId, "pageManipulation", timeoutMs));
205
- }, timeoutMs);
206
- broker.send("pageManipulation", {
207
- requestId,
208
- action: options.action,
209
- pageRange: options.pageRange,
210
- targetPageIndex: options.targetPageIndex,
211
- file: options.file,
212
- selectedPages: options.selectedPages,
213
- count: options.count,
214
- width: options.width,
215
- height: options.height
216
- });
217
- });
185
+ return manipulateDocumentPages(broker, options, this.commandTimeoutMs);
218
186
  }
219
187
  getOpenSetupError(options) {
220
188
  if (!this.getIsReady()) {
@@ -261,120 +229,31 @@ export class DocumentsApi {
261
229
  return broker;
262
230
  }
263
231
  waitForCanvasOpen(context) {
264
- const { broker, options, requestId, send } = context;
265
- return new Promise((resolve, reject) => {
266
- const result = { requestId };
267
- let progressStarted = false;
268
- let progressEnded = false;
269
- let openedEmitted = false;
270
- let settled = false;
271
- let cancelOpen = null;
272
- const cleanupCallbacks = [];
273
- const cleanup = () => {
274
- globalThis.clearTimeout(timeoutId);
275
- this.clearActiveOpen(requestId);
276
- for (const cleanupCallback of cleanupCallbacks) {
277
- cleanupCallback();
232
+ const operation = createDocumentOpenOperation({
233
+ ...context,
234
+ timeoutMs: this.commandTimeoutMs,
235
+ onOpening: () => {
236
+ this.events.emit("opening", {
237
+ requestId: context.requestId,
238
+ url: context.options.url,
239
+ path: context.options.path,
240
+ displayName: context.options.displayName ?? context.options.name
241
+ });
242
+ },
243
+ onOpened: (result, correlation) => this.emitOpened(result, correlation),
244
+ onFailed: (error) => this.emitFailed(context.options, error),
245
+ onSettled: () => {
246
+ if (this.activeOpenRequestId === context.requestId) {
247
+ this.activeOpenRequestId = null;
278
248
  }
279
- if (this.pendingOpenCancellation === cancelOpen) {
249
+ if (this.pendingOpenCancellation === operation.cancel) {
280
250
  this.pendingOpenCancellation = null;
281
251
  }
282
- };
283
- const rejectOpen = (error) => {
284
- if (settled) {
285
- return;
286
- }
287
- settled = true;
288
- cleanup();
289
- this.emitFailed(options, error);
290
- reject(error);
291
- };
292
- const isCurrentPayload = (payload) => this.isCurrentOpenPayload(payload, requestId);
293
- const tryResolve = () => {
294
- if (this.isOpenComplete(result, progressStarted, progressEnded)) {
295
- settled = true;
296
- cleanup();
297
- if (!openedEmitted) {
298
- openedEmitted = true;
299
- this.emitOpened(result);
300
- }
301
- resolve(result);
302
- }
303
- };
304
- const timeoutId = globalThis.setTimeout(() => {
305
- rejectOpen(createDocumentLoadFailedError("Document open did not produce file metadata before timeout.", {
306
- timeoutMs: this.commandTimeoutMs
307
- }));
308
- }, this.commandTimeoutMs);
309
- cancelOpen = rejectOpen;
310
- this.pendingOpenCancellation = cancelOpen;
311
- cleanupCallbacks.push(broker.on("fileInfo", (message) => {
312
- if (!isCurrentPayload(message.payload)) {
313
- return;
314
- }
315
- result.fileInfo = message.payload;
316
- result.activeId = message.payload?.activeId ?? result.activeId;
317
- tryResolve();
318
- }));
319
- cleanupCallbacks.push(broker.on("fileTabs", (message) => {
320
- if (!isCurrentPayload(message.payload)) {
321
- return;
322
- }
323
- result.fileTabs = message.payload;
324
- result.activeId = message.payload?.activeId ?? result.activeId;
325
- tryResolve();
326
- }));
327
- cleanupCallbacks.push(broker.on("pageList", (message) => {
328
- if (!isCurrentPayload(message.payload)) {
329
- return;
330
- }
331
- result.pageList = message.payload;
332
- result.activeId = message.payload?.activeId ?? result.activeId;
333
- tryResolve();
334
- }));
335
- cleanupCallbacks.push(broker.on("progressStart", (message) => {
336
- if (!isCurrentPayload(message.payload)) {
337
- return;
338
- }
339
- progressStarted = true;
340
- tryResolve();
341
- }));
342
- cleanupCallbacks.push(broker.on("progressEnd", (message) => {
343
- if (!isCurrentPayload(message.payload)) {
344
- return;
345
- }
346
- progressEnded = true;
347
- tryResolve();
348
- }));
349
- this.events.emit("opening", {
350
- requestId,
351
- url: options.url,
352
- path: options.path,
353
- displayName: options.displayName ?? options.name
354
- });
355
- try {
356
- send();
357
- }
358
- catch (error) {
359
- rejectOpen(createDocumentLoadFailedError("Document open command could not be sent.", {
360
- requestId,
361
- cause: error instanceof Error ? error.message : String(error)
362
- }));
363
252
  }
364
253
  });
365
- }
366
- clearActiveOpen(requestId) {
367
- if (this.activeOpenRequestId === requestId) {
368
- this.activeOpenRequestId = null;
369
- }
370
- }
371
- isCurrentOpenPayload(payload, requestId) {
372
- return !payload?.requestId || payload.requestId === requestId;
373
- }
374
- isOpenComplete(result, progressStarted, progressEnded) {
375
- return (progressStarted &&
376
- progressEnded &&
377
- (result.fileInfo || result.fileTabs || result.pageList) !== undefined);
254
+ this.pendingOpenCancellation = operation.cancel;
255
+ operation.start();
256
+ return operation.promise;
378
257
  }
379
258
  createViewPayload(options, requestId) {
380
259
  return {
@@ -396,11 +275,11 @@ export class DocumentsApi {
396
275
  cacheId: options.cacheId
397
276
  };
398
277
  }
399
- emitOpened(result) {
278
+ emitOpened(result, correlation) {
400
279
  this.events.emit("opened", {
401
280
  ...result,
402
281
  source: "current-canvas",
403
- correlation: "inferred"
282
+ correlation
404
283
  });
405
284
  }
406
285
  emitPageChanged(payload) {
@@ -425,7 +304,4 @@ export class DocumentsApi {
425
304
  function isDocumentExportResult(payload) {
426
305
  return typeof payload?.fileUrl === "string" && payload.fileUrl.length > 0;
427
306
  }
428
- function getResultRequestId(message) {
429
- return message.payload?.requestId ?? message.requestId;
430
- }
431
307
  //# sourceMappingURL=DocumentsApi.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DocumentsApi.js","sourceRoot":"","sources":["../../../src/domains/documents/DocumentsApi.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,6BAA6B,EAC7B,yBAAyB,EAC1B,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AACvE,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AAKjE,OAAO,EACL,2BAA2B,EAC3B,6BAA6B,EAC7B,wBAAwB,EACzB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAyBhE,MAAM,OAAO,YAAY;IAWvB,YAAY,OAA4B;QAPvB,WAAM,GAAG,IAAI,kBAAkB,EAAoB,CAAC;QAC7D,wBAAmB,GAAkB,IAAI,CAAC;QAC1C,4BAAuB,GAAkD,IAAI,CAAC;QAC9E,qBAAgB,GAAG,KAAK,CAAC;QACzB,WAAM,GAA+B,IAAI,CAAC;QAC1C,mBAAc,GAA+B,EAAE,CAAC;QAGtD,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;QACnC,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;QACrC,IAAI,CAAC,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,CAAC;IACnD,CAAC;IAED,EAAE,CACA,SAAqB,EACrB,OAAyC;QAEzC,IAAI,CAAC,OAAO,EAAE,CAAC;QACf,OAAO,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IAC5C,CAAC;IAED,OAAO;QACL,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;QAEhC,IAAI,CAAC,MAAM,IAAI,MAAM,KAAK,IAAI,CAAC,MAAM,EAAE,CAAC;YACtC,OAAO;QACT,CAAC;QAED,IAAI,CAAC,UAAU,EAAE,CAAC;QAClB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,cAAc,GAAG;YACpB,MAAM,CAAC,EAAE,CAAwB,UAAU,EAAE,CAAC,OAAO,EAAE,EAAE;gBACvD,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;oBACpB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;gBAChD,CAAC;YACH,CAAC,CAAC;YACF,MAAM,CAAC,EAAE,CAAwB,UAAU,EAAE,CAAC,OAAO,EAAE,EAAE;gBACvD,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;oBACpB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;gBAChD,CAAC;YACH,CAAC,CAAC;YACF,MAAM,CAAC,EAAE,CAAwB,UAAU,EAAE,CAAC,OAAO,EAAE,EAAE;gBACvD,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;oBACpB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;oBAC9C,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;gBACxC,CAAC;YACH,CAAC,CAAC;YACF,MAAM,CAAC,EAAE,CAAuB,gBAAgB,EAAE,CAAC,OAAO,EAAE,EAAE;gBAC5D,IAAI,sBAAsB,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;oBAC5C,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,gBAAgB,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;gBACtD,CAAC;YACH,CAAC,CAAC;YACF,MAAM,CAAC,EAAE,CAAyB,WAAW,EAAE,CAAC,OAAO,EAAE,EAAE;gBACzD,IAAI,wBAAwB,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;oBAC9C,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;gBACjD,CAAC;YACH,CAAC,CAAC;YACF,MAAM,CAAC,EAAE,CAA8B,gBAAgB,EAAE,CAAC,OAAO,EAAE,EAAE;gBACnE,IAAI,6BAA6B,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;oBACnD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,gBAAgB,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;gBACtD,CAAC;YACH,CAAC,CAAC;SACH,CAAC;IACJ,CAAC;IAED,UAAU;QACR,IAAI,CAAC,uBAAuB,EAAE,CAC5B,yBAAyB,CACvB,iEAAiE,CAClE,CACF,CAAC;QAEF,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YAC1C,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,IAAI,CAAC,cAAc,GAAG,EAAE,CAAC;QACzB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;IACrB,CAAC;IAED,IAAI,CAAC,OAA4B;QAC/B,MAAM,UAAU,GAAG,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;QAEnD,IAAI,UAAU,EAAE,CAAC;YACf,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;YACrC,OAAO,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QACpC,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;QAEhC,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,KAAK,GAAG,yBAAyB,CACrC,kDAAkD,CACnD,CAAC;YACF,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YAChC,OAAO,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC/B,CAAC;QAED,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,eAAe,EAAE,CAAC;QACzD,IAAI,CAAC,mBAAmB,GAAG,SAAS,CAAC;QAErC,OAAO,IAAI,CAAC,iBAAiB,CAAC;YAC5B,MAAM;YACN,OAAO;YACP,SAAS;YACT,MAAM,EAAE,KAAK;YACb,iBAAiB,EAAE,IAAI;YACvB,IAAI,EAAE,GAAG,EAAE;gBACT,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,iBAAiB,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC,CAAC;YACrE,CAAC;SACF,CAAC,CAAC;IACL,CAAC;IAED;;;;OAIG;IACH,QAAQ,CAAC,IAAU,EAAE,UAAmC,EAAE;QACxD,MAAM,UAAU,GAAG,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC;QAEpD,IAAI,UAAU,EAAE,CAAC;YACf,IAAI,CAAC,UAAU,CACb;gBACE,WAAW,EAAE,IAAI,EAAE,IAAI;aACxB,EACD,UAAU,CACX,CAAC;YACF,OAAO,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QACpC,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;QAEhC,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,KAAK,GAAG,yBAAyB,CACrC,kDAAkD,CACnD,CAAC;YACF,IAAI,CAAC,UAAU,CACb;gBACE,WAAW,EAAE,IAAI,CAAC,IAAI;aACvB,EACD,KAAK,CACN,CAAC;YACF,OAAO,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC/B,CAAC;QAED,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,eAAe,EAAE,CAAC;QACzD,IAAI,CAAC,mBAAmB,GAAG,SAAS,CAAC;QAErC,OAAO,IAAI,CAAC,iBAAiB,CAAC;YAC5B,MAAM;YACN,OAAO,EAAE;gBACP,WAAW,EAAE,IAAI,CAAC,IAAI;gBACtB,SAAS;aACV;YACD,SAAS;YACT,MAAM,EAAE,MAAM;YACd,iBAAiB,EAAE,KAAK;YACxB,IAAI,EAAE,GAAG,EAAE;gBACT,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,qBAAqB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC;YACrE,CAAC;SACF,CAAC,CAAC;IACL,CAAC;IAED,oBAAoB,CAAC,cAAoD;QACvE,MAAM,SAAS,GACb,OAAO,cAAc,KAAK,QAAQ,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,cAAc,CAAC,KAAK,CAAC;QAC7E,MAAM,MAAM,GAAG,IAAI,CAAC,kBAAkB,CAAC,sBAAsB,CAAC,CAAC;QAE/D,MAAM,CAAC,IAAI,CAAC,sBAAsB,EAAE;YAClC,SAAS;SACV,CAAC,CAAC;IACL,CAAC;IAED,UAAU,CAAC,OAA0B;QACnC,IAAI,OAAO,OAAO,CAAC,SAAS,KAAK,QAAQ,IAAI,OAAO,OAAO,CAAC,UAAU,KAAK,QAAQ,EAAE,CAAC;YACpF,MAAM,6BAA6B,CACjC,kDAAkD,EAClD;gBACE,OAAO;aACR,CACF,CAAC;QACJ,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,kBAAkB,CAAC,YAAY,CAAC,CAAC;QAErD,MAAM,CAAC,IAAI,CAAC,YAAY,EAAE;YACxB,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,UAAU,EAAE,OAAO,CAAC,UAAU;SAC/B,CAAC,CAAC;IACL,CAAC;IAED,MAAM,CAAC,UAAiC,EAAE;QACxC,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC1B,OAAO,OAAO,CAAC,MAAM,CACnB,6BAA6B,CAAC,2CAA2C,CAAC,CAC3E,CAAC;QACJ,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC;QACjD,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,IAAI,CAAC,gBAAgB,CAAC;QAC7D,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC;QAE7B,OAAO,IAAI,OAAO,CAAuB,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YAC3D,MAAM,OAAO,GAAG,MAAM,CAAC,EAAE,CAAuB,gBAAgB,EAAE,CAAC,OAAO,EAAE,EAAE;gBAC5E,IAAI,CAAC,sBAAsB,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;oBAC7C,OAAO;gBACT,CAAC;gBAED,UAAU,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;gBACnC,OAAO,EAAE,CAAC;gBACV,IAAI,CAAC,gBAAgB,GAAG,KAAK,CAAC;gBAC9B,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;YAC3B,CAAC,CAAC,CAAC;YAEH,MAAM,SAAS,GAAG,UAAU,CAAC,UAAU,CAAC,GAAG,EAAE;gBAC3C,OAAO,EAAE,CAAC;gBACV,IAAI,CAAC,gBAAgB,GAAG,KAAK,CAAC;gBAC9B,MAAM,CACJ,6BAA6B,CAC3B,kDAAkD,EAClD;oBACE,SAAS;iBACV,CACF,CACF,CAAC;YACJ,CAAC,EAAE,SAAS,CAAC,CAAC;YAEd,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACxB,CAAC,CAAC,CAAC;IACL,CAAC;IAED,KAAK;QACH,MAAM,MAAM,GAAG,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;QAChD,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACvB,CAAC;IAED,eAAe,CAAC,OAAgC;QAC9C,MAAM,MAAM,GAAG,IAAI,CAAC,kBAAkB,CAAC,kBAAkB,CAAC,CAAC;QAC3D,OAAO,uBAAuB,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC,gBAAgB,CAAC,CAAC;IACzE,CAAC;IAEO,iBAAiB,CACvB,OAA4B;QAE5B,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE,CAAC;YACvB,OAAO,yBAAyB,CAC9B,yDAAyD,CAC1D,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;YAClC,OAAO,6BAA6B,CAClC,qCAAqC,EACrC;gBACE,OAAO;aACR,CACF,CAAC;QACJ,CAAC;QAED,IAAI,IAAI,CAAC,mBAAmB,EAAE,CAAC;YAC7B,OAAO,6BAA6B,CAClC,yCAAyC,EACzC;gBACE,eAAe,EAAE,IAAI,CAAC,mBAAmB;aAC1C,CACF,CAAC;QACJ,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAEO,qBAAqB,CAAC,IAAU;QACtC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE,CAAC;YACvB,OAAO,yBAAyB,CAC9B,yDAAyD,CAC1D,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,OAAO,6BAA6B,CAAC,gCAAgC,CAAC,CAAC;QACzE,CAAC;QAED,IAAI,IAAI,CAAC,mBAAmB,EAAE,CAAC;YAC7B,OAAO,6BAA6B,CAClC,yCAAyC,EACzC;gBACE,eAAe,EAAE,IAAI,CAAC,mBAAmB;aAC1C,CACF,CAAC;QACJ,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAEO,kBAAkB,CAAC,IAAY;QACrC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE,CAAC;YACvB,MAAM,yBAAyB,CAC7B,6DAA6D,EAC7D;gBACE,IAAI;aACL,CACF,CAAC;QACJ,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;QAEhC,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,yBAAyB,CAC7B,kDAAkD,EAClD;gBACE,IAAI;aACL,CACF,CAAC;QACJ,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAEO,iBAAiB,CACvB,OAOC;QAED,MAAM,SAAS,GAAG,2BAA2B,CAAC;YAC5C,GAAG,OAAO;YACV,SAAS,EAAE,IAAI,CAAC,gBAAgB;YAChC,SAAS,EAAE,GAAG,EAAE;gBACd,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE;oBAC1B,SAAS,EAAE,OAAO,CAAC,SAAS;oBAC5B,GAAG,EAAE,OAAO,CAAC,OAAO,CAAC,GAAG;oBACxB,IAAI,EAAE,OAAO,CAAC,OAAO,CAAC,IAAI;oBAC1B,WAAW,EAAE,OAAO,CAAC,OAAO,CAAC,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC,IAAI;iBACjE,CAAC,CAAC;YACL,CAAC;YACD,QAAQ,EAAE,CAAC,MAAM,EAAE,WAAW,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,WAAW,CAAC;YACvE,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,OAAO,EAAE,KAAK,CAAC;YAC5D,SAAS,EAAE,GAAG,EAAE;gBACd,IAAI,IAAI,CAAC,mBAAmB,KAAK,OAAO,CAAC,SAAS,EAAE,CAAC;oBACnD,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC;gBAClC,CAAC;gBACD,IAAI,IAAI,CAAC,uBAAuB,KAAK,SAAS,CAAC,MAAM,EAAE,CAAC;oBACtD,IAAI,CAAC,uBAAuB,GAAG,IAAI,CAAC;gBACtC,CAAC;YACH,CAAC;SACF,CAAC,CAAC;QAEH,IAAI,CAAC,uBAAuB,GAAG,SAAS,CAAC,MAAM,CAAC;QAChD,SAAS,CAAC,KAAK,EAAE,CAAC;QAClB,OAAO,SAAS,CAAC,OAAO,CAAC;IAC3B,CAAC;IAEO,iBAAiB,CACvB,OAA4B,EAC5B,SAAiB;QAEjB,OAAO;YACL,SAAS;YACT,OAAO,EAAE,OAAO,CAAC,GAAG;YACpB,QAAQ,EAAE,OAAO,CAAC,IAAI;YACtB,WAAW,EAAE,OAAO,CAAC,WAAW;YAChC,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,IAAI,EAAE,OAAO,CAAC,IAAI;SACnB,CAAC;IACJ,CAAC;IAEO,qBAAqB,CAC3B,IAAU,EACV,OAAgC;QAEhC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;YACrB,OAAO,IAAI,CAAC;QACd,CAAC;QAED,OAAO;YACL,IAAI;YACJ,OAAO,EAAE,OAAO,CAAC,OAAO;SACzB,CAAC;IACJ,CAAC;IAEO,UAAU,CAChB,MAA0B,EAC1B,WAA+C;QAE/C,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE;YACzB,GAAG,MAAM;YACT,MAAM,EAAE,gBAAgB;YACxB,WAAW;SACZ,CAAC,CAAC;IACL,CAAC;IAEO,eAAe,CAAC,OAA8B;QACpD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,EAAE;YAC9B,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,WAAW,EAAE,OAAO,CAAC,WAAW;YAChC,WAAW,EAAE,OAAO,CAAC,WAAW;YAChC,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,KAAK,EAAE,OAAO,CAAC,KAAK;SACrB,CAAC,CAAC;IACL,CAAC;IAEO,UAAU,CAChB,OAA4B,EAC5B,KAA0B;QAE1B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE;YACzB,KAAK;YACL,GAAG,EAAE,OAAO,CAAC,GAAG;YAChB,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,WAAW,EAAE,OAAO,CAAC,WAAW,IAAI,OAAO,CAAC,IAAI;SACjD,CAAC,CAAC;IACL,CAAC;CACF;AAED,SAAS,sBAAsB,CAC7B,OAAyC;IAEzC,OAAO,OAAO,OAAO,EAAE,OAAO,KAAK,QAAQ,IAAI,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC;AAC5E,CAAC"}