@univerjs-pro/slides-ui 1.0.0-alpha.1 → 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.
- package/README.md +5 -2
- package/lib/cjs/index.js +1 -1
- package/lib/cjs/locale/ar-SA.js +1 -1
- package/lib/cjs/locale/ca-ES.js +1 -1
- package/lib/cjs/locale/de-DE.js +1 -1
- package/lib/cjs/locale/en-US.js +1 -1
- package/lib/cjs/locale/es-ES.js +1 -1
- package/lib/cjs/locale/fa-IR.js +1 -1
- package/lib/cjs/locale/fr-FR.js +1 -1
- package/lib/cjs/locale/id-ID.js +1 -1
- package/lib/cjs/locale/it-IT.js +1 -1
- package/lib/cjs/locale/ja-JP.js +1 -1
- package/lib/cjs/locale/ko-KR.js +1 -1
- package/lib/cjs/locale/pl-PL.js +1 -1
- package/lib/cjs/locale/pt-BR.js +1 -1
- package/lib/cjs/locale/ru-RU.js +1 -1
- package/lib/cjs/locale/sk-SK.js +1 -1
- package/lib/cjs/locale/vi-VN.js +1 -1
- package/lib/cjs/locale/zh-CN.js +1 -1
- package/lib/cjs/locale/zh-HK.js +1 -1
- package/lib/cjs/locale/zh-TW.js +1 -1
- package/lib/es/index.js +1 -1
- package/lib/es/locale/ar-SA.js +1 -1
- package/lib/es/locale/ca-ES.js +1 -1
- package/lib/es/locale/de-DE.js +1 -1
- package/lib/es/locale/en-US.js +1 -1
- package/lib/es/locale/es-ES.js +1 -1
- package/lib/es/locale/fa-IR.js +1 -1
- package/lib/es/locale/fr-FR.js +1 -1
- package/lib/es/locale/id-ID.js +1 -1
- package/lib/es/locale/it-IT.js +1 -1
- package/lib/es/locale/ja-JP.js +1 -1
- package/lib/es/locale/ko-KR.js +1 -1
- package/lib/es/locale/pl-PL.js +1 -1
- package/lib/es/locale/pt-BR.js +1 -1
- package/lib/es/locale/ru-RU.js +1 -1
- package/lib/es/locale/sk-SK.js +1 -1
- package/lib/es/locale/vi-VN.js +1 -1
- package/lib/es/locale/zh-CN.js +1 -1
- package/lib/es/locale/zh-HK.js +1 -1
- package/lib/es/locale/zh-TW.js +1 -1
- package/lib/index.css +157 -115
- package/lib/index.js +1 -1
- package/lib/locale/ar-SA.js +1 -1
- package/lib/locale/ca-ES.js +1 -1
- package/lib/locale/de-DE.js +1 -1
- package/lib/locale/en-US.js +1 -1
- package/lib/locale/es-ES.js +1 -1
- package/lib/locale/fa-IR.js +1 -1
- package/lib/locale/fr-FR.js +1 -1
- package/lib/locale/id-ID.js +1 -1
- package/lib/locale/it-IT.js +1 -1
- package/lib/locale/ja-JP.js +1 -1
- package/lib/locale/ko-KR.js +1 -1
- package/lib/locale/pl-PL.js +1 -1
- package/lib/locale/pt-BR.js +1 -1
- package/lib/locale/ru-RU.js +1 -1
- package/lib/locale/sk-SK.js +1 -1
- package/lib/locale/vi-VN.js +1 -1
- package/lib/locale/zh-CN.js +1 -1
- package/lib/locale/zh-HK.js +1 -1
- package/lib/locale/zh-TW.js +1 -1
- package/lib/types/components/canvas-view/CanvasView.d.ts +141 -3
- package/lib/types/components/editor-content/EditorContent.d.ts +4 -1
- package/lib/types/components/embed-child-workbench/SlideEmbedChildWorkbench.d.ts +8 -0
- package/lib/types/components/embed-floating-menu/SlideEmbedFloatingMenu.d.ts +43 -0
- package/lib/types/components/embed-floating-preview/SlideEmbedFloatingPreview.d.ts +24 -0
- package/lib/types/components/embed-floating-preview/SlideEmbedFloatingPreview.spec.d.ts +4 -0
- package/lib/types/components/host-ui/SlideHostUiParts.d.ts +7 -0
- package/lib/types/components/insert-toolbar/ShapePicker.d.ts +5 -10
- package/lib/types/components/object-list-panel/SlideObjectListPanel.d.ts +1 -1
- package/lib/types/components/object-list-panel/slide-object-list-state.d.ts +1 -0
- package/lib/types/components/presentation/SlidePresentationEmbedLayer.d.ts +34 -0
- package/lib/types/components/table-size/SlideTableSizePicker.d.ts +2 -12
- package/lib/types/components/thumbnail-bar/ThumbnailBar.d.ts +21 -0
- package/lib/types/controllers/slide-connector-endpoint.controller.d.ts +1 -1
- package/lib/types/controllers/slide-contextual-ribbon.controller.d.ts +10 -1
- package/lib/types/controllers/slide-drawing-selection.controller.d.ts +15 -3
- package/lib/types/controllers/slide-drawing-transform.controller.d.ts +3 -0
- package/lib/types/controllers/slide-drawing-transformer-config.util.d.ts +3 -1
- package/lib/types/controllers/slide-image-cropper.controller.d.ts +20 -1
- package/lib/types/controllers/slide-render.controller.d.ts +2 -0
- package/lib/types/default-config.d.ts +2 -2
- package/lib/types/embed-active-page.d.ts +5 -0
- package/lib/types/embed-floating-menu-stage.d.ts +14 -0
- package/lib/types/embed-focus-owner.d.ts +40 -0
- package/lib/types/index.d.ts +30 -7
- package/lib/types/locale/en-US.d.ts +6 -203
- package/lib/types/quick-styles/presets.d.ts +4 -3
- package/lib/types/render-objects/document-text-render.util.d.ts +6 -0
- package/lib/types/render-objects/index.d.ts +1 -0
- package/lib/types/render-objects/placeholder-object/index.d.ts +1 -0
- package/lib/types/render-objects/placeholder-object/placeholder-text-rect.util.d.ts +7 -0
- package/lib/types/render-objects/slide-drawing-base.d.ts +1 -3
- package/lib/types/render-objects/slide-image-object.d.ts +2 -2
- package/lib/types/render-objects/slide-page-background-object.d.ts +4 -1
- package/lib/types/render-objects/slide-shape-object.d.ts +2 -1
- package/lib/types/render-objects/slide-table-object.d.ts +9 -4
- package/lib/types/services/slide-canvas-pop-manager.service.d.ts +2 -1
- package/lib/types/services/slide-embed-integration.service.d.ts +45 -0
- package/lib/types/services/slide-embed-runtime.service.d.ts +50 -0
- package/lib/types/services/slide-hit-test.service.d.ts +2 -0
- package/lib/types/services/slide-insert.service.d.ts +8 -6
- package/lib/types/slide-editor/editor-ui/index.d.ts +1 -1
- package/lib/types/slide-editor/editor-ui/utils/render.d.ts +12 -3
- package/lib/types/slide-editor/services/slide-text-editing.service.d.ts +3 -1
- package/lib/types/slide-editor/views/shape-floating-toolbar/ShapeFloatingToolbar.d.ts +1 -1
- package/lib/types/utils/shape-text-style.util.d.ts +9 -5
- package/lib/types/views/render/adaptors/image-adaptor.d.ts +3 -3
- package/lib/types/views/render/adaptors/placeholder-adaptor.d.ts +1 -2
- package/lib/types/views/render/adaptors/shape-adaptor.d.ts +1 -2
- package/lib/types/views/render/adaptors/table-adaptor.d.ts +3 -3
- package/lib/umd/index.js +1 -1
- package/lib/umd/locale/ar-SA.js +1 -1
- package/lib/umd/locale/ca-ES.js +1 -1
- package/lib/umd/locale/de-DE.js +1 -1
- package/lib/umd/locale/en-US.js +1 -1
- package/lib/umd/locale/es-ES.js +1 -1
- package/lib/umd/locale/fa-IR.js +1 -1
- package/lib/umd/locale/fr-FR.js +1 -1
- package/lib/umd/locale/id-ID.js +1 -1
- package/lib/umd/locale/it-IT.js +1 -1
- package/lib/umd/locale/ja-JP.js +1 -1
- package/lib/umd/locale/ko-KR.js +1 -1
- package/lib/umd/locale/pl-PL.js +1 -1
- package/lib/umd/locale/pt-BR.js +1 -1
- package/lib/umd/locale/ru-RU.js +1 -1
- package/lib/umd/locale/sk-SK.js +1 -1
- package/lib/umd/locale/vi-VN.js +1 -1
- package/lib/umd/locale/zh-CN.js +1 -1
- package/lib/umd/locale/zh-HK.js +1 -1
- package/lib/umd/locale/zh-TW.js +1 -1
- package/package.json +18 -19
- package/lib/types/components/shape-picker/shapes.d.ts +0 -34
- package/lib/types/slide-editor/views/shape-text-editor/ShapeTextFloatToolbar.d.ts +0 -1
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { ISlideEmbedRuntimeSession } from '../../services/slide-embed-runtime.service';
|
|
2
|
+
export declare function SlideHostThumbnailBar(): import("react").JSX.Element | null;
|
|
3
|
+
export declare function SlideHostEditorContent(): import("react").JSX.Element | null;
|
|
4
|
+
export declare function SlideHostFooter(): import("react").JSX.Element | null;
|
|
5
|
+
export declare function SlideHostShapeTextEditorContainer(): import("react").JSX.Element | null;
|
|
6
|
+
export declare function SlideHostEditorUIFloatingContainer(): import("react").JSX.Element | null;
|
|
7
|
+
export declare function isSlideEmbedChildUnitSession(sessions: readonly Pick<ISlideEmbedRuntimeSession, 'childType' | 'childUnitId'>[], slideUnitId: string | null | undefined, focusedUnitId?: string | null): boolean;
|
|
@@ -1,28 +1,23 @@
|
|
|
1
|
+
import type { ShapeGroupEnum, ShapeTypeOption } from '@univerjs-pro/shape-editor-ui';
|
|
1
2
|
import type { ISlideInsertShapeOptions } from '@univerjs-pro/slides';
|
|
2
|
-
import type { ShapeGroupEnum } from '../shape-picker/shapes';
|
|
3
|
-
import { shapeTypeOptions } from '../shape-picker/shapes';
|
|
4
3
|
export declare const SLIDE_SHAPE_PICKER_COMPONENT = "slide.shape.picker.component";
|
|
5
4
|
export declare const SLIDE_IMAGE_CLIP_SHAPE_PICKER_COMPONENT = "slide.image-clip-shape-picker.component";
|
|
6
5
|
export declare const SLIDE_CHANGE_SHAPE_PICKER_COMPONENT = "slide.change-shape-picker.component";
|
|
7
|
-
|
|
8
|
-
t: (key: string) => string;
|
|
9
|
-
}
|
|
10
|
-
export declare function getSlideShapePickerTitle(localeService: ISlideShapePickerLocaleService, shape: typeof shapeTypeOptions[0]): string;
|
|
11
|
-
export declare function createSlideInsertShapeOptions(localeService: ISlideShapePickerLocaleService, shape: typeof shapeTypeOptions[0]): ISlideInsertShapeOptions;
|
|
6
|
+
export declare function createSlideInsertShapeOptions(shape: ShapeTypeOption, nameBase: string): ISlideInsertShapeOptions;
|
|
12
7
|
interface ISlideShapePickerComponentProps {
|
|
13
|
-
onShapeClick: (shape:
|
|
8
|
+
onShapeClick: (shape: ShapeTypeOption) => void;
|
|
14
9
|
excludeGroups?: ShapeGroupEnum[];
|
|
15
10
|
variant?: 'card' | 'dropdown';
|
|
16
11
|
}
|
|
17
12
|
export declare function SlideShapePickerComponent({ onShapeClick, excludeGroups, variant }: ISlideShapePickerComponentProps): import("react").JSX.Element;
|
|
18
13
|
interface ISlideShapePickerProps {
|
|
19
|
-
onSelect?: (shape:
|
|
14
|
+
onSelect?: (shape: ShapeTypeOption) => void;
|
|
20
15
|
variant?: 'card' | 'dropdown';
|
|
21
16
|
}
|
|
22
17
|
export declare function SlideShapePicker(props: ISlideShapePickerProps): import("react").JSX.Element;
|
|
23
18
|
export declare function SlideImageClipShapePicker(): import("react").JSX.Element;
|
|
24
19
|
interface ISlideImageClipShapePickerProps {
|
|
25
|
-
onSelect?: (shape:
|
|
20
|
+
onSelect?: (shape: ShapeTypeOption) => void;
|
|
26
21
|
}
|
|
27
22
|
export declare function SlideImageClipShapePickerWithAction(props: ISlideImageClipShapePickerProps): import("react").JSX.Element;
|
|
28
23
|
interface ISlideChangeShapePickerProps {
|
|
@@ -2,4 +2,4 @@ export interface ISlideObjectListPanelProps {
|
|
|
2
2
|
unitId: string;
|
|
3
3
|
subUnitId: string;
|
|
4
4
|
}
|
|
5
|
-
export declare function SlideObjectListPanel(
|
|
5
|
+
export declare function SlideObjectListPanel({ unitId, subUnitId }: ISlideObjectListPanelProps): import("react").JSX.Element;
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import type { SlideModel } from '@univerjs-pro/slides';
|
|
2
|
+
import type { UniverInstanceType } from '@univerjs/core';
|
|
3
|
+
type EmbedHostEntry = 'slides-floating-object' | 'slides-page-list-block';
|
|
4
|
+
export interface ISlidePresentationEmbedItem {
|
|
5
|
+
kind: 'floating' | 'page';
|
|
6
|
+
embedId: string;
|
|
7
|
+
hostAnchorId: string;
|
|
8
|
+
childUnitId?: string;
|
|
9
|
+
childType?: UniverInstanceType;
|
|
10
|
+
entry: EmbedHostEntry;
|
|
11
|
+
frame: {
|
|
12
|
+
left: number;
|
|
13
|
+
top: number;
|
|
14
|
+
width: number;
|
|
15
|
+
height: number;
|
|
16
|
+
};
|
|
17
|
+
}
|
|
18
|
+
export declare function resolveSlidePresentationEmbedItems(params: {
|
|
19
|
+
slideModel: SlideModel;
|
|
20
|
+
slideId: string;
|
|
21
|
+
stageSize: {
|
|
22
|
+
width: number;
|
|
23
|
+
height: number;
|
|
24
|
+
};
|
|
25
|
+
}): ISlidePresentationEmbedItem[];
|
|
26
|
+
export declare function SlidePresentationEmbedLayer(props: {
|
|
27
|
+
slideModel: SlideModel;
|
|
28
|
+
slideId: string;
|
|
29
|
+
stageSize: {
|
|
30
|
+
width: number;
|
|
31
|
+
height: number;
|
|
32
|
+
};
|
|
33
|
+
}): import("react").JSX.Element | null;
|
|
34
|
+
export {};
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import type { IDialogPartMethodOptions } from '@univerjs/ui';
|
|
2
|
-
import { LocaleService } from '@univerjs/core';
|
|
3
2
|
export interface ISlideTableSize {
|
|
4
3
|
rows: number;
|
|
5
4
|
columns: number;
|
|
@@ -14,22 +13,13 @@ export interface ISlideTableSizePickerProps {
|
|
|
14
13
|
maxRows?: number;
|
|
15
14
|
maxColumns?: number;
|
|
16
15
|
variant?: 'card' | 'dropdown';
|
|
16
|
+
direction?: 'ltr' | 'rtl';
|
|
17
17
|
title?: string;
|
|
18
|
-
|
|
19
|
-
rowsLabel: string;
|
|
20
|
-
columnsLabel: string;
|
|
21
|
-
confirmLabel: string;
|
|
18
|
+
confirmAction?: 'insert' | 'apply';
|
|
22
19
|
onConfirm: (size: ISlideTableSize) => void;
|
|
23
20
|
}
|
|
24
21
|
export declare const SLIDE_TABLE_SIZE_DIALOG_COMPONENT = "slide.table-size.dialog";
|
|
25
22
|
export declare const SLIDE_TABLE_SIZE_DIALOG_ID = "slide.table-size.dialog";
|
|
26
|
-
export type TSlideTableSizePickerConfirmLabel = 'insert' | 'apply';
|
|
27
|
-
export declare function getSlideTableSizePickerLabels(localeService: Pick<LocaleService, 't'>, confirmLabel?: TSlideTableSizePickerConfirmLabel): {
|
|
28
|
-
customSizeLabel: string;
|
|
29
|
-
rowsLabel: string;
|
|
30
|
-
columnsLabel: string;
|
|
31
|
-
confirmLabel: string;
|
|
32
|
-
};
|
|
33
23
|
export declare function normalizeSlideTableSizeValue(value: number, min: number, max: number): number;
|
|
34
24
|
export declare function SlideTableSizePicker(props: ISlideTableSizePickerProps): import("react").JSX.Element;
|
|
35
25
|
export interface ISlideTableSizeDialogProps {
|
|
@@ -1,5 +1,8 @@
|
|
|
1
|
+
import type { SlideModel } from '@univerjs-pro/slides';
|
|
1
2
|
import type { ComponentType } from 'react';
|
|
2
3
|
import type { LocaleKey } from '../../locale/types';
|
|
4
|
+
import { Injector, UniverInstanceType } from '@univerjs/core';
|
|
5
|
+
export declare function getSlideFloatingPanelPortalContainer(): HTMLElement;
|
|
3
6
|
type TThumbnailContextMenuAction = 'cut' | 'copy' | 'paste' | 'addBelow' | 'delete';
|
|
4
7
|
interface IThumbnailContextMenuItem {
|
|
5
8
|
action: TThumbnailContextMenuAction;
|
|
@@ -12,7 +15,20 @@ interface IThumbnailContextMenuItem {
|
|
|
12
15
|
slideCount: number;
|
|
13
16
|
}) => boolean;
|
|
14
17
|
}
|
|
18
|
+
export interface IEmbedFloatingThumbnailPreviewItem {
|
|
19
|
+
embedId: string;
|
|
20
|
+
hostAnchorId: string;
|
|
21
|
+
childType?: UniverInstanceType;
|
|
22
|
+
left: number;
|
|
23
|
+
top: number;
|
|
24
|
+
width: number;
|
|
25
|
+
height: number;
|
|
26
|
+
}
|
|
15
27
|
export declare const THUMBNAIL_CONTEXT_MENU_ITEMS: IThumbnailContextMenuItem[];
|
|
28
|
+
export declare function deactivateActiveEmbedPageBeforeSlidePageActivation(injector: Injector, slideModel: SlideModel, nextPageId?: string): void;
|
|
29
|
+
export declare function deactivateEmbedPageBeforeRegularPageActivation(injector: Injector, slideModel: SlideModel): void;
|
|
30
|
+
export declare function scheduleSlidePageActivation(slideModel: SlideModel, pageId: string): void;
|
|
31
|
+
export declare function resolveEmbedFloatingThumbnailPreviewItems(elements: Record<string, unknown> | undefined, pageWidth: number, pageHeight: number, containerWidth: number, containerHeight: number): IEmbedFloatingThumbnailPreviewItem[];
|
|
16
32
|
/**
|
|
17
33
|
* Left-sidebar thumbnail strip.
|
|
18
34
|
*
|
|
@@ -21,4 +37,9 @@ export declare const THUMBNAIL_CONTEXT_MENU_ITEMS: IThumbnailContextMenuItem[];
|
|
|
21
37
|
* The "+ Add slide" button opens a layout picker popover.
|
|
22
38
|
*/
|
|
23
39
|
export declare function SlideThumbnailBar(): import("react").JSX.Element | null;
|
|
40
|
+
declare global {
|
|
41
|
+
interface Window {
|
|
42
|
+
__univerEmbedThumbnailPreviews?: Map<string, string>;
|
|
43
|
+
}
|
|
44
|
+
}
|
|
24
45
|
export {};
|
|
@@ -27,7 +27,7 @@ export declare class SlideConnectorEndpointController extends RxDisposable imple
|
|
|
27
27
|
private _refreshScheduled;
|
|
28
28
|
/** Guard to prevent re-entrant connector-follow updates when we update connectors. */
|
|
29
29
|
private _isUpdatingConnectors;
|
|
30
|
-
constructor(_renderContext: IRenderContext<SlideModel>, _injector: Injector, _instanceSrv: IUniverInstanceService, _slideDrawingService: ISlideDrawingService, _commandService: ICommandService, _adjustController
|
|
30
|
+
constructor(_renderContext: IRenderContext<SlideModel>, _injector: Injector, _instanceSrv: IUniverInstanceService, _slideDrawingService: ISlideDrawingService, _commandService: ICommandService, _adjustController: SlideShapeAdjustController);
|
|
31
31
|
private _init;
|
|
32
32
|
private _getDrawingRenderObject;
|
|
33
33
|
private _isSlideDrawingTarget;
|
|
@@ -1,13 +1,22 @@
|
|
|
1
1
|
import { Disposable } from '@univerjs/core';
|
|
2
2
|
import { IMenuManagerService, IRibbonService } from '@univerjs/ui';
|
|
3
|
+
import { ISlideEmbedFocusOwnerService } from '../embed-focus-owner';
|
|
3
4
|
import { ISlideDrawingStateService } from '../services/slide-drawing-state.service';
|
|
5
|
+
import { ISlideEmbedFloatingActiveService, ISlideEmbedMountService } from '../services/slide-embed-integration.service';
|
|
4
6
|
export declare class SlideContextualRibbonController extends Disposable {
|
|
5
7
|
private readonly _menuManagerService;
|
|
6
8
|
private readonly _ribbonService;
|
|
7
9
|
private readonly _slideDrawingStateService;
|
|
10
|
+
private readonly _embedFocusOwnerService?;
|
|
11
|
+
private readonly _embedFloatingActiveService?;
|
|
12
|
+
private readonly _embedMountService?;
|
|
8
13
|
private _shapeFormatVisible;
|
|
9
|
-
constructor(_menuManagerService: IMenuManagerService, _ribbonService: IRibbonService, _slideDrawingStateService: ISlideDrawingStateService);
|
|
14
|
+
constructor(_menuManagerService: IMenuManagerService, _ribbonService: IRibbonService, _slideDrawingStateService: ISlideDrawingStateService, _embedFocusOwnerService?: ISlideEmbedFocusOwnerService | undefined, _embedFloatingActiveService?: ISlideEmbedFloatingActiveService | undefined, _embedMountService?: ISlideEmbedMountService | undefined);
|
|
10
15
|
dispose(): void;
|
|
11
16
|
private _initMenu;
|
|
12
17
|
private _listenSelection;
|
|
18
|
+
private _isNonFullscreenFloatingEmbedChildSelection;
|
|
19
|
+
private _isIsolatedEmbedChildSelection;
|
|
20
|
+
private _isActiveFloatingEmbedHostSelection;
|
|
21
|
+
private _hideShapeFormatTab;
|
|
13
22
|
}
|
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
import type { UnitModel } from '@univerjs/core';
|
|
2
2
|
import type { IRenderContext, IRenderModule } from '@univerjs/engine-render';
|
|
3
|
+
import type { ISlideEmbedFloatingActivation } from '../services/slide-embed-integration.service';
|
|
3
4
|
import { ISlideDrawingService } from '@univerjs-pro/slides';
|
|
4
5
|
import { ICommandService, Injector, IUniverInstanceService, RxDisposable, ThemeService } from '@univerjs/core';
|
|
6
|
+
import { ISlideEmbedFocusOwnerService } from '../embed-focus-owner';
|
|
5
7
|
import { ISlideDrawingStateService } from '../services/slide-drawing-state.service';
|
|
8
|
+
import { ISlideEmbedActivationService, ISlideEmbedFloatingActiveService } from '../services/slide-embed-integration.service';
|
|
6
9
|
import { SlideHitTestService } from '../services/slide-hit-test.service';
|
|
7
10
|
import { ISlideTransformerVisibilityService } from '../services/slide-transformer-visibility.service';
|
|
8
11
|
import { SlideTextEditingService } from '../slide-editor/services/slide-text-editing.service';
|
|
9
|
-
export { buildDrawingOKey, SLIDE_DRAWING_OBJECT_KEY_PREFIX } from '../services/slide-hit-test.service';
|
|
10
|
-
export { SLIDE_TRANSFORMER_CONFIG } from './slide-drawing-transformer-config.util';
|
|
11
12
|
/**
|
|
12
13
|
* SlideDrawingSelectionController v2
|
|
13
14
|
*
|
|
@@ -41,6 +42,9 @@ export declare class SlideDrawingSelectionController extends RxDisposable implem
|
|
|
41
42
|
private readonly _slideTextEditingService;
|
|
42
43
|
private readonly _commandService;
|
|
43
44
|
private readonly _themeService;
|
|
45
|
+
private readonly _embedFocusOwnerService?;
|
|
46
|
+
private readonly _embedFloatingActiveService?;
|
|
47
|
+
private readonly _embedActivationService?;
|
|
44
48
|
/** Prevents the circular path: service.focus$ -> transformer sync -> changeStart$ -> service. */
|
|
45
49
|
private _isSyncingTransformer;
|
|
46
50
|
/**
|
|
@@ -52,7 +56,7 @@ export declare class SlideDrawingSelectionController extends RxDisposable implem
|
|
|
52
56
|
private _attachScheduled;
|
|
53
57
|
private _marqueeRect;
|
|
54
58
|
private _handledDrawingPointerDownEvent;
|
|
55
|
-
constructor(_renderContext: IRenderContext<UnitModel>, _injector: Injector, _instanceSrv: IUniverInstanceService, _hitTestSrv: SlideHitTestService, _stateSrv: ISlideDrawingStateService, _slideDrawingSrv: ISlideDrawingService, _transformerVisibilityService: ISlideTransformerVisibilityService, _slideTextEditingService: SlideTextEditingService, _commandService: ICommandService, _themeService: ThemeService);
|
|
59
|
+
constructor(_renderContext: IRenderContext<UnitModel>, _injector: Injector, _instanceSrv: IUniverInstanceService, _hitTestSrv: SlideHitTestService, _stateSrv: ISlideDrawingStateService, _slideDrawingSrv: ISlideDrawingService, _transformerVisibilityService: ISlideTransformerVisibilityService, _slideTextEditingService: SlideTextEditingService, _commandService: ICommandService, _themeService: ThemeService, _embedFocusOwnerService?: ISlideEmbedFocusOwnerService | undefined, _embedFloatingActiveService?: ISlideEmbedFloatingActiveService | undefined, _embedActivationService?: ISlideEmbedActivationService | undefined);
|
|
56
60
|
private _init;
|
|
57
61
|
private _wirePointerEvents;
|
|
58
62
|
private _wireTransformerToState;
|
|
@@ -60,6 +64,7 @@ export declare class SlideDrawingSelectionController extends RxDisposable implem
|
|
|
60
64
|
private _wireStateToTransformer;
|
|
61
65
|
private _syncToTransformer;
|
|
62
66
|
private _shouldShowTransformer;
|
|
67
|
+
private _isSelectableDrawing;
|
|
63
68
|
private _wireTextEditingGuard;
|
|
64
69
|
private _wireMarqueeSelection;
|
|
65
70
|
private _wireLifecycleEvents;
|
|
@@ -67,13 +72,19 @@ export declare class SlideDrawingSelectionController extends RxDisposable implem
|
|
|
67
72
|
private _scheduleAttachWithFollowUp;
|
|
68
73
|
private _collectGroupChildIds;
|
|
69
74
|
private _attachTransformerToDrawings;
|
|
75
|
+
private _syncSelectionAfterDrawingAvailabilityChange;
|
|
70
76
|
private _rangeSelect;
|
|
71
77
|
private _getExistingMultiSelectionIds;
|
|
72
78
|
private _handleBackgroundPointerDown;
|
|
73
79
|
private _applyPointerSelection;
|
|
80
|
+
private _focusUnitIfAllowed;
|
|
81
|
+
private _clearActiveFloatingForHostDrawing;
|
|
82
|
+
private _isNonFullscreenFloatingEmbedChildUnit;
|
|
74
83
|
private _shouldIgnoreTransformerEvents;
|
|
75
84
|
private _markDrawingPointerDownHandled;
|
|
76
85
|
private _isHandledDrawingPointerDown;
|
|
86
|
+
private _isPointerOnSelectedTransformerControl;
|
|
87
|
+
private _isPointNearTransformerControl;
|
|
77
88
|
private _clearTransformerSelection;
|
|
78
89
|
private _normalizeRect;
|
|
79
90
|
private _toScenePoint;
|
|
@@ -88,3 +99,4 @@ export declare class SlideDrawingSelectionController extends RxDisposable implem
|
|
|
88
99
|
private _applyTransformerConfig;
|
|
89
100
|
dispose(): void;
|
|
90
101
|
}
|
|
102
|
+
export declare function getActiveSlideFloatingEmbedIdForHost(active: ISlideEmbedFloatingActivation | null | undefined, hostUnitId: string): string | null;
|
|
@@ -22,12 +22,15 @@ export declare class SlideDrawingTransformController extends RxDisposable implem
|
|
|
22
22
|
private readonly _slideTextEditingService;
|
|
23
23
|
private _lastRealtimeSyncAt;
|
|
24
24
|
private readonly _realtimeSyncIntervalMs;
|
|
25
|
+
private readonly _transformStartRects;
|
|
25
26
|
constructor(_renderContext: IRenderContext<UnitModel>, _injector: Injector, _instanceSrv: IUniverInstanceService, _slideDrawingService: ISlideDrawingService, _commandService: ICommandService, _slideTextEditingService: SlideTextEditingService);
|
|
26
27
|
private _init;
|
|
27
28
|
private _subscribeToTransformer;
|
|
28
29
|
private _syncTransformToData;
|
|
29
30
|
private _buildTransformPatches;
|
|
31
|
+
private _getActiveCropImageObjectKeys;
|
|
30
32
|
private _buildSingleTransformPatch;
|
|
33
|
+
private _resolveTextBoxResizePolicy;
|
|
31
34
|
private _collectTransformedGroupDescendants;
|
|
32
35
|
private _collectGroupDescendantsRecursively;
|
|
33
36
|
private _applyTransformPatches;
|
|
@@ -30,7 +30,7 @@ export declare const SLIDE_TRANSFORMER_CONFIG: {
|
|
|
30
30
|
readonly borderEnabled: true;
|
|
31
31
|
readonly borderStroke: "#4086f4";
|
|
32
32
|
readonly borderStrokeWidth: 1;
|
|
33
|
-
readonly borderSpacing:
|
|
33
|
+
readonly borderSpacing: 2;
|
|
34
34
|
readonly anchorFill: "#ffffff";
|
|
35
35
|
readonly anchorStroke: "#4086f4";
|
|
36
36
|
readonly anchorStrokeWidth: 1.5;
|
|
@@ -53,7 +53,9 @@ export declare const SLIDE_TRANSFORMER_CONFIG: {
|
|
|
53
53
|
readonly keepRatio: false;
|
|
54
54
|
readonly moveBoundaryEnabled: false;
|
|
55
55
|
};
|
|
56
|
+
export declare const SLIDE_EMBED_FLOATING_TRANSFORMER_BORDER_SPACING = 4;
|
|
56
57
|
export declare function isSlideTableDrawing(drawing: ISlideDrawing | null | undefined): boolean;
|
|
58
|
+
export declare function isSlideEmbedFloatingDrawing(drawing: ISlideDrawing | null | undefined): boolean;
|
|
57
59
|
export declare function slideDrawingSelectionContainsTable(drawings: Array<ISlideDrawing | null | undefined>): boolean;
|
|
58
60
|
export declare function resolveSlideDrawingTransformerConfig(drawing: ISlideDrawing, options?: {
|
|
59
61
|
selectionContainsTable?: boolean;
|
|
@@ -3,23 +3,42 @@ import type { IRenderContext, IRenderModule } from '@univerjs/engine-render';
|
|
|
3
3
|
import { ISlideDrawingService } from '@univerjs-pro/slides';
|
|
4
4
|
import { ICommandService, IUniverInstanceService, RxDisposable } from '@univerjs/core';
|
|
5
5
|
import { ISlideDrawingStateService } from '../services/slide-drawing-state.service';
|
|
6
|
+
import { ISlideSidebarStateService } from '../services/slide-sidebar-state.service';
|
|
6
7
|
export declare class SlideImageCropperController extends RxDisposable implements IRenderModule {
|
|
7
8
|
private readonly _renderContext;
|
|
8
9
|
private readonly _commandService;
|
|
9
10
|
private readonly _instanceService;
|
|
10
11
|
private readonly _slideDrawingService;
|
|
11
12
|
private readonly _slideDrawingStateService;
|
|
13
|
+
private readonly _slideSidebarStateService;
|
|
12
14
|
private _activeCropTarget;
|
|
13
15
|
private _startCropperTransform;
|
|
14
|
-
|
|
16
|
+
private _shapePanelCloseTimer;
|
|
17
|
+
private _selectionCloseTimer;
|
|
18
|
+
private _isTransformingCropper;
|
|
19
|
+
private _isPointerDownOnCropper;
|
|
20
|
+
private _pendingCloseCropPatch;
|
|
21
|
+
constructor(_renderContext: IRenderContext<UnitModel>, _commandService: ICommandService, _instanceService: IUniverInstanceService, _slideDrawingService: ISlideDrawingService, _slideDrawingStateService: ISlideDrawingStateService, _slideSidebarStateService: ISlideSidebarStateService);
|
|
15
22
|
private _init;
|
|
16
23
|
private _initOpenCrop;
|
|
17
24
|
private _initCloseCrop;
|
|
18
25
|
private _initCropperTransform;
|
|
19
26
|
private _initSelectionClose;
|
|
20
27
|
private _initActiveSlideClose;
|
|
28
|
+
private _initShapePanelClose;
|
|
29
|
+
private _scheduleCloseCropIfSelectionLeavesTarget;
|
|
30
|
+
private _isPlaceholderSelection;
|
|
31
|
+
private _clearSelectionCloseTimer;
|
|
32
|
+
private _scheduleCloseCropIfShapePanelStaysClosed;
|
|
33
|
+
private _clearShapePanelCloseTimer;
|
|
34
|
+
private _isSameCropTarget;
|
|
21
35
|
private _openCrop;
|
|
22
36
|
private _closeCrop;
|
|
37
|
+
private _captureCurrentCropPatch;
|
|
38
|
+
private _executePendingCloseCropPatch;
|
|
39
|
+
private _getCropObjectKey;
|
|
40
|
+
private _initCropperPointerState;
|
|
41
|
+
private _clearCropperControls;
|
|
23
42
|
private _buildCropPatch;
|
|
24
43
|
private _normalizeCrop;
|
|
25
44
|
private _getImageObject;
|
|
@@ -48,6 +48,8 @@ export declare class SlideRenderController extends RxDisposable implements IRend
|
|
|
48
48
|
private _normalizeSlideElementForCompare;
|
|
49
49
|
private _isEquivalentDrawingTransform;
|
|
50
50
|
private _normalizeDrawingTransformForCompare;
|
|
51
|
+
private _resolveCurrentPageSize;
|
|
52
|
+
private _shouldRefreshPageSizeChange;
|
|
51
53
|
private _shouldRedrawTableChange;
|
|
52
54
|
private _shouldRedrawOrderChange;
|
|
53
55
|
private _clearRenderedSlideObjects;
|
|
@@ -21,9 +21,9 @@ export declare const SLIDE_SHAPE_DEFAULT_STROKE_COLOR = "#2f3f5f";
|
|
|
21
21
|
export declare const SLIDE_SHAPE_DEFAULT_SHADOW_COLOR = "#000000";
|
|
22
22
|
export declare const SLIDE_SHAPE_DEFAULT_GRADIENT_START_COLOR = "#ffffff";
|
|
23
23
|
export declare const SLIDE_SHAPE_DEFAULT_GRADIENT_END_COLOR = "#000000";
|
|
24
|
-
export declare const SLIDE_SHAPE_TEXT_FALLBACK_COLOR
|
|
24
|
+
export declare const SLIDE_SHAPE_TEXT_FALLBACK_COLOR = "#111827";
|
|
25
25
|
/** Default quick-style fallback colors. */
|
|
26
|
-
export declare const SLIDE_QUICK_STYLE_DEFAULT_STROKE_COLOR
|
|
26
|
+
export declare const SLIDE_QUICK_STYLE_DEFAULT_STROKE_COLOR = "#111827";
|
|
27
27
|
/** Default presentation overlay colors. */
|
|
28
28
|
export declare const SLIDE_PRESENTATION_STAGE_BACKGROUND_COLOR = "#000";
|
|
29
29
|
export declare const SLIDE_PRESENTATION_CONTROL_BACKGROUND_COLOR = "rgba(17, 24, 39, 0.86)";
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
interface IEmbedFloatingActivation {
|
|
2
|
+
hostUnitId?: string;
|
|
3
|
+
childUnitId?: string;
|
|
4
|
+
embedId: string;
|
|
5
|
+
stage: 'inactive' | 'stage1' | 'stage2';
|
|
6
|
+
}
|
|
7
|
+
export declare function resolveSlidesFloatingMenuStage(params: {
|
|
8
|
+
embedId: string;
|
|
9
|
+
active: IEmbedFloatingActivation | null;
|
|
10
|
+
fullscreen?: boolean;
|
|
11
|
+
usesDomFloatingStage?: boolean;
|
|
12
|
+
renderScopeActive?: boolean;
|
|
13
|
+
}): 'inactive' | 'stage2';
|
|
14
|
+
export {};
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import type { SlideModel } from '@univerjs-pro/slides';
|
|
2
|
+
import type { Observable } from 'rxjs';
|
|
3
|
+
import type { ISlideEmbedRuntimeSession } from './services/slide-embed-runtime.service';
|
|
4
|
+
import { Injector } from '@univerjs/core';
|
|
5
|
+
export interface IEmbeddedFocusOwner {
|
|
6
|
+
hostUnitId: string;
|
|
7
|
+
childUnitId: string;
|
|
8
|
+
}
|
|
9
|
+
export interface ISlideEmbedFocusOwnerService {
|
|
10
|
+
focusOwner$: Observable<IEmbeddedFocusOwner | null>;
|
|
11
|
+
getFocusOwner(): IEmbeddedFocusOwner | null;
|
|
12
|
+
clearFocusOwner(embedId?: string): void;
|
|
13
|
+
}
|
|
14
|
+
export declare const ISlideEmbedFocusOwnerService: import("@wendellhu/redi").IdentifierDecorator<ISlideEmbedFocusOwnerService>;
|
|
15
|
+
export interface ISlideEmbedRuntimeFocusCoordinator {
|
|
16
|
+
runtimeFocusChanged$: Observable<unknown>;
|
|
17
|
+
hasHostPreservingChildFocusLeaseForHost(hostUnitId?: string): boolean;
|
|
18
|
+
}
|
|
19
|
+
export declare const ISlideEmbedRuntimeFocusCoordinator: import("@wendellhu/redi").IdentifierDecorator<ISlideEmbedRuntimeFocusCoordinator>;
|
|
20
|
+
export declare function shouldKeepSlideHostContentMounted(params: {
|
|
21
|
+
slideUnitId?: string | null;
|
|
22
|
+
focusedUnitId?: string | null;
|
|
23
|
+
embedFocusOwner?: Pick<IEmbeddedFocusOwner, 'hostUnitId' | 'childUnitId'> | null;
|
|
24
|
+
activeEmbedChildUnitIds?: readonly string[];
|
|
25
|
+
hasHostPreservingChildFocusLease?: boolean;
|
|
26
|
+
}): boolean;
|
|
27
|
+
export declare function normalizeSlideFocusedUnitId(unitId: string | void | null | undefined): string | null;
|
|
28
|
+
export declare function useSlideHostContentMountedState(): {
|
|
29
|
+
slideModel: SlideModel | undefined;
|
|
30
|
+
shouldRenderHostContent: boolean;
|
|
31
|
+
};
|
|
32
|
+
export declare function resolveSlideHostUnitIdForEmbedFocus(params: {
|
|
33
|
+
currentSlideUnitId?: string | null;
|
|
34
|
+
focusedUnitId?: string | null;
|
|
35
|
+
embedFocusOwner?: Pick<IEmbeddedFocusOwner, 'hostUnitId' | 'childUnitId'> | null;
|
|
36
|
+
runtimeSessions?: readonly Pick<ISlideEmbedRuntimeSession, 'hostUnitId' | 'entry' | 'childType' | 'childUnitId'>[];
|
|
37
|
+
}): string | undefined;
|
|
38
|
+
export declare function getEmbedFocusOwnerObservable(service: ISlideEmbedFocusOwnerService | undefined): Observable<IEmbeddedFocusOwner | null> | null;
|
|
39
|
+
export declare function tryGetEmbedFocusOwnerService(injector: Injector): ISlideEmbedFocusOwnerService | undefined;
|
|
40
|
+
export declare function tryGetRuntimeFocusCoordinator(injector: Injector): ISlideEmbedRuntimeFocusCoordinator | undefined;
|
package/lib/types/index.d.ts
CHANGED
|
@@ -2,20 +2,40 @@ import './global.css';
|
|
|
2
2
|
export { CloseSlideImageCropOperation, OpenSlideImageCropOperation } from './commands/operations/image-crop.operation';
|
|
3
3
|
export { SlidePlaceholderActionOperation } from './commands/operations/placeholder.operation';
|
|
4
4
|
export type { ISlidePlaceholderActionOperationParams } from './commands/operations/placeholder.operation';
|
|
5
|
+
export { SlideCanvasView } from './components/canvas-view/CanvasView';
|
|
6
|
+
export { attachSlideRenderToCanvasHost } from './components/canvas-view/CanvasView';
|
|
7
|
+
export { SlideEditorContent } from './components/editor-content/EditorContent';
|
|
8
|
+
export { SlideEmbedChildWorkbench } from './components/embed-child-workbench/SlideEmbedChildWorkbench';
|
|
9
|
+
export { SlidePresentationView } from './components/presentation/SlidePresentationView';
|
|
10
|
+
export { SlideFooter } from './components/slide-footer/SlideFooter';
|
|
11
|
+
export { isThumbnailRenderableDrawing } from './components/thumbnail-bar/thumbnail-render.util';
|
|
12
|
+
export { SlideThumbnailBar } from './components/thumbnail-bar/ThumbnailBar';
|
|
5
13
|
export { defaultPluginConfig, SLIDES_UI_PLUGIN_CONFIG_KEY } from './config/config';
|
|
6
14
|
export type { IUniverSlidesUIConfig } from './config/config';
|
|
7
15
|
export { resolveGroupFillInheritance } from './controllers/group-fill-inheritance.util';
|
|
8
16
|
export { assembleGroupHierarchy } from './controllers/group-hierarchy.util';
|
|
9
|
-
export {
|
|
17
|
+
export { resolveSlideLogicalPageSize } from './controllers/page-size.util';
|
|
18
|
+
export { SLIDE_MAIN_VIEWPORT_KEY, SLIDE_PAGE_RECT_KEY, SlideRenderController, } from './controllers/slide-render.controller';
|
|
10
19
|
export { SlideSidebarController } from './controllers/slide-sidebar.controller';
|
|
11
20
|
export { SlideUIController } from './controllers/ui.controller';
|
|
12
21
|
export * from './default-config';
|
|
22
|
+
export { ISlideEmbedFocusOwnerService, ISlideEmbedRuntimeFocusCoordinator } from './embed-focus-owner';
|
|
23
|
+
export { slideRibbonSchema } from './menu/schema';
|
|
13
24
|
export { UniverSlidesUIPlugin } from './plugin';
|
|
14
|
-
export { SlideImageObject
|
|
25
|
+
export { SlideImageObject } from './render-objects/slide-image-object';
|
|
26
|
+
export { SlidePageBackgroundObject } from './render-objects/slide-page-background-object';
|
|
27
|
+
export { SlidePageClipGroup } from './render-objects/slide-page-clip-group';
|
|
28
|
+
export { SlideCanvasPopManagerService } from './services/slide-canvas-pop-manager.service';
|
|
29
|
+
export type { ISlideCanvasPopup } from './services/slide-canvas-pop-manager.service';
|
|
15
30
|
export { ISlideDrawingStateService, SlideDrawingStateService } from './services/slide-drawing-state.service';
|
|
16
31
|
export type { ISlideDrawingStateSnapshot, ISlideSelectionContext } from './services/slide-drawing-state.service';
|
|
32
|
+
export { ISlideEmbedActivationService, ISlideEmbedFloatDomRenderer, ISlideEmbedFloatingActiveService, ISlideEmbedMountService, } from './services/slide-embed-integration.service';
|
|
33
|
+
export type { ISlideEmbedFloatDomRendererProps, ISlideEmbedFloatingActivation, ISlideEmbedMountSession, } from './services/slide-embed-integration.service';
|
|
34
|
+
export { ISlideEmbedRuntimeService } from './services/slide-embed-runtime.service';
|
|
35
|
+
export type { ISlideEmbedFloatingObjectMountParams, ISlideEmbedPageListMountParams, ISlideEmbedPresentationMountParams, ISlideEmbedRuntimeSession, } from './services/slide-embed-runtime.service';
|
|
17
36
|
export { buildDrawingOKey, ISlideHitTestService, SLIDE_DRAWING_OBJECT_KEY_PREFIX, SlideHitTestService, } from './services/slide-hit-test.service';
|
|
18
37
|
export type { ISlideDrawingDoubleClickEvent, ISlideDrawingHoverEvent, ISlideDrawingPointerEvent, } from './services/slide-hit-test.service';
|
|
38
|
+
export { SlideInsertService } from './services/slide-insert.service';
|
|
19
39
|
export { ISlidePlaybackService, SlidePlaybackService } from './services/slide-playback.service';
|
|
20
40
|
export type { ISlidePlaybackState, IStartSlidePlaybackParams } from './services/slide-playback.service';
|
|
21
41
|
export { SlideRenderService } from './services/slide-render.service';
|
|
@@ -24,11 +44,14 @@ export { ISlideSidebarStateService, SlideSidebarStateService } from './services/
|
|
|
24
44
|
export type { ISlideSidebarStateSnapshot } from './services/slide-sidebar-state.service';
|
|
25
45
|
export { ISlideTransformerVisibilityService, SlideTransformerVisibilityService, } from './services/slide-transformer-visibility.service';
|
|
26
46
|
export type { SlideTransformerVisibilityGuard } from './services/slide-transformer-visibility.service';
|
|
27
|
-
export { EditorUIService, IEditorUIService } from './slide-editor/editor-ui';
|
|
28
|
-
export type { IEditorUIDocumentLayout, IEditorUIKeyboardEvent, IEditorUILayoutMeasurement, IEditorUIOpenOptions, IEditorUISession, } from './slide-editor/editor-ui';
|
|
29
|
-
export { stripEditorUIDocumentData } from './slide-editor/editor-ui';
|
|
30
|
-
export
|
|
31
|
-
export {
|
|
47
|
+
export { EditorUIService, IEditorUIService } from './slide-editor/editor-ui/services/editor-ui.service';
|
|
48
|
+
export type { IEditorUIDocumentLayout, IEditorUIKeyboardEvent, IEditorUILayoutMeasurement, IEditorUIOpenOptions, IEditorUIPointerEvent, IEditorUISession, } from './slide-editor/editor-ui/types';
|
|
49
|
+
export { stripEditorUIDocumentData } from './slide-editor/editor-ui/utils/document';
|
|
50
|
+
export { EditorUIFloatingContainer } from './slide-editor/editor-ui/views/floating-editor/EditorUiFloatingContainer';
|
|
51
|
+
export { ShapeTextEditorContainer } from './slide-editor/views/shape-text-editor';
|
|
52
|
+
export type { IRenderConvertContext } from './views/render/adaptor';
|
|
53
|
+
export { ObjectAdaptor, SlideCanvasObjectProviderRegistry } from './views/render/adaptor';
|
|
54
|
+
export { ObjectProvider } from './views/render/object-provider';
|
|
32
55
|
export type { ISlideBaseObjectProps } from './views/slide-base-object';
|
|
33
56
|
export { SlideBaseObject } from './views/slide-base-object';
|
|
34
57
|
export type { ISlideElementLayout } from './views/slide-page-skeleton';
|