mirror of
https://github.com/toeverything/AFFiNE.git
synced 2026-02-18 23:07:02 +08:00
refactor(editor): remove global types in edgeless (#10092)
Closes: [BS-2553](https://linear.app/affine-design/issue/BS-2553/remove-global-types-in-edgeless)
This commit is contained in:
@@ -224,11 +224,3 @@ export class BrushElementModel extends GfxPrimitiveElementModel<BrushProps> {
|
||||
}
|
||||
|
||||
type Instance = GfxPrimitiveElementModel<BrushProps> & BrushProps;
|
||||
|
||||
declare global {
|
||||
namespace BlockSuite {
|
||||
interface SurfaceElementModelMap {
|
||||
brush: BrushElementModel;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -508,14 +508,3 @@ export class ConnectorElementModel extends GfxPrimitiveElementModel<ConnectorEle
|
||||
@local()
|
||||
accessor xywh: SerializedXYWH = '[0,0,0,0]';
|
||||
}
|
||||
|
||||
declare global {
|
||||
namespace BlockSuite {
|
||||
interface SurfaceElementModelMap {
|
||||
connector: ConnectorElementModel;
|
||||
}
|
||||
interface EdgelessTextModelMap {
|
||||
connector: ConnectorElementModel;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -56,11 +56,3 @@ export class LocalConnectorElementModel extends GfxLocalElementModel {
|
||||
return 'connector';
|
||||
}
|
||||
}
|
||||
|
||||
declare global {
|
||||
namespace BlockSuite {
|
||||
interface SurfaceLocalModelMap {
|
||||
connector: LocalConnectorElementModel;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -119,15 +119,3 @@ export class GroupElementModel extends GfxGroupLikeElementModel<GroupElementProp
|
||||
@field()
|
||||
accessor title: Y.Text = new Y.Text();
|
||||
}
|
||||
|
||||
declare global {
|
||||
namespace BlockSuite {
|
||||
interface SurfaceGroupLikeModelMap {
|
||||
group: GroupElementModel;
|
||||
}
|
||||
|
||||
interface SurfaceElementModelMap {
|
||||
group: GroupElementModel;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,6 +1,32 @@
|
||||
import type { EdgelessTextBlockModel } from '../blocks/edgeless-text/edgeless-text-model.js';
|
||||
import type { BrushElementModel } from './brush/index.js';
|
||||
import type { ConnectorElementModel } from './connector/index.js';
|
||||
import type { GroupElementModel } from './group/index.js';
|
||||
import type { MindmapElementModel } from './mindmap/index.js';
|
||||
import type { ShapeElementModel } from './shape/index.js';
|
||||
import type { TextElementModel } from './text/index.js';
|
||||
|
||||
export * from './brush/index.js';
|
||||
export * from './connector/index.js';
|
||||
export * from './group/index.js';
|
||||
export * from './mindmap/index.js';
|
||||
export * from './shape/index.js';
|
||||
export * from './text/index.js';
|
||||
|
||||
export type SurfaceElementModelMap = {
|
||||
brush: BrushElementModel;
|
||||
connector: ConnectorElementModel;
|
||||
group: GroupElementModel;
|
||||
mindmap: MindmapElementModel;
|
||||
shape: ShapeElementModel;
|
||||
text: TextElementModel;
|
||||
};
|
||||
|
||||
export type SurfaceTextModelMap = {
|
||||
text: TextElementModel;
|
||||
connector: ConnectorElementModel;
|
||||
shape: ShapeElementModel;
|
||||
'edgeless-text': EdgelessTextBlockModel;
|
||||
};
|
||||
|
||||
export type SurfaceTextModel = SurfaceTextModelMap[keyof SurfaceTextModelMap];
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
import type {
|
||||
BaseElementProps,
|
||||
GfxModel,
|
||||
GfxPrimitiveElementModel,
|
||||
PointTestOptions,
|
||||
SerializedElement,
|
||||
} from '@blocksuite/block-std/gfx';
|
||||
@@ -44,7 +45,7 @@ export type MindmapNode = {
|
||||
id: string;
|
||||
detail: NodeDetail;
|
||||
|
||||
element: BlockSuite.SurfaceElementModel;
|
||||
element: GfxPrimitiveElementModel;
|
||||
children: MindmapNode[];
|
||||
|
||||
parent: MindmapNode | null;
|
||||
@@ -836,7 +837,7 @@ export class MindmapElementModel extends GfxGroupLikeElementModel<MindmapElement
|
||||
return;
|
||||
}
|
||||
|
||||
const stashed = new Set<BlockSuite.SurfaceElementModel>();
|
||||
const stashed = new Set<GfxPrimitiveElementModel>();
|
||||
const traverse = (node: MindmapNode) => {
|
||||
node.element.stash('xywh');
|
||||
stashed.add(node.element);
|
||||
@@ -975,11 +976,3 @@ export class MindmapElementModel extends GfxGroupLikeElementModel<MindmapElement
|
||||
@field()
|
||||
accessor style: MindmapStyle = MindmapStyle.ONE;
|
||||
}
|
||||
|
||||
declare global {
|
||||
namespace BlockSuite {
|
||||
interface SurfaceGroupLikeModelMap {
|
||||
mindmap: MindmapElementModel;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -261,15 +261,3 @@ export class LocalShapeElementModel extends GfxLocalElementModel {
|
||||
@prop()
|
||||
accessor textVerticalAlign: TextVerticalAlign = TextVerticalAlign.Center;
|
||||
}
|
||||
|
||||
declare global {
|
||||
namespace BlockSuite {
|
||||
interface SurfaceElementModelMap {
|
||||
shape: ShapeElementModel;
|
||||
}
|
||||
|
||||
interface EdgelessTextModelMap {
|
||||
shape: ShapeElementModel;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -90,15 +90,3 @@ export class TextElementModel extends GfxPrimitiveElementModel<TextElementProps>
|
||||
@field()
|
||||
accessor xywh: SerializedXYWH = '[0,0,16,16]';
|
||||
}
|
||||
|
||||
declare global {
|
||||
namespace BlockSuite {
|
||||
interface SurfaceElementModelMap {
|
||||
text: TextElementModel;
|
||||
}
|
||||
|
||||
interface EdgelessTextModelMap {
|
||||
text: TextElementModel;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user