@univerjs-pro/embed-ui 1.0.0-alpha.3

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 (196) hide show
  1. package/README.md +46 -0
  2. package/lib/cjs/index.js +1 -0
  3. package/lib/cjs/locale/ar-SA.js +1 -0
  4. package/lib/cjs/locale/ca-ES.js +1 -0
  5. package/lib/cjs/locale/de-DE.js +1 -0
  6. package/lib/cjs/locale/en-US.js +1 -0
  7. package/lib/cjs/locale/es-ES.js +1 -0
  8. package/lib/cjs/locale/fa-IR.js +1 -0
  9. package/lib/cjs/locale/fr-FR.js +1 -0
  10. package/lib/cjs/locale/id-ID.js +1 -0
  11. package/lib/cjs/locale/it-IT.js +1 -0
  12. package/lib/cjs/locale/ja-JP.js +1 -0
  13. package/lib/cjs/locale/ko-KR.js +1 -0
  14. package/lib/cjs/locale/pl-PL.js +1 -0
  15. package/lib/cjs/locale/pt-BR.js +1 -0
  16. package/lib/cjs/locale/ru-RU.js +1 -0
  17. package/lib/cjs/locale/sk-SK.js +1 -0
  18. package/lib/cjs/locale/vi-VN.js +1 -0
  19. package/lib/cjs/locale/zh-CN.js +1 -0
  20. package/lib/cjs/locale/zh-HK.js +1 -0
  21. package/lib/cjs/locale/zh-TW.js +1 -0
  22. package/lib/es/index.js +1 -0
  23. package/lib/es/locale/ar-SA.js +1 -0
  24. package/lib/es/locale/ca-ES.js +1 -0
  25. package/lib/es/locale/de-DE.js +1 -0
  26. package/lib/es/locale/en-US.js +1 -0
  27. package/lib/es/locale/es-ES.js +1 -0
  28. package/lib/es/locale/fa-IR.js +1 -0
  29. package/lib/es/locale/fr-FR.js +1 -0
  30. package/lib/es/locale/id-ID.js +1 -0
  31. package/lib/es/locale/it-IT.js +1 -0
  32. package/lib/es/locale/ja-JP.js +1 -0
  33. package/lib/es/locale/ko-KR.js +1 -0
  34. package/lib/es/locale/pl-PL.js +1 -0
  35. package/lib/es/locale/pt-BR.js +1 -0
  36. package/lib/es/locale/ru-RU.js +1 -0
  37. package/lib/es/locale/sk-SK.js +1 -0
  38. package/lib/es/locale/vi-VN.js +1 -0
  39. package/lib/es/locale/zh-CN.js +1 -0
  40. package/lib/es/locale/zh-HK.js +1 -0
  41. package/lib/es/locale/zh-TW.js +1 -0
  42. package/lib/index.css +1058 -0
  43. package/lib/index.js +1 -0
  44. package/lib/locale/ar-SA.js +1 -0
  45. package/lib/locale/ca-ES.js +1 -0
  46. package/lib/locale/de-DE.js +1 -0
  47. package/lib/locale/en-US.js +1 -0
  48. package/lib/locale/es-ES.js +1 -0
  49. package/lib/locale/fa-IR.js +1 -0
  50. package/lib/locale/fr-FR.js +1 -0
  51. package/lib/locale/id-ID.js +1 -0
  52. package/lib/locale/it-IT.js +1 -0
  53. package/lib/locale/ja-JP.js +1 -0
  54. package/lib/locale/ko-KR.js +1 -0
  55. package/lib/locale/pl-PL.js +1 -0
  56. package/lib/locale/pt-BR.js +1 -0
  57. package/lib/locale/ru-RU.js +1 -0
  58. package/lib/locale/sk-SK.js +1 -0
  59. package/lib/locale/vi-VN.js +1 -0
  60. package/lib/locale/zh-CN.js +1 -0
  61. package/lib/locale/zh-HK.js +1 -0
  62. package/lib/locale/zh-TW.js +1 -0
  63. package/lib/types/common/const.d.ts +1 -0
  64. package/lib/types/common/embed-float-interaction-policy.d.ts +13 -0
  65. package/lib/types/common/embed-host-chrome-policy.d.ts +19 -0
  66. package/lib/types/common/embed-runtime-policy.d.ts +13 -0
  67. package/lib/types/common/embed-runtime-slots.d.ts +9 -0
  68. package/lib/types/common/tab-peer-workbench.d.ts +6 -0
  69. package/lib/types/components/EmbedFloatDomRenderer.d.ts +50 -0
  70. package/lib/types/components/EmbedFloatFullscreenButton.d.ts +16 -0
  71. package/lib/types/components/EmbedHostToolbarMenu.d.ts +37 -0
  72. package/lib/types/components/EmbedRuntimeProviders.d.ts +9 -0
  73. package/lib/types/config/config.d.ts +10 -0
  74. package/lib/types/controllers/docs-table-passive-wheel-bridge.controller.d.ts +7 -0
  75. package/lib/types/controllers/embed-host-anchor-cleanup.controller.d.ts +7 -0
  76. package/lib/types/controllers/embed-host-ribbon-override.controller.d.ts +14 -0
  77. package/lib/types/index.d.ts +11 -0
  78. package/lib/types/locale/ar-SA.d.ts +3 -0
  79. package/lib/types/locale/ca-ES.d.ts +3 -0
  80. package/lib/types/locale/de-DE.d.ts +3 -0
  81. package/lib/types/locale/en-US.d.ts +78 -0
  82. package/lib/types/locale/es-ES.d.ts +3 -0
  83. package/lib/types/locale/fa-IR.d.ts +3 -0
  84. package/lib/types/locale/fr-FR.d.ts +3 -0
  85. package/lib/types/locale/id-ID.d.ts +3 -0
  86. package/lib/types/locale/it-IT.d.ts +3 -0
  87. package/lib/types/locale/ja-JP.d.ts +3 -0
  88. package/lib/types/locale/ko-KR.d.ts +3 -0
  89. package/lib/types/locale/pl-PL.d.ts +3 -0
  90. package/lib/types/locale/pt-BR.d.ts +3 -0
  91. package/lib/types/locale/ru-RU.d.ts +3 -0
  92. package/lib/types/locale/sk-SK.d.ts +3 -0
  93. package/lib/types/locale/types.d.ts +3 -0
  94. package/lib/types/locale/vi-VN.d.ts +3 -0
  95. package/lib/types/locale/zh-CN.d.ts +3 -0
  96. package/lib/types/locale/zh-HK.d.ts +3 -0
  97. package/lib/types/locale/zh-TW.d.ts +3 -0
  98. package/lib/types/plugin.d.ts +22 -0
  99. package/lib/types/product-menus/docs-product-menus.d.ts +2 -0
  100. package/lib/types/products/bases/EmbedChildView.d.ts +13 -0
  101. package/lib/types/products/bases/EmbedFloatingMenu.d.ts +36 -0
  102. package/lib/types/products/bases/embed-block.d.ts +2 -0
  103. package/lib/types/products/bases/embed-content-size.d.ts +9 -0
  104. package/lib/types/products/bases/embed-host-adapter.d.ts +6 -0
  105. package/lib/types/products/bases/embed-passive-viewport.d.ts +3 -0
  106. package/lib/types/products/bases/register.d.ts +13 -0
  107. package/lib/types/products/docs/EmbedDocsCustomBlockRenderer.d.ts +38 -0
  108. package/lib/types/products/docs/EmbedFloatingMenu.d.ts +7 -0
  109. package/lib/types/products/docs/embed-block.d.ts +3 -0
  110. package/lib/types/products/docs/embed-docs-custom-block-bleed.render-controller.d.ts +25 -0
  111. package/lib/types/products/docs/embed-host-adapter.d.ts +6 -0
  112. package/lib/types/products/docs/embed-passive-viewport.d.ts +3 -0
  113. package/lib/types/products/docs/register.d.ts +2 -0
  114. package/lib/types/products/product-ui-contributions.d.ts +2 -0
  115. package/lib/types/products/sheets/EmbedBlock.d.ts +8 -0
  116. package/lib/types/products/sheets/EmbedFloatingMenu.d.ts +57 -0
  117. package/lib/types/products/sheets/embed-content-size.d.ts +2 -0
  118. package/lib/types/products/sheets/embed-host-adapter.d.ts +3 -0
  119. package/lib/types/products/sheets/embed-passive-viewport.d.ts +3 -0
  120. package/lib/types/products/sheets/embed-product-menu.d.ts +2 -0
  121. package/lib/types/products/sheets/register.d.ts +28 -0
  122. package/lib/types/products/slides/EmbedChildView.d.ts +3 -0
  123. package/lib/types/products/slides/components/embed-floating-menu/SlideEmbedFloatingMenu.d.ts +28 -0
  124. package/lib/types/products/slides/components/embed-floating-preview/SlideEmbedFloatingPreview.d.ts +24 -0
  125. package/lib/types/products/slides/embed-block.d.ts +2 -0
  126. package/lib/types/products/slides/embed-floating-menu-stage.d.ts +8 -0
  127. package/lib/types/products/slides/embed-floating-menu.d.ts +3 -0
  128. package/lib/types/products/slides/embed-host-adapter.d.ts +7 -0
  129. package/lib/types/products/slides/embed-passive-viewport.d.ts +2 -0
  130. package/lib/types/products/slides/register.d.ts +25 -0
  131. package/lib/types/products/slides/services/EmbedSlideReadonlyPreviewProvider.d.ts +15 -0
  132. package/lib/types/products/slides/services/embed-slide-float-preview.provider.d.ts +34 -0
  133. package/lib/types/products/slides/services/embed-slide-presentation-preview.d.ts +27 -0
  134. package/lib/types/services/embed-activation.service.d.ts +44 -0
  135. package/lib/types/services/embed-block-contribution-factory.d.ts +17 -0
  136. package/lib/types/services/embed-block-registry.service.d.ts +8 -0
  137. package/lib/types/services/embed-child-product-plugin-lease.d.ts +15 -0
  138. package/lib/types/services/embed-child-product-plugin-registry.service.d.ts +35 -0
  139. package/lib/types/services/embed-child-runtime-scope.d.ts +7 -0
  140. package/lib/types/services/embed-child-unit-scoped-injector.d.ts +6 -0
  141. package/lib/types/services/embed-child-view-registry.service.d.ts +8 -0
  142. package/lib/types/services/embed-content-size-registry.service.d.ts +9 -0
  143. package/lib/types/services/embed-default-floating-menu.d.ts +4 -0
  144. package/lib/types/services/embed-docs-sticky-wheel.d.ts +2 -0
  145. package/lib/types/services/embed-dom-passive-viewport-provider.d.ts +8 -0
  146. package/lib/types/services/embed-float-preview.service.d.ts +29 -0
  147. package/lib/types/services/embed-floating-active.service.d.ts +11 -0
  148. package/lib/types/services/embed-floating-geometry.service.d.ts +22 -0
  149. package/lib/types/services/embed-floating-menu-registry.service.d.ts +11 -0
  150. package/lib/types/services/embed-floating-menu-root.d.ts +2 -0
  151. package/lib/types/services/embed-fullscreen.service.d.ts +12 -0
  152. package/lib/types/services/embed-host-container-registry.service.d.ts +11 -0
  153. package/lib/types/services/embed-host-menu-override.service.d.ts +14 -0
  154. package/lib/types/services/embed-host-restore.service.d.ts +18 -0
  155. package/lib/types/services/embed-interaction-boundary.service.d.ts +42 -0
  156. package/lib/types/services/embed-mount.service.d.ts +52 -0
  157. package/lib/types/services/embed-overlay-root.service.d.ts +22 -0
  158. package/lib/types/services/embed-passive-viewport-registry.service.d.ts +9 -0
  159. package/lib/types/services/embed-passive-wheel-handler-registry.service.d.ts +9 -0
  160. package/lib/types/services/embed-product-floating-menu-contributions.d.ts +2 -0
  161. package/lib/types/services/embed-product-menu-mounting.d.ts +18 -0
  162. package/lib/types/services/embed-product-menu-registry.service.d.ts +14 -0
  163. package/lib/types/services/embed-readonly-preview-registry.service.d.ts +8 -0
  164. package/lib/types/services/embed-render-canvas-preview-provider.d.ts +8 -0
  165. package/lib/types/services/embed-render-child-view-contribution.d.ts +52 -0
  166. package/lib/types/services/embed-runtime-focus-coordinator.service.d.ts +76 -0
  167. package/lib/types/services/embed-runtime-host-lease.service.d.ts +24 -0
  168. package/lib/types/services/embed-runtime-policy.service.d.ts +28 -0
  169. package/lib/types/services/embed-runtime-scope-dom.d.ts +15 -0
  170. package/lib/types/services/embed-scene-canvas-capture.service.d.ts +24 -0
  171. package/lib/types/services/embed-scene-passive-wheel.d.ts +21 -0
  172. package/lib/types/services/embed-ui-contribution-register.d.ts +5 -0
  173. package/lib/types/services/embed-undo-bridge.service.d.ts +14 -0
  174. package/lib/types/services/react-root-disposal.d.ts +6 -0
  175. package/lib/types/types/embed-ui.d.ts +292 -0
  176. package/lib/umd/index.js +1 -0
  177. package/lib/umd/locale/ar-SA.js +1 -0
  178. package/lib/umd/locale/ca-ES.js +1 -0
  179. package/lib/umd/locale/de-DE.js +1 -0
  180. package/lib/umd/locale/en-US.js +1 -0
  181. package/lib/umd/locale/es-ES.js +1 -0
  182. package/lib/umd/locale/fa-IR.js +1 -0
  183. package/lib/umd/locale/fr-FR.js +1 -0
  184. package/lib/umd/locale/id-ID.js +1 -0
  185. package/lib/umd/locale/it-IT.js +1 -0
  186. package/lib/umd/locale/ja-JP.js +1 -0
  187. package/lib/umd/locale/ko-KR.js +1 -0
  188. package/lib/umd/locale/pl-PL.js +1 -0
  189. package/lib/umd/locale/pt-BR.js +1 -0
  190. package/lib/umd/locale/ru-RU.js +1 -0
  191. package/lib/umd/locale/sk-SK.js +1 -0
  192. package/lib/umd/locale/vi-VN.js +1 -0
  193. package/lib/umd/locale/zh-CN.js +1 -0
  194. package/lib/umd/locale/zh-HK.js +1 -0
  195. package/lib/umd/locale/zh-TW.js +1 -0
  196. package/package.json +108 -0
@@ -0,0 +1,17 @@
1
+ import type { Injector, UniverInstanceType } from '@univerjs/core';
2
+ import type { IEmbedBlockContribution } from '../types/embed-ui';
3
+ import { EmbedHostChromeMode } from '../types/embed-ui';
4
+ export interface ICreateEmbedRibbonBlockContributionOptions {
5
+ childType: UniverInstanceType;
6
+ productName: string;
7
+ menuSchema?: unknown;
8
+ }
9
+ export interface ICreateEmbedNoHeaderBlockContributionOptions {
10
+ childType: UniverInstanceType;
11
+ productName: string;
12
+ hostChromeMode?: EmbedHostChromeMode.TITLE_ONLY | EmbedHostChromeMode.NONE;
13
+ hostHeaderMode?: 'none' | 'placeholder';
14
+ }
15
+ export declare function createEmbedRibbonBlockContribution(options: ICreateEmbedRibbonBlockContributionOptions): IEmbedBlockContribution;
16
+ export declare function resolveEmbedProductRibbonMenuSchema(injector: Pick<Injector, 'get' | 'has'> | unknown, childType: UniverInstanceType, fallbackMenuSchema?: unknown): unknown;
17
+ export declare function createEmbedNoHeaderBlockContribution(options: ICreateEmbedNoHeaderBlockContributionOptions): IEmbedBlockContribution;
@@ -0,0 +1,8 @@
1
+ import type { IDisposable, UniverInstanceType } from '@univerjs/core';
2
+ import type { IEmbedBlockContribution } from '../types/embed-ui';
3
+ export declare class EmbedBlockRegistryService {
4
+ private readonly _contributions;
5
+ register(contribution: IEmbedBlockContribution): IDisposable;
6
+ get(childType: UniverInstanceType): IEmbedBlockContribution | undefined;
7
+ list(): IEmbedBlockContribution[];
8
+ }
@@ -0,0 +1,15 @@
1
+ import type { IUniverInstanceService, UniverInstanceType } from '@univerjs/core';
2
+ export interface IEmbedChildProductCurrentUnitLeaseOptions {
3
+ instanceService: IUniverInstanceService;
4
+ childUnitId: string;
5
+ childType: UniverInstanceType;
6
+ restoreUnitId?: string;
7
+ shouldRestore?: () => boolean;
8
+ /**
9
+ * Product plugin registration may schedule already-started plugin lifecycle work on a short timer.
10
+ * Keep the child current/focused until that lifecycle queue has had a chance to observe it.
11
+ */
12
+ settleDelayMs?: number;
13
+ deferredRestoreDelaysMs?: readonly number[];
14
+ }
15
+ export declare function runWithEmbedChildProductCurrentUnit<T>(options: IEmbedChildProductCurrentUnitLeaseOptions, runner: () => T | Promise<T>): Promise<T>;
@@ -0,0 +1,35 @@
1
+ import type { IDisposable, UniverInstanceType } from '@univerjs/core';
2
+ import { Injector } from '@univerjs/core';
3
+ import { EmbedRuntimeFocusCoordinator } from './embed-runtime-focus-coordinator.service';
4
+ export interface IEmbedChildProductPluginPrepareContext {
5
+ injector: Injector;
6
+ childUnitId: string;
7
+ childType: UniverInstanceType;
8
+ descriptor?: unknown;
9
+ }
10
+ export interface IEmbedChildProductPluginContribution {
11
+ id?: string;
12
+ childType: UniverInstanceType;
13
+ order?: number;
14
+ prepare?(context: IEmbedChildProductPluginPrepareContext): void | Promise<void>;
15
+ }
16
+ export interface IEmbedChildProductPluginPrepareOptions {
17
+ childUnitId: string;
18
+ childType: UniverInstanceType;
19
+ restoreUnitId?: string;
20
+ descriptor?: unknown;
21
+ settleDelayMs?: number;
22
+ }
23
+ export declare function registerEmbedChildProductPluginContribution(injector: Pick<Injector, 'get' | 'has'>, contribution: IEmbedChildProductPluginContribution): IDisposable;
24
+ export declare function flushPendingEmbedChildProductPluginContributions(injector: Pick<Injector, 'get' | 'has'>): void;
25
+ export declare class EmbedChildProductPluginRegistryService {
26
+ private readonly _injector;
27
+ private readonly _focusCoordinator?;
28
+ private readonly _contributions;
29
+ private _nextIndex;
30
+ constructor(_injector: Injector, _focusCoordinator?: EmbedRuntimeFocusCoordinator | undefined);
31
+ register(contribution: IEmbedChildProductPluginContribution): IDisposable;
32
+ getAll(childType: UniverInstanceType): readonly IEmbedChildProductPluginContribution[];
33
+ prepare(options: IEmbedChildProductPluginPrepareOptions): Promise<void>;
34
+ private _hasContributionId;
35
+ }
@@ -0,0 +1,7 @@
1
+ import type { IDisposable } from '@univerjs/core';
2
+ import type { IEmbedChildContainerContext, IEmbedChildRuntimeScope } from '../types/embed-ui';
3
+ export type EmbedChildRuntimeScopeCreateContext = Omit<IEmbedChildContainerContext, 'runtimeScope'>;
4
+ export declare function createEmbedChildRuntimeScope(context: EmbedChildRuntimeScopeCreateContext, setActive: (active: boolean) => void): {
5
+ runtimeScope: IEmbedChildRuntimeScope;
6
+ disposable: IDisposable;
7
+ };
@@ -0,0 +1,6 @@
1
+ import type { IEmbedChildContainerContext } from '../types/embed-ui';
2
+ import { Injector } from '@univerjs/core';
3
+ export type IEmbedScopedConfigOverrides = ReadonlyMap<string | symbol, (config: unknown) => unknown>;
4
+ export declare function createEmbedChildUnitScopedInjector(context: IEmbedChildContainerContext): Injector | undefined;
5
+ export declare function createEmbedScopedConfigInjector(parentInjector: Injector, configOverrides: IEmbedScopedConfigOverrides): Injector | undefined;
6
+ export declare function createEmbedScopedInjector(parentInjector: Injector, overrides: ReadonlyMap<unknown, unknown>, sharedRootInjector?: Injector): Injector;
@@ -0,0 +1,8 @@
1
+ import type { UniverInstanceType } from '@univerjs/core';
2
+ import type { IEmbedChildViewContribution } from '../types/embed-ui';
3
+ export declare class EmbedChildViewRegistryService {
4
+ private readonly _contributions;
5
+ register(contribution: IEmbedChildViewContribution): void;
6
+ get(childType: UniverInstanceType): IEmbedChildViewContribution | undefined;
7
+ list(): IEmbedChildViewContribution[];
8
+ }
@@ -0,0 +1,9 @@
1
+ import type { IDisposable, UniverInstanceType } from '@univerjs/core';
2
+ import type { IEmbedContentSize, IEmbedContentSizeMeasureContext, IEmbedContentSizeProvider } from '../types/embed-ui';
3
+ export declare class EmbedContentSizeRegistryService {
4
+ private readonly _providers;
5
+ register(provider: IEmbedContentSizeProvider): IDisposable;
6
+ get(childType: UniverInstanceType): IEmbedContentSizeProvider | undefined;
7
+ list(): IEmbedContentSizeProvider[];
8
+ measureContentSize(context: IEmbedContentSizeMeasureContext): IEmbedContentSize | undefined;
9
+ }
@@ -0,0 +1,4 @@
1
+ import type { IDisposable } from '@univerjs/core';
2
+ import type { IEmbedFloatingMenuContribution, IEmbedFloatingMenuMountContext } from '../types/embed-ui';
3
+ export declare function createDefaultEmbedFloatingMenuContributions(): IEmbedFloatingMenuContribution[];
4
+ export declare function mountDefaultEmbedFloatingMenu(_context: IEmbedFloatingMenuMountContext): IDisposable;
@@ -0,0 +1,2 @@
1
+ import type { EmbedLayout } from '@univerjs-pro/embed';
2
+ export declare function shouldPassDocsStickyVerticalWheelToHost(layout: EmbedLayout, event: WheelEvent): boolean;
@@ -0,0 +1,8 @@
1
+ import type { EmbedLayout } from '@univerjs-pro/embed';
2
+ import type { UniverInstanceType } from '@univerjs/core';
3
+ import type { IEmbedPassiveViewportProvider } from '../types/embed-ui';
4
+ export interface ICreateEmbedDomPassiveViewportProviderOptions {
5
+ childType: UniverInstanceType;
6
+ supportedLayouts?: EmbedLayout[];
7
+ }
8
+ export declare function createEmbedDomPassiveViewportProvider(options: ICreateEmbedDomPassiveViewportProviderOptions): IEmbedPassiveViewportProvider;
@@ -0,0 +1,29 @@
1
+ import type { IDisposable, UniverInstanceType } from '@univerjs/core';
2
+ import type { IEmbedChildContainerContext, IEmbedFloatPreviewEntry, IEmbedFloatPreviewProvider, IEmbedFloatPreviewRenderRequest } from '../types/embed-ui';
3
+ import { Subject } from 'rxjs';
4
+ export declare class EmbedFloatPreviewService {
5
+ readonly previewUpdated$: Subject<IEmbedFloatPreviewEntry<unknown>>;
6
+ private readonly _providers;
7
+ private readonly _entriesByEmbedId;
8
+ private readonly _entriesByKey;
9
+ private readonly _queue;
10
+ private _rendering;
11
+ private _activeDrain;
12
+ registerProvider(provider: IEmbedFloatPreviewProvider<any>): IDisposable;
13
+ getProvider(childType: UniverInstanceType): IEmbedFloatPreviewProvider<any> | undefined;
14
+ getPreview(embedId: string): IEmbedFloatPreviewEntry | undefined;
15
+ requestPreview<TViewState = unknown>(request: IEmbedFloatPreviewRenderRequest<TViewState>): IEmbedFloatPreviewEntry<TViewState>;
16
+ collectViewState<TViewState = unknown>(context: IEmbedChildContainerContext): Promise<TViewState | undefined>;
17
+ restoreViewState<TViewState = unknown>(context: IEmbedChildContainerContext, viewState: TViewState | undefined): Promise<void>;
18
+ updateViewState<TViewState = unknown>(embedId: string, viewState: TViewState): void;
19
+ markStale(embedId: string, reason?: string): void;
20
+ invalidate(embedId: string): void;
21
+ getCacheKey(request: IEmbedFloatPreviewRenderRequest): string;
22
+ flushForTests(): Promise<void>;
23
+ dispose(): void;
24
+ private _drainQueue;
25
+ private _runQueue;
26
+ private _renderOne;
27
+ private _findPreviousReadyEntry;
28
+ private _setRenderFailure;
29
+ }
@@ -0,0 +1,11 @@
1
+ import type { EmbedFloatingStage, IEmbedFloatingActivation } from '../types/embed-ui';
2
+ export declare class EmbedFloatingActiveService {
3
+ private readonly _active$;
4
+ readonly active$: import("rxjs").Observable<IEmbedFloatingActivation | null>;
5
+ getActive(): IEmbedFloatingActivation | null;
6
+ getStage(embedId: string): EmbedFloatingStage;
7
+ activate(next: IEmbedFloatingActivation, stage?: Exclude<EmbedFloatingStage, 'inactive'>): void;
8
+ setStage(embedId: string, stage: Exclude<EmbedFloatingStage, 'inactive'>): void;
9
+ promote(embedId: string): void;
10
+ clear(embedId?: string): void;
11
+ }
@@ -0,0 +1,22 @@
1
+ import type { IDisposable } from '@univerjs/core';
2
+ export type EmbedFloatingGeometryInvalidationReason = 'host-scroll' | 'child-scroll' | 'resize' | 'stage-change' | 'wheel' | 'manual';
3
+ export interface IEmbedFloatingGeometryInvalidation {
4
+ embedId?: string;
5
+ reason: EmbedFloatingGeometryInvalidationReason;
6
+ }
7
+ export interface IEmbedFloatingGeometryRegistration {
8
+ embedId: string;
9
+ childUnitId?: string;
10
+ root: HTMLElement;
11
+ viewport?: HTMLElement | null;
12
+ contentRoot?: HTMLElement | null;
13
+ }
14
+ export declare class EmbedFloatingGeometryService {
15
+ private readonly _registrations;
16
+ private readonly _geometryInvalidated$;
17
+ readonly geometryInvalidated$: import("rxjs").Observable<IEmbedFloatingGeometryInvalidation>;
18
+ register(registration: IEmbedFloatingGeometryRegistration): IDisposable;
19
+ getRegistration(embedId: string): IEmbedFloatingGeometryRegistration | undefined;
20
+ getRegistrationByChildUnitId(childUnitId: string): IEmbedFloatingGeometryRegistration | undefined;
21
+ invalidate(invalidation: IEmbedFloatingGeometryInvalidation): void;
22
+ }
@@ -0,0 +1,11 @@
1
+ import type { EmbedHostEntry } from '@univerjs-pro/embed';
2
+ import type { IDisposable, UniverInstanceType } from '@univerjs/core';
3
+ import type { IEmbedFloatingMenuContribution } from '../types/embed-ui';
4
+ export declare class EmbedFloatingMenuRegistryService {
5
+ private readonly _contributions;
6
+ register(contribution: IEmbedFloatingMenuContribution): IDisposable;
7
+ get(hostType: UniverInstanceType, entry: EmbedHostEntry, childType?: UniverInstanceType): IEmbedFloatingMenuContribution | undefined;
8
+ hasExact(hostType: UniverInstanceType, entry: EmbedHostEntry, childType?: UniverInstanceType): boolean;
9
+ list(): IEmbedFloatingMenuContribution[];
10
+ private _key;
11
+ }
@@ -0,0 +1,2 @@
1
+ import type { IEmbedFloatingMenuMountContext } from '../types/embed-ui';
2
+ export declare function resolveEmbedFloatingMenuRoot(context: Pick<IEmbedFloatingMenuMountContext, 'renderScope' | 'runtimeScope'>): HTMLElement;
@@ -0,0 +1,12 @@
1
+ import type { IEmbedDescriptor } from '@univerjs-pro/embed';
2
+ import type { IEmbedFullscreenSession } from '../types/embed-ui';
3
+ export declare class EmbedFullscreenService {
4
+ private readonly _session$;
5
+ private readonly _exited$;
6
+ readonly session$: import("rxjs").Observable<IEmbedFullscreenSession | null>;
7
+ readonly exited$: import("rxjs").Observable<IEmbedFullscreenSession>;
8
+ getSession(): IEmbedFullscreenSession | null;
9
+ enter(descriptor: IEmbedDescriptor): IEmbedFullscreenSession;
10
+ exit(embedId?: string): void;
11
+ notifyExited(session: IEmbedFullscreenSession): void;
12
+ }
@@ -0,0 +1,11 @@
1
+ import type { EmbedHostEntry } from '@univerjs-pro/embed';
2
+ import type { UniverInstanceType } from '@univerjs/core';
3
+ import type { IEmbedHostContainerContribution } from '../types/embed-ui';
4
+ export declare class EmbedHostContainerRegistryService {
5
+ private readonly _contributions;
6
+ register(contribution: IEmbedHostContainerContribution): void;
7
+ get(hostType: UniverInstanceType, entry: EmbedHostEntry): IEmbedHostContainerContribution | undefined;
8
+ list(): IEmbedHostContainerContribution[];
9
+ supports(hostType: UniverInstanceType, entry: EmbedHostEntry, layout: IEmbedHostContainerContribution['layout']): boolean;
10
+ private _key;
11
+ }
@@ -0,0 +1,14 @@
1
+ import type { IEmbedDescriptor, IEmbedLayoutPolicy } from '@univerjs-pro/embed';
2
+ import type { IEmbedHostMenuOverride } from '../types/embed-ui';
3
+ export interface IEmbedHostMenuOverrideActivateOptions {
4
+ layoutPolicy?: IEmbedLayoutPolicy;
5
+ allowPlaceholder?: boolean;
6
+ portalContainer?: HTMLElement | null;
7
+ }
8
+ export declare class EmbedHostMenuOverrideService {
9
+ private readonly _override$;
10
+ readonly override$: import("rxjs").Observable<IEmbedHostMenuOverride | null>;
11
+ getOverride(): IEmbedHostMenuOverride | null;
12
+ activate(descriptor: IEmbedDescriptor, reason: IEmbedHostMenuOverride['reason'], options?: IEmbedHostMenuOverrideActivateOptions): IEmbedHostMenuOverride | null;
13
+ clear(embedId?: string): void;
14
+ }
@@ -0,0 +1,18 @@
1
+ import type { IEmbedDescriptor, IEmbedDescriptorMaterializeContext, IEmbedHostAnchorRecord } from '@univerjs-pro/embed';
2
+ import type { ICreateUnitOptions } from '@univerjs/core';
3
+ import { EmbedHostAdapterRegistryService, EmbedHostAnchorModelService, EmbedModelService, EmbedReferencedUnitMaterializeService } from '@univerjs-pro/embed';
4
+ export interface IEmbedHostRestoreContext {
5
+ descriptor: IEmbedDescriptor;
6
+ hostAnchorRecord?: IEmbedHostAnchorRecord;
7
+ hostContext?: Record<string, unknown>;
8
+ createOptions?: ICreateUnitOptions;
9
+ }
10
+ export declare class EmbedHostRestoreService {
11
+ private readonly _modelService;
12
+ private readonly _materializeService;
13
+ private readonly _hostAdapterRegistry;
14
+ private readonly _anchorModelService;
15
+ constructor(_modelService: EmbedModelService, _materializeService: EmbedReferencedUnitMaterializeService, _hostAdapterRegistry: EmbedHostAdapterRegistryService, _anchorModelService: EmbedHostAnchorModelService);
16
+ materializeDescriptor(context: IEmbedDescriptorMaterializeContext): Promise<IEmbedDescriptor>;
17
+ restoreEmbed(context: IEmbedHostRestoreContext): Promise<IEmbedDescriptor>;
18
+ }
@@ -0,0 +1,42 @@
1
+ import type { IDisposable } from '@univerjs/core';
2
+ export declare const EMBED_INTERACTION_BOUNDARY_OWNER_ATTRIBUTE = "data-embed-interaction-boundary-owner";
3
+ export declare function getEmbedInteractionBoundaryOwnerId(element: HTMLElement | null | undefined): string | undefined;
4
+ export declare function isEventTargetInSameEmbedInteractionBoundary(scopeElement: HTMLElement | null | undefined, target: EventTarget | null | undefined): boolean;
5
+ export declare class EmbedInteractionBoundaryService {
6
+ private readonly _roots;
7
+ private readonly _portalObservers;
8
+ private readonly _activePortalOwners;
9
+ private _pendingPortalOwner;
10
+ registerRoot(embedId: string, root: HTMLElement): IDisposable;
11
+ private _registerRootPopupDescendantFocusRoles;
12
+ registerOwnedElement(embedId: string, element: HTMLElement): IDisposable;
13
+ contains(embedId: string | undefined, target: EventTarget | null | undefined, event?: Event): boolean;
14
+ hasRecentInteraction(ownerDocument?: Document): boolean;
15
+ hasRecentInteractionFor(embedId: string | undefined, ownerDocument?: Document): boolean;
16
+ closeOwnedFloatingSurfaces(embedId: string | undefined, ownerDocument: Document | undefined): void;
17
+ activatePortalScope(embedId: string, ownerDocument: Document | undefined): IDisposable;
18
+ private _collectOwnedFloatingSurfaceRoots;
19
+ private _resolveFloatingSurfaceRoot;
20
+ private _dispatchEscapeToFloatingSurface;
21
+ private _isOwnedElement;
22
+ private _claimBodyPortals;
23
+ private _ensurePortalObserver;
24
+ private _markBodyPortalOwner;
25
+ private _markExistingBodyPortals;
26
+ private _isBodyPortalCandidate;
27
+ private _isAppShellEditorPortalCandidate;
28
+ private _isHostDocEditorPortal;
29
+ private _isUniverPortalCandidate;
30
+ private _isDetachedOffscreenPortalCandidate;
31
+ private _markRuntimeFocusRole;
32
+ private _markInteractionBoundaryOwnerTree;
33
+ private _isUniverPortalTreeElement;
34
+ private _getBodyPortalOwner;
35
+ private _getLatestActivePortalOwner;
36
+ private _cleanupOrdinaryBodyChromeClaims;
37
+ private _blurActiveElementBeforePortalReassignment;
38
+ private _releaseBodyPortalClaims;
39
+ private _focusDocumentBody;
40
+ private _focusTemporarySink;
41
+ private _removeRuntimeFocusRoleTree;
42
+ }
@@ -0,0 +1,52 @@
1
+ import type { IEmbedDescriptor } from '@univerjs-pro/embed';
2
+ import type { IEmbedHostMountResult, IEmbedMountSession } from '../types/embed-ui';
3
+ import { Injector, IUniverInstanceService } from '@univerjs/core';
4
+ import { EmbedChildViewRegistryService } from './embed-child-view-registry.service';
5
+ import { EmbedHostContainerRegistryService } from './embed-host-container-registry.service';
6
+ import { EmbedOverlayRootService } from './embed-overlay-root.service';
7
+ import { EmbedRuntimePolicyService } from './embed-runtime-policy.service';
8
+ import { EmbedSceneCanvasCaptureService } from './embed-scene-canvas-capture.service';
9
+ export declare const EMBED_DUPLICATE_CHILD_UNIT_ERROR_CODE = "EMBED_DUPLICATE_CHILD_UNIT";
10
+ export declare class EmbedDuplicateChildUnitError extends Error {
11
+ readonly childUnitId: string;
12
+ readonly existingEmbedId: string;
13
+ readonly code = "EMBED_DUPLICATE_CHILD_UNIT";
14
+ constructor(childUnitId: string, existingEmbedId: string);
15
+ }
16
+ export declare class EmbedMountService {
17
+ private readonly _hostContainerRegistry;
18
+ private readonly _childViewRegistry;
19
+ private readonly _overlayRootService;
20
+ private readonly _sceneCanvasCaptureService;
21
+ private readonly _univerInstanceService;
22
+ private readonly _runtimePolicyService;
23
+ private readonly _injector;
24
+ private readonly _sessions;
25
+ private readonly _tabFocusLeases;
26
+ constructor(_hostContainerRegistry: EmbedHostContainerRegistryService, _childViewRegistry: EmbedChildViewRegistryService, _overlayRootService: EmbedOverlayRootService, _sceneCanvasCaptureService: EmbedSceneCanvasCaptureService, _univerInstanceService: IUniverInstanceService, _runtimePolicyService: EmbedRuntimePolicyService, _injector: Injector);
27
+ mount(descriptor: IEmbedDescriptor): IEmbedMountSession;
28
+ mountIntoHostElement(descriptor: IEmbedDescriptor, hostElement: HTMLElement, runtimeRoots?: IEmbedHostMountResult['runtimeRoots']): IEmbedMountSession;
29
+ private _mountResolvedHost;
30
+ private _mountBlockedRuntime;
31
+ private _initializeFloatingSessionActiveState;
32
+ unmount(embedId: string): void;
33
+ getSession(embedId: string): IEmbedMountSession | undefined;
34
+ listSessions(): IEmbedMountSession[];
35
+ activateSession(embedId: string): void;
36
+ deactivateTabSessions(embedId?: string): IEmbedMountSession[];
37
+ deactivateFloatingSession(embedId: string): IEmbedMountSession | undefined;
38
+ setActive(embedId: string, active: boolean): void;
39
+ private _runChildBeforeDeactivate;
40
+ private _resolveLayout;
41
+ private _createRenderScope;
42
+ private _registerRuntimeBoundary;
43
+ private _normalizeHostMountResult;
44
+ private _mountFloatingMenu;
45
+ private _registerChildFocusBridge;
46
+ private _focusTabPeerSession;
47
+ private _activateTabPeerFocusLease;
48
+ private _releaseTabPeerFocusLeasesForHost;
49
+ private _releaseTabPeerFocusLease;
50
+ private _createMountFocusRestorer;
51
+ private _assertChildUnitAvailable;
52
+ }
@@ -0,0 +1,22 @@
1
+ import type { IDisposable } from '@univerjs/core';
2
+ export interface IEmbedOverlayRootRegistration {
3
+ childUnitId: string;
4
+ embedId?: string;
5
+ hostAnchorId?: string;
6
+ root: HTMLElement;
7
+ }
8
+ export declare class EmbedOverlayRootService {
9
+ private readonly _rootsByChildUnitId;
10
+ private readonly _rootsByEmbedId;
11
+ private readonly _rootsByHostAnchorId;
12
+ register(childUnitId: string, root: HTMLElement): IDisposable;
13
+ register(registration: IEmbedOverlayRootRegistration): IDisposable;
14
+ get(childUnitId: string): HTMLElement | null;
15
+ getByEmbedId(embedId: string): HTMLElement | null;
16
+ getByHostAnchorId(hostAnchorId: string): HTMLElement | null;
17
+ contains(target: EventTarget | Node | null | undefined, query: {
18
+ childUnitId?: string;
19
+ embedId?: string;
20
+ hostAnchorId?: string;
21
+ }): boolean;
22
+ }
@@ -0,0 +1,9 @@
1
+ import type { EmbedLayout } from '@univerjs-pro/embed';
2
+ import type { IDisposable, UniverInstanceType } from '@univerjs/core';
3
+ import type { IEmbedPassiveViewportProvider } from '../types/embed-ui';
4
+ export declare class EmbedPassiveViewportRegistryService {
5
+ private readonly _providers;
6
+ register(provider: IEmbedPassiveViewportProvider): IDisposable;
7
+ get(childType: UniverInstanceType, layout?: EmbedLayout): IEmbedPassiveViewportProvider | undefined;
8
+ list(): IEmbedPassiveViewportProvider[];
9
+ }
@@ -0,0 +1,9 @@
1
+ import type { IDisposable } from '@univerjs/core';
2
+ import type { IEmbedPassiveViewportWheelContext, IEmbedPassiveWheelHandlerContribution } from '../types/embed-ui';
3
+ export declare class EmbedPassiveWheelHandlerRegistryService {
4
+ private readonly _handlers;
5
+ register(handler: IEmbedPassiveWheelHandlerContribution): IDisposable;
6
+ handleWheel(context: IEmbedPassiveViewportWheelContext): boolean;
7
+ list(): IEmbedPassiveWheelHandlerContribution[];
8
+ private _sortHandlers;
9
+ }
@@ -0,0 +1,2 @@
1
+ import type { IEmbedFloatingMenuContribution } from '../types/embed-ui';
2
+ export declare function createEmbedProductFloatingMenuContributions(params: Pick<IEmbedFloatingMenuContribution, 'childType' | 'mount'>): IEmbedFloatingMenuContribution[];
@@ -0,0 +1,18 @@
1
+ import type { DependencyIdentifier, IDisposable, Injector } from '@univerjs/core';
2
+ import type { IEmbedProductMenuMountContext } from '../types/embed-ui';
3
+ import { UniverInstanceType } from '@univerjs/core';
4
+ import { IRibbonService } from '@univerjs/ui';
5
+ export declare function mountEmbedProductRibbonMenu(context: IEmbedProductMenuMountContext): IDisposable | undefined;
6
+ export declare function createEmbedProductRibbonRuntime(injector: Injector, params: {
7
+ childType: UniverInstanceType;
8
+ childUnitId?: string;
9
+ embedId?: string;
10
+ menuSchema?: unknown;
11
+ menuTitlePrefix?: string;
12
+ activeRibbonTab?: string;
13
+ scopedActionServiceTokens?: readonly DependencyIdentifier<unknown>[];
14
+ }): {
15
+ injector: Injector;
16
+ ribbonService: IRibbonService;
17
+ disposable: IDisposable;
18
+ };
@@ -0,0 +1,14 @@
1
+ import type { IDisposable, Injector, UniverInstanceType } from '@univerjs/core';
2
+ import type { EmbedProductMenuSurface, IEmbedProductMenuContribution, IEmbedProductMenuMountContext } from '../types/embed-ui';
3
+ export declare function registerEmbedProductMenuContribution(injector: Pick<Injector, 'get' | 'has'>, contribution: IEmbedProductMenuContribution): IDisposable | undefined;
4
+ export declare function flushPendingEmbedProductMenuContributions(injector: Pick<Injector, 'get' | 'has'>): void;
5
+ export declare class EmbedProductMenuRegistryService {
6
+ private readonly _contributions;
7
+ private _nextIndex;
8
+ constructor();
9
+ register(contribution: IEmbedProductMenuContribution): IDisposable;
10
+ get(childType: UniverInstanceType): IEmbedProductMenuContribution | undefined;
11
+ getAll(childType: UniverInstanceType, surface?: EmbedProductMenuSurface): readonly IEmbedProductMenuContribution[];
12
+ getMergedMenuSchema(childType: UniverInstanceType, surface?: EmbedProductMenuSurface): unknown | undefined;
13
+ mountMenu(context: Omit<IEmbedProductMenuMountContext, 'menuSchema'>): IDisposable | undefined;
14
+ }
@@ -0,0 +1,8 @@
1
+ import type { UniverInstanceType } from '@univerjs/core';
2
+ import type { IEmbedReadonlyPreviewProvider } from '../types/embed-ui';
3
+ export declare class EmbedReadonlyPreviewRegistryService {
4
+ private readonly _providers;
5
+ register(provider: IEmbedReadonlyPreviewProvider<any>): void;
6
+ get(childType: UniverInstanceType): IEmbedReadonlyPreviewProvider<any> | undefined;
7
+ list(): IEmbedReadonlyPreviewProvider<any>[];
8
+ }
@@ -0,0 +1,8 @@
1
+ import type { DependencyIdentifier, Injector, UniverInstanceType } from '@univerjs/core';
2
+ import type { IRenderManagerService } from '@univerjs/engine-render';
3
+ import type { IEmbedFloatPreviewProvider } from '../types/embed-ui';
4
+ export interface ICreateEmbedRenderCanvasPreviewProviderOptions {
5
+ childType: UniverInstanceType;
6
+ renderManagerService: DependencyIdentifier<IRenderManagerService>;
7
+ }
8
+ export declare function createEmbedRenderCanvasPreviewProvider(injector: Injector, options: ICreateEmbedRenderCanvasPreviewProviderOptions): IEmbedFloatPreviewProvider;
@@ -0,0 +1,52 @@
1
+ import type { EmbedLayout } from '@univerjs-pro/embed';
2
+ import type { DependencyIdentifier, IDisposable, UniverInstanceType } from '@univerjs/core';
3
+ import type { IRenderManagerService } from '@univerjs/engine-render';
4
+ import type { IEmbedChildContainerContext, IEmbedChildViewContribution } from '../types/embed-ui';
5
+ import { Injector } from '@univerjs/core';
6
+ export interface IEmbedRenderLike {
7
+ isMainScene?: boolean;
8
+ engine: {
9
+ mount: (target: HTMLElement) => void;
10
+ unmount?: () => void;
11
+ resize: () => void;
12
+ getCanvasElement?: () => HTMLCanvasElement | undefined;
13
+ getCanvas?: () => {
14
+ getCanvasEle?: () => HTMLCanvasElement | undefined;
15
+ } | undefined;
16
+ };
17
+ activate?: () => void;
18
+ components: {
19
+ forEach: (callback: (component: {
20
+ makeForceDirty?: (dirty: boolean) => void;
21
+ makeDirty?: (dirty?: boolean) => void;
22
+ }) => void) => void;
23
+ };
24
+ mainComponent?: {
25
+ makeDirty?: (dirty?: boolean) => void;
26
+ } | null | void;
27
+ scene: {
28
+ makeDirty: () => void;
29
+ render?: () => void;
30
+ };
31
+ with?: <T>(dependency: DependencyIdentifier<T>) => T;
32
+ }
33
+ export interface ICreateEmbedRenderChildViewContributionOptions {
34
+ childType: UniverInstanceType;
35
+ supportedLayouts: readonly EmbedLayout[];
36
+ renderManagerService: DependencyIdentifier<IRenderManagerService>;
37
+ }
38
+ export interface IMountEmbedRenderChildUnitOptions {
39
+ activate?: boolean;
40
+ scopedRenderInjector?: boolean;
41
+ scopedInjector?: Injector;
42
+ }
43
+ export declare function createEmbedRenderChildViewContribution(options: ICreateEmbedRenderChildViewContributionOptions): IEmbedChildViewContribution;
44
+ export declare function mountEmbedRenderChildUnit(context: IEmbedChildContainerContext, renderManagerServiceIdentifier: DependencyIdentifier<IRenderManagerService>, target?: HTMLElement, options?: IMountEmbedRenderChildUnitOptions): IDisposable | undefined;
45
+ export declare function observeEmbedRenderTargetResize(render: IEmbedRenderLike, target: HTMLElement, options?: {
46
+ activate?: boolean;
47
+ }): IDisposable;
48
+ export declare function ensureEmbedChildRender(renderManagerService: IRenderManagerService, childUnitId: string, renderParentInjector?: Injector): IEmbedRenderLike | undefined;
49
+ export declare function createEmbedChildRender(renderManagerService: IRenderManagerService, childUnitId: string, renderParentInjector?: Injector): IEmbedRenderLike | undefined;
50
+ export declare function refreshEmbedChildRender(render: IEmbedRenderLike, options?: {
51
+ activate?: boolean;
52
+ }): void;
@@ -0,0 +1,76 @@
1
+ import type { IDisposable, UniverInstanceType } from '@univerjs/core';
2
+ import { Subject } from 'rxjs';
3
+ export declare const EMBED_RUNTIME_FOCUS_ROLE_ATTRIBUTE = "data-embed-runtime-focus-role";
4
+ export type EmbedRuntimeFocusRole = 'runtime' | 'child-session' | 'child-editor' | 'child-popup' | 'floating-menu';
5
+ export type EmbedRuntimeSessionMode = 'host-passive' | 'child-keyboard' | 'child-fullscreen' | 'child-tab';
6
+ export interface IEmbedRuntimeFocusLeaseOptions {
7
+ embedId: string;
8
+ role: EmbedRuntimeFocusRole;
9
+ owner?: string;
10
+ sessionMode?: EmbedRuntimeSessionMode;
11
+ hostUnitId?: string;
12
+ childUnitId?: string;
13
+ childType?: UniverInstanceType;
14
+ associatedChildUnitIds?: string[];
15
+ }
16
+ export interface IEmbedRuntimeFocusElementRegistration {
17
+ embedId: string;
18
+ role: EmbedRuntimeFocusRole;
19
+ element: HTMLElement;
20
+ }
21
+ export interface IEmbedRuntimeScopeRegistration {
22
+ embedId: string;
23
+ hostUnitId?: string;
24
+ childUnitId?: string;
25
+ childType?: UniverInstanceType;
26
+ sessionMode?: EmbedRuntimeSessionMode;
27
+ }
28
+ export interface IEmbedRuntimeFocusLeaseQueryOptions {
29
+ ignoreOwners?: string[];
30
+ }
31
+ export declare class EmbedRuntimeFocusCoordinator {
32
+ private readonly _leases;
33
+ private readonly _elements;
34
+ private readonly _runtimeScopes;
35
+ private _leaseSequence;
36
+ readonly runtimeFocusChanged$: Subject<void>;
37
+ readonly runtimeSessionChanged$: Subject<void>;
38
+ acquireLease(options: IEmbedRuntimeFocusLeaseOptions): IDisposable;
39
+ hasChildInteractionLease(embedId: string | undefined): boolean;
40
+ hasBlockingChildFocusLease(embedId: string | undefined, options?: IEmbedRuntimeFocusLeaseQueryOptions): boolean;
41
+ hasAnyChildInteractionLease(): boolean;
42
+ hasAnyBlockingChildFocusLease(options?: IEmbedRuntimeFocusLeaseQueryOptions): boolean;
43
+ hasHostPreservingChildFocusLease(embedId: string | undefined, options?: IEmbedRuntimeFocusLeaseQueryOptions): boolean;
44
+ hasAnyHostPreservingChildFocusLease(options?: IEmbedRuntimeFocusLeaseQueryOptions): boolean;
45
+ hasHostPreservingChildFocusLeaseForHost(hostUnitId: string | undefined, options?: IEmbedRuntimeFocusLeaseQueryOptions): boolean;
46
+ isChildUnitInActiveSession(unitId: string | undefined): boolean;
47
+ registerRuntimeScope(options: IEmbedRuntimeScopeRegistration): IDisposable;
48
+ resolveRuntimeScopeByChildUnitId(childUnitId: string | undefined): IEmbedRuntimeScopeRegistration | undefined;
49
+ resolveActiveChildSessionRuntimeScope(): IEmbedRuntimeScopeRegistration | undefined;
50
+ isChildUnitRuntimeEvent(unitId: string | undefined, target: EventTarget | null | undefined, event?: Event): boolean;
51
+ shouldSuppressHostInteraction(unitId: string | undefined, target?: EventTarget | null, event?: Event, options?: IEmbedRuntimeFocusLeaseQueryOptions): boolean;
52
+ registerElement(options: IEmbedRuntimeFocusElementRegistration): IDisposable;
53
+ containsElement(embedId: string | undefined, target: EventTarget | null | undefined, event?: Event): boolean;
54
+ private _containsRegisteredElement;
55
+ private _isBlockingLease;
56
+ private _isHostPreservingLease;
57
+ private _leaseAppliesToHostUnit;
58
+ private _ownedRuntimeFocusAppliesToHost;
59
+ private _leaseAppliesToChildUnit;
60
+ private _ownedEmbedAppliesToChildUnit;
61
+ private _isBlockingRole;
62
+ private _getChildSessionPriority;
63
+ private _resolveChildSessionMode;
64
+ private _isOwnedBoundaryElement;
65
+ private _getOwnedEmbedIdFromTarget;
66
+ private _getOwnedEmbedIdFromEventPoint;
67
+ private _getEventClientPoint;
68
+ private _rectContainsPoint;
69
+ private _getActiveOwnedRuntimeFocusInfo;
70
+ private _isHTMLElement;
71
+ private _isRuntimeFocusRole;
72
+ private _getAnyActiveElement;
73
+ private _getActiveElement;
74
+ private _notifyRuntimeFocusChanged;
75
+ private _notifyRuntimeSessionChanged;
76
+ }