File tree Expand file tree Collapse file tree 10 files changed +22
-15
lines changed
Expand file tree Collapse file tree 10 files changed +22
-15
lines changed Original file line number Diff line number Diff line change 11import { EBoard } from '../../board'
2- import { IShapeRectangle } from '../rectElement/type'
3- import { IModel } from '@e-board/board-core'
2+ import { IModel } from '../../services/modelService/type'
43class BaseRender < T extends Record < string , any > > {
54 protected board : EBoard
65 constructor ( board : EBoard ) {
Original file line number Diff line number Diff line change @@ -2,12 +2,13 @@ import { IElement } from "../../services";
22import { LineCtrlElement } from "./ctrlElement" ;
33import { Render } from "./render" ;
44import SaveInfoProvider from "./saveInfoProvider" ;
5+ import { ILineModel } from "./type" ;
56
67const lineElement = {
78 type : "line" ,
89 ctrlElement : LineCtrlElement ,
910 saveInfoProvider : SaveInfoProvider ,
1011 render : Render
11- } satisfies IElement ;
12+ } satisfies IElement < ILineModel > ;
1213
1314export default lineElement ;
Original file line number Diff line number Diff line change 22
33
44
5- import { IModel } from "@e-board/board-core " ;
5+ import { IModel } from "../../../services/modelService/type " ;
66
77import { BaseRender } from "../../baseElement/baseRender" ;
88import { ILineModel } from "../type" ;
Original file line number Diff line number Diff line change @@ -2,12 +2,13 @@ import { IElement } from "../../services";
22import { PictureCtrlElement } from "./ctrlElement" ;
33import { Render } from "./render" ;
44import SaveInfoProvider from "./saveInfoProvider" ;
5+ import { IPictureModel } from "./type" ;
56
67const pictureElement = {
78 type : "picture" ,
89 ctrlElement : PictureCtrlElement ,
910 saveInfoProvider : SaveInfoProvider ,
1011 render : Render
11- } satisfies IElement ;
12+ } satisfies IElement < IPictureModel > ;
1213
1314export default pictureElement ;
Original file line number Diff line number Diff line change 1- import { IModel } from "@e-board/board-core " ;
1+ import { IModel } from "../../../services/modelService/type " ;
22import { BaseRender } from "../../baseElement/baseRender" ;
33import { IPictureModel } from "../type" ;
44
Original file line number Diff line number Diff line change 1- import { IRectangleModel } from "src/plugins/drawShape/type" ;
21import { IElement } from "../../services" ;
32import { RectCtrlElement } from "./ctrlElement" ;
43import { Render } from "./render" ;
54import SaveInfoProvider from "./saveInfoProvider" ;
5+ import { IShapeRectangle } from "./type" ;
66
77const rectElement = {
88 type : "rectangle" ,
99 ctrlElement : RectCtrlElement ,
1010 saveInfoProvider : SaveInfoProvider ,
1111 render : Render
12- } satisfies IElement < IRectangleModel >
12+ } satisfies IElement < IShapeRectangle >
1313
1414export default rectElement ;
Original file line number Diff line number Diff line change 1- import { IModel } from "@e-board/board-core " ;
1+ import { IModel } from "../../../services/modelService/type " ;
22
33import { BaseRender } from "../../baseElement/baseRender" ;
44import { IShapeRectangle } from "../type" ;
Original file line number Diff line number Diff line change 11import { lineElement , pictureElement , rectElement } from '../../../elements'
2- export const commonElements = [ lineElement , rectElement , pictureElement ]
2+ import type { IElement } from '../type'
3+
4+ export const commonElements : Array < IElement < any > > = [
5+ lineElement ,
6+ rectElement ,
7+ pictureElement
8+ ]
Original file line number Diff line number Diff line change @@ -4,7 +4,7 @@ import { IElement, IElementService } from "./type";
44
55class ElementService implements IElementService {
66 private board ! : IBoard ;
7- private elementMap : Map < string , IElement > = new Map ( ) ;
7+ private elementMap : Map < string , IElement < any > > = new Map ( ) ;
88 init = ( { board } : IServiceInitParams ) => {
99 this . board = board ;
1010 this . registerCommonElements ( ) ;
@@ -17,7 +17,7 @@ class ElementService implements IElementService {
1717 } )
1818 }
1919
20- public registerElement ( shape : IElement ) {
20+ public registerElement ( shape : IElement < any > ) {
2121 this . elementMap . set ( shape . type , shape ) ;
2222 }
2323
Original file line number Diff line number Diff line change @@ -3,9 +3,9 @@ import type { IServiceInitParams } from "../../types";
33
44export type IElementService = {
55 init : ( params : IServiceInitParams ) => void ;
6- registerElement : < T extends Record < string , any > > ( shape : IElement < T > ) => void ;
7- getElement : < T extends Record < string , any > > ( type : string ) => IElement < T > | undefined ;
8- getAllElement : < T extends Record < string , any > > ( ) => IElement < T > [ ] ;
6+ registerElement : ( shape : IElement < any > ) => void ;
7+ getElement : ( type : string ) => IElement < any > | undefined ;
8+ getAllElement : ( ) => IElement < any > [ ] ;
99 dispose : ( ) => void ;
1010}
1111export const IElementService = Symbol ( "IElementService" ) ;
You can’t perform that action at this time.
0 commit comments